Spaces:
Running
on
Zero
Running
on
Zero
File size: 958 Bytes
3d5837a |
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 |
import { app } from "../../../scripts/app.js";
const id = "pysssss.UseNumberInputPrompt";
const ext = {
name: id,
async setup(app) {
const prompt = LGraphCanvas.prototype.prompt;
const setting = app.ui.settings.addSetting({
id,
name: "🐍 Use number input on value entry",
defaultValue: false,
type: "boolean",
});
LGraphCanvas.prototype.prompt = function () {
const dialog = prompt.apply(this, arguments);
if (setting.value && typeof arguments[1] === "number") {
// If this should be a number then update the imput
const input = dialog.querySelector("input");
input.type = "number";
// Add constraints
const widget = app.canvas.node_widget?.[1];
if (widget?.options) {
for (const prop of ["min", "max", "step"]) {
if (widget.options[prop]) input[prop] = widget.options[prop];
}
}
}
return dialog;
};
},
};
app.registerExtension(ext);
|