super-hero/extensions/shader-graph/dist/block-forge/internal/pin-float.js

58 lines
6.0 KiB
JavaScript
Raw Normal View History

2024-05-20 20:02:45 -07:00
'use strict';
Object.defineProperty(exports, "__esModule", { value: true });
const pin_1 = require("../pin");
class FloatPinAction 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 FloatPinAction(this.pin, {
source: this.detail.target,
target: this.detail.source,
});
}
}
/**
* Float
* 浮点类型的引脚
*/
class FloatPin extends pin_1.Pin {
constructor() {
super(...arguments);
this.color = '#c171cf';
this.line = 'normal';
this.details = {
value: 0,
};
this.contentSlot = `<ui-num-input ref="num"></ui-num-input>`;
this.childrenSlot = [];
}
onInit() {
const $num = this.refs.num;
$num.addEventListener('confirm', () => {
if (!this.details) {
this.details = {
value: parseFloat($num.value),
};
}
const action = new FloatPinAction(this, {
source: this.details.value,
target: parseFloat($num.value),
});
this.exec(action);
});
}
onUpdate() {
const $num = this.refs.num;
$num.value = this.details.value + '';
}
}
FloatPin.type = 'float';
(0, pin_1.declarePin)(FloatPin);
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGluLWZsb2F0LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2Jsb2NrLWZvcmdlL2ludGVybmFsL3Bpbi1mbG9hdC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxZQUFZLENBQUM7O0FBR2IsZ0NBQW9EO0FBTXBELE1BQU0sY0FBZSxTQUFRLGVBRzNCO0lBRUUsSUFBSSxDQUFDLE1BRUo7UUFDRyxNQUFNLElBQUksR0FBRyxNQUFNLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzRixJQUFJLElBQUksRUFBRTtZQUNOLGFBQWE7WUFDYixNQUFNLEdBQUcsR0FBRyxJQUFJLENBQUMsS0FBaUIsQ0FBQztZQUNuQyxHQUFHLENBQUMsT0FBTyxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQztZQUN2QyxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7U0FDbEI7SUFDTCxDQUFDO0lBRUQsWUFBWTtRQUNSLE9BQU8sSUFBSSxjQUFjLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUNoQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNO1lBQzFCLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU07U0FDN0IsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztDQUNKO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxRQUFTLFNBQVEsU0FBZ0I7SUFBdkM7O1FBR0ksVUFBSyxHQUFHLFNBQVMsQ0FBQztRQUNsQixTQUFJLEdBQUcsUUFBUSxDQUFDO1FBQ2hCLFlBQU8sR0FBRztZQUNOLEtBQUssRUFBRSxDQUFDO1NBQ1gsQ0FBQztRQUVGLGdCQUFXLEdBQVcseUNBQXlDLENBQUM7UUFDaEUsaUJBQVksR0FBRyxFQUFFLENBQUM7SUFzQnRCLENBQUM7SUFwQkcsTUFBTTtRQUNGLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBdUIsQ0FBQztRQUMvQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsU0FBUyxFQUFFLEdBQUcsRUFBRTtZQUNsQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRTtnQkFDZixJQUFJLENBQUMsT0FBTyxHQUFHO29CQUNYLEtBQUssRUFBRSxVQUFVLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQztpQkFDaEMsQ0FBQzthQUNMO1lBQ0QsTUFBTSxNQUFNLEdBQUcsSUFBSSxjQUFjLENBQUMsSUFBSSxFQUFFO2dCQUNwQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLO2dCQUMxQixNQUFNLEVBQUUsVUFBVSxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7YUFDakMsQ0FBQyxDQUFDO1lBQ0gsSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQztRQUN0QixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxRQUFRO1FBQ0osTUFBTSxJQUFJLEdBQUcsSUFBSSxDQUFDLElBQUksQ0FBQyxHQUF1QixDQUFDO1FBQy9DLElBQUksQ0FBQyxLQUFLLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQ3pDLENBQUM7O0FBOUJNLGFBQUksR0FBRyxPQUFPLENBQUM7QUFnQzFCLElBQUEsZ0JBQVUsRUFBQyxRQUFRLENBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIid1c2Ugc3RyaWN0JztcblxuaW1wb3J0IHR5cGUgeyBIVE1MR3JhcGhGb3JnZUVsZW1lbnQgfSBmcm9tICcuLi9mb3JnZSc7XG5pbXBvcnQgeyBQaW4sIGRlY2xhcmVQaW4sIFBpbkFjdGlvbiB9IGZyb20gJy4uL3Bpbic7XG5cbnR5cGUgRmxvYXREZXRhaWwgPSB7XG4gICAgdmFsdWU6IG51bWJlcjtcbn07XG5cbmNsYXNzIEZsb2F0UGluQWN0aW9uIGV4dGVuZHMgUGluQWN0aW9uPHtcbiAgICBzb3VyY2U6IG51bWJlcixcbiAgICB0YXJnZXQ6IG51bWJlcixcbn0+IHtcblxuICAgIGV4ZWMocGFyYW1zOiB7XG4gICAgICAgIGZvcmdlOiBIVE1MR3JhcGhGb3JnZUVsZW1lbnRcbiAgICB9KSB7XG4gICAgICAgIGNvbnN0ICRwaW4gPSBwYXJhbXMuZm9yZ2UuZ2V0UGluRWxlbWVudCh0aGlzLmRldGFpbC5ibG9ja05hbWUsICdpbnB1dCcsIHRoaXMuZGV0YWlsLmluZGV4KTtcbiAgICAgICAgaWYgKCRwaW4pIHtcbiAgICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICAgIGNvbnN0IHBpbiA9ICRwaW4uX19waW4gYXMgRmxvYXRQaW47XG4gICAgICAgICAgICBwaW4uZGV0YWlscy52YWx1ZSA9IHRoaXMuZGV0YWlsLnRhcmdldDtcbiAgICAgICAgICAgIHBpbi5vblVwZGF0ZSgpO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgcmV2ZXJ0QWN0aW9uKCkge1xuICAgICAgICByZXR1cm4gbmV3IEZsb2F0UGluQWN0aW9uKHRoaXMucGluLCB7XG4gICAgICAgICAgICBzb3VyY2U6IHRoaXMuZGV0YWlsLnRhcmdldCxcbiAgICAgICAgICAgIHRhcmdldDogdGhpcy5kZXRhaWwuc291cmNlLFxuICAgICAgICB9KTtcbiAgICB9XG59XG5cbi8qKlxuICogRmxvYXRcbiAqIOa1rueCueexu+Wei+eahOW8leiEmlxuICovXG5jbGFzcyBGbG9hdFBpbiBleHRlbmRzIFBpbjxGbG9hdERldGFpbD4ge1xuICAgIHN0YXRpYyB0eXBlID0gJ2Zsb2F0JztcblxuICAgIGNvbG9yID0gJyNjMTcxY2YnO1xuICAgIGxpbmUgPSAnbm9ybWFsJztcbiAgICBkZXRhaWxzID0ge1xuICAgICAgICB2YWx1ZTogMCxcbiAgICB9O1xuXG4gICAgY29udGVudFNsb3QgPSAvKmh0bWwqL2A8dWktbnVtLWlucHV0IHJlZj1cIm51bVwiPjwvdWktbnVtLWlucHV0PmA7XG4gICAgY2hpbGRyZW5TbG90ID0gW107XG5cbiAgICBvbkluaXQoKSB7XG4gICAgICAgIGNvbnN0ICRudW0gPSB0aGlzLnJlZnMubnVtIGFzIEhUTUxJbnB1dEVsZW1lbnQ7XG4gICAgICAgICRudW0uYWRkRXZlbnRMaXN0ZW5lcignY29uZmlybScsICgpID0+IHtcbiAgICAgICAgICAgIGlmICghdGhpcy5kZXRhaWxzKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5kZXRhaWxzID0ge1xuICAgICAgICAgICAgICAgICAgICB2YWx1ZTogcGFyc2VGbG9hdCgkbnVtLnZhbHVlKSxcbiAgICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgYWN0aW9uID0gbmV3IEZsb2F0UGluQWN0aW9uKHRoaXMsIHtcbiAgI