'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); const pin_1 = require("../pin"); class BooleanPinAction extends pin_1.PinAction { exec(params) { const $pin = params.forge.getPinElement(this.detail.blockName, 'input', this.detail.index); if ($pin) { // @ts-ignore const pin = $pin.__pin; pin.details.value = this.detail.target; pin.onUpdate(); } } revertAction() { return new BooleanPinAction(this.pin, { source: this.detail.target, target: this.detail.source, }); } } /** * Boolean * 布尔类型的引脚 */ class BooleanPin extends pin_1.Pin { constructor() { super(...arguments); this.color = '#227f9b'; this.line = 'normal'; this.details = { value: false, }; this.contentSlot = ``; this.childrenSlot = []; } onInit() { const $checkbox = this.refs.checkbox; $checkbox.addEventListener('confirm', () => { if (!this.details) { this.details = { value: !!$checkbox.value, }; } const action = new BooleanPinAction(this, { source: this.details.value, target: !!$checkbox.value, }); this.exec(action); }); } onUpdate() { const $checkbox = this.refs.checkbox; // @ts-ignore UICheckbox 类型没有暴露出来 $checkbox.value = this.details.value; } } BooleanPin.type = 'boolean'; (0, pin_1.declarePin)(BooleanPin); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluLWJvb2xlYW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmxvY2stZm9yZ2UvaW50ZXJuYWwvcGluLWJvb2xlYW4udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsWUFBWSxDQUFDOztBQUdiLGdDQUFvRDtBQU1wRCxNQUFNLGdCQUFpQixTQUFRLGVBRzdCO0lBRUUsSUFBSSxDQUFDLE1BRUo7UUFDRyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzRixJQUFJLElBQUksRUFBRTtZQUNOLGFBQWE7WUFDYixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBaUIsQ0FBQztZQUNuQyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztZQUN2QyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDbEI7SUFDTCxDQUFDO0lBRUQsWUFBWTtRQUNSLE9BQU8sSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFO1lBQ2xDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU07WUFDMUIsTUFBTSxFQUFFLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTTtTQUM3QixDQUFDLENBQUM7SUFDUCxDQUFDO0NBQ0o7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVcsU0FBUSxTQUFrQjtJQUEzQzs7UUFHSSxVQUFLLEdBQUcsU0FBUyxDQUFDO1FBQ2xCLFNBQUksR0FBRyxRQUFRLENBQUM7UUFDaEIsWUFBTyxHQUFHO1lBQ04sS0FBSyxFQUFFLEtBQUs7U0FDZixDQUFDO1FBRUYsZ0JBQVcsR0FBVyw0Q0FBNEMsQ0FBQztRQUNuRSxpQkFBWSxHQUFHLEVBQUUsQ0FBQztJQXVCdEIsQ0FBQztJQXJCRyxNQUFNO1FBQ0YsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUE0QixDQUFDO1FBQ3pELFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxTQUFTLEVBQUUsR0FBRyxFQUFFO1lBQ3ZDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFO2dCQUNmLElBQUksQ0FBQyxPQUFPLEdBQUc7b0JBQ1gsS0FBSyxFQUFFLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSztpQkFDM0IsQ0FBQzthQUNMO1lBQ0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxnQkFBZ0IsQ0FBQyxJQUFJLEVBQUU7Z0JBQ3RDLE1BQU0sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUs7Z0JBQzFCLE1BQU0sRUFBRSxDQUFDLENBQUMsU0FBUyxDQUFDLEtBQUs7YUFDNUIsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxRQUFRO1FBQ0osTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUE0QixDQUFDO1FBQ3pELGlDQUFpQztRQUNqQyxTQUFTLENBQUMsS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDO0lBQ3pDLENBQUM7O0FBL0JNLGVBQUksR0FBRyxTQUFTLENBQUM7QUFpQzVCLElBQUEsZ0JBQVUsRUFBQyxVQUFVLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuaW1wb3J0IHR5cGUgeyBIVE1MR3JhcGhGb3JnZUVsZW1lbnQgfSBmcm9tICcuLi9mb3JnZSc7XG5pbXBvcnQgeyBQaW4sIGRlY2xhcmVQaW4sIFBpbkFjdGlvbiB9IGZyb20gJy4uL3Bpbic7XG5cbnR5cGUgQm9vbGVhbkRldGFpbCA9IHtcbiAgICB2YWx1ZTogYm9vbGVhbjtcbn07XG5cbmNsYXNzIEJvb2xlYW5QaW5BY3Rpb24gZXh0ZW5kcyBQaW5BY3Rpb248e1xuICAgIHNvdXJjZTogYm9vbGVhbixcbiAgICB0YXJnZXQ6IGJvb2xlYW4sXG59PiB7XG5cbiAgICBleGVjKHBhcmFtczoge1xuICAgICAgICBmb3JnZTogSFRNTEdyYXBoRm9yZ2VFbGVtZW50XG4gICAgfSkge1xuICAgICAgICBjb25zdCAkcGluID0gcGFyYW1zLmZvcmdlLmdldFBpbkVsZW1lbnQodGhpcy5kZXRhaWwuYmxvY2tOYW1lLCAnaW5wdXQnLCB0aGlzLmRldGFpbC5pbmRleCk7XG4gICAgICAgIGlmICgkcGluKSB7XG4gICAgICAgICAgICAvLyBAdHMtaWdub3JlXG4gICAgICAgICAgICBjb25zdCBwaW4gPSAkcGluLl9fcGluIGFzIEZsb2F0UGluO1xuICAgICAgICAgICAgcGluLmRldGFpbHMudmFsdWUgPSB0aGlzLmRldGFpbC50YXJnZXQ7XG4gICAgICAgICAgICBwaW4ub25VcGRhdGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHJldmVydEFjdGlvbigpIHtcbiAgICAgICAgcmV0dXJuIG5ldyBCb29sZWFuUGluQWN0aW9uKHRoaXMucGluLCB7XG4gICAgICAgICAgICBzb3VyY2U6IHRoaXMuZGV0YWlsLnRhcmdldCxcbiAgICAgICAgICAgIHRhcmdldDogdGhpcy5kZXRhaWwuc291cmNlLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5cbi8qKlxuICogQm9vbGVhblxuICog5biD5bCU57G75Z6L55qE5byV6ISaXG4gKi9cbmNsYXNzIEJvb2xlYW5QaW4gZXh0ZW5kcyBQaW48Qm9vbGVhbkRldGFpbD4ge1xuICAgIHN0YXRpYyB0eXBlID0gJ2Jvb2xlYW4nO1xuXG4gICAgY29sb3IgPSAnIzIyN2Y5Yic7XG4gICAgbGluZSA9ICdub3JtYWwnO1xuICAgIGRldGFpbHMgPSB7XG4gICAgICAgIHZhbHVlOiBmYWxzZSxcbiAgICB9O1xuXG4gICAgY29udGVudFNsb3QgPSAvKmh0bWwqL2A8dWktY2hlY2tib3ggcmVmPVwiY2hlY2tib3hcIj48L3VpLWNoZWNrYm94PmA7XG4gICAgY2hpbGRyZW5TbG90ID0gW107XG5cbiAgICBvbkluaXQoKSB7XG4gICAgICAgIGNvbnN0ICRjaGVja2JveCA9IHRoaXMucmVmcy5jaGVja2JveCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgICAgICAkY2hlY2tib3guYWRkRXZlbnRMaXN0ZW5lcignY29uZmlybScsICgpID0+IHtcbiAgICAgICAgICAgIGlmICghdGhpcy5kZXRhaWxzKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kZXRhaWxzID0ge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogISEkY2hlY2tib3gudmFsdWUsXG4gICAgICAgICAgICAgICAgfTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IGFjdGlvbiA9IG5ldyBCb29sZWFuUGluQWN0aW9uKHRoaXMsIHtcbiAgICAgICAgICAgICAgICBzb3VyY2U6IHRoaXMuZGV0YWlscy52YWx1ZSxcbiAgICAgICAgICAgICAgICB0YXJnZXQ6ICEhJGNoZWNrYm94LnZhbHVlLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICB0aGlzLmV4ZWMoYWN0aW9uKTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgb25VcGRhdGUoKSB7XG4gICAgICAgIGNvbnN0ICRjaGVja2JveCA9IHRoaXMucmVmcy5jaGVja2JveCBhcyBIVE1MSW5wdXRFbGVtZW50O1xuICAgICAgICAvLyBAdHMtaWdub3JlIFVJQ2hlY2tib3gg57G75Z6L5rKh5pyJ5pq06Zyy5Ye65p2lXG4gICAgICAgICRjaGVja2JveC52YWx1ZSA9IHRoaXMuZGV0YWlscy52YWx1ZTtcbiAgICB9XG59XG5kZWNsYXJlUGluKEJvb2xlYW5QaW4pO1xuIl19