h&B/;      !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                Safe-Inferred"web-rep-FIXME: A horrible hack to separate class id'sweb-repConvert html to textweb-rep2Convert a link to a css library from text to html.libCss "https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"web-rep1Convert a link to a js library from text to html.8libJs "https://code.jquery.com/jquery-3.3.1.slim.min.js" web-repFIXME: `ToHtml a` is used throughout, mostly because `Show a` gives ""text"" for show "text", and hilarity ensues when rendering this to a web page, and I couldn't work out how to properly get around this.Hence, these orphans. Safe-Inferred";  web-repVarious types of web page inputs, encapsulating practical bootstrap class functionalityweb-repsomething that might exist on a web page and be a front-end input to computations.web-repunderlying valueweb-replabel suggestion web-repname/key/id of the Input!web-reptype of html input  ! !   Safe-Inferred "89:;)web-repUnifies javascript as  and script as .,web-rep wrapper for /web-repUnifies css as either a  or as Text.2web-rep'Configuration options when rendering a J.9web-rep Post-processing of page concerns=web-rep0Various ways that a Html file can be structured.Bweb-rep Is the rendering to include all E (typically in a html file) or be separated (tyypically into separate files and linked in the html file)?Eweb-repA web page typically is composed of some css, javascript and html.E1 abstracts this structural feature of a web page.Jweb-repComponents of a web page.A web page can take many forms but still have the same underlying representation. For example, CSS can be linked to in a separate file, or can be inline within html, but still be the same css and have the same expected external effect. A Page represents the practical components of what makes up a static snapshot of a web page.Lweb-repcss library linksMweb-repjavascript library linksNweb-repcssOweb-repjavascript with global scopePweb-rep.javascript included within the onLoad functionQweb-rephtml within the headerRweb-rep body htmlSweb-rep/The common file suffixes of the three concerns.Tweb-rep*Create filenames for each Concern element.Uweb-repDefault configuration is inline ecma and css, separate html header and body, minified code, with the suggested filename prefix.Vweb-repRender / as text.Wweb-repRender  as text.Xweb-rep&Wrap js in standard DOM window loader.Yweb-repConvert  to ,%, throwing an error on incorrectness.Zweb-repRender , as .[web-repRender ) as .4)*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[ Safe-Inferred"u\web-rep7Render a Page with the default configuration into Html.]web-repRender a Page into Html.^web-rep.Render a Page into css text, js text and html._web-repRender Page concerns to files.`web-rep"Render a page to just a Html file.aweb-repRender a Page as Text.\]^_`a\^]a_` Safe-Inferredbweb-repserve a Page via a ScottyMbb  Safe-Inferred"89:} cweb-repdefault representation type of  ()dweb-repDriven by the architecture of the DOM, web page components are compositional, and tree-like, where components are often composed of other components, and values are thus shared across components.;This is sometimes referred to as "observable sharing". See  -http://hackage.haskell.org/package/data-reify data-reify as another library that reifies this (pun intended), and provided the initial inspiration for this implementation.unshare should only be run once, which is a terrible flaw that might be fixed by linear types.gweb-rep9the common usage, where the representation domain is Htmlhweb-repInformation contained in a web page can usually be considered to be isomorphic to a map of named values - a . This is especially true when considering a differential of information contained in a web page. Looking at a page from the outside, it often looks like a streaming differential of a hashmap.RepF consists of an underlying value being represented, and, given a hashmap state, a way to produce a representation of the underlying value (or error), in another domain, together with the potential to alter the hashmap state.lweb-rep%stateful result of one step, given a h, and a monadic action. Useful for testing and for initialising a page.mweb-repname supply for elements of a dnweb-repsometimes a number doesn't work properly in html (or js???), and an alpha prefix seems to helpoweb-repCreate a sharedRepweb-repLike o, but does not put a value into the HashMap on instantiation, consumes the value when found in the HashMap, and substitutes a default on lookup failurepweb-rep2compute the initial state of a SharedRep (testing)qweb-repCompute the initial state of a SharedRep and then run an action once (see tests).oweb-repParserweb-repPrinterweb-rep1create initial object from name and initial valueweb-rep initial valueweb-repParserweb-rep1create initial object from name and initial valueweb-rep initial valueweb-rep default valuecdefghijklmnopq Safe-Inferred";! web-rep linkhref="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC" crossorigin="anonymous"web-rep scriptsrc="https://cdn.jsdelivr.net/npm/bootstrap@5.0.2/dist/js/bootstrap.bundle.min.js" integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM" crossorigin="anonymous" /scriptuweb-repA page containing all the  https://getbootstrap.com/ bootstrap needs for a web page.vweb-repA page containing all the  https://getbootstrap.com/ bootstrap needs for a web page.wweb-rep"wrap some Html with the bootstrap  2https://getbootstrap.com/docs/4.3/components/card/card classxweb-rep!wrap some html with a classed divyweb-rep SharedRep m Doubleweb-repdouble slider with shown valueFor Example, a slider between 0 and 1 with a step of 0.01 and a default value of 0.3 is: %:t slider (Just "label") 0 1 0.01 0.3slider (Just "label") 0 1 0.01 0.3 :: Monad m => SharedRep m Doubleweb-repintegral sliderFor Example, a slider between 0 and 1000 with a step of 10 and a default value of 300 is: ':t sliderI (Just "label") 0 1000 10 300sliderI (Just "label") 0 1000 10 300 :: (Monad m, ToHtml a, P.Integral a, Show a) => SharedRep m aweb-rep integral slider with shown valueweb-reptextbox classique %:t textbox (Just "label") "some text"textbox (Just "label") "some text" :: Monad m => SharedRep m Textweb-rep%textbox that only updates on focusoutweb-rep2textarea input element, specifying number of rows.web-repNon-typed hex color inputweb-rep dropdown boxweb-rep%dropdown box with multiple selectionsweb-repa datalist inputweb-rep=A dropdown box designed to help represent a haskell sum type.web-repA checkbox input.web-repa toggle buttonweb-repa toggle button, with no labelweb-repa buttonweb-repfilename inputweb-rep#Represent a Maybe using a checkbox.'Hides the underlying content on Nothingweb-reptoggle show/hideweb-repA (fixed-size) list represented in html as an accordion card A major restriction of the library is that a d does not have a Monad instance. In practice, this means that the external representation of lists cannot have a dynamic size.web-rep)A (fixed-sized) list of (Bool, a) tuples.web-repA fixed-sized list of Maybe a'sweb-repA SharedRep of [a]. Due to the applicative nature of the bridge, the size of lists has to be fixed on construction. listRep is a workaround for this, to enable some form of dynamic sizing.web-repParse from a textbox+Uses focusout so as not to spam the reader.web-rep0Representation of web concerns (css, js & html).web-repturns a SharedRep into a fiddleweb-repselect test keys from a Mapweb-reprep of multiple items listweb-repParserweb-repPrinterweb-rep typeweb-rep initial valueweb-repparse an a from Textweb-repprint an a to Textweb-replabel suggestionweb-rep"list of dropbox elements (as text)web-rep initial valueweb-repparse an a from Textweb-repprint an a to Textweb-replabel suggestionweb-rep"list of dropbox elements (as text)web-rep initial valueweb-repname prefix (should be unique)web-repBool Repweb-repa Repweb-repmaximum length of listweb-repdefault value for new rowsweb-repinitial values Safe-Inferred";7 web-repConfiguration to control a (re)play of an emitter with a Gap (timing) element.web-rep$Configuration for a CodeBox serving.web-repCodensity CodeBoxweb-repA common Box pattern. [Code] is typically committed to the websocket and key-value elements, representing changes to the shared objects that are in the Dom are emitted.web-repSocket configurationdefaultSocketConfig:SocketConfig {host = "127.0.0.1", port = 9160, path = "/"}web-rep/Page with all the trimmings for a sharedRep Boxweb-repofficial defaultweb-rep"bidirectional websocket serving a web-repofficial default config.web-rep4Turn a configuration into a live (Codensity) CodeBoxweb-rep>Turn the default configuration into a live (Codensity) CodeBoxweb-repserve a SharedRepweb-repnon-codensity sharedRep server.web-repConvert HTML representation to Code, replacing the input section of a page.web-repConvert (typically parsed representation) to Code, replacing the output section of a page, and appending errors.web-repConvert (typically parsed representation) to Code, replacing the output section of a page, and throwing away errors.web-repStream a SharedRepweb-rep.Start on pause at normal speed and at frame 0.web-reprepresentation of a PlayConfigweb-rep/representation of the playFrame in a PlayConfigweb-rep/representation of the playSpeed in a PlayConfigweb-rep6representation of the playPause toggle in a PlayConfigweb-rep%representation of a Bool reset buttonweb-repServe an emitter controlled by a PlayConfig representation, with an explicit CodeBox.web-rep;Serve an emitter controlled by a PlayConfig representation.web-rep0{"event":{"element":"textid","value":"abcdees"}}web-rep0replace a container and run any embedded scriptsweb-rep2append to a container and run any embedded scriptsweb-rep"create a web socket for event dataweb-repEvent hooks that may need to be reattached given dynamic content creation.web-rep.prevent the Enter key from triggering an eventweb-repscript injection js.See  'https://ghinda.net/article/script-tags/ for why this might be needed.44 Safe-Inferred8 ! )*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}hijkgldefcqpomnJKLMNOPQR2345678UEFGHISTBCD=>?@A9:;</01WV,-.)*+X[YZ  Safe-Inferred"3;;jweb-repFor a typed dropdown example.web-rep&One of each sharedrep input instances.web-repsimple page exampleweb-reppage with localised librariesweb-rep shape parserweb-rep shape printerweb-repone of each input SharedReps##  !"#$%&'()*+,-../0123456789 : : ; < < = > > ? @ @ A B C D E F G H I J K L M N O P Q R R S T U V V W X Y Z [ \ ] ^ _ ` a b c d e fghijklm n o n p q r q s t u v w x y z{|}~                                                %web-rep-0.10.0-14Ea0acHNZAIpwuRPiHk6AWeb.Rep Web.Rep.HtmlWeb.Rep.Html.InputWeb.Rep.RenderWeb.Rep.ServerWeb.Rep.BootstrapWeb.Rep.SharedRepsWeb.Rep.SocketWeb.Rep.Examples Web.Rep.PageWeb.Rep.Shared4unordered-containers-0.2.19.1-3MGG7b01IYxFpF6Tpk5LG1Data.HashMap.InternalHashMap"clay-0.13.3-GAzuJ2mftu32ip10ssjlq0Clay.StylesheetCss"lucid-2.9.9-A9THvTWcmcABIQ5QO3zQtN Lucid.BaseHtmlHtmlTclass__toTextlibCsslibJs $fToHtml[] $fToHtml() $fToHtmlInt $fToHtmlBool$fToHtmlDouble InputTypeSliderSliderVTextBoxTextBox'TextArea ColorPicker ChooseFileDropdownDropdownMultiple DropdownSumDatalistCheckboxToggleButtonInputinputVal inputLabelinputId inputType $fToHtmlInput $fEqInput $fShowInput$fGenericInput $fEqInputType$fShowInputType$fGenericInputTypeRepJs RepJsTextJSunJSRepCss RepCssText PageConfigconcerns structure pageRender filenames localdirs PageRenderPrettyMinifiedNoPost PageStructure HeaderBodyHeadlessSnippetSvg PageConcernsInline SeparatedConcerns cssConcern jsConcern htmlConcernPagelibsCsslibsJscssBodyjsGlobaljsOnLoad htmlHeaderhtmlBodysuffixes concernNamesdefaultPageConfig renderRepCss renderCssonLoadparseJsrenderJs renderRepJs renderPagerenderPageHtmlWithrenderPageWithrenderPageToFilerenderPageHtmlToFilerenderPageAsText servePageWith SharedRep SharedRepFunshareRepRepFrepmakeoneRepgenName genNamePreregister zeroStaterunOnceBootstrapVersionBoot4Boot5 bootstrapPagebootstrap5Pagecardify divClass_ accordionCardaccordionCardChecked accordionaccordionChecked accordion_$fEqBootstrapVersion$fShowBootstrapVersion$fGenericBootstrapVersionrepInput repMessageslidersliderVsliderIsliderVItextboxtextarea colorPickerdropdowndropdownMultipledatalist dropdownSumcheckboxtoggletoggle_button chooseFilemaybeRep accordionList listMaybeReplistRepdefaultListLabels readTextboxfiddle viaFiddle repChoice selectItemsrepItemsSelectsubtypeCodeReplaceAppendConsoleEvalVal PlayConfig playPause playSpeed playFrame CodeBoxConfig codeBoxSocket codeBoxPagecodeBoxCommitterQueuecodeBoxEmitterQueue CoCodeBoxCodeBox SocketConfighostportpath socketPagedefaultSocketPagedefaultSocketConfigserveSocketBoxdefaultCodeBoxConfig codeBoxWithcodeBoxserveRepserveRepWithBox replaceInput replaceOutputreplaceOutput_ sharedStreamdefaultPlayConfig repPlayConfigservePlayStreamWithBoxservePlayStreamparserJcodeconsolevalreplaceappendclean webSocket refreshJsbJs preventEnter runScriptJs$fGenericCodeBoxConfig$fEqCode $fShowCode $fGenericCode $fReadCode$fEqPlayConfig$fShowPlayConfig$fGenericPlayConfig$fShowSocketConfig$fEqSocketConfig$fGenericSocketConfigSumType2Example SumOutside SumInsideSumTypeExampleSumIntSumOnlySumTextShape SquareShape CircleShape RepExamples repTextbox repTextarea repSliderI repSlider repSliderVI repSliderV repCheckbox repToggle repDropdownrepDropdownMultiplerepShaperepColorpage1page2cfg2toShape fromShape repExamples listExamplelistRepExample fiddleExamplerepSumTypeExamplerepSumType2Example$fEqSumType2Example$fShowSumType2Example$fGenericSumType2Example$fEqSumTypeExample$fShowSumTypeExample$fGenericSumTypeExample$fShowRepExamples$fEqRepExamples$fGenericRepExamples $fEqShape $fShowShape$fGenericShape2language-javascript-0.7.1.0-6jDkyepkJLREelwoiKWEWqLanguage.JavaScript.Parser.AST JSStatement text-1.2.5.0Data.Text.InternalTextJSASTmessage bootstrap5Css bootstrap5Jstextbox'scriptToggleShowaccordionBoolList box-0.9.0-3hmFU1NFdns2rK7vhHYWe1Box.BoxBoxrepFramerepSpeedrepPauserepReset