2022-06-23 13:13:33 +03:00
( function webpackUniversalModuleDefinition ( root , factory ) {
if ( typeof exports === 'object' && typeof module === 'object' )
module . exports = factory ( ) ;
else if ( typeof define === 'function' && define . amd )
define ( "cryptoPro" , [ ] , factory ) ;
else if ( typeof exports === 'object' )
exports [ "cryptoPro" ] = factory ( ) ;
else
root [ "cryptoPro" ] = factory ( ) ;
} ) ( window , function ( ) {
return /******/ ( function ( modules ) { // webpackBootstrap
/******/ // The module cache
/******/ var installedModules = { } ;
/******/
/******/ // The require function
/******/ function _ _webpack _require _ _ ( moduleId ) {
/******/
/******/ // Check if module is in cache
/******/ if ( installedModules [ moduleId ] ) {
/******/ return installedModules [ moduleId ] . exports ;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = installedModules [ moduleId ] = {
/******/ i : moduleId ,
/******/ l : false ,
/******/ exports : { }
/******/ } ;
/******/
/******/ // Execute the module function
/******/ modules [ moduleId ] . call ( module . exports , module , module . exports , _ _webpack _require _ _ ) ;
/******/
/******/ // Flag the module as loaded
/******/ module . l = true ;
/******/
/******/ // Return the exports of the module
/******/ return module . exports ;
/******/ }
/******/
/******/
/******/ // expose the modules object (__webpack_modules__)
/******/ _ _webpack _require _ _ . m = modules ;
/******/
/******/ // expose the module cache
/******/ _ _webpack _require _ _ . c = installedModules ;
/******/
/******/ // define getter function for harmony exports
/******/ _ _webpack _require _ _ . d = function ( exports , name , getter ) {
/******/ if ( ! _ _webpack _require _ _ . o ( exports , name ) ) {
/******/ Object . defineProperty ( exports , name , { enumerable : true , get : getter } ) ;
/******/ }
/******/ } ;
/******/
/******/ // define __esModule on exports
/******/ _ _webpack _require _ _ . r = function ( exports ) {
/******/ if ( typeof Symbol !== 'undefined' && Symbol . toStringTag ) {
/******/ Object . defineProperty ( exports , Symbol . toStringTag , { value : 'Module' } ) ;
/******/ }
/******/ Object . defineProperty ( exports , '__esModule' , { value : true } ) ;
/******/ } ;
/******/
/******/ // create a fake namespace object
/******/ // mode & 1: value is a module id, require it
/******/ // mode & 2: merge all properties of value into the ns
/******/ // mode & 4: return value when already ns object
/******/ // mode & 8|1: behave like require
/******/ _ _webpack _require _ _ . t = function ( value , mode ) {
/******/ if ( mode & 1 ) value = _ _webpack _require _ _ ( value ) ;
/******/ if ( mode & 8 ) return value ;
/******/ if ( ( mode & 4 ) && typeof value === 'object' && value && value . _ _esModule ) return value ;
/******/ var ns = Object . create ( null ) ;
/******/ _ _webpack _require _ _ . r ( ns ) ;
/******/ Object . defineProperty ( ns , 'default' , { enumerable : true , value : value } ) ;
/******/ if ( mode & 2 && typeof value != 'string' ) for ( var key in value ) _ _webpack _require _ _ . d ( ns , key , function ( key ) { return value [ key ] ; } . bind ( null , key ) ) ;
/******/ return ns ;
/******/ } ;
/******/
/******/ // getDefaultExport function for compatibility with non-harmony modules
/******/ _ _webpack _require _ _ . n = function ( module ) {
/******/ var getter = module && module . _ _esModule ?
/******/ function getDefault ( ) { return module [ 'default' ] ; } :
/******/ function getModuleExports ( ) { return module ; } ;
/******/ _ _webpack _require _ _ . d ( getter , 'a' , getter ) ;
/******/ return getter ;
/******/ } ;
/******/
/******/ // Object.prototype.hasOwnProperty.call
/******/ _ _webpack _require _ _ . o = function ( object , property ) { return Object . prototype . hasOwnProperty . call ( object , property ) ; } ;
/******/
/******/ // __webpack_public_path__
/******/ _ _webpack _require _ _ . p = "" ;
/******/
/******/
/******/ // Load entry module and return exports
/******/ return _ _webpack _require _ _ ( _ _webpack _require _ _ . s = "./crypto-pro-js.ts" ) ;
/******/ } )
/************************************************************************/
/******/ ( {
/***/ "../node_modules/base64-js/index.js" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . . / node _modules / base64 - js / index . js * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
exports . byteLength = byteLength
exports . toByteArray = toByteArray
exports . fromByteArray = fromByteArray
var lookup = [ ]
var revLookup = [ ]
var Arr = typeof Uint8Array !== 'undefined' ? Uint8Array : Array
var code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
for ( var i = 0 , len = code . length ; i < len ; ++ i ) {
lookup [ i ] = code [ i ]
revLookup [ code . charCodeAt ( i ) ] = i
}
// Support decoding URL-safe base64 strings, as Node.js does.
// See: https://en.wikipedia.org/wiki/Base64#URL_applications
revLookup [ '-' . charCodeAt ( 0 ) ] = 62
revLookup [ '_' . charCodeAt ( 0 ) ] = 63
function getLens ( b64 ) {
var len = b64 . length
if ( len % 4 > 0 ) {
throw new Error ( 'Invalid string. Length must be a multiple of 4' )
}
// Trim off extra bytes after placeholder bytes are found
// See: https://github.com/beatgammit/base64-js/issues/42
var validLen = b64 . indexOf ( '=' )
if ( validLen === - 1 ) validLen = len
var placeHoldersLen = validLen === len
? 0
: 4 - ( validLen % 4 )
return [ validLen , placeHoldersLen ]
}
// base64 is 4/3 + up to two characters of the original data
function byteLength ( b64 ) {
var lens = getLens ( b64 )
var validLen = lens [ 0 ]
var placeHoldersLen = lens [ 1 ]
return ( ( validLen + placeHoldersLen ) * 3 / 4 ) - placeHoldersLen
}
function _byteLength ( b64 , validLen , placeHoldersLen ) {
return ( ( validLen + placeHoldersLen ) * 3 / 4 ) - placeHoldersLen
}
function toByteArray ( b64 ) {
var tmp
var lens = getLens ( b64 )
var validLen = lens [ 0 ]
var placeHoldersLen = lens [ 1 ]
var arr = new Arr ( _byteLength ( b64 , validLen , placeHoldersLen ) )
var curByte = 0
// if there are placeholders, only get up to the last complete 4 chars
var len = placeHoldersLen > 0
? validLen - 4
: validLen
var i
for ( i = 0 ; i < len ; i += 4 ) {
tmp =
( revLookup [ b64 . charCodeAt ( i ) ] << 18 ) |
( revLookup [ b64 . charCodeAt ( i + 1 ) ] << 12 ) |
( revLookup [ b64 . charCodeAt ( i + 2 ) ] << 6 ) |
revLookup [ b64 . charCodeAt ( i + 3 ) ]
arr [ curByte ++ ] = ( tmp >> 16 ) & 0xFF
arr [ curByte ++ ] = ( tmp >> 8 ) & 0xFF
arr [ curByte ++ ] = tmp & 0xFF
}
if ( placeHoldersLen === 2 ) {
tmp =
( revLookup [ b64 . charCodeAt ( i ) ] << 2 ) |
( revLookup [ b64 . charCodeAt ( i + 1 ) ] >> 4 )
arr [ curByte ++ ] = tmp & 0xFF
}
if ( placeHoldersLen === 1 ) {
tmp =
( revLookup [ b64 . charCodeAt ( i ) ] << 10 ) |
( revLookup [ b64 . charCodeAt ( i + 1 ) ] << 4 ) |
( revLookup [ b64 . charCodeAt ( i + 2 ) ] >> 2 )
arr [ curByte ++ ] = ( tmp >> 8 ) & 0xFF
arr [ curByte ++ ] = tmp & 0xFF
}
return arr
}
function tripletToBase64 ( num ) {
return lookup [ num >> 18 & 0x3F ] +
lookup [ num >> 12 & 0x3F ] +
lookup [ num >> 6 & 0x3F ] +
lookup [ num & 0x3F ]
}
function encodeChunk ( uint8 , start , end ) {
var tmp
var output = [ ]
for ( var i = start ; i < end ; i += 3 ) {
tmp =
( ( uint8 [ i ] << 16 ) & 0xFF0000 ) +
( ( uint8 [ i + 1 ] << 8 ) & 0xFF00 ) +
( uint8 [ i + 2 ] & 0xFF )
output . push ( tripletToBase64 ( tmp ) )
}
return output . join ( '' )
}
function fromByteArray ( uint8 ) {
var tmp
var len = uint8 . length
var extraBytes = len % 3 // if we have 1 byte left, pad 2 bytes
var parts = [ ]
var maxChunkLength = 16383 // must be multiple of 3
// go through the array every three bytes, we'll deal with trailing stuff later
for ( var i = 0 , len2 = len - extraBytes ; i < len2 ; i += maxChunkLength ) {
parts . push ( encodeChunk ( uint8 , i , ( i + maxChunkLength ) > len2 ? len2 : ( i + maxChunkLength ) ) )
}
// pad the end with zeros, but make sure to not forget the extra bytes
if ( extraBytes === 1 ) {
tmp = uint8 [ len - 1 ]
parts . push (
lookup [ tmp >> 2 ] +
lookup [ ( tmp << 4 ) & 0x3F ] +
'=='
)
} else if ( extraBytes === 2 ) {
tmp = ( uint8 [ len - 2 ] << 8 ) + uint8 [ len - 1 ]
parts . push (
lookup [ tmp >> 10 ] +
lookup [ ( tmp >> 4 ) & 0x3F ] +
lookup [ ( tmp << 2 ) & 0x3F ] +
'='
)
}
return parts . join ( '' )
}
/***/ } ) ,
/***/ "../node_modules/buffer/index.js" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . . / node _modules / buffer / index . js * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
/* WEBPACK VAR INJECTION */ ( function ( global ) { / * !
* The buffer module from node . js , for the browser .
*
* @ author Feross Aboukhadijeh < http : //feross.org>
* @ license MIT
* /
/* eslint-disable no-proto */
var base64 = _ _webpack _require _ _ ( /*! base64-js */ "../node_modules/base64-js/index.js" )
var ieee754 = _ _webpack _require _ _ ( /*! ieee754 */ "../node_modules/ieee754/index.js" )
var isArray = _ _webpack _require _ _ ( /*! isarray */ "../node_modules/buffer/node_modules/isarray/index.js" )
exports . Buffer = Buffer
exports . SlowBuffer = SlowBuffer
exports . INSPECT _MAX _BYTES = 50
/ * *
* If ` Buffer.TYPED_ARRAY_SUPPORT ` :
* === true Use Uint8Array implementation ( fastest )
* === false Use Object implementation ( most compatible , even IE6 )
*
* Browsers that support typed arrays are IE 10 + , Firefox 4 + , Chrome 7 + , Safari 5.1 + ,
* Opera 11.6 + , iOS 4.2 + .
*
* Due to various browser bugs , sometimes the Object implementation will be used even
* when the browser supports typed arrays .
*
* Note :
*
* - Firefox 4 - 29 lacks support for adding new properties to ` Uint8Array ` instances ,
* See : https : //bugzilla.mozilla.org/show_bug.cgi?id=695438.
*
* - Chrome 9 - 10 is missing the ` TypedArray.prototype.subarray ` function .
*
* - IE10 has a broken ` TypedArray.prototype.subarray ` function which returns arrays of
* incorrect length in some situations .
* We detect these buggy browsers and set ` Buffer.TYPED_ARRAY_SUPPORT ` to ` false ` so they
* get the Object implementation , which is slower but behaves correctly .
* /
Buffer . TYPED _ARRAY _SUPPORT = global . TYPED _ARRAY _SUPPORT !== undefined
? global . TYPED _ARRAY _SUPPORT
: typedArraySupport ( )
/ *
* Export kMaxLength after typed array support is determined .
* /
exports . kMaxLength = kMaxLength ( )
function typedArraySupport ( ) {
try {
var arr = new Uint8Array ( 1 )
arr . _ _proto _ _ = { _ _proto _ _ : Uint8Array . prototype , foo : function ( ) { return 42 } }
return arr . foo ( ) === 42 && // typed array instances can be augmented
typeof arr . subarray === 'function' && // chrome 9-10 lack `subarray`
arr . subarray ( 1 , 1 ) . byteLength === 0 // ie10 has broken `subarray`
} catch ( e ) {
return false
}
}
function kMaxLength ( ) {
return Buffer . TYPED _ARRAY _SUPPORT
? 0x7fffffff
: 0x3fffffff
}
function createBuffer ( that , length ) {
if ( kMaxLength ( ) < length ) {
throw new RangeError ( 'Invalid typed array length' )
}
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
// Return an augmented `Uint8Array` instance, for best performance
that = new Uint8Array ( length )
that . _ _proto _ _ = Buffer . prototype
} else {
// Fallback: Return an object instance of the Buffer class
if ( that === null ) {
that = new Buffer ( length )
}
that . length = length
}
return that
}
/ * *
* The Buffer constructor returns instances of ` Uint8Array ` that have their
* prototype changed to ` Buffer.prototype ` . Furthermore , ` Buffer ` is a subclass of
* ` Uint8Array ` , so the returned instances will have all the node ` Buffer ` methods
* and the ` Uint8Array ` methods . Square bracket notation works as expected -- it
* returns a single octet .
*
* The ` Uint8Array ` prototype remains unmodified .
* /
function Buffer ( arg , encodingOrOffset , length ) {
if ( ! Buffer . TYPED _ARRAY _SUPPORT && ! ( this instanceof Buffer ) ) {
return new Buffer ( arg , encodingOrOffset , length )
}
// Common case.
if ( typeof arg === 'number' ) {
if ( typeof encodingOrOffset === 'string' ) {
throw new Error (
'If encoding is specified then the first argument must be a string'
)
}
return allocUnsafe ( this , arg )
}
return from ( this , arg , encodingOrOffset , length )
}
Buffer . poolSize = 8192 // not used by this implementation
// TODO: Legacy, not needed anymore. Remove in next major version.
Buffer . _augment = function ( arr ) {
arr . _ _proto _ _ = Buffer . prototype
return arr
}
function from ( that , value , encodingOrOffset , length ) {
if ( typeof value === 'number' ) {
throw new TypeError ( '"value" argument must not be a number' )
}
if ( typeof ArrayBuffer !== 'undefined' && value instanceof ArrayBuffer ) {
return fromArrayBuffer ( that , value , encodingOrOffset , length )
}
if ( typeof value === 'string' ) {
return fromString ( that , value , encodingOrOffset )
}
return fromObject ( that , value )
}
/ * *
* Functionally equivalent to Buffer ( arg , encoding ) but throws a TypeError
* if value is a number .
* Buffer . from ( str [ , encoding ] )
* Buffer . from ( array )
* Buffer . from ( buffer )
* Buffer . from ( arrayBuffer [ , byteOffset [ , length ] ] )
* * /
Buffer . from = function ( value , encodingOrOffset , length ) {
return from ( null , value , encodingOrOffset , length )
}
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
Buffer . prototype . _ _proto _ _ = Uint8Array . prototype
Buffer . _ _proto _ _ = Uint8Array
if ( typeof Symbol !== 'undefined' && Symbol . species &&
Buffer [ Symbol . species ] === Buffer ) {
// Fix subarray() in ES2016. See: https://github.com/feross/buffer/pull/97
Object . defineProperty ( Buffer , Symbol . species , {
value : null ,
configurable : true
} )
}
}
function assertSize ( size ) {
if ( typeof size !== 'number' ) {
throw new TypeError ( '"size" argument must be a number' )
} else if ( size < 0 ) {
throw new RangeError ( '"size" argument must not be negative' )
}
}
function alloc ( that , size , fill , encoding ) {
assertSize ( size )
if ( size <= 0 ) {
return createBuffer ( that , size )
}
if ( fill !== undefined ) {
// Only pay attention to encoding if it's a string. This
// prevents accidentally sending in a number that would
// be interpretted as a start offset.
return typeof encoding === 'string'
? createBuffer ( that , size ) . fill ( fill , encoding )
: createBuffer ( that , size ) . fill ( fill )
}
return createBuffer ( that , size )
}
/ * *
* Creates a new filled Buffer instance .
* alloc ( size [ , fill [ , encoding ] ] )
* * /
Buffer . alloc = function ( size , fill , encoding ) {
return alloc ( null , size , fill , encoding )
}
function allocUnsafe ( that , size ) {
assertSize ( size )
that = createBuffer ( that , size < 0 ? 0 : checked ( size ) | 0 )
if ( ! Buffer . TYPED _ARRAY _SUPPORT ) {
for ( var i = 0 ; i < size ; ++ i ) {
that [ i ] = 0
}
}
return that
}
/ * *
* Equivalent to Buffer ( num ) , by default creates a non - zero - filled Buffer instance .
* * /
Buffer . allocUnsafe = function ( size ) {
return allocUnsafe ( null , size )
}
/ * *
* Equivalent to SlowBuffer ( num ) , by default creates a non - zero - filled Buffer instance .
* /
Buffer . allocUnsafeSlow = function ( size ) {
return allocUnsafe ( null , size )
}
function fromString ( that , string , encoding ) {
if ( typeof encoding !== 'string' || encoding === '' ) {
encoding = 'utf8'
}
if ( ! Buffer . isEncoding ( encoding ) ) {
throw new TypeError ( '"encoding" must be a valid string encoding' )
}
var length = byteLength ( string , encoding ) | 0
that = createBuffer ( that , length )
var actual = that . write ( string , encoding )
if ( actual !== length ) {
// Writing a hex string, for example, that contains invalid characters will
// cause everything after the first invalid character to be ignored. (e.g.
// 'abxxcd' will be treated as 'ab')
that = that . slice ( 0 , actual )
}
return that
}
function fromArrayLike ( that , array ) {
var length = array . length < 0 ? 0 : checked ( array . length ) | 0
that = createBuffer ( that , length )
for ( var i = 0 ; i < length ; i += 1 ) {
that [ i ] = array [ i ] & 255
}
return that
}
function fromArrayBuffer ( that , array , byteOffset , length ) {
array . byteLength // this throws if `array` is not a valid ArrayBuffer
if ( byteOffset < 0 || array . byteLength < byteOffset ) {
throw new RangeError ( '\'offset\' is out of bounds' )
}
if ( array . byteLength < byteOffset + ( length || 0 ) ) {
throw new RangeError ( '\'length\' is out of bounds' )
}
if ( byteOffset === undefined && length === undefined ) {
array = new Uint8Array ( array )
} else if ( length === undefined ) {
array = new Uint8Array ( array , byteOffset )
} else {
array = new Uint8Array ( array , byteOffset , length )
}
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
// Return an augmented `Uint8Array` instance, for best performance
that = array
that . _ _proto _ _ = Buffer . prototype
} else {
// Fallback: Return an object instance of the Buffer class
that = fromArrayLike ( that , array )
}
return that
}
function fromObject ( that , obj ) {
if ( Buffer . isBuffer ( obj ) ) {
var len = checked ( obj . length ) | 0
that = createBuffer ( that , len )
if ( that . length === 0 ) {
return that
}
obj . copy ( that , 0 , 0 , len )
return that
}
if ( obj ) {
if ( ( typeof ArrayBuffer !== 'undefined' &&
obj . buffer instanceof ArrayBuffer ) || 'length' in obj ) {
if ( typeof obj . length !== 'number' || isnan ( obj . length ) ) {
return createBuffer ( that , 0 )
}
return fromArrayLike ( that , obj )
}
if ( obj . type === 'Buffer' && isArray ( obj . data ) ) {
return fromArrayLike ( that , obj . data )
}
}
throw new TypeError ( 'First argument must be a string, Buffer, ArrayBuffer, Array, or array-like object.' )
}
function checked ( length ) {
// Note: cannot use `length < kMaxLength()` here because that fails when
// length is NaN (which is otherwise coerced to zero.)
if ( length >= kMaxLength ( ) ) {
throw new RangeError ( 'Attempt to allocate Buffer larger than maximum ' +
'size: 0x' + kMaxLength ( ) . toString ( 16 ) + ' bytes' )
}
return length | 0
}
function SlowBuffer ( length ) {
if ( + length != length ) { // eslint-disable-line eqeqeq
length = 0
}
return Buffer . alloc ( + length )
}
Buffer . isBuffer = function isBuffer ( b ) {
return ! ! ( b != null && b . _isBuffer )
}
Buffer . compare = function compare ( a , b ) {
if ( ! Buffer . isBuffer ( a ) || ! Buffer . isBuffer ( b ) ) {
throw new TypeError ( 'Arguments must be Buffers' )
}
if ( a === b ) return 0
var x = a . length
var y = b . length
for ( var i = 0 , len = Math . min ( x , y ) ; i < len ; ++ i ) {
if ( a [ i ] !== b [ i ] ) {
x = a [ i ]
y = b [ i ]
break
}
}
if ( x < y ) return - 1
if ( y < x ) return 1
return 0
}
Buffer . isEncoding = function isEncoding ( encoding ) {
switch ( String ( encoding ) . toLowerCase ( ) ) {
case 'hex' :
case 'utf8' :
case 'utf-8' :
case 'ascii' :
case 'latin1' :
case 'binary' :
case 'base64' :
case 'ucs2' :
case 'ucs-2' :
case 'utf16le' :
case 'utf-16le' :
return true
default :
return false
}
}
Buffer . concat = function concat ( list , length ) {
if ( ! isArray ( list ) ) {
throw new TypeError ( '"list" argument must be an Array of Buffers' )
}
if ( list . length === 0 ) {
return Buffer . alloc ( 0 )
}
var i
if ( length === undefined ) {
length = 0
for ( i = 0 ; i < list . length ; ++ i ) {
length += list [ i ] . length
}
}
var buffer = Buffer . allocUnsafe ( length )
var pos = 0
for ( i = 0 ; i < list . length ; ++ i ) {
var buf = list [ i ]
if ( ! Buffer . isBuffer ( buf ) ) {
throw new TypeError ( '"list" argument must be an Array of Buffers' )
}
buf . copy ( buffer , pos )
pos += buf . length
}
return buffer
}
function byteLength ( string , encoding ) {
if ( Buffer . isBuffer ( string ) ) {
return string . length
}
if ( typeof ArrayBuffer !== 'undefined' && typeof ArrayBuffer . isView === 'function' &&
( ArrayBuffer . isView ( string ) || string instanceof ArrayBuffer ) ) {
return string . byteLength
}
if ( typeof string !== 'string' ) {
string = '' + string
}
var len = string . length
if ( len === 0 ) return 0
// Use a for loop to avoid recursion
var loweredCase = false
for ( ; ; ) {
switch ( encoding ) {
case 'ascii' :
case 'latin1' :
case 'binary' :
return len
case 'utf8' :
case 'utf-8' :
case undefined :
return utf8ToBytes ( string ) . length
case 'ucs2' :
case 'ucs-2' :
case 'utf16le' :
case 'utf-16le' :
return len * 2
case 'hex' :
return len >>> 1
case 'base64' :
return base64ToBytes ( string ) . length
default :
if ( loweredCase ) return utf8ToBytes ( string ) . length // assume utf8
encoding = ( '' + encoding ) . toLowerCase ( )
loweredCase = true
}
}
}
Buffer . byteLength = byteLength
function slowToString ( encoding , start , end ) {
var loweredCase = false
// No need to verify that "this.length <= MAX_UINT32" since it's a read-only
// property of a typed array.
// This behaves neither like String nor Uint8Array in that we set start/end
// to their upper/lower bounds if the value passed is out of range.
// undefined is handled specially as per ECMA-262 6th Edition,
// Section 13.3.3.7 Runtime Semantics: KeyedBindingInitialization.
if ( start === undefined || start < 0 ) {
start = 0
}
// Return early if start > this.length. Done here to prevent potential uint32
// coercion fail below.
if ( start > this . length ) {
return ''
}
if ( end === undefined || end > this . length ) {
end = this . length
}
if ( end <= 0 ) {
return ''
}
// Force coersion to uint32. This will also coerce falsey/NaN values to 0.
end >>>= 0
start >>>= 0
if ( end <= start ) {
return ''
}
if ( ! encoding ) encoding = 'utf8'
while ( true ) {
switch ( encoding ) {
case 'hex' :
return hexSlice ( this , start , end )
case 'utf8' :
case 'utf-8' :
return utf8Slice ( this , start , end )
case 'ascii' :
return asciiSlice ( this , start , end )
case 'latin1' :
case 'binary' :
return latin1Slice ( this , start , end )
case 'base64' :
return base64Slice ( this , start , end )
case 'ucs2' :
case 'ucs-2' :
case 'utf16le' :
case 'utf-16le' :
return utf16leSlice ( this , start , end )
default :
if ( loweredCase ) throw new TypeError ( 'Unknown encoding: ' + encoding )
encoding = ( encoding + '' ) . toLowerCase ( )
loweredCase = true
}
}
}
// The property is used by `Buffer.isBuffer` and `is-buffer` (in Safari 5-7) to detect
// Buffer instances.
Buffer . prototype . _isBuffer = true
function swap ( b , n , m ) {
var i = b [ n ]
b [ n ] = b [ m ]
b [ m ] = i
}
Buffer . prototype . swap16 = function swap16 ( ) {
var len = this . length
if ( len % 2 !== 0 ) {
throw new RangeError ( 'Buffer size must be a multiple of 16-bits' )
}
for ( var i = 0 ; i < len ; i += 2 ) {
swap ( this , i , i + 1 )
}
return this
}
Buffer . prototype . swap32 = function swap32 ( ) {
var len = this . length
if ( len % 4 !== 0 ) {
throw new RangeError ( 'Buffer size must be a multiple of 32-bits' )
}
for ( var i = 0 ; i < len ; i += 4 ) {
swap ( this , i , i + 3 )
swap ( this , i + 1 , i + 2 )
}
return this
}
Buffer . prototype . swap64 = function swap64 ( ) {
var len = this . length
if ( len % 8 !== 0 ) {
throw new RangeError ( 'Buffer size must be a multiple of 64-bits' )
}
for ( var i = 0 ; i < len ; i += 8 ) {
swap ( this , i , i + 7 )
swap ( this , i + 1 , i + 6 )
swap ( this , i + 2 , i + 5 )
swap ( this , i + 3 , i + 4 )
}
return this
}
Buffer . prototype . toString = function toString ( ) {
var length = this . length | 0
if ( length === 0 ) return ''
if ( arguments . length === 0 ) return utf8Slice ( this , 0 , length )
return slowToString . apply ( this , arguments )
}
Buffer . prototype . equals = function equals ( b ) {
if ( ! Buffer . isBuffer ( b ) ) throw new TypeError ( 'Argument must be a Buffer' )
if ( this === b ) return true
return Buffer . compare ( this , b ) === 0
}
Buffer . prototype . inspect = function inspect ( ) {
var str = ''
var max = exports . INSPECT _MAX _BYTES
if ( this . length > 0 ) {
str = this . toString ( 'hex' , 0 , max ) . match ( /.{2}/g ) . join ( ' ' )
if ( this . length > max ) str += ' ... '
}
return '<Buffer ' + str + '>'
}
Buffer . prototype . compare = function compare ( target , start , end , thisStart , thisEnd ) {
if ( ! Buffer . isBuffer ( target ) ) {
throw new TypeError ( 'Argument must be a Buffer' )
}
if ( start === undefined ) {
start = 0
}
if ( end === undefined ) {
end = target ? target . length : 0
}
if ( thisStart === undefined ) {
thisStart = 0
}
if ( thisEnd === undefined ) {
thisEnd = this . length
}
if ( start < 0 || end > target . length || thisStart < 0 || thisEnd > this . length ) {
throw new RangeError ( 'out of range index' )
}
if ( thisStart >= thisEnd && start >= end ) {
return 0
}
if ( thisStart >= thisEnd ) {
return - 1
}
if ( start >= end ) {
return 1
}
start >>>= 0
end >>>= 0
thisStart >>>= 0
thisEnd >>>= 0
if ( this === target ) return 0
var x = thisEnd - thisStart
var y = end - start
var len = Math . min ( x , y )
var thisCopy = this . slice ( thisStart , thisEnd )
var targetCopy = target . slice ( start , end )
for ( var i = 0 ; i < len ; ++ i ) {
if ( thisCopy [ i ] !== targetCopy [ i ] ) {
x = thisCopy [ i ]
y = targetCopy [ i ]
break
}
}
if ( x < y ) return - 1
if ( y < x ) return 1
return 0
}
// Finds either the first index of `val` in `buffer` at offset >= `byteOffset`,
// OR the last index of `val` in `buffer` at offset <= `byteOffset`.
//
// Arguments:
// - buffer - a Buffer to search
// - val - a string, Buffer, or number
// - byteOffset - an index into `buffer`; will be clamped to an int32
// - encoding - an optional encoding, relevant is val is a string
// - dir - true for indexOf, false for lastIndexOf
function bidirectionalIndexOf ( buffer , val , byteOffset , encoding , dir ) {
// Empty buffer means no match
if ( buffer . length === 0 ) return - 1
// Normalize byteOffset
if ( typeof byteOffset === 'string' ) {
encoding = byteOffset
byteOffset = 0
} else if ( byteOffset > 0x7fffffff ) {
byteOffset = 0x7fffffff
} else if ( byteOffset < - 0x80000000 ) {
byteOffset = - 0x80000000
}
byteOffset = + byteOffset // Coerce to Number.
if ( isNaN ( byteOffset ) ) {
// byteOffset: it it's undefined, null, NaN, "foo", etc, search whole buffer
byteOffset = dir ? 0 : ( buffer . length - 1 )
}
// Normalize byteOffset: negative offsets start from the end of the buffer
if ( byteOffset < 0 ) byteOffset = buffer . length + byteOffset
if ( byteOffset >= buffer . length ) {
if ( dir ) return - 1
else byteOffset = buffer . length - 1
} else if ( byteOffset < 0 ) {
if ( dir ) byteOffset = 0
else return - 1
}
// Normalize val
if ( typeof val === 'string' ) {
val = Buffer . from ( val , encoding )
}
// Finally, search either indexOf (if dir is true) or lastIndexOf
if ( Buffer . isBuffer ( val ) ) {
// Special case: looking for empty string/buffer always fails
if ( val . length === 0 ) {
return - 1
}
return arrayIndexOf ( buffer , val , byteOffset , encoding , dir )
} else if ( typeof val === 'number' ) {
val = val & 0xFF // Search for a byte value [0-255]
if ( Buffer . TYPED _ARRAY _SUPPORT &&
typeof Uint8Array . prototype . indexOf === 'function' ) {
if ( dir ) {
return Uint8Array . prototype . indexOf . call ( buffer , val , byteOffset )
} else {
return Uint8Array . prototype . lastIndexOf . call ( buffer , val , byteOffset )
}
}
return arrayIndexOf ( buffer , [ val ] , byteOffset , encoding , dir )
}
throw new TypeError ( 'val must be string, number or Buffer' )
}
function arrayIndexOf ( arr , val , byteOffset , encoding , dir ) {
var indexSize = 1
var arrLength = arr . length
var valLength = val . length
if ( encoding !== undefined ) {
encoding = String ( encoding ) . toLowerCase ( )
if ( encoding === 'ucs2' || encoding === 'ucs-2' ||
encoding === 'utf16le' || encoding === 'utf-16le' ) {
if ( arr . length < 2 || val . length < 2 ) {
return - 1
}
indexSize = 2
arrLength /= 2
valLength /= 2
byteOffset /= 2
}
}
function read ( buf , i ) {
if ( indexSize === 1 ) {
return buf [ i ]
} else {
return buf . readUInt16BE ( i * indexSize )
}
}
var i
if ( dir ) {
var foundIndex = - 1
for ( i = byteOffset ; i < arrLength ; i ++ ) {
if ( read ( arr , i ) === read ( val , foundIndex === - 1 ? 0 : i - foundIndex ) ) {
if ( foundIndex === - 1 ) foundIndex = i
if ( i - foundIndex + 1 === valLength ) return foundIndex * indexSize
} else {
if ( foundIndex !== - 1 ) i -= i - foundIndex
foundIndex = - 1
}
}
} else {
if ( byteOffset + valLength > arrLength ) byteOffset = arrLength - valLength
for ( i = byteOffset ; i >= 0 ; i -- ) {
var found = true
for ( var j = 0 ; j < valLength ; j ++ ) {
if ( read ( arr , i + j ) !== read ( val , j ) ) {
found = false
break
}
}
if ( found ) return i
}
}
return - 1
}
Buffer . prototype . includes = function includes ( val , byteOffset , encoding ) {
return this . indexOf ( val , byteOffset , encoding ) !== - 1
}
Buffer . prototype . indexOf = function indexOf ( val , byteOffset , encoding ) {
return bidirectionalIndexOf ( this , val , byteOffset , encoding , true )
}
Buffer . prototype . lastIndexOf = function lastIndexOf ( val , byteOffset , encoding ) {
return bidirectionalIndexOf ( this , val , byteOffset , encoding , false )
}
function hexWrite ( buf , string , offset , length ) {
offset = Number ( offset ) || 0
var remaining = buf . length - offset
if ( ! length ) {
length = remaining
} else {
length = Number ( length )
if ( length > remaining ) {
length = remaining
}
}
// must be an even number of digits
var strLen = string . length
if ( strLen % 2 !== 0 ) throw new TypeError ( 'Invalid hex string' )
if ( length > strLen / 2 ) {
length = strLen / 2
}
for ( var i = 0 ; i < length ; ++ i ) {
var parsed = parseInt ( string . substr ( i * 2 , 2 ) , 16 )
if ( isNaN ( parsed ) ) return i
buf [ offset + i ] = parsed
}
return i
}
function utf8Write ( buf , string , offset , length ) {
return blitBuffer ( utf8ToBytes ( string , buf . length - offset ) , buf , offset , length )
}
function asciiWrite ( buf , string , offset , length ) {
return blitBuffer ( asciiToBytes ( string ) , buf , offset , length )
}
function latin1Write ( buf , string , offset , length ) {
return asciiWrite ( buf , string , offset , length )
}
function base64Write ( buf , string , offset , length ) {
return blitBuffer ( base64ToBytes ( string ) , buf , offset , length )
}
function ucs2Write ( buf , string , offset , length ) {
return blitBuffer ( utf16leToBytes ( string , buf . length - offset ) , buf , offset , length )
}
Buffer . prototype . write = function write ( string , offset , length , encoding ) {
// Buffer#write(string)
if ( offset === undefined ) {
encoding = 'utf8'
length = this . length
offset = 0
// Buffer#write(string, encoding)
} else if ( length === undefined && typeof offset === 'string' ) {
encoding = offset
length = this . length
offset = 0
// Buffer#write(string, offset[, length][, encoding])
} else if ( isFinite ( offset ) ) {
offset = offset | 0
if ( isFinite ( length ) ) {
length = length | 0
if ( encoding === undefined ) encoding = 'utf8'
} else {
encoding = length
length = undefined
}
// legacy write(string, encoding, offset, length) - remove in v0.13
} else {
throw new Error (
'Buffer.write(string, encoding, offset[, length]) is no longer supported'
)
}
var remaining = this . length - offset
if ( length === undefined || length > remaining ) length = remaining
if ( ( string . length > 0 && ( length < 0 || offset < 0 ) ) || offset > this . length ) {
throw new RangeError ( 'Attempt to write outside buffer bounds' )
}
if ( ! encoding ) encoding = 'utf8'
var loweredCase = false
for ( ; ; ) {
switch ( encoding ) {
case 'hex' :
return hexWrite ( this , string , offset , length )
case 'utf8' :
case 'utf-8' :
return utf8Write ( this , string , offset , length )
case 'ascii' :
return asciiWrite ( this , string , offset , length )
case 'latin1' :
case 'binary' :
return latin1Write ( this , string , offset , length )
case 'base64' :
// Warning: maxLength not taken into account in base64Write
return base64Write ( this , string , offset , length )
case 'ucs2' :
case 'ucs-2' :
case 'utf16le' :
case 'utf-16le' :
return ucs2Write ( this , string , offset , length )
default :
if ( loweredCase ) throw new TypeError ( 'Unknown encoding: ' + encoding )
encoding = ( '' + encoding ) . toLowerCase ( )
loweredCase = true
}
}
}
Buffer . prototype . toJSON = function toJSON ( ) {
return {
type : 'Buffer' ,
data : Array . prototype . slice . call ( this . _arr || this , 0 )
}
}
function base64Slice ( buf , start , end ) {
if ( start === 0 && end === buf . length ) {
return base64 . fromByteArray ( buf )
} else {
return base64 . fromByteArray ( buf . slice ( start , end ) )
}
}
function utf8Slice ( buf , start , end ) {
end = Math . min ( buf . length , end )
var res = [ ]
var i = start
while ( i < end ) {
var firstByte = buf [ i ]
var codePoint = null
var bytesPerSequence = ( firstByte > 0xEF ) ? 4
: ( firstByte > 0xDF ) ? 3
: ( firstByte > 0xBF ) ? 2
: 1
if ( i + bytesPerSequence <= end ) {
var secondByte , thirdByte , fourthByte , tempCodePoint
switch ( bytesPerSequence ) {
case 1 :
if ( firstByte < 0x80 ) {
codePoint = firstByte
}
break
case 2 :
secondByte = buf [ i + 1 ]
if ( ( secondByte & 0xC0 ) === 0x80 ) {
tempCodePoint = ( firstByte & 0x1F ) << 0x6 | ( secondByte & 0x3F )
if ( tempCodePoint > 0x7F ) {
codePoint = tempCodePoint
}
}
break
case 3 :
secondByte = buf [ i + 1 ]
thirdByte = buf [ i + 2 ]
if ( ( secondByte & 0xC0 ) === 0x80 && ( thirdByte & 0xC0 ) === 0x80 ) {
tempCodePoint = ( firstByte & 0xF ) << 0xC | ( secondByte & 0x3F ) << 0x6 | ( thirdByte & 0x3F )
if ( tempCodePoint > 0x7FF && ( tempCodePoint < 0xD800 || tempCodePoint > 0xDFFF ) ) {
codePoint = tempCodePoint
}
}
break
case 4 :
secondByte = buf [ i + 1 ]
thirdByte = buf [ i + 2 ]
fourthByte = buf [ i + 3 ]
if ( ( secondByte & 0xC0 ) === 0x80 && ( thirdByte & 0xC0 ) === 0x80 && ( fourthByte & 0xC0 ) === 0x80 ) {
tempCodePoint = ( firstByte & 0xF ) << 0x12 | ( secondByte & 0x3F ) << 0xC | ( thirdByte & 0x3F ) << 0x6 | ( fourthByte & 0x3F )
if ( tempCodePoint > 0xFFFF && tempCodePoint < 0x110000 ) {
codePoint = tempCodePoint
}
}
}
}
if ( codePoint === null ) {
// we did not generate a valid codePoint so insert a
// replacement char (U+FFFD) and advance only 1 byte
codePoint = 0xFFFD
bytesPerSequence = 1
} else if ( codePoint > 0xFFFF ) {
// encode to utf16 (surrogate pair dance)
codePoint -= 0x10000
res . push ( codePoint >>> 10 & 0x3FF | 0xD800 )
codePoint = 0xDC00 | codePoint & 0x3FF
}
res . push ( codePoint )
i += bytesPerSequence
}
return decodeCodePointsArray ( res )
}
// Based on http://stackoverflow.com/a/22747272/680742, the browser with
// the lowest limit is Chrome, with 0x10000 args.
// We go 1 magnitude less, for safety
var MAX _ARGUMENTS _LENGTH = 0x1000
function decodeCodePointsArray ( codePoints ) {
var len = codePoints . length
if ( len <= MAX _ARGUMENTS _LENGTH ) {
return String . fromCharCode . apply ( String , codePoints ) // avoid extra slice()
}
// Decode in chunks to avoid "call stack size exceeded".
var res = ''
var i = 0
while ( i < len ) {
res += String . fromCharCode . apply (
String ,
codePoints . slice ( i , i += MAX _ARGUMENTS _LENGTH )
)
}
return res
}
function asciiSlice ( buf , start , end ) {
var ret = ''
end = Math . min ( buf . length , end )
for ( var i = start ; i < end ; ++ i ) {
ret += String . fromCharCode ( buf [ i ] & 0x7F )
}
return ret
}
function latin1Slice ( buf , start , end ) {
var ret = ''
end = Math . min ( buf . length , end )
for ( var i = start ; i < end ; ++ i ) {
ret += String . fromCharCode ( buf [ i ] )
}
return ret
}
function hexSlice ( buf , start , end ) {
var len = buf . length
if ( ! start || start < 0 ) start = 0
if ( ! end || end < 0 || end > len ) end = len
var out = ''
for ( var i = start ; i < end ; ++ i ) {
out += toHex ( buf [ i ] )
}
return out
}
function utf16leSlice ( buf , start , end ) {
var bytes = buf . slice ( start , end )
var res = ''
for ( var i = 0 ; i < bytes . length ; i += 2 ) {
res += String . fromCharCode ( bytes [ i ] + bytes [ i + 1 ] * 256 )
}
return res
}
Buffer . prototype . slice = function slice ( start , end ) {
var len = this . length
start = ~ ~ start
end = end === undefined ? len : ~ ~ end
if ( start < 0 ) {
start += len
if ( start < 0 ) start = 0
} else if ( start > len ) {
start = len
}
if ( end < 0 ) {
end += len
if ( end < 0 ) end = 0
} else if ( end > len ) {
end = len
}
if ( end < start ) end = start
var newBuf
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
newBuf = this . subarray ( start , end )
newBuf . _ _proto _ _ = Buffer . prototype
} else {
var sliceLen = end - start
newBuf = new Buffer ( sliceLen , undefined )
for ( var i = 0 ; i < sliceLen ; ++ i ) {
newBuf [ i ] = this [ i + start ]
}
}
return newBuf
}
/ *
* Need to make sure that buffer isn ' t trying to write out of bounds .
* /
function checkOffset ( offset , ext , length ) {
if ( ( offset % 1 ) !== 0 || offset < 0 ) throw new RangeError ( 'offset is not uint' )
if ( offset + ext > length ) throw new RangeError ( 'Trying to access beyond buffer length' )
}
Buffer . prototype . readUIntLE = function readUIntLE ( offset , byteLength , noAssert ) {
offset = offset | 0
byteLength = byteLength | 0
if ( ! noAssert ) checkOffset ( offset , byteLength , this . length )
var val = this [ offset ]
var mul = 1
var i = 0
while ( ++ i < byteLength && ( mul *= 0x100 ) ) {
val += this [ offset + i ] * mul
}
return val
}
Buffer . prototype . readUIntBE = function readUIntBE ( offset , byteLength , noAssert ) {
offset = offset | 0
byteLength = byteLength | 0
if ( ! noAssert ) {
checkOffset ( offset , byteLength , this . length )
}
var val = this [ offset + -- byteLength ]
var mul = 1
while ( byteLength > 0 && ( mul *= 0x100 ) ) {
val += this [ offset + -- byteLength ] * mul
}
return val
}
Buffer . prototype . readUInt8 = function readUInt8 ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 1 , this . length )
return this [ offset ]
}
Buffer . prototype . readUInt16LE = function readUInt16LE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 2 , this . length )
return this [ offset ] | ( this [ offset + 1 ] << 8 )
}
Buffer . prototype . readUInt16BE = function readUInt16BE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 2 , this . length )
return ( this [ offset ] << 8 ) | this [ offset + 1 ]
}
Buffer . prototype . readUInt32LE = function readUInt32LE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 4 , this . length )
return ( ( this [ offset ] ) |
( this [ offset + 1 ] << 8 ) |
( this [ offset + 2 ] << 16 ) ) +
( this [ offset + 3 ] * 0x1000000 )
}
Buffer . prototype . readUInt32BE = function readUInt32BE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 4 , this . length )
return ( this [ offset ] * 0x1000000 ) +
( ( this [ offset + 1 ] << 16 ) |
( this [ offset + 2 ] << 8 ) |
this [ offset + 3 ] )
}
Buffer . prototype . readIntLE = function readIntLE ( offset , byteLength , noAssert ) {
offset = offset | 0
byteLength = byteLength | 0
if ( ! noAssert ) checkOffset ( offset , byteLength , this . length )
var val = this [ offset ]
var mul = 1
var i = 0
while ( ++ i < byteLength && ( mul *= 0x100 ) ) {
val += this [ offset + i ] * mul
}
mul *= 0x80
if ( val >= mul ) val -= Math . pow ( 2 , 8 * byteLength )
return val
}
Buffer . prototype . readIntBE = function readIntBE ( offset , byteLength , noAssert ) {
offset = offset | 0
byteLength = byteLength | 0
if ( ! noAssert ) checkOffset ( offset , byteLength , this . length )
var i = byteLength
var mul = 1
var val = this [ offset + -- i ]
while ( i > 0 && ( mul *= 0x100 ) ) {
val += this [ offset + -- i ] * mul
}
mul *= 0x80
if ( val >= mul ) val -= Math . pow ( 2 , 8 * byteLength )
return val
}
Buffer . prototype . readInt8 = function readInt8 ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 1 , this . length )
if ( ! ( this [ offset ] & 0x80 ) ) return ( this [ offset ] )
return ( ( 0xff - this [ offset ] + 1 ) * - 1 )
}
Buffer . prototype . readInt16LE = function readInt16LE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 2 , this . length )
var val = this [ offset ] | ( this [ offset + 1 ] << 8 )
return ( val & 0x8000 ) ? val | 0xFFFF0000 : val
}
Buffer . prototype . readInt16BE = function readInt16BE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 2 , this . length )
var val = this [ offset + 1 ] | ( this [ offset ] << 8 )
return ( val & 0x8000 ) ? val | 0xFFFF0000 : val
}
Buffer . prototype . readInt32LE = function readInt32LE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 4 , this . length )
return ( this [ offset ] ) |
( this [ offset + 1 ] << 8 ) |
( this [ offset + 2 ] << 16 ) |
( this [ offset + 3 ] << 24 )
}
Buffer . prototype . readInt32BE = function readInt32BE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 4 , this . length )
return ( this [ offset ] << 24 ) |
( this [ offset + 1 ] << 16 ) |
( this [ offset + 2 ] << 8 ) |
( this [ offset + 3 ] )
}
Buffer . prototype . readFloatLE = function readFloatLE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 4 , this . length )
return ieee754 . read ( this , offset , true , 23 , 4 )
}
Buffer . prototype . readFloatBE = function readFloatBE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 4 , this . length )
return ieee754 . read ( this , offset , false , 23 , 4 )
}
Buffer . prototype . readDoubleLE = function readDoubleLE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 8 , this . length )
return ieee754 . read ( this , offset , true , 52 , 8 )
}
Buffer . prototype . readDoubleBE = function readDoubleBE ( offset , noAssert ) {
if ( ! noAssert ) checkOffset ( offset , 8 , this . length )
return ieee754 . read ( this , offset , false , 52 , 8 )
}
function checkInt ( buf , value , offset , ext , max , min ) {
if ( ! Buffer . isBuffer ( buf ) ) throw new TypeError ( '"buffer" argument must be a Buffer instance' )
if ( value > max || value < min ) throw new RangeError ( '"value" argument is out of bounds' )
if ( offset + ext > buf . length ) throw new RangeError ( 'Index out of range' )
}
Buffer . prototype . writeUIntLE = function writeUIntLE ( value , offset , byteLength , noAssert ) {
value = + value
offset = offset | 0
byteLength = byteLength | 0
if ( ! noAssert ) {
var maxBytes = Math . pow ( 2 , 8 * byteLength ) - 1
checkInt ( this , value , offset , byteLength , maxBytes , 0 )
}
var mul = 1
var i = 0
this [ offset ] = value & 0xFF
while ( ++ i < byteLength && ( mul *= 0x100 ) ) {
this [ offset + i ] = ( value / mul ) & 0xFF
}
return offset + byteLength
}
Buffer . prototype . writeUIntBE = function writeUIntBE ( value , offset , byteLength , noAssert ) {
value = + value
offset = offset | 0
byteLength = byteLength | 0
if ( ! noAssert ) {
var maxBytes = Math . pow ( 2 , 8 * byteLength ) - 1
checkInt ( this , value , offset , byteLength , maxBytes , 0 )
}
var i = byteLength - 1
var mul = 1
this [ offset + i ] = value & 0xFF
while ( -- i >= 0 && ( mul *= 0x100 ) ) {
this [ offset + i ] = ( value / mul ) & 0xFF
}
return offset + byteLength
}
Buffer . prototype . writeUInt8 = function writeUInt8 ( value , offset , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) checkInt ( this , value , offset , 1 , 0xff , 0 )
if ( ! Buffer . TYPED _ARRAY _SUPPORT ) value = Math . floor ( value )
this [ offset ] = ( value & 0xff )
return offset + 1
}
function objectWriteUInt16 ( buf , value , offset , littleEndian ) {
if ( value < 0 ) value = 0xffff + value + 1
for ( var i = 0 , j = Math . min ( buf . length - offset , 2 ) ; i < j ; ++ i ) {
buf [ offset + i ] = ( value & ( 0xff << ( 8 * ( littleEndian ? i : 1 - i ) ) ) ) >>>
( littleEndian ? i : 1 - i ) * 8
}
}
Buffer . prototype . writeUInt16LE = function writeUInt16LE ( value , offset , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) checkInt ( this , value , offset , 2 , 0xffff , 0 )
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
this [ offset ] = ( value & 0xff )
this [ offset + 1 ] = ( value >>> 8 )
} else {
objectWriteUInt16 ( this , value , offset , true )
}
return offset + 2
}
Buffer . prototype . writeUInt16BE = function writeUInt16BE ( value , offset , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) checkInt ( this , value , offset , 2 , 0xffff , 0 )
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
this [ offset ] = ( value >>> 8 )
this [ offset + 1 ] = ( value & 0xff )
} else {
objectWriteUInt16 ( this , value , offset , false )
}
return offset + 2
}
function objectWriteUInt32 ( buf , value , offset , littleEndian ) {
if ( value < 0 ) value = 0xffffffff + value + 1
for ( var i = 0 , j = Math . min ( buf . length - offset , 4 ) ; i < j ; ++ i ) {
buf [ offset + i ] = ( value >>> ( littleEndian ? i : 3 - i ) * 8 ) & 0xff
}
}
Buffer . prototype . writeUInt32LE = function writeUInt32LE ( value , offset , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) checkInt ( this , value , offset , 4 , 0xffffffff , 0 )
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
this [ offset + 3 ] = ( value >>> 24 )
this [ offset + 2 ] = ( value >>> 16 )
this [ offset + 1 ] = ( value >>> 8 )
this [ offset ] = ( value & 0xff )
} else {
objectWriteUInt32 ( this , value , offset , true )
}
return offset + 4
}
Buffer . prototype . writeUInt32BE = function writeUInt32BE ( value , offset , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) checkInt ( this , value , offset , 4 , 0xffffffff , 0 )
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
this [ offset ] = ( value >>> 24 )
this [ offset + 1 ] = ( value >>> 16 )
this [ offset + 2 ] = ( value >>> 8 )
this [ offset + 3 ] = ( value & 0xff )
} else {
objectWriteUInt32 ( this , value , offset , false )
}
return offset + 4
}
Buffer . prototype . writeIntLE = function writeIntLE ( value , offset , byteLength , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) {
var limit = Math . pow ( 2 , 8 * byteLength - 1 )
checkInt ( this , value , offset , byteLength , limit - 1 , - limit )
}
var i = 0
var mul = 1
var sub = 0
this [ offset ] = value & 0xFF
while ( ++ i < byteLength && ( mul *= 0x100 ) ) {
if ( value < 0 && sub === 0 && this [ offset + i - 1 ] !== 0 ) {
sub = 1
}
this [ offset + i ] = ( ( value / mul ) >> 0 ) - sub & 0xFF
}
return offset + byteLength
}
Buffer . prototype . writeIntBE = function writeIntBE ( value , offset , byteLength , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) {
var limit = Math . pow ( 2 , 8 * byteLength - 1 )
checkInt ( this , value , offset , byteLength , limit - 1 , - limit )
}
var i = byteLength - 1
var mul = 1
var sub = 0
this [ offset + i ] = value & 0xFF
while ( -- i >= 0 && ( mul *= 0x100 ) ) {
if ( value < 0 && sub === 0 && this [ offset + i + 1 ] !== 0 ) {
sub = 1
}
this [ offset + i ] = ( ( value / mul ) >> 0 ) - sub & 0xFF
}
return offset + byteLength
}
Buffer . prototype . writeInt8 = function writeInt8 ( value , offset , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) checkInt ( this , value , offset , 1 , 0x7f , - 0x80 )
if ( ! Buffer . TYPED _ARRAY _SUPPORT ) value = Math . floor ( value )
if ( value < 0 ) value = 0xff + value + 1
this [ offset ] = ( value & 0xff )
return offset + 1
}
Buffer . prototype . writeInt16LE = function writeInt16LE ( value , offset , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) checkInt ( this , value , offset , 2 , 0x7fff , - 0x8000 )
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
this [ offset ] = ( value & 0xff )
this [ offset + 1 ] = ( value >>> 8 )
} else {
objectWriteUInt16 ( this , value , offset , true )
}
return offset + 2
}
Buffer . prototype . writeInt16BE = function writeInt16BE ( value , offset , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) checkInt ( this , value , offset , 2 , 0x7fff , - 0x8000 )
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
this [ offset ] = ( value >>> 8 )
this [ offset + 1 ] = ( value & 0xff )
} else {
objectWriteUInt16 ( this , value , offset , false )
}
return offset + 2
}
Buffer . prototype . writeInt32LE = function writeInt32LE ( value , offset , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) checkInt ( this , value , offset , 4 , 0x7fffffff , - 0x80000000 )
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
this [ offset ] = ( value & 0xff )
this [ offset + 1 ] = ( value >>> 8 )
this [ offset + 2 ] = ( value >>> 16 )
this [ offset + 3 ] = ( value >>> 24 )
} else {
objectWriteUInt32 ( this , value , offset , true )
}
return offset + 4
}
Buffer . prototype . writeInt32BE = function writeInt32BE ( value , offset , noAssert ) {
value = + value
offset = offset | 0
if ( ! noAssert ) checkInt ( this , value , offset , 4 , 0x7fffffff , - 0x80000000 )
if ( value < 0 ) value = 0xffffffff + value + 1
if ( Buffer . TYPED _ARRAY _SUPPORT ) {
this [ offset ] = ( value >>> 24 )
this [ offset + 1 ] = ( value >>> 16 )
this [ offset + 2 ] = ( value >>> 8 )
this [ offset + 3 ] = ( value & 0xff )
} else {
objectWriteUInt32 ( this , value , offset , false )
}
return offset + 4
}
function checkIEEE754 ( buf , value , offset , ext , max , min ) {
if ( offset + ext > buf . length ) throw new RangeError ( 'Index out of range' )
if ( offset < 0 ) throw new RangeError ( 'Index out of range' )
}
function writeFloat ( buf , value , offset , littleEndian , noAssert ) {
if ( ! noAssert ) {
checkIEEE754 ( buf , value , offset , 4 , 3.4028234663852886 e + 38 , - 3.4028234663852886 e + 38 )
}
ieee754 . write ( buf , value , offset , littleEndian , 23 , 4 )
return offset + 4
}
Buffer . prototype . writeFloatLE = function writeFloatLE ( value , offset , noAssert ) {
return writeFloat ( this , value , offset , true , noAssert )
}
Buffer . prototype . writeFloatBE = function writeFloatBE ( value , offset , noAssert ) {
return writeFloat ( this , value , offset , false , noAssert )
}
function writeDouble ( buf , value , offset , littleEndian , noAssert ) {
if ( ! noAssert ) {
checkIEEE754 ( buf , value , offset , 8 , 1.7976931348623157 E + 308 , - 1.7976931348623157 E + 308 )
}
ieee754 . write ( buf , value , offset , littleEndian , 52 , 8 )
return offset + 8
}
Buffer . prototype . writeDoubleLE = function writeDoubleLE ( value , offset , noAssert ) {
return writeDouble ( this , value , offset , true , noAssert )
}
Buffer . prototype . writeDoubleBE = function writeDoubleBE ( value , offset , noAssert ) {
return writeDouble ( this , value , offset , false , noAssert )
}
// copy(targetBuffer, targetStart=0, sourceStart=0, sourceEnd=buffer.length)
Buffer . prototype . copy = function copy ( target , targetStart , start , end ) {
if ( ! start ) start = 0
if ( ! end && end !== 0 ) end = this . length
if ( targetStart >= target . length ) targetStart = target . length
if ( ! targetStart ) targetStart = 0
if ( end > 0 && end < start ) end = start
// Copy 0 bytes; we're done
if ( end === start ) return 0
if ( target . length === 0 || this . length === 0 ) return 0
// Fatal error conditions
if ( targetStart < 0 ) {
throw new RangeError ( 'targetStart out of bounds' )
}
if ( start < 0 || start >= this . length ) throw new RangeError ( 'sourceStart out of bounds' )
if ( end < 0 ) throw new RangeError ( 'sourceEnd out of bounds' )
// Are we oob?
if ( end > this . length ) end = this . length
if ( target . length - targetStart < end - start ) {
end = target . length - targetStart + start
}
var len = end - start
var i
if ( this === target && start < targetStart && targetStart < end ) {
// descending copy from end
for ( i = len - 1 ; i >= 0 ; -- i ) {
target [ i + targetStart ] = this [ i + start ]
}
} else if ( len < 1000 || ! Buffer . TYPED _ARRAY _SUPPORT ) {
// ascending copy from start
for ( i = 0 ; i < len ; ++ i ) {
target [ i + targetStart ] = this [ i + start ]
}
} else {
Uint8Array . prototype . set . call (
target ,
this . subarray ( start , start + len ) ,
targetStart
)
}
return len
}
// Usage:
// buffer.fill(number[, offset[, end]])
// buffer.fill(buffer[, offset[, end]])
// buffer.fill(string[, offset[, end]][, encoding])
Buffer . prototype . fill = function fill ( val , start , end , encoding ) {
// Handle string cases:
if ( typeof val === 'string' ) {
if ( typeof start === 'string' ) {
encoding = start
start = 0
end = this . length
} else if ( typeof end === 'string' ) {
encoding = end
end = this . length
}
if ( val . length === 1 ) {
var code = val . charCodeAt ( 0 )
if ( code < 256 ) {
val = code
}
}
if ( encoding !== undefined && typeof encoding !== 'string' ) {
throw new TypeError ( 'encoding must be a string' )
}
if ( typeof encoding === 'string' && ! Buffer . isEncoding ( encoding ) ) {
throw new TypeError ( 'Unknown encoding: ' + encoding )
}
} else if ( typeof val === 'number' ) {
val = val & 255
}
// Invalid ranges are not set to a default, so can range check early.
if ( start < 0 || this . length < start || this . length < end ) {
throw new RangeError ( 'Out of range index' )
}
if ( end <= start ) {
return this
}
start = start >>> 0
end = end === undefined ? this . length : end >>> 0
if ( ! val ) val = 0
var i
if ( typeof val === 'number' ) {
for ( i = start ; i < end ; ++ i ) {
this [ i ] = val
}
} else {
var bytes = Buffer . isBuffer ( val )
? val
: utf8ToBytes ( new Buffer ( val , encoding ) . toString ( ) )
var len = bytes . length
for ( i = 0 ; i < end - start ; ++ i ) {
this [ i + start ] = bytes [ i % len ]
}
}
return this
}
// HELPER FUNCTIONS
// ================
var INVALID _BASE64 _RE = /[^+\/0-9A-Za-z-_]/g
function base64clean ( str ) {
// Node strips out invalid characters like \n and \t from the string, base64-js does not
str = stringtrim ( str ) . replace ( INVALID _BASE64 _RE , '' )
// Node converts strings with length < 2 to ''
if ( str . length < 2 ) return ''
// Node allows for non-padded base64 strings (missing trailing ===), base64-js does not
while ( str . length % 4 !== 0 ) {
str = str + '='
}
return str
}
function stringtrim ( str ) {
if ( str . trim ) return str . trim ( )
return str . replace ( /^\s+|\s+$/g , '' )
}
function toHex ( n ) {
if ( n < 16 ) return '0' + n . toString ( 16 )
return n . toString ( 16 )
}
function utf8ToBytes ( string , units ) {
units = units || Infinity
var codePoint
var length = string . length
var leadSurrogate = null
var bytes = [ ]
for ( var i = 0 ; i < length ; ++ i ) {
codePoint = string . charCodeAt ( i )
// is surrogate component
if ( codePoint > 0xD7FF && codePoint < 0xE000 ) {
// last char was a lead
if ( ! leadSurrogate ) {
// no lead yet
if ( codePoint > 0xDBFF ) {
// unexpected trail
if ( ( units -= 3 ) > - 1 ) bytes . push ( 0xEF , 0xBF , 0xBD )
continue
} else if ( i + 1 === length ) {
// unpaired lead
if ( ( units -= 3 ) > - 1 ) bytes . push ( 0xEF , 0xBF , 0xBD )
continue
}
// valid lead
leadSurrogate = codePoint
continue
}
// 2 leads in a row
if ( codePoint < 0xDC00 ) {
if ( ( units -= 3 ) > - 1 ) bytes . push ( 0xEF , 0xBF , 0xBD )
leadSurrogate = codePoint
continue
}
// valid surrogate pair
codePoint = ( leadSurrogate - 0xD800 << 10 | codePoint - 0xDC00 ) + 0x10000
} else if ( leadSurrogate ) {
// valid bmp char, but last char was a lead
if ( ( units -= 3 ) > - 1 ) bytes . push ( 0xEF , 0xBF , 0xBD )
}
leadSurrogate = null
// encode utf8
if ( codePoint < 0x80 ) {
if ( ( units -= 1 ) < 0 ) break
bytes . push ( codePoint )
} else if ( codePoint < 0x800 ) {
if ( ( units -= 2 ) < 0 ) break
bytes . push (
codePoint >> 0x6 | 0xC0 ,
codePoint & 0x3F | 0x80
)
} else if ( codePoint < 0x10000 ) {
if ( ( units -= 3 ) < 0 ) break
bytes . push (
codePoint >> 0xC | 0xE0 ,
codePoint >> 0x6 & 0x3F | 0x80 ,
codePoint & 0x3F | 0x80
)
} else if ( codePoint < 0x110000 ) {
if ( ( units -= 4 ) < 0 ) break
bytes . push (
codePoint >> 0x12 | 0xF0 ,
codePoint >> 0xC & 0x3F | 0x80 ,
codePoint >> 0x6 & 0x3F | 0x80 ,
codePoint & 0x3F | 0x80
)
} else {
throw new Error ( 'Invalid code point' )
}
}
return bytes
}
function asciiToBytes ( str ) {
var byteArray = [ ]
for ( var i = 0 ; i < str . length ; ++ i ) {
// Node's code seems to be doing this and not & 0x7F..
byteArray . push ( str . charCodeAt ( i ) & 0xFF )
}
return byteArray
}
function utf16leToBytes ( str , units ) {
var c , hi , lo
var byteArray = [ ]
for ( var i = 0 ; i < str . length ; ++ i ) {
if ( ( units -= 2 ) < 0 ) break
c = str . charCodeAt ( i )
hi = c >> 8
lo = c % 256
byteArray . push ( lo )
byteArray . push ( hi )
}
return byteArray
}
function base64ToBytes ( str ) {
return base64 . toByteArray ( base64clean ( str ) )
}
function blitBuffer ( src , dst , offset , length ) {
for ( var i = 0 ; i < length ; ++ i ) {
if ( ( i + offset >= dst . length ) || ( i >= src . length ) ) break
dst [ i + offset ] = src [ i ]
}
return i
}
function isnan ( val ) {
return val !== val // eslint-disable-line no-self-compare
}
/* WEBPACK VAR INJECTION */ } . call ( this , _ _webpack _require _ _ ( /*! ./../webpack/buildin/global.js */ "../node_modules/webpack/buildin/global.js" ) ) )
/***/ } ) ,
/***/ "../node_modules/buffer/node_modules/isarray/index.js" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . . / node _modules / buffer / node _modules / isarray / index . js * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports ) {
var toString = { } . toString ;
module . exports = Array . isArray || function ( arr ) {
return toString . call ( arr ) == '[object Array]' ;
} ;
/***/ } ) ,
/***/ "../node_modules/ieee754/index.js" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . . / node _modules / ieee754 / index . js * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports ) {
/*! ieee754. BSD-3-Clause License. Feross Aboukhadijeh <https://feross.org/opensource> */
exports . read = function ( buffer , offset , isLE , mLen , nBytes ) {
var e , m
var eLen = ( nBytes * 8 ) - mLen - 1
var eMax = ( 1 << eLen ) - 1
var eBias = eMax >> 1
var nBits = - 7
var i = isLE ? ( nBytes - 1 ) : 0
var d = isLE ? - 1 : 1
var s = buffer [ offset + i ]
i += d
e = s & ( ( 1 << ( - nBits ) ) - 1 )
s >>= ( - nBits )
nBits += eLen
for ( ; nBits > 0 ; e = ( e * 256 ) + buffer [ offset + i ] , i += d , nBits -= 8 ) { }
m = e & ( ( 1 << ( - nBits ) ) - 1 )
e >>= ( - nBits )
nBits += mLen
for ( ; nBits > 0 ; m = ( m * 256 ) + buffer [ offset + i ] , i += d , nBits -= 8 ) { }
if ( e === 0 ) {
e = 1 - eBias
} else if ( e === eMax ) {
return m ? NaN : ( ( s ? - 1 : 1 ) * Infinity )
} else {
m = m + Math . pow ( 2 , mLen )
e = e - eBias
}
return ( s ? - 1 : 1 ) * m * Math . pow ( 2 , e - mLen )
}
exports . write = function ( buffer , value , offset , isLE , mLen , nBytes ) {
var e , m , c
var eLen = ( nBytes * 8 ) - mLen - 1
var eMax = ( 1 << eLen ) - 1
var eBias = eMax >> 1
var rt = ( mLen === 23 ? Math . pow ( 2 , - 24 ) - Math . pow ( 2 , - 77 ) : 0 )
var i = isLE ? 0 : ( nBytes - 1 )
var d = isLE ? 1 : - 1
var s = value < 0 || ( value === 0 && 1 / value < 0 ) ? 1 : 0
value = Math . abs ( value )
if ( isNaN ( value ) || value === Infinity ) {
m = isNaN ( value ) ? 1 : 0
e = eMax
} else {
e = Math . floor ( Math . log ( value ) / Math . LN2 )
if ( value * ( c = Math . pow ( 2 , - e ) ) < 1 ) {
e --
c *= 2
}
if ( e + eBias >= 1 ) {
value += rt / c
} else {
value += rt * Math . pow ( 2 , 1 - eBias )
}
if ( value * c >= 2 ) {
e ++
c /= 2
}
if ( e + eBias >= eMax ) {
m = 0
e = eMax
} else if ( e + eBias >= 1 ) {
m = ( ( value * c ) - 1 ) * Math . pow ( 2 , mLen )
e = e + eBias
} else {
m = value * Math . pow ( 2 , eBias - 1 ) * Math . pow ( 2 , mLen )
e = 0
}
}
for ( ; mLen >= 8 ; buffer [ offset + i ] = m & 0xff , i += d , m /= 256 , mLen -= 8 ) { }
e = ( e << mLen ) | m
eLen += mLen
for ( ; eLen > 0 ; buffer [ offset + i ] = e & 0xff , i += d , e /= 256 , eLen -= 8 ) { }
buffer [ offset + i - d ] |= s * 128
}
/***/ } ) ,
/***/ "../node_modules/webpack/buildin/global.js" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . . / node _modules / webpack / buildin / global . js * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports ) {
var g ;
// This works in non-strict mode
g = ( function ( ) {
return this ;
} ) ( ) ;
try {
// This works if eval is allowed (see CSP)
g = g || new Function ( "return this" ) ( ) ;
} catch ( e ) {
// This works if the window reference is available
if ( typeof window === "object" ) g = window ;
}
// g can still be undefined, but nothing to do about it...
// We return undefined, instead of nothing here, so it's
// easier to handle this case. if(!global) { ...}
module . exports = g ;
/***/ } ) ,
/***/ "./api/addAttachedSignature.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / addAttachedSignature . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
/* WEBPACK VAR INJECTION */ ( function ( Buffer ) {
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . addAttachedSignature = void 0 ;
2022-06-23 13:13:33 +03:00
const constants _1 = _ _webpack _require _ _ ( /*! ../constants */ "./constants/index.ts" ) ;
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
const _getCadesCert _1 = _ _webpack _require _ _ ( /*! ../helpers/_getCadesCert */ "./helpers/_getCadesCert.ts" ) ;
const _getDateObj _1 = _ _webpack _require _ _ ( /*! ../helpers/_getDateObj */ "./helpers/_getDateObj.ts" ) ;
/ * *
* Добавляет присоединенную подпись к подписанному сообщению по отпечатку сертификата
*
* @ param thumbprint - отпечаток сертификата
* @ param signedMessage - подписанное сообщение
* @ returns подпись в формате PKCS # 7
* /
exports . addAttachedSignature = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( thumbprint , signedMessage ) => _ _awaiter ( void 0 , void 0 , void 0 , function * ( ) {
const { cadesplugin } = window ;
const cadesCertificate = yield _getCadesCert _1 . _getCadesCert ( thumbprint ) ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function addAttachedSignature ( ) {
let cadesAttrs ;
let cadesSignedData ;
let cadesSigner ;
try {
cadesAttrs = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CADESCOM.CPAttribute' ) ;
cadesSignedData = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.CadesSignedData' ) ;
cadesSigner = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.CPSigner' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при инициализации подписи' ) ;
}
const currentTime = _getDateObj _1 . _getDateObj ( new Date ( ) ) ;
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAttrs . propset _Name ( constants _1 . CADESCOM _AUTHENTICATED _ATTRIBUTE _SIGNING _TIME ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAttrs . propset _Value ( currentTime ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при установке времени подписи' ) ;
}
let messageBase64 ;
try {
messageBase64 = Buffer . from ( signedMessage ) . toString ( 'base64' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( 'Ошибка при преобразовании сообщения в Base64' ) ;
}
let cadesAuthAttrs ;
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . propset _Certificate ( cadesCertificate ) ) ;
cadesAuthAttrs = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . AuthenticatedAttributes2 ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAuthAttrs . Add ( cadesAttrs ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSignedData . propset _ContentEncoding ( cadesplugin . CADESCOM _BASE64 _TO _BINARY ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSignedData . propset _Content ( messageBase64 ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . propset _Options ( cadesplugin . CAPICOM _CERTIFICATE _INCLUDE _WHOLE _CHAIN ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при указании данных для подписи' ) ;
}
let signature ;
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSignedData . VerifyCades ( signedMessage , cadesplugin . CADESCOM _PKCS7 _TYPE ) ) ;
signature = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSignedData . CoSignCades ( cadesSigner , cadesplugin . CADESCOM _PKCS7 _TYPE ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при подписании данных' ) ;
}
return signature ;
} ) ) ;
} ) ) ;
/* WEBPACK VAR INJECTION */ } . call ( this , _ _webpack _require _ _ ( /*! ./../../node_modules/buffer/index.js */ "../node_modules/buffer/index.js" ) . Buffer ) )
/***/ } ) ,
/***/ "./api/addDetachedSignature.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / addDetachedSignature . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . addDetachedSignature = void 0 ;
2022-06-23 13:13:33 +03:00
const constants _1 = _ _webpack _require _ _ ( /*! ../constants */ "./constants/index.ts" ) ;
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
const _getCadesCert _1 = _ _webpack _require _ _ ( /*! ../helpers/_getCadesCert */ "./helpers/_getCadesCert.ts" ) ;
const _getDateObj _1 = _ _webpack _require _ _ ( /*! ../helpers/_getDateObj */ "./helpers/_getDateObj.ts" ) ;
/ * *
* Добавляет отсоединенную подпись хеша к подписанному сообщению по отпечатку сертификата
*
* @ param thumbprint - отпечаток сертификата
* @ param signedMessage - подписанное сообщение
* @ param messageHash - хеш подписываемого сообщения , сгенерированный по ГОСТ Р 34.11 - 2012 256 бит
* @ returns подпись в формате PKCS # 7
* /
exports . addDetachedSignature = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( thumbprint , signedMessage , messageHash ) => _ _awaiter ( void 0 , void 0 , void 0 , function * ( ) {
const { cadesplugin } = window ;
const cadesCertificate = yield _getCadesCert _1 . _getCadesCert ( thumbprint ) ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function addDetachedSignature ( ) {
let cadesAttrs ;
let cadesHashedData ;
let cadesSignedData ;
let cadesSigner ;
try {
cadesAttrs = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CADESCOM.CPAttribute' ) ;
cadesHashedData = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.HashedData' ) ;
cadesSignedData = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.CadesSignedData' ) ;
cadesSigner = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.CPSigner' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при инициализации подписи' ) ;
}
const currentTime = _getDateObj _1 . _getDateObj ( new Date ( ) ) ;
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAttrs . propset _Name ( constants _1 . CADESCOM _AUTHENTICATED _ATTRIBUTE _SIGNING _TIME ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAttrs . propset _Value ( currentTime ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при установке времени подписи' ) ;
}
let cadesAuthAttrs ;
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . propset _Certificate ( cadesCertificate ) ) ;
cadesAuthAttrs = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . AuthenticatedAttributes2 ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAuthAttrs . Add ( cadesAttrs ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . propset _Options ( cadesplugin . CAPICOM _CERTIFICATE _INCLUDE _WHOLE _CHAIN ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при установке сертификата' ) ;
}
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesHashedData . propset _Algorithm ( cadesplugin . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _2012 _256 ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesHashedData . SetHashValue ( messageHash ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при установке хеша' ) ;
}
let signature ;
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesSignedData . VerifyHash ( cadesHashedData , signedMessage , cadesplugin . CADESCOM _PKCS7 _TYPE ) ) ;
signature =
_generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesSignedData . CoSignHash ( cadesHashedData , cadesSigner , cadesplugin . CADESCOM _PKCS7 _TYPE ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при подписании данных' ) ;
}
return signature ;
} ) ) ;
} ) ) ;
/***/ } ) ,
/***/ "./api/certificate/certificate.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / certificate / certificate . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . Certificate = void 0 ;
2022-06-23 13:13:33 +03:00
const constants _1 = _ _webpack _require _ _ ( /*! ../../constants */ "./constants/index.ts" ) ;
const exportBase64 _1 = _ _webpack _require _ _ ( /*! ./exportBase64 */ "./api/certificate/exportBase64.ts" ) ;
const getAlgorithm _1 = _ _webpack _require _ _ ( /*! ./getAlgorithm */ "./api/certificate/getAlgorithm.ts" ) ;
const getCadesProp _1 = _ _webpack _require _ _ ( /*! ./getCadesProp */ "./api/certificate/getCadesProp.ts" ) ;
const getDecodedExtendedKeyUsage _1 = _ _webpack _require _ _ ( /*! ./getDecodedExtendedKeyUsage */ "./api/certificate/getDecodedExtendedKeyUsage.ts" ) ;
const getExtendedKeyUsage _1 = _ _webpack _require _ _ ( /*! ./getExtendedKeyUsage */ "./api/certificate/getExtendedKeyUsage.ts" ) ;
const getInfo _1 = _ _webpack _require _ _ ( /*! ./getInfo */ "./api/certificate/getInfo.ts" ) ;
const hasExtendedKeyUsage _1 = _ _webpack _require _ _ ( /*! ./hasExtendedKeyUsage */ "./api/certificate/hasExtendedKeyUsage.ts" ) ;
const isValid _1 = _ _webpack _require _ _ ( /*! ./isValid */ "./api/certificate/isValid.ts" ) ;
class Certificate {
constructor ( _cadesCertificate , name , issuerName , subjectName , thumbprint , validFrom , validTo ) {
this . _cadesCertificate = _cadesCertificate ;
this . name = name ;
this . issuerName = issuerName ;
this . subjectName = subjectName ;
this . thumbprint = thumbprint ;
this . validFrom = validFrom ;
this . validTo = validTo ;
}
getOwnerInfo ( ) {
return getInfo _1 . getInfo . call ( this , constants _1 . SUBJECT _TAGS _TRANSLATIONS , 'SubjectName' ) ;
}
getIssuerInfo ( ) {
return getInfo _1 . getInfo . call ( this , constants _1 . ISSUER _TAGS _TRANSLATIONS , 'IssuerName' ) ;
}
getExtendedKeyUsage ( ) {
return getExtendedKeyUsage _1 . getExtendedKeyUsage . call ( this ) ;
}
getDecodedExtendedKeyUsage ( ) {
return getDecodedExtendedKeyUsage _1 . getDecodedExtendedKeyUsage . call ( this ) ;
}
getAlgorithm ( ) {
return getAlgorithm _1 . getAlgorithm . call ( this ) ;
}
getCadesProp ( propName ) {
return getCadesProp _1 . getCadesProp . call ( this , propName ) ;
}
isValid ( ) {
return isValid _1 . isValid . call ( this ) ;
}
exportBase64 ( ) {
return exportBase64 _1 . exportBase64 . call ( this ) ;
}
hasExtendedKeyUsage ( oids ) {
return hasExtendedKeyUsage _1 . hasExtendedKeyUsage . call ( this , oids ) ;
}
}
exports . Certificate = Certificate ;
/***/ } ) ,
/***/ "./api/certificate/exportBase64.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / certificate / exportBase64 . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . exportBase64 = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
/ * *
* Экспортирует сертификат в формате base64
*
* @ returns сертификат в формате base64
* /
exports . exportBase64 = _afterPluginsLoaded _1 . _afterPluginsLoaded ( function ( ) {
const cadesCertificate = this . _cadesCertificate ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function exportBase64 ( ) {
let base64 ;
try {
base64 = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . Export ( 0 ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при экспорте сертификата' ) ;
}
return base64 ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/certificate/getAlgorithm.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / certificate / getAlgorithm . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getAlgorithm = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
/ * *
* Возвращает информацию о б алгоритме сертификата
*
* @ returns информацию о б алгоритме и е г о OID ' е
* /
exports . getAlgorithm = _afterPluginsLoaded _1 . _afterPluginsLoaded ( function ( ) {
const cadesCertificate = this . _cadesCertificate ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function getAlgorithm ( ) {
const algorithmInfo = {
algorithm : null ,
oid : null ,
} ;
let cadesPublicKey ;
try {
cadesPublicKey = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . PublicKey ( ) ;
cadesPublicKey = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesPublicKey . Algorithm ;
algorithmInfo . algorithm = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesPublicKey . FriendlyName ;
algorithmInfo . oid = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesPublicKey . Value ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при получении алгоритма' ) ;
}
return algorithmInfo ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/certificate/getCadesProp.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / certificate / getCadesProp . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getCadesProp = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
/ * *
* Возвращает указанное внутренее свойство у сертификата в формате Cades
*
* @ param propName = наименование свойства
* @ returns значение запрошенного свойства
* /
exports . getCadesProp = _afterPluginsLoaded _1 . _afterPluginsLoaded ( function ( propName ) {
const cadesCertificate = this . _cadesCertificate ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function getCadesProp ( ) {
let propertyValue ;
try {
propertyValue = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate [ propName ] ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при обращении к свойству сертификата' ) ;
}
return propertyValue ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/certificate/getDecodedExtendedKeyUsage.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / certificate / getDecodedExtendedKeyUsage . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getDecodedExtendedKeyUsage = void 0 ;
2022-06-23 13:13:33 +03:00
const constants _1 = _ _webpack _require _ _ ( /*! ../../constants */ "./constants/index.ts" ) ;
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
/ * *
* Возвращает расшифрованные ОИД ' ы сертификата
*
* @ returns словарь расшифрованных ОИД ' ов
* /
exports . getDecodedExtendedKeyUsage = _afterPluginsLoaded _1 . _afterPluginsLoaded ( function ( ) {
return _ _awaiter ( this , void 0 , void 0 , function * ( ) {
const certificateOids = yield this . getExtendedKeyUsage ( ) ;
return certificateOids . reduce ( ( decodedOids , oidCode ) => ( Object . assign ( Object . assign ( { } , decodedOids ) , { [ oidCode ] : constants _1 . OIDS _DICTIONARY [ oidCode ] || null } ) ) , { } ) ;
} ) ;
} ) ;
/***/ } ) ,
/***/ "./api/certificate/getExtendedKeyUsage.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / certificate / getExtendedKeyUsage . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getExtendedKeyUsage = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
/ * *
* Возвращает ОИД ' ы сертификата
*
* @ returns список ОИД ' ов
* /
exports . getExtendedKeyUsage = _afterPluginsLoaded _1 . _afterPluginsLoaded ( function ( ) {
const cadesCertificate = this . _cadesCertificate ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function getExtendedKeyUsage ( ) {
const OIDS = [ ] ;
let count ;
try {
count = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . ExtendedKeyUsage ( ) ;
count = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + count . EKUs ;
count = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + count . Count ;
if ( count > 0 ) {
while ( count > 0 ) {
let cadesExtendedKeyUsage ;
cadesExtendedKeyUsage = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . ExtendedKeyUsage ( ) ;
cadesExtendedKeyUsage = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesExtendedKeyUsage . EKUs ;
cadesExtendedKeyUsage = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesExtendedKeyUsage . Item ( count ) ;
cadesExtendedKeyUsage = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesExtendedKeyUsage . OID ;
OIDS . push ( cadesExtendedKeyUsage ) ;
count -- ;
}
}
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || "Ошибка при получении ОИД'ов" ) ;
}
return OIDS ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/certificate/getInfo.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / certificate / getInfo . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getInfo = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _parseCertInfo _1 = _ _webpack _require _ _ ( /*! ../../helpers/_parseCertInfo */ "./helpers/_parseCertInfo.ts" ) ;
const getCadesProp _1 = _ _webpack _require _ _ ( /*! ./getCadesProp */ "./api/certificate/getCadesProp.ts" ) ;
/ * *
* Возвращает расшифрованную информацию о сертификате из указанного свойства по тэгам
*
* @ param tags = словарь
* @ param entitiesPath = путь к разбираемой сущности
* @ returns расшифрованная информация по отдельным тэгам
* /
exports . getInfo = _afterPluginsLoaded _1 . _afterPluginsLoaded ( function ( tags , entitiesPath ) {
return _ _awaiter ( this , void 0 , void 0 , function * ( ) {
let entities ;
try {
entities = yield getCadesProp _1 . getCadesProp . call ( this , entitiesPath ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при извлечении информации из сертификата' ) ;
}
return _parseCertInfo _1 . _parseCertInfo ( tags , entities ) ;
} ) ;
} ) ;
/***/ } ) ,
/***/ "./api/certificate/hasExtendedKeyUsage.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / certificate / hasExtendedKeyUsage . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . hasExtendedKeyUsage = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
/ * *
* Проверяет наличие ОИД 'а (ОИД' ов ) у сертификата
*
* @ param oids - ОИД ' ы для проверки
* @ returns флаг наличия ОИД ' ов у сертификата
* /
exports . hasExtendedKeyUsage = _afterPluginsLoaded _1 . _afterPluginsLoaded ( function ( oids ) {
return _ _awaiter ( this , void 0 , void 0 , function * ( ) {
const certOids = yield this . getExtendedKeyUsage ( ) ;
let result ;
if ( Array . isArray ( oids ) ) {
result = oids . every ( ( oidToCheck ) => certOids . some ( ( certOid ) => certOid === oidToCheck ) ) ;
}
else {
result = certOids . some ( ( certOid ) => certOid === oids ) ;
}
return result ;
} ) ;
} ) ;
/***/ } ) ,
/***/ "./api/certificate/index.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / certificate / index . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
2022-11-11 19:40:20 +03:00
var _ _createBinding = ( this && this . _ _createBinding ) || ( Object . create ? ( function ( o , m , k , k2 ) {
if ( k2 === undefined ) k2 = k ;
Object . defineProperty ( o , k2 , { enumerable : true , get : function ( ) { return m [ k ] ; } } ) ;
} ) : ( function ( o , m , k , k2 ) {
if ( k2 === undefined ) k2 = k ;
o [ k2 ] = m [ k ] ;
} ) ) ;
var _ _exportStar = ( this && this . _ _exportStar ) || function ( m , exports ) {
for ( var p in m ) if ( p !== "default" && ! exports . hasOwnProperty ( p ) ) _ _createBinding ( exports , m , p ) ;
} ;
2022-06-23 13:13:33 +03:00
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
_ _exportStar ( _ _webpack _require _ _ ( /*! ./certificate */ "./api/certificate/certificate.ts" ) , exports ) ;
2022-06-23 13:13:33 +03:00
/***/ } ) ,
/***/ "./api/certificate/isValid.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / certificate / isValid . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . isValid = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
/ * *
* Проверяет действительность сертификата
*
* @ returns флаг валидности
* /
exports . isValid = _afterPluginsLoaded _1 . _afterPluginsLoaded ( function ( ) {
const cadesCertificate = this . _cadesCertificate ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function isValid ( ) {
let isValid ;
try {
isValid = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . IsValid ( ) ;
isValid = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + isValid . Result ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при проверке сертификата' ) ;
}
return Boolean ( isValid ) ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/createAttachedSignature.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / createAttachedSignature . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
/* WEBPACK VAR INJECTION */ ( function ( Buffer ) {
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . createAttachedSignature = void 0 ;
2022-06-23 13:13:33 +03:00
const constants _1 = _ _webpack _require _ _ ( /*! ../constants */ "./constants/index.ts" ) ;
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
const _getCadesCert _1 = _ _webpack _require _ _ ( /*! ../helpers/_getCadesCert */ "./helpers/_getCadesCert.ts" ) ;
const _getDateObj _1 = _ _webpack _require _ _ ( /*! ../helpers/_getDateObj */ "./helpers/_getDateObj.ts" ) ;
/ * *
* Создает присоединенную подпись сообщения по отпечатку сертификата
*
* @ param thumbprint - отпечаток сертификата
* @ param message - подписываемое сообщение
* @ returns подпись в формате PKCS # 7
* /
exports . createAttachedSignature = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( thumbprint , unencryptedMessage ) => _ _awaiter ( void 0 , void 0 , void 0 , function * ( ) {
const { cadesplugin } = window ;
const cadesCertificate = yield _getCadesCert _1 . _getCadesCert ( thumbprint ) ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function createAttachedSignature ( ) {
let cadesAttrs ;
let cadesSignedData ;
let cadesSigner ;
try {
cadesAttrs = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CADESCOM.CPAttribute' ) ;
cadesSignedData = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.CadesSignedData' ) ;
cadesSigner = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.CPSigner' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при инициализации подписи' ) ;
}
const currentTime = _getDateObj _1 . _getDateObj ( new Date ( ) ) ;
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAttrs . propset _Name ( constants _1 . CADESCOM _AUTHENTICATED _ATTRIBUTE _SIGNING _TIME ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAttrs . propset _Value ( currentTime ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при установке времени подписи' ) ;
}
let messageBase64 ;
try {
messageBase64 = Buffer . from ( unencryptedMessage ) . toString ( 'base64' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( 'Ошибка при преобразовании сообщения в Base64' ) ;
}
let cadesAuthAttrs ;
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . propset _Certificate ( cadesCertificate ) ) ;
cadesAuthAttrs = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . AuthenticatedAttributes2 ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAuthAttrs . Add ( cadesAttrs ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSignedData . propset _ContentEncoding ( cadesplugin . CADESCOM _BASE64 _TO _BINARY ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSignedData . propset _Content ( messageBase64 ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . propset _Options ( cadesplugin . CAPICOM _CERTIFICATE _INCLUDE _WHOLE _CHAIN ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при указании данных для подписи' ) ;
}
let signature ;
try {
signature = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSignedData . SignCades ( cadesSigner , cadesplugin . CADESCOM _PKCS7 _TYPE ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при подписании данных' ) ;
}
return signature ;
} ) ) ;
} ) ) ;
/* WEBPACK VAR INJECTION */ } . call ( this , _ _webpack _require _ _ ( /*! ./../../node_modules/buffer/index.js */ "../node_modules/buffer/index.js" ) . Buffer ) )
/***/ } ) ,
/***/ "./api/createDetachedSignature.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / createDetachedSignature . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . createDetachedSignature = void 0 ;
2022-06-23 13:13:33 +03:00
const constants _1 = _ _webpack _require _ _ ( /*! ../constants */ "./constants/index.ts" ) ;
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
const _getCadesCert _1 = _ _webpack _require _ _ ( /*! ../helpers/_getCadesCert */ "./helpers/_getCadesCert.ts" ) ;
const _getDateObj _1 = _ _webpack _require _ _ ( /*! ../helpers/_getDateObj */ "./helpers/_getDateObj.ts" ) ;
/ * *
* Создает отсоединенную подпись хеша по отпечатку сертификата
*
* @ param thumbprint - отпечаток сертификата
* @ param messageHash - хеш подписываемого сообщения , сгенерированный по ГОСТ Р 34.11 - 2012 256 бит
* @ returns подпись в формате PKCS # 7
* /
exports . createDetachedSignature = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( thumbprint , messageHash ) => _ _awaiter ( void 0 , void 0 , void 0 , function * ( ) {
const { cadesplugin } = window ;
const cadesCertificate = yield _getCadesCert _1 . _getCadesCert ( thumbprint ) ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function createDetachedSignature ( ) {
let cadesAttrs ;
let cadesHashedData ;
let cadesSignedData ;
let cadesSigner ;
try {
cadesAttrs = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CADESCOM.CPAttribute' ) ;
cadesHashedData = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.HashedData' ) ;
cadesSignedData = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.CadesSignedData' ) ;
cadesSigner = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.CPSigner' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при инициализации подписи' ) ;
}
const currentTime = _getDateObj _1 . _getDateObj ( new Date ( ) ) ;
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAttrs . propset _Name ( constants _1 . CADESCOM _AUTHENTICATED _ATTRIBUTE _SIGNING _TIME ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAttrs . propset _Value ( currentTime ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при установке времени подписи' ) ;
}
let cadesAuthAttrs ;
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . propset _Certificate ( cadesCertificate ) ) ;
cadesAuthAttrs = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . AuthenticatedAttributes2 ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAuthAttrs . Add ( cadesAttrs ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . propset _Options ( cadesplugin . CAPICOM _CERTIFICATE _INCLUDE _WHOLE _CHAIN ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при установке сертификата' ) ;
}
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesHashedData . propset _Algorithm ( cadesplugin . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _2012 _256 ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesHashedData . SetHashValue ( messageHash ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при установке хеша' ) ;
}
let signature ;
try {
signature =
_generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesSignedData . SignHash ( cadesHashedData , cadesSigner , cadesplugin . CADESCOM _PKCS7 _TYPE ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при подписании данных' ) ;
}
return signature ;
} ) ) ;
} ) ) ;
/***/ } ) ,
/***/ "./api/createHash.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / createHash . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
/* WEBPACK VAR INJECTION */ ( function ( Buffer ) {
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . createHash = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
/ * *
* Создает хеш сообщения по ГОСТ Р 34.11 - 2012 256 бит
* https : //ru.wikipedia.org/wiki/%D0%A1%D1%82%D1%80%D0%B8%D0%B1%D0%BE%D0%B3_(%D1%85%D0%B5%D1%88-%D1%84%D1%83%D0%BD%D0%BA%D1%86%D0%B8%D1%8F)
*
* @ param unencryptedMessage - сообщение для хеширования
*
* @ returns хеш
* /
exports . createHash = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( unencryptedMessage ) => _ _awaiter ( void 0 , void 0 , void 0 , function * ( ) {
const { cadesplugin } = window ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function createHash ( ) {
const cadesHashedData = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.HashedData' ) ;
let messageBase64 ;
let hash ;
try {
messageBase64 = Buffer . from ( unencryptedMessage ) . toString ( 'base64' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( 'Ошибка при преобразовании сообщения в Base64' ) ;
}
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesHashedData . propset _Algorithm ( cadesplugin . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _2012 _256 ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesHashedData . propset _DataEncoding ( cadesplugin . CADESCOM _BASE64 _TO _BINARY ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesHashedData . Hash ( messageBase64 ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при инициализации хэширования' ) ;
}
try {
hash = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesHashedData . Value ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при создании хэша' ) ;
}
return hash ;
} ) ) ;
} ) ) ;
/* WEBPACK VAR INJECTION */ } . call ( this , _ _webpack _require _ _ ( /*! ./../../node_modules/buffer/index.js */ "../node_modules/buffer/index.js" ) . Buffer ) )
/***/ } ) ,
/***/ "./api/createXMLSignature.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / createXMLSignature . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . createXMLSignature = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
const _getCadesCert _1 = _ _webpack _require _ _ ( /*! ../helpers/_getCadesCert */ "./helpers/_getCadesCert.ts" ) ;
/ * *
* Создает XML подпись для документа в формате XML
*
* @ param thumbprint - отпечаток сертификата
* @ param unencryptedMessage - подписываемое сообщение в формате XML
* @ returns подпись
* /
exports . createXMLSignature = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( thumbprint , unencryptedMessage ) => _ _awaiter ( void 0 , void 0 , void 0 , function * ( ) {
const { cadesplugin } = window ;
const cadesCertificate = yield _getCadesCert _1 . _getCadesCert ( thumbprint ) ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function createXMLSignature ( ) {
let cadesSigner ;
let cadesSignedXML ;
try {
cadesSigner = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.CPSigner' ) ;
cadesSignedXML = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.SignedXML' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при инициализации подписи' ) ;
}
try {
const signatureMethod = 'urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256' ;
const digestMethod = 'urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256' ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . propset _Certificate ( cadesCertificate ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSigner . propset _CheckCertificate ( true ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSignedXML . propset _Content ( unencryptedMessage ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesSignedXML . propset _SignatureType ( cadesplugin . CADESCOM _XML _SIGNATURE _TYPE _ENVELOPED ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSignedXML . propset _SignatureMethod ( signatureMethod ) ) ;
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSignedXML . propset _DigestMethod ( digestMethod ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при указании данных для подписи' ) ;
}
let signature ;
try {
signature = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesSignedXML . Sign ( cadesSigner ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при подписании данных' ) ;
}
return signature ;
} ) ) ;
} ) ) ;
/***/ } ) ,
/***/ "./api/getAllCertificates.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / getAllCertificates . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getAllCertificates = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const getAllUserCertificates _1 = _ _webpack _require _ _ ( /*! ./getAllUserCertificates */ "./api/getAllUserCertificates.ts" ) ;
const getAllContainerCertificates _1 = _ _webpack _require _ _ ( /*! ./getAllContainerCertificates */ "./api/getAllContainerCertificates.ts" ) ;
let certificatesCache ;
/ * *
* Возвращает список сертификатов , доступных пользователю из пользовательского хранилища и закрытых ключей , не установленных в системе , без фильтрации по дате и наличию приватного ключа
*
* @ param resetCache = false - позволяет сбросить кэш ранее полученных сертификатов
* @ returns список сертификатов
* /
exports . getAllCertificates = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( resetCache = false ) => _ _awaiter ( void 0 , void 0 , void 0 , function * ( ) {
if ( ! resetCache && certificatesCache ) {
return certificatesCache ;
}
let availableCertificates ;
try {
availableCertificates = yield getAllUserCertificates _1 . getAllUserCertificates ( resetCache ) ;
}
catch ( error ) {
console . error ( error ) ;
availableCertificates = [ ] ;
}
try {
const containerAllCertificates = yield getAllContainerCertificates _1 . getAllContainerCertificates ( resetCache ) ;
if ( ! availableCertificates ) {
availableCertificates = containerAllCertificates ;
}
else {
let containerAllCertificatesCount = containerAllCertificates . length - 1 ;
let foundAvailableCertificate ;
while ( containerAllCertificatesCount ) {
foundAvailableCertificate = availableCertificates . find ( ( cert ) => cert . thumbprint === containerAllCertificates [ containerAllCertificatesCount ] . thumbprint ) ;
if ( ! foundAvailableCertificate ) {
availableCertificates . push ( containerAllCertificates [ containerAllCertificatesCount ] ) ;
}
containerAllCertificatesCount -- ;
}
}
}
catch ( error ) {
console . error ( error ) ;
}
if ( ! availableCertificates ) {
throw new Error ( 'Нет доступных сертификатов' ) ;
}
certificatesCache = availableCertificates ;
return certificatesCache ;
} ) ) ;
/***/ } ) ,
/***/ "./api/getAllContainerCertificates.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / getAllContainerCertificates . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getAllContainerCertificates = void 0 ;
2022-06-23 13:13:33 +03:00
const certificate _1 = _ _webpack _require _ _ ( /*! ./certificate */ "./api/certificate/index.ts" ) ;
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractCommonName _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractCommonName */ "./helpers/_extractCommonName.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
let certificatesCache ;
/ * *
* Начиная с версии плагина 2.0 . 13292 есть возможность получить сертификаты из закрытых ключей
* Возвращает все сертификаты без фильтрации по дате и наличию приватного ключа
*
* @ param resetCache = false - позволяет сбросить кэш ранее полученных сертификатов
* @ returns список сертификатов
* /
exports . getAllContainerCertificates = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( resetCache = false ) => {
const { cadesplugin } = window ;
if ( ! resetCache && certificatesCache ) {
return certificatesCache ;
}
return eval ( _generateCadesFn _1 . _generateCadesFn ( function getAllContainerCertificates ( ) {
let cadesStore ;
try {
cadesStore = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.Store' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при попытке доступа к хранилищу' ) ;
}
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesStore . Open ( cadesplugin . CADESCOM _CONTAINER _STORE , cadesplugin . CAPICOM _MY _STORE , cadesplugin . CAPICOM _STORE _OPEN _MAXIMUM _ALLOWED ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при открытии хранилища' ) ;
}
let cadesCertificates ;
let cadesCertificatesCount ;
try {
cadesCertificates = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesStore . Certificates ;
cadesCertificatesCount = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificates . Count ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка получения списка сертификатов' ) ;
}
if ( ! cadesCertificatesCount ) {
throw new Error ( 'Нет доступных сертификатов' ) ;
}
const certificateList = [ ] ;
try {
while ( cadesCertificatesCount ) {
const cadesCertificate = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificates . Item ( cadesCertificatesCount ) ;
certificateList . push ( new certificate _1 . Certificate ( cadesCertificate , _extractCommonName _1 . _extractCommonName ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . SubjectName ) , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . IssuerName , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . SubjectName , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . Thumbprint , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . ValidFromDate , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . ValidToDate ) ) ;
cadesCertificatesCount -- ;
}
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка обработки сертификатов' ) ;
}
cadesStore . Close ( ) ;
certificatesCache = certificateList ;
return certificatesCache ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/getAllUserCertificates.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / getAllUserCertificates . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getAllUserCertificates = void 0 ;
2022-06-23 13:13:33 +03:00
const certificate _1 = _ _webpack _require _ _ ( /*! ./certificate */ "./api/certificate/index.ts" ) ;
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractCommonName _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractCommonName */ "./helpers/_extractCommonName.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
let certificatesCache ;
/ * *
* Возвращает все сертификаты без фильтрации по дате и наличию приватного ключа
*
* @ param resetCache = false - позволяет сбросить кэш ранее полученных сертификатов
* @ returns список сертификатов
* /
exports . getAllUserCertificates = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( resetCache = false ) => {
const { cadesplugin } = window ;
if ( ! resetCache && certificatesCache ) {
return certificatesCache ;
}
return eval ( _generateCadesFn _1 . _generateCadesFn ( function getAllUserCertificates ( ) {
let cadesStore ;
try {
cadesStore = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.Store' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при попытке доступа к хранилищу' ) ;
}
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesStore . Open ( cadesplugin . CAPICOM _CURRENT _USER _STORE , cadesplugin . CAPICOM _MY _STORE , cadesplugin . CAPICOM _STORE _OPEN _MAXIMUM _ALLOWED ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при открытии хранилища' ) ;
}
let cadesCertificates ;
let cadesCertificatesCount ;
try {
cadesCertificates = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesStore . Certificates ;
cadesCertificatesCount = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificates . Count ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка получения списка сертификатов' ) ;
}
if ( ! cadesCertificatesCount ) {
throw new Error ( 'Нет доступных сертификатов' ) ;
}
const certificateList = [ ] ;
try {
while ( cadesCertificatesCount ) {
const cadesCertificate = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificates . Item ( cadesCertificatesCount ) ;
certificateList . push ( new certificate _1 . Certificate ( cadesCertificate , _extractCommonName _1 . _extractCommonName ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . SubjectName ) , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . IssuerName , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . SubjectName , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . Thumbprint , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . ValidFromDate , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . ValidToDate ) ) ;
cadesCertificatesCount -- ;
}
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка обработки сертификатов' ) ;
}
cadesStore . Close ( ) ;
certificatesCache = certificateList ;
return certificatesCache ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/getCertificate.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / getCertificate . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getCertificate = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const getCertificates _1 = _ _webpack _require _ _ ( /*! ./getCertificates */ "./api/getCertificates.ts" ) ;
const getAllCertificates _1 = _ _webpack _require _ _ ( /*! ./getAllCertificates */ "./api/getAllCertificates.ts" ) ;
/ * *
* Возвращает сертификат по отпечатку
*
* @ param thumbprint - отпечаток сертификата
* @ param validOnly - проверять сертификаты по дате и наличию приватного ключа
* @ returns сертификат
* /
exports . getCertificate = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( thumbprint , validOnly = true ) => _ _awaiter ( void 0 , void 0 , void 0 , function * ( ) {
if ( ! thumbprint ) {
throw new Error ( 'Отпечаток не указан' ) ;
}
let availableCertificates ;
if ( validOnly ) {
availableCertificates = yield getCertificates _1 . getCertificates ( ) ;
}
else {
availableCertificates = yield getAllCertificates _1 . getAllCertificates ( ) ;
}
const foundCertificate = availableCertificates . find ( ( cert ) => cert . thumbprint === thumbprint ) ;
if ( ! foundCertificate ) {
throw new Error ( ` Сертификат с отпечатком: " ${ thumbprint } " не найден ` ) ;
}
return foundCertificate ;
} ) ) ;
/***/ } ) ,
/***/ "./api/getCertificates.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / getCertificates . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getCertificates = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const getUserCertificates _1 = _ _webpack _require _ _ ( /*! ./getUserCertificates */ "./api/getUserCertificates.ts" ) ;
const getContainerCertificates _1 = _ _webpack _require _ _ ( /*! ./getContainerCertificates */ "./api/getContainerCertificates.ts" ) ;
let certificatesCache ;
/ * *
* Возвращает список сертификатов , доступных пользователю из пользовательского хранилища и закрытых ключей , не установленных в системе
*
* @ param resetCache = false - позволяет сбросить кэш ранее полученных сертификатов
* @ returns список сертификатов
* /
exports . getCertificates = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( resetCache = false ) => _ _awaiter ( void 0 , void 0 , void 0 , function * ( ) {
if ( ! resetCache && certificatesCache ) {
return certificatesCache ;
}
let availableCertificates ;
try {
availableCertificates = yield getUserCertificates _1 . getUserCertificates ( resetCache ) ;
}
catch ( error ) {
console . error ( error ) ;
availableCertificates = [ ] ;
}
try {
const containerCertificates = yield getContainerCertificates _1 . getContainerCertificates ( resetCache ) ;
if ( ! availableCertificates ) {
availableCertificates = containerCertificates ;
}
else {
let containerCertificatesCount = containerCertificates . length - 1 ;
let foundAvailableCertificate ;
while ( containerCertificatesCount ) {
foundAvailableCertificate = availableCertificates . find ( ( cert ) => cert . thumbprint === containerCertificates [ containerCertificatesCount ] . thumbprint ) ;
if ( ! foundAvailableCertificate ) {
availableCertificates . push ( containerCertificates [ containerCertificatesCount ] ) ;
}
containerCertificatesCount -- ;
}
}
}
catch ( error ) {
console . error ( error ) ;
}
if ( ! availableCertificates ) {
throw new Error ( 'Нет доступных сертификатов' ) ;
}
certificatesCache = availableCertificates ;
return certificatesCache ;
} ) ) ;
/***/ } ) ,
/***/ "./api/getContainerCertificates.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / getContainerCertificates . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getContainerCertificates = void 0 ;
2022-06-23 13:13:33 +03:00
const certificate _1 = _ _webpack _require _ _ ( /*! ./certificate */ "./api/certificate/index.ts" ) ;
const constants _1 = _ _webpack _require _ _ ( /*! ../constants */ "./constants/index.ts" ) ;
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractCommonName _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractCommonName */ "./helpers/_extractCommonName.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
let certificatesCache ;
/ * *
* Начиная с версии плагина 2.0 . 13292 есть возможность получить сертификаты из закрытых ключей
* Возвращает список сертификатов , доступных пользователю в системе
*
* @ param resetCache = false - позволяет сбросить кэш ранее полученных сертификатов
* @ returns список сертификатов
* /
exports . getContainerCertificates = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( resetCache = false ) => {
const { cadesplugin } = window ;
if ( ! resetCache && certificatesCache ) {
return certificatesCache ;
}
return eval ( _generateCadesFn _1 . _generateCadesFn ( function getContainerCertificates ( ) {
let cadesStore ;
try {
cadesStore = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.Store' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при попытке доступа к хранилищу' ) ;
}
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesStore . Open ( cadesplugin . CADESCOM _CONTAINER _STORE , cadesplugin . CAPICOM _MY _STORE , cadesplugin . CAPICOM _STORE _OPEN _MAXIMUM _ALLOWED ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при открытии хранилища' ) ;
}
let cadesCertificates ;
let cadesCertificatesCount ;
try {
cadesCertificates = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesStore . Certificates ;
if ( cadesCertificates ) {
cadesCertificates =
_generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificates . Find ( cadesplugin . CAPICOM _CERTIFICATE _FIND _TIME _VALID ) ;
/ * *
* Н е рассматриваются сертификаты , в которых отсутствует закрытый ключ
* или не действительны на данный момент
* /
cadesCertificates =
_generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesCertificates . Find ( cadesplugin . CAPICOM _CERTIFICATE _FIND _EXTENDED _PROPERTY , constants _1 . CAPICOM _PROPID _KEY _PROV _INFO ) ;
cadesCertificatesCount = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificates . Count ;
}
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка получения списка сертификатов' ) ;
}
if ( ! cadesCertificatesCount ) {
throw new Error ( 'Нет доступных сертификатов' ) ;
}
const certificateList = [ ] ;
try {
while ( cadesCertificatesCount ) {
const cadesCertificate = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificates . Item ( cadesCertificatesCount ) ;
certificateList . push ( new certificate _1 . Certificate ( cadesCertificate , _extractCommonName _1 . _extractCommonName ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . SubjectName ) , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . IssuerName , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . SubjectName , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . Thumbprint , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . ValidFromDate , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . ValidToDate ) ) ;
cadesCertificatesCount -- ;
}
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка обработки сертификатов' ) ;
}
cadesStore . Close ( ) ;
certificatesCache = certificateList ;
return certificatesCache ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/getCspVersion.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / getCspVersion . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getCspVersion = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
/ * *
* Предоставляет информацию о системе
*
* @ returns информацию о CSP
* /
exports . getCspVersion = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( ) => {
let cspVersion = null ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function getCspVersion ( ) {
let cadesAbout ;
try {
cadesAbout = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.About' ) ;
cspVersion = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAbout . CSPVersion ( ) ;
cspVersion = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cspVersion . toString ( ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при получении версии системы' ) ;
}
return cspVersion ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/getPluginVersion.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / getPluginVersion . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getPluginVersion = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
/ * *
* Предоставляет информацию о системе
*
* @ returns информацию о плагине
* /
exports . getPluginVersion = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( ) => {
let cadesVersion = null ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function getPluginVersion ( ) {
let cadesAbout ;
try {
cadesAbout = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.About' ) ;
cadesVersion = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAbout . PluginVersion ;
if ( ! cadesVersion ) {
cadesVersion = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAbout . Version ;
}
cadesVersion = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesVersion . toString ( ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при получении информации о плагине' ) ;
}
return cadesVersion ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/getSystemInfo.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / getSystemInfo . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getSystemInfo = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
/ * *
* Предоставляет информацию о системе
*
* @ returns информацию о CSP и плагине
* /
exports . getSystemInfo = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( ) => {
const sysInfo = {
cadesVersion : null ,
cspVersion : null ,
} ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function getSystemInfo ( ) {
let cadesAbout ;
try {
cadesAbout = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.About' ) ;
sysInfo . cadesVersion = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAbout . PluginVersion ;
sysInfo . cspVersion = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAbout . CSPVersion ( ) ;
if ( ! sysInfo . cadesVersion ) {
sysInfo . cadesVersion = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesAbout . Version ;
}
sysInfo . cadesVersion = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + sysInfo . cadesVersion . toString ( ) ;
sysInfo . cspVersion = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + sysInfo . cspVersion . toString ( ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при получении информации о системе' ) ;
}
return sysInfo ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/getUserCertificates.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / getUserCertificates . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . getUserCertificates = void 0 ;
2022-06-23 13:13:33 +03:00
const certificate _1 = _ _webpack _require _ _ ( /*! ./certificate */ "./api/certificate/index.ts" ) ;
const constants _1 = _ _webpack _require _ _ ( /*! ../constants */ "./constants/index.ts" ) ;
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractCommonName _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractCommonName */ "./helpers/_extractCommonName.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ../helpers/_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
let certificatesCache ;
/ * *
* Возвращает список сертификатов , доступных пользователю в системе
*
* @ param resetCache = false - позволяет сбросить кэш ранее полученных сертификатов
* @ returns список сертификатов
* /
exports . getUserCertificates = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( resetCache = false ) => {
const { cadesplugin } = window ;
if ( ! resetCache && certificatesCache ) {
return certificatesCache ;
}
return eval ( _generateCadesFn _1 . _generateCadesFn ( function getUserCertificates ( ) {
let cadesStore ;
try {
cadesStore = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.Store' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при попытке доступа к хранилищу' ) ;
}
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesStore . Open ( cadesplugin . CAPICOM _CURRENT _USER _STORE , cadesplugin . CAPICOM _MY _STORE , cadesplugin . CAPICOM _STORE _OPEN _MAXIMUM _ALLOWED ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при открытии хранилища' ) ;
}
let cadesCertificates ;
let cadesCertificatesCount ;
try {
cadesCertificates = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesStore . Certificates ;
if ( cadesCertificates ) {
cadesCertificates =
_generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificates . Find ( cadesplugin . CAPICOM _CERTIFICATE _FIND _TIME _VALID ) ;
/ * *
* Н е рассматриваются сертификаты , в которых отсутствует закрытый ключ
* или не действительны на данный момент
* /
cadesCertificates =
_generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesCertificates . Find ( cadesplugin . CAPICOM _CERTIFICATE _FIND _EXTENDED _PROPERTY , constants _1 . CAPICOM _PROPID _KEY _PROV _INFO ) ;
cadesCertificatesCount = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificates . Count ;
}
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка получения списка сертификатов' ) ;
}
if ( ! cadesCertificatesCount ) {
throw new Error ( 'Нет доступных сертификатов' ) ;
}
const certificateList = [ ] ;
try {
while ( cadesCertificatesCount ) {
const cadesCertificate = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificates . Item ( cadesCertificatesCount ) ;
certificateList . push ( new certificate _1 . Certificate ( cadesCertificate , _extractCommonName _1 . _extractCommonName ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . SubjectName ) , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . IssuerName , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . SubjectName , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . Thumbprint , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . ValidFromDate , _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificate . ValidToDate ) ) ;
cadesCertificatesCount -- ;
}
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка обработки сертификатов' ) ;
}
cadesStore . Close ( ) ;
certificatesCache = certificateList ;
return certificatesCache ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./api/index.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / index . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
2022-11-11 19:40:20 +03:00
var _ _createBinding = ( this && this . _ _createBinding ) || ( Object . create ? ( function ( o , m , k , k2 ) {
if ( k2 === undefined ) k2 = k ;
Object . defineProperty ( o , k2 , { enumerable : true , get : function ( ) { return m [ k ] ; } } ) ;
} ) : ( function ( o , m , k , k2 ) {
if ( k2 === undefined ) k2 = k ;
o [ k2 ] = m [ k ] ;
} ) ) ;
var _ _exportStar = ( this && this . _ _exportStar ) || function ( m , exports ) {
for ( var p in m ) if ( p !== "default" && ! exports . hasOwnProperty ( p ) ) _ _createBinding ( exports , m , p ) ;
} ;
2022-06-23 13:13:33 +03:00
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
_ _exportStar ( _ _webpack _require _ _ ( /*! ./getCertificate */ "./api/getCertificate.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./getUserCertificates */ "./api/getUserCertificates.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./getAllUserCertificates */ "./api/getAllUserCertificates.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./getContainerCertificates */ "./api/getContainerCertificates.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./getAllContainerCertificates */ "./api/getAllContainerCertificates.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./getCertificates */ "./api/getCertificates.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./getAllCertificates */ "./api/getAllCertificates.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./getSystemInfo */ "./api/getSystemInfo.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./isValidSystemSetup */ "./api/isValidSystemSetup.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./createXMLSignature */ "./api/createXMLSignature.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./createDetachedSignature */ "./api/createDetachedSignature.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./addDetachedSignature */ "./api/addDetachedSignature.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./createAttachedSignature */ "./api/createAttachedSignature.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./addAttachedSignature */ "./api/addAttachedSignature.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./createHash */ "./api/createHash.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./certificate */ "./api/certificate/index.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./getCspVersion */ "./api/getCspVersion.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./getPluginVersion */ "./api/getPluginVersion.ts" ) , exports ) ;
2022-06-23 13:13:33 +03:00
/***/ } ) ,
/***/ "./api/isValidSystemSetup.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / api / isValidSystemSetup . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . isValidSystemSetup = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ../helpers/_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ../helpers/_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _isSupportedCadesVersion _1 = _ _webpack _require _ _ ( /*! ../helpers/_isSupportedCadesVersion */ "./helpers/_isSupportedCadesVersion.ts" ) ;
const _isSupportedCSPVersion _1 = _ _webpack _require _ _ ( /*! ../helpers/_isSupportedCSPVersion */ "./helpers/_isSupportedCSPVersion.ts" ) ;
const getSystemInfo _1 = _ _webpack _require _ _ ( /*! ./getSystemInfo */ "./api/getSystemInfo.ts" ) ;
/ * *
* Проверяет корректность настроек ЭП на машине
*
* @ returns флаг корректности настроек
* /
exports . isValidSystemSetup = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( ) => _ _awaiter ( void 0 , void 0 , void 0 , function * ( ) {
let systemInfo ;
try {
systemInfo = yield getSystemInfo _1 . getSystemInfo ( ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Настройки ЭП на данной машине не верны' ) ;
}
if ( ! _isSupportedCadesVersion _1 . _isSupportedCadesVersion ( systemInfo . cadesVersion ) ) {
throw new Error ( 'Н е поддерживаемая версия плагина' ) ;
}
if ( ! _isSupportedCSPVersion _1 . _isSupportedCSPVersion ( systemInfo . cspVersion ) ) {
throw new Error ( 'Н е поддерживаемая версия CSP' ) ;
}
return true ;
} ) ) ;
/***/ } ) ,
/***/ "./constants/cades-constants.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / constants / cades - constants . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . XmlDsigGost3411UrlObsolete = exports . XmlDsigGost3411Url = exports . XmlDsigGost3410UrlObsolete = exports . XmlDsigGost3410Url = exports . TRUST _REVOCATION _STATUS _UNKNOWN = exports . TRUST _IS _UNTRUSTED _ROOT = exports . TRUST _IS _REVOKED = exports . TRUST _IS _PARTIAL _CHAIN = exports . TRUST _IS _NOT _VALID _FOR _USAGE = exports . TRUST _IS _NOT _TIME _VALID = exports . TRUST _IS _NOT _TIME _NESTED = exports . TRUST _IS _NOT _SIGNATURE _VALID = exports . TRUST _IS _CYCLIC = exports . TRUST _CTL _IS _NOT _VALID _FOR _USAGE = exports . TRUST _CTL _IS _NOT _TIME _VALID = exports . TRUST _CTL _IS _NOT _SIGNATURE _VALID = exports . LOG _LEVEL _INFO = exports . LOG _LEVEL _ERROR = exports . LOG _LEVEL _DEBUG = exports . CHECK _TRUSTED _ROOT = exports . CHECK _TIME _VALIDITY = exports . CHECK _SIGNATURE _VALIDITY = exports . CHECK _ONLINE _REVOCATION _STATUS = exports . CHECK _OFFLINE _REVOCATION _STATUS = exports . CHECK _NONE = exports . CAPICOM _STORE _OPEN _READ _WRITE = exports . CAPICOM _STORE _OPEN _READ _ONLY = exports . CAPICOM _STORE _OPEN _MAXIMUM _ALLOWED = exports . CAPICOM _STORE _OPEN _INCLUDE _ARCHIVED = exports . CAPICOM _STORE _OPEN _EXISTING _ONLY = exports . CAPICOM _SMART _CARD _USER _STORE = exports . CAPICOM _PROPID _UNKNOWN = exports . CAPICOM _PROPID _SUBJECT _PUBLIC _KEY _MD5 _HASH = exports . CAPICOM _PROPID _SUBJECT _NAME _MD5 _HASH = exports . CAPICOM _PROPID _SMART _CARD _DATA = exports . CAPICOM _PROPID _SIGNATURE _HASH = exports . CAPICOM _PROPID _SHA1 _HASH = exports . CAPICOM _PROPID _RENEWAL = exports . CAPICOM _PROPID _PVK _FILE = exports . CAPICOM _PROPID _PUBKEY _HASH _RESERVED = exports . CAPICOM _PROPID _PUBKEY _ALG _PARA = exports . CAPICOM _PROPID _NEXT _UPDATE _LOCATION = exports . CAPICOM _PROPID _MD5 _HASH = exports . CAPICOM _PROPID _LAST _USER = exports . CAPICOM _PROPID _LAST _RESERVED = exports . CAPICOM _PROPID _KEY _SPEC = exports . CAPICOM _PROPID _KEY _PROV _INFO = exports . CAPICOM _PROPID _KEY _PROV _HANDLE = exports . CAPICOM _PROPID _KEY _IDENTIFIER = exports . CAPICOM _PROPID _KEY _CONTEXT = exports . CAPICOM _PROPID _ISSUER _SERIAL _NUMBER _MD5 _HASH = exports . CAPICOM _PROPID _ISSUER _PUBLIC _KEY _MD5 _HASH = exports . CAPICOM _PROPID _IE30 _RESERVED = exports . CAPICOM _PROPID _HASH _PROP = exports . CAPICOM _PROPID _FRIENDLY _NAME = exports . CAPICOM _PROPID _FORTEZZA _DATA = exports . CAPICOM _PROPID _FIRST _USER = exports . CAPICOM _PROPID _FIRST _RESERVED = exports . CAPICOM _PROPID _EXTENDED _ERROR _INFO = exports . CAPICOM _PROPID _ENROLLMENT = exports . CAPICOM _PROPID _ENHKEY _USAGE = exports . CAPICOM _PROPID _EFS = exports . CAPICOM _PROPID _DESCRIPTION = exports . CAPICOM _PROPID _DATE _STAMP = exports . CAPICOM _PROPID _CTL _USAGE = exports . CAPICOM _PROPID _CROSS _CERT _DIST _POINTS = exports . CAPICOM _PROPID _AUTO _ENROLL = exports . CAPICOM _PROPID _ARCHIVED _KEY _HASH = exports . CAPICOM _PROPID _ARCHIVED = exports . CAPICOM _PROPID _ACCESS _STATE = exports . CAPICOM _OID _OTHER = exports . CAPICOM _OID _KEY _USAGE _EXTENSION = exports . CAPICOM _MY _STORE = exports . CAPICOM _MEMORY _STORE = exports . CAPICOM _LOCAL _MACHINE _STORE = exports . CAPICOM _EKU _SMARTCARD _LOGON = exports . CAPICOM _EKU _OTHER = exports . CAPICOM _EKU _CLIENT _AUTH = exports . CAPICOM _DIGITAL _SIGNATURE _KEY _USAGE = exports . CAPICOM _CURRENT _USER _STORE = exports . CAPICOM _CERT _INFO _SUBJECT _SIMPLE _NAME = exports . CAPICOM _CERT _INFO _ISSUER _SIMPLE _NAME = exports . CAPICOM _CERTIFICATE _INCLUDE _WHOLE _CHAIN = exports . CAPICOM _CERTIFICATE _INCLUDE _END _ENTITY _ONLY = exports . CAPICOM _CERTIFICATE _INCLUDE _CHAIN _EXCEPT _ROOT = exports . CAPICOM _CERTIFICATE _FIND _TIME _VALID = exports . CAPICOM _CERTIFICATE _FIND _TIME _NOT _YET _VALID = exports . CAPICOM _CERTIFICATE _FIND _TIME _EXPIRED = exports . CAPICOM _CERTIFICATE _FIND _TEMPLATE _NAME = exports . CAPICOM _CERTIFICATE _FIND _SUBJECT _NAME = exports . CAPICOM _CERTIFICATE _FIND _SHA1 _HASH = exports . CAPICOM _CERTIFICATE _FIND _ROOT _NAME = exports . CAPICOM _CERTIFICATE _FIND _KEY _USAGE = exports . CAPICOM _CERTIFICATE _FIND _ISSUER _NAME = exports . CAPICOM _CERTIFICATE _FIND _EXTENSION = exports . CAPICOM _CERTIFICATE _FIND _EXTENDED _PROPERTY = exports . CAPICOM _CERTIFICATE _FIND _CERTIFICATE _POLICY = exports . CAPICOM _CERTIFICATE _FIND _APPLICATION _POLICY = exports . CAPICOM _AUTHENTICATED _ATTRIBUTE _SIGNING _TIME = exports . CAPICOM _AUTHENTICATED _ATTRIBUTE _DOCUMENT _NAME = exports . CAPICOM _AUTHENTICATED _ATTRIBUTE _DOCUMENT _DESCRIPTION = exports . CAPICOM _ACTIVE _DIRECTORY _USER _STORE = export
2022-06-23 13:13:33 +03:00
exports . CADESCOM _ATTRIBUTE _OTHER = - 1 ;
exports . CADESCOM _AUTHENTICATED _ATTRIBUTE _DOCUMENT _DESCRIPTION = 2 ;
exports . CADESCOM _AUTHENTICATED _ATTRIBUTE _DOCUMENT _NAME = 1 ;
exports . CADESCOM _AUTHENTICATED _ATTRIBUTE _SIGNING _TIME = 0 ;
exports . CADESCOM _AllowNoOutstandingRequest = 1 ;
exports . CADESCOM _AllowNone = 0 ;
exports . CADESCOM _AllowUntrustedCertificate = 2 ;
exports . CADESCOM _AllowUntrustedRoot = 4 ;
exports . CADESCOM _BASE64 _TO _BINARY = 0x01 ;
exports . CADESCOM _CADES _BES = 1 ;
exports . CADESCOM _CADES _DEFAULT = 0 ;
exports . CADESCOM _CADES _T = 5 ;
exports . CADESCOM _CADES _X _LONG _TYPE _1 = 0x5d ;
exports . CADESCOM _CONTAINER _STORE = 100 ;
exports . CADESCOM _CURRENT _USER _STORE = 2 ;
exports . CADESCOM _DISPLAY _DATA _ATTRIBUTE = 2 ;
exports . CADESCOM _DISPLAY _DATA _CONTENT = 1 ;
exports . CADESCOM _DISPLAY _DATA _NONE = 0 ;
exports . CADESCOM _ENCODE _ANY = - 1 ;
exports . CADESCOM _ENCODE _BASE64 = 0 ;
exports . CADESCOM _ENCODE _BINARY = 1 ;
exports . CADESCOM _ENCRYPTION _ALGORITHM _3DES = 3 ;
exports . CADESCOM _ENCRYPTION _ALGORITHM _AES = 4 ;
exports . CADESCOM _ENCRYPTION _ALGORITHM _DES = 2 ;
exports . CADESCOM _ENCRYPTION _ALGORITHM _GOST _28147 _89 = 25 ;
exports . CADESCOM _ENCRYPTION _ALGORITHM _RC2 = 0 ;
exports . CADESCOM _ENCRYPTION _ALGORITHM _RC4 = 1 ;
exports . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 = 100 ;
exports . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _2012 _256 = 101 ;
exports . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _2012 _256 _HMAC = 111 ;
exports . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _2012 _512 = 102 ;
exports . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _2012 _512 _HMAC = 112 ;
exports . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _HMAC = 110 ;
exports . CADESCOM _HASH _ALGORITHM _MD2 = 1 ;
exports . CADESCOM _HASH _ALGORITHM _MD4 = 2 ;
exports . CADESCOM _HASH _ALGORITHM _MD5 = 3 ;
exports . CADESCOM _HASH _ALGORITHM _SHA1 = 0 ;
exports . CADESCOM _HASH _ALGORITHM _SHA _256 = 4 ;
exports . CADESCOM _HASH _ALGORITHM _SHA _384 = 5 ;
exports . CADESCOM _HASH _ALGORITHM _SHA _512 = 6 ;
exports . CADESCOM _LOCAL _MACHINE _STORE = 1 ;
exports . CADESCOM _PKCS7 _TYPE = 65535 ;
exports . CADESCOM _STRING _TO _UCS2LE = 0x00 ;
exports . CADESCOM _SkipInstallToStore = 268435456 ;
exports . CADESCOM _XML _SIGNATURE _TYPE _ENVELOPED = 0 ;
exports . CADESCOM _XML _SIGNATURE _TYPE _ENVELOPING = 1 ;
exports . CADESCOM _XML _SIGNATURE _TYPE _TEMPLATE = 2 ;
exports . CAPICOM _ACTIVE _DIRECTORY _USER _STORE = 3 ;
exports . CAPICOM _AUTHENTICATED _ATTRIBUTE _DOCUMENT _DESCRIPTION = 2 ;
exports . CAPICOM _AUTHENTICATED _ATTRIBUTE _DOCUMENT _NAME = 1 ;
exports . CAPICOM _AUTHENTICATED _ATTRIBUTE _SIGNING _TIME = 0 ;
exports . CAPICOM _CERTIFICATE _FIND _APPLICATION _POLICY = 7 ;
exports . CAPICOM _CERTIFICATE _FIND _CERTIFICATE _POLICY = 8 ;
exports . CAPICOM _CERTIFICATE _FIND _EXTENDED _PROPERTY = 6 ;
exports . CAPICOM _CERTIFICATE _FIND _EXTENSION = 5 ;
exports . CAPICOM _CERTIFICATE _FIND _ISSUER _NAME = 2 ;
exports . CAPICOM _CERTIFICATE _FIND _KEY _USAGE = 12 ;
exports . CAPICOM _CERTIFICATE _FIND _ROOT _NAME = 3 ;
exports . CAPICOM _CERTIFICATE _FIND _SHA1 _HASH = 0 ;
exports . CAPICOM _CERTIFICATE _FIND _SUBJECT _NAME = 1 ;
exports . CAPICOM _CERTIFICATE _FIND _TEMPLATE _NAME = 4 ;
exports . CAPICOM _CERTIFICATE _FIND _TIME _EXPIRED = 11 ;
exports . CAPICOM _CERTIFICATE _FIND _TIME _NOT _YET _VALID = 10 ;
exports . CAPICOM _CERTIFICATE _FIND _TIME _VALID = 9 ;
exports . CAPICOM _CERTIFICATE _INCLUDE _CHAIN _EXCEPT _ROOT = 0 ;
exports . CAPICOM _CERTIFICATE _INCLUDE _END _ENTITY _ONLY = 2 ;
exports . CAPICOM _CERTIFICATE _INCLUDE _WHOLE _CHAIN = 1 ;
exports . CAPICOM _CERT _INFO _ISSUER _SIMPLE _NAME = 1 ;
exports . CAPICOM _CERT _INFO _SUBJECT _SIMPLE _NAME = 0 ;
exports . CAPICOM _CURRENT _USER _STORE = 2 ;
exports . CAPICOM _DIGITAL _SIGNATURE _KEY _USAGE = 128 ;
exports . CAPICOM _EKU _CLIENT _AUTH = 2 ;
exports . CAPICOM _EKU _OTHER = 0 ;
exports . CAPICOM _EKU _SMARTCARD _LOGON = 5 ;
exports . CAPICOM _LOCAL _MACHINE _STORE = 1 ;
exports . CAPICOM _MEMORY _STORE = 0 ;
exports . CAPICOM _MY _STORE = 'My' ;
exports . CAPICOM _OID _KEY _USAGE _EXTENSION = 10 ;
exports . CAPICOM _OID _OTHER = 0 ;
exports . CAPICOM _PROPID _ACCESS _STATE = 14 ;
exports . CAPICOM _PROPID _ARCHIVED = 19 ;
exports . CAPICOM _PROPID _ARCHIVED _KEY _HASH = 65 ;
exports . CAPICOM _PROPID _AUTO _ENROLL = 21 ;
exports . CAPICOM _PROPID _CROSS _CERT _DIST _POINTS = 23 ;
exports . CAPICOM _PROPID _CTL _USAGE = 9 ;
exports . CAPICOM _PROPID _DATE _STAMP = 27 ;
exports . CAPICOM _PROPID _DESCRIPTION = 13 ;
exports . CAPICOM _PROPID _EFS = 17 ;
exports . CAPICOM _PROPID _ENHKEY _USAGE = 9 ;
exports . CAPICOM _PROPID _ENROLLMENT = 26 ;
exports . CAPICOM _PROPID _EXTENDED _ERROR _INFO = 30 ;
exports . CAPICOM _PROPID _FIRST _RESERVED = 66 ;
exports . CAPICOM _PROPID _FIRST _USER = 0x00008000 ;
exports . CAPICOM _PROPID _FORTEZZA _DATA = 18 ;
exports . CAPICOM _PROPID _FRIENDLY _NAME = 11 ;
exports . CAPICOM _PROPID _HASH _PROP = 3 ;
exports . CAPICOM _PROPID _IE30 _RESERVED = 7 ;
exports . CAPICOM _PROPID _ISSUER _PUBLIC _KEY _MD5 _HASH = 24 ;
exports . CAPICOM _PROPID _ISSUER _SERIAL _NUMBER _MD5 _HASH = 28 ;
exports . CAPICOM _PROPID _KEY _CONTEXT = 5 ;
exports . CAPICOM _PROPID _KEY _IDENTIFIER = 20 ;
exports . CAPICOM _PROPID _KEY _PROV _HANDLE = 1 ;
exports . CAPICOM _PROPID _KEY _PROV _INFO = 2 ;
exports . CAPICOM _PROPID _KEY _SPEC = 6 ;
exports . CAPICOM _PROPID _LAST _RESERVED = 0x00007fff ;
exports . CAPICOM _PROPID _LAST _USER = 0x0000ffff ;
exports . CAPICOM _PROPID _MD5 _HASH = 4 ;
exports . CAPICOM _PROPID _NEXT _UPDATE _LOCATION = 10 ;
exports . CAPICOM _PROPID _PUBKEY _ALG _PARA = 22 ;
exports . CAPICOM _PROPID _PUBKEY _HASH _RESERVED = 8 ;
exports . CAPICOM _PROPID _PVK _FILE = 12 ;
exports . CAPICOM _PROPID _RENEWAL = 64 ;
exports . CAPICOM _PROPID _SHA1 _HASH = 3 ;
exports . CAPICOM _PROPID _SIGNATURE _HASH = 15 ;
exports . CAPICOM _PROPID _SMART _CARD _DATA = 16 ;
exports . CAPICOM _PROPID _SUBJECT _NAME _MD5 _HASH = 29 ;
exports . CAPICOM _PROPID _SUBJECT _PUBLIC _KEY _MD5 _HASH = 25 ;
exports . CAPICOM _PROPID _UNKNOWN = 0 ;
exports . CAPICOM _SMART _CARD _USER _STORE = 4 ;
exports . CAPICOM _STORE _OPEN _EXISTING _ONLY = 128 ;
exports . CAPICOM _STORE _OPEN _INCLUDE _ARCHIVED = 256 ;
exports . CAPICOM _STORE _OPEN _MAXIMUM _ALLOWED = 2 ;
exports . CAPICOM _STORE _OPEN _READ _ONLY = 0 ;
exports . CAPICOM _STORE _OPEN _READ _WRITE = 1 ;
exports . CHECK _NONE = 0 ;
exports . CHECK _OFFLINE _REVOCATION _STATUS = 16 ;
exports . CHECK _ONLINE _REVOCATION _STATUS = 8 ;
exports . CHECK _SIGNATURE _VALIDITY = 4 ;
exports . CHECK _TIME _VALIDITY = 2 ;
exports . CHECK _TRUSTED _ROOT = 1 ;
exports . LOG _LEVEL _DEBUG = 4 ;
exports . LOG _LEVEL _ERROR = 1 ;
exports . LOG _LEVEL _INFO = 2 ;
exports . TRUST _CTL _IS _NOT _SIGNATURE _VALID = 262144 ;
exports . TRUST _CTL _IS _NOT _TIME _VALID = 131072 ;
exports . TRUST _CTL _IS _NOT _VALID _FOR _USAGE = 524288 ;
exports . TRUST _IS _CYCLIC = 128 ;
exports . TRUST _IS _NOT _SIGNATURE _VALID = 8 ;
exports . TRUST _IS _NOT _TIME _NESTED = 2 ;
exports . TRUST _IS _NOT _TIME _VALID = 1 ;
exports . TRUST _IS _NOT _VALID _FOR _USAGE = 16 ;
exports . TRUST _IS _PARTIAL _CHAIN = 65536 ;
exports . TRUST _IS _REVOKED = 4 ;
exports . TRUST _IS _UNTRUSTED _ROOT = 32 ;
exports . TRUST _REVOCATION _STATUS _UNKNOWN = 64 ;
exports . XmlDsigGost3410Url = 'urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102001-gostr3411' ;
exports . XmlDsigGost3410UrlObsolete = 'http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411' ;
exports . XmlDsigGost3411Url = 'urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr3411' ;
exports . XmlDsigGost3411UrlObsolete = 'http://www.w3.org/2001/04/xmldsig-more#gostr3411' ;
/***/ } ) ,
/***/ "./constants/index.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / constants / index . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
2022-11-11 19:40:20 +03:00
var _ _createBinding = ( this && this . _ _createBinding ) || ( Object . create ? ( function ( o , m , k , k2 ) {
if ( k2 === undefined ) k2 = k ;
Object . defineProperty ( o , k2 , { enumerable : true , get : function ( ) { return m [ k ] ; } } ) ;
} ) : ( function ( o , m , k , k2 ) {
if ( k2 === undefined ) k2 = k ;
o [ k2 ] = m [ k ] ;
} ) ) ;
var _ _exportStar = ( this && this . _ _exportStar ) || function ( m , exports ) {
for ( var p in m ) if ( p !== "default" && ! exports . hasOwnProperty ( p ) ) _ _createBinding ( exports , m , p ) ;
} ;
2022-06-23 13:13:33 +03:00
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
_ _exportStar ( _ _webpack _require _ _ ( /*! ./cades-constants */ "./constants/cades-constants.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./issuer-tags-translations */ "./constants/issuer-tags-translations.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./oids-dictionary */ "./constants/oids-dictionary.ts" ) , exports ) ;
_ _exportStar ( _ _webpack _require _ _ ( /*! ./subject-tags-translations */ "./constants/subject-tags-translations.ts" ) , exports ) ;
2022-06-23 13:13:33 +03:00
/***/ } ) ,
/***/ "./constants/issuer-tags-translations.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / constants / issuer - tags - translations . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . ISSUER _TAGS _TRANSLATIONS = void 0 ;
2022-06-23 13:13:33 +03:00
exports . ISSUER _TAGS _TRANSLATIONS = [
2022-11-11 19:40:20 +03:00
{ possibleNames : [ 'UN' , 'UnstructuredName' ] , translation : 'Неструктурированное имя' } ,
{ possibleNames : [ 'CN' , 'commonName' ] , translation : 'Удостоверяющий центр' } ,
{ possibleNames : [ 'C' , 'countryName' ] , translation : 'Страна' } ,
{ possibleNames : [ 'S' , 'ST' , 'stateOrProvinceName' ] , translation : 'Регион' } ,
{ possibleNames : [ 'STREET' , 'streetAddress' ] , translation : 'Адрес' } ,
{ possibleNames : [ 'O' , 'organizationName' ] , translation : 'Компания' } ,
{ possibleNames : [ 'OU' , 'organizationalUnitName' ] , translation : 'Тип' } ,
{ possibleNames : [ 'T' , 'TITLE' ] , translation : 'Должность' } ,
2022-06-23 13:13:33 +03:00
{ possibleNames : [ 'ОГРН' , 'OGRN' ] , translation : 'ОГРН' } ,
{ possibleNames : [ 'ОГРНИП' , 'OGRNIP' ] , translation : 'ОГРНИП' } ,
{ possibleNames : [ 'СНИЛС' , 'SNILS' ] , translation : 'СНИЛС' } ,
2022-11-11 19:40:20 +03:00
{ possibleNames : [ 'ИНН' , 'ИННФЛ' , 'ИНН ФЛ' , 'INN' , 'ИНН физического лица' ] , translation : 'ИНН' } ,
{ possibleNames : [ 'ИННЮЛ' , 'ИНН ЮЛ' , 'INN LE' , 'INNLE' , 'ИНН организации' ] , translation : 'ИНН организации' } ,
{ possibleNames : [ 'E' , 'email' , 'emailAddress' , 'pkcs9email' ] , translation : 'Email' } ,
{ possibleNames : [ 'L' , 'localityName' ] , translation : 'Город' } ,
2022-06-23 13:13:33 +03:00
] ;
/***/ } ) ,
/***/ "./constants/oids-dictionary.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / constants / oids - dictionary . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . OIDS _DICTIONARY = void 0 ;
2022-06-23 13:13:33 +03:00
exports . OIDS _DICTIONARY = {
'1.2.643.2.2.34.6' : 'Пользователь Центра Регистрации' ,
'1.2.643.2.39.1.1' : 'Использование в программных продуктах системы "1С :Предприятие 8"' ,
'1.2.643.3.131.1.1' : 'ИНН' ,
2022-11-11 19:40:20 +03:00
'1.2.643.100.4' : 'ИНН организации' ,
'1.2.643.100.1' : 'ОГРН' ,
'1.2.643.100.5' : 'ОГРНИП' ,
'1.2.643.100.3' : 'СНИЛС' ,
2022-06-23 13:13:33 +03:00
'1.2.643.3.141.1.1' : 'Р Н С ФСС' ,
'1.2.643.3.141.1.2' : 'КП ФСС' ,
'1.2.643.3.2.100.65.13.11' : 'Использование в системе АИС "Госзакупки" Сахалинской области.' ,
'1.2.643.3.8.100.1' : 'Сертификат типа "ekey-ГОСТ"' ,
'1.2.643.3.8.100.1.1' : 'Общее использование в системах ИОК без права заверения финансовых документов' ,
'1.2.643.3.8.100.1.10' : 'Для участия в электронных торгах и подписания государственного контракта в информационных системах Тендерного комитета города Москвы уполномоченными лицами участников размещения государственного заказа города Москвы' ,
'1.2.643.3.8.100.1.11' : 'Подписание электронных документов в автоматизированной информационной системе размещения государственного и муниципального заказа Саратовской области' ,
'1.2.643.3.8.100.1.12' : 'Использование в системе государственного заказа Иркутской области' ,
'1.2.643.3.8.100.1.13' : 'Использование в электронной торговой площадке агентства государственного заказа Красноярского края' ,
'1.2.643.3.8.100.1.14' : 'Использование в электронной торговой площадке "Тендер"' ,
'1.2.643.3.8.100.1.2' : 'Передача отчетности по Т К С ' ,
'1.2.643.3.8.100.1.3' : 'Оформление взаимных обязательств, соглашений, договоров, актов и т.п.' ,
'1.2.643.3.8.100.1.4' : 'Внутрикорпоративный документооборот' ,
'1.2.643.3.8.100.1.5' : 'Использование в системах электронной торговли' ,
'1.2.643.3.8.100.1.6' : 'Использование в торгово-закупочной системе "ЭЛЕКТРА"' ,
'1.2.643.3.8.100.1.7' : 'Использование в системе Портал государственных закупок Ставропольского края.' ,
'1.2.643.3.8.100.1.8' : 'Использование в Единой системе электронной торговли B2B-Center и B2G.' ,
'1.2.643.3.8.100.1.9' : 'Для участия в электронных торгах и подписания государственного контракта в электронной площадке О А О «ЕЭТП» уполномоченными лицами участников размещения государственного или муниципального заказа' ,
'1.2.643.5.1.24.2.1.3' : 'Формирование документов для получения государственных услуг в сфере ведения государственного кадастра недвижимости с о стороны заявителя' ,
'1.2.643.5.1.24.2.1.3.1' : 'Формирование кадастровым инженером документов для получения государственных услуг в сфере ведения государственного кадастра недвижимости с о стороны заявителя' ,
'1.2.643.5.1.24.2.2.2' : 'Формирование документов как результата оказания услуги с о стороны органов регистрации прав' ,
'1.2.643.5.1.24.2.2.3' : 'Формирование документов для получения государственных услуг в сфере государственной регистрации прав на недвижимое имущество и сделок с ним с о стороны заявителя' ,
'1.2.643.6.2.1.7.1' : 'Использование единоличным исполнительным органом юридического лица или уполномоченными представителями юридического лица в отношениях, связанных с возникновением, исполнением (осуществлением) и прекращением гражданских и иных прав и обязанностей в сфере негосударственного пенсионного обеспечения, негосударственного пенсионного страхования, в сфере деятельности паевых инвестиционных фондов, акционерных инвестиционных фондов, профессиональных участников рынка ценных бумаг, а также связанной с обслуживанием указанной деятельности услуг кредитных и иных организаций' ,
'1.2.643.6.2.1.7.2' : 'Использование физическим лицом в отношениях, связанных с возникновением, исполнением (осуществлением) и прекращением гражданских прав и обязанностей в отношении инвестиционных паев паевых инвестиционных фондов, в том числе отношения, связанные с учетом и/или фиксацией прав на инвестиционные паи паевых инвестиционных фондов' ,
'1.2.643.6.3' : 'Использование в электронных торговых системах и в программном обеспечении, связанным с обменом электронных сообщений' ,
'1.2.643.6.3.1.1' : 'Использование на электронных площадок отобранных для проведения аукционах в электронной форме' ,
'1.2.643.6.3.1.2.1' : 'Тип участника - Юридическое лицо' ,
'1.2.643.6.3.1.2.2' : 'Тип участника - Физическое лицо' ,
'1.2.643.6.3.1.2.3' : 'Тип участника - Индивидуальный предприниматель' ,
'1.2.643.6.3.1.3.1' : 'Участник размещения заказа' ,
'1.2.643.6.3.1.4.1' : 'Администратор организации' ,
'1.2.643.6.3.1.4.2' : 'Уполномоченный специалист' ,
'1.2.643.6.3.1.4.3' : 'Специалист с правом подписи контракта' ,
'1.2.840.113549.1.9.2' : 'Неструктурированное имя' ,
'1.3.6.1.4.1.24138.1.1.8.1' : 'Обеспечение юридической значимости в Системе "Электронная Торговая Площадка"' ,
'1.3.6.1.4.1.29919.21' : 'Использование в системе Портал государственных закупок Ростовской области "Рефери".' ,
'1.3.6.1.5.5.7.3.2' : 'Проверка подлинности клиента' ,
'1.3.6.1.5.5.7.3.4' : 'Защищенная электронная почта' ,
'1.3.643.3.8.100.15' : 'Использование в ЭТП "uTender"' ,
} ;
/***/ } ) ,
/***/ "./constants/subject-tags-translations.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / constants / subject - tags - translations . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . SUBJECT _TAGS _TRANSLATIONS = void 0 ;
2022-06-23 13:13:33 +03:00
exports . SUBJECT _TAGS _TRANSLATIONS = [
2022-11-11 19:40:20 +03:00
{ possibleNames : [ 'UN' , 'UnstructuredName' ] , translation : 'Неструктурированное имя' } ,
{ possibleNames : [ 'CN' , 'commonName' ] , translation : 'Владелец' } ,
{ possibleNames : [ 'SN' , 'surname' ] , translation : 'Фамилия' } ,
{ possibleNames : [ 'G' , 'givenName' , 'gn' ] , translation : 'Имя Отчество' } ,
{ possibleNames : [ 'C' , 'countryName' ] , translation : 'Страна' } ,
{ possibleNames : [ 'S' , 'ST' , 'stateOrProvinceName' ] , translation : 'Регион' } ,
{ possibleNames : [ 'STREET' , 'streetAddress' ] , translation : 'Адрес' } ,
{ possibleNames : [ 'O' , 'organizationName' ] , translation : 'Компания' } ,
{ possibleNames : [ 'OU' , 'organizationalUnitName' ] , translation : 'Отдел/подразделение' } ,
{ possibleNames : [ 'T' , 'TITLE' ] , translation : 'Должность' } ,
2022-06-23 13:13:33 +03:00
{ possibleNames : [ 'ОГРН' , 'OGRN' ] , translation : 'ОГРН' } ,
{ possibleNames : [ 'ОГРНИП' , 'OGRNIP' ] , translation : 'ОГРНИП' } ,
{ possibleNames : [ 'СНИЛС' , 'SNILS' ] , translation : 'СНИЛС' } ,
2022-11-11 19:40:20 +03:00
{ possibleNames : [ 'ИНН' , 'ИННФЛ' , 'ИНН ФЛ' , 'INN' , 'ИНН физического лица' ] , translation : 'ИНН' } ,
{ possibleNames : [ 'ИННЮЛ' , 'ИНН ЮЛ' , 'INN LE' , 'INNLE' , 'ИНН организации' ] , translation : 'ИНН организации' } ,
{ possibleNames : [ 'E' , 'email' , 'emailAddress' , 'pkcs9email' ] , translation : 'Email' } ,
{ possibleNames : [ 'L' , 'localityName' ] , translation : 'Город' } ,
2022-06-23 13:13:33 +03:00
] ;
/***/ } ) ,
/***/ "./crypto-pro-js.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / crypto - pro - js . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
2022-11-11 19:40:20 +03:00
var _ _createBinding = ( this && this . _ _createBinding ) || ( Object . create ? ( function ( o , m , k , k2 ) {
if ( k2 === undefined ) k2 = k ;
Object . defineProperty ( o , k2 , { enumerable : true , get : function ( ) { return m [ k ] ; } } ) ;
} ) : ( function ( o , m , k , k2 ) {
if ( k2 === undefined ) k2 = k ;
o [ k2 ] = m [ k ] ;
} ) ) ;
var _ _exportStar = ( this && this . _ _exportStar ) || function ( m , exports ) {
for ( var p in m ) if ( p !== "default" && ! exports . hasOwnProperty ( p ) ) _ _createBinding ( exports , m , p ) ;
} ;
2022-06-23 13:13:33 +03:00
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
_ _exportStar ( _ _webpack _require _ _ ( /*! ./api */ "./api/index.ts" ) , exports ) ;
2022-06-23 13:13:33 +03:00
/***/ } ) ,
/***/ "./helpers/_afterPluginsLoaded.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / helpers / _afterPluginsLoaded . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . _afterPluginsLoaded = void 0 ;
2022-06-23 13:13:33 +03:00
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ./_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
let isSetLogLevel = false ;
let isPluginLoaded = false ;
exports . _afterPluginsLoaded = ( fn ) => {
const canPromise = Boolean ( window . Promise ) ;
return function ( ... args ) {
return _ _awaiter ( this , void 0 , void 0 , function * ( ) {
if ( ! isPluginLoaded ) {
try {
_ _webpack _require _ _ ( /*! ../vendor/cadesplugin_api */ "./vendor/cadesplugin_api.js" ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при подключении модуля для работы с Cades plugin' ) ;
}
isPluginLoaded = true ;
}
const { cadesplugin } = window ;
if ( ! canPromise ) {
throw new Error ( 'Необходим полифилл для Promise' ) ;
}
if ( ! cadesplugin ) {
throw new Error ( 'Н е подключен модуль для работы с Cades plugin' ) ;
}
if ( ! isSetLogLevel ) {
cadesplugin . set _log _level ( cadesplugin . LOG _LEVEL _ERROR ) ;
isSetLogLevel = true ;
}
try {
yield cadesplugin ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при инициализации модуля для работы с Cades plugin' ) ;
}
return yield fn . apply ( this , args ) ;
} ) ;
} ;
} ;
/***/ } ) ,
/***/ "./helpers/_extractCommonName.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / helpers / _extractCommonName . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . _extractCommonName = void 0 ;
2022-06-23 13:13:33 +03:00
exports . _extractCommonName = ( subjectName ) => { var _a , _b ; return ( _b = ( _a = subjectName . match ( /CN="?(.+?)"?(?:,|$)/ ) ) === null || _a === void 0 ? void 0 : _a [ 1 ] ) === null || _b === void 0 ? void 0 : _b . replace ( /"{2}/g , '"' ) ; } ;
/***/ } ) ,
/***/ "./helpers/_extractMeaningfulErrorMessage.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / helpers / _extractMeaningfulErrorMessage . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . _extractMeaningfulErrorMessage = void 0 ;
2022-06-23 13:13:33 +03:00
exports . _extractMeaningfulErrorMessage = ( error ) => {
var _a ;
let errorContainer = ( ( _a = window . cadesplugin ) === null || _a === void 0 ? void 0 : _a . getLastError ) && window . cadesplugin . getLastError ( error ) ;
if ( ! ( errorContainer === null || errorContainer === void 0 ? void 0 : errorContainer . message ) ) {
if ( ! error . message ) {
return null ;
}
errorContainer = error ;
}
const containsRussianLetters = /[а -яА-Я]/ . test ( errorContainer . message ) ;
if ( ! containsRussianLetters ) {
return null ;
}
const searchResult = errorContainer . message . match ( /^(.*?)(?:(?:\.?\s?\(?(0x[0-9a-zA-Z]{1,8})\)?)|(?:\.?$))/ ) ;
return searchResult ? searchResult [ 1 ] + ( searchResult [ 2 ] ? ' (Код ошибки: ' + searchResult [ 2 ] + ')' : '' ) : null ;
} ;
/***/ } ) ,
/***/ "./helpers/_generateCadesFn.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / helpers / _generateCadesFn . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . _generateCadesFn = exports . _ _createCadesPluginObject _ _ = exports . _ _cadesAsyncToken _ _ = void 0 ;
2022-06-23 13:13:33 +03:00
// синтетические переменные, которые подменяются в рантайме
exports . _ _cadesAsyncToken _ _ = { } ;
exports . _ _createCadesPluginObject _ _ = ( ... args ) => ( { } ) ;
function getGeneratorConstructor ( ) {
return new Function ( '' , 'return Object.getPrototypeOf(function*(){}).constructor' ) ( ) ;
}
exports . _generateCadesFn = ( callback ) => {
var _a ;
const { cadesplugin } = window ;
const cadesGeneratorsAPI = Boolean ( cadesplugin . CreateObjectAsync ) ;
const callbackName = callback . name || 'dynamicFn' ;
const callbackLiteral = String ( callback ) ;
const callbackArguments = ( ( _a = callbackLiteral . match ( /^function[\s\w]*?\((.*?)\)/ ) ) === null || _a === void 0 ? void 0 : _a [ 1 ] ) || '' ;
const callbackBody = callbackLiteral . replace ( /^.*?{([\s\S]*?)}$/ , '$1' ) ;
let crossEnvCallbackLiteral = String ( new ( cadesGeneratorsAPI ? getGeneratorConstructor ( ) : Function ) ( callbackArguments , callbackBody ) ) ;
crossEnvCallbackLiteral = crossEnvCallbackLiteral . replace ( /\w+?\.__createCadesPluginObject__(\([\s\S]*?\))/gm , ` cadesplugin.CreateObject ${ cadesGeneratorsAPI ? 'Async' : '' } $ 1 ` ) ;
crossEnvCallbackLiteral = crossEnvCallbackLiteral . replace ( /\w+?\.__cadesAsyncToken__\s*?\+\s*?\b/gm , cadesGeneratorsAPI ? 'yield ' : '' ) ;
if ( ! cadesGeneratorsAPI ) {
crossEnvCallbackLiteral = crossEnvCallbackLiteral . replace ( /propset_(.*?)\((.*?)\)/gm , '$1 = $2' ) ;
}
return [
cadesGeneratorsAPI ? ` cadesplugin.async_spawn( ${ crossEnvCallbackLiteral } ); ` : ` ( ${ crossEnvCallbackLiteral } )(); ` ,
` //# sourceURL=crypto-pro_ ${ callbackName } .js ` ,
] . join ( '' ) ;
} ;
/***/ } ) ,
/***/ "./helpers/_getCadesCert.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / helpers / _getCadesCert . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
var _ _awaiter = ( this && this . _ _awaiter ) || function ( thisArg , _arguments , P , generator ) {
function adopt ( value ) { return value instanceof P ? value : new P ( function ( resolve ) { resolve ( value ) ; } ) ; }
return new ( P || ( P = Promise ) ) ( function ( resolve , reject ) {
function fulfilled ( value ) { try { step ( generator . next ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function rejected ( value ) { try { step ( generator [ "throw" ] ( value ) ) ; } catch ( e ) { reject ( e ) ; } }
function step ( result ) { result . done ? resolve ( result . value ) : adopt ( result . value ) . then ( fulfilled , rejected ) ; }
step ( ( generator = generator . apply ( thisArg , _arguments || [ ] ) ) . next ( ) ) ;
} ) ;
} ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . _getCadesCert = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ./_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _getCadesUserCert _1 = _ _webpack _require _ _ ( /*! ./_getCadesUserCert */ "./helpers/_getCadesUserCert.ts" ) ;
const _getCadesContainerCert _1 = _ _webpack _require _ _ ( /*! ./_getCadesContainerCert */ "./helpers/_getCadesContainerCert.ts" ) ;
/ * *
* Возвращает сертификат в формате Cades по отпечатку
*
* @ param thumbprint - отпечаток сертификата
* @ returns сертификат в формате Cades
* /
exports . _getCadesCert = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( thumbprint ) => _ _awaiter ( void 0 , void 0 , void 0 , function * ( ) {
let cadesCertificate ;
try {
cadesCertificate = yield _getCadesUserCert _1 . _getCadesUserCert ( thumbprint ) ;
}
catch ( error ) {
console . log ( error ) ;
cadesCertificate = yield _getCadesContainerCert _1 . _getCadesContainerCert ( thumbprint ) ;
}
return cadesCertificate ;
} ) ) ;
/***/ } ) ,
/***/ "./helpers/_getCadesContainerCert.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / helpers / _getCadesContainerCert . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . _getCadesContainerCert = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ./_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ./_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ./_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
/ * *
* Возвращает сертификат в формате Cades по отпечатку из хранилища закрытого ключа
*
* @ param thumbprint - отпечаток сертификата
* @ returns сертификат в формате Cades
* /
exports . _getCadesContainerCert = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( thumbprint ) => {
const { cadesplugin } = window ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function _getCadesCert ( ) {
let cadesStore ;
try {
cadesStore = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.Store' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при попытке доступа к хранилищу' ) ;
}
if ( ! cadesStore ) {
throw new Error ( 'Н е удалось получить доступ к хранилищу сертификатов' ) ;
}
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesStore . Open ( cadesplugin . CADESCOM _CONTAINER _STORE , cadesplugin . CAPICOM _MY _STORE , cadesplugin . CAPICOM _STORE _OPEN _MAXIMUM _ALLOWED ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при открытии хранилища закрытого ключа' ) ;
}
let cadesCertificateList ;
let certificatesCount ;
try {
cadesCertificateList = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesStore . Certificates ;
certificatesCount = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificateList . Count ;
}
catch ( error ) {
console . error ( error ) ;
2022-06-23 13:48:07 +03:00
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) ||
'Ошибка получения списка сертификатов из хранилища закрытого ключа' ) ;
2022-06-23 13:13:33 +03:00
}
if ( ! certificatesCount ) {
throw new Error ( 'Нет доступных сертификатов в хранилище закрытого ключа' ) ;
}
let cadesCertificate ;
try {
cadesCertificateList =
_generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificateList . Find ( cadesplugin . CAPICOM _CERTIFICATE _FIND _SHA1 _HASH , thumbprint ) ;
const count = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificateList . Count ;
if ( ! count ) {
throw new Error ( ` Сертификат с отпечатком: " ${ thumbprint } " не найден в хранилище закрытого ключа ` ) ;
}
cadesCertificate = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificateList . Item ( 1 ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при получении сертификата из хранилища закрытого ключа' ) ;
}
cadesStore . Close ( ) ;
return cadesCertificate ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./helpers/_getCadesUserCert.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / helpers / _getCadesUserCert . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . _getCadesUserCert = void 0 ;
2022-06-23 13:13:33 +03:00
const _afterPluginsLoaded _1 = _ _webpack _require _ _ ( /*! ./_afterPluginsLoaded */ "./helpers/_afterPluginsLoaded.ts" ) ;
const _extractMeaningfulErrorMessage _1 = _ _webpack _require _ _ ( /*! ./_extractMeaningfulErrorMessage */ "./helpers/_extractMeaningfulErrorMessage.ts" ) ;
const _generateCadesFn _1 = _ _webpack _require _ _ ( /*! ./_generateCadesFn */ "./helpers/_generateCadesFn.ts" ) ;
/ * *
* Возвращает сертификат в формате Cades по отпечатку из хранилища пользователя
*
* @ param thumbprint - отпечаток сертификата
* @ returns сертификат в формате Cades
* /
exports . _getCadesUserCert = _afterPluginsLoaded _1 . _afterPluginsLoaded ( ( thumbprint ) => {
const { cadesplugin } = window ;
return eval ( _generateCadesFn _1 . _generateCadesFn ( function _getCadesCert ( ) {
let cadesStore ;
try {
cadesStore = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + _generateCadesFn _1 . _ _createCadesPluginObject _ _ ( 'CAdESCOM.Store' ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при попытке доступа к хранилищу' ) ;
}
if ( ! cadesStore ) {
throw new Error ( 'Н е удалось получить доступ к хранилищу сертификатов' ) ;
}
try {
void ( _generateCadesFn _1 . _ _cadesAsyncToken _ _ +
cadesStore . Open ( cadesplugin . CAPICOM _CURRENT _USER _STORE , cadesplugin . CAPICOM _MY _STORE , cadesplugin . CAPICOM _STORE _OPEN _MAXIMUM _ALLOWED ) ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при открытии хранилища пользователя' ) ;
}
let cadesCertificateList ;
let certificatesCount ;
try {
cadesCertificateList = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesStore . Certificates ;
certificatesCount = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificateList . Count ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка получения списка сертификатов из хранилища пользователя' ) ;
}
if ( ! certificatesCount ) {
throw new Error ( 'Нет доступных сертификатов в хранилище пользователя' ) ;
}
let cadesCertificate ;
try {
cadesCertificateList =
_generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificateList . Find ( cadesplugin . CAPICOM _CERTIFICATE _FIND _SHA1 _HASH , thumbprint ) ;
const count = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificateList . Count ;
if ( ! count ) {
throw new Error ( ` Сертификат с отпечатком: " ${ thumbprint } " не найден в хранилище пользователя ` ) ;
}
cadesCertificate = _generateCadesFn _1 . _ _cadesAsyncToken _ _ + cadesCertificateList . Item ( 1 ) ;
}
catch ( error ) {
console . error ( error ) ;
throw new Error ( _extractMeaningfulErrorMessage _1 . _extractMeaningfulErrorMessage ( error ) || 'Ошибка при получении сертификата из хранилища пользователя' ) ;
}
cadesStore . Close ( ) ;
return cadesCertificate ;
} ) ) ;
} ) ;
/***/ } ) ,
/***/ "./helpers/_getDateObj.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / helpers / _getDateObj . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . _getDateObj = void 0 ;
2022-06-23 13:13:33 +03:00
/ * *
* Возвращает объект даты , совместимый с Cades plugin ' ом , зависящий от браузера .
*
* В IE необходимо использовать специфичный формат "VT_DATE"
* https : //developer.mozilla.org/en-US/docs/Web/JavaScript/Microsoft_Extensions/Date.getVarDate
* /
exports . _getDateObj = ( dateObj ) => ( dateObj . getVarDate ? dateObj . getVarDate ( ) : dateObj ) ;
/***/ } ) ,
/***/ "./helpers/_isSupportedCSPVersion.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / helpers / _isSupportedCSPVersion . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . _isSupportedCSPVersion = void 0 ;
2022-06-23 13:13:33 +03:00
const oldestSupportedCSPVersion = 4.0 ;
exports . _isSupportedCSPVersion = ( version ) => {
var _a ;
version = ( _a = version . match ( /\d+?\b(?:\.\d+)?/ ) ) === null || _a === void 0 ? void 0 : _a [ 0 ] ;
return Number ( version ) >= oldestSupportedCSPVersion ;
} ;
/***/ } ) ,
/***/ "./helpers/_isSupportedCadesVersion.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / helpers / _isSupportedCadesVersion . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . _isSupportedCadesVersion = void 0 ;
2022-06-23 13:13:33 +03:00
exports . _isSupportedCadesVersion = ( version ) => {
const match = version . match ( /(\d+)\.(\d+)\.(\d+)/ ) ;
if ( ! match ) {
return false ;
}
const [ , major , minor , patch ] = match ;
if ( Number ( major ) < 2 ) {
return false ;
}
if ( Number ( major ) === 2 && Number ( patch ) < 12438 ) {
return false ;
}
return true ;
} ;
/***/ } ) ,
/***/ "./helpers/_parseCertInfo.ts" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / helpers / _parseCertInfo . ts * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports , _ _webpack _require _ _ ) {
"use strict" ;
Object . defineProperty ( exports , "__esModule" , { value : true } ) ;
2022-11-11 19:40:20 +03:00
exports . _parseCertInfo = void 0 ;
2022-06-23 13:13:33 +03:00
const constants _1 = _ _webpack _require _ _ ( /*! ../constants */ "./constants/index.ts" ) ;
/ * *
* Парсит информацию из строки с информацией о сертификате
*
* @ param tagsTranslations - словарь с расшифровками тэгов
* @ param rawInfo - данные для парсинга
* @ returns расшифрованная информация по отдельным тэгам
* /
exports . _parseCertInfo = ( tagsTranslations , rawInfo ) => {
const extractedEntities = rawInfo . match ( /([а -яА-Яa-zA-Z0-9\s.]+)=(?:("[^"]+?")|(.+?))(?:,|$)/g ) ;
if ( extractedEntities ) {
return extractedEntities . map ( ( group ) => {
var _a , _b , _c ;
const segmentsMatch = group . trim ( ) . match ( /^([а -яА-Яa-zA-Z0-9\s.]+)=(.+?),?$/ ) ;
let title = segmentsMatch === null || segmentsMatch === void 0 ? void 0 : segmentsMatch [ 1 ] ;
// Вырезаем лишние кавычки
const description = ( _b = ( _a = segmentsMatch === null || segmentsMatch === void 0 ? void 0 : segmentsMatch [ 2 ] ) === null || _a === void 0 ? void 0 : _a . replace ( /^"(.*)"/ , '$1' ) ) === null || _b === void 0 ? void 0 : _b . replace ( /"{2}/g , '"' ) ;
const oidIdentifierMatch = title === null || title === void 0 ? void 0 : title . match ( /^OID\.(.*)/ ) ;
const oidIdentifier = oidIdentifierMatch === null || oidIdentifierMatch === void 0 ? void 0 : oidIdentifierMatch [ 1 ] ;
let isTranslated = false ;
// Если нашли в тайтле ОИД, пытаемся е г о расшифровать
if ( oidIdentifier ) {
const oidTranslation = constants _1 . OIDS _DICTIONARY [ oidIdentifier ] ;
if ( oidTranslation ) {
title = oidTranslation ;
isTranslated = true ;
}
}
const tagTranslation = ( _c = tagsTranslations . find ( ( tag ) => tag . possibleNames . find ( ( name ) => name === title ) ) ) === null || _c === void 0 ? void 0 : _c . translation ;
if ( tagTranslation ) {
title = tagTranslation ;
isTranslated = true ;
}
return { description , title , isTranslated } ;
} ) ;
}
} ;
/***/ } ) ,
/***/ "./vendor/cadesplugin_api.js" :
/ * ! * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * ! * \
! * * * . / vendor / cadesplugin _api . js * * * !
\ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * /
/*! no static exports found */
/***/ ( function ( module , exports ) {
; ( function ( ) {
//already loaded
if ( window . cadesplugin )
return ;
var pluginObject ;
var plugin _resolved = 0 ;
var plugin _reject ;
var plugin _resolve ;
var isOpera = 0 ;
var isFireFox = 0 ;
var isSafari = 0 ;
var isYandex = 0 ;
var canPromise = ! ! window . Promise ;
var cadesplugin _loaded _event _recieved = false ;
var isFireFoxExtensionLoaded = false ;
var cadesplugin ;
if ( canPromise )
{
cadesplugin = new Promise ( function ( resolve , reject )
{
plugin _resolve = resolve ;
plugin _reject = reject ;
} ) ;
} else
{
cadesplugin = { } ;
}
function check _browser ( ) {
var ua = navigator . userAgent , tem , M = ua . match ( /(opera|yabrowser|chrome|safari|firefox|msie|trident(?=\/))\/?\s*(\d+)/i ) || [ ] ;
if ( /trident/i . test ( M [ 1 ] ) ) {
tem = /\brv[ :]+(\d+)/g . exec ( ua ) || [ ] ;
return { name : 'IE' , version : ( tem [ 1 ] || '' ) } ;
}
if ( M [ 1 ] === 'Chrome' ) {
tem = ua . match ( /\b(OPR|Edg|YaBrowser)\/(\d+)/ ) ;
if ( tem != null )
return { name : tem [ 1 ] . replace ( 'OPR' , 'Opera' ) , version : tem [ 2 ] } ;
}
M = M [ 2 ] ? [ M [ 1 ] , M [ 2 ] ] : [ navigator . appName , navigator . appVersion , '-?' ] ;
if ( ( tem = ua . match ( /version\/(\d+)/i ) ) != null )
M . splice ( 1 , 1 , tem [ 1 ] ) ;
return { name : M [ 0 ] , version : M [ 1 ] } ;
}
var browserSpecs = check _browser ( ) ;
function cpcsp _console _log ( level , msg ) {
//IE9 не может писать в консоль если не открыта вкладка developer tools
if ( typeof ( console ) === 'undefined' )
return ;
if ( level <= cadesplugin . current _log _level ) {
if ( level === cadesplugin . LOG _LEVEL _DEBUG )
console . log ( "DEBUG: %s" , msg ) ;
if ( level === cadesplugin . LOG _LEVEL _INFO )
console . info ( "INFO: %s" , msg ) ;
if ( level === cadesplugin . LOG _LEVEL _ERROR )
console . error ( "ERROR: %s" , msg ) ;
return ;
}
}
function set _log _level ( level ) {
if ( ! ( ( level === cadesplugin . LOG _LEVEL _DEBUG ) ||
( level === cadesplugin . LOG _LEVEL _INFO ) ||
( level === cadesplugin . LOG _LEVEL _ERROR ) ) ) {
cpcsp _console _log ( cadesplugin . LOG _LEVEL _ERROR , "cadesplugin_api.js: Incorrect log_level: " + level ) ;
return ;
}
cadesplugin . current _log _level = level ;
if ( cadesplugin . current _log _level === cadesplugin . LOG _LEVEL _DEBUG )
cpcsp _console _log ( cadesplugin . LOG _LEVEL _INFO , "cadesplugin_api.js: log_level = DEBUG" ) ;
if ( cadesplugin . current _log _level === cadesplugin . LOG _LEVEL _INFO )
cpcsp _console _log ( cadesplugin . LOG _LEVEL _INFO , "cadesplugin_api.js: log_level = INFO" ) ;
if ( cadesplugin . current _log _level === cadesplugin . LOG _LEVEL _ERROR )
cpcsp _console _log ( cadesplugin . LOG _LEVEL _INFO , "cadesplugin_api.js: log_level = ERROR" ) ;
if ( isNativeMessageSupported ( ) )
{
if ( cadesplugin . current _log _level === cadesplugin . LOG _LEVEL _DEBUG )
window . postMessage ( "set_log_level=debug" , "*" ) ;
if ( cadesplugin . current _log _level === cadesplugin . LOG _LEVEL _INFO )
window . postMessage ( "set_log_level=info" , "*" ) ;
if ( cadesplugin . current _log _level === cadesplugin . LOG _LEVEL _ERROR )
window . postMessage ( "set_log_level=error" , "*" ) ;
}
}
function set _constantValues ( )
{
cadesplugin . CAPICOM _MEMORY _STORE = 0 ;
cadesplugin . CAPICOM _LOCAL _MACHINE _STORE = 1 ;
cadesplugin . CAPICOM _CURRENT _USER _STORE = 2 ;
cadesplugin . CAPICOM _SMART _CARD _USER _STORE = 4 ;
cadesplugin . CADESCOM _MEMORY _STORE = 0 ;
cadesplugin . CADESCOM _LOCAL _MACHINE _STORE = 1 ;
cadesplugin . CADESCOM _CURRENT _USER _STORE = 2 ;
cadesplugin . CADESCOM _SMART _CARD _USER _STORE = 4 ;
cadesplugin . CADESCOM _CONTAINER _STORE = 100 ;
cadesplugin . CAPICOM _MY _STORE = "My" ;
cadesplugin . CAPICOM _STORE _OPEN _MAXIMUM _ALLOWED = 2 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _SUBJECT _NAME = 1 ;
cadesplugin . CADESCOM _XML _SIGNATURE _TYPE _ENVELOPED = 0 ;
cadesplugin . CADESCOM _XML _SIGNATURE _TYPE _ENVELOPING = 1 ;
cadesplugin . CADESCOM _XML _SIGNATURE _TYPE _TEMPLATE = 2 ;
cadesplugin . CADESCOM _XADES _DEFAULT = 0x00000010 ;
cadesplugin . CADESCOM _XADES _BES = 0x00000020 ;
cadesplugin . CADESCOM _XADES _T = 0x00000050 ;
cadesplugin . CADESCOM _XADES _X _LONG _TYPE _1 = 0x000005d0 ;
cadesplugin . CADESCOM _XMLDSIG _TYPE = 0x00000000 ;
cadesplugin . XmlDsigGost3410UrlObsolete = "http://www.w3.org/2001/04/xmldsig-more#gostr34102001-gostr3411" ;
cadesplugin . XmlDsigGost3411UrlObsolete = "http://www.w3.org/2001/04/xmldsig-more#gostr3411" ;
cadesplugin . XmlDsigGost3410Url = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102001-gostr3411" ;
cadesplugin . XmlDsigGost3411Url = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr3411" ;
cadesplugin . XmlDsigGost3411Url2012256 = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-256" ;
cadesplugin . XmlDsigGost3410Url2012256 = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-256" ;
cadesplugin . XmlDsigGost3411Url2012512 = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34112012-512" ;
cadesplugin . XmlDsigGost3410Url2012512 = "urn:ietf:params:xml:ns:cpxmlsec:algorithms:gostr34102012-gostr34112012-512" ;
cadesplugin . CADESCOM _CADES _DEFAULT = 0 ;
cadesplugin . CADESCOM _CADES _BES = 1 ;
cadesplugin . CADESCOM _CADES _T = 0x5 ;
cadesplugin . CADESCOM _CADES _X _LONG _TYPE _1 = 0x5d ;
cadesplugin . CADESCOM _PKCS7 _TYPE = 0xffff ;
cadesplugin . CADESCOM _ENCODE _BASE64 = 0 ;
cadesplugin . CADESCOM _ENCODE _BINARY = 1 ;
cadesplugin . CADESCOM _ENCODE _ANY = - 1 ;
cadesplugin . CAPICOM _CERTIFICATE _INCLUDE _CHAIN _EXCEPT _ROOT = 0 ;
cadesplugin . CAPICOM _CERTIFICATE _INCLUDE _WHOLE _CHAIN = 1 ;
cadesplugin . CAPICOM _CERTIFICATE _INCLUDE _END _ENTITY _ONLY = 2 ;
cadesplugin . CAPICOM _CERT _INFO _SUBJECT _SIMPLE _NAME = 0 ;
cadesplugin . CAPICOM _CERT _INFO _ISSUER _SIMPLE _NAME = 1 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _SHA1 _HASH = 0 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _SUBJECT _NAME = 1 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _ISSUER _NAME = 2 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _ROOT _NAME = 3 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _TEMPLATE _NAME = 4 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _EXTENSION = 5 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _EXTENDED _PROPERTY = 6 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _APPLICATION _POLICY = 7 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _CERTIFICATE _POLICY = 8 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _TIME _VALID = 9 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _TIME _NOT _YET _VALID = 10 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _TIME _EXPIRED = 11 ;
cadesplugin . CAPICOM _CERTIFICATE _FIND _KEY _USAGE = 12 ;
cadesplugin . CAPICOM _DIGITAL _SIGNATURE _KEY _USAGE = 128 ;
cadesplugin . CAPICOM _PROPID _ENHKEY _USAGE = 9 ;
cadesplugin . CAPICOM _OID _OTHER = 0 ;
cadesplugin . CAPICOM _OID _KEY _USAGE _EXTENSION = 10 ;
cadesplugin . CAPICOM _EKU _CLIENT _AUTH = 2 ;
cadesplugin . CAPICOM _EKU _SMARTCARD _LOGON = 5 ;
cadesplugin . CAPICOM _EKU _OTHER = 0 ;
cadesplugin . CAPICOM _AUTHENTICATED _ATTRIBUTE _SIGNING _TIME = 0 ;
cadesplugin . CAPICOM _AUTHENTICATED _ATTRIBUTE _DOCUMENT _NAME = 1 ;
cadesplugin . CAPICOM _AUTHENTICATED _ATTRIBUTE _DOCUMENT _DESCRIPTION = 2 ;
cadesplugin . CADESCOM _AUTHENTICATED _ATTRIBUTE _SIGNING _TIME = 0 ;
cadesplugin . CADESCOM _AUTHENTICATED _ATTRIBUTE _DOCUMENT _NAME = 1 ;
cadesplugin . CADESCOM _AUTHENTICATED _ATTRIBUTE _DOCUMENT _DESCRIPTION = 2 ;
cadesplugin . CADESCOM _AUTHENTICATED _ATTRIBUTE _MACHINE _INFO = 0x100 ;
cadesplugin . CADESCOM _ATTRIBUTE _OTHER = - 1 ;
cadesplugin . CADESCOM _STRING _TO _UCS2LE = 0 ;
cadesplugin . CADESCOM _BASE64 _TO _BINARY = 1 ;
cadesplugin . CADESCOM _DISPLAY _DATA _NONE = 0 ;
cadesplugin . CADESCOM _DISPLAY _DATA _CONTENT = 1 ;
cadesplugin . CADESCOM _DISPLAY _DATA _ATTRIBUTE = 2 ;
cadesplugin . CADESCOM _ENCRYPTION _ALGORITHM _RC2 = 0 ;
cadesplugin . CADESCOM _ENCRYPTION _ALGORITHM _RC4 = 1 ;
cadesplugin . CADESCOM _ENCRYPTION _ALGORITHM _DES = 2 ;
cadesplugin . CADESCOM _ENCRYPTION _ALGORITHM _3DES = 3 ;
cadesplugin . CADESCOM _ENCRYPTION _ALGORITHM _AES = 4 ;
cadesplugin . CADESCOM _ENCRYPTION _ALGORITHM _GOST _28147 _89 = 25 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _SHA1 = 0 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _MD2 = 1 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _MD4 = 2 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _MD5 = 3 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _SHA _256 = 4 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _SHA _384 = 5 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _SHA _512 = 6 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 = 100 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _2012 _256 = 101 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _2012 _512 = 102 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _HMAC = 110 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _2012 _256 _HMAC = 111 ;
cadesplugin . CADESCOM _HASH _ALGORITHM _CP _GOST _3411 _2012 _512 _HMAC = 112 ;
cadesplugin . LOG _LEVEL _DEBUG = 4 ;
cadesplugin . LOG _LEVEL _INFO = 2 ;
cadesplugin . LOG _LEVEL _ERROR = 1 ;
cadesplugin . CADESCOM _AllowNone = 0 ;
cadesplugin . CADESCOM _AllowNoOutstandingRequest = 0x1 ;
cadesplugin . CADESCOM _AllowUntrustedCertificate = 0x2 ;
cadesplugin . CADESCOM _AllowUntrustedRoot = 0x4 ;
cadesplugin . CADESCOM _SkipInstallToStore = 0x10000000 ;
cadesplugin . CADESCOM _InstallCertChainToContainer = 0x20000000 ;
cadesplugin . CADESCOM _UseContainerStore = 0x40000000 ;
cadesplugin . ENABLE _CARRIER _TYPE _CSP = 0x01 ;
cadesplugin . ENABLE _CARRIER _TYPE _FKC _NO _SM = 0x02 ;
cadesplugin . ENABLE _CARRIER _TYPE _FKC _SM = 0x04 ;
cadesplugin . ENABLE _ANY _CARRIER _TYPE = 0x07 ;
cadesplugin . DISABLE _EVERY _CARRIER _OPERATION = 0x00 ;
cadesplugin . ENABLE _CARRIER _OPEN _ENUM = 0x01 ;
cadesplugin . ENABLE _CARRIER _CREATE = 0x02 ;
cadesplugin . ENABLE _ANY _OPERATION = 0x03 ;
cadesplugin . CADESCOM _PRODUCT _CSP = 0 ;
cadesplugin . CADESCOM _PRODUCT _OCSP = 1 ;
cadesplugin . CADESCOM _PRODUCT _TSP = 2 ;
cadesplugin . MEDIA _TYPE _REGISTRY = 0x00000001 ;
cadesplugin . MEDIA _TYPE _HDIMAGE = 0x00000002 ;
cadesplugin . MEDIA _TYPE _CLOUD = 0x00000004 ;
cadesplugin . MEDIA _TYPE _SCARD = 0x00000008 ;
cadesplugin . XCN _CRYPT _STRING _BASE64HEADER = 0 ;
cadesplugin . AT _KEYEXCHANGE = 1 ;
cadesplugin . AT _SIGNATURE = 2 ;
cadesplugin . CARRIER _FLAG _REMOVABLE = 1 ;
cadesplugin . CARRIER _FLAG _UNIQUE = 2 ;
cadesplugin . CARRIER _FLAG _PROTECTED = 4 ;
cadesplugin . CARRIER _FLAG _FUNCTIONAL _CARRIER = 8 ;
cadesplugin . CARRIER _FLAG _SECURE _MESSAGING = 16 ;
cadesplugin . CARRIER _FLAG _ABLE _VISUALISE _SIGNATURE = 64 ;
cadesplugin . CARRIER _FLAG _VIRTUAL = 128 ;
}
function async _spawn ( generatorFunc ) {
function continuer ( verb , arg ) {
var result ;
try {
result = generator [ verb ] ( arg ) ;
} catch ( err ) {
return Promise . reject ( err ) ;
}
if ( result . done ) {
return result . value ;
} else {
return Promise . resolve ( result . value ) . then ( onFulfilled , onRejected ) ;
}
}
var generator = generatorFunc ( Array . prototype . slice . call ( arguments , 1 ) ) ;
var onFulfilled = continuer . bind ( continuer , "next" ) ;
var onRejected = continuer . bind ( continuer , "throw" ) ;
return onFulfilled ( ) ;
}
function isIE ( ) {
// var retVal = (("Microsoft Internet Explorer" == navigator.appName) || // IE < 11
// navigator.userAgent.match(/Trident\/./i)); // IE 11
return ( browserSpecs . name === 'IE' || browserSpecs . name === 'MSIE' ) ;
}
function isIOS ( ) {
return ( navigator . userAgent . match ( /ipod/i ) ||
navigator . userAgent . match ( /ipad/i ) ||
navigator . userAgent . match ( /iphone/i ) ) ;
}
function isNativeMessageSupported ( )
{
// В IE работаем через NPAPI
if ( isIE ( ) )
return false ;
// В Edge работаем через NativeMessage
if ( browserSpecs . name === 'Edg' ) {
return true ;
}
if ( browserSpecs . name === 'YaBrowser' ) {
isYandex = true ;
return true ;
}
// В Chrome, Firefox, Safari и Opera работаем через асинхронную версию в зависимости от версии
if ( browserSpecs . name === 'Opera' ) {
isOpera = true ;
if ( browserSpecs . version >= 33 ) {
return true ;
}
else {
return false ;
}
}
if ( browserSpecs . name === 'Firefox' ) {
isFireFox = true ;
if ( browserSpecs . version >= 52 ) {
return true ;
}
else {
return false ;
}
}
if ( browserSpecs . name === 'Chrome' ) {
if ( browserSpecs . version >= 42 ) {
return true ;
}
else {
return false ;
}
}
//В Сафари начиная с 12 версии нет NPAPI
if ( browserSpecs . name === 'Safari' ) {
isSafari = true ;
if ( browserSpecs . version >= 12 ) {
return true ;
} else {
return false ;
}
}
}
// Функция активации объектов КриптоПро ЭЦП Browser plug-in
function CreateObject ( name ) {
if ( isIOS ( ) ) {
// Н а iOS для создания объектов используется функция
// call_ru_cryptopro_npcades_10_native_bridge, определенная в IOS_npcades_supp.js
return call _ru _cryptopro _npcades _10 _native _bridge ( "CreateObject" , [ name ] ) ;
}
if ( isIE ( ) ) {
// В Internet Explorer создаются COM-объекты
if ( name . match ( /X509Enrollment/i ) ) {
try {
// Объекты CertEnroll пробуем создавать через нашу фабрику,
// если не получилось то через CX509EnrollmentWebClassFactory
var objCertEnrollClassFactory = document . getElementById ( "webClassFactory" ) ;
return objCertEnrollClassFactory . CreateObject ( name ) ;
}
catch ( e ) {
try {
var objWebClassFactory = document . getElementById ( "certEnrollClassFactory" ) ;
return objWebClassFactory . CreateObject ( name ) ;
}
catch ( err ) {
throw ( "Для создания обьектов X509Enrollment следует настроить веб-узел на использование проверки подлинности по протоколу HTTPS" ) ;
}
}
}
// Объекты CAPICOM и CAdESCOM создаются через CAdESCOM.WebClassFactory
try {
var objWebClassFactory = document . getElementById ( "webClassFactory" ) ;
return objWebClassFactory . CreateObject ( name ) ;
}
catch ( e ) {
// Для версий плагина ниже 2.0.12538
return new ActiveXObject ( name ) ;
}
}
// создаются объекты NPAPI
return pluginObject . CreateObject ( name ) ;
}
function decimalToHexString ( number ) {
if ( number < 0 ) {
number = 0xFFFFFFFF + number + 1 ;
}
return number . toString ( 16 ) . toUpperCase ( ) ;
}
function GetMessageFromException ( e ) {
var err = e . message ;
if ( ! err ) {
err = e ;
} else if ( e . number ) {
err += " (0x" + decimalToHexString ( e . number ) + ")" ;
}
return err ;
}
function getLastError ( exception ) {
if ( isNativeMessageSupported ( ) || isIE ( ) || isIOS ( ) ) {
return GetMessageFromException ( exception ) ;
}
try {
return pluginObject . getLastError ( ) ;
} catch ( e ) {
return GetMessageFromException ( exception ) ;
}
}
// Функция для удаления созданных объектов
function ReleasePluginObjects ( ) {
return cpcsp _chrome _nmcades . ReleasePluginObjects ( ) ;
}
// Функция активации асинхронных объектов КриптоПро ЭЦП Browser plug-in
function CreateObjectAsync ( name ) {
return pluginObject . CreateObjectAsync ( name ) ;
}
//Функции для IOS
var ru _cryptopro _npcades _10 _native _bridge = {
callbacksCount : 1 ,
callbacks : { } ,
// Automatically called by native layer when a result is available
resultForCallback : function resultForCallback ( callbackId , resultArray ) {
var callback = ru _cryptopro _npcades _10 _native _bridge . callbacks [ callbackId ] ;
if ( ! callback ) return ;
callback . apply ( null , resultArray ) ;
} ,
// Use this in javascript to request native objective-c code
// functionName : string (I think the name is explicit :p)
// args : array of arguments
// callback : function with n-arguments that is going to be called when the native code returned
call : function call ( functionName , args , callback ) {
var hasCallback = callback && typeof callback === "function" ;
var callbackId = hasCallback ? ru _cryptopro _npcades _10 _native _bridge . callbacksCount ++ : 0 ;
if ( hasCallback )
ru _cryptopro _npcades _10 _native _bridge . callbacks [ callbackId ] = callback ;
var iframe = document . createElement ( "IFRAME" ) ;
var arrObjs = new Array ( "_CPNP_handle" ) ;
try {
iframe . setAttribute ( "src" , "cpnp-js-call:" + functionName + ":" + callbackId + ":" + encodeURIComponent ( JSON . stringify ( args , arrObjs ) ) ) ;
} catch ( e ) {
alert ( e ) ;
}
document . documentElement . appendChild ( iframe ) ;
iframe . parentNode . removeChild ( iframe ) ;
iframe = null ;
}
} ;
function call _ru _cryptopro _npcades _10 _native _bridge ( functionName , array ) {
var tmpobj ;
var ex ;
ru _cryptopro _npcades _10 _native _bridge . call ( functionName , array , function ( e , response ) {
ex = e ;
var str = 'tmpobj=' + response ;
eval ( str ) ;
if ( typeof ( tmpobj ) === "string" ) {
tmpobj = tmpobj . replace ( /\\\n/gm , "\n" ) ;
tmpobj = tmpobj . replace ( /\\\r/gm , "\r" ) ;
}
} ) ;
if ( ex )
throw ex ;
return tmpobj ;
}
function show _firefox _missing _extension _dialog ( )
{
if ( ! window . cadesplugin _skip _extension _install )
{
var ovr = document . createElement ( 'div' ) ;
ovr . id = "cadesplugin_ovr" ;
ovr . style = "visibility: hidden; position: fixed; left: 0px; top: 0px; width:100%; height:100%; background-color: rgba(0,0,0,0.7)" ;
ovr . innerHTML = "<div id='cadesplugin_ovr_item' style='position:relative; width:400px; margin:100px auto; background-color:#fff; border:2px solid #000; padding:10px; text-align:center; opacity: 1; z-index: 1500'>" +
"<button id='cadesplugin_close_install' style='float: right; font-size: 10px; background: transparent; border: 1; margin: -5px'>X</button>" +
"<p>Для работы КриптоПро ЭЦП Browser plugin на данном сайте необходимо расширение для браузера. Убедитесь, что оно у В а с включено или установите е г о ." +
"<p><a href='https://www.cryptopro.ru/sites/default/files/products/cades/extensions/firefox_cryptopro_extension_latest.xpi'>Скачать расширение</a></p>" +
"</div>" ;
document . getElementsByTagName ( "Body" ) [ 0 ] . appendChild ( ovr ) ;
document . getElementById ( "cadesplugin_close_install" ) . addEventListener ( 'click' , function ( )
{
plugin _loaded _error ( "Плагин недоступен" ) ;
document . getElementById ( "cadesplugin_ovr" ) . style . visibility = 'hidden' ;
} ) ;
ovr . addEventListener ( 'click' , function ( )
{
plugin _loaded _error ( "Плагин недоступен" ) ;
document . getElementById ( "cadesplugin_ovr" ) . style . visibility = 'hidden' ;
} ) ;
ovr . style . visibility = "visible" ;
}
}
function firefox _or _safari _nmcades _onload ( ) {
if ( window . cadesplugin _extension _loaded _callback )
window . cadesplugin _extension _loaded _callback ( ) ;
isFireFoxExtensionLoaded = true ;
cpcsp _chrome _nmcades . check _chrome _plugin ( plugin _loaded , plugin _loaded _error ) ;
}
function nmcades _api _onload ( ) {
if ( ! isIE ( ) && ! isFireFox && ! isSafari ) {
if ( window . cadesplugin _extension _loaded _callback )
window . cadesplugin _extension _loaded _callback ( ) ;
}
window . postMessage ( "cadesplugin_echo_request" , "*" ) ;
window . addEventListener ( "message" , function ( event ) {
if ( typeof ( event . data ) !== "string" || ! event . data . match ( "cadesplugin_loaded" ) )
return ;
if ( cadesplugin _loaded _event _recieved )
return ;
if ( isFireFox || isSafari )
{
// Для Firefox, Сафари вместе с сообщением cadesplugin_loaded прилетает url для загрузки nmcades_plugin_api.js
var url = event . data . substring ( event . data . indexOf ( "url:" ) + 4 ) ;
if ( ! url . match ( "^moz-extension://[a-zA-Z0-9-]+/nmcades_plugin_api.js$" )
&& ! url . match ( "^safari-extension://[a-zA-Z0-9-]+/[a-zA-Z0-9]+/nmcades_plugin_api.js$" ) )
{
cpcsp _console _log ( cadesplugin . LOG _LEVEL _ERROR , "Bad url \"" + url + "\" for load CryptoPro Extension for CAdES Browser plug-in" ) ;
plugin _loaded _error ( ) ;
return ;
}
var fileref = document . createElement ( 'script' ) ;
fileref . setAttribute ( "type" , "text/javascript" ) ;
fileref . setAttribute ( "src" , url ) ;
fileref . onerror = plugin _loaded _error ;
fileref . onload = firefox _or _safari _nmcades _onload ;
document . getElementsByTagName ( "head" ) [ 0 ] . appendChild ( fileref ) ;
} else {
cpcsp _chrome _nmcades . check _chrome _plugin ( plugin _loaded , plugin _loaded _error ) ;
}
cadesplugin _loaded _event _recieved = true ;
} , false ) ;
}
//Загружаем расширения для Chrome, Opera, YaBrowser, FireFox, Edge, Safari
function load _extension ( )
{
if ( isFireFox || isSafari ) {
// вызываем callback руками т.к. нам нужно узнать ID расширения. Он уникальный для браузера.
nmcades _api _onload ( ) ;
} else {
// в асинхронном варианте для Yandex и Opera подключаем расширение из Opera store.
if ( isOpera || isYandex ) {
var fileref = document . createElement ( 'script' ) ;
fileref . setAttribute ( "type" , "text/javascript" ) ;
fileref . setAttribute ( "src" , "chrome-extension://epebfcehmdedogndhlcacafjaacknbcm/nmcades_plugin_api.js" ) ;
fileref . onerror = plugin _loaded _error ;
fileref . onload = nmcades _api _onload ;
document . getElementsByTagName ( "head" ) [ 0 ] . appendChild ( fileref ) ;
} else {
// для Chrome, Chromium, Chromium Edge расширение из Chrome store
var fileref = document . createElement ( 'script' ) ;
fileref . setAttribute ( "type" , "text/javascript" ) ;
fileref . setAttribute ( "src" , "chrome-extension://iifchhfnnmpdbibifmljnfjhpififfog/nmcades_plugin_api.js" ) ;
fileref . onerror = plugin _loaded _error ;
fileref . onload = nmcades _api _onload ;
document . getElementsByTagName ( "head" ) [ 0 ] . appendChild ( fileref ) ;
}
}
}
//Загружаем плагин для NPAPI
function load _npapi _plugin ( )
{
var elem = document . createElement ( 'object' ) ;
elem . setAttribute ( "id" , "cadesplugin_object" ) ;
elem . setAttribute ( "type" , "application/x-cades" ) ;
elem . setAttribute ( "style" , "visibility: hidden" ) ;
document . getElementsByTagName ( "body" ) [ 0 ] . appendChild ( elem ) ;
pluginObject = document . getElementById ( "cadesplugin_object" ) ;
if ( isIE ( ) )
{
var elem1 = document . createElement ( 'object' ) ;
elem1 . setAttribute ( "id" , "certEnrollClassFactory" ) ;
elem1 . setAttribute ( "classid" , "clsid:884e2049-217d-11da-b2a4-000e7bbb2b09" ) ;
elem1 . setAttribute ( "style" , "visibility: hidden" ) ;
document . getElementsByTagName ( "body" ) [ 0 ] . appendChild ( elem1 ) ;
var elem2 = document . createElement ( 'object' ) ;
elem2 . setAttribute ( "id" , "webClassFactory" ) ;
elem2 . setAttribute ( "classid" , "clsid:B04C8637-10BD-484E-B0DA-B8A039F60024" ) ;
elem2 . setAttribute ( "style" , "visibility: hidden" ) ;
document . getElementsByTagName ( "body" ) [ 0 ] . appendChild ( elem2 ) ;
}
}
//Отправляем событие что все ок.
function plugin _loaded ( )
{
plugin _resolved = 1 ;
if ( canPromise )
{
plugin _resolve ( ) ;
} else {
window . postMessage ( "cadesplugin_loaded" , "*" ) ;
}
}
//Отправляем событие что сломались.
function plugin _loaded _error ( msg )
{
if ( typeof ( msg ) === 'undefined' || typeof ( msg ) === 'object' )
msg = "Плагин недоступен" ;
plugin _resolved = 1 ;
if ( canPromise )
{
plugin _reject ( msg ) ;
} else {
window . postMessage ( "cadesplugin_load_error" , "*" ) ;
}
}
//проверяем что у нас хоть какое то событие ушло, и если не уходило кидаем еще раз ошибку
function check _load _timeout ( )
{
if ( plugin _resolved === 1 )
return ;
if ( isFireFox )
{
if ( ! isFireFoxExtensionLoaded )
show _firefox _missing _extension _dialog ( ) ;
}
plugin _resolved = 1 ;
if ( canPromise )
{
plugin _reject ( "Истекло время ожидания загрузки плагина" ) ;
} else {
window . postMessage ( "cadesplugin_load_error" , "*" ) ;
}
}
//Вспомогательная функция для NPAPI
function createPromise ( arg )
{
return new Promise ( arg ) ;
}
function check _npapi _plugin ( ) {
try {
var oAbout = CreateObject ( "CAdESCOM.About" ) ;
plugin _loaded ( ) ;
}
catch ( err ) {
document . getElementById ( "cadesplugin_object" ) . style . display = 'none' ;
// Объект создать не удалось, проверим, установлен ли
// вообще плагин. Такая возможность есть не во всех браузерах
var mimetype = navigator . mimeTypes [ "application/x-cades" ] ;
if ( mimetype ) {
var plugin = mimetype . enabledPlugin ;
if ( plugin ) {
plugin _loaded _error ( "Плагин загружен, но не создаются обьекты" ) ;
} else
{
plugin _loaded _error ( "Ошибка при загрузке плагина" ) ;
}
} else
{
plugin _loaded _error ( "Плагин недоступен" ) ;
}
}
}
//Проверяем работает ли плагин
function check _plugin _working ( )
{
var div = document . createElement ( "div" ) ;
div . innerHTML = "<!--[if lt IE 9]><i></i><![endif]-->" ;
var isIeLessThan9 = ( div . getElementsByTagName ( "i" ) . length === 1 ) ;
if ( isIeLessThan9 ) {
plugin _loaded _error ( "Internet Explorer версии 8 и ниже не поддерживается" ) ;
return ;
}
if ( isNativeMessageSupported ( ) )
{
load _extension ( ) ;
} else if ( ! canPromise ) {
window . addEventListener ( "message" , function ( event ) {
if ( event . data !== "cadesplugin_echo_request" )
return ;
load _npapi _plugin ( ) ;
check _npapi _plugin ( ) ;
} ,
false ) ;
} else
{
if ( document . readyState === "complete" ) {
load _npapi _plugin ( ) ;
check _npapi _plugin ( ) ;
} else {
window . addEventListener ( "load" , function ( event ) {
load _npapi _plugin ( ) ;
check _npapi _plugin ( ) ;
} , false ) ;
}
}
}
function set _pluginObject ( obj )
{
pluginObject = obj ;
}
function is _capilite _enabled ( )
{
if ( ( typeof ( cadesplugin . EnableInternalCSP ) !== 'undefined' ) && cadesplugin . EnableInternalCSP )
return true ;
return false ;
} ;
//Export
cadesplugin . JSModuleVersion = "2.3.2" ;
cadesplugin . async _spawn = async _spawn ;
cadesplugin . set = set _pluginObject ;
cadesplugin . set _log _level = set _log _level ;
cadesplugin . getLastError = getLastError ;
cadesplugin . is _capilite _enabled = is _capilite _enabled ;
if ( isNativeMessageSupported ( ) )
{
cadesplugin . CreateObjectAsync = CreateObjectAsync ;
cadesplugin . ReleasePluginObjects = ReleasePluginObjects ;
}
if ( ! isNativeMessageSupported ( ) )
{
cadesplugin . CreateObject = CreateObject ;
}
if ( window . cadesplugin _load _timeout )
{
setTimeout ( check _load _timeout , window . cadesplugin _load _timeout ) ;
}
else
{
setTimeout ( check _load _timeout , 20000 ) ;
}
set _constantValues ( ) ;
cadesplugin . current _log _level = cadesplugin . LOG _LEVEL _ERROR ;
window . cadesplugin = cadesplugin ;
check _plugin _working ( ) ;
} ( ) ) ;
/***/ } )
/******/ } ) ;
} ) ;
//# sourceMappingURL=crypto-pro-js.js.map