import Component from '@ember/component' import BaseComponentMixin from '../mixins/components/base-component'; export default Component.extend(BaseComponentMixin, { classNames: ['modal', 'fade'], 'init-modal': true, 'close-to-parent': true, 'cancel-text': 'Cancel', 'submit-text': 'Submit', keyboard: true, didInsertElement() { let me = this; me._super(...arguments); if (me.get('init-modal')) { me.$().modal({ backdrop: me.get('backdrop'), keyboard: me.get('keyboard') }).on('hidden.bs.modal', ()=> { me.$() && me.get('close-to-parent') && me.get('router').transitionTo( me.get('parentRouteName') || me.get('routeName').replace(/\.[^.]+$/, '')); let onClose = me.get('on-close'); onClose && onClose(); }).on('shown.bs.modal', () => { let onShown = me.get('on-shown'); onShown && onShown(); }); } }, willDestroyElement() { this.$().modal('hide'); } });