## Modules

* [data/Store](#module_data/Store)
    * [.register(type)](#module_data/Store+register)
    * [.destructor()](#module_data/Store+destructor)
    * [.getFieldById(fieldId)](#module_data/Store+getFieldById)
    * [.resetCurrentPage()](#module_data/Store+resetCurrentPage)
    * ~~[.setInitialFieldsFilter(filter)](#module_data/Store+setInitialFieldsFilter)~~
    * ~~[.setInitialTextFilter(searchString)](#module_data/Store+setInitialTextFilter)~~
    * [.setTextFilter(searchString)](#module_data/Store+setTextFilter)
    * ~~[.setInitialSorting(fieldId, direction)](#module_data/Store+setInitialSorting)~~
    * ~~[.setInitialPagination(currentPage, pageSize)](#module_data/Store+setInitialPagination)~~
    * [.loadWithParams()](#module_data/Store+loadWithParams) ⇒ <code>Promise.&lt;Array&gt;</code>
    * [.loadAll()](#module_data/Store+loadAll) ⇒ <code>Promise.&lt;Array&gt;</code>
    * [.startLoading()](#module_data/Store+startLoading)
    * [.endLoading()](#module_data/Store+endLoading)
    * [.internalLoad(forced)](#module_data/Store+internalLoad)
* [data/Transport](#module_data/Transport)
    * [.ajaxRequest(requestKey, method, url, [headers], requestBody, [skipLoader], [responseStatusValidation])](#module_data/Transport+ajaxRequest) ⇒ <code>Promise.&lt;object&gt;</code>
    * [.load(cmd, data, skipLoader)](#module_data/Transport+load) ⇒ <code>\*</code>
    * [.loadFromPAS(requestType, url, data, skipLoader)](#module_data/Transport+loadFromPAS) ⇒ <code>\*</code>
* [utils/BrandedFileLoader](#module_utils/BrandedFileLoader)
    * [.getFile(filePath)](#module_utils/BrandedFileLoader+getFile) ⇒ <code>string</code>
    * [.getFileInfo(filePath)](#module_utils/BrandedFileLoader+getFileInfo) ⇒ <code>Object</code>
    * [.getRequirePath(filePath)](#module_utils/BrandedFileLoader+getRequirePath) ⇒ <code>string</code>
* [utils/DndSortableList](#module_utils/DndSortableList)
    * [.DndSortableListContainer(Component)](#module_utils/DndSortableList.DndSortableListContainer) ⇒ <code>React.Component</code>
    * [.DndSortableListItem(name)](#module_utils/DndSortableList.DndSortableListItem) ⇒ <code>React.Component</code>
* [utils/EventBus](#module_utils/EventBus)
* [utils/functions](#module_utils/functions)
    * [.setup(conf, locale)](#module_utils/functions.setup)
    * [.getSilentRouterHistory()](#module_utils/functions.getSilentRouterHistory)
    * [.setDocumentTitle(title)](#module_utils/functions.setDocumentTitle)
    * [.hijackRequireJS(locale)](#module_utils/functions.hijackRequireJS)
    * [.isReactComponent(val)](#module_utils/functions.isReactComponent) ⇒ <code>boolean</code>
    * [.isReactElement(val)](#module_utils/functions.isReactElement) ⇒ <code>\*</code> &#124; <code>boolean</code>
    * [.mountComponent(Component, container, params)](#module_utils/functions.mountComponent)
    * [.writeCookie(name, value, path, duration)](#module_utils/functions.writeCookie)
    * [.readCookie(name)](#module_utils/functions.readCookie) ⇒ <code>\*</code>
    * [.isAutomationTestActive()](#module_utils/functions.isAutomationTestActive) ⇒ <code>boolean</code>
    * [.isSafeStringValue(value)](#module_utils/functions.isSafeStringValue) ⇒ <code>boolean</code>
    * [.fillBrandName(str)](#module_utils/functions.fillBrandName) ⇒ <code>\*</code>
    * [.extendFormState(prevState, newState)](#module_utils/functions.extendFormState) ⇒ <code>\*</code>
    * [.cleanFormState(prevState, removedIds)](#module_utils/functions.cleanFormState) ⇒ <code>\*</code> &#124; <code>Object</code>

## Classes

<dl>
<dt><a href="#data/Store_Store">data/Store:Store</a></dt>
<dd></dd>
<dt><a href="#data/Store_Transport">data/Store:Transport</a></dt>
<dd></dd>
<dt><a href="#utils/BrandedFileLoader_BrandedFileLoader">utils/BrandedFileLoader:BrandedFileLoader</a></dt>
<dd></dd>
</dl>

## Members

<dl>
<dt><a href="#utils/EventBus_eventBus">utils/EventBus:eventBus</a></dt>
<dd></dd>
</dl>

<a name="module_data/Store"></a>

## data/Store

* [data/Store](#module_data/Store)
    * [.register(type)](#module_data/Store+register)
    * [.destructor()](#module_data/Store+destructor)
    * [.getFieldById(fieldId)](#module_data/Store+getFieldById)
    * [.resetCurrentPage()](#module_data/Store+resetCurrentPage)
    * ~~[.setInitialFieldsFilter(filter)](#module_data/Store+setInitialFieldsFilter)~~
    * ~~[.setInitialTextFilter(searchString)](#module_data/Store+setInitialTextFilter)~~
    * [.setTextFilter(searchString)](#module_data/Store+setTextFilter)
    * ~~[.setInitialSorting(fieldId, direction)](#module_data/Store+setInitialSorting)~~
    * ~~[.setInitialPagination(currentPage, pageSize)](#module_data/Store+setInitialPagination)~~
    * [.loadWithParams()](#module_data/Store+loadWithParams) ⇒ <code>Promise.&lt;Array&gt;</code>
    * [.loadAll()](#module_data/Store+loadAll) ⇒ <code>Promise.&lt;Array&gt;</code>
    * [.startLoading()](#module_data/Store+startLoading)
    * [.endLoading()](#module_data/Store+endLoading)
    * [.internalLoad(forced)](#module_data/Store+internalLoad)


-

<a name="module_data/Store+register"></a>

### data/Store.register(type)
Registers the store in Event Bus. This allows remote control over certain store types.

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  
**Params**

- type


-

<a name="module_data/Store+destructor"></a>

### data/Store.destructor()
Unwires store from EventBus and cancels all pending activities

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  

-

<a name="module_data/Store+getFieldById"></a>

### data/Store.getFieldById(fieldId)
Returns a field descriptor by ID

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  
**Params**

- fieldId


-

<a name="module_data/Store+resetCurrentPage"></a>

### data/Store.resetCurrentPage()
Resets page back to zero
TODO Should emit change event?

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  

-

<a name="module_data/Store+setInitialFieldsFilter"></a>

### ~~data/Store.setInitialFieldsFilter(filter)~~
***Deprecated***

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  
**Params**

- filter


-

<a name="module_data/Store+setInitialTextFilter"></a>

### ~~data/Store.setInitialTextFilter(searchString)~~
***Deprecated***

Use [data/Store.setTextFilter](data/Store.setTextFilter) instead

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  
**Params**

- searchString


-

<a name="module_data/Store+setTextFilter"></a>

### data/Store.setTextFilter(searchString)
TODO Should emit change event?

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  
**Params**

- searchString <code>string</code>


-

<a name="module_data/Store+setInitialSorting"></a>

### ~~data/Store.setInitialSorting(fieldId, direction)~~
***Deprecated***

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  
**Params**

- fieldId <code>string</code>
- direction <code>string</code> <code> = &quot;ASC&quot;</code>


-

<a name="module_data/Store+setInitialPagination"></a>

### ~~data/Store.setInitialPagination(currentPage, pageSize)~~
***Deprecated***

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  
**Params**

- currentPage
- pageSize


-

<a name="module_data/Store+loadWithParams"></a>

### data/Store.loadWithParams() ⇒ <code>Promise.&lt;Array&gt;</code>
This method will be used if useBackend = true

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  

-

<a name="module_data/Store+loadAll"></a>

### data/Store.loadAll() ⇒ <code>Promise.&lt;Array&gt;</code>
This method will be used if useBackend = false

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  

-

<a name="module_data/Store+startLoading"></a>

### data/Store.startLoading()
TODO Add _ before name
Emits before load event

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  
**Access:** protected  

-

<a name="module_data/Store+endLoading"></a>

### data/Store.endLoading()
TODO Add _ before name
Emits after load event

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  
**Access:** protected  

-

<a name="module_data/Store+internalLoad"></a>

### data/Store.internalLoad(forced)
TODO Add _ before name
Actual load function that calls backend/frontend loaders and manages calculations

**Kind**: instance method of <code>[data/Store](#module_data/Store)</code>  
**Access:** protected  
**Params**

- forced


-

<a name="module_data/Transport"></a>

## data/Transport

* [data/Transport](#module_data/Transport)
    * [.ajaxRequest(requestKey, method, url, [headers], requestBody, [skipLoader], [responseStatusValidation])](#module_data/Transport+ajaxRequest) ⇒ <code>Promise.&lt;object&gt;</code>
    * [.load(cmd, data, skipLoader)](#module_data/Transport+load) ⇒ <code>\*</code>
    * [.loadFromPAS(requestType, url, data, skipLoader)](#module_data/Transport+loadFromPAS) ⇒ <code>\*</code>


-

<a name="module_data/Transport+ajaxRequest"></a>

### data/Transport.ajaxRequest(requestKey, method, url, [headers], requestBody, [skipLoader], [responseStatusValidation]) ⇒ <code>Promise.&lt;object&gt;</code>
Low level method that uses XHR to send the request and get response

**Kind**: instance method of <code>[data/Transport](#module_data/Transport)</code>  
**Params**

- requestKey <code>string</code> - this key will be used to store result of response, it has to be a hash of parameters
- method <code>string</code>
- url <code>string</code>
- [headers] <code>object</code>
- requestBody <code>string</code>
- [skipLoader] <code>boolean</code> - if true no events will be emitted to EventBus
- [responseStatusValidation] <code>boolean</code> - JEDI may respond with 200 and an error, setting this to true validates the result


-

<a name="module_data/Transport+load"></a>

### data/Transport.load(cmd, data, skipLoader) ⇒ <code>\*</code>
JEDI-specific load method

**Kind**: instance method of <code>[data/Transport](#module_data/Transport)</code>  
**Params**

- cmd
- data
- skipLoader


-

<a name="module_data/Transport+loadFromPAS"></a>

### data/Transport.loadFromPAS(requestType, url, data, skipLoader) ⇒ <code>\*</code>
PAS-specific load method

**Kind**: instance method of <code>[data/Transport](#module_data/Transport)</code>  
**Params**

- requestType
- url
- data
- skipLoader


-

<a name="module_utils/BrandedFileLoader"></a>

## utils/BrandedFileLoader

* [utils/BrandedFileLoader](#module_utils/BrandedFileLoader)
    * [.getFile(filePath)](#module_utils/BrandedFileLoader+getFile) ⇒ <code>string</code>
    * [.getFileInfo(filePath)](#module_utils/BrandedFileLoader+getFileInfo) ⇒ <code>Object</code>
    * [.getRequirePath(filePath)](#module_utils/BrandedFileLoader+getRequirePath) ⇒ <code>string</code>


-

<a name="module_utils/BrandedFileLoader+getFile"></a>

### utils/BrandedFileLoader.getFile(filePath) ⇒ <code>string</code>
**Kind**: instance method of <code>[utils/BrandedFileLoader](#module_utils/BrandedFileLoader)</code>  
**Params**

- filePath


-

<a name="module_utils/BrandedFileLoader+getFileInfo"></a>

### utils/BrandedFileLoader.getFileInfo(filePath) ⇒ <code>Object</code>
**Kind**: instance method of <code>[utils/BrandedFileLoader](#module_utils/BrandedFileLoader)</code>  
**Params**

- filePath <code>string</code>


-

<a name="module_utils/BrandedFileLoader+getRequirePath"></a>

### utils/BrandedFileLoader.getRequirePath(filePath) ⇒ <code>string</code>
**Kind**: instance method of <code>[utils/BrandedFileLoader](#module_utils/BrandedFileLoader)</code>  
**Params**

- filePath


-

<a name="module_utils/DndSortableList"></a>

## utils/DndSortableList

* [utils/DndSortableList](#module_utils/DndSortableList)
    * [.DndSortableListContainer(Component)](#module_utils/DndSortableList.DndSortableListContainer) ⇒ <code>React.Component</code>
    * [.DndSortableListItem(name)](#module_utils/DndSortableList.DndSortableListItem) ⇒ <code>React.Component</code>


-

<a name="module_utils/DndSortableList.DndSortableListContainer"></a>

### utils/DndSortableList.DndSortableListContainer(Component) ⇒ <code>React.Component</code>
TODO Extract the entire file along with DND modules into a separate repository

**Kind**: static method of <code>[utils/DndSortableList](#module_utils/DndSortableList)</code>  
**Params**

- Component <code>React.Component</code>


-

<a name="module_utils/DndSortableList.DndSortableListItem"></a>

### utils/DndSortableList.DndSortableListItem(name) ⇒ <code>React.Component</code>
TODO Extract the entire file along with DND modules into a separate repository

**Kind**: static method of <code>[utils/DndSortableList](#module_utils/DndSortableList)</code>  
**Params**

- name <code>string</code>


-

<a name="module_utils/EventBus"></a>

## utils/EventBus

-

<a name="module_utils/functions"></a>

## utils/functions

* [utils/functions](#module_utils/functions)
    * [.setup(conf, locale)](#module_utils/functions.setup)
    * [.getSilentRouterHistory()](#module_utils/functions.getSilentRouterHistory)
    * [.setDocumentTitle(title)](#module_utils/functions.setDocumentTitle)
    * [.hijackRequireJS(locale)](#module_utils/functions.hijackRequireJS)
    * [.isReactComponent(val)](#module_utils/functions.isReactComponent) ⇒ <code>boolean</code>
    * [.isReactElement(val)](#module_utils/functions.isReactElement) ⇒ <code>\*</code> &#124; <code>boolean</code>
    * [.mountComponent(Component, container, params)](#module_utils/functions.mountComponent)
    * [.writeCookie(name, value, path, duration)](#module_utils/functions.writeCookie)
    * [.readCookie(name)](#module_utils/functions.readCookie) ⇒ <code>\*</code>
    * [.isAutomationTestActive()](#module_utils/functions.isAutomationTestActive) ⇒ <code>boolean</code>
    * [.isSafeStringValue(value)](#module_utils/functions.isSafeStringValue) ⇒ <code>boolean</code>
    * [.fillBrandName(str)](#module_utils/functions.fillBrandName) ⇒ <code>\*</code>
    * [.extendFormState(prevState, newState)](#module_utils/functions.extendFormState) ⇒ <code>\*</code>
    * [.cleanFormState(prevState, removedIds)](#module_utils/functions.cleanFormState) ⇒ <code>\*</code> &#124; <code>Object</code>


-

<a name="module_utils/functions.setup"></a>

### utils/functions.setup(conf, locale)
**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Params**

- conf
- locale


-

<a name="module_utils/functions.getSilentRouterHistory"></a>

### utils/functions.getSilentRouterHistory()
Returns a hash history

**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  

-

<a name="module_utils/functions.setDocumentTitle"></a>

### utils/functions.setDocumentTitle(title)
Changes document title

**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Todo**

- [ ] Replace with React Helmet

**Params**

- title


-

<a name="module_utils/functions.hijackRequireJS"></a>

### utils/functions.hijackRequireJS(locale)
FIXME There must be a better way, sneak into require.load for example

**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Params**

- locale


-

<a name="module_utils/functions.isReactComponent"></a>

### utils/functions.isReactComponent(val) ⇒ <code>boolean</code>
**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Params**

- val


-

<a name="module_utils/functions.isReactElement"></a>

### utils/functions.isReactElement(val) ⇒ <code>\*</code> &#124; <code>boolean</code>
**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Params**

- val


-

<a name="module_utils/functions.mountComponent"></a>

### utils/functions.mountComponent(Component, container, params)
**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Params**

- Component
- container
- params


-

<a name="module_utils/functions.writeCookie"></a>

### utils/functions.writeCookie(name, value, path, duration)
**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Params**

- name
- value
- path
- duration


-

<a name="module_utils/functions.readCookie"></a>

### utils/functions.readCookie(name) ⇒ <code>\*</code>
**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Params**

- name


-

<a name="module_utils/functions.isAutomationTestActive"></a>

### utils/functions.isAutomationTestActive() ⇒ <code>boolean</code>
**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  


-

<a name="module_utils/functions.isSafeStringValue"></a>

### utils/functions.isSafeStringValue(value) ⇒ <code>boolean</code>
**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Params**

- value


-

<a name="module_utils/functions.fillBrandName"></a>

### utils/functions.fillBrandName(str) ⇒ <code>\*</code>
**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Params**

- str


-

<a name="module_utils/functions.extendFormState"></a>

### utils/functions.extendFormState(prevState, newState) ⇒ <code>\*</code>
**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Params**

- prevState
- newState


-

<a name="module_utils/functions.cleanFormState"></a>

### utils/functions.cleanFormState(prevState, removedIds) ⇒ <code>\*</code> &#124; <code>Object</code>
**Kind**: static method of <code>[utils/functions](#module_utils/functions)</code>  
**Params**

- prevState
- removedIds


-

<a name="data/Store_Store"></a>

## data/Store:Store
**Kind**: global class  

-

<a name="new_data/Store_Store_new"></a>

### new module.exports(params)
Example configurations:
```json
{
    "fields": [],
    "fields": {},
    "stateName": ""
}
```

**Params**

- params <code>object</code>


-

<a name="data/Store_Transport"></a>

## data/Store:Transport
**Kind**: global class  

-

<a name="utils/BrandedFileLoader_BrandedFileLoader"></a>

## utils/BrandedFileLoader:BrandedFileLoader
**Kind**: global class  

-

<a name="new_utils/BrandedFileLoader_BrandedFileLoader_new"></a>

### new module.exports(requireCtx)
a branded folder's structure should look like, put the rebranded file with or without locale name in branded
folders with a same name:

- folderName
  - default
  - 1210
  - 3610
  - 7310
  - 7710

**Params**

- requireCtx


-

<a name="utils/EventBus_eventBus"></a>

## utils/EventBus:eventBus
**Kind**: global variable  

-

