UNPKG

focus-formik-error

Version:
38 lines (33 loc) 4.3 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = flattenToLodashFormat; var OBJECT_DELIMITERS = "."; var ARRAY_START_DELIMITER = "["; var ARRAY_END_DELIMITER = "]"; function flattenToLodashFormat(target) { var output = {}; function step(value) { var prev = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : ""; var type = Object.prototype.toString.call(value); var isObject = type === "[object Object]" || type === "[object Array]"; var isArray = Array.isArray(value); if (!isArray && isObject) { Object.keys(value).forEach(function (key) { var newKey = prev ? prev + OBJECT_DELIMITERS + key : key; step(value[key], newKey); }); } else if (isArray) { value.forEach(function (arrayValue, index) { var arrayKey = prev + ARRAY_START_DELIMITER + index + ARRAY_END_DELIMITER; step(arrayValue, arrayKey); }); } else { output[prev] = value; } } step(target); return output; } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uL3NyYy9mbGF0dGVuVG9Mb2Rhc2hGb3JtYXQudHMiXSwibmFtZXMiOlsiT0JKRUNUX0RFTElNSVRFUlMiLCJBUlJBWV9TVEFSVF9ERUxJTUlURVIiLCJBUlJBWV9FTkRfREVMSU1JVEVSIiwiZmxhdHRlblRvTG9kYXNoRm9ybWF0IiwidGFyZ2V0Iiwib3V0cHV0Iiwic3RlcCIsInZhbHVlIiwicHJldiIsInR5cGUiLCJPYmplY3QiLCJwcm90b3R5cGUiLCJ0b1N0cmluZyIsImNhbGwiLCJpc09iamVjdCIsImlzQXJyYXkiLCJBcnJheSIsImtleXMiLCJmb3JFYWNoIiwia2V5IiwibmV3S2V5IiwiYXJyYXlWYWx1ZSIsImluZGV4IiwiYXJyYXlLZXkiXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQU1BLGlCQUFpQixHQUFHLEdBQTFCO0FBQ0EsSUFBTUMscUJBQXFCLEdBQUcsR0FBOUI7QUFDQSxJQUFNQyxtQkFBbUIsR0FBRyxHQUE1Qjs7QUFFZSxTQUFTQyxxQkFBVCxDQUErQkMsTUFBL0IsRUFBK0M7QUFDNUQsTUFBTUMsTUFBTSxHQUFHLEVBQWY7O0FBRUEsV0FBU0MsSUFBVCxDQUFjQyxLQUFkLEVBQXFDO0FBQUEsUUFBWEMsSUFBVyx1RUFBSixFQUFJO0FBQ25DLFFBQU1DLElBQUksR0FBR0MsTUFBTSxDQUFDQyxTQUFQLENBQWlCQyxRQUFqQixDQUEwQkMsSUFBMUIsQ0FBK0JOLEtBQS9CLENBQWI7QUFDQSxRQUFNTyxRQUFRLEdBQUdMLElBQUksS0FBSyxpQkFBVCxJQUE4QkEsSUFBSSxLQUFLLGdCQUF4RDtBQUNBLFFBQU1NLE9BQU8sR0FBR0MsS0FBSyxDQUFDRCxPQUFOLENBQWNSLEtBQWQsQ0FBaEI7O0FBRUEsUUFBSSxDQUFDUSxPQUFELElBQVlELFFBQWhCLEVBQTBCO0FBQ3hCSixNQUFBQSxNQUFNLENBQUNPLElBQVAsQ0FBWVYsS0FBWixFQUFtQlcsT0FBbkIsQ0FBMkIsVUFBVUMsR0FBVixFQUF1QjtBQUNoRCxZQUFJQyxNQUFNLEdBQUdaLElBQUksR0FBR0EsSUFBSSxHQUFHUixpQkFBUCxHQUEyQm1CLEdBQTlCLEdBQW9DQSxHQUFyRDtBQUVBYixRQUFBQSxJQUFJLENBQUNDLEtBQUssQ0FBQ1ksR0FBRCxDQUFOLEVBQWFDLE1BQWIsQ0FBSjtBQUNELE9BSkQ7QUFLRCxLQU5ELE1BTU8sSUFBSUwsT0FBSixFQUFhO0FBQ2xCUixNQUFBQSxLQUFLLENBQUNXLE9BQU4sQ0FBYyxVQUFDRyxVQUFELEVBQWtCQyxLQUFsQixFQUFvQztBQUNoRCxZQUFNQyxRQUFRLEdBQ1pmLElBQUksR0FBR1AscUJBQVAsR0FBK0JxQixLQUEvQixHQUF1Q3BCLG1CQUR6QztBQUdBSSxRQUFBQSxJQUFJLENBQUNlLFVBQUQsRUFBYUUsUUFBYixDQUFKO0FBQ0QsT0FMRDtBQU1ELEtBUE0sTUFPQTtBQUNMbEIsTUFBQUEsTUFBTSxDQUFDRyxJQUFELENBQU4sR0FBZUQsS0FBZjtBQUNEO0FBQ0Y7O0FBRURELEVBQUFBLElBQUksQ0FBQ0YsTUFBRCxDQUFKO0FBRUEsU0FBT0MsTUFBUDtBQUNEIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgT0JKRUNUX0RFTElNSVRFUlMgPSBcIi5cIjtcbmNvbnN0IEFSUkFZX1NUQVJUX0RFTElNSVRFUiA9IFwiW1wiO1xuY29uc3QgQVJSQVlfRU5EX0RFTElNSVRFUiA9IFwiXVwiO1xuXG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBmbGF0dGVuVG9Mb2Rhc2hGb3JtYXQodGFyZ2V0OiB7fSk6IHt9IHtcbiAgY29uc3Qgb3V0cHV0ID0ge30gYXMgeyBba2V5OiBzdHJpbmddOiBzdHJpbmcgfTtcblxuICBmdW5jdGlvbiBzdGVwKHZhbHVlOiBhbnksIHByZXYgPSBcIlwiKSB7XG4gICAgY29uc3QgdHlwZSA9IE9iamVjdC5wcm90b3R5cGUudG9TdHJpbmcuY2FsbCh2YWx1ZSk7XG4gICAgY29uc3QgaXNPYmplY3QgPSB0eXBlID09PSBcIltvYmplY3QgT2JqZWN0XVwiIHx8IHR5cGUgPT09IFwiW29iamVjdCBBcnJheV1cIjtcbiAgICBjb25zdCBpc0FycmF5ID0gQXJyYXkuaXNBcnJheSh2YWx1ZSk7XG5cbiAgICBpZiAoIWlzQXJyYXkgJiYgaXNPYmplY3QpIHtcbiAgICAgIE9iamVjdC5rZXlzKHZhbHVlKS5mb3JFYWNoKGZ1bmN0aW9uIChrZXk6IHN0cmluZykge1xuICAgICAgICBsZXQgbmV3S2V5ID0gcHJldiA/IHByZXYgKyBPQkpFQ1RfREVMSU1JVEVSUyArIGtleSA6IGtleTtcblxuICAgICAgICBzdGVwKHZhbHVlW2tleV0sIG5ld0tleSk7XG4gICAgICB9KTtcbiAgICB9IGVsc2UgaWYgKGlzQXJyYXkpIHtcbiAgICAgIHZhbHVlLmZvckVhY2goKGFycmF5VmFsdWU6IGFueSwgaW5kZXg6IG51bWJlcikgPT4ge1xuICAgICAgICBjb25zdCBhcnJheUtleSA9XG4gICAgICAgICAgcHJldiArIEFSUkFZX1NUQVJUX0RFTElNSVRFUiArIGluZGV4ICsgQVJSQVlfRU5EX0RFTElNSVRFUjtcblxuICAgICAgICBzdGVwKGFycmF5VmFsdWUsIGFycmF5S2V5KTtcbiAgICAgIH0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBvdXRwdXRbcHJldl0gPSB2YWx1ZTtcbiAgICB9XG4gIH1cblxuICBzdGVwKHRhcmdldCk7XG5cbiAgcmV0dXJuIG91dHB1dDtcbn1cbiJdfQ==