diff --git a/dist/ueblueprint.js b/dist/ueblueprint.js
index 2f350dc..52eaeb5 100755
--- a/dist/ueblueprint.js
+++ b/dist/ueblueprint.js
@@ -1978,7 +1978,7 @@ class IElement extends HTMLElement {
* @returns {V}
*/
getInputObject(type) {
- return /** @type {V} */ (this.inputObjects.find(object => object.constructor == type))
+ return /** @type {V} */ (this.template.inputObjects.find(object => object.constructor == type))
}
// Subclasses will want to override
@@ -2824,13 +2824,7 @@ class StringPinTemplate extends PinTemplate {
renderInput(pin) {
return html`
`
}
@@ -2841,15 +2835,17 @@ class StringPinTemplate extends PinTemplate {
setup(pin) {
super.setup(pin);
const input = pin.querySelector(".ueb-pin-input-content");
- this.onFocusHandler = () => {
- pin.blueprint.dispatchEditTextEvent(true);
- };
- this.onFocusOutHandler = () => {
- pin.blueprint.dispatchEditTextEvent(false);
- document.getSelection().removeAllRanges(); // Deselect text inside the input
- };
- input.addEventListener("onfocus", this.onFocusHandler);
- input.addEventListener("onfocusout", this.onFocusOutHandler);
+ if (input) {
+ this.onFocusHandler = () => {
+ pin.blueprint.dispatchEditTextEvent(true);
+ };
+ this.onFocusOutHandler = () => {
+ pin.blueprint.dispatchEditTextEvent(false);
+ document.getSelection().removeAllRanges(); // Deselect text inside the input
+ };
+ input.addEventListener("onfocus", this.onFocusHandler);
+ input.addEventListener("onfocusout", this.onFocusOutHandler);
+ }
}
/**
@@ -3092,7 +3088,7 @@ class SelectableDraggableTemplate extends ITemplate {
return [
...super.createInputObjects(element),
...[
- new MouseMoveNodes(this, element.blueprint, {
+ new MouseMoveNodes(element, element.blueprint, {
looseTarget: true
}),
]
diff --git a/js/element/IElement.js b/js/element/IElement.js
index 3dd53ce..18b09c3 100644
--- a/js/element/IElement.js
+++ b/js/element/IElement.js
@@ -81,7 +81,7 @@ export default class IElement extends HTMLElement {
* @returns {V}
*/
getInputObject(type) {
- return /** @type {V} */ (this.inputObjects.find(object => object.constructor == type))
+ return /** @type {V} */ (this.template.inputObjects.find(object => object.constructor == type))
}
// Subclasses will want to override
diff --git a/js/template/SelectableDraggableTemplate.js b/js/template/SelectableDraggableTemplate.js
index 702eeca..6ab86df 100755
--- a/js/template/SelectableDraggableTemplate.js
+++ b/js/template/SelectableDraggableTemplate.js
@@ -20,7 +20,7 @@ export default class SelectableDraggableTemplate extends ITemplate {
return [
...super.createInputObjects(element),
...[
- new MouseMoveNodes(this, element.blueprint, {
+ new MouseMoveNodes(element, element.blueprint, {
looseTarget: true
}),
]
diff --git a/js/template/StringPinTemplate.js b/js/template/StringPinTemplate.js
index 604af3e..07e76b0 100644
--- a/js/template/StringPinTemplate.js
+++ b/js/template/StringPinTemplate.js
@@ -19,13 +19,7 @@ export default class StringPinTemplate extends PinTemplate {
renderInput(pin) {
return html`
`
}
@@ -36,15 +30,17 @@ export default class StringPinTemplate extends PinTemplate {
setup(pin) {
super.setup(pin)
const input = pin.querySelector(".ueb-pin-input-content")
- this.onFocusHandler = () => {
- pin.blueprint.dispatchEditTextEvent(true)
+ if (input) {
+ this.onFocusHandler = () => {
+ pin.blueprint.dispatchEditTextEvent(true)
+ }
+ this.onFocusOutHandler = () => {
+ pin.blueprint.dispatchEditTextEvent(false)
+ document.getSelection().removeAllRanges() // Deselect text inside the input
+ }
+ input.addEventListener("onfocus", this.onFocusHandler)
+ input.addEventListener("onfocusout", this.onFocusOutHandler)
}
- this.onFocusOutHandler = () => {
- pin.blueprint.dispatchEditTextEvent(false)
- document.getSelection().removeAllRanges() // Deselect text inside the input
- }
- input.addEventListener("onfocus", this.onFocusHandler)
- input.addEventListener("onfocusout", this.onFocusOutHandler)
}
/**