undefined

API Docs for: 5.4.2
Show:

MultiBrick Class

Extends Brick
Module: Bricks
Parent Module: Utils

The MultiBrick prototype. Used as a container for multiple independent Bricks if they are required to be displayed side by side. To instantiate, call new on the MultiBrick prototype.

Imports RAMP Modules:

Util
TmplHelper
Array
Dictionary

Uses RAMP Templates:

templates/bricks_template.json

Methods

clear

() MultiBrick chainable

Inherited from Brick but overwritten in src/js/RAMP/Utils/bricks.js:644

Clears the MultiBrick by clearing of the individual bricks inside the MultiBrick using their specific clear methods.

Returns:

MultiBrick:

itself

disable

(
  • disable
  • force
)
Brick chainable

Disables or re-enables the Brick.

Parameters:

  • disable Boolean

    true to disable; false to enable

  • force Boolean

    if true, disables the brick even if it's frozen

Returns:

Brick:

itself

displayNotice

(
  • notice
  • [noticeTemplate]
)
Brick chainable

Display a (error) notice on the brick.

Parameters:

  • notice Object

    object with notice data to be passed to the template

  • [noticeTemplate] String optional

    notice template name

Returns:

Brick:

itself

getData

(
  • [wrap]
)
Object

Inherited from Brick but overwritten in src/js/RAMP/Utils/bricks.js:691

Returns MultiBrick's data by mixing together data of the individual bricks inside using their specific getData methods and then passing it to the Brick's getData method for potential wrapping.

Parameters:

  • [wrap] Boolean optional

    indicates of the payload should be wrapped with a Brick's id; useful when collection information from several Bricks at once.

Returns:

Object:

MultiBrick's data

isValid

() Boolean

Inherited from Brick but overwritten in src/js/RAMP/Utils/bricks.js:659

Checks if the MultiBrick is valid. It's valid only if all individual bricks inside it are valid.

Returns:

Boolean:

true if valid; false if not

new

(
  • id
  • config
)
chainable

Inherited from Brick but overwritten in src/js/RAMP/Utils/bricks.js:570

Initializes the MutliBrick by generating a specified template and setting defaults.

Parameters:

  • id String

    specified id of the MultiBrick

  • config Object

    a configuration object for the MultiBrick

    • [content] String optional

      a collection of bricks to be displayed in the MultiBrick

    • [header] String optional

      a Brick header

    • [instructions] String optional

      a configuration object for the Brick

    • [required] Array | Object optional

      collection of rules specifying what external conditions must be valid for the Brick to be enabled

    • [isEnabled] Boolean optional

      specifies if the brick is disabled from the start

    • [freezeStates] Array optional

      a set of rules specifying states Brick should be frozen

    • [baseTemplate] String optional

      a base template name to be used

    • [noticeTemplate] String optional

      a notice template name to be used

    • [containerClass] String optional

      a CSS class of the specific brick container

    • [customContainerClass] String optional

      any other optional CSS class to be added to the brick container

    • [template] String optional

      a name of the specific Brick template

notify

(
  • eventName
  • data
)
Brick private chainable

Notifies a listener of a Brick event.

Parameters:

  • eventName String

    an eventName that should be reported

  • data Object

    a payload object to be passed along with the @event

Returns:

Brick:

itself

on

(
  • eventName
  • listener
)
Brick chainable

Sets a listener on the Brick for a specified eventName.

Parameters:

  • eventName String

    an eventName to listen for

  • listener Function

    a callback function to be called

Returns:

Brick:

itself

setData

(
  • data
)
MultiBrick chainable

Inherited from Brick but overwritten in src/js/RAMP/Utils/bricks.js:675

Sets MultiBrick's data by setting data to the individual bricks inside it. Uses their own specific setData functions. *

Parameters:

Returns:

MultiBrick:

itself

setState

(
  • state
)
MultiBrick chainable

Inherited from Brick but overwritten in src/js/RAMP/Utils/bricks.js:628

Sets the state of the MultiBrick by setting states of the individual bricks inside the MultiBrick using their specific setState methods.

Parameters:

  • state String

    a name of the state to set

Returns:

MultiBrick:

itself

Properties

_isFrozen

Boolean private

Indicates if the Brick is frozen and cannot be interacted with.

Default: false

_listeners

Object private

A collection of listeners to be notified of specified Brick events.

Default: {}

baseTemplate

String private

A default base template name.

Default: "default_base_template"

containerClass

String private

Inherited from Brick but overwritten in src/js/RAMP/Utils/bricks.js:526

A CSS class of the MultiBrick container node.

Default: "multi-brick-container"

content

Array private

A collection of Brick objects to be displayed side by side in the MultiBrick.

Default: []

contentBricks

Object private

A dictionary of the initialized content Brick objects for easy lookup.

customContainerClass

String private

Any other custom CSS class to be added to the Brick container node.

Default: ""

event

Object

A dictionary of possible Brick events.

Example:

 event: {
     CHANGE: "brick/change"
 }

freezeStates

Array private

A set of rules specifying states Brick should be frozen.

Default: []

Example:

 [
      Bricks.Brick.state.SUCCESS,
      Bricks.Brick.state.ERROR
  ],

header

String private

A Brick header.

Default: ""

instructions

String private

An instructional text to be displayed.

Default: ""

isEnabled

Boolean

Specifies if the brick is enabled from creation. If false, the Brick is disabled after initialization.

Default: true

multiContainer

Object private

A MultiBrick container node.

noticeTemplate

String private

A default notice template name.

Default: "default_brick_notice"

required

Array

A collection of rules specifying what external conditions must be valid for the Brick to be enabled. This is not used directly by the Brick itself, but instead by the external object manipulating a collection of Bricks. Two types of rules possible: "all" and "any". Any additional properties needed can be specified.

Default: null

Example:

 [
      {
          type: "all",
          check: ["serviceType", "serviceURL"]
      }
 ]

state

Object

A dictionary of Brick events.

Example:

state: {
  SUCCESS: "brick/success",
  ERROR: "brick/error",
  DEFAULT: "brick/default"
 }

template

String private

Inherited from Brick but overwritten in src/js/RAMP/Utils/bricks.js:536

A name of the default MultiBrick template.

Default: "default_multi_brick_template"

Events

Bricks.Brick.event.CHANGE

Published whenever a Brick undergoes some change.

Event Payload:

  • data Object

    anything, usually result of calling getData() on the Brick