npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

bootstrap-modal

v2.2.4

Published

Bootstrap Modal (w/ animation) addon for Ember CLI

Downloads

825

Readme

bootstrap-modal

Bootstrap Modal (w/ animation) addon for Ember CLI

Build Status npm version
Ember Observer Score

Usage

Installation

ember install bootstrap-modal

:warning: This addon requires Ember version 2.3+.

Using

Usually you will want to create custom components based on this component, since every ones needs are different. The following is a simple example of what you can do.

{{#if showModal}}
  {{#bootstrap-modal
    close=(action 'toggleShowModal')
    closeOnOverlayClick=true
    dialogClass='my-dialog'
  as |modal|}}
    {{#modal.header}}
      <h4 class='modal-title'>Test</h4>
    {{/modal.header}}

    {{#modal.body}}
      Test
    {{/modal.body}}

    {{#modal.footer as |close|}}
      <button onclick={{action close}} type='button' class='btn btn-primary'>
        Close
      </button>
    {{/modal.footer}}
  {{/bootstrap-modal}}
{{/if}}

The toggleShowModal is an action that toggles the showModal boolean.

If you have your own app/transitions.js, then you will need to add the modal transition like the example below, otherwise, the transition should just work.

// app/transitions.js

import defaultTransition from 'bootstrap-modal/utils/default-transition';

export default function () {
  // bootstrap-modal transition
  defaultTransition(this);

  // other transitions here..
}

Install Bootstrap

The above instructions will make the modal functional, but it will not look like the bootstrap modal. The following instructions will help you get the styles setup.

First install the bootstrap dependency:

npm install bootstrap@3 --save-dev

Edit your ember-cli-build.js to look similar to the following:

const EmberAddon = require('ember-cli/lib/broccoli/ember-addon');

module.exports = function(defaults) {
  let app = new EmberAddon(defaults, {
    // Add options here
  });

  // The actual styles, which make the modal look good!
  app.import('node_modules/bootstrap/dist/css/bootstrap.css');

  // The scripts are not necessary for the modal, but you might want them for other
  // bootstrap features.
  app.import('node_modules/bootstrap/bootstrap/dist/js/bootstrap.js');

  // Any other imports you might have..

  return app.toTree();
};

Note: If you're using LESS or SASS, then you can import those files in your styles. This would also help if you only want the modal styles and want to pick and choose your files.

API

  • close - Action. The action attribute for closing the modal, e.g. close=(action 'closeModal'). The action will have it's first argument set to true if the modal was closed by clicking the overlay.
  • closeOnOverlayClick - Boolean. Flag enabling triggering the close via clicking the overlay/backdrop.
  • dialogClass - String. Custom CSS class that will be applied to the modal-dialog in order to enable custom styling.

Contributing

See the Contributing guide.