intervention-pages
Version:
80 lines (75 loc) • 2.86 kB
JavaScript
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
/* eslint-disable lit/no-legacy-template-syntax */
import { PolymerElement, html } from '@polymer/polymer';
import '@polymer/iron-icons/iron-icons';
import '@polymer/iron-flex-layout/iron-flex-layout';
import '@polymer/paper-icon-button/paper-icon-button';
// @lajos TO DO refactor
import { property } from '@polymer/decorators';
import { _layoutHorizontal, _layoutCenter } from '../styles/flex-layout-styles';
import { fireEvent } from '../../utils/fire-custom-event';
/**
* @polymer
* @customElement
*/
class IconsActions extends PolymerElement {
constructor() {
super(...arguments);
this.showEdit = true;
this.showDelete = true;
this.showDeactivate = false;
}
static get template() {
return html `
<style>
[hidden] {
display: none !important;
}
:host {
${_layoutHorizontal}
${_layoutCenter}
background-color: var(--list-second-bg-color);
position: absolute;
top: 1px;
right: 0;
bottom: 1px;
@apply --icons-actions;
}
paper-icon-button {
color: var(--dark-icon-color, #6f6f70);
}
</style>
<paper-icon-button hidden$="[[!showEdit]]" icon="create" on-tap="_onEdit"></paper-icon-button>
<paper-icon-button hidden$="[[!showDelete]]" icon="delete" on-tap="_onDelete"></paper-icon-button>
<paper-icon-button hidden$="[[!showDeactivate]]" icon="block" on-tap="_onDeactivate"></paper-icon-button>
`;
}
_onEdit() {
fireEvent(this, 'edit');
}
_onDelete() {
fireEvent(this, 'delete');
}
_onDeactivate() {
fireEvent(this, 'deactivate');
}
}
__decorate([
property({ type: Object })
], IconsActions.prototype, "itemDetails", void 0);
__decorate([
property({ type: Boolean })
], IconsActions.prototype, "showEdit", void 0);
__decorate([
property({ type: Boolean })
], IconsActions.prototype, "showDelete", void 0);
__decorate([
property({ type: Boolean })
], IconsActions.prototype, "showDeactivate", void 0);
window.customElements.define('icons-actions', IconsActions);
export { IconsActions as IconsActionsEl };