docs: update js api docs
authorJo-Philipp Wich <jo@mein.io>
Thu, 16 Apr 2020 11:26:27 +0000 (13:26 +0200)
committerJo-Philipp Wich <jo@mein.io>
Thu, 16 Apr 2020 11:30:48 +0000 (13:30 +0200)
Signed-off-by: Jo-Philipp Wich <jo@mein.io>
62 files changed:
docs/jsapi/LuCI.baseclass.html
docs/jsapi/LuCI.dom.html
docs/jsapi/LuCI.form.AbstractElement.html
docs/jsapi/LuCI.form.AbstractSection.html
docs/jsapi/LuCI.form.AbstractValue.html
docs/jsapi/LuCI.form.ButtonValue.html
docs/jsapi/LuCI.form.DummyValue.html
docs/jsapi/LuCI.form.DynamicList.html
docs/jsapi/LuCI.form.FileUpload.html
docs/jsapi/LuCI.form.FlagValue.html
docs/jsapi/LuCI.form.GridSection.html
docs/jsapi/LuCI.form.HiddenValue.html
docs/jsapi/LuCI.form.JSONMap.html
docs/jsapi/LuCI.form.ListValue.html
docs/jsapi/LuCI.form.Map.html
docs/jsapi/LuCI.form.MultiValue.html
docs/jsapi/LuCI.form.NamedSection.html
docs/jsapi/LuCI.form.SectionValue.html
docs/jsapi/LuCI.form.TableSection.html
docs/jsapi/LuCI.form.TextValue.html
docs/jsapi/LuCI.form.TypedSection.html
docs/jsapi/LuCI.form.Value.html
docs/jsapi/LuCI.form.html
docs/jsapi/LuCI.fs.html
docs/jsapi/LuCI.headers.html
docs/jsapi/LuCI.html
docs/jsapi/LuCI.network.Device.html
docs/jsapi/LuCI.network.Hosts.html
docs/jsapi/LuCI.network.Protocol.html
docs/jsapi/LuCI.network.WifiDevice.html
docs/jsapi/LuCI.network.WifiNetwork.html
docs/jsapi/LuCI.network.html
docs/jsapi/LuCI.poll.html
docs/jsapi/LuCI.request.html
docs/jsapi/LuCI.request.poll.html
docs/jsapi/LuCI.response.html
docs/jsapi/LuCI.rpc.html
docs/jsapi/LuCI.uci.html
docs/jsapi/LuCI.ui.AbstractElement.html
docs/jsapi/LuCI.ui.Checkbox.html
docs/jsapi/LuCI.ui.ComboButton.html
docs/jsapi/LuCI.ui.Combobox.html
docs/jsapi/LuCI.ui.Dropdown.html
docs/jsapi/LuCI.ui.DynamicList.html
docs/jsapi/LuCI.ui.FileUpload.html
docs/jsapi/LuCI.ui.Hiddenfield.html
docs/jsapi/LuCI.ui.Select.html
docs/jsapi/LuCI.ui.Textarea.html
docs/jsapi/LuCI.ui.Textfield.html
docs/jsapi/LuCI.ui.changes.html
docs/jsapi/LuCI.ui.html
docs/jsapi/LuCI.ui.tabs.html
docs/jsapi/LuCI.view.html
docs/jsapi/LuCI.xhr.html
docs/jsapi/form.js.html
docs/jsapi/fs.js.html
docs/jsapi/index.html
docs/jsapi/luci.js.html
docs/jsapi/network.js.html
docs/jsapi/rpc.js.html
docs/jsapi/uci.js.html
docs/jsapi/ui.js.html

index 88d5230950ca61dccdf4a112819531a6fc35839c..f5da82c7ece16f6b303c9a65cfc7f5bc22dea7e7 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3244,7 +3342,7 @@ implements prototypal inheritance.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line59">line 59</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line61">line 61</a>
         </div>
         
     </div>
@@ -3329,7 +3427,7 @@ implements prototypal inheritance.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line87">line 87</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line89">line 89</a>
         </div>
         
     </div>
@@ -3479,7 +3577,7 @@ class constructor and can be instantiated with <code>new</code>.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line170">line 170</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line172">line 172</a>
         </div>
         
     </div>
@@ -3666,7 +3764,7 @@ enable inheritance.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line196">line 196</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line198">line 198</a>
         </div>
         
     </div>
@@ -3813,7 +3911,7 @@ a subclass of this class'.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line146">line 146</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line148">line 148</a>
         </div>
         
     </div>
@@ -4005,7 +4103,7 @@ enable inheritance.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line268">line 268</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line270">line 270</a>
         </div>
         
     </div>
@@ -4235,7 +4333,7 @@ superclass method returned <code>null</code>.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line226">line 226</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line228">line 228</a>
         </div>
         
     </div>
@@ -4458,7 +4556,7 @@ and the values extracted from the <code>args</code> array beginning with
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 529803ef67a0e172abe87a77cf51270eecdc7a64..4bca2bf45075a3b78e7b603374d59e1fad98ce31 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3245,7 +3343,7 @@ external JavaScript, use <code>L.require(&quot;dom&quot;).then(...)</code>.</p><
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1202">line 1202</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1204">line 1204</a>
         </div>
         
     </div>
@@ -3330,7 +3428,7 @@ external JavaScript, use <code>L.require(&quot;dom&quot;).then(...)</code>.</p><
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1365">line 1365</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1367">line 1367</a>
         </div>
         
     </div>
@@ -3531,7 +3629,7 @@ if either the <code>node</code> argument was no valid DOM <code>node</code> or i
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1480">line 1480</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1482">line 1482</a>
         </div>
         
     </div>
@@ -3729,7 +3827,7 @@ call implicitely turning it into a string.</p></td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1717">line 1717</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1719">line 1719</a>
         </div>
         
     </div>
@@ -3930,7 +4028,7 @@ a valid Class instance.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1771">line 1771</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1773">line 1773</a>
         </div>
         
     </div>
@@ -4146,7 +4244,7 @@ instance didn't have the requested <code>method</code>.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1432">line 1432</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1434">line 1434</a>
         </div>
         
     </div>
@@ -4350,7 +4448,7 @@ if either the <code>node</code> argument was no valid DOM <code>node</code> or i
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1558">line 1558</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1560">line 1560</a>
         </div>
         
     </div>
@@ -4610,7 +4708,7 @@ element names, such as spaces.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1634">line 1634</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1636">line 1636</a>
         </div>
         
     </div>
@@ -4849,7 +4947,7 @@ be found.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1228">line 1228</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1230">line 1230</a>
         </div>
         
     </div>
@@ -4994,7 +5092,7 @@ be found.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1737">line 1737</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1739">line 1739</a>
         </div>
         
     </div>
@@ -5144,7 +5242,7 @@ class could be found on the node itself or any of its parents.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1817">line 1817</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1819">line 1819</a>
         </div>
         
     </div>
@@ -5331,7 +5429,7 @@ result when testing it using the given <code>ignoreFn</code>.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1289">line 1289</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1291">line 1291</a>
         </div>
         
     </div>
@@ -5517,7 +5615,7 @@ selector didn't match.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1316">line 1316</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1318">line 1318</a>
         </div>
         
     </div>
@@ -5707,7 +5805,7 @@ selector didn't match any parent.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1247">line 1247</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1249">line 1249</a>
         </div>
         
     </div>
@@ -5862,7 +5960,7 @@ the first <code>div</code> element node.</p></td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1780">line 1780</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1782">line 1782</a>
         </div>
         
     </div>
@@ -6016,7 +6114,7 @@ ignored, else not.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 768e83a4337a089591cc94d52a133e37b622909e..b64c50f2d56acff9b31c3c688d3d85711679840c 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3246,7 +3344,7 @@ properties.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line176">line 176</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line184">line 184</a>
         </div>
         
     </div>
@@ -3331,7 +3429,7 @@ properties.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -3447,7 +3545,7 @@ properties.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line220">line 220</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line228">line 228</a>
         </div>
         
     </div>
@@ -3553,7 +3651,7 @@ respective elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line238">line 238</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line246">line 246</a>
         </div>
         
     </div>
@@ -3659,7 +3757,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -3804,7 +3902,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -4005,7 +4103,7 @@ was neither a string nor a function.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index e59244a1f62c21fa4d230fab3f8461943c8e23ea..57cafe93127c9e163c23315206d250d3b9f51e66 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3246,7 +3344,7 @@ form options and for handling tabs to segment child options.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line767">line 767</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line805">line 805</a>
         </div>
         
     </div>
@@ -3391,7 +3489,7 @@ this property will hold a reference to the parent option instance.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -3507,7 +3605,7 @@ this property will hold a reference to the parent option instance.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line818">line 818</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line856">line 856</a>
         </div>
         
     </div>
@@ -3635,7 +3733,7 @@ The sections will be rendered in the same order as the returned array.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line841">line 841</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line879">line 879</a>
         </div>
         
     </div>
@@ -3787,7 +3885,7 @@ custom implementations.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line856">line 856</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line894">line 894</a>
         </div>
         
     </div>
@@ -3891,7 +3989,7 @@ elements load functions rejected with an error.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line969">line 969</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1007">line 1007</a>
         </div>
         
     </div>
@@ -4106,7 +4204,7 @@ descendent of <code>AbstractValue</code>.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line885">line 885</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line923">line 923</a>
         </div>
         
     </div>
@@ -4214,7 +4312,7 @@ not meeting the validation constraints of their respective elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line238">line 238</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line246">line 246</a>
         </div>
         
     </div>
@@ -4322,7 +4420,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -4467,7 +4565,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line926">line 926</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line964">line 964</a>
         </div>
         
     </div>
@@ -4684,7 +4782,7 @@ contents. If omitted, no description will be rendered.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1006">line 1006</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1044">line 1044</a>
         </div>
         
     </div>
@@ -4953,7 +5051,7 @@ descendent of <code>AbstractValue</code>.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -5154,7 +5252,7 @@ was neither a string nor a function.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 73a47e396b27c07c46628fe19f9df074bf2e228b..008c57ba78581ddbcd43a73c57069cd0eec54b19 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3246,7 +3344,7 @@ validation constraints that should be applied to entered values.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1145">line 1145</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1183">line 1183</a>
         </div>
         
     </div>
@@ -3568,6 +3666,58 @@ or selected by the user.</p>
     
     
     
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
     <dt class="tag-default">Default Value:</dt>
     <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
     
@@ -3913,7 +4063,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4029,7 +4179,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4205,7 +4355,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1599">line 1599</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1650">line 1650</a>
         </div>
         
     </div>
@@ -4381,7 +4531,7 @@ different way.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -4593,7 +4743,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1678">line 1678</a>
         </div>
         
     </div>
@@ -4768,7 +4918,7 @@ It may be overwritten by user code to handle input values differently.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -4944,7 +5094,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5092,7 +5242,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5238,7 +5388,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1553">line 1553</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1604">line 1604</a>
         </div>
         
     </div>
@@ -5419,7 +5569,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1752">line 1752</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1803">line 1803</a>
         </div>
         
     </div>
@@ -5568,7 +5718,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1820">line 1820</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1873">line 1873</a>
         </div>
         
     </div>
@@ -5693,7 +5843,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line238">line 238</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line246">line 246</a>
         </div>
         
     </div>
@@ -5801,7 +5951,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -5946,7 +6096,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1651">line 1651</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1702">line 1702</a>
         </div>
         
     </div>
@@ -6126,7 +6276,7 @@ state of checkbox elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6319,7 +6469,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1683">line 1683</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1734">line 1734</a>
         </div>
         
     </div>
@@ -6495,7 +6645,7 @@ as error message to the user.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1797">line 1797</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1850">line 1850</a>
         </div>
         
     </div>
@@ -6654,7 +6804,7 @@ before it is written.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 247ea5d4e061d47dacad2024386715bfd9fb6e86..b8e5200c468ecab935e369746ec16961461a257e 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3243,7 +3341,7 @@ renders the underlying UCI option or default value as readonly text.</p></div>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3637">line 3637</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3709">line 3709</a>
         </div>
         
     </div>
@@ -4010,6 +4108,58 @@ as plain text input.</p>
     
     
     
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
 </dl>
 
     
@@ -4346,7 +4496,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4464,7 +4614,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4642,7 +4792,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1599">line 1599</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1650">line 1650</a>
         </div>
         
     </div>
@@ -4820,7 +4970,7 @@ different way.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -5034,7 +5184,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1678">line 1678</a>
         </div>
         
     </div>
@@ -5211,7 +5361,7 @@ It may be overwritten by user code to handle input values differently.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -5389,7 +5539,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5539,7 +5689,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5687,7 +5837,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1553">line 1553</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1604">line 1604</a>
         </div>
         
     </div>
@@ -5870,7 +6020,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1752">line 1752</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1803">line 1803</a>
         </div>
         
     </div>
@@ -6021,7 +6171,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1820">line 1820</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1873">line 1873</a>
         </div>
         
     </div>
@@ -6146,7 +6296,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -6293,7 +6443,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1651">line 1651</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1702">line 1702</a>
         </div>
         
     </div>
@@ -6473,7 +6623,7 @@ state of checkbox elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6668,7 +6818,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3021">line 3021</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3084">line 3084</a>
         </div>
         
     </div>
@@ -6816,7 +6966,7 @@ or a plain text string. If omitted, the <code>key</code> value is used as captio
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1797">line 1797</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1850">line 1850</a>
         </div>
         
     </div>
@@ -6975,7 +7125,7 @@ before it is written.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index a0632ae7e53f371f705bba0f766fcf2f9afbd5c1..4fb2525cae1d327444775901a49d1c5d87f73385 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3243,7 +3341,7 @@ renders the underlying UCI option or default value as readonly text.</p></div>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3555">line 3555</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3627">line 3627</a>
         </div>
         
     </div>
@@ -3947,6 +4045,58 @@ as plain text input.</p>
     
     
     
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
 </dl>
 
     
@@ -4283,7 +4433,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4401,7 +4551,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4579,7 +4729,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1599">line 1599</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1650">line 1650</a>
         </div>
         
     </div>
@@ -4757,7 +4907,7 @@ different way.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -4971,7 +5121,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1678">line 1678</a>
         </div>
         
     </div>
@@ -5148,7 +5298,7 @@ It may be overwritten by user code to handle input values differently.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -5326,7 +5476,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5476,7 +5626,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5624,7 +5774,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1553">line 1553</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1604">line 1604</a>
         </div>
         
     </div>
@@ -5807,7 +5957,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1752">line 1752</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1803">line 1803</a>
         </div>
         
     </div>
@@ -5958,7 +6108,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3631">line 3631</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3703">line 3703</a>
         </div>
         
     </div>
@@ -6083,7 +6233,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -6230,7 +6380,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1651">line 1651</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1702">line 1702</a>
         </div>
         
     </div>
@@ -6410,7 +6560,7 @@ state of checkbox elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6605,7 +6755,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3021">line 3021</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3084">line 3084</a>
         </div>
         
     </div>
@@ -6753,7 +6903,7 @@ or a plain text string. If omitted, the <code>key</code> value is used as captio
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3634">line 3634</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3706">line 3706</a>
         </div>
         
     </div>
@@ -6912,7 +7062,7 @@ before it is written.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 424f37b0e5976a79271ca71e5da85b1f87e9c10a..cf8a995c743120bec8d8c428e74ed14b937ac4b9 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3244,7 +3342,7 @@ predefined choices. It builds upon the <a href="LuCI.ui.DynamicList.html"><code>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3147">line 3147</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3212">line 3212</a>
         </div>
         
     </div>
@@ -3847,6 +3945,58 @@ as plain text input.</p>
     
     
     
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
 </dl>
 
     
@@ -4183,7 +4333,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4301,7 +4451,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4479,7 +4629,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1599">line 1599</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1650">line 1650</a>
         </div>
         
     </div>
@@ -4657,7 +4807,7 @@ different way.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -4871,7 +5021,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1678">line 1678</a>
         </div>
         
     </div>
@@ -5048,7 +5198,7 @@ It may be overwritten by user code to handle input values differently.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -5226,7 +5376,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5376,7 +5526,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5524,7 +5674,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1553">line 1553</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1604">line 1604</a>
         </div>
         
     </div>
@@ -5707,7 +5857,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1752">line 1752</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1803">line 1803</a>
         </div>
         
     </div>
@@ -5858,7 +6008,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1820">line 1820</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1873">line 1873</a>
         </div>
         
     </div>
@@ -5983,7 +6133,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -6130,7 +6280,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1651">line 1651</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1702">line 1702</a>
         </div>
         
     </div>
@@ -6310,7 +6460,7 @@ state of checkbox elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6505,7 +6655,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3021">line 3021</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3084">line 3084</a>
         </div>
         
     </div>
@@ -6653,7 +6803,7 @@ or a plain text string. If omitted, the <code>key</code> value is used as captio
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1797">line 1797</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1850">line 1850</a>
         </div>
         
     </div>
@@ -6812,7 +6962,7 @@ before it is written.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index cc10b43b343302af58df6968d820ccb2bec411b5..add63f061deaa72c615a5a9970964a593ce02410 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3243,7 +3341,7 @@ offers the ability to browse, upload and select remote files.</p></div>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3803">line 3803</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3876">line 3876</a>
         </div>
         
     </div>
@@ -4058,6 +4156,58 @@ as plain text input.</p>
     
     
     
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
 </dl>
 
     
@@ -4394,7 +4544,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4512,7 +4662,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4690,7 +4840,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1599">line 1599</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1650">line 1650</a>
         </div>
         
     </div>
@@ -4868,7 +5018,7 @@ different way.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -5082,7 +5232,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1678">line 1678</a>
         </div>
         
     </div>
@@ -5259,7 +5409,7 @@ It may be overwritten by user code to handle input values differently.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -5437,7 +5587,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5587,7 +5737,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5735,7 +5885,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1553">line 1553</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1604">line 1604</a>
         </div>
         
     </div>
@@ -5918,7 +6068,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1752">line 1752</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1803">line 1803</a>
         </div>
         
     </div>
@@ -6069,7 +6219,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1820">line 1820</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1873">line 1873</a>
         </div>
         
     </div>
@@ -6194,7 +6344,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -6341,7 +6491,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1651">line 1651</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1702">line 1702</a>
         </div>
         
     </div>
@@ -6521,7 +6671,7 @@ state of checkbox elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6716,7 +6866,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3021">line 3021</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3084">line 3084</a>
         </div>
         
     </div>
@@ -6864,7 +7014,7 @@ or a plain text string. If omitted, the <code>key</code> value is used as captio
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1797">line 1797</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1850">line 1850</a>
         </div>
         
     </div>
@@ -7023,7 +7173,7 @@ before it is written.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index adb3f398fb68f48226cfda40ab9ebd208bc95ec4..81161c587d1bc91d900b36850bd03359da73d714 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3243,7 +3341,7 @@ implement a simple checkbox element.</p></div>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3266">line 3266</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3333">line 3333</a>
         </div>
         
     </div>
@@ -3942,6 +4040,58 @@ as plain text input.</p>
     
     
     
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
 </dl>
 
     
@@ -4278,7 +4428,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4396,7 +4546,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4574,7 +4724,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1599">line 1599</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1650">line 1650</a>
         </div>
         
     </div>
@@ -4752,7 +4902,7 @@ different way.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -4966,7 +5116,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3343">line 3343</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3411">line 3411</a>
         </div>
         
     </div>
@@ -5142,7 +5292,7 @@ the checked state.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -5320,7 +5470,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5470,7 +5620,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5618,7 +5768,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1553">line 1553</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1604">line 1604</a>
         </div>
         
     </div>
@@ -5801,7 +5951,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3365">line 3365</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3433">line 3433</a>
         </div>
         
     </div>
@@ -5952,7 +6102,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1820">line 1820</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1873">line 1873</a>
         </div>
         
     </div>
@@ -6077,7 +6227,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -6224,7 +6374,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3355">line 3355</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3423">line 3423</a>
         </div>
         
     </div>
@@ -6399,7 +6549,7 @@ either a localized <code>Yes</code> or <code>No</code> string, depending on the
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6594,7 +6744,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3021">line 3021</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3084">line 3084</a>
         </div>
         
     </div>
@@ -6742,7 +6892,7 @@ or a plain text string. If omitted, the <code>key</code> value is used as captio
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1797">line 1797</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1850">line 1850</a>
         </div>
         
     </div>
@@ -6901,7 +7051,7 @@ before it is written.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 97402ecd9ef28c71f54f46ce57604c8a524158ca..22605f931a7b6c1dffb260ea013993737ff31ff4 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3256,7 +3354,7 @@ documentation for details.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2641">line 2641</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2702">line 2702</a>
         </div>
         
     </div>
@@ -4117,7 +4215,7 @@ The default is <code>null</code>, means inheriting from the parent form.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2573">line 2573</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2632">line 2632</a>
         </div>
         
     </div>
@@ -4320,7 +4418,7 @@ is shown.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4438,7 +4536,7 @@ is shown.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line841">line 841</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line879">line 879</a>
         </div>
         
     </div>
@@ -4592,7 +4690,7 @@ custom implementations.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line856">line 856</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line894">line 894</a>
         </div>
         
     </div>
@@ -4698,7 +4796,7 @@ elements load functions rejected with an error.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line969">line 969</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1007">line 1007</a>
         </div>
         
     </div>
@@ -4915,7 +5013,7 @@ descendent of <code>AbstractValue</code>.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2789">line 2789</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2850">line 2850</a>
         </div>
         
     </div>
@@ -5023,7 +5121,7 @@ not meeting the validation constraints of their respective elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -5168,7 +5266,7 @@ not meeting the validation constraints of their respective elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2710">line 2710</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2771">line 2771</a>
         </div>
         
     </div>
@@ -5386,7 +5484,7 @@ contents. If omitted, no description will be rendered.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1006">line 1006</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1044">line 1044</a>
         </div>
         
     </div>
@@ -5655,7 +5753,7 @@ descendent of <code>AbstractValue</code>.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -5856,7 +5954,7 @@ was neither a string nor a function.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index e44d2508eda23893fbd0d146eced12f27b88792f..33c3c6a48d9ef7a5342c35e988d96f24a239bc13 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3248,7 +3346,7 @@ distorted form layout when rendering the option element.</p></div>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3752">line 3752</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3825">line 3825</a>
         </div>
         
     </div>
@@ -3851,6 +3949,58 @@ as plain text input.</p>
     
     
     
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
 </dl>
 
     
@@ -4187,7 +4337,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4305,7 +4455,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4483,7 +4633,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1599">line 1599</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1650">line 1650</a>
         </div>
         
     </div>
@@ -4661,7 +4811,7 @@ different way.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -4875,7 +5025,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1678">line 1678</a>
         </div>
         
     </div>
@@ -5052,7 +5202,7 @@ It may be overwritten by user code to handle input values differently.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -5230,7 +5380,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5380,7 +5530,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5528,7 +5678,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1553">line 1553</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1604">line 1604</a>
         </div>
         
     </div>
@@ -5711,7 +5861,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1752">line 1752</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1803">line 1803</a>
         </div>
         
     </div>
@@ -5862,7 +6012,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1820">line 1820</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1873">line 1873</a>
         </div>
         
     </div>
@@ -5987,7 +6137,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -6134,7 +6284,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1651">line 1651</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1702">line 1702</a>
         </div>
         
     </div>
@@ -6314,7 +6464,7 @@ state of checkbox elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6509,7 +6659,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3021">line 3021</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3084">line 3084</a>
         </div>
         
     </div>
@@ -6657,7 +6807,7 @@ or a plain text string. If omitted, the <code>key</code> value is used as captio
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1797">line 1797</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1850">line 1850</a>
         </div>
         
     </div>
@@ -6816,7 +6966,7 @@ before it is written.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index da1d72f90a1e21416d6b5f6c5fa6741300706ff9..7947037f50bdab44de84d79227e25b8048c2f190 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3244,7 +3342,7 @@ as data source.</p></div>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line730">line 730</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line768">line 768</a>
         </div>
         
     </div>
@@ -3437,6 +3535,60 @@ If omitted, the corresponding paragraph element will not be rendered.</p></td>
     
     
     
+        <h3 class="subsection-title">Members</h3>
+        
+        <dl>
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Toggle readonly state of the form.</p>
+<p>If set to <code>true</code>, the Map instance is marked readonly and any form
+option elements added to it will inherit the readonly state.</p>
+<p>If left unset, the Map will test the access permission of the primary
+uci configuration upon loading and mark the form readonly if no write
+permissions are granted.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+</dl>
+
+    
+    
+</dd>
+
+        </dl>
+    
     
     
         <h3 class="subsection-title">Methods</h3>
@@ -3454,7 +3606,7 @@ If omitted, the corresponding paragraph element will not be rendered.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -3572,7 +3724,7 @@ If omitted, the corresponding paragraph element will not be rendered.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line457">line 457</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line479">line 479</a>
         </div>
         
     </div>
@@ -3696,7 +3848,7 @@ config already is in the list of required files, it will be ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line439">line 439</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line461">line 461</a>
         </div>
         
     </div>
@@ -3921,7 +4073,7 @@ passed.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line396">line 396</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line418">line 418</a>
         </div>
         
     </div>
@@ -4143,7 +4295,7 @@ passed.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line511">line 511</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line533">line 533</a>
         </div>
         
     </div>
@@ -4251,7 +4403,7 @@ an error.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line661">line 661</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line699">line 699</a>
         </div>
         
     </div>
@@ -4470,7 +4622,7 @@ Returns <code>null</code> if the option could not be found.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line529">line 529</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line560">line 560</a>
         </div>
         
     </div>
@@ -4577,7 +4729,7 @@ not meeting the validation constraints of their respective elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line593">line 593</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line631">line 631</a>
         </div>
         
     </div>
@@ -4680,7 +4832,7 @@ rendering is complete.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line582">line 582</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line620">line 620</a>
         </div>
         
     </div>
@@ -4784,7 +4936,7 @@ re-rendering is complete.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line559">line 559</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line590">line 590</a>
         </div>
         
     </div>
@@ -4987,7 +5139,7 @@ failed.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line489">line 489</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line511">line 511</a>
         </div>
         
     </div>
@@ -5182,7 +5334,7 @@ documentation for details.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -5329,7 +5481,7 @@ documentation for details.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -5530,7 +5682,7 @@ was neither a string nor a function.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index d85af7af436e7604e906baceea735b47d4dc9d55..ae2669ef98eaa79d4df5891699605475ae98eea9 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3244,7 +3342,7 @@ It builds upon the <a href="LuCI.ui.Select.html"><code>LuCI.ui.Select</code></a>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3201">line 3201</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3267">line 3267</a>
         </div>
         
     </div>
@@ -3895,6 +3993,58 @@ as plain text input.</p>
     
     
     
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
 </dl>
 
     
@@ -4231,7 +4381,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4349,7 +4499,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4527,7 +4677,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1599">line 1599</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1650">line 1650</a>
         </div>
         
     </div>
@@ -4705,7 +4855,7 @@ different way.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -4919,7 +5069,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1678">line 1678</a>
         </div>
         
     </div>
@@ -5096,7 +5246,7 @@ It may be overwritten by user code to handle input values differently.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -5274,7 +5424,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5424,7 +5574,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5572,7 +5722,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1553">line 1553</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1604">line 1604</a>
         </div>
         
     </div>
@@ -5755,7 +5905,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1752">line 1752</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1803">line 1803</a>
         </div>
         
     </div>
@@ -5906,7 +6056,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1820">line 1820</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1873">line 1873</a>
         </div>
         
     </div>
@@ -6031,7 +6181,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -6178,7 +6328,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1651">line 1651</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1702">line 1702</a>
         </div>
         
     </div>
@@ -6358,7 +6508,7 @@ state of checkbox elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6553,7 +6703,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3021">line 3021</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3084">line 3084</a>
         </div>
         
     </div>
@@ -6701,7 +6851,7 @@ or a plain text string. If omitted, the <code>key</code> value is used as captio
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1797">line 1797</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1850">line 1850</a>
         </div>
         
     </div>
@@ -6860,7 +7010,7 @@ before it is written.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index ccb94b4549cb1abffe0550f0dc8ebad673872cb8..2f44ad62b55e05b2848726c96f9a5a9e00eca25a 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3245,7 +3343,7 @@ fields each.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line330">line 330</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line338">line 338</a>
         </div>
         
     </div>
@@ -3436,6 +3534,60 @@ If omitted, the corresponding paragraph element will not be rendered.</p></td>
     
     
     
+        <h3 class="subsection-title">Members</h3>
+        
+        <dl>
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Toggle readonly state of the form.</p>
+<p>If set to <code>true</code>, the Map instance is marked readonly and any form
+option elements added to it will inherit the readonly state.</p>
+<p>If left unset, the Map will test the access permission of the primary
+uci configuration upon loading and mark the form readonly if no write
+permissions are granted.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+</dl>
+
+    
+    
+</dd>
+
+        </dl>
+    
     
     
         <h3 class="subsection-title">Methods</h3>
@@ -3453,7 +3605,7 @@ If omitted, the corresponding paragraph element will not be rendered.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -3569,7 +3721,7 @@ If omitted, the corresponding paragraph element will not be rendered.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line457">line 457</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line479">line 479</a>
         </div>
         
     </div>
@@ -3691,7 +3843,7 @@ config already is in the list of required files, it will be ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line439">line 439</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line461">line 461</a>
         </div>
         
     </div>
@@ -3914,7 +4066,7 @@ passed.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line396">line 396</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line418">line 418</a>
         </div>
         
     </div>
@@ -4134,7 +4286,7 @@ passed.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line511">line 511</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line533">line 533</a>
         </div>
         
     </div>
@@ -4240,7 +4392,7 @@ an error.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line661">line 661</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line699">line 699</a>
         </div>
         
     </div>
@@ -4457,7 +4609,7 @@ Returns <code>null</code> if the option could not be found.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line529">line 529</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line560">line 560</a>
         </div>
         
     </div>
@@ -4562,7 +4714,7 @@ not meeting the validation constraints of their respective elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line593">line 593</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line631">line 631</a>
         </div>
         
     </div>
@@ -4663,7 +4815,7 @@ rendering is complete.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line582">line 582</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line620">line 620</a>
         </div>
         
     </div>
@@ -4765,7 +4917,7 @@ re-rendering is complete.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line559">line 559</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line590">line 590</a>
         </div>
         
     </div>
@@ -4966,7 +5118,7 @@ failed.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line489">line 489</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line511">line 511</a>
         </div>
         
     </div>
@@ -5161,7 +5313,7 @@ documentation for details.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -5308,7 +5460,7 @@ documentation for details.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -5509,7 +5661,7 @@ was neither a string nor a function.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 34f63f949e9693f4e7becda27859ae826267455b..d004535f5aac87dc976aadff1489c98a7fc44e8d 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3244,7 +3342,7 @@ select dropdown element.</p></div>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3383">line 3383</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3453">line 3453</a>
         </div>
         
     </div>
@@ -3947,6 +4045,58 @@ as plain text input.</p>
     
     
     
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
 </dl>
 
     
@@ -4283,7 +4433,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4401,7 +4551,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4579,7 +4729,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1599">line 1599</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1650">line 1650</a>
         </div>
         
     </div>
@@ -4757,7 +4907,7 @@ different way.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -4971,7 +5121,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1678">line 1678</a>
         </div>
         
     </div>
@@ -5148,7 +5298,7 @@ It may be overwritten by user code to handle input values differently.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -5326,7 +5476,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5476,7 +5626,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5624,7 +5774,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1553">line 1553</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1604">line 1604</a>
         </div>
         
     </div>
@@ -5807,7 +5957,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1752">line 1752</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1803">line 1803</a>
         </div>
         
     </div>
@@ -5958,7 +6108,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1820">line 1820</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1873">line 1873</a>
         </div>
         
     </div>
@@ -6083,7 +6233,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -6230,7 +6380,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1651">line 1651</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1702">line 1702</a>
         </div>
         
     </div>
@@ -6410,7 +6560,7 @@ state of checkbox elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6605,7 +6755,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3021">line 3021</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3084">line 3084</a>
         </div>
         
     </div>
@@ -6753,7 +6903,7 @@ or a plain text string. If omitted, the <code>key</code> value is used as captio
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1797">line 1797</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1850">line 1850</a>
         </div>
         
     </div>
@@ -6912,7 +7062,7 @@ before it is written.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 6d1b954671edb3c4b401f00f156e1ae36d450293..3643a3745d3208c076c6b42e3961e943a8443c31 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3245,7 +3343,7 @@ specified when constructing the class instance.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2808">line 2808</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2869">line 2869</a>
         </div>
         
     </div>
@@ -3661,7 +3759,7 @@ this property will hold a reference to the parent option instance.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -3777,7 +3875,7 @@ this property will hold a reference to the parent option instance.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2874">line 2874</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2935">line 2935</a>
         </div>
         
     </div>
@@ -3881,7 +3979,7 @@ section ID as sole element. User code should not normally change this.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line841">line 841</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line879">line 879</a>
         </div>
         
     </div>
@@ -4035,7 +4133,7 @@ custom implementations.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line856">line 856</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line894">line 894</a>
         </div>
         
     </div>
@@ -4141,7 +4239,7 @@ elements load functions rejected with an error.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line969">line 969</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1007">line 1007</a>
         </div>
         
     </div>
@@ -4358,7 +4456,7 @@ descendent of <code>AbstractValue</code>.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line885">line 885</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line923">line 923</a>
         </div>
         
     </div>
@@ -4466,7 +4564,7 @@ not meeting the validation constraints of their respective elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2945">line 2945</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3008">line 3008</a>
         </div>
         
     </div>
@@ -4574,7 +4672,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -4721,7 +4819,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line926">line 926</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line964">line 964</a>
         </div>
         
     </div>
@@ -4940,7 +5038,7 @@ contents. If omitted, no description will be rendered.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1006">line 1006</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1044">line 1044</a>
         </div>
         
     </div>
@@ -5209,7 +5307,7 @@ descendent of <code>AbstractValue</code>.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -5410,7 +5508,7 @@ was neither a string nor a function.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index e98ae4ac05b403b31293880af492e883e8dc8bf9..b628e6f9d9505854a4730d86ae21e08ddc65426a 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3243,7 +3341,7 @@ element container, allowing to nest form sections into other sections.</p></div>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3921">line 3921</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3995">line 3995</a>
         </div>
         
     </div>
@@ -3899,6 +3997,58 @@ as plain text input.</p>
     
     
     
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
 </dl>
 
     
@@ -4235,7 +4385,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4353,7 +4503,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4531,7 +4681,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4033">line 4033</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4107">line 4107</a>
         </div>
         
     </div>
@@ -4706,7 +4856,7 @@ its <code>cfgvalue()</code> implementation will always return <code>null</code>.
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -4920,7 +5070,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4042">line 4042</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4116">line 4116</a>
         </div>
         
     </div>
@@ -5095,7 +5245,7 @@ its <code>formvalue()</code> implementation will always return <code>null</code>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -5273,7 +5423,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5423,7 +5573,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5571,7 +5721,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3982">line 3982</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4056">line 4056</a>
         </div>
         
     </div>
@@ -5754,7 +5904,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3987">line 3987</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4061">line 4061</a>
         </div>
         
     </div>
@@ -5905,7 +6055,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4024">line 4024</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4098">line 4098</a>
         </div>
         
     </div>
@@ -6024,7 +6174,7 @@ its <code>remove()</code> implementation is a no-op.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -6171,7 +6321,7 @@ its <code>remove()</code> implementation is a no-op.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1651">line 1651</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1702">line 1702</a>
         </div>
         
     </div>
@@ -6351,7 +6501,7 @@ state of checkbox elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6546,7 +6696,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4008">line 4008</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4082">line 4082</a>
         </div>
         
     </div>
@@ -6692,7 +6842,7 @@ or a plain text string. If omitted, the <code>key</code> value is used as captio
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4016">line 4016</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4090">line 4090</a>
         </div>
         
     </div>
@@ -6843,7 +6993,7 @@ its <code>write()</code> implementation is a no-op.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 0eb677f9730642038c9902aeb50e04ae2b10fe7e..e2271c83ed2e7b7a26ce4070b7c246c58cd36972 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3248,7 +3346,7 @@ value of the <code>addremove</code> property.</p></div>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2055">line 2055</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2112">line 2112</a>
         </div>
         
     </div>
@@ -4311,7 +4409,7 @@ The default is <code>null</code>, means inheriting from the parent form.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2573">line 2573</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2632">line 2632</a>
         </div>
         
     </div>
@@ -4514,7 +4612,7 @@ is shown.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4632,7 +4730,7 @@ is shown.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line841">line 841</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line879">line 879</a>
         </div>
         
     </div>
@@ -4786,7 +4884,7 @@ custom implementations.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line856">line 856</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line894">line 894</a>
         </div>
         
     </div>
@@ -4892,7 +4990,7 @@ elements load functions rejected with an error.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line969">line 969</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1007">line 1007</a>
         </div>
         
     </div>
@@ -5109,7 +5207,7 @@ descendent of <code>AbstractValue</code>.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line885">line 885</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line923">line 923</a>
         </div>
         
     </div>
@@ -5217,7 +5315,7 @@ not meeting the validation constraints of their respective elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -5364,7 +5462,7 @@ not meeting the validation constraints of their respective elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2219">line 2219</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2276">line 2276</a>
         </div>
         
     </div>
@@ -5562,7 +5660,7 @@ contents. If omitted, no description will be rendered.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1006">line 1006</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1044">line 1044</a>
         </div>
         
     </div>
@@ -5831,7 +5929,7 @@ descendent of <code>AbstractValue</code>.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6032,7 +6130,7 @@ was neither a string nor a function.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 27d8ae18f06f9a88f1fff9955a8a7d8abd541c73..780b089f986d37382bb05e0547a61235d7da19ff 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3463">line 3463</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3534">line 3534</a>
         </div>
         
     </div>
@@ -4042,6 +4140,58 @@ as plain text input.</p>
     
     
     
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
 </dl>
 
     
@@ -4378,7 +4528,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4496,7 +4646,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4674,7 +4824,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1599">line 1599</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1650">line 1650</a>
         </div>
         
     </div>
@@ -4852,7 +5002,7 @@ different way.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -5066,7 +5216,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1678">line 1678</a>
         </div>
         
     </div>
@@ -5243,7 +5393,7 @@ It may be overwritten by user code to handle input values differently.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -5421,7 +5571,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5571,7 +5721,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5719,7 +5869,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1553">line 1553</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1604">line 1604</a>
         </div>
         
     </div>
@@ -5902,7 +6052,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1752">line 1752</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1803">line 1803</a>
         </div>
         
     </div>
@@ -6053,7 +6203,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1820">line 1820</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1873">line 1873</a>
         </div>
         
     </div>
@@ -6178,7 +6328,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -6325,7 +6475,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1651">line 1651</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1702">line 1702</a>
         </div>
         
     </div>
@@ -6505,7 +6655,7 @@ state of checkbox elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6700,7 +6850,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1797">line 1797</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1850">line 1850</a>
         </div>
         
     </div>
@@ -6859,7 +7009,7 @@ before it is written.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index d4510730f8ddb4b9eaf185d5471cb5cc7cf7f66e..b4625a1607582e7a0de0d0cd0c0905763b916c20 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3248,7 +3346,7 @@ value of the <code>addremove</code> property.</p></div>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1828">line 1828</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1881">line 1881</a>
         </div>
         
     </div>
@@ -3790,7 +3888,7 @@ this property will hold a reference to the parent option instance.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -3908,7 +4006,7 @@ this property will hold a reference to the parent option instance.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1916">line 1916</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1969">line 1969</a>
         </div>
         
     </div>
@@ -4038,7 +4136,7 @@ The sections will be rendered in the same order as the returned array.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line841">line 841</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line879">line 879</a>
         </div>
         
     </div>
@@ -4192,7 +4290,7 @@ custom implementations.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line856">line 856</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line894">line 894</a>
         </div>
         
     </div>
@@ -4298,7 +4396,7 @@ elements load functions rejected with an error.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line969">line 969</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1007">line 1007</a>
         </div>
         
     </div>
@@ -4515,7 +4613,7 @@ descendent of <code>AbstractValue</code>.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line885">line 885</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line923">line 923</a>
         </div>
         
     </div>
@@ -4623,7 +4721,7 @@ not meeting the validation constraints of their respective elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2044">line 2044</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2101">line 2101</a>
         </div>
         
     </div>
@@ -4731,7 +4829,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -4878,7 +4976,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line926">line 926</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line964">line 964</a>
         </div>
         
     </div>
@@ -5097,7 +5195,7 @@ contents. If omitted, no description will be rendered.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1006">line 1006</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1044">line 1044</a>
         </div>
         
     </div>
@@ -5366,7 +5464,7 @@ descendent of <code>AbstractValue</code>.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -5567,7 +5665,7 @@ was neither a string nor a function.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 6ea8e48ad1efb3006eccaad22152b04b5c2f5e3c..1d5bee77209e9173838c016c44efe570b270029d 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line2956">line 2956</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3019">line 3019</a>
         </div>
         
     </div>
@@ -3838,6 +3936,58 @@ or selected by the user.</p>
     
     
     
+    <dt class="tag-default">Default Value:</dt>
+    <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
+    
+    
+    
+    
+    
+    
+    
+</dl>
+
+    
+    
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="readonly">readonly<span class="type-signature type boolean">boolean</span> </h4>
+    </div>
+    
+    
+</dt>
+<dd>
+    
+    <div class="description">
+        <p>Make option element readonly.</p>
+<p>This property defaults to the readonly state of the parent form element.
+When set to <code>true</code>, the underlying widget is rendered in disabled state,
+means its contents cannot be changed and the widget cannot be interacted
+with.</p>
+    </div>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
     <dt class="tag-default">Default Value:</dt>
     <dd class="tag-default"><ul class="dummy"><li>false</li></ul></dd>
     
@@ -4183,7 +4333,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line202">line 202</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line210">line 210</a>
         </div>
         
     </div>
@@ -4301,7 +4451,7 @@ table section elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1525">line 1525</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
         </div>
         
     </div>
@@ -4479,7 +4629,7 @@ within the given specific section.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1599">line 1599</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1650">line 1650</a>
         </div>
         
     </div>
@@ -4657,7 +4807,7 @@ different way.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1407">line 1407</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1458">line 1458</a>
         </div>
         
     </div>
@@ -4871,7 +5021,7 @@ argument, this parameter is ignored.</p></td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1678">line 1678</a>
         </div>
         
     </div>
@@ -5048,7 +5198,7 @@ It may be overwritten by user code to handle input values differently.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1576">line 1576</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1627">line 1627</a>
         </div>
         
     </div>
@@ -5226,7 +5376,7 @@ option implementation does not use <code>LuCI.ui</code> widgets.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1715">line 1715</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1766">line 1766</a>
         </div>
         
     </div>
@@ -5376,7 +5526,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1697">line 1697</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1748">line 1748</a>
         </div>
         
     </div>
@@ -5524,7 +5674,7 @@ returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1553">line 1553</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1604">line 1604</a>
         </div>
         
     </div>
@@ -5707,7 +5857,7 @@ so it may return promises if overridden by user code.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1752">line 1752</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1803">line 1803</a>
         </div>
         
     </div>
@@ -5858,7 +6008,7 @@ validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1820">line 1820</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1873">line 1873</a>
         </div>
         
     </div>
@@ -5983,7 +6133,7 @@ implement alternative removal logic, e.g. to retain the original value.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3030">line 3030</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3093">line 3093</a>
         </div>
         
     </div>
@@ -6091,7 +6241,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line278">line 278</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line286">line 286</a>
         </div>
         
     </div>
@@ -6238,7 +6388,7 @@ the form element's markup, including the markup of any child elements.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1651">line 1651</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1702">line 1702</a>
         </div>
         
     </div>
@@ -6418,7 +6568,7 @@ state of checkbox elements.</p>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line312">line 312</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line320">line 320</a>
         </div>
         
     </div>
@@ -6611,7 +6761,7 @@ was neither a string nor a function.</td>
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3021">line 3021</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line3084">line 3084</a>
         </div>
         
     </div>
@@ -6759,7 +6909,7 @@ or a plain text string. If omitted, the <code>key</code> value is used as captio
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1797">line 1797</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line1850">line 1850</a>
         </div>
         
     </div>
@@ -6918,7 +7068,7 @@ before it is written.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 35e33a6a2eaaa03602f04ed202b49b6629598488..464a766175d2e4517f7a83cbf69af4bc68aa3218 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3273,7 +3371,7 @@ m.render().then(function(node) {
     
         
         <div class="tag-source">
-            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4045">line 4045</a>
+            <a href="form.js.html">form.js</a>, <a href="form.js.html#line4119">line 4119</a>
         </div>
         
     </div>
@@ -3426,7 +3524,7 @@ m.render().then(function(node) {
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index b3b61f5c762f746ecdf50e4b2901dece59a02b03..7f41f5e882b88c1c9b6fe8b73ad672ea9d5cc926 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -5603,7 +5701,7 @@ the failure reason.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index d8e2809a2c9c60d2695ed50d4caafc001d6cd3d5..ba47d7309d3a1a6e79ce3ca931a374b66c8a813e 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3243,7 +3341,7 @@ response objects using the <code>response.headers</code> property.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line330">line 330</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line332">line 332</a>
         </div>
         
     </div>
@@ -3328,7 +3426,7 @@ response objects using the <code>response.headers</code> property.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line378">line 378</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line380">line 380</a>
         </div>
         
     </div>
@@ -3477,7 +3575,7 @@ Note: Header-Names are case-insensitive.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line362">line 362</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line364">line 364</a>
         </div>
         
     </div>
@@ -3631,7 +3729,7 @@ Note: Header-Names are case-insensitive.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 9c7c60f6a8c572302aaed47172460e241cc2f4d2..a8bf2d946e49fa135a35c6d31ebfd54363fbe637 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3385,6 +3483,9 @@ accessible using the global <code>L</code> variable.</p></div>
             <dt><a href="LuCI.rpc.html">rpc</a></dt>
             <dd></dd>
         
+            <dt><a href="LuCI.session.html">session</a></dt>
+            <dd></dd>
+        
             <dt><a href="LuCI.uci.html">uci</a></dt>
             <dd></dd>
         
@@ -3707,7 +3808,7 @@ to request the <code>LuCI.view</code> class.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2280">line 2280</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2387">line 2387</a>
         </div>
         
     </div>
@@ -3919,7 +4020,7 @@ as parameters.</p></td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2240">line 2240</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2346">line 2346</a>
         </div>
         
     </div>
@@ -4145,6 +4246,161 @@ argument or copied from the given error instance.</p>
     
     
     
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="fspath">
+            
+            fspath<span class="signature">(<span class="optional">parts</span>)</span><span class="glyphicon glyphicon-circle-arrow-right"></span><span class="type-signature returnType">{string}</span>
+        </h4>
+    
+        
+        <div class="tag-source">
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2752">line 2752</a>
+        </div>
+        
+    </div>
+
+    
+</dt>
+<dd>
+    
+    
+    <div class="description">
+        <p>Construct an absolute filesystem path relative to the server
+document root.</p>
+    </div>
+    
+
+    
+    
+    
+    
+    
+        
+
+<table class="params">
+    <thead>
+       <tr>
+               
+               <th>Name</th>
+               
+               
+               <th>Type</th>
+               
+               
+               
+               <th class="last">Description</th>
+       </tr>
+       </thead>
+       
+       <tbody>
+       
+       
+        <tr>
+            
+                <td class="name"><code>parts</code></td>
+            
+            
+            <td class="type">
+            
+                
+<span class="param-type">string</span>
+
+
+            
+            </td>
+            
+            
+            
+            <td class="description last">
+                
+                    
+                        <span class="optional">optional</span>
+                    
+                    
+                        
+                    
+                        <span class="repeatable">repeatable</span>
+                    
+                
+                <p>An array of parts to join into a path.</p></td>
+        </tr>
+       
+       
+       </tbody>
+</table>
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+</dl>
+
+    
+    
+
+    
+
+    
+    
+    
+    
+    
+    <h5>Returns:</h5>
+    
+
+
+<table class="params">
+    <thead>
+    <tr>
+        
+        <th>Type</th>
+        <th class="last">Description</th>
+    </tr>
+    </thead>
+    <tbody>
+    
+        <tr>
+            
+            <td class="type">
+            
+                        string
+                        
+                    
+            </td>
+            <td class="description last">Return the joined path.</td>
+        </tr>
+    
+    </tbody>
+</table>
+
+    
+    
+    
 </dd>
 
         
@@ -4158,7 +4414,7 @@ argument or copied from the given error instance.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2880">line 2880</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3051">line 3051</a>
         </div>
         
     </div>
@@ -4370,7 +4626,7 @@ callback function. The function is a wrapper around
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3002">line 3002</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3189">line 3189</a>
         </div>
         
     </div>
@@ -4473,7 +4729,7 @@ when it didn't run to begin with.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2514">line 2514</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2630">line 2630</a>
         </div>
         
     </div>
@@ -4653,6 +4909,112 @@ has no sub-features.</td>
     
     
     
+</dd>
+
+        
+            
+<dt>
+    <div class="nameContainer">
+        <h4 class="name" id="hasViewPermission">
+            
+            hasViewPermission<span class="signature">()</span><span class="glyphicon glyphicon-circle-arrow-right"></span><span class="type-signature returnType">{boolean|null}</span>
+        </h4>
+    
+        
+        <div class="tag-source">
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3155">line 3155</a>
+        </div>
+        
+    </div>
+
+    
+</dt>
+<dd>
+    
+    
+    <div class="description">
+        <p>Check whether a view has sufficient permissions.</p>
+    </div>
+    
+
+    
+    
+    
+    
+    
+    
+    
+<dl class="details">
+    
+        
+    
+    
+    
+
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+    
+</dl>
+
+    
+    
+
+    
+
+    
+    
+    
+    
+    
+    <h5>Returns:</h5>
+    
+
+
+<table class="params">
+    <thead>
+    <tr>
+        
+        <th>Type</th>
+        <th class="last">Description</th>
+    </tr>
+    </thead>
+    <tbody>
+    
+        <tr>
+            
+            <td class="type">
+            
+                        boolean
+                         | 
+                    
+                        null
+                        
+                    
+            </td>
+            <td class="description last">Returns <code>null</code> if the current session has no permission at all to
+load resources required by the view. Returns <code>false</code> if readonly
+permissions are granted or <code>true</code> if at least one required ACL
+group is granted with write permissions.</td>
+        </tr>
+    
+    </tbody>
+</table>
+
+    
+    
+    
 </dd>
 
         
@@ -4666,7 +5028,7 @@ has no sub-features.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2727">line 2727</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2898">line 2898</a>
         </div>
         
     </div>
@@ -4821,7 +5183,7 @@ not <code>null</code>, else returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2707">line 2707</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2878">line 2878</a>
         </div>
         
     </div>
@@ -4921,7 +5283,7 @@ not <code>null</code>, else returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2694">line 2694</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2865">line 2865</a>
         </div>
         
     </div>
@@ -5078,7 +5440,7 @@ slashes and any of the other characters mentioned above.</p></td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2619">line 2619</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2790">line 2790</a>
         </div>
         
     </div>
@@ -5265,7 +5627,7 @@ slashes and any of the other characters mentioned above.</p></td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2950">line 2950</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3121">line 3121</a>
         </div>
         
     </div>
@@ -5570,7 +5932,7 @@ polling request.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2908">line 2908</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3079">line 3079</a>
         </div>
         
     </div>
@@ -5785,7 +6147,7 @@ by default.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2174">line 2174</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2280">line 2280</a>
         </div>
         
     </div>
@@ -6024,7 +6386,7 @@ argument or copied from the given error instance.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2319">line 2319</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2426">line 2426</a>
         </div>
         
     </div>
@@ -6282,7 +6644,7 @@ class instance.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2835">line 2835</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3006">line 3006</a>
         </div>
         
     </div>
@@ -6453,7 +6815,7 @@ to the given default value on error.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2672">line 2672</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2843">line 2843</a>
         </div>
         
     </div>
@@ -6610,7 +6972,7 @@ slashes and any of the other characters mentioned above.</p></td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3015">line 3015</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3202">line 3202</a>
         </div>
         
     </div>
@@ -6713,7 +7075,7 @@ when it was already running.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2756">line 2756</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2927">line 2927</a>
         </div>
         
     </div>
@@ -6930,7 +7292,7 @@ addresses or numeric values respectively.</p></td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2989">line 2989</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3176">line 3176</a>
         </div>
         
     </div>
@@ -7078,7 +7440,7 @@ it could not be found.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2801">line 2801</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2972">line 2972</a>
         </div>
         
     </div>
@@ -7228,7 +7590,7 @@ space and returned as array.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2650">line 2650</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2821">line 2821</a>
         </div>
         
     </div>
@@ -7391,7 +7753,7 @@ slashes and any of the other characters mentioned above.</p></td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2839">line 2839</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3010">line 3010</a>
         </div>
         
     </div>
@@ -7562,7 +7924,7 @@ else <code>null</code>.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 7adf03c9f5c00cb24fdd0d600f322cfc4b497deb..332ea597b5afddd84cdd4069213a24963ae6df22 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3243,7 +3341,7 @@ device and allows querying device details such as packet statistics or MTU.</p><
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2698">line 2698</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2700">line 2700</a>
         </div>
         
     </div>
@@ -3328,7 +3426,7 @@ device and allows querying device details such as packet statistics or MTU.</p><
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2905">line 2905</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2907">line 2907</a>
         </div>
         
     </div>
@@ -3432,7 +3530,7 @@ device is not a Linux bridge.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2917">line 2917</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2919">line 2919</a>
         </div>
         
     </div>
@@ -3533,7 +3631,7 @@ enabled, else <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2832">line 2832</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2834">line 2834</a>
         </div>
         
     </div>
@@ -3634,7 +3732,7 @@ for non-wifi devices or operation mode and ssid for wifi ones.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2776">line 2776</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2778">line 2778</a>
         </div>
         
     </div>
@@ -3734,7 +3832,7 @@ for non-wifi devices or operation mode and ssid for wifi ones.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2765">line 2765</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2767">line 2767</a>
         </div>
         
     </div>
@@ -3834,7 +3932,7 @@ for non-wifi devices or operation mode and ssid for wifi ones.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2744">line 2744</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2746">line 2746</a>
         </div>
         
     </div>
@@ -3938,7 +4036,7 @@ e.g. for non-ethernet tunnel devices.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2755">line 2755</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2757">line 2757</a>
         </div>
         
     </div>
@@ -4038,7 +4136,7 @@ e.g. for non-ethernet tunnel devices.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2733">line 2733</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2735">line 2735</a>
         </div>
         
     </div>
@@ -4138,7 +4236,7 @@ e.g. for non-ethernet tunnel devices.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3012">line 3012</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3014">line 3014</a>
         </div>
         
     </div>
@@ -4243,7 +4341,7 @@ assigned to any logical interface.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3023">line 3023</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3025">line 3025</a>
         </div>
         
     </div>
@@ -4344,7 +4442,7 @@ logical interfaces this device is assigned to.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2883">line 2883</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2885">line 2885</a>
         </div>
         
     </div>
@@ -4449,7 +4547,7 @@ a Linux bridge.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2977">line 2977</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2979">line 2979</a>
         </div>
         
     </div>
@@ -4549,7 +4647,7 @@ a Linux bridge.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2999">line 2999</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3001">line 3001</a>
         </div>
         
     </div>
@@ -4649,7 +4747,7 @@ a Linux bridge.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2818">line 2818</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2820">line 2820</a>
         </div>
         
     </div>
@@ -4750,7 +4848,7 @@ the operation mode and SSID for wifi devices.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2966">line 2966</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2968">line 2968</a>
         </div>
         
     </div>
@@ -4850,7 +4948,7 @@ the operation mode and SSID for wifi devices.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2988">line 2988</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2990">line 2990</a>
         </div>
         
     </div>
@@ -4950,7 +5048,7 @@ the operation mode and SSID for wifi devices.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2794">line 2794</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2796">line 2796</a>
         </div>
         
     </div>
@@ -5059,7 +5157,7 @@ the operation mode and SSID for wifi devices.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2850">line 2850</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2852">line 2852</a>
         </div>
         
     </div>
@@ -5160,7 +5258,7 @@ the operation mode and SSID for wifi devices.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3047">line 3047</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3049">line 3049</a>
         </div>
         
     </div>
@@ -5265,7 +5363,7 @@ is not a wireless device.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2945">line 2945</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2947">line 2947</a>
         </div>
         
     </div>
@@ -5366,7 +5464,7 @@ else <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2956">line 2956</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2958">line 2958</a>
         </div>
         
     </div>
@@ -5467,7 +5565,7 @@ else <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2929">line 2929</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2931">line 2931</a>
         </div>
         
     </div>
@@ -5576,7 +5674,7 @@ when it is down or absent.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 7468e054da9f066a59f1c0c209a3039ffb74edd1..0ff4adeef6cfb67a980327a2922a44d896c957c4 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3244,7 +3342,7 @@ host information by different criteria.</p></div>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1696">line 1696</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1698">line 1698</a>
         </div>
         
     </div>
@@ -3329,7 +3427,7 @@ host information by different criteria.</p></div>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1793">line 1793</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1795">line 1795</a>
         </div>
         
     </div>
@@ -3479,7 +3577,7 @@ the corresponding host.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1757">line 1757</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1759">line 1759</a>
         </div>
         
     </div>
@@ -3629,7 +3727,7 @@ the corresponding host.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1712">line 1712</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1714">line 1714</a>
         </div>
         
     </div>
@@ -3779,7 +3877,7 @@ the corresponding host.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1742">line 1742</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1744">line 1744</a>
         </div>
         
     </div>
@@ -3929,7 +4027,7 @@ the corresponding host.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1727">line 1727</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1729">line 1729</a>
         </div>
         
     </div>
@@ -4079,7 +4177,7 @@ the corresponding host.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1811">line 1811</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1813">line 1813</a>
         </div>
         
     </div>
@@ -4229,7 +4327,7 @@ the corresponding host.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1775">line 1775</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1777">line 1777</a>
         </div>
         
     </div>
@@ -4379,7 +4477,7 @@ the corresponding host.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1839">line 1839</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1841">line 1841</a>
         </div>
         
     </div>
@@ -4557,7 +4655,7 @@ is used as hint.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 318f173dfb8e412bf787e011c49e35a46c59eab8..fb3dcd08c9ccf2dc8030866dcb53c416a7a4feb5 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3243,7 +3341,7 @@ subclasses which describe logical UCI networks defined by <code>config interface
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1862">line 1862</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1864">line 1864</a>
         </div>
         
     </div>
@@ -3328,7 +3426,7 @@ subclasses which describe logical UCI networks defined by <code>config interface
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2469">line 2469</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2471">line 2471</a>
         </div>
         
     </div>
@@ -3489,7 +3587,7 @@ interface or if the logical interface is virtual.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2638">line 2638</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2640">line 2640</a>
         </div>
         
     </div>
@@ -3650,7 +3748,7 @@ device or <code>false</code> if not.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2686">line 2686</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2688">line 2688</a>
         </div>
         
     </div>
@@ -3760,7 +3858,7 @@ the interface removal will be aborted.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2496">line 2496</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2498">line 2498</a>
         </div>
         
     </div>
@@ -3921,7 +4019,7 @@ interface or if the logical interface is virtual.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1895">line 1895</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1897">line 1897</a>
         </div>
         
     </div>
@@ -4073,7 +4171,7 @@ not found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2523">line 2523</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2525">line 2525</a>
         </div>
         
     </div>
@@ -4175,7 +4273,7 @@ expected Linux network device according to the configuration.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2584">line 2584</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2586">line 2586</a>
         </div>
         
     </div>
@@ -4282,7 +4380,7 @@ virtual and not a bridge.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2220">line 2220</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2222">line 2222</a>
         </div>
         
     </div>
@@ -4383,7 +4481,7 @@ protocol backend.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2132">line 2132</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2134">line 2134</a>
         </div>
         
     </div>
@@ -4484,7 +4582,7 @@ protocol backend.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2264">line 2264</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2266">line 2266</a>
         </div>
         
     </div>
@@ -4592,7 +4690,7 @@ error code in case no translation can be found.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2015">line 2015</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2017">line 2017</a>
         </div>
         
     </div>
@@ -4696,7 +4794,7 @@ if it isn't applicable to the associated protocol.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2200">line 2200</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2202">line 2202</a>
         </div>
         
     </div>
@@ -4798,7 +4896,7 @@ default route or <code>null</code> if no default route was found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2112">line 2112</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2114">line 2114</a>
         </div>
         
     </div>
@@ -4900,7 +4998,7 @@ default route or <code>null</code> if no default route was found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1960">line 1960</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1962">line 1962</a>
         </div>
         
     </div>
@@ -5002,7 +5100,7 @@ default route or <code>null</code> if no default route was found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1920">line 1920</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1922">line 1922</a>
         </div>
         
     </div>
@@ -5106,7 +5204,7 @@ it could not be determined.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2151">line 2151</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2153">line 2153</a>
         </div>
         
     </div>
@@ -5210,7 +5308,7 @@ in CIDR notation or <code>null</code> if no IPv6 addresses were set.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2173">line 2173</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2175">line 2175</a>
         </div>
         
     </div>
@@ -5312,7 +5410,7 @@ follows the order of the addresses in <code>ubus</code> runtime information.</td
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2239">line 2239</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2241">line 2241</a>
         </div>
         
     </div>
@@ -5416,7 +5514,7 @@ handler or <code>null</code> if no prefix is present.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2067">line 2067</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2069">line 2069</a>
         </div>
         
     </div>
@@ -5520,7 +5618,7 @@ or <code>null</code> if no IPv4 addresses were set.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2080">line 2080</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2082">line 2082</a>
         </div>
         
     </div>
@@ -5622,7 +5720,7 @@ follows the order of the addresses in <code>ubus</code> runtime information.</td
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2556">line 2556</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2558">line 2558</a>
         </div>
         
     </div>
@@ -5724,7 +5822,7 @@ network device currently associated with the logical interface.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2569">line 2569</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2571">line 2571</a>
         </div>
         
     </div>
@@ -5826,7 +5924,7 @@ network device currently associated with the logical interface.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2035">line 2035</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2037">line 2037</a>
         </div>
         
     </div>
@@ -5927,7 +6025,7 @@ routes spawned by the associated logical interface.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1990">line 1990</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1992">line 1992</a>
         </div>
         
     </div>
@@ -6027,7 +6125,7 @@ routes spawned by the associated logical interface.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2098">line 2098</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2100">line 2100</a>
         </div>
         
     </div>
@@ -6131,7 +6229,7 @@ protocol handler or <code>null</code> if no IPv4 addresses were set.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2304">line 2304</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2306">line 2306</a>
         </div>
         
     </div>
@@ -6233,7 +6331,7 @@ function, e.g. <code>odhcp6c</code> for the <code>dhcpv6</code> prototocol.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1946">line 1946</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1948">line 1948</a>
         </div>
         
     </div>
@@ -6336,7 +6434,7 @@ function, e.g. <code>odhcp6c</code> for the <code>dhcpv6</code> prototocol.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1980">line 1980</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1982">line 1982</a>
         </div>
         
     </div>
@@ -6443,7 +6541,7 @@ interface or <code>null</code> if no <code>type</code> option is set.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2000">line 2000</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2002">line 2002</a>
         </div>
         
     </div>
@@ -6543,7 +6641,7 @@ interface or <code>null</code> if no <code>type</code> option is set.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2051">line 2051</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2053">line 2053</a>
         </div>
         
     </div>
@@ -6651,7 +6749,7 @@ handler didn't request a zone.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2410">line 2410</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2412">line 2412</a>
         </div>
         
     </div>
@@ -6758,7 +6856,7 @@ is an alias or <code>null</code> if it is not an alias interface.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2289">line 2289</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2291">line 2291</a>
         </div>
         
     </div>
@@ -6860,7 +6958,7 @@ or <code>false</code> when the logical interface is no bridge.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2322">line 2322</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2324">line 2324</a>
         </div>
         
     </div>
@@ -7007,7 +7105,7 @@ rejects with an error message string.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2395">line 2395</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2397">line 2397</a>
         </div>
         
     </div>
@@ -7112,7 +7210,7 @@ or not (<code>false</code>).</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2430">line 2430</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2432">line 2432</a>
         </div>
         
     </div>
@@ -7213,7 +7311,7 @@ has no network devices attached.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2379">line 2379</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2381">line 2381</a>
         </div>
         
     </div>
@@ -7322,7 +7420,7 @@ or not (<code>false</code>).</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2338">line 2338</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2340">line 2340</a>
         </div>
         
     </div>
@@ -7426,7 +7524,7 @@ returns <code>true</code>.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2452">line 2452</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2454">line 2454</a>
         </div>
         
     </div>
@@ -7526,7 +7624,7 @@ returns <code>true</code>.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2358">line 2358</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line2360">line 2360</a>
         </div>
         
     </div>
@@ -7633,7 +7731,7 @@ dynamic interfaces (<code>true</code>) or not (<code>false</code>).</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1909">line 1909</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1911">line 1911</a>
         </div>
         
     </div>
@@ -7787,7 +7885,7 @@ configuration.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 0b12b5d060d0af380ea907fb20a3043f338db3b6..cab05c6f0021b60b25afd2bae9ef2db038f56c4f 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3244,7 +3342,7 @@ well as methods for enumerating related wireless networks.</p></div>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3062">line 3062</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3064">line 3064</a>
         </div>
         
     </div>
@@ -3329,7 +3427,7 @@ well as methods for enumerating related wireless networks.</p></div>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3328">line 3328</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3330">line 3330</a>
         </div>
         
     </div>
@@ -3484,7 +3582,7 @@ were invalid.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3353">line 3353</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3355">line 3355</a>
         </div>
         
     </div>
@@ -3636,7 +3734,7 @@ with this wireless radio device.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3102">line 3102</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3104">line 3104</a>
         </div>
         
     </div>
@@ -3788,7 +3886,7 @@ not found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3180">line 3180</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3182">line 3182</a>
         </div>
         
     </div>
@@ -3899,7 +3997,7 @@ known mode values are:
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3159">line 3159</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3161">line 3161</a>
         </div>
         
     </div>
@@ -4009,7 +4107,7 @@ known mode values are:
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3191">line 3191</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3193">line 3193</a>
         </div>
         
     </div>
@@ -4109,7 +4207,7 @@ known mode values are:
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3140">line 3140</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3142">line 3142</a>
         </div>
         
     </div>
@@ -4211,7 +4309,7 @@ for the wireless phy.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3252">line 3252</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3254">line 3254</a>
         </div>
         
     </div>
@@ -4313,7 +4411,7 @@ describing the networks found in the vincinity.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3285">line 3285</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3287">line 3287</a>
         </div>
         
     </div>
@@ -4464,7 +4562,7 @@ this radio device.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3304">line 3304</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3306">line 3306</a>
         </div>
         
     </div>
@@ -4566,7 +4664,7 @@ radio device.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3128">line 3128</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3130">line 3130</a>
         </div>
         
     </div>
@@ -4668,7 +4766,7 @@ UCI configuration.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3263">line 3263</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3265">line 3265</a>
         </div>
         
     </div>
@@ -4769,7 +4867,7 @@ runtime state.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3116">line 3116</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3118">line 3118</a>
         </div>
         
     </div>
@@ -4923,7 +5021,7 @@ configuration.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 70f8b70535de6a5103f88ff318ba2c202564cab1..5af2af153ab703378b33a944322eaeff086f01b4 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3245,7 +3343,7 @@ such networks in parallel.</p></div>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3386">line 3386</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3388">line 3388</a>
         </div>
         
     </div>
@@ -3330,7 +3428,7 @@ such networks in parallel.</p></div>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4129">line 4129</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4131">line 4131</a>
         </div>
         
     </div>
@@ -3601,7 +3699,7 @@ are passed.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3420">line 3420</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3422">line 3422</a>
         </div>
         
     </div>
@@ -3753,7 +3851,7 @@ not found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3673">line 3673</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3675">line 3675</a>
         </div>
         
     </div>
@@ -3854,7 +3952,7 @@ information.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3684">line 3684</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3686">line 3686</a>
         </div>
         
     </div>
@@ -3955,7 +4053,7 @@ encryption state could not be found in <code>ubus</code> runtime information.</t
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3621">line 3621</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3623">line 3623</a>
         </div>
         
     </div>
@@ -4068,7 +4166,7 @@ state. Possible returned values are:
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3642">line 3642</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3644">line 3644</a>
         </div>
         
     </div>
@@ -4170,7 +4268,7 @@ translated string.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3662">line 3662</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3664">line 3664</a>
         </div>
         
     </div>
@@ -4271,7 +4369,7 @@ information.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3864">line 3864</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3866">line 3866</a>
         </div>
         
     </div>
@@ -4372,7 +4470,7 @@ with this network.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3894">line 3894</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3896">line 3896</a>
         </div>
         
     </div>
@@ -4478,7 +4576,7 @@ is not available.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3499">line 3499</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3501">line 3501</a>
         </div>
         
     </div>
@@ -4581,7 +4679,7 @@ is not available.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3910">line 3910</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3912">line 3912</a>
         </div>
         
     </div>
@@ -4685,7 +4783,7 @@ or <code>null</code> if it cannot be determined.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3943">line 3943</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3945">line 3945</a>
         </div>
         
     </div>
@@ -4786,7 +4884,7 @@ information or <code>00</code> if it cannot be determined.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4089">line 4089</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4091">line 4091</a>
         </div>
         
     </div>
@@ -4887,7 +4985,7 @@ device associted with this wireless network.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3876">line 3876</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3878">line 3878</a>
         </div>
         
     </div>
@@ -4992,7 +5090,7 @@ available.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4037">line 4037</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4039">line 4039</a>
         </div>
         
     </div>
@@ -5095,7 +5193,7 @@ name, depending on which information is available.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3524">line 3524</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3526">line 3526</a>
         </div>
         
     </div>
@@ -5198,7 +5296,7 @@ radio and network index numbers.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3546">line 3546</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3548">line 3548</a>
         </div>
         
     </div>
@@ -5303,7 +5401,7 @@ associated network device, e.g. when not configured or up.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3486">line 3486</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3488">line 3488</a>
         </div>
         
     </div>
@@ -5407,7 +5505,7 @@ is not in mesh mode.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3461">line 3461</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3463">line 3463</a>
         </div>
         
     </div>
@@ -5514,7 +5612,7 @@ is not in mesh mode.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3534">line 3534</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3536">line 3536</a>
         </div>
         
     </div>
@@ -5614,7 +5712,7 @@ is not in mesh mode.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4053">line 4053</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4055">line 4055</a>
         </div>
         
     </div>
@@ -5719,7 +5817,7 @@ interface.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3510">line 3510</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3512">line 3512</a>
         </div>
         
     </div>
@@ -5820,7 +5918,7 @@ attached to.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4064">line 4064</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4066">line 4066</a>
         </div>
         
     </div>
@@ -5921,7 +6019,7 @@ logical interfaces this wireless network is attached to.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3932">line 3932</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3934">line 3934</a>
         </div>
         
     </div>
@@ -6022,7 +6120,7 @@ information or <code>0</code> if it cannot be determined.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4022">line 4022</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4024">line 4024</a>
         </div>
         
     </div>
@@ -6124,7 +6222,7 @@ internal network ID, depending on which information is available.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3921">line 3921</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3923">line 3923</a>
         </div>
         
     </div>
@@ -6228,7 +6326,7 @@ information or <code>null</code> if it cannot be determined.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3981">line 3981</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3983">line 3983</a>
         </div>
         
     </div>
@@ -6331,7 +6429,7 @@ noise and signal (SNR), divided by 5.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4004">line 4004</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4006">line 4006</a>
         </div>
         
     </div>
@@ -6433,7 +6531,7 @@ by <code>ubus</code> runtime state.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3472">line 3472</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3474">line 3474</a>
         </div>
         
     </div>
@@ -6537,7 +6635,7 @@ in mesh mode.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3954">line 3954</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3956">line 3956</a>
         </div>
         
     </div>
@@ -6641,7 +6739,7 @@ in mesh mode.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3969">line 3969</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3971">line 3971</a>
         </div>
         
     </div>
@@ -6745,7 +6843,7 @@ cannot be determined.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3574">line 3574</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3576">line 3576</a>
         </div>
         
     </div>
@@ -6850,7 +6948,7 @@ found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3562">line 3562</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3564">line 3564</a>
         </div>
         
     </div>
@@ -6954,7 +7052,7 @@ or <code>null</code> if it cannot be determined.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4100">line 4100</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line4102">line 4102</a>
         </div>
         
     </div>
@@ -7055,7 +7153,7 @@ deauthenticating clients, otherwise <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3446">line 3446</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3448">line 3448</a>
         </div>
         
     </div>
@@ -7157,7 +7255,7 @@ UCI configuration.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3595">line 3595</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3597">line 3597</a>
         </div>
         
     </div>
@@ -7262,7 +7360,7 @@ instance.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3434">line 3434</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line3436">line 3436</a>
         </div>
         
     </div>
@@ -7416,7 +7514,7 @@ configuration.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 40bceb9660041a8ed551b8ad8c8c85f13b163914..735906ea6220fdc706fd28d59e4f00b8a04d1952 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3245,7 +3343,7 @@ current configuration details and to manipulate settings.</p></div>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line636">line 636</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line638">line 638</a>
         </div>
         
     </div>
@@ -3349,7 +3447,7 @@ current configuration details and to manipulate settings.</p></div>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line904">line 904</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line906">line 906</a>
         </div>
         
     </div>
@@ -3536,7 +3634,7 @@ existed.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1362">line 1362</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1364">line 1364</a>
         </div>
         
     </div>
@@ -3686,7 +3784,7 @@ were invalid or if the associated radio device could not be found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line982">line 982</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line984">line 984</a>
         </div>
         
     </div>
@@ -3834,7 +3932,7 @@ references to it were successfully deleted from the configuration or
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1400">line 1400</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1402">line 1402</a>
         </div>
         
     </div>
@@ -3984,7 +4082,7 @@ be found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line748">line 748</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line750">line 750</a>
         </div>
         
     </div>
@@ -4085,7 +4183,7 @@ from the remote <code>ubus</code> apis.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line739">line 739</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line741">line 741</a>
         </div>
         
     </div>
@@ -4236,7 +4334,7 @@ or <code>WPA3 SAE (CCMP)</code>.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1113">line 1113</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1115">line 1115</a>
         </div>
         
     </div>
@@ -4384,7 +4482,7 @@ be found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1136">line 1136</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1138">line 1138</a>
         </div>
         
     </div>
@@ -4485,7 +4583,7 @@ instances describing the network devices found on the system.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1662">line 1662</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1664">line 1664</a>
         </div>
         
     </div>
@@ -4586,7 +4684,7 @@ instances describing the network devices found on the system.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1679">line 1679</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1681">line 1681</a>
         </div>
         
     </div>
@@ -4690,7 +4788,7 @@ class instance describing the found hosts.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1651">line 1651</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1653">line 1653</a>
         </div>
         
     </div>
@@ -4851,7 +4949,7 @@ object could not be converted to a name.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line941">line 941</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line943">line 943</a>
         </div>
         
     </div>
@@ -4999,7 +5097,7 @@ the network or <code>null</code> if the network did not exist.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line966">line 966</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line968">line 968</a>
         </div>
         
     </div>
@@ -5101,7 +5199,7 @@ describing all known networks.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line770">line 770</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line772">line 772</a>
         </div>
         
     </div>
@@ -5301,7 +5399,7 @@ protocol isn't known.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line785">line 785</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line787">line 787</a>
         </div>
         
     </div>
@@ -5402,7 +5500,7 @@ backend classes.</p>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1556">line 1556</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1558">line 1558</a>
         </div>
         
     </div>
@@ -5506,7 +5604,7 @@ the layout.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1507">line 1507</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1509">line 1509</a>
         </div>
         
     </div>
@@ -5609,7 +5707,7 @@ instances describing the found IPv6 default route interfaces.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1482">line 1482</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1484">line 1484</a>
         </div>
         
     </div>
@@ -5712,7 +5810,7 @@ instances describing the found default route interfaces.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1269">line 1269</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1271">line 1271</a>
         </div>
         
     </div>
@@ -5861,7 +5959,7 @@ be found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1289">line 1289</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1291">line 1291</a>
         </div>
         
     </div>
@@ -5964,7 +6062,7 @@ the configuration.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1318">line 1318</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1320">line 1320</a>
         </div>
         
     </div>
@@ -6115,7 +6213,7 @@ be found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1332">line 1332</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1334">line 1334</a>
         </div>
         
     </div>
@@ -6218,7 +6316,7 @@ are found.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1252">line 1252</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1254">line 1254</a>
         </div>
         
     </div>
@@ -6368,7 +6466,7 @@ else returns <code>false</code>.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line684">line 684</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line686">line 686</a>
         </div>
         
     </div>
@@ -6565,7 +6663,7 @@ if the given netmask value was invalid.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line666">line 666</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line668">line 668</a>
         </div>
         
     </div>
@@ -6763,7 +6861,7 @@ value of <code>32</code> for IPv4 or <code>128</code> for IPv6.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line873">line 873</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line875">line 875</a>
         </div>
         
     </div>
@@ -6935,7 +7033,7 @@ description for the given code.</td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line853">line 853</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line855">line 855</a>
         </div>
         
     </div>
@@ -7053,7 +7151,7 @@ such as <code>6in4-wan</code> or <code>tun0</code>.</p></td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line812">line 812</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line814">line 814</a>
         </div>
         
     </div>
@@ -7226,7 +7324,7 @@ be passed to <code>Class.extend()</code>.</p></td>
     
         
         <div class="tag-source">
-            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1052">line 1052</a>
+            <a href="network.js.html">network.js</a>, <a href="network.js.html#line1054">line 1054</a>
         </div>
         
     </div>
@@ -9271,7 +9369,7 @@ conjunction with <code>quality</code> to calculate a quality percentage.</p></td
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 98a21d88465de52685d451a29b71350ad812d85f..c895c5dd28e09b4bf51088dfebe90ba59c863566 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3244,7 +3342,7 @@ loop.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1036">line 1036</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1038">line 1038</a>
         </div>
         
     </div>
@@ -3329,7 +3427,7 @@ loop.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1197">line 1197</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1199">line 1199</a>
         </div>
         
     </div>
@@ -3431,7 +3529,7 @@ loop.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1070">line 1070</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1072">line 1072</a>
         </div>
         
     </div>
@@ -3628,7 +3726,7 @@ already is registered.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1111">line 1111</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1113">line 1113</a>
         </div>
         
     </div>
@@ -3802,7 +3900,7 @@ wasn't found.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1137">line 1137</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1139">line 1139</a>
         </div>
         
     </div>
@@ -3904,7 +4002,7 @@ where registered) or <code>false</code> when the polling loop already runs.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1162">line 1162</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1164">line 1164</a>
         </div>
         
     </div>
@@ -4014,7 +4112,7 @@ run to begin with.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index a02440505da1d9fdba5063859bb93558de6e4797..97042f805f3a4e73eca9f902a96728e40dc5f211 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3243,7 +3341,7 @@ for dealing with responses.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line602">line 602</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line604">line 604</a>
         </div>
         
     </div>
@@ -3335,7 +3433,7 @@ for dealing with responses.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line891">line 891</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line893">line 893</a>
         </div>
         
     </div>
@@ -3483,7 +3581,7 @@ implementing request retries before returning a failure.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line628">line 628</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line630">line 630</a>
         </div>
         
     </div>
@@ -3629,7 +3727,7 @@ if it already was absolute.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line844">line 844</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line846">line 846</a>
         </div>
         
     </div>
@@ -3809,7 +3907,7 @@ if it already was absolute.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line865">line 865</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line867">line 867</a>
         </div>
         
     </div>
@@ -4019,7 +4117,7 @@ if it already was absolute.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line910">line 910</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line912">line 912</a>
         </div>
         
     </div>
@@ -4166,7 +4264,7 @@ function.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line695">line 695</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line697">line 697</a>
         </div>
         
     </div>
@@ -4352,7 +4450,7 @@ function.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line869">line 869</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line871">line 871</a>
         </div>
         
     </div>
@@ -4949,7 +5047,7 @@ instances as sole argument during the HTTP request transfer.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index b9daf507ed4e218cb12f10f54cdf33ba4bc62663..e0fb11b022dd7798427dd118d753e3a975259d56 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3244,7 +3342,7 @@ request calls as polling functions.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line928">line 928</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line930">line 930</a>
         </div>
         
     </div>
@@ -3329,7 +3427,7 @@ request calls as polling functions.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1032">line 1032</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1034">line 1034</a>
         </div>
         
     </div>
@@ -3400,7 +3498,7 @@ request calls as polling functions.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line971">line 971</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line973">line 973</a>
         </div>
         
     </div>
@@ -3667,7 +3765,7 @@ invoke for each HTTP reply.</p></td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1008">line 1008</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1010">line 1010</a>
         </div>
         
     </div>
@@ -3814,7 +3912,7 @@ This function is essentially a wrapper around
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1016">line 1016</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1018">line 1018</a>
         </div>
         
     </div>
@@ -3885,7 +3983,7 @@ This function is essentially a wrapper around
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1024">line 1024</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1026">line 1026</a>
         </div>
         
     </div>
@@ -3962,7 +4060,7 @@ This function is essentially a wrapper around
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line929">line 929</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line931">line 931</a>
         </div>
         
     </div>
@@ -4133,7 +4231,7 @@ else <code>null</code>.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index f0f821f320bd3da0c053febd8a0d5283efd6a6b0..c6c2a37e239cd6480c8776f7e011a4fe87be991b 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line384">line 384</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line386">line 386</a>
         </div>
         
     </div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line546">line 546</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line548">line 548</a>
         </div>
         
     </div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line495">line 495</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line497">line 497</a>
         </div>
         
     </div>
@@ -3856,7 +3954,7 @@ using <code>String()</code> and treated as response text.</p></td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line516">line 516</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line518">line 518</a>
         </div>
         
     </div>
@@ -3983,7 +4081,7 @@ using <code>String()</code> and treated as response text.</p></td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line531">line 531</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line533">line 533</a>
         </div>
         
     </div>
@@ -4091,7 +4189,7 @@ using <code>String()</code> and treated as response text.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index b3d5f4a6fd203057a22420d517a4c9aba6856858..901518290466eb1f825ba7913de7c361257b6e23 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3328,7 +3426,7 @@ and means for listing and invoking remove RPC methods.</p></div>
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line456">line 456</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line465">line 465</a>
         </div>
         
     </div>
@@ -3473,7 +3571,7 @@ and means for listing and invoking remove RPC methods.</p></div>
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line294">line 294</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line302">line 302</a>
         </div>
         
     </div>
@@ -3621,7 +3719,7 @@ signatures of each given object.</p></td>
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line369">line 369</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line378">line 378</a>
         </div>
         
     </div>
@@ -3721,7 +3819,7 @@ signatures of each given object.</p></td>
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line348">line 348</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line357">line 357</a>
         </div>
         
     </div>
@@ -3822,7 +3920,7 @@ requests.</td>
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line393">line 393</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line402">line 402</a>
         </div>
         
     </div>
@@ -3968,7 +4066,7 @@ description.</p>
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line142">line 142</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line146">line 146</a>
         </div>
         
     </div>
@@ -4135,7 +4233,7 @@ signatures of each requested <code>ubus</code> object name will be returned.</td
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line472">line 472</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line481">line 481</a>
         </div>
         
     </div>
@@ -4281,7 +4379,7 @@ if it has not been found.</td>
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line379">line 379</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line388">line 388</a>
         </div>
         
     </div>
@@ -4397,7 +4495,7 @@ if it has not been found.</td>
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line359">line 359</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line368">line 368</a>
         </div>
         
     </div>
@@ -4543,6 +4641,8 @@ requests.</p></td>
                
                
                
+               <th>Default</th>
+               
                
                <th class="last">Description</th>
        </tr>
@@ -4574,6 +4674,10 @@ requests.</p></td>
             
             
             
+                <td class="default">
+                
+                </td>
+            
             
             <td class="description last"><p>The name of the remote <code>ubus</code> object to invoke.</p></td>
         </tr>
@@ -4603,6 +4707,10 @@ requests.</p></td>
             
             
             
+                <td class="default">
+                
+                </td>
+            
             
             <td class="description last"><p>The name of the remote <code>ubus</code> method to invoke.</p></td>
         </tr>
@@ -4634,6 +4742,10 @@ requests.</p></td>
             
             
             
+                <td class="default">
+                
+                </td>
+            
             
             <td class="description last"><p>Lists the named parameters expected by the remote <code>ubus</code> RPC method.
 The arguments passed to the resulting generated method call function
@@ -4683,6 +4795,10 @@ invoked with <code>filterFn(reply, [ &quot;foo&quot; ], &quot;bar&quot;, &quot;b
             
             
             
+                <td class="default">
+                
+                </td>
+            
             
             <td class="description last"><p>Describes the expected return data structure. The given object is
 supposed to contain a single key selecting the value to use from
@@ -4743,12 +4859,55 @@ be returned as default instead.</li>
             
             
             
+                <td class="default">
+                
+                </td>
+            
             
             <td class="description last"><p>Specfies an optional filter function which is invoked to transform the
 received reply data before it is returned to the caller.</p></td>
         </tr>
        
        
+       
+        <tr>
+            
+                <td class="name"><code>reject</code></td>
+            
+            
+            <td class="type">
+            
+                
+<span class="param-type">boolean</span>
+
+
+            
+            </td>
+            
+            
+                <td class="attributes">
+                
+                    &lt;optional><br>
+                
+                    
+                
+                </td>
+            
+            
+            
+                <td class="default">
+                
+                    false
+                
+                </td>
+            
+            
+            <td class="description last"><p>If set to <code>true</code>, non-zero ubus call status codes are treated as fatal
+error and lead to the rejection of the call promise. The default
+behaviour is to resolve with the call return code value instead.</p></td>
+        </tr>
+       
+       
        </tbody>
 </table></dl>
         
@@ -4790,7 +4949,7 @@ received reply data before it is returned to the caller.</p></td>
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line233">line 233</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line241">line 241</a>
         </div>
         
     </div>
@@ -5003,7 +5162,7 @@ of the RPC method as-is.</td>
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line410">line 410</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line419">line 419</a>
         </div>
         
     </div>
@@ -5191,7 +5350,7 @@ function will fail too, forwarding the error to the caller.</td>
     
         
         <div class="tag-source">
-            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line256">line 256</a>
+            <a href="rpc.js.html">rpc.js</a>, <a href="rpc.js.html#line264">line 264</a>
         </div>
         
     </div>
@@ -5361,7 +5520,7 @@ to the <code>expect</code> and <code>filter</code> declarations.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 898a52c5f0cc96d783364a1871004801dedbf6a3..e103e74f44f4d979d9479b95d476b4f466fcfc9b 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3330,7 +3428,7 @@ UCI configuration data.</p></div>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line270">line 270</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line276">line 276</a>
         </div>
         
     </div>
@@ -3541,7 +3639,7 @@ to the given name for non-anonymous sections.</td>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line859">line 859</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line869">line 869</a>
         </div>
         
     </div>
@@ -3703,7 +3801,7 @@ operation to cancel the rollback timer.</p>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line939">line 939</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line949">line 949</a>
         </div>
         
     </div>
@@ -3804,7 +3902,7 @@ names as keys and arrays of related change records as values.</td>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line89">line 89</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line95">line 95</a>
         </div>
         
     </div>
@@ -3953,7 +4051,7 @@ where <code>X</code> denotes a hexadecimal digit.</td>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line444">line 444</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line450">line 450</a>
         </div>
         
     </div>
@@ -4182,7 +4280,7 @@ found or if the corresponding configuration is not loaded.</li>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line619">line 619</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line629">line 629</a>
         </div>
         
     </div>
@@ -4415,7 +4513,7 @@ found or if the corresponding configuration is not loaded.</li>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line206">line 206</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line212">line 212</a>
         </div>
         
     </div>
@@ -4570,7 +4668,7 @@ that have been successfully loaded.</td>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line719">line 719</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line729">line 729</a>
         </div>
         
     </div>
@@ -4839,7 +4937,7 @@ when either the section specified by <code>sid1</code> or by <code>sid2</code> i
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line297">line 297</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line303">line 303</a>
         </div>
         
     </div>
@@ -4978,7 +5076,7 @@ when either the section specified by <code>sid1</code> or by <code>sid2</code> i
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line120">line 120</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line126">line 126</a>
         </div>
         
     </div>
@@ -5156,7 +5254,7 @@ not be resolved to existing section ID.</td>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line773">line 773</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line783">line 783</a>
         </div>
         
     </div>
@@ -5260,7 +5358,7 @@ have been reloaded by the save operation.</td>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line385">line 385</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line391">line 391</a>
         </div>
         
     </div>
@@ -5473,7 +5571,7 @@ configuration, filtered by type of a type has been specified.</td>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line517">line 517</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line523">line 523</a>
         </div>
         
     </div>
@@ -5669,7 +5767,7 @@ with the given value.</p></td>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line654">line 654</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line664">line 664</a>
         </div>
         
     </div>
@@ -5890,7 +5988,7 @@ with the given value.</p></td>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line238">line 238</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line244">line 244</a>
         </div>
         
     </div>
@@ -6010,7 +6108,7 @@ names to unload.</p></td>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line588">line 588</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line598">line 598</a>
         </div>
         
     </div>
@@ -6175,7 +6273,7 @@ configuration.</p>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line684">line 684</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line694">line 694</a>
         </div>
         
     </div>
@@ -6762,7 +6860,7 @@ underlying option is an UCI list.</p></td>
     
         
         <div class="tag-source">
-            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line353">line 353</a>
+            <a href="uci.js.html">uci.js</a>, <a href="uci.js.html#line359">line 359</a>
         </div>
         
     </div>
@@ -6909,7 +7007,7 @@ associated name as arguments.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 5e7847df3c4eb318b83027217e14e405f57cef6a..320fb565fb4366bd5d663e20d8b5f80ac2ec2470 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3252,7 +3350,7 @@ it in external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line16">line 16</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line17">line 17</a>
         </div>
         
     </div>
@@ -3337,7 +3435,7 @@ it in external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line75">line 75</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line81">line 81</a>
         </div>
         
     </div>
@@ -3446,7 +3544,7 @@ an array of strings or <code>null</code> for unset values.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line107">line 107</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line113">line 113</a>
         </div>
         
     </div>
@@ -3547,7 +3645,7 @@ not meet the validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line156">line 156</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line162">line 162</a>
         </div>
         
     </div>
@@ -3717,7 +3815,7 @@ registered.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line243">line 243</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line249">line 249</a>
         </div>
         
     </div>
@@ -3818,7 +3916,7 @@ widget markup.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line224">line 224</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line230">line 230</a>
         </div>
         
     </div>
@@ -3975,7 +4073,7 @@ as dirty.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line181">line 181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line187">line 187</a>
         </div>
         
     </div>
@@ -4130,7 +4228,7 @@ trigger input value validation.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line93">line 93</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line99">line 99</a>
         </div>
         
     </div>
@@ -4255,7 +4353,7 @@ or <code>null</code> values.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line121">line 121</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line127">line 127</a>
         </div>
         
     </div>
@@ -4553,6 +4651,45 @@ converted to a string and treated as validation error message.</p></td>
         </tr>
        
        
+       
+        <tr>
+            
+                <td class="name"><code>disabled</code></td>
+            
+            
+            <td class="type">
+            
+                
+<span class="param-type">boolean</span>
+
+
+            
+            </td>
+            
+            
+                <td class="attributes">
+                
+                    &lt;optional><br>
+                
+                    
+                
+                </td>
+            
+            
+            
+                <td class="default">
+                
+                    false
+                
+                </td>
+            
+            
+            <td class="description last"><p>Specifies whether the widget should be rendered in disabled state
+(<code>true</code>) or not (<code>false</code>). Disabled widgets cannot be interacted with
+and are displayed in a slightly faded style.</p></td>
+        </tr>
+       
+       
        </tbody>
 </table></dl>
         
@@ -4600,7 +4737,7 @@ converted to a string and treated as validation error message.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index b27a45b4c6c450b1ba658114e7c4171eafee1260..307a47b19c00dda0cd3707d9254b7cae14b04a74 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3249,7 +3347,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line486">line 486</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line494">line 494</a>
         </div>
         
     </div>
@@ -3440,7 +3538,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line593">line 593</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line602">line 602</a>
         </div>
         
     </div>
@@ -3549,7 +3647,7 @@ an array of strings or <code>null</code> for unset values.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line588">line 588</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line597">line 597</a>
         </div>
         
     </div>
@@ -3651,7 +3749,7 @@ an array of strings or <code>null</code> for unset values.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line107">line 107</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line113">line 113</a>
         </div>
         
     </div>
@@ -3754,7 +3852,7 @@ not meet the validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line156">line 156</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line162">line 162</a>
         </div>
         
     </div>
@@ -3926,7 +4024,7 @@ registered.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line540">line 540</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line548">line 548</a>
         </div>
         
     </div>
@@ -4029,7 +4127,7 @@ widget markup.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line224">line 224</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line230">line 230</a>
         </div>
         
     </div>
@@ -4188,7 +4286,7 @@ as dirty.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line181">line 181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line187">line 187</a>
         </div>
         
     </div>
@@ -4345,7 +4443,7 @@ trigger input value validation.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line600">line 600</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line609">line 609</a>
         </div>
         
     </div>
@@ -4472,7 +4570,7 @@ or <code>null</code> values.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line121">line 121</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line127">line 127</a>
         </div>
         
     </div>
@@ -4747,7 +4845,7 @@ it is required for HTML based form submissions.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 2352aa58bb12763ce26b37564091259fb182cece..3031037ccf8f9e8358472a8ea06ba7f4cc04f704 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3250,7 +3348,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1929">line 1929</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1941">line 1941</a>
         </div>
         
     </div>
@@ -3478,7 +3576,7 @@ choice labels.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1606">line 1606</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1618">line 1618</a>
         </div>
         
     </div>
@@ -3624,7 +3722,7 @@ as label text. Choice labels may be any valid value accepted by
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1571">line 1571</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1583">line 1583</a>
         </div>
         
     </div>
@@ -3761,7 +3859,7 @@ of keeping them.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1639">line 1639</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1651">line 1651</a>
         </div>
         
     </div>
@@ -3834,7 +3932,7 @@ of keeping them.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line107">line 107</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line113">line 113</a>
         </div>
         
     </div>
@@ -3937,7 +4035,7 @@ not meet the validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line156">line 156</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line162">line 162</a>
         </div>
         
     </div>
@@ -4109,7 +4207,7 @@ registered.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line224">line 224</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line230">line 230</a>
         </div>
         
     </div>
@@ -4268,7 +4366,7 @@ as dirty.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line181">line 181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line187">line 187</a>
         </div>
         
     </div>
@@ -4425,7 +4523,7 @@ trigger input value validation.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line121">line 121</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line127">line 127</a>
         </div>
         
     </div>
@@ -4777,7 +4875,7 @@ choice value as second argument.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 7baa7e2c0c93e64453ab8a9eb977ac919e8359a6..30280f12ed70d07c4f9f3921a0fee110700cbee8 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3252,7 +3350,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1860">line 1860</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1872">line 1872</a>
         </div>
         
     </div>
@@ -3480,7 +3578,7 @@ choice labels.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1606">line 1606</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1618">line 1618</a>
         </div>
         
     </div>
@@ -3626,7 +3724,7 @@ as label text. Choice labels may be any valid value accepted by
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1571">line 1571</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1583">line 1583</a>
         </div>
         
     </div>
@@ -3763,7 +3861,7 @@ of keeping them.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1639">line 1639</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1651">line 1651</a>
         </div>
         
     </div>
@@ -3836,7 +3934,7 @@ of keeping them.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line107">line 107</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line113">line 113</a>
         </div>
         
     </div>
@@ -3939,7 +4037,7 @@ not meet the validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line156">line 156</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line162">line 162</a>
         </div>
         
     </div>
@@ -4111,7 +4209,7 @@ registered.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line224">line 224</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line230">line 230</a>
         </div>
         
     </div>
@@ -4270,7 +4368,7 @@ as dirty.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line181">line 181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line187">line 187</a>
         </div>
         
     </div>
@@ -4427,7 +4525,7 @@ trigger input value validation.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line121">line 121</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line127">line 127</a>
         </div>
         
     </div>
@@ -4680,7 +4778,7 @@ forcibly set to <code>true</code>.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index f5898d37bc076c5f6e8917d58b119209e370ccfa..a157c38d59214e48afa4b2a971ff19f51386e565 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3250,7 +3348,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line806">line 806</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line817">line 817</a>
         </div>
         
     </div>
@@ -3476,7 +3574,7 @@ choice labels.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1606">line 1606</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1618">line 1618</a>
         </div>
         
     </div>
@@ -3620,7 +3718,7 @@ as label text. Choice labels may be any valid value accepted by
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1571">line 1571</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1583">line 1583</a>
         </div>
         
     </div>
@@ -3755,7 +3853,7 @@ of keeping them.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1639">line 1639</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1651">line 1651</a>
         </div>
         
     </div>
@@ -3828,7 +3926,7 @@ of keeping them.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1848">line 1848</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1860">line 1860</a>
         </div>
         
     </div>
@@ -3939,7 +4037,7 @@ an array of strings or <code>null</code> for unset values.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line107">line 107</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line113">line 113</a>
         </div>
         
     </div>
@@ -4042,7 +4140,7 @@ not meet the validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line156">line 156</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line162">line 162</a>
         </div>
         
     </div>
@@ -4214,7 +4312,7 @@ registered.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line960">line 960</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line971">line 971</a>
         </div>
         
     </div>
@@ -4317,7 +4415,7 @@ widget markup.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line224">line 224</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line230">line 230</a>
         </div>
         
     </div>
@@ -4476,7 +4574,7 @@ as dirty.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line181">line 181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line187">line 187</a>
         </div>
         
     </div>
@@ -4633,7 +4731,7 @@ trigger input value validation.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1821">line 1821</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line1833">line 1833</a>
         </div>
         
     </div>
@@ -4760,7 +4858,7 @@ or <code>null</code> values.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line121">line 121</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line127">line 127</a>
         </div>
         
     </div>
@@ -5478,7 +5576,7 @@ expression. Only applicable when <code>create</code> is <code>true</code>.</p></
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:41 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 11b6f6332b908aa69b2ef4716130ed8785110ad0..12fa533b327d47ccd20f02cbd44a4dd3551f2b84 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3251,7 +3349,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2045">line 2045</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2057">line 2057</a>
         </div>
         
     </div>
@@ -3481,7 +3579,7 @@ arbitrary values to the dynamic list.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2377">line 2377</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2394">line 2394</a>
         </div>
         
     </div>
@@ -3625,7 +3723,7 @@ as label text. Choice labels may be any valid value accepted by
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2390">line 2390</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2407">line 2407</a>
         </div>
         
     </div>
@@ -3699,7 +3797,7 @@ as label text. Choice labels may be any valid value accepted by
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2328">line 2328</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2345">line 2345</a>
         </div>
         
     </div>
@@ -3810,7 +3908,7 @@ an array of strings or <code>null</code> for unset values.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line107">line 107</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line113">line 113</a>
         </div>
         
     </div>
@@ -3913,7 +4011,7 @@ not meet the validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line156">line 156</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line162">line 162</a>
         </div>
         
     </div>
@@ -4085,7 +4183,7 @@ registered.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2114">line 2114</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2126">line 2126</a>
         </div>
         
     </div>
@@ -4188,7 +4286,7 @@ widget markup.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line224">line 224</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line230">line 230</a>
         </div>
         
     </div>
@@ -4347,7 +4445,7 @@ as dirty.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line181">line 181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line187">line 187</a>
         </div>
         
     </div>
@@ -4504,7 +4602,7 @@ trigger input value validation.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2345">line 2345</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2362">line 2362</a>
         </div>
         
     </div>
@@ -4631,7 +4729,7 @@ or <code>null</code> values.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line121">line 121</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line127">line 127</a>
         </div>
         
     </div>
@@ -4855,7 +4953,7 @@ it to remain unselected.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:41 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index d66ecde649718135696bf78ceed268e639106c82..bb84aafecfb5bb3e85ab4890b04db678a1b18a63 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3250,7 +3348,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2462">line 2462</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2479">line 2479</a>
         </div>
         
     </div>
@@ -3445,7 +3543,7 @@ upload control.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2919">line 2919</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2937">line 2937</a>
         </div>
         
     </div>
@@ -3556,7 +3654,7 @@ an array of strings or <code>null</code> for unset values.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line107">line 107</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line113">line 113</a>
         </div>
         
     </div>
@@ -3659,7 +3757,7 @@ not meet the validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line156">line 156</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line162">line 162</a>
         </div>
         
     </div>
@@ -3831,7 +3929,7 @@ registered.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2548">line 2548</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2565">line 2565</a>
         </div>
         
     </div>
@@ -3934,7 +4032,7 @@ widget markup.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line224">line 224</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line230">line 230</a>
         </div>
         
     </div>
@@ -4093,7 +4191,7 @@ as dirty.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line181">line 181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line187">line 187</a>
         </div>
         
     </div>
@@ -4250,7 +4348,7 @@ trigger input value validation.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2924">line 2924</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2942">line 2942</a>
         </div>
         
     </div>
@@ -4377,7 +4475,7 @@ or <code>null</code> values.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line121">line 121</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line127">line 127</a>
         </div>
         
     </div>
@@ -4704,7 +4802,7 @@ ACL setup for the current session.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:41 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 6e8733d7028fe3d292421174b0939b8a1b9ca2ed..a8130359dcebbb5d7b5ce4980c3482ec260c970d 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3250,7 +3348,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2396">line 2396</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2413">line 2413</a>
         </div>
         
     </div>
@@ -3444,7 +3542,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2452">line 2452</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2469">line 2469</a>
         </div>
         
     </div>
@@ -3555,7 +3653,7 @@ an array of strings or <code>null</code> for unset values.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line107">line 107</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line113">line 113</a>
         </div>
         
     </div>
@@ -3658,7 +3756,7 @@ not meet the validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line156">line 156</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line162">line 162</a>
         </div>
         
     </div>
@@ -3830,7 +3928,7 @@ registered.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2432">line 2432</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2449">line 2449</a>
         </div>
         
     </div>
@@ -3933,7 +4031,7 @@ widget markup.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line224">line 224</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line230">line 230</a>
         </div>
         
     </div>
@@ -4092,7 +4190,7 @@ as dirty.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line181">line 181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line187">line 187</a>
         </div>
         
     </div>
@@ -4249,7 +4347,7 @@ trigger input value validation.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2457">line 2457</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2474">line 2474</a>
         </div>
         
     </div>
@@ -4376,7 +4474,7 @@ or <code>null</code> values.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line121">line 121</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line127">line 127</a>
         </div>
         
     </div>
@@ -4458,7 +4556,7 @@ trigger validation runs, e.g. when programmatically altering values.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:41 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index b6c8676868d457e9c439c3aa18b9dab6f42ed634..6de142fb63d0d5a5be7891035004163d3a9ac837 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3251,7 +3349,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line605">line 605</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line614">line 614</a>
         </div>
         
     </div>
@@ -3479,7 +3577,7 @@ choice labels.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line776">line 776</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line787">line 787</a>
         </div>
         
     </div>
@@ -3590,7 +3688,7 @@ an array of strings or <code>null</code> for unset values.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line107">line 107</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line113">line 113</a>
         </div>
         
     </div>
@@ -3693,7 +3791,7 @@ not meet the validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line156">line 156</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line162">line 162</a>
         </div>
         
     </div>
@@ -3865,7 +3963,7 @@ registered.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line696">line 696</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line705">line 705</a>
         </div>
         
     </div>
@@ -3968,7 +4066,7 @@ widget markup.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line224">line 224</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line230">line 230</a>
         </div>
         
     </div>
@@ -4127,7 +4225,7 @@ as dirty.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line181">line 181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line187">line 187</a>
         </div>
         
     </div>
@@ -4284,7 +4382,7 @@ trigger input value validation.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line789">line 789</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line800">line 800</a>
         </div>
         
     </div>
@@ -4411,7 +4509,7 @@ or <code>null</code> values.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line121">line 121</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line127">line 127</a>
         </div>
         
     </div>
@@ -4807,7 +4905,7 @@ selected yet. Only applicable to the <code>select</code> widget type.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:41 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index a39cc8298b6ab50b5b08827984fbdfd9c87b30c9..0f383fbddc123ba65448606be53b2878db552f20 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3249,7 +3347,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line372">line 372</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line379">line 379</a>
         </div>
         
     </div>
@@ -3440,7 +3538,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line476">line 476</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line484">line 484</a>
         </div>
         
     </div>
@@ -3551,7 +3649,7 @@ an array of strings or <code>null</code> for unset values.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line107">line 107</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line113">line 113</a>
         </div>
         
     </div>
@@ -3654,7 +3752,7 @@ not meet the validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line156">line 156</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line162">line 162</a>
         </div>
         
     </div>
@@ -3826,7 +3924,7 @@ registered.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line439">line 439</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line446">line 446</a>
         </div>
         
     </div>
@@ -3929,7 +4027,7 @@ widget markup.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line224">line 224</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line230">line 230</a>
         </div>
         
     </div>
@@ -4088,7 +4186,7 @@ as dirty.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line181">line 181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line187">line 187</a>
         </div>
         
     </div>
@@ -4245,7 +4343,7 @@ trigger input value validation.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line481">line 481</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line489">line 489</a>
         </div>
         
     </div>
@@ -4372,7 +4470,7 @@ or <code>null</code> values.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line121">line 121</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line127">line 127</a>
         </div>
         
     </div>
@@ -4756,7 +4854,7 @@ contents.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:41 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 2e87514e23443da2932e1015e890a3c36b958d0e..d3657a8c9e6594f8b58684ae1a83f80bb6dda87b 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3249,7 +3347,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line246">line 246</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line252">line 252</a>
         </div>
         
     </div>
@@ -3440,7 +3538,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line360">line 360</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line367">line 367</a>
         </div>
         
     </div>
@@ -3551,7 +3649,7 @@ an array of strings or <code>null</code> for unset values.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line107">line 107</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line113">line 113</a>
         </div>
         
     </div>
@@ -3654,7 +3752,7 @@ not meet the validation constraints.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line156">line 156</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line162">line 162</a>
         </div>
         
     </div>
@@ -3826,7 +3924,7 @@ registered.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line305">line 305</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line311">line 311</a>
         </div>
         
     </div>
@@ -3929,7 +4027,7 @@ widget markup.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line224">line 224</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line230">line 230</a>
         </div>
         
     </div>
@@ -4088,7 +4186,7 @@ as dirty.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line181">line 181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line187">line 187</a>
         </div>
         
     </div>
@@ -4245,7 +4343,7 @@ trigger input value validation.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line366">line 366</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line373">line 373</a>
         </div>
         
     </div>
@@ -4372,7 +4470,7 @@ or <code>null</code> values.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line121">line 121</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line127">line 127</a>
         </div>
         
     </div>
@@ -4684,7 +4782,7 @@ corresponding <code>&lt;input&gt;</code> element is empty.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:41 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index ceb09d6a23186a34eb45bae77732a17959c4af80..37c3aeb76fb35191b744c28706d562420dcee48e 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3247,7 +3345,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3765">line 3765</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3854">line 3854</a>
         </div>
         
     </div>
@@ -3332,7 +3430,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line4080">line 4080</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line4156">line 4156</a>
         </div>
         
     </div>
@@ -3473,7 +3571,7 @@ settings.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3855">line 3855</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3931">line 3931</a>
         </div>
         
     </div>
@@ -3546,7 +3644,7 @@ and offer options to revert or apply the shown changes.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3821">line 3821</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3897">line 3897</a>
         </div>
         
     </div>
@@ -3664,7 +3762,7 @@ UCI changeset structure.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line4127">line 4127</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line4203">line 4203</a>
         </div>
         
     </div>
@@ -3740,7 +3838,7 @@ complete.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3786">line 3786</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3875">line 3875</a>
         </div>
         
     </div>
@@ -3868,7 +3966,7 @@ is removed.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 1d21b68f652c037e3272e8ae149c111a1bafb5bf..39222a14fa0a010f3ffcc9582322aa65119fbc42 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3244,7 +3342,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code>.</p></
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2929">line 2929</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3025">line 3025</a>
         </div>
         
     </div>
@@ -3340,6 +3438,9 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code>.</p></
             <dt><a href="LuCI.ui.Hiddenfield.html">Hiddenfield</a></dt>
             <dd></dd>
         
+            <dt><a href="LuCI.ui.menu.html">menu</a></dt>
+            <dd></dd>
+        
             <dt><a href="LuCI.ui.Select.html">Select</a></dt>
             <dd></dd>
         
@@ -3372,7 +3473,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code>.</p></
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3109">line 3109</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3205">line 3205</a>
         </div>
         
     </div>
@@ -3602,7 +3703,7 @@ banner element.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line4195">line 4195</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line4271">line 4271</a>
         </div>
         
     </div>
@@ -3916,7 +4017,7 @@ trigger field validation or to bind it to further events.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3729">line 3729</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3818">line 3818</a>
         </div>
         
     </div>
@@ -4053,7 +4154,7 @@ default.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line4246">line 4246</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line4322">line 4322</a>
         </div>
         
     </div>
@@ -4279,7 +4380,7 @@ valid function value.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3218">line 3218</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3314">line 3314</a>
         </div>
         
     </div>
@@ -4427,7 +4528,7 @@ requested indicator was not found.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3020">line 3020</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3116">line 3116</a>
         </div>
         
     </div>
@@ -4503,7 +4604,7 @@ handler as-is without the need to bind it first.</p>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line4289">line 4289</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line4365">line 4365</a>
         </div>
         
     </div>
@@ -4655,7 +4756,7 @@ catched and rendered using <a href="LuCI.html#error"><code>LuCI.error()</code></
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3261">line 3261</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3357">line 3357</a>
         </div>
         
     </div>
@@ -4897,7 +4998,7 @@ accepted by <code>LuCI.dom.content()</code>.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3703">line 3703</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3792">line 3792</a>
         </div>
         
     </div>
@@ -5100,7 +5201,7 @@ or rejecting with <code>null</code> when the connectivity check timed out.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3181">line 3181</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3277">line 3277</a>
         </div>
         
     </div>
@@ -5371,7 +5472,7 @@ changes were made.</td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line2994">line 2994</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3090">line 3090</a>
         </div>
         
     </div>
@@ -5600,7 +5701,7 @@ element.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3581">line 3581</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3670">line 3670</a>
         </div>
         
     </div>
@@ -5958,7 +6059,7 @@ cancelled by the user.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 88279f346ce8f9198c42b332b7b214af5b57fd47..fac9caf107b3f95ed8ae86c7746bf887613551a5 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3248,7 +3346,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3302">line 3302</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3398">line 3398</a>
         </div>
         
     </div>
@@ -3333,7 +3431,7 @@ external JavaScript, use <code>L.require(&quot;ui&quot;).then(...)</code> and ac
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3357">line 3357</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3453">line 3453</a>
         </div>
         
     </div>
@@ -3462,7 +3560,7 @@ DOM node.</p></td>
     
         
         <div class="tag-source">
-            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3427">line 3427</a>
+            <a href="ui.js.html">ui.js</a>, <a href="ui.js.html#line3523">line 3523</a>
         </div>
         
     </div>
@@ -3615,7 +3713,7 @@ DOM node.</p></td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:41 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 2ea583ebb376cd16b41621e2baa166ac9519151f..dbf81e9d868facc9899220ec404eabfb4a32e19b 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3243,7 +3341,7 @@ set of methods to inherit from.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1826">line 1826</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1923">line 1923</a>
         </div>
         
     </div>
@@ -3328,7 +3426,7 @@ set of methods to inherit from.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2053">line 2053</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2150">line 2150</a>
         </div>
         
     </div>
@@ -3441,7 +3539,7 @@ methods are overwritten with <code>null</code>.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2019">line 2019</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2116">line 2116</a>
         </div>
         
     </div>
@@ -3605,7 +3703,7 @@ is reenabled.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1938">line 1938</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2035">line 2035</a>
         </div>
         
     </div>
@@ -3769,7 +3867,7 @@ is reenabled.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1982">line 1982</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2079">line 2079</a>
         </div>
         
     </div>
@@ -3935,7 +4033,7 @@ is reenabled.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1873">line 1873</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1970">line 1970</a>
         </div>
         
     </div>
@@ -4045,7 +4143,7 @@ the default implementation does nothing.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line1905">line 1905</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line2002">line 2002</a>
         </div>
         
     </div>
@@ -4219,7 +4317,7 @@ to a <code>Node</code> value.</td>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:41 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 873d691c0dde1c62d8f52f299545155d23c5bf0d..99c01420d00fe3e012442e2da48ecae2b9abd654 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3246,7 +3344,7 @@ request handling.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3068">line 3068</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3255">line 3255</a>
         </div>
         
     </div>
@@ -3333,7 +3431,7 @@ request handling.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3184">line 3184</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3371">line 3371</a>
         </div>
         
     </div>
@@ -3407,7 +3505,7 @@ request handling.</p></div>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3173">line 3173</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3360">line 3360</a>
         </div>
         
     </div>
@@ -3510,7 +3608,7 @@ already completed.</td>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3160">line 3160</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3347">line 3347</a>
         </div>
         
     </div>
@@ -3587,7 +3685,7 @@ finishes or timed out.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3116">line 3116</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3303">line 3303</a>
         </div>
         
     </div>
@@ -3830,7 +3928,7 @@ finishes or timed out.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3143">line 3143</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3330">line 3330</a>
         </div>
         
     </div>
@@ -4073,7 +4171,7 @@ finishes or timed out.</p>
     
         
         <div class="tag-source">
-            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3199">line 3199</a>
+            <a href="luci.js.html">luci.js</a>, <a href="luci.js.html#line3386">line 3386</a>
         </div>
         
     </div>
@@ -4183,7 +4281,7 @@ when invoked.</p>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:41 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 258b4897c1896f533f9329fa331cd4f1f7f65f03..4b90165dbaf213c9f3d4c4408f4d1f92b52f6809 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
             <pre id="source-code" class="prettyprint source "><code>'use strict';
 'require ui';
 'require uci';
+'require rpc';
 'require dom';
 'require baseclass';
 
 var scope = this;
 
+var callSessionAccess = rpc.declare({
+       object: 'session',
+       method: 'access',
+       params: [ 'scope', 'object', 'function' ],
+       expect: { 'access': false }
+});
+
 var CBIJSONConfig = baseclass.extend({
        __init__: function(data) {
                data = Object.assign({}, data);
@@ -3581,6 +3687,20 @@ var CBIMap = CBIAbstractElement.extend(/** @lends LuCI.form.Map.prototype */ {
                this.data = uci;
        },
 
+       /**
+        * Toggle readonly state of the form.
+        *
+        * If set to `true`, the Map instance is marked readonly and any form
+        * option elements added to it will inherit the readonly state.
+        *
+        * If left unset, the Map will test the access permission of the primary
+        * uci configuration upon loading and mark the form readonly if no write
+        * permissions are granted.
+        *
+        * @name LuCI.form.Map.prototype#readonly
+        * @type boolean
+        */
+
        /**
         * Find all DOM nodes within this Map which match the given search
         * parameters. This function is essentially a convenience wrapper around
@@ -3727,8 +3847,17 @@ var CBIMap = CBIAbstractElement.extend(/** @lends LuCI.form.Map.prototype */ {
         * an error.
         */
        load: function() {
-               return this.data.load(this.parsechain || [ this.config ])
-                       .then(this.loadChildren.bind(this));
+               var doCheckACL = (!(this instanceof CBIJSONMap) &amp;&amp; this.readonly == null);
+
+               return Promise.all([
+                       doCheckACL ? callSessionAccess('uci', this.config, 'write') : true,
+                       this.data.load(this.parsechain || [ this.config ])
+               ]).then(L.bind(function(res) {
+                       if (res[0] === false)
+                               this.readonly = true;
+
+                       return this.loadChildren();
+               }, this));
        },
 
        /**
@@ -3782,11 +3911,18 @@ var CBIMap = CBIAbstractElement.extend(/** @lends LuCI.form.Map.prototype */ {
                        .then(this.data.save.bind(this.data))
                        .then(this.load.bind(this))
                        .catch(function(e) {
-                               if (!silent)
-                                       alert('Cannot save due to invalid values');
+                               if (!silent) {
+                                       ui.showModal(_('Save error'), [
+                                               E('p', {}, [ _('An error occurred while saving the form:') ]),
+                                               E('p', {}, [ E('em', { 'style': 'white-space:pre' }, [ e.message ]) ]),
+                                               E('div', { 'class': 'right' }, [
+                                                       E('button', { 'click': ui.hideModal }, [ _('Dismiss') ])
+                                               ])
+                                       ]);
+                               }
 
-                               return Promise.reject();
-                       }).finally(this.renderContents.bind(this));
+                               return Promise.reject(e);
+                       }).then(this.renderContents.bind(this));
        },
 
        /**
@@ -4519,6 +4655,19 @@ var CBIAbstractValue = CBIAbstractElement.extend(/** @lends LuCI.form.AbstractVa
         * @default null
         */
 
+       /**
+        * Make option element readonly.
+        *
+        * This property defaults to the readonly state of the parent form element.
+        * When set to `true`, the underlying widget is rendered in disabled state,
+        * means its contents cannot be changed and the widget cannot be interacted
+        * with.
+        *
+        * @name LuCI.form.AbstractValue.prototype#readonly
+        * @type boolean
+        * @default false
+        */
+
        /**
         * Override the cell width of a table or grid section child option.
         *
@@ -4972,8 +5121,10 @@ var CBIAbstractValue = CBIAbstractElement.extend(/** @lends LuCI.form.AbstractVa
                    cval = this.cfgvalue(section_id),
                    fval = active ? this.formvalue(section_id) : null;
 
-               if (active &amp;&amp; !this.isValid(section_id))
-                       return Promise.reject();
+               if (active &amp;&amp; !this.isValid(section_id)) {
+                       var title = this.stripTags(this.title).trim();
+                       return Promise.reject(new TypeError(_('Option "%s" contains an invalid input value.').format(title || this.option)));
+               }
 
                if (fval != '' &amp;&amp; fval != null) {
                        if (this.forcewrite || !isEqual(cval, fval))
@@ -4984,8 +5135,8 @@ var CBIAbstractValue = CBIAbstractElement.extend(/** @lends LuCI.form.AbstractVa
                                return Promise.resolve(this.remove(section_id));
                        }
                        else if (!isEqual(cval, fval)) {
-                               console.log('This should have been catched by isValid()');
-                               return Promise.reject();
+                               var title = this.stripTags(this.title).trim();
+                               return Promise.reject(new TypeError(_('Option "%s" must not be empty.').format(title || this.option)));
                        }
                }
 
@@ -5169,13 +5320,15 @@ var CBITypedSection = CBIAbstractSection.extend(/** @lends LuCI.form.TypedSectio
                        createEl.appendChild(E('button', {
                                'class': 'cbi-button cbi-button-add',
                                'title': btn_title || _('Add'),
-                               'click': ui.createHandlerFn(this, 'handleAdd')
+                               'click': ui.createHandlerFn(this, 'handleAdd'),
+                               'disabled': this.map.readonly || null
                        }, [ btn_title || _('Add') ]));
                }
                else {
                        var nameEl = E('input', {
                                'type': 'text',
-                               'class': 'cbi-section-create-name'
+                               'class': 'cbi-section-create-name',
+                               'disabled': this.map.readonly || null
                        });
 
                        dom.append(createEl, [
@@ -5190,7 +5343,8 @@ var CBITypedSection = CBIAbstractSection.extend(/** @lends LuCI.form.TypedSectio
                                                        return;
 
                                                return this.handleAdd(ev, nameEl.value);
-                                       })
+                                       }),
+                                       'disabled': this.map.readonly || null
                                })
                        ]);
 
@@ -5233,7 +5387,8 @@ var CBITypedSection = CBIAbstractSection.extend(/** @lends LuCI.form.TypedSectio
                                                        'class': 'cbi-button',
                                                        'name': 'cbi.rts.%s.%s'.format(config_name, cfgsections[i]),
                                                        'data-section-id': cfgsections[i],
-                                                       'click': ui.createHandlerFn(this, 'handleRemove', cfgsections[i])
+                                                       'click': ui.createHandlerFn(this, 'handleRemove', cfgsections[i]),
+                                                       'disabled': this.map.readonly || null
                                                }, [ _('Delete') ])));
                        }
 
@@ -5609,7 +5764,8 @@ var CBITableSection = CBITypedSection.extend(/** @lends LuCI.form.TableSection.p
                                E('div', {
                                        'title': _('Drag to reorder'),
                                        'class': 'btn cbi-button drag-handle center',
-                                       'style': 'cursor:move'
+                                       'style': 'cursor:move',
+                                       'disabled': this.map.readonly || null
                                }, '☰')
                        ]);
                }
@@ -5650,7 +5806,8 @@ var CBITableSection = CBITypedSection.extend(/** @lends LuCI.form.TableSection.p
                                E('button', {
                                        'title': btn_title || _('Delete'),
                                        'class': 'cbi-button cbi-button-remove',
-                                       'click': ui.createHandlerFn(this, 'handleRemove', section_id)
+                                       'click': ui.createHandlerFn(this, 'handleRemove', section_id),
+                                       'disabled': this.map.readonly || null
                                }, [ btn_title || _('Delete') ])
                        );
                }
@@ -5801,6 +5958,7 @@ var CBITableSection = CBITypedSection.extend(/** @lends LuCI.form.TableSection.p
                    s = m.section(CBINamedSection, section_id, this.sectiontype);
 
                m.parent = parent;
+               m.readonly = parent.readonly;
 
                s.tabs = this.tabs;
                s.tab_names = this.tab_names;
@@ -5848,7 +6006,8 @@ var CBITableSection = CBITypedSection.extend(/** @lends LuCI.form.TableSection.p
                                        }, [ _('Dismiss') ]), ' ',
                                        E('button', {
                                                'class': 'cbi-button cbi-button-positive important',
-                                               'click': ui.createHandlerFn(this, 'handleModalSave', m)
+                                               'click': ui.createHandlerFn(this, 'handleModalSave', m),
+                                               'disabled': m.readonly || null
                                        }, [ _('Save') ])
                                ])
                        ], 'cbi-modal');
@@ -6135,7 +6294,8 @@ var CBINamedSection = CBIAbstractSection.extend(/** @lends LuCI.form.NamedSectio
                                        E('div', { 'class': 'cbi-section-remove right' },
                                                E('button', {
                                                        'class': 'cbi-button',
-                                                       'click': ui.createHandlerFn(this, 'handleRemove')
+                                                       'click': ui.createHandlerFn(this, 'handleRemove'),
+                                                       'disabled': this.map.readonly || null
                                                }, [ _('Delete') ])));
                        }
 
@@ -6150,7 +6310,8 @@ var CBINamedSection = CBIAbstractSection.extend(/** @lends LuCI.form.NamedSectio
                        sectionEl.appendChild(
                                E('button', {
                                        'class': 'cbi-button cbi-button-add',
-                                       'click': ui.createHandlerFn(this, 'handleAdd')
+                                       'click': ui.createHandlerFn(this, 'handleAdd'),
+                                       'disabled': this.map.readonly || null
                                }, [ _('Add') ]));
                }
 
@@ -6344,7 +6505,8 @@ var CBIValue = CBIAbstractValue.extend(/** @lends LuCI.form.Value.prototype */ {
                                optional: this.optional || this.rmempty,
                                datatype: this.datatype,
                                select_placeholder: this.placeholder || placeholder,
-                               validate: L.bind(this.validate, this, section_id)
+                               validate: L.bind(this.validate, this, section_id),
+                               disabled: (this.readonly != null) ? this.readonly : this.map.readonly
                        });
                }
                else {
@@ -6354,7 +6516,8 @@ var CBIValue = CBIAbstractValue.extend(/** @lends LuCI.form.Value.prototype */ {
                                optional: this.optional || this.rmempty,
                                datatype: this.datatype,
                                placeholder: this.placeholder,
-                               validate: L.bind(this.validate, this, section_id)
+                               validate: L.bind(this.validate, this, section_id),
+                               disabled: (this.readonly != null) ? this.readonly : this.map.readonly
                        });
                }
 
@@ -6409,7 +6572,8 @@ var CBIDynamicList = CBIValue.extend(/** @lends LuCI.form.DynamicList.prototype
                        optional: this.optional || this.rmempty,
                        datatype: this.datatype,
                        placeholder: this.placeholder,
-                       validate: L.bind(this.validate, this, section_id)
+                       validate: L.bind(this.validate, this, section_id),
+                       disabled: (this.readonly != null) ? this.readonly : this.map.readonly
                });
 
                return widget.render();
@@ -6474,7 +6638,8 @@ var CBIListValue = CBIValue.extend(/** @lends LuCI.form.ListValue.prototype */ {
                        sort: this.keylist,
                        optional: this.optional,
                        placeholder: this.placeholder,
-                       validate: L.bind(this.validate, this, section_id)
+                       validate: L.bind(this.validate, this, section_id),
+                       disabled: (this.readonly != null) ? this.readonly : this.map.readonly
                });
 
                return widget.render();
@@ -6545,7 +6710,8 @@ var CBIFlagValue = CBIValue.extend(/** @lends LuCI.form.FlagValue.prototype */ {
                        id: this.cbid(section_id),
                        value_enabled: this.enabled,
                        value_disabled: this.disabled,
-                       validate: L.bind(this.validate, this, section_id)
+                       validate: L.bind(this.validate, this, section_id),
+                       disabled: (this.readonly != null) ? this.readonly : this.map.readonly
                });
 
                return widget.render();
@@ -6584,8 +6750,10 @@ var CBIFlagValue = CBIValue.extend(/** @lends LuCI.form.FlagValue.prototype */ {
                if (this.isActive(section_id)) {
                        var fval = this.formvalue(section_id);
 
-                       if (!this.isValid(section_id))
-                               return Promise.reject();
+                       if (!this.isValid(section_id)) {
+                               var title = this.stripTags(this.title).trim();
+                               return Promise.reject(new TypeError(_('Option "%s" contains an invalid input value.').format(title || this.option)));
+                       }
 
                        if (fval == this.default &amp;&amp; (this.optional || this.rmempty))
                                return Promise.resolve(this.remove(section_id));
@@ -6671,7 +6839,8 @@ var CBIMultiValue = CBIDynamicList.extend(/** @lends LuCI.form.MultiValue.protot
                        select_placeholder: this.placeholder,
                        display_items: this.display_size || this.size || 3,
                        dropdown_items: this.dropdown_size || this.size || -1,
-                       validate: L.bind(this.validate, this, section_id)
+                       validate: L.bind(this.validate, this, section_id),
+                       disabled: (this.readonly != null) ? this.readonly : this.map.readonly
                });
 
                return widget.render();
@@ -6763,7 +6932,8 @@ var CBITextValue = CBIValue.extend(/** @lends LuCI.form.TextValue.prototype */ {
                        cols: this.cols,
                        rows: this.rows,
                        wrap: this.wrap,
-                       validate: L.bind(this.validate, this, section_id)
+                       validate: L.bind(this.validate, this, section_id),
+                       disabled: (this.readonly != null) ? this.readonly : this.map.readonly
                });
 
                return widget.render();
@@ -6833,7 +7003,7 @@ var CBIDummyValue = CBIValue.extend(/** @lends LuCI.form.DummyValue.prototype */
                    hiddenEl = new ui.Hiddenfield(value, { id: this.cbid(section_id) }),
                    outputEl = E('div');
 
-               if (this.href)
+               if (this.href &amp;&amp; !((this.readonly != null) ? this.readonly : this.map.readonly))
                        outputEl.appendChild(E('a', { 'href': this.href }));
 
                dom.append(outputEl.lastChild || outputEl,
@@ -6954,7 +7124,8 @@ var CBIButtonValue = CBIValue.extend(/** @lends LuCI.form.ButtonValue.prototype
 
                                                ev.currentTarget.parentNode.nextElementSibling.value = value;
                                                return this.map.save();
-                                       }, section_id)
+                                       }, section_id),
+                                       'disabled': ((this.readonly != null) ? this.readonly : this.map.readonly) || null
                                }, [ btn_title ])
                        ]);
                else
@@ -7129,7 +7300,8 @@ var CBIFileUpload = CBIValue.extend(/** @lends LuCI.form.FileUpload.prototype */
                        show_hidden: this.show_hidden,
                        enable_upload: this.enable_upload,
                        enable_remove: this.enable_remove,
-                       root_directory: this.root_directory
+                       root_directory: this.root_directory,
+                       disabled: (this.readonly != null) ? this.readonly : this.map.readonly
                });
 
                return browserEl.render();
@@ -7338,7 +7510,7 @@ return baseclass.extend(/** @lends LuCI.form.prototype */ {
         
 
         <footer>
-            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index a356962f0474ff8e66b32b2ca6c0720e7ed60092..160faf2000a905d426bede38a66b20217961f2c8 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3657,7 +3755,7 @@ return FileSystem;
         
 
         <footer>
-            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 59a6b953d0a582c69a01e933ace5493a7185e180..e510e37dd426ee012cae5bb1a4813b03c787f2a6 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
         
 
         <footer>
-            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a target="_blank" href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 33dab57164f85395a20b088bf7f917cbd66e1430..4c146ef3888e320496c50dc93c8d4fbbe63c4bac 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
 (function(window, document, undefined) {
        'use strict';
 
+       var env = {};
+
        /* Object.assign polyfill for IE */
        if (typeof Object.assign !== 'function') {
                Object.defineProperty(Object, 'assign', {
                 */
                add: function(fn, interval) {
                        if (interval == null || interval &lt;= 0)
-                               interval = window.L ? window.L.env.pollinterval : null;
+                               interval = env.pollinterval || null;
 
                        if (isNaN(interval) || typeof(fn) != 'function')
                                throw new TypeError('Invalid argument to LuCI.poll.add()');
         * To import the class in views, use `'require dom'`, to import it in
         * external JavaScript, use `L.require("dom").then(...)`.
         */
-       var DOM = Class.singleton(/* @lends LuCI.dom.prototype */ {
+       var DOM = Class.singleton(/** @lends LuCI.dom.prototype */ {
                __name__: 'LuCI.dom',
 
                /**
                 */
                bindClassInstance: function(node, inst) {
                        if (!(inst instanceof Class))
-                               L.error('TypeError', 'Argument must be a class instance');
+                               LuCI.prototype.error('TypeError', 'Argument must be a class instance');
 
                        return this.data(node, '_class', inst);
                },
                }
        });
 
+       /**
+        * @class session
+        * @memberof LuCI
+        * @hideconstructor
+        * @classdesc
+        *
+        * The `session` class provides various session related functionality.
+        */
+       var Session = Class.singleton(/** @lends LuCI.session.prototype */ {
+               __name__: 'LuCI.session',
+
+               /**
+                * Retrieve the current session ID.
+                *
+                * @returns {string}
+                * Returns the current session ID.
+                */
+               getID: function() {
+                       return env.sessionid || '00000000000000000000000000000000';
+               },
+
+               /**
+                * Retrieve data from the local session storage.
+                *
+                * @param {string} [key]
+                * The key to retrieve from the session data store. If omitted, all
+                * session data will be returned.
+                *
+                * @returns {*}
+                * Returns the stored session data or `null` if the given key wasn't
+                * found.
+                */
+               getLocalData: function(key) {
+                       try {
+                               var sid = this.getID(),
+                                   item = 'luci-session-store',
+                                   data = JSON.parse(window.sessionStorage.getItem(item));
+
+                               if (!LuCI.prototype.isObject(data) || !data.hasOwnProperty(sid)) {
+                                       data = {};
+                                       data[sid] = {};
+                               }
+
+                               if (key != null)
+                                       return data[sid].hasOwnProperty(key) ? data[sid][key] : null;
+
+                               return data[sid];
+                       }
+                       catch (e) {
+                               return (key != null) ? null : {};
+                       }
+               },
+
+               /**
+                * Set data in the local session storage.
+                *
+                * @param {string} key
+                * The key to set in the session data store.
+                *
+                * @param {*} value
+                * The value to store. It will be internally converted to JSON before
+                * being put in the session store.
+                *
+                * @returns {boolean}
+                * Returns `true` if the data could be stored or `false` on error.
+                */
+               setLocalData: function(key, value) {
+                       if (key == null)
+                               return false;
+
+                       try {
+                               var sid = this.getID(),
+                                   item = 'luci-session-store',
+                                   data = JSON.parse(window.sessionStorage.getItem(item));
+
+                               if (!LuCI.prototype.isObject(data) || !data.hasOwnProperty(sid)) {
+                                       data = {};
+                                       data[sid] = {};
+                               }
+
+                               if (value != null)
+                                       data[sid][key] = value;
+                               else
+                                       delete data[sid][key];
+
+                               window.sessionStorage.setItem(item, JSON.stringify(data));
+
+                               return true;
+                       }
+                       catch (e) {
+                               return false;
+                       }
+               }
+       });
+
        /**
         * @class view
         * @memberof LuCI
         * The `view` class forms the basis of views and provides a standard
         * set of methods to inherit from.
         */
-       var View = Class.extend(/* @lends LuCI.view.prototype */ {
+       var View = Class.extend(/** @lends LuCI.view.prototype */ {
                __name__: 'LuCI.view',
 
                __init__: function() {
                        DOM.content(vp, E('div', { 'class': 'spinning' }, _('Loading view…')));
 
                        return Promise.resolve(this.load())
-                               .then(L.bind(this.render, this))
-                               .then(L.bind(function(nodes) {
+                               .then(LuCI.prototype.bind(this.render, this))
+                               .then(LuCI.prototype.bind(function(nodes) {
                                        var vp = document.getElementById('view');
 
                                        DOM.content(vp, nodes);
                                        DOM.append(vp, this.addFooter());
-                               }, this)).catch(L.error);
+                               }, this)).catch(LuCI.prototype.error);
                },
 
                /**
                 */
                handleSaveApply: function(ev, mode) {
                        return this.handleSave(ev).then(function() {
-                               L.ui.changes.apply(mode == '0');
+                               classes.ui.changes.apply(mode == '0');
                        });
                },
 
                 * methods are overwritten with `null`.
                 */
                addFooter: function() {
-                       var footer = E([]);
+                       var footer = E([]),
+                           vp = document.getElementById('view'),
+                           hasmap = false,
+                           readonly = true;
+
+                       vp.querySelectorAll('.cbi-map').forEach(function(map) {
+                               var m = DOM.findClassInstance(map);
+                               if (m) {
+                                       hasmap = true;
+
+                                       if (!m.readonly)
+                                               readonly = false;
+                               }
+                       });
+
+                       if (!hasmap)
+                               readonly = !LuCI.prototype.hasViewPermission();
 
-                       var saveApplyBtn = this.handleSaveApply ? new L.ui.ComboButton('0', {
+                       var saveApplyBtn = this.handleSaveApply ? new classes.ui.ComboButton('0', {
                                0: [ _('Save &amp; Apply') ],
                                1: [ _('Apply unchecked') ]
                        }, {
                                        0: 'btn cbi-button cbi-button-apply important',
                                        1: 'btn cbi-button cbi-button-negative important'
                                },
-                               click: L.ui.createHandlerFn(this, 'handleSaveApply')
+                               click: classes.ui.createHandlerFn(this, 'handleSaveApply'),
+                               disabled: readonly || null
                        }).render() : E([]);
 
                        if (this.handleSaveApply || this.handleSave || this.handleReset) {
                                        saveApplyBtn, ' ',
                                        this.handleSave ? E('button', {
                                                'class': 'cbi-button cbi-button-save',
-                                               'click': L.ui.createHandlerFn(this, 'handleSave')
+                                               'click': classes.ui.createHandlerFn(this, 'handleSave'),
+                                               'disabled': readonly || null
                                        }, [ _('Save') ]) : '', ' ',
                                        this.handleReset ? E('button', {
                                                'class': 'cbi-button cbi-button-reset',
-                                               'click': L.ui.createHandlerFn(this, 'handleReset')
+                                               'click': classes.ui.createHandlerFn(this, 'handleReset'),
+                                               'disabled': readonly || null
                                        }, [ _('Reset') ]) : ''
                                ]));
                        }
            domParser = null,
            originalCBIInit = null,
            rpcBaseURL = null,
-           sysFeatures = null;
+           sysFeatures = null,
+           preloadClasses = null;
 
        /* "preload" builtin classes to make the available via require */
        var classes = {
                dom: DOM,
                poll: Poll,
                request: Request,
+               session: Session,
                view: View
        };
 
        var LuCI = Class.extend(/** @lends LuCI.prototype */ {
                __name__: 'LuCI',
-               __init__: function(env) {
+               __init__: function(setenv) {
 
                        document.querySelectorAll('script[src*="/luci.js"]').forEach(function(s) {
-                               if (env.base_url == null || env.base_url == '') {
+                               if (setenv.base_url == null || setenv.base_url == '') {
                                        var m = (s.getAttribute('src') || '').match(/^(.*)\/luci\.js(?:\?v=([^?]+))?$/);
                                        if (m) {
-                                               env.base_url = m[1];
-                                               env.resource_version = m[2];
+                                               setenv.base_url = m[1];
+                                               setenv.resource_version = m[2];
                                        }
                                }
                        });
 
-                       if (env.base_url == null)
+                       if (setenv.base_url == null)
                                this.error('InternalError', 'Cannot find url of luci.js');
 
-                       env.cgi_base = env.scriptname.replace(/\/[^\/]+$/, '');
-
-                       Object.assign(this.env, env);
+                       setenv.cgi_base = setenv.scriptname.replace(/\/[^\/]+$/, '');
 
-                       document.addEventListener('poll-start', function(ev) {
-                               document.querySelectorAll('[id^="xhr_poll_status"]').forEach(function(e) {
-                                       e.style.display = (e.id == 'xhr_poll_status_off') ? 'none' : '';
-                               });
-                       });
-
-                       document.addEventListener('poll-stop', function(ev) {
-                               document.querySelectorAll('[id^="xhr_poll_status"]').forEach(function(e) {
-                                       e.style.display = (e.id == 'xhr_poll_status_on') ? 'none' : '';
-                               });
-                       });
+                       Object.assign(env, setenv);
 
                        var domReady = new Promise(function(resolveFn, rejectFn) {
                                document.addEventListener('DOMContentLoaded', resolveFn);
                 */
                error: function(type, fmt /*, ...*/) {
                        try {
-                               L.raise.apply(L, Array.prototype.slice.call(arguments));
+                               LuCI.prototype.raise.apply(LuCI.prototype,
+                                       Array.prototype.slice.call(arguments));
                        }
                        catch (e) {
                                if (!e.reported) {
-                                       if (L.ui)
-                                               L.ui.addNotification(e.name || _('Runtime error'),
+                                       if (classes.ui)
+                                               classes.ui.addNotification(e.name || _('Runtime error'),
                                                        E('pre', {}, e.message), 'danger');
                                        else
                                                DOM.content(document.querySelector('#maincontent'),
                        if (classes[name] != null) {
                                /* Circular dependency */
                                if (from.indexOf(name) != -1)
-                                       L.raise('DependencyError',
+                                       LuCI.prototype.raise('DependencyError',
                                                'Circular dependency: class "%s" depends on "%s"',
                                                name, from.join('" which depends on "'));
 
                                return Promise.resolve(classes[name]);
                        }
 
-                       url = '%s/%s.js%s'.format(L.env.base_url, name.replace(/\./g, '/'), (L.env.resource_version ? '?v=' + L.env.resource_version : ''));
+                       url = '%s/%s.js%s'.format(env.base_url, name.replace(/\./g, '/'), (env.resource_version ? '?v=' + env.resource_version : ''));
                        from = [ name ].concat(from);
 
                        var compileClass = function(res) {
                                if (!res.ok)
-                                       L.raise('NetworkError',
+                                       LuCI.prototype.raise('NetworkError',
                                                'HTTP error %d while loading class file "%s"', res.status, url);
 
                                var source = res.text(),
 
                                                if (m) {
                                                        var dep = m[1], as = m[2] || dep.replace(/[^a-zA-Z0-9_]/g, '_');
-                                                       depends.push(L.require(dep, from));
+                                                       depends.push(LuCI.prototype.require(dep, from));
                                                        args += ', ' + as;
                                                }
                                                else if (!strictmatch.exec(s)) {
                                                                .format(args, source, res.url));
                                        }
                                        catch (error) {
-                                               L.raise('SyntaxError', '%s\n  in %s:%s',
+                                               LuCI.prototype.raise('SyntaxError', '%s\n  in %s:%s',
                                                        error.message, res.url, error.lineNumber || '?');
                                        }
 
                                        _class = _factory.apply(_factory, [window, document, L].concat(instances));
 
                                        if (!Class.isSubclass(_class))
-                                           L.error('TypeError', '"%s" factory yields invalid constructor', name);
+                                           LuCI.prototype.error('TypeError', '"%s" factory yields invalid constructor', name);
 
                                        if (_class.displayName == 'AnonymousClass')
                                                _class.displayName = toCamelCase(name + 'Class');
 
                /* DOM setup */
                probeRPCBaseURL: function() {
-                       if (rpcBaseURL == null) {
-                               try {
-                                       rpcBaseURL = window.sessionStorage.getItem('rpcBaseURL');
-                               }
-                               catch (e) { }
-                       }
+                       if (rpcBaseURL == null)
+                               rpcBaseURL = Session.getLocalData('rpcBaseURL');
 
                        if (rpcBaseURL == null) {
                                var rpcFallbackURL = this.url('admin/ubus');
 
-                               rpcBaseURL = Request.get(this.env.ubuspath).then(function(res) {
-                                       return (rpcBaseURL = (res.status == 400) ? L.env.ubuspath : rpcFallbackURL);
+                               rpcBaseURL = Request.get(env.ubuspath).then(function(res) {
+                                       return (rpcBaseURL = (res.status == 400) ? env.ubuspath : rpcFallbackURL);
                                }, function() {
                                        return (rpcBaseURL = rpcFallbackURL);
                                }).then(function(url) {
-                                       try {
-                                               window.sessionStorage.setItem('rpcBaseURL', url);
-                                       }
-                                       catch (e) { }
-
+                                       Session.setLocalData('rpcBaseURL', url);
                                        return url;
                                });
                        }
                },
 
                probeSystemFeatures: function() {
-                       var sessionid = classes.rpc.getSessionID();
-
-                       if (sysFeatures == null) {
-                               try {
-                                       var data = JSON.parse(window.sessionStorage.getItem('sysFeatures'));
-
-                                       if (this.isObject(data) &amp;&amp; this.isObject(data[sessionid]))
-                                               sysFeatures = data[sessionid];
-                               }
-                               catch (e) {}
-                       }
+                       if (sysFeatures == null)
+                               sysFeatures = Session.getLocalData('features');
 
                        if (!this.isObject(sysFeatures)) {
                                sysFeatures = classes.rpc.declare({
                                        method: 'getFeatures',
                                        expect: { '': {} }
                                })().then(function(features) {
-                                       try {
-                                               var data = {};
-                                                   data[sessionid] = features;
-
-                                               window.sessionStorage.setItem('sysFeatures', JSON.stringify(data));
-                                       }
-                                       catch (e) {}
-
+                                       Session.setLocalData('features', features);
                                        sysFeatures = features;
 
                                        return features;
                        return Promise.resolve(sysFeatures);
                },
 
+               probePreloadClasses: function() {
+                       if (preloadClasses == null)
+                               preloadClasses = Session.getLocalData('preload');
+
+                       if (!Array.isArray(preloadClasses)) {
+                               preloadClasses = this.resolveDefault(classes.rpc.declare({
+                                       object: 'file',
+                                       method: 'list',
+                                       params: [ 'path' ],
+                                       expect: { 'entries': [] }
+                               })(this.fspath(this.resource('preload'))), []).then(function(entries) {
+                                       var classes = [];
+
+                                       for (var i = 0; i &lt; entries.length; i++) {
+                                               if (entries[i].type != 'file')
+                                                       continue;
+
+                                               var m = entries[i].name.match(/(.+)\.js$/);
+
+                                               if (m)
+                                                       classes.push('preload.%s'.format(m[1]));
+                                       }
+
+                                       Session.setLocalData('preload', classes);
+                                       preloadClasses = classes;
+
+                                       return classes;
+                               });
+                       }
+
+                       return Promise.resolve(preloadClasses);
+               },
+
                /**
                 * Test whether a particular system feature is available, such as
                 * hostapd SAE support or an installed firewall. The features are
                notifySessionExpiry: function() {
                        Poll.stop();
 
-                       L.ui.showModal(_('Session expired'), [
+                       classes.ui.showModal(_('Session expired'), [
                                E('div', { class: 'alert-message warning' },
                                        _('A new login is required since the authentication session expired.')),
                                E('div', { class: 'right' },
                                        }, _('To login…')))
                        ]);
 
-                       L.raise('SessionError', 'Login session is expired');
+                       LuCI.prototype.raise('SessionError', 'Login session is expired');
                },
 
                /* private */
                        rpcClass.setBaseURL(rpcBaseURL);
 
                        rpcClass.addInterceptor(function(msg, req) {
-                               if (!L.isObject(msg) || !L.isObject(msg.error) || msg.error.code != -32002)
+                               if (!LuCI.prototype.isObject(msg) ||
+                                   !LuCI.prototype.isObject(msg.error) ||
+                                   msg.error.code != -32002)
                                        return;
 
-                               if (!L.isObject(req) || (req.object == 'session' &amp;&amp; req.method == 'access'))
+                               if (!LuCI.prototype.isObject(req) ||
+                                   (req.object == 'session' &amp;&amp; req.method == 'access'))
                                        return;
 
                                return rpcClass.declare({
                                        'method': 'access',
                                        'params': [ 'scope', 'object', 'function' ],
                                        'expect': { access: true }
-                               })('uci', 'luci', 'read').catch(L.notifySessionExpiry);
+                               })('uci', 'luci', 'read').catch(LuCI.prototype.notifySessionExpiry);
                        });
 
                        Request.addInterceptor(function(res) {
                                if (!isDenied)
                                        return;
 
-                               L.notifySessionExpiry();
+                               LuCI.prototype.notifySessionExpiry();
+                       });
+
+                       document.addEventListener('poll-start', function(ev) {
+                               uiClass.showIndicator('poll-status', _('Refreshing'), function(ev) {
+                                       Request.poll.active() ? Request.poll.stop() : Request.poll.start();
+                               });
+                       });
+
+                       document.addEventListener('poll-stop', function(ev) {
+                               uiClass.showIndicator('poll-status', _('Paused'), null, 'inactive');
                        });
 
-                       return this.probeSystemFeatures().finally(this.initDOM);
+                       return Promise.all([
+                               this.probeSystemFeatures(),
+                               this.probePreloadClasses()
+                       ]).finally(LuCI.prototype.bind(function() {
+                               var tasks = [];
+
+                               if (Array.isArray(preloadClasses))
+                                       for (var i = 0; i &lt; preloadClasses.length; i++)
+                                               tasks.push(this.require(preloadClasses[i]));
+
+                               return Promise.all(tasks);
+                       }, this)).finally(this.initDOM);
                },
 
                /* private */
                 * @instance
                 * @memberof LuCI
                 */
-               env: {},
+               env: env,
+
+               /**
+                * Construct an absolute filesystem path relative to the server
+                * document root.
+                *
+                * @instance
+                * @memberof LuCI
+                *
+                * @param {...string} [parts]
+                * An array of parts to join into a path.
+                *
+                * @return {string}
+                * Return the joined path.
+                */
+               fspath: function(/* ... */) {
+                       var path = env.documentroot;
+
+                       for (var i = 0; i &lt; arguments.length; i++)
+                               path += '/' + arguments[i];
+
+                       var p = path.replace(/\/+$/, '').replace(/\/+/g, '/').split(/\//),
+                           res = [];
+
+                       for (var i = 0; i &lt; p.length; i++)
+                               if (p[i] == '..')
+                                       res.pop();
+                               else if (p[i] != '.')
+                                       res.push(p[i]);
+
+                       return res.join('/');
+               },
 
                /**
                 * Construct a relative URL path from the given prefix and parts.
                 * Returns the resulting URL path.
                 */
                url: function() {
-                       return this.path(this.env.scriptname, arguments);
+                       return this.path(env.scriptname, arguments);
                },
 
                /**
                 * Returns the resulting URL path.
                 */
                resource: function() {
-                       return this.path(this.env.resource, arguments);
+                       return this.path(env.resource, arguments);
                },
 
                /**
                 * Returns the resulting URL path.
                 */
                media: function() {
-                       return this.path(this.env.media, arguments);
+                       return this.path(env.media, arguments);
                },
 
                /**
                 * Returns the URL path to the current view.
                 */
                location: function() {
-                       return this.path(this.env.scriptname, this.env.requestpath);
+                       return this.path(env.scriptname, env.requestpath);
                },
 
 
                 */
                poll: function(interval, url, args, cb, post) {
                        if (interval !== null &amp;&amp; interval &lt;= 0)
-                               interval = this.env.pollinterval;
+                               interval = env.pollinterval;
 
-                       var data = post ? { token: this.env.token } : null,
+                       var data = post ? { token: env.token } : null,
                            method = post ? 'POST' : 'GET';
 
                        if (!/^(?:\/|\S+:\/\/)/.test(url))
                                        });
                },
 
+               /**
+                * Check whether a view has sufficient permissions.
+                *
+                * @return {boolean|null}
+                * Returns `null` if the current session has no permission at all to
+                * load resources required by the view. Returns `false` if readonly
+                * permissions are granted or `true` if at least one required ACL
+                * group is granted with write permissions.
+                */
+               hasViewPermission: function() {
+                       if (!this.isObject(env.nodespec) || !env.nodespec.satisfied)
+                           return null;
+
+                       return !env.nodespec.readonly;
+               },
+
                /**
                 * Deprecated wrapper around {@link LuCI.poll.remove Poll.remove()}.
                 *
                 */
                get: function(url, data, callback, timeout) {
                        this.active = true;
-                       L.get(url, data, this._response.bind(this, callback), timeout);
+                       LuCI.prototype.get(url, data, this._response.bind(this, callback), timeout);
                },
 
                /**
                 */
                post: function(url, data, callback, timeout) {
                        this.active = true;
-                       L.post(url, data, this._response.bind(this, callback), timeout);
+                       LuCI.prototype.post(url, data, this._response.bind(this, callback), timeout);
                },
 
                /**
                 * Throws an `InternalError` with the message `Not implemented`
                 * when invoked.
                 */
-               send_form: function() { L.error('InternalError', 'Not implemented') },
+               send_form: function() { LuCI.prototype.error('InternalError', 'Not implemented') },
        });
 
-       XHR.get = function() { return window.L.get.apply(window.L, arguments) };
-       XHR.post = function() { return window.L.post.apply(window.L, arguments) };
-       XHR.poll = function() { return window.L.poll.apply(window.L, arguments) };
+       XHR.get = function() { return LuCI.prototype.get.apply(LuCI.prototype, arguments) };
+       XHR.post = function() { return LuCI.prototype.post.apply(LuCI.prototype, arguments) };
+       XHR.poll = function() { return LuCI.prototype.poll.apply(LuCI.prototype, arguments) };
        XHR.stop = Request.poll.remove.bind(Request.poll);
        XHR.halt = Request.poll.stop.bind(Request.poll);
        XHR.run = Request.poll.start.bind(Request.poll);
         
 
         <footer>
-            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 80d5f395c57ab37ba0cd9e8e2e319d82ffb4d376..d11dfe2d46d60927252ead2b8b6e999c4bd395d6 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3326,7 +3424,7 @@ function getProtocolHandlers(cache) {
                        Object.assign(protos, { none: { no_device: false } });
 
                /* Hack: emulate relayd protocol */
-               if (!protos.hasOwnProperty('relay'))
+               if (!protos.hasOwnProperty('relay') &amp;&amp; L.hasSystemFeature('relayd'))
                        Object.assign(protos, { relay: { no_device: true } });
 
                Object.assign(_protospecs, protos);
@@ -3574,7 +3672,9 @@ function initNetworkState(refresh) {
                        L.resolveDefault(callLuciWirelessDevices(), {}),
                        L.resolveDefault(callLuciHostHints(), {}),
                        getProtocolHandlers(),
-                       uci.load(['network', 'wireless', 'luci'])
+                       L.resolveDefault(uci.load('network')),
+                       L.resolveDefault(uci.load('wireless')),
+                       L.resolveDefault(uci.load('luci'))
                ]).then(function(data) {
                        var netifd_ifaces = data[0],
                            board_json    = data[1],
@@ -7372,7 +7472,7 @@ return Network;
         
 
         <footer>
-            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index a1501a723489309f3077edf72bceb40a8fdad0cc..34a41e33c5c443bc70b8287590fd3fb9ee216f6d 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3311,6 +3409,10 @@ return baseclass.extend(/** @lends LuCI.rpc.prototype */ {
                        ret = msg.result;
                }
                else if (Array.isArray(msg.result)) {
+                       if (req.raise &amp;&amp; msg.result[0] !== 0)
+                               L.raise('RPCError', 'RPC call to %s/%s failed with ubus code %d: %s',
+                                       req.object, req.method, msg.result[0], this.getStatusText(msg.result[0]));
+
                        ret = (msg.result.length > 1) ? msg.result[1] : msg.result[0];
                }
 
@@ -3446,6 +3548,10 @@ return baseclass.extend(/** @lends LuCI.rpc.prototype */ {
         * Specfies an optional filter function which is invoked to transform the
         * received reply data before it is returned to the caller.
         *
+        * @property {boolean} [reject=false]
+        * If set to `true`, non-zero ubus call status codes are treated as fatal
+        * error and lead to the rejection of the call promise. The default
+        * behaviour is to resolve with the call return code value instead.
         */
 
        /**
@@ -3534,7 +3640,8 @@ return baseclass.extend(/** @lends LuCI.rpc.prototype */ {
                                        params:  params,
                                        priv:    priv,
                                        object:  options.object,
-                                       method:  options.method
+                                       method:  options.method,
+                                       raise:   options.reject
                                };
 
                                /* build message object */
@@ -3707,7 +3814,7 @@ return baseclass.extend(/** @lends LuCI.rpc.prototype */ {
         
 
         <footer>
-            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index de42aca25ca1bb9701bdb46e603f70ca1b5098dd..d71dc0a054097eab977d0271f63192f4fbc403f3 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
@@ -3249,44 +3347,50 @@ return baseclass.extend(/** @lends LuCI.uci.prototype */ {
                object: 'uci',
                method: 'get',
                params: [ 'config' ],
-               expect: { values: { } }
+               expect: { values: { } },
+               reject: true
        }),
 
-
        callOrder: rpc.declare({
                object: 'uci',
                method: 'order',
-               params: [ 'config', 'sections' ]
+               params: [ 'config', 'sections' ],
+               reject: true
        }),
 
        callAdd: rpc.declare({
                object: 'uci',
                method: 'add',
                params: [ 'config', 'type', 'name', 'values' ],
-               expect: { section: '' }
+               expect: { section: '' },
+               reject: true
        }),
 
        callSet: rpc.declare({
                object: 'uci',
                method: 'set',
-               params: [ 'config', 'section', 'values' ]
+               params: [ 'config', 'section', 'values' ],
+               reject: true
        }),
 
        callDelete: rpc.declare({
                object: 'uci',
                method: 'delete',
-               params: [ 'config', 'section', 'options' ]
+               params: [ 'config', 'section', 'options' ],
+               reject: true
        }),
 
        callApply: rpc.declare({
                object: 'uci',
                method: 'apply',
-               params: [ 'timeout', 'rollback' ]
+               params: [ 'timeout', 'rollback' ],
+               reject: true
        }),
 
        callConfirm: rpc.declare({
                object: 'uci',
-               method: 'confirm'
+               method: 'confirm',
+               reject: true
        }),
 
 
@@ -3765,9 +3869,13 @@ return baseclass.extend(/** @lends LuCI.uci.prototype */ {
                                c[conf][sid] = {};
 
                        /* undelete option */
-                       if (d[conf] &amp;&amp; d[conf][sid])
+                       if (d[conf] &amp;&amp; d[conf][sid]) {
                                d[conf][sid] = d[conf][sid].filter(function(o) { return o !== opt });
 
+                               if (d[conf][sid].length == 0)
+                                       delete d[conf][sid];
+                       }
+
                        c[conf][sid][opt] = val;
                }
                else {
@@ -4002,22 +4110,22 @@ return baseclass.extend(/** @lends LuCI.uci.prototype */ {
                if (n)
                        for (var conf in n) {
                                for (var sid in n[conf]) {
-                                       var r = {
+                                       var p = {
                                                config: conf,
                                                values: { }
                                        };
 
                                        for (var k in n[conf][sid]) {
                                                if (k == '.type')
-                                                       r.type = n[conf][sid][k];
+                                                       p.type = n[conf][sid][k];
                                                else if (k == '.create')
-                                                       r.name = n[conf][sid][k];
+                                                       p.name = n[conf][sid][k];
                                                else if (k.charAt(0) != '.')
-                                                       r.values[k] = n[conf][sid][k];
+                                                       p.values[k] = n[conf][sid][k];
                                        }
 
                                        snew.push(n[conf][sid]);
-                                       tasks.push(self.callAdd(r.config, r.type, r.name, r.values));
+                                       tasks.push(self.callAdd(p.config, p.type, p.name, p.values));
                                }
 
                                pkgs[conf] = true;
@@ -4172,7 +4280,7 @@ return baseclass.extend(/** @lends LuCI.uci.prototype */ {
         
 
         <footer>
-            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>
index 3734562794047d5863d417469f58295e115ff98c..d20fe4056b558f90fdd5316b509118c82e9b0086 100644 (file)
             
                 <li data-name="LuCI#error"><a href="LuCI.html#error">error</a></li>
             
+                <li data-name="LuCI#fspath"><a href="LuCI.html#fspath">fspath</a></li>
+            
                 <li data-name="LuCI#get"><a href="LuCI.html#get">get</a></li>
             
                 <li data-name="LuCI#halt"><a href="LuCI.html#halt">halt</a></li>
             
                 <li data-name="LuCI#hasSystemFeature"><a href="LuCI.html#hasSystemFeature">hasSystemFeature</a></li>
             
+                <li data-name="LuCI#hasViewPermission"><a href="LuCI.html#hasViewPermission">hasViewPermission</a></li>
+            
                 <li data-name="LuCI#isObject"><a href="LuCI.html#isObject">isObject</a></li>
             
                 <li data-name="LuCI#location"><a href="LuCI.html#location">location</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##optional"><a href="LuCI.form.AbstractValue.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.AbstractValue##readonly"><a href="LuCI.form.AbstractValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.AbstractValue##rmempty"><a href="LuCI.form.AbstractValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.AbstractValue##uciconfig"><a href="LuCI.form.AbstractValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#placeholder"><a href="LuCI.form.ButtonValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ButtonValue#readonly"><a href="LuCI.form.ButtonValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ButtonValue#rmempty"><a href="LuCI.form.ButtonValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ButtonValue#uciconfig"><a href="LuCI.form.ButtonValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DummyValue#placeholder"><a href="LuCI.form.DummyValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DummyValue#readonly"><a href="LuCI.form.DummyValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DummyValue#rmempty"><a href="LuCI.form.DummyValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DummyValue#uciconfig"><a href="LuCI.form.DummyValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.DynamicList#placeholder"><a href="LuCI.form.DynamicList.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.DynamicList#readonly"><a href="LuCI.form.DynamicList.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.DynamicList#rmempty"><a href="LuCI.form.DynamicList.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.DynamicList#uciconfig"><a href="LuCI.form.DynamicList.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FileUpload#placeholder"><a href="LuCI.form.FileUpload.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FileUpload#readonly"><a href="LuCI.form.FileUpload.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FileUpload#rmempty"><a href="LuCI.form.FileUpload.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FileUpload#uciconfig"><a href="LuCI.form.FileUpload.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.FlagValue#placeholder"><a href="LuCI.form.FlagValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.FlagValue#readonly"><a href="LuCI.form.FlagValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.FlagValue#rmempty"><a href="LuCI.form.FlagValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.FlagValue#uciconfig"><a href="LuCI.form.FlagValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#placeholder"><a href="LuCI.form.HiddenValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.HiddenValue#readonly"><a href="LuCI.form.HiddenValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.HiddenValue#rmempty"><a href="LuCI.form.HiddenValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.HiddenValue#uciconfig"><a href="LuCI.form.HiddenValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.JSONMap#readonly"><a href="LuCI.form.JSONMap.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.ListValue#placeholder"><a href="LuCI.form.ListValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.ListValue#readonly"><a href="LuCI.form.ListValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.ListValue#rmempty"><a href="LuCI.form.ListValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.ListValue#uciconfig"><a href="LuCI.form.ListValue.html#uciconfig">uciconfig</a></li>
             </span>
             <ul class="members itemMembers">
             
+            <span class="subtitle">Members</span>
+            
+                <li data-name="LuCI.form.Map##readonly"><a href="LuCI.form.Map.html#readonly">readonly</a></li>
+            
             </ul>
             <ul class="typedefs itemMembers">
             
             
                 <li data-name="LuCI.form.MultiValue#placeholder"><a href="LuCI.form.MultiValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.MultiValue#readonly"><a href="LuCI.form.MultiValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.MultiValue#rmempty"><a href="LuCI.form.MultiValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.MultiValue#uciconfig"><a href="LuCI.form.MultiValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.SectionValue#placeholder"><a href="LuCI.form.SectionValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.SectionValue#readonly"><a href="LuCI.form.SectionValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.SectionValue#rmempty"><a href="LuCI.form.SectionValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.SectionValue#uciconfig"><a href="LuCI.form.SectionValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.TextValue#placeholder"><a href="LuCI.form.TextValue.html#placeholder">placeholder</a></li>
             
+                <li data-name="LuCI.form.TextValue#readonly"><a href="LuCI.form.TextValue.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.TextValue#rmempty"><a href="LuCI.form.TextValue.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.TextValue#uciconfig"><a href="LuCI.form.TextValue.html#uciconfig">uciconfig</a></li>
             
                 <li data-name="LuCI.form.Value#optional"><a href="LuCI.form.Value.html#optional">optional</a></li>
             
+                <li data-name="LuCI.form.Value#readonly"><a href="LuCI.form.Value.html#readonly">readonly</a></li>
+            
                 <li data-name="LuCI.form.Value#rmempty"><a href="LuCI.form.Value.html#rmempty">rmempty</a></li>
             
                 <li data-name="LuCI.form.Value#uciconfig"><a href="LuCI.form.Value.html#uciconfig">uciconfig</a></li>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.session">
+            <span class="title">
+                <a href="LuCI.session.html">LuCI.session</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.session#getID"><a href="LuCI.session.html#getID">getID</a></li>
+            
+                <li data-name="LuCI.session#getLocalData"><a href="LuCI.session.html#getLocalData">getLocalData</a></li>
+            
+                <li data-name="LuCI.session#setLocalData"><a href="LuCI.session.html#setLocalData">setLocalData</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.uci">
             <span class="title">
                 <a href="LuCI.uci.html">LuCI.uci</a>
             </ul>
         </li>
     
+        <li class="item" data-name="LuCI.ui.menu">
+            <span class="title">
+                <a href="LuCI.ui.menu.html">LuCI.ui.menu</a>
+                
+            </span>
+            <ul class="members itemMembers">
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            <span class="subtitle">Typedefs</span>
+            
+                <li data-name="LuCI.ui.menu.MenuNode"><a href="LuCI.ui.menu.html#.MenuNode">MenuNode</a></li>
+            
+            </ul>
+            <ul class="typedefs itemMembers">
+            
+            </ul>
+            <ul class="methods itemMembers">
+            
+            <span class="subtitle">Methods</span>
+            
+                <li data-name="LuCI.ui.menu#getChildren"><a href="LuCI.ui.menu.html#getChildren">getChildren</a></li>
+            
+                <li data-name="LuCI.ui.menu#load"><a href="LuCI.ui.menu.html#load">load</a></li>
+            
+            </ul>
+            <ul class="events itemMembers">
+            
+            </ul>
+        </li>
+    
         <li class="item" data-name="LuCI.ui.Select">
             <span class="title">
                 <a href="LuCI.ui.Select.html">LuCI.ui.Select</a>
 'require validation';
 'require baseclass';
 'require request';
+'require session';
 'require poll';
 'require dom';
 'require rpc';
@@ -3277,6 +3376,11 @@ var UIElement = baseclass.extend(/** @lends LuCI.ui.AbstractElement.prototype */
         * standard validation constraints are checked. The function should return
         * `true` to accept the given input value. Any other return value type is
         * converted to a string and treated as validation error message.
+        *
+        * @property {boolean} [disabled=false]
+        * Specifies whether the widget should be rendered in disabled state
+        * (`true`) or not (`false`). Disabled widgets cannot be interacted with
+        * and are displayed in a slightly faded style.
         */
 
        /**
@@ -3540,6 +3644,7 @@ var UITextfield = UIElement.extend(/** @lends LuCI.ui.Textfield.prototype */ {
                        'type': this.options.password ? 'password' : 'text',
                        'class': this.options.password ? 'cbi-input-password' : 'cbi-input-text',
                        'readonly': this.options.readonly ? '' : null,
+                       'disabled': this.options.disabled ? '' : null,
                        'maxlength': this.options.maxlength,
                        'placeholder': this.options.placeholder,
                        'value': this.value,
@@ -3663,6 +3768,7 @@ var UITextarea = UIElement.extend(/** @lends LuCI.ui.Textarea.prototype */ {
                        'name': this.options.name,
                        'class': 'cbi-input-textarea',
                        'readonly': this.options.readonly ? '' : null,
+                       'disabled': this.options.disabled ? '' : null,
                        'placeholder': this.options.placeholder,
                        'style': !this.options.cols ? 'width:100%' : null,
                        'cols': this.options.cols,
@@ -3775,6 +3881,7 @@ var UICheckbox = UIElement.extend(/** @lends LuCI.ui.Checkbox.prototype */ {
                        'type': 'checkbox',
                        'value': this.options.value_enabled,
                        'checked': (this.value == this.options.value_enabled) ? '' : null,
+                       'disabled': this.options.disabled ? '' : null,
                        'data-widget-id': this.options.id ? 'widget.' + this.options.id : null
                }));
 
@@ -3926,7 +4033,8 @@ var UISelect = UIElement.extend(/** @lends LuCI.ui.Select.prototype */ {
                                'name': this.options.name,
                                'size': this.options.size,
                                'class': 'cbi-input-select',
-                               'multiple': this.options.multiple ? '' : null
+                               'multiple': this.options.multiple ? '' : null,
+                               'disabled': this.options.disabled ? '' : null
                        }));
 
                        if (this.options.optional)
@@ -3956,7 +4064,8 @@ var UISelect = UIElement.extend(/** @lends LuCI.ui.Select.prototype */ {
                                                'type': this.options.multiple ? 'checkbox' : 'radio',
                                                'class': this.options.multiple ? 'cbi-input-checkbox' : 'cbi-input-radio',
                                                'value': keys[i],
-                                               'checked': (this.values.indexOf(keys[i]) > -1) ? '' : null
+                                               'checked': (this.values.indexOf(keys[i]) > -1) ? '' : null,
+                                               'disabled': this.options.disabled ? '' : null
                                        }),
                                        this.choices[keys[i]] || keys[i]
                                ]));
@@ -4181,6 +4290,7 @@ var UIDropdown = UIElement.extend(/** @lends LuCI.ui.Dropdown.prototype */ {
                        'class': 'cbi-dropdown',
                        'multiple': this.options.multiple ? '' : null,
                        'optional': this.options.optional ? '' : null,
+                       'disabled': this.options.disabled ? '' : null
                }, E('ul'));
 
                var keys = Object.keys(this.choices);
@@ -5332,7 +5442,8 @@ var UIDynamicList = UIElement.extend(/** @lends LuCI.ui.DynamicList.prototype */
        render: function() {
                var dl = E('div', {
                        'id': this.options.id,
-                       'class': 'cbi-dynlist'
+                       'class': 'cbi-dynlist',
+                       'disabled': this.options.disabled ? '' : null
                }, E('div', { 'class': 'add-item' }));
 
                if (this.choices) {
@@ -5348,7 +5459,8 @@ var UIDynamicList = UIElement.extend(/** @lends LuCI.ui.DynamicList.prototype */
                                'id': this.options.id ? 'widget.' + this.options.id : null,
                                'type': 'text',
                                'class': 'cbi-input-text',
-                               'placeholder': this.options.placeholder
+                               'placeholder': this.options.placeholder,
+                               'disabled': this.options.disabled ? '' : null
                        });
 
                        dl.lastElementChild.appendChild(inputEl);
@@ -5458,6 +5570,9 @@ var UIDynamicList = UIElement.extend(/** @lends LuCI.ui.DynamicList.prototype */
                var dl = ev.currentTarget,
                    item = findParent(ev.target, '.item');
 
+               if (this.options.disabled)
+                       return;
+
                if (item) {
                        this.removeItem(dl, item);
                }
@@ -5780,7 +5895,8 @@ var UIFileUpload = UIElement.extend(/** @lends LuCI.ui.FileUpload.prototype */ {
                        return this.bind(E('div', { 'id': this.options.id }, [
                                E('button', {
                                        'class': 'btn',
-                                       'click': UI.prototype.createHandlerFn(this, 'handleFileBrowser')
+                                       'click': UI.prototype.createHandlerFn(this, 'handleFileBrowser'),
+                                       'disabled': this.options.disabled ? '' : null
                                }, label),
                                E('div', {
                                        'class': 'cbi-filebrowser'
@@ -6144,6 +6260,84 @@ var UIFileUpload = UIElement.extend(/** @lends LuCI.ui.FileUpload.prototype */ {
        }
 });
 
+/**
+ * Handle menu.
+ *
+ * @constructor menu
+ * @memberof LuCI.ui
+ *
+ * @classdesc
+ *
+ * Handles menus.
+ */
+var UIMenu = baseclass.singleton(/** @lends LuCI.ui.menu.prototype */ {
+       /**
+        * @typedef {Object} MenuNode
+        * @memberof LuCI.ui.menu
+
+        * @property {string} name - The internal name of the node, as used in the URL
+        * @property {number} order - The sort index of the menu node
+        * @property {string} [title] - The title of the menu node, `null` if the node should be hidden
+        * @property {satisified} boolean - Boolean indicating whether the menu enries dependencies are satisfied
+        * @property {readonly} [boolean] - Boolean indicating whether the menu entries underlying ACLs are readonly
+        * @property {LuCI.ui.menu.MenuNode[]} [children] - Array of child menu nodes.
+        */
+
+       /**
+        * Load and cache current menu tree.
+        *
+        * @returns {Promise&lt;LuCI.ui.menu.MenuNode>}
+        * Returns a promise resolving to the root element of the menu tree.
+        */
+       load: function() {
+               if (this.menu == null)
+                       this.menu = session.getLocalData('menu');
+
+               if (!L.isObject(this.menu)) {
+                       this.menu = request.get(L.url('admin/menu')).then(L.bind(function(menu) {
+                               this.menu = menu.json();
+                               session.setLocalData('menu', this.menu);
+
+                               return this.menu;
+                       }, this));
+               }
+
+               return Promise.resolve(this.menu);
+       },
+
+       /**
+        * @param {LuCI.ui.menu.MenuNode} [node]
+        * The menu node to retrieve the children for. Defaults to the menu's
+        * internal root node if omitted.
+        *
+        * @returns {LuCI.ui.menu.MenuNode[]}
+        * Returns an array of child menu nodes.
+        */
+       getChildren: function(node) {
+               var children = [];
+
+               if (node == null)
+                       node = this.menu;
+
+               for (var k in node.children) {
+                       if (!node.children.hasOwnProperty(k))
+                               continue;
+
+                       if (!node.children[k].satisfied)
+                               continue;
+
+                       if (!node.children[k].hasOwnProperty('title'))
+                               continue;
+
+                       children.push(Object.assign(node.children[k], { name: k }));
+               }
+
+               return children.sort(function(a, b) {
+                       return ((a.order || 1000) - (b.order || 1000));
+               });
+       }
+});
+
 /**
  * @class ui
  * @memberof LuCI
@@ -6665,16 +6859,14 @@ var UI = baseclass.extend(/** @lends LuCI.ui.prototype */ {
 
                /** @private */
                getActiveTabState: function() {
-                       var page = document.body.getAttribute('data-page');
+                       var page = document.body.getAttribute('data-page'),
+                           state = session.getLocalData('tab');
 
-                       try {
-                               var val = JSON.parse(window.sessionStorage.getItem('tab'));
-                               if (val.page === page &amp;&amp; L.isObject(val.paths))
-                                       return val;
-                       }
-                       catch(e) {}
+                       if (L.isObject(state) &amp;&amp; state.page === page &amp;&amp; L.isObject(state.paths))
+                               return state;
+
+                       session.setLocalData('tab', null);
 
-                       window.sessionStorage.removeItem('tab');
                        return { page: page, paths: {} };
                },
 
@@ -6686,17 +6878,12 @@ var UI = baseclass.extend(/** @lends LuCI.ui.prototype */ {
 
                /** @private */
                setActiveTabId: function(pane, tabIndex) {
-                       var path = this.getPathForPane(pane);
-
-                       try {
-                               var state = this.getActiveTabState();
-                                   state.paths[path] = tabIndex;
+                       var path = this.getPathForPane(pane),
+                           state = this.getActiveTabState();
 
-                           window.sessionStorage.setItem('tab', JSON.stringify(state));
-                       }
-                       catch (e) { return false; }
+                       state.paths[path] = tabIndex;
 
-                       return true;
+                       return session.setLocalData('tab', state);
                },
 
                /** @private */
@@ -7002,26 +7189,13 @@ var UI = baseclass.extend(/** @lends LuCI.ui.prototype */ {
                 * The number of changes to indicate.
                 */
                setIndicator: function(n) {
-                       var i = document.querySelector('.uci_change_indicator');
-                       if (i == null) {
-                               var poll = document.getElementById('xhr_poll_status');
-                               i = poll.parentNode.insertBefore(E('a', {
-                                       'href': '#',
-                                       'class': 'uci_change_indicator label notice',
-                                       'click': L.bind(this.displayChanges, this)
-                               }), poll);
-                       }
-
                        if (n > 0) {
-                               dom.content(i, [ _('Unsaved Changes'), ': ', n ]);
-                               i.classList.add('flash');
-                               i.style.display = '';
-                               document.dispatchEvent(new CustomEvent('uci-new-changes'));
+                               UI.prototype.showIndicator('uci-changes',
+                                       '%s: %d'.format(_('Unsaved Changes'), n),
+                                       L.bind(this.displayChanges, this));
                        }
                        else {
-                               i.classList.remove('flash');
-                               i.style.display = 'none';
-                               document.dispatchEvent(new CustomEvent('uci-clear-changes'));
+                               UI.prototype.hideIndicator('uci-changes');
                        }
                },
 
@@ -7518,6 +7692,8 @@ var UI = baseclass.extend(/** @lends LuCI.ui.prototype */ {
                });
        },
 
+       menu: UIMenu,
+
        AbstractElement: UIElement,
 
        /* Widgets */
@@ -7546,7 +7722,7 @@ return UI;
         
 
         <footer>
-            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Tue Apr 07 2020 16:33:40 GMT+0200 (Central European Summer Time)
+            Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.6.3</a> on Thu Apr 16 2020 13:30:42 GMT+0200 (Central European Summer Time)
         </footer>
     </div>
 </div>