adopted-ember-addons / adopted-ember-addons/validated-changeset

Snapshot changes is wrong when object has proxy attributes

Aperta
#102 6 commenti 0 reazioni 0 assegnatari Vedi su GitHub
bug
Lingua principale
TypeScript
Stelle
38
Fork
27
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Hi, changeset of ED Models with async belongsTo relationships show incorrect changes on snapshot:
![Screenshot 2021-02-03 at 16 15 37](https://user-images.githubusercontent.com/50884/106775512-1799ef80-663b-11eb-8145-fa68de987259.png)

`change` and `changes` are correct, but `snapshot().changes` shows all my async belongsTo as changed attributes incorrectly.

I think this is because of this unrwrap https://github.com/validated-changeset/validated-changeset/blob/da68651a41028ab827872cf10960920779c2a09f/src/index.ts#L975

Which adds all the unwrapped relationships to `this[CHANGES]`. When i get `change` and `changes` these incorrect changes are filtered out, but not on snapshot.

Does my explanation make sense? Thanks in advance!

EDIT:
If anyone else comes here looking for a solution I'm currently creating snapshots like this until it is fixed
```js
function createSnapshot(cs) {
const changes = {};
cs.changes.forEach(({ key, value }) => { changes[key] = value; });
return {
changes,
errors: { ...cs.error },
};
}
```

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Valutazione

Questa issue non è ancora stata valutata.

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.