From 060fe41730a5e895205158c049964efa7c95811f Mon Sep 17 00:00:00 2001 From: Joaquin Pereyra Date: Mon, 21 Jul 2025 17:30:48 -0300 Subject: [PATCH] FIX: flatten object value in _cast method FIX: `mergeObject` to `foundry.utils.mergeObject` FIX: add validateKey --- module/data/fields/itemLinksField.mjs | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/module/data/fields/itemLinksField.mjs b/module/data/fields/itemLinksField.mjs index fb54cff8..af61c95d 100644 --- a/module/data/fields/itemLinksField.mjs +++ b/module/data/fields/itemLinksField.mjs @@ -17,16 +17,22 @@ export default class ItemLinksField extends foundry.data.fields.TypedObjectField /** @inheritDoc */ static get _defaults() { - return mergeObject(super._defaults, { validateKey: this.validateKey }); + return foundry.utils.mergeObject(super._defaults, { validateKey: this.validateKey }); } /** * @param {Object} [value] The candidate object to be added. */ static validateKey(value) { - return true; const parsed = foundry.utils.parseUuid(value); - if (!parsed || parsed.type !== CONFIG.Item.documentClass.documentName) return false; - if (!foundry.packages.BasePackage.validateId(parsed.documentId)) return false; + if (!parsed || parsed.type !== foundry.documents.Item.documentName) return false; + if (!foundry.data.validators.isValidId(parsed.documentId)) return false; + return true; + } + + /**@inheritdoc */ + _cast(value) { + value = super._cast(value); + return foundry.utils.flattenObject(value); } }