<!DOCTYPE html>
<html lang="en">

  <head>
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <!-- Adding meta -->
    
    
    <meta name="author" content="schukai GmbH" />
    
    <meta name="description" content="javascript library for optimal use on fast and flexible pages." />
    
    

    <!-- Adding external script-->
    
    
    <script src="https://code.jquery.com/jquery-3.5.1.js" integrity="sha256-QWo7LDvxbWT2tbbQ97B53yJnYU3WhH/C8ycbRAkjPDc=" crossorigin="anonymous" ></script>
    
    <script src="https://monsterjs.org/js/doc/monster-versions.js" crossorigin="anonymous" ></script>
    
    

    <!-- Adding external style-->
    
    
    <link href="https://monsterjs.org/assets/prettify.css" crossorigin="anonymous" rel="stylesheet" />
    
    

    <!-- Adding scripts-->
    

    <!-- Adding style-->
    

    <!-- Adding overlay script-->
    
    <script src="https://cdnjs.cloudflare.com/ajax/libs/overlayscrollbars/1.13.0/js/OverlayScrollbars.min.js"
      integrity="sha512-5R3ngaUdvyhXkQkIqTf/k+Noq3phjmrqlUQyQYbgfI34Mzcx7vLIIYTy/K1VMHkL33T709kfh5y6R9Xy/Cbt7Q=="
      crossorigin="anonymous"></script>
    

    <!-- Adding overlay style-->
    


    <title>
      I18n
    </title>

    <!--[if lt IE 9]>
      <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
    <link type="text/css" rel="stylesheet" href="styles/third-party/ionicons.min.css">
    <link type="text/css" rel="stylesheet" href="styles/third-party/prettify-tomorrow.css">
    <link type="text/css" rel="stylesheet" href="styles/reset.css">
    <link type="text/css" rel="stylesheet" href="styles/clean-jsdoc-theme-base.css">
    <link type="text/css" rel="stylesheet" href="styles/clean-jsdoc-theme-light.css">
    
    <svg aria-hidden="true" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
    style="display:none">
    <defs>
        <symbol id="copy-icon" viewbox="0 0 488.3 488.3">
            <g>
                <path
                    d="M314.25,85.4h-227c-21.3,0-38.6,17.3-38.6,38.6v325.7c0,21.3,17.3,38.6,38.6,38.6h227c21.3,0,38.6-17.3,38.6-38.6V124    C352.75,102.7,335.45,85.4,314.25,85.4z M325.75,449.6c0,6.4-5.2,11.6-11.6,11.6h-227c-6.4,0-11.6-5.2-11.6-11.6V124    c0-6.4,5.2-11.6,11.6-11.6h227c6.4,0,11.6,5.2,11.6,11.6V449.6z" />
                <path
                    d="M401.05,0h-227c-21.3,0-38.6,17.3-38.6,38.6c0,7.5,6,13.5,13.5,13.5s13.5-6,13.5-13.5c0-6.4,5.2-11.6,11.6-11.6h227    c6.4,0,11.6,5.2,11.6,11.6v325.7c0,6.4-5.2,11.6-11.6,11.6c-7.5,0-13.5,6-13.5,13.5s6,13.5,13.5,13.5c21.3,0,38.6-17.3,38.6-38.6    V38.6C439.65,17.3,422.35,0,401.05,0z" />
            </g>
        </symbol>
        <symbol id='search-icon' viewBox="0 0 512 512">
            <g>
                <g>
                    <path
                        d="M225.474,0C101.151,0,0,101.151,0,225.474c0,124.33,101.151,225.474,225.474,225.474    c124.33,0,225.474-101.144,225.474-225.474C450.948,101.151,349.804,0,225.474,0z M225.474,409.323    c-101.373,0-183.848-82.475-183.848-183.848S124.101,41.626,225.474,41.626s183.848,82.475,183.848,183.848    S326.847,409.323,225.474,409.323z" />
                </g>
            </g>
            <g>
                <g>
                    <path
                        d="M505.902,476.472L386.574,357.144c-8.131-8.131-21.299-8.131-29.43,0c-8.131,8.124-8.131,21.306,0,29.43l119.328,119.328    c4.065,4.065,9.387,6.098,14.715,6.098c5.321,0,10.649-2.033,14.715-6.098C514.033,497.778,514.033,484.596,505.902,476.472z" />
                </g>
            </g>
        </symbol>
        <symbol id="down-icon" viewBox="0 0 16 16">
            <path 
                fill-rule="evenodd" 
                clip-rule="evenodd" 
                d="M12.7803 6.21967C13.0732 6.51256 13.0732 6.98744 12.7803 7.28033L8.53033 11.5303C8.23744 11.8232 7.76256 11.8232 7.46967 11.5303L3.21967 7.28033C2.92678 6.98744 2.92678 6.51256 3.21967 6.21967C3.51256 5.92678 3.98744 5.92678 4.28033 6.21967L8 9.93934L11.7197 6.21967C12.0126 5.92678 12.4874 5.92678 12.7803 6.21967Z"
            >
            </path>
        </symbol>
    </defs>
</svg>
  </head>

  <body>

    <nav class="navbar" id="navbar">
      <div class="navbar-heading" id="navbar-heading"><a href="index.html"><h2 class="navbar-heading-text">Monster</h2></a></div><div class="sidebar-main-content" id="sidebar-main-content"><div class="accordion collapsed" id="2644061" > <h3 class="accordion-heading">Tutorials<svg><use xlink:href="#down-icon"></use></svg></h3><ul class="accordion-content"><li class="accordion-list" id=""><a href="tutorial-01-getting-started.html">Getting Started</a></li><li class="accordion-list" id=""><a href="tutorial-02-what-is-monster.html">What is Monster?</a></li><li class="accordion-list" id=""><a href="tutorial-03-dom.html">DOM</a></li><li class="accordion-list" id=""><a href="tutorial-09-browser-compatibility.html">Browser compatibility</a></li></ul> </div><div class="accordion collapsed" id="5841949" > <h3 class="accordion-heading">Classes<svg><use xlink:href="#down-icon"></use></svg></h3><ul class="accordion-content"><li class="accordion collapsed child" id=9046111><div class="accordion-heading child"><a href="Monster.Constraints.AbstractConstraint.html">AbstractConstraint</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Constraints.AbstractConstraint.html#isValid">isValid</a></li></ul></li><li class="accordion-list" id=""><a href="Monster.Constraints.AbstractOperator.html">AbstractOperator</a></li><li class="accordion collapsed child" id=8768207><div class="accordion-heading child"><a href="Monster.Constraints.AndOperator.html">AndOperator</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Constraints.AndOperator.html#isValid">isValid</a></li></ul></li><li class="accordion collapsed child" id=2254253><div class="accordion-heading child"><a href="Monster.Constraints.Invalid.html">Invalid</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Constraints.Invalid.html#isValid">isValid</a></li></ul></li><li class="accordion collapsed child" id=1190162><div class="accordion-heading child"><a href="Monster.Constraints.IsArray.html">IsArray</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Constraints.IsArray.html#isValid">isValid</a></li></ul></li><li class="accordion collapsed child" id=1937618><div class="accordion-heading child"><a href="Monster.Constraints.IsObject.html">IsObject</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Constraints.IsObject.html#isValid">isValid</a></li></ul></li><li class="accordion collapsed child" id=9774318><div class="accordion-heading child"><a href="Monster.Constraints.OrOperator.html">OrOperator</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Constraints.OrOperator.html#isValid">isValid</a></li></ul></li><li class="accordion collapsed child" id=6160391><div class="accordion-heading child"><a href="Monster.Constraints.Valid.html">Valid</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Constraints.Valid.html#isValid">isValid</a></li></ul></li><li class="accordion collapsed child" id=7462739><div class="accordion-heading child"><a href="Monster.Data.Pathfinder.html">Pathfinder</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Data.Pathfinder.html#deleteVia">deleteVia</a></li><li data-type='method'><a href="Monster.Data.Pathfinder.html#exists">exists</a></li><li data-type='method'><a href="Monster.Data.Pathfinder.html#getVia">getVia</a></li><li data-type='method'><a href="Monster.Data.Pathfinder.html#setVia">setVia</a></li><li data-type='method'><a href="Monster.Data.Pathfinder.html#setWildCard">setWildCard</a></li></ul></li><li class="accordion collapsed child" id=5495183><div class="accordion-heading child"><a href="Monster.Data.Pipe.html">Pipe</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Data.Pipe.html#run">run</a></li><li data-type='method'><a href="Monster.Data.Pipe.html#setCallback">setCallback</a></li></ul></li><li class="accordion collapsed child" id=5831669><div class="accordion-heading child"><a href="Monster.Data.Transformer.html">Transformer</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Data.Transformer.html#run">run</a></li><li data-type='method'><a href="Monster.Data.Transformer.html#setCallback">setCallback</a></li></ul></li><li class="accordion collapsed child" id=9926680><div class="accordion-heading child"><a href="Monster.DOM.Assembler.html">Assembler</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.DOM.Assembler.html#createDocumentFragment">createDocumentFragment</a></li><li data-type='method'><a href="Monster.DOM.Assembler.html#getAttributePrefix">getAttributePrefix</a></li><li data-type='method'><a href="Monster.DOM.Assembler.html#setAttributePrefix">setAttributePrefix</a></li></ul></li><li class="accordion collapsed child" id=4671921><div class="accordion-heading child"><a href="Monster.DOM.CustomControl.html">CustomControl</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.DOM.CustomControl.html#checkValidity">checkValidity</a></li><li data-type='method'><a href="Monster.DOM.CustomControl.html#reportValidity">reportValidity</a></li><li data-type='method'><a href="Monster.DOM.CustomControl.html#setFormValue">setFormValue</a></li><li data-type='method'><a href="Monster.DOM.CustomControl.html#setValidity">setValidity</a></li></ul></li><li class="accordion collapsed child" id=5688521><div class="accordion-heading child"><a href="Monster.DOM.CustomElement.html">CustomElement</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.DOM.CustomElement.html#.getCSSStyleSheet">getCSSStyleSheet</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#.getTag">getTag</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#adoptedCallback">adoptedCallback</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#assembleMethodSymbol">assembleMethodSymbol</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#attachObserver">attachObserver</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#attributeChangedCallback">attributeChangedCallback</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#connectedCallback">connectedCallback</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#containsObserver">containsObserver</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#detachObserver">detachObserver</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#disconnectedCallback">disconnectedCallback</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#getOption">getOption</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#hasNode">hasNode</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#initMethodSymbol">initMethodSymbol</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#setOption">setOption</a></li><li data-type='method'><a href="Monster.DOM.CustomElement.html#setOptions">setOptions</a></li></ul></li><li class="accordion collapsed child" id=5486451><div class="accordion-heading child"><a href="Monster.DOM.Template.html">Template</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.DOM.Template.html#createDocumentFragment">createDocumentFragment</a></li><li data-type='method'><a href="Monster.DOM.Template.html#getTemplateElement">getTemplateElement</a></li></ul></li><li class="accordion collapsed child" id=8971483><div class="accordion-heading child"><a href="Monster.DOM.Theme.html">Theme</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.DOM.Theme.html#getName">getName</a></li></ul></li><li class="accordion collapsed child" id=9113873><div class="accordion-heading child"><a href="Monster.DOM.Updater.html">Updater</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.DOM.Updater.html#disableEventProcessing">disableEventProcessing</a></li><li data-type='method'><a href="Monster.DOM.Updater.html#enableEventProcessing">enableEventProcessing</a></li><li data-type='method'><a href="Monster.DOM.Updater.html#getSubject">getSubject</a></li><li data-type='method'><a href="Monster.DOM.Updater.html#run">run</a></li><li data-type='method'><a href="Monster.DOM.Updater.html#setCallback">setCallback</a></li><li data-type='method'><a href="Monster.DOM.Updater.html#setEventTypes">setEventTypes</a></li></ul></li><li class="accordion collapsed child" id=9552886><div class="accordion-heading child"><a href="Monster.I18n.Locale.html">Locale</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.I18n.Locale.html#getMap">getMap</a></li><li data-type='method'><a href="Monster.I18n.Locale.html#toString">toString</a></li></ul></li><li class="accordion collapsed child" id=1477108><div class="accordion-heading child"><a href="Monster.I18n.Provider.html">Provider</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.I18n.Provider.html#getTranslations">getTranslations</a></li></ul></li><li class="accordion collapsed child" id=1406201><div class="accordion-heading child"><a href="Monster.I18n.Providers.Fetch.html">Fetch</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.I18n.Providers.Fetch.html#getTranslations">getTranslations</a></li></ul></li><li class="accordion collapsed child" id=6161039><div class="accordion-heading child"><a href="Monster.I18n.Translations.html">Translations</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.I18n.Translations.html#assignTranslations">assignTranslations</a></li><li data-type='method'><a href="Monster.I18n.Translations.html#getPluralRuleText">getPluralRuleText</a></li><li data-type='method'><a href="Monster.I18n.Translations.html#getText">getText</a></li><li data-type='method'><a href="Monster.I18n.Translations.html#setText">setText</a></li></ul></li><li class="accordion collapsed child" id=9130702><div class="accordion-heading child"><a href="Monster.Logging.Handler.html">Handler</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Logging.Handler.html#getLogLevel">getLogLevel</a></li><li data-type='method'><a href="Monster.Logging.Handler.html#log">log</a></li><li data-type='method'><a href="Monster.Logging.Handler.html#setAll">setAll</a></li><li data-type='method'><a href="Monster.Logging.Handler.html#setDebug">setDebug</a></li><li data-type='method'><a href="Monster.Logging.Handler.html#setError">setError</a></li><li data-type='method'><a href="Monster.Logging.Handler.html#setFatal">setFatal</a></li><li data-type='method'><a href="Monster.Logging.Handler.html#setInfo">setInfo</a></li><li data-type='method'><a href="Monster.Logging.Handler.html#setLogLevel">setLogLevel</a></li><li data-type='method'><a href="Monster.Logging.Handler.html#setOff">setOff</a></li><li data-type='method'><a href="Monster.Logging.Handler.html#setTrace">setTrace</a></li><li data-type='method'><a href="Monster.Logging.Handler.html#setWarn">setWarn</a></li></ul></li><li class="accordion collapsed child" id=4750869><div class="accordion-heading child"><a href="Monster.Logging.Handler.ConsoleHandler.html">ConsoleHandler</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Logging.Handler.ConsoleHandler.html#log">log</a></li></ul></li><li class="accordion collapsed child" id=1498069><div class="accordion-heading child"><a href="Monster.Logging.LogEntry.html">LogEntry</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Logging.LogEntry.html#getArguments">getArguments</a></li><li data-type='method'><a href="Monster.Logging.LogEntry.html#getLogLevel">getLogLevel</a></li></ul></li><li class="accordion collapsed child" id=4639814><div class="accordion-heading child"><a href="Monster.Logging.Logger.html">Logger</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Logging.Logger.html#addHandler">addHandler</a></li><li data-type='method'><a href="Monster.Logging.Logger.html#getLabel">getLabel</a></li><li data-type='method'><a href="Monster.Logging.Logger.html#getLevel">getLevel</a></li><li data-type='method'><a href="Monster.Logging.Logger.html#logDebug">logDebug</a></li><li data-type='method'><a href="Monster.Logging.Logger.html#logError">logError</a></li><li data-type='method'><a href="Monster.Logging.Logger.html#logFatal">logFatal</a></li><li data-type='method'><a href="Monster.Logging.Logger.html#logInfo">logInfo</a></li><li data-type='method'><a href="Monster.Logging.Logger.html#logTrace">logTrace</a></li><li data-type='method'><a href="Monster.Logging.Logger.html#logWarn">logWarn</a></li><li data-type='method'><a href="Monster.Logging.Logger.html#removeHandler">removeHandler</a></li></ul></li><li class="accordion collapsed child" id=1624830><div class="accordion-heading child"><a href="Monster.Namespace.html">Namespace</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Namespace.html#getNamespace">getNamespace</a></li><li data-type='method'><a href="Monster.Namespace.html#toString">toString</a></li></ul></li><li class="accordion collapsed child" id=234312><div class="accordion-heading child"><a href="Monster.Text.Formatter.html">Formatter</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Text.Formatter.html#format">format</a></li><li data-type='method'><a href="Monster.Text.Formatter.html#setMarker">setMarker</a></li></ul></li><li class="accordion collapsed child" id=8248213><div class="accordion-heading child"><a href="Monster.Types.Base.html">Base</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.Base.html#toString">toString</a></li></ul></li><li class="accordion collapsed child" id=4544918><div class="accordion-heading child"><a href="Monster.Types.BaseWithOptions.html">BaseWithOptions</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.BaseWithOptions.html#getOption">getOption</a></li></ul></li><li class="accordion collapsed child" id=2820031><div class="accordion-heading child"><a href="Monster.Types.DataUrl.html">DataUrl</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.DataUrl.html#toString">toString</a></li></ul></li><li class="accordion collapsed child" id=6589340><div class="accordion-heading child"><a href="Monster.Types.ID.html">ID</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.ID.html#toString">toString</a></li></ul></li><li class="accordion collapsed child" id=2235643><div class="accordion-heading child"><a href="Monster.Types.MediaType.html">MediaType</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.MediaType.html#toString">toString</a></li></ul></li><li class="accordion collapsed child" id=502007><div class="accordion-heading child"><a href="Monster.Types.Observer.html">Observer</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.Observer.html#addTag">addTag</a></li><li data-type='method'><a href="Monster.Types.Observer.html#getTags">getTags</a></li><li data-type='method'><a href="Monster.Types.Observer.html#hasTag">hasTag</a></li><li data-type='method'><a href="Monster.Types.Observer.html#removeTag">removeTag</a></li><li data-type='method'><a href="Monster.Types.Observer.html#update">update</a></li></ul></li><li class="accordion collapsed child" id=118156><div class="accordion-heading child"><a href="Monster.Types.ObserverList.html">ObserverList</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.ObserverList.html#attach">attach</a></li><li data-type='method'><a href="Monster.Types.ObserverList.html#contains">contains</a></li><li data-type='method'><a href="Monster.Types.ObserverList.html#detach">detach</a></li><li data-type='method'><a href="Monster.Types.ObserverList.html#notify">notify</a></li></ul></li><li class="accordion collapsed child" id=2692548><div class="accordion-heading child"><a href="Monster.Types.ProxyObserver.html">ProxyObserver</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.ProxyObserver.html#attachObserver">attachObserver</a></li><li data-type='method'><a href="Monster.Types.ProxyObserver.html#containsObserver">containsObserver</a></li><li data-type='method'><a href="Monster.Types.ProxyObserver.html#detachObserver">detachObserver</a></li><li data-type='method'><a href="Monster.Types.ProxyObserver.html#getRealSubject">getRealSubject</a></li><li data-type='method'><a href="Monster.Types.ProxyObserver.html#getSubject">getSubject</a></li><li data-type='method'><a href="Monster.Types.ProxyObserver.html#notifyObservers">notifyObservers</a></li></ul></li><li class="accordion collapsed child" id=878427><div class="accordion-heading child"><a href="Monster.Types.Queue.html">Queue</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.Queue.html#add">add</a></li><li data-type='method'><a href="Monster.Types.Queue.html#clear">clear</a></li><li data-type='method'><a href="Monster.Types.Queue.html#isEmpty">isEmpty</a></li><li data-type='method'><a href="Monster.Types.Queue.html#peek">peek</a></li><li data-type='method'><a href="Monster.Types.Queue.html#poll">poll</a></li></ul></li><li class="accordion-list" id=""><a href="Monster.Types.RandomID.html">RandomID</a></li><li class="accordion collapsed child" id=9002322><div class="accordion-heading child"><a href="Monster.Types.Stack.html">Stack</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.Stack.html#clear">clear</a></li><li data-type='method'><a href="Monster.Types.Stack.html#isEmpty">isEmpty</a></li><li data-type='method'><a href="Monster.Types.Stack.html#peek">peek</a></li><li data-type='method'><a href="Monster.Types.Stack.html#pop">pop</a></li><li data-type='method'><a href="Monster.Types.Stack.html#push">push</a></li></ul></li><li class="accordion collapsed child" id=8416744><div class="accordion-heading child"><a href="Monster.Types.TokenList.html">TokenList</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.TokenList.html#add">add</a></li><li data-type='method'><a href="Monster.Types.TokenList.html#clear">clear</a></li><li data-type='method'><a href="Monster.Types.TokenList.html#contains">contains</a></li><li data-type='method'><a href="Monster.Types.TokenList.html#entries">entries</a></li><li data-type='method'><a href="Monster.Types.TokenList.html#forEach">forEach</a></li><li data-type='method'><a href="Monster.Types.TokenList.html#getIterator">getIterator</a></li><li data-type='method'><a href="Monster.Types.TokenList.html#remove">remove</a></li><li data-type='method'><a href="Monster.Types.TokenList.html#replace">replace</a></li><li data-type='method'><a href="Monster.Types.TokenList.html#Symbol.iterator">Symbol.iterator</a></li><li data-type='method'><a href="Monster.Types.TokenList.html#toggle">toggle</a></li><li data-type='method'><a href="Monster.Types.TokenList.html#toString">toString</a></li></ul></li><li class="accordion collapsed child" id=9480657><div class="accordion-heading child"><a href="Monster.Types.UniqueQueue.html">UniqueQueue</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.UniqueQueue.html#add">add</a></li><li data-type='method'><a href="Monster.Types.UniqueQueue.html#clear">clear</a></li><li data-type='method'><a href="Monster.Types.UniqueQueue.html#poll">poll</a></li></ul></li><li class="accordion collapsed child" id=1210420><div class="accordion-heading child"><a href="Monster.Types.Version.html">Version</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.Version.html#compareTo">compareTo</a></li><li data-type='method'><a href="Monster.Types.Version.html#toString">toString</a></li></ul></li><li class="accordion collapsed child" id=1435305><div class="accordion-heading child"><a href="Monster.Util.Comparator.html">Comparator</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Util.Comparator.html#compare">compare</a></li><li data-type='method'><a href="Monster.Util.Comparator.html#equal">equal</a></li><li data-type='method'><a href="Monster.Util.Comparator.html#greaterThan">greaterThan</a></li><li data-type='method'><a href="Monster.Util.Comparator.html#greaterThanOrEqual">greaterThanOrEqual</a></li><li data-type='method'><a href="Monster.Util.Comparator.html#lessThan">lessThan</a></li><li data-type='method'><a href="Monster.Util.Comparator.html#lessThanOrEqual">lessThanOrEqual</a></li><li data-type='method'><a href="Monster.Util.Comparator.html#reverse">reverse</a></li></ul></li><li class="accordion collapsed child" id=5521832><div class="accordion-heading child"><a href="Monster.Util.Processing.html">Processing</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Util.Processing.html#add">add</a></li><li data-type='method'><a href="Monster.Util.Processing.html#run">run</a></li></ul></li></ul> </div><div class="accordion collapsed" id="6036505" > <h3 class="accordion-heading">Externals<svg><use xlink:href="#down-icon"></use></svg></h3><ul class="accordion-content"><li class="accordion-list" id=""><a href="external-HTMLElement.html">HTMLElement</a></li></ul> </div><div class="accordion collapsed" id="1156494" > <h3 class="accordion-heading">Namespaces<svg><use xlink:href="#down-icon"></use></svg></h3><ul class="accordion-content"><li class="accordion collapsed child" id=1174480><div class="accordion-heading child"><a href="global.html#Monster">Monster</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="global.html#Monster#.assignToNamespace">assignToNamespace</a></li><li data-type='method'><a href="global.html#Monster#.getVersion">getVersion</a></li></ul></li><li class="accordion-list" id=""><a href="Monster.Constraints.html">Constraints</a></li><li class="accordion collapsed child" id=5988849><div class="accordion-heading child"><a href="Monster.Data.html">Data</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Data.html#.buildMap">buildMap</a></li><li data-type='method'><a href="Monster.Data.html#.Diff">Diff</a></li><li data-type='method'><a href="Monster.Data.html#.extend">extend</a></li></ul></li><li class="accordion collapsed child" id=1159806><div class="accordion-heading child"><a href="Monster.DOM.html">DOM</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.DOM.html#.addAttributeToken">addAttributeToken</a></li><li data-type='method'><a href="Monster.DOM.html#.addToObjectLink">addToObjectLink</a></li><li data-type='method'><a href="Monster.DOM.html#.clearAttributeTokens">clearAttributeTokens</a></li><li data-type='method'><a href="Monster.DOM.html#.containsAttributeToken">containsAttributeToken</a></li><li data-type='method'><a href="Monster.DOM.html#.findClosestByAttribute">findClosestByAttribute</a></li><li data-type='method'><a href="Monster.DOM.html#.findClosestObjectLink">findClosestObjectLink</a></li><li data-type='method'><a href="Monster.DOM.html#.findDocumentTemplate">findDocumentTemplate</a></li><li data-type='method'><a href="Monster.DOM.html#.findTargetElementFromEvent">findTargetElementFromEvent</a></li><li data-type='method'><a href="Monster.DOM.html#.fireEvent">fireEvent</a></li><li data-type='method'><a href="Monster.DOM.html#.getDocument">getDocument</a></li><li data-type='method'><a href="Monster.DOM.html#.getDocumentFragmentFromString">getDocumentFragmentFromString</a></li><li data-type='method'><a href="Monster.DOM.html#.getDocumentTheme">getDocumentTheme</a></li><li data-type='method'><a href="Monster.DOM.html#.getLinkedObjects">getLinkedObjects</a></li><li data-type='method'><a href="Monster.DOM.html#.getLocaleOfDocument">getLocaleOfDocument</a></li><li data-type='method'><a href="Monster.DOM.html#.getWindow">getWindow</a></li><li data-type='method'><a href="Monster.DOM.html#.hasObjectLink">hasObjectLink</a></li><li data-type='method'><a href="Monster.DOM.html#.registerCustomElement">registerCustomElement</a></li><li data-type='method'><a href="Monster.DOM.html#.removeAttributeToken">removeAttributeToken</a></li><li data-type='method'><a href="Monster.DOM.html#.removeObjectLink">removeObjectLink</a></li><li data-type='method'><a href="Monster.DOM.html#.replaceAttributeToken">replaceAttributeToken</a></li><li data-type='method'><a href="Monster.DOM.html#.toggleAttributeToken">toggleAttributeToken</a></li></ul></li><li class="accordion collapsed child" id=4539729><div class="accordion-heading child"><a href="Monster.I18n.html">I18n</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.I18n.html#.parseLocale">parseLocale</a></li></ul></li><li class="accordion-list" id=""><a href="Monster.I18n.Providers.html">Providers</a></li><li class="accordion-list" id=""><a href="Monster.Logging.html">Logging</a></li><li class="accordion collapsed child" id=2151408><div class="accordion-heading child"><a href="Monster.Math.html">Math</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Math.html#.random">random</a></li></ul></li><li class="accordion-list" id=""><a href="Monster.Text.html">Text</a></li><li class="accordion collapsed child" id=8521403><div class="accordion-heading child"><a href="Monster.Types.html">Types</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Types.html#.fromBinary">fromBinary</a></li><li data-type='method'><a href="Monster.Types.html#.getGlobal">getGlobal</a></li><li data-type='method'><a href="Monster.Types.html#.getGlobalFunction">getGlobalFunction</a></li><li data-type='method'><a href="Monster.Types.html#.getGlobalObject">getGlobalObject</a></li><li data-type='method'><a href="Monster.Types.html#.isArray">isArray</a></li><li data-type='method'><a href="Monster.Types.html#.isBoolean">isBoolean</a></li><li data-type='method'><a href="Monster.Types.html#.isFunction">isFunction</a></li><li data-type='method'><a href="Monster.Types.html#.isInstance">isInstance</a></li><li data-type='method'><a href="Monster.Types.html#.isInteger">isInteger</a></li><li data-type='method'><a href="Monster.Types.html#.isIterable">isIterable</a></li><li data-type='method'><a href="Monster.Types.html#.isObject">isObject</a></li><li data-type='method'><a href="Monster.Types.html#.isPrimitive">isPrimitive</a></li><li data-type='method'><a href="Monster.Types.html#.isString">isString</a></li><li data-type='method'><a href="Monster.Types.html#.isSymbol">isSymbol</a></li><li data-type='method'><a href="Monster.Types.html#.parseDataURL">parseDataURL</a></li><li data-type='method'><a href="Monster.Types.html#.parseMediaType">parseMediaType</a></li><li data-type='method'><a href="Monster.Types.html#.toBinary">toBinary</a></li><li data-type='method'><a href="Monster.Types.html#.typeOf">typeOf</a></li><li data-type='method'><a href="Monster.Types.html#.validateArray">validateArray</a></li><li data-type='method'><a href="Monster.Types.html#.validateBoolean">validateBoolean</a></li><li data-type='method'><a href="Monster.Types.html#.validateFunction">validateFunction</a></li><li data-type='method'><a href="Monster.Types.html#.validateInstance">validateInstance</a></li><li data-type='method'><a href="Monster.Types.html#.validateInteger">validateInteger</a></li><li data-type='method'><a href="Monster.Types.html#.validateIterable">validateIterable</a></li><li data-type='method'><a href="Monster.Types.html#.validateObject">validateObject</a></li><li data-type='method'><a href="Monster.Types.html#.validatePrimitive">validatePrimitive</a></li><li data-type='method'><a href="Monster.Types.html#.validateString">validateString</a></li><li data-type='method'><a href="Monster.Types.html#.validateSymbol">validateSymbol</a></li></ul></li><li class="accordion collapsed child" id=4587784><div class="accordion-heading child"><a href="Monster.Util.html">Util</a><svg><use xlink:href="#down-icon"></use></svg></div><ul class='methods accordion-content'><li data-type='method'><a href="Monster.Util.html#.clone">clone</a></li><li data-type='method'><a href="Monster.Util.html#.deepFreeze">deepFreeze</a></li></ul></li></ul> </div></div>
      
        <div class="navbar-resize" id="navbar-resize">
          <div class="resize-dots-container">
            <div class="dots"></div>
            <div class="dots"></div>
            <div class="dots"></div>
          </div> 
        </div>
      

    </nav>
    <div class="navbar-ham" id="navbar-ham">
      <div>
        <div class="first"></div>
        <div class="second"></div>
        <div class="third"></div>
      </div>
    </div>

    <div id="main" class="main-content">
      
      <h1 id='page-title' class="page-title">
        I18n
      </h1>
      

      




<section>


<header>
    
        
        <h2>
        
            <span class="ancestors"><a href="global.html#Monster">Monster</a>.</span>
        
        I18n
        
        </h2>
        
        
    
</header>


<article>
    <div class="container-overview">
    
        
            <div class="description"><p>In this namespace you will find classes and methods for handling locale and localized texts.</p></div>
        

        




<dl class="details">

    

    

    

    

    

    

    

    

    
        <div class="details-item-container">
            <dt class="tag-author">Author:</dt>
            <dd class="tag-author">
                <ul>
                    <li>schukai GmbH</li>
                </ul>
            </dd>
        </div>
    

    

    

    

    

    

    

    
</dl>




        
    
    </div>

    

    

    
        <h3 class="subsection-title">Classes</h3>

        <dl>
            <dt><a href="Monster.I18n.Locale.html">Locale</a></dt>
            <dd></dd>
        
            <dt><a href="Monster.I18n.Provider.html">Provider</a></dt>
            <dd></dd>
        
            <dt><a href="Monster.I18n.Translations.html">Translations</a></dt>
            <dd></dd>
        </dl>
    

     

    
        <h3 class="subsection-title">Namespaces</h3>

        <dl>
            <dt><a href="Monster.I18n.Providers.html">Providers</a></dt>
            <dd></dd>
        </dl>
    

    
        <h3 class="subsection-title">Members</h3>

        
            
<h4 class="name" id=".localeStringSymbol">
    <a href="#.localeStringSymbol">#</a>
    <span class="type-signature">(static, constant) </span>localeStringSymbol<span class="type-signature"> :symbol</span>
</h4>






    <div class="member-item-container flex">
        <strong>Type: </strong>
        <ul>
            <li>
                
<span class="param-type">symbol</span>


            </li>
        </ul>
    </div>







<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    
</dl>








        
            
<h4 class="name" id=".propertiesSymbol">
    <a href="#.propertiesSymbol">#</a>
    <span class="type-signature">(static, constant) </span>propertiesSymbol<span class="type-signature"> :symbol</span>
</h4>






    <div class="member-item-container flex">
        <strong>Type: </strong>
        <ul>
            <li>
                
<span class="param-type">symbol</span>


            </li>
        </ul>
    </div>







<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    
</dl>








        
    

    
        <h3 class="subsection-title">Methods</h3>

        
            

    

    <h4 class="name" id=".parseLocale">
        <a href="#.parseLocale">#</a>
        <span class="type-signature">(static) </span>parseLocale<span class="signature">(locale)</span><span class="type-signature"> &rarr; {Locale}</span>
    </h4>

    



    <div class="description">
        <p>Parse local according to rfc4646 standard</p>
<p>Limitations: The regex cannot handle multiple variants or private.</p>
<p>You can call the method via the monster namespace <code>Monster.I18n.createLocale()</code>.</p>
<pre class="prettyprint source"><code>&lt;script type=&quot;module&quot;>
import {Monster} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.21.0/dist/modules/i18n/locale.js';
console.log(new Monster.I18n.createLocale())
&lt;/script>
</code></pre>
<p>Alternatively, you can also integrate this function individually.</p>
<pre class="prettyprint source"><code>&lt;script type=&quot;module&quot;>
import {createLocale} from 'https://cdn.jsdelivr.net/npm/@schukai/monster@1.21.0/dist/modules/i18n/locale.js';
console.log(createLocale())
&lt;/script>
</code></pre>
<p>RFC</p>
<pre class="prettyprint source"><code>  The syntax of the language tag in ABNF [RFC4234] is:

  Language-Tag  = langtag
                / privateuse             ; private use tag
                / grandfathered          ; grandfathered registrations

  langtag       = (language
                   [&quot;-&quot; script]
                   [&quot;-&quot; region]
                   *(&quot;-&quot; variant)
                   *(&quot;-&quot; extension)
                   [&quot;-&quot; privateuse])

  language      = (2*3ALPHA [ extlang ]) ; shortest ISO 639 code
                / 4ALPHA                 ; reserved for future use
                / 5*8ALPHA               ; registered language subtag

  extlang       = *3(&quot;-&quot; 3ALPHA)         ; reserved for future use

  script        = 4ALPHA                 ; ISO 15924 code

  region        = 2ALPHA                 ; ISO 3166 code
                / 3DIGIT                 ; UN M.49 code

  variant       = 5*8alphanum            ; registered variants
                / (DIGIT 3alphanum)

  extension     = singleton 1*(&quot;-&quot; (2*8alphanum))

  singleton     = %x41-57 / %x59-5A / %x61-77 / %x79-7A / DIGIT
                ; &quot;a&quot;-&quot;w&quot; / &quot;y&quot;-&quot;z&quot; / &quot;A&quot;-&quot;W&quot; / &quot;Y&quot;-&quot;Z&quot; / &quot;0&quot;-&quot;9&quot;
                ; Single letters: x/X is reserved for private use

  privateuse    = (&quot;x&quot;/&quot;X&quot;) 1*(&quot;-&quot; (1*8alphanum))

  grandfathered = 1*3ALPHA 1*2(&quot;-&quot; (2*8alphanum))
                  ; grandfathered registration
                  ; Note: i is the only singleton
                  ; that starts a grandfathered tag

  alphanum      = (ALPHA / DIGIT)       ; letters and numbers

                       Figure 1: Language Tag ABNF
</code></pre>
    </div>









    <div class="method-member-container flex flex-col w-100 overflow-auto mt-20">
        <strong>Parameters:</strong>
        

<table class="params">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>locale</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

    
    </tbody>
</table>

    </div>







<dl class="details">

    

    
        <div class="details-item-container">
            <dt class="tag-since">Since:</dt>
            <dd class="tag-since"><ul class="dummy"><li>1.14.0</li></ul></dd>
        </div>
    

    

    

    

    

    

    

    

    
        <div class="details-item-container">
            <dt class="tag-copyright">Copyright:</dt>
            <dd class="tag-copyright"><ul class="dummy"><li>schukai GmbH</li></ul></dd>
        </div>
    

    

    

    

    

    

    
</dl>













    <div class="method-member-container mt-20">
    <strong>Throws:</strong>
    
        <ul>
            
                <li>

<dl>
    <dt>
        <div class="param-desc">
        <p>value is not a string</p>
        </div>
    </dt>
    <dd></dd>
    <dt>
        <dl>
            <dt>
                Type
            </dt>
            <dd>
                
<span class="param-type">TypeError</span>


            </dd>
        </dl>
    </dt>
    <dd></dd>
</dl>

</li>
            
                <li>

<dl>
    <dt>
        <div class="param-desc">
        <p>unsupported locale</p>
        </div>
    </dt>
    <dd></dd>
    <dt>
        <dl>
            <dt>
                Type
            </dt>
            <dd>
                
<span class="param-type">Error</span>


            </dd>
        </dl>
    </dt>
    <dd></dd>
</dl>

</li>
            
        </ul>
    
    </div>



    <div class="method-member-container mt-20">
    <strong>Returns:</strong>
        
            


<dl class="param-type">
    <dt>
        Type
    </dt>
    <dd>
        
<span class="param-type">Locale</span>


    </dd>
</dl>

            
    </div>




        
    

    
        <h3 class="subsection-title">Type Definitions</h3>

        
                
<h4 class="name" id=".LocaleMap">
    <a href="#.LocaleMap">#</a>
    LocaleMap
</h4>






    <div class="member-item-container flex">
        <strong>Type: </strong>
        <ul>
            <li>
                
<span class="param-type">Object</span>


            </li>
        </ul>
    </div>






    <h5 class="subsection-title">Properties</h5>

    
<div class="allow-overflow">
<table class="props">
    <thead>
    <tr>
        
        <th>Name</th>
        

        <th>Type</th>

        

        

        <th class="last">Description</th>
    </tr>
    </thead>

    <tbody>
    

        <tr>
            
                <td class="name"><code>language</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>script</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>region</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>variants</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>extlang</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

    

        <tr>
            
                <td class="name"><code>privateUse</code></td>
            

            <td class="type">
            
                
<span class="param-type">string</span>


            
            </td>

            

            

            <td class="description last"></td>
        </tr>

    
    </tbody>
</table>
</div>





<dl class="details">

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    

    
</dl>








            
    

    
</article>

</section>




    </div>

    <footer class="footer" id="footer">
      <a href='https://about.schukai.com/de/impressum/'>Imprint</a>
    </footer>

    <script src="scripts/third-party/prettify.js"></script>
    <script src="scripts/third-party/lang-css.js"></script>
    <script type="text/javascript" src="scripts/misc.js"></script>

    <script>prettyPrint();</script>
    <script src="scripts/linenumber.js"></script>
    <script src="scripts/fix-code-block.js"></script>
    <script src="scripts/fix-navbar.js"></script>
    

    

    
      <script src="scripts/resize.js"></script>
      <script type="text/javascript">
        var option = {"min":"300","max":"600"}
        setupResizeOptions(option)
      </script>
    

    

    
    <script type="text/javascript">
    var option = JSON.parse('{"options":{}}')
      console.log(option)
      document.addEventListener("DOMContentLoaded", function () {
        OverlayScrollbars(document.querySelectorAll('body'), option.option || {});
      });
    </script>
    


  </body>

</html>