# Module: system

Contains all of the system level commands.

Author:
  - Seth Hollingsead
Copyright:
  - Copyright © 2022-… by Seth Hollingsead. All rights reserved
Source:
  - commandsBlob/commands/system.js, line 1

### Requires

- module:commandBroker
- module:ruleBroker
- module:workflowBroker
- module:configurator
- module:loggers
- module:data
- @haystacks/constants
- figlet
- path

### Methods

#### (inner) about(inputData, inputMetaData) → {array.<boolean, (string|integer|boolean|object|array)>}

Displays the message about the current application.

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputData` | array.<(boolean|string|integer)> | Not used for this command. inputData[0] === 'about' inputData[1] === 'application|framework' (optional)
`inputMetaData` | string | Not used for this command.

Author:
  - Seth Hollingsead
Source:
  - commandsBlob/commands/system.js, line 130

##### Returns:

An array with a boolean True or False value to indicate if the application should exit or not exit, followed by the command output.

Type
  array.<boolean, (string|integer|boolean|object|array)>

#### (inner) clearScreen(inputData, inputMetaData) → {array.<boolean, (string|integer|boolean|object|array)>}

Clears all data from the console cache by printing a bunch of blank lines to the screen.

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputData` | string | Not used for this command.
`inputMetaData` | string | Not used for this command.

Author:
  - Seth Hollingsead
Source:
  - commandsBlob/commands/system.js, line 225

##### Returns:

An array with a boolean True or False value to indicate if the application should exit or not exit, followed by the command output.

Type
  array.<boolean, (string|integer|boolean|object|array)>

#### (inner) echoCommand(inputData, inputMetaData) → {array.<boolean, (string|integer|boolean|object|array)>}

Returns the input as the output without any changes.

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputData` | array.<(boolean|string|integer)> | String that should be echoed. inputData[0] === 'echoCommand'
`inputMetaData` | string | Not used for this business rule.

Author:
  - Seth Hollingsead
Source:
  - commandsBlob/commands/system.js, line 36

##### Returns:

An array with a boolean True or False value to indicate if the application should exit or not exit, followed by the command output.

Type
  array.<boolean, (string|integer|boolean|object|array)>

#### (inner) exit(inputData, inputMetaData) → {array.<boolean, (string|integer|boolean|object|array)>}

Returns false so the entire application can exit.

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputData` | array.<(boolean|string|integer)> | Not used for this command. inputData[0] === 'exit'
`inputMetaData` | string | Not used for this command.

Author:
  - Seth Hollingsead
Source:
  - commandsBlob/commands/system.js, line 69

##### Returns:

An array with a boolean False value to indicate if the application exit, followed by the command output.

Type
  array.<boolean, (string|integer|boolean|object|array)>

#### (inner) help(inputData, inputMetaData) → {array.<boolean, (string|integer|boolean|object|array)>}

Displays all the information about all of the commands in the system, including both system defined commands and client defined commands.

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputData` | array.<(boolean|string|integer)> | Not used for this command. inputData[0] = 'help'
`inputMetaData` | string | Not used for this command.

Author:
  - Seth Hollingsead
Source:
  - commandsBlob/commands/system.js, line 252

##### Returns:

An array with a boolean True or False value to indicate if the application should exit or not exit, followed by the command output.

Type
  array.<boolean, (string|integer|boolean|object|array)>

#### (inner) name(inputData, inputMetaData) → {array.<boolean, (string|integer|boolean|object|array)>}

Displays the name of the current application in standard font format, nothing special. Optional argument to output in figlet font.

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputData` | array.<(boolean|string|integer)> | An array that could really contain anything depending on what the user entered, but the function converts and filters out for a boolean True or False value internally to the function. inputData[0] === 'name' inputData[1] === 'application|framework' (optional) inputData[2] === 'true|false' (optional)
`inputMetaData` | string | Not used for this command.

Author:
  - Seth Hollingsead
Source:
  - commandsBlob/commands/system.js, line 169

##### Returns:

An array with a boolean True or False value to indicate if the application should exit or not exit, followed by the command output.

Type
  array.<boolean, (string|integer|boolean|object|array)>

#### (inner) version(inputData, inputMetaData) → {array.<boolean, (string|integer|boolean|object|array)>}

Displays the current version number for the current application.

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputData` | array.<(boolean|string|integer)> | Not used for this command. inputData[0] = 'version' inputData[1] === 'application|framework' (optional)
`inputMetaData` | string | Not used for this command.

Author:
  - Seth Hollingsead
Source:
  - commandsBlob/commands/system.js, line 91

##### Returns:

An array with a boolean True or False value to indicate if the application should exit or not exit, followed by the command output.

Type
  array.<boolean, (string|integer|boolean|object|array)>

#### (inner) workflowHelp(inputData, inputMetaData) → {array.<boolean, (string|integer|boolean|object|array)>}

Displays all the information about all the workflows in the system, including both system defined workflows & client defined workflows.

##### Parameters:

Name | Type | Description
--- | --- | ---
`inputData` | array.<(boolean|string|integer)> | Not used for this command. inputData[0] = 'workflowHelp'
`inputMetaData` | string | Not used for this command.

Author:
  - Seth Hollingsead
Source:
  - commandsBlob/commands/system.js, line 301

##### Returns:

An array with a boolean True or False value to indicate if the application should exit or not exit, followed by the command output.

Type
  array.<boolean, (string|integer|boolean|object|array)>