hswidget
Version:
Helpful Scripts UI widgets
31 lines • 3.17 kB
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.EditSelect = void 0;
const mithril_1 = __importDefault(require("mithril"));
const hsutil_1 = require("hsutil");
const log = new hsutil_1.Log('EditSelect');
const Popup_1 = require("./Popup");
const Widget_1 = require("./Widget");
class EditSelect extends Widget_1.Widget {
oninit(node) {
node.state.selectable = false;
const i = node.children.indexOf(node.attrs.initial);
node.state.selected = node.children[i >= 0 ? i : 0];
node.state.select = (e) => {
const selection = e.currentTarget.value;
node.attrs.update(selection);
node.state.selected = selection;
node.state.selectable = false;
};
}
view(node) {
return mithril_1.default(`select.hsedit_select`, Popup_1.Popup.arm(node.attrs.popup, this.attrs(node.attrs, { onchange: node.state.select })), node.children.map((o) => node.state.selected === o ?
mithril_1.default('option.hsedit_select_option.selected', { value: o, selected: true }, o) :
mithril_1.default('option.hsedit_select_option', { value: o }, o)));
}
}
exports.EditSelect = EditSelect;
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRWRpdFNlbGVjdC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9FZGl0U2VsZWN0LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7OztBQXFDQSxzREFBd0I7QUFDeEIsbUNBQWtDO0FBQUUsTUFBTSxHQUFHLEdBQUcsSUFBSSxZQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7QUFDdEUsbUNBQW1DO0FBQ25DLHFDQUE2RDtBQVc3RCxNQUFhLFVBQVcsU0FBUSxlQUFNO0lBSWxDLE1BQU0sQ0FBQyxJQUFpQztRQUNwQyxJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDOUIsTUFBTSxDQUFDLEdBQWMsSUFBSSxDQUFDLFFBQVMsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNoRSxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsR0FBYyxJQUFJLENBQUMsUUFBUyxDQUFDLENBQUMsSUFBRSxDQUFDLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDN0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFPLEVBQUUsRUFBRTtZQUM1QixNQUFNLFNBQVMsR0FBdUIsQ0FBQyxDQUFDLGFBQWMsQ0FBQyxLQUFLLENBQUM7WUFDN0QsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLENBQUM7WUFDN0IsSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLEdBQUcsU0FBUyxDQUFDO1lBQ2hDLElBQUksQ0FBQyxLQUFLLENBQUMsVUFBVSxHQUFHLEtBQUssQ0FBQztRQUNsQyxDQUFDLENBQUE7SUFDTCxDQUFDO0lBQ0QsSUFBSSxDQUFDLElBQWlDO1FBQ2xDLE9BQU8saUJBQUMsQ0FBQyxzQkFBc0IsRUFDM0IsYUFBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQU8sRUFBRSxRQUFRLEVBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEVBQUMsQ0FBQyxDQUFDLEVBQzVFLElBQUksQ0FBQyxRQUFTLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsS0FBRyxDQUFDLENBQUEsQ0FBQztZQUNoRSxpQkFBQyxDQUFDLHNDQUFzQyxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxRQUFRLEVBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUMzRSxpQkFBQyxDQUFDLDZCQUE2QixFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNoRSxDQUFDO0NBQ0o7QUF0QkQsZ0NBc0JDIn0=