88! function ( ) { "use strict" ; var g = { not_string :/ [ ^ s ] / , not_bool :/ [ ^ t ] / , not_type :/ [ ^ T ] / , not_primitive :/ [ ^ v ] / , number :/ [ d i e f g ] / , numeric_arg :/ [ b c d i e f g u x X ] / , json :/ [ j ] / , not_json :/ [ ^ j ] / , text :/ ^ [ ^ \x25 ] + / , modulo :/ ^ \x25 { 2 } / , placeholder :/ ^ \x25 (?: ( [ 1 - 9 ] \d * ) \$ | \( ( [ ^ ) ] + ) \) ) ? ( \+ ) ? ( 0 | ' [ ^ $ ] ) ? ( - ) ? ( \d + ) ? (?: \. ( \d + ) ) ? ( [ b - g i j o s t T u v x X ] ) / , key :/ ^ ( [ a - z _ ] [ a - z _ \d ] * ) / i, key_access :/ ^ \. ( [ a - z _ ] [ a - z _ \d ] * ) / i, index_access :/ ^ \[ ( \d + ) \] / , sign :/ ^ [ + - ] / } ; function y ( e ) { return function ( e , t ) { var r , n , i , s , a , o , p , c , l , u = 1 , f = e . length , d = "" ; for ( n = 0 ; n < f ; n ++ ) if ( "string" == typeof e [ n ] ) d += e [ n ] ; else if ( "object" == typeof e [ n ] ) { if ( ( s = e [ n ] ) . keys ) for ( r = t [ u ] , i = 0 ; i < s . keys . length ; i ++ ) { if ( null == r ) throw new Error ( y ( '[sprintf] Cannot access property "%s" of undefined value "%s"' , s . keys [ i ] , s . keys [ i - 1 ] ) ) ; r = r [ s . keys [ i ] ] } else r = s . param_no ?t [ s . param_no ] :t [ u ++ ] ; if ( g . not_type . test ( s . type ) && g . not_primitive . test ( s . type ) && r instanceof Function && ( r = r ( ) ) , g . numeric_arg . test ( s . type ) && "number" != typeof r && isNaN ( r ) ) throw new TypeError ( y ( "[sprintf] expecting number but found %T" , r ) ) ; switch ( g . number . test ( s . type ) && ( c = 0 <= r ) , s . type ) { case "b" :r = parseInt ( r , 10 ) . toString ( 2 ) ; break ; case "c" :r = String . fromCharCode ( parseInt ( r , 10 ) ) ; break ; case "d" :case "i" :r = parseInt ( r , 10 ) ; break ; case "j" :r = JSON . stringify ( r , null , s . width ?parseInt ( s . width ) :0 ) ; break ; case "e" :r = s . precision ?parseFloat ( r ) . toExponential ( s . precision ) :parseFloat ( r ) . toExponential ( ) ; break ; case "f" :r = s . precision ?parseFloat ( r ) . toFixed ( s . precision ) :parseFloat ( r ) ; break ; case "g" :r = s . precision ?String ( Number ( r . toPrecision ( s . precision ) ) ) :parseFloat ( r ) ; break ; case "o" :r = ( parseInt ( r , 10 ) >>> 0 ) . toString ( 8 ) ; break ; case "s" :r = String ( r ) , r = s . precision ?r . substring ( 0 , s . precision ) :r ; break ; case "t" :r = String ( ! ! r ) , r = s . precision ?r . substring ( 0 , s . precision ) :r ; break ; case "T" :r = Object . prototype . toString . call ( r ) . slice ( 8 , - 1 ) . toLowerCase ( ) , r = s . precision ?r . substring ( 0 , s . precision ) :r ; break ; case "u" :r = parseInt ( r , 10 ) >>> 0 ; break ; case "v" :r = r . valueOf ( ) , r = s . precision ?r . substring ( 0 , s . precision ) :r ; break ; case "x" :r = ( parseInt ( r , 10 ) >>> 0 ) . toString ( 16 ) ; break ; case "X" :r = ( parseInt ( r , 10 ) >>> 0 ) . toString ( 16 ) . toUpperCase ( ) } g . json . test ( s . type ) ?d += r :( ! g . number . test ( s . type ) || c && ! s . sign ?l = "" :( l = c ?"+" :"-" , r = r . toString ( ) . replace ( g . sign , "" ) ) , o = s . pad_char ?"0" === s . pad_char ?"0" :s . pad_char . charAt ( 1 ) :" " , p = s . width - ( l + r ) . length , a = s . width && 0 < p ?o . repeat ( p ) :"" , d += s . align ?l + r + a :"0" === o ?l + a + r :a + l + r ) } return d } ( function ( e ) { if ( p [ e ] ) return p [ e ] ; var t , r = e , n = [ ] , i = 0 ; for ( ; r ; ) { if ( null !== ( t = g . text . exec ( r ) ) ) n . push ( t [ 0 ] ) ; else if ( null !== ( t = g . modulo . exec ( r ) ) ) n . push ( "%" ) ; else { if ( null === ( t = g . placeholder . exec ( r ) ) ) throw new SyntaxError ( "[sprintf] unexpected placeholder" ) ; if ( t [ 2 ] ) { i |= 1 ; var s = [ ] , a = t [ 2 ] , o = [ ] ; if ( null === ( o = g . key . exec ( a ) ) ) throw new SyntaxError ( "[sprintf] failed to parse named argument key" ) ; for ( s . push ( o [ 1 ] ) ; "" !== ( a = a . substring ( o [ 0 ] . length ) ) ; ) if ( null !== ( o = g . key_access . exec ( a ) ) ) s . push ( o [ 1 ] ) ; else { if ( null === ( o = g . index_access . exec ( a ) ) ) throw new SyntaxError ( "[sprintf] failed to parse named argument key" ) ; s . push ( o [ 1 ] ) } t [ 2 ] = s } else i |= 2 ; if ( 3 === i ) throw new Error ( "[sprintf] mixing positional and named placeholders is not (yet) supported" ) ; n . push ( { placeholder :t [ 0 ] , param_no :t [ 1 ] , keys :t [ 2 ] , sign :t [ 3 ] , pad_char :t [ 4 ] , align :t [ 5 ] , width :t [ 6 ] , precision :t [ 7 ] , type :t [ 8 ] } ) } r = r . substring ( t [ 0 ] . length ) } return p [ e ] = n } ( e ) , arguments ) } function e ( e , t ) { return y . apply ( null , [ e ] . concat ( t || [ ] ) ) } var p = Object . create ( null ) ; "undefined" != typeof exports && ( exports . sprintf = y , exports . vsprintf = e ) , "undefined" != typeof window && ( window . sprintf = y , window . vsprintf = e , "function" == typeof define && define . amd && define ( function ( ) { return { sprintf :y , vsprintf :e } } ) ) } ( ) ;
99//# sourceMappingURL=sprintf.min.js.map
1010
11+ ! function ( t ) { "object" == typeof exports && "undefined" != typeof module ?module . exports = t ( ) :"function" == typeof define && define . amd ?define ( [ ] , t ) :( "undefined" != typeof window ?window :"undefined" != typeof global ?global :"undefined" != typeof self ?self :this ) . basicContext = t ( ) } ( function ( ) { return function o ( i , c , l ) { function r ( n , t ) { if ( ! c [ n ] ) { if ( ! i [ n ] ) { var e = "function" == typeof require && require ; if ( ! t && e ) return e ( n , ! 0 ) ; if ( a ) return a ( n , ! 0 ) ; throw ( t = new Error ( "Cannot find module '" + n + "'" ) ) . code = "MODULE_NOT_FOUND" , t } e = c [ n ] = { exports :{ } } , i [ n ] [ 0 ] . call ( e . exports , function ( t ) { return r ( i [ n ] [ 1 ] [ t ] || t ) } , e , e . exports , o , i , c , l ) } return c [ n ] . exports } for ( var a = "function" == typeof require && require , t = 0 ; t < l . length ; t ++ ) r ( l [ t ] ) ; return r } ( { 1 :[ function ( t , n , e ) { "use strict" ; Object . defineProperty ( e , "__esModule" , { value :! 0 } ) , e . visible = e . show = e . close = e . SEPARATOR = e . ITEM = void 0 ; function y ( ) { var t = 0 < arguments . length && void 0 !== arguments [ 0 ] ?arguments [ 0 ] :{ } ; return null != t . fn && ( ! 1 !== t . visible && ( ! 0 !== t . disabled && ( b ( "td[data-num='" . concat ( t . num , "']" ) ) . onclick = t . fn , b ( "td[data-num='" . concat ( t . num , "']" ) ) . oncontextmenu = t . fn , ! 0 ) ) ) } function o ( ) { var t = b ( ) ; return ! ( null == t || 0 === t . length ) } var i = "item" , c = ( e . ITEM = i , "separator" ) , b = ( e . SEPARATOR = c , function ( ) { return document . querySelector ( ".basicContext " + ( 0 < arguments . length && void 0 !== arguments [ 0 ] ?arguments [ 0 ] :"" ) ) } ) , x = function ( t , n ) { var e = "" , o = "" ; return ! 1 === function ( ) { var t = 0 < arguments . length && void 0 !== arguments [ 0 ] ?arguments [ 0 ] :{ } ; return ! 0 == ( 0 === Object . keys ( t ) . length ) && ( t . type = c ) , null == t . type && ( t . type = i ) , null == t . class && ( t . class = "" ) , ! 1 !== t . visible && ( t . visible = ! 0 ) , null == t . icon && ( t . icon = null ) , null == t . title && ( t . title = "Undefined" ) , ! 0 !== t . disabled && ( t . disabled = ! 1 ) , ! 0 === t . disabled && ( t . class += " basicContext__item--disabled" ) , null != t . fn || t . type === c || ! 1 !== t . disabled || ( console . warn ( "Missing fn for item '" . concat ( t . title , "'" ) ) , ! 1 ) } ( t ) || ! 1 === t . visible ?"" :( t . num = n , null !== t . icon && ( o = "<span class='basicContext__icon " . concat ( t . icon , "'></span>" ) ) , t . type === i ?e = "\n\t\t\t\t <tr class='basicContext__item " . concat ( t . class , "'>\n\t\t\t\t\t\t <td class='basicContext__data' data-num='" ) . concat ( t . num , "'>" ) . concat ( o ) . concat ( t . title , "</td>\n\t\t\t\t </tr>\n\t\t\t\t " ) :t . type === c && ( e = "\n\t\t\t\t <tr class='basicContext__item basicContext__item--separator'></tr>\n\t\t\t\t " ) , e ) } , v = function ( ) { var t = 0 < arguments . length && void 0 !== arguments [ 0 ] ?arguments [ 0 ] :{ } , n = { x :t . clientX , y :t . clientY } ; return "touchend" !== t . type || null != n . x && null != n . y || null != ( t = t . changedTouches ) && 0 < t . length && ( n . x = t [ 0 ] . clientX , n . y = t [ 0 ] . clientY ) , ( null == n . x || n . x < 0 ) && ( n . x = 0 ) , ( null == n . y || n . y < 0 ) && ( n . y = 0 ) , n } , m = ( e . show = function ( t , n , e , o ) { i = "" , i += "\n\t\t\t\t<div class='basicContextContainer'>\n\t\t\t\t\t\t<div class='basicContext'>\n\t\t\t\t\t\t\t\t<table>\n\t\t\t\t\t\t\t\t\t\t<tbody>\n\t\t\t\t" , t . forEach ( function ( t , n ) { return i += x ( t , n ) } ) ; var i , c , l , r , a , s , u , f , d = i += "\n\t\t\t\t\t\t\t\t\t\t</tbody>\n\t\t\t\t\t\t\t\t</table>\n\t\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t\t" , d = ( document . body . insertAdjacentHTML ( "beforeend" , d ) , b ( ) ) , p = ( l = d , c = v ( c = n ) , r = c . x , a = c . y , s = document . querySelector ( ".basicContextContainer" ) , p = s . offsetWidth , s = s . offsetHeight , u = l . offsetWidth , f = l . offsetHeight , p < r + u && ( r -= r + u - p ) , s < a + f && ( a -= a + f - s ) , s < f && ( a = 0 , l . classList . add ( "basicContext--scrollable" ) ) , u = c . x - r , { x :r , y :a , rx :u , ry :c . y - a } ) ; return d . style . left = "" . concat ( p . x , "px" ) , d . style . top = "" . concat ( p . y , "px" ) , d . style . transformOrigin = "" . concat ( p . rx , "px " ) . concat ( p . ry , "px" ) , d . style . opacity = 1 , d . parentElement . onclick = e = null == e ?m :e , d . parentElement . oncontextmenu = e , t . forEach ( y ) , "function" == typeof n . preventDefault && n . preventDefault ( ) , "function" == typeof n . stopPropagation && n . stopPropagation ( ) , "function" == typeof o && o ( ) , ! 0 } , e . visible = o , function ( ) { var t ; return ! 1 !== o ( ) && ( ( t = document . querySelector ( ".basicContextContainer" ) ) . parentElement . removeChild ( t ) , ! 0 ) } ) ; e . close = m } , { } ] } , { } , [ 1 ] ) ( 1 ) } ) ;
1112"use strict" ;
1213
13- var _typeof = typeof Symbol === "function" && typeof Symbol . iterator === "symbol" ? function ( obj ) { return typeof obj ; } : function ( obj ) { return obj && typeof Symbol === "function" && obj . constructor === Symbol && obj !== Symbol . prototype ? "symbol" : typeof obj ; } ;
14-
1514var _templateObject = _taggedTemplateLiteral ( [ "<svg class='iconic " , "'><use xlink:href='#" , "' /></svg>" ] , [ "<svg class='iconic " , "'><use xlink:href='#" , "' /></svg>" ] ) ,
1615 _templateObject2 = _taggedTemplateLiteral ( [ "<div class='divider'><h1>$" , "</h1></div>" ] , [ "<div class='divider'><h1>$" , "</h1></div>" ] ) ,
1716 _templateObject3 = _taggedTemplateLiteral ( [ "<div id='" , "' class='edit'>" , "</div>" ] , [ "<div id='" , "' class='edit'>" , "</div>" ] ) ,
@@ -246,7 +245,7 @@ csrf.getCSRFCookieValue = function () {
246245 // When we send back the value to the server as part of an AJAX request,
247246 // Laravel expects an unpadded value.
248247 // Hence, we must remove the `%3D`.
249- return cookie ? cookie . split ( "=" ) [ 1 ] . trim ( ) . replaceAll ( " %3D" , "" ) : null ;
248+ return cookie ? cookie . split ( "=" ) [ 1 ] . trim ( ) . replace ( / % 3 D / g , "" ) : null ;
250249} ;
251250
252251/**
@@ -1733,7 +1732,9 @@ sidebar.toggle = function (is_user_initiated) {
17331732 header . dom ( ".button--info" ) . toggleClass ( "active" ) ;
17341733 lychee . content . toggleClass ( "content--sidebar" ) ;
17351734 lychee . imageview . toggleClass ( "image--sidebar" ) ;
1736- if ( typeof view !== "undefined" ) view . album . content . justify ( album . json ? album . json . photos : [ ] ) ;
1735+ setTimeout ( function ( ) {
1736+ return view . album . content . justify ( ) ;
1737+ } , 0 ) ;
17371738 sidebar . dom ( ) . toggleClass ( "active" ) ;
17381739 if ( photo . updateSizeLivePhotoDuringAnimation ) photo . updateSizeLivePhotoDuringAnimation ( ) ;
17391740
@@ -3754,230 +3755,4 @@ var SmartAlbumID = Object.freeze({
37543755 * @property {number } severity - either `'debug'`, `'info'`, `'notice'`, `'warning'`, `'error'`, `'critical'` or `'emergency'`
37553756 * @property {?string } path - the path to the affected file or directory
37563757 * @property {string } message - a message text
3757- */
3758-
3759- ( function ( window , factory ) {
3760- var basicContext = factory ( window , window . document ) ;
3761- window . basicContext = basicContext ;
3762- if ( ( typeof module === "undefined" ? "undefined" : _typeof ( module ) ) == "object" && module . exports ) {
3763- module . exports = basicContext ;
3764- }
3765- } ) ( window , function l ( window , document ) {
3766- var ITEM = "item" ,
3767- SEPARATOR = "separator" ;
3768-
3769- var dom = function dom ( ) {
3770- var elem = arguments . length > 0 && arguments [ 0 ] !== undefined ? arguments [ 0 ] : "" ;
3771-
3772- return document . querySelector ( ".basicContext " + elem ) ;
3773- } ;
3774-
3775- var valid = function valid ( ) {
3776- var item = arguments . length > 0 && arguments [ 0 ] !== undefined ? arguments [ 0 ] : { } ;
3777-
3778- var emptyItem = Object . keys ( item ) . length === 0 ? true : false ;
3779-
3780- if ( emptyItem === true ) item . type = SEPARATOR ;
3781- if ( item . type == null ) item . type = ITEM ;
3782- if ( item . class == null ) item . class = "" ;
3783- if ( item . visible !== false ) item . visible = true ;
3784- if ( item . icon == null ) item . icon = null ;
3785- if ( item . title == null ) item . title = "Undefined" ;
3786-
3787- // Add disabled class when item disabled
3788- if ( item . disabled !== true ) item . disabled = false ;
3789- if ( item . disabled === true ) item . class += " basicContext__item--disabled" ;
3790-
3791- // Item requires a function when
3792- // it's not a separator and not disabled
3793- if ( item . fn == null && item . type !== SEPARATOR && item . disabled === false ) {
3794- console . warn ( "Missing fn for item '" + item . title + "'" ) ;
3795- return false ;
3796- }
3797-
3798- return true ;
3799- } ;
3800-
3801- var buildItem = function buildItem ( item , num ) {
3802- var html = "" ,
3803- span = "" ;
3804-
3805- // Parse and validate item
3806- if ( valid ( item ) === false ) return "" ;
3807-
3808- // Skip when invisible
3809- if ( item . visible === false ) return "" ;
3810-
3811- // Give item a unique number
3812- item . num = num ;
3813-
3814- // Generate span/icon-element
3815- if ( item . icon !== null ) span = "<span class='basicContext__icon " + item . icon + "'></span>" ;
3816-
3817- // Generate item
3818- if ( item . type === ITEM ) {
3819- html = "\n\t\t <tr class='basicContext__item " + item . class + "'>\n\t\t <td class='basicContext__data' data-num='" + item . num + "'>" + span + item . title + "</td>\n\t\t </tr>\n\t\t " ;
3820- } else if ( item . type === SEPARATOR ) {
3821- html = "\n\t\t <tr class='basicContext__item basicContext__item--separator'></tr>\n\t\t " ;
3822- }
3823-
3824- return html ;
3825- } ;
3826-
3827- var build = function build ( items ) {
3828- var html = "" ;
3829-
3830- html += "\n\t <div class='basicContextContainer'>\n\t <div class='basicContext'>\n\t <table>\n\t <tbody>\n\t " ;
3831-
3832- items . forEach ( function ( item , i ) {
3833- return html += buildItem ( item , i ) ;
3834- } ) ;
3835-
3836- html += "\n\t </tbody>\n\t </table>\n\t </div>\n\t </div>\n\t " ;
3837-
3838- return html ;
3839- } ;
3840-
3841- var getNormalizedEvent = function getNormalizedEvent ( ) {
3842- var e = arguments . length > 0 && arguments [ 0 ] !== undefined ? arguments [ 0 ] : { } ;
3843-
3844- var pos = {
3845- x : e . clientX ,
3846- y : e . clientY
3847- } ;
3848-
3849- if ( e . type === "touchend" && ( pos . x == null || pos . y == null ) ) {
3850- // We need to capture clientX and clientY from original event
3851- // when the event 'touchend' does not return the touch position
3852-
3853- var touches = e . changedTouches ;
3854-
3855- if ( touches != null && touches . length > 0 ) {
3856- pos . x = touches [ 0 ] . clientX ;
3857- pos . y = touches [ 0 ] . clientY ;
3858- }
3859- }
3860-
3861- // Position unknown
3862- if ( pos . x == null || pos . x < 0 ) pos . x = 0 ;
3863- if ( pos . y == null || pos . y < 0 ) pos . y = 0 ;
3864-
3865- return pos ;
3866- } ;
3867-
3868- var getPosition = function getPosition ( e , context ) {
3869- // Get the click position
3870- var normalizedEvent = getNormalizedEvent ( e ) ;
3871-
3872- // Set the initial position
3873- var x = normalizedEvent . x ,
3874- y = normalizedEvent . y ;
3875-
3876- var container = document . querySelector ( ".basicContextContainer" ) ;
3877-
3878- // Get size of browser
3879- var browserSize = {
3880- width : container . offsetWidth ,
3881- height : container . offsetHeight
3882- } ;
3883-
3884- // Get size of context
3885- var contextSize = {
3886- width : context . offsetWidth ,
3887- height : context . offsetHeight
3888- } ;
3889-
3890- // Fix position based on context and browser size
3891- if ( x + contextSize . width > browserSize . width ) x = x - ( x + contextSize . width - browserSize . width ) ;
3892- if ( y + contextSize . height > browserSize . height ) y = y - ( y + contextSize . height - browserSize . height ) ;
3893-
3894- // Make context scrollable and start at the top of the browser
3895- // when context is higher than the browser
3896- if ( contextSize . height > browserSize . height ) {
3897- y = 0 ;
3898- context . classList . add ( "basicContext--scrollable" ) ;
3899- }
3900-
3901- // Calculate the relative position of the mouse to the context
3902- var rx = normalizedEvent . x - x ,
3903- ry = normalizedEvent . y - y ;
3904-
3905- return { x : x , y : y , rx : rx , ry : ry } ;
3906- } ;
3907-
3908- var bind = function bind ( ) {
3909- var item = arguments . length > 0 && arguments [ 0 ] !== undefined ? arguments [ 0 ] : { } ;
3910-
3911- if ( item . fn == null ) return false ;
3912- if ( item . visible === false ) return false ;
3913- if ( item . disabled === true ) return false ;
3914-
3915- dom ( "td[data-num='" + item . num + "']" ) . onclick = item . fn ;
3916- dom ( "td[data-num='" + item . num + "']" ) . oncontextmenu = item . fn ;
3917-
3918- return true ;
3919- } ;
3920-
3921- var show = function show ( items , e , fnClose , fnCallback ) {
3922- // Build context
3923- var html = build ( items ) ;
3924-
3925- // Add context to the body
3926- document . body . insertAdjacentHTML ( "beforeend" , html ) ;
3927-
3928- // Cache the context
3929- var context = dom ( ) ;
3930-
3931- // Calculate position
3932- var position = getPosition ( e , context ) ;
3933-
3934- // Set position
3935- context . style . left = position . x + "px" ;
3936- context . style . top = position . y + "px" ;
3937- context . style . transformOrigin = position . rx + "px " + position . ry + "px" ;
3938- context . style . opacity = 1 ;
3939-
3940- // Close fn fallback
3941- if ( fnClose == null ) fnClose = close ;
3942-
3943- // Bind click on background
3944- context . parentElement . onclick = fnClose ;
3945- context . parentElement . oncontextmenu = fnClose ;
3946-
3947- // Bind click on items
3948- items . forEach ( bind ) ;
3949-
3950- // Do not trigger default event or further propagation
3951- if ( typeof e . preventDefault === "function" ) e . preventDefault ( ) ;
3952- if ( typeof e . stopPropagation === "function" ) e . stopPropagation ( ) ;
3953-
3954- // Call callback when a function
3955- if ( typeof fnCallback === "function" ) fnCallback ( ) ;
3956-
3957- return true ;
3958- } ;
3959-
3960- var visible = function visible ( ) {
3961- var elem = dom ( ) ;
3962-
3963- return ! ( elem == null || elem . length === 0 ) ;
3964- } ;
3965-
3966- var close = function close ( ) {
3967- if ( visible ( ) === false ) return false ;
3968-
3969- var container = document . querySelector ( ".basicContextContainer" ) ;
3970-
3971- container . parentElement . removeChild ( container ) ;
3972-
3973- return true ;
3974- } ;
3975-
3976- return {
3977- ITEM : ITEM ,
3978- SEPARATOR : SEPARATOR ,
3979- show : show ,
3980- visible : visible ,
3981- close : close
3982- } ;
3983- } ) ;
3758+ */
0 commit comments