Sha256: 287a24cae4d9fd481af43a56b97a62331daad6419de3ad688a64d2605dd5ba83

Contents?: true

Size: 381 Bytes

Versions: 5

Compression:

Stored size: 381 Bytes

Contents

export default function provide(namespace: string, value: Object, target = global) {
  const parts = namespace.split('.');
  let cur = target;
  for (let part; parts.length && (part = parts.shift());) {
    if (!parts.length && value !== undefined) {
      cur[part] = value;
    } else if (cur[part]) {
      cur = cur[part];
    } else {
      cur = cur[part] = {};
    }
  }
}

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
hauler-0.3.4 src/provide/index.js
hauler-0.3.3 src/provide/index.js
hauler-0.3.2 src/provide/index.js
hauler-0.3.1 src/provide/index.js
hauler-0.3.0 src/provide/index.js