Sorry, but the page you were trying to get to, does not exist. You
+may want to try searching this site using the sidebar
+
+ or using our API Reference page
+
+to find what you were looking for.
Builds a token and its hash to be delivered to the user's email.
The non-hashed token is sent to the user email while the
+hashed part is stored in the database. The original token cannot be reconstructed,
+which means anyone with read-only access to the database cannot directly use
+the token in the application to gain access. Furthermore, if the user changes
+their email in the system, the tokens sent to the previous email are no longer
+valid.
Users can easily adapt the existing code to provide other types of delivery methods,
+for example, by phone numbers.
Generates a token that will be stored in a signed place,
+such as session or cookie. As they are signed, those
+tokens do not need to be hashed.
The reason why we store session tokens in the database, even
+though Phoenix already provides a session cookie, is because
+Phoenix' default session cookies are not persisted, they are
+simply signed and potentially encrypted. This means they are
+valid indefinitely, unless you change the signing/encryption
+salt.
Therefore, storing them allows individual user
+sessions to be expired. The token system can also be extended
+to store additional data, such as the device used for logging in.
+You could then use this information to display all valid sessions
+and devices in the UI and allow users to explicitly expire any
+session they deem invalid.
Checks if the token is valid and returns its underlying lookup query.
The query returns the user found by the token, if any.
This is used to validate requests to change the user
+email. It is different from verify_email_token_query/2 precisely because
+verify_email_token_query/2 validates the email has not changed, which is
+the starting point by this function.
The given token is valid if it matches its hashed counterpart in the
+database and if it has not expired (after @change_email_validity_in_days).
+The context must always start with "change:".
Checks if the token is valid and returns its underlying lookup query.
The query returns the user found by the token, if any.
The given token is valid if it matches its hashed counterpart in the
+database and the user email has not changed. This function also checks
+if the token is being used within a certain period, depending on the
+context. The default contexts supported by this function are either
+"confirm", for account confirmation emails, and "reset_password",
+for resetting the password. For verifying requests to change the email,
+see verify_change_email_token_query/2.
A convenience function for SQL-based repositories that executes an EXPLAIN statement or similar
+depending on the adapter to obtain statistics for the given query.
A convenience function for SQL-based repositories that executes an EXPLAIN statement or similar
+depending on the adapter to obtain statistics for the given query.
This module is used to convert presentations from PDF or PPT to images.
+We use a hash to identify the presentation. A new hash is generated when the conversion is finished and the presentation is being uploaded.
Convert the presentation file to images.
+We use original hash :erlang.phash2(code-name) where the files are uploaded to send it to another folder with a new hash. This last stored in db.
Convert the presentation file to images.
+We use original hash :erlang.phash2(code-name) where the files are uploaded to send it to another folder with a new hash. This last stored in db.
A module providing Internationalization with a gettext-based API.
By using Gettext,
+your module gains a set of macros for translations, for example:
importClaperWeb.Gettext
+
+# Simple translation
+gettext("Here is the string to translate")
+
+# Plural translation
+ngettext("Here is the string to translate",
+ "Here are the strings to translate",
+ 3)
+
+# Domain-based translation
+dgettext("errors","Here is the error message to translate")
It renews the session ID and clears the whole session
+to avoid fixation attacks. See the renew_session
+function to customize this behaviour.
It also sets a :live_socket_id key in the session,
+so LiveView sessions are identified and automatically
+disconnected on log out. The line can be safely removed
+if you are not using LiveView.
This module is used to convert presentations from PDF or PPT to images.
+We use a hash to identify the presentation. A new hash is generated when the conversion is finished and the presentation is being uploaded.
All configuration used by the app is stored in the .env file. You can find an example file in .env.sample, but you should copy it to .env and fill it with your own values (described below).
\n'},useData:!0})},,,,function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function o(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n]);return t.default=e,t}t.__esModule=!0;var i=o(n(9)),a=r(n(38)),l=r(n(3)),s=o(n(2)),u=o(n(39)),c=r(n(41));function d(){var e=new i.HandlebarsEnvironment;return s.extend(e,i),e.SafeString=a.default,e.Exception=l.default,e.Utils=s,e.escapeExpression=s.escapeExpression,e.VM=u,e.template=function(t){return u.template(t,e)},e}var f=d();f.create=d,c.default(f),f.default=f,t.default=f,e.exports=t.default},function(e,t,n){"use strict";t.__esModule=!0;var r=n(2);t.default=function(e){e.registerHelper("blockHelperMissing",(function(t,n){var o=n.inverse,i=n.fn;if(!0===t)return i(this);if(!1===t||null==t)return o(this);if(r.isArray(t))return t.length>0?(n.ids&&(n.ids=[n.name]),e.helpers.each(t,n)):o(this);if(n.data&&n.ids){var a=r.createFrame(n.data);a.contextPath=r.appendContextPath(n.data.contextPath,n.name),n={data:a}}return i(t,n)}))},e.exports=t.default},function(e,t,n){"use strict";(function(r){t.__esModule=!0;var o,i=n(2),a=n(3),l=(o=a)&&o.__esModule?o:{default:o};t.default=function(e){e.registerHelper("each",(function(e,t){if(!t)throw new l.default("Must pass iterator to #each");var n,o=t.fn,a=t.inverse,s=0,u="",c=void 0,d=void 0;function f(t,n,r){c&&(c.key=t,c.index=n,c.first=0===n,c.last=!!r,d&&(c.contextPath=d+t)),u+=o(e[t],{data:c,blockParams:i.blockParams([e[t],t],[d+t,null])})}if(t.data&&t.ids&&(d=i.appendContextPath(t.data.contextPath,t.ids[0])+"."),i.isFunction(e)&&(e=e.call(this)),t.data&&(c=i.createFrame(t.data)),e&&"object"==typeof e)if(i.isArray(e))for(var p=e.length;s
=l.LAST_COMPATIBLE_COMPILER_REVISION&&t<=l.COMPILER_REVISION)return;if(t0)return t.fn(this)}},function(e,t,n){"use strict";n.r(t),t.default=function(e,t){if(e.nodeGroups)return t.fn(this)}},function(e,t,n){"use strict";n.r(t),t.default=function(e,t){return Array.isArray(e)&&e.length>0?t.fn(this):t.inverse(this)}},,,function(e,t,n){"use strict";n.r(t);var r=n(0);function o(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function i(e){for(var t=1;t=e.length?{done:!0}:{done:!1,value:e[t++]}},e:function(e){throw e},f:n}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var r,o,i=!0,a=!1;return{s:function(){r=e[Symbol.iterator]()},n:function(){var e=r.next();return i=e.done,e},e:function(e){a=!0,o=e},f:function(){try{i||null==r.return||r.return()}finally{if(a)throw o}}}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);ne.length)&&(t=e.length);for(var n=0,r=new Array(t);n"+Object(r.c)(d)+""+e(f,n)}return e(t,a)}(e,ae(t).sort((function(e,t){return t.length-e.length})))}var se={autocompleteSuggestions:[],selectedIdx:-1};function ue(){Object(r.l)(".autocomplete").classList.remove("shown")}function ce(e){var t,n,o,i;se.autocompleteSuggestions=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:5;if(Object(r.j)(e))return[];var n=Q(),o=[].concat($(X(n.modules,e,J)),$(ee(n.modules,e,K)),$(X(n.tasks,e,Y)),$(X(n.extras,e,Z)));return te(o).slice(0,t)}(e),se.selectedIdx=-1,Object(r.j)(e)?ue():(t={term:e,suggestions:se.autocompleteSuggestions},n=t.term,o=t.suggestions,i=q()({suggestions:o,term:n}),Object(r.l)(".autocomplete").innerHTML=i,de(0),Object(r.l)(".autocomplete").classList.add("shown"))}function de(e){se.selectedIdx=function(e){var t=se.autocompleteSuggestions.length+1;return(se.selectedIdx+e+1+t)%t-1}(e);var t=Object(r.l)("".concat(".autocomplete-suggestion",".selected")),n=Object(r.l)("".concat(".autocomplete-suggestion",'[data-index="').concat(se.selectedIdx,'"]'));t&&t.classList.remove("selected"),n&&n.classList.add("selected")}function fe(){var e;(e=Object(r.l)("form.sidebar-search input")).addEventListener("keydown",(function(t){"Escape"===t.key?(pe(),e.blur()):"Enter"===t.key?function(e){var t=Object(r.l)("form.sidebar-search input"),n=e.shiftKey||e.ctrlKey,o=-1===se.selectedIdx?null:se.autocompleteSuggestions[se.selectedIdx];e.preventDefault();var i=n?"_blank":"_self",a=document.createElement("a");a.setAttribute("target",i),o?a.setAttribute("href",o.link):a.setAttribute("href","search.html?q=".concat(encodeURIComponent(t.value))),a.click(),n||(pe(),he())}(t):"ArrowUp"===t.key?(de(-1),t.preventDefault()):"ArrowDown"===t.key&&(de(1),t.preventDefault())})),e.addEventListener("input",(function(e){ce(e.target.value)})),e.addEventListener("focus",(function(e){document.body.classList.add("search-focused"),ce(e.target.value)})),e.addEventListener("blur",(function(t){var n=t.relatedTarget;if(n){if(n.matches(".autocomplete-suggestion"))return setTimeout((function(){Object(r.l)(".autocomplete").classList.contains("shown")&&e.focus()}),1e3),null;n.matches("form.sidebar-search .search-close-button")&&pe()}he()})),Object(r.l)(".autocomplete").addEventListener("click",(function(t){t.shiftKey||t.ctrlKey?e.focus():(pe(),he())}))}function pe(){Object(r.l)("form.sidebar-search input").value=""}function he(){document.body.classList.remove("search-focused"),ue()}var me=n(16),ye=n.n(me);function ve(e){return function(e){if(Array.isArray(e))return ge(e)}(e)||function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)}(e)||function(e,t){if(!e)return;if("string"==typeof e)return ge(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return ge(e,t)}(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function ge(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n0&&function(e){var t=e.nodes,n=Object(r.l)(".sidebar-projectVersion"),o=ye()({nodes:t});n.innerHTML=o,Object(r.l)(".sidebar-projectVersionsDropdown").addEventListener("change",Oe)}({nodes:function(e,t){return function(e,t){return e.some((function(e){return e.version===t}))?e:[{version:t,url:"#"}].concat(ve(e))}(e,t).map((function(e){return function(e){for(var t=1;te.length)&&(t=e.length);for(var n=0,r=new Array(t);n1?[].concat(Te(t),[e]):t}Pe.a.Pipeline.registerFunction(t,"elixirTokenSplitter"),e.pipeline.before(Pe.a.stemmer,t),e.searchPipeline.before(Pe.a.stemmer,t)}function De(e){return searchNodes.find((function(t){return t.ref===e}))||null}function Fe(e,t){var n=e.doc,o=Object.keys(t).filter((function(e){return"doc"in t[e]})).map((function(e){return t[e].doc.position.map((function(e){var t=Ee(e,2),o=t[0],i=t[1];return function(e,t,n){var o=Math.max(t-80,0),i=Math.min(t+n+80,e.length);return[o>0?"...":"",e.slice(o,t),""+Object(r.c)(e.slice(t,t+n))+"",e.slice(t+n,i),i=3&&(n={results:it.autocompleteResults},o=n.results,i=Object(r.l)("#quick-switch-results"),a=rt()({results:o}),i.innerHTML=a,Object(r.m)(".quick-switch-result").forEach((function(e){e.addEventListener("click",(function(t){var n=e.getAttribute("data-index");ct(it.autocompleteResults[n].name)}))}))))}))}),300);function ft(e){it.selectedIdx=function(e){var t=it.autocompleteResults.length;if(null===it.selectedIdx){if(e>=0)return 0;if(e<0)return t-1}return(it.selectedIdx+e+t)%t}(e);var t=Object(r.l)(".quick-switch-result.selected"),n=Object(r.l)('.quick-switch-result[data-index="'.concat(it.selectedIdx,'"]'));t&&t.classList.remove("selected"),n&&n.classList.add("selected")}var pt=n(21),ht=n.n(pt),mt=[{title:"Settings",id:"modal-settings-tab"},{title:"Keyboard shortcuts",id:"modal-keyboard-shortcuts-tab"}];function yt(){Object(r.m)(".display-settings").forEach((function(e){e.addEventListener("click",(function(e){gt()}))}))}function vt(){Object(r.l)("#modal-keyboard-shortcuts-tab").classList.remove("active"),Object(r.l)("#modal-settings-tab").classList.add("active"),Object(r.l)("#settings-content").classList.remove("hidden"),Object(r.l)("#keyboard-shortcuts").classList.add("hidden")}function gt(){Ze({title:mt.map((function(e){var t=e.id,n=e.title;return'")})).join(""),body:ht()({shortcuts:bt})});var e=Object(r.l)("#settings-modal-content"),t=e.querySelector('[name="theme"]'),n=e.querySelector('[name="tooltips"]'),o=e.querySelector('[name="direct_livebook_url"]'),i=e.querySelector('[name="livebook_url"]');u.getAndSubscribe((function(e){t.value=e.theme||"system",n.checked=e.tooltips,null===e.livebookUrl?(o.checked=!1,i.classList.add("hidden"),i.tabIndex=-1):(o.checked=!0,i.classList.remove("hidden"),i.tabIndex=0,i.value=e.livebookUrl)})),t.addEventListener("change",(function(e){u.update({theme:e.target.value})})),n.addEventListener("change",(function(e){u.update({tooltips:e.target.checked})})),o.addEventListener("change",(function(e){var t=e.target.checked?i.value:null;u.update({livebookUrl:t})})),i.addEventListener("input",(function(e){u.update({livebookUrl:e.target.value})})),Object(r.l)("#modal-settings-tab").addEventListener("click",(function(e){vt()})),Object(r.l)("#modal-keyboard-shortcuts-tab").addEventListener("click",(function(e){Object(r.l)("#modal-keyboard-shortcuts-tab").classList.add("active"),Object(r.l)("#modal-settings-tab").classList.remove("active"),Object(r.l)("#keyboard-shortcuts").classList.remove("hidden"),Object(r.l)("#settings-content").classList.add("hidden")})),vt()}var bt=[{key:"c",description:"Toggle sidebar",action:E},{key:"n",description:"Cycle themes",action:function(){var e=u.get().theme||"system",t=Ve[Ve.indexOf(e)+1]||Ve[0];u.update({theme:t}),qe('Set theme to "'.concat(t,'"'))}},{key:"s",description:"Focus search bar",displayAs:"/ or s",action:Pt},{key:"/",action:Pt},{key:"g",description:"Search HexDocs package",displayAs:"g",action:ut},{key:"?",displayAs:"?",description:"Bring up this help dialog",action:function(){Object(r.l)("#modal").classList.contains("shown")&&Object(r.l)("#settings-modal-content")?Xe():gt()}}],wt={shortcutBeingPressed:null};function xt(){document.addEventListener("keydown",Ot),document.addEventListener("keyup",kt)}function Ot(e){if(!wt.shortcutBeingPressed&&!e.target.matches("input, textarea")&&!(e.ctrlKey||e.metaKey||e.altKey)){var t=bt.find((function(t){return t.key===e.key}));t&&(wt.shortcutBeingPressed=t,e.preventDefault(),t.action(e))}}function kt(e){wt.shortcutBeingPressed=null}function Pt(e){Xe(),_().then((function(){Object(r.l)("form.sidebar-search input").focus()}))}var jt=n(22),St=n.n(jt),Et=n(23),Lt=n.n(Et),_t="plain",Tt="function",It="module",Ct=[{href:"typespecs.html#basic-types",hint:{kind:_t,description:"Basic type"}},{href:"typespecs.html#literals",hint:{kind:_t,description:"Literal"}},{href:"typespecs.html#built-in-types",hint:{kind:_t,description:"Built-in type"}}],At={cancelHintFetching:null};function Qt(e){var t=Mt(e);return t?Promise.resolve(t):function(e){var t=e.replace(".html",".html?hint=true");return new Promise((function(e,n){var r=document.createElement("iframe");function o(n){var r=n.data,o=r.href,a=r.hint;t===o&&(i(),e(a))}function i(){r.remove(),window.removeEventListener("message",o),At.cancelHintFetching=null}r.setAttribute("sandbox","allow-scripts allow-same-origin"),r.setAttribute("src",t),r.style.display="none",At.cancelHintFetching=function(){i(),n(new Error("cancelled"))},window.addEventListener("message",o),document.body.appendChild(r)}))}(e)}function Mt(e){var t=Ct.find((function(t){return e.includes(t.href)}));return t?t.hint:null}var Rt=450,Dt=768,Ft={currentLinkElement:null,hoverDelayTimeout:null};function Nt(){var e;e=Lt()(),Object(r.l)("body .content-inner").insertAdjacentHTML("beforeend",e),Object(r.m)(".content a").forEach((function(e){var t,n,o;!(t=e).classList.contains("detail-link")&&(n=t.href,o=n.replace("#content",""),window.location.href.split("#")[0]!==o&&function(e){return!!Mt(e)||!(e.includes("#")&&!/#.*\//.test(e))&&e.includes(".html")}(t.href))&&(e.addEventListener("mouseenter",(function(t){!function(e){var t;(t=window.innerWidth
p"),a=i?i.textContent:"",{kind:Tt,title:o.trim(),description:a.trim()}));if(["modules","tasks"].includes(Object(r.f)()))return Ut(function(e){var t=e.querySelector("h1 > span").textContent,n=e.querySelector("#moduledoc p"),r=n?n.textContent:"";return{kind:It,title:t.trim(),description:r.trim()}}(t));var n,o,i,a;return null}();e&&function(e){var t=window.location.href,n={hint:e,href:t};window.parent.postMessage(n,"*")}(e)}}function Ut(e){return function(e){for(var t=1;t')})),Array.from(Object(r.m)(".copy-button")).forEach((function(e){var t;e.addEventListener("click",(function(){t&&clearTimeout(t);var n=Array.from(e.parentElement.querySelector("code").childNodes).filter((function(e){return!("SPAN"===e.tagName&&e.classList.contains("unselectable"))})).map((function(e){return e.textContent})).join("");navigator.clipboard.writeText(n),e.classList.add("clicked"),t=setTimeout((function(){return e.classList.remove("clicked")}),3e3)}))})))}Object(r.k)((function(){Be(),k(),R(),fe(),xe(),f(),Object($e.a)(),Ke(),xt(),at(),Nt(),Bt(),Ae(),$t(),yt()}))}]);
\ No newline at end of file
diff --git a/dist/app-bd1cb213813bf4825aa2.js.LICENSE.txt b/dist/app-bd1cb213813bf4825aa2.js.LICENSE.txt
new file mode 100644
index 0000000..f321808
--- /dev/null
+++ b/dist/app-bd1cb213813bf4825aa2.js.LICENSE.txt
@@ -0,0 +1,61 @@
+/*!
+ * lunr.Builder
+ * Copyright (C) 2019 Oliver Nightingale
+ */
+
+/*!
+ * lunr.Index
+ * Copyright (C) 2019 Oliver Nightingale
+ */
+
+/*!
+ * lunr.Pipeline
+ * Copyright (C) 2019 Oliver Nightingale
+ */
+
+/*!
+ * lunr.Set
+ * Copyright (C) 2019 Oliver Nightingale
+ */
+
+/*!
+ * lunr.TokenSet
+ * Copyright (C) 2019 Oliver Nightingale
+ */
+
+/*!
+ * lunr.Vector
+ * Copyright (C) 2019 Oliver Nightingale
+ */
+
+/*!
+ * lunr.stemmer
+ * Copyright (C) 2019 Oliver Nightingale
+ * Includes code from - http://tartarus.org/~martin/PorterStemmer/js.txt
+ */
+
+/*!
+ * lunr.stopWordFilter
+ * Copyright (C) 2019 Oliver Nightingale
+ */
+
+/*!
+ * lunr.tokenizer
+ * Copyright (C) 2019 Oliver Nightingale
+ */
+
+/*!
+ * lunr.trimmer
+ * Copyright (C) 2019 Oliver Nightingale
+ */
+
+/*!
+ * lunr.utils
+ * Copyright (C) 2019 Oliver Nightingale
+ */
+
+/**
+ * lunr - http://lunrjs.com - A bit like Solr, but much smaller and not as bright - 2.3.8
+ * Copyright (C) 2019 Oliver Nightingale
+ * @license MIT
+ */
diff --git a/dist/elixir-b6f1ed5df9b1d42a7309.css b/dist/elixir-b6f1ed5df9b1d42a7309.css
new file mode 100644
index 0000000..4344a0b
--- /dev/null
+++ b/dist/elixir-b6f1ed5df9b1d42a7309.css
@@ -0,0 +1,2 @@
+@import url(https://fonts.googleapis.com/css?family=Lato:300,700|Merriweather:300italic,300|Inconsolata:400,700);
+/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace,monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace,monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}@font-face{font-family:remixicon;src:url(html/fonts/remixicon.eot);src:url(html/fonts/remixicon.eot#iefix) format("embedded-opentype"),url(html/fonts/remixicon.woff2) format("woff2"),url(html/fonts/remixicon.woff) format("woff"),url(html/fonts/remixicon.ttf) format("truetype"),url(html/fonts/remixicon.svg#remixicon) format("svg");font-display:swap}.remix-icon,[class*=" ri-"],[class^=ri-]{font-family:remixicon;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ri-lg{font-size:1.3333em;line-height:.75em;vertical-align:-.0667em}.ri-settings-3-line:before{content:"\F0E6"}.ri-add-line:before{content:"\EA13"}.ri-subtract-line:before{content:"\F1AF"}.ri-arrow-up-s-line:before{content:"\EA78"}.ri-arrow-down-s-line:before{content:"\EA4E"}.ri-arrow-right-s-line:before{content:"\EA6E"}.ri-search-2-line:before{content:"\F0CD"}.ri-menu-line:before{content:"\EF3E"}.ri-close-line:before{content:"\EB99"}.ri-link-m:before{content:"\EEAF"}.ri-code-s-slash-line:before{content:"\EBAD"}.ri-error-warning-line:before{content:"\ECA1"}.ri-information-line:before{content:"\EE59"}.ri-alert-line:before{content:"\EA21"}.ri-double-quotes-l:before{content:"\EC51"}body,html{-webkit-box-sizing:border-box;box-sizing:border-box;height:100%;width:100%}body{background-color:#fff;color:#000;font-size:16px;font-family:Lato,sans-serif;line-height:1.6875em}*,:after,:before{-webkit-box-sizing:inherit;box-sizing:inherit}.main{-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end}.main,.sidebar{display:-webkit-box;display:-ms-flexbox;display:-ms-flex;display:flex;height:100%}.sidebar{-webkit-box-orient:vertical;-webkit-box-direction:normal;min-height:0;-moz-flex-direction:column;-ms-flex-direction:column;flex-direction:column;width:300px;position:fixed;top:0;left:0;z-index:4}.sidebar-button{position:fixed;z-index:99;left:0;top:7px;-webkit-transition:color .3s ease-in-out,opacity .15s ease-out .1s,-webkit-transform .15s ease-out .1s;transition:color .3s ease-in-out,opacity .15s ease-out .1s,-webkit-transform .15s ease-out .1s;transition:color .3s ease-in-out,transform .15s ease-out .1s,opacity .15s ease-out .1s;transition:color .3s ease-in-out,transform .15s ease-out .1s,opacity .15s ease-out .1s,-webkit-transform .15s ease-out .1s;will-change:transform;-webkit-transform:translateX(250px);transform:translateX(250px)}.content{width:calc(100% - 300px);left:300px;height:100%;position:absolute;z-index:3}body.sidebar-opened .sidebar-button,body.sidebar-opening .sidebar-button{-webkit-transform:translateX(250px);transform:translateX(250px);position:absolute}body.sidebar-opening .sidebar-button{-webkit-transition:-webkit-transform .3s ease-in-out;transition:-webkit-transform .3s ease-in-out;transition:transform .3s ease-in-out;transition:transform .3s ease-in-out,-webkit-transform .3s ease-in-out}body.sidebar-opening .sidebar{left:0;-webkit-transition:left .3s ease-in-out;transition:left .3s ease-in-out}body.sidebar-opening .content{width:calc(100% - 300px);left:300px;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out}body.sidebar-closing .sidebar-button{-webkit-transform:translateX(0);transform:translateX(0)}body.sidebar-closing .sidebar{left:-300px;-webkit-transition:left .3s ease-in-out;transition:left .3s ease-in-out}body.sidebar-closing .content{width:100%;left:0;-webkit-transition:all .3s ease-in-out;transition:all .3s ease-in-out}body.sidebar-closed .sidebar-button{color:#000;-webkit-transition:-webkit-transform .3s ease-in-out;transition:-webkit-transform .3s ease-in-out;transition:transform .3s ease-in-out;transition:transform .3s ease-in-out,-webkit-transform .3s ease-in-out;-webkit-transform:translateY(-8px);transform:translateY(-8px)}body.sidebar-closed .sidebar{left:-300px}body.sidebar-closed .content{width:100%;left:0}body.search-focused .sidebar-button{-webkit-transform:translateX(250px) scaleY(0);transform:translateX(250px) scaleY(0);-webkit-transition:all .15s ease-out;transition:all .15s ease-out;opacity:0}body.search-focused .sidebar-search .search-close-button{-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transition:-webkit-transform .15s ease-out .15s;transition:-webkit-transform .15s ease-out .15s;transition:transform .15s ease-out .15s;transition:transform .15s ease-out .15s,-webkit-transform .15s ease-out .15s}.content-inner{max-width:949px;margin:0 auto;padding:3px 60px}.content-inner:focus{outline:none}.content-outer{min-height:100%}@media screen and (max-width:768px){.content,body.sidebar-opening .content{left:0;width:100%}.content-inner{padding:27px 20px 27px 40px;max-width:100%;overflow-x:auto}}.sidebar{font-family:Lato,sans-serif;font-size:16px;line-height:18px;background:#0d1829;color:#f0f5f9;overflow:hidden;scrollbar-color:#767676 #0d1829}.sidebar .gradient{background:-webkit-gradient(linear,left top,left bottom,from(#0d1829),to(rgba(13,24,41,0)));background:linear-gradient(#0d1829,rgba(13,24,41,0));height:20px;margin-top:-20px;pointer-events:none;position:relative;top:20px;z-index:100}.sidebar ul{list-style:none}.sidebar ul li{margin:0;padding:0 10px}.sidebar a{color:#f0f5f9;text-decoration:none;-webkit-transition:color .3s ease-in-out;transition:color .3s ease-in-out}.sidebar a:hover{color:#fff}.sidebar .sidebar-header{margin:12px;border-radius:4px;background-color:#1c2a3a;width:276px}.sidebar .sidebar-projectDetails{display:inline-block;text-align:left;vertical-align:top;margin:6px 0 0 10px}.sidebar .sidebar-projectImage{display:inline-block;max-width:48px;max-height:48px;margin:0 0 0 10px;vertical-align:bottom}.sidebar .sidebar-projectName{font-weight:700;font-size:20px;line-height:30px;color:#f0f5f9;margin:0;padding:0;max-width:230px;word-wrap:break-word}.sidebar .sidebar-projectVersion{display:block;position:relative;margin:0;padding:0;font-weight:300;font-size:16px;line-height:20px;color:#91a4b7}.sidebar .sidebar-projectVersionsDropdown{cursor:pointer;position:relative;margin:0;padding:0 0 0 12px;border:none;-moz-appearance:none;-webkit-appearance:none;appearance:none;background-color:transparent;color:#fff;z-index:2}.sidebar .sidebar-projectVersionsDropdown option{color:initial}.sidebar .sidebar-projectVersionsDropdown:focus{outline:none}.sidebar .sidebar-projectVersion form:after{position:absolute;left:0;top:2px;content:"\25BC";z-index:1;font-size:8px;color:#fff}.sidebar .sidebar-projectVersionsDropdown::-ms-expand{display:none}.sidebar .sidebar-listNav{padding:12px 0 0;margin:0}.sidebar .sidebar-listNav li,.sidebar .sidebar-listNav li a{text-transform:uppercase;font-weight:300;font-size:14px;color:#91a4b7}.sidebar .sidebar-listNav li{display:inline-block;border-bottom:3px solid transparent;line-height:27px}.sidebar .sidebar-listNav li.selected,.sidebar .sidebar-listNav li.selected a,.sidebar .sidebar-listNav li:hover,.sidebar .sidebar-listNav li:hover a{border-color:#8e7ce6;color:#f0f5f9}.sidebar .sidebar-search{margin-top:12px}.sidebar .sidebar-search .search-button:hover,.sidebar .sidebar-search.selected .search-button{color:#8e7ce6;opacity:1}.sidebar .sidebar-search .search-label{position:relative;width:100%}.sidebar .sidebar-search .search-button{font-size:14px;left:22px;padding:3px 1px 3px 0;top:18px}.sidebar .sidebar-search .search-button,.sidebar .sidebar-search .search-close-button{color:#f0f5f9;background-color:transparent;border:none;cursor:pointer;margin:0;opacity:.5;position:absolute;z-index:2}.sidebar .sidebar-search .search-close-button{font-size:16px;right:18px;padding:5px 1px 5px 0;-webkit-transform:scaleY(0);transform:scaleY(0);top:17px;-webkit-transition:-webkit-transform .15s ease-out;transition:-webkit-transform .15s ease-out;transition:transform .15s ease-out;transition:transform .15s ease-out,-webkit-transform .15s ease-out}.sidebar .sidebar-search .search-close-button:hover{opacity:.7}.sidebar .sidebar-search .search-close-button:focus,.sidebar .sidebar-search .search-close-button:hover{outline:none}.sidebar .sidebar-search .search-input{background-color:#1c2a3a;border:none;border-radius:4px;color:#f0f5f9;margin-left:12px;padding:8px 6px 8px 38px;width:276px}.sidebar .sidebar-search .search-input:focus,.sidebar .sidebar-search .search-input:hover{outline:none}.sidebar .sidebar-search .ri-search-2-line{font-weight:700}.sidebar #full-list{margin:0;padding:20px 0;overflow-y:auto;position:relative;-webkit-overflow-scrolling:touch;-webkit-box-flex:1;-moz-flex:1 1 0.01%;-ms-flex:1 1 0.01%;flex:1 1 0.01%;-ms-flex-positive:1;-ms-flex-negative:1;-ms-flex-preferred-size:0.01%}.sidebar #full-list li{padding:0;margin-right:30px;line-height:27px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar #full-list li.docs{margin-right:0}.sidebar #full-list li.open>ul{display:block;margin-left:10px}.sidebar #full-list li a.expand>span.icon-expand:after{font-family:remixicon;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\EA4E";float:right;margin-right:10px;font-size:1.2em;position:absolute;right:0}.sidebar #full-list li.open>a.expand>span.icon-expand:after{font-family:remixicon;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\EA78"}.sidebar #full-list li.docs>a>span.icon-expand:after{font-family:remixicon;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin-right:12px;content:"\EA13";font-size:1em;position:absolute;right:0}.sidebar #full-list li.docs.open>a>span.icon-expand:after{font-family:remixicon;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;content:"\F1AF"}.sidebar #full-list li.nesting-context{font-weight:700;font-size:.9em;line-height:1.8em;color:#91a4b7;padding-left:15px}.sidebar #full-list li.group{text-transform:uppercase;font-weight:700;font-size:.8em;margin:2em 0 0;line-height:1.8em;color:#91a4b7;padding-left:15px}.sidebar #full-list li a{padding:3px 0 3px 15px;color:#cad5e0}.sidebar #full-list li .sections-list>li,.sidebar #full-list li a.expand{text-overflow:ellipsis}.sidebar #full-list li .current-section>a{color:#8e7ce6}.sidebar #full-list>li.current-page>a{color:#8e7ce6;border-left:3px solid #8e7ce6;padding-left:12px}.sidebar #full-list>li.current-page,.sidebar #full-list>li.current-page>a:after{color:#8e7ce6}.sidebar #full-list>li:last-child{margin-bottom:30px}.sidebar #full-list>li.group:first-child{margin-top:0}.sidebar #full-list ul{display:none;margin:9px 0 9px 15px;padding:0}.sidebar #full-list ul li{font-weight:300;line-height:20px;padding:2px 8px;margin-right:0;color:#f0f5f9}.sidebar #full-list ul li.current-hash{color:#8e7ce6}.sidebar #full-list ul li.current-hash:before{content:"\2022";color:#8e7ce6}.sidebar #full-list ul li.current-hash>a{color:#8e7ce6;margin-left:-12px}.sidebar #full-list ul li a{padding-left:15px}.sidebar #full-list ul li ul{display:none;margin:9px 0 9px 20px}.sidebar #full-list ul li ul li{border-left:1px solid #304254;padding:0 10px;margin-left:8px;margin-right:0;color:#f0f5f9}.sidebar #full-list ul li ul li a{padding-left:0}.sidebar #full-list ul li ul li.current-hash:before{content:none}.sidebar #full-list ul li ul li.current-hash{color:#8e7ce6;border-color:#8e7ce6}.sidebar #full-list ul li ul li.current-hash>a{color:#8e7ce6;margin-left:0}.sidebar ::-webkit-scrollbar{width:14px}.sidebar ::-webkit-scrollbar-track{background-color:#0d1829}.sidebar ::-webkit-scrollbar-thumb{background:#767676;border-radius:10px;border:3px solid #0d1829}.sidebar-button{color:#e1e1e1;cursor:pointer;background-color:transparent;border:none;padding:15px 11px;font-size:16px}.sidebar-button:hover{color:#fff}.sidebar-button:active,.sidebar-button:focus,.sidebar-button:hover{outline:none}@media screen and (max-height:500px){.sidebar{overflow-y:auto}.sidebar #full-list{overflow:visible}}.content-inner{font-family:Merriweather,Book Antiqua,Georgia,Century Schoolbook,serif;font-size:1em;line-height:1.6875em;position:relative;color:#1c2a3a;background-color:#fff}.content-inner h1,.content-inner h2,.content-inner h3,.content-inner h4,.content-inner h5,.content-inner h6{font-family:Lato,sans-serif;font-weight:700;line-height:1.5em;word-wrap:break-word;color:#0d1829}.content-inner h1{font-size:2em;margin:1em 0 .5em}.content-inner h1.signature{margin:0}.content-inner h1.section-heading{margin:1.5em 0 .5em}.content-inner h1 small{font-weight:300}.content-inner h1 .settings,.content-inner h1 a.view-source{font-size:1.2rem;font-weight:400}.content-inner h2{font-size:1.6em;margin:1em 0 .5em;font-weight:700}.content-inner h3{font-size:1.375em;margin:1em 0 .5em;font-weight:700}.content-inner a{color:#000;text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}.content-inner a:visited{color:#000}.content-inner a.no-underline{text-decoration:none}.content-inner a.view-source{float:right;color:#727272;text-decoration:none;border:none;-webkit-transition:color .3s ease-in-out;transition:color .3s ease-in-out}.content-inner a.view-source:hover{color:#0d1829}.content-inner .settings{background-color:transparent;float:right;color:#727272;text-decoration:none;border:none;-webkit-transition:color .1s ease-in-out;transition:color .1s ease-in-out;margin-top:12px;cursor:pointer}.content-inner .settings:hover{color:#0d1829}.content-inner .livebook-badge-container{display:-webkit-box;display:-ms-flexbox;display:flex}.content-inner a.livebook-badge{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex}.content-inner .note{color:#727272;margin-right:5px;font-size:14px;font-weight:400}.content-inner h1 .note{float:right}.content-inner blockquote{border-left:3px solid #e1e1e1;position:relative;margin:1.5625em 0;padding:0 1.2rem;overflow:auto;background-color:#f6f6f6;border-radius:3px}.content-inner blockquote p:last-child{padding-bottom:1em;margin-bottom:0}.content-inner table{margin:2em 0}.content-inner th{text-align:left;font-family:Lato,sans-serif;text-transform:uppercase;font-weight:700;padding-bottom:.5em}.content-inner tr{border-bottom:1px solid #f0f5f9;vertical-align:bottom;height:2.5em}.content-inner td,.content-inner th{padding-left:1em;line-height:2em;vertical-align:top}.content-inner .section-heading:hover a.hover-link{opacity:1;text-decoration:none}.content-inner .section-heading a.hover-link{-webkit-transition:opacity .3s ease-in-out;transition:opacity .3s ease-in-out;display:inline-block;opacity:0;padding:.3em .6em .6em;line-height:1em;margin-left:-2.7em;text-decoration:none;border:none;font-size:16px;vertical-align:middle}.content-inner .detail h1.section-heading,.content-inner .detail h2.section-heading,.content-inner .detail h3.section-heading,.content-inner .detail h4.section-heading,.content-inner .detail h5.section-heading,.content-inner .detail h6.section-heading{margin-left:.3em}.content-inner .app-vsn{display:none!important;font-size:.6em;line-height:1.5em}@media screen and (max-width:768px){.content-inner .app-vsn{display:block!important}}.content-inner img{max-width:100%}.content-inner code{font-family:Inconsolata,Menlo,Courier,monospace;font-style:normal;line-height:24px;font-weight:400}.content-inner blockquote.error,.content-inner blockquote.info,.content-inner blockquote.neutral,.content-inner blockquote.tip,.content-inner blockquote.warning{color:#000;border-radius:10px;border-left:0}.content-inner blockquote.warning{background-color:#fff7ed}.content-inner blockquote.error{background-color:#fdeeec}.content-inner blockquote.info{background-color:#e9f5fe}.content-inner blockquote.neutral{background-color:#e2e8ef}.content-inner blockquote.tip{background-color:#e8f3ec}.content-inner blockquote h3.error,.content-inner blockquote h3.info,.content-inner blockquote h3.neutral,.content-inner blockquote h3.tip,.content-inner blockquote h3.warning,.content-inner blockquote h4.error,.content-inner blockquote h4.info,.content-inner blockquote h4.neutral,.content-inner blockquote h4.tip,.content-inner blockquote h4.warning{margin:0 -1.2rem;padding:.7rem 1.2rem .7rem 3.3rem;font-weight:700;font-style:normal;color:#fff}.content-inner blockquote h3.error:before,.content-inner blockquote h3.info:before,.content-inner blockquote h3.neutral:before,.content-inner blockquote h3.tip:before,.content-inner blockquote h3.warning:before,.content-inner blockquote h4.error:before,.content-inner blockquote h4.info:before,.content-inner blockquote h4.neutral:before,.content-inner blockquote h4.tip:before,.content-inner blockquote h4.warning:before{position:absolute;left:1rem;font-size:1.8rem;font-family:remixicon;font-style:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.content-inner blockquote h3.error.warning,.content-inner blockquote h3.info.warning,.content-inner blockquote h3.neutral.warning,.content-inner blockquote h3.tip.warning,.content-inner blockquote h3.warning.warning,.content-inner blockquote h4.error.warning,.content-inner blockquote h4.info.warning,.content-inner blockquote h4.neutral.warning,.content-inner blockquote h4.tip.warning,.content-inner blockquote h4.warning.warning{background-color:#f3ac55;color:#000}.content-inner blockquote h3.error.warning:before,.content-inner blockquote h3.info.warning:before,.content-inner blockquote h3.neutral.warning:before,.content-inner blockquote h3.tip.warning:before,.content-inner blockquote h3.warning.warning:before,.content-inner blockquote h4.error.warning:before,.content-inner blockquote h4.info.warning:before,.content-inner blockquote h4.neutral.warning:before,.content-inner blockquote h4.tip.warning:before,.content-inner blockquote h4.warning.warning:before{color:#000;content:"\ECA1"}.content-inner blockquote h3.error.error,.content-inner blockquote h3.info.error,.content-inner blockquote h3.neutral.error,.content-inner blockquote h3.tip.error,.content-inner blockquote h3.warning.error,.content-inner blockquote h4.error.error,.content-inner blockquote h4.info.error,.content-inner blockquote h4.neutral.error,.content-inner blockquote h4.tip.error,.content-inner blockquote h4.warning.error{background-color:#eb5949}.content-inner blockquote h3.error.error:before,.content-inner blockquote h3.info.error:before,.content-inner blockquote h3.neutral.error:before,.content-inner blockquote h3.tip.error:before,.content-inner blockquote h3.warning.error:before,.content-inner blockquote h4.error.error:before,.content-inner blockquote h4.info.error:before,.content-inner blockquote h4.neutral.error:before,.content-inner blockquote h4.tip.error:before,.content-inner blockquote h4.warning.error:before{content:"\ECA1"}.content-inner blockquote h3.error.info,.content-inner blockquote h3.info.info,.content-inner blockquote h3.neutral.info,.content-inner blockquote h3.tip.info,.content-inner blockquote h3.warning.info,.content-inner blockquote h4.error.info,.content-inner blockquote h4.info.info,.content-inner blockquote h4.neutral.info,.content-inner blockquote h4.tip.info,.content-inner blockquote h4.warning.info{background-color:#4496f7}.content-inner blockquote h3.error.info:before,.content-inner blockquote h3.info.info:before,.content-inner blockquote h3.neutral.info:before,.content-inner blockquote h3.tip.info:before,.content-inner blockquote h3.warning.info:before,.content-inner blockquote h4.error.info:before,.content-inner blockquote h4.info.info:before,.content-inner blockquote h4.neutral.info:before,.content-inner blockquote h4.tip.info:before,.content-inner blockquote h4.warning.info:before{content:"\EE59"}.content-inner blockquote h3.error.neutral,.content-inner blockquote h3.info.neutral,.content-inner blockquote h3.neutral.neutral,.content-inner blockquote h3.tip.neutral,.content-inner blockquote h3.warning.neutral,.content-inner blockquote h4.error.neutral,.content-inner blockquote h4.info.neutral,.content-inner blockquote h4.neutral.neutral,.content-inner blockquote h4.tip.neutral,.content-inner blockquote h4.warning.neutral{background-color:#101828}.content-inner blockquote h3.error.neutral:before,.content-inner blockquote h3.info.neutral:before,.content-inner blockquote h3.neutral.neutral:before,.content-inner blockquote h3.tip.neutral:before,.content-inner blockquote h3.warning.neutral:before,.content-inner blockquote h4.error.neutral:before,.content-inner blockquote h4.info.neutral:before,.content-inner blockquote h4.neutral.neutral:before,.content-inner blockquote h4.tip.neutral:before,.content-inner blockquote h4.warning.neutral:before{content:"\EC51"}.content-inner blockquote h3.error.tip,.content-inner blockquote h3.info.tip,.content-inner blockquote h3.neutral.tip,.content-inner blockquote h3.tip.tip,.content-inner blockquote h3.warning.tip,.content-inner blockquote h4.error.tip,.content-inner blockquote h4.info.tip,.content-inner blockquote h4.neutral.tip,.content-inner blockquote h4.tip.tip,.content-inner blockquote h4.warning.tip{background-color:#377e47}.content-inner blockquote h3.error.tip:before,.content-inner blockquote h3.info.tip:before,.content-inner blockquote h3.neutral.tip:before,.content-inner blockquote h3.tip.tip:before,.content-inner blockquote h3.warning.tip:before,.content-inner blockquote h4.error.tip:before,.content-inner blockquote h4.info.tip:before,.content-inner blockquote h4.neutral.tip:before,.content-inner blockquote h4.tip.tip:before,.content-inner blockquote h4.warning.tip:before{content:"\EE59"}.content-inner .summary h2{font-weight:700}.content-inner .summary h2 a{text-decoration:none;border:none}.content-inner .summary span.deprecated{color:#dcc100;font-weight:400;font-style:italic}.content-inner .summary .summary-row .summary-signature{font-family:Inconsolata,Menlo,Courier,monospace;font-weight:700}.content-inner .summary .summary-row .summary-signature a{text-decoration:none;border:none}.content-inner .summary .summary-row .summary-synopsis{font-family:Merriweather,Book Antiqua,Georgia,Century Schoolbook,serif;font-style:italic;padding:0 1.2em;margin:0 0 .5em}.content-inner .summary .summary-row .summary-synopsis p{margin:0;padding:0}@-webkit-keyframes blink-background{0%{background-color:#f7f7f7}to{background-color:#ffd}}@keyframes blink-background{0%{background-color:#f7f7f7}to{background-color:#ffd}}.content-inner .detail:target .detail-header{-webkit-animation-duration:.55s;animation-duration:.55s;-webkit-animation-name:blink-background;animation-name:blink-background;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}.content-inner .detail-header{margin:2em 0 1em;padding:.5em 1em;background:#f7f7f7;border-left:3px solid #8e7ce6;font-size:1em;font-family:Inconsolata,Menlo,Courier,monospace;position:relative}.content-inner .detail-header .note{float:right}.content-inner .detail-header .signature{display:inline-block;font-family:Inconsolata,Menlo,Courier,monospace;font-size:1rem;font-weight:700}.content-inner .detail-header:hover a.detail-link{opacity:1;text-decoration:none}.content-inner .detail-header a.detail-link{-webkit-transition:opacity .3s ease-in-out;transition:opacity .3s ease-in-out;position:absolute;top:0;left:0;display:block;opacity:0;padding:.6em;line-height:1.5em;margin-left:-2.5em;text-decoration:none;border:none}.content-inner .specs pre{font-family:Inconsolata,Menlo,Courier,monospace;font-size:.9em;font-style:normal;line-height:24px;white-space:pre-wrap;margin:0;padding:0}.content-inner .specs .attribute{color:#767676}.content-inner .docstring{margin:1.2em 0 3em 1.2em}.content-inner .docstring h2,.content-inner .docstring h3,.content-inner .docstring h4,.content-inner .docstring h5{font-weight:700}.content-inner .docstring h2{font-size:1.1em}.content-inner .docstring h3{font-size:1em}.content-inner .docstring h4{font-size:.95em}.content-inner .docstring h5{font-size:.9em}.content-inner div.deprecated{display:block;padding:9px 15px;background-color:#ffff9d}.content-inner a.no-underline,.content-inner pre a{color:#6951de;text-shadow:none;text-decoration:none;background-image:none}.content-inner a.no-underline:active,.content-inner a.no-underline:focus,.content-inner a.no-underline:hover,.content-inner a.no-underline:visited,.content-inner pre a:active,.content-inner pre a:focus,.content-inner pre a:hover,.content-inner pre a:visited{color:#4528d4;text-decoration:none}.content-inner code{background-color:#f7f9fc;vertical-align:baseline;border-radius:2px;padding:.1em .2em;border:1px solid #d2ddee;text-transform:none}.content-inner pre{margin:1.5em 0}.content-inner pre code{display:block;overflow-x:auto;white-space:inherit;padding:.5em 1em;background-color:#f7f9fc}.content-inner .footer{margin:4em auto 1em;text-align:center;font-style:italic;font-size:14px;color:#767676}.content-inner .footer .line{display:inline-block}.content-inner .footer .footer-button{background-color:transparent;border:0;cursor:pointer;font-style:italic;outline:none;padding:0 4px;color:#767676;text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}.content-inner .footer .footer-button:visited{color:#767676}.content-inner .footer .footer-hex-package{margin-right:4px}.content-inner .footer a{color:#767676;text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}.content-inner .footer a:visited{color:#767676}.content-inner .bottom-actions{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-top:4em}.content-inner .bottom-actions .bottom-actions-button{display:-webkit-box;display:-ms-flexbox;display:flex;text-decoration:none;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-radius:4px;border:1px solid rgba(0,0,0,.1);padding:8px 16px;min-width:150px}.content-inner .bottom-actions .bottom-actions-button .subheader{font-size:.8em;color:#6951de;white-space:nowrap}.content-inner .bottom-actions .bottom-actions-button[rel=prev] .subheader{text-align:right}@media screen and (max-width:768px){.content-inner .bottom-actions{-webkit-box-orient:vertical;-webkit-box-direction:reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse}.content-inner .bottom-actions .bottom-actions-item:not(:first-child){margin-bottom:16px}}body:not(.dark) .content-inner img[src*="#gh-dark-mode-only"]{display:none}#search{min-height:200px;position:relative}#search .loading{height:64px;width:64px;vertical-align:middle;position:absolute;top:50%;left:calc(50% - 32px)}#search .loading div{-webkit-box-sizing:border-box;box-sizing:border-box;display:block;position:absolute;width:51px;height:51px;margin:6px;border-radius:50%;-webkit-animation:loading 1.2s cubic-bezier(.5,0,.5,1) infinite;animation:loading 1.2s cubic-bezier(.5,0,.5,1) infinite;border:6px solid transparent;border-top-color:#767676}#search .loading div:first-child{-webkit-animation-delay:-.45s;animation-delay:-.45s}#search .loading div:nth-child(2){-webkit-animation-delay:-.3s;animation-delay:-.3s}#search .loading div:nth-child(3){-webkit-animation-delay:-.15s;animation-delay:-.15s}@-webkit-keyframes loading{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes loading{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}#search .result{margin:2em 0 2.5em}#search .result p{margin:0}#search .result-id{font-size:1.4em;margin:0}#search .result-id a{text-decoration:none;-webkit-transition:color .3s ease-in-out;transition:color .3s ease-in-out}#search .result-id a:active,#search .result-id a:focus,#search .result-id a:visited{color:#000}#search .result-id a:hover{color:#8e7ce6}#search .result-elem em,#search .result-id em{font-style:normal;color:#8e7ce6}#search .result-id small{font-weight:400}@-webkit-keyframes keyboard-shortcuts-show{0%{opacity:0}to{opacity:1}}@keyframes keyboard-shortcuts-show{0%{opacity:0}to{opacity:1}}.modal{-webkit-animation-duration:.15s;animation-duration:.15s;-webkit-animation-name:keyboard-shortcuts-show;animation-name:keyboard-shortcuts-show;-webkit-animation-iteration-count:1;animation-iteration-count:1;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;display:none;background-color:rgba(0,0,0,.7);position:fixed;top:0;left:0;right:0;bottom:0;z-index:300}.modal.shown{display:block}.modal .modal-contents{margin:75px auto 0;max-width:500px;background-color:#fff;border-radius:3px;-webkit-box-shadow:2px 2px 8px rgba(0,0,0,.2);box-shadow:2px 2px 8px rgba(0,0,0,.2);padding:25px 35px 35px}@media screen and (max-width:768px){.modal .modal-contents{padding:20px}}.modal .modal-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:start;-ms-flex-align:start;align-items:start}.modal .modal-title{display:inline-block;-webkit-box-flex:1;-ms-flex-positive:1;flex-grow:1;font-size:1.2rem;font-weight:700;margin-bottom:20px}.modal .modal-title button{border:none;background:transparent;font-weight:700;margin-right:30px;padding-left:0;text-align:left;-webkit-transition:color .15s;transition:color .15s}.modal .modal-title button:hover{color:#8e7ce6;cursor:pointer}.modal .modal-title button.active{color:#8e7ce6}.modal .modal-close{cursor:pointer;display:block;font-size:1.5rem;margin:-8px -8px 0 0;padding:8px;opacity:.3;background:none;border:none;-webkit-transition:opacity .15s;transition:opacity .15s}.modal .modal-close:hover{opacity:.7}#keyboard-shortcuts dl.shortcut-row{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin:0;padding:6px 0}#keyboard-shortcuts dl.shortcut-row:first-child{padding-top:0}#keyboard-shortcuts .shortcut-keys{display:inline-block}#keyboard-shortcuts .shortcut-description{display:inline-block;color:#445668}#keyboard-shortcuts kbd>kbd{background-color:#0d1829;border-radius:3px;color:#f0f5f9;font-family:inherit;font-weight:700;display:inline-block;line-height:1;padding:4px 7px 6px;min-width:26px;text-align:center;margin-left:3px;border-bottom:1px solid #91a4b7}#keyboard-shortcuts .shortcut-description,#keyboard-shortcuts .shortcut-keys{margin:0}#quick-switch-modal-body{width:100%;position:relative}#quick-switch-modal-body .ri-search-2-line{position:absolute;left:0;top:0;padding:8px 2px;color:#767676}#quick-switch-modal-body #quick-switch-input{width:100%;padding:8px 6px 6px 26px;border:none;border-bottom:1px solid #767676;-webkit-box-sizing:border-box;box-sizing:border-box;-webkit-transition:all .12s ease-out;transition:all .12s ease-out}#quick-switch-modal-body #quick-switch-input:focus{border-bottom:1px solid #0d1829;outline:none}#quick-switch-modal-body #quick-switch-results{margin:0}#quick-switch-modal-body #quick-switch-results .quick-switch-result{padding:2px 5px;border-bottom:1px dotted #767676;-webkit-transition:all .12s ease-out;transition:all .12s ease-out}#quick-switch-modal-body #quick-switch-results .quick-switch-result:last-child{border-bottom:none}#quick-switch-modal-body #quick-switch-results .quick-switch-result:hover{cursor:pointer}#quick-switch-modal-body #quick-switch-results .quick-switch-result.selected,#quick-switch-modal-body #quick-switch-results .quick-switch-result:hover{border-left:4px solid #8e7ce6;background:#f7f9fc}.autocomplete{display:none;height:0;margin:0 5px 0 12px;overflow:visible;position:relative;width:100%}.autocomplete.shown{display:block}.autocomplete-suggestions{-webkit-box-shadow:2px 2px 10px rgba(0,0,0,.25);box-shadow:2px 2px 10px rgba(0,0,0,.25);background-color:#1c2a3a;border-top:1px solid #0d1829;left:0;position:absolute;top:-2px;width:276px;z-index:200}.autocomplete-suggestion{color:inherit;display:block;padding:10px;text-decoration:none}.autocomplete-suggestion.selected,.autocomplete-suggestion:hover{background-color:#304254;border-left:3px solid #8e7ce6}.autocomplete-suggestion em{font-style:normal;font-weight:700}.autocomplete-suggestion .description{opacity:.6;padding-top:3px}.autocomplete-suggestion .label{padding-left:2px;opacity:.75}.autocomplete-suggestion .description,.autocomplete-suggestion .title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;width:100%}#tooltip{-webkit-box-shadow:0 0 10px rgba(0,0,0,.1);box-shadow:0 0 10px rgba(0,0,0,.1);max-height:300px;max-width:500px;padding:0;position:absolute;pointer-events:none;margin:0;z-index:99;top:0;left:0;visibility:hidden;-webkit-transform:translateY(20px);transform:translateY(20px);opacity:0;-webkit-transition:visibility .2s ease-out,opacity .2s ease-out,-webkit-transform .2s ease-out;transition:visibility .2s ease-out,opacity .2s ease-out,-webkit-transform .2s ease-out;transition:visibility .2s ease-out,transform .2s ease-out,opacity .2s ease-out;transition:visibility .2s ease-out,transform .2s ease-out,opacity .2s ease-out,-webkit-transform .2s ease-out}#tooltip.tooltip-shown{visibility:visible;-webkit-transform:translateY(0);transform:translateY(0);opacity:1}#tooltip .tooltip-body{border:1px solid hsla(0,0%,46.3%,.3)}#tooltip .tooltip-body .signature{min-width:320px;width:100%}#tooltip .tooltip-body .detail-header{border-left:0;margin-bottom:0;margin-top:0}#tooltip .tooltip-body .docstring{background-color:#fff;padding:1.2em;margin:0;width:498px}#tooltip .tooltip-body .docstring-plain{max-width:498px;width:auto}#tooltip .tooltip-body .version-info{float:right;line-height:1.6rem;font-family:Inconsolata,Menlo,Courier,monospace;font-size:.9rem;font-weight:400;margin-bottom:-6px;opacity:.3;padding-left:.3em}pre{position:relative}pre:hover .copy-button{display:block}.copy-button{display:none;position:absolute;top:9px;right:9px;background:transparent;border:none;cursor:pointer;padding:0;opacity:.5;-webkit-transition:all .15s;transition:all .15s;font-family:Merriweather,Book Antiqua,Georgia,Century Schoolbook,serif;font-size:14px;line-height:24px;color:currentColor}.copy-button:hover{opacity:1}.copy-button svg{width:20px}.copy-button.clicked{display:block;opacity:1;color:#408200}.copy-button.clicked:after{content:"Copied! \2713"}.copy-button.clicked svg{display:none;color:currentColor}#settings-modal-content{margin-top:10px}#settings-modal-content .hidden{display:none}#settings-modal-content .input{width:80%;padding:8px;margin-top:2px;color:#445668;font-size:14px;border:1px solid #cad5e0;-webkit-box-sizing:border-box;box-sizing:border-box;border-radius:8px;-webkit-transition:border-color .15s;transition:border-color .15s}#settings-modal-content .input:focus{outline:none;border-color:#8e7ce6}#settings-modal-content .input::-webkit-input-placeholder{color:#91a4b7}#settings-modal-content .input:-moz-placeholder,#settings-modal-content .input::-moz-placeholder{color:#91a4b7}#settings-modal-content .input:-ms-input-placeholder{color:#91a4b7}#settings-modal-content .switch-button-container{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between}#settings-modal-content .switch-button-container:not(:first-child){border-top:1px solid #cad5e0;padding-top:16px}#settings-modal-content .switch-button-container>div>span{color:#304254;font-size:18px}#settings-modal-content .switch-button-container>div>p{color:#445668;font-size:14px;line-height:1.4;margin:0;padding-bottom:6px;padding-right:10px}#settings-modal-content .switch-button{position:relative;display:inline-block;-ms-flex-negative:0;flex-shrink:0;width:40px;height:20px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;-webkit-transition:all .15s;transition:all .15s}#settings-modal-content .switch-button__checkbox{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:absolute;display:block;width:20px;height:20px;border-radius:1000px;background-color:#91a4b7;border:3px solid #e5edf5;cursor:pointer;-webkit-transition:all .3s;transition:all .3s}#settings-modal-content .switch-button__bg{display:block;width:100%;height:100%;border-radius:1000px;background-color:#e5edf5;cursor:pointer;-webkit-transition:all .3s;transition:all .3s}#settings-modal-content .switch-button__checkbox:checked{background-color:#fff;border-color:#8e7ce6;-webkit-transform:translateX(100%);transform:translateX(100%)}#settings-modal-content .switch-button__checkbox:checked+.switch-button__bg{background-color:#8e7ce6}#settings-modal-content .keyboard-shortcuts{color:#304254;font-size:18px}#settings-modal-content .settings-select{cursor:pointer;position:relative;border:none;background-color:transparent}#settings-modal-content .settings-select option{color:initial}#settings-modal-content .settings-select:focus{outline:none}#toast{opacity:0;position:fixed;z-index:1;left:50%;bottom:1rem;min-width:3rem;margin:0 -1.2rem;padding:.7rem 1.2rem;border-radius:10px;border:1px solid #ccc;-webkit-box-shadow:transparent 0 0 0 0,transparent 0 0 0 0,rgba(0,0,0,.1) 0 20px 25px -5px,rgba(0,0,0,.1) 0 8px 10px -6px;box-shadow:0 0 0 0 transparent,0 0 0 0 transparent,0 20px 25px -5px rgba(0,0,0,.1),0 8px 10px -6px rgba(0,0,0,.1);font-weight:700;color:#000;text-align:center;background-color:#fff;-webkit-transition:opacity .4s ease-in-out,-webkit-transform .3s ease-out;transition:opacity .4s ease-in-out,-webkit-transform .3s ease-out;transition:opacity .4s ease-in-out,transform .3s ease-out;transition:opacity .4s ease-in-out,transform .3s ease-out,-webkit-transform .3s ease-out}#toast.show{opacity:1;-webkit-transform:translateY(-.75rem);transform:translateY(-.75rem)}@media (prefers-reduced-motion:reduce){#toast{-webkit-transition:none;transition:none}}body.dark{background:#030913}body.dark #search .result-id a:active,body.dark #search .result-id a:focus,body.dark #search .result-id a:visited{color:#dce1e6}body.dark #search .result-id a:hover{color:#8e7ce6}body.dark blockquote{border-left:3px solid #44444c;background-color:#2c2c31}body.dark .content-inner{background:#030913;color:#cad5e0}body.dark .content-inner h1,body.dark .content-inner h2,body.dark .content-inner h3,body.dark .content-inner h4,body.dark .content-inner h5,body.dark .content-inner h6{color:#dce1e6}body.dark .content-inner a{text-decoration:none;color:#dce1e6;text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}body.dark .content-inner a:visited{color:#dce1e6}body.dark .content-inner a.view-source{color:#939393;text-decoration:none}body.dark .content-inner a.view-source:hover{color:#fff}body.dark .content-inner .settings{color:#939393}body.dark .content-inner .settings:hover{color:#fff}body.dark .content-inner .note{color:#939393}body.dark .content-inner .summary h2 a{text-decoration:none}body.dark .content-inner img[src*="#gh-light-mode-only"]{display:none}body.dark .content-inner blockquote.error a,body.dark .content-inner blockquote.info a,body.dark .content-inner blockquote.neutral a,body.dark .content-inner blockquote.tip a,body.dark .content-inner blockquote.warning a{color:#000;text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}body.dark .content-inner blockquote.error a:visited,body.dark .content-inner blockquote.info a:visited,body.dark .content-inner blockquote.neutral a:visited,body.dark .content-inner blockquote.tip a:visited,body.dark .content-inner blockquote.warning a:visited{color:#000}body.dark .content-inner blockquote.error code,body.dark .content-inner blockquote.info code,body.dark .content-inner blockquote.neutral code,body.dark .content-inner blockquote.tip code,body.dark .content-inner blockquote.warning code{background-color:#f7f9fc;border:1px solid #d2ddee}body.dark .content-inner blockquote.warning{background-color:#edd5a5}body.dark .content-inner blockquote.error{background-color:#e4aaac}body.dark .content-inner blockquote.info{background-color:#a4b8e8}body.dark .content-inner blockquote.neutral{background-color:#c6cddb}body.dark .content-inner blockquote.tip{background-color:#9dc5aa}body.dark .content-inner blockquote h3.error:before,body.dark .content-inner blockquote h3.info:before,body.dark .content-inner blockquote h3.neutral:before,body.dark .content-inner blockquote h3.tip:before,body.dark .content-inner blockquote h3.warning:before,body.dark .content-inner blockquote h4.error:before,body.dark .content-inner blockquote h4.info:before,body.dark .content-inner blockquote h4.neutral:before,body.dark .content-inner blockquote h4.tip:before,body.dark .content-inner blockquote h4.warning:before{color:#fff}body.dark .content-inner blockquote h3.error.warning,body.dark .content-inner blockquote h3.info.warning,body.dark .content-inner blockquote h3.neutral.warning,body.dark .content-inner blockquote h3.tip.warning,body.dark .content-inner blockquote h3.warning.warning,body.dark .content-inner blockquote h4.error.warning,body.dark .content-inner blockquote h4.info.warning,body.dark .content-inner blockquote h4.neutral.warning,body.dark .content-inner blockquote h4.tip.warning,body.dark .content-inner blockquote h4.warning.warning{color:#fff;background-color:#7c4619}body.dark .content-inner blockquote h3.error.error,body.dark .content-inner blockquote h3.info.error,body.dark .content-inner blockquote h3.neutral.error,body.dark .content-inner blockquote h3.tip.error,body.dark .content-inner blockquote h3.warning.error,body.dark .content-inner blockquote h4.error.error,body.dark .content-inner blockquote h4.info.error,body.dark .content-inner blockquote h4.neutral.error,body.dark .content-inner blockquote h4.tip.error,body.dark .content-inner blockquote h4.warning.error{background-color:#882738}body.dark .content-inner blockquote h3.error.info,body.dark .content-inner blockquote h3.info.info,body.dark .content-inner blockquote h3.neutral.info,body.dark .content-inner blockquote h3.tip.info,body.dark .content-inner blockquote h3.warning.info,body.dark .content-inner blockquote h4.error.info,body.dark .content-inner blockquote h4.info.info,body.dark .content-inner blockquote h4.neutral.info,body.dark .content-inner blockquote h4.tip.info,body.dark .content-inner blockquote h4.warning.info{background-color:#1b176b}body.dark .content-inner blockquote h3.error.neutral,body.dark .content-inner blockquote h3.info.neutral,body.dark .content-inner blockquote h3.neutral.neutral,body.dark .content-inner blockquote h3.tip.neutral,body.dark .content-inner blockquote h3.warning.neutral,body.dark .content-inner blockquote h4.error.neutral,body.dark .content-inner blockquote h4.info.neutral,body.dark .content-inner blockquote h4.neutral.neutral,body.dark .content-inner blockquote h4.tip.neutral,body.dark .content-inner blockquote h4.warning.neutral{background-color:#1f2432}body.dark .content-inner blockquote h3.error.tip,body.dark .content-inner blockquote h3.info.tip,body.dark .content-inner blockquote h3.neutral.tip,body.dark .content-inner blockquote h3.tip.tip,body.dark .content-inner blockquote h3.warning.tip,body.dark .content-inner blockquote h4.error.tip,body.dark .content-inner blockquote h4.info.tip,body.dark .content-inner blockquote h4.neutral.tip,body.dark .content-inner blockquote h4.tip.tip,body.dark .content-inner blockquote h4.warning.tip{background-color:#1f4034}@-webkit-keyframes night-blink-background{0%{background-color:#0d1829}to{background-color:#304254}}@keyframes night-blink-background{0%{background-color:#0d1829}to{background-color:#304254}}body.dark .content-inner .detail:target .detail-header{-webkit-animation-name:night-blink-background;animation-name:night-blink-background}body.dark .content-inner .detail-header{background:#0d1829;color:#cad5e0}body.dark .content-inner .specs .attribute{color:#445668}body.dark .content-inner div.deprecated{background-color:#333019}body.dark .content-inner code{background-color:#0d1829;border-color:#192f50}body.dark .content-inner pre code{background-color:#0d1829}body.dark .content-inner pre a,body.dark .content-inner pre a:visited{color:#fff;text-decoration:none}body.dark .content-inner pre a:hover{color:#8e7ce6}body.dark .content-inner .footer{color:#91a4b7}body.dark .content-inner .footer .footer-button{color:#91a4b7;text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}body.dark .content-inner .footer .footer-button:visited{color:#91a4b7}body.dark .content-inner .footer a{color:#91a4b7;text-decoration:underline;-webkit-text-decoration-skip:ink;text-decoration-skip-ink:auto}body.dark .content-inner .footer a:visited{color:#91a4b7}body.dark .content-inner .bottom-actions .bottom-actions-button{border:1px solid hsla(0,0%,100%,.1)}body.dark .content-inner .bottom-actions .bottom-actions-button .subheader{color:#8e7ce6}.copy-button.clicked{color:#a6e22e}body.dark #search .loading div{border-top-color:#767676}body.dark .sidebar-button,body.dark .sidebar-closed .sidebar-button{color:#f0f5f9}body.dark #quick-switch-modal-body .ri-search-2-line{color:#445668}body.dark #quick-switch-modal-body #quick-switch-input{border-bottom-color:#445668}body.dark #quick-switch-modal-body #quick-switch-results{margin:0}body.dark #quick-switch-modal-body #quick-switch-results .quick-switch-result{border-bottom-color:#445668}body.dark #keyboard-shortcuts-modal{background-color:rgba(0,0,0,.75)}body.dark #keyboard-shortcuts-modal .modal-contents{background-color:#030913;color:#cad5e0}body.dark #keyboard-shortcuts-modal .modal-contents dl.shortcut-row{border-bottom:1px solid #304254}body.dark #keyboard-shortcuts-modal .modal-contents dl.shortcut-row:last-of-type{border-bottom-style:none}body.dark #keyboard-shortcuts-modal .modal-contents kbd>kbd{color:#cad5e0;background-color:#0d1829;border:1px solid #304254}body.dark #tooltip{-webkit-box-shadow:0 0 10px rgba(0,0,0,.5);box-shadow:0 0 10px rgba(0,0,0,.5)}body.dark #tooltip .tooltip-body{border:1px solid #0d1829}body.dark #tooltip .tooltip-body .docstring{background:#030913}.dark #toast{background-color:#0a1e3f;border-color:#11336b;color:#dce1e6}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}@media print{.main{display:block}.sidebar,.sidebar-button{display:none}.content{padding-left:0;overflow:visible}.summary-row{page-break-inside:avoid}}code.makeup .unselectable{-webkit-touch-callout:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.makeup .hll{background-color:#ffc}.makeup .bp{color:#3465a4}.makeup .c,.makeup .c1,.makeup .ch,.makeup .cm,.makeup .cp,.makeup .cpf,.makeup .cs{color:#4d4d4d}.makeup .dl{color:#408200}.makeup .err{color:#a40000;border:#ef2929}.makeup .fm,.makeup .g{color:#4d4d4c}.makeup .gd{color:#a40000}.makeup .ge{color:#4d4d4c;font-style:italic}.makeup .gh{color:navy;font-weight:700}.makeup .gi{color:#00a000}.makeup .go{color:#4d4d4c;font-style:italic}.makeup .gp{color:#4d4d4d}.makeup .gr{color:#ef2929}.makeup .gs{color:#4d4d4c;font-weight:700}.makeup .gt{color:#a40000;font-weight:700}.makeup .gu{color:purple;font-weight:700}.makeup .il{color:#0000cf;font-weight:700}.makeup .k,.makeup .kc,.makeup .kd,.makeup .kn,.makeup .kp,.makeup .kr,.makeup .kt{color:#204a87}.makeup .l{color:#4d4d4c}.makeup .ld{color:#c00}.makeup .m,.makeup .mb,.makeup .mf,.makeup .mh,.makeup .mi,.makeup .mo{color:#2937ab}.makeup .n{color:#4d4d4c}.makeup .na{color:#8a7000}.makeup .nb{color:#204a87}.makeup .nc{color:#0000cf}.makeup .nd{color:#5c35cc;font-weight:700}.makeup .ne{color:#c00;font-weight:700}.makeup .nf{color:#b65800}.makeup .ni{color:#bc5400}.makeup .nl{color:#b65800}.makeup .nn{color:#4d4d4c}.makeup .no{color:#a06600}.makeup .nt{color:#204a87;font-weight:700}.makeup .nv,.makeup .nx{color:#4d4d4c}.makeup .o{color:#bc5400}.makeup .ow{color:#204a87}.makeup .p,.makeup .py{color:#4d4d4c}.makeup .s,.makeup .s1,.makeup .s2,.makeup .sa,.makeup .sb,.makeup .sc{color:#408200}.makeup .sd{color:#8f5902;font-style:italic}.makeup .se{color:#204a87}.makeup .sh{color:#408200}.makeup .si{color:#204a87}.makeup .sr{color:#c00}.makeup .ss{color:#a06600}.makeup .sx{color:#408200}.makeup .vc,.makeup .vg,.makeup .vi,.makeup .vm,.makeup .x{color:#4d4d4c}.dark .makeup{color:#f8f8f2}.dark .makeup .hll{background-color:#49483e}.dark .makeup .bp{color:#f8f8f2}.dark .makeup .c,.dark .makeup .c1,.dark .makeup .ch,.dark .makeup .cm,.dark .makeup .cp,.dark .makeup .cpf,.dark .makeup .cs{color:#969386}.dark .makeup .dl{color:#e6db74}.dark .makeup .err{color:#960050;background-color:#1e0010}.dark .makeup .fm{color:#a6e22e}.dark .makeup .gd{color:#ff5385}.dark .makeup .ge{font-style:italic}.dark .makeup .gi{color:#a6e22e}.dark .makeup .gp{color:#969386}.dark .makeup .gs{font-weight:700}.dark .makeup .gu{color:#969386}.dark .makeup .gt{color:#ff5385;font-weight:700}.dark .makeup .il{color:#ae81ff}.dark .makeup .k,.dark .makeup .kc,.dark .makeup .kd{color:#66d9ef}.dark .makeup .kn{color:#ff5385}.dark .makeup .kp,.dark .makeup .kr,.dark .makeup .kt{color:#66d9ef}.dark .makeup .l,.dark .makeup .ld,.dark .makeup .m,.dark .makeup .mb,.dark .makeup .mf,.dark .makeup .mh,.dark .makeup .mi,.dark .makeup .mo{color:#ae81ff}.dark .makeup .n{color:#f8f8f2}.dark .makeup .na{color:#a6e22e}.dark .makeup .nb{color:#f8f8f2}.dark .makeup .nc,.dark .makeup .nd,.dark .makeup .ne,.dark .makeup .nf{color:#a6e22e}.dark .makeup .ni,.dark .makeup .nl,.dark .makeup .nn{color:#f8f8f2}.dark .makeup .no{color:#66d9ef}.dark .makeup .nt{color:#ff5385}.dark .makeup .nv{color:#f8f8f2}.dark .makeup .nx{color:#a6e22e}.dark .makeup .o,.dark .makeup .ow{color:#ff5385}.dark .makeup .p,.dark .makeup .py{color:#f8f8f2}.dark .makeup .s,.dark .makeup .s1,.dark .makeup .s2,.dark .makeup .sa,.dark .makeup .sb,.dark .makeup .sc,.dark .makeup .sd{color:#e6db74}.dark .makeup .se{color:#ae81ff}.dark .makeup .sh,.dark .makeup .si,.dark .makeup .sr,.dark .makeup .ss,.dark .makeup .sx{color:#e6db74}.dark .makeup .vc,.dark .makeup .vg,.dark .makeup .vi,.dark .makeup .vm{color:#f8f8f2}
\ No newline at end of file
diff --git a/dist/html/fonts/remixicon.eot b/dist/html/fonts/remixicon.eot
new file mode 100644
index 0000000..7a96b95
Binary files /dev/null and b/dist/html/fonts/remixicon.eot differ
diff --git a/dist/html/fonts/remixicon.svg b/dist/html/fonts/remixicon.svg
new file mode 100644
index 0000000..671e9f9
--- /dev/null
+++ b/dist/html/fonts/remixicon.svg
@@ -0,0 +1,36 @@
+
+
\ No newline at end of file
diff --git a/dist/html/fonts/remixicon.ttf b/dist/html/fonts/remixicon.ttf
new file mode 100644
index 0000000..6b9d786
Binary files /dev/null and b/dist/html/fonts/remixicon.ttf differ
diff --git a/dist/html/fonts/remixicon.woff b/dist/html/fonts/remixicon.woff
new file mode 100644
index 0000000..39b2597
Binary files /dev/null and b/dist/html/fonts/remixicon.woff differ
diff --git a/dist/html/fonts/remixicon.woff2 b/dist/html/fonts/remixicon.woff2
new file mode 100644
index 0000000..155f274
Binary files /dev/null and b/dist/html/fonts/remixicon.woff2 differ
diff --git a/dist/search_items-d8e447e0f6.js b/dist/search_items-d8e447e0f6.js
new file mode 100644
index 0000000..9da1910
--- /dev/null
+++ b/dist/search_items-d8e447e0f6.js
@@ -0,0 +1 @@
+searchNodes=[{"doc":"Claper keeps the contexts that define your domain and business logic. Contexts are also responsible for managing your data, regardless if it comes from the database, an external API or others.","ref":"Claper.html","title":"Claper","type":"module"},{"doc":"The Accounts context.","ref":"Claper.Accounts.html","title":"Claper.Accounts","type":"module"},{"doc":"Emulates that the email will change without actually changing it in the database. Examples iex> apply_user_email ( user , "valid password" , %{ email : ... } ) { :ok , % User { } } iex> apply_user_email ( user , "invalid password" , %{ email : ... } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Accounts.html#apply_user_email/2","title":"Claper.Accounts.apply_user_email/2","type":"function"},{"doc":"Returns an %Ecto.Changeset{} for changing the user email. Examples iex> change_user_email ( user ) % Ecto.Changeset { data : % User { } }","ref":"Claper.Accounts.html#change_user_email/2","title":"Claper.Accounts.change_user_email/2","type":"function"},{"doc":"Returns an %Ecto.Changeset{} for tracking user changes. Examples iex> change_user_registration ( user ) % Ecto.Changeset { data : % User { } }","ref":"Claper.Accounts.html#change_user_registration/2","title":"Claper.Accounts.change_user_registration/2","type":"function"},{"doc":"","ref":"Claper.Accounts.html#confirm_magic/1","title":"Claper.Accounts.confirm_magic/1","type":"function"},{"doc":"Confirms a user by the given token. If the token matches, the user account is marked as confirmed and the token is deleted.","ref":"Claper.Accounts.html#confirm_user/1","title":"Claper.Accounts.confirm_user/1","type":"function"},{"doc":"Deletes the signed token with the given context.","ref":"Claper.Accounts.html#delete_session_token/1","title":"Claper.Accounts.delete_session_token/1","type":"function"},{"doc":"Delivers the update email instructions to the given user. Examples iex> deliver_update_email_instructions ( user , current_email , & Routes . user_update_email_url ( conn , :edit , &1 ) ) { :ok , %{ to : ... , body : ... } }","ref":"Claper.Accounts.html#deliver_magic_link/2","title":"Claper.Accounts.deliver_magic_link/2","type":"function"},{"doc":"","ref":"Claper.Accounts.html#deliver_update_email_instructions/3","title":"Claper.Accounts.deliver_update_email_instructions/3","type":"function"},{"doc":"Delivers the confirmation email instructions to the given user. Examples iex> deliver_user_confirmation_instructions ( user , & Routes . user_confirmation_url ( conn , :edit , &1 ) ) { :ok , %{ to : ... , body : ... } } iex> deliver_user_confirmation_instructions ( confirmed_user , & Routes . user_confirmation_url ( conn , :edit , &1 ) ) { :error , :already_confirmed }","ref":"Claper.Accounts.html#deliver_user_confirmation_instructions/2","title":"Claper.Accounts.deliver_user_confirmation_instructions/2","type":"function"},{"doc":"Generates a session token.","ref":"Claper.Accounts.html#generate_user_session_token/1","title":"Claper.Accounts.generate_user_session_token/1","type":"function"},{"doc":"Gets a single user. Raises Ecto.NoResultsError if the User does not exist. Examples iex> get_user! ( 123 ) % User { } iex> get_user! ( 456 ) ** (Ecto.NoResultsError)","ref":"Claper.Accounts.html#get_user!/1","title":"Claper.Accounts.get_user!/1","type":"function"},{"doc":"Gets a user by email. Examples iex> get_user_by_email ( "foo@example.com" ) % User { } iex> get_user_by_email ( "unknown@example.com" ) nil","ref":"Claper.Accounts.html#get_user_by_email/1","title":"Claper.Accounts.get_user_by_email/1","type":"function"},{"doc":"Gets the user with the given signed token.","ref":"Claper.Accounts.html#get_user_by_session_token/1","title":"Claper.Accounts.get_user_by_session_token/1","type":"function"},{"doc":"","ref":"Claper.Accounts.html#magic_token_valid?/1","title":"Claper.Accounts.magic_token_valid?/1","type":"function"},{"doc":"Registers a user. Examples iex> register_user ( %{ field : value } ) { :ok , % User { } } iex> register_user ( %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Accounts.html#register_user/1","title":"Claper.Accounts.register_user/1","type":"function"},{"doc":"Updates the user email using the given token. If the token matches, the user email is updated and the token is deleted. The confirmed_at date is also updated to the current time.","ref":"Claper.Accounts.html#update_user_email/2","title":"Claper.Accounts.update_user_email/2","type":"function"},{"doc":"","ref":"Claper.Accounts.User.html","title":"Claper.Accounts.User","type":"module"},{"doc":"Confirms the account by setting confirmed_at .","ref":"Claper.Accounts.User.html#confirm_changeset/1","title":"Claper.Accounts.User.confirm_changeset/1","type":"function"},{"doc":"A user changeset for changing the email. It requires the email to change otherwise an error is added.","ref":"Claper.Accounts.User.html#email_changeset/2","title":"Claper.Accounts.User.email_changeset/2","type":"function"},{"doc":"","ref":"Claper.Accounts.User.html#registration_changeset/3","title":"Claper.Accounts.User.registration_changeset/3","type":"function"},{"doc":"","ref":"Claper.Accounts.UserNotifier.html","title":"Claper.Accounts.UserNotifier","type":"module"},{"doc":"Deliver instructions to confirm account.","ref":"Claper.Accounts.UserNotifier.html#deliver_confirmation_instructions/2","title":"Claper.Accounts.UserNotifier.deliver_confirmation_instructions/2","type":"function"},{"doc":"","ref":"Claper.Accounts.UserNotifier.html#deliver_magic_link/2","title":"Claper.Accounts.UserNotifier.deliver_magic_link/2","type":"function"},{"doc":"Deliver instructions to reset a user password.","ref":"Claper.Accounts.UserNotifier.html#deliver_reset_password_instructions/2","title":"Claper.Accounts.UserNotifier.deliver_reset_password_instructions/2","type":"function"},{"doc":"Deliver instructions to update a user email.","ref":"Claper.Accounts.UserNotifier.html#deliver_update_email_instructions/2","title":"Claper.Accounts.UserNotifier.deliver_update_email_instructions/2","type":"function"},{"doc":"","ref":"Claper.Accounts.UserNotifier.html#deliver_welcome/1","title":"Claper.Accounts.UserNotifier.deliver_welcome/1","type":"function"},{"doc":"","ref":"Claper.Accounts.UserToken.html","title":"Claper.Accounts.UserToken","type":"module"},{"doc":"Builds a token and its hash to be delivered to the user's email. The non-hashed token is sent to the user email while the hashed part is stored in the database. The original token cannot be reconstructed, which means anyone with read-only access to the database cannot directly use the token in the application to gain access. Furthermore, if the user changes their email in the system, the tokens sent to the previous email are no longer valid. Users can easily adapt the existing code to provide other types of delivery methods, for example, by phone numbers.","ref":"Claper.Accounts.UserToken.html#build_email_token/2","title":"Claper.Accounts.UserToken.build_email_token/2","type":"function"},{"doc":"","ref":"Claper.Accounts.UserToken.html#build_magic_token/2","title":"Claper.Accounts.UserToken.build_magic_token/2","type":"function"},{"doc":"Generates a token that will be stored in a signed place, such as session or cookie. As they are signed, those tokens do not need to be hashed. The reason why we store session tokens in the database, even though Phoenix already provides a session cookie, is because Phoenix' default session cookies are not persisted, they are simply signed and potentially encrypted. This means they are valid indefinitely, unless you change the signing/encryption salt. Therefore, storing them allows individual user sessions to be expired. The token system can also be extended to store additional data, such as the device used for logging in. You could then use this information to display all valid sessions and devices in the UI and allow users to explicitly expire any session they deem invalid.","ref":"Claper.Accounts.UserToken.html#build_session_token/1","title":"Claper.Accounts.UserToken.build_session_token/1","type":"function"},{"doc":"Returns the token struct for the given token value and context.","ref":"Claper.Accounts.UserToken.html#token_and_context_query/2","title":"Claper.Accounts.UserToken.token_and_context_query/2","type":"function"},{"doc":"Gets all tokens for the given user for the given contexts.","ref":"Claper.Accounts.UserToken.html#user_and_contexts_query/2","title":"Claper.Accounts.UserToken.user_and_contexts_query/2","type":"function"},{"doc":"","ref":"Claper.Accounts.UserToken.html#user_magic_and_contexts_expiry_query/1","title":"Claper.Accounts.UserToken.user_magic_and_contexts_expiry_query/1","type":"function"},{"doc":"","ref":"Claper.Accounts.UserToken.html#user_magic_and_contexts_query/2","title":"Claper.Accounts.UserToken.user_magic_and_contexts_query/2","type":"function"},{"doc":"Checks if the token is valid and returns its underlying lookup query. The query returns the user found by the token, if any. This is used to validate requests to change the user email. It is different from verify_email_token_query/2 precisely because verify_email_token_query/2 validates the email has not changed, which is the starting point by this function. The given token is valid if it matches its hashed counterpart in the database and if it has not expired (after @change_email_validity_in_days). The context must always start with "change:".","ref":"Claper.Accounts.UserToken.html#verify_change_email_token_query/2","title":"Claper.Accounts.UserToken.verify_change_email_token_query/2","type":"function"},{"doc":"Checks if the token is valid and returns its underlying lookup query. The query returns the user found by the token, if any. The given token is valid if it matches its hashed counterpart in the database and the user email has not changed. This function also checks if the token is being used within a certain period, depending on the context. The default contexts supported by this function are either "confirm", for account confirmation emails, and "reset_password", for resetting the password. For verifying requests to change the email, see verify_change_email_token_query/2 .","ref":"Claper.Accounts.UserToken.html#verify_email_token_query/2","title":"Claper.Accounts.UserToken.verify_email_token_query/2","type":"function"},{"doc":"","ref":"Claper.Accounts.UserToken.html#verify_magic_token_query/2","title":"Claper.Accounts.UserToken.verify_magic_token_query/2","type":"function"},{"doc":"Checks if the token is valid and returns its underlying lookup query. The query returns the user found by the token, if any. The token is valid if it matches the value in the database and it has not expired (after @session_validity_in_days).","ref":"Claper.Accounts.UserToken.html#verify_session_token_query/1","title":"Claper.Accounts.UserToken.verify_session_token_query/1","type":"function"},{"doc":"The Events context.","ref":"Claper.Events.html","title":"Claper.Events","type":"module"},{"doc":"Returns an %Ecto.Changeset{} for tracking activity_leader changes. Examples iex> change_activity_leader ( activity_leader ) % Ecto.Changeset { data : % ActivityLeader { } }","ref":"Claper.Events.html#change_activity_leader/2","title":"Claper.Events.change_activity_leader/2","type":"function"},{"doc":"Returns an %Ecto.Changeset{} for tracking event changes. Examples iex> change_event ( event ) % Ecto.Changeset { data : % Event { } }","ref":"Claper.Events.html#change_event/2","title":"Claper.Events.change_event/2","type":"function"},{"doc":"","ref":"Claper.Events.html#count_events_month/1","title":"Claper.Events.count_events_month/1","type":"function"},{"doc":"Creates a event. Examples iex> create_event ( %{ field : value } ) { :ok , % Event { } } iex> create_event ( %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Events.html#create_event/1","title":"Claper.Events.create_event/1","type":"function"},{"doc":"Deletes a event. Examples iex> delete_event ( event ) { :ok , % Event { } } iex> delete_event ( event ) { :error , % Ecto.Changeset { } }","ref":"Claper.Events.html#delete_event/1","title":"Claper.Events.delete_event/1","type":"function"},{"doc":"Gets a single activity_leader. Raises Ecto.NoResultsError if the Activity leader does not exist. Examples iex> get_activity_leader! ( 123 ) % ActivityLeader { } iex> get_activity_leader! ( 456 ) ** (Ecto.NoResultsError)","ref":"Claper.Events.html#get_activity_leader!/1","title":"Claper.Events.get_activity_leader!/1","type":"function"},{"doc":"","ref":"Claper.Events.html#get_activity_leaders_for_event/1","title":"Claper.Events.get_activity_leaders_for_event/1","type":"function"},{"doc":"","ref":"Claper.Events.html#get_different_event_with_code/2","title":"Claper.Events.get_different_event_with_code/2","type":"function"},{"doc":"Gets a single event. Raises Ecto.NoResultsError if the Event does not exist. Examples iex> get_event! ( 123 ) % Event { } iex> get_event! ( 456 ) ** (Ecto.NoResultsError)","ref":"Claper.Events.html#get_event!/2","title":"Claper.Events.get_event!/2","type":"function"},{"doc":"","ref":"Claper.Events.html#get_event_with_code!/2","title":"Claper.Events.get_event_with_code!/2","type":"function"},{"doc":"","ref":"Claper.Events.html#get_event_with_code/2","title":"Claper.Events.get_event_with_code/2","type":"function"},{"doc":"","ref":"Claper.Events.html#get_managed_event!/3","title":"Claper.Events.get_managed_event!/3","type":"function"},{"doc":"","ref":"Claper.Events.html#get_user_event!/3","title":"Claper.Events.get_user_event!/3","type":"function"},{"doc":"","ref":"Claper.Events.html#is_leaded_by/2","title":"Claper.Events.is_leaded_by/2","type":"function"},{"doc":"Returns the list of activity_leaders. Examples iex> list_activity_leaders ( ) [ % ActivityLeader { } , ... ]","ref":"Claper.Events.html#list_activity_leaders/0","title":"Claper.Events.list_activity_leaders/0","type":"function"},{"doc":"Returns the list of events. Examples iex> list_events ( ) [ % Event { } , ... ]","ref":"Claper.Events.html#list_events/2","title":"Claper.Events.list_events/2","type":"function"},{"doc":"","ref":"Claper.Events.html#list_managed_events_by/2","title":"Claper.Events.list_managed_events_by/2","type":"function"},{"doc":"Updates a event. Examples iex> update_event ( event , %{ field : new_value } ) { :ok , % Event { } } iex> update_event ( event , %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Events.html#update_event/2","title":"Claper.Events.update_event/2","type":"function"},{"doc":"","ref":"Claper.Events.ActivityLeader.html","title":"Claper.Events.ActivityLeader","type":"module"},{"doc":"","ref":"Claper.Events.Event.html","title":"Claper.Events.Event","type":"module"},{"doc":"","ref":"Claper.Events.Event.html#create_changeset/2","title":"Claper.Events.Event.create_changeset/2","type":"function"},{"doc":"","ref":"Claper.Events.Event.html#downcase_code/1","title":"Claper.Events.Event.downcase_code/1","type":"function"},{"doc":"","ref":"Claper.Events.Event.html#restart_changeset/1","title":"Claper.Events.Event.restart_changeset/1","type":"function"},{"doc":"","ref":"Claper.Events.Event.html#started?/1","title":"Claper.Events.Event.started?/1","type":"function"},{"doc":"","ref":"Claper.Events.Event.html#subscribe/1","title":"Claper.Events.Event.subscribe/1","type":"function"},{"doc":"","ref":"Claper.Events.Event.html#update_changeset/2","title":"Claper.Events.Event.update_changeset/2","type":"function"},{"doc":"","ref":"Claper.Mailer.html","title":"Claper.Mailer","type":"module"},{"doc":"","ref":"Claper.Mailer.html#deliver!/2","title":"Claper.Mailer.deliver!/2","type":"function"},{"doc":"","ref":"Claper.Mailer.html#deliver/2","title":"Claper.Mailer.deliver/2","type":"function"},{"doc":"","ref":"Claper.Mailer.html#deliver_many/2","title":"Claper.Mailer.deliver_many/2","type":"function"},{"doc":"The Polls context.","ref":"Claper.Polls.html","title":"Claper.Polls","type":"module"},{"doc":"Add an empty poll opt to a poll changeset.","ref":"Claper.Polls.html#add_poll_opt/1","title":"Claper.Polls.add_poll_opt/1","type":"function"},{"doc":"Returns an %Ecto.Changeset{} for tracking poll changes. Examples iex> change_poll ( poll ) % Ecto.Changeset { data : % Poll { } }","ref":"Claper.Polls.html#change_poll/2","title":"Claper.Polls.change_poll/2","type":"function"},{"doc":"Creates a poll. Examples iex> create_poll ( %{ field : value } ) { :ok , % Poll { } } iex> create_poll ( %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Polls.html#create_poll/1","title":"Claper.Polls.create_poll/1","type":"function"},{"doc":"Creates a poll_vote. Examples iex> create_poll_vote ( %{ field : value } ) { :ok , % PollVote { } } iex> create_poll_vote ( %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Polls.html#create_poll_vote/1","title":"Claper.Polls.create_poll_vote/1","type":"function"},{"doc":"Deletes a poll. Examples iex> delete_poll ( poll ) { :ok , % Poll { } } iex> delete_poll ( poll ) { :error , % Ecto.Changeset { } }","ref":"Claper.Polls.html#delete_poll/2","title":"Claper.Polls.delete_poll/2","type":"function"},{"doc":"Gets a single poll. Raises Ecto.NoResultsError if the Poll does not exist. Examples iex> get_poll! ( 123 ) % Poll { } iex> get_poll! ( 456 ) ** (Ecto.NoResultsError)","ref":"Claper.Polls.html#get_poll!/1","title":"Claper.Polls.get_poll!/1","type":"function"},{"doc":"","ref":"Claper.Polls.html#get_poll_current_position/2","title":"Claper.Polls.get_poll_current_position/2","type":"function"},{"doc":"Gets a single poll_vote. Raises Ecto.NoResultsError if the Poll vote does not exist. Examples iex> get_poll_vote! ( 123 ) % PollVote { } iex> get_poll_vote! ( 456 ) ** (Ecto.NoResultsError)","ref":"Claper.Polls.html#get_poll_vote/2","title":"Claper.Polls.get_poll_vote/2","type":"function"},{"doc":"Returns the list of polls. Examples iex> list_polls ( ) [ % Poll { } , ... ]","ref":"Claper.Polls.html#list_polls/1","title":"Claper.Polls.list_polls/1","type":"function"},{"doc":"","ref":"Claper.Polls.html#list_polls_at_position/2","title":"Claper.Polls.list_polls_at_position/2","type":"function"},{"doc":"Remove a poll opt from a poll changeset.","ref":"Claper.Polls.html#remove_poll_opt/2","title":"Claper.Polls.remove_poll_opt/2","type":"function"},{"doc":"","ref":"Claper.Polls.html#set_default/3","title":"Claper.Polls.set_default/3","type":"function"},{"doc":"","ref":"Claper.Polls.html#set_percentages/1","title":"Claper.Polls.set_percentages/1","type":"function"},{"doc":"Updates a poll. Examples iex> update_poll ( poll , %{ field : new_value } ) { :ok , % Poll { } } iex> update_poll ( poll , %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Polls.html#update_poll/3","title":"Claper.Polls.update_poll/3","type":"function"},{"doc":"","ref":"Claper.Polls.html#vote/4","title":"Claper.Polls.vote/4","type":"function"},{"doc":"","ref":"Claper.Polls.Poll.html","title":"Claper.Polls.Poll","type":"module"},{"doc":"","ref":"Claper.Polls.PollOpt.html","title":"Claper.Polls.PollOpt","type":"module"},{"doc":"","ref":"Claper.Polls.PollVote.html","title":"Claper.Polls.PollVote","type":"module"},{"doc":"The Posts context.","ref":"Claper.Posts.html","title":"Claper.Posts","type":"module"},{"doc":"Creates a post. Examples iex> create_post ( %{ field : value } ) { :ok , % Post { } } iex> create_post ( %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Posts.html#create_post/2","title":"Claper.Posts.create_post/2","type":"function"},{"doc":"Creates a reaction. Examples iex> create_reaction ( %{ field : value } ) { :ok , % Reaction { } } iex> create_reaction ( %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Posts.html#create_reaction/1","title":"Claper.Posts.create_reaction/1","type":"function"},{"doc":"","ref":"Claper.Posts.html#delete_all_posts/3","title":"Claper.Posts.delete_all_posts/3","type":"function"},{"doc":"Deletes a post. Examples iex> delete_post ( post ) { :ok , % Post { } } iex> delete_post ( post ) { :error , % Ecto.Changeset { } }","ref":"Claper.Posts.html#delete_post/1","title":"Claper.Posts.delete_post/1","type":"function"},{"doc":"Deletes a reaction. Examples iex> delete_reaction ( reaction ) { :ok , % Reaction { } } iex> delete_reaction ( reaction ) { :error , % Ecto.Changeset { } }","ref":"Claper.Posts.html#delete_reaction/1","title":"Claper.Posts.delete_reaction/1","type":"function"},{"doc":"Gets a single post. Raises Ecto.NoResultsError if the Post does not exist. Examples iex> get_post! ( 123 ) % Post { } iex> get_post! ( 456 ) ** (Ecto.NoResultsError)","ref":"Claper.Posts.html#get_post!/2","title":"Claper.Posts.get_post!/2","type":"function"},{"doc":"Gets a single reaction. Raises Ecto.NoResultsError if the Reaction does not exist. Examples iex> get_reaction! ( 123 ) % Reaction { } iex> get_reaction! ( 456 ) ** (Ecto.NoResultsError)","ref":"Claper.Posts.html#get_reaction!/1","title":"Claper.Posts.get_reaction!/1","type":"function"},{"doc":"Get event posts","ref":"Claper.Posts.html#list_posts/2","title":"Claper.Posts.list_posts/2","type":"function"},{"doc":"","ref":"Claper.Posts.html#reacted_posts/3","title":"Claper.Posts.reacted_posts/3","type":"function"},{"doc":"Updates a post. Examples iex> update_post ( post , %{ field : new_value } ) { :ok , % Post { } } iex> update_post ( post , %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Posts.html#update_post/2","title":"Claper.Posts.update_post/2","type":"function"},{"doc":"","ref":"Claper.Posts.Post.html","title":"Claper.Posts.Post","type":"module"},{"doc":"","ref":"Claper.Posts.Reaction.html","title":"Claper.Posts.Reaction","type":"module"},{"doc":"The Presentations context.","ref":"Claper.Presentations.html","title":"Claper.Presentations","type":"module"},{"doc":"Creates a presentation_files. Examples iex> create_presentation_file ( %{ field : value } ) { :ok , % PresentationFile { } } iex> create_presentation_file ( %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Presentations.html#create_presentation_file/1","title":"Claper.Presentations.create_presentation_file/1","type":"function"},{"doc":"Creates a presentation_state. Examples iex> create_presentation_state ( %{ field : value } ) { :ok , % PresentationState { } } iex> create_presentation_state ( %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Presentations.html#create_presentation_state/1","title":"Claper.Presentations.create_presentation_state/1","type":"function"},{"doc":"Gets a single presentation_files. Raises Ecto.NoResultsError if the Presentation files does not exist. Examples iex> get_presentation_file! ( 123 ) % PresentationFile { } iex> get_presentation_file! ( 456 ) ** (Ecto.NoResultsError)","ref":"Claper.Presentations.html#get_presentation_file!/2","title":"Claper.Presentations.get_presentation_file!/2","type":"function"},{"doc":"","ref":"Claper.Presentations.html#get_presentation_file_by_hash!/1","title":"Claper.Presentations.get_presentation_file_by_hash!/1","type":"function"},{"doc":"","ref":"Claper.Presentations.html#subscribe/1","title":"Claper.Presentations.subscribe/1","type":"function"},{"doc":"Updates a presentation_files. Examples iex> update_presentation_file ( presentation_files , %{ field : new_value } ) { :ok , % PresentationFile { } } iex> update_presentation_file ( presentation_files , %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Presentations.html#update_presentation_file/2","title":"Claper.Presentations.update_presentation_file/2","type":"function"},{"doc":"Updates a presentation_state. Examples iex> update_presentation_state ( presentation_state , %{ field : new_value } ) { :ok , % PresentationState { } } iex> update_presentation_state ( presentation_state , %{ field : bad_value } ) { :error , % Ecto.Changeset { } }","ref":"Claper.Presentations.html#update_presentation_state/2","title":"Claper.Presentations.update_presentation_state/2","type":"function"},{"doc":"","ref":"Claper.Presentations.PresentationFile.html","title":"Claper.Presentations.PresentationFile","type":"module"},{"doc":"","ref":"Claper.Presentations.PresentationState.html","title":"Claper.Presentations.PresentationState","type":"module"},{"doc":"Used for executing DB release tasks when run in production without Mix installed.","ref":"Claper.Release.html","title":"Claper.Release","type":"module"},{"doc":"","ref":"Claper.Release.html#migrate/0","title":"Claper.Release.migrate/0","type":"function"},{"doc":"","ref":"Claper.Release.html#rollback/2","title":"Claper.Release.rollback/2","type":"function"},{"doc":"","ref":"Claper.Repo.html","title":"Claper.Repo","type":"module"},{"doc":"Callback implementation for Ecto.Repo.aggregate/3 .","ref":"Claper.Repo.html#aggregate/3","title":"Claper.Repo.aggregate/3","type":"function"},{"doc":"Callback implementation for Ecto.Repo.aggregate/4 .","ref":"Claper.Repo.html#aggregate/4","title":"Claper.Repo.aggregate/4","type":"function"},{"doc":"Callback implementation for Ecto.Repo.all/2 .","ref":"Claper.Repo.html#all/2","title":"Claper.Repo.all/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.checked_out?/0 .","ref":"Claper.Repo.html#checked_out?/0","title":"Claper.Repo.checked_out?/0","type":"function"},{"doc":"Callback implementation for Ecto.Repo.checkout/2 .","ref":"Claper.Repo.html#checkout/2","title":"Claper.Repo.checkout/2","type":"function"},{"doc":"","ref":"Claper.Repo.html#child_spec/1","title":"Claper.Repo.child_spec/1","type":"function"},{"doc":"Callback implementation for Ecto.Repo.config/0 .","ref":"Claper.Repo.html#config/0","title":"Claper.Repo.config/0","type":"function"},{"doc":"Callback implementation for Ecto.Repo.default_options/1 .","ref":"Claper.Repo.html#default_options/1","title":"Claper.Repo.default_options/1","type":"function"},{"doc":"Callback implementation for Ecto.Repo.delete!/2 .","ref":"Claper.Repo.html#delete!/2","title":"Claper.Repo.delete!/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.delete/2 .","ref":"Claper.Repo.html#delete/2","title":"Claper.Repo.delete/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.delete_all/2 .","ref":"Claper.Repo.html#delete_all/2","title":"Claper.Repo.delete_all/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.exists?/2 .","ref":"Claper.Repo.html#exists?/2","title":"Claper.Repo.exists?/2","type":"function"},{"doc":"A convenience function for SQL-based repositories that executes an EXPLAIN statement or similar depending on the adapter to obtain statistics for the given query. See Ecto.Adapters.SQL.explain/4 for more information.","ref":"Claper.Repo.html#explain/3","title":"Claper.Repo.explain/3","type":"function"},{"doc":"Callback implementation for Ecto.Repo.get!/3 .","ref":"Claper.Repo.html#get!/3","title":"Claper.Repo.get!/3","type":"function"},{"doc":"Callback implementation for Ecto.Repo.get/3 .","ref":"Claper.Repo.html#get/3","title":"Claper.Repo.get/3","type":"function"},{"doc":"Callback implementation for Ecto.Repo.get_by!/3 .","ref":"Claper.Repo.html#get_by!/3","title":"Claper.Repo.get_by!/3","type":"function"},{"doc":"Callback implementation for Ecto.Repo.get_by/3 .","ref":"Claper.Repo.html#get_by/3","title":"Claper.Repo.get_by/3","type":"function"},{"doc":"Callback implementation for Ecto.Repo.get_dynamic_repo/0 .","ref":"Claper.Repo.html#get_dynamic_repo/0","title":"Claper.Repo.get_dynamic_repo/0","type":"function"},{"doc":"Callback implementation for Ecto.Repo.in_transaction?/0 .","ref":"Claper.Repo.html#in_transaction?/0","title":"Claper.Repo.in_transaction?/0","type":"function"},{"doc":"Callback implementation for Ecto.Repo.init/2 .","ref":"Claper.Repo.html#init/2","title":"Claper.Repo.init/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.insert!/2 .","ref":"Claper.Repo.html#insert!/2","title":"Claper.Repo.insert!/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.insert/2 .","ref":"Claper.Repo.html#insert/2","title":"Claper.Repo.insert/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.insert_all/3 .","ref":"Claper.Repo.html#insert_all/3","title":"Claper.Repo.insert_all/3","type":"function"},{"doc":"Callback implementation for Ecto.Repo.insert_or_update!/2 .","ref":"Claper.Repo.html#insert_or_update!/2","title":"Claper.Repo.insert_or_update!/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.insert_or_update/2 .","ref":"Claper.Repo.html#insert_or_update/2","title":"Claper.Repo.insert_or_update/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.load/2 .","ref":"Claper.Repo.html#load/2","title":"Claper.Repo.load/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.one!/2 .","ref":"Claper.Repo.html#one!/2","title":"Claper.Repo.one!/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.one/2 .","ref":"Claper.Repo.html#one/2","title":"Claper.Repo.one/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.preload/3 .","ref":"Claper.Repo.html#preload/3","title":"Claper.Repo.preload/3","type":"function"},{"doc":"Callback implementation for Ecto.Repo.prepare_query/3 .","ref":"Claper.Repo.html#prepare_query/3","title":"Claper.Repo.prepare_query/3","type":"function"},{"doc":"Callback implementation for Ecto.Repo.put_dynamic_repo/1 .","ref":"Claper.Repo.html#put_dynamic_repo/1","title":"Claper.Repo.put_dynamic_repo/1","type":"function"},{"doc":"A convenience function for SQL-based repositories that executes the given query. See Ecto.Adapters.SQL.query!/4 for more information.","ref":"Claper.Repo.html#query!/3","title":"Claper.Repo.query!/3","type":"function"},{"doc":"A convenience function for SQL-based repositories that executes the given query. See Ecto.Adapters.SQL.query/4 for more information.","ref":"Claper.Repo.html#query/3","title":"Claper.Repo.query/3","type":"function"},{"doc":"Callback implementation for Ecto.Repo.reload!/2 .","ref":"Claper.Repo.html#reload!/2","title":"Claper.Repo.reload!/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.reload/2 .","ref":"Claper.Repo.html#reload/2","title":"Claper.Repo.reload/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.rollback/1 .","ref":"Claper.Repo.html#rollback/1","title":"Claper.Repo.rollback/1","type":"function"},{"doc":"Callback implementation for Ecto.Repo.start_link/1 .","ref":"Claper.Repo.html#start_link/1","title":"Claper.Repo.start_link/1","type":"function"},{"doc":"Callback implementation for Ecto.Repo.stop/1 .","ref":"Claper.Repo.html#stop/1","title":"Claper.Repo.stop/1","type":"function"},{"doc":"Callback implementation for Ecto.Repo.stream/2 .","ref":"Claper.Repo.html#stream/2","title":"Claper.Repo.stream/2","type":"function"},{"doc":"A convenience function for SQL-based repositories that translates the given query to SQL. See Ecto.Adapters.SQL.to_sql/3 for more information.","ref":"Claper.Repo.html#to_sql/2","title":"Claper.Repo.to_sql/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.transaction/2 .","ref":"Claper.Repo.html#transaction/2","title":"Claper.Repo.transaction/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.update!/2 .","ref":"Claper.Repo.html#update!/2","title":"Claper.Repo.update!/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.update/2 .","ref":"Claper.Repo.html#update/2","title":"Claper.Repo.update/2","type":"function"},{"doc":"Callback implementation for Ecto.Repo.update_all/3 .","ref":"Claper.Repo.html#update_all/3","title":"Claper.Repo.update_all/3","type":"function"},{"doc":"","ref":"Claper.Schema.html","title":"Claper.Schema","type":"module"},{"doc":"The Stats context.","ref":"Claper.Stats.html","title":"Claper.Stats","type":"module"},{"doc":"","ref":"Claper.Stats.html#distinct_poster_count/1","title":"Claper.Stats.distinct_poster_count/1","type":"function"},{"doc":"","ref":"Claper.Stats.html#total_vote_count/1","title":"Claper.Stats.total_vote_count/1","type":"function"},{"doc":"This module is used to convert presentations from PDF or PPT to images. We use a hash to identify the presentation. A new hash is generated when the conversion is finished and the presentation is being uploaded.","ref":"Claper.Tasks.Converter.html","title":"Claper.Tasks.Converter","type":"module"},{"doc":"Remove the presentation files directory","ref":"Claper.Tasks.Converter.html#clear/1","title":"Claper.Tasks.Converter.clear/1","type":"function"},{"doc":"Convert the presentation file to images. We use original hash :erlang.phash2(code-name) where the files are uploaded to send it to another folder with a new hash. This last stored in db.","ref":"Claper.Tasks.Converter.html#convert/5","title":"Claper.Tasks.Converter.convert/5","type":"function"},{"doc":"The entrypoint for defining your web interface, such as controllers, views, channels and so on. This can be used in your application as: use ClaperWeb , :controller use ClaperWeb , :view The definitions below will be executed for every view, controller, etc, so keep them short and clean, focused on imports, uses and aliases. Do NOT define functions inside the quoted expressions below. Instead, define any helper function in modules and import those modules here.","ref":"ClaperWeb.html","title":"ClaperWeb","type":"module"},{"doc":"When used, dispatch to the appropriate controller/view/etc.","ref":"ClaperWeb.html#__using__/1","title":"ClaperWeb.__using__/1","type":"macro"},{"doc":"","ref":"ClaperWeb.html#channel/0","title":"ClaperWeb.channel/0","type":"function"},{"doc":"","ref":"ClaperWeb.html#controller/0","title":"ClaperWeb.controller/0","type":"function"},{"doc":"","ref":"ClaperWeb.html#live_component/0","title":"ClaperWeb.live_component/0","type":"function"},{"doc":"","ref":"ClaperWeb.html#live_view/0","title":"ClaperWeb.live_view/0","type":"function"},{"doc":"","ref":"ClaperWeb.html#router/0","title":"ClaperWeb.router/0","type":"function"},{"doc":"","ref":"ClaperWeb.html#view/0","title":"ClaperWeb.view/0","type":"function"},{"doc":"","ref":"ClaperWeb.html#view_component/0","title":"ClaperWeb.view_component/0","type":"function"},{"doc":"","ref":"ClaperWeb.AttendeeLiveAuth.html","title":"ClaperWeb.AttendeeLiveAuth","type":"module"},{"doc":"","ref":"ClaperWeb.AttendeeLiveAuth.html#on_mount/4","title":"ClaperWeb.AttendeeLiveAuth.on_mount/4","type":"function"},{"doc":"","ref":"ClaperWeb.AttendeeRegistrationView.html","title":"ClaperWeb.AttendeeRegistrationView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.AttendeeRegistrationView.html#__resource__/0","title":"ClaperWeb.AttendeeRegistrationView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.AttendeeRegistrationView.html#render/2","title":"ClaperWeb.AttendeeRegistrationView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.AttendeeRegistrationView.html#template_not_found/2","title":"ClaperWeb.AttendeeRegistrationView.template_not_found/2","type":"function"},{"doc":"","ref":"ClaperWeb.Component.Alert.html","title":"ClaperWeb.Component.Alert","type":"module"},{"doc":"","ref":"ClaperWeb.Component.Alert.html#error/1","title":"ClaperWeb.Component.Alert.error/1","type":"function"},{"doc":"","ref":"ClaperWeb.Component.Alert.html#info/1","title":"ClaperWeb.Component.Alert.info/1","type":"function"},{"doc":"","ref":"ClaperWeb.Component.Input.html","title":"ClaperWeb.Component.Input","type":"module"},{"doc":"","ref":"ClaperWeb.Component.Input.html#check/1","title":"ClaperWeb.Component.Input.check/1","type":"function"},{"doc":"","ref":"ClaperWeb.Component.Input.html#checked/3","title":"ClaperWeb.Component.Input.checked/3","type":"function"},{"doc":"","ref":"ClaperWeb.Component.Input.html#code/1","title":"ClaperWeb.Component.Input.code/1","type":"function"},{"doc":"","ref":"ClaperWeb.Component.Input.html#date/1","title":"ClaperWeb.Component.Input.date/1","type":"function"},{"doc":"","ref":"ClaperWeb.Component.Input.html#date_range/1","title":"ClaperWeb.Component.Input.date_range/1","type":"function"},{"doc":"","ref":"ClaperWeb.Component.Input.html#email/1","title":"ClaperWeb.Component.Input.email/1","type":"function"},{"doc":"","ref":"ClaperWeb.Component.Input.html#password/1","title":"ClaperWeb.Component.Input.password/1","type":"function"},{"doc":"","ref":"ClaperWeb.Component.Input.html#text/1","title":"ClaperWeb.Component.Input.text/1","type":"function"},{"doc":"","ref":"ClaperWeb.ComponentView.html","title":"ClaperWeb.ComponentView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.ComponentView.html#__resource__/0","title":"ClaperWeb.ComponentView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.ComponentView.html#render/2","title":"ClaperWeb.ComponentView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.ComponentView.html#template_not_found/2","title":"ClaperWeb.ComponentView.template_not_found/2","type":"function"},{"doc":"","ref":"ClaperWeb.Endpoint.html","title":"ClaperWeb.Endpoint","type":"module"},{"doc":"Callback implementation for Phoenix.Endpoint.broadcast!/3 .","ref":"ClaperWeb.Endpoint.html#broadcast!/3","title":"ClaperWeb.Endpoint.broadcast!/3","type":"function"},{"doc":"Callback implementation for Phoenix.Endpoint.broadcast/3 .","ref":"ClaperWeb.Endpoint.html#broadcast/3","title":"ClaperWeb.Endpoint.broadcast/3","type":"function"},{"doc":"Callback implementation for Phoenix.Endpoint.broadcast_from!/4 .","ref":"ClaperWeb.Endpoint.html#broadcast_from!/4","title":"ClaperWeb.Endpoint.broadcast_from!/4","type":"function"},{"doc":"Callback implementation for Phoenix.Endpoint.broadcast_from/4 .","ref":"ClaperWeb.Endpoint.html#broadcast_from/4","title":"ClaperWeb.Endpoint.broadcast_from/4","type":"function"},{"doc":"Callback implementation for Plug.call/2 .","ref":"ClaperWeb.Endpoint.html#call/2","title":"ClaperWeb.Endpoint.call/2","type":"function"},{"doc":"Returns the child specification to start the endpoint under a supervision tree.","ref":"ClaperWeb.Endpoint.html#child_spec/1","title":"ClaperWeb.Endpoint.child_spec/1","type":"function"},{"doc":"Returns the endpoint configuration for key Returns default if the key does not exist.","ref":"ClaperWeb.Endpoint.html#config/2","title":"ClaperWeb.Endpoint.config/2","type":"function"},{"doc":"Reloads the configuration given the application environment changes.","ref":"ClaperWeb.Endpoint.html#config_change/2","title":"ClaperWeb.Endpoint.config_change/2","type":"function"},{"doc":"Returns the host for the given endpoint.","ref":"ClaperWeb.Endpoint.html#host/0","title":"ClaperWeb.Endpoint.host/0","type":"function"},{"doc":"Callback implementation for Plug.init/1 .","ref":"ClaperWeb.Endpoint.html#init/1","title":"ClaperWeb.Endpoint.init/1","type":"function"},{"doc":"Callback implementation for Phoenix.Endpoint.local_broadcast/3 .","ref":"ClaperWeb.Endpoint.html#local_broadcast/3","title":"ClaperWeb.Endpoint.local_broadcast/3","type":"function"},{"doc":"Callback implementation for Phoenix.Endpoint.local_broadcast_from/4 .","ref":"ClaperWeb.Endpoint.html#local_broadcast_from/4","title":"ClaperWeb.Endpoint.local_broadcast_from/4","type":"function"},{"doc":"Generates the path information when routing to this endpoint.","ref":"ClaperWeb.Endpoint.html#path/1","title":"ClaperWeb.Endpoint.path/1","type":"function"},{"doc":"Generates the script name.","ref":"ClaperWeb.Endpoint.html#script_name/0","title":"ClaperWeb.Endpoint.script_name/0","type":"function"},{"doc":"Starts the endpoint supervision tree. Options :log_access_url - if the access url should be logged once the endpoint starts All other options are merged into the endpoint configuration.","ref":"ClaperWeb.Endpoint.html#start_link/1","title":"ClaperWeb.Endpoint.start_link/1","type":"function"},{"doc":"Generates a base64-encoded cryptographic hash (sha512) to a static file in priv/static . Meant to be used for Subresource Integrity with CDNs.","ref":"ClaperWeb.Endpoint.html#static_integrity/1","title":"ClaperWeb.Endpoint.static_integrity/1","type":"function"},{"doc":"Returns a two item tuple with the first item being the static_path and the second item being the static_integrity .","ref":"ClaperWeb.Endpoint.html#static_lookup/1","title":"ClaperWeb.Endpoint.static_lookup/1","type":"function"},{"doc":"Generates a route to a static file in priv/static .","ref":"ClaperWeb.Endpoint.html#static_path/1","title":"ClaperWeb.Endpoint.static_path/1","type":"function"},{"doc":"Generates the static URL without any path information. It uses the configuration under :static_url to generate such. It falls back to :url if :static_url is not set.","ref":"ClaperWeb.Endpoint.html#static_url/0","title":"ClaperWeb.Endpoint.static_url/0","type":"function"},{"doc":"Generates the endpoint base URL but as a URI struct. It uses the configuration under :url to generate such. Useful for manipulating the URL data and passing it to URL helpers.","ref":"ClaperWeb.Endpoint.html#struct_url/0","title":"ClaperWeb.Endpoint.struct_url/0","type":"function"},{"doc":"Callback implementation for Phoenix.Endpoint.subscribe/2 .","ref":"ClaperWeb.Endpoint.html#subscribe/2","title":"ClaperWeb.Endpoint.subscribe/2","type":"function"},{"doc":"Callback implementation for Phoenix.Endpoint.unsubscribe/1 .","ref":"ClaperWeb.Endpoint.html#unsubscribe/1","title":"ClaperWeb.Endpoint.unsubscribe/1","type":"function"},{"doc":"Generates the endpoint base URL without any path information. It uses the configuration under :url to generate such.","ref":"ClaperWeb.Endpoint.html#url/0","title":"ClaperWeb.Endpoint.url/0","type":"function"},{"doc":"Conveniences for translating and building error messages.","ref":"ClaperWeb.ErrorHelpers.html","title":"ClaperWeb.ErrorHelpers","type":"module"},{"doc":"Generates tag for inlined form input errors.","ref":"ClaperWeb.ErrorHelpers.html#error_tag/2","title":"ClaperWeb.ErrorHelpers.error_tag/2","type":"function"},{"doc":"Translates an error message using gettext.","ref":"ClaperWeb.ErrorHelpers.html#translate_error/1","title":"ClaperWeb.ErrorHelpers.translate_error/1","type":"function"},{"doc":"","ref":"ClaperWeb.ErrorView.html","title":"ClaperWeb.ErrorView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.ErrorView.html#__resource__/0","title":"ClaperWeb.ErrorView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.ErrorView.html#render/2","title":"ClaperWeb.ErrorView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.ErrorView.html#template_not_found/2","title":"ClaperWeb.ErrorView.template_not_found/2","type":"function"},{"doc":"","ref":"ClaperWeb.EventController.html","title":"ClaperWeb.EventController","type":"module"},{"doc":"","ref":"ClaperWeb.EventController.html#attendee_identifier/2","title":"ClaperWeb.EventController.attendee_identifier/2","type":"function"},{"doc":"","ref":"ClaperWeb.EventController.html#slide_generate/2","title":"ClaperWeb.EventController.slide_generate/2","type":"function"},{"doc":"","ref":"ClaperWeb.EventLive.EventCardComponent.html","title":"ClaperWeb.EventLive.EventCardComponent","type":"module"},{"doc":"Callback implementation for Phoenix.LiveComponent.render/1 .","ref":"ClaperWeb.EventLive.EventCardComponent.html#render/1","title":"ClaperWeb.EventLive.EventCardComponent.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.EventLive.FormComponent.html","title":"ClaperWeb.EventLive.FormComponent","type":"module"},{"doc":"","ref":"ClaperWeb.EventLive.FormComponent.html#error_to_string/1","title":"ClaperWeb.EventLive.FormComponent.error_to_string/1","type":"function"},{"doc":"Callback implementation for Phoenix.LiveComponent.render/1 .","ref":"ClaperWeb.EventLive.FormComponent.html#render/1","title":"ClaperWeb.EventLive.FormComponent.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.EventLive.Index.html","title":"ClaperWeb.EventLive.Index","type":"module"},{"doc":"Callback implementation for Phoenix.LiveView.render/1 .","ref":"ClaperWeb.EventLive.Index.html#render/1","title":"ClaperWeb.EventLive.Index.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.EventLive.Join.html","title":"ClaperWeb.EventLive.Join","type":"module"},{"doc":"Callback implementation for Phoenix.LiveView.render/1 .","ref":"ClaperWeb.EventLive.Join.html#render/1","title":"ClaperWeb.EventLive.Join.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.EventLive.Manage.html","title":"ClaperWeb.EventLive.Manage","type":"module"},{"doc":"Callback implementation for Phoenix.LiveView.render/1 .","ref":"ClaperWeb.EventLive.Manage.html#render/1","title":"ClaperWeb.EventLive.Manage.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.EventLive.Manage.html#toggle_add_modal/1","title":"ClaperWeb.EventLive.Manage.toggle_add_modal/1","type":"function"},{"doc":"","ref":"ClaperWeb.EventLive.PollComponent.html","title":"ClaperWeb.EventLive.PollComponent","type":"module"},{"doc":"","ref":"ClaperWeb.EventLive.PollComponent.html#toggle_poll/1","title":"ClaperWeb.EventLive.PollComponent.toggle_poll/1","type":"function"},{"doc":"","ref":"ClaperWeb.EventLive.PostComponent.html","title":"ClaperWeb.EventLive.PostComponent","type":"module"},{"doc":"Callback implementation for Phoenix.LiveComponent.render/1 .","ref":"ClaperWeb.EventLive.PostComponent.html#render/1","title":"ClaperWeb.EventLive.PostComponent.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.EventLive.Presenter.html","title":"ClaperWeb.EventLive.Presenter","type":"module"},{"doc":"Callback implementation for Phoenix.LiveView.render/1 .","ref":"ClaperWeb.EventLive.Presenter.html#render/1","title":"ClaperWeb.EventLive.Presenter.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.EventLive.Show.html","title":"ClaperWeb.EventLive.Show","type":"module"},{"doc":"Callback implementation for Phoenix.LiveView.render/1 .","ref":"ClaperWeb.EventLive.Show.html#render/1","title":"ClaperWeb.EventLive.Show.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.EventLive.Show.html#toggle_side_menu/1","title":"ClaperWeb.EventLive.Show.toggle_side_menu/1","type":"function"},{"doc":"","ref":"ClaperWeb.EventView.html","title":"ClaperWeb.EventView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.EventView.html#__resource__/0","title":"ClaperWeb.EventView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.EventView.html#render/2","title":"ClaperWeb.EventView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.EventView.html#template_not_found/2","title":"ClaperWeb.EventView.template_not_found/2","type":"function"},{"doc":"A module providing Internationalization with a gettext-based API. By using Gettext , your module gains a set of macros for translations, for example: import ClaperWeb.Gettext # Simple translation gettext ( "Here is the string to translate" ) # Plural translation ngettext ( "Here is the string to translate" , "Here are the strings to translate" , 3 ) # Domain-based translation dgettext ( "errors" , "Here is the error message to translate" ) See the Gettext Docs for detailed usage.","ref":"ClaperWeb.Gettext.html","title":"ClaperWeb.Gettext","type":"module"},{"doc":"Callback implementation for Gettext.Backend.dgettext/3 .","ref":"ClaperWeb.Gettext.html#dgettext/3","title":"ClaperWeb.Gettext.dgettext/3","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.dgettext_noop/2 .","ref":"ClaperWeb.Gettext.html#dgettext_noop/2","title":"ClaperWeb.Gettext.dgettext_noop/2","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.dngettext/5 .","ref":"ClaperWeb.Gettext.html#dngettext/5","title":"ClaperWeb.Gettext.dngettext/5","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.dngettext_noop/3 .","ref":"ClaperWeb.Gettext.html#dngettext_noop/3","title":"ClaperWeb.Gettext.dngettext_noop/3","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.dpgettext/4 .","ref":"ClaperWeb.Gettext.html#dpgettext/4","title":"ClaperWeb.Gettext.dpgettext/4","type":"macro"},{"doc":"","ref":"ClaperWeb.Gettext.html#dpgettext_noop/3","title":"ClaperWeb.Gettext.dpgettext_noop/3","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.dpngettext/6 .","ref":"ClaperWeb.Gettext.html#dpngettext/6","title":"ClaperWeb.Gettext.dpngettext/6","type":"macro"},{"doc":"","ref":"ClaperWeb.Gettext.html#dpngettext_noop/4","title":"ClaperWeb.Gettext.dpngettext_noop/4","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.gettext/2 .","ref":"ClaperWeb.Gettext.html#gettext/2","title":"ClaperWeb.Gettext.gettext/2","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.gettext_comment/1 .","ref":"ClaperWeb.Gettext.html#gettext_comment/1","title":"ClaperWeb.Gettext.gettext_comment/1","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.gettext_noop/1 .","ref":"ClaperWeb.Gettext.html#gettext_noop/1","title":"ClaperWeb.Gettext.gettext_noop/1","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.handle_missing_bindings/2 .","ref":"ClaperWeb.Gettext.html#handle_missing_bindings/2","title":"ClaperWeb.Gettext.handle_missing_bindings/2","type":"function"},{"doc":"Callback implementation for Gettext.Backend.handle_missing_plural_translation/6 .","ref":"ClaperWeb.Gettext.html#handle_missing_plural_translation/6","title":"ClaperWeb.Gettext.handle_missing_plural_translation/6","type":"function"},{"doc":"Callback implementation for Gettext.Backend.handle_missing_translation/4 .","ref":"ClaperWeb.Gettext.html#handle_missing_translation/4","title":"ClaperWeb.Gettext.handle_missing_translation/4","type":"function"},{"doc":"","ref":"ClaperWeb.Gettext.html#lgettext/5","title":"ClaperWeb.Gettext.lgettext/5","type":"function"},{"doc":"","ref":"ClaperWeb.Gettext.html#lngettext/7","title":"ClaperWeb.Gettext.lngettext/7","type":"function"},{"doc":"Callback implementation for Gettext.Backend.ngettext/4 .","ref":"ClaperWeb.Gettext.html#ngettext/4","title":"ClaperWeb.Gettext.ngettext/4","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.ngettext_noop/2 .","ref":"ClaperWeb.Gettext.html#ngettext_noop/2","title":"ClaperWeb.Gettext.ngettext_noop/2","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.pgettext/3 .","ref":"ClaperWeb.Gettext.html#pgettext/3","title":"ClaperWeb.Gettext.pgettext/3","type":"macro"},{"doc":"","ref":"ClaperWeb.Gettext.html#pgettext_noop/2","title":"ClaperWeb.Gettext.pgettext_noop/2","type":"macro"},{"doc":"Callback implementation for Gettext.Backend.pngettext/5 .","ref":"ClaperWeb.Gettext.html#pngettext/5","title":"ClaperWeb.Gettext.pngettext/5","type":"macro"},{"doc":"","ref":"ClaperWeb.Gettext.html#pngettext_noop/3","title":"ClaperWeb.Gettext.pngettext_noop/3","type":"macro"},{"doc":"","ref":"ClaperWeb.LayoutView.html","title":"ClaperWeb.LayoutView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.LayoutView.html#__resource__/0","title":"ClaperWeb.LayoutView.__resource__/0","type":"function"},{"doc":"","ref":"ClaperWeb.LayoutView.html#active_class/2","title":"ClaperWeb.LayoutView.active_class/2","type":"function"},{"doc":"","ref":"ClaperWeb.LayoutView.html#active_link/3","title":"ClaperWeb.LayoutView.active_link/3","type":"function"},{"doc":"","ref":"ClaperWeb.LayoutView.html#active_live_class/2","title":"ClaperWeb.LayoutView.active_live_class/2","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.LayoutView.html#render/2","title":"ClaperWeb.LayoutView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.LayoutView.html#template_not_found/2","title":"ClaperWeb.LayoutView.template_not_found/2","type":"function"},{"doc":"","ref":"ClaperWeb.LiveHelpers.html","title":"ClaperWeb.LiveHelpers","type":"module"},{"doc":"Renders a component inside the ClaperWeb.ModalComponent component. The rendered modal receives a :return_to option to properly update the URL when the modal is closed. Examples < % = live_modal ClaperWeb.PostLive.FormComponent , id : @post . id || :new , action : @live_action , post : @post , return_to : Routes . post_index_path ( @socket , :index ) % >","ref":"ClaperWeb.LiveHelpers.html#live_modal/2","title":"ClaperWeb.LiveHelpers.live_modal/2","type":"function"},{"doc":"","ref":"ClaperWeb.ModalComponent.html","title":"ClaperWeb.ModalComponent","type":"module"},{"doc":"","ref":"ClaperWeb.ModalComponent.html#hide_modal/1","title":"ClaperWeb.ModalComponent.hide_modal/1","type":"function"},{"doc":"","ref":"ClaperWeb.Notifiers.UserNotifier.html","title":"ClaperWeb.Notifiers.UserNotifier","type":"module"},{"doc":"","ref":"ClaperWeb.Notifiers.UserNotifier.html#magic/2","title":"ClaperWeb.Notifiers.UserNotifier.magic/2","type":"function"},{"doc":"","ref":"ClaperWeb.Notifiers.UserNotifier.html#render_body/3","title":"ClaperWeb.Notifiers.UserNotifier.render_body/3","type":"function"},{"doc":"","ref":"ClaperWeb.Notifiers.UserNotifier.html#update_email/2","title":"ClaperWeb.Notifiers.UserNotifier.update_email/2","type":"function"},{"doc":"","ref":"ClaperWeb.Notifiers.UserNotifier.html#welcome/1","title":"ClaperWeb.Notifiers.UserNotifier.welcome/1","type":"function"},{"doc":"","ref":"ClaperWeb.PageController.html","title":"ClaperWeb.PageController","type":"module"},{"doc":"","ref":"ClaperWeb.PageController.html#index/2","title":"ClaperWeb.PageController.index/2","type":"function"},{"doc":"","ref":"ClaperWeb.PageController.html#privacy/2","title":"ClaperWeb.PageController.privacy/2","type":"function"},{"doc":"","ref":"ClaperWeb.PageController.html#tos/2","title":"ClaperWeb.PageController.tos/2","type":"function"},{"doc":"","ref":"ClaperWeb.PageView.html","title":"ClaperWeb.PageView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.PageView.html#__resource__/0","title":"ClaperWeb.PageView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.PageView.html#render/2","title":"ClaperWeb.PageView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.PageView.html#template_not_found/2","title":"ClaperWeb.PageView.template_not_found/2","type":"function"},{"doc":"","ref":"ClaperWeb.Plugs.Locale.html","title":"ClaperWeb.Plugs.Locale","type":"module"},{"doc":"","ref":"ClaperWeb.Plugs.Locale.html#call/2","title":"ClaperWeb.Plugs.Locale.call/2","type":"function"},{"doc":"","ref":"ClaperWeb.Plugs.Locale.html#extract_accept_language/1","title":"ClaperWeb.Plugs.Locale.extract_accept_language/1","type":"function"},{"doc":"","ref":"ClaperWeb.Plugs.Locale.html#init/1","title":"ClaperWeb.Plugs.Locale.init/1","type":"function"},{"doc":"","ref":"ClaperWeb.PollLive.FormComponent.html","title":"ClaperWeb.PollLive.FormComponent","type":"module"},{"doc":"Callback implementation for Phoenix.LiveComponent.render/1 .","ref":"ClaperWeb.PollLive.FormComponent.html#render/1","title":"ClaperWeb.PollLive.FormComponent.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.PostController.html","title":"ClaperWeb.PostController","type":"module"},{"doc":"","ref":"ClaperWeb.PostController.html#create/2","title":"ClaperWeb.PostController.create/2","type":"function"},{"doc":"","ref":"ClaperWeb.PostController.html#index/2","title":"ClaperWeb.PostController.index/2","type":"function"},{"doc":"","ref":"ClaperWeb.PostView.html","title":"ClaperWeb.PostView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.PostView.html#__resource__/0","title":"ClaperWeb.PostView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.PostView.html#render/2","title":"ClaperWeb.PostView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.PostView.html#template_not_found/2","title":"ClaperWeb.PostView.template_not_found/2","type":"function"},{"doc":"Provides presence tracking to channels and processes. See the Phoenix.Presence docs for more details.","ref":"ClaperWeb.Presence.html","title":"ClaperWeb.Presence","type":"module"},{"doc":"","ref":"ClaperWeb.Presence.html#child_spec/1","title":"ClaperWeb.Presence.child_spec/1","type":"function"},{"doc":"Callback implementation for Phoenix.Presence.fetch/2 .","ref":"ClaperWeb.Presence.html#fetch/2","title":"ClaperWeb.Presence.fetch/2","type":"function"},{"doc":"","ref":"ClaperWeb.Presence.html#fetchers_pids/0","title":"ClaperWeb.Presence.fetchers_pids/0","type":"function"},{"doc":"Callback implementation for Phoenix.Presence.get_by_key/2 .","ref":"ClaperWeb.Presence.html#get_by_key/2","title":"ClaperWeb.Presence.get_by_key/2","type":"function"},{"doc":"Callback implementation for Phoenix.Presence.list/1 .","ref":"ClaperWeb.Presence.html#list/1","title":"ClaperWeb.Presence.list/1","type":"function"},{"doc":"Callback implementation for Phoenix.Presence.track/3 .","ref":"ClaperWeb.Presence.html#track/3","title":"ClaperWeb.Presence.track/3","type":"function"},{"doc":"Callback implementation for Phoenix.Presence.track/4 .","ref":"ClaperWeb.Presence.html#track/4","title":"ClaperWeb.Presence.track/4","type":"function"},{"doc":"Callback implementation for Phoenix.Presence.untrack/2 .","ref":"ClaperWeb.Presence.html#untrack/2","title":"ClaperWeb.Presence.untrack/2","type":"function"},{"doc":"Callback implementation for Phoenix.Presence.untrack/3 .","ref":"ClaperWeb.Presence.html#untrack/3","title":"ClaperWeb.Presence.untrack/3","type":"function"},{"doc":"Callback implementation for Phoenix.Presence.update/3 .","ref":"ClaperWeb.Presence.html#update/3","title":"ClaperWeb.Presence.update/3","type":"function"},{"doc":"Callback implementation for Phoenix.Presence.update/4 .","ref":"ClaperWeb.Presence.html#update/4","title":"ClaperWeb.Presence.update/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.html","title":"ClaperWeb.Router","type":"module"},{"doc":"","ref":"ClaperWeb.Router.html#api/2","title":"ClaperWeb.Router.api/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.html#attendee_registration/2","title":"ClaperWeb.Router.attendee_registration/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.html#browser/2","title":"ClaperWeb.Router.browser/2","type":"function"},{"doc":"Callback invoked by Plug on every request.","ref":"ClaperWeb.Router.html#call/2","title":"ClaperWeb.Router.call/2","type":"function"},{"doc":"Callback required by Plug that initializes the router for serving web requests.","ref":"ClaperWeb.Router.html#init/1","title":"ClaperWeb.Router.init/1","type":"function"},{"doc":"Module with named helpers generated from ClaperWeb.Router.","ref":"ClaperWeb.Router.Helpers.html","title":"ClaperWeb.Router.Helpers","type":"module"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_index_path/2","title":"ClaperWeb.Router.Helpers.event_index_path/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_index_path/3","title":"ClaperWeb.Router.Helpers.event_index_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_index_path/4","title":"ClaperWeb.Router.Helpers.event_index_path/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_index_url/2","title":"ClaperWeb.Router.Helpers.event_index_url/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_index_url/3","title":"ClaperWeb.Router.Helpers.event_index_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_index_url/4","title":"ClaperWeb.Router.Helpers.event_index_url/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_join_path/2","title":"ClaperWeb.Router.Helpers.event_join_path/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_join_path/3","title":"ClaperWeb.Router.Helpers.event_join_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_join_url/2","title":"ClaperWeb.Router.Helpers.event_join_url/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_join_url/3","title":"ClaperWeb.Router.Helpers.event_join_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_manage_path/3","title":"ClaperWeb.Router.Helpers.event_manage_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_manage_path/4","title":"ClaperWeb.Router.Helpers.event_manage_path/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_manage_path/5","title":"ClaperWeb.Router.Helpers.event_manage_path/5","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_manage_url/3","title":"ClaperWeb.Router.Helpers.event_manage_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_manage_url/4","title":"ClaperWeb.Router.Helpers.event_manage_url/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_manage_url/5","title":"ClaperWeb.Router.Helpers.event_manage_url/5","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_path/3","title":"ClaperWeb.Router.Helpers.event_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_path/4","title":"ClaperWeb.Router.Helpers.event_path/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_presenter_path/3","title":"ClaperWeb.Router.Helpers.event_presenter_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_presenter_path/4","title":"ClaperWeb.Router.Helpers.event_presenter_path/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_presenter_url/3","title":"ClaperWeb.Router.Helpers.event_presenter_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_presenter_url/4","title":"ClaperWeb.Router.Helpers.event_presenter_url/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_show_path/3","title":"ClaperWeb.Router.Helpers.event_show_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_show_path/4","title":"ClaperWeb.Router.Helpers.event_show_path/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_show_url/3","title":"ClaperWeb.Router.Helpers.event_show_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_show_url/4","title":"ClaperWeb.Router.Helpers.event_show_url/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_url/3","title":"ClaperWeb.Router.Helpers.event_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#event_url/4","title":"ClaperWeb.Router.Helpers.event_url/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#live_dashboard_path/2","title":"ClaperWeb.Router.Helpers.live_dashboard_path/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#live_dashboard_path/3","title":"ClaperWeb.Router.Helpers.live_dashboard_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#live_dashboard_path/4","title":"ClaperWeb.Router.Helpers.live_dashboard_path/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#live_dashboard_path/5","title":"ClaperWeb.Router.Helpers.live_dashboard_path/5","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#live_dashboard_url/2","title":"ClaperWeb.Router.Helpers.live_dashboard_url/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#live_dashboard_url/3","title":"ClaperWeb.Router.Helpers.live_dashboard_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#live_dashboard_url/4","title":"ClaperWeb.Router.Helpers.live_dashboard_url/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#live_dashboard_url/5","title":"ClaperWeb.Router.Helpers.live_dashboard_url/5","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#page_path/2","title":"ClaperWeb.Router.Helpers.page_path/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#page_path/3","title":"ClaperWeb.Router.Helpers.page_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#page_url/2","title":"ClaperWeb.Router.Helpers.page_url/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#page_url/3","title":"ClaperWeb.Router.Helpers.page_url/3","type":"function"},{"doc":"Generates the path information including any necessary prefix.","ref":"ClaperWeb.Router.Helpers.html#path/2","title":"ClaperWeb.Router.Helpers.path/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#stat_index_path/3","title":"ClaperWeb.Router.Helpers.stat_index_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#stat_index_path/4","title":"ClaperWeb.Router.Helpers.stat_index_path/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#stat_index_url/3","title":"ClaperWeb.Router.Helpers.stat_index_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#stat_index_url/4","title":"ClaperWeb.Router.Helpers.stat_index_url/4","type":"function"},{"doc":"Generates an integrity hash to a static asset given its file path.","ref":"ClaperWeb.Router.Helpers.html#static_integrity/2","title":"ClaperWeb.Router.Helpers.static_integrity/2","type":"function"},{"doc":"Generates path to a static asset given its file path.","ref":"ClaperWeb.Router.Helpers.html#static_path/2","title":"ClaperWeb.Router.Helpers.static_path/2","type":"function"},{"doc":"Generates url to a static asset given its file path.","ref":"ClaperWeb.Router.Helpers.html#static_url/2","title":"ClaperWeb.Router.Helpers.static_url/2","type":"function"},{"doc":"Generates the connection/endpoint base URL without any path information.","ref":"ClaperWeb.Router.Helpers.html#url/1","title":"ClaperWeb.Router.Helpers.url/1","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_confirmation_path/2","title":"ClaperWeb.Router.Helpers.user_confirmation_path/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_confirmation_path/3","title":"ClaperWeb.Router.Helpers.user_confirmation_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_confirmation_path/4","title":"ClaperWeb.Router.Helpers.user_confirmation_path/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_confirmation_url/2","title":"ClaperWeb.Router.Helpers.user_confirmation_url/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_confirmation_url/3","title":"ClaperWeb.Router.Helpers.user_confirmation_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_confirmation_url/4","title":"ClaperWeb.Router.Helpers.user_confirmation_url/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_registration_path/2","title":"ClaperWeb.Router.Helpers.user_registration_path/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_registration_path/3","title":"ClaperWeb.Router.Helpers.user_registration_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_registration_url/2","title":"ClaperWeb.Router.Helpers.user_registration_url/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_registration_url/3","title":"ClaperWeb.Router.Helpers.user_registration_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_session_path/2","title":"ClaperWeb.Router.Helpers.user_session_path/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_session_path/3","title":"ClaperWeb.Router.Helpers.user_session_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_session_url/2","title":"ClaperWeb.Router.Helpers.user_session_url/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_session_url/3","title":"ClaperWeb.Router.Helpers.user_session_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_settings_path/3","title":"ClaperWeb.Router.Helpers.user_settings_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_settings_path/4","title":"ClaperWeb.Router.Helpers.user_settings_path/4","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_settings_show_path/2","title":"ClaperWeb.Router.Helpers.user_settings_show_path/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_settings_show_path/3","title":"ClaperWeb.Router.Helpers.user_settings_show_path/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_settings_show_url/2","title":"ClaperWeb.Router.Helpers.user_settings_show_url/2","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_settings_show_url/3","title":"ClaperWeb.Router.Helpers.user_settings_show_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_settings_url/3","title":"ClaperWeb.Router.Helpers.user_settings_url/3","type":"function"},{"doc":"","ref":"ClaperWeb.Router.Helpers.html#user_settings_url/4","title":"ClaperWeb.Router.Helpers.user_settings_url/4","type":"function"},{"doc":"","ref":"ClaperWeb.StatLive.Index.html","title":"ClaperWeb.StatLive.Index","type":"module"},{"doc":"Callback implementation for Phoenix.LiveView.render/1 .","ref":"ClaperWeb.StatLive.Index.html#render/1","title":"ClaperWeb.StatLive.Index.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.Telemetry.html","title":"ClaperWeb.Telemetry","type":"module"},{"doc":"Returns a specification to start this module under a supervisor. See Supervisor .","ref":"ClaperWeb.Telemetry.html#child_spec/1","title":"ClaperWeb.Telemetry.child_spec/1","type":"function"},{"doc":"","ref":"ClaperWeb.Telemetry.html#metrics/0","title":"ClaperWeb.Telemetry.metrics/0","type":"function"},{"doc":"","ref":"ClaperWeb.Telemetry.html#start_link/1","title":"ClaperWeb.Telemetry.start_link/1","type":"function"},{"doc":"","ref":"ClaperWeb.UserAuth.html","title":"ClaperWeb.UserAuth","type":"module"},{"doc":"Authenticates the user by looking into the session and remember me token.","ref":"ClaperWeb.UserAuth.html#fetch_current_user/2","title":"ClaperWeb.UserAuth.fetch_current_user/2","type":"function"},{"doc":"Logs the user in. It renews the session ID and clears the whole session to avoid fixation attacks. See the renew_session function to customize this behaviour. It also sets a :live_socket_id key in the session, so LiveView sessions are identified and automatically disconnected on log out. The line can be safely removed if you are not using LiveView.","ref":"ClaperWeb.UserAuth.html#log_in_user/3","title":"ClaperWeb.UserAuth.log_in_user/3","type":"function"},{"doc":"Logs the user out. It clears all session data for safety. See renew_session.","ref":"ClaperWeb.UserAuth.html#log_out_user/1","title":"ClaperWeb.UserAuth.log_out_user/1","type":"function"},{"doc":"Used for routes that require the user to not be authenticated.","ref":"ClaperWeb.UserAuth.html#redirect_if_user_is_authenticated/2","title":"ClaperWeb.UserAuth.redirect_if_user_is_authenticated/2","type":"function"},{"doc":"Used for routes that require the user to be authenticated. If you want to enforce the user email is confirmed before they use the application at all, here would be a good place.","ref":"ClaperWeb.UserAuth.html#require_authenticated_user/2","title":"ClaperWeb.UserAuth.require_authenticated_user/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserConfirmationController.html","title":"ClaperWeb.UserConfirmationController","type":"module"},{"doc":"","ref":"ClaperWeb.UserConfirmationController.html#confirm_magic/2","title":"ClaperWeb.UserConfirmationController.confirm_magic/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserConfirmationController.html#create/2","title":"ClaperWeb.UserConfirmationController.create/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserConfirmationController.html#edit/2","title":"ClaperWeb.UserConfirmationController.edit/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserConfirmationController.html#new/2","title":"ClaperWeb.UserConfirmationController.new/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserConfirmationController.html#update/2","title":"ClaperWeb.UserConfirmationController.update/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserConfirmationView.html","title":"ClaperWeb.UserConfirmationView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.UserConfirmationView.html#__resource__/0","title":"ClaperWeb.UserConfirmationView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.UserConfirmationView.html#render/2","title":"ClaperWeb.UserConfirmationView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.UserConfirmationView.html#template_not_found/2","title":"ClaperWeb.UserConfirmationView.template_not_found/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserLiveAuth.html","title":"ClaperWeb.UserLiveAuth","type":"module"},{"doc":"","ref":"ClaperWeb.UserLiveAuth.html#on_mount/4","title":"ClaperWeb.UserLiveAuth.on_mount/4","type":"function"},{"doc":"","ref":"ClaperWeb.UserNotifierView.html","title":"ClaperWeb.UserNotifierView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.UserNotifierView.html#__resource__/0","title":"ClaperWeb.UserNotifierView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.UserNotifierView.html#render/2","title":"ClaperWeb.UserNotifierView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.UserNotifierView.html#template_not_found/2","title":"ClaperWeb.UserNotifierView.template_not_found/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserRegistrationController.html","title":"ClaperWeb.UserRegistrationController","type":"module"},{"doc":"","ref":"ClaperWeb.UserRegistrationController.html#confirm/2","title":"ClaperWeb.UserRegistrationController.confirm/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserRegistrationController.html#create/2","title":"ClaperWeb.UserRegistrationController.create/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserRegistrationController.html#new/2","title":"ClaperWeb.UserRegistrationController.new/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserRegistrationView.html","title":"ClaperWeb.UserRegistrationView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.UserRegistrationView.html#__resource__/0","title":"ClaperWeb.UserRegistrationView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.UserRegistrationView.html#render/2","title":"ClaperWeb.UserRegistrationView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.UserRegistrationView.html#template_not_found/2","title":"ClaperWeb.UserRegistrationView.template_not_found/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserResetPasswordView.html","title":"ClaperWeb.UserResetPasswordView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.UserResetPasswordView.html#__resource__/0","title":"ClaperWeb.UserResetPasswordView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.UserResetPasswordView.html#render/2","title":"ClaperWeb.UserResetPasswordView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.UserResetPasswordView.html#template_not_found/2","title":"ClaperWeb.UserResetPasswordView.template_not_found/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserSessionController.html","title":"ClaperWeb.UserSessionController","type":"module"},{"doc":"","ref":"ClaperWeb.UserSessionController.html#create/2","title":"ClaperWeb.UserSessionController.create/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserSessionController.html#delete/2","title":"ClaperWeb.UserSessionController.delete/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserSessionController.html#new/2","title":"ClaperWeb.UserSessionController.new/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserSessionView.html","title":"ClaperWeb.UserSessionView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.UserSessionView.html#__resource__/0","title":"ClaperWeb.UserSessionView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.UserSessionView.html#render/2","title":"ClaperWeb.UserSessionView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.UserSessionView.html#template_not_found/2","title":"ClaperWeb.UserSessionView.template_not_found/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserSettingsController.html","title":"ClaperWeb.UserSettingsController","type":"module"},{"doc":"","ref":"ClaperWeb.UserSettingsController.html#confirm_email/2","title":"ClaperWeb.UserSettingsController.confirm_email/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserSettingsController.html#edit/2","title":"ClaperWeb.UserSettingsController.edit/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserSettingsController.html#update/2","title":"ClaperWeb.UserSettingsController.update/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserSettingsLive.FormComponent.html","title":"ClaperWeb.UserSettingsLive.FormComponent","type":"module"},{"doc":"Callback implementation for Phoenix.LiveComponent.render/1 .","ref":"ClaperWeb.UserSettingsLive.FormComponent.html#render/1","title":"ClaperWeb.UserSettingsLive.FormComponent.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.UserSettingsLive.Show.html","title":"ClaperWeb.UserSettingsLive.Show","type":"module"},{"doc":"Callback implementation for Phoenix.LiveView.render/1 .","ref":"ClaperWeb.UserSettingsLive.Show.html#render/1","title":"ClaperWeb.UserSettingsLive.Show.render/1","type":"function"},{"doc":"","ref":"ClaperWeb.UserSettingsView.html","title":"ClaperWeb.UserSettingsView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.UserSettingsView.html#__resource__/0","title":"ClaperWeb.UserSettingsView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.UserSettingsView.html#render/2","title":"ClaperWeb.UserSettingsView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.UserSettingsView.html#template_not_found/2","title":"ClaperWeb.UserSettingsView.template_not_found/2","type":"function"},{"doc":"","ref":"ClaperWeb.UserView.html","title":"ClaperWeb.UserView","type":"module"},{"doc":"The resource name, as an atom, for this view","ref":"ClaperWeb.UserView.html#__resource__/0","title":"ClaperWeb.UserView.__resource__/0","type":"function"},{"doc":"Renders the given template locally.","ref":"ClaperWeb.UserView.html#render/2","title":"ClaperWeb.UserView.render/2","type":"function"},{"doc":"Callback invoked when no template is found. By default it raises but can be customized to render a particular template.","ref":"ClaperWeb.UserView.html#template_not_found/2","title":"ClaperWeb.UserView.template_not_found/2","type":"function"},{"doc":"Dependency-free S3 Form Upload using HTTP POST sigv4 https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-post-example.html","ref":"SimpleS3Upload.html","title":"SimpleS3Upload","type":"module"},{"doc":"Signs a form upload. The configuration is a map which must contain the following keys: :region - The AWS region, such as "us-east-1" :access_key_id - The AWS access key id :secret_access_key - The AWS secret access key Returns a map of form fields to be used on the client via the JavaScript FormData API. Options :key - The required key of the object to be uploaded. :max_file_size - The required maximum allowed file size in bytes. :content_type - The required MIME type of the file to be uploaded. :expires_in - The required expiration time in milliseconds from now before the signed upload expires. Examples config = %{ region : "us-east-1" , access_key_id : System . fetch_env! ( "AWS_ACCESS_KEY_ID" ) , secret_access_key : System . fetch_env! ( "AWS_SECRET_ACCESS_KEY" ) } { :ok , fields } = SimpleS3Upload . sign_form_upload ( config , "my-bucket" , key : "public/my-file-name" , content_type : "image/png" , max_file_size : 10_000 , expires_in : :timer . hours ( 1 ) )","ref":"SimpleS3Upload.html#sign_form_upload/3","title":"SimpleS3Upload.sign_form_upload/3","type":"function"},{"doc":"","ref":"Utils.FileUpload.html","title":"Utils.FileUpload","type":"module"},{"doc":"","ref":"Utils.FileUpload.html#upload/3","title":"Utils.FileUpload.upload/3","type":"function"},{"doc":"","ref":"configuration.html","title":"Configuration","type":"extras"},{"doc":"All configuration used by the app is stored in the .env file. You can find an example file in .env.sample , but you should copy it to .env and fill it with your own values (described below).","ref":"configuration.html#environment-file","title":"Configuration - Environment file","type":"extras"},{"doc":"Variable Values Default Required Description PRESENTATION_STORAGE local, s3 local - Define where the presentation files will be stored AWS_ACCESS_KEY_ID - - only for s3 Your AWS Access Key ID AWS_SECRET_ACCESS_KEY - - only for s3 Your AWS Secret Access Key AWS_S3_BUCKET - - only for s3 The name of the bucket where the presentation files will be stored AWS_S3_REGION - - only for s3 The region where the bucket is located MAIL_FROM - Claper - Email address used to send emails MAIL_FROM_NAME - noreply@claper.co - Name used to send emails","ref":"configuration.html#local","title":"Configuration - Local","type":"extras"},{"doc":"You can use all local variables plus the following: Variable Values Default Required Description DATABASE_URL - - ✓ Postgres connection string SECRET_KEY_BASE - - ✓ Generate it with mix phx.gen.secret SMTP_RELAY - - ✓ SMTP relay server SMTP_USERNAME - - ✓ SMTP username SMTP_PASSWORD - - ✓ SMTP password SMTP_PORT - 25 - SMTP port SMTP_TLS always, never, if_available always - SMTP TLS SMTP_AUTH always, never, if_available always - SMTP Auth SMTP_SSL true, false true - SMTP SSL","ref":"configuration.html#production-docker","title":"Configuration - Production / Docker","type":"extras"}]
\ No newline at end of file
diff --git a/dist/sidebar_items-51590e335a.js b/dist/sidebar_items-51590e335a.js
new file mode 100644
index 0000000..8de2f43
--- /dev/null
+++ b/dist/sidebar_items-51590e335a.js
@@ -0,0 +1 @@
+sidebarNodes={"extras":[{"group":"","headers":[{"anchor":"modules","id":"Modules"}],"id":"api-reference","title":"API Reference"},{"group":"","headers":[{"anchor":"environment-file","id":"Environment file"},{"anchor":"local","id":"Local"},{"anchor":"production-docker","id":"Production / Docker"}],"id":"configuration","title":"Configuration"}],"modules":[{"group":"","id":"Claper","sections":[],"title":"Claper"},{"group":"","id":"Claper.Accounts","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"apply_user_email/2","id":"apply_user_email/2"},{"anchor":"change_user_email/2","id":"change_user_email/2"},{"anchor":"change_user_registration/2","id":"change_user_registration/2"},{"anchor":"confirm_magic/1","id":"confirm_magic/1"},{"anchor":"confirm_user/1","id":"confirm_user/1"},{"anchor":"delete_session_token/1","id":"delete_session_token/1"},{"anchor":"deliver_magic_link/2","id":"deliver_magic_link/2"},{"anchor":"deliver_update_email_instructions/3","id":"deliver_update_email_instructions/3"},{"anchor":"deliver_user_confirmation_instructions/2","id":"deliver_user_confirmation_instructions/2"},{"anchor":"generate_user_session_token/1","id":"generate_user_session_token/1"},{"anchor":"get_user!/1","id":"get_user!/1"},{"anchor":"get_user_by_email/1","id":"get_user_by_email/1"},{"anchor":"get_user_by_session_token/1","id":"get_user_by_session_token/1"},{"anchor":"magic_token_valid?/1","id":"magic_token_valid?/1"},{"anchor":"register_user/1","id":"register_user/1"},{"anchor":"update_user_email/2","id":"update_user_email/2"}]}],"sections":[],"title":"Claper.Accounts"},{"group":"","id":"Claper.Accounts.User","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"confirm_changeset/1","id":"confirm_changeset/1"},{"anchor":"email_changeset/2","id":"email_changeset/2"},{"anchor":"registration_changeset/3","id":"registration_changeset/3"}]}],"sections":[],"title":"Claper.Accounts.User"},{"group":"","id":"Claper.Accounts.UserNotifier","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"deliver_confirmation_instructions/2","id":"deliver_confirmation_instructions/2"},{"anchor":"deliver_magic_link/2","id":"deliver_magic_link/2"},{"anchor":"deliver_reset_password_instructions/2","id":"deliver_reset_password_instructions/2"},{"anchor":"deliver_update_email_instructions/2","id":"deliver_update_email_instructions/2"},{"anchor":"deliver_welcome/1","id":"deliver_welcome/1"}]}],"sections":[],"title":"Claper.Accounts.UserNotifier"},{"group":"","id":"Claper.Accounts.UserToken","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"build_email_token/2","id":"build_email_token/2"},{"anchor":"build_magic_token/2","id":"build_magic_token/2"},{"anchor":"build_session_token/1","id":"build_session_token/1"},{"anchor":"token_and_context_query/2","id":"token_and_context_query/2"},{"anchor":"user_and_contexts_query/2","id":"user_and_contexts_query/2"},{"anchor":"user_magic_and_contexts_expiry_query/1","id":"user_magic_and_contexts_expiry_query/1"},{"anchor":"user_magic_and_contexts_query/2","id":"user_magic_and_contexts_query/2"},{"anchor":"verify_change_email_token_query/2","id":"verify_change_email_token_query/2"},{"anchor":"verify_email_token_query/2","id":"verify_email_token_query/2"},{"anchor":"verify_magic_token_query/2","id":"verify_magic_token_query/2"},{"anchor":"verify_session_token_query/1","id":"verify_session_token_query/1"}]}],"sections":[],"title":"Claper.Accounts.UserToken"},{"group":"","id":"Claper.Events","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"change_activity_leader/2","id":"change_activity_leader/2"},{"anchor":"change_event/2","id":"change_event/2"},{"anchor":"count_events_month/1","id":"count_events_month/1"},{"anchor":"create_event/1","id":"create_event/1"},{"anchor":"delete_event/1","id":"delete_event/1"},{"anchor":"get_activity_leader!/1","id":"get_activity_leader!/1"},{"anchor":"get_activity_leaders_for_event/1","id":"get_activity_leaders_for_event/1"},{"anchor":"get_different_event_with_code/2","id":"get_different_event_with_code/2"},{"anchor":"get_event!/2","id":"get_event!/2"},{"anchor":"get_event_with_code!/2","id":"get_event_with_code!/2"},{"anchor":"get_event_with_code/2","id":"get_event_with_code/2"},{"anchor":"get_managed_event!/3","id":"get_managed_event!/3"},{"anchor":"get_user_event!/3","id":"get_user_event!/3"},{"anchor":"is_leaded_by/2","id":"is_leaded_by/2"},{"anchor":"list_activity_leaders/0","id":"list_activity_leaders/0"},{"anchor":"list_events/2","id":"list_events/2"},{"anchor":"list_managed_events_by/2","id":"list_managed_events_by/2"},{"anchor":"update_event/2","id":"update_event/2"}]}],"sections":[],"title":"Claper.Events"},{"group":"","id":"Claper.Events.ActivityLeader","sections":[],"title":"Claper.Events.ActivityLeader"},{"group":"","id":"Claper.Events.Event","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"create_changeset/2","id":"create_changeset/2"},{"anchor":"downcase_code/1","id":"downcase_code/1"},{"anchor":"restart_changeset/1","id":"restart_changeset/1"},{"anchor":"started?/1","id":"started?/1"},{"anchor":"subscribe/1","id":"subscribe/1"},{"anchor":"update_changeset/2","id":"update_changeset/2"}]}],"sections":[],"title":"Claper.Events.Event"},{"group":"","id":"Claper.Mailer","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"deliver!/2","id":"deliver!/2"},{"anchor":"deliver/2","id":"deliver/2"},{"anchor":"deliver_many/2","id":"deliver_many/2"}]}],"sections":[],"title":"Claper.Mailer"},{"group":"","id":"Claper.Polls","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"add_poll_opt/1","id":"add_poll_opt/1"},{"anchor":"change_poll/2","id":"change_poll/2"},{"anchor":"create_poll/1","id":"create_poll/1"},{"anchor":"create_poll_vote/1","id":"create_poll_vote/1"},{"anchor":"delete_poll/2","id":"delete_poll/2"},{"anchor":"get_poll!/1","id":"get_poll!/1"},{"anchor":"get_poll_current_position/2","id":"get_poll_current_position/2"},{"anchor":"get_poll_vote/2","id":"get_poll_vote/2"},{"anchor":"list_polls/1","id":"list_polls/1"},{"anchor":"list_polls_at_position/2","id":"list_polls_at_position/2"},{"anchor":"remove_poll_opt/2","id":"remove_poll_opt/2"},{"anchor":"set_default/3","id":"set_default/3"},{"anchor":"set_percentages/1","id":"set_percentages/1"},{"anchor":"update_poll/3","id":"update_poll/3"},{"anchor":"vote/4","id":"vote/4"}]}],"sections":[],"title":"Claper.Polls"},{"group":"","id":"Claper.Polls.Poll","sections":[],"title":"Claper.Polls.Poll"},{"group":"","id":"Claper.Polls.PollOpt","sections":[],"title":"Claper.Polls.PollOpt"},{"group":"","id":"Claper.Polls.PollVote","sections":[],"title":"Claper.Polls.PollVote"},{"group":"","id":"Claper.Posts","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"create_post/2","id":"create_post/2"},{"anchor":"create_reaction/1","id":"create_reaction/1"},{"anchor":"delete_all_posts/3","id":"delete_all_posts/3"},{"anchor":"delete_post/1","id":"delete_post/1"},{"anchor":"delete_reaction/1","id":"delete_reaction/1"},{"anchor":"get_post!/2","id":"get_post!/2"},{"anchor":"get_reaction!/1","id":"get_reaction!/1"},{"anchor":"list_posts/2","id":"list_posts/2"},{"anchor":"reacted_posts/3","id":"reacted_posts/3"},{"anchor":"update_post/2","id":"update_post/2"}]}],"sections":[],"title":"Claper.Posts"},{"group":"","id":"Claper.Posts.Post","sections":[],"title":"Claper.Posts.Post"},{"group":"","id":"Claper.Posts.Reaction","sections":[],"title":"Claper.Posts.Reaction"},{"group":"","id":"Claper.Presentations","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"create_presentation_file/1","id":"create_presentation_file/1"},{"anchor":"create_presentation_state/1","id":"create_presentation_state/1"},{"anchor":"get_presentation_file!/2","id":"get_presentation_file!/2"},{"anchor":"get_presentation_file_by_hash!/1","id":"get_presentation_file_by_hash!/1"},{"anchor":"subscribe/1","id":"subscribe/1"},{"anchor":"update_presentation_file/2","id":"update_presentation_file/2"},{"anchor":"update_presentation_state/2","id":"update_presentation_state/2"}]}],"sections":[],"title":"Claper.Presentations"},{"group":"","id":"Claper.Presentations.PresentationFile","sections":[],"title":"Claper.Presentations.PresentationFile"},{"group":"","id":"Claper.Presentations.PresentationState","sections":[],"title":"Claper.Presentations.PresentationState"},{"group":"","id":"Claper.Release","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"migrate/0","id":"migrate/0"},{"anchor":"rollback/2","id":"rollback/2"}]}],"sections":[],"title":"Claper.Release"},{"group":"","id":"Claper.Repo","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"aggregate/3","id":"aggregate/3"},{"anchor":"aggregate/4","id":"aggregate/4"},{"anchor":"all/2","id":"all/2"},{"anchor":"checked_out?/0","id":"checked_out?/0"},{"anchor":"checkout/2","id":"checkout/2"},{"anchor":"child_spec/1","id":"child_spec/1"},{"anchor":"config/0","id":"config/0"},{"anchor":"default_options/1","id":"default_options/1"},{"anchor":"delete!/2","id":"delete!/2"},{"anchor":"delete/2","id":"delete/2"},{"anchor":"delete_all/2","id":"delete_all/2"},{"anchor":"exists?/2","id":"exists?/2"},{"anchor":"explain/3","id":"explain/3"},{"anchor":"get!/3","id":"get!/3"},{"anchor":"get/3","id":"get/3"},{"anchor":"get_by!/3","id":"get_by!/3"},{"anchor":"get_by/3","id":"get_by/3"},{"anchor":"get_dynamic_repo/0","id":"get_dynamic_repo/0"},{"anchor":"in_transaction?/0","id":"in_transaction?/0"},{"anchor":"init/2","id":"init/2"},{"anchor":"insert!/2","id":"insert!/2"},{"anchor":"insert/2","id":"insert/2"},{"anchor":"insert_all/3","id":"insert_all/3"},{"anchor":"insert_or_update!/2","id":"insert_or_update!/2"},{"anchor":"insert_or_update/2","id":"insert_or_update/2"},{"anchor":"load/2","id":"load/2"},{"anchor":"one!/2","id":"one!/2"},{"anchor":"one/2","id":"one/2"},{"anchor":"preload/3","id":"preload/3"},{"anchor":"prepare_query/3","id":"prepare_query/3"},{"anchor":"put_dynamic_repo/1","id":"put_dynamic_repo/1"},{"anchor":"query!/3","id":"query!/3"},{"anchor":"query/3","id":"query/3"},{"anchor":"reload!/2","id":"reload!/2"},{"anchor":"reload/2","id":"reload/2"},{"anchor":"rollback/1","id":"rollback/1"},{"anchor":"start_link/1","id":"start_link/1"},{"anchor":"stop/1","id":"stop/1"},{"anchor":"stream/2","id":"stream/2"},{"anchor":"to_sql/2","id":"to_sql/2"},{"anchor":"transaction/2","id":"transaction/2"},{"anchor":"update!/2","id":"update!/2"},{"anchor":"update/2","id":"update/2"},{"anchor":"update_all/3","id":"update_all/3"}]}],"sections":[],"title":"Claper.Repo"},{"group":"","id":"Claper.Schema","sections":[],"title":"Claper.Schema"},{"group":"","id":"Claper.Stats","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"distinct_poster_count/1","id":"distinct_poster_count/1"},{"anchor":"total_vote_count/1","id":"total_vote_count/1"}]}],"sections":[],"title":"Claper.Stats"},{"group":"","id":"Claper.Tasks.Converter","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"clear/1","id":"clear/1"},{"anchor":"convert/5","id":"convert/5"}]}],"sections":[],"title":"Claper.Tasks.Converter"},{"group":"","id":"ClaperWeb","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__using__/1","id":"__using__/1"},{"anchor":"channel/0","id":"channel/0"},{"anchor":"controller/0","id":"controller/0"},{"anchor":"live_component/0","id":"live_component/0"},{"anchor":"live_view/0","id":"live_view/0"},{"anchor":"router/0","id":"router/0"},{"anchor":"view/0","id":"view/0"},{"anchor":"view_component/0","id":"view_component/0"}]}],"sections":[],"title":"ClaperWeb"},{"group":"","id":"ClaperWeb.AttendeeLiveAuth","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"on_mount/4","id":"on_mount/4"}]}],"sections":[],"title":"ClaperWeb.AttendeeLiveAuth"},{"group":"","id":"ClaperWeb.AttendeeRegistrationView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.AttendeeRegistrationView"},{"group":"","id":"ClaperWeb.Component.Alert","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"error/1","id":"error/1"},{"anchor":"info/1","id":"info/1"}]}],"sections":[],"title":"ClaperWeb.Component.Alert"},{"group":"","id":"ClaperWeb.Component.Input","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"check/1","id":"check/1"},{"anchor":"checked/3","id":"checked/3"},{"anchor":"code/1","id":"code/1"},{"anchor":"date/1","id":"date/1"},{"anchor":"date_range/1","id":"date_range/1"},{"anchor":"email/1","id":"email/1"},{"anchor":"password/1","id":"password/1"},{"anchor":"text/1","id":"text/1"}]}],"sections":[],"title":"ClaperWeb.Component.Input"},{"group":"","id":"ClaperWeb.ComponentView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.ComponentView"},{"group":"","id":"ClaperWeb.Endpoint","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"broadcast!/3","id":"broadcast!/3"},{"anchor":"broadcast/3","id":"broadcast/3"},{"anchor":"broadcast_from!/4","id":"broadcast_from!/4"},{"anchor":"broadcast_from/4","id":"broadcast_from/4"},{"anchor":"call/2","id":"call/2"},{"anchor":"child_spec/1","id":"child_spec/1"},{"anchor":"config/2","id":"config/2"},{"anchor":"config_change/2","id":"config_change/2"},{"anchor":"host/0","id":"host/0"},{"anchor":"init/1","id":"init/1"},{"anchor":"local_broadcast/3","id":"local_broadcast/3"},{"anchor":"local_broadcast_from/4","id":"local_broadcast_from/4"},{"anchor":"path/1","id":"path/1"},{"anchor":"script_name/0","id":"script_name/0"},{"anchor":"start_link/1","id":"start_link/1"},{"anchor":"static_integrity/1","id":"static_integrity/1"},{"anchor":"static_lookup/1","id":"static_lookup/1"},{"anchor":"static_path/1","id":"static_path/1"},{"anchor":"static_url/0","id":"static_url/0"},{"anchor":"struct_url/0","id":"struct_url/0"},{"anchor":"subscribe/2","id":"subscribe/2"},{"anchor":"unsubscribe/1","id":"unsubscribe/1"},{"anchor":"url/0","id":"url/0"}]}],"sections":[],"title":"ClaperWeb.Endpoint"},{"group":"","id":"ClaperWeb.ErrorHelpers","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"error_tag/2","id":"error_tag/2"},{"anchor":"translate_error/1","id":"translate_error/1"}]}],"sections":[],"title":"ClaperWeb.ErrorHelpers"},{"group":"","id":"ClaperWeb.ErrorView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.ErrorView"},{"group":"","id":"ClaperWeb.EventController","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"attendee_identifier/2","id":"attendee_identifier/2"},{"anchor":"slide_generate/2","id":"slide_generate/2"}]}],"sections":[],"title":"ClaperWeb.EventController"},{"group":"","id":"ClaperWeb.EventLive.EventCardComponent","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"render/1","id":"render/1"}]}],"sections":[],"title":"ClaperWeb.EventLive.EventCardComponent"},{"group":"","id":"ClaperWeb.EventLive.FormComponent","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"error_to_string/1","id":"error_to_string/1"},{"anchor":"render/1","id":"render/1"}]}],"sections":[],"title":"ClaperWeb.EventLive.FormComponent"},{"group":"","id":"ClaperWeb.EventLive.Index","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"render/1","id":"render/1"}]}],"sections":[],"title":"ClaperWeb.EventLive.Index"},{"group":"","id":"ClaperWeb.EventLive.Join","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"render/1","id":"render/1"}]}],"sections":[],"title":"ClaperWeb.EventLive.Join"},{"group":"","id":"ClaperWeb.EventLive.Manage","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"render/1","id":"render/1"},{"anchor":"toggle_add_modal/1","id":"toggle_add_modal/1"}]}],"sections":[],"title":"ClaperWeb.EventLive.Manage"},{"group":"","id":"ClaperWeb.EventLive.PollComponent","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"toggle_poll/1","id":"toggle_poll/1"}]}],"sections":[],"title":"ClaperWeb.EventLive.PollComponent"},{"group":"","id":"ClaperWeb.EventLive.PostComponent","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"render/1","id":"render/1"}]}],"sections":[],"title":"ClaperWeb.EventLive.PostComponent"},{"group":"","id":"ClaperWeb.EventLive.Presenter","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"render/1","id":"render/1"}]}],"sections":[],"title":"ClaperWeb.EventLive.Presenter"},{"group":"","id":"ClaperWeb.EventLive.Show","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"render/1","id":"render/1"},{"anchor":"toggle_side_menu/1","id":"toggle_side_menu/1"}]}],"sections":[],"title":"ClaperWeb.EventLive.Show"},{"group":"","id":"ClaperWeb.EventView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.EventView"},{"group":"","id":"ClaperWeb.Gettext","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"dgettext/3","id":"dgettext/3"},{"anchor":"dgettext_noop/2","id":"dgettext_noop/2"},{"anchor":"dngettext/5","id":"dngettext/5"},{"anchor":"dngettext_noop/3","id":"dngettext_noop/3"},{"anchor":"dpgettext/4","id":"dpgettext/4"},{"anchor":"dpgettext_noop/3","id":"dpgettext_noop/3"},{"anchor":"dpngettext/6","id":"dpngettext/6"},{"anchor":"dpngettext_noop/4","id":"dpngettext_noop/4"},{"anchor":"gettext/2","id":"gettext/2"},{"anchor":"gettext_comment/1","id":"gettext_comment/1"},{"anchor":"gettext_noop/1","id":"gettext_noop/1"},{"anchor":"handle_missing_bindings/2","id":"handle_missing_bindings/2"},{"anchor":"handle_missing_plural_translation/6","id":"handle_missing_plural_translation/6"},{"anchor":"handle_missing_translation/4","id":"handle_missing_translation/4"},{"anchor":"lgettext/5","id":"lgettext/5"},{"anchor":"lngettext/7","id":"lngettext/7"},{"anchor":"ngettext/4","id":"ngettext/4"},{"anchor":"ngettext_noop/2","id":"ngettext_noop/2"},{"anchor":"pgettext/3","id":"pgettext/3"},{"anchor":"pgettext_noop/2","id":"pgettext_noop/2"},{"anchor":"pngettext/5","id":"pngettext/5"},{"anchor":"pngettext_noop/3","id":"pngettext_noop/3"}]}],"sections":[],"title":"ClaperWeb.Gettext"},{"group":"","id":"ClaperWeb.LayoutView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"active_class/2","id":"active_class/2"},{"anchor":"active_link/3","id":"active_link/3"},{"anchor":"active_live_class/2","id":"active_live_class/2"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.LayoutView"},{"group":"","id":"ClaperWeb.LiveHelpers","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"live_modal/2","id":"live_modal/2"}]}],"sections":[],"title":"ClaperWeb.LiveHelpers"},{"group":"","id":"ClaperWeb.ModalComponent","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"hide_modal/1","id":"hide_modal/1"}]}],"sections":[],"title":"ClaperWeb.ModalComponent"},{"group":"","id":"ClaperWeb.Notifiers.UserNotifier","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"magic/2","id":"magic/2"},{"anchor":"render_body/3","id":"render_body/3"},{"anchor":"update_email/2","id":"update_email/2"},{"anchor":"welcome/1","id":"welcome/1"}]}],"sections":[],"title":"ClaperWeb.Notifiers.UserNotifier"},{"group":"","id":"ClaperWeb.PageController","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"index/2","id":"index/2"},{"anchor":"privacy/2","id":"privacy/2"},{"anchor":"tos/2","id":"tos/2"}]}],"sections":[],"title":"ClaperWeb.PageController"},{"group":"","id":"ClaperWeb.PageView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.PageView"},{"group":"","id":"ClaperWeb.Plugs.Locale","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"call/2","id":"call/2"},{"anchor":"extract_accept_language/1","id":"extract_accept_language/1"},{"anchor":"init/1","id":"init/1"}]}],"sections":[],"title":"ClaperWeb.Plugs.Locale"},{"group":"","id":"ClaperWeb.PollLive.FormComponent","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"render/1","id":"render/1"}]}],"sections":[],"title":"ClaperWeb.PollLive.FormComponent"},{"group":"","id":"ClaperWeb.PostController","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"create/2","id":"create/2"},{"anchor":"index/2","id":"index/2"}]}],"sections":[],"title":"ClaperWeb.PostController"},{"group":"","id":"ClaperWeb.PostView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.PostView"},{"group":"","id":"ClaperWeb.Presence","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"child_spec/1","id":"child_spec/1"},{"anchor":"fetch/2","id":"fetch/2"},{"anchor":"fetchers_pids/0","id":"fetchers_pids/0"},{"anchor":"get_by_key/2","id":"get_by_key/2"},{"anchor":"list/1","id":"list/1"},{"anchor":"track/3","id":"track/3"},{"anchor":"track/4","id":"track/4"},{"anchor":"untrack/2","id":"untrack/2"},{"anchor":"untrack/3","id":"untrack/3"},{"anchor":"update/3","id":"update/3"},{"anchor":"update/4","id":"update/4"}]}],"sections":[],"title":"ClaperWeb.Presence"},{"group":"","id":"ClaperWeb.Router","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"api/2","id":"api/2"},{"anchor":"attendee_registration/2","id":"attendee_registration/2"},{"anchor":"browser/2","id":"browser/2"},{"anchor":"call/2","id":"call/2"},{"anchor":"init/1","id":"init/1"}]}],"sections":[],"title":"ClaperWeb.Router"},{"group":"","id":"ClaperWeb.Router.Helpers","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"event_index_path/2","id":"event_index_path/2"},{"anchor":"event_index_path/3","id":"event_index_path/3"},{"anchor":"event_index_path/4","id":"event_index_path/4"},{"anchor":"event_index_url/2","id":"event_index_url/2"},{"anchor":"event_index_url/3","id":"event_index_url/3"},{"anchor":"event_index_url/4","id":"event_index_url/4"},{"anchor":"event_join_path/2","id":"event_join_path/2"},{"anchor":"event_join_path/3","id":"event_join_path/3"},{"anchor":"event_join_url/2","id":"event_join_url/2"},{"anchor":"event_join_url/3","id":"event_join_url/3"},{"anchor":"event_manage_path/3","id":"event_manage_path/3"},{"anchor":"event_manage_path/4","id":"event_manage_path/4"},{"anchor":"event_manage_path/5","id":"event_manage_path/5"},{"anchor":"event_manage_url/3","id":"event_manage_url/3"},{"anchor":"event_manage_url/4","id":"event_manage_url/4"},{"anchor":"event_manage_url/5","id":"event_manage_url/5"},{"anchor":"event_path/3","id":"event_path/3"},{"anchor":"event_path/4","id":"event_path/4"},{"anchor":"event_presenter_path/3","id":"event_presenter_path/3"},{"anchor":"event_presenter_path/4","id":"event_presenter_path/4"},{"anchor":"event_presenter_url/3","id":"event_presenter_url/3"},{"anchor":"event_presenter_url/4","id":"event_presenter_url/4"},{"anchor":"event_show_path/3","id":"event_show_path/3"},{"anchor":"event_show_path/4","id":"event_show_path/4"},{"anchor":"event_show_url/3","id":"event_show_url/3"},{"anchor":"event_show_url/4","id":"event_show_url/4"},{"anchor":"event_url/3","id":"event_url/3"},{"anchor":"event_url/4","id":"event_url/4"},{"anchor":"live_dashboard_path/2","id":"live_dashboard_path/2"},{"anchor":"live_dashboard_path/3","id":"live_dashboard_path/3"},{"anchor":"live_dashboard_path/4","id":"live_dashboard_path/4"},{"anchor":"live_dashboard_path/5","id":"live_dashboard_path/5"},{"anchor":"live_dashboard_url/2","id":"live_dashboard_url/2"},{"anchor":"live_dashboard_url/3","id":"live_dashboard_url/3"},{"anchor":"live_dashboard_url/4","id":"live_dashboard_url/4"},{"anchor":"live_dashboard_url/5","id":"live_dashboard_url/5"},{"anchor":"page_path/2","id":"page_path/2"},{"anchor":"page_path/3","id":"page_path/3"},{"anchor":"page_url/2","id":"page_url/2"},{"anchor":"page_url/3","id":"page_url/3"},{"anchor":"path/2","id":"path/2"},{"anchor":"stat_index_path/3","id":"stat_index_path/3"},{"anchor":"stat_index_path/4","id":"stat_index_path/4"},{"anchor":"stat_index_url/3","id":"stat_index_url/3"},{"anchor":"stat_index_url/4","id":"stat_index_url/4"},{"anchor":"static_integrity/2","id":"static_integrity/2"},{"anchor":"static_path/2","id":"static_path/2"},{"anchor":"static_url/2","id":"static_url/2"},{"anchor":"url/1","id":"url/1"},{"anchor":"user_confirmation_path/2","id":"user_confirmation_path/2"},{"anchor":"user_confirmation_path/3","id":"user_confirmation_path/3"},{"anchor":"user_confirmation_path/4","id":"user_confirmation_path/4"},{"anchor":"user_confirmation_url/2","id":"user_confirmation_url/2"},{"anchor":"user_confirmation_url/3","id":"user_confirmation_url/3"},{"anchor":"user_confirmation_url/4","id":"user_confirmation_url/4"},{"anchor":"user_registration_path/2","id":"user_registration_path/2"},{"anchor":"user_registration_path/3","id":"user_registration_path/3"},{"anchor":"user_registration_url/2","id":"user_registration_url/2"},{"anchor":"user_registration_url/3","id":"user_registration_url/3"},{"anchor":"user_session_path/2","id":"user_session_path/2"},{"anchor":"user_session_path/3","id":"user_session_path/3"},{"anchor":"user_session_url/2","id":"user_session_url/2"},{"anchor":"user_session_url/3","id":"user_session_url/3"},{"anchor":"user_settings_path/3","id":"user_settings_path/3"},{"anchor":"user_settings_path/4","id":"user_settings_path/4"},{"anchor":"user_settings_show_path/2","id":"user_settings_show_path/2"},{"anchor":"user_settings_show_path/3","id":"user_settings_show_path/3"},{"anchor":"user_settings_show_url/2","id":"user_settings_show_url/2"},{"anchor":"user_settings_show_url/3","id":"user_settings_show_url/3"},{"anchor":"user_settings_url/3","id":"user_settings_url/3"},{"anchor":"user_settings_url/4","id":"user_settings_url/4"}]}],"sections":[],"title":"ClaperWeb.Router.Helpers"},{"group":"","id":"ClaperWeb.StatLive.Index","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"render/1","id":"render/1"}]}],"sections":[],"title":"ClaperWeb.StatLive.Index"},{"group":"","id":"ClaperWeb.Telemetry","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"child_spec/1","id":"child_spec/1"},{"anchor":"metrics/0","id":"metrics/0"},{"anchor":"start_link/1","id":"start_link/1"}]}],"sections":[],"title":"ClaperWeb.Telemetry"},{"group":"","id":"ClaperWeb.UserAuth","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"fetch_current_user/2","id":"fetch_current_user/2"},{"anchor":"log_in_user/3","id":"log_in_user/3"},{"anchor":"log_out_user/1","id":"log_out_user/1"},{"anchor":"redirect_if_user_is_authenticated/2","id":"redirect_if_user_is_authenticated/2"},{"anchor":"require_authenticated_user/2","id":"require_authenticated_user/2"}]}],"sections":[],"title":"ClaperWeb.UserAuth"},{"group":"","id":"ClaperWeb.UserConfirmationController","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"confirm_magic/2","id":"confirm_magic/2"},{"anchor":"create/2","id":"create/2"},{"anchor":"edit/2","id":"edit/2"},{"anchor":"new/2","id":"new/2"},{"anchor":"update/2","id":"update/2"}]}],"sections":[],"title":"ClaperWeb.UserConfirmationController"},{"group":"","id":"ClaperWeb.UserConfirmationView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.UserConfirmationView"},{"group":"","id":"ClaperWeb.UserLiveAuth","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"on_mount/4","id":"on_mount/4"}]}],"sections":[],"title":"ClaperWeb.UserLiveAuth"},{"group":"","id":"ClaperWeb.UserNotifierView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.UserNotifierView"},{"group":"","id":"ClaperWeb.UserRegistrationController","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"confirm/2","id":"confirm/2"},{"anchor":"create/2","id":"create/2"},{"anchor":"new/2","id":"new/2"}]}],"sections":[],"title":"ClaperWeb.UserRegistrationController"},{"group":"","id":"ClaperWeb.UserRegistrationView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.UserRegistrationView"},{"group":"","id":"ClaperWeb.UserResetPasswordView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.UserResetPasswordView"},{"group":"","id":"ClaperWeb.UserSessionController","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"create/2","id":"create/2"},{"anchor":"delete/2","id":"delete/2"},{"anchor":"new/2","id":"new/2"}]}],"sections":[],"title":"ClaperWeb.UserSessionController"},{"group":"","id":"ClaperWeb.UserSessionView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.UserSessionView"},{"group":"","id":"ClaperWeb.UserSettingsController","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"confirm_email/2","id":"confirm_email/2"},{"anchor":"edit/2","id":"edit/2"},{"anchor":"update/2","id":"update/2"}]}],"sections":[],"title":"ClaperWeb.UserSettingsController"},{"group":"","id":"ClaperWeb.UserSettingsLive.FormComponent","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"render/1","id":"render/1"}]}],"sections":[],"title":"ClaperWeb.UserSettingsLive.FormComponent"},{"group":"","id":"ClaperWeb.UserSettingsLive.Show","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"render/1","id":"render/1"}]}],"sections":[],"title":"ClaperWeb.UserSettingsLive.Show"},{"group":"","id":"ClaperWeb.UserSettingsView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.UserSettingsView"},{"group":"","id":"ClaperWeb.UserView","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"__resource__/0","id":"__resource__/0"},{"anchor":"render/2","id":"render/2"},{"anchor":"template_not_found/2","id":"template_not_found/2"}]}],"sections":[],"title":"ClaperWeb.UserView"},{"group":"","id":"SimpleS3Upload","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"sign_form_upload/3","id":"sign_form_upload/3"}]}],"sections":[],"title":"SimpleS3Upload"},{"group":"","id":"Utils.FileUpload","nodeGroups":[{"key":"functions","name":"Functions","nodes":[{"anchor":"upload/3","id":"upload/3"}]}],"sections":[],"title":"Utils.FileUpload"}],"tasks":[]}
\ No newline at end of file
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..d554459
--- /dev/null
+++ b/index.html
@@ -0,0 +1,10 @@
+
+
+
+
+ Claper v1.0.0 — Documentation
+
+
+
+
+
diff --git a/search.html b/search.html
new file mode 100644
index 0000000..5894c45
--- /dev/null
+++ b/search.html
@@ -0,0 +1,124 @@
+
+
+
+
+
+
+
+
+
+ Search — Claper v1.0.0
+
+
+
+
+
+
+
+
+
+
+
+
+
+