Files

35 lines
1.2 KiB
JavaScript

import { app } from "../../scripts/app.js";
var initialized = false;
app.registerExtension({
name:"quadmoonsNodes.clipTextEncoder",
nodeCreated(node)
{
for (const w of node.widgets || []) {
let widgetValue = w.value;
// Store the original descriptor if it exists
let originalDescriptor = Object.getOwnPropertyDescriptor(w, 'value');
Object.defineProperty(w, 'value', {
get() {
// If there's an original getter, use it. Otherwise, return widgetValue.
let valueToReturn = originalDescriptor && originalDescriptor.get
? originalDescriptor.get.call(w)
: widgetValue;
return valueToReturn;
},
set(newVal) {
// If there's an original setter, use it. Otherwise, set widgetValue.
if (originalDescriptor && originalDescriptor.set) {
originalDescriptor.set.call(w, newVal);
} else {
widgetValue = newVal;
}
}
});
}
setTimeout(() => { initialized = true; }, 500);
}
});