neft
Version:
Universal Platform
151 lines (117 loc) • 11.9 kB
Markdown
> [Wiki](Home) ▸ [[API Reference|API-Reference]] ▸ [[Renderer|Renderer-API]] ▸ **Class**
# Class
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee)
## Table of contents
* [Class](#class)
* [**Class** Class](#class-class)
* [New](#new)
* [name](#name)
* [onNameChange](#onnamechange)
* [target](#target)
* [onTargetChange](#ontargetchange)
* [changes](#changes)
* [priority](#priority)
* [onPriorityChange](#onprioritychange)
* [when](#when)
* [onWhenChange](#onwhenchange)
* [children](#children)
* [children.length](#childrenlength)
* [children.append](#childrenappend)
* [children.pop](#childrenpop)
* [document](#document)
* [onDocumentChange](#ondocumentchange)
* [document.query](#documentquery)
* [document.onQueryChange](#documentonquerychange)
* [document.onNodeAdd](#documentonnodeadd)
* [document.onNodeRemove](#documentonnoderemove)
* [classes](#classes)
* [onClassesChange](#onclasseschange)
* [Glossary](#glossary)
#**Class** Class
<dl><dt>Syntax</dt><dd><code>**Class** Class : *Renderer.Extension*</code></dd><dt>Extends</dt><dd><a href="/Neft-io/neft/wiki/Renderer-Extension-API#class-extension">Renderer.Extension</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#class-class--rendererextension)
##New
<dl><dt>Syntax</dt><dd><code>*Renderer.Class* Class.New([*Component* component, *Object* options])</code></dd><dt>Static method of</dt><dd><i>Class</i></dd><dt>Parameters</dt><dd><ul><li>component — <i>Component</i> — <i>optional</i></li><li>options — <a href="/Neft-io/neft/wiki/Utils-API#isobject">Object</a> — <i>optional</i></li></ul></dd><dt>Returns</dt><dd><a href="/Neft-io/neft/wiki/Renderer-Class-API#class-class">Renderer.Class</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#rendererclass-classnewcomponent-component-object-options)
##name
<dl><dt>Syntax</dt><dd><code>*String* Class::name</code></dd><dt>Prototype property of</dt><dd><i>Class</i></dd><dt>Type</dt><dd><i>String</i></dd></dl>
This property is used in the [Item](/Neft-io/neft/wiki/Renderer-Item-API#class-item)::classes list
to identify various classes.
##onNameChange
<dl><dt>Syntax</dt><dd><code>*Signal* Class::onNameChange(*String* oldValue)</code></dd><dt>Prototype method of</dt><dd><i>Class</i></dd><dt>Parameters</dt><dd><ul><li>oldValue — <i>String</i></li></ul></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Signal-API#class-signal">Signal</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#signal-classonnamechangestring-oldvalue)
##target
<dl><dt>Syntax</dt><dd><code>*Item* Class::target</code></dd><dt>Prototype property of</dt><dd><i>Class</i></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Renderer-Item-API#class-item">Item</a></dd></dl>
Reference to the [Item](/Neft-io/neft/wiki/Renderer-Item-API#class-item) on which this class has effects.
If state is created inside the [Item](/Neft-io/neft/wiki/Renderer-Item-API#class-item), this property is set automatically.
##onTargetChange
<dl><dt>Syntax</dt><dd><code>*Signal* Class::onTargetChange(*Item* oldValue)</code></dd><dt>Prototype method of</dt><dd><i>Class</i></dd><dt>Parameters</dt><dd><ul><li>oldValue — <a href="/Neft-io/neft/wiki/Renderer-Item-API#class-item">Item</a></li></ul></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Signal-API#class-signal">Signal</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#signal-classontargetchangeitem-oldvalue)
##changes
<dl><dt>Syntax</dt><dd><code>*Object* Class::changes</code></dd><dt>Prototype property of</dt><dd><i>Class</i></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Utils-API#isobject">Object</a></dd></dl>
This objects contains all properties to change on the target item.
It accepts bindings and listeners as well.
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#object-classchanges)
##priority
<dl><dt>Syntax</dt><dd><code>*Integer* Class::priority = `0`</code></dd><dt>Prototype property of</dt><dd><i>Class</i></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Utils-API#isinteger">Integer</a></dd><dt>Default</dt><dd><code>0</code></dd></dl>
##onPriorityChange
<dl><dt>Syntax</dt><dd><code>*Signal* Class::onPriorityChange(*Integer* oldValue)</code></dd><dt>Prototype method of</dt><dd><i>Class</i></dd><dt>Parameters</dt><dd><ul><li>oldValue — <a href="/Neft-io/neft/wiki/Utils-API#isinteger">Integer</a></li></ul></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Signal-API#class-signal">Signal</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#signal-classonprioritychangeinteger-oldvalue)
##when
<dl><dt>Syntax</dt><dd><code>*Boolean* Class::when</code></dd><dt>Prototype property of</dt><dd><i>Class</i></dd><dt>Type</dt><dd><i>Boolean</i></dd></dl>
Indicates whether the class is active or not.
When it's `true`, this state is appended on the
end of the [Item](/Neft-io/neft/wiki/Renderer-Item-API#class-item)::classes list.
Mostly used with bindings.
```javascript
Grid {
columns: 2
// reduce to one column if the view width is lower than 500 pixels
Class {
when: view.width < 500
changes: {
columns: 1
}
}
}
```
##onWhenChange
<dl><dt>Syntax</dt><dd><code>*Signal* Class::onWhenChange(*Boolean* oldValue)</code></dd><dt>Prototype method of</dt><dd><i>Class</i></dd><dt>Parameters</dt><dd><ul><li>oldValue — <i>Boolean</i></li></ul></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Signal-API#class-signal">Signal</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#signal-classonwhenchangeboolean-oldvalue)
##children
<dl><dt>Syntax</dt><dd><code>*Object* Class::children</code></dd><dt>Prototype property of</dt><dd><i>Class</i></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Utils-API#isobject">Object</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#object-classchildren)
###children.length
<dl><dt>Syntax</dt><dd><code>*Integer* Class::children.length = `0`</code></dd><dt>Prototype property of</dt><dd><i>Class</i></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Utils-API#isinteger">Integer</a></dd><dt>Default</dt><dd><code>0</code></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#integer-classchildrenlength--0)
###children.append
<dl><dt>Syntax</dt><dd><code>*Object* Class::children.append(*Object* value)</code></dd><dt>Prototype method of</dt><dd><i>Class</i></dd><dt>Parameters</dt><dd><ul><li>value — <a href="/Neft-io/neft/wiki/Utils-API#isobject">Object</a></li></ul></dd><dt>Returns</dt><dd><a href="/Neft-io/neft/wiki/Utils-API#isobject">Object</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#object-classchildrenappendobject-value)
###children.pop
<dl><dt>Syntax</dt><dd><code>*Object* Class::children.pop(*Integer* index)</code></dd><dt>Prototype method of</dt><dd><i>Class</i></dd><dt>Parameters</dt><dd><ul><li>index — <a href="/Neft-io/neft/wiki/Utils-API#isinteger">Integer</a></li></ul></dd><dt>Returns</dt><dd><a href="/Neft-io/neft/wiki/Utils-API#isobject">Object</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#object-classchildrenpopinteger-index)
##document
<dl><dt>Syntax</dt><dd><code>*Object* Class::document</code></dd><dt>Prototype property of</dt><dd><i>Class</i></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Utils-API#isobject">Object</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#object-classdocument)
##onDocumentChange
<dl><dt>Syntax</dt><dd><code>*Signal* Class::onDocumentChange(*Object* document)</code></dd><dt>Prototype method of</dt><dd><i>Class</i></dd><dt>Parameters</dt><dd><ul><li>document — <a href="/Neft-io/neft/wiki/Utils-API#isobject">Object</a></li></ul></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Signal-API#class-signal">Signal</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#signal-classondocumentchangeobject-document)
##document.query
<dl><dt>Syntax</dt><dd><code>*String* Class::document.query</code></dd><dt>Prototype property of</dt><dd><i>Class</i></dd><dt>Type</dt><dd><i>String</i></dd></dl>
##document.onQueryChange
<dl><dt>Syntax</dt><dd><code>*Signal* Class::document.onQueryChange(*String* oldValue)</code></dd><dt>Prototype method of</dt><dd><i>Class</i></dd><dt>Parameters</dt><dd><ul><li>oldValue — <i>String</i></li></ul></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Signal-API#class-signal">Signal</a></dd></dl>
##document.onNodeAdd
<dl><dt>Syntax</dt><dd><code>*Signal* Class::document.onNodeAdd(*Element* node)</code></dd><dt>Prototype method of</dt><dd><i>Class</i></dd><dt>Parameters</dt><dd><ul><li>node — <a href="/Neft-io/neft/wiki/Document-Element-API#class-element">Element</a></li></ul></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Signal-API#class-signal">Signal</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#signal-classdocumentonnodeaddelement-node)
##document.onNodeRemove
<dl><dt>Syntax</dt><dd><code>*Signal* Class::document.onNodeRemove(*Element* node)</code></dd><dt>Prototype method of</dt><dd><i>Class</i></dd><dt>Parameters</dt><dd><ul><li>node — <a href="/Neft-io/neft/wiki/Document-Element-API#class-element">Element</a></li></ul></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Signal-API#class-signal">Signal</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#signal-classdocumentonnoderemoveelement-node)
##classes
<dl><dt>Syntax</dt><dd><code>*List* Item::classes</code></dd><dt>Prototype property of</dt><dd><a href="/Neft-io/neft/wiki/Renderer-Item-API#class-item">Item</a></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/List-API#class-list">List</a></dd></dl>
Classes at the end of the list have the highest priority.
This property has a setter, which accepts a string and an array of strings.
##onClassesChange
<dl><dt>Syntax</dt><dd><code>*Signal* Item::onClassesChange(*String* added, *String* removed)</code></dd><dt>Prototype method of</dt><dd><a href="/Neft-io/neft/wiki/Renderer-Item-API#class-item">Item</a></dd><dt>Parameters</dt><dd><ul><li>added — <i>String</i></li><li>removed — <i>String</i></li></ul></dd><dt>Type</dt><dd><a href="/Neft-io/neft/wiki/Signal-API#class-signal">Signal</a></dd></dl>
> [`Source`](/Neft-io/neft/blob/564f8d734f4e3d2b9c5aa3d8f0b6cad0c8b3f9f0/src/renderer/types/extensions/class.litcoffee#signal-itemonclasseschangestring-added-string-removed)
# Glossary
- [Renderer.Class](#class-class)