Ghost/ghost/admin/app/services/dropdown.js
Simon Backx 8c046740f0 Added support for selecting posts
refs https://github.com/TryGhost/Team/issues/2906

Adds a way to select posts using CMD, shift and CMD+A. And adds a placeholder context menu.

Behind the making it rain feature flag.
2023-04-05 18:00:08 +02:00

29 lines
927 B
JavaScript

import $ from 'jquery';
import classic from 'ember-classic-decorator';
// This is used by the dropdown initializer to manage closing & toggling
import BodyEventListener from 'ghost-admin/mixins/body-event-listener';
import Evented from '@ember/object/evented';
import Service from '@ember/service';
import {action} from '@ember/object';
@classic
export default class DropdownService extends Service.extend(Evented, BodyEventListener) {
bodyClick(event) {
let dropdownSelector = '.ember-basic-dropdown-trigger, .ember-basic-dropdown-content';
if ($(event.target).closest(dropdownSelector).length <= 0) {
this.closeDropdowns();
}
}
@action
closeDropdowns() {
this.trigger('close');
}
@action
toggleDropdown(dropdownName, dropdownButton, options = {}) {
this.trigger('toggle', {target: dropdownName, button: dropdownButton, ...options});
}
}