diff --git a/src/trait_manager/model/Trait.ts b/src/trait_manager/model/Trait.ts index 1041abadc..8fffa8819 100644 --- a/src/trait_manager/model/Trait.ts +++ b/src/trait_manager/model/Trait.ts @@ -1,6 +1,7 @@ import { isUndefined } from 'underscore'; import { Model, SetOptions } from '../../common'; import Component from '../../dom_components/model/Component'; +import EditorModule from '../../editor'; import EditorModel from '../../editor/model/Editor'; import TraitView from '../view/TraitView'; @@ -45,7 +46,11 @@ export interface TraitProperties { target?: Component; default?: any; placeholder?: string; + command?: string | ((editor: EditorModule, trait: Trait) => any); options?: Record[]; + labelButton?: string; + text?: string; + full?: boolean; } /** diff --git a/src/trait_manager/view/TraitButtonView.js b/src/trait_manager/view/TraitButtonView.ts similarity index 83% rename from src/trait_manager/view/TraitButtonView.js rename to src/trait_manager/view/TraitButtonView.ts index 0b67c9dd3..44b8f95e2 100644 --- a/src/trait_manager/view/TraitButtonView.js +++ b/src/trait_manager/view/TraitButtonView.ts @@ -2,7 +2,9 @@ import { isString } from 'underscore'; import TraitView from './TraitView'; export default class TraitButtonView extends TraitView { - templateInput = ''; + templateInput() { + return ''; + } onChange() { this.handleClick(); @@ -23,7 +25,7 @@ export default class TraitButtonView extends TraitView { renderLabel() { if (this.model.get('label')) { - TraitView.prototype.renderLabel.apply(this, arguments); + TraitView.prototype.renderLabel.apply(this); } } @@ -32,7 +34,7 @@ export default class TraitButtonView extends TraitView { const { labelButton, text, full } = model.props(); const label = labelButton || text; const className = `${ppfx}btn`; - const input = ``; return input;