1 | "use strict";
|
2 |
|
3 | Object.defineProperty(exports, "__esModule", {
|
4 | value: true
|
5 | });
|
6 | exports.default = void 0;
|
7 |
|
8 | var _find = _interopRequireDefault(require("./find"));
|
9 |
|
10 | var _getValue = _interopRequireDefault(require("get-value"));
|
11 |
|
12 | var _setValue = _interopRequireDefault(require("set-value"));
|
13 |
|
14 | var _clone = _interopRequireDefault(require("clone"));
|
15 |
|
16 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
17 |
|
18 | var update = function update(obj, patterns, cb) {
|
19 | var cloned = (0, _clone.default)(obj);
|
20 | var found = (0, _find.default)(cloned, patterns);
|
21 | found.forEach(function (_ref) {
|
22 | var path = _ref.path;
|
23 | var value = (0, _clone.default)((0, _getValue.default)(cloned, path));
|
24 | var updated = cb(value);
|
25 | if (updated.build && typeof updated.build === 'function') updated = updated.build();
|
26 | (0, _setValue.default)(cloned, path, updated);
|
27 | });
|
28 | return cloned;
|
29 | };
|
30 |
|
31 | var _default = update;
|
32 | exports.default = _default; |
\ | No newline at end of file |