# Class: SmartTable

## SmartTable()

#### new SmartTable()

NB: Attributes not available here - use connectedCallback to reference

Source:
  - alpha/smart-table.js, line 185

### Members

#### componentVersion

Component version

Source:
  - alpha/smart-table.js, line 134

#### componentVersion

Component version

Source:
  - alpha/smart-table.js, line 134

#### componentVersion

Component version

Source:
  - alpha/smart-table.js, line 134

#### data

Set the value to show

Source:
  - alpha/smart-table.js, line 159

#### data

Get the current shown value

Source:
  - alpha/smart-table.js, line 180

#### data

Set the value to show

Source:
  - alpha/smart-table.js, line 159

#### data

Get the current shown value

Source:
  - alpha/smart-table.js, line 180

#### data

Set the value to show

Source:
  - alpha/smart-table.js, line 159

#### data

Get the current shown value

Source:
  - alpha/smart-table.js, line 180

#### elTbody

Reference to table body @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 156

#### elTbody

Reference to table body @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 156

#### elTbody

Reference to table body @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 156

#### elTfoot

Reference to table foot @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 154

#### elTfoot

Reference to table foot @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 154

#### elTfoot

Reference to table foot @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 154

#### elThead

Reference to table head @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 152

#### elThead

Reference to table head @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 152

#### elThead

Reference to table head @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 152

#### (static) observedAttributes

Makes HTML attribute change watched

Source:
  - alpha/smart-table.js, line 139

#### (static) observedAttributes

Makes HTML attribute change watched

Source:
  - alpha/smart-table.js, line 139

#### (static) observedAttributes

Makes HTML attribute change watched

Source:
  - alpha/smart-table.js, line 139

### Methods

#### _buildCols(fromData)

Build the column metadata

##### Parameters:

Name | Type | Description
--- | --- | ---
`fromData` | boolean | If true, calculate the columns from the data

Source:
  - alpha/smart-table.js, line 364

#### _buildCols(fromData)

Build the column metadata

##### Parameters:

Name | Type | Description
--- | --- | ---
`fromData` | boolean | If true, calculate the columns from the data

Source:
  - alpha/smart-table.js, line 364

#### _buildCols(fromData)

Build the column metadata

##### Parameters:

Name | Type | Description
--- | --- | ---
`fromData` | boolean | If true, calculate the columns from the data

Source:
  - alpha/smart-table.js, line 364

#### _buildTblOutline()

Builds the table outline and prepends to the component tag

Source:
  - alpha/smart-table.js, line 346

#### _buildTblOutline()

Builds the table outline and prepends to the component tag

Source:
  - alpha/smart-table.js, line 346

#### _buildTblOutline()

Builds the table outline and prepends to the component tag

Source:
  - alpha/smart-table.js, line 346

#### connectedCallback()

Runs when an instance is added to the DOM

Source:
  - alpha/smart-table.js, line 194

#### connectedCallback()

Runs when an instance is added to the DOM

Source:
  - alpha/smart-table.js, line 194

#### connectedCallback()

Runs when an instance is added to the DOM

Source:
  - alpha/smart-table.js, line 194

#### disconnectedCallback()

Runs when an instance is removed from the DOM

Source:
  - alpha/smart-table.js, line 206

#### disconnectedCallback()

Runs when an instance is removed from the DOM

Source:
  - alpha/smart-table.js, line 206

#### disconnectedCallback()

Runs when an instance is removed from the DOM

Source:
  - alpha/smart-table.js, line 206

#### getCellById(cellId) → {HTMLTableCellElement|null}

Get an element reference from an RxCx cell reference

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 249

##### Returns:

The HTML table cell element if found

Type
  HTMLTableCellElement | null

#### getCellById(cellId) → {HTMLTableCellElement|null}

Get an element reference from an RxCx cell reference

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 249

##### Returns:

The HTML table cell element if found

Type
  HTMLTableCellElement | null

#### getCellById(cellId) → {HTMLTableCellElement|null}

Get an element reference from an RxCx cell reference

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 249

##### Returns:

The HTML table cell element if found

Type
  HTMLTableCellElement | null

#### getValueByCellId(cellId) → {*}

Get the value of a data cell using RxCx referencing

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 262

##### Returns:

The value of the cell if found else Null or Undefined

Type
  *

#### getValueByCellId(cellId) → {*}

Get the value of a data cell using RxCx referencing

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 262

##### Returns:

The value of the cell if found else Null or Undefined

Type
  *

#### getValueByCellId(cellId) → {*}

Get the value of a data cell using RxCx referencing

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 262

##### Returns:

The value of the cell if found else Null or Undefined

Type
  *

#### getValueByOffset(obj, rowOffset, colOffset) → {*}

Allows access to a cell using numeric row/col offsets

##### Parameters:

Name | Type | Description
--- | --- | ---
`obj` | object | Array | The 2d object to search
`rowOffset` | number | The row offset
`colOffset` | number | The column offset

Source:
  - alpha/smart-table.js, line 235

##### Returns:

Cell value

Type
  *

#### getValueByOffset(obj, rowOffset, colOffset) → {*}

Allows access to a cell using numeric row/col offsets

##### Parameters:

Name | Type | Description
--- | --- | ---
`obj` | object | Array | The 2d object to search
`rowOffset` | number | The row offset
`colOffset` | number | The column offset

Source:
  - alpha/smart-table.js, line 235

##### Returns:

Cell value

Type
  *

#### getValueByOffset(obj, rowOffset, colOffset) → {*}

Allows access to a cell using numeric row/col offsets

##### Parameters:

Name | Type | Description
--- | --- | ---
`obj` | object | Array | The 2d object to search
`rowOffset` | number | The row offset
`colOffset` | number | The column offset

Source:
  - alpha/smart-table.js, line 235

##### Returns:

Cell value

Type
  *

## SmartTable()

#### new SmartTable()

NB: Attributes not available here - use connectedCallback to reference

Source:
  - alpha/smart-table.js, line 185

### Members

#### componentVersion

Component version

Source:
  - alpha/smart-table.js, line 134

#### componentVersion

Component version

Source:
  - alpha/smart-table.js, line 134

#### componentVersion

Component version

Source:
  - alpha/smart-table.js, line 134

#### data

Set the value to show

Source:
  - alpha/smart-table.js, line 159

#### data

Get the current shown value

Source:
  - alpha/smart-table.js, line 180

#### data

Set the value to show

Source:
  - alpha/smart-table.js, line 159

#### data

Get the current shown value

Source:
  - alpha/smart-table.js, line 180

#### data

Set the value to show

Source:
  - alpha/smart-table.js, line 159

#### data

Get the current shown value

Source:
  - alpha/smart-table.js, line 180

#### elTbody

Reference to table body @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 156

#### elTbody

Reference to table body @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 156

#### elTbody

Reference to table body @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 156

#### elTfoot

Reference to table foot @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 154

#### elTfoot

Reference to table foot @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 154

#### elTfoot

Reference to table foot @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 154

#### elThead

Reference to table head @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 152

#### elThead

Reference to table head @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 152

#### elThead

Reference to table head @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 152

#### (static) observedAttributes

Makes HTML attribute change watched

Source:
  - alpha/smart-table.js, line 139

#### (static) observedAttributes

Makes HTML attribute change watched

Source:
  - alpha/smart-table.js, line 139

#### (static) observedAttributes

Makes HTML attribute change watched

Source:
  - alpha/smart-table.js, line 139

### Methods

#### _buildCols(fromData)

Build the column metadata

##### Parameters:

Name | Type | Description
--- | --- | ---
`fromData` | boolean | If true, calculate the columns from the data

Source:
  - alpha/smart-table.js, line 364

#### _buildCols(fromData)

Build the column metadata

##### Parameters:

Name | Type | Description
--- | --- | ---
`fromData` | boolean | If true, calculate the columns from the data

Source:
  - alpha/smart-table.js, line 364

#### _buildCols(fromData)

Build the column metadata

##### Parameters:

Name | Type | Description
--- | --- | ---
`fromData` | boolean | If true, calculate the columns from the data

Source:
  - alpha/smart-table.js, line 364

#### _buildTblOutline()

Builds the table outline and prepends to the component tag

Source:
  - alpha/smart-table.js, line 346

#### _buildTblOutline()

Builds the table outline and prepends to the component tag

Source:
  - alpha/smart-table.js, line 346

#### _buildTblOutline()

Builds the table outline and prepends to the component tag

Source:
  - alpha/smart-table.js, line 346

#### connectedCallback()

Runs when an instance is added to the DOM

Source:
  - alpha/smart-table.js, line 194

#### connectedCallback()

Runs when an instance is added to the DOM

Source:
  - alpha/smart-table.js, line 194

#### connectedCallback()

Runs when an instance is added to the DOM

Source:
  - alpha/smart-table.js, line 194

#### disconnectedCallback()

Runs when an instance is removed from the DOM

Source:
  - alpha/smart-table.js, line 206

#### disconnectedCallback()

Runs when an instance is removed from the DOM

Source:
  - alpha/smart-table.js, line 206

#### disconnectedCallback()

Runs when an instance is removed from the DOM

Source:
  - alpha/smart-table.js, line 206

#### getCellById(cellId) → {HTMLTableCellElement|null}

Get an element reference from an RxCx cell reference

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 249

##### Returns:

The HTML table cell element if found

Type
  HTMLTableCellElement | null

#### getCellById(cellId) → {HTMLTableCellElement|null}

Get an element reference from an RxCx cell reference

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 249

##### Returns:

The HTML table cell element if found

Type
  HTMLTableCellElement | null

#### getCellById(cellId) → {HTMLTableCellElement|null}

Get an element reference from an RxCx cell reference

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 249

##### Returns:

The HTML table cell element if found

Type
  HTMLTableCellElement | null

#### getValueByCellId(cellId) → {*}

Get the value of a data cell using RxCx referencing

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 262

##### Returns:

The value of the cell if found else Null or Undefined

Type
  *

#### getValueByCellId(cellId) → {*}

Get the value of a data cell using RxCx referencing

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 262

##### Returns:

The value of the cell if found else Null or Undefined

Type
  *

#### getValueByCellId(cellId) → {*}

Get the value of a data cell using RxCx referencing

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 262

##### Returns:

The value of the cell if found else Null or Undefined

Type
  *

#### getValueByOffset(obj, rowOffset, colOffset) → {*}

Allows access to a cell using numeric row/col offsets

##### Parameters:

Name | Type | Description
--- | --- | ---
`obj` | object | Array | The 2d object to search
`rowOffset` | number | The row offset
`colOffset` | number | The column offset

Source:
  - alpha/smart-table.js, line 235

##### Returns:

Cell value

Type
  *

#### getValueByOffset(obj, rowOffset, colOffset) → {*}

Allows access to a cell using numeric row/col offsets

##### Parameters:

Name | Type | Description
--- | --- | ---
`obj` | object | Array | The 2d object to search
`rowOffset` | number | The row offset
`colOffset` | number | The column offset

Source:
  - alpha/smart-table.js, line 235

##### Returns:

Cell value

Type
  *

#### getValueByOffset(obj, rowOffset, colOffset) → {*}

Allows access to a cell using numeric row/col offsets

##### Parameters:

Name | Type | Description
--- | --- | ---
`obj` | object | Array | The 2d object to search
`rowOffset` | number | The row offset
`colOffset` | number | The column offset

Source:
  - alpha/smart-table.js, line 235

##### Returns:

Cell value

Type
  *

## SmartTable()

#### new SmartTable()

NB: Attributes not available here - use connectedCallback to reference

Source:
  - alpha/smart-table.js, line 185

### Members

#### componentVersion

Component version

Source:
  - alpha/smart-table.js, line 134

#### componentVersion

Component version

Source:
  - alpha/smart-table.js, line 134

#### componentVersion

Component version

Source:
  - alpha/smart-table.js, line 134

#### data

Set the value to show

Source:
  - alpha/smart-table.js, line 159

#### data

Get the current shown value

Source:
  - alpha/smart-table.js, line 180

#### data

Set the value to show

Source:
  - alpha/smart-table.js, line 159

#### data

Get the current shown value

Source:
  - alpha/smart-table.js, line 180

#### data

Set the value to show

Source:
  - alpha/smart-table.js, line 159

#### data

Get the current shown value

Source:
  - alpha/smart-table.js, line 180

#### elTbody

Reference to table body @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 156

#### elTbody

Reference to table body @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 156

#### elTbody

Reference to table body @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 156

#### elTfoot

Reference to table foot @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 154

#### elTfoot

Reference to table foot @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 154

#### elTfoot

Reference to table foot @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 154

#### elThead

Reference to table head @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 152

#### elThead

Reference to table head @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 152

#### elThead

Reference to table head @type {HTMLTableElement}

Source:
  - alpha/smart-table.js, line 152

#### (static) observedAttributes

Makes HTML attribute change watched

Source:
  - alpha/smart-table.js, line 139

#### (static) observedAttributes

Makes HTML attribute change watched

Source:
  - alpha/smart-table.js, line 139

#### (static) observedAttributes

Makes HTML attribute change watched

Source:
  - alpha/smart-table.js, line 139

### Methods

#### _buildCols(fromData)

Build the column metadata

##### Parameters:

Name | Type | Description
--- | --- | ---
`fromData` | boolean | If true, calculate the columns from the data

Source:
  - alpha/smart-table.js, line 364

#### _buildCols(fromData)

Build the column metadata

##### Parameters:

Name | Type | Description
--- | --- | ---
`fromData` | boolean | If true, calculate the columns from the data

Source:
  - alpha/smart-table.js, line 364

#### _buildCols(fromData)

Build the column metadata

##### Parameters:

Name | Type | Description
--- | --- | ---
`fromData` | boolean | If true, calculate the columns from the data

Source:
  - alpha/smart-table.js, line 364

#### _buildTblOutline()

Builds the table outline and prepends to the component tag

Source:
  - alpha/smart-table.js, line 346

#### _buildTblOutline()

Builds the table outline and prepends to the component tag

Source:
  - alpha/smart-table.js, line 346

#### _buildTblOutline()

Builds the table outline and prepends to the component tag

Source:
  - alpha/smart-table.js, line 346

#### connectedCallback()

Runs when an instance is added to the DOM

Source:
  - alpha/smart-table.js, line 194

#### connectedCallback()

Runs when an instance is added to the DOM

Source:
  - alpha/smart-table.js, line 194

#### connectedCallback()

Runs when an instance is added to the DOM

Source:
  - alpha/smart-table.js, line 194

#### disconnectedCallback()

Runs when an instance is removed from the DOM

Source:
  - alpha/smart-table.js, line 206

#### disconnectedCallback()

Runs when an instance is removed from the DOM

Source:
  - alpha/smart-table.js, line 206

#### disconnectedCallback()

Runs when an instance is removed from the DOM

Source:
  - alpha/smart-table.js, line 206

#### getCellById(cellId) → {HTMLTableCellElement|null}

Get an element reference from an RxCx cell reference

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 249

##### Returns:

The HTML table cell element if found

Type
  HTMLTableCellElement | null

#### getCellById(cellId) → {HTMLTableCellElement|null}

Get an element reference from an RxCx cell reference

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 249

##### Returns:

The HTML table cell element if found

Type
  HTMLTableCellElement | null

#### getCellById(cellId) → {HTMLTableCellElement|null}

Get an element reference from an RxCx cell reference

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 249

##### Returns:

The HTML table cell element if found

Type
  HTMLTableCellElement | null

#### getValueByCellId(cellId) → {*}

Get the value of a data cell using RxCx referencing

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 262

##### Returns:

The value of the cell if found else Null or Undefined

Type
  *

#### getValueByCellId(cellId) → {*}

Get the value of a data cell using RxCx referencing

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 262

##### Returns:

The value of the cell if found else Null or Undefined

Type
  *

#### getValueByCellId(cellId) → {*}

Get the value of a data cell using RxCx referencing

##### Parameters:

Name | Type | Description
--- | --- | ---
`cellId` | string | The RxCx cell reference required

Source:
  - alpha/smart-table.js, line 262

##### Returns:

The value of the cell if found else Null or Undefined

Type
  *

#### getValueByOffset(obj, rowOffset, colOffset) → {*}

Allows access to a cell using numeric row/col offsets

##### Parameters:

Name | Type | Description
--- | --- | ---
`obj` | object | Array | The 2d object to search
`rowOffset` | number | The row offset
`colOffset` | number | The column offset

Source:
  - alpha/smart-table.js, line 235

##### Returns:

Cell value

Type
  *

#### getValueByOffset(obj, rowOffset, colOffset) → {*}

Allows access to a cell using numeric row/col offsets

##### Parameters:

Name | Type | Description
--- | --- | ---
`obj` | object | Array | The 2d object to search
`rowOffset` | number | The row offset
`colOffset` | number | The column offset

Source:
  - alpha/smart-table.js, line 235

##### Returns:

Cell value

Type
  *

#### getValueByOffset(obj, rowOffset, colOffset) → {*}

Allows access to a cell using numeric row/col offsets

##### Parameters:

Name | Type | Description
--- | --- | ---
`obj` | object | Array | The 2d object to search
`rowOffset` | number | The row offset
`colOffset` | number | The column offset

Source:
  - alpha/smart-table.js, line 235

##### Returns:

Cell value

Type
  *