h&?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~                                                                                                                          Safe-Inferred"#web-rep2Convert a link to a css library from text to html.markdown_ Compact 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.markdown_ Compact Html $ libJs "https://code.jquery.com/jquery-3.3.1.slim.min.js""" Safe-Inferred"iweb-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 suggestionweb-repname/key/id of the Inputweb-reptype of html input   Safe-Inferred"6"web-repJavascript as string%web-repcss as a string.(web-rep'Configuration options when rendering a ;./web-rep0Various ways that a Html file can be structured.3web-rep Is the rendering to include all 6 (typically in a html file) or be separated (tyypically into separate files and linked in the html file)?6web-repA web page typically is composed of some css, javascript and html.61 abstracts this structural feature of a web page.;web-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.=web-repcss library links>web-repjavascript library links?web-repcss@web-repjavascript with global scopeAweb-rep.javascript included within the onLoad functionBweb-rephtml within the headerCweb-rep body htmlDweb-rep/The common file suffixes of the three concerns.Eweb-rep*Create filenames for each Concern element.Fweb-repDefault configuration is inline ecma and css, separate html header and body, minified code, with the suggested filename prefix.Gweb-repRender % as text.'"#$%&'(),*+-./0123456789:;<=>?@ABCDEFGH';<=>?@ABC(),*+-.F6789:DE345/012%&'G"#$H Safe-Inferred"gweb-rep7Render a Page with the default configuration into Html.hweb-repRender a Page into Html.iweb-rep.Render a Page into css text, js text and html.jweb-repRender Page concerns to files.kweb-rep"Render a page to just a Html file.lweb-repRender a Page as Text.ghijklgihljk Safe-Inferred0mweb-repserve a Page via a ScottyMmm Safe-Inferred" nweb-repdefault representation type of  ()oweb-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.rweb-rep9the common usage, where the representation domain is Htmlsweb-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.wweb-rep%stateful result of one step, given a s, and a monadic action. Useful for testing and for initialising a page.xweb-repname supply for elements of a oyweb-repsometimes a number doesn't work properly in html (or js???), and an alpha prefix seems to helpzweb-repCreate a sharedRep{web-repLike z, 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 failure|web-rep2compute the initial state of a SharedRep (testing)}web-repCompute the initial state of a SharedRep and then run an action once (see tests).zweb-repParserweb-repPrinterweb-rep1create initial object from name and initial valueweb-rep initial value{web-repParserweb-rep1create initial object from name and initial valueweb-rep initial valueweb-rep default valuenopqrstuvwxyz{|}stuvrwopqn}|z{xy Safe-Inferred"# web-repA page containing all the  https://getbootstrap.com/ bootstrap needs for a web page.web-rep"wrap some Html with the bootstrap  2https://getbootstrap.com/docs/4.3/components/card/card classweb-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 ByteStringweb-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 o 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-repselect test keys from a Mapweb-reprep of multiple items listweb-repParserweb-repPrinterweb-rep typeweb-rep initial valueweb-repparse an a from ByteStringweb-repprint an a to ByteStringweb-replabel suggestionweb-rep"list of dropbox elements (as text)web-rep initial valueweb-repparse an a from ByteStringweb-repprint an a to ByteStringweb-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"2 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.33 Safe-Inferred3 "#$%&'(),*+-./0123456789:;<=>?@ABCDEFGHghijklmnopqrstuvwxyz|}:stuvrwopqn}|zxy;<=>?@ABC(),*+-.F6789:DE345/012%&'G"#$H  Safe-Inferred"36web-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  !"#$%%&'()*+,-./0112334556789:;<=>?@ABBCDEFFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyxz{|{}~                                                                                                                                 'web-rep-0.11.0.0-92kLpliQOQ3ATLZWb07YamWeb.Rep Web.Rep.HtmlWeb.Rep.Html.Input Web.Rep.PageWeb.Rep.RenderWeb.Rep.ServerWeb.Rep.SharedWeb.Rep.BootstrapWeb.Rep.SharedRepsWeb.Rep.SocketWeb.Rep.Examples4unordered-containers-0.2.19.1-IcPh5KAkRWbKXN0dbtKESKData.HashMap.InternalHashMap+markup-parse-0.1.0.1-GMqljxZYWen9BKX41kBMsz MarkupParseIndentedCompact RenderStylelibCsslibJs InputTypeSliderSliderVTextBoxTextBox'TextArea ColorPicker ChooseFileDropdownDropdownMultiple DropdownSumDatalistCheckboxToggleButtonInputinputVal inputLabelinputId inputType inputToHtml $fEqInput $fShowInput$fGenericInput $fEqInputType$fShowInputType$fGenericInputTypeJs jsByteStringCss cssByteString PageConfigconcerns structure renderStyle filenames localdirs PageStructure HeaderBodyHeadlessSnippet PageConcernsInline SeparatedConcerns cssConcern jsConcern htmlConcernPagelibsCsslibsJscssBodyjsGlobaljsOnLoad htmlHeaderhtmlBodysuffixes concernNamesdefaultPageConfig renderCssonLoad$fApplicativeConcerns$fFunctorConcerns $fMonoidPage$fSemigroupPage $fShowPage $fGenericPage$fEqJs$fShowJs $fGenericJs $fSemigroupJs $fMonoidJs $fShowCss$fEqCss $fGenericCss$fSemigroupCss $fMonoidCss$fShowPageConfig$fEqPageConfig$fGenericPageConfig$fShowPageStructure$fEqPageStructure$fGenericPageStructure$fShowPageConcerns$fEqPageConcerns$fGenericPageConcerns $fEqConcerns$fShowConcerns$fFoldableConcerns$fTraversableConcerns$fGenericConcerns renderPagerenderPageHtmlWithrenderPageWithrenderPageToFilerenderPageHtmlToFilerenderPageAsByteString servePageWith SharedRep SharedRepFunshareRepRepFrepmakeoneRepgenName genNamePreregistermessage zeroStaterunOnce$fApplicativeRepF$fBiapplicativeRepF$fBifunctorRepF $fMonoidRepF$fSemigroupRepF$fApplicativeSharedRepF$fBiapplicativeSharedRepF$fBifunctorSharedRepF$fFunctorSharedRepF $fFunctorRepF bootstrapCss bootstrapJs bootstrapMeta bootstrapPagecardify accordionCardaccordionCardChecked accordionaccordionChecked accordion_repInput repMessageslidersliderVsliderIsliderVItextboxtextarea colorPickerdropdowndropdownMultipledatalist dropdownSumcheckboxtoggletoggle_button chooseFilemaybeRep accordionList listMaybeReplistRepdefaultListLabels readTextbox repChoice selectItemsrepItemsSelectsubtypeCodeReplaceAppendConsoleEvalVal PlayConfig playPause playSpeed playFrame CodeBoxConfig codeBoxSocket codeBoxPagecodeBoxCommitterQueuecodeBoxEmitterQueue CoCodeBoxCodeBox SocketConfighostportpath socketPagedefaultSocketPagedefaultSocketConfigserveSocketBoxdefaultCodeBoxConfig codeBoxWithcodeBoxserveRepserveRepWithBox replaceInput replaceOutputreplaceOutput_ sharedStreamdefaultPlayConfig repPlayConfigservePlayStreamWithBoxservePlayStreamcodeconsolevalreplaceappendclean webSocket refreshJsbJs preventEnter runScriptJs$fGenericCodeBoxConfig$fEqCode $fShowCode $fGenericCode $fReadCode$fEqPlayConfig$fShowPlayConfig$fGenericPlayConfig$fShowSocketConfig$fEqSocketConfig$fGenericSocketConfigShape SquareShape CircleShape RepExamples repTextbox repTextarea repSliderI repSlider repSliderVI repSliderV repCheckbox repToggle repDropdownrepDropdownMultiplerepShaperepColorpage1page2cfg2toShape fromShape repExamples listExamplelistRepExample$fShowRepExamples$fEqRepExamples$fGenericRepExamples $fEqShape $fShowShape$fGenericShapeHtmltextbox'scriptToggleShowaccordionBoolList"box-0.9.2.0-9a3iSZcbXlkFGbmrC2k0dLBox.BoxBoxrepFramerepSpeedrepPauserepResetparserJ