Reusable Accessible Mapping Platform

API Docs for: 5.3.2
Show:

Brick Class

Module: Bricks
Parent Module: Utils

The basic Brick prototype with no special functions. A base from all other Bricks. To instantiate, call new on the Brick prototype.

Imports RAMP Modules:

Util
TmplHelper
Array
Dictionary

Uses RAMP Templates:

templates/bricks_template.json

Constructor

Brick

() static

Methods

clear

() Brick chainable

Clears the Brick. This is an empty function. Bricks inheriting from this should override and provide their specific implementations.

Returns:

Brick:

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

(
  • [payload]
  • [wrap]
)
Object

Returns Brick's data. Bricks inheriting from this should override and provide their one implementation and then call parent's getData method.

Parameters:

  • [payload] Object optional

    data to be returned

  • [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:

Brick's data

isValid

() Boolean

Checks if the brick is valid. This is an empty function. Bricks inheriting from this should override and provide their specific implementations.

Returns:

Boolean:

true if valid; false if not

new

(
  • id
  • config
)
chainable

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

Parameters:

  • id String

    specified id of the Brick

  • config Object

    a configuration object for the Brick

    • [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

    • [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

    • [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

() Brick chainable

Sets Brick's data. This is an empty function. Bricks inheriting from this should override and provide their specific implementations.

Returns:

Brick:

itself

setState

(
  • state
)
Brick chainable

Sets the state of the Brick. Checks if the state being set is a freezing state and freezes/unfreezes the Brick.

Parameters:

  • state String

    a name of the state to set

Returns:

Brick:

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

A CSS class of 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: ""

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

A name of the specific Brick template.

Default: ""

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