typof 1.0.2 → 1.0.3

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 CHANGED
@@ -40,13 +40,13 @@
40
40
 
41
41
  ## About
42
42
 
43
- Extract the valid types.
43
+ Infer types.
44
44
 
45
45
  ## Features
46
46
 
47
- - Extract multiple types
48
- - Extracts integer and float types
49
- - It infers the type from a string
47
+ - Infers multiple types
48
+ - Infers integer and float types
49
+ - Infers the type from a string
50
50
  - There are simple type converters
51
51
 
52
52
  ## Installation
@@ -83,7 +83,6 @@ typof
83
83
  ├── string(value)
84
84
  ├── number(value)
85
85
  ├── integer(value)
86
- ├── float(value)
87
86
  ├── boolean(value)
88
87
  ├── object(value)
89
88
  ├── array(value)
@@ -104,7 +103,7 @@ import { typof } from 'typof';
104
103
 
105
104
  `typof(value)`
106
105
 
107
- Extract the valid types.
106
+ Infers types.
108
107
 
109
108
  > | Parameter | Default | Description |
110
109
  > | --------- | ------- | ----------------------------------- |
@@ -115,36 +114,173 @@ Extract the valid types.
115
114
  > Example:
116
115
  >
117
116
  > ```typescript
118
- > typof('test'); // [ 'string' ]
117
+ > typof('test'); // [ "string" ]
119
118
  >
120
- > typof('0'); // [ 'string', 'number', 'integer' ]
121
- > typof(0); // [ 'number', 'integer' ]
119
+ > typof('0'); // [ "string", "number", "integer" ]
120
+ > typof(0); // [ "number", "integer" ]
122
121
  >
123
- > typof('0.5'); // [ 'string', 'number', 'float' ]
124
- > typof(0.5); // [ 'number', 'float' ]
122
+ > typof('0.5'); // [ "string", "number", "float" ]
123
+ > typof(0.5); // [ "number", "float" ]
125
124
  >
126
- > typof('true'); // [ 'string', 'boolean' ]
127
- > typof(true); // [ 'boolean' ]
125
+ > typof('true'); // [ "string", "boolean" ]
126
+ > typof(true); // [ "boolean" ]
128
127
  >
129
- > typof('{"key": "value"}'); // [ 'string', 'object' ]
130
- > typof({ key: 'value' }); // [ 'object' ]
128
+ > typof('{"key": "value"}'); // [ "string", "object" ]
129
+ > typof({ key: 'value' }); // [ "object" ]
131
130
  >
132
- > typof('["test"]'); // [ 'string', 'array' ]
133
- > typof(['test']); // [ 'array' ]
131
+ > typof('["test"]'); // [ "string", "array" ]
132
+ > typof(['test']); // [ "array" ]
134
133
  >
135
- > typof('2025-01-01'); // [ 'string', 'date' ]
136
- > typof(new Date('2025-01-01')); // [ 'object', 'date' ]
134
+ > typof('2025-01-01'); // [ "string", "date" ]
135
+ > typof(new Date('2025-01-01')); // [ "object", "date" ]
137
136
  >
138
- > typof('null'); // [ 'string, 'null' ]
139
- > typof(null); // [ 'null' ]
137
+ > typof('null'); // [ "string", "null" ]
138
+ > typof(null); // [ "null" ]
140
139
  >
141
- > typof('undefined'); // [ 'string, 'undefined' ]
142
- > typof(undefined); // [ 'undefined' ]
140
+ > typof('undefined'); // [ "string", "undefined" ]
141
+ > typof(undefined); // [ "undefined" ]
143
142
  >
144
143
  > // Tests are as follows. (Is this an integer?)
145
144
  > if (typof(0).includes('integer')) console.log('This is an integer!');
146
145
  > ```
147
146
 
147
+ <br/>
148
+
149
+ `string(value)`
150
+
151
+ Convert to string.
152
+
153
+ > | Parameter | Default | Description |
154
+ > | --------- | ------- | ----------------------------- |
155
+ > | value | | Unknown<br/>Value to convert. |
156
+ >
157
+ > returns [String]
158
+ >
159
+ > Example:
160
+ >
161
+ > ```typescript
162
+ > string(0.5); // "0.5"
163
+ > string(true); // "true"
164
+ > string({ key: 'value' }); // '{"key":"value"}'
165
+ > string(['test']); // '["test"]'
166
+ > string(new Date('2025-01-01')); // "2025-01-01T00:00:00.000Z"
167
+ > string(null); // "null"
168
+ > string(undefined); // "undefined"
169
+ > ```
170
+
171
+ <br/>
172
+
173
+ `number(value)`
174
+
175
+ Convert to number.
176
+
177
+ > | Parameter | Default | Description |
178
+ > | --------- | ------- | ----------------------------- |
179
+ > | value | | Unknown<br/>Value to convert. |
180
+ >
181
+ > returns [Number]
182
+ >
183
+ > Example:
184
+ >
185
+ > ```typescript
186
+ > number('0.5'); // 0.5
187
+ > ```
188
+
189
+ <br/>
190
+
191
+ `integer(value)`
192
+
193
+ Convert to integer.
194
+
195
+ > | Parameter | Default | Description |
196
+ > | --------- | ------- | ----------------------------- |
197
+ > | value | | Unknown<br/>Value to convert. |
198
+ >
199
+ > returns [Number]
200
+ >
201
+ > Example:
202
+ >
203
+ > ```typescript
204
+ > integer('0.5'); // 0
205
+ > integer(0.5); // 0
206
+ > ```
207
+
208
+ <br/>
209
+
210
+ `boolean(value)`
211
+
212
+ Convert to boolean.
213
+
214
+ > | Parameter | Default | Description |
215
+ > | --------- | ------- | ----------------------------- |
216
+ > | value | | Unknown<br/>Value to convert. |
217
+ >
218
+ > returns [Boolean] | Value
219
+ >
220
+ > Example:
221
+ >
222
+ > ```typescript
223
+ > boolean('true'); // true
224
+ > boolean(true); // true
225
+ > boolean('test'); // "test"
226
+ > ```
227
+
228
+ <br/>
229
+
230
+ `object(value)`
231
+
232
+ Convert to object.
233
+
234
+ > | Parameter | Default | Description |
235
+ > | --------- | ------- | ----------------------------- |
236
+ > | value | | Unknown<br/>Value to convert. |
237
+ >
238
+ > returns [Object] | Value
239
+ >
240
+ > Example:
241
+ >
242
+ > ```typescript
243
+ > object('{"key":"value"}'); // { key: "value" }
244
+ > object('["test"]'); // '["test"]'
245
+ > ```
246
+
247
+ <br/>
248
+
249
+ `array(value)`
250
+
251
+ Convert to array.
252
+
253
+ > | Parameter | Default | Description |
254
+ > | --------- | ------- | ----------------------------- |
255
+ > | value | | Unknown<br/>Value to convert. |
256
+ >
257
+ > returns [Array] | Value
258
+ >
259
+ > Example:
260
+ >
261
+ > ```typescript
262
+ > array('["test"]'); // [ "test" ]
263
+ > array('{"key":"value"}'); // '{"key":"value"}'
264
+ > ```
265
+
266
+ <br/>
267
+
268
+ `date(value)`
269
+
270
+ Convert to date.
271
+
272
+ > | Parameter | Default | Description |
273
+ > | --------- | ------- | ----------------------------- |
274
+ > | value | | Unknown<br/>Value to convert. |
275
+ >
276
+ > returns [Array] | Value
277
+ >
278
+ > Example:
279
+ >
280
+ > ```typescript
281
+ > date('2025-01-01'); // 2025-01-01T00:00:00.000Z
282
+ > ```
283
+
148
284
  ### Types
149
285
 
150
286
  | Type |
package/dist/main.d.mts CHANGED
@@ -4,10 +4,9 @@ declare const typof: (value: unknown) => Types[];
4
4
  declare const string: (value: unknown) => string;
5
5
  declare const number: (value: unknown) => number;
6
6
  declare const integer: (value: unknown) => number;
7
- declare const float: (value: unknown) => number;
8
7
  declare const boolean: <Value>(value: Value) => boolean | Value;
9
8
  declare const object: <Value>(value: Value) => object | Value;
10
9
  declare const array: <Value>(value: Value) => unknown[] | Value;
11
10
  declare const date: (value: unknown) => Date;
12
11
 
13
- export { type Types, array, boolean, date, float, integer, number, object, string, typof };
12
+ export { type Types, array, boolean, date, integer, number, object, string, typof };
package/dist/main.d.ts CHANGED
@@ -4,10 +4,9 @@ declare const typof: (value: unknown) => Types[];
4
4
  declare const string: (value: unknown) => string;
5
5
  declare const number: (value: unknown) => number;
6
6
  declare const integer: (value: unknown) => number;
7
- declare const float: (value: unknown) => number;
8
7
  declare const boolean: <Value>(value: Value) => boolean | Value;
9
8
  declare const object: <Value>(value: Value) => object | Value;
10
9
  declare const array: <Value>(value: Value) => unknown[] | Value;
11
10
  declare const date: (value: unknown) => Date;
12
11
 
13
- export { type Types, array, boolean, date, float, integer, number, object, string, typof };
12
+ export { type Types, array, boolean, date, integer, number, object, string, typof };
package/dist/main.js CHANGED
@@ -23,7 +23,6 @@ __export(main_exports, {
23
23
  array: () => array,
24
24
  boolean: () => boolean,
25
25
  date: () => date,
26
- float: () => float,
27
26
  integer: () => integer,
28
27
  number: () => number,
29
28
  object: () => object,
@@ -104,9 +103,8 @@ var number = (value) => {
104
103
  return typof(value).includes("number") ? Number(value) : NaN;
105
104
  };
106
105
  var integer = (value) => {
107
- return typof(value).includes("number") ? Number.parseInt(string(value)) : NaN;
106
+ return typof(value).includes("number") ? Math.trunc(Number(value)) : NaN;
108
107
  };
109
- var float = number;
110
108
  var boolean = (value) => {
111
109
  if (typof(value).includes("boolean") && typof(value).includes("string")) {
112
110
  if (value === "true") {
@@ -134,7 +132,6 @@ var date = (value) => {
134
132
  array,
135
133
  boolean,
136
134
  date,
137
- float,
138
135
  integer,
139
136
  number,
140
137
  object,
package/dist/main.mjs CHANGED
@@ -70,9 +70,8 @@ var number = (value) => {
70
70
  return typof(value).includes("number") ? Number(value) : NaN;
71
71
  };
72
72
  var integer = (value) => {
73
- return typof(value).includes("number") ? Number.parseInt(string(value)) : NaN;
73
+ return typof(value).includes("number") ? Math.trunc(Number(value)) : NaN;
74
74
  };
75
- var float = number;
76
75
  var boolean = (value) => {
77
76
  if (typof(value).includes("boolean") && typof(value).includes("string")) {
78
77
  if (value === "true") {
@@ -99,7 +98,6 @@ export {
99
98
  array,
100
99
  boolean,
101
100
  date,
102
- float,
103
101
  integer,
104
102
  number,
105
103
  object,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "typof",
3
- "version": "1.0.2",
4
- "description": "Extract the valid types.",
3
+ "version": "1.0.3",
4
+ "description": "Infer types.",
5
5
  "license": "MIT",
6
6
  "homepage": "https://github.com/keift/typof",
7
7
  "bugs": "https://github.com/keift/typof/issues",
@@ -29,7 +29,13 @@
29
29
  "keywords": [
30
30
  "type",
31
31
  "typeof",
32
+ "string",
33
+ "number",
32
34
  "integer",
33
- "float"
35
+ "float",
36
+ "boolean",
37
+ "object",
38
+ "array",
39
+ "date"
34
40
  ]
35
41
  }