Files
yoga/dist/css-layout.min.js

2 lines
11 KiB
JavaScript

!function(a,b){"function"==typeof define&&define.amd?define([],b):"object"==typeof exports?module.exports=b():a.computeLayout=b()}(this,function(){var a=function(){function a(b){if(b.layout&&!b.isDirty||(b.layout={width:void 0,height:void 0,top:0,left:0,right:0,bottom:0}),b.style||(b.style={}),b.children||(b.children=[]),b.style.measure&&b.children&&b.children.length)throw new Error("Using custom measure function is supported only for leaf nodes.");return b.children.forEach(a),b}function b(a){return void 0===a}function c(a){return a===Q||a===R}function d(a){return a===S||a===T}function e(a,b){if(void 0!==a.style.marginStart&&c(b))return a.style.marginStart;var d=null;switch(b){case"row":d=a.style.marginLeft;break;case"row-reverse":d=a.style.marginRight;break;case"column":d=a.style.marginTop;break;case"column-reverse":d=a.style.marginBottom}return void 0!==d?d:void 0!==a.style.margin?a.style.margin:0}function f(a,b){if(void 0!==a.style.marginEnd&&c(b))return a.style.marginEnd;var d=null;switch(b){case"row":d=a.style.marginRight;break;case"row-reverse":d=a.style.marginLeft;break;case"column":d=a.style.marginBottom;break;case"column-reverse":d=a.style.marginTop}return null!=d?d:void 0!==a.style.margin?a.style.margin:0}function g(a,b){if(void 0!==a.style.paddingStart&&a.style.paddingStart>=0&&c(b))return a.style.paddingStart;var d=null;switch(b){case"row":d=a.style.paddingLeft;break;case"row-reverse":d=a.style.paddingRight;break;case"column":d=a.style.paddingTop;break;case"column-reverse":d=a.style.paddingBottom}return null!=d&&d>=0?d:void 0!==a.style.padding&&a.style.padding>=0?a.style.padding:0}function h(a,b){if(void 0!==a.style.paddingEnd&&a.style.paddingEnd>=0&&c(b))return a.style.paddingEnd;var d=null;switch(b){case"row":d=a.style.paddingRight;break;case"row-reverse":d=a.style.paddingLeft;break;case"column":d=a.style.paddingBottom;break;case"column-reverse":d=a.style.paddingTop}return null!=d&&d>=0?d:void 0!==a.style.padding&&a.style.padding>=0?a.style.padding:0}function i(a,b){if(void 0!==a.style.borderStartWidth&&a.style.borderStartWidth>=0&&c(b))return a.style.borderStartWidth;var d=null;switch(b){case"row":d=a.style.borderLeftWidth;break;case"row-reverse":d=a.style.borderRightWidth;break;case"column":d=a.style.borderTopWidth;break;case"column-reverse":d=a.style.borderBottomWidth}return null!=d&&d>=0?d:void 0!==a.style.borderWidth&&a.style.borderWidth>=0?a.style.borderWidth:0}function j(a,b){if(void 0!==a.style.borderEndWidth&&a.style.borderEndWidth>=0&&c(b))return a.style.borderEndWidth;var d=null;switch(b){case"row":d=a.style.borderRightWidth;break;case"row-reverse":d=a.style.borderLeftWidth;break;case"column":d=a.style.borderBottomWidth;break;case"column-reverse":d=a.style.borderTopWidth}return null!=d&&d>=0?d:void 0!==a.style.borderWidth&&a.style.borderWidth>=0?a.style.borderWidth:0}function k(a,b){return g(a,b)+i(a,b)}function l(a,b){return h(a,b)+j(a,b)}function m(a,b){return i(a,b)+j(a,b)}function n(a,b){return e(a,b)+f(a,b)}function o(a,b){return k(a,b)+l(a,b)}function p(a){return a.style.justifyContent?a.style.justifyContent:"flex-start"}function q(a){return a.style.alignContent?a.style.alignContent:"flex-start"}function r(a,b){return b.style.alignSelf?b.style.alignSelf:a.style.alignItems?a.style.alignItems:"stretch"}function s(a,b){if(b===P){if(a===Q)return R;if(a===R)return Q}return a}function t(a,b){var c;return c=a.style.direction?a.style.direction:N,c===N&&(c=void 0===b?O:b),c}function u(a){return a.style.flexDirection?a.style.flexDirection:S}function v(a,b){return d(a)?s(Q,b):S}function w(a){return a.style.position?a.style.position:"relative"}function x(a){return w(a)===ba&&a.style.flex>0}function y(a){return"wrap"===a.style.flexWrap}function z(a,b){return a.layout[ga[b]]+n(a,b)}function A(a,b){return void 0!==a.style[ga[b]]&&a.style[ga[b]]>=0}function B(a,b){return void 0!==a.layout[ga[b]]&&a.layout[ga[b]]>=0}function C(a,b){return void 0!==a.style[b]}function D(a){return void 0!==a.style.measure}function E(a,b){return void 0!==a.style[b]?a.style[b]:0}function F(a,b,c){var d={row:a.style.minWidth,"row-reverse":a.style.minWidth,column:a.style.minHeight,"column-reverse":a.style.minHeight}[b],e={row:a.style.maxWidth,"row-reverse":a.style.maxWidth,column:a.style.maxHeight,"column-reverse":a.style.maxHeight}[b],f=c;return void 0!==e&&e>=0&&f>e&&(f=e),void 0!==d&&d>=0&&d>f&&(f=d),f}function G(a,b){return a>b?a:b}function H(a,b){B(a,b)||A(a,b)&&(a.layout[ga[b]]=G(F(a,b,a.style[ga[b]]),o(a,b)))}function I(a,b,c){b.layout[ea[c]]=a.layout[ga[c]]-b.layout[ga[c]]-b.layout[fa[c]]}function J(a,b){return void 0!==a.style[da[b]]?E(a,da[b]):-E(a,ea[b])}function K(a,d,g,h){var j=t(a,h),K=s(u(a),j),N=v(K,j),O=s(Q,j);H(a,K),H(a,N),a.layout.direction=j,a.layout[da[K]]+=e(a,K)+J(a,K),a.layout[ea[K]]+=f(a,K)+J(a,K),a.layout[da[N]]+=e(a,N)+J(a,N),a.layout[ea[N]]+=f(a,N)+J(a,N);var P=a.children.length,ha=o(a,O),ia=o(a,S);if(D(a)){var ja=B(a,O),ka=M;ka=A(a,O)?a.style.width:ja?a.layout[ga[O]]:d-n(a,O),ka-=ha;var la=M;la=A(a,S)?a.style.height:B(a,S)?a.layout[ga[S]]:g-n(a,O),la-=o(a,S);var ma=!A(a,O)&&!ja,na=!A(a,S)&&b(a.layout[ga[S]]);if(ma||na){var oa=a.style.measure(ka,la);ma&&(a.layout.width=oa.width+ha),na&&(a.layout.height=oa.height+ia)}if(0===P)return}var pa,qa,ra,sa,ta=y(a),ua=p(a),va=k(a,K),wa=k(a,N),xa=o(a,K),ya=o(a,N),za=B(a,K),Aa=B(a,N),Ba=c(K),Ca=null,Da=null,Ea=M;za&&(Ea=a.layout[ga[K]]-xa);for(var Fa=0,Ga=0,Ha=0,Ia=0,Ja=0,Ka=0;P>Ga;){var La=0,Ma=0,Na=0,Oa=0,Pa=za&&ua===U||!za&&ua!==V,Qa=Pa?P:Fa,Ra=!0,Sa=P,Ta=null,Ua=null,Va=va,Wa=0,Xa=M,Ya=M;for(pa=Fa;P>pa;++pa){ra=a.children[pa],ra.lineIndex=Ka,ra.nextAbsoluteChild=null,ra.nextFlexChild=null;var Za=r(a,ra);if(Za===aa&&w(ra)===ba&&Aa&&!A(ra,N))ra.layout[ga[N]]=G(F(ra,N,a.layout[ga[N]]-ya-n(ra,N)),o(ra,N));else if(w(ra)===ca)for(null===Ca&&(Ca=ra),null!==Da&&(Da.nextAbsoluteChild=ra),Da=ra,qa=0;2>qa;qa++)sa=0!==qa?Q:S,B(a,sa)&&!A(ra,sa)&&C(ra,da[sa])&&C(ra,ea[sa])&&(ra.layout[ga[sa]]=G(F(ra,sa,a.layout[ga[sa]]-o(a,sa)-n(ra,sa)-E(ra,da[sa])-E(ra,ea[sa])),o(ra,sa)));var $a=0;if(za&&x(ra)?(Ma++,Na+=ra.style.flex,null===Ta&&(Ta=ra),null!==Ua&&(Ua.nextFlexChild=ra),Ua=ra,$a=o(ra,K)+n(ra,K)):(Xa=M,Ya=M,Ba?Ya=B(a,S)?a.layout[ga[S]]-ia:g-n(a,S)-ia:Xa=B(a,O)?a.layout[ga[O]]-ha:d-n(a,O)-ha,0===Ha&&L(ra,Xa,Ya,j),w(ra)===ba&&(Oa++,$a=z(ra,K))),ta&&za&&La+$a>Ea&&pa!==Fa){Oa--,Ha=1;break}Pa&&(w(ra)!==ba||x(ra))&&(Pa=!1,Qa=pa),Ra&&(w(ra)!==ba||Za!==aa&&Za!==Z||Za==aa&&!Aa)&&(Ra=!1,Sa=pa),Pa&&(ra.layout[fa[K]]+=Va,za&&I(a,ra,K),Va+=z(ra,K),Wa=G(Wa,F(ra,N,z(ra,N)))),Ra&&(ra.layout[fa[N]]+=Ia+wa,Aa&&I(a,ra,N)),Ha=0,La+=$a,Ga=pa+1}var _a=0,ab=0,bb=0;if(bb=za?Ea-La:G(La,0)-La,0!==Ma){var cb,db,eb=bb/Na;for(Ua=Ta;null!==Ua;)cb=eb*Ua.style.flex+o(Ua,K),db=F(Ua,K,cb),cb!==db&&(bb-=db,Na-=Ua.style.flex),Ua=Ua.nextFlexChild;for(eb=bb/Na,0>eb&&(eb=0),Ua=Ta;null!==Ua;)Ua.layout[ga[K]]=F(Ua,K,eb*Ua.style.flex+o(Ua,K)),Xa=M,B(a,O)?Xa=a.layout[ga[O]]-ha:Ba||(Xa=d-n(a,O)-ha),Ya=M,B(a,S)?Ya=a.layout[ga[S]]-ia:Ba&&(Ya=g-n(a,S)-ia),L(Ua,Xa,Ya,j),ra=Ua,Ua=Ua.nextFlexChild,ra.nextFlexChild=null}else ua!==U&&(ua===V?_a=bb/2:ua===W?_a=bb:ua===X?(bb=G(bb,0),ab=Ma+Oa-1!==0?bb/(Ma+Oa-1):0):ua===Y&&(ab=bb/(Ma+Oa),_a=ab/2));for(Va+=_a,pa=Qa;Ga>pa;++pa)ra=a.children[pa],w(ra)===ca&&C(ra,da[K])?ra.layout[fa[K]]=E(ra,da[K])+i(a,K)+e(ra,K):(ra.layout[fa[K]]+=Va,za&&I(a,ra,K),w(ra)===ba&&(Va+=ab+z(ra,K),Wa=G(Wa,F(ra,N,z(ra,N)))));var fb=a.layout[ga[N]];for(Aa||(fb=G(F(a,N,Wa+ya),ya)),pa=Sa;Ga>pa;++pa)if(ra=a.children[pa],w(ra)===ca&&C(ra,da[N]))ra.layout[fa[N]]=E(ra,da[N])+i(a,N)+e(ra,N);else{var gb=wa;if(w(ra)===ba){var Za=r(a,ra);if(Za===aa){if(!A(ra,N)){var hb=ra.layout[ga[N]];ra.layout[ga[N]]=G(F(ra,N,fb-ya-n(ra,N)),o(ra,N)),hb!=ra.layout[ga[N]]&&ra.children.length>0&&(ra.layout[da[K]]-=e(ra,K)+J(ra,K),ra.layout[ea[K]]-=f(ra,K)+J(ra,K),ra.layout[da[N]]-=e(ra,N)+J(ra,N),ra.layout[ea[N]]-=f(ra,N)+J(ra,N),L(ra,Xa,Ya,j))}}else if(Za!==Z){var ib=fb-ya-z(ra,N);gb+=Za===$?ib/2:ib}}ra.layout[fa[N]]+=Ia+gb,Aa&&I(a,ra,N)}Ia+=Wa,Ja=G(Ja,Va),Ka+=1,Fa=Ga}if(Ka>1&&Aa){var jb=a.layout[ga[N]]-ya,kb=jb-Ia,lb=0,mb=wa,nb=q(a);nb===_?mb+=kb:nb===$?mb+=kb/2:nb===aa&&jb>Ia&&(lb=kb/Ka);var ob=0;for(pa=0;Ka>pa;++pa){var pb=ob,qb=0;for(qa=pb;P>qa;++qa)if(ra=a.children[qa],w(ra)===ba){if(ra.lineIndex!==pa)break;B(ra,N)&&(qb=G(qb,ra.layout[ga[N]]+n(ra,N)))}for(ob=qa,qb+=lb,qa=pb;ob>qa;++qa)if(ra=a.children[qa],w(ra)===ba){var rb=r(a,ra);if(rb===Z)ra.layout[fa[N]]=mb+e(ra,N);else if(rb===_)ra.layout[fa[N]]=mb+qb-f(ra,N)-ra.layout[ga[N]];else if(rb===$){var sb=ra.layout[ga[N]];ra.layout[fa[N]]=mb+(qb-sb)/2}else rb===aa&&(ra.layout[fa[N]]=mb+e(ra,N))}mb+=qb}}var tb=!1,ub=!1;if(za||(a.layout[ga[K]]=G(F(a,K,Ja+l(a,K)),xa),K!==R&&K!==T||(tb=!0)),Aa||(a.layout[ga[N]]=G(F(a,N,Ia+ya),ya),N!==R&&N!==T||(ub=!0)),tb||ub)for(pa=0;P>pa;++pa)ra=a.children[pa],tb&&I(a,ra,K),ub&&I(a,ra,N);for(Da=Ca;null!==Da;){for(qa=0;2>qa;qa++)sa=0!==qa?Q:S,B(a,sa)&&!A(Da,sa)&&C(Da,da[sa])&&C(Da,ea[sa])&&(Da.layout[ga[sa]]=G(F(Da,sa,a.layout[ga[sa]]-m(a,sa)-n(Da,sa)-E(Da,da[sa])-E(Da,ea[sa])),o(Da,sa))),C(Da,ea[sa])&&!C(Da,da[sa])&&(Da.layout[da[sa]]=a.layout[ga[sa]]-Da.layout[ga[sa]]-E(Da,ea[sa]));ra=Da,Da=Da.nextAbsoluteChild,ra.nextAbsoluteChild=null}}function L(a,b,c,d){a.shouldUpdate=!0;var e=a.style.direction||O,f=!a.isDirty&&a.lastLayout&&a.lastLayout.requestedHeight===a.layout.height&&a.lastLayout.requestedWidth===a.layout.width&&a.lastLayout.parentMaxWidth===b&&a.lastLayout.parentMaxHeight===c&&a.lastLayout.direction===e;f?(a.layout.width=a.lastLayout.width,a.layout.height=a.lastLayout.height,a.layout.top=a.lastLayout.top,a.layout.left=a.lastLayout.left):(a.lastLayout||(a.lastLayout={}),a.lastLayout.requestedWidth=a.layout.width,a.lastLayout.requestedHeight=a.layout.height,a.lastLayout.parentMaxWidth=b,a.lastLayout.parentMaxHeight=c,a.lastLayout.direction=e,a.children.forEach(function(a){a.layout.width=void 0,a.layout.height=void 0,a.layout.top=0,a.layout.left=0}),K(a,b,c,d),a.lastLayout.width=a.layout.width,a.lastLayout.height=a.layout.height,a.lastLayout.top=a.layout.top,a.lastLayout.left=a.layout.left)}var M,N="inherit",O="ltr",P="rtl",Q="row",R="row-reverse",S="column",T="column-reverse",U="flex-start",V="center",W="flex-end",X="space-between",Y="space-around",Z="flex-start",$="center",_="flex-end",aa="stretch",ba="relative",ca="absolute",da={row:"left","row-reverse":"right",column:"top","column-reverse":"bottom"},ea={row:"right","row-reverse":"left",column:"bottom","column-reverse":"top"},fa={row:"left","row-reverse":"right",column:"top","column-reverse":"bottom"},ga={row:"width","row-reverse":"width",column:"height","column-reverse":"height"};return{layoutNodeImpl:K,computeLayout:L,fillNodes:a}}();return"object"==typeof exports&&(module.exports=a),function(b){a.fillNodes(b),a.computeLayout(b)}});
//# sourceMappingURL=css-layout.min.js.map