2025-12-12 13:14:39 +01:00
var blocksyCustomizerSync ; ! function ( ) { var e = { 41 : function ( e , t , o ) { "use strict" ; var r = o ( 655 ) , n = o ( 8068 ) , a = o ( 9675 ) , i = o ( 5795 ) ; e . exports = function ( e , t , o ) { if ( ! e || "object" != typeof e && "function" != typeof e ) throw new a ( "`obj` must be an object or a function`" ) ; if ( "string" != typeof t && "symbol" != typeof t ) throw new a ( "`property` must be a string or a symbol`" ) ; if ( arguments . length > 3 && "boolean" != typeof arguments [ 3 ] && null !== arguments [ 3 ] ) throw new a ( "`nonEnumerable`, if provided, must be a boolean or null" ) ; if ( arguments . length > 4 && "boolean" != typeof arguments [ 4 ] && null !== arguments [ 4 ] ) throw new a ( "`nonWritable`, if provided, must be a boolean or null" ) ; if ( arguments . length > 5 && "boolean" != typeof arguments [ 5 ] && null !== arguments [ 5 ] ) throw new a ( "`nonConfigurable`, if provided, must be a boolean or null" ) ; if ( arguments . length > 6 && "boolean" != typeof arguments [ 6 ] ) throw new a ( "`loose`, if provided, must be a boolean" ) ; var l = arguments . length > 3 ? arguments [ 3 ] : null , c = arguments . length > 4 ? arguments [ 4 ] : null , s = arguments . length > 5 ? arguments [ 5 ] : null , u = arguments . length > 6 && arguments [ 6 ] , p = ! ! i && i ( e , t ) ; if ( r ) r ( e , t , { configurable : null === s && p ? p . configurable : ! s , enumerable : null === l && p ? p . enumerable : ! l , value : o , writable : null === c && p ? p . writable : ! c } ) ; else { if ( ! u && ( l || c || s ) ) throw new n ( "This environment does not support defining a property as non-configurable, non-writable, or non-enumerable." ) ; e [ t ] = o } } } , 76 : function ( e ) { "use strict" ; e . exports = Function . prototype . call } , 78 : function ( e , t , o ) { "use strict" ; o . r ( t ) , o . d ( t , { handleMenuOptions : function ( ) { return d } , handleMenuVariables : function ( ) { return p } } ) ; var r = o ( 4705 ) , n = o ( 307 ) , a = o ( 6621 ) , i = o . n ( a ) , l = o ( 9991 ) , c = o ( 5617 ) ; function s ( e , t ) { var o = Object . keys ( e ) ; if ( Object . getOwnPropertySymbols ) { var r = Object . getOwnPropertySymbols ( e ) ; t && ( r = r . filter ( function ( t ) { return Object . getOwnPropertyDescriptor ( e , t ) . enumerable } ) ) , o . push . apply ( o , r ) } return o } function u ( e ) { for ( var t = 1 ; t < arguments . length ; t ++ ) { var o = null != arguments [ t ] ? arguments [ t ] : { } ; t % 2 ? s ( Object ( o ) , ! 0 ) . forEach ( function ( t ) { ( 0 , r . A ) ( e , t , o [ t ] ) } ) : Object . getOwnPropertyDescriptors ? Object . defineProperties ( e , Object . getOwnPropertyDescriptors ( o ) ) : s ( Object ( o ) ) . forEach ( function ( t ) { Object . defineProperty ( e , t , Object . getOwnPropertyDescriptor ( o , t ) ) } ) } return e } const p = function ( e ) { let { itemId : t } = e ; return u ( u ( { footerMenuItemsSpacing : { selector : ( 0 , l . assembleSelector ) ( ( 0 , l . getRootSelectorFor ) ( { itemId : t , panelType : "footer" } ) ) , variable : "menu-items-spacing" , responsive : ! 0 , unit : "px" } , footerMenuAlignment : { selector : ( 0 , l . assembleSelector ) ( ( 0 , l . mutateSelector ) ( { selector : ( 0 , l . getRootSelectorFor ) ( { itemId : t , panelType : "footer" } ) , operation : "replace-last" , to _add : ` [data-column=" ${ t } "] ` } ) ) , variable : "horizontal-alignment" , responsive : ! 0 , unit : "" } , footerMenuVerticalAlignment : { selector : ( 0 , l . assembleSelector ) ( ( 0 , l . mutateSelector ) ( { selector : ( 0 , l . getRootSelectorFor ) ( { itemId : t , panelType : "footer" } ) , operation : "replace-last" , to _add : ` [data-column=" ${ t } "] ` } ) ) , variable : "vertical-alignment" , responsive : ! 0 , unit : "" } } , ( 0 , n . typographyOption ) ( { id : "footerMenuFont" , selector : ( 0 , l . assembleSelector ) ( ( 0 , l . mutateSelector ) ( { selector : ( 0 , l . getRootSelectorFor ) ( { itemId : t , panelType : "footer" } ) , operation : "suffix" , to _add : "ul" } ) ) } ) ) , { } , { footerMenuFontColor : [ { selector : ( 0 , l . assembleSelector ) ( ( 0 , l . mutateSelector ) ( { selector : ( 0 , l . getRootSelectorFor ) ( { itemId : t , panelType : "footer" } ) , operation : "suffix" , to _add : "> ul > li > a" } ) ) , variable : "theme-link-initial-color" , type : "color:default" } , { selector : ( 0 , l . assembleSelector ) ( ( 0 , l . mutateSelector ) ( { selector : ( 0 , l . getRootSelectorFor ) ( { itemId : t , panelType : "footer" } ) , operation : "suffix" , to _add : "> ul > li > a" } ) ) , variable : "theme-link-hover-color" , type : "color:hover" } , { selector : ( 0 , l . assembleSelector ) ( ( 0 , l . mutateSelector ) ( { selector : ( 0 , l . getRootSelectorFor ) ( { itemId : t , panelType : "footer" } ) , operation : "suffix" , to _add : "> ul > li > a" } ) ) , variable : "theme-link-active-color" , type : "color:active" } ] , footerMenuMargin : { selector : ( 0 , l . assembleSelector ) ( ( 0 , l . getRootSelectorFor ) ( { itemId : t , panelType : "footer" } ) ) , type : "spacing" , variable : "margin" , responsive : ! 0 , important : ! 0 } , menu _items _direction : { variable : "menu-item-width" , selector : ( 0 , l . assembleSelector ) ( ( 0 , l . getRootSelectorFor ) ( { itemId : t , panelTyp
2025-08-27 08:44:30 +02:00
/ * *
* @ license
* Copyright ( c ) 2016 The Polymer Project Authors . All rights reserved .
* This code may only be used under the BSD style license found at
* http : //polymer.github.io/LICENSE.txt The complete set of authors may be found
* at http : //polymer.github.io/AUTHORS.txt The complete set of contributors may
* be found at http : //polymer.github.io/CONTRIBUTORS.txt Code distributed by
* Google as part of the polymer project is also subject to an additional IP
* rights grant found at http : //polymer.github.io/PATENTS.txt
* /
Object . defineProperty ( e , "__esModule" , { value : ! 0 } ) ; var t ; e . matcher = { whitespace : /\s/ , whitespaceGreedy : /(\s+)/g , commentGreedy : /(\*\/)/g , boundary : /[\(\)\{\}'"@;:\s]/ , stringBoundary : /['"]/ } , ( t = e . nodeType || ( e . nodeType = { } ) ) . stylesheet = "stylesheet" , t . comment = "comment" , t . atRule = "atRule" , t . ruleset = "ruleset" , t . expression = "expression" , t . declaration = "declaration" , t . rulelist = "rulelist" , t . discarded = "discarded" } ( d ) ,
/ * *
* @ license
* Copyright ( c ) 2016 The Polymer Project Authors . All rights reserved .
* This code may only be used under the BSD style license found at
* http : //polymer.github.io/LICENSE.txt The complete set of authors may be found
* at http : //polymer.github.io/AUTHORS.txt The complete set of contributors may
* be found at http : //polymer.github.io/CONTRIBUTORS.txt Code distributed by
* Google as part of the polymer project is also subject to an additional IP
* rights grant found at http : //polymer.github.io/PATENTS.txt
* /
Object . defineProperty ( p , "__esModule" , { value : ! 0 } ) ; const f = n ( ) , m = d ; p . iterateOverAst = function * e ( t ) { switch ( yield t , t . type ) { case m . nodeType . stylesheet : for ( const o of t . rules ) yield * e ( o ) ; return ; case m . nodeType . ruleset : return yield * e ( t . rulelist ) ; case m . nodeType . rulelist : for ( const o of t . rules ) yield * e ( o ) ; return ; case m . nodeType . declaration : return void ( void 0 !== t . value && ( yield * e ( t . value ) ) ) ; case m . nodeType . atRule : return void ( t . rulelist && ( yield * e ( t . rulelist ) ) ) ; case m . nodeType . expression : case m . nodeType . comment : case m . nodeType . discarded : return ; default : const o = t ; console . error ( ` Got a node of unknown type: ${ f . inspect ( o ) } ` ) } } ; var b = { } ;
/ * *
* @ license
* Copyright ( c ) 2016 The Polymer Project Authors . All rights reserved .
* This code may only be used under the BSD style license found at
* http : //polymer.github.io/LICENSE.txt The complete set of authors may be found
* at http : //polymer.github.io/AUTHORS.txt The complete set of contributors may
* be found at http : //polymer.github.io/CONTRIBUTORS.txt Code distributed by
* Google as part of the polymer project is also subject to an additional IP
* rights grant found at http : //polymer.github.io/PATENTS.txt
2025-12-12 13:14:39 +01:00
* / O b j e c t . d e f i n e P r o p e r t y ( b , " _ _ e s M o d u l e " , { v a l u e : ! 0 } ) ; c o n s t y = d ; b . N o d e F a c t o r y = c l a s s { s t y l e s h e e t ( e , t ) { r e t u r n { t y p e : y . n o d e T y p e . s t y l e s h e e t , r u l e s : e , r a n g e : t } } a t R u l e ( e , t , o = v o i d 0 , r , n , a ) { r e t u r n { t y p e : y . n o d e T y p e . a t R u l e , n a m e : e , p a r a m e t e r s : t , r u l e l i s t : o , n a m e R a n g e : r , p a r a m e t e r s R a n g e : n , r a n g e : a } } c o m m e n t ( e , t ) { r e t u r n { t y p e : y . n o d e T y p e . c o m m e n t , v a l u e : e , r a n g e : t } } r u l e l i s t ( e , t ) { r e t u r n { t y p e : y . n o d e T y p e . r u l e l i s t , r u l e s : e , r a n g e : t } } r u l e s e t ( e , t , o , r ) { r e t u r n { t y p e : y . n o d e T y p e . r u l e s e t , s e l e c t o r : e , r u l e l i s t : t , s e l e c t o r R a n g e : o , r a n g e : r } } d e c l a r a t i o n ( e , t , o , r ) { r e t u r n { t y p e : y . n o d e T y p e . d e c l a r a t i o n , n a m e : e , v a l u e : t , n a m e R a n g e : o , r a n g e : r } } e x p r e s s i o n ( e , t ) { r e t u r n { t y p e : y . n o d e T y p e . e x p r e s s i o n , t e x t : e , r a n g e : t } } d i s c a r d e d ( e , t ) { r e t u r n { t y p e : y . n o d e T y p e . d i s c a r d e d , t e x t : e , r a n g e : t } } } ; v a r h = { } ;
2025-08-27 08:44:30 +02:00
/ * *
* @ license
* Copyright ( c ) 2016 The Polymer Project Authors . All rights reserved .
* This code may only be used under the BSD style license found at
* http : //polymer.github.io/LICENSE.txt The complete set of authors may be found
* at http : //polymer.github.io/AUTHORS.txt The complete set of contributors may
* be found at http : //polymer.github.io/CONTRIBUTORS.txt Code distributed by
* Google as part of the polymer project is also subject to an additional IP
* rights grant found at http : //polymer.github.io/PATENTS.txt
2025-12-12 13:14:39 +01:00
* / O b j e c t . d e f i n e P r o p e r t y ( h , " _ _ e s M o d u l e " , { v a l u e : ! 0 } ) ; h . N o d e V i s i t o r = c l a s s { c o n s t r u c t o r ( ) { t h i s . p a t h _ = [ ] } g e t p a t h ( ) { r e t u r n t h i s . p a t h _ } v i s i t ( e ) { l e t t ; r e t u r n t h i s [ e . t y p e ] & & ( t h i s . p a t h _ . p u s h ( e ) , t = t h i s [ e . t y p e ] ( e ) , t h i s . p a t h _ . p o p ( ) ) , t } } ; v a r v = { } , g = { } ; ! f u n c t i o n ( e ) { v a r t ;
2025-08-27 08:44:30 +02:00
/ * *
* @ license
* Copyright ( c ) 2016 The Polymer Project Authors . All rights reserved .
* This code may only be used under the BSD style license found at
* http : //polymer.github.io/LICENSE.txt The complete set of authors may be found
* at http : //polymer.github.io/AUTHORS.txt The complete set of contributors may
* be found at http : //polymer.github.io/CONTRIBUTORS.txt Code distributed by
* Google as part of the polymer project is also subject to an additional IP
* rights grant found at http : //polymer.github.io/PATENTS.txt
* /
Object . defineProperty ( e , "__esModule" , { value : ! 0 } ) , function ( e ) { e [ e . none = 0 ] = "none" , e [ e . whitespace = Math . pow ( 2 , 0 ) ] = "whitespace" , e [ e . string = Math . pow ( 2 , 1 ) ] = "string" , e [ e . comment = Math . pow ( 2 , 2 ) ] = "comment" , e [ e . word = Math . pow ( 2 , 3 ) ] = "word" , e [ e . boundary = Math . pow ( 2 , 4 ) ] = "boundary" , e [ e . propertyBoundary = Math . pow ( 2 , 5 ) ] = "propertyBoundary" , e [ e . openParenthesis = Math . pow ( 2 , 6 ) | e . boundary ] = "openParenthesis" , e [ e . closeParenthesis = Math . pow ( 2 , 7 ) | e . boundary ] = "closeParenthesis" , e [ e . at = Math . pow ( 2 , 8 ) | e . boundary ] = "at" , e [ e . openBrace = Math . pow ( 2 , 9 ) | e . boundary ] = "openBrace" , e [ e . closeBrace = Math . pow ( 2 , 10 ) | e . propertyBoundary | e . boundary ] = "closeBrace" , e [ e . semicolon = Math . pow ( 2 , 11 ) | e . propertyBoundary | e . boundary ] = "semicolon" , e [ e . colon = Math . pow ( 2 , 12 ) | e . boundary | e . word ] = "colon" , e [ e . hyphen = Math . pow ( 2 , 13 ) ] = "hyphen" , e [ e . underscore = Math . pow ( 2 , 14 ) ] = "underscore" } ( t = e . TokenType || ( e . TokenType = { } ) ) ; class o { constructor ( e , t , o ) { this . type = e , this . start = t , this . end = o , this . previous = null , this . next = null } is ( e ) { return ( this . type & e ) === e } } o . type = t , e . Token = o ; const r = { "(" : o . type . openParenthesis , ")" : o . type . closeParenthesis , ":" : o . type . colon , "@" : o . type . at , "{" : o . type . openBrace , "}" : o . type . closeBrace , ";" : o . type . semicolon , "-" : o . type . hyphen , _ : o . type . underscore } ; e . boundaryTokenTypes = r } ( g ) ; var _ = { } ;
/ * *
* @ license
* Copyright ( c ) 2016 The Polymer Project Authors . All rights reserved .
* This code may only be used under the BSD style license found at
* http : //polymer.github.io/LICENSE.txt The complete set of authors may be found
* at http : //polymer.github.io/AUTHORS.txt The complete set of contributors may
* be found at http : //polymer.github.io/CONTRIBUTORS.txt Code distributed by
* Google as part of the polymer project is also subject to an additional IP
* rights grant found at http : //polymer.github.io/PATENTS.txt
* /Object.defineProperty(_,"__esModule",{value:!0});const S=d,w=g;_.Tokenizer=class{constructor(e){this.cursorToken_=new w.Token(w.Token.type.none,0,0),this.currentToken_=null,this.cssText=e}get offset(){return this.cursorToken_.end}get currentToken(){return null==this.currentToken_&&(this.currentToken_=this.getNextToken_()),this.currentToken_}advance(){let e;return null!=this.currentToken_?(e=this.currentToken_,this.currentToken_=null):e=this.getNextToken_(),e}slice(e,t=void 0){const{start:o,end:r}=this.getRange(e,t);return this.cssText.substring(o,r)}getRange(e,t=void 0){return{start:e.start,end:(t||e).end}}trimRange({start:e,end:t}){for(;e<=t&&/ \ s / . test ( this . cssText . charAt ( e ) ) ; ) e ++ ; for ( ; e <= t && t > 0 && /\s/ . test ( this . cssText . charAt ( t - 1 ) ) ; ) t -- ; return { start : e , end : t } } flush ( ) { const e = [ ] ; for ( ; this . currentToken ; ) e . push ( this . advance ( ) ) ; return e } getNextToken _ ( ) { const e = this . cssText [ this . offset ] ; let t ; return this . currentToken _ = null , this . offset >= this . cssText . length ? null : ( t = S . matcher . whitespace . test ( e ) ? this . tokenizeWhitespace ( this . offset ) : S . matcher . stringBoundary . test ( e ) ? this . tokenizeString ( this . offset ) : "/" === e && "*" === this . cssText [ this . offset + 1 ] ? this . tokenizeComment ( this . offset ) : S . matcher . boundary . test ( e ) ? this . tokenizeBoundary ( this . offset ) : this . tokenizeWord ( this . offset ) , t . previous = this . cursorToken _ , this . cursorToken _ . next = t , this . cursorToken _ = t , t ) } tokenizeString ( e ) { const t = this . cssText [ e ] ; let o = ! 1 ; const r = e ; let n ; for ( ; n = this . cssText [ ++ e ] ; ) if ( o ) o = ! 1 ; else { if ( n === t ) { ++ e ; break } "\\" === n && ( o = ! 0 ) } return new w . Token ( w . Token . type . string , r , e ) } tokenizeWord ( e ) { const t = e ; let o ; for ( ; ( o = this . cssText [ e ] ) && ! S . matcher . boundary . test ( o ) ; ) e ++ ; return new w . Token ( w . Token . type . word , t , e ) } tokenizeWhitespace ( e ) { const t = e ; S . matcher . whitespaceGreedy . lastIndex = e ; const o = S . matcher . whitespaceGreedy . exec ( this . cssText ) ; return null != o && o . index === e && ( e = S . matcher . whitespaceGreedy . lastIndex ) , new w . Token ( w . Token . type . whitespace , t , e ) } tokenizeComment ( e ) { const t = e ; S . matcher . commentGreedy . lastIndex = e ; return e = null == S . matcher . commentGreedy . exec ( this . cssText ) ? this . cssText . length : S . matcher . commentGreedy . lastIndex , new w . Token ( w . Token . type . comment , t , e ) } tokenizeBoundary ( e ) { const t = w . boundaryTokenTypes [ this . cssText [ e ] ] || w . Token . type . boundary ; return new w . Token ( t , e , e + 1 ) } } ,
/ * *
* @ license
* Copyright ( c ) 2016 The Polymer Project Authors . All rights reserved .
* This code may only be used under the BSD style license found at
* http : //polymer.github.io/LICENSE.txt The complete set of authors may be found
* at http : //polymer.github.io/AUTHORS.txt The complete set of contributors may
* be found at http : //polymer.github.io/CONTRIBUTORS.txt Code distributed by
* Google as part of the polymer project is also subject to an additional IP
* rights grant found at http : //polymer.github.io/PATENTS.txt
* /
2025-12-12 13:14:39 +01:00
Object . defineProperty ( v , "__esModule" , { value : ! 0 } ) ; const x = b , k = g , O = _ ; v . Parser = class { constructor ( e = new x . NodeFactory ) { this . nodeFactory = e } parse ( e ) { return this . parseStylesheet ( new O . Tokenizer ( e ) ) } parseStylesheet ( e ) { return this . nodeFactory . stylesheet ( this . parseRules ( e ) , { start : 0 , end : e . cssText . length } ) } parseRules ( e ) { const t = [ ] ; for ( ; e . currentToken ; ) { const o = this . parseRule ( e ) ; o && t . push ( o ) } return t } parseRule ( e ) { const t = e . currentToken ; return null === t ? null : t . is ( k . Token . type . whitespace ) ? ( e . advance ( ) , null ) : t . is ( k . Token . type . comment ) ? this . parseComment ( e ) : t . is ( k . Token . type . word ) ? this . parseDeclarationOrRuleset ( e ) : t . is ( k . Token . type . propertyBoundary ) ? this . parseUnknown ( e ) : t . is ( k . Token . type . at ) ? this . parseAtRule ( e ) : this . parseUnknown ( e ) } parseComment ( e ) { const t = e . advance ( ) ; return null === t ? null : this . nodeFactory . comment ( e . slice ( t ) , { start : t . start , end : t . end } ) } parseUnknown ( e ) { const t = e . advance ( ) ; let o ; if ( null === t ) return null ; for ( ; e . currentToken && e . currentToken . is ( k . Token . type . boundary ) ; ) o = e . advance ( ) ; return this . nodeFactory . discarded ( e . slice ( t , o ) , e . getRange ( t , o ) ) } parseAtRule ( e ) { let t , o , r , n , a ; if ( ! e . currentToken ) return null ; const i = e . currentToken . start ; for ( ; e . currentToken ; ) if ( e . currentToken . is ( k . Token . type . whitespace ) ) e . advance ( ) ; else if ( ! t && e . currentToken . is ( k . Token . type . at ) ) { e . advance ( ) ; const r = e . currentToken ; let n ; for ( ; e . currentToken && e . currentToken . is ( k . Token . type . word ) ; ) n = e . advance ( ) ; o = e . getRange ( r , n ) , t = e . cssText . slice ( o . start , o . end ) } else { if ( e . currentToken . is ( k . Token . type . openBrace ) ) { r = this . parseRulelist ( e ) ; break } if ( e . currentToken . is ( k . Token . type . propertyBoundary ) ) { e . advance ( ) ; break } null == n ? n = e . advance ( ) : a = e . advance ( ) } if ( void 0 === t || void 0 === o ) return null ; let l , c = "" ; n && ( l = e . trimRange ( e . getRange ( n , a ) ) , c = e . cssText . slice ( l . start , l . end ) ) ; const s = e . currentToken ? e . currentToken . previous . end : e . cssText . length ; return this . nodeFactory . atRule ( t , c , r , o , l , { start : i , end : s } ) } parseRulelist ( e ) { const t = [ ] , o = e . currentToken . start ; let r ; for ( e . advance ( ) ; e . currentToken ; ) { if ( e . currentToken . is ( k . Token . type . closeBrace ) ) { r = e . currentToken , e . advance ( ) ; break } { const o = this . parseRule ( e ) ; o && t . push ( o ) } } const n = r ? r . end : e . cssText . length ; return this . nodeFactory . rulelist ( t , { start : o , end : n } ) } parseDeclarationOrRuleset ( e ) { let t = null , o = null , r = null ; for ( ; e . currentToken ; ) if ( e . currentToken . is ( k . Token . type . whitespace ) ) e . advance ( ) ; else if ( e . currentToken . is ( k . Token . type . openParenthesis ) ) for ( ; e . currentToken && ! e . currentToken . is ( k . Token . type . closeParenthesis ) ; ) e . advance ( ) ; else { if ( e . currentToken . is ( k . Token . type . openBrace ) || e . currentToken . is ( k . Token . type . propertyBoundary ) ) break ; e . currentToken . is ( k . Token . type . colon ) && ( r = e . currentToken ) , null === t ? ( t = e . advance ( ) , o = t ) : o = e . advance ( ) } if ( null === e . currentToken ) return null ; if ( e . currentToken . is ( k . Token . type . propertyBoundary ) ) { const n = e . getRange ( t , r ? r . previous : o ) , a = e . cssText . slice ( n . start , n . end ) ; let i ; if ( r && r . next ) { const t = e . getRange ( r . next , o ) , n = e . trimRange ( t ) , a = e . cssText . slice ( n . start , n . end ) ; i = this . nodeFactory . expression ( a , n ) } e . currentToken . is ( k . Token . type . semicolon ) && e . advance ( ) ; const l = e . trimRange ( e . getRange ( t , e . currentToken && e . currentToken . previous || o ) ) ; return this . nodeFactory . declaration ( a , i , n , l ) } if ( r && r === o ) { const r = this . parseRulelist ( e ) ; e . currentToken . is ( k . Token . type . semicolon ) && e . advance ( ) ; const n = e . getRange ( t , o . previous ) , a = e . cssText . slice ( n . start , n . end ) , i = e . trimRange ( e . getRange ( t , e . currentToken && e . currentToken . previous || o ) ) ; return this . nodeFactory . declaration ( a , r , n , i ) } { const r = e . getRange ( t , o ) , n = e . cssText . slice ( r . start , r . end ) , a = this . parseRulelist ( e ) , i = t . start ; let l ; return l = e . currentToken ? e . currentToken . previous ? e . currentToken . previous . end : t . end : e . cssText . length , this . nodeFactory . ruleset ( n , a , r , { start : i , end : l } ) } } } ; var F = { } ;
2025-08-27 08:44:30 +02:00
/ * *
* @ license
* Copyright ( c ) 2016 The Polymer Project Authors . All rights reserved .
* This code may only be used under the BSD style license found at
* http : //polymer.github.io/LICENSE.txt The complete set of authors may be found
* at http : //polymer.github.io/AUTHORS.txt The complete set of contributors may
* be found at http : //polymer.github.io/CONTRIBUTORS.txt Code distributed by
* Google as part of the polymer project is also subject to an additional IP
* rights grant found at http : //polymer.github.io/PATENTS.txt
2025-12-12 13:14:39 +01:00
* / O b j e c t . d e f i n e P r o p e r t y ( F , " _ _ e s M o d u l e " , { v a l u e : ! 0 } ) ; c o n s t I = d , P = h ; c l a s s R e x t e n d s P . N o d e V i s i t o r { s t r i n g i f y ( e ) { r e t u r n t h i s . v i s i t ( e ) | | " " } [ I . n o d e T y p e . s t y l e s h e e t ] ( e ) { l e t t = " " ; f o r ( l e t o = 0 ; o < e . r u l e s . l e n g t h ; + + o ) t + = t h i s . v i s i t ( e . r u l e s [ o ] ) ; r e t u r n t } [ I . n o d e T y p e . a t R u l e ] ( e ) { r e t u r n ` @ $ { e . n a m e } ` + ( e . p a r a m e t e r s ? ` $ { e . p a r a m e t e r s } ` : " " ) + ( e . r u l e l i s t ? ` $ { t h i s . v i s i t ( e . r u l e l i s t ) } ` : " ; " ) } [ I . n o d e T y p e . r u l e l i s t ] ( e ) { l e t t = " { " ; f o r ( l e t o = 0 ; o < e . r u l e s . l e n g t h ; + + o ) t + = t h i s . v i s i t ( e . r u l e s [ o ] ) ; r e t u r n t + " } " } [ I . n o d e T y p e . c o m m e n t ] ( e ) { r e t u r n ` $ { e . v a l u e } ` } [ I . n o d e T y p e . r u l e s e t ] ( e ) { r e t u r n ` $ { e . s e l e c t o r } $ { t h i s . v i s i t ( e . r u l e l i s t ) } ` } [ I . n o d e T y p e . d e c l a r a t i o n ] ( e ) { r e t u r n n u l l ! = e . v a l u e ? ` $ { e . n a m e } : $ { t h i s . v i s i t ( e . v a l u e ) } ; ` : ` $ { e . n a m e } ; ` } [ I . n o d e T y p e . e x p r e s s i o n ] ( e ) { r e t u r n ` $ { e . t e x t } ` } [ I . n o d e T y p e . d i s c a r d e d ] ( e ) { r e t u r n " " } } F . S t r i n g i f i e r = R ,
2025-08-27 08:44:30 +02:00
/ * *
* @ license
* Copyright ( c ) 2016 The Polymer Project Authors . All rights reserved .
* This code may only be used under the BSD style license found at
* http : //polymer.github.io/LICENSE.txt The complete set of authors may be found
* at http : //polymer.github.io/AUTHORS.txt The complete set of contributors may
* be found at http : //polymer.github.io/CONTRIBUTORS.txt Code distributed by
* Google as part of the polymer project is also subject to an additional IP
* rights grant found at http : //polymer.github.io/PATENTS.txt
* /
2025-12-12 13:14:39 +01:00
Object . defineProperty ( u , "__esModule" , { value : ! 0 } ) ; var j = p ; u . iterateOverAst = j . iterateOverAst ; var T = d ; u . nodeType = T . nodeType ; var A = b ; u . NodeFactory = A . NodeFactory ; var $ = h ; u . NodeVisitor = $ . NodeVisitor ; var C = v , E = u . Parser = C . Parser , D = F , V = u . Stringifier = D . Stringifier , B = g ; u . Token = B . Token ; var q = _ ; u . Tokenizer = q . Tokenizer ; var z = { } , L = function ( ) { z = { } } , M = function ( e ) { if ( "auto" === e || "" === e ) return { value : e , unit : "" } ; var t = parseFloat ( e ) ; return isNaN ( t ) ? { value : "" , unit : "" } : { value : t , unit : e . toString ( ) . replace ( t . toString ( ) , "" ) } } , W = function ( e ) { return e } , H = function ( e ) { return e && "[object Function]" === { } . toString . call ( e ) } , U = function ( e ) { var t = e . variableDescriptor , o = e . value ; return { type : "declaration" , name : t . variableName , value : { type : "expression" , text : o } } } , N = function ( e , t ) { return e . selector && e . selector . desktop ? e . selector [ t ] : e . selector || ":root" } , K = function ( ) { var e = arguments . length > 0 && void 0 !== arguments [ 0 ] ? arguments [ 0 ] : { } , t = ( e = i ( { variableDescriptorsWithValue : [ ] , ast : { } , device : "desktop" } , e ) ) . ast , o = e . variableDescriptorsWithValue . flatMap ( function ( e ) { return e . variableDescriptor . dropSelectors || [ ] } ) ; if ( o . length > 0 && Array . isArray ( t . rules ) ) { var r = new Set ( t . rules . map ( function ( e ) { return e . selector } ) ) ; t = i ( i ( { } , t ) , { } , { rules : t . rules . filter ( function ( e ) { var t = r . has ( e . selector ) , n = "string" == typeof e . selector && o . some ( function ( t ) { return e . selector . includes ( t ) } ) ; return ! ( t && n ) } ) } ) } if ( 0 === e . variableDescriptorsWithValue . length ) return t ; var n , a , s = ( n = e . variableDescriptorsWithValue , a = function ( t ) { var o = t . variableDescriptor ; return N ( o , e . device ) } , n . reduce ( function ( e , t , o ) { var r ; return ( e [ r = a ( t , o , n ) ] || ( e [ r ] = [ ] ) ) . push ( t ) , e } , { } ) ) , u = [ ] , p = { } ; if ( p = i ( i ( { } , t ) , { } , { rules : t . rules . map ( function ( e ) { if ( ! e . selector || ! s [ e . selector ] ) return e ; u . push ( e . selector ) ; var t = s [ e . selector ] , o = [ ] , r = t . filter ( function ( e ) { return ! e . value . includes ( "CT_CSS_SKIP_RULE" ) } ) . reduce ( function ( e , t ) { return i ( i ( { } , e ) , { } , l ( { } , t . variableDescriptor . variableName , t ) ) } , { } ) , n = t . filter ( function ( e ) { return e . value . includes ( "CT_CSS_SKIP_RULE" ) } ) . reduce ( function ( e , t ) { return i ( i ( { } , e ) , { } , l ( { } , t . variableDescriptor . variableName , t ) ) } , { } ) , a = e . rulelist . rules . filter ( function ( e ) { var t = e . type , o = e . name ; return "declaration" !== t || ! n [ o ] } ) . map ( function ( e ) { return "declaration" === e . type && r [ e . name ] ? ( o . push ( e . name ) , i ( i ( { } , e ) , { } , { value : i ( i ( { } , e . value ) , { } , { text : r [ e . name ] . value } ) } ) ) : e } ) ; return o . length !== Object . values ( r ) . length && ( a = [ ] . concat ( c ( a ) , c ( Object . values ( r ) . filter ( function ( e ) { var t = e . variableDescriptor ; return ! o . includes ( t . variableName ) } ) . map ( function ( e ) { return U ( e ) } ) ) ) ) , i ( i ( { } , e ) , { } , { rulelist : i ( i ( { } , e . rulelist ) , { } , { rules : a } ) } ) } ) } ) , u . length !== Object . keys ( s ) . length ) { var d = Object . values ( s ) . filter ( function ( t ) { return ! u . includes ( N ( t [ 0 ] . variableDescriptor , e . device ) ) && ! ! t . find ( function ( e ) { return ! e . value . includes ( "CT_CSS_SKIP_RULE" ) } ) } ) ; p = i ( i ( { } , p ) , { } , { rules : [ ] . concat ( c ( p . rules ) , c ( d . map ( function ( t ) { return { type : "ruleset" , selector : N ( t [ 0 ] . variableDescriptor , e . device ) , rulelist : { type : "rulelist" , rules : t . filter ( function ( e ) { return ! e . value . includes ( "CT_CSS_SKIP_RULE" ) } ) . map ( U ) } } } ) ) ) } ) } return p } , G = function ( ) { var e = arguments . length > 0 && void 0 !== arguments [ 0 ] ? arguments [ 0 ] : { } , t = ( e = i ( { variableDescriptor : { } , value : { } , device : "desktop" } , e ) ) . value ; ( e . variableDescriptor . type || "" ) . indexOf ( "color" ) > - 1 && "CT_CSS_SKIP_RULE" !== e . value && ( t = e . value [ "color" === e . variableDescriptor . type ? "default" : e . variableDescriptor . type . split ( ":" ) [ 1 ] ] . color ) , "border" === ( e . variableDescriptor . type || "" ) && ( t = e . value && "none" !== e . value . style ? "" . concat ( e . value . width , "px " ) . concat ( e . value . style , " " ) . concat ( e . value . color . color ) : "none" , e . variableDescriptor . skip _none && "none" === t && ( t = "CT_CSS_SKIP_RULE" ) ) , "spacing" === ( e . variableDescriptor . type || "" ) && ( t = function ( e , t , o ) { if ( "CT_CSS_SKIP_RULE" === e ) return "CT_CSS_SKIP_RULE" ; e . values || ( e = { values : [ M ( e . top ) , M ( e . right ) , M ( e . bottom ) , M ( e . left ) ] , custom : "" , state : e . linked ? 1 : 2 } ) ; var r = t . transformSpacingValue || W ; if ( 3 === e . state ) return e . custom . trim ( ) ? r ( e . custom . trim ( ) , [ e . custom . trim ( ) ] , o ) : "CT_CSS_SKIP_RULE" ; var n = 0 ; Object . keys ( t ) . includes ( "emptyValue" ) && ( n = t . emptyValue ) ; var a = e . values . map ( function ( t ) { return "" === t . value || "auto" === t . value ? i ( i ( { } , t ) , { } , { value : 1 === e . state ? n : 0 } ) : t } ) , l = ! 0 , c = "" ; return a . forEac