text: """
  Support for LiteJet lights.
  
  For more details about this platform, please refer to the documentation at
  https://home-assistant.io/components/light.litejet/
  """
  import logging
  
  import homeassistant.components.litejet as litejet
  from homeassistant.components.light import (
      ATTR_BRIGHTNESS, SUPPORT_BRIGHTNESS, Light)
  
  _LOGGER = logging.getLogger(__name__)
  
  DEPENDENCIES = ['litejet']
  
  ATTR_NUMBER = 'number'
  
  
  def setup_platform(hass, config, add_devices, discovery_info=None):
      """Set up lights for the LiteJet platform."""
      litejet_ = hass.data['litejet_system']
  
      devices = []
      for i in litejet_.loads():
          name = litejet_.get_load_name(i)
          if not litejet.is_ignored(hass, name):
              devices.append(LiteJetLight(hass, litejet_, i, name))
      add_devices(devices, True)
  
  
  class LiteJetLight(Light):
      """Representation of a single LiteJet light."""
  
      def __init__(self, hass, lj, i, name):
          """Initialize a LiteJet light."""
          self._hass = hass
          self._lj = lj
          self._index = i
          self._brightness = 0
          self._name = name
  
          lj.on_load_activated(i, self._on_load_changed)
          lj.on_load_deactivated(i, self._on_load_changed)
  
      def _on_load_changed(self):
          """Handle state changes."""
          _LOGGER.debug("Updating due to notification for %s", self._name)
          self.schedule_update_ha_state(True)
  
      @property
      def supported_features(self):
          """Flag supported features."""
          return SUPPORT_BRIGHTNESS
  
      @property
      def name(self):
          """Return the light's name."""
          return self._name
  
      @property
      def brightness(self):
          """Return the light's brightness."""
          return self._brightness
  
      @property
      def is_on(self):
          """Return if the light is on."""
          return self._brightness != 0
  
      @property
      def should_poll(self):
          """Return that lights do not require polling."""
          return False
  
      @property
      def device_state_attributes(self):
          """Return the device state attributes."""
          return {
              ATTR_NUMBER: self._index
          }
  
      def turn_on(self, **kwargs):
          """Turn on the light."""
          if ATTR_BRIGHTNESS in kwargs:
              brightness = int(kwargs[ATTR_BRIGHTNESS] / 255 * 99)
              self._lj.activate_load_at(self._index, brightness, 0)
          else:
              self._lj.activate_load(self._index)
  
      def turn_off(self, **kwargs):
          """Turn off the light."""
          self._lj.deactivate_load(self._index)
  
      def update(self):
          """Retrieve the light's brightness from the LiteJet system."""
          self._brightness = self._lj.get_load_level(self._index) / 99 * 255
  