Skip to content

Instantly share code, notes, and snippets.

@Caballerog
Created October 9, 2019 20:32
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Caballerog/9ebf410949926f5bb1e65553d09556ec to your computer and use it in GitHub Desktop.
Save Caballerog/9ebf410949926f5bb1e65553d09556ec to your computer and use it in GitHub Desktop.
/**
* @class Model
*
* Manages the data of the application.
*/
class User {
constructor({ name, age, complete } = { complete: false }) {
this.id = this.uuidv4();
this.name = name;
this.age = age;
this.complete = complete;
}
uuidv4() {
return ([1e7] + -1e3 + -4e3 + -8e3 + -1e11).replace(/[018]/g, c =>
(
c ^
(crypto.getRandomValues(new Uint8Array(1))[0] & (15 >> (c / 4)))
).toString(16)
);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment