# API svyPopupFilter v1

### Classes

[AbstractPopupFilter](#abstractpopupfilter)

[SvyDateFilter](#svydatefilter-abstractpopupfilter) ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)

[SvyNumberFilter](#svynumberfilter-abstractpopupfilter) ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)

[SvySelectFilter](#svyselectfilter-abstractpopupfilter) ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)

[SvyTokenFilter](#svytokenfilter-abstractpopupfilter) ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)

### Functions

[createDateFilter()](#createdatefilter-svydatefilter) ⇒ [`SvyDateFilter`](#svydatefilter-abstractpopupfilter)

[createNumberFilter()](#createnumberfilter-svynumberfilter) ⇒ [`SvyNumberFilter`](#svynumberfilter-abstractpopupfilter)

[createSelectFilter(dataProvider, lookup)](#createselectfilter-dataprovider-lookup-svyselectfilter) ⇒ [`SvySelectFilter`](#svyselectfilter-abstractpopupfilter)

[createTokenFilter()](#createtokenfilter-svytokenfilter) ⇒ [`SvyTokenFilter`](#svytokenfilter-abstractpopupfilter)

### AbstractPopupFilter

* [AbstractPopupFilter](#abstractpopupfilter)
  * [.addParam(param)](#abstractpopupfilter.addparam-param)
  * [.clearParams()](#abstractpopupfilter.clearparams)
  * [.createPopUp(callback)](#abstractpopupfilter.createpopup-callback-plugins.window.formpopup) ⇒ `plugins.window.FormPopup`
  * [.createWindow(\[x\], \[y\], \[width\], \[height\], \[jsWindowType\])](#abstractpopupfilter.createwindow-x-y-width-height-jswindowtype-jswindow) ⇒ `JSWindow`
  * [.getDataProvider()](#abstractpopupfilter.getdataprovider-string) ⇒ `String`
  * [.getID()](#abstractpopupfilter.getid-string) ⇒ `String`
  * [.getOperator()](#abstractpopupfilter.getoperator-string) ⇒ `String`
  * [.getParams()](#abstractpopupfilter.getparams-array) ⇒ `Array`
  * [.getState()](#abstractpopupfilter.getstate-object) ⇒ `Object`
  * [.getValues()](#abstractpopupfilter.getvalues-array) ⇒ `Array`
  * [.removeParam(index)](#abstractpopupfilter.removeparam-index)
  * [.restoreState(jsonState)](#abstractpopupfilter.restorestate-jsonstate-abstractpopupfilter) ⇒ [`AbstractPopupFilter`](#abstractpopupfilter)
  * [.setDataProvider(dataProvider)](#abstractpopupfilter.setdataprovider-dataprovider)
  * [.setOperator(operator)](#abstractpopupfilter.setoperator-operator)
  * [.setRendererForm(popupFilterForm)](#abstractpopupfilter.setrendererform-popupfilterform)
  * [.setValues(values)](#abstractpopupfilter.setvalues-values)
  * [.showModalWindow(\[callback\], \[x\], \[y\], \[width\], \[height\])](#abstractpopupfilter.showmodalwindow-callback-x-y-width-height-array.less-than-jsrecord-greater-than) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`
  * [.showPopUp(callback, target, \[width\], \[height\])](#abstractpopupfilter.showpopup-callback-target-width-height)
  * [.showWindow(win, \[callback\])](#abstractpopupfilter.showwindow-win-callback-array-.less-than-string-or-date-or-number-greater-than) ⇒ `[ 'Array' ].<(String|Date|Number)>`

***

#### abstractPopupFilter.addParam(param)

Add a params to be added into the onSelect callback arguments

| Param | Type     |
| ----- | -------- |
| param | `Object` |

#### abstractPopupFilter.clearParams()

Clear the params

#### abstractPopupFilter.createPopUp(callback) ⇒ `plugins.window.FormPopup`

Creates and returns the popupFilter

| Param    | Type       | Description                                                                                                                             |
| -------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| callback | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |

#### abstractPopupFilter.createWindow(\[x], \[y], \[width], \[height], \[jsWindowType]) ⇒ `JSWindow`

**Returns**: `JSWindow` - returns a JSWindow which can be used to show the popupFilter in it using popupFilter.showWindow(window)

| Param           | Type     | Description                                                                      |
| --------------- | -------- | -------------------------------------------------------------------------------- |
| \[x]            | `Number` |                                                                                  |
| \[y]            | `Number` |                                                                                  |
| \[width]        | `Number` | The width of the pop-up. Optional. Default is component width                    |
| \[height]       | `Number` | The height of the pop-up. Optional. Default is form height.                      |
| \[jsWindowType] | `Number` | Type of window; should be an option of JSWindow, Default JSWindow\.MODAL\_DIALOG |

#### abstractPopupFilter.getDataProvider() ⇒ `String`

Gets the popupFilter dataprovider

#### abstractPopupFilter.getID() ⇒ `String`

Gets the filter name

#### abstractPopupFilter.getOperator() ⇒ `String`

#### abstractPopupFilter.getParams() ⇒ `Array`

#### abstractPopupFilter.getState() ⇒ `Object`

#### abstractPopupFilter.getValues() ⇒ `Array`

#### abstractPopupFilter.removeParam(index)

Removes a param at the specified index

| Param | Type     |
| ----- | -------- |
| index | `Number` |

#### abstractPopupFilter.restoreState(jsonState) ⇒ [`AbstractPopupFilter`](#abstractpopupfilter)

| Param     | Type     |
| --------- | -------- |
| jsonState | `Object` |

#### abstractPopupFilter.setDataProvider(dataProvider)

Sets the popupFilter dataprovider

| Param        | Type     |
| ------------ | -------- |
| dataProvider | `String` |

#### abstractPopupFilter.setOperator(operator)

| Param    | Type     | Description                                 |
| -------- | -------- | ------------------------------------------- |
| operator | `String` | a value from scopes.svyPopupFilter.OPERATOR |

#### abstractPopupFilter.setRendererForm(popupFilterForm)

| Param           | Type                                                                                          |
| --------------- | --------------------------------------------------------------------------------------------- |
| popupFilterForm | [`RuntimeForm.<AbstractPopupFilter>`](#abstractpopupfilter) \| `RuntimeForm.<AbstractLookup>` |

#### abstractPopupFilter.setValues(values)

| Param  | Type    |
| ------ | ------- |
| values | `Array` |

#### abstractPopupFilter.showModalWindow(\[callback], \[x], \[y], \[width], \[height]) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`

Shows the popupFilter in a modal Window

**Returns**: `Array.<JSRecord>` | `Array.<(String|Date|Number)>` - returns the selected records; if the popupFilterDataprovider has been set instead it returns the popupFilterDataprovider values on the selected records. Returns null if the window is closed without a selection or an empty selection

| Param       | Type       | Description                                                                                                                             |
| ----------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| \[callback] | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |
| \[x]        | `Number`   |                                                                                                                                         |
| \[y]        | `Number`   |                                                                                                                                         |
| \[width]    | `Number`   | The width of the popupFilter. Optional. Default is same as target component                                                             |
| \[height]   | `Number`   | The height of the popupFilter. Optional. Default is implementation-specifc.                                                             |

#### abstractPopupFilter.showPopUp(callback, target, \[width], \[height])

Shows the popupFilter

| Param     | Type               | Description                                                                                                                             |
| --------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------- |
| callback  | `function`         | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |
| target    | `RuntimeComponent` | The component to show relative to                                                                                                       |
| \[width]  | `Number`           | The width of the popupFilter. Optional. Default is same as target component                                                             |
| \[height] | `Number`           | The height of the popupFilter. Optional. Default is implementation-specifc.                                                             |

#### abstractPopupFilter.showWindow(win, \[callback]) ⇒ `[ 'Array' ].<(String|Date|Number)>`

Shows the popupFilter in a Window

**Returns**: `[ 'Array' ].<(String|Date|Number)>` - returns the selected records; if the popupFilterDataprovider has been set instead it returns the popupFilterDataprovider values on the selected records. Returns null if the window is closed without a selection or an empty selection

| Param       | Type       | Description                                                                                                                             |
| ----------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| win         | `JSWindow` | the JSWindow object to show                                                                                                             |
| \[callback] | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |

***

### SvyDateFilter ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)

**Extends**: [`AbstractPopupFilter`](#abstractpopupfilter)

* [SvyDateFilter](#svydatefilter-abstractpopupfilter) ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)
  * [.addParam(param)](#svydatefilter.addparam-param)
  * [.clearParams()](#svydatefilter.clearparams)
  * [.createPopUp(callback)](#svydatefilter.createpopup-callback-plugins.window.formpopup) ⇒ `plugins.window.FormPopup`
  * [.createWindow(\[x\], \[y\], \[width\], \[height\], \[jsWindowType\])](#svydatefilter.createwindow-x-y-width-height-jswindowtype-jswindow) ⇒ `JSWindow`
  * [.getDataProvider()](#svydatefilter.getdataprovider-string) ⇒ `String`
  * [.getID()](#svydatefilter.getid-string) ⇒ `String`
  * [.getOperator()](#svydatefilter.getoperator-string) ⇒ `String`
  * [.getParams()](#svydatefilter.getparams-array) ⇒ `Array`
  * [.getState()](#svydatefilter.getstate-object) ⇒ `Object`
  * [.getValues()](#svydatefilter.getvalues-array) ⇒ `Array`
  * [.removeParam(index)](#svydatefilter.removeparam-index)
  * [.restoreState(jsonState)](#svydatefilter.restorestate-jsonstate-abstractpopupfilter) ⇒ [`AbstractPopupFilter`](#abstractpopupfilter)
  * [.setDataProvider(dataProvider)](#svydatefilter.setdataprovider-dataprovider)
  * [.setOperator(operator)](#svydatefilter.setoperator-operator)
  * [.setRendererForm(popupFilterForm)](#svydatefilter.setrendererform-popupfilterform)
  * [.setValues(values)](#svydatefilter.setvalues-values)
  * [.showModalWindow(\[callback\], \[x\], \[y\], \[width\], \[height\])](#svydatefilter.showmodalwindow-callback-x-y-width-height-array.less-than-jsrecord-greater-than-or-arr) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`
  * [.showPopUp(callback, target, \[width\], \[height\])](#svydatefilter.showpopup-callback-target-width-height)
  * [.showWindow(win, \[callback\])](#svydatefilter.showwindow-win-callback-array-.less-than-string-or-date-or-number-greater-than) ⇒ `[ 'Array' ].<(String|Date|Number)>`

#### svyDateFilter.addParam(param)

Add a params to be added into the onSelect callback arguments

| Param | Type     |
| ----- | -------- |
| param | `Object` |

#### svyDateFilter.clearParams()

Clear the params

#### svyDateFilter.createPopUp(callback) ⇒ `plugins.window.FormPopup`

Creates and returns the popupFilter

| Param    | Type       | Description                                                                                                                             |
| -------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| callback | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |

#### svyDateFilter.createWindow(\[x], \[y], \[width], \[height], \[jsWindowType]) ⇒ `JSWindow`

**Returns**: `JSWindow` - returns a JSWindow which can be used to show the popupFilter in it using popupFilter.showWindow(window)

| Param           | Type     | Description                                                                      |
| --------------- | -------- | -------------------------------------------------------------------------------- |
| \[x]            | `Number` |                                                                                  |
| \[y]            | `Number` |                                                                                  |
| \[width]        | `Number` | The width of the pop-up. Optional. Default is component width                    |
| \[height]       | `Number` | The height of the pop-up. Optional. Default is form height.                      |
| \[jsWindowType] | `Number` | Type of window; should be an option of JSWindow, Default JSWindow\.MODAL\_DIALOG |

#### svyDateFilter.getDataProvider() ⇒ `String`

Gets the popupFilter dataprovider

#### svyDateFilter.getID() ⇒ `String`

Gets the filter name

#### svyDateFilter.getOperator() ⇒ `String`

#### svyDateFilter.getParams() ⇒ `Array`

#### svyDateFilter.getState() ⇒ `Object`

#### svyDateFilter.getValues() ⇒ `Array`

#### svyDateFilter.removeParam(index)

Removes a param at the specified index

| Param | Type     |
| ----- | -------- |
| index | `Number` |

#### svyDateFilter.restoreState(jsonState) ⇒ [`AbstractPopupFilter`](#abstractpopupfilter)

| Param     | Type     |
| --------- | -------- |
| jsonState | `Object` |

#### svyDateFilter.setDataProvider(dataProvider)

Sets the popupFilter dataprovider

| Param        | Type     |
| ------------ | -------- |
| dataProvider | `String` |

#### svyDateFilter.setOperator(operator)

| Param    | Type     | Description                                 |
| -------- | -------- | ------------------------------------------- |
| operator | `String` | a value from scopes.svyPopupFilter.OPERATOR |

#### svyDateFilter.setRendererForm(popupFilterForm)

| Param           | Type                                                                                          |
| --------------- | --------------------------------------------------------------------------------------------- |
| popupFilterForm | [`RuntimeForm.<AbstractPopupFilter>`](#abstractpopupfilter) \| `RuntimeForm.<AbstractLookup>` |

#### svyDateFilter.setValues(values)

| Param  | Type    |
| ------ | ------- |
| values | `Array` |

#### svyDateFilter.showModalWindow(\[callback], \[x], \[y], \[width], \[height]) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`

Shows the popupFilter in a modal Window

**Returns**: `Array.<JSRecord>` | `Array.<(String|Date|Number)>` - returns the selected records; if the popupFilterDataprovider has been set instead it returns the popupFilterDataprovider values on the selected records. Returns null if the window is closed without a selection or an empty selection

| Param       | Type       | Description                                                                                                                             |
| ----------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| \[callback] | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |
| \[x]        | `Number`   |                                                                                                                                         |
| \[y]        | `Number`   |                                                                                                                                         |
| \[width]    | `Number`   | The width of the popupFilter. Optional. Default is same as target component                                                             |
| \[height]   | `Number`   | The height of the popupFilter. Optional. Default is implementation-specifc.                                                             |

#### svyDateFilter.showPopUp(callback, target, \[width], \[height])

Shows the popupFilter

| Param     | Type               | Description                                                                                                                             |
| --------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------- |
| callback  | `function`         | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |
| target    | `RuntimeComponent` | The component to show relative to                                                                                                       |
| \[width]  | `Number`           | The width of the popupFilter. Optional. Default is same as target component                                                             |
| \[height] | `Number`           | The height of the popupFilter. Optional. Default is implementation-specifc.                                                             |

#### svyDateFilter.showWindow(win, \[callback]) ⇒ `[ 'Array' ].<(String|Date|Number)>`

Shows the popupFilter in a Window

**Returns**: `[ 'Array' ].<(String|Date|Number)>` - returns the selected records; if the popupFilterDataprovider has been set instead it returns the popupFilterDataprovider values on the selected records. Returns null if the window is closed without a selection or an empty selection

| Param       | Type       | Description                                                                                                                             |
| ----------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| win         | `JSWindow` | the JSWindow object to show                                                                                                             |
| \[callback] | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |

***

### SvyNumberFilter ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)

**Extends**: [`AbstractPopupFilter`](#abstractpopupfilter)

* [SvyNumberFilter](#svynumberfilter-abstractpopupfilter) ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)
  * [.addParam(param)](#svynumberfilter.addparam-param)
  * [.clearParams()](#svynumberfilter.clearparams)
  * [.createPopUp(callback)](#svynumberfilter.createpopup-callback-plugins.window.formpopup) ⇒ `plugins.window.FormPopup`
  * [.createWindow(\[x\], \[y\], \[width\], \[height\], \[jsWindowType\])](#svynumberfilter.createwindow-x-y-width-height-jswindowtype-jswindow) ⇒ `JSWindow`
  * [.getDataProvider()](#svynumberfilter.getdataprovider-string) ⇒ `String`
  * [.getID()](#svynumberfilter.getid-string) ⇒ `String`
  * [.getOperator()](#svynumberfilter.getoperator-string) ⇒ `String`
  * [.getParams()](#svynumberfilter.getparams-array) ⇒ `Array`
  * [.getState()](#svynumberfilter.getstate-object) ⇒ `Object`
  * [.getValues()](#svynumberfilter.getvalues-array) ⇒ `Array`
  * [.removeParam(index)](#svynumberfilter.removeparam-index)
  * [.restoreState(jsonState)](#svynumberfilter.restorestate-jsonstate-abstractpopupfilter) ⇒ [`AbstractPopupFilter`](#abstractpopupfilter)
  * [.setDataProvider(dataProvider)](#svynumberfilter.setdataprovider-dataprovider)
  * [.setOperator(operator)](#svynumberfilter.setoperator-operator)
  * [.setRendererForm(popupFilterForm)](#svynumberfilter.setrendererform-popupfilterform)
  * [.setValues(values)](#svynumberfilter.setvalues-values)
  * [.showModalWindow(\[callback\], \[x\], \[y\], \[width\], \[height\])](#svynumberfilter.showmodalwindow-callback-x-y-width-height-array.less-than-jsrecord-greater-than-or-a) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`
  * [.showPopUp(callback, target, \[width\], \[height\])](#svynumberfilter.showpopup-callback-target-width-height)
  * [.showWindow(win, \[callback\])](#svynumberfilter.showwindow-win-callback-array-.less-than-string-or-date-or-number-greater-than) ⇒ `[ 'Array' ].<(String|Date|Number)>`

#### svyNumberFilter.addParam(param)

Add a params to be added into the onSelect callback arguments

| Param | Type     |
| ----- | -------- |
| param | `Object` |

#### svyNumberFilter.clearParams()

Clear the params

#### svyNumberFilter.createPopUp(callback) ⇒ `plugins.window.FormPopup`

Creates and returns the popupFilter

| Param    | Type       | Description                                                                                                                             |
| -------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| callback | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |

#### svyNumberFilter.createWindow(\[x], \[y], \[width], \[height], \[jsWindowType]) ⇒ `JSWindow`

**Returns**: `JSWindow` - returns a JSWindow which can be used to show the popupFilter in it using popupFilter.showWindow(window)

| Param           | Type     | Description                                                                      |
| --------------- | -------- | -------------------------------------------------------------------------------- |
| \[x]            | `Number` |                                                                                  |
| \[y]            | `Number` |                                                                                  |
| \[width]        | `Number` | The width of the pop-up. Optional. Default is component width                    |
| \[height]       | `Number` | The height of the pop-up. Optional. Default is form height.                      |
| \[jsWindowType] | `Number` | Type of window; should be an option of JSWindow, Default JSWindow\.MODAL\_DIALOG |

#### svyNumberFilter.getDataProvider() ⇒ `String`

Gets the popupFilter dataprovider

#### svyNumberFilter.getID() ⇒ `String`

Gets the filter name

#### svyNumberFilter.getOperator() ⇒ `String`

#### svyNumberFilter.getParams() ⇒ `Array`

#### svyNumberFilter.getState() ⇒ `Object`

#### svyNumberFilter.getValues() ⇒ `Array`

#### svyNumberFilter.removeParam(index)

Removes a param at the specified index

| Param | Type     |
| ----- | -------- |
| index | `Number` |

#### svyNumberFilter.restoreState(jsonState) ⇒ [`AbstractPopupFilter`](#abstractpopupfilter)

| Param     | Type     |
| --------- | -------- |
| jsonState | `Object` |

#### svyNumberFilter.setDataProvider(dataProvider)

Sets the popupFilter dataprovider

| Param        | Type     |
| ------------ | -------- |
| dataProvider | `String` |

#### svyNumberFilter.setOperator(operator)

| Param    | Type     | Description                                 |
| -------- | -------- | ------------------------------------------- |
| operator | `String` | a value from scopes.svyPopupFilter.OPERATOR |

#### svyNumberFilter.setRendererForm(popupFilterForm)

| Param           | Type                                                                                          |
| --------------- | --------------------------------------------------------------------------------------------- |
| popupFilterForm | [`RuntimeForm.<AbstractPopupFilter>`](#abstractpopupfilter) \| `RuntimeForm.<AbstractLookup>` |

#### svyNumberFilter.setValues(values)

| Param  | Type    |
| ------ | ------- |
| values | `Array` |

#### svyNumberFilter.showModalWindow(\[callback], \[x], \[y], \[width], \[height]) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`

Shows the popupFilter in a modal Window

**Returns**: `Array.<JSRecord>` | `Array.<(String|Date|Number)>` - returns the selected records; if the popupFilterDataprovider has been set instead it returns the popupFilterDataprovider values on the selected records. Returns null if the window is closed without a selection or an empty selection

| Param       | Type       | Description                                                                                                                             |
| ----------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| \[callback] | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |
| \[x]        | `Number`   |                                                                                                                                         |
| \[y]        | `Number`   |                                                                                                                                         |
| \[width]    | `Number`   | The width of the popupFilter. Optional. Default is same as target component                                                             |
| \[height]   | `Number`   | The height of the popupFilter. Optional. Default is implementation-specifc.                                                             |

#### svyNumberFilter.showPopUp(callback, target, \[width], \[height])

Shows the popupFilter

| Param     | Type               | Description                                                                                                                             |
| --------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------- |
| callback  | `function`         | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |
| target    | `RuntimeComponent` | The component to show relative to                                                                                                       |
| \[width]  | `Number`           | The width of the popupFilter. Optional. Default is same as target component                                                             |
| \[height] | `Number`           | The height of the popupFilter. Optional. Default is implementation-specifc.                                                             |

#### svyNumberFilter.showWindow(win, \[callback]) ⇒ `[ 'Array' ].<(String|Date|Number)>`

Shows the popupFilter in a Window

**Returns**: `[ 'Array' ].<(String|Date|Number)>` - returns the selected records; if the popupFilterDataprovider has been set instead it returns the popupFilterDataprovider values on the selected records. Returns null if the window is closed without a selection or an empty selection

| Param       | Type       | Description                                                                                                                             |
| ----------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| win         | `JSWindow` | the JSWindow object to show                                                                                                             |
| \[callback] | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |

***

### SvySelectFilter ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)

**Extends**: [`AbstractPopupFilter`](#abstractpopupfilter)

* [SvySelectFilter](#svyselectfilter-abstractpopupfilter) ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)
  * [.addParam(param)](#svyselectfilter.addparam-param)
  * [.clearParams()](#svyselectfilter.clearparams)
  * [.createPopUp(callback)](#svyselectfilter.createpopup-callback-plugins.window.formpopup) ⇒ `plugins.window.FormPopup`
  * [.createWindow(\[x\], \[y\], \[width\], \[height\], \[jsWindowType\])](#svyselectfilter.createwindow-x-y-width-height-jswindowtype-jswindow) ⇒ `JSWindow`
  * [.getDataProvider()](#svyselectfilter.getdataprovider-string) ⇒ `String`
  * [.getID()](#svyselectfilter.getid-string) ⇒ `String`
  * [.getLookup()](#svyselectfilter.getlookup-scopes.svylookup.lookup) ⇒ `scopes.svyLookup.Lookup`
  * [.getOperator()](#svyselectfilter.getoperator-string) ⇒ `String`
  * [.getParams()](#svyselectfilter.getparams-array) ⇒ `Array`
  * [.getState()](#svyselectfilter.getstate-object) ⇒ `Object`
  * [.getValues()](#svyselectfilter.getvalues-array) ⇒ `Array`
  * [.removeParam(index)](#svyselectfilter.removeparam-index)
  * [.restoreState(jsonState)](#svyselectfilter.restorestate-jsonstate-abstractpopupfilter) ⇒ [`AbstractPopupFilter`](#abstractpopupfilter)
  * [.setDataProvider(dataProvider)](#svyselectfilter.setdataprovider-dataprovider)
  * [.setOperator(operator)](#svyselectfilter.setoperator-operator)
  * [.setRendererForm(popupFilterForm)](#svyselectfilter.setrendererform-popupfilterform)
  * [.setValues(values)](#svyselectfilter.setvalues-values)
  * [.showModalWindow(\[callback\], \[x\], \[y\], \[width\], \[height\])](#svyselectfilter.showmodalwindow-callback-x-y-width-height-array.less-than-jsrecord-greater-than-or-a) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`
  * [.showPopUp(callback, target, \[width\], \[height\])](#svyselectfilter.showpopup-callback-target-width-height)
  * [.showWindow(win, \[callback\])](#svyselectfilter.showwindow-win-callback-array.less-than-jsrecord-greater-than-or-array.less-than-str) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`
  * [new SvySelectFilter(dataProvider, lookup)](#new-svyselectfilter-dataprovider-lookup)

#### svySelectFilter.addParam(param)

Add a params to be added into the onSelect callback arguments

| Param | Type     |
| ----- | -------- |
| param | `Object` |

#### svySelectFilter.clearParams()

Clear the params

#### svySelectFilter.createPopUp(callback) ⇒ `plugins.window.FormPopup`

Creates and returns the popupFilter

**Overrides**: [`createPopUp`](#abstractpopupfilter.createpopup-callback-plugins.window.formpopup)

| Param    | Type       | Description                                                                                                                             |
| -------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| callback | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |

#### svySelectFilter.createWindow(\[x], \[y], \[width], \[height], \[jsWindowType]) ⇒ `JSWindow`

**Overrides**: [`createWindow`](#abstractpopupfilter.createwindow-x-y-width-height-jswindowtype-jswindow)\
**Returns**: `JSWindow` - returns a JSWindow which can be used to show the popupFilter in it using popupFilter.showWindow(window)

| Param           | Type     | Description                                                                      |
| --------------- | -------- | -------------------------------------------------------------------------------- |
| \[x]            | `Number` |                                                                                  |
| \[y]            | `Number` |                                                                                  |
| \[width]        | `Number` | The width of the pop-up. Optional. Default is component width                    |
| \[height]       | `Number` | The height of the pop-up. Optional. Default is form height.                      |
| \[jsWindowType] | `Number` | Type of window; should be an option of JSWindow, Default JSWindow\.MODAL\_DIALOG |

#### svySelectFilter.getDataProvider() ⇒ `String`

Gets the popupFilter dataprovider

#### svySelectFilter.getID() ⇒ `String`

Gets the filter name

#### svySelectFilter.getLookup() ⇒ `scopes.svyLookup.Lookup`

#### svySelectFilter.getOperator() ⇒ `String`

#### svySelectFilter.getParams() ⇒ `Array`

#### svySelectFilter.getState() ⇒ `Object`

**Overrides**: [`getState`](#abstractpopupfilter.getstate-object)

#### svySelectFilter.getValues() ⇒ `Array`

#### svySelectFilter.removeParam(index)

Removes a param at the specified index

| Param | Type     |
| ----- | -------- |
| index | `Number` |

#### svySelectFilter.restoreState(jsonState) ⇒ [`AbstractPopupFilter`](#abstractpopupfilter)

**Overrides**: [`restoreState`](#abstractpopupfilter.restorestate-jsonstate-abstractpopupfilter)

| Param     | Type     |
| --------- | -------- |
| jsonState | `Object` |

#### svySelectFilter.setDataProvider(dataProvider)

Sets the popupFilter dataprovider

| Param        | Type     |
| ------------ | -------- |
| dataProvider | `String` |

#### svySelectFilter.setOperator(operator)

| Param    | Type     | Description                                 |
| -------- | -------- | ------------------------------------------- |
| operator | `String` | a value from scopes.svyPopupFilter.OPERATOR |

#### svySelectFilter.setRendererForm(popupFilterForm)

| Param           | Type                                                                                          |
| --------------- | --------------------------------------------------------------------------------------------- |
| popupFilterForm | [`RuntimeForm.<AbstractPopupFilter>`](#abstractpopupfilter) \| `RuntimeForm.<AbstractLookup>` |

#### svySelectFilter.setValues(values)

| Param  | Type    |
| ------ | ------- |
| values | `Array` |

#### svySelectFilter.showModalWindow(\[callback], \[x], \[y], \[width], \[height]) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`

Shows the popupFilter in a modal Window

**Overrides**: [`showModalWindow`](#abstractpopupfilter.showmodalwindow-callback-x-y-width-height-array.less-than-jsrecord-greater-than)\
**Returns**: `Array.<JSRecord>` | `Array.<(String|Date|Number)>` - returns the selected records; if the popupFilterDataprovider has been set instead it returns the popupFilterDataprovider values on the selected records. Returns null if the window is closed without a selection or an empty selection

| Param       | Type       | Description                                                                                                                             |
| ----------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| \[callback] | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |
| \[x]        | `Number`   |                                                                                                                                         |
| \[y]        | `Number`   |                                                                                                                                         |
| \[width]    | `Number`   | The width of the popupFilter. Optional. Default is same as target component                                                             |
| \[height]   | `Number`   | The height of the popupFilter. Optional. Default is implementation-specifc.                                                             |

#### svySelectFilter.showPopUp(callback, target, \[width], \[height])

Shows the popupFilter

**Overrides**: [`showPopUp`](#abstractpopupfilter.showpopup-callback-target-width-height)

| Param     | Type               | Description                                                                                                                             |
| --------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------- |
| callback  | `function`         | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |
| target    | `RuntimeComponent` | The component to show relative to                                                                                                       |
| \[width]  | `Number`           | The width of the popupFilter. Optional. Default is same as target component                                                             |
| \[height] | `Number`           | The height of the popupFilter. Optional. Default is implementation-specifc.                                                             |

#### svySelectFilter.showWindow(win, \[callback]) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`

Shows the popupFilter in a Window

**Overrides**: [`showWindow`](#abstractpopupfilter.showwindow-win-callback-array-.less-than-string-or-date-or-number-greater-than)\
**Returns**: `Array.<JSRecord>` | `Array.<(String|Date|Number)>` - returns the selected records; if the popupFilterDataprovider has been set instead it returns the popupFilterDataprovider values on the selected records. Returns null if the window is closed without a selection or an empty selection

| Param       | Type       | Description                                                                                                             |
| ----------- | ---------- | ----------------------------------------------------------------------------------------------------------------------- |
| win         | `JSWindow` | the JSWindow object to show                                                                                             |
| \[callback] | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array\<String |

#### new SvySelectFilter(dataProvider, lookup)

| Param        | Type                      | Description                          |
| ------------ | ------------------------- | ------------------------------------ |
| dataProvider | `String`                  | will override the lookupDataProvider |
| lookup       | `scopes.svyLookup.Lookup` |                                      |

***

### SvyTokenFilter ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)

**Extends**: [`AbstractPopupFilter`](#abstractpopupfilter)

* [SvyTokenFilter](#svytokenfilter-abstractpopupfilter) ⇐ [`AbstractPopupFilter`](#abstractpopupfilter)
  * [.addParam(param)](#svytokenfilter.addparam-param)
  * [.clearParams()](#svytokenfilter.clearparams)
  * [.createPopUp(callback)](#svytokenfilter.createpopup-callback-plugins.window.formpopup) ⇒ `plugins.window.FormPopup`
  * [.createWindow(\[x\], \[y\], \[width\], \[height\], \[jsWindowType\])](#svytokenfilter.createwindow-x-y-width-height-jswindowtype-jswindow) ⇒ `JSWindow`
  * [.getDataProvider()](#svytokenfilter.getdataprovider-string) ⇒ `String`
  * [.getID()](#svytokenfilter.getid-string) ⇒ `String`
  * [.getOperator()](#svytokenfilter.getoperator-string) ⇒ `String`
  * [.getParams()](#svytokenfilter.getparams-array) ⇒ `Array`
  * [.getState()](#svytokenfilter.getstate-object) ⇒ `Object`
  * [.getValues()](#svytokenfilter.getvalues-array) ⇒ `Array`
  * [.removeParam(index)](#svytokenfilter.removeparam-index)
  * [.restoreState(jsonState)](#svytokenfilter.restorestate-jsonstate-abstractpopupfilter) ⇒ [`AbstractPopupFilter`](#abstractpopupfilter)
  * [.setDataProvider(dataProvider)](#svytokenfilter.setdataprovider-dataprovider)
  * [.setOperator(operator)](#svytokenfilter.setoperator-operator)
  * [.setRendererForm(popupFilterForm)](#svytokenfilter.setrendererform-popupfilterform)
  * [.setValues(values)](#svytokenfilter.setvalues-values)
  * [.showModalWindow(\[callback\], \[x\], \[y\], \[width\], \[height\])](#svytokenfilter.showmodalwindow-callback-x-y-width-height-array.less-than-jsrecord-greater-than-or-ar) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`
  * [.showPopUp(callback, target, \[width\], \[height\])](#svytokenfilter.showpopup-callback-target-width-height)
  * [.showWindow(win, \[callback\])](#svytokenfilter.showwindow-win-callback-array-.less-than-string-or-date-or-number-greater-than) ⇒ `[ 'Array' ].<(String|Date|Number)>`

#### svyTokenFilter.addParam(param)

Add a params to be added into the onSelect callback arguments

| Param | Type     |
| ----- | -------- |
| param | `Object` |

#### svyTokenFilter.clearParams()

Clear the params

#### svyTokenFilter.createPopUp(callback) ⇒ `plugins.window.FormPopup`

Creates and returns the popupFilter

| Param    | Type       | Description                                                                                                                             |
| -------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| callback | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |

#### svyTokenFilter.createWindow(\[x], \[y], \[width], \[height], \[jsWindowType]) ⇒ `JSWindow`

**Returns**: `JSWindow` - returns a JSWindow which can be used to show the popupFilter in it using popupFilter.showWindow(window)

| Param           | Type     | Description                                                                      |
| --------------- | -------- | -------------------------------------------------------------------------------- |
| \[x]            | `Number` |                                                                                  |
| \[y]            | `Number` |                                                                                  |
| \[width]        | `Number` | The width of the pop-up. Optional. Default is component width                    |
| \[height]       | `Number` | The height of the pop-up. Optional. Default is form height.                      |
| \[jsWindowType] | `Number` | Type of window; should be an option of JSWindow, Default JSWindow\.MODAL\_DIALOG |

#### svyTokenFilter.getDataProvider() ⇒ `String`

Gets the popupFilter dataprovider

#### svyTokenFilter.getID() ⇒ `String`

Gets the filter name

#### svyTokenFilter.getOperator() ⇒ `String`

#### svyTokenFilter.getParams() ⇒ `Array`

#### svyTokenFilter.getState() ⇒ `Object`

#### svyTokenFilter.getValues() ⇒ `Array`

#### svyTokenFilter.removeParam(index)

Removes a param at the specified index

| Param | Type     |
| ----- | -------- |
| index | `Number` |

#### svyTokenFilter.restoreState(jsonState) ⇒ [`AbstractPopupFilter`](#abstractpopupfilter)

| Param     | Type     |
| --------- | -------- |
| jsonState | `Object` |

#### svyTokenFilter.setDataProvider(dataProvider)

Sets the popupFilter dataprovider

| Param        | Type     |
| ------------ | -------- |
| dataProvider | `String` |

#### svyTokenFilter.setOperator(operator)

| Param    | Type     | Description                                 |
| -------- | -------- | ------------------------------------------- |
| operator | `String` | a value from scopes.svyPopupFilter.OPERATOR |

#### svyTokenFilter.setRendererForm(popupFilterForm)

| Param           | Type                                                                                          |
| --------------- | --------------------------------------------------------------------------------------------- |
| popupFilterForm | [`RuntimeForm.<AbstractPopupFilter>`](#abstractpopupfilter) \| `RuntimeForm.<AbstractLookup>` |

#### svyTokenFilter.setValues(values)

| Param  | Type    |
| ------ | ------- |
| values | `Array` |

#### svyTokenFilter.showModalWindow(\[callback], \[x], \[y], \[width], \[height]) ⇒ `Array.<JSRecord>` | `Array.<(String|Date|Number)>`

Shows the popupFilter in a modal Window

**Returns**: `Array.<JSRecord>` | `Array.<(String|Date|Number)>` - returns the selected records; if the popupFilterDataprovider has been set instead it returns the popupFilterDataprovider values on the selected records. Returns null if the window is closed without a selection or an empty selection

| Param       | Type       | Description                                                                                                                             |
| ----------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| \[callback] | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |
| \[x]        | `Number`   |                                                                                                                                         |
| \[y]        | `Number`   |                                                                                                                                         |
| \[width]    | `Number`   | The width of the popupFilter. Optional. Default is same as target component                                                             |
| \[height]   | `Number`   | The height of the popupFilter. Optional. Default is implementation-specifc.                                                             |

#### svyTokenFilter.showPopUp(callback, target, \[width], \[height])

Shows the popupFilter

| Param     | Type               | Description                                                                                                                             |
| --------- | ------------------ | --------------------------------------------------------------------------------------------------------------------------------------- |
| callback  | `function`         | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |
| target    | `RuntimeComponent` | The component to show relative to                                                                                                       |
| \[width]  | `Number`           | The width of the popupFilter. Optional. Default is same as target component                                                             |
| \[height] | `Number`           | The height of the popupFilter. Optional. Default is implementation-specifc.                                                             |

#### svyTokenFilter.showWindow(win, \[callback]) ⇒ `[ 'Array' ].<(String|Date|Number)>`

Shows the popupFilter in a Window

**Returns**: `[ 'Array' ].<(String|Date|Number)>` - returns the selected records; if the popupFilterDataprovider has been set instead it returns the popupFilterDataprovider values on the selected records. Returns null if the window is closed without a selection or an empty selection

| Param       | Type       | Description                                                                                                                             |
| ----------- | ---------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| win         | `JSWindow` | the JSWindow object to show                                                                                                             |
| \[callback] | `function` | The function that will be called when a selection is made; the callback returns the following arguments: {Array} record, {Array\<String |

***

### OPERATOR

**Properties**

| Name           | Default   |
| -------------- | --------- |
| EQUALS         | `eq`      |
| GREATER\_EQUAL | `ge`      |
| GREATER\_THEN  | `gt`      |
| SMALLER\_EQUAL | `le`      |
| SMALLER\_THEN  | `lt`      |
| BETWEEN        | `BETWEEN` |
| IS\_IN         | `IN`      |

### createDateFilter() ⇒ [`SvyDateFilter`](#svydatefilter-abstractpopupfilter)

### createNumberFilter() ⇒ [`SvyNumberFilter`](#svynumberfilter-abstractpopupfilter)

### createSelectFilter(dataProvider, lookup) ⇒ [`SvySelectFilter`](#svyselectfilter-abstractpopupfilter)

| Param        | Type                      |
| ------------ | ------------------------- |
| dataProvider | `String`                  |
| lookup       | `scopes.svyLookup.Lookup` |

### createTokenFilter() ⇒ [`SvyTokenFilter`](#svytokenfilter-abstractpopupfilter)

***
