UNPKG

489 BJavaScriptView Raw
1var isObservable = require('./is-observable')
2var resolve = require('./resolve')
3
4module.exports = function forEachPair (source, fn) {
5 if (source) {
6 if (isObservable(source) && source.keys && source.get) {
7 resolve(source.keys).forEach(function (key) {
8 fn(key, source.get(key))
9 })
10 } else {
11 var values = resolve(source)
12 if (values) {
13 Object.keys(values).forEach(function (key) {
14 fn(key, values[key])
15 })
16 }
17 }
18 }
19}