@lukaskj/ts-utils 1.0.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/LICENSE +21 -0
- package/README.md +151 -0
- package/dist/chunksToLines.d.ts +18 -0
- package/dist/colors/index.cjs +109 -0
- package/dist/colors/index.d.ts +52 -0
- package/dist/colors/index.mjs +66 -0
- package/dist/index.cjs +109 -0
- package/dist/index.d.ts +6 -0
- package/dist/index.mjs +64 -0
- package/dist/isNullOrUndefined.d.ts +2 -0
- package/dist/isObject.d.ts +7 -0
- package/dist/isPrimitive.d.ts +1 -0
- package/dist/jsonParser.d.ts +12 -0
- package/dist/neverthrow/index.cjs +69 -0
- package/dist/neverthrow/index.d.ts +1 -0
- package/dist/neverthrow/index.mjs +24 -0
- package/dist/neverthrow/tryCatch.d.ts +36 -0
- package/dist/randomString.d.ts +1 -0
- package/dist/readStdinAsync.d.ts +12 -0
- package/dist/types.d.ts +16 -0
- package/package.json +91 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Lukas Kososki Jacomin
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
# @lukaskj/ts-utils
|
|
2
|
+
|
|
3
|
+
A collection of TypeScript utilities for common programming patterns and operations.
|
|
4
|
+
|
|
5
|
+
[](https://www.npmjs.com/package/@lukaskj/ts-utils)
|
|
6
|
+
[](https://github.com/lukaskj/ts-utils/blob/main/LICENSE)
|
|
7
|
+
[](https://nodejs.org)
|
|
8
|
+
|
|
9
|
+
## Installation
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
# Using npm
|
|
13
|
+
npm install @lukaskj/ts-utils
|
|
14
|
+
|
|
15
|
+
# Using yarn
|
|
16
|
+
yarn add @lukaskj/ts-utils
|
|
17
|
+
|
|
18
|
+
# Using bun
|
|
19
|
+
bun add @lukaskj/ts-utils
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Features
|
|
23
|
+
|
|
24
|
+
### Error Handling
|
|
25
|
+
|
|
26
|
+
#### `tryCatch` and `tryCatchAsync`
|
|
27
|
+
Type-safe error handling utilities inspired by Rust's Result type.
|
|
28
|
+
|
|
29
|
+
```typescript
|
|
30
|
+
import { tryCatch, tryCatchAsync } from '@lukaskj/ts-utils';
|
|
31
|
+
|
|
32
|
+
// Synchronous usage
|
|
33
|
+
const [data, error] = tryCatch(() => someRiskyOperation());
|
|
34
|
+
if (error) {
|
|
35
|
+
console.error(error);
|
|
36
|
+
} else {
|
|
37
|
+
console.log(data);
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
// Asynchronous usage
|
|
41
|
+
const [data, error] = await tryCatchAsync(somePromise);
|
|
42
|
+
if (error) {
|
|
43
|
+
console.error(error);
|
|
44
|
+
} else {
|
|
45
|
+
console.log(data);
|
|
46
|
+
}
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### Terminal Colors
|
|
50
|
+
|
|
51
|
+
The package includes a color utility for terminal output:
|
|
52
|
+
|
|
53
|
+
```typescript
|
|
54
|
+
import colors from '@lukaskj/ts-utils/colors';
|
|
55
|
+
|
|
56
|
+
console.log(colors.red('Error message'));
|
|
57
|
+
console.log(colors.green('Success message'));
|
|
58
|
+
console.log(colors.blueBold('Important information'));
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
### JSON Utilities
|
|
62
|
+
|
|
63
|
+
#### `jsonParser`
|
|
64
|
+
A secure JSON parser that protects against prototype pollution.
|
|
65
|
+
|
|
66
|
+
```typescript
|
|
67
|
+
import { jsonParser } from '@lukaskj/ts-utils';
|
|
68
|
+
|
|
69
|
+
const result = jsonParser('{"name": "test"}');
|
|
70
|
+
if (result.err) {
|
|
71
|
+
console.error(result.err);
|
|
72
|
+
} else {
|
|
73
|
+
console.log(result.value);
|
|
74
|
+
}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### Type Guards
|
|
78
|
+
|
|
79
|
+
#### `isObject`
|
|
80
|
+
Type guard for checking if a value is a plain JavaScript object.
|
|
81
|
+
|
|
82
|
+
```typescript
|
|
83
|
+
import { isObject } from '@lukaskj/ts-utils';
|
|
84
|
+
|
|
85
|
+
if (isObject(value)) {
|
|
86
|
+
// value is typed as Record<string, any>
|
|
87
|
+
console.log(Object.keys(value));
|
|
88
|
+
}
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
#### `isNullOrUndefined` and `isNullOrEmptyOrUndefined`
|
|
92
|
+
Type guards for null/undefined checks.
|
|
93
|
+
|
|
94
|
+
```typescript
|
|
95
|
+
import { isNullOrUndefined, isNullOrEmptyOrUndefined } from '@lukaskj/ts-utils';
|
|
96
|
+
|
|
97
|
+
if (!isNullOrUndefined(value)) {
|
|
98
|
+
// value is not null or undefined
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
if (!isNullOrEmptyOrUndefined(value)) {
|
|
102
|
+
// value is not null, undefined, or empty string
|
|
103
|
+
}
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### Stream Processing
|
|
107
|
+
|
|
108
|
+
#### `chunksToLines`
|
|
109
|
+
Converts an async iterable of chunks into lines of text.
|
|
110
|
+
|
|
111
|
+
```typescript
|
|
112
|
+
import { chunksToLines } from '@lukaskj/ts-utils';
|
|
113
|
+
import { pipeline } from 'node:stream/promises';
|
|
114
|
+
import { createReadStream } from 'node:fs';
|
|
115
|
+
|
|
116
|
+
const readStream = createReadStream('file.txt', { encoding: 'utf-8' });
|
|
117
|
+
await pipeline(readStream, chunksToLines, process.stdout);
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
## Development
|
|
121
|
+
|
|
122
|
+
```bash
|
|
123
|
+
# Install dependencies
|
|
124
|
+
bun install
|
|
125
|
+
|
|
126
|
+
# Run tests
|
|
127
|
+
bun test
|
|
128
|
+
|
|
129
|
+
# Build the package
|
|
130
|
+
bun run build:all
|
|
131
|
+
|
|
132
|
+
# Run linting
|
|
133
|
+
bun run lint
|
|
134
|
+
```
|
|
135
|
+
|
|
136
|
+
## Requirements
|
|
137
|
+
|
|
138
|
+
- Node.js >= 23
|
|
139
|
+
- Bun >= 1.2.20
|
|
140
|
+
|
|
141
|
+
## License
|
|
142
|
+
|
|
143
|
+
MIT
|
|
144
|
+
|
|
145
|
+
## Contributing
|
|
146
|
+
|
|
147
|
+
1. Fork the repository
|
|
148
|
+
2. Create your feature branch
|
|
149
|
+
3. Commit your changes
|
|
150
|
+
4. Push to the branch
|
|
151
|
+
5. Create a new Pull Request
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts an async iterable of string or Uint8Array chunks into an async iterable of lines.
|
|
3
|
+
* Handles cases where lines may be split across multiple chunks.
|
|
4
|
+
* Usage:
|
|
5
|
+
* ```ts
|
|
6
|
+
* import { pipeline } from "node:stream/promises";
|
|
7
|
+
* import { createReadStream } from "node:fs";
|
|
8
|
+
* import { chunksToLines } from "@lukaskj/ts-utils";
|
|
9
|
+
*
|
|
10
|
+
* const readStream = createReadStream("path/to/file.txt", { encoding: "utf-8" });
|
|
11
|
+
* await pipeline(readStream, chunksToLines, process.stdout).catch((err) => {
|
|
12
|
+
* console.error(err);
|
|
13
|
+
* process.exit(1);
|
|
14
|
+
* });
|
|
15
|
+
* ```
|
|
16
|
+
* @param chunks
|
|
17
|
+
*/
|
|
18
|
+
export declare function chunksToLines(chunks: AsyncIterable<string | Uint8Array>): AsyncGenerator<string, void, unknown>;
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __toESM = (mod, isNodeMode, target) => {
|
|
8
|
+
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
9
|
+
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
10
|
+
for (let key of __getOwnPropNames(mod))
|
|
11
|
+
if (!__hasOwnProp.call(to, key))
|
|
12
|
+
__defProp(to, key, {
|
|
13
|
+
get: () => mod[key],
|
|
14
|
+
enumerable: true
|
|
15
|
+
});
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __moduleCache = /* @__PURE__ */ new WeakMap;
|
|
19
|
+
var __toCommonJS = (from) => {
|
|
20
|
+
var entry = __moduleCache.get(from), desc;
|
|
21
|
+
if (entry)
|
|
22
|
+
return entry;
|
|
23
|
+
entry = __defProp({}, "__esModule", { value: true });
|
|
24
|
+
if (from && typeof from === "object" || typeof from === "function")
|
|
25
|
+
__getOwnPropNames(from).map((key) => !__hasOwnProp.call(entry, key) && __defProp(entry, key, {
|
|
26
|
+
get: () => from[key],
|
|
27
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
28
|
+
}));
|
|
29
|
+
__moduleCache.set(from, entry);
|
|
30
|
+
return entry;
|
|
31
|
+
};
|
|
32
|
+
var __export = (target, all) => {
|
|
33
|
+
for (var name in all)
|
|
34
|
+
__defProp(target, name, {
|
|
35
|
+
get: all[name],
|
|
36
|
+
enumerable: true,
|
|
37
|
+
configurable: true,
|
|
38
|
+
set: (newValue) => all[name] = () => newValue
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
// src/colors/index.ts
|
|
43
|
+
var exports_colors = {};
|
|
44
|
+
__export(exports_colors, {
|
|
45
|
+
default: () => colors_default
|
|
46
|
+
});
|
|
47
|
+
module.exports = __toCommonJS(exports_colors);
|
|
48
|
+
var __reset = "\x1B[0m";
|
|
49
|
+
var COLORS_MAP;
|
|
50
|
+
((COLORS_MAP2) => {
|
|
51
|
+
COLORS_MAP2["black"] = "\x1B[0;30m";
|
|
52
|
+
COLORS_MAP2["red"] = "\x1B[0;31m";
|
|
53
|
+
COLORS_MAP2["green"] = "\x1B[0;32m";
|
|
54
|
+
COLORS_MAP2["yellow"] = "\x1B[0;33m";
|
|
55
|
+
COLORS_MAP2["blue"] = "\x1B[0;34m";
|
|
56
|
+
COLORS_MAP2["purple"] = "\x1B[0;35m";
|
|
57
|
+
COLORS_MAP2["cyan"] = "\x1B[0;36m";
|
|
58
|
+
COLORS_MAP2["white"] = "\x1B[0;37m";
|
|
59
|
+
COLORS_MAP2["blackBright"] = "\x1B[0;90m";
|
|
60
|
+
COLORS_MAP2["redBright"] = "\x1B[0;91m";
|
|
61
|
+
COLORS_MAP2["greenBright"] = "\x1B[0;92m";
|
|
62
|
+
COLORS_MAP2["yellowBright"] = "\x1B[0;93m";
|
|
63
|
+
COLORS_MAP2["blueBright"] = "\x1B[0;94m";
|
|
64
|
+
COLORS_MAP2["purpleBright"] = "\x1B[0;95m";
|
|
65
|
+
COLORS_MAP2["cyanBright"] = "\x1B[0;96m";
|
|
66
|
+
COLORS_MAP2["whiteBright"] = "\x1B[0;97m";
|
|
67
|
+
COLORS_MAP2["redBold"] = "\x1B[1;31m";
|
|
68
|
+
COLORS_MAP2["greenBold"] = "\x1B[1;32m";
|
|
69
|
+
COLORS_MAP2["yellowBold"] = "\x1B[1;33m";
|
|
70
|
+
COLORS_MAP2["blueBold"] = "\x1B[1;34m";
|
|
71
|
+
COLORS_MAP2["purpleBold"] = "\x1B[1;35m";
|
|
72
|
+
COLORS_MAP2["cyanBold"] = "\x1B[1;36m";
|
|
73
|
+
COLORS_MAP2["whiteBold"] = "\x1B[1;37m";
|
|
74
|
+
COLORS_MAP2["blackUnderline"] = "\x1B[4;30m";
|
|
75
|
+
COLORS_MAP2["redUnderline"] = "\x1B[4;31m";
|
|
76
|
+
COLORS_MAP2["greenUnderline"] = "\x1B[4;32m";
|
|
77
|
+
COLORS_MAP2["yellowUnderline"] = "\x1B[4;33m";
|
|
78
|
+
COLORS_MAP2["blueUnderline"] = "\x1B[4;34m";
|
|
79
|
+
COLORS_MAP2["purpleUnderline"] = "\x1B[4;35m";
|
|
80
|
+
COLORS_MAP2["cyanUnderline"] = "\x1B[4;36m";
|
|
81
|
+
COLORS_MAP2["whiteUnderline"] = "\x1B[4;37m";
|
|
82
|
+
COLORS_MAP2["bgBlack"] = "\x1B[40m";
|
|
83
|
+
COLORS_MAP2["bgRed"] = "\x1B[41m";
|
|
84
|
+
COLORS_MAP2["bgGreen"] = "\x1B[42m";
|
|
85
|
+
COLORS_MAP2["bgYellow"] = "\x1B[43m";
|
|
86
|
+
COLORS_MAP2["bgBlue"] = "\x1B[44m";
|
|
87
|
+
COLORS_MAP2["bgPurple"] = "\x1B[45m";
|
|
88
|
+
COLORS_MAP2["bgCyan"] = "\x1B[46m";
|
|
89
|
+
COLORS_MAP2["bgWhite"] = "\x1B[47m";
|
|
90
|
+
COLORS_MAP2["bgBlackBright"] = "\x1B[100m";
|
|
91
|
+
COLORS_MAP2["bgRedBright"] = "\x1B[101m";
|
|
92
|
+
COLORS_MAP2["bgGreenBright"] = "\x1B[102m";
|
|
93
|
+
COLORS_MAP2["bgYellowBright"] = "\x1B[103m";
|
|
94
|
+
COLORS_MAP2["bgBlueBright"] = "\x1B[104m";
|
|
95
|
+
COLORS_MAP2["bgPurpleBright"] = "\x1B[105m";
|
|
96
|
+
COLORS_MAP2["bgCyanBright"] = "\x1B[106m";
|
|
97
|
+
COLORS_MAP2["bgWhiteBright"] = "\x1B[107m";
|
|
98
|
+
})(COLORS_MAP ||= {});
|
|
99
|
+
function wrap(color) {
|
|
100
|
+
return (data) => `${color}${data}${__reset}`;
|
|
101
|
+
}
|
|
102
|
+
var colors = {};
|
|
103
|
+
for (const [colorName, colorValue] of Object.entries(COLORS_MAP)) {
|
|
104
|
+
colors[colorName] = wrap(colorValue);
|
|
105
|
+
}
|
|
106
|
+
var colors_default = colors;
|
|
107
|
+
|
|
108
|
+
//# debugId=F8C6D3ADE772C14164756E2164756E21
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2NvbG9ycy9pbmRleC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsKICAgICIvLyBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9KQmxvbmQvMmZlYTQzYTMwNDliMzgyODdlNWU5Y2VmYzg3YjIxMjRcblxuY29uc3QgX19yZXNldCA9IFwiXFx4MWJbMG1cIjtcblxuZW51bSBDT0xPUlNfTUFQIHtcbiAgYmxhY2sgPSBcIlxceDFiWzA7MzBtXCIsXG4gIHJlZCA9IFwiXFx4MWJbMDszMW1cIixcbiAgZ3JlZW4gPSBcIlxceDFiWzA7MzJtXCIsXG4gIHllbGxvdyA9IFwiXFx4MWJbMDszM21cIixcbiAgYmx1ZSA9IFwiXFx4MWJbMDszNG1cIixcbiAgcHVycGxlID0gXCJcXHgxYlswOzM1bVwiLFxuICBjeWFuID0gXCJcXHgxYlswOzM2bVwiLFxuICB3aGl0ZSA9IFwiXFx4MWJbMDszN21cIixcblxuICBibGFja0JyaWdodCA9IFwiXFx4MWJbMDs5MG1cIixcbiAgcmVkQnJpZ2h0ID0gXCJcXHgxYlswOzkxbVwiLFxuICBncmVlbkJyaWdodCA9IFwiXFx4MWJbMDs5Mm1cIixcbiAgeWVsbG93QnJpZ2h0ID0gXCJcXHgxYlswOzkzbVwiLFxuICBibHVlQnJpZ2h0ID0gXCJcXHgxYlswOzk0bVwiLFxuICBwdXJwbGVCcmlnaHQgPSBcIlxceDFiWzA7OTVtXCIsXG4gIGN5YW5CcmlnaHQgPSBcIlxceDFiWzA7OTZtXCIsXG4gIHdoaXRlQnJpZ2h0ID0gXCJcXHgxYlswOzk3bVwiLFxuXG4gIHJlZEJvbGQgPSBcIlxceDFiWzE7MzFtXCIsXG4gIGdyZWVuQm9sZCA9IFwiXFx4MWJbMTszMm1cIixcbiAgeWVsbG93Qm9sZCA9IFwiXFx4MWJbMTszM21cIixcbiAgYmx1ZUJvbGQgPSBcIlxceDFiWzE7MzRtXCIsXG4gIHB1cnBsZUJvbGQgPSBcIlxceDFiWzE7MzVtXCIsXG4gIGN5YW5Cb2xkID0gXCJcXHgxYlsxOzM2bVwiLFxuICB3aGl0ZUJvbGQgPSBcIlxceDFiWzE7MzdtXCIsXG5cbiAgYmxhY2tVbmRlcmxpbmUgPSBcIlxceDFiWzQ7MzBtXCIsXG4gIHJlZFVuZGVybGluZSA9IFwiXFx4MWJbNDszMW1cIixcbiAgZ3JlZW5VbmRlcmxpbmUgPSBcIlxceDFiWzQ7MzJtXCIsXG4gIHllbGxvd1VuZGVybGluZSA9IFwiXFx4MWJbNDszM21cIixcbiAgYmx1ZVVuZGVybGluZSA9IFwiXFx4MWJbNDszNG1cIixcbiAgcHVycGxlVW5kZXJsaW5lID0gXCJcXHgxYls0OzM1bVwiLFxuICBjeWFuVW5kZXJsaW5lID0gXCJcXHgxYls0OzM2bVwiLFxuICB3aGl0ZVVuZGVybGluZSA9IFwiXFx4MWJbNDszN21cIixcblxuICBiZ0JsYWNrID0gXCJcXHgxYls0MG1cIixcbiAgYmdSZWQgPSBcIlxceDFiWzQxbVwiLFxuICBiZ0dyZWVuID0gXCJcXHgxYls0Mm1cIixcbiAgYmdZZWxsb3cgPSBcIlxceDFiWzQzbVwiLFxuICBiZ0JsdWUgPSBcIlxceDFiWzQ0bVwiLFxuICBiZ1B1cnBsZSA9IFwiXFx4MWJbNDVtXCIsXG4gIGJnQ3lhbiA9IFwiXFx4MWJbNDZtXCIsXG4gIGJnV2hpdGUgPSBcIlxceDFiWzQ3bVwiLFxuXG4gIGJnQmxhY2tCcmlnaHQgPSBcIlxceDFiWzEwMG1cIixcbiAgYmdSZWRCcmlnaHQgPSBcIlxceDFiWzEwMW1cIixcbiAgYmdHcmVlbkJyaWdodCA9IFwiXFx4MWJbMTAybVwiLFxuICBiZ1llbGxvd0JyaWdodCA9IFwiXFx4MWJbMTAzbVwiLFxuICBiZ0JsdWVCcmlnaHQgPSBcIlxceDFiWzEwNG1cIixcbiAgYmdQdXJwbGVCcmlnaHQgPSBcIlxceDFiWzEwNW1cIixcbiAgYmdDeWFuQnJpZ2h0ID0gXCJcXHgxYlsxMDZtXCIsXG4gIGJnV2hpdGVCcmlnaHQgPSBcIlxceDFiWzEwN21cIixcbn1cblxuZnVuY3Rpb24gd3JhcChjb2xvcjogc3RyaW5nKSB7XG4gIHJldHVybiAoZGF0YTogdW5rbm93bikgPT4gYCR7Y29sb3J9JHtkYXRhfSR7X19yZXNldH1gO1xufVxuXG5jb25zdCBjb2xvcnM6IFJlY29yZDxrZXlvZiB0eXBlb2YgQ09MT1JTX01BUCwgUmV0dXJuVHlwZTx0eXBlb2Ygd3JhcD4+ID0ge30gYXMgYW55O1xuXG5mb3IgKGNvbnN0IFtjb2xvck5hbWUsIGNvbG9yVmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKENPTE9SU19NQVApKSB7XG4gIGNvbG9yc1tjb2xvck5hbWUgYXMga2V5b2YgdHlwZW9mIENPTE9SU19NQVBdID0gd3JhcChjb2xvclZhbHVlKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY29sb3JzO1xuIgogIF0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFFQSxJQUFNLFVBQVU7QUFFaEIsSUFBSztBQUFBLENBQUwsQ0FBSyxnQkFBTDtBQUFBLEVBQ0UsdUJBQVE7QUFBQSxFQUNSLHFCQUFNO0FBQUEsRUFDTix1QkFBUTtBQUFBLEVBQ1Isd0JBQVM7QUFBQSxFQUNULHNCQUFPO0FBQUEsRUFDUCx3QkFBUztBQUFBLEVBQ1Qsc0JBQU87QUFBQSxFQUNQLHVCQUFRO0FBQUEsRUFFUiw2QkFBYztBQUFBLEVBQ2QsMkJBQVk7QUFBQSxFQUNaLDZCQUFjO0FBQUEsRUFDZCw4QkFBZTtBQUFBLEVBQ2YsNEJBQWE7QUFBQSxFQUNiLDhCQUFlO0FBQUEsRUFDZiw0QkFBYTtBQUFBLEVBQ2IsNkJBQWM7QUFBQSxFQUVkLHlCQUFVO0FBQUEsRUFDViwyQkFBWTtBQUFBLEVBQ1osNEJBQWE7QUFBQSxFQUNiLDBCQUFXO0FBQUEsRUFDWCw0QkFBYTtBQUFBLEVBQ2IsMEJBQVc7QUFBQSxFQUNYLDJCQUFZO0FBQUEsRUFFWixnQ0FBaUI7QUFBQSxFQUNqQiw4QkFBZTtBQUFBLEVBQ2YsZ0NBQWlCO0FBQUEsRUFDakIsaUNBQWtCO0FBQUEsRUFDbEIsK0JBQWdCO0FBQUEsRUFDaEIsaUNBQWtCO0FBQUEsRUFDbEIsK0JBQWdCO0FBQUEsRUFDaEIsZ0NBQWlCO0FBQUEsRUFFakIseUJBQVU7QUFBQSxFQUNWLHVCQUFRO0FBQUEsRUFDUix5QkFBVTtBQUFBLEVBQ1YsMEJBQVc7QUFBQSxFQUNYLHdCQUFTO0FBQUEsRUFDVCwwQkFBVztBQUFBLEVBQ1gsd0JBQVM7QUFBQSxFQUNULHlCQUFVO0FBQUEsRUFFViwrQkFBZ0I7QUFBQSxFQUNoQiw2QkFBYztBQUFBLEVBQ2QsK0JBQWdCO0FBQUEsRUFDaEIsZ0NBQWlCO0FBQUEsRUFDakIsOEJBQWU7QUFBQSxFQUNmLGdDQUFpQjtBQUFBLEVBQ2pCLDhCQUFlO0FBQUEsRUFDZiwrQkFBZ0I7QUFBQSxHQXBEYjtBQXVETCxTQUFTLElBQUksQ0FBQyxPQUFlO0FBQUEsRUFDM0IsT0FBTyxDQUFDLFNBQWtCLEdBQUcsUUFBUSxPQUFPO0FBQUE7QUFHOUMsSUFBTSxTQUFtRSxDQUFDO0FBRTFFLFlBQVksV0FBVyxlQUFlLE9BQU8sUUFBUSxVQUFVLEdBQUc7QUFBQSxFQUNoRSxPQUFPLGFBQXdDLEtBQUssVUFBVTtBQUNoRTtBQUVBLElBQWU7IiwKICAiZGVidWdJZCI6ICJGOEM2RDNBREU3NzJDMTQxNjQ3NTZFMjE2NDc1NkUyMSIsCiAgIm5hbWVzIjogW10KfQ==
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
declare enum COLORS_MAP {
|
|
2
|
+
black = "\u001B[0;30m",
|
|
3
|
+
red = "\u001B[0;31m",
|
|
4
|
+
green = "\u001B[0;32m",
|
|
5
|
+
yellow = "\u001B[0;33m",
|
|
6
|
+
blue = "\u001B[0;34m",
|
|
7
|
+
purple = "\u001B[0;35m",
|
|
8
|
+
cyan = "\u001B[0;36m",
|
|
9
|
+
white = "\u001B[0;37m",
|
|
10
|
+
blackBright = "\u001B[0;90m",
|
|
11
|
+
redBright = "\u001B[0;91m",
|
|
12
|
+
greenBright = "\u001B[0;92m",
|
|
13
|
+
yellowBright = "\u001B[0;93m",
|
|
14
|
+
blueBright = "\u001B[0;94m",
|
|
15
|
+
purpleBright = "\u001B[0;95m",
|
|
16
|
+
cyanBright = "\u001B[0;96m",
|
|
17
|
+
whiteBright = "\u001B[0;97m",
|
|
18
|
+
redBold = "\u001B[1;31m",
|
|
19
|
+
greenBold = "\u001B[1;32m",
|
|
20
|
+
yellowBold = "\u001B[1;33m",
|
|
21
|
+
blueBold = "\u001B[1;34m",
|
|
22
|
+
purpleBold = "\u001B[1;35m",
|
|
23
|
+
cyanBold = "\u001B[1;36m",
|
|
24
|
+
whiteBold = "\u001B[1;37m",
|
|
25
|
+
blackUnderline = "\u001B[4;30m",
|
|
26
|
+
redUnderline = "\u001B[4;31m",
|
|
27
|
+
greenUnderline = "\u001B[4;32m",
|
|
28
|
+
yellowUnderline = "\u001B[4;33m",
|
|
29
|
+
blueUnderline = "\u001B[4;34m",
|
|
30
|
+
purpleUnderline = "\u001B[4;35m",
|
|
31
|
+
cyanUnderline = "\u001B[4;36m",
|
|
32
|
+
whiteUnderline = "\u001B[4;37m",
|
|
33
|
+
bgBlack = "\u001B[40m",
|
|
34
|
+
bgRed = "\u001B[41m",
|
|
35
|
+
bgGreen = "\u001B[42m",
|
|
36
|
+
bgYellow = "\u001B[43m",
|
|
37
|
+
bgBlue = "\u001B[44m",
|
|
38
|
+
bgPurple = "\u001B[45m",
|
|
39
|
+
bgCyan = "\u001B[46m",
|
|
40
|
+
bgWhite = "\u001B[47m",
|
|
41
|
+
bgBlackBright = "\u001B[100m",
|
|
42
|
+
bgRedBright = "\u001B[101m",
|
|
43
|
+
bgGreenBright = "\u001B[102m",
|
|
44
|
+
bgYellowBright = "\u001B[103m",
|
|
45
|
+
bgBlueBright = "\u001B[104m",
|
|
46
|
+
bgPurpleBright = "\u001B[105m",
|
|
47
|
+
bgCyanBright = "\u001B[106m",
|
|
48
|
+
bgWhiteBright = "\u001B[107m"
|
|
49
|
+
}
|
|
50
|
+
declare function wrap(color: string): (data: unknown) => string;
|
|
51
|
+
declare const colors: Record<keyof typeof COLORS_MAP, ReturnType<typeof wrap>>;
|
|
52
|
+
export default colors;
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
// src/colors/index.ts
|
|
2
|
+
var __reset = "\x1B[0m";
|
|
3
|
+
var COLORS_MAP;
|
|
4
|
+
((COLORS_MAP2) => {
|
|
5
|
+
COLORS_MAP2["black"] = "\x1B[0;30m";
|
|
6
|
+
COLORS_MAP2["red"] = "\x1B[0;31m";
|
|
7
|
+
COLORS_MAP2["green"] = "\x1B[0;32m";
|
|
8
|
+
COLORS_MAP2["yellow"] = "\x1B[0;33m";
|
|
9
|
+
COLORS_MAP2["blue"] = "\x1B[0;34m";
|
|
10
|
+
COLORS_MAP2["purple"] = "\x1B[0;35m";
|
|
11
|
+
COLORS_MAP2["cyan"] = "\x1B[0;36m";
|
|
12
|
+
COLORS_MAP2["white"] = "\x1B[0;37m";
|
|
13
|
+
COLORS_MAP2["blackBright"] = "\x1B[0;90m";
|
|
14
|
+
COLORS_MAP2["redBright"] = "\x1B[0;91m";
|
|
15
|
+
COLORS_MAP2["greenBright"] = "\x1B[0;92m";
|
|
16
|
+
COLORS_MAP2["yellowBright"] = "\x1B[0;93m";
|
|
17
|
+
COLORS_MAP2["blueBright"] = "\x1B[0;94m";
|
|
18
|
+
COLORS_MAP2["purpleBright"] = "\x1B[0;95m";
|
|
19
|
+
COLORS_MAP2["cyanBright"] = "\x1B[0;96m";
|
|
20
|
+
COLORS_MAP2["whiteBright"] = "\x1B[0;97m";
|
|
21
|
+
COLORS_MAP2["redBold"] = "\x1B[1;31m";
|
|
22
|
+
COLORS_MAP2["greenBold"] = "\x1B[1;32m";
|
|
23
|
+
COLORS_MAP2["yellowBold"] = "\x1B[1;33m";
|
|
24
|
+
COLORS_MAP2["blueBold"] = "\x1B[1;34m";
|
|
25
|
+
COLORS_MAP2["purpleBold"] = "\x1B[1;35m";
|
|
26
|
+
COLORS_MAP2["cyanBold"] = "\x1B[1;36m";
|
|
27
|
+
COLORS_MAP2["whiteBold"] = "\x1B[1;37m";
|
|
28
|
+
COLORS_MAP2["blackUnderline"] = "\x1B[4;30m";
|
|
29
|
+
COLORS_MAP2["redUnderline"] = "\x1B[4;31m";
|
|
30
|
+
COLORS_MAP2["greenUnderline"] = "\x1B[4;32m";
|
|
31
|
+
COLORS_MAP2["yellowUnderline"] = "\x1B[4;33m";
|
|
32
|
+
COLORS_MAP2["blueUnderline"] = "\x1B[4;34m";
|
|
33
|
+
COLORS_MAP2["purpleUnderline"] = "\x1B[4;35m";
|
|
34
|
+
COLORS_MAP2["cyanUnderline"] = "\x1B[4;36m";
|
|
35
|
+
COLORS_MAP2["whiteUnderline"] = "\x1B[4;37m";
|
|
36
|
+
COLORS_MAP2["bgBlack"] = "\x1B[40m";
|
|
37
|
+
COLORS_MAP2["bgRed"] = "\x1B[41m";
|
|
38
|
+
COLORS_MAP2["bgGreen"] = "\x1B[42m";
|
|
39
|
+
COLORS_MAP2["bgYellow"] = "\x1B[43m";
|
|
40
|
+
COLORS_MAP2["bgBlue"] = "\x1B[44m";
|
|
41
|
+
COLORS_MAP2["bgPurple"] = "\x1B[45m";
|
|
42
|
+
COLORS_MAP2["bgCyan"] = "\x1B[46m";
|
|
43
|
+
COLORS_MAP2["bgWhite"] = "\x1B[47m";
|
|
44
|
+
COLORS_MAP2["bgBlackBright"] = "\x1B[100m";
|
|
45
|
+
COLORS_MAP2["bgRedBright"] = "\x1B[101m";
|
|
46
|
+
COLORS_MAP2["bgGreenBright"] = "\x1B[102m";
|
|
47
|
+
COLORS_MAP2["bgYellowBright"] = "\x1B[103m";
|
|
48
|
+
COLORS_MAP2["bgBlueBright"] = "\x1B[104m";
|
|
49
|
+
COLORS_MAP2["bgPurpleBright"] = "\x1B[105m";
|
|
50
|
+
COLORS_MAP2["bgCyanBright"] = "\x1B[106m";
|
|
51
|
+
COLORS_MAP2["bgWhiteBright"] = "\x1B[107m";
|
|
52
|
+
})(COLORS_MAP ||= {});
|
|
53
|
+
function wrap(color) {
|
|
54
|
+
return (data) => `${color}${data}${__reset}`;
|
|
55
|
+
}
|
|
56
|
+
var colors = {};
|
|
57
|
+
for (const [colorName, colorValue] of Object.entries(COLORS_MAP)) {
|
|
58
|
+
colors[colorName] = wrap(colorValue);
|
|
59
|
+
}
|
|
60
|
+
var colors_default = colors;
|
|
61
|
+
export {
|
|
62
|
+
colors_default as default
|
|
63
|
+
};
|
|
64
|
+
|
|
65
|
+
//# debugId=2E2399BDD412E4AB64756E2164756E21
|
|
66
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2NvbG9ycy9pbmRleC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsKICAgICIvLyBodHRwczovL2dpc3QuZ2l0aHViLmNvbS9KQmxvbmQvMmZlYTQzYTMwNDliMzgyODdlNWU5Y2VmYzg3YjIxMjRcblxuY29uc3QgX19yZXNldCA9IFwiXFx4MWJbMG1cIjtcblxuZW51bSBDT0xPUlNfTUFQIHtcbiAgYmxhY2sgPSBcIlxceDFiWzA7MzBtXCIsXG4gIHJlZCA9IFwiXFx4MWJbMDszMW1cIixcbiAgZ3JlZW4gPSBcIlxceDFiWzA7MzJtXCIsXG4gIHllbGxvdyA9IFwiXFx4MWJbMDszM21cIixcbiAgYmx1ZSA9IFwiXFx4MWJbMDszNG1cIixcbiAgcHVycGxlID0gXCJcXHgxYlswOzM1bVwiLFxuICBjeWFuID0gXCJcXHgxYlswOzM2bVwiLFxuICB3aGl0ZSA9IFwiXFx4MWJbMDszN21cIixcblxuICBibGFja0JyaWdodCA9IFwiXFx4MWJbMDs5MG1cIixcbiAgcmVkQnJpZ2h0ID0gXCJcXHgxYlswOzkxbVwiLFxuICBncmVlbkJyaWdodCA9IFwiXFx4MWJbMDs5Mm1cIixcbiAgeWVsbG93QnJpZ2h0ID0gXCJcXHgxYlswOzkzbVwiLFxuICBibHVlQnJpZ2h0ID0gXCJcXHgxYlswOzk0bVwiLFxuICBwdXJwbGVCcmlnaHQgPSBcIlxceDFiWzA7OTVtXCIsXG4gIGN5YW5CcmlnaHQgPSBcIlxceDFiWzA7OTZtXCIsXG4gIHdoaXRlQnJpZ2h0ID0gXCJcXHgxYlswOzk3bVwiLFxuXG4gIHJlZEJvbGQgPSBcIlxceDFiWzE7MzFtXCIsXG4gIGdyZWVuQm9sZCA9IFwiXFx4MWJbMTszMm1cIixcbiAgeWVsbG93Qm9sZCA9IFwiXFx4MWJbMTszM21cIixcbiAgYmx1ZUJvbGQgPSBcIlxceDFiWzE7MzRtXCIsXG4gIHB1cnBsZUJvbGQgPSBcIlxceDFiWzE7MzVtXCIsXG4gIGN5YW5Cb2xkID0gXCJcXHgxYlsxOzM2bVwiLFxuICB3aGl0ZUJvbGQgPSBcIlxceDFiWzE7MzdtXCIsXG5cbiAgYmxhY2tVbmRlcmxpbmUgPSBcIlxceDFiWzQ7MzBtXCIsXG4gIHJlZFVuZGVybGluZSA9IFwiXFx4MWJbNDszMW1cIixcbiAgZ3JlZW5VbmRlcmxpbmUgPSBcIlxceDFiWzQ7MzJtXCIsXG4gIHllbGxvd1VuZGVybGluZSA9IFwiXFx4MWJbNDszM21cIixcbiAgYmx1ZVVuZGVybGluZSA9IFwiXFx4MWJbNDszNG1cIixcbiAgcHVycGxlVW5kZXJsaW5lID0gXCJcXHgxYls0OzM1bVwiLFxuICBjeWFuVW5kZXJsaW5lID0gXCJcXHgxYls0OzM2bVwiLFxuICB3aGl0ZVVuZGVybGluZSA9IFwiXFx4MWJbNDszN21cIixcblxuICBiZ0JsYWNrID0gXCJcXHgxYls0MG1cIixcbiAgYmdSZWQgPSBcIlxceDFiWzQxbVwiLFxuICBiZ0dyZWVuID0gXCJcXHgxYls0Mm1cIixcbiAgYmdZZWxsb3cgPSBcIlxceDFiWzQzbVwiLFxuICBiZ0JsdWUgPSBcIlxceDFiWzQ0bVwiLFxuICBiZ1B1cnBsZSA9IFwiXFx4MWJbNDVtXCIsXG4gIGJnQ3lhbiA9IFwiXFx4MWJbNDZtXCIsXG4gIGJnV2hpdGUgPSBcIlxceDFiWzQ3bVwiLFxuXG4gIGJnQmxhY2tCcmlnaHQgPSBcIlxceDFiWzEwMG1cIixcbiAgYmdSZWRCcmlnaHQgPSBcIlxceDFiWzEwMW1cIixcbiAgYmdHcmVlbkJyaWdodCA9IFwiXFx4MWJbMTAybVwiLFxuICBiZ1llbGxvd0JyaWdodCA9IFwiXFx4MWJbMTAzbVwiLFxuICBiZ0JsdWVCcmlnaHQgPSBcIlxceDFiWzEwNG1cIixcbiAgYmdQdXJwbGVCcmlnaHQgPSBcIlxceDFiWzEwNW1cIixcbiAgYmdDeWFuQnJpZ2h0ID0gXCJcXHgxYlsxMDZtXCIsXG4gIGJnV2hpdGVCcmlnaHQgPSBcIlxceDFiWzEwN21cIixcbn1cblxuZnVuY3Rpb24gd3JhcChjb2xvcjogc3RyaW5nKSB7XG4gIHJldHVybiAoZGF0YTogdW5rbm93bikgPT4gYCR7Y29sb3J9JHtkYXRhfSR7X19yZXNldH1gO1xufVxuXG5jb25zdCBjb2xvcnM6IFJlY29yZDxrZXlvZiB0eXBlb2YgQ09MT1JTX01BUCwgUmV0dXJuVHlwZTx0eXBlb2Ygd3JhcD4+ID0ge30gYXMgYW55O1xuXG5mb3IgKGNvbnN0IFtjb2xvck5hbWUsIGNvbG9yVmFsdWVdIG9mIE9iamVjdC5lbnRyaWVzKENPTE9SU19NQVApKSB7XG4gIGNvbG9yc1tjb2xvck5hbWUgYXMga2V5b2YgdHlwZW9mIENPTE9SU19NQVBdID0gd3JhcChjb2xvclZhbHVlKTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgY29sb3JzO1xuIgogIF0sCiAgIm1hcHBpbmdzIjogIjtBQUVBLElBQU0sVUFBVTtBQUVoQixJQUFLO0FBQUEsQ0FBTCxDQUFLLGdCQUFMO0FBQUEsRUFDRSx1QkFBUTtBQUFBLEVBQ1IscUJBQU07QUFBQSxFQUNOLHVCQUFRO0FBQUEsRUFDUix3QkFBUztBQUFBLEVBQ1Qsc0JBQU87QUFBQSxFQUNQLHdCQUFTO0FBQUEsRUFDVCxzQkFBTztBQUFBLEVBQ1AsdUJBQVE7QUFBQSxFQUVSLDZCQUFjO0FBQUEsRUFDZCwyQkFBWTtBQUFBLEVBQ1osNkJBQWM7QUFBQSxFQUNkLDhCQUFlO0FBQUEsRUFDZiw0QkFBYTtBQUFBLEVBQ2IsOEJBQWU7QUFBQSxFQUNmLDRCQUFhO0FBQUEsRUFDYiw2QkFBYztBQUFBLEVBRWQseUJBQVU7QUFBQSxFQUNWLDJCQUFZO0FBQUEsRUFDWiw0QkFBYTtBQUFBLEVBQ2IsMEJBQVc7QUFBQSxFQUNYLDRCQUFhO0FBQUEsRUFDYiwwQkFBVztBQUFBLEVBQ1gsMkJBQVk7QUFBQSxFQUVaLGdDQUFpQjtBQUFBLEVBQ2pCLDhCQUFlO0FBQUEsRUFDZixnQ0FBaUI7QUFBQSxFQUNqQixpQ0FBa0I7QUFBQSxFQUNsQiwrQkFBZ0I7QUFBQSxFQUNoQixpQ0FBa0I7QUFBQSxFQUNsQiwrQkFBZ0I7QUFBQSxFQUNoQixnQ0FBaUI7QUFBQSxFQUVqQix5QkFBVTtBQUFBLEVBQ1YsdUJBQVE7QUFBQSxFQUNSLHlCQUFVO0FBQUEsRUFDViwwQkFBVztBQUFBLEVBQ1gsd0JBQVM7QUFBQSxFQUNULDBCQUFXO0FBQUEsRUFDWCx3QkFBUztBQUFBLEVBQ1QseUJBQVU7QUFBQSxFQUVWLCtCQUFnQjtBQUFBLEVBQ2hCLDZCQUFjO0FBQUEsRUFDZCwrQkFBZ0I7QUFBQSxFQUNoQixnQ0FBaUI7QUFBQSxFQUNqQiw4QkFBZTtBQUFBLEVBQ2YsZ0NBQWlCO0FBQUEsRUFDakIsOEJBQWU7QUFBQSxFQUNmLCtCQUFnQjtBQUFBLEdBcERiO0FBdURMLFNBQVMsSUFBSSxDQUFDLE9BQWU7QUFBQSxFQUMzQixPQUFPLENBQUMsU0FBa0IsR0FBRyxRQUFRLE9BQU87QUFBQTtBQUc5QyxJQUFNLFNBQW1FLENBQUM7QUFFMUUsWUFBWSxXQUFXLGVBQWUsT0FBTyxRQUFRLFVBQVUsR0FBRztBQUFBLEVBQ2hFLE9BQU8sYUFBd0MsS0FBSyxVQUFVO0FBQ2hFO0FBRUEsSUFBZTsiLAogICJkZWJ1Z0lkIjogIjJFMjM5OUJERDQxMkU0QUI2NDc1NkUyMTY0NzU2RTIxIiwKICAibmFtZXMiOiBbXQp9
|
package/dist/index.cjs
ADDED
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __toESM = (mod, isNodeMode, target) => {
|
|
8
|
+
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
9
|
+
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
10
|
+
for (let key of __getOwnPropNames(mod))
|
|
11
|
+
if (!__hasOwnProp.call(to, key))
|
|
12
|
+
__defProp(to, key, {
|
|
13
|
+
get: () => mod[key],
|
|
14
|
+
enumerable: true
|
|
15
|
+
});
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __moduleCache = /* @__PURE__ */ new WeakMap;
|
|
19
|
+
var __toCommonJS = (from) => {
|
|
20
|
+
var entry = __moduleCache.get(from), desc;
|
|
21
|
+
if (entry)
|
|
22
|
+
return entry;
|
|
23
|
+
entry = __defProp({}, "__esModule", { value: true });
|
|
24
|
+
if (from && typeof from === "object" || typeof from === "function")
|
|
25
|
+
__getOwnPropNames(from).map((key) => !__hasOwnProp.call(entry, key) && __defProp(entry, key, {
|
|
26
|
+
get: () => from[key],
|
|
27
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
28
|
+
}));
|
|
29
|
+
__moduleCache.set(from, entry);
|
|
30
|
+
return entry;
|
|
31
|
+
};
|
|
32
|
+
var __export = (target, all) => {
|
|
33
|
+
for (var name in all)
|
|
34
|
+
__defProp(target, name, {
|
|
35
|
+
get: all[name],
|
|
36
|
+
enumerable: true,
|
|
37
|
+
configurable: true,
|
|
38
|
+
set: (newValue) => all[name] = () => newValue
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
// src/index.ts
|
|
43
|
+
var exports_src = {};
|
|
44
|
+
__export(exports_src, {
|
|
45
|
+
tryCatchAsync: () => tryCatchAsync,
|
|
46
|
+
tryCatch: () => tryCatch,
|
|
47
|
+
jsonParser: () => jsonParser,
|
|
48
|
+
isObject: () => isObject,
|
|
49
|
+
isNullOrUndefined: () => isNullOrUndefined,
|
|
50
|
+
isNullOrEmptyOrUndefined: () => isNullOrEmptyOrUndefined,
|
|
51
|
+
chunksToLines: () => chunksToLines
|
|
52
|
+
});
|
|
53
|
+
module.exports = __toCommonJS(exports_src);
|
|
54
|
+
|
|
55
|
+
// src/chunksToLines.ts
|
|
56
|
+
async function* chunksToLines(chunks) {
|
|
57
|
+
let previous = "";
|
|
58
|
+
for await (const chunk of chunks) {
|
|
59
|
+
previous += chunk;
|
|
60
|
+
let eolIndex;
|
|
61
|
+
while ((eolIndex = previous.indexOf(`
|
|
62
|
+
`)) >= 0) {
|
|
63
|
+
const line = previous.slice(0, eolIndex + 1);
|
|
64
|
+
yield line?.trim() ?? "";
|
|
65
|
+
previous = previous.slice(eolIndex + 1);
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
if (previous.length > 0) {
|
|
69
|
+
yield previous;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
// src/isObject.ts
|
|
73
|
+
function isObject(input) {
|
|
74
|
+
return Object.prototype.toString.apply(input) === "[object Object]";
|
|
75
|
+
}
|
|
76
|
+
// src/jsonParser.ts
|
|
77
|
+
var import_secure_json_parse = __toESM(require("secure-json-parse"));
|
|
78
|
+
function jsonParser(input) {
|
|
79
|
+
try {
|
|
80
|
+
return { value: import_secure_json_parse.default.parse(input, { protoAction: "remove" }) };
|
|
81
|
+
} catch (err) {
|
|
82
|
+
return { err };
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
// src/neverthrow/tryCatch.ts
|
|
86
|
+
function tryCatch(fn) {
|
|
87
|
+
try {
|
|
88
|
+
const data = fn();
|
|
89
|
+
return [data, undefined];
|
|
90
|
+
} catch (error) {
|
|
91
|
+
return [undefined, error];
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
async function tryCatchAsync(promise) {
|
|
95
|
+
try {
|
|
96
|
+
const data = await promise;
|
|
97
|
+
return [data, undefined];
|
|
98
|
+
} catch (error) {
|
|
99
|
+
return [undefined, error];
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
// src/isNullOrUndefined.ts
|
|
103
|
+
var isNullOrUndefined = (value) => value === null || value === undefined;
|
|
104
|
+
function isNullOrEmptyOrUndefined(value) {
|
|
105
|
+
return value === undefined || value === null || value === "" || value.toString().trim() === "";
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
//# debugId=BE1349762FEF2BD064756E2164756E21
|
|
109
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2NodW5rc1RvTGluZXMudHMiLCAiLi4vc3JjL2lzT2JqZWN0LnRzIiwgIi4uL3NyYy9qc29uUGFyc2VyLnRzIiwgIi4uL3NyYy9uZXZlcnRocm93L3RyeUNhdGNoLnRzIiwgIi4uL3NyYy9pc051bGxPclVuZGVmaW5lZC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsKICAgICIvKipcbiAqIENvbnZlcnRzIGFuIGFzeW5jIGl0ZXJhYmxlIG9mIHN0cmluZyBvciBVaW50OEFycmF5IGNodW5rcyBpbnRvIGFuIGFzeW5jIGl0ZXJhYmxlIG9mIGxpbmVzLlxuICogSGFuZGxlcyBjYXNlcyB3aGVyZSBsaW5lcyBtYXkgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIGNodW5rcy5cbiAqIFVzYWdlOlxuICogYGBgdHNcbiAqIGltcG9ydCB7IHBpcGVsaW5lIH0gZnJvbSBcIm5vZGU6c3RyZWFtL3Byb21pc2VzXCI7XG4gKiBpbXBvcnQgeyBjcmVhdGVSZWFkU3RyZWFtIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbiAqIGltcG9ydCB7IGNodW5rc1RvTGluZXMgfSBmcm9tIFwiQGx1a2Fza2ovdHMtdXRpbHNcIjtcbiAqXG4gKiBjb25zdCByZWFkU3RyZWFtID0gY3JlYXRlUmVhZFN0cmVhbShcInBhdGgvdG8vZmlsZS50eHRcIiwgeyBlbmNvZGluZzogXCJ1dGYtOFwiIH0pO1xuICogYXdhaXQgcGlwZWxpbmUocmVhZFN0cmVhbSwgY2h1bmtzVG9MaW5lcywgcHJvY2Vzcy5zdGRvdXQpLmNhdGNoKChlcnIpID0+IHtcbiAqICAgY29uc29sZS5lcnJvcihlcnIpO1xuICogICBwcm9jZXNzLmV4aXQoMSk7XG4gKiB9KTtcbiAqIGBgYFxuICogQHBhcmFtIGNodW5rc1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24qIGNodW5rc1RvTGluZXMoY2h1bmtzOiBBc3luY0l0ZXJhYmxlPHN0cmluZyB8IFVpbnQ4QXJyYXk+KSB7XG4gIGxldCBwcmV2aW91cyA9IFwiXCI7XG5cbiAgZm9yIGF3YWl0IChjb25zdCBjaHVuayBvZiBjaHVua3MpIHtcbiAgICBwcmV2aW91cyArPSBjaHVuaztcbiAgICBsZXQgZW9sSW5kZXg6IG51bWJlcjtcblxuICAgIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvbm9Bc3NpZ25JbkV4cHJlc3Npb25zOiBcImV4cGxhbmF0aW9uXCJcbiAgICB3aGlsZSAoKGVvbEluZGV4ID0gcHJldmlvdXMuaW5kZXhPZihcIlxcblwiKSkgPj0gMCkge1xuICAgICAgLy8gdGhpcyBsaW5lIGluY2x1ZGVzIHRoZSBFT0xcbiAgICAgIGNvbnN0IGxpbmUgPSBwcmV2aW91cy5zbGljZSgwLCBlb2xJbmRleCArIDEpO1xuICAgICAgeWllbGQgbGluZT8udHJpbSgpID8/IFwiXCI7XG4gICAgICBwcmV2aW91cyA9IHByZXZpb3VzLnNsaWNlKGVvbEluZGV4ICsgMSk7XG4gICAgfVxuICB9XG5cbiAgaWYgKHByZXZpb3VzLmxlbmd0aCA+IDApIHtcbiAgICB5aWVsZCBwcmV2aW91cztcbiAgfVxufVxuIiwKICAgICIvKipcbiAqIFR5cGUgZ3VhcmQgdGhhdCBjaGVja3MgaWYgdGhlIGlucHV0IGlzIGEgcGxhaW4gSmF2YVNjcmlwdCBvYmplY3QuXG4gKiBAcGFyYW0ge2FueX0gaW5wdXQgLSBUaGUgdmFsdWUgdG8gY2hlY2tcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHRoZSBpbnB1dCBpcyBhIHBsYWluIG9iamVjdCwgZmFsc2Ugb3RoZXJ3aXNlXG4gKiBAdHlwZVBhcmFtIHtSZWNvcmQ8c3RyaW5nLCBhbnk+fSBUeXBlIGd1YXJkIG5hcnJvd3MgdGhlIGlucHV0IHR5cGUgdG8gYSBzdHJpbmcta2V5ZWQgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc09iamVjdChpbnB1dDogYW55KTogaW5wdXQgaXMgUmVjb3JkPHN0cmluZywgYW55PiB7XG4gIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmFwcGx5KGlucHV0KSA9PT0gXCJbb2JqZWN0IE9iamVjdF1cIjtcbn1cbiIsCiAgICAiaW1wb3J0IHNqcyBmcm9tIFwic2VjdXJlLWpzb24tcGFyc2VcIjtcblxuLyoqXG4gKiBTYWZlbHkgcGFyc2VzIEpTT04gaW5wdXQgdXNpbmcgc2VjdXJlLWpzb24tcGFyc2Ugd2l0aCBwcm90b3R5cGUgcG9sbHV0aW9uIHByb3RlY3Rpb24uXG4gKiBAcGFyYW0ge2FueX0gaW5wdXQgLSBUaGUgaW5wdXQgdG8gYmUgcGFyc2VkIGFzIEpTT05cbiAqIEByZXR1cm5zIHt7IHZhbHVlPzogYW55LCBlcnI/OiBFcnJvciB9fSBBbiBvYmplY3QgY29udGFpbmluZyBlaXRoZXIgdGhlIHBhcnNlZCB2YWx1ZSBvciBhbiBlcnJvciBpZiBwYXJzaW5nIGZhaWxlZFxuICovXG5leHBvcnQgZnVuY3Rpb24ganNvblBhcnNlcihpbnB1dDogYW55KSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIHsgdmFsdWU6IHNqcy5wYXJzZShpbnB1dCwgeyBwcm90b0FjdGlvbjogXCJyZW1vdmVcIiB9KSB9O1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4geyBlcnIgfTtcbiAgfVxufVxuIiwKICAgICIvLyBodHRwczovL2dpc3QuZ2l0aHViLmNvbS90M2RvdGdnL2E0ODZjNGFlNjZkMzJiZjE3YzA5YzczNjA5ZGFjYzViXG4vLyBUeXBlcyBmb3IgdGhlIHJlc3VsdCBvYmplY3Qgd2l0aCBkaXNjcmltaW5hdGVkIHVuaW9uXG4vLyB0eXBlIFN1Y2Nlc3M8VD4gPSB7XG4vLyAgIGRhdGE6IFQ7XG4vLyAgIGVycm9yOiBudWxsO1xuLy8gfTtcblxuLy8gdHlwZSBGYWlsdXJlPEU+ID0ge1xuLy8gICBkYXRhOiBudWxsO1xuLy8gICBlcnJvcjogRTtcbi8vIH07XG5cbi8vIGV4cG9ydCB0eXBlIFJlc3VsdDxULCBFID0gRXJyb3I+ID0gU3VjY2VzczxUPiB8IEZhaWx1cmU8RT47XG5cbmV4cG9ydCB0eXBlIFJlc3VsdDxULCBFPiA9IFt1bmRlZmluZWQsIEVdIHwgW1QsIHVuZGVmaW5lZF07XG5leHBvcnQgdHlwZSBQcm9taXNlUmVzdWx0PFQsIEU+ID0gUHJvbWlzZTxSZXN1bHQ8VCwgRT4+O1xuXG4vKipcbiAqIFdyYXBzIGEgc3luY2hyb25vdXMgZnVuY3Rpb24gaW4gYSB0cnktY2F0Y2ggYmxvY2sgYW5kIHJldHVybnMgYSBSZXN1bHQgdHVwbGUgY29udGFpbmluZyBlaXRoZXIgdGhlIHJldHVybmVkIHZhbHVlIG9yIHRoZSBjYXVnaHQgZXJyb3JcbiAqXG4gKiBAdGVtcGxhdGUgVCAtIFRoZSB0eXBlIG9mIHRoZSBzdWNjZXNzZnVsIHJlc3VsdCB2YWx1ZVxuICogQHRlbXBsYXRlIEUgLSBUaGUgdHlwZSBvZiB0aGUgZXJyb3IgdmFsdWUsIG11c3QgZXh0ZW5kIEVycm9yXG4gKiBAcGFyYW0geygpID0+IFR9IGZuIC0gVGhlIGZ1bmN0aW9uIHRvIGJlIGV4ZWN1dGVkXG4gKiBAcmV0dXJucyB7UmVzdWx0PFQsIEU+fSBBIHR1cGxlIGNvbnRhaW5pbmcgZWl0aGVyIFtkYXRhLCB1bmRlZmluZWRdIG9yIFt1bmRlZmluZWQsIGVycm9yXVxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBbZGF0YSwgZXJyb3JdID0gdHJ5Q2F0Y2goKCkgPT4gc29tZVJpc2t5T3BlcmF0aW9uKCkpO1xuICogaWYgKGVycm9yKSB7XG4gKiAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICogfSBlbHNlIHtcbiAqICAgY29uc29sZS5sb2coZGF0YSk7XG4gKiB9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0cnlDYXRjaDxULCBFIGV4dGVuZHMgRXJyb3I+KGZuOiAoKSA9PiBUKTogUmVzdWx0PFQsIEU+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBkYXRhID0gZm4oKTtcbiAgICByZXR1cm4gW2RhdGEgYXMgVCwgdW5kZWZpbmVkXTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICByZXR1cm4gW3VuZGVmaW5lZCwgZXJyb3IgYXMgRV07XG4gIH1cbn1cblxuLyoqXG4gKiBXcmFwcyBhIFByb21pc2UgaW4gYSB0cnktY2F0Y2ggYmxvY2sgYW5kIHJldHVybnMgYSBSZXN1bHQgb2JqZWN0IGNvbnRhaW5pbmcgZWl0aGVyIHRoZSByZXNvbHZlZCBkYXRhIG9yIHRoZSBjYXVnaHQgZXJyb3JcbiAqXG4gKiBAdGVtcGxhdGUgVCAtIFRoZSB0eXBlIG9mIHRoZSBzdWNjZXNzZnVsIHJlc3VsdCB2YWx1ZVxuICogQHRlbXBsYXRlIEUgLSBUaGUgdHlwZSBvZiB0aGUgZXJyb3IgdmFsdWUsIGRlZmF1bHRzIHRvIEVycm9yXG4gKiBAcGFyYW0ge1Byb21pc2U8VD59IHByb21pc2UgLSBUaGUgcHJvbWlzZSB0byBiZSBleGVjdXRlZFxuICogQHJldHVybnMge1Byb21pc2U8UmVzdWx0PFQsIEU+Pn0gQSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYSBSZXN1bHQgb2JqZWN0IGNvbnRhaW5pbmcgZWl0aGVyIHRoZSBkYXRhIG9yIGVycm9yXG4gKlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IHtkYXRhLCBlcnJvcn0gPSBhd2FpdCB0cnlDYXRjaEFzeW5jKHNvbWVQcm9taXNlKTtcbiAqIGlmIChlcnJvcikge1xuICogICBjb25zb2xlLmVycm9yKHJlc3VsdC5lcnJvcik7XG4gKiB9IGVsc2Uge1xuICogICBjb25zb2xlLmxvZyhkYXRhKTtcbiAqIH1cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRyeUNhdGNoQXN5bmM8VCwgRSBleHRlbmRzIEVycm9yPihwcm9taXNlOiBQcm9taXNlPFQ+KTogUHJvbWlzZVJlc3VsdDxULCBFPiB7XG4gIHRyeSB7XG4gICAgY29uc3QgZGF0YSA9IGF3YWl0IHByb21pc2U7XG4gICAgcmV0dXJuIFtkYXRhIGFzIFQsIHVuZGVmaW5lZF07XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgcmV0dXJuIFt1bmRlZmluZWQsIGVycm9yIGFzIEVdO1xuICB9XG59XG4iLAogICAgImV4cG9ydCBjb25zdCBpc051bGxPclVuZGVmaW5lZCA9ICh2YWx1ZTogYW55KTogdmFsdWUgaXMgbnVsbCB8IHVuZGVmaW5lZCA9PiB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNOdWxsT3JFbXB0eU9yVW5kZWZpbmVkKHZhbHVlPzogYW55IHwgbnVsbCk6IHZhbHVlIGlzIG51bGwgfCB1bmRlZmluZWQge1xuICByZXR1cm4gdmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gXCJcIiB8fCB2YWx1ZS50b1N0cmluZygpLnRyaW0oKSA9PT0gXCJcIjtcbn1cbiIKICBdLAogICJtYXBwaW5ncyI6ICI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFpQkEsZ0JBQXVCLGFBQWEsQ0FBQyxRQUE0QztBQUFBLEVBQy9FLElBQUksV0FBVztBQUFBLEVBRWYsaUJBQWlCLFNBQVMsUUFBUTtBQUFBLElBQ2hDLFlBQVk7QUFBQSxJQUNaLElBQUk7QUFBQSxJQUdKLFFBQVEsV0FBVyxTQUFTLFFBQVE7QUFBQSxDQUFJLE1BQU0sR0FBRztBQUFBLE1BRS9DLE1BQU0sT0FBTyxTQUFTLE1BQU0sR0FBRyxXQUFXLENBQUM7QUFBQSxNQUMzQyxNQUFNLE1BQU0sS0FBSyxLQUFLO0FBQUEsTUFDdEIsV0FBVyxTQUFTLE1BQU0sV0FBVyxDQUFDO0FBQUEsSUFDeEM7QUFBQSxFQUNGO0FBQUEsRUFFQSxJQUFJLFNBQVMsU0FBUyxHQUFHO0FBQUEsSUFDdkIsTUFBTTtBQUFBLEVBQ1I7QUFBQTs7QUM3QkssU0FBUyxRQUFRLENBQUMsT0FBMEM7QUFBQSxFQUNqRSxPQUFPLE9BQU8sVUFBVSxTQUFTLE1BQU0sS0FBSyxNQUFNO0FBQUE7O0FDUHBDLElBQWhCO0FBT08sU0FBUyxVQUFVLENBQUMsT0FBWTtBQUFBLEVBQ3JDLElBQUk7QUFBQSxJQUNGLE9BQU8sRUFBRSxPQUFPLGlDQUFJLE1BQU0sT0FBTyxFQUFFLGFBQWEsU0FBUyxDQUFDLEVBQUU7QUFBQSxJQUM1RCxPQUFPLEtBQUs7QUFBQSxJQUNaLE9BQU8sRUFBRSxJQUFJO0FBQUE7QUFBQTs7QUNzQlYsU0FBUyxRQUE0QixDQUFDLElBQTJCO0FBQUEsRUFDdEUsSUFBSTtBQUFBLElBQ0YsTUFBTSxPQUFPLEdBQUc7QUFBQSxJQUNoQixPQUFPLENBQUMsTUFBVyxTQUFTO0FBQUEsSUFDNUIsT0FBTyxPQUFPO0FBQUEsSUFDZCxPQUFPLENBQUMsV0FBVyxLQUFVO0FBQUE7QUFBQTtBQW9CakMsZUFBc0IsYUFBaUMsQ0FBQyxTQUEwQztBQUFBLEVBQ2hHLElBQUk7QUFBQSxJQUNGLE1BQU0sT0FBTyxNQUFNO0FBQUEsSUFDbkIsT0FBTyxDQUFDLE1BQVcsU0FBUztBQUFBLElBQzVCLE9BQU8sT0FBTztBQUFBLElBQ2QsT0FBTyxDQUFDLFdBQVcsS0FBVTtBQUFBO0FBQUE7O0FDL0QxQixJQUFNLG9CQUFvQixDQUFDLFVBQTBDLFVBQVUsUUFBUSxVQUFVO0FBRWpHLFNBQVMsd0JBQXdCLENBQUMsT0FBK0M7QUFBQSxFQUN0RixPQUFPLFVBQVUsYUFBYSxVQUFVLFFBQVEsVUFBVSxNQUFNLE1BQU0sU0FBUyxFQUFFLEtBQUssTUFBTTtBQUFBOyIsCiAgImRlYnVnSWQiOiAiQkUxMzQ5NzYyRkVGMkJEMDY0NzU2RTIxNjQ3NTZFMjEiLAogICJuYW1lcyI6IFtdCn0=
|
package/dist/index.d.ts
ADDED
package/dist/index.mjs
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
// src/chunksToLines.ts
|
|
2
|
+
async function* chunksToLines(chunks) {
|
|
3
|
+
let previous = "";
|
|
4
|
+
for await (const chunk of chunks) {
|
|
5
|
+
previous += chunk;
|
|
6
|
+
let eolIndex;
|
|
7
|
+
while ((eolIndex = previous.indexOf(`
|
|
8
|
+
`)) >= 0) {
|
|
9
|
+
const line = previous.slice(0, eolIndex + 1);
|
|
10
|
+
yield line?.trim() ?? "";
|
|
11
|
+
previous = previous.slice(eolIndex + 1);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
if (previous.length > 0) {
|
|
15
|
+
yield previous;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
// src/isObject.ts
|
|
19
|
+
function isObject(input) {
|
|
20
|
+
return Object.prototype.toString.apply(input) === "[object Object]";
|
|
21
|
+
}
|
|
22
|
+
// src/jsonParser.ts
|
|
23
|
+
import sjs from "secure-json-parse";
|
|
24
|
+
function jsonParser(input) {
|
|
25
|
+
try {
|
|
26
|
+
return { value: sjs.parse(input, { protoAction: "remove" }) };
|
|
27
|
+
} catch (err) {
|
|
28
|
+
return { err };
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
// src/neverthrow/tryCatch.ts
|
|
32
|
+
function tryCatch(fn) {
|
|
33
|
+
try {
|
|
34
|
+
const data = fn();
|
|
35
|
+
return [data, undefined];
|
|
36
|
+
} catch (error) {
|
|
37
|
+
return [undefined, error];
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
async function tryCatchAsync(promise) {
|
|
41
|
+
try {
|
|
42
|
+
const data = await promise;
|
|
43
|
+
return [data, undefined];
|
|
44
|
+
} catch (error) {
|
|
45
|
+
return [undefined, error];
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
// src/isNullOrUndefined.ts
|
|
49
|
+
var isNullOrUndefined = (value) => value === null || value === undefined;
|
|
50
|
+
function isNullOrEmptyOrUndefined(value) {
|
|
51
|
+
return value === undefined || value === null || value === "" || value.toString().trim() === "";
|
|
52
|
+
}
|
|
53
|
+
export {
|
|
54
|
+
tryCatchAsync,
|
|
55
|
+
tryCatch,
|
|
56
|
+
jsonParser,
|
|
57
|
+
isObject,
|
|
58
|
+
isNullOrUndefined,
|
|
59
|
+
isNullOrEmptyOrUndefined,
|
|
60
|
+
chunksToLines
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
//# debugId=2F1D216C3D5C751D64756E2164756E21
|
|
64
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL2NodW5rc1RvTGluZXMudHMiLCAiLi4vc3JjL2lzT2JqZWN0LnRzIiwgIi4uL3NyYy9qc29uUGFyc2VyLnRzIiwgIi4uL3NyYy9uZXZlcnRocm93L3RyeUNhdGNoLnRzIiwgIi4uL3NyYy9pc051bGxPclVuZGVmaW5lZC50cyJdLAogICJzb3VyY2VzQ29udGVudCI6IFsKICAgICIvKipcbiAqIENvbnZlcnRzIGFuIGFzeW5jIGl0ZXJhYmxlIG9mIHN0cmluZyBvciBVaW50OEFycmF5IGNodW5rcyBpbnRvIGFuIGFzeW5jIGl0ZXJhYmxlIG9mIGxpbmVzLlxuICogSGFuZGxlcyBjYXNlcyB3aGVyZSBsaW5lcyBtYXkgYmUgc3BsaXQgYWNyb3NzIG11bHRpcGxlIGNodW5rcy5cbiAqIFVzYWdlOlxuICogYGBgdHNcbiAqIGltcG9ydCB7IHBpcGVsaW5lIH0gZnJvbSBcIm5vZGU6c3RyZWFtL3Byb21pc2VzXCI7XG4gKiBpbXBvcnQgeyBjcmVhdGVSZWFkU3RyZWFtIH0gZnJvbSBcIm5vZGU6ZnNcIjtcbiAqIGltcG9ydCB7IGNodW5rc1RvTGluZXMgfSBmcm9tIFwiQGx1a2Fza2ovdHMtdXRpbHNcIjtcbiAqXG4gKiBjb25zdCByZWFkU3RyZWFtID0gY3JlYXRlUmVhZFN0cmVhbShcInBhdGgvdG8vZmlsZS50eHRcIiwgeyBlbmNvZGluZzogXCJ1dGYtOFwiIH0pO1xuICogYXdhaXQgcGlwZWxpbmUocmVhZFN0cmVhbSwgY2h1bmtzVG9MaW5lcywgcHJvY2Vzcy5zdGRvdXQpLmNhdGNoKChlcnIpID0+IHtcbiAqICAgY29uc29sZS5lcnJvcihlcnIpO1xuICogICBwcm9jZXNzLmV4aXQoMSk7XG4gKiB9KTtcbiAqIGBgYFxuICogQHBhcmFtIGNodW5rc1xuICovXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24qIGNodW5rc1RvTGluZXMoY2h1bmtzOiBBc3luY0l0ZXJhYmxlPHN0cmluZyB8IFVpbnQ4QXJyYXk+KSB7XG4gIGxldCBwcmV2aW91cyA9IFwiXCI7XG5cbiAgZm9yIGF3YWl0IChjb25zdCBjaHVuayBvZiBjaHVua3MpIHtcbiAgICBwcmV2aW91cyArPSBjaHVuaztcbiAgICBsZXQgZW9sSW5kZXg6IG51bWJlcjtcblxuICAgIC8vIGJpb21lLWlnbm9yZSBsaW50L3N1c3BpY2lvdXMvbm9Bc3NpZ25JbkV4cHJlc3Npb25zOiBcImV4cGxhbmF0aW9uXCJcbiAgICB3aGlsZSAoKGVvbEluZGV4ID0gcHJldmlvdXMuaW5kZXhPZihcIlxcblwiKSkgPj0gMCkge1xuICAgICAgLy8gdGhpcyBsaW5lIGluY2x1ZGVzIHRoZSBFT0xcbiAgICAgIGNvbnN0IGxpbmUgPSBwcmV2aW91cy5zbGljZSgwLCBlb2xJbmRleCArIDEpO1xuICAgICAgeWllbGQgbGluZT8udHJpbSgpID8/IFwiXCI7XG4gICAgICBwcmV2aW91cyA9IHByZXZpb3VzLnNsaWNlKGVvbEluZGV4ICsgMSk7XG4gICAgfVxuICB9XG5cbiAgaWYgKHByZXZpb3VzLmxlbmd0aCA+IDApIHtcbiAgICB5aWVsZCBwcmV2aW91cztcbiAgfVxufVxuIiwKICAgICIvKipcbiAqIFR5cGUgZ3VhcmQgdGhhdCBjaGVja3MgaWYgdGhlIGlucHV0IGlzIGEgcGxhaW4gSmF2YVNjcmlwdCBvYmplY3QuXG4gKiBAcGFyYW0ge2FueX0gaW5wdXQgLSBUaGUgdmFsdWUgdG8gY2hlY2tcbiAqIEByZXR1cm5zIHtib29sZWFufSBUcnVlIGlmIHRoZSBpbnB1dCBpcyBhIHBsYWluIG9iamVjdCwgZmFsc2Ugb3RoZXJ3aXNlXG4gKiBAdHlwZVBhcmFtIHtSZWNvcmQ8c3RyaW5nLCBhbnk+fSBUeXBlIGd1YXJkIG5hcnJvd3MgdGhlIGlucHV0IHR5cGUgdG8gYSBzdHJpbmcta2V5ZWQgb2JqZWN0XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBpc09iamVjdChpbnB1dDogYW55KTogaW5wdXQgaXMgUmVjb3JkPHN0cmluZywgYW55PiB7XG4gIHJldHVybiBPYmplY3QucHJvdG90eXBlLnRvU3RyaW5nLmFwcGx5KGlucHV0KSA9PT0gXCJbb2JqZWN0IE9iamVjdF1cIjtcbn1cbiIsCiAgICAiaW1wb3J0IHNqcyBmcm9tIFwic2VjdXJlLWpzb24tcGFyc2VcIjtcblxuLyoqXG4gKiBTYWZlbHkgcGFyc2VzIEpTT04gaW5wdXQgdXNpbmcgc2VjdXJlLWpzb24tcGFyc2Ugd2l0aCBwcm90b3R5cGUgcG9sbHV0aW9uIHByb3RlY3Rpb24uXG4gKiBAcGFyYW0ge2FueX0gaW5wdXQgLSBUaGUgaW5wdXQgdG8gYmUgcGFyc2VkIGFzIEpTT05cbiAqIEByZXR1cm5zIHt7IHZhbHVlPzogYW55LCBlcnI/OiBFcnJvciB9fSBBbiBvYmplY3QgY29udGFpbmluZyBlaXRoZXIgdGhlIHBhcnNlZCB2YWx1ZSBvciBhbiBlcnJvciBpZiBwYXJzaW5nIGZhaWxlZFxuICovXG5leHBvcnQgZnVuY3Rpb24ganNvblBhcnNlcihpbnB1dDogYW55KSB7XG4gIHRyeSB7XG4gICAgcmV0dXJuIHsgdmFsdWU6IHNqcy5wYXJzZShpbnB1dCwgeyBwcm90b0FjdGlvbjogXCJyZW1vdmVcIiB9KSB9O1xuICB9IGNhdGNoIChlcnIpIHtcbiAgICByZXR1cm4geyBlcnIgfTtcbiAgfVxufVxuIiwKICAgICIvLyBodHRwczovL2dpc3QuZ2l0aHViLmNvbS90M2RvdGdnL2E0ODZjNGFlNjZkMzJiZjE3YzA5YzczNjA5ZGFjYzViXG4vLyBUeXBlcyBmb3IgdGhlIHJlc3VsdCBvYmplY3Qgd2l0aCBkaXNjcmltaW5hdGVkIHVuaW9uXG4vLyB0eXBlIFN1Y2Nlc3M8VD4gPSB7XG4vLyAgIGRhdGE6IFQ7XG4vLyAgIGVycm9yOiBudWxsO1xuLy8gfTtcblxuLy8gdHlwZSBGYWlsdXJlPEU+ID0ge1xuLy8gICBkYXRhOiBudWxsO1xuLy8gICBlcnJvcjogRTtcbi8vIH07XG5cbi8vIGV4cG9ydCB0eXBlIFJlc3VsdDxULCBFID0gRXJyb3I+ID0gU3VjY2VzczxUPiB8IEZhaWx1cmU8RT47XG5cbmV4cG9ydCB0eXBlIFJlc3VsdDxULCBFPiA9IFt1bmRlZmluZWQsIEVdIHwgW1QsIHVuZGVmaW5lZF07XG5leHBvcnQgdHlwZSBQcm9taXNlUmVzdWx0PFQsIEU+ID0gUHJvbWlzZTxSZXN1bHQ8VCwgRT4+O1xuXG4vKipcbiAqIFdyYXBzIGEgc3luY2hyb25vdXMgZnVuY3Rpb24gaW4gYSB0cnktY2F0Y2ggYmxvY2sgYW5kIHJldHVybnMgYSBSZXN1bHQgdHVwbGUgY29udGFpbmluZyBlaXRoZXIgdGhlIHJldHVybmVkIHZhbHVlIG9yIHRoZSBjYXVnaHQgZXJyb3JcbiAqXG4gKiBAdGVtcGxhdGUgVCAtIFRoZSB0eXBlIG9mIHRoZSBzdWNjZXNzZnVsIHJlc3VsdCB2YWx1ZVxuICogQHRlbXBsYXRlIEUgLSBUaGUgdHlwZSBvZiB0aGUgZXJyb3IgdmFsdWUsIG11c3QgZXh0ZW5kIEVycm9yXG4gKiBAcGFyYW0geygpID0+IFR9IGZuIC0gVGhlIGZ1bmN0aW9uIHRvIGJlIGV4ZWN1dGVkXG4gKiBAcmV0dXJucyB7UmVzdWx0PFQsIEU+fSBBIHR1cGxlIGNvbnRhaW5pbmcgZWl0aGVyIFtkYXRhLCB1bmRlZmluZWRdIG9yIFt1bmRlZmluZWQsIGVycm9yXVxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCBbZGF0YSwgZXJyb3JdID0gdHJ5Q2F0Y2goKCkgPT4gc29tZVJpc2t5T3BlcmF0aW9uKCkpO1xuICogaWYgKGVycm9yKSB7XG4gKiAgIGNvbnNvbGUuZXJyb3IoZXJyb3IpO1xuICogfSBlbHNlIHtcbiAqICAgY29uc29sZS5sb2coZGF0YSk7XG4gKiB9XG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0cnlDYXRjaDxULCBFIGV4dGVuZHMgRXJyb3I+KGZuOiAoKSA9PiBUKTogUmVzdWx0PFQsIEU+IHtcbiAgdHJ5IHtcbiAgICBjb25zdCBkYXRhID0gZm4oKTtcbiAgICByZXR1cm4gW2RhdGEgYXMgVCwgdW5kZWZpbmVkXTtcbiAgfSBjYXRjaCAoZXJyb3IpIHtcbiAgICByZXR1cm4gW3VuZGVmaW5lZCwgZXJyb3IgYXMgRV07XG4gIH1cbn1cblxuLyoqXG4gKiBXcmFwcyBhIFByb21pc2UgaW4gYSB0cnktY2F0Y2ggYmxvY2sgYW5kIHJldHVybnMgYSBSZXN1bHQgb2JqZWN0IGNvbnRhaW5pbmcgZWl0aGVyIHRoZSByZXNvbHZlZCBkYXRhIG9yIHRoZSBjYXVnaHQgZXJyb3JcbiAqXG4gKiBAdGVtcGxhdGUgVCAtIFRoZSB0eXBlIG9mIHRoZSBzdWNjZXNzZnVsIHJlc3VsdCB2YWx1ZVxuICogQHRlbXBsYXRlIEUgLSBUaGUgdHlwZSBvZiB0aGUgZXJyb3IgdmFsdWUsIGRlZmF1bHRzIHRvIEVycm9yXG4gKiBAcGFyYW0ge1Byb21pc2U8VD59IHByb21pc2UgLSBUaGUgcHJvbWlzZSB0byBiZSBleGVjdXRlZFxuICogQHJldHVybnMge1Byb21pc2U8UmVzdWx0PFQsIEU+Pn0gQSBQcm9taXNlIHRoYXQgcmVzb2x2ZXMgdG8gYSBSZXN1bHQgb2JqZWN0IGNvbnRhaW5pbmcgZWl0aGVyIHRoZSBkYXRhIG9yIGVycm9yXG4gKlxuICogQGV4YW1wbGVcbiAqIGNvbnN0IHtkYXRhLCBlcnJvcn0gPSBhd2FpdCB0cnlDYXRjaEFzeW5jKHNvbWVQcm9taXNlKTtcbiAqIGlmIChlcnJvcikge1xuICogICBjb25zb2xlLmVycm9yKHJlc3VsdC5lcnJvcik7XG4gKiB9IGVsc2Uge1xuICogICBjb25zb2xlLmxvZyhkYXRhKTtcbiAqIH1cbiAqL1xuZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIHRyeUNhdGNoQXN5bmM8VCwgRSBleHRlbmRzIEVycm9yPihwcm9taXNlOiBQcm9taXNlPFQ+KTogUHJvbWlzZVJlc3VsdDxULCBFPiB7XG4gIHRyeSB7XG4gICAgY29uc3QgZGF0YSA9IGF3YWl0IHByb21pc2U7XG4gICAgcmV0dXJuIFtkYXRhIGFzIFQsIHVuZGVmaW5lZF07XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgcmV0dXJuIFt1bmRlZmluZWQsIGVycm9yIGFzIEVdO1xuICB9XG59XG4iLAogICAgImV4cG9ydCBjb25zdCBpc051bGxPclVuZGVmaW5lZCA9ICh2YWx1ZTogYW55KTogdmFsdWUgaXMgbnVsbCB8IHVuZGVmaW5lZCA9PiB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gdW5kZWZpbmVkO1xuXG5leHBvcnQgZnVuY3Rpb24gaXNOdWxsT3JFbXB0eU9yVW5kZWZpbmVkKHZhbHVlPzogYW55IHwgbnVsbCk6IHZhbHVlIGlzIG51bGwgfCB1bmRlZmluZWQge1xuICByZXR1cm4gdmFsdWUgPT09IHVuZGVmaW5lZCB8fCB2YWx1ZSA9PT0gbnVsbCB8fCB2YWx1ZSA9PT0gXCJcIiB8fCB2YWx1ZS50b1N0cmluZygpLnRyaW0oKSA9PT0gXCJcIjtcbn1cbiIKICBdLAogICJtYXBwaW5ncyI6ICI7QUFpQkEsZ0JBQXVCLGFBQWEsQ0FBQyxRQUE0QztBQUFBLEVBQy9FLElBQUksV0FBVztBQUFBLEVBRWYsaUJBQWlCLFNBQVMsUUFBUTtBQUFBLElBQ2hDLFlBQVk7QUFBQSxJQUNaLElBQUk7QUFBQSxJQUdKLFFBQVEsV0FBVyxTQUFTLFFBQVE7QUFBQSxDQUFJLE1BQU0sR0FBRztBQUFBLE1BRS9DLE1BQU0sT0FBTyxTQUFTLE1BQU0sR0FBRyxXQUFXLENBQUM7QUFBQSxNQUMzQyxNQUFNLE1BQU0sS0FBSyxLQUFLO0FBQUEsTUFDdEIsV0FBVyxTQUFTLE1BQU0sV0FBVyxDQUFDO0FBQUEsSUFDeEM7QUFBQSxFQUNGO0FBQUEsRUFFQSxJQUFJLFNBQVMsU0FBUyxHQUFHO0FBQUEsSUFDdkIsTUFBTTtBQUFBLEVBQ1I7QUFBQTs7QUM3QkssU0FBUyxRQUFRLENBQUMsT0FBMEM7QUFBQSxFQUNqRSxPQUFPLE9BQU8sVUFBVSxTQUFTLE1BQU0sS0FBSyxNQUFNO0FBQUE7O0FDUHBEO0FBT08sU0FBUyxVQUFVLENBQUMsT0FBWTtBQUFBLEVBQ3JDLElBQUk7QUFBQSxJQUNGLE9BQU8sRUFBRSxPQUFPLElBQUksTUFBTSxPQUFPLEVBQUUsYUFBYSxTQUFTLENBQUMsRUFBRTtBQUFBLElBQzVELE9BQU8sS0FBSztBQUFBLElBQ1osT0FBTyxFQUFFLElBQUk7QUFBQTtBQUFBOztBQ3NCVixTQUFTLFFBQTRCLENBQUMsSUFBMkI7QUFBQSxFQUN0RSxJQUFJO0FBQUEsSUFDRixNQUFNLE9BQU8sR0FBRztBQUFBLElBQ2hCLE9BQU8sQ0FBQyxNQUFXLFNBQVM7QUFBQSxJQUM1QixPQUFPLE9BQU87QUFBQSxJQUNkLE9BQU8sQ0FBQyxXQUFXLEtBQVU7QUFBQTtBQUFBO0FBb0JqQyxlQUFzQixhQUFpQyxDQUFDLFNBQTBDO0FBQUEsRUFDaEcsSUFBSTtBQUFBLElBQ0YsTUFBTSxPQUFPLE1BQU07QUFBQSxJQUNuQixPQUFPLENBQUMsTUFBVyxTQUFTO0FBQUEsSUFDNUIsT0FBTyxPQUFPO0FBQUEsSUFDZCxPQUFPLENBQUMsV0FBVyxLQUFVO0FBQUE7QUFBQTs7QUMvRDFCLElBQU0sb0JBQW9CLENBQUMsVUFBMEMsVUFBVSxRQUFRLFVBQVU7QUFFakcsU0FBUyx3QkFBd0IsQ0FBQyxPQUErQztBQUFBLEVBQ3RGLE9BQU8sVUFBVSxhQUFhLFVBQVUsUUFBUSxVQUFVLE1BQU0sTUFBTSxTQUFTLEVBQUUsS0FBSyxNQUFNO0FBQUE7IiwKICAiZGVidWdJZCI6ICIyRjFEMjE2QzNENUM3NTFENjQ3NTZFMjE2NDc1NkUyMSIsCiAgIm5hbWVzIjogW10KfQ==
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type guard that checks if the input is a plain JavaScript object.
|
|
3
|
+
* @param {any} input - The value to check
|
|
4
|
+
* @returns {boolean} True if the input is a plain object, false otherwise
|
|
5
|
+
* @typeParam {Record<string, any>} Type guard narrows the input type to a string-keyed object
|
|
6
|
+
*/
|
|
7
|
+
export declare function isObject(input: any): input is Record<string, any>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function isPrimitive(value: unknown): boolean;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Safely parses JSON input using secure-json-parse with prototype pollution protection.
|
|
3
|
+
* @param {any} input - The input to be parsed as JSON
|
|
4
|
+
* @returns {{ value?: any, err?: Error }} An object containing either the parsed value or an error if parsing failed
|
|
5
|
+
*/
|
|
6
|
+
export declare function jsonParser(input: any): {
|
|
7
|
+
value: any;
|
|
8
|
+
err?: undefined;
|
|
9
|
+
} | {
|
|
10
|
+
err: unknown;
|
|
11
|
+
value?: undefined;
|
|
12
|
+
};
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
3
|
+
var __defProp = Object.defineProperty;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __toESM = (mod, isNodeMode, target) => {
|
|
8
|
+
target = mod != null ? __create(__getProtoOf(mod)) : {};
|
|
9
|
+
const to = isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target;
|
|
10
|
+
for (let key of __getOwnPropNames(mod))
|
|
11
|
+
if (!__hasOwnProp.call(to, key))
|
|
12
|
+
__defProp(to, key, {
|
|
13
|
+
get: () => mod[key],
|
|
14
|
+
enumerable: true
|
|
15
|
+
});
|
|
16
|
+
return to;
|
|
17
|
+
};
|
|
18
|
+
var __moduleCache = /* @__PURE__ */ new WeakMap;
|
|
19
|
+
var __toCommonJS = (from) => {
|
|
20
|
+
var entry = __moduleCache.get(from), desc;
|
|
21
|
+
if (entry)
|
|
22
|
+
return entry;
|
|
23
|
+
entry = __defProp({}, "__esModule", { value: true });
|
|
24
|
+
if (from && typeof from === "object" || typeof from === "function")
|
|
25
|
+
__getOwnPropNames(from).map((key) => !__hasOwnProp.call(entry, key) && __defProp(entry, key, {
|
|
26
|
+
get: () => from[key],
|
|
27
|
+
enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
|
|
28
|
+
}));
|
|
29
|
+
__moduleCache.set(from, entry);
|
|
30
|
+
return entry;
|
|
31
|
+
};
|
|
32
|
+
var __export = (target, all) => {
|
|
33
|
+
for (var name in all)
|
|
34
|
+
__defProp(target, name, {
|
|
35
|
+
get: all[name],
|
|
36
|
+
enumerable: true,
|
|
37
|
+
configurable: true,
|
|
38
|
+
set: (newValue) => all[name] = () => newValue
|
|
39
|
+
});
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
// src/neverthrow/index.ts
|
|
43
|
+
var exports_neverthrow = {};
|
|
44
|
+
__export(exports_neverthrow, {
|
|
45
|
+
tryCatchAsync: () => tryCatchAsync,
|
|
46
|
+
tryCatch: () => tryCatch
|
|
47
|
+
});
|
|
48
|
+
module.exports = __toCommonJS(exports_neverthrow);
|
|
49
|
+
|
|
50
|
+
// src/neverthrow/tryCatch.ts
|
|
51
|
+
function tryCatch(fn) {
|
|
52
|
+
try {
|
|
53
|
+
const data = fn();
|
|
54
|
+
return [data, undefined];
|
|
55
|
+
} catch (error) {
|
|
56
|
+
return [undefined, error];
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
async function tryCatchAsync(promise) {
|
|
60
|
+
try {
|
|
61
|
+
const data = await promise;
|
|
62
|
+
return [data, undefined];
|
|
63
|
+
} catch (error) {
|
|
64
|
+
return [undefined, error];
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
//# debugId=E33DF9FD309B2CCD64756E2164756E21
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL25ldmVydGhyb3cvdHJ5Q2F0Y2gudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbCiAgICAiLy8gaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vdDNkb3RnZy9hNDg2YzRhZTY2ZDMyYmYxN2MwOWM3MzYwOWRhY2M1YlxuLy8gVHlwZXMgZm9yIHRoZSByZXN1bHQgb2JqZWN0IHdpdGggZGlzY3JpbWluYXRlZCB1bmlvblxuLy8gdHlwZSBTdWNjZXNzPFQ+ID0ge1xuLy8gICBkYXRhOiBUO1xuLy8gICBlcnJvcjogbnVsbDtcbi8vIH07XG5cbi8vIHR5cGUgRmFpbHVyZTxFPiA9IHtcbi8vICAgZGF0YTogbnVsbDtcbi8vICAgZXJyb3I6IEU7XG4vLyB9O1xuXG4vLyBleHBvcnQgdHlwZSBSZXN1bHQ8VCwgRSA9IEVycm9yPiA9IFN1Y2Nlc3M8VD4gfCBGYWlsdXJlPEU+O1xuXG5leHBvcnQgdHlwZSBSZXN1bHQ8VCwgRT4gPSBbdW5kZWZpbmVkLCBFXSB8IFtULCB1bmRlZmluZWRdO1xuZXhwb3J0IHR5cGUgUHJvbWlzZVJlc3VsdDxULCBFPiA9IFByb21pc2U8UmVzdWx0PFQsIEU+PjtcblxuLyoqXG4gKiBXcmFwcyBhIHN5bmNocm9ub3VzIGZ1bmN0aW9uIGluIGEgdHJ5LWNhdGNoIGJsb2NrIGFuZCByZXR1cm5zIGEgUmVzdWx0IHR1cGxlIGNvbnRhaW5pbmcgZWl0aGVyIHRoZSByZXR1cm5lZCB2YWx1ZSBvciB0aGUgY2F1Z2h0IGVycm9yXG4gKlxuICogQHRlbXBsYXRlIFQgLSBUaGUgdHlwZSBvZiB0aGUgc3VjY2Vzc2Z1bCByZXN1bHQgdmFsdWVcbiAqIEB0ZW1wbGF0ZSBFIC0gVGhlIHR5cGUgb2YgdGhlIGVycm9yIHZhbHVlLCBtdXN0IGV4dGVuZCBFcnJvclxuICogQHBhcmFtIHsoKSA9PiBUfSBmbiAtIFRoZSBmdW5jdGlvbiB0byBiZSBleGVjdXRlZFxuICogQHJldHVybnMge1Jlc3VsdDxULCBFPn0gQSB0dXBsZSBjb250YWluaW5nIGVpdGhlciBbZGF0YSwgdW5kZWZpbmVkXSBvciBbdW5kZWZpbmVkLCBlcnJvcl1cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgW2RhdGEsIGVycm9yXSA9IHRyeUNhdGNoKCgpID0+IHNvbWVSaXNreU9wZXJhdGlvbigpKTtcbiAqIGlmIChlcnJvcikge1xuICogICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAqIH0gZWxzZSB7XG4gKiAgIGNvbnNvbGUubG9nKGRhdGEpO1xuICogfVxuICovXG5leHBvcnQgZnVuY3Rpb24gdHJ5Q2F0Y2g8VCwgRSBleHRlbmRzIEVycm9yPihmbjogKCkgPT4gVCk6IFJlc3VsdDxULCBFPiB7XG4gIHRyeSB7XG4gICAgY29uc3QgZGF0YSA9IGZuKCk7XG4gICAgcmV0dXJuIFtkYXRhIGFzIFQsIHVuZGVmaW5lZF07XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgcmV0dXJuIFt1bmRlZmluZWQsIGVycm9yIGFzIEVdO1xuICB9XG59XG5cbi8qKlxuICogV3JhcHMgYSBQcm9taXNlIGluIGEgdHJ5LWNhdGNoIGJsb2NrIGFuZCByZXR1cm5zIGEgUmVzdWx0IG9iamVjdCBjb250YWluaW5nIGVpdGhlciB0aGUgcmVzb2x2ZWQgZGF0YSBvciB0aGUgY2F1Z2h0IGVycm9yXG4gKlxuICogQHRlbXBsYXRlIFQgLSBUaGUgdHlwZSBvZiB0aGUgc3VjY2Vzc2Z1bCByZXN1bHQgdmFsdWVcbiAqIEB0ZW1wbGF0ZSBFIC0gVGhlIHR5cGUgb2YgdGhlIGVycm9yIHZhbHVlLCBkZWZhdWx0cyB0byBFcnJvclxuICogQHBhcmFtIHtQcm9taXNlPFQ+fSBwcm9taXNlIC0gVGhlIHByb21pc2UgdG8gYmUgZXhlY3V0ZWRcbiAqIEByZXR1cm5zIHtQcm9taXNlPFJlc3VsdDxULCBFPj59IEEgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGEgUmVzdWx0IG9iamVjdCBjb250YWluaW5nIGVpdGhlciB0aGUgZGF0YSBvciBlcnJvclxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCB7ZGF0YSwgZXJyb3J9ID0gYXdhaXQgdHJ5Q2F0Y2hBc3luYyhzb21lUHJvbWlzZSk7XG4gKiBpZiAoZXJyb3IpIHtcbiAqICAgY29uc29sZS5lcnJvcihyZXN1bHQuZXJyb3IpO1xuICogfSBlbHNlIHtcbiAqICAgY29uc29sZS5sb2coZGF0YSk7XG4gKiB9XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB0cnlDYXRjaEFzeW5jPFQsIEUgZXh0ZW5kcyBFcnJvcj4ocHJvbWlzZTogUHJvbWlzZTxUPik6IFByb21pc2VSZXN1bHQ8VCwgRT4ge1xuICB0cnkge1xuICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBwcm9taXNlO1xuICAgIHJldHVybiBbZGF0YSBhcyBULCB1bmRlZmluZWRdO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIHJldHVybiBbdW5kZWZpbmVkLCBlcnJvciBhcyBFXTtcbiAgfVxufVxuIgogIF0sCiAgIm1hcHBpbmdzIjogIjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFpQ08sU0FBUyxRQUE0QixDQUFDLElBQTJCO0FBQUEsRUFDdEUsSUFBSTtBQUFBLElBQ0YsTUFBTSxPQUFPLEdBQUc7QUFBQSxJQUNoQixPQUFPLENBQUMsTUFBVyxTQUFTO0FBQUEsSUFDNUIsT0FBTyxPQUFPO0FBQUEsSUFDZCxPQUFPLENBQUMsV0FBVyxLQUFVO0FBQUE7QUFBQTtBQW9CakMsZUFBc0IsYUFBaUMsQ0FBQyxTQUEwQztBQUFBLEVBQ2hHLElBQUk7QUFBQSxJQUNGLE1BQU0sT0FBTyxNQUFNO0FBQUEsSUFDbkIsT0FBTyxDQUFDLE1BQVcsU0FBUztBQUFBLElBQzVCLE9BQU8sT0FBTztBQUFBLElBQ2QsT0FBTyxDQUFDLFdBQVcsS0FBVTtBQUFBO0FBQUE7IiwKICAiZGVidWdJZCI6ICJFMzNERjlGRDMwOUIyQ0NENjQ3NTZFMjE2NDc1NkUyMSIsCiAgIm5hbWVzIjogW10KfQ==
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./tryCatch.ts";
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
// src/neverthrow/tryCatch.ts
|
|
2
|
+
function tryCatch(fn) {
|
|
3
|
+
try {
|
|
4
|
+
const data = fn();
|
|
5
|
+
return [data, undefined];
|
|
6
|
+
} catch (error) {
|
|
7
|
+
return [undefined, error];
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
async function tryCatchAsync(promise) {
|
|
11
|
+
try {
|
|
12
|
+
const data = await promise;
|
|
13
|
+
return [data, undefined];
|
|
14
|
+
} catch (error) {
|
|
15
|
+
return [undefined, error];
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
export {
|
|
19
|
+
tryCatchAsync,
|
|
20
|
+
tryCatch
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
//# debugId=5E0040E9752F227C64756E2164756E21
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,ewogICJ2ZXJzaW9uIjogMywKICAic291cmNlcyI6IFsiLi4vc3JjL25ldmVydGhyb3cvdHJ5Q2F0Y2gudHMiXSwKICAic291cmNlc0NvbnRlbnQiOiBbCiAgICAiLy8gaHR0cHM6Ly9naXN0LmdpdGh1Yi5jb20vdDNkb3RnZy9hNDg2YzRhZTY2ZDMyYmYxN2MwOWM3MzYwOWRhY2M1YlxuLy8gVHlwZXMgZm9yIHRoZSByZXN1bHQgb2JqZWN0IHdpdGggZGlzY3JpbWluYXRlZCB1bmlvblxuLy8gdHlwZSBTdWNjZXNzPFQ+ID0ge1xuLy8gICBkYXRhOiBUO1xuLy8gICBlcnJvcjogbnVsbDtcbi8vIH07XG5cbi8vIHR5cGUgRmFpbHVyZTxFPiA9IHtcbi8vICAgZGF0YTogbnVsbDtcbi8vICAgZXJyb3I6IEU7XG4vLyB9O1xuXG4vLyBleHBvcnQgdHlwZSBSZXN1bHQ8VCwgRSA9IEVycm9yPiA9IFN1Y2Nlc3M8VD4gfCBGYWlsdXJlPEU+O1xuXG5leHBvcnQgdHlwZSBSZXN1bHQ8VCwgRT4gPSBbdW5kZWZpbmVkLCBFXSB8IFtULCB1bmRlZmluZWRdO1xuZXhwb3J0IHR5cGUgUHJvbWlzZVJlc3VsdDxULCBFPiA9IFByb21pc2U8UmVzdWx0PFQsIEU+PjtcblxuLyoqXG4gKiBXcmFwcyBhIHN5bmNocm9ub3VzIGZ1bmN0aW9uIGluIGEgdHJ5LWNhdGNoIGJsb2NrIGFuZCByZXR1cm5zIGEgUmVzdWx0IHR1cGxlIGNvbnRhaW5pbmcgZWl0aGVyIHRoZSByZXR1cm5lZCB2YWx1ZSBvciB0aGUgY2F1Z2h0IGVycm9yXG4gKlxuICogQHRlbXBsYXRlIFQgLSBUaGUgdHlwZSBvZiB0aGUgc3VjY2Vzc2Z1bCByZXN1bHQgdmFsdWVcbiAqIEB0ZW1wbGF0ZSBFIC0gVGhlIHR5cGUgb2YgdGhlIGVycm9yIHZhbHVlLCBtdXN0IGV4dGVuZCBFcnJvclxuICogQHBhcmFtIHsoKSA9PiBUfSBmbiAtIFRoZSBmdW5jdGlvbiB0byBiZSBleGVjdXRlZFxuICogQHJldHVybnMge1Jlc3VsdDxULCBFPn0gQSB0dXBsZSBjb250YWluaW5nIGVpdGhlciBbZGF0YSwgdW5kZWZpbmVkXSBvciBbdW5kZWZpbmVkLCBlcnJvcl1cbiAqXG4gKiBAZXhhbXBsZVxuICogY29uc3QgW2RhdGEsIGVycm9yXSA9IHRyeUNhdGNoKCgpID0+IHNvbWVSaXNreU9wZXJhdGlvbigpKTtcbiAqIGlmIChlcnJvcikge1xuICogICBjb25zb2xlLmVycm9yKGVycm9yKTtcbiAqIH0gZWxzZSB7XG4gKiAgIGNvbnNvbGUubG9nKGRhdGEpO1xuICogfVxuICovXG5leHBvcnQgZnVuY3Rpb24gdHJ5Q2F0Y2g8VCwgRSBleHRlbmRzIEVycm9yPihmbjogKCkgPT4gVCk6IFJlc3VsdDxULCBFPiB7XG4gIHRyeSB7XG4gICAgY29uc3QgZGF0YSA9IGZuKCk7XG4gICAgcmV0dXJuIFtkYXRhIGFzIFQsIHVuZGVmaW5lZF07XG4gIH0gY2F0Y2ggKGVycm9yKSB7XG4gICAgcmV0dXJuIFt1bmRlZmluZWQsIGVycm9yIGFzIEVdO1xuICB9XG59XG5cbi8qKlxuICogV3JhcHMgYSBQcm9taXNlIGluIGEgdHJ5LWNhdGNoIGJsb2NrIGFuZCByZXR1cm5zIGEgUmVzdWx0IG9iamVjdCBjb250YWluaW5nIGVpdGhlciB0aGUgcmVzb2x2ZWQgZGF0YSBvciB0aGUgY2F1Z2h0IGVycm9yXG4gKlxuICogQHRlbXBsYXRlIFQgLSBUaGUgdHlwZSBvZiB0aGUgc3VjY2Vzc2Z1bCByZXN1bHQgdmFsdWVcbiAqIEB0ZW1wbGF0ZSBFIC0gVGhlIHR5cGUgb2YgdGhlIGVycm9yIHZhbHVlLCBkZWZhdWx0cyB0byBFcnJvclxuICogQHBhcmFtIHtQcm9taXNlPFQ+fSBwcm9taXNlIC0gVGhlIHByb21pc2UgdG8gYmUgZXhlY3V0ZWRcbiAqIEByZXR1cm5zIHtQcm9taXNlPFJlc3VsdDxULCBFPj59IEEgUHJvbWlzZSB0aGF0IHJlc29sdmVzIHRvIGEgUmVzdWx0IG9iamVjdCBjb250YWluaW5nIGVpdGhlciB0aGUgZGF0YSBvciBlcnJvclxuICpcbiAqIEBleGFtcGxlXG4gKiBjb25zdCB7ZGF0YSwgZXJyb3J9ID0gYXdhaXQgdHJ5Q2F0Y2hBc3luYyhzb21lUHJvbWlzZSk7XG4gKiBpZiAoZXJyb3IpIHtcbiAqICAgY29uc29sZS5lcnJvcihyZXN1bHQuZXJyb3IpO1xuICogfSBlbHNlIHtcbiAqICAgY29uc29sZS5sb2coZGF0YSk7XG4gKiB9XG4gKi9cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB0cnlDYXRjaEFzeW5jPFQsIEUgZXh0ZW5kcyBFcnJvcj4ocHJvbWlzZTogUHJvbWlzZTxUPik6IFByb21pc2VSZXN1bHQ8VCwgRT4ge1xuICB0cnkge1xuICAgIGNvbnN0IGRhdGEgPSBhd2FpdCBwcm9taXNlO1xuICAgIHJldHVybiBbZGF0YSBhcyBULCB1bmRlZmluZWRdO1xuICB9IGNhdGNoIChlcnJvcikge1xuICAgIHJldHVybiBbdW5kZWZpbmVkLCBlcnJvciBhcyBFXTtcbiAgfVxufVxuIgogIF0sCiAgIm1hcHBpbmdzIjogIjtBQWlDTyxTQUFTLFFBQTRCLENBQUMsSUFBMkI7QUFBQSxFQUN0RSxJQUFJO0FBQUEsSUFDRixNQUFNLE9BQU8sR0FBRztBQUFBLElBQ2hCLE9BQU8sQ0FBQyxNQUFXLFNBQVM7QUFBQSxJQUM1QixPQUFPLE9BQU87QUFBQSxJQUNkLE9BQU8sQ0FBQyxXQUFXLEtBQVU7QUFBQTtBQUFBO0FBb0JqQyxlQUFzQixhQUFpQyxDQUFDLFNBQTBDO0FBQUEsRUFDaEcsSUFBSTtBQUFBLElBQ0YsTUFBTSxPQUFPLE1BQU07QUFBQSxJQUNuQixPQUFPLENBQUMsTUFBVyxTQUFTO0FBQUEsSUFDNUIsT0FBTyxPQUFPO0FBQUEsSUFDZCxPQUFPLENBQUMsV0FBVyxLQUFVO0FBQUE7QUFBQTsiLAogICJkZWJ1Z0lkIjogIjVFMDA0MEU5NzUyRjIyN0M2NDc1NkUyMTY0NzU2RTIxIiwKICAibmFtZXMiOiBbXQp9
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
export type Result<T, E> = [undefined, E] | [T, undefined];
|
|
2
|
+
export type PromiseResult<T, E> = Promise<Result<T, E>>;
|
|
3
|
+
/**
|
|
4
|
+
* Wraps a synchronous function in a try-catch block and returns a Result tuple containing either the returned value or the caught error
|
|
5
|
+
*
|
|
6
|
+
* @template T - The type of the successful result value
|
|
7
|
+
* @template E - The type of the error value, must extend Error
|
|
8
|
+
* @param {() => T} fn - The function to be executed
|
|
9
|
+
* @returns {Result<T, E>} A tuple containing either [data, undefined] or [undefined, error]
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* const [data, error] = tryCatch(() => someRiskyOperation());
|
|
13
|
+
* if (error) {
|
|
14
|
+
* console.error(error);
|
|
15
|
+
* } else {
|
|
16
|
+
* console.log(data);
|
|
17
|
+
* }
|
|
18
|
+
*/
|
|
19
|
+
export declare function tryCatch<T, E extends Error>(fn: () => T): Result<T, E>;
|
|
20
|
+
/**
|
|
21
|
+
* Wraps a Promise in a try-catch block and returns a Result object containing either the resolved data or the caught error
|
|
22
|
+
*
|
|
23
|
+
* @template T - The type of the successful result value
|
|
24
|
+
* @template E - The type of the error value, defaults to Error
|
|
25
|
+
* @param {Promise<T>} promise - The promise to be executed
|
|
26
|
+
* @returns {Promise<Result<T, E>>} A Promise that resolves to a Result object containing either the data or error
|
|
27
|
+
*
|
|
28
|
+
* @example
|
|
29
|
+
* const {data, error} = await tryCatchAsync(somePromise);
|
|
30
|
+
* if (error) {
|
|
31
|
+
* console.error(result.error);
|
|
32
|
+
* } else {
|
|
33
|
+
* console.log(data);
|
|
34
|
+
* }
|
|
35
|
+
*/
|
|
36
|
+
export declare function tryCatchAsync<T, E extends Error>(promise: Promise<T>): PromiseResult<T, E>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export declare function randomString(length?: number): string;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reads data from standard input (stdin) asynchronously until the stream ends.
|
|
3
|
+
* @returns {Promise<string>} A promise that resolves with the complete string of data read from stdin.
|
|
4
|
+
*/
|
|
5
|
+
export declare function readStdinAsync(): Promise<string>;
|
|
6
|
+
/**
|
|
7
|
+
* Creates an async generator that yields chunks from an async iterable source.
|
|
8
|
+
* @param chunks - An async iterable source of string or Uint8Array chunks
|
|
9
|
+
* @yields {string | Uint8Array} Each chunk from the input source
|
|
10
|
+
* @returns {AsyncGenerator<string | Uint8Array, void, unknown>} An async generator that yields the input chunks
|
|
11
|
+
*/
|
|
12
|
+
export declare function readStdin(chunks: AsyncIterable<string | Uint8Array>): AsyncGenerator<string | Uint8Array, void, unknown>;
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** biome-ignore-all lint/complexity/noBannedTypes: a */
|
|
2
|
+
export type FunctionPropertyNames<T> = {
|
|
3
|
+
[K in keyof T]: T[K] extends Function ? K : never;
|
|
4
|
+
}[keyof T];
|
|
5
|
+
export type NonFunctionPropertyNames<T> = {
|
|
6
|
+
[K in keyof T]: T[K] extends Function ? never : K;
|
|
7
|
+
}[keyof T];
|
|
8
|
+
export type NonFunctionProperties<T> = Pick<T, NonFunctionPropertyNames<T>>;
|
|
9
|
+
export type ClassConstructor<T> = {
|
|
10
|
+
new (): T;
|
|
11
|
+
};
|
|
12
|
+
export type Self<T> = ClassConstructor<T>;
|
|
13
|
+
export type AnyObject = {
|
|
14
|
+
[key: string]: any;
|
|
15
|
+
};
|
|
16
|
+
export type AnyType = string | number | boolean | AnyObject;
|
package/package.json
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@lukaskj/ts-utils",
|
|
3
|
+
"version": "1.0.1",
|
|
4
|
+
"module": "src/index.ts",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"scripts": {
|
|
7
|
+
"prepare": "husky",
|
|
8
|
+
"init:husky": "bunx husky init",
|
|
9
|
+
"build": "bun run scripts/build.ts",
|
|
10
|
+
"declaration": "bunx tsc -p tsconfig.build.json --outDir dist --declaration --emitDeclarationOnly",
|
|
11
|
+
"build:all": "rm -rf dist/ && bun run declaration && bun run scripts/build.ts",
|
|
12
|
+
"dev": "bun run src/index.ts",
|
|
13
|
+
"lint": "tsc -p . --noEmit && biome lint --write",
|
|
14
|
+
"format": "biome format --write",
|
|
15
|
+
"test:cov": "bun run test --coverage",
|
|
16
|
+
"test": "bun test --env-file .env.test"
|
|
17
|
+
},
|
|
18
|
+
"dependencies": {
|
|
19
|
+
"secure-json-parse": "^4.0.0"
|
|
20
|
+
},
|
|
21
|
+
"devDependencies": {
|
|
22
|
+
"@biomejs/biome": "^2.1.4",
|
|
23
|
+
"@faker-js/faker": "^9.9.0",
|
|
24
|
+
"@types/bun": "latest",
|
|
25
|
+
"@types/node": "^24.2.1",
|
|
26
|
+
"husky": "^9.1.7",
|
|
27
|
+
"lint-staged": "^16.1.5",
|
|
28
|
+
"typescript": "^5.9.2"
|
|
29
|
+
},
|
|
30
|
+
"lint-staged": {
|
|
31
|
+
"*.{ts,tsx}": [
|
|
32
|
+
"bun format",
|
|
33
|
+
"bun lint"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"main": "dist/index.mjs",
|
|
37
|
+
"types": "dist/index.d.ts",
|
|
38
|
+
"exports": {
|
|
39
|
+
".": {
|
|
40
|
+
"import": {
|
|
41
|
+
"default": "./dist/index.mjs",
|
|
42
|
+
"types": "./dist/index.d.ts"
|
|
43
|
+
},
|
|
44
|
+
"require": {
|
|
45
|
+
"default": "./dist/index.cjs",
|
|
46
|
+
"types": "./dist/index.d.ts"
|
|
47
|
+
}
|
|
48
|
+
},
|
|
49
|
+
"./neverthrow": {
|
|
50
|
+
"import": {
|
|
51
|
+
"default": "./dist/neverthrow/index.mjs",
|
|
52
|
+
"types": "./dist/neverthrow/index.d.ts"
|
|
53
|
+
},
|
|
54
|
+
"require": {
|
|
55
|
+
"default": "./dist/neverthrow/index.cjs",
|
|
56
|
+
"types": "./dist/neverthrow/index.d.ts"
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
"./colors": {
|
|
60
|
+
"import": {
|
|
61
|
+
"default": "./dist/colors/index.mjs",
|
|
62
|
+
"types": "./dist/colors/index.d.ts"
|
|
63
|
+
},
|
|
64
|
+
"require": {
|
|
65
|
+
"default": "./dist/colors/index.cjs",
|
|
66
|
+
"types": "./dist/colors/index.d.ts"
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
},
|
|
70
|
+
"bin": {
|
|
71
|
+
"bun-base-template": "dist/index.mjs",
|
|
72
|
+
"bbt": "dist/index.mjs"
|
|
73
|
+
},
|
|
74
|
+
"engines": {
|
|
75
|
+
"node": ">=23",
|
|
76
|
+
"bun": ">= 1.2.20"
|
|
77
|
+
},
|
|
78
|
+
"repository": {
|
|
79
|
+
"type": "git",
|
|
80
|
+
"url": "git+https://github.com/lukaskj/bun-base-template.git"
|
|
81
|
+
},
|
|
82
|
+
"bugs": {
|
|
83
|
+
"url": "https://github.com/lukaskj/bun-base-template/issues"
|
|
84
|
+
},
|
|
85
|
+
"homepage": "https://github.com/lukaskj/bun-base-template#readme",
|
|
86
|
+
"files": [
|
|
87
|
+
"dist/**/*",
|
|
88
|
+
"!**/test/**",
|
|
89
|
+
"!node_modules"
|
|
90
|
+
]
|
|
91
|
+
}
|