UNPKG

react-toggle-file-tree

Version:

Provides easy file tree implementation with React.

49 lines (46 loc) 1.37 kB
export { default as ToggleFileTree } from './index-7c804cdb.esm.js'; import '@babel/runtime/helpers/objectSpread2'; import _createForOfIteratorHelper from '@babel/runtime/helpers/esm/createForOfIteratorHelper'; /** * @params {any[]} list * @description 1차원 배열 값을 받아 파일 트리 구조를 만듭니다. * 이 때 list안의 객체의 filePath 값은 필수입니다. */ function createFileTree(list) { var expectedFileTree = { files: [] }; var _iterator = _createForOfIteratorHelper(list), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done;) { var file = _step.value; var filePathParts = file.localPath.split('/').filter(Boolean); var current = expectedFileTree; var _iterator2 = _createForOfIteratorHelper(filePathParts), _step2; try { for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { var part = _step2.value; if (!current[part]) { current[part] = { files: [] }; } current = current[part]; } } catch (err) { _iterator2.e(err); } finally { _iterator2.f(); } current.files.push(file); } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } return expectedFileTree; } export { createFileTree };