typof 1.0.3 → 1.0.5
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 +85 -36
- package/dist/main.d.mts +4 -2
- package/dist/main.d.ts +4 -2
- package/dist/main.js +14 -4
- package/dist/main.mjs +12 -4
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,13 +1,16 @@
|
|
|
1
1
|
[String]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String
|
|
2
2
|
[Number]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number
|
|
3
3
|
[Boolean]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Boolean
|
|
4
|
-
[Date]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
|
|
5
4
|
[Object]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object
|
|
6
|
-
[
|
|
5
|
+
[Date]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date
|
|
7
6
|
[Buffer]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer
|
|
8
|
-
[Function]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Function
|
|
9
7
|
[Promise]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise
|
|
10
8
|
[Void]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Undefined
|
|
9
|
+
[Null]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/null
|
|
10
|
+
[Undefined]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Undefined
|
|
11
|
+
|
|
12
|
+
<!---->
|
|
13
|
+
|
|
11
14
|
[Types]: ./src/types/Types.type.ts
|
|
12
15
|
|
|
13
16
|
<div align="center">
|
|
@@ -54,19 +57,19 @@ Infer types.
|
|
|
54
57
|
You can install it as follows.
|
|
55
58
|
|
|
56
59
|
```shell
|
|
57
|
-
|
|
60
|
+
# NPM
|
|
58
61
|
npm add typof
|
|
59
62
|
|
|
60
|
-
|
|
63
|
+
# PNPM
|
|
61
64
|
pnpm add typof
|
|
62
65
|
|
|
63
|
-
|
|
66
|
+
# Yarn
|
|
64
67
|
yarn add typof
|
|
65
68
|
|
|
66
|
-
|
|
69
|
+
# Bun
|
|
67
70
|
bun add typof
|
|
68
71
|
|
|
69
|
-
|
|
72
|
+
# Deno
|
|
70
73
|
deno add typof
|
|
71
74
|
```
|
|
72
75
|
|
|
@@ -77,7 +80,7 @@ deno add typof
|
|
|
77
80
|
Briefly as follows.
|
|
78
81
|
|
|
79
82
|
```typescript
|
|
80
|
-
|
|
83
|
+
Typof
|
|
81
84
|
│
|
|
82
85
|
├── typof(value)
|
|
83
86
|
├── string(value)
|
|
@@ -87,6 +90,8 @@ typof
|
|
|
87
90
|
├── object(value)
|
|
88
91
|
├── array(value)
|
|
89
92
|
├── date(value)
|
|
93
|
+
├── _null(value)
|
|
94
|
+
├── _undefined(value)
|
|
90
95
|
│
|
|
91
96
|
└── type Types
|
|
92
97
|
```
|
|
@@ -105,9 +110,9 @@ import { typof } from 'typof';
|
|
|
105
110
|
|
|
106
111
|
Infers types.
|
|
107
112
|
|
|
108
|
-
> | Parameter | Default | Description
|
|
109
|
-
> | --------- | ------- |
|
|
110
|
-
> | value | |
|
|
113
|
+
> | Parameter | Type | Default | Description |
|
|
114
|
+
> | --------- | ------- | ------- | --------------------- |
|
|
115
|
+
> | value | Unknown | | Value to infer types. |
|
|
111
116
|
>
|
|
112
117
|
> returns [Types]\[]
|
|
113
118
|
>
|
|
@@ -141,7 +146,10 @@ Infers types.
|
|
|
141
146
|
> typof(undefined); // [ "undefined" ]
|
|
142
147
|
>
|
|
143
148
|
> // Tests are as follows. (Is this an integer?)
|
|
144
|
-
> if (typof(0).includes('integer')) console.log('This is an integer
|
|
149
|
+
> if (typof(0).includes('integer')) console.log('This is an integer.');
|
|
150
|
+
>
|
|
151
|
+
> // Index zero always ensures reliable type checking. As the index increases, species depth also increases.
|
|
152
|
+
> if (typof('0')[0] === 'string') console.log('This is a string.');
|
|
145
153
|
> ```
|
|
146
154
|
|
|
147
155
|
<br/>
|
|
@@ -150,9 +158,9 @@ Infers types.
|
|
|
150
158
|
|
|
151
159
|
Convert to string.
|
|
152
160
|
|
|
153
|
-
> | Parameter | Default | Description
|
|
154
|
-
> | --------- | ------- |
|
|
155
|
-
> | value | |
|
|
161
|
+
> | Parameter | Type | Default | Description |
|
|
162
|
+
> | --------- | ------- | ------- | ----------------- |
|
|
163
|
+
> | value | Unknown | | Value to convert. |
|
|
156
164
|
>
|
|
157
165
|
> returns [String]
|
|
158
166
|
>
|
|
@@ -174,9 +182,9 @@ Convert to string.
|
|
|
174
182
|
|
|
175
183
|
Convert to number.
|
|
176
184
|
|
|
177
|
-
> | Parameter | Default | Description
|
|
178
|
-
> | --------- | ------- |
|
|
179
|
-
> | value | |
|
|
185
|
+
> | Parameter | Type | Default | Description |
|
|
186
|
+
> | --------- | ------- | ------- | ----------------- |
|
|
187
|
+
> | value | Unknown | | Value to convert. |
|
|
180
188
|
>
|
|
181
189
|
> returns [Number]
|
|
182
190
|
>
|
|
@@ -192,9 +200,9 @@ Convert to number.
|
|
|
192
200
|
|
|
193
201
|
Convert to integer.
|
|
194
202
|
|
|
195
|
-
> | Parameter | Default | Description
|
|
196
|
-
> | --------- | ------- |
|
|
197
|
-
> | value | |
|
|
203
|
+
> | Parameter | Type | Default | Description |
|
|
204
|
+
> | --------- | ------- | ------- | ----------------- |
|
|
205
|
+
> | value | Unknown | | Value to convert. |
|
|
198
206
|
>
|
|
199
207
|
> returns [Number]
|
|
200
208
|
>
|
|
@@ -211,9 +219,9 @@ Convert to integer.
|
|
|
211
219
|
|
|
212
220
|
Convert to boolean.
|
|
213
221
|
|
|
214
|
-
> | Parameter | Default | Description
|
|
215
|
-
> | --------- | ------- |
|
|
216
|
-
> | value | |
|
|
222
|
+
> | Parameter | Type | Default | Description |
|
|
223
|
+
> | --------- | ------- | ------- | ----------------- |
|
|
224
|
+
> | value | Unknown | | Value to convert. |
|
|
217
225
|
>
|
|
218
226
|
> returns [Boolean] | Value
|
|
219
227
|
>
|
|
@@ -231,9 +239,9 @@ Convert to boolean.
|
|
|
231
239
|
|
|
232
240
|
Convert to object.
|
|
233
241
|
|
|
234
|
-
> | Parameter | Default | Description
|
|
235
|
-
> | --------- | ------- |
|
|
236
|
-
> | value | |
|
|
242
|
+
> | Parameter | Type | Default | Description |
|
|
243
|
+
> | --------- | ------- | ------- | ----------------- |
|
|
244
|
+
> | value | Unknown | | Value to convert. |
|
|
237
245
|
>
|
|
238
246
|
> returns [Object] | Value
|
|
239
247
|
>
|
|
@@ -250,11 +258,11 @@ Convert to object.
|
|
|
250
258
|
|
|
251
259
|
Convert to array.
|
|
252
260
|
|
|
253
|
-
> | Parameter | Default | Description
|
|
254
|
-
> | --------- | ------- |
|
|
255
|
-
> | value | |
|
|
261
|
+
> | Parameter | Type | Default | Description |
|
|
262
|
+
> | --------- | ------- | ------- | ----------------- |
|
|
263
|
+
> | value | Unknown | | Value to convert. |
|
|
256
264
|
>
|
|
257
|
-
> returns [
|
|
265
|
+
> returns Unknown\[] | Value
|
|
258
266
|
>
|
|
259
267
|
> Example:
|
|
260
268
|
>
|
|
@@ -269,16 +277,57 @@ Convert to array.
|
|
|
269
277
|
|
|
270
278
|
Convert to date.
|
|
271
279
|
|
|
272
|
-
> | Parameter | Default | Description
|
|
273
|
-
> | --------- | ------- |
|
|
274
|
-
> | value | |
|
|
280
|
+
> | Parameter | Type | Default | Description |
|
|
281
|
+
> | --------- | ------- | ------- | ----------------- |
|
|
282
|
+
> | value | Unknown | | Value to convert. |
|
|
275
283
|
>
|
|
276
|
-
> returns [
|
|
284
|
+
> returns [Date] | Value
|
|
277
285
|
>
|
|
278
286
|
> Example:
|
|
279
287
|
>
|
|
280
288
|
> ```typescript
|
|
281
289
|
> date('2025-01-01'); // 2025-01-01T00:00:00.000Z
|
|
290
|
+
> date('test'); // "test"
|
|
291
|
+
> ```
|
|
292
|
+
|
|
293
|
+
<br/>
|
|
294
|
+
|
|
295
|
+
`_null(value)`
|
|
296
|
+
|
|
297
|
+
Convert to null.
|
|
298
|
+
|
|
299
|
+
> | Parameter | Type | Default | Description |
|
|
300
|
+
> | --------- | ------- | ------- | ----------------- |
|
|
301
|
+
> | value | Unknown | | Value to convert. |
|
|
302
|
+
>
|
|
303
|
+
> returns [Null] | Value
|
|
304
|
+
>
|
|
305
|
+
> Example:
|
|
306
|
+
>
|
|
307
|
+
> ```typescript
|
|
308
|
+
> _null('null'); // null
|
|
309
|
+
> _null(null); // null
|
|
310
|
+
> _null('test'); // "test"
|
|
311
|
+
> ```
|
|
312
|
+
|
|
313
|
+
<br/>
|
|
314
|
+
|
|
315
|
+
`_undefined(value)`
|
|
316
|
+
|
|
317
|
+
Convert to undefined.
|
|
318
|
+
|
|
319
|
+
> | Parameter | Type | Default | Description |
|
|
320
|
+
> | --------- | ------- | ------- | ----------------- |
|
|
321
|
+
> | value | Unknown | | Value to convert. |
|
|
322
|
+
>
|
|
323
|
+
> returns [Undefined] | Value
|
|
324
|
+
>
|
|
325
|
+
> Example:
|
|
326
|
+
>
|
|
327
|
+
> ```typescript
|
|
328
|
+
> _undefined('undefined'); // undefined
|
|
329
|
+
> _undefined(undefined); // undefined
|
|
330
|
+
> _undefined('test'); // "test"
|
|
282
331
|
> ```
|
|
283
332
|
|
|
284
333
|
### Types
|
package/dist/main.d.mts
CHANGED
|
@@ -7,6 +7,8 @@ declare const integer: (value: unknown) => number;
|
|
|
7
7
|
declare const boolean: <Value>(value: Value) => boolean | Value;
|
|
8
8
|
declare const object: <Value>(value: Value) => object | Value;
|
|
9
9
|
declare const array: <Value>(value: Value) => unknown[] | Value;
|
|
10
|
-
declare const date: (value:
|
|
10
|
+
declare const date: <Value>(value: Value) => Date | Value;
|
|
11
|
+
declare const _null: <Value>(value: Value) => null | Value;
|
|
12
|
+
declare const _undefined: <Value>(value: Value) => undefined | Value;
|
|
11
13
|
|
|
12
|
-
export { type Types, array, boolean, date, integer, number, object, string, typof };
|
|
14
|
+
export { type Types, _null, _undefined, array, boolean, date, integer, number, object, string, typof };
|
package/dist/main.d.ts
CHANGED
|
@@ -7,6 +7,8 @@ declare const integer: (value: unknown) => number;
|
|
|
7
7
|
declare const boolean: <Value>(value: Value) => boolean | Value;
|
|
8
8
|
declare const object: <Value>(value: Value) => object | Value;
|
|
9
9
|
declare const array: <Value>(value: Value) => unknown[] | Value;
|
|
10
|
-
declare const date: (value:
|
|
10
|
+
declare const date: <Value>(value: Value) => Date | Value;
|
|
11
|
+
declare const _null: <Value>(value: Value) => null | Value;
|
|
12
|
+
declare const _undefined: <Value>(value: Value) => undefined | Value;
|
|
11
13
|
|
|
12
|
-
export { type Types, array, boolean, date, integer, number, object, string, typof };
|
|
14
|
+
export { type Types, _null, _undefined, array, boolean, date, integer, number, object, string, typof };
|
package/dist/main.js
CHANGED
|
@@ -20,6 +20,8 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
|
|
|
20
20
|
// src/main.ts
|
|
21
21
|
var main_exports = {};
|
|
22
22
|
__export(main_exports, {
|
|
23
|
+
_null: () => _null,
|
|
24
|
+
_undefined: () => _undefined,
|
|
23
25
|
array: () => array,
|
|
24
26
|
boolean: () => boolean,
|
|
25
27
|
date: () => date,
|
|
@@ -91,9 +93,7 @@ var typof = (value) => {
|
|
|
91
93
|
types.push("array");
|
|
92
94
|
} else if (value === null) {
|
|
93
95
|
types.push("null");
|
|
94
|
-
} else if (value === void 0)
|
|
95
|
-
types.push("undefined");
|
|
96
|
-
}
|
|
96
|
+
} else if (value === void 0) types.push("undefined");
|
|
97
97
|
return types;
|
|
98
98
|
};
|
|
99
99
|
var string = (value) => {
|
|
@@ -125,10 +125,20 @@ var array = (value) => {
|
|
|
125
125
|
} else return value;
|
|
126
126
|
};
|
|
127
127
|
var date = (value) => {
|
|
128
|
-
|
|
128
|
+
if (typof(value).includes("date")) {
|
|
129
|
+
return new Date(value);
|
|
130
|
+
} else return value;
|
|
131
|
+
};
|
|
132
|
+
var _null = (value) => {
|
|
133
|
+
return typof(value).includes("null") ? null : value;
|
|
134
|
+
};
|
|
135
|
+
var _undefined = (value) => {
|
|
136
|
+
return typof(value).includes("undefined") ? void 0 : value;
|
|
129
137
|
};
|
|
130
138
|
// Annotate the CommonJS export names for ESM import in node:
|
|
131
139
|
0 && (module.exports = {
|
|
140
|
+
_null,
|
|
141
|
+
_undefined,
|
|
132
142
|
array,
|
|
133
143
|
boolean,
|
|
134
144
|
date,
|
package/dist/main.mjs
CHANGED
|
@@ -58,9 +58,7 @@ var typof = (value) => {
|
|
|
58
58
|
types.push("array");
|
|
59
59
|
} else if (value === null) {
|
|
60
60
|
types.push("null");
|
|
61
|
-
} else if (value === void 0)
|
|
62
|
-
types.push("undefined");
|
|
63
|
-
}
|
|
61
|
+
} else if (value === void 0) types.push("undefined");
|
|
64
62
|
return types;
|
|
65
63
|
};
|
|
66
64
|
var string = (value) => {
|
|
@@ -92,9 +90,19 @@ var array = (value) => {
|
|
|
92
90
|
} else return value;
|
|
93
91
|
};
|
|
94
92
|
var date = (value) => {
|
|
95
|
-
|
|
93
|
+
if (typof(value).includes("date")) {
|
|
94
|
+
return new Date(value);
|
|
95
|
+
} else return value;
|
|
96
|
+
};
|
|
97
|
+
var _null = (value) => {
|
|
98
|
+
return typof(value).includes("null") ? null : value;
|
|
99
|
+
};
|
|
100
|
+
var _undefined = (value) => {
|
|
101
|
+
return typof(value).includes("undefined") ? void 0 : value;
|
|
96
102
|
};
|
|
97
103
|
export {
|
|
104
|
+
_null,
|
|
105
|
+
_undefined,
|
|
98
106
|
array,
|
|
99
107
|
boolean,
|
|
100
108
|
date,
|