codex-team / codex-team/editor.js
BlockTunes API should remove "undefined" tune data
- Dominant language
- TypeScript
- Stars
- 31.9k
- Forks
- 2.2k
- Avg merge
- 1d 1h
- Merged PRs (30d)
- 1
Description
While upgrading from 2.18.1 to 2.21.0 I have discovered that `tunes` is always set and I could have tunes which are `undefined` or `empty objects` depending on their state. This can be easily reproduced with:
```
export default class DisableBlockTune {
save() {
if (this.isDefaultState) {
return;
}
return this.data; // whatever this could be: boolean, string with min length of 1 or an abject with at least one property
}
}
```
I think if a block-tune is in "default" state it should not be added to the `tunes` array. What do you think?
The relevant code-part is here: https://github.com/codex-team/editor.js/pull/1596/files#diff-3a2e107229dbebf0e0b7e00160e7faec0cf71e6baf51872078e031789692c8b5R559
My expectation would be:
```
tuneData = tune.save();
if (tuneData) {
tunesData[name] = tuneData;
}
```
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.