diff --git a/packages/core/src/pattern.mjs b/packages/core/src/pattern.mjs index 6af43b5a625..aba72adfcf4 100644 --- a/packages/core/src/pattern.mjs +++ b/packages/core/src/pattern.mjs @@ -463,13 +463,12 @@ Pattern.prototype.__addPartOptions = function (part) { if (part.options) { for (const optionName in part.options) { if (!this.__mutated.optionDistance[optionName]) { - this.__mutated.optionDistance[optionName] = this.__mutated.partDistance?.[part.name] || 0 this.__mutated.optionDistance[optionName] = this.__mutated.partDistance?.[part.name] || 0 // Keep design parts immutable in the pattern or risk subtle bugs this.config.options[optionName] = Object.freeze(part.options[optionName]) this.store.log.debug(`🔵 __${optionName}__ option loaded from part \`${part.name}\``) } else if ( - this.__mutated.optionDistance[optionName] > this.__mutated.partDistance[part.name] + this.__mutated.optionDistance[optionName] < this.__mutated.partDistance[part.name] ) { this.config.options[optionName] = part.options[optionName] this.store.log.debug(`🟣 __${optionName}__ option overwritten by \`${part.name}\``)