UNPKG

carbon-react

Version:

A library of reusable React components for easily building user interfaces.

2 lines (1 loc) 2.66 kB
import{jsxs as e,jsx as r,Fragment as t}from"react/jsx-runtime";import"react";import o from"../../hooks/__internal__/useLocale/useLocale.js";import n from"../../__internal__/utils/helpers/tags/tags.js";import{StyledProgressTracker as s,StyledProgressBar as l,InnerBar as a,StyledValuesLabel as i,StyledValue as c,StyledDescription as p}from"./progress-tracker.style.js";function b(e,r,t){return r in e?Object.defineProperty(e,r,{value:t,enumerable:!0,configurable:!0,writable:!0}):e[r]=t,e}const u=u=>{var{size:g="medium",length:m="256px",error:d=!1,progress:f=0,description:O,currentProgressLabel:y,customValuePreposition:P,maxProgressLabel:h,labelsPosition:j="top",labelWidth:v}=u,w=function(e,r){if(null==e)return{};var t,o,n=function(e,r){if(null==e)return{};var t,o,n={},s=Object.keys(e);for(o=0;o<s.length;o++)t=s[o],r.indexOf(t)>=0||(n[t]=e[t]);return n}(e,r);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(o=0;o<s.length;o++)t=s[o],r.indexOf(t)>=0||Object.prototype.propertyIsEnumerable.call(e,t)&&(n[t]=e[t])}return n}(u,["size","length","error","progress","description","currentProgressLabel","customValuePreposition","maxProgressLabel","labelsPosition","labelWidth"]);const k=o(),x="bottom"!==j,_=()=>{let o,n;return y?(o=y,n=h||void 0):(o=`${f}%`,n="100%"),e(i,{"data-role":"values-label",labelsPosition:j,size:g,labelWidth:v,children:[r(c,{"data-element":"current-progress-label",children:o}),n&&e(t,{children:[r("span",{"data-element":"custom-preposition",children:P||k.progressTracker.of()}),r(c,{"data-element":"max-progress-label",children:n})]}),O&&r(p,{"data-element":"progress-tracker-description",children:O})]})};return e(s,(L=function(e){for(var r=1;r<arguments.length;r++){var t=null!=arguments[r]?arguments[r]:{},o=Object.keys(t);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(t).filter((function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})))),o.forEach((function(r){b(e,r,t[r])}))}return e}({length:m},w,n("progress-bar",w)),S=null!=(S={labelsPosition:j,children:[x&&_(),r(l,{"data-role":"progress-bar",progress:f,error:d,"aria-hidden":"true",children:r(a,{"data-element":"inner-bar","data-role":"inner-bar",size:g,progress:f,error:d})}),!x&&_()]})?S:{},Object.getOwnPropertyDescriptors?Object.defineProperties(L,Object.getOwnPropertyDescriptors(S)):function(e){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);r.push.apply(r,t)}return r}(Object(S)).forEach((function(e){Object.defineProperty(L,e,Object.getOwnPropertyDescriptor(S,e))})),L));var L,S};u.displayName="ProgressTracker";export{u as default};