@clipboard-health/util-ts 2.13.0 → 2.14.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +20 -15
- package/package.json +1 -1
- package/src/lib/functional/either.d.ts +4 -2
- package/src/lib/functional/either.js.map +1 -1
- package/src/lib/functional/option.d.ts +4 -2
- package/src/lib/functional/option.js.map +1 -1
- package/src/lib/functional/pipe.js +4 -2
- package/src/lib/functional/pipe.js.map +1 -1
package/README.md
CHANGED
|
@@ -26,9 +26,9 @@ See `./src/lib` for each utility.
|
|
|
26
26
|
|
|
27
27
|
### ServiceError
|
|
28
28
|
|
|
29
|
-
|
|
29
|
+
<embedex source="packages/util-ts/examples/serviceError.ts">
|
|
30
|
+
|
|
30
31
|
```ts
|
|
31
|
-
// packages/util-ts/examples/serviceError.ts
|
|
32
32
|
import { deepEqual, equal } from "node:assert/strict";
|
|
33
33
|
|
|
34
34
|
import { ERROR_CODES, ServiceError } from "@clipboard-health/util-ts";
|
|
@@ -108,14 +108,15 @@ try {
|
|
|
108
108
|
],
|
|
109
109
|
});
|
|
110
110
|
}
|
|
111
|
-
|
|
112
111
|
```
|
|
113
112
|
|
|
113
|
+
</embedex>
|
|
114
|
+
|
|
114
115
|
### ServiceResult
|
|
115
116
|
|
|
116
|
-
|
|
117
|
+
<embedex source="packages/util-ts/examples/serviceResult.ts">
|
|
118
|
+
|
|
117
119
|
```ts
|
|
118
|
-
// packages/util-ts/examples/serviceResult.ts
|
|
119
120
|
import { ok } from "node:assert/strict";
|
|
120
121
|
|
|
121
122
|
import {
|
|
@@ -143,16 +144,17 @@ function validateUser(params: { email: string; phone: string }): ServiceResult<{
|
|
|
143
144
|
|
|
144
145
|
ok(E.isLeft(validateUser({ email: "invalidEmail", phone: "invalidPhoneNumber" })));
|
|
145
146
|
ok(E.isRight(validateUser({ email: "user@example.com", phone: "555-555-5555" })));
|
|
146
|
-
|
|
147
147
|
```
|
|
148
148
|
|
|
149
|
+
</embedex>
|
|
150
|
+
|
|
149
151
|
### Functional
|
|
150
152
|
|
|
151
153
|
#### `pipe`
|
|
152
154
|
|
|
153
|
-
|
|
155
|
+
<embedex source="packages/util-ts/examples/pipe.ts">
|
|
156
|
+
|
|
154
157
|
```ts
|
|
155
|
-
// packages/util-ts/examples/pipe.ts
|
|
156
158
|
import { equal } from "node:assert/strict";
|
|
157
159
|
|
|
158
160
|
import { pipe } from "@clipboard-health/util-ts";
|
|
@@ -166,14 +168,15 @@ const result = pipe(
|
|
|
166
168
|
);
|
|
167
169
|
|
|
168
170
|
equal(result, "Hello World");
|
|
169
|
-
|
|
170
171
|
```
|
|
171
172
|
|
|
173
|
+
</embedex>
|
|
174
|
+
|
|
172
175
|
#### `option`
|
|
173
176
|
|
|
174
|
-
|
|
177
|
+
<embedex source="packages/util-ts/examples/option.ts">
|
|
178
|
+
|
|
175
179
|
```ts
|
|
176
|
-
// packages/util-ts/examples/option.ts
|
|
177
180
|
import { equal } from "node:assert/strict";
|
|
178
181
|
|
|
179
182
|
import { option as O, pipe } from "@clipboard-health/util-ts";
|
|
@@ -197,14 +200,15 @@ const result = pipe(
|
|
|
197
200
|
);
|
|
198
201
|
|
|
199
202
|
equal(result, "Result is 0.1");
|
|
200
|
-
|
|
201
203
|
```
|
|
202
204
|
|
|
205
|
+
</embedex>
|
|
206
|
+
|
|
203
207
|
#### `either`
|
|
204
208
|
|
|
205
|
-
|
|
209
|
+
<embedex source="packages/util-ts/examples/either.ts">
|
|
210
|
+
|
|
206
211
|
```ts
|
|
207
|
-
// packages/util-ts/examples/either.ts
|
|
208
212
|
import { equal } from "node:assert/strict";
|
|
209
213
|
|
|
210
214
|
import { either as E, pipe } from "@clipboard-health/util-ts";
|
|
@@ -228,9 +232,10 @@ const result = pipe(
|
|
|
228
232
|
);
|
|
229
233
|
|
|
230
234
|
equal(result, "Result is 0.1");
|
|
231
|
-
|
|
232
235
|
```
|
|
233
236
|
|
|
237
|
+
</embedex>
|
|
238
|
+
|
|
234
239
|
## Local development commands
|
|
235
240
|
|
|
236
241
|
See [`package.json`](./package.json) `scripts` for a list of commands.
|
package/package.json
CHANGED
|
@@ -14,8 +14,9 @@ export type Right<A> = Readonly<{
|
|
|
14
14
|
* To help remember, the success case is "right"; it's the result you want.
|
|
15
15
|
*
|
|
16
16
|
* @example
|
|
17
|
+
* <embedex source="packages/util-ts/examples/either.ts">
|
|
18
|
+
*
|
|
17
19
|
* ```ts
|
|
18
|
-
* // packages/util-ts/examples/either.ts
|
|
19
20
|
* import { equal } from "node:assert/strict";
|
|
20
21
|
*
|
|
21
22
|
* import { either as E, pipe } from "@clipboard-health/util-ts";
|
|
@@ -39,8 +40,9 @@ export type Right<A> = Readonly<{
|
|
|
39
40
|
* );
|
|
40
41
|
*
|
|
41
42
|
* equal(result, "Result is 0.1");
|
|
42
|
-
*
|
|
43
43
|
* ```
|
|
44
|
+
*
|
|
45
|
+
* </embedex>
|
|
44
46
|
*/
|
|
45
47
|
export type Either<E, A> = Left<E> | Right<A>;
|
|
46
48
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"either.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/functional/either.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"either.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/functional/either.ts"],"names":[],"mappings":";;AAwDA,oBAEC;AAQD,sBAEC;AAQD,wBAEC;AAQD,0BAEC;AAUD,kBAEC;AAOD,0BAEC;AASD,0BAIC;AASD,8BAEC;AASD,sBAKC;AAjGD;;;;;GAKG;AACH,SAAgB,IAAI,CAAe,IAAO;IACxC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC;AAClC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,KAAK,CAAe,KAAQ;IAC1C,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AAClC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,MAAM,CAAO,MAAoB;IAC/C,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;AACzB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,OAAO,CAAO,MAAoB;IAChD,OAAO,MAAM,CAAC,OAAO,CAAC;AACxB,CAAC;AAED;;;;;;;GAOG;AACH,SAAgB,GAAG,CAAO,CAAkB;IAC1C,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AACzE,CAAC;AAED;;;;GAIG;AACH,SAAgB,OAAO,CAAO,CAAiB;IAC7C,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AACtE,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,OAAO,CACrB,CAA6B;IAE7B,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;AAClE,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,SAAS,CAAO,MAAsB;IACpD,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,KAAK,CACnB,MAAsB,EACtB,OAAwB;IAExB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC;AACrF,CAAC"}
|
|
@@ -9,8 +9,9 @@ export type Some<A> = Readonly<{
|
|
|
9
9
|
* An optional value. If the value exists, it's of type `Some<A>`, otherwise it's of type `None`.
|
|
10
10
|
*
|
|
11
11
|
* @example
|
|
12
|
+
* <embedex source="packages/util-ts/examples/option.ts">
|
|
13
|
+
*
|
|
12
14
|
* ```ts
|
|
13
|
-
* // packages/util-ts/examples/option.ts
|
|
14
15
|
* import { equal } from "node:assert/strict";
|
|
15
16
|
*
|
|
16
17
|
* import { option as O, pipe } from "@clipboard-health/util-ts";
|
|
@@ -34,8 +35,9 @@ export type Some<A> = Readonly<{
|
|
|
34
35
|
* );
|
|
35
36
|
*
|
|
36
37
|
* equal(result, "Result is 0.1");
|
|
37
|
-
*
|
|
38
38
|
* ```
|
|
39
|
+
*
|
|
40
|
+
* </embedex>
|
|
39
41
|
*/
|
|
40
42
|
export type Option<A> = None | Some<A>;
|
|
41
43
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"option.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/functional/option.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"option.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/functional/option.ts"],"names":[],"mappings":";;;AA0DA,oBAEC;AAQD,wBAEC;AAQD,wBAEC;AASD,kBAEC;AASD,0BAEC;AASD,8BAEC;AASD,sBAKC;AAUD,oCAEC;AA3ID,wCAAmC;AA+CnC;;GAEG;AACU,QAAA,IAAI,GAAS,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;AAE5C;;;;;GAKG;AACH,SAAgB,IAAI,CAAI,KAAQ;IAC9B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;AACjC,CAAC;AAED;;;;;GAKG;AACH,SAAgB,MAAM,CAAI,MAAiB;IACzC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC;AACxB,CAAC;AAED;;;;;GAKG;AACH,SAAgB,MAAM,CAAI,MAAiB;IACzC,OAAO,MAAM,CAAC,MAAM,CAAC;AACvB,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,GAAG,CAAO,CAAc;IACtC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,YAAI,CAAC,CAAC;AACrE,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,OAAO,CAAO,CAAsB;IAClD,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAI,CAAC,CAAC;AAC/D,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,SAAS,CAAI,YAAe;IAC1C,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;AACpE,CAAC;AAED;;;;;;GAMG;AACH,SAAgB,KAAK,CACnB,MAAe,EACf,MAAuB;IAEvB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;GAMG;AACH,wDAAwD;AACxD,SAAgB,YAAY,CAAI,KAA2B;IACzD,OAAO,IAAA,eAAK,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAC3C,CAAC"}
|
|
@@ -9,8 +9,9 @@ exports.pipe = pipe;
|
|
|
9
9
|
* @param fs - Functions to apply sequentially
|
|
10
10
|
* @returns The final transformed value
|
|
11
11
|
* @example
|
|
12
|
+
* <embedex source="packages/util-ts/examples/pipe.ts">
|
|
13
|
+
*
|
|
12
14
|
* ```ts
|
|
13
|
-
* // packages/util-ts/examples/pipe.ts
|
|
14
15
|
* import { equal } from "node:assert/strict";
|
|
15
16
|
*
|
|
16
17
|
* import { pipe } from "@clipboard-health/util-ts";
|
|
@@ -24,8 +25,9 @@ exports.pipe = pipe;
|
|
|
24
25
|
* );
|
|
25
26
|
*
|
|
26
27
|
* equal(result, "Hello World");
|
|
27
|
-
*
|
|
28
28
|
* ```
|
|
29
|
+
*
|
|
30
|
+
* </embedex>
|
|
29
31
|
*/
|
|
30
32
|
function pipe(a, ...fs) {
|
|
31
33
|
return fs.reduce((accumulator, f) => f(accumulator), a);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipe.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/functional/pipe.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"pipe.js","sourceRoot":"","sources":["../../../../../../packages/util-ts/src/lib/functional/pipe.ts"],"names":[],"mappings":";;AAyFA,oBAEC;AA9BD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,SAAgB,IAAI,CAAC,CAAU,EAAE,GAAG,EAAkC;IACpE,OAAO,EAAE,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC;AAC1D,CAAC"}
|