mirror of
https://github.com/barsdeveloper/ueblueprint.git
synced 2026-03-12 11:07:40 +08:00
Fix pasted nodes links
This commit is contained in:
@@ -9,6 +9,8 @@ import PinReferenceEntity from "../entity/PinReferenceEntity"
|
||||
import SerializerFactory from "../serialization/SerializerFactory"
|
||||
import Utility from "../Utility"
|
||||
|
||||
/** @typedef {import("./IElement").default} IElement */
|
||||
|
||||
/** @extends {ISelectableDraggableElement<ObjectEntity, NodeTemplate>} */
|
||||
export default class NodeElement extends ISelectableDraggableElement {
|
||||
|
||||
@@ -102,8 +104,9 @@ export default class NodeElement extends ISelectableDraggableElement {
|
||||
return this.entity.getDisplayName()
|
||||
}
|
||||
|
||||
sanitizeLinks() {
|
||||
this.getPinElements().forEach(pin => pin.sanitizeLinks())
|
||||
/** @param {IElement[]} nodesWhitelist */
|
||||
sanitizeLinks(nodesWhitelist = []) {
|
||||
this.getPinElements().forEach(pin => pin.sanitizeLinks(nodesWhitelist))
|
||||
}
|
||||
|
||||
/** @param {String} name */
|
||||
|
||||
@@ -192,10 +192,14 @@ export default class PinElement extends IElement {
|
||||
this.entity.DefaultValue = value
|
||||
}
|
||||
|
||||
sanitizeLinks() {
|
||||
/** @param {IElement[]} nodesWhitelist */
|
||||
sanitizeLinks(nodesWhitelist = []) {
|
||||
this.entity.LinkedTo = this.getLinks().filter(pinReference => {
|
||||
let pin = this.blueprint.getPin(pinReference)
|
||||
if (pin) {
|
||||
if (nodesWhitelist.length && !nodesWhitelist.includes(pin.nodeElement)) {
|
||||
return false
|
||||
}
|
||||
let link = this.blueprint.getLink(this, pin, true)
|
||||
if (!link) {
|
||||
this.blueprint.addGraphElement(new LinkElement(this, pin))
|
||||
|
||||
Reference in New Issue
Block a user