Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | 1x 1x 1x 1x 1x 7x | import CustomElement from "../../custom-element/CustomElement";
import { CustomElementPropertyMetadata } from "../../custom-element/interfaces";
import KindMixin from "../../custom-element/mixins/components/kind/KindMixin";
import SizableMixin from "../../custom-element/mixins/components/sizable/SizableMixin";
import html from "../../renderer/html";
import { NodePatchingData } from "../../renderer/NodePatcher";
export default abstract class Tool extends
SizableMixin(
KindMixin(
CustomElement
)
) {
static get properties(): Record<string, CustomElementPropertyMetadata> {
return {
/**
* What action to execute when the tool has been closed
*/
iconName: {
type: [String, Function],
required: true
}
};
}
render(): NodePatchingData {
const {
kind,
size,
iconName,
} = this;
return html`<gcl-button kind=${kind} size=${size} variant="text" click=${evt => this.click(evt)}>
<gcl-icon name=${iconName}></gcl-icon>
</gcl-button>`;
}
} |