mol_data_all 1.1.1785 → 1.1.1787
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/node.d.ts +129 -2
- package/node.d.ts.map +1 -1
- package/node.deps.json +1 -1
- package/node.js +79 -1
- package/node.js.map +1 -1
- package/node.mjs +79 -1
- package/node.test.js +358 -14
- package/node.test.js.map +1 -1
- package/package.json +1 -1
- package/web.d.ts +129 -2
- package/web.d.ts.map +1 -1
- package/web.deps.json +1 -1
- package/web.js +79 -1
- package/web.js.map +1 -1
- package/web.mjs +79 -1
- package/web.test.js +101 -5
- package/web.test.js.map +1 -1
package/node.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["-","../../../../mam.ts","../../../../mol/data/setup/setup.ts","../../../../mol/fail/fail.ts","../../../../mol/func/name/name.ts","../../../../mol/error/mix/mix.ts","../../../../mol/data/error/error.ts","../../../../mol/fail/hidden/hidden.ts","../../../../mol/data/array/array.ts","../../../../mol/data/boolean/boolean.ts","../../../../mol/compare/deep/deep.ts","../../../../mol/data/const/const.ts","../../../../mol/data/string/string.ts","../../../../mol/data/pattern/pattern.ts","../../../../mol/data/email/email.ts","../../../../mol/data/enum/enum.ts","../../../../mol/data/instance/instance.ts","../../../../mol/data/number/number.ts","../../../../mol/data/integer/integer.ts","../../../../mol/data/range/range.ts","../../../../mol/data/tagged/tagged.ts","../../../../mol/data/nullable/nullable.ts","../../../../mol/data/optional/optional.ts","../../../../mol/data/record/record.ts","../../../../mol/data/dict/dict.ts","../../../../mol/data/variant/variant.ts","../../../../mol/func/is/class/class.ts","../../../../mol/data/pipe/pipe.ts"],"names":[],"mappings":"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","sourcesContent":[null,"Error.stackTraceLimit = 50;\n\ndeclare let _$_: { new(): {} } & typeof globalThis\ndeclare class $ extends _$_ {}\n\nnamespace $ {\n\texport type $ = typeof $$\n\texport declare class $$ extends $ {\n\t\tstatic $: $\n\t}\n\tnamespace $$ {\n\t\texport type $$ = $\n\t}\n}\n\nmodule.exports = $\n","namespace $ {\n\n\texport function $mol_data_setup<\n\t\tValue extends $mol_data_value ,\n\t\tConfig = never\n\t>(\n\t\tvalue : Value ,\n\t\tconfig : Config ,\n\t) {\n\t\t\n\t\treturn Object.assign( value , {\n\t\t\tconfig ,\n\t\t\tValue : null as any as ReturnType< Value >\n\t\t} )\n\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail( error : any ) : never {\n\t\tthrow error\n\t}\n\n}\n","namespace $ {\n\t\n\tconst named = new WeakSet< Function >()\n\t\n\texport function $mol_func_name( this : $ , func : Function ) : string {\n\t\t\n\t\tlet name = func.name\n\t\tif( name?.length > 1 ) return name\n\t\tif( named.has( func ) ) return name\n\n\t\tfor( let key in this ) {\n\t\t\ttry {\n\t\t\t\tif( (this as any)[ key ] !== func ) continue\n\t\t\t\tname = key\n\t\t\t\tObject.defineProperty( func , 'name' , { value : name } )\n\t\t\t\tbreak\n\t\t\t} catch {}\n\t\t}\n\n\t\tnamed.add( func )\n\t\treturn name\n\t\t\n\t}\n\n\texport function $mol_func_name_from< Target extends Function >( target : Target , source : Function ) {\n\t\tObject.defineProperty( target , 'name' , { value : source.name } )\n\t\treturn target\n\t}\n\n}\n","namespace $ {\n\n\tfunction cause_serialize(cause: unknown) {\n\t\treturn JSON.stringify( cause, null, ' ' )\n\t\t\t.replace(/\\(/,'<')\n\t\t\t.replace(/\\)/,' >')\n\t}\n\n\tfunction frame_normalize(frame: string | Object) {\n\t\treturn ( typeof frame === 'string' ? frame : cause_serialize(frame) )\n\t\t\t.trim()\n\t\t\t.replace( /at /gm, ' at ' )\n\t\t\t.replace( /^(?! +at )(.*)/gm, ' at | $1 (#)' )\n\t}\n\n\texport class $mol_error_mix< Cause extends {} = {} > extends AggregateError {\n\t\t\n\t\tname = $$.$mol_func_name( this.constructor ).replace( /^\\$/, '' ) + '_Error'\n\n\t\tconstructor(\n\t\t\tmessage: string,\n\t\t\treadonly cause = {} as Cause,\n\t\t\t... errors: readonly Error[]\n\t\t) {\n\t\t\t\n\t\t\tsuper( errors, message, { cause } )\n\t\t\t\n\t\t\tconst desc = Object.getOwnPropertyDescriptor( this, 'stack' )\n\t\t\tconst stack_get = ()=> desc?.get?.() ?? super.stack ?? desc?.value ?? this.message\n\t\t\t\n\t\t\tObject.defineProperty( this, 'stack', {\n\t\t\t\tget: ()=> stack_get() + '\\n' + [\n\t\t\t\t\t\tthis.cause ?? 'no cause',\n\t\t\t\t\t\t... this.errors.flatMap( e => [\n\t\t\t\t\t\t\tString( e.stack ),\n\t\t\t\t\t\t\t... e instanceof $mol_error_mix || ! e.cause ? [] : [ e.cause ]\n\t\t\t\t\t\t] )\n\t\t\t\t\t].map(frame_normalize).join('\\n')\n\t\t\t} )\n\n\t\t\t// в nodejs, что б не дублировалось cause в консоли\n\t\t\tObject.defineProperty(this, 'cause', {\n\t\t\t\tget: () => cause\n\t\t\t})\t\n\t\t}\n\n\t\tstatic [ Symbol.toPrimitive ]() {\n\t\t\treturn this.toString()\n\t\t}\n\t\t\n\t\tstatic toString() {\n\t\t\treturn $$.$mol_func_name( this )\n\t\t}\n\n\t\tstatic make(\n\t\t\t...params: ConstructorParameters<typeof $mol_error_mix>\n\t\t) {\n\t\t\treturn new this(...params)\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_data_error extends $mol_error_mix {}\n\n}\n","namespace $ {\n\n\texport function $mol_fail_hidden( error : any ) : never {\n\t\tthrow error /// Use 'Never Pause Here' breakpoint in DevTools or simply blackbox this script\n\t}\n\n}\n","namespace $ {\n\n\t/**\n\t * Checks for array of given runtype and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_array_demo\n\t */\n\texport function $mol_data_array< Sub extends $mol_data_value >( sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : readonly Parameters< Sub >[0][] ) => {\n\t\t\t\n\t\t\tif( !Array.isArray( val ) ) return $mol_fail( new $mol_data_error( `${ val } is not an array` ) )\n\t\t\t\n\t\t\treturn val.map( ( item , index )=> {\n\n\t\t\t\ttry {\n\t\t\t\t\treturn sub( item )\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\tif( error instanceof Promise ) return $mol_fail_hidden( error )\n\t\t\t\t\t\n\t\t\t\t\terror.message = `[${ index }] ${ error.message }`\n\t\t\t\t\treturn $mol_fail( error )\n\n\t\t\t\t}\n\n\t\t\t} ) as readonly ReturnType< Sub >[]\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\t\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for boolean and returns boolean type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_boolean_demo\n\t */\n\texport let $mol_data_boolean = ( val : boolean )=> {\n\t\t\n\t\tif( typeof val === 'boolean' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a boolean` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\texport let $mol_compare_deep_cache = new WeakMap< any , WeakMap< any , boolean > >()\n\t\n\t/**\n\t * Deeply compares two values. Returns true if equal.\n\t * Define `Symbol.toPrimitive` to customize.\n\t */\n\texport function $mol_compare_deep< Value >( left: Value, right: Value ): boolean {\n\n\t\tif( Object.is( left , right ) ) return true\n\n\t\tif( left === null ) return false\n\t\tif( right === null ) return false\n\n\t\tif( typeof left !== 'object' ) return false\n\t\tif( typeof right !== 'object' ) return false\n\n\t\tconst left_proto = Reflect.getPrototypeOf( left as any )\n\t\tconst right_proto = Reflect.getPrototypeOf( right as any )\n\t\t\n\t\tif( left_proto !== right_proto ) return false\n\n\t\tif( left instanceof Boolean ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof Number ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof String ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof Date ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof RegExp ) return left.source === (right as any).source && left.flags === (right as any).flags\n\t\tif( left instanceof Error ) return left.message === (right as any).message && $mol_compare_deep( left.stack, (right as any).stack )\n\n\t\tlet left_cache = $mol_compare_deep_cache.get( left )\n\t\tif( left_cache ) {\n\n\t\t\tconst right_cache = left_cache.get( right )\n\t\t\tif( typeof right_cache === 'boolean' ) return right_cache\n\n\t\t} else {\n\t\t\t\n\t\t\tleft_cache = new WeakMap< any , boolean >()\n\t\t\t$mol_compare_deep_cache.set( left , left_cache )\n\n\t\t}\n\n\t\tleft_cache.set(right, true);\n\n\t\tlet result!: boolean\n\n\t\ttry {\n\t\t\t\n\t\t\tif( !left_proto ) result = compare_pojo( left, right as any )\n\t\t\telse if( !Reflect.getPrototypeOf( left_proto ) ) result = compare_pojo( left, right as any )\n\t\t\telse if( Symbol.toPrimitive in left ) result = compare_primitive( left, right )\n\t\t\telse if( Array.isArray( left ) ) result = compare_array( left, right as any )\n\t\t\telse if( left instanceof Set ) result = compare_set( left, right as any )\n\t\t\telse if( left instanceof Map ) result = compare_map( left, right as any )\n\t\t\telse if( ArrayBuffer.isView( left ) ) result = compare_buffer( left, right as any )\n\t\t\telse if( Symbol.iterator in left ) result = compare_iterator( ( left as any )[ Symbol.iterator ](), ( right as any )[ Symbol.iterator ]() )\n\t\t\telse result = false\n\n\t\t} finally {\n\t\t\tleft_cache.set( right , result )\n\t\t}\n\t\t\n\t\treturn result\n\t}\n\n\tfunction compare_array< Value extends any[] >( left: Value, right: Value ): boolean {\n\t\t\n\t\tconst len = left.length\n\t\tif( len !== right.length ) return false\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( !$mol_compare_deep( left[i] , right[i] ) ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_buffer( left: ArrayBufferView, right: ArrayBufferView ): boolean {\n\t\t\n\t\tconst len = left.byteLength\n\t\tif( len !== right.byteLength ) return false\n\t\t\n\t\tif( left instanceof DataView ) return compare_buffer(\n\t\t\tnew Uint8Array( left.buffer, left.byteOffset, left.byteLength ),\n\t\t\tnew Uint8Array( right.buffer, right.byteOffset, right.byteLength ),\n\t\t)\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( (left as any)[i] !== (right as any)[i] ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_iterator< Value extends IterableIterator<any> >(\n\t\tleft: Value,\n\t\tright: Value,\n\t): boolean {\n\t\t\n\t\twhile( true ) {\n\n\t\t\tconst left_next = left.next()\n\t\t\tconst right_next = right.next()\n\n\t\t\tif( left_next.done !== right_next.done ) return false\n\t\t\tif( left_next.done ) break\n\n\t\t\tif( !$mol_compare_deep( left_next.value , right_next.value ) ) return false\n\n\t\t}\n\n\t\treturn true\n\n\t}\n\t\n\tfunction compare_set< Value extends Set<any> >( left: Value, right: Value ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_map< Key, Value >( left: Map< Key, Value > , right: Map< Key, Value > ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.keys(), right.keys() )\n\t\t\t&& compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_pojo( left: {}, right: {} ): boolean {\n\t\t\n\t\tconst left_keys = Object.getOwnPropertyNames( left )\n\t\tconst right_keys = Object.getOwnPropertyNames( right )\n\t\t\n\t\tif( !compare_array( left_keys, right_keys ) ) return false\n\n\t\tfor( let key of left_keys ) {\n\t\t\tif( !$mol_compare_deep( ( left as any )[ key ], ( right as any )[ key ] ) ) return false\n\t\t}\n\n\t\tconst left_syms = Object.getOwnPropertySymbols( left )\n\t\tconst right_syms = Object.getOwnPropertySymbols( right )\n\t\t\n\t\tif( !compare_array( left_syms, right_syms ) ) return false\n\n\t\tfor( let key of left_syms ) {\n\t\t\tif( !$mol_compare_deep( ( left as any )[ key ], ( right as any )[ key ] ) ) return false\n\t\t}\n\n\t\treturn true\n\t}\n\t\n\tfunction compare_primitive( left: {}, right: {} ): boolean {\n\t\treturn Object.is(\n\t\t\t(left as any)[ Symbol.toPrimitive ]( 'default' ),\n\t\t\t(right as any)[ Symbol.toPrimitive ]( 'default' ),\n\t\t)\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for equality to given value and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_const_demo\n\t */\n\texport function $mol_data_const< const Val >( ref : Val ) {\n\n\t\treturn $mol_data_setup( ( val : Val ) => {\n\t\t\t\n\t\t\tif( $mol_compare_deep( val , ref ) ) return ref\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ JSON.stringify( val ) } is not ${ JSON.stringify( ref ) }` ) )\n\n\t\t} , ref )\n\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for string and returns string type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_string_demo\n\t */\n\texport let $mol_data_string = ( val : string )=> {\n\t\t\n\t\tif( typeof val === 'string' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a string` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for matching to given regular expression.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_pattern_demo\n\t */\n\texport function $mol_data_pattern( pattern : RegExp ) {\n\n\t\treturn $mol_data_setup( ( val : string ) => {\n\n\t\t\tconst val2 = $mol_data_string( val )\n\t\t\tif( pattern.test( val2 ) ) return val2\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a ${ pattern }` ) )\n\n\t\t} , pattern )\n\n\t}\n\t\t\t\t\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for E-Mail and returns string type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_email_demo\n\t */\n\texport let $mol_data_email = $mol_data_pattern( /.+@.+/ )\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for value of given enum and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_enum_demo\n\t */\n\texport function $mol_data_enum<\n\t\tDict extends Record< number | string , number | string >\n\t>( name : string , dict : Dict ) {\n\n\t\ttype Value = Dict[ keyof Dict ]\n\n\t\tconst index = {} as Record< Value , keyof Dict >\n\n\t\tfor( let key in dict ) {\n\t\t\tif( Number.isNaN( Number( key ) ) ) {\n\t\t\t\tindex[ dict[ key ] ] = key\n\t\t\t}\n\t\t}\n\n\t\treturn $mol_data_setup( ( value : Value ) => {\n\n\t\t\tif ( typeof index[ value ] !== 'string' ) {\n\t\t\t\treturn $mol_fail( new $mol_data_error( `${value} is not value of ${name} enum` ) )\n\t\t\t}\n\n\t\t\treturn value\n\n\t\t} , { name , dict } )\n\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for instance of given class and returns narrowed type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_instance_demo\n\t */\n\texport function $mol_data_instance< Instance extends new ( ... args : any[] )=> any >( Instance : Instance ) {\n\n\t\treturn $mol_data_setup( ( val : InstanceType< Instance > ) => {\n\n\t\t\tif( val as object instanceof Instance ) return val\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a ${ Instance.name }` ) )\n\t\t\t\n\t\t} , Instance )\n\n\t}\n\t\t\t\t\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for number and returns number type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_number_demo\n\t */\n\texport let $mol_data_number = ( val : number )=> {\n\t\t\n\t\tif( typeof val === 'number' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a number` ) )\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for integer and returns number type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_integer_demo\n\t */\n\texport function $mol_data_integer( val : number ) {\n\n\t\tconst val2 = $mol_data_number( val )\n\t\tif( Math.floor( val2 ) === val2 ) return val2\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not an integer` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for include inside given range of values and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_range_demo\n\t */\n\texport function $mol_data_range< Value >( from: Value, to: Value ) {\n\n\t\treturn $mol_data_setup( ( val: Value ) => {\n\n\t\t\tif( val > from && val < to ) return val\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is out range (${ from },${to})` ) )\n\n\t\t} , [ from, to ] )\n\n\t}\n\t\t\t\t\t\n}\n","namespace $ {\n\t\n\ttype $mol_data_tagged_type< Value, Tag extends PropertyKey > = Value & { [ Key in Tag ]: Value }\n\t\n\ttype $mol_data_tagged_parser< Input, Output > = {\n\t\tValue: Output\n\t} & (\n\t\t( val: $mol_data_tagged_type< Input, never > )=> Output\n\t)\n\n\t/**\n\t * Checks for given runtype and returns tagged version of returned type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_tagged_demo\n\t */\n\texport function $mol_data_tagged<\n\t\tConfig extends Record< string, $mol_data_value >,\n\t>(\n\t\tconfig: Config\n\t) {\n\t\treturn config as any as {\n\t\t\t[ Type in keyof Config ]: $mol_data_tagged_parser<\n\t\t\t\tParameters< Config[ Type ] >[0],\n\t\t\t\t$mol_data_tagged_type< ReturnType< Config[ Type ] >, Type >\n\t\t\t>\n\t\t}\n\t}\n\n}\n","namespace $ {\n\n\t/**\n\t * Checks for null or passing given runtype.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_nullable_demo\n\t */\n\texport function $mol_data_nullable< Sub extends $mol_data_value >( sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : Parameters<Sub>[0] | null ) => {\n\t\t\t\n\t\t\tif( val === null ) return null\n\t\t\t\n\t\t\treturn sub( val ) as ReturnType<Sub>\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for undefined or passing given runtype.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_optional_demo\n\t */\n\texport function $mol_data_optional<\n\t\tSub extends $mol_data_value,\n\t\tFallback extends undefined | ( ()=> ReturnType< Sub > )\n\t>( \n\t\tsub: Sub,\n\t\tfallback?: Fallback\n\t) {\n\n\t\treturn $mol_data_setup( ( val : Parameters<Sub>[0] | undefined ) => {\n\t\t\t\n\t\t\tif( val === undefined ) {\n\t\t\t\ttype Res = Fallback extends undefined ? undefined : ReturnType< Extract< Fallback, ()=> any > >\n\t\t\t\treturn fallback?.() as Res\n\t\t\t}\n\t\t\t\n\t\t\treturn sub( val ) as ReturnType<Sub>\n\t\t\t\n\t\t} , { sub, fallback } )\n\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for record of given fields with by its runtypes and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_record_demo\n\t */\n\texport function $mol_data_record<\n\t\tSub extends Record< string , $mol_data_value >\n\t>( sub : Sub ) {\n\n\t\ttype Input = $mol_type_partial_undefined<{\n\t\t\t[ key in keyof Sub ] : Parameters< Sub[key] >[0]\n\t\t}>\n\n\t\ttype Output = $mol_type_partial_undefined<{\n\t\t\t[ key in keyof Sub ] : ReturnType< Sub[key] >\n\t\t}>\n\n\t\treturn $mol_data_setup( ( val : Input ) => {\n\n\t\t\tlet res = {} as Output\n\t\t\t\n\t\t\tfor( const field in sub ) {\n\n\t\t\t\ttry {\n\t\t\t\t\tres[field as any as keyof Output ] =\n\t\t\t\t\t\tsub[field]( ( val as Input )[ field as any as keyof Input ] )\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\tif( error instanceof Promise ) return $mol_fail_hidden( error )\n\t\t\t\t\t\n\t\t\t\t\terror.message = `[${ JSON.stringify( field ) }] ${ error.message }`\n\t\t\t\t\treturn $mol_fail( error )\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\treturn res as Readonly< Output >\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for dictionary which maps strings to given runtype and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_dict_demo\n\t */\n\texport function $mol_data_dict< Sub extends $mol_data_value >( sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : Readonly< Record< string , ReturnType< Sub > > > ) => {\n\t\t\t\n\t\t\tif( Object.getPrototypeOf( val ) !== Object.prototype ) {\n\t\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not an Object` ) )\n\t\t\t}\n\n\t\t\tconst res = {} as Record< string , ReturnType< Sub > >\n\t\t\t\n\t\t\tfor( const field in val as Object ) {\n\n\t\t\t\ttry {\n\t\t\t\t\tres[ field ] = sub( ( val as any )[ field ] )\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\tif( error instanceof Promise ) return $mol_fail_hidden( error )\n\t\t\t\t\t\n\t\t\t\t\terror.message = `[${ JSON.stringify( field ) }] ${ error.message }`\n\t\t\t\t\treturn $mol_fail( error )\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\treturn res as Readonly< Record< string , ReturnType< Sub > > >\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\t\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for some of given runtype or throws error.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_variant_demo\n\t */\n\texport function $mol_data_variant< Sub extends $mol_data_value[] >( ... sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : Parameters< Sub[ number ] >[0] ) => {\n\t\t\t\n\t\t\tconst errors = [] as Error[]\n\t\t\t\n\t\t\tfor( const type of sub ) {\n\n\t\t\t\tlet hidden = $.$mol_fail_hidden\n\n\t\t\t\ttry {\n\n\t\t\t\t\t$.$mol_fail = $.$mol_fail_hidden\n\n\t\t\t\t\treturn type( val ) as ReturnType< Sub[ number ] >\n\n\t\t\t\t} catch ( error ) {\n\n\t\t\t\t\t$.$mol_fail = hidden\n\n\t\t\t\t\tif( error instanceof $mol_data_error ) {\n\t\t\t\t\t\terrors.push( error )\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn $mol_fail_hidden( error )\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${val} is not any of variants` , {}, ... errors ) )\n\n\t\t} , sub )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_func_is_class<\n\t\tFunc extends Function\n\t>(\n\t\tfunc: Func\n\t): func is Func & ( new( ...args: any[] )=> any ) {\n\t\treturn Object.getOwnPropertyDescriptor( func, 'prototype' )?.writable === false\n\t}\n\n}\n","namespace $ {\n\n\ttype Guard_value<\n\t\tFuncs extends $mol_type_unary[] ,\n\t\tIndex extends keyof Funcs\n\t> = $mol_type_param<\n\t\tIndex extends keyof $mol_type_tail< Funcs >\n\t\t\t? $mol_type_tail< Funcs >[ Index ]\n\t\t\t: any ,\n\t\t0\n\t>\n\n\ttype Guard<\n\t\tFuncs extends $mol_type_unary[]\n\t> = {\n\t\t[ Index in keyof Funcs ] : (\n\t\t\tFuncs[Index] extends $mol_type_unary_func\n\t\t\t\t? (\n\t\t\t\t\tinput : $mol_type_param< Funcs[Index] , 0 >\n\t\t\t\t) => Guard_value< Funcs , Index >\n\t\t\t\t: new(\n\t\t\t\t\tinput : $mol_type_param< Funcs[Index] , 0 >\n\t\t\t\t) => Guard_value< Funcs , Index >\n\t\t)\n\t}\n\n\t/**\n\t * Combines list of unary functions/classes to one function.\n\t * \n\t * \tconst reparse = $mol_data_pipe( JSON.stringify , JSON.parse )\n\t **/\n\texport function $mol_data_pipe<\n\t\tFuncs extends $mol_type_unary[]\n\t>(\n\t\t... funcs : Funcs & Guard< Funcs >\n\t) {\n\n\t\treturn $mol_data_setup(\n\t\t\tfunction( this: any, input : $mol_type_param< Funcs[0] , 0 > ) {\n\t\t\t\tlet value : any = input\n\t\t\t\tfor( const func of funcs ) value = $mol_func_is_class( func ) ? new func( value ) : ( func as any ).call( this, value )\n\t\t\t\treturn value as $mol_type_result<\n\t\t\t\t\t$mol_type_foot< Funcs >\n\t\t\t\t>\n\t\t\t},\n\t\t\t{ funcs }\n\t\t)\n\n\t}\n\n}\n"]}
|
|
1
|
+
{"version":3,"sources":["-","../../../../mam.ts","../../../../mol/data/setup/setup.ts","../../../../mol/fail/fail.ts","../../../../mol/func/name/name.ts","../../../../mol/error/mix/mix.ts","../../../../mol/data/error/error.ts","../../../../mol/fail/hidden/hidden.ts","../../../../mol/data/array/array.ts","../../../../mol/data/boolean/boolean.ts","../../../../mol/compare/deep/deep.ts","../../../../mol/data/const/const.ts","../../../../mol/data/string/string.ts","../../../../mol/data/pattern/pattern.ts","../../../../mol/data/email/email.ts","../../../../mol/data/enum/enum.ts","../../../../mol/data/instance/instance.ts","../../../../mol/data/number/number.ts","../../../../mol/data/integer/integer.ts","../../../../mol/data/range/range.ts","../../../../mol/data/tagged/tagged.ts","../../../../mol/data/nullable/nullable.ts","../../../../mol/data/optional/optional.ts","../../../../mol/data/record/record.ts","../../../../mol/data/dict/dict.ts","../../../../mol/data/variant/variant.ts","../../../../mol/func/is/class/class.ts","../../../../mol/data/pipe/pipe.ts"],"names":[],"mappings":"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","sourcesContent":[null,"Error.stackTraceLimit = 50;\n\ndeclare let _$_: { new(): {} } & typeof globalThis\ndeclare class $ extends _$_ {}\n\nnamespace $ {\n\texport type $ = typeof $$\n\texport declare class $$ extends $ {\n\t\tstatic $: $\n\t}\n\tnamespace $$ {\n\t\texport type $$ = $\n\t}\n}\n\nmodule.exports = $\n","namespace $ {\n\n\texport function $mol_data_setup<\n\t\tValue extends $mol_data_value ,\n\t\tConfig = never\n\t>(\n\t\tvalue : Value ,\n\t\tconfig : Config ,\n\t) {\n\t\t\n\t\treturn Object.assign( value , {\n\t\t\tconfig ,\n\t\t\tValue : null as any as ReturnType< Value >\n\t\t} )\n\n\t}\n\n}\n","namespace $ {\n\n\texport function $mol_fail( error : any ) : never {\n\t\tthrow error\n\t}\n\n}\n","namespace $ {\n\t\n\tconst named = new WeakSet< Function >()\n\t\n\texport function $mol_func_name( this : $ , func : Function ) : string {\n\t\t\n\t\tlet name = func.name\n\t\tif( name?.length > 1 ) return name\n\t\tif( named.has( func ) ) return name\n\n\t\tfor( let key in this ) {\n\t\t\ttry {\n\t\t\t\tif( (this as any)[ key ] !== func ) continue\n\t\t\t\tname = key\n\t\t\t\tObject.defineProperty( func , 'name' , { value : name } )\n\t\t\t\tbreak\n\t\t\t} catch {}\n\t\t}\n\n\t\tnamed.add( func )\n\t\treturn name\n\t\t\n\t}\n\n\texport function $mol_func_name_from< Target extends Function >( target : Target , source : Function ) {\n\t\tObject.defineProperty( target , 'name' , { value : source.name } )\n\t\treturn target\n\t}\n\n}\n","namespace $ {\n\n\tfunction cause_serialize(cause: unknown) {\n\t\treturn JSON.stringify( cause, null, ' ' )\n\t\t\t.replace(/\\(/,'<')\n\t\t\t.replace(/\\)/,' >')\n\t}\n\n\tfunction frame_normalize(frame: string | Object) {\n\t\treturn ( typeof frame === 'string' ? frame : cause_serialize(frame) )\n\t\t\t.trim()\n\t\t\t.replace( /at /gm, ' at ' )\n\t\t\t.replace( /^(?! +at )(.*)/gm, ' at | $1 (#)' )\n\t}\n\n\texport class $mol_error_mix< Cause extends {} = {} > extends AggregateError {\n\t\t\n\t\tname = $$.$mol_func_name( this.constructor ).replace( /^\\$/, '' ) + '_Error'\n\n\t\tconstructor(\n\t\t\tmessage: string,\n\t\t\treadonly cause = {} as Cause,\n\t\t\t... errors: readonly Error[]\n\t\t) {\n\t\t\t\n\t\t\tsuper( errors, message, { cause } )\n\t\t\t\n\t\t\tconst desc = Object.getOwnPropertyDescriptor( this, 'stack' )\n\t\t\tconst stack_get = ()=> desc?.get?.() ?? super.stack ?? desc?.value ?? this.message\n\t\t\t\n\t\t\tObject.defineProperty( this, 'stack', {\n\t\t\t\tget: ()=> stack_get() + '\\n' + [\n\t\t\t\t\t\tthis.cause ?? 'no cause',\n\t\t\t\t\t\t... this.errors.flatMap( e => [\n\t\t\t\t\t\t\tString( e.stack ),\n\t\t\t\t\t\t\t... e instanceof $mol_error_mix || ! e.cause ? [] : [ e.cause ]\n\t\t\t\t\t\t] )\n\t\t\t\t\t].map(frame_normalize).join('\\n')\n\t\t\t} )\n\n\t\t\t// в nodejs, что б не дублировалось cause в консоли\n\t\t\tObject.defineProperty(this, 'cause', {\n\t\t\t\tget: () => cause\n\t\t\t})\t\n\t\t}\n\n\t\tstatic [ Symbol.toPrimitive ]() {\n\t\t\treturn this.toString()\n\t\t}\n\t\t\n\t\tstatic toString() {\n\t\t\treturn $$.$mol_func_name( this )\n\t\t}\n\n\t\tstatic make(\n\t\t\t...params: ConstructorParameters<typeof $mol_error_mix>\n\t\t) {\n\t\t\treturn new this(...params)\n\t\t}\n\t\t\n\t}\n\n}\n","namespace $ {\n\n\texport class $mol_data_error extends $mol_error_mix {}\n\n}\n","namespace $ {\n\n\texport function $mol_fail_hidden( error : any ) : never {\n\t\tthrow error /// Use 'Never Pause Here' breakpoint in DevTools or simply blackbox this script\n\t}\n\n}\n","namespace $ {\n\n\t/**\n\t * Checks for array of given runtype and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_array_demo\n\t */\n\texport function $mol_data_array< Sub extends $mol_data_value >( sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : readonly Parameters< Sub >[0][] ) => {\n\t\t\t\n\t\t\tif( !Array.isArray( val ) ) return $mol_fail( new $mol_data_error( `${ val } is not an array` ) )\n\t\t\t\n\t\t\treturn val.map( ( item , index )=> {\n\n\t\t\t\ttry {\n\t\t\t\t\treturn sub( item )\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\tif( error instanceof Promise ) return $mol_fail_hidden( error )\n\t\t\t\t\t\n\t\t\t\t\terror.message = `[${ index }] ${ error.message }`\n\t\t\t\t\treturn $mol_fail( error )\n\n\t\t\t\t}\n\n\t\t\t} ) as readonly ReturnType< Sub >[]\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\t\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for boolean and returns boolean type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_boolean_demo\n\t */\n\texport let $mol_data_boolean = ( val : boolean )=> {\n\t\t\n\t\tif( typeof val === 'boolean' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a boolean` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\texport let $mol_compare_deep_cache = new WeakMap< any , WeakMap< any , boolean > >()\n\t\n\t/**\n\t * Deeply compares two values. Returns true if equal.\n\t * Define `Symbol.toPrimitive` to customize.\n\t */\n\texport function $mol_compare_deep< Value >( left: Value, right: Value ): boolean {\n\n\t\tif( Object.is( left , right ) ) return true\n\n\t\tif( left === null ) return false\n\t\tif( right === null ) return false\n\n\t\tif( typeof left !== 'object' ) return false\n\t\tif( typeof right !== 'object' ) return false\n\n\t\tconst left_proto = Reflect.getPrototypeOf( left as any )\n\t\tconst right_proto = Reflect.getPrototypeOf( right as any )\n\t\t\n\t\tif( left_proto !== right_proto ) return false\n\n\t\tif( left instanceof Boolean ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof Number ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof String ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof Date ) return Object.is( left.valueOf(), ( right as any )['valueOf']() )\n\t\tif( left instanceof RegExp ) return left.source === (right as any).source && left.flags === (right as any).flags\n\t\tif( left instanceof Error ) return left.message === (right as any).message && $mol_compare_deep( left.stack, (right as any).stack )\n\n\t\tlet left_cache = $mol_compare_deep_cache.get( left )\n\t\tif( left_cache ) {\n\n\t\t\tconst right_cache = left_cache.get( right )\n\t\t\tif( typeof right_cache === 'boolean' ) return right_cache\n\n\t\t} else {\n\t\t\t\n\t\t\tleft_cache = new WeakMap< any , boolean >()\n\t\t\t$mol_compare_deep_cache.set( left , left_cache )\n\n\t\t}\n\n\t\tleft_cache.set(right, true);\n\n\t\tlet result!: boolean\n\n\t\ttry {\n\t\t\t\n\t\t\tif( !left_proto ) result = compare_pojo( left, right as any )\n\t\t\telse if( !Reflect.getPrototypeOf( left_proto ) ) result = compare_pojo( left, right as any )\n\t\t\telse if( Symbol.toPrimitive in left ) result = compare_primitive( left, right )\n\t\t\telse if( Array.isArray( left ) ) result = compare_array( left, right as any )\n\t\t\telse if( left instanceof Set ) result = compare_set( left, right as any )\n\t\t\telse if( left instanceof Map ) result = compare_map( left, right as any )\n\t\t\telse if( ArrayBuffer.isView( left ) ) result = compare_buffer( left, right as any )\n\t\t\telse if( Symbol.iterator in left ) result = compare_iterator( ( left as any )[ Symbol.iterator ](), ( right as any )[ Symbol.iterator ]() )\n\t\t\telse result = false\n\n\t\t} finally {\n\t\t\tleft_cache.set( right , result )\n\t\t}\n\t\t\n\t\treturn result\n\t}\n\n\tfunction compare_array< Value extends any[] >( left: Value, right: Value ): boolean {\n\t\t\n\t\tconst len = left.length\n\t\tif( len !== right.length ) return false\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( !$mol_compare_deep( left[i] , right[i] ) ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_buffer( left: ArrayBufferView, right: ArrayBufferView ): boolean {\n\t\t\n\t\tconst len = left.byteLength\n\t\tif( len !== right.byteLength ) return false\n\t\t\n\t\tif( left instanceof DataView ) return compare_buffer(\n\t\t\tnew Uint8Array( left.buffer, left.byteOffset, left.byteLength ),\n\t\t\tnew Uint8Array( right.buffer, right.byteOffset, right.byteLength ),\n\t\t)\n\t\t\n\t\tfor( let i = 0; i < len; ++i ) {\n\t\t\tif( (left as any)[i] !== (right as any)[i] ) return false\n\t\t}\n\t\t\n\t\treturn true\n\t}\n\t\n\tfunction compare_iterator< Value extends IterableIterator<any> >(\n\t\tleft: Value,\n\t\tright: Value,\n\t): boolean {\n\t\t\n\t\twhile( true ) {\n\n\t\t\tconst left_next = left.next()\n\t\t\tconst right_next = right.next()\n\n\t\t\tif( left_next.done !== right_next.done ) return false\n\t\t\tif( left_next.done ) break\n\n\t\t\tif( !$mol_compare_deep( left_next.value , right_next.value ) ) return false\n\n\t\t}\n\n\t\treturn true\n\n\t}\n\t\n\tfunction compare_set< Value extends Set<any> >( left: Value, right: Value ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_map< Key, Value >( left: Map< Key, Value > , right: Map< Key, Value > ): boolean {\n\t\tif( left.size !== right.size ) return false\n\t\treturn compare_iterator( left.keys(), right.keys() )\n\t\t\t&& compare_iterator( left.values(), right.values() )\n\t}\n\t\n\tfunction compare_pojo( left: {}, right: {} ): boolean {\n\t\t\n\t\tconst left_keys = Object.getOwnPropertyNames( left )\n\t\tconst right_keys = Object.getOwnPropertyNames( right )\n\t\t\n\t\tif( !compare_array( left_keys, right_keys ) ) return false\n\n\t\tfor( let key of left_keys ) {\n\t\t\tif( !$mol_compare_deep( ( left as any )[ key ], ( right as any )[ key ] ) ) return false\n\t\t}\n\n\t\tconst left_syms = Object.getOwnPropertySymbols( left )\n\t\tconst right_syms = Object.getOwnPropertySymbols( right )\n\t\t\n\t\tif( !compare_array( left_syms, right_syms ) ) return false\n\n\t\tfor( let key of left_syms ) {\n\t\t\tif( !$mol_compare_deep( ( left as any )[ key ], ( right as any )[ key ] ) ) return false\n\t\t}\n\n\t\treturn true\n\t}\n\t\n\tfunction compare_primitive( left: {}, right: {} ): boolean {\n\t\treturn Object.is(\n\t\t\t(left as any)[ Symbol.toPrimitive ]( 'default' ),\n\t\t\t(right as any)[ Symbol.toPrimitive ]( 'default' ),\n\t\t)\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for equality to given value and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_const_demo\n\t */\n\texport function $mol_data_const< const Val >( ref : Val ) {\n\n\t\treturn $mol_data_setup( ( val : Val ) => {\n\t\t\t\n\t\t\tif( $mol_compare_deep( val , ref ) ) return ref\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ JSON.stringify( val ) } is not ${ JSON.stringify( ref ) }` ) )\n\n\t\t} , ref )\n\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for string and returns string type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_string_demo\n\t */\n\texport let $mol_data_string = ( val : string )=> {\n\t\t\n\t\tif( typeof val === 'string' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a string` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for matching to given regular expression.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_pattern_demo\n\t */\n\texport function $mol_data_pattern( pattern : RegExp ) {\n\n\t\treturn $mol_data_setup( ( val : string ) => {\n\n\t\t\tconst val2 = $mol_data_string( val )\n\t\t\tif( pattern.test( val2 ) ) return val2\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a ${ pattern }` ) )\n\n\t\t} , pattern )\n\n\t}\n\t\t\t\t\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for E-Mail and returns string type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_email_demo\n\t */\n\texport let $mol_data_email = $mol_data_pattern( /.+@.+/ )\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for value of given enum and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_enum_demo\n\t */\n\texport function $mol_data_enum<\n\t\tDict extends Record< number | string , number | string >\n\t>( name : string , dict : Dict ) {\n\n\t\ttype Value = Dict[ keyof Dict ]\n\n\t\tconst index = {} as Record< Value , keyof Dict >\n\n\t\tfor( let key in dict ) {\n\t\t\tif( Number.isNaN( Number( key ) ) ) {\n\t\t\t\tindex[ dict[ key ] ] = key\n\t\t\t}\n\t\t}\n\n\t\treturn $mol_data_setup( ( value : Value ) => {\n\n\t\t\tif ( typeof index[ value ] !== 'string' ) {\n\t\t\t\treturn $mol_fail( new $mol_data_error( `${value} is not value of ${name} enum` ) )\n\t\t\t}\n\n\t\t\treturn value\n\n\t\t} , { name , dict } )\n\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for instance of given class and returns narrowed type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_instance_demo\n\t */\n\texport function $mol_data_instance< Instance extends new ( ... args : any[] )=> any >( Instance : Instance ) {\n\n\t\treturn $mol_data_setup( ( val : InstanceType< Instance > ) => {\n\n\t\t\tif( val as object instanceof Instance ) return val\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a ${ Instance.name }` ) )\n\t\t\t\n\t\t} , Instance )\n\n\t}\n\t\t\t\t\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for number and returns number type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_number_demo\n\t */\n\texport let $mol_data_number = ( val : number )=> {\n\t\t\n\t\tif( typeof val === 'number' ) return val\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not a number` ) )\n\t\t\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for integer and returns number type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_integer_demo\n\t */\n\texport function $mol_data_integer( val : number ) {\n\n\t\tconst val2 = $mol_data_number( val )\n\t\tif( Math.floor( val2 ) === val2 ) return val2\n\t\t\n\t\treturn $mol_fail( new $mol_data_error( `${ val } is not an integer` ) )\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for include inside given range of values and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_range_demo\n\t */\n\texport function $mol_data_range< Value >( from: Value, to: Value ) {\n\n\t\treturn $mol_data_setup( ( val: Value ) => {\n\n\t\t\tif( val > from && val < to ) return val\n\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is out range (${ from },${to})` ) )\n\n\t\t} , [ from, to ] )\n\n\t}\n\t\t\t\t\t\n}\n","namespace $ {\n\t\n\ttype $mol_data_tagged_type< Value, Tag extends PropertyKey > = Value & { [ Key in Tag ]: Value }\n\t\n\ttype $mol_data_tagged_parser< Input, Output > = {\n\t\tValue: Output\n\t} & (\n\t\t( val: $mol_data_tagged_type< Input, never > )=> Output\n\t)\n\n\t/**\n\t * Checks for given runtype and returns tagged version of returned type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_tagged_demo\n\t */\n\texport function $mol_data_tagged<\n\t\tConfig extends Record< string, $mol_data_value >,\n\t>(\n\t\tconfig: Config\n\t) {\n\t\treturn config as any as {\n\t\t\t[ Type in keyof Config ]: $mol_data_tagged_parser<\n\t\t\t\tParameters< Config[ Type ] >[0],\n\t\t\t\t$mol_data_tagged_type< ReturnType< Config[ Type ] >, Type >\n\t\t\t>\n\t\t}\n\t}\n\n}\n","namespace $ {\n\n\t/**\n\t * Checks for null or passing given runtype.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_nullable_demo\n\t */\n\texport function $mol_data_nullable< Sub extends $mol_data_value >( sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : Parameters<Sub>[0] | null ) => {\n\t\t\t\n\t\t\tif( val === null ) return null\n\t\t\t\n\t\t\treturn sub( val ) as ReturnType<Sub>\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for undefined or passing given runtype.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_optional_demo\n\t */\n\texport function $mol_data_optional<\n\t\tSub extends $mol_data_value,\n\t\tFallback extends undefined | ( ()=> ReturnType< Sub > )\n\t>( \n\t\tsub: Sub,\n\t\tfallback?: Fallback\n\t) {\n\n\t\treturn $mol_data_setup( ( val : Parameters<Sub>[0] | undefined ) => {\n\t\t\t\n\t\t\tif( val === undefined ) {\n\t\t\t\ttype Res = Fallback extends undefined ? undefined : ReturnType< Extract< Fallback, ()=> any > >\n\t\t\t\treturn fallback?.() as Res\n\t\t\t}\n\t\t\t\n\t\t\treturn sub( val ) as ReturnType<Sub>\n\t\t\t\n\t\t} , { sub, fallback } )\n\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for record of given fields with by its runtypes and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_record_demo\n\t */\n\texport function $mol_data_record<\n\t\tSub extends Record< string , $mol_data_value >\n\t>( sub : Sub ) {\n\n\t\ttype Input = $mol_type_partial_undefined<{\n\t\t\t[ key in keyof Sub ] : Parameters< Sub[key] >[0]\n\t\t}>\n\n\t\ttype Output = $mol_type_partial_undefined<{\n\t\t\t[ key in keyof Sub ] : ReturnType< Sub[key] >\n\t\t}>\n\n\t\treturn $mol_data_setup( ( val : Input ) => {\n\n\t\t\tlet res = {} as Output\n\t\t\t\n\t\t\tfor( const field in sub ) {\n\n\t\t\t\ttry {\n\t\t\t\t\tres[field as any as keyof Output ] =\n\t\t\t\t\t\tsub[field]( ( val as Input )[ field as any as keyof Input ] )\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\tif( error instanceof Promise ) return $mol_fail_hidden( error )\n\t\t\t\t\t\n\t\t\t\t\terror.message = `[${ JSON.stringify( field ) }] ${ error.message }`\n\t\t\t\t\treturn $mol_fail( error )\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\treturn res as Readonly< Output >\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for dictionary which maps strings to given runtype and returns expected type.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_dict_demo\n\t */\n\texport function $mol_data_dict< Sub extends $mol_data_value >( sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : Readonly< Record< string , ReturnType< Sub > > > ) => {\n\t\t\t\n\t\t\tif( Object.getPrototypeOf( val ) !== Object.prototype ) {\n\t\t\t\treturn $mol_fail( new $mol_data_error( `${ val } is not an Object` ) )\n\t\t\t}\n\n\t\t\tconst res = {} as Record< string , ReturnType< Sub > >\n\t\t\t\n\t\t\tfor( const field in val as Object ) {\n\n\t\t\t\ttry {\n\t\t\t\t\tres[ field ] = sub( ( val as any )[ field ] )\n\t\t\t\t} catch( error: any ) {\n\n\t\t\t\t\tif( error instanceof Promise ) return $mol_fail_hidden( error )\n\t\t\t\t\t\n\t\t\t\t\terror.message = `[${ JSON.stringify( field ) }] ${ error.message }`\n\t\t\t\t\treturn $mol_fail( error )\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\treturn res as Readonly< Record< string , ReturnType< Sub > > >\n\t\t\t\n\t\t} , sub )\n\n\t}\n\t\t\t\n}\n","namespace $ {\n\n\t/**\n\t * Checks for some of given runtype or throws error.\n\t * @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_variant_demo\n\t */\n\texport function $mol_data_variant< Sub extends $mol_data_value[] >( ... sub : Sub ) {\n\n\t\treturn $mol_data_setup( ( val : Parameters< Sub[ number ] >[0] ) => {\n\t\t\t\n\t\t\tconst errors = [] as Error[]\n\t\t\t\n\t\t\tfor( const type of sub ) {\n\n\t\t\t\tlet hidden = $.$mol_fail_hidden\n\n\t\t\t\ttry {\n\n\t\t\t\t\t$.$mol_fail = $.$mol_fail_hidden\n\n\t\t\t\t\treturn type( val ) as ReturnType< Sub[ number ] >\n\n\t\t\t\t} catch ( error ) {\n\n\t\t\t\t\t$.$mol_fail = hidden\n\n\t\t\t\t\tif( error instanceof $mol_data_error ) {\n\t\t\t\t\t\terrors.push( error )\n\t\t\t\t\t} else {\n\t\t\t\t\t\treturn $mol_fail_hidden( error )\n\t\t\t\t\t}\n\n\t\t\t\t}\n\n\t\t\t}\n\t\t\t\n\t\t\treturn $mol_fail( new $mol_data_error( `${val} is not any of variants` , {}, ... errors ) )\n\n\t\t} , sub )\n\n\t}\n\t\n}\n","namespace $ {\n\n\texport function $mol_func_is_class<\n\t\tFunc extends Function\n\t>(\n\t\tfunc: Func\n\t): func is Func & ( new( ...args: any[] )=> any ) {\n\t\treturn Object.getOwnPropertyDescriptor( func, 'prototype' )?.writable === false\n\t}\n\n}\n","namespace $ {\n\n\ttype Guard_value<\n\t\tFuncs extends $mol_type_unary[] ,\n\t\tIndex extends keyof Funcs\n\t> = $mol_type_param<\n\t\tIndex extends keyof $mol_type_tail< Funcs >\n\t\t\t? $mol_type_tail< Funcs >[ Index ]\n\t\t\t: any ,\n\t\t0\n\t>\n\n\ttype Guard<\n\t\tFuncs extends $mol_type_unary[]\n\t> = {\n\t\t[ Index in keyof Funcs ] : (\n\t\t\tFuncs[Index] extends $mol_type_unary_func\n\t\t\t\t? (\n\t\t\t\t\tinput : $mol_type_param< Funcs[Index] , 0 >\n\t\t\t\t) => Guard_value< Funcs , Index >\n\t\t\t\t: new(\n\t\t\t\t\tinput : $mol_type_param< Funcs[Index] , 0 >\n\t\t\t\t) => Guard_value< Funcs , Index >\n\t\t)\n\t}\n\n\t/**\n\t * Combines list of unary functions/classes to one function.\n\t * \n\t * \tconst reparse = $mol_data_pipe( JSON.stringify , JSON.parse )\n\t **/\n\texport function $mol_data_pipe<\n\t\tFuncs extends $mol_type_unary[]\n\t>(\n\t\t... funcs : Funcs & Guard< Funcs >\n\t) {\n\n\t\treturn $mol_data_setup(\n\t\t\tfunction( this: any, input : $mol_type_param< Funcs[0] , 0 > ) {\n\t\t\t\tlet value : any = input\n\t\t\t\tfor( const func of funcs ) value = $mol_func_is_class( func ) ? new func( value ) : ( func as any ).call( this, value )\n\t\t\t\treturn value as $mol_type_result<\n\t\t\t\t\t$mol_type_foot< Funcs >\n\t\t\t\t>\n\t\t\t},\n\t\t\t{ funcs }\n\t\t)\n\n\t}\n\n}\n"]}
|
package/node.mjs
CHANGED
|
@@ -118,6 +118,7 @@ var $;
|
|
|
118
118
|
])
|
|
119
119
|
].map(frame_normalize).join('\n')
|
|
120
120
|
});
|
|
121
|
+
// в nodejs, что б не дублировалось cause в консоли
|
|
121
122
|
Object.defineProperty(this, 'cause', {
|
|
122
123
|
get: () => cause
|
|
123
124
|
});
|
|
@@ -149,7 +150,7 @@ var $;
|
|
|
149
150
|
var $;
|
|
150
151
|
(function ($) {
|
|
151
152
|
function $mol_fail_hidden(error) {
|
|
152
|
-
throw error;
|
|
153
|
+
throw error; /// Use 'Never Pause Here' breakpoint in DevTools or simply blackbox this script
|
|
153
154
|
}
|
|
154
155
|
$.$mol_fail_hidden = $mol_fail_hidden;
|
|
155
156
|
})($ || ($ = {}));
|
|
@@ -158,6 +159,10 @@ var $;
|
|
|
158
159
|
"use strict";
|
|
159
160
|
var $;
|
|
160
161
|
(function ($) {
|
|
162
|
+
/**
|
|
163
|
+
* Checks for array of given runtype and returns expected type.
|
|
164
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_array_demo
|
|
165
|
+
*/
|
|
161
166
|
function $mol_data_array(sub) {
|
|
162
167
|
return $mol_data_setup((val) => {
|
|
163
168
|
if (!Array.isArray(val))
|
|
@@ -182,6 +187,10 @@ var $;
|
|
|
182
187
|
"use strict";
|
|
183
188
|
var $;
|
|
184
189
|
(function ($) {
|
|
190
|
+
/**
|
|
191
|
+
* Checks for boolean and returns boolean type.
|
|
192
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_boolean_demo
|
|
193
|
+
*/
|
|
185
194
|
$.$mol_data_boolean = (val) => {
|
|
186
195
|
if (typeof val === 'boolean')
|
|
187
196
|
return val;
|
|
@@ -194,6 +203,10 @@ var $;
|
|
|
194
203
|
var $;
|
|
195
204
|
(function ($) {
|
|
196
205
|
$.$mol_compare_deep_cache = new WeakMap();
|
|
206
|
+
/**
|
|
207
|
+
* Deeply compares two values. Returns true if equal.
|
|
208
|
+
* Define `Symbol.toPrimitive` to customize.
|
|
209
|
+
*/
|
|
197
210
|
function $mol_compare_deep(left, right) {
|
|
198
211
|
if (Object.is(left, right))
|
|
199
212
|
return true;
|
|
@@ -333,6 +346,10 @@ var $;
|
|
|
333
346
|
"use strict";
|
|
334
347
|
var $;
|
|
335
348
|
(function ($) {
|
|
349
|
+
/**
|
|
350
|
+
* Checks for equality to given value and returns expected type.
|
|
351
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_const_demo
|
|
352
|
+
*/
|
|
336
353
|
function $mol_data_const(ref) {
|
|
337
354
|
return $mol_data_setup((val) => {
|
|
338
355
|
if ($mol_compare_deep(val, ref))
|
|
@@ -347,6 +364,10 @@ var $;
|
|
|
347
364
|
"use strict";
|
|
348
365
|
var $;
|
|
349
366
|
(function ($) {
|
|
367
|
+
/**
|
|
368
|
+
* Checks for string and returns string type.
|
|
369
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_string_demo
|
|
370
|
+
*/
|
|
350
371
|
$.$mol_data_string = (val) => {
|
|
351
372
|
if (typeof val === 'string')
|
|
352
373
|
return val;
|
|
@@ -358,6 +379,10 @@ var $;
|
|
|
358
379
|
"use strict";
|
|
359
380
|
var $;
|
|
360
381
|
(function ($) {
|
|
382
|
+
/**
|
|
383
|
+
* Checks for matching to given regular expression.
|
|
384
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_pattern_demo
|
|
385
|
+
*/
|
|
361
386
|
function $mol_data_pattern(pattern) {
|
|
362
387
|
return $mol_data_setup((val) => {
|
|
363
388
|
const val2 = $mol_data_string(val);
|
|
@@ -373,6 +398,10 @@ var $;
|
|
|
373
398
|
"use strict";
|
|
374
399
|
var $;
|
|
375
400
|
(function ($) {
|
|
401
|
+
/**
|
|
402
|
+
* Checks for E-Mail and returns string type.
|
|
403
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_email_demo
|
|
404
|
+
*/
|
|
376
405
|
$.$mol_data_email = $mol_data_pattern(/.+@.+/);
|
|
377
406
|
})($ || ($ = {}));
|
|
378
407
|
|
|
@@ -380,6 +409,10 @@ var $;
|
|
|
380
409
|
"use strict";
|
|
381
410
|
var $;
|
|
382
411
|
(function ($) {
|
|
412
|
+
/**
|
|
413
|
+
* Checks for value of given enum and returns expected type.
|
|
414
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_enum_demo
|
|
415
|
+
*/
|
|
383
416
|
function $mol_data_enum(name, dict) {
|
|
384
417
|
const index = {};
|
|
385
418
|
for (let key in dict) {
|
|
@@ -401,6 +434,10 @@ var $;
|
|
|
401
434
|
"use strict";
|
|
402
435
|
var $;
|
|
403
436
|
(function ($) {
|
|
437
|
+
/**
|
|
438
|
+
* Checks for instance of given class and returns narrowed type.
|
|
439
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_instance_demo
|
|
440
|
+
*/
|
|
404
441
|
function $mol_data_instance(Instance) {
|
|
405
442
|
return $mol_data_setup((val) => {
|
|
406
443
|
if (val instanceof Instance)
|
|
@@ -415,6 +452,10 @@ var $;
|
|
|
415
452
|
"use strict";
|
|
416
453
|
var $;
|
|
417
454
|
(function ($) {
|
|
455
|
+
/**
|
|
456
|
+
* Checks for number and returns number type.
|
|
457
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_number_demo
|
|
458
|
+
*/
|
|
418
459
|
$.$mol_data_number = (val) => {
|
|
419
460
|
if (typeof val === 'number')
|
|
420
461
|
return val;
|
|
@@ -426,6 +467,10 @@ var $;
|
|
|
426
467
|
"use strict";
|
|
427
468
|
var $;
|
|
428
469
|
(function ($) {
|
|
470
|
+
/**
|
|
471
|
+
* Checks for integer and returns number type.
|
|
472
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_integer_demo
|
|
473
|
+
*/
|
|
429
474
|
function $mol_data_integer(val) {
|
|
430
475
|
const val2 = $mol_data_number(val);
|
|
431
476
|
if (Math.floor(val2) === val2)
|
|
@@ -439,6 +484,10 @@ var $;
|
|
|
439
484
|
"use strict";
|
|
440
485
|
var $;
|
|
441
486
|
(function ($) {
|
|
487
|
+
/**
|
|
488
|
+
* Checks for include inside given range of values and returns expected type.
|
|
489
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_range_demo
|
|
490
|
+
*/
|
|
442
491
|
function $mol_data_range(from, to) {
|
|
443
492
|
return $mol_data_setup((val) => {
|
|
444
493
|
if (val > from && val < to)
|
|
@@ -453,6 +502,10 @@ var $;
|
|
|
453
502
|
"use strict";
|
|
454
503
|
var $;
|
|
455
504
|
(function ($) {
|
|
505
|
+
/**
|
|
506
|
+
* Checks for given runtype and returns tagged version of returned type.
|
|
507
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_tagged_demo
|
|
508
|
+
*/
|
|
456
509
|
function $mol_data_tagged(config) {
|
|
457
510
|
return config;
|
|
458
511
|
}
|
|
@@ -463,6 +516,10 @@ var $;
|
|
|
463
516
|
"use strict";
|
|
464
517
|
var $;
|
|
465
518
|
(function ($) {
|
|
519
|
+
/**
|
|
520
|
+
* Checks for null or passing given runtype.
|
|
521
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_nullable_demo
|
|
522
|
+
*/
|
|
466
523
|
function $mol_data_nullable(sub) {
|
|
467
524
|
return $mol_data_setup((val) => {
|
|
468
525
|
if (val === null)
|
|
@@ -477,6 +534,10 @@ var $;
|
|
|
477
534
|
"use strict";
|
|
478
535
|
var $;
|
|
479
536
|
(function ($) {
|
|
537
|
+
/**
|
|
538
|
+
* Checks for undefined or passing given runtype.
|
|
539
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_optional_demo
|
|
540
|
+
*/
|
|
480
541
|
function $mol_data_optional(sub, fallback) {
|
|
481
542
|
return $mol_data_setup((val) => {
|
|
482
543
|
if (val === undefined) {
|
|
@@ -504,6 +565,10 @@ var $;
|
|
|
504
565
|
"use strict";
|
|
505
566
|
var $;
|
|
506
567
|
(function ($) {
|
|
568
|
+
/**
|
|
569
|
+
* Checks for record of given fields with by its runtypes and returns expected type.
|
|
570
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_record_demo
|
|
571
|
+
*/
|
|
507
572
|
function $mol_data_record(sub) {
|
|
508
573
|
return $mol_data_setup((val) => {
|
|
509
574
|
let res = {};
|
|
@@ -529,6 +594,10 @@ var $;
|
|
|
529
594
|
"use strict";
|
|
530
595
|
var $;
|
|
531
596
|
(function ($) {
|
|
597
|
+
/**
|
|
598
|
+
* Checks for dictionary which maps strings to given runtype and returns expected type.
|
|
599
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_dict_demo
|
|
600
|
+
*/
|
|
532
601
|
function $mol_data_dict(sub) {
|
|
533
602
|
return $mol_data_setup((val) => {
|
|
534
603
|
if (Object.getPrototypeOf(val) !== Object.prototype) {
|
|
@@ -556,6 +625,10 @@ var $;
|
|
|
556
625
|
"use strict";
|
|
557
626
|
var $;
|
|
558
627
|
(function ($) {
|
|
628
|
+
/**
|
|
629
|
+
* Checks for some of given runtype or throws error.
|
|
630
|
+
* @see https://mol.hyoo.ru/#!section=demos/demo=mol_data_variant_demo
|
|
631
|
+
*/
|
|
559
632
|
function $mol_data_variant(...sub) {
|
|
560
633
|
return $mol_data_setup((val) => {
|
|
561
634
|
const errors = [];
|
|
@@ -610,6 +683,11 @@ var $;
|
|
|
610
683
|
"use strict";
|
|
611
684
|
var $;
|
|
612
685
|
(function ($) {
|
|
686
|
+
/**
|
|
687
|
+
* Combines list of unary functions/classes to one function.
|
|
688
|
+
*
|
|
689
|
+
* const reparse = $mol_data_pipe( JSON.stringify , JSON.parse )
|
|
690
|
+
**/
|
|
613
691
|
function $mol_data_pipe(...funcs) {
|
|
614
692
|
return $mol_data_setup(function (input) {
|
|
615
693
|
let value = input;
|