d51f2bcf23
closes https://github.com/TryGhost/Admin/pull/2107 - updated related babel dependencies - bumped eslint - ran `yarn lint:js --fix` - added eslint ignore comments for some required non-camel-case properties
61 lines
1.7 KiB
JavaScript
61 lines
1.7 KiB
JavaScript
import ModalBase from 'ghost-admin/components/modal-base';
|
|
import classic from 'ember-classic-decorator';
|
|
import {action} from '@ember/object';
|
|
import {inject as service} from '@ember/service';
|
|
|
|
// TODO: update modals to work fully with Glimmer components
|
|
@classic
|
|
export default class ModalStripeConnect extends ModalBase {
|
|
@service settings;
|
|
|
|
@action
|
|
setStripeConnectIntegrationTokenSetting(stripeConnectIntegrationToken) {
|
|
this.settings.set('stripeConnectIntegrationToken', stripeConnectIntegrationToken);
|
|
}
|
|
|
|
@action
|
|
reset() {
|
|
// stripeConnectIntegrationToken is not a persisted value so we don't want
|
|
// to keep it around across transitions
|
|
this.settings.set('stripeConnectIntegrationToken', undefined);
|
|
}
|
|
|
|
@action
|
|
close(event) {
|
|
event?.preventDefault?.();
|
|
this.closeModal();
|
|
}
|
|
|
|
@action
|
|
confirmAction() {
|
|
this.confirm();
|
|
this.close();
|
|
}
|
|
|
|
@action
|
|
updateSuccessModifier() {
|
|
if (this.settings.get('stripeConnectAccountId')) {
|
|
if (this.modifier?.indexOf('stripe-connected') === -1) {
|
|
this.updateModifier(`${this.modifier} stripe-connected`);
|
|
}
|
|
} else {
|
|
if (this.modifier?.indexOf('stripe-connected') !== -1) {
|
|
this.updateModifier(this.modifier.replace(/\s?stripe-connected/, ''));
|
|
}
|
|
}
|
|
}
|
|
|
|
actions = {
|
|
confirm() {
|
|
if (this.settings.get('stripeConnectAccountId')) {
|
|
return this.confirmAction();
|
|
}
|
|
// noop - enter key shouldn't do anything
|
|
},
|
|
// needed because ModalBase uses .send() for keyboard events
|
|
closeModal() {
|
|
this.close();
|
|
}
|
|
};
|
|
}
|