monday-ui-react-core
Version:
Official monday.com UI resources for application development in React.js
3 lines (2 loc) • 2.51 kB
JavaScript
import{defineProperty as e,toConsumableArray as t}from"../../../../_virtual/_rollupPluginBabelHelpers.js";import a,{forwardRef as r,useMemo as s}from"react";import o from"classnames";import"../../../constants/dialog.js";import{SIZES as i}from"../../../constants/sizes.js";import"../../../constants/positions.js";import{getStyle as l}from"../../../helpers/typesciptCssModulesHelper.js";import n from"../PercentageLabel/PercentageLabel.js";import{ProgressBarStyle as m,ProgressBarType as c}from"./LinearProgressBarConstants.js";import{calculatePercentage as d,getProgressBarClassNames as u}from"./LinearProgressBarHelpers.js";import p from"./Bar/Bar.js";import{withStaticProps as v}from"../../../types/withStaticProps.js";import{ComponentDefaultTestId as f}from"../../../tests/constants.js";import{getTestId as y}from"../../../tests/testIds.js";import b from"./LinearProgressBar.module.scss.js";var R=v(r((function(r,v){var R=r.min,E=void 0===R?0:R,P=r.max,j=void 0===P?100:P,g=r.value,A=void 0===g?0:g,N=r.valueSecondary,S=void 0===N?0:N,L=r.animated,_=void 0===L||L,B=r.barStyle,I=void 0===B?m.PRIMARY:B,M=r.className,Y=r.size,h=void 0===Y?i.SMALL:Y,x=r.indicateProgress,C=void 0!==x&&x,O=r.multi,z=void 0!==O&&O,H=r.multiValues,w=void 0===H?[]:H,D=r.ariaLabel,F=void 0===D?"":D,W=r.id,k=r.fullWidth,G=void 0!==k&&k,T=r["data-testid"],V=s((function(){return o(b.wrapper,e(e({},l(b,""+h),h),b.fullWidth,G),M)}),[h,G,M]),q=s((function(){if(z){var e=w&&w.length&&w[0].value;return null==e?0:d(e,E,j)}return null==A?0:d(A,E,j)}),[A,E,j,z,w]),J=s((function(){return z?a.createElement(a.Fragment,null,t(w).reverse().map((function(e,t){var r=e.value,s=e.color;return a.createElement(p,{className:u(r),barStyle:m.NONE,value:r,animated:_,type:c.PRIMARY,color:s,min:E,max:j,id:"bar_".concat(s,"_").concat(t),key:"bar_".concat(s,"_").concat(t)})}))):null}),[E,j,_,w,z]),K=C?a.createElement(n,{forElement:"linear-progress-bar",value:q}):null,Q=z?null:a.createElement(a.Fragment,null,a.createElement(p,{className:u(A),barLabelName:F,barStyle:I,value:S,animated:_,type:c.SECONDARY,min:E,max:j,"data-testid":f.BAR_SECONDARY}),a.createElement(p,{className:u(A),barStyle:I,value:A,animated:_,type:c.PRIMARY,min:E,max:j,"data-testid":f.BAR_PRIMARY}));return a.createElement("div",{className:V,ref:v,id:W,"data-testsid":T||y(f.LINEAR_PROGRESS_BAR,W)},a.createElement("div",{className:b.container},Q,J),K)})),{styles:m,barStyles:m,types:c,barTypes:c,sizes:i});export{R as default};
//# sourceMappingURL=LinearProgressBar.js.map