diff --git a/assets/utils.js b/assets/utils.js index 943893f..dd7042f 100644 --- a/assets/utils.js +++ b/assets/utils.js @@ -1,3 +1,15 @@ + +// Polifyll to Object.fromEntries +export function fromEntries(iterable) { + return [...iterable] + .reduce((obj, { + 0: key, + 1: val + }) => Object.assign(obj, { + [key]: val + }), {}) +} + export function shuffleEffects(obj) { const copy = Object.entries(obj).slice(0); const length = copy.length; @@ -11,5 +23,5 @@ export function shuffleEffects(obj) { copy[index] = value; } - return Object.fromEntries(copy); + return fromEntries(copy); } diff --git a/pages/index.vue b/pages/index.vue index e9da2df..0095b40 100644 --- a/pages/index.vue +++ b/pages/index.vue @@ -21,7 +21,7 @@ import Effects from "~/components/Effects"; import Inspect from "~/components/Inspect"; import Controls from "~/components/Controls"; import { effects } from "~/assets/effects.js"; -import { shuffleEffects } from "~/assets/utils.js"; +import { shuffleEffects, fromEntries } from "~/assets/utils.js"; export default { components: { Navbar, Header, CarbonAd, Effects, Inspect, Controls }, @@ -48,7 +48,7 @@ export default { const filtered = Object.entries(effects).filter( ([name, data]) => filters[data.type] ); - this.effects = Object.fromEntries(filtered); + this.effects = fromEntries(filtered); } } };