Please enable JavaScript to use RhodeCode Enterprise
Commit Description:
fix wrong merge on user
Commit Description:
fix wrong merge on user
var charToInteger = {};
var integerToChar = {};
'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=' . split ( '' ). forEach ( function ( char , i ) {
charToInteger [ char ] = i ;
integerToChar [ i ] = char ;
});
export function decode ( string ) {
var result = [];
var shift = 0 ;
var value = 0 ;
for ( var i = 0 ; i < string . length ; i += 1 ) {
var integer = charToInteger [ string [ i ] ];
if ( integer === undefined ) {
throw new Error ( 'Invalid character (' + string [ i ] + ')' );
}
var hasContinuationBit = integer & 32 ;
integer &= 31 ;
value += integer << shift ;
if ( hasContinuationBit ) {
shift += 5 ;
} else {
var shouldNegate = value & 1 ;
value >>= 1 ;
result . push ( shouldNegate ? - value : value );
// reset
value = shift = 0 ;
}
}
return result ;
}
export function encode ( value ) {
var result ;
if ( typeof value === 'number' ) {
result = encodeInteger ( value );
} else {
result = '' ;
for ( var i = 0 ; i < value . length ; i += 1 ) {
result += encodeInteger ( value [ i ] );
}
}
return result ;
}
function encodeInteger ( num ) {
var result = '' ;
if ( num < 0 ) {
num = ( - num << 1 ) | 1 ;
} else {
num <<= 1 ;
}
do {
var clamped = num & 31 ;
num >>= 5 ;
if ( num > 0 ) {
clamped |= 32 ;
}
result += integerToChar [ clamped ];
} while ( num > 0 );
return result ;
}
Site-wide shortcuts
/
Use quick search box
g h
Goto home page
g g
Goto my private gists page
g G
Goto my public gists page
n r
New repository page
n g
New gist page
Repositories
g s
Goto summary page
g c
Goto changelog page
g f
Goto files page
g F
Goto files page with file search activated
g p
Goto pull requests page
g o
Goto repository settings
g O
Goto repository permissions settings