src/happyx/core/constants

Constants ✨

Provides HappyX constants

FlagDescriptionNeed Value
-d:httpxenables Httpx as alternative HTTP Server ⚡
-d:beastenables HttpBeast as alternative HTTP Server ⚡
-d:microenables MicroAsyncHttpServer as alternative HTTP Server ⚡
-d:translateenables automatic translate for returns 🌐
-d:debugenables debug logging 💻
-d:cryptoMethodchoose crypto method for generate_password methods 🔐
-d:numThreadschoose number of threads (httpx/httpbeast) ⌛
-d:sessionIdLengthchoose length of session ID ✍
-d:disableApiDocdisables built-in API documentation 📕
-d:appNamechoose name of application (SSR/SSG) 📕
-d:apiDocsPathchoose path for API documentation 📕
-d:noliveviewsDisables LiveViews at SSR/SSG (It helpful for components) 📕
-d:safeRequestsEnables requests safety (On error returns 500 with err msg) 📕
-d:disableDefDecoDisables default decorators (AuthBasic, GetUserAgent) 👀
-d:disableCompDisables default components. Only functional components will be enabled

Dev Consts 👨‍💻

FlagDescriptionNeed Value
-d:compDebugenables debug logging for components
-d:compTreeDebugenables debug logging for components (tree mode)
-d:ssrDebugenables debug logging for SSR
-d:spaDebugenables debug logging for SPA
-d:reqModelDebugenables debug logging for request models
-d:routingDebugenables debug logging for routing
-d:componentDebugTargetafter this component program will terminated
-d:reqModelDebugTargetafter this request model program will terminated

Consts

apiDocsPath {.strdefine.} = "/docs"
appName {.strdefine.} = "HappyX Application"
componentDebugTarget {.strdefine.} = ""
cryptoMethod {.strdefine.} = "sha512"
enableApiDoc = true
enableDebug = false
enableHttpBeast = false
enableHttpx = false
enableMicro = false
exportJvm = false
exportPython = false
HpxMajor = 3
HpxMinor = 12
HpxPatch = 0
HpxVersion = "3.12.0"
htmlTagsList = ["a", "abbr", "address", "area", "article", "aside", "audio",
                "b", "base", "bdi", "bdo", "blockquote", "body", "br", "button",
                "canvas", "caption", "cite", "code", "col", "colgroup", "data",
                "datalist", "dd", "del", "details", "dfn", "dialog", "div",
                "dl", "dt", "em", "embed", "fieldset", "figcaption", "figure",
                "footer", "form", "frameset", "h1", "h2", "h3", "h4", "h5",
                "h6", "head", "header", "hgroup", "hr", "html", "i", "iframe",
                "img", "input", "ins", "kbd", "label", "legend", "li", "link",
                "main", "map", "mark", "menu", "meta", "meter", "nav",
                "noscript", "object", "ol", "optgroup", "option", "output", "p",
                "picture", "portal", "pre", "progress", "q", "rp", "rt", "ruby",
                "s", "samp", "script", "search", "section", "select", "slot",
                "small", "source", "span", "strong", "style", "sub", "summary",
                "sup", "svg", "cicle", "path", "g", "table", "tbody", "td",
                "template", "textarea", "tfoot", "th", "thead", "time", "title",
                "tr", "track", "u", "ul", "var", "video", "wbr"]
httpMethods = ["get", "post", "put", "patch", "link", "options", "head",
               "delete", "unlink", "purge", "copy"]
nim_1_6_14 = false
nim_2_0_0 = true
numThreads {.intdefine.} = 0
reqModelDebugTarget {.strdefine.} = ""
sessionIdLength {.intdefine.} = 32