show method

dynamic show()

Show the Modal.

Implementation

show() {

  final e = QueryEvent('show.bs.modal');
  $element.triggerEvent(e);

  if (_shown || e.defaultPrevented)
    return;
  _shown = true;

  if (keyboard) {
    $document().on('keyup.dismiss.modal', (QueryEvent e) {
      if ((e.originalEvent as KeyboardEvent).keyCode == 27)
        hide();
    });
  }

  _backdrop(() {

    final transition = Transition.isUsed && element.classes.contains('fade');

    if (element.parent == null)
      document.body?.append(element);

    $element.show();

    if (transition) $element.reflow();

    element.classes.add('in');
    element.attributes['aria-hidden'] = 'false';

    _enforceFocus();

    if (transition) {
      $element.one(Transition.end, (QueryEvent e) {
        $element.trigger('focus');
        $element.trigger('shown.bs.modal');
      });

    } else {
      $element.trigger('focus');
      $element.trigger('shown.bs.modal');

    }

    $element.on('click.modal.backdrop', (QueryEvent e){
      if($element[0] == e.target && backdrop != 'static'){
        hide();
      }
    });

    $element.on('click.dismiss.modal', (QueryEvent e) => hide(), selector: '[data-dismiss="modal"]');
  });

}