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

Change all apis on the Change, Data, all internal structures to be Symbols in order to not conflict with passed in data

Ouverte
#122 8 commentaires 1 réaction 0 personnes assignées Voir sur GitHub
enhancement
Langage dominant
TypeScript
Étoiles
38
Forks
27
Métriques de merge des PR
Aucune PR mergée en 30 j

Description

Reproduction: https://runkit.com/nullvoxpopuli/reproduction-for-validated-changeset-122

for example,

```js
import { Changeset as createChangeset } from 'validated-changeset';

let data = {
trigger: { ...}
};

let changeset = createChangeset(data)
```
the data, `trigger` conflicts with: https://github.com/validated-changeset/validated-changeset/blob/ca0c7d249fc2244edaeb7aef25bdf06583628efa/src/index.ts#L144

I propose all internal APIS be assigned to private symbols instead of regular keys to not conflict with passed data:

example:
```js
const TRIGGER = Symbol('__private__trigger__');

// ...
[TRIGGER](eventName: string, ...args: any[]): void {
const notifier = notifierForEvent(this, eventName);

if (notifier) {
notifier.trigger(...args);
}
```

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.