1 | /**
|
2 | * Shallow clone a given object.
|
3 | *
|
4 | * Note: This does *not* handle all kinds of objects!
|
5 | *
|
6 | * @ignore
|
7 | */
|
8 | export function shallowcopy (obj) {
|
9 | let copy
|
10 | if (obj instanceof Map) {
|
11 | copy = new Map(obj)
|
12 | } else {
|
13 | copy = Object.create(Object.getPrototypeOf(obj))
|
14 | for (let prop in obj) {
|
15 | copy[prop] = obj[prop]
|
16 | }
|
17 | }
|
18 | return copy
|
19 | }
|