// via: http://stackoverflow.com/a/2117523/2511985

export function getUniqueId(){
  var str = 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx';
  return str.replace(/[xy]/g, function(c) {
    var r = Math.random()*16|0, v = c == 'x' ? r : (r&0x3|0x8);
    return v.toString(16);
  });
}

@@ -1,56 +1,4 @@
-// via: http://stackoverflow.com/a/2117523/2511985%0A%0A
 expo
@@ -26,15 +26,233 @@
 Id()
+ 
 %7B%0A  
-var
+// uuidv4%0A  if (typeof crypto !== 'undefined') %7B%0A    return (%5B1e7%5D+-1e3+-4e3+-8e3+-1e11).replace(/%5B018%5D/g, c =%3E%0A      (c %5E crypto.getRandomValues(new Uint8Array(1))%5B0%5D & 15 %3E%3E c / 4).toString(16)%0A    )%0A  %7D else %7B%0A    let
  str
@@ -294,16 +294,18 @@
 xxxxx';%0A
+  
   return
@@ -348,11 +348,13 @@
     
-var
+  let
  r =
@@ -406,24 +406,26 @@
 3%7C0x8);%0A    
+  
 return v.toS
@@ -439,12 +439,18 @@
 6);%0A
+  
   %7D);%0A
+  %7D%0A
 %7D%0A

update UUID generation with Crypto