Research
Security News
Kill Switch Hidden in npm Packages Typosquatting Chalk and Chokidar
Socket researchers found several malicious npm packages typosquatting Chalk and Chokidar, targeting Node.js developers with kill switches and data theft.
bootstrap-modal
Advanced tools
Bootstrap Modal (w/ animation) addon for Ember CLI
ember install bootstrap-modal
:warning: This addon requires Ember version 2.3+.
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 {{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..
}
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:
bower install bootstrap --save-dev
Edit your ember-cli-build.js
to look similar to the following:
var EmberAddon = require('ember-cli/lib/broccoli/ember-addon');
module.exports = function(defaults) {
var app = new EmberAddon(defaults, {
// Add options here
});
// The actual styles, which make the modal look good!
app.import(app.bowerDirectory + '/bootstrap/dist/css/bootstrap.css');
// The scripts are not necessary for the modal, but you might want them for other
// bootstrap features.
app.import(app.bowerDirectory + '/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.
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.Follow the steps below to start the dummy app, and work on contributing to this addon.
git clone
this repositorynpm install
bower install
ember server
npm test
(Runs ember try:testall
to test your addon against multiple Ember versions)ember test
ember test --server
ember build
For more information on using ember-cli, visit http://www.ember-cli.com/.
FAQs
Bootstrap Modal (w/ animation) addon for Ember CLI
We found that bootstrap-modal demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket researchers found several malicious npm packages typosquatting Chalk and Chokidar, targeting Node.js developers with kill switches and data theft.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.