@duplojs/utils 1.3.19 → 1.3.20

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 (108) hide show
  1. package/dist/array/group.d.ts +5 -5
  2. package/dist/common/types/index.d.ts +1 -0
  3. package/dist/common/types/maybeGetter.d.ts +1 -0
  4. package/dist/dataParser/base.cjs +7 -9
  5. package/dist/dataParser/base.d.ts +2 -1
  6. package/dist/dataParser/base.mjs +7 -9
  7. package/dist/dataParser/baseExtended.cjs +3 -0
  8. package/dist/dataParser/baseExtended.d.ts +1 -0
  9. package/dist/dataParser/baseExtended.mjs +3 -0
  10. package/dist/dataParser/extended/array.d.ts +1 -0
  11. package/dist/dataParser/extended/bigint.d.ts +1 -0
  12. package/dist/dataParser/extended/boolean.d.ts +1 -0
  13. package/dist/dataParser/extended/date.d.ts +1 -0
  14. package/dist/dataParser/extended/empty.d.ts +1 -0
  15. package/dist/dataParser/extended/lazy.d.ts +1 -0
  16. package/dist/dataParser/extended/literal.d.ts +1 -0
  17. package/dist/dataParser/extended/nil.d.ts +1 -0
  18. package/dist/dataParser/extended/nullable.d.ts +1 -0
  19. package/dist/dataParser/extended/number.d.ts +1 -0
  20. package/dist/dataParser/extended/object.d.ts +1 -0
  21. package/dist/dataParser/extended/optional.d.ts +1 -0
  22. package/dist/dataParser/extended/pipe.d.ts +1 -0
  23. package/dist/dataParser/extended/record.d.ts +1 -0
  24. package/dist/dataParser/extended/recover.d.ts +1 -0
  25. package/dist/dataParser/extended/string.d.ts +1 -0
  26. package/dist/dataParser/extended/templateLiteral.d.ts +1 -0
  27. package/dist/dataParser/extended/transform.d.ts +1 -0
  28. package/dist/dataParser/extended/tuple.d.ts +1 -0
  29. package/dist/dataParser/extended/union.d.ts +1 -0
  30. package/dist/dataParser/extended/unknown.d.ts +1 -0
  31. package/dist/dataParser/parsers/array/index.cjs +3 -5
  32. package/dist/dataParser/parsers/array/index.d.ts +1 -0
  33. package/dist/dataParser/parsers/array/index.mjs +3 -5
  34. package/dist/dataParser/parsers/bigint/index.cjs +3 -5
  35. package/dist/dataParser/parsers/bigint/index.d.ts +1 -0
  36. package/dist/dataParser/parsers/bigint/index.mjs +3 -5
  37. package/dist/dataParser/parsers/boolean.cjs +3 -5
  38. package/dist/dataParser/parsers/boolean.d.ts +1 -0
  39. package/dist/dataParser/parsers/boolean.mjs +3 -5
  40. package/dist/dataParser/parsers/date.cjs +3 -5
  41. package/dist/dataParser/parsers/date.d.ts +1 -0
  42. package/dist/dataParser/parsers/date.mjs +3 -5
  43. package/dist/dataParser/parsers/empty.cjs +3 -5
  44. package/dist/dataParser/parsers/empty.d.ts +1 -0
  45. package/dist/dataParser/parsers/empty.mjs +3 -5
  46. package/dist/dataParser/parsers/lazy.cjs +3 -5
  47. package/dist/dataParser/parsers/lazy.d.ts +1 -0
  48. package/dist/dataParser/parsers/lazy.mjs +3 -5
  49. package/dist/dataParser/parsers/literal.cjs +3 -5
  50. package/dist/dataParser/parsers/literal.d.ts +1 -0
  51. package/dist/dataParser/parsers/literal.mjs +3 -5
  52. package/dist/dataParser/parsers/nil.cjs +3 -5
  53. package/dist/dataParser/parsers/nil.d.ts +1 -0
  54. package/dist/dataParser/parsers/nil.mjs +3 -5
  55. package/dist/dataParser/parsers/nullable.cjs +4 -6
  56. package/dist/dataParser/parsers/nullable.d.ts +1 -0
  57. package/dist/dataParser/parsers/nullable.mjs +4 -6
  58. package/dist/dataParser/parsers/number/index.cjs +3 -5
  59. package/dist/dataParser/parsers/number/index.d.ts +1 -0
  60. package/dist/dataParser/parsers/number/index.mjs +3 -5
  61. package/dist/dataParser/parsers/object/index.cjs +7 -9
  62. package/dist/dataParser/parsers/object/index.d.ts +1 -0
  63. package/dist/dataParser/parsers/object/index.mjs +7 -9
  64. package/dist/dataParser/parsers/optional.cjs +4 -6
  65. package/dist/dataParser/parsers/optional.d.ts +1 -0
  66. package/dist/dataParser/parsers/optional.mjs +4 -6
  67. package/dist/dataParser/parsers/pipe.cjs +4 -6
  68. package/dist/dataParser/parsers/pipe.d.ts +1 -0
  69. package/dist/dataParser/parsers/pipe.mjs +4 -6
  70. package/dist/dataParser/parsers/record/index.cjs +5 -7
  71. package/dist/dataParser/parsers/record/index.d.ts +1 -0
  72. package/dist/dataParser/parsers/record/index.mjs +5 -7
  73. package/dist/dataParser/parsers/recover.cjs +4 -6
  74. package/dist/dataParser/parsers/recover.d.ts +1 -0
  75. package/dist/dataParser/parsers/recover.mjs +4 -6
  76. package/dist/dataParser/parsers/string/index.cjs +3 -5
  77. package/dist/dataParser/parsers/string/index.d.ts +1 -0
  78. package/dist/dataParser/parsers/string/index.mjs +3 -5
  79. package/dist/dataParser/parsers/templateLiteral/createTemplateLiteralPattern.cjs +2 -2
  80. package/dist/dataParser/parsers/templateLiteral/createTemplateLiteralPattern.mjs +2 -2
  81. package/dist/dataParser/parsers/templateLiteral/index.cjs +4 -6
  82. package/dist/dataParser/parsers/templateLiteral/index.d.ts +1 -0
  83. package/dist/dataParser/parsers/templateLiteral/index.mjs +4 -6
  84. package/dist/dataParser/parsers/transform.cjs +4 -6
  85. package/dist/dataParser/parsers/transform.d.ts +1 -0
  86. package/dist/dataParser/parsers/transform.mjs +4 -6
  87. package/dist/dataParser/parsers/tuple.cjs +4 -6
  88. package/dist/dataParser/parsers/tuple.d.ts +1 -0
  89. package/dist/dataParser/parsers/tuple.mjs +4 -6
  90. package/dist/dataParser/parsers/union.cjs +3 -5
  91. package/dist/dataParser/parsers/union.d.ts +1 -0
  92. package/dist/dataParser/parsers/union.mjs +3 -5
  93. package/dist/dataParser/parsers/unknown.cjs +2 -4
  94. package/dist/dataParser/parsers/unknown.d.ts +1 -0
  95. package/dist/dataParser/parsers/unknown.mjs +2 -4
  96. package/dist/either/future/create.cjs +4 -4
  97. package/dist/either/future/create.d.ts +4 -5
  98. package/dist/either/future/create.mjs +4 -4
  99. package/dist/either/index.cjs +4 -0
  100. package/dist/either/index.mjs +2 -0
  101. package/dist/either/right/asyncGroup.cjs +18 -0
  102. package/dist/either/right/asyncGroup.d.ts +12 -0
  103. package/dist/either/right/asyncGroup.mjs +16 -0
  104. package/dist/either/right/group.cjs +17 -0
  105. package/dist/either/right/group.d.ts +12 -0
  106. package/dist/either/right/group.mjs +15 -0
  107. package/dist/either/right/index.d.ts +2 -0
  108. package/package.json +1 -1
@@ -19,6 +19,7 @@ export interface DataParserLazy<GenericDefinition extends DataParserDefinitionLa
19
19
  DataParserLazyCheckers<Output<this>>,
20
20
  ...DataParserLazyCheckers<Output<this>>[]
21
21
  ], GenericChecker>): DataParserLazy<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
22
+ construct<const GenericDefinition extends DataParserDefinitionLazy>(definition: GenericDefinition): DataParserLazy<MergeDefinition<DataParserDefinitionLazy, GenericDefinition>>;
22
23
  }
23
24
  export declare function lazy<GenericDataParser extends DataParser, const GenericDefinition extends Partial<DataParserDefinitionLazy> = never>(getter: () => GenericDataParser, definition?: GenericDefinition): DataParserLazy<MergeDefinition<DataParserDefinitionLazy, NeverCoalescing<GenericDefinition, {}> & {
24
25
  getter: Memoized<GenericDataParser>;
@@ -6,11 +6,9 @@ import { createOverride } from '../../common/override.mjs';
6
6
  const lazyKind = createDataParserKind("lazy");
7
7
  function lazy(getter, definition) {
8
8
  const self = dataParserInit(lazyKind, {
9
- definition: {
10
- errorMessage: definition?.errorMessage,
11
- checkers: definition?.checkers ?? [],
12
- getter: memo(getter),
13
- },
9
+ errorMessage: definition?.errorMessage,
10
+ checkers: definition?.checkers ?? [],
11
+ getter: memo(getter),
14
12
  }, {
15
13
  sync: (data, _error, self) => self.definition.getter.value.exec(data, _error),
16
14
  async: (data, _error, self) => self.definition.getter.value.asyncExec(data, _error),
@@ -9,11 +9,9 @@ var override = require('../../common/override.cjs');
9
9
  const literalKind = kind.createDataParserKind("literal");
10
10
  function literal(value, definition) {
11
11
  const self = base.dataParserInit(literalKind, {
12
- definition: {
13
- errorMessage: definition?.errorMessage,
14
- checkers: definition?.checkers ?? [],
15
- value: coalescing.coalescing(value),
16
- },
12
+ errorMessage: definition?.errorMessage,
13
+ checkers: definition?.checkers ?? [],
14
+ value: coalescing.coalescing(value),
17
15
  }, (data, _error, self) => {
18
16
  if (self.definition.value.includes(data)) {
19
17
  return data;
@@ -20,6 +20,7 @@ export interface DataParserLiteral<GenericDefinition extends DataParserDefinitio
20
20
  DataParserLiteralCheckers<Output<this>>,
21
21
  ...DataParserLiteralCheckers<Output<this>>[]
22
22
  ], GenericChecker>): DataParserLiteral<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
23
+ construct<const GenericDefinition extends DataParserDefinitionLiteral>(definition: GenericDefinition): DataParserLiteral<MergeDefinition<DataParserDefinitionLiteral, GenericDefinition>>;
23
24
  }
24
25
  export declare function literal<const GenericValue extends LiteralValue, const GenericDefinition extends Partial<Omit<DataParserDefinitionLiteral, "value">> = never>(value: GenericValue | GenericValue[], definition?: GenericDefinition): DataParserLiteral<MergeDefinition<DataParserDefinitionLiteral, NeverCoalescing<GenericDefinition, {}> & {
25
26
  value: GenericValue[];
@@ -7,11 +7,9 @@ import { createOverride } from '../../common/override.mjs';
7
7
  const literalKind = createDataParserKind("literal");
8
8
  function literal(value, definition) {
9
9
  const self = dataParserInit(literalKind, {
10
- definition: {
11
- errorMessage: definition?.errorMessage,
12
- checkers: definition?.checkers ?? [],
13
- value: coalescing(value),
14
- },
10
+ errorMessage: definition?.errorMessage,
11
+ checkers: definition?.checkers ?? [],
12
+ value: coalescing(value),
15
13
  }, (data, _error, self) => {
16
14
  if (self.definition.value.includes(data)) {
17
15
  return data;
@@ -8,11 +8,9 @@ var override = require('../../common/override.cjs');
8
8
  const nilKind = kind.createDataParserKind("nil");
9
9
  function nil(definition) {
10
10
  const self = base.dataParserInit(nilKind, {
11
- definition: {
12
- errorMessage: definition?.errorMessage,
13
- checkers: definition?.checkers ?? [],
14
- coerce: definition?.coerce ?? false,
15
- },
11
+ errorMessage: definition?.errorMessage,
12
+ checkers: definition?.checkers ?? [],
13
+ coerce: definition?.coerce ?? false,
16
14
  }, (data, _error, self) => {
17
15
  if (data === null) {
18
16
  return data;
@@ -19,6 +19,7 @@ export interface DataParserNil<GenericDefinition extends DataParserDefinitionNil
19
19
  DataParserNilCheckers,
20
20
  ...DataParserNilCheckers[]
21
21
  ], GenericChecker>): DataParserNil<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
22
+ construct<const GenericDefinition extends DataParserDefinitionNil>(definition: GenericDefinition): DataParserNil<MergeDefinition<DataParserDefinitionNil, GenericDefinition>>;
22
23
  }
23
24
  export declare function nil<const GenericDefinition extends Partial<DataParserDefinitionNil> = never>(definition?: GenericDefinition): DataParserNil<MergeDefinition<DataParserDefinitionNil, NeverCoalescing<GenericDefinition, {}>>>;
24
25
  export declare namespace nil {
@@ -6,11 +6,9 @@ import { createOverride } from '../../common/override.mjs';
6
6
  const nilKind = createDataParserKind("nil");
7
7
  function nil(definition) {
8
8
  const self = dataParserInit(nilKind, {
9
- definition: {
10
- errorMessage: definition?.errorMessage,
11
- checkers: definition?.checkers ?? [],
12
- coerce: definition?.coerce ?? false,
13
- },
9
+ errorMessage: definition?.errorMessage,
10
+ checkers: definition?.checkers ?? [],
11
+ coerce: definition?.coerce ?? false,
14
12
  }, (data, _error, self) => {
15
13
  if (data === null) {
16
14
  return data;
@@ -7,12 +7,10 @@ var override = require('../../common/override.cjs');
7
7
  const nullableKind = kind.createDataParserKind("nullable");
8
8
  function nullable(inner, definition) {
9
9
  const self = base.dataParserInit(nullableKind, {
10
- definition: {
11
- errorMessage: definition?.errorMessage,
12
- checkers: definition?.checkers ?? [],
13
- inner,
14
- coalescingValue: definition?.coalescingValue ?? null,
15
- },
10
+ errorMessage: definition?.errorMessage,
11
+ checkers: definition?.checkers ?? [],
12
+ inner,
13
+ coalescingValue: definition?.coalescingValue ?? null,
16
14
  }, {
17
15
  sync: (data, error, self) => {
18
16
  if (data === null) {
@@ -20,6 +20,7 @@ export interface DataParserNullable<GenericDefinition extends DataParserDefiniti
20
20
  DataParserNullableCheckers<Output<this>>,
21
21
  ...DataParserNullableCheckers<Output<this>>[]
22
22
  ], GenericChecker>): DataParserNullable<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
23
+ construct<const GenericDefinition extends DataParserDefinitionNullable>(definition: GenericDefinition): DataParserNullable<MergeDefinition<DataParserDefinitionNullable, GenericDefinition>>;
23
24
  }
24
25
  export declare function nullable<GenericDataParser extends DataParser, const GenericDefinition extends Partial<Omit<DataParserDefinitionNullable<Output<GenericDataParser> | null>, "inner">> = never>(inner: GenericDataParser, definition?: GenericDefinition): DataParserNullable<MergeDefinition<DataParserDefinitionNullable, NeverCoalescing<GenericDefinition, {}> & {
25
26
  inner: GenericDataParser;
@@ -5,12 +5,10 @@ import { createOverride } from '../../common/override.mjs';
5
5
  const nullableKind = createDataParserKind("nullable");
6
6
  function nullable(inner, definition) {
7
7
  const self = dataParserInit(nullableKind, {
8
- definition: {
9
- errorMessage: definition?.errorMessage,
10
- checkers: definition?.checkers ?? [],
11
- inner,
12
- coalescingValue: definition?.coalescingValue ?? null,
13
- },
8
+ errorMessage: definition?.errorMessage,
9
+ checkers: definition?.checkers ?? [],
10
+ inner,
11
+ coalescingValue: definition?.coalescingValue ?? null,
14
12
  }, {
15
13
  sync: (data, error, self) => {
16
14
  if (data === null) {
@@ -8,11 +8,9 @@ var override = require('../../../common/override.cjs');
8
8
  const numberKind = kind.createDataParserKind("number");
9
9
  function number(definition) {
10
10
  const self = base.dataParserInit(numberKind, {
11
- definition: {
12
- errorMessage: definition?.errorMessage,
13
- checkers: definition?.checkers ?? [],
14
- coerce: definition?.coerce ?? false,
15
- },
11
+ errorMessage: definition?.errorMessage,
12
+ checkers: definition?.checkers ?? [],
13
+ coerce: definition?.coerce ?? false,
16
14
  }, (data, _error, self) => {
17
15
  if (self.definition.coerce) {
18
16
  try {
@@ -21,6 +21,7 @@ export interface DataParserNumber<GenericDefinition extends DataParserDefinition
21
21
  DataParserNumberCheckers,
22
22
  ...DataParserNumberCheckers[]
23
23
  ], GenericChecker>): DataParserNumber<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
24
+ construct<const GenericDefinition extends DataParserDefinitionNumber>(definition: GenericDefinition): DataParserNumber<MergeDefinition<DataParserDefinitionNumber, GenericDefinition>>;
24
25
  }
25
26
  export declare function number<const GenericDefinition extends Partial<DataParserDefinitionNumber> = never>(definition?: GenericDefinition): DataParserNumber<MergeDefinition<DataParserDefinitionNumber, NeverCoalescing<GenericDefinition, {}>>>;
26
27
  export declare namespace number {
@@ -6,11 +6,9 @@ import { createOverride } from '../../../common/override.mjs';
6
6
  const numberKind = createDataParserKind("number");
7
7
  function number(definition) {
8
8
  const self = dataParserInit(numberKind, {
9
- definition: {
10
- errorMessage: definition?.errorMessage,
11
- checkers: definition?.checkers ?? [],
12
- coerce: definition?.coerce ?? false,
13
- },
9
+ errorMessage: definition?.errorMessage,
10
+ checkers: definition?.checkers ?? [],
11
+ coerce: definition?.coerce ?? false,
14
12
  }, (data, _error, self) => {
15
13
  if (self.definition.coerce) {
16
14
  try {
@@ -14,15 +14,13 @@ var override = require('../../../common/override.cjs');
14
14
  const objectKind = kind.createDataParserKind("object");
15
15
  function object(shape, definition) {
16
16
  const self = base.dataParserInit(objectKind, {
17
- definition: {
18
- shape,
19
- errorMessage: definition?.errorMessage,
20
- checkers: definition?.checkers ?? [],
21
- optimizedShape: memo.memo(() => pipe.pipe(forward.forward(shape), entries.entries, filter.filter((entry) => base.dataParserKind.has(entry[1])), map.map(([key, value]) => ({
22
- key,
23
- value,
24
- })))),
25
- },
17
+ shape,
18
+ errorMessage: definition?.errorMessage,
19
+ checkers: definition?.checkers ?? [],
20
+ optimizedShape: memo.memo(() => pipe.pipe(forward.forward(shape), entries.entries, filter.filter((entry) => base.dataParserKind.has(entry[1])), map.map(([key, value]) => ({
21
+ key,
22
+ value,
23
+ })))),
26
24
  }, {
27
25
  sync: (data, error$1, self) => {
28
26
  if (!data
@@ -35,6 +35,7 @@ export interface DataParserObject<GenericDefinition extends DataParserDefinition
35
35
  DataParserObjectCheckers<Output<this>>,
36
36
  ...DataParserObjectCheckers<Output<this>>[]
37
37
  ], GenericChecker>): DataParserObject<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
38
+ construct<const GenericDefinition extends DataParserDefinitionObject>(definition: GenericDefinition): DataParserObject<MergeDefinition<DataParserDefinitionObject, GenericDefinition>>;
38
39
  }
39
40
  export declare function object<const GenericShape extends DataParserObjectShape, const GenericDefinition extends Partial<Omit<DataParserDefinitionObject, "shape" | "optimizedShape">> = never>(shape: GenericShape, definition?: GenericDefinition): DataParserObject<MergeDefinition<DataParserDefinitionObject, NeverCoalescing<GenericDefinition, {}> & {
40
41
  readonly shape: GenericShape;
@@ -12,15 +12,13 @@ import { createOverride } from '../../../common/override.mjs';
12
12
  const objectKind = createDataParserKind("object");
13
13
  function object(shape, definition) {
14
14
  const self = dataParserInit(objectKind, {
15
- definition: {
16
- shape,
17
- errorMessage: definition?.errorMessage,
18
- checkers: definition?.checkers ?? [],
19
- optimizedShape: memo(() => pipe(forward(shape), entries, filter((entry) => dataParserKind.has(entry[1])), map(([key, value]) => ({
20
- key,
21
- value,
22
- })))),
23
- },
15
+ shape,
16
+ errorMessage: definition?.errorMessage,
17
+ checkers: definition?.checkers ?? [],
18
+ optimizedShape: memo(() => pipe(forward(shape), entries, filter((entry) => dataParserKind.has(entry[1])), map(([key, value]) => ({
19
+ key,
20
+ value,
21
+ })))),
24
22
  }, {
25
23
  sync: (data, error, self) => {
26
24
  if (!data
@@ -7,12 +7,10 @@ var override = require('../../common/override.cjs');
7
7
  const optionalKind = kind.createDataParserKind("optional");
8
8
  function optional(inner, definition) {
9
9
  const self = base.dataParserInit(optionalKind, {
10
- definition: {
11
- errorMessage: definition?.errorMessage,
12
- checkers: definition?.checkers ?? [],
13
- inner,
14
- coalescingValue: definition?.coalescingValue,
15
- },
10
+ errorMessage: definition?.errorMessage,
11
+ checkers: definition?.checkers ?? [],
12
+ inner,
13
+ coalescingValue: definition?.coalescingValue,
16
14
  }, {
17
15
  sync: (data, error, self) => {
18
16
  if (data === undefined) {
@@ -20,6 +20,7 @@ export interface DataParserOptional<GenericDefinition extends DataParserDefiniti
20
20
  DataParserOptionalCheckers<Output<this>>,
21
21
  ...DataParserOptionalCheckers<Output<this>>[]
22
22
  ], GenericChecker>): DataParserOptional<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
23
+ construct<const GenericDefinition extends DataParserDefinitionOptional>(definition: GenericDefinition): DataParserOptional<MergeDefinition<DataParserDefinitionOptional, GenericDefinition>>;
23
24
  }
24
25
  export declare function optional<GenericDataParser extends DataParser, const GenericDefinition extends Partial<Omit<DataParserDefinitionOptional<Output<GenericDataParser> | undefined>, "inner">> = never>(inner: GenericDataParser, definition?: GenericDefinition): DataParserOptional<MergeDefinition<DataParserDefinitionOptional, NeverCoalescing<GenericDefinition, {}> & {
25
26
  inner: GenericDataParser;
@@ -5,12 +5,10 @@ import { createOverride } from '../../common/override.mjs';
5
5
  const optionalKind = createDataParserKind("optional");
6
6
  function optional(inner, definition) {
7
7
  const self = dataParserInit(optionalKind, {
8
- definition: {
9
- errorMessage: definition?.errorMessage,
10
- checkers: definition?.checkers ?? [],
11
- inner,
12
- coalescingValue: definition?.coalescingValue,
13
- },
8
+ errorMessage: definition?.errorMessage,
9
+ checkers: definition?.checkers ?? [],
10
+ inner,
11
+ coalescingValue: definition?.coalescingValue,
14
12
  }, {
15
13
  sync: (data, error, self) => {
16
14
  if (data === undefined) {
@@ -7,12 +7,10 @@ var override = require('../../common/override.cjs');
7
7
  const pipeKind = kind.createDataParserKind("pipe");
8
8
  function pipe(input, output, definition) {
9
9
  const self = base.dataParserInit(pipeKind, {
10
- definition: {
11
- errorMessage: definition?.errorMessage,
12
- checkers: definition?.checkers ?? [],
13
- input,
14
- output,
15
- },
10
+ errorMessage: definition?.errorMessage,
11
+ checkers: definition?.checkers ?? [],
12
+ input,
13
+ output,
16
14
  }, {
17
15
  sync: (data, error, self) => {
18
16
  const result = self.definition.input.exec(data, error);
@@ -20,6 +20,7 @@ export interface DataParserPipe<GenericDefinition extends DataParserDefinitionPi
20
20
  DataParserPipeCheckers<Output<this>>,
21
21
  ...DataParserPipeCheckers<Output<this>>[]
22
22
  ], GenericChecker>): DataParserPipe<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
23
+ construct<const GenericDefinition extends DataParserDefinitionPipe>(definition: GenericDefinition): DataParserPipe<MergeDefinition<DataParserDefinitionPipe, GenericDefinition>>;
23
24
  }
24
25
  export declare function pipe<GenericInput extends DataParser, GenericOutput extends DataParser, const GenericDefinition extends Partial<Omit<DataParserDefinitionPipe, "input" | "output">> = never>(input: GenericInput, output: GenericOutput, definition?: GenericDefinition): DataParserPipe<MergeDefinition<DataParserDefinitionPipe, NeverCoalescing<GenericDefinition, {}> & {
25
26
  input: GenericInput;
@@ -5,12 +5,10 @@ import { createOverride } from '../../common/override.mjs';
5
5
  const pipeKind = createDataParserKind("pipe");
6
6
  function pipe(input, output, definition) {
7
7
  const self = dataParserInit(pipeKind, {
8
- definition: {
9
- errorMessage: definition?.errorMessage,
10
- checkers: definition?.checkers ?? [],
11
- input,
12
- output,
13
- },
8
+ errorMessage: definition?.errorMessage,
9
+ checkers: definition?.checkers ?? [],
10
+ input,
11
+ output,
14
12
  }, {
15
13
  sync: (data, error, self) => {
16
14
  const result = self.definition.input.exec(data, error);
@@ -9,13 +9,11 @@ var override = require('../../../common/override.cjs');
9
9
  const recordKind = kind.createDataParserKind("record");
10
10
  function record(key, value, definition) {
11
11
  const self = base.dataParserInit(recordKind, {
12
- definition: {
13
- errorMessage: definition?.errorMessage,
14
- checkers: definition?.checkers ?? [],
15
- key,
16
- value,
17
- requireKey: findRecordRequiredKey.findRecordRequiredKey(key),
18
- },
12
+ errorMessage: definition?.errorMessage,
13
+ checkers: definition?.checkers ?? [],
14
+ key,
15
+ value,
16
+ requireKey: findRecordRequiredKey.findRecordRequiredKey(key),
19
17
  }, {
20
18
  sync: (data, error$1, self) => {
21
19
  if (!data
@@ -35,6 +35,7 @@ export interface DataParserRecord<GenericDefinition extends DataParserDefinition
35
35
  DataParserRecordCheckers<Output<this>>,
36
36
  ...DataParserRecordCheckers<Output<this>>[]
37
37
  ], GenericChecker>): DataParserRecord<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
38
+ construct<const GenericDefinition extends DataParserDefinitionRecord>(definition: GenericDefinition): DataParserRecord<MergeDefinition<DataParserDefinitionRecord, GenericDefinition>>;
38
39
  }
39
40
  export declare function record<GenericDataParserKey extends DataParserRecordKey, GenericDataParserValue extends DataParser, const GenericDefinition extends Partial<DataParserDefinitionRecord> = never>(key: GenericDataParserKey, value: GenericDataParserValue, definition?: GenericDefinition): DataParserRecord<MergeDefinition<DataParserDefinitionRecord, NeverCoalescing<GenericDefinition, {}> & {
40
41
  key: GenericDataParserKey;
@@ -8,13 +8,11 @@ import { createOverride } from '../../../common/override.mjs';
8
8
  const recordKind = createDataParserKind("record");
9
9
  function record(key, value, definition) {
10
10
  const self = dataParserInit(recordKind, {
11
- definition: {
12
- errorMessage: definition?.errorMessage,
13
- checkers: definition?.checkers ?? [],
14
- key,
15
- value,
16
- requireKey: findRecordRequiredKey(key),
17
- },
11
+ errorMessage: definition?.errorMessage,
12
+ checkers: definition?.checkers ?? [],
13
+ key,
14
+ value,
15
+ requireKey: findRecordRequiredKey(key),
18
16
  }, {
19
17
  sync: (data, error, self) => {
20
18
  if (!data
@@ -7,12 +7,10 @@ var override = require('../../common/override.cjs');
7
7
  const recoverKind = kind.createDataParserKind("recover");
8
8
  function recover(inner, recoveredValue, definition) {
9
9
  const self = base.dataParserInit(recoverKind, {
10
- definition: {
11
- errorMessage: definition?.errorMessage,
12
- checkers: definition?.checkers ?? [],
13
- inner,
14
- recoveredValue,
15
- },
10
+ errorMessage: definition?.errorMessage,
11
+ checkers: definition?.checkers ?? [],
12
+ inner,
13
+ recoveredValue,
16
14
  }, {
17
15
  sync: (data, error, self) => {
18
16
  const result = self.definition.inner.exec(data, error);
@@ -20,6 +20,7 @@ export interface DataParserRecover<GenericDefinition extends DataParserDefinitio
20
20
  DataParserRecoverCheckers<Output<this>>,
21
21
  ...DataParserRecoverCheckers<Output<this>>[]
22
22
  ], GenericChecker>): DataParserRecover<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
23
+ construct<const GenericDefinition extends DataParserDefinitionRecover>(definition: GenericDefinition): DataParserRecover<MergeDefinition<DataParserDefinitionRecover, GenericDefinition>>;
23
24
  }
24
25
  export declare function recover<GenericDataParser extends DataParser, GenericRecoveredValue extends Output<GenericDataParser>, const GenericDefinition extends Partial<Omit<DataParserDefinitionRecover, "inner" | "recoveredValue">> = never>(inner: GenericDataParser, recoveredValue: GenericRecoveredValue, definition?: GenericDefinition): DataParserRecover<MergeDefinition<DataParserDefinitionRecover, NeverCoalescing<GenericDefinition, {}> & {
25
26
  inner: GenericDataParser;
@@ -5,12 +5,10 @@ import { createOverride } from '../../common/override.mjs';
5
5
  const recoverKind = createDataParserKind("recover");
6
6
  function recover(inner, recoveredValue, definition) {
7
7
  const self = dataParserInit(recoverKind, {
8
- definition: {
9
- errorMessage: definition?.errorMessage,
10
- checkers: definition?.checkers ?? [],
11
- inner,
12
- recoveredValue,
13
- },
8
+ errorMessage: definition?.errorMessage,
9
+ checkers: definition?.checkers ?? [],
10
+ inner,
11
+ recoveredValue,
14
12
  }, {
15
13
  sync: (data, error, self) => {
16
14
  const result = self.definition.inner.exec(data, error);
@@ -8,11 +8,9 @@ var override = require('../../../common/override.cjs');
8
8
  const stringKind = kind.createDataParserKind("string");
9
9
  function string(definition) {
10
10
  const self = base.dataParserInit(stringKind, {
11
- definition: {
12
- errorMessage: definition?.errorMessage,
13
- checkers: definition?.checkers ?? [],
14
- coerce: definition?.coerce ?? false,
15
- },
11
+ errorMessage: definition?.errorMessage,
12
+ checkers: definition?.checkers ?? [],
13
+ coerce: definition?.coerce ?? false,
16
14
  }, (data, _error, self) => {
17
15
  if (self.definition.coerce) {
18
16
  try {
@@ -21,6 +21,7 @@ export interface DataParserString<GenericDefinition extends DataParserDefinition
21
21
  DataParserStringCheckers,
22
22
  ...DataParserStringCheckers[]
23
23
  ], GenericChecker>): DataParserString<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
24
+ construct<const GenericDefinition extends DataParserDefinitionString>(definition: GenericDefinition): DataParserString<MergeDefinition<DataParserDefinitionString, GenericDefinition>>;
24
25
  }
25
26
  export declare function string<const GenericDefinition extends Partial<DataParserDefinitionString> = never>(definition?: GenericDefinition): DataParserString<MergeDefinition<DataParserDefinitionString, NeverCoalescing<GenericDefinition, {}>>>;
26
27
  export declare namespace string {
@@ -6,11 +6,9 @@ import { createOverride } from '../../../common/override.mjs';
6
6
  const stringKind = createDataParserKind("string");
7
7
  function string(definition) {
8
8
  const self = dataParserInit(stringKind, {
9
- definition: {
10
- errorMessage: definition?.errorMessage,
11
- checkers: definition?.checkers ?? [],
12
- coerce: definition?.coerce ?? false,
13
- },
9
+ errorMessage: definition?.errorMessage,
10
+ checkers: definition?.checkers ?? [],
11
+ coerce: definition?.coerce ?? false,
14
12
  }, (data, _error, self) => {
15
13
  if (self.definition.coerce) {
16
14
  try {
@@ -11,13 +11,11 @@ var index$1 = require('../string/index.cjs');
11
11
  var union = require('../union.cjs');
12
12
  var innerPipe = require('../../../common/innerPipe.cjs');
13
13
  var regex = require('../string/checkers/regex.cjs');
14
- var when$1 = require('../../../common/when.cjs');
15
14
  var max = require('../string/checkers/max.cjs');
16
15
  var min = require('../string/checkers/min.cjs');
17
16
  var email = require('../string/checkers/email.cjs');
18
17
  var int = require('../number/checkers/int.cjs');
19
18
  var justReturn = require('../../../common/justReturn.cjs');
20
- var isType = require('../../../common/isType.cjs');
21
19
  var escapeRegExp = require('../../../common/escapeRegExp.cjs');
22
20
  var or = require('../../../common/or.cjs');
23
21
  var pipe = require('../../../common/pipe.cjs');
@@ -28,6 +26,8 @@ var replace = require('../../../string/replace.cjs');
28
26
  var exhaustive = require('../../../pattern/exhaustive.cjs');
29
27
  var to = require('../../../object/to.cjs');
30
28
  var find = require('../../../array/find.cjs');
29
+ var when$1 = require('../../../common/when.cjs');
30
+ var isType = require('../../../common/isType.cjs');
31
31
 
32
32
  function createTemplateLiteralPattern(templatePart) {
33
33
  return pipe.pipe(templatePart, map.map(innerPipe.innerPipe(when.when(or.or([
@@ -9,13 +9,11 @@ import { stringKind } from '../string/index.mjs';
9
9
  import { unionKind } from '../union.mjs';
10
10
  import { innerPipe } from '../../../common/innerPipe.mjs';
11
11
  import { checkerStringRegexKind } from '../string/checkers/regex.mjs';
12
- import { when as when$1 } from '../../../common/when.mjs';
13
12
  import { checkerStringMaxKind } from '../string/checkers/max.mjs';
14
13
  import { checkerStringMinKind } from '../string/checkers/min.mjs';
15
14
  import { checkerEmailKind } from '../string/checkers/email.mjs';
16
15
  import { checkerIntKind } from '../number/checkers/int.mjs';
17
16
  import { justReturn } from '../../../common/justReturn.mjs';
18
- import { isType } from '../../../common/isType.mjs';
19
17
  import { escapeRegExp } from '../../../common/escapeRegExp.mjs';
20
18
  import { or } from '../../../common/or.mjs';
21
19
  import { pipe } from '../../../common/pipe.mjs';
@@ -26,6 +24,8 @@ import { replace } from '../../../string/replace.mjs';
26
24
  import { exhaustive } from '../../../pattern/exhaustive.mjs';
27
25
  import { to } from '../../../object/to.mjs';
28
26
  import { find } from '../../../array/find.mjs';
27
+ import { when as when$1 } from '../../../common/when.mjs';
28
+ import { isType } from '../../../common/isType.mjs';
29
29
 
30
30
  function createTemplateLiteralPattern(templatePart) {
31
31
  return pipe(templatePart, map(innerPipe(when(or([
@@ -11,12 +11,10 @@ const templateLiteralKind = kind.createDataParserKind("template-literal");
11
11
  function templateLiteral(template, definition) {
12
12
  const pattern = pipe.pipe(createTemplateLiteralPattern.createTemplateLiteralPattern(template), (result) => new RegExp(`^${result}$`));
13
13
  const self = base.dataParserInit(templateLiteralKind, {
14
- definition: {
15
- errorMessage: definition?.errorMessage,
16
- checkers: definition?.checkers ?? [],
17
- template,
18
- pattern,
19
- },
14
+ errorMessage: definition?.errorMessage,
15
+ checkers: definition?.checkers ?? [],
16
+ template,
17
+ pattern,
20
18
  }, (data, _error, self) => {
21
19
  if (typeof data === "string" && self.definition.pattern.test(data)) {
22
20
  return data;
@@ -60,6 +60,7 @@ export interface DataParserTemplateLiteral<GenericDefinition extends DataParserD
60
60
  DataParserTemplateLiteralCheckers<Output<this>>,
61
61
  ...DataParserTemplateLiteralCheckers<Output<this>>[]
62
62
  ], GenericChecker>): DataParserTemplateLiteral<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
63
+ construct<const GenericDefinition extends DataParserDefinitionTemplateLiteral>(definition: GenericDefinition): DataParserTemplateLiteral<MergeDefinition<DataParserDefinitionTemplateLiteral, GenericDefinition>>;
63
64
  }
64
65
  export declare function templateLiteral<const GenericTemplate extends TemplateLiteralShape, const GenericDefinition extends Partial<Omit<DataParserDefinitionTemplateLiteral, "template" | "pattern">> = never>(template: GenericTemplate, definition?: GenericDefinition): DataParserTemplateLiteral<MergeDefinition<DataParserDefinitionTemplateLiteral, NeverCoalescing<GenericDefinition, {}> & {
65
66
  template: GenericTemplate;
@@ -9,12 +9,10 @@ const templateLiteralKind = createDataParserKind("template-literal");
9
9
  function templateLiteral(template, definition) {
10
10
  const pattern = pipe(createTemplateLiteralPattern(template), (result) => new RegExp(`^${result}$`));
11
11
  const self = dataParserInit(templateLiteralKind, {
12
- definition: {
13
- errorMessage: definition?.errorMessage,
14
- checkers: definition?.checkers ?? [],
15
- template,
16
- pattern,
17
- },
12
+ errorMessage: definition?.errorMessage,
13
+ checkers: definition?.checkers ?? [],
14
+ template,
15
+ pattern,
18
16
  }, (data, _error, self) => {
19
17
  if (typeof data === "string" && self.definition.pattern.test(data)) {
20
18
  return data;
@@ -8,12 +8,10 @@ var override = require('../../common/override.cjs');
8
8
  const transformKind = kind.createDataParserKind("transform");
9
9
  function transform(inner, theFunction, definition) {
10
10
  const self = base.dataParserInit(transformKind, {
11
- definition: {
12
- errorMessage: definition?.errorMessage,
13
- checkers: definition?.checkers ?? [],
14
- inner,
15
- theFunction,
16
- },
11
+ errorMessage: definition?.errorMessage,
12
+ checkers: definition?.checkers ?? [],
13
+ inner,
14
+ theFunction,
17
15
  }, {
18
16
  sync: (data, error$1, self) => {
19
17
  const innerResult = self.definition.inner.exec(data, error$1);
@@ -21,6 +21,7 @@ export interface DataParserTransform<GenericDefinition extends DataParserDefinit
21
21
  DataParserTransformCheckers<Output<this>>,
22
22
  ...DataParserTransformCheckers<Output<this>>[]
23
23
  ], GenericChecker>): DataParserTransform<AddCheckersToDefinition<GenericDefinition, GenericChecker>>;
24
+ construct<const GenericDefinition extends DataParserDefinitionTransform>(definition: GenericDefinition): DataParserTransform<MergeDefinition<DataParserDefinitionTransform, GenericDefinition>>;
24
25
  }
25
26
  export declare function transform<GenericDataParser extends DataParser, GenericOutput extends unknown, const GenericDefinition extends Partial<Omit<DataParserDefinitionTransform, "inner" | "theFunction">> = never>(inner: GenericDataParser, theFunction: (input: Output<GenericDataParser>, error: DataParserError) => GenericOutput, definition?: GenericDefinition): DataParserTransform<MergeDefinition<DataParserDefinitionTransform, NeverCoalescing<GenericDefinition, {}> & {
26
27
  inner: GenericDataParser;