File tree 3 files changed +14
-8
lines changed 3 files changed +14
-8
lines changed Original file line number Diff line number Diff line change @@ -50,14 +50,18 @@ describe('log', () => {
50
50
BigInt ( 123 ) ,
51
51
new Date ( ) ,
52
52
new URL ( 'https://example.com' ) ,
53
- / \w / g
53
+ / \w / g,
54
+ Symbol . for ( 'foo' ) ,
55
+ Symbol ( 'bar' )
54
56
] ,
55
- nested : Promise . resolve ( {
57
+ nested : of ( {
56
58
text : Promise . resolve ( 'hello world' ) ,
57
59
bigInt : BigInt ( 123 ) ,
58
60
date : new Date ( ) ,
59
61
url : new URL ( 'https://example.com' ) ,
60
62
regexp : Promise . resolve ( new RegExp ( '\\w' , 'g' ) ) ,
63
+ globalSymbol : Symbol . for ( 'foo' ) ,
64
+ symbol : Symbol ( 'bar' ) ,
61
65
image : from ( readFile ( './packages/operators/fixtures/images/test_image.jpg' ) )
62
66
} )
63
67
} ) ;
Original file line number Diff line number Diff line change @@ -23,4 +23,4 @@ const isBigInt = value => value?.constructor === BigInt;
23
23
const isRegExp = value => value ?. constructor === RegExp ;
24
24
const isSymbol = value => value ?. constructor === Symbol ;
25
25
26
- const symbolToString = value => `${ Symbol . keyFor ( value ) && 'g' } ${ value . toString ( ) } ` ;
26
+ const symbolToString = value => `${ ( Symbol . keyFor ( value ) && 'g' ) || ' '} ${ value . toString ( ) } ` ;
Original file line number Diff line number Diff line change @@ -16,17 +16,19 @@ export const syncReviver = [
16
16
export const createSyncReviver = ( transforms = [ ] ) => [ ...transforms , ...syncReviver ] ;
17
17
export const createAsyncReviver = ( transforms = [ ] ) => [ ...transforms , ...asyncReviver ] ;
18
18
19
- const isValidUrl = value => URL . canParse ( value ) && / ^ [ \w ] + : \/ \/ \S + $ / gm. test ( value ) ;
19
+ const isValidUrl = value =>
20
+ isString ( value ) && URL . canParse ( value ) && / ^ [ \w ] + : \/ \/ \S + $ / gm. test ( value ) ;
20
21
21
22
const isValidISODateString = value => {
22
- if ( ! / \d { 4 } - \d { 2 } - \d { 2 } T \d { 2 } : \d { 2 } : \d { 2 } .\d { 3 } Z / . test ( value ) ) return false ;
23
+ if ( ! isString ( value ) || ! / \d { 4 } - \d { 2 } - \d { 2 } T \d { 2 } : \d { 2 } : \d { 2 } .\d { 3 } Z / . test ( value ) ) return false ;
23
24
const d = new Date ( value ) ;
24
25
return d instanceof Date && ! isNaN ( d . getTime ( ) ) && d . toISOString ( ) === value ; // valid date
25
26
} ;
26
27
27
- const isBigInt = value => value ?. constructor === String && / ^ \d + n $ / . test ( value ) ;
28
- const isRegExp = value => value ?. constructor === String && / ^ \/ .* \/ [ g i m u y ] * $ / . test ( value ) ;
29
- const isSymbol = value => value ?. constructor === String && / ( \w ? ) S y m b o l \( ( \w + ) \) / g. test ( value ) ;
28
+ const isString = value => value ?. constructor === String ;
29
+ const isBigInt = value => isString ( value ) && / ^ \d + n $ / . test ( value ) ;
30
+ const isRegExp = value => isString ( value ) && / ^ \/ .* \/ [ g i m u y ] * $ / . test ( value ) ;
31
+ const isSymbol = value => isString ( value ) && / ( \w ? ) S y m b o l \( ( \w + ) \) / g. test ( value ) ;
30
32
31
33
const regExpFromString = value => {
32
34
const match = value . match ( / ^ \/ ( .* ) \/ ( [ g i m u y ] * ) $ / ) ;
You can’t perform that action at this time.
0 commit comments