úÎ!^±[o8      !"#$%&'()*+,-./01234567None7MWXYó"terminal-progress-bar8A label that can be pre- or postfixed to a progress bar.terminal-progress-barwAn escape code is a sequence of bytes which the terminal looks for and interprets as commands, not as character codes.tIt is vital that the output of this function, when send to the terminal, does not result in characters being drawn.terminal-progress-barDOptions that determine the textual representation of a progress bar.LThe textual representation of a progress bar follows the following template:<prefix><open><done><current><todo><close><postfix>Where <done> and <todo%> are repeated as often as necessary.#Consider the following progress bar *"Working [=======>.................] 30%"4This bar can be specified using the following style:  {   = "[" ,   = "]" ,   = '=' ,   = '>' ,  = '.' ,  = ( "Working" ,  = ) ,  =  40 ,  = const 8 ,  = const 8 ,  = const 8 ,  = const 8 ,  = const 8 ,  = const 8 ,  = const 8 } terminal-progress-barBar opening symbol. terminal-progress-barBar closing symbol terminal-progress-barCompleted work. terminal-progress-barDSymbol used to denote the current amount of work that has been done.terminal-progress-barWork not yet completed.terminal-progress-barPrefixed label.terminal-progress-barPostfixed label.terminal-progress-bar Total width of the progress bar.terminal-progress-bar$Escape code printed just before the   symbol.terminal-progress-bar$Escape code printed just before the   symbol.terminal-progress-bar*Escape code printed just before the first   character.terminal-progress-bar$Escape code printed just before the   character.terminal-progress-bar*Escape code printed just before the first  character.terminal-progress-bar$Escape code printed just before the  label.terminal-progress-bar$Escape code printed just before the  label.terminal-progress-bar$Width of progress bar in characters.terminal-progress-barA constant width.terminal-progress-bar%Use the entire width of the terminal. Identical to 5 if the width of the terminal can not be determined.terminal-progress-barState of a progress bar.terminal-progress-barAmount of work completed.terminal-progress-barTotal amount of work. terminal-progress-barnA custom value which can be used by custom labels. Simply use '()' if you do not need custom progress values.&terminal-progress-barRenders a progress bar6renderProgressBar (msg "Working") percentage 40 30 100*"Working [=======>.................] 30%"#Not that this function can not use  because it doesn't use 9. Use  progressBar or  hProgressBar to get automatic width.'terminal-progress-barA default style.WYou can override some fields of the default instead of specifying all the fields of a  record..The default does not use any escape sequences.(terminal-progress-bar&A label consisting of a static string. msg "foo" st"foo")terminal-progress-bar4A label which displays the progress as a percentage.5runLabel $ percentage (Progress 30 100 ()) someTiming" 30%"NoteK: if no work is to be done (todo == 0) the percentage will always be 100%.*terminal-progress-barOA label which displays the progress as a fraction of the total amount of work.dEqual width property - the length of the resulting label is a function of the total amount of work:0runLabel $ exact (Progress 30 100 ()) someTiming " 30/100"+terminal-progress-bar;A label which displays the amount of time that has elapsed.+Time starts when a progress bar is created.iThe user must supply a function which actually renders the amount of time that has elapsed. You can use . or  formatTime from time >= 1.9.,terminal-progress-bar=Displays the estimated remaining time until all work is done..Tells you how much longer some task will take.ÂThis label uses a really simple estimation algorithm. It assumes progress is linear. To prevent nonsense results it won't estimate remaining time until at least 1 second of work has been done.\When it refuses to estimate the remaining time it will show an alternative message instead.iThe user must supply a function which actually renders the amount of time that has elapsed. You can use . or  formatTime from time >= 1.9.-terminal-progress-bar3Displays the estimated total time a task will take.ÂThis label uses a really simple estimation algorithm. It assumes progress is linear. To prevent nonsense results it won't estimate the total time until at least 1 second of work has been done.XWhen it refuses to estimate the total time it will show an alternative message instead.tThe user must supply a function which actually renders the total amount of time that a task will take. You can use . or  formatTime from time >= 1.9..terminal-progress-barShow amount of time. renderDuration (fromInteger 42)42 *renderDuration (fromInteger $ 5 * 60 + 42)05:42 8renderDuration (fromInteger $ 8 * 60 * 60 + 5 * 60 + 42)08:05:42HUse the time >= 1.9 package to get a formatTime function which accepts :.terminal-progress-barCurrent progress bar state.terminal-progress-bar-Resulting escape code. Must be non-printable."terminal-progress-barMaximum refresh rate in Hertz.terminal-progress-barInitial progress.#terminal-progress-barMaximum refresh rate in Hertz.terminal-progress-barInitial progress.,terminal-progress-barCAlternative message when remaining time can't be calculated (yet).-terminal-progress-bar?Alternative message when total time can't be calculated (yet)./      !"#$%&'()*+,-./!"#&$%     ' ()*+,-.;      !"#$%&'()*+,-./0123456789:;<=>?0terminal-progress-bar-0.4-H9t2Dsxknd2KARr34CJQVFSystem.ProgressBarTiming timingStarttimingLastUpdateLabelrunLabel EscapeCodeStyle styleOpen styleClose styleDone styleCurrent styleTodo stylePrefix stylePostfix styleWidthstyleEscapeOpenstyleEscapeClosestyleEscapeDonestyleEscapeCurrentstyleEscapeTodostyleEscapePrefixstyleEscapePostfixProgressBarWidth ConstantWidth TerminalWidthProgress progressDone progressTodoprogressCustom ProgressBarnewProgressBarhNewProgressBarupdateProgress incProgressrenderProgressBardefStylemsg percentageexact elapsedTime remainingTime totalTimerenderDuration$fNFDataProgressBarWidth$fIsStringLabel $fMonoidLabel$fSemigroupLabel $fNFDataStyle$fNFDataProgressBar$fGenericProgressBarWidth $fNFDataLabel$fGenericStyle text-1.2.3.1Data.Text.Internal.Lazyemptyghc-prim GHC.TypesIO time-1.8.0.2(Data.Time.Clock.Internal.NominalDiffTimeNominalDiffTime