UNPKG

vue-gantt-3

Version:

A gantt component for Vue 3

1 lines 2.72 kB
{"version":3,"file":"common.mjs","sources":["../../../src/utils/common.ts"],"sourcesContent":["\nexport const getRound = (floatNum: number, num = 3) => {\n return parseFloat(floatNum.toFixed(num));\n};\n\n/**\n * Traversing the tree, function will stop traversing once it returns false\n * @param {Array} tree\n * @param {Function} fn\n * @param {String} childrenKey\n * @param parent\n *\n */\nexport function treeForEachSkipChildren<T>(\n tree:T[],\n fn:(node:T, parent?:T|undefined) => boolean|void|'skipChildren',\n childrenKey = 'children',\n parent?:T\n) {\n let size = tree.length;\n for (let i = 0; i < size; i++) {\n const curNode = tree[i];\n const res = fn(curNode, parent);\n if (res === false) return false;\n if (res === 'skipChildren') continue;\n\n const children = (curNode as any)?.[childrenKey];\n if (children?.length) {\n if (treeForEachSkipChildren(children, fn, childrenKey, curNode) === false) {\n return false;\n }\n }\n\n }\n}\n\n/**\n * Traversing the tree, function will stop traversing once it returns false\n * @param {Array} tree\n * @param {Function} fn\n * @param {String} childrenKey\n * @param parent\n *\n */\nexport function treeForEach<T>(\n tree:T[],\n fn:(node:T, parent?:T|undefined) => boolean|void,\n childrenKey = 'children',\n parent?:T\n) {\n let size = tree.length;\n for (let i = 0; i < size; i++) {\n const curNode = tree[i];\n if (fn(curNode, parent) === false) return false;\n const children = (curNode as any)?.[childrenKey];\n if (children?.length) {\n if (treeForEach(children, fn, childrenKey, curNode) === false) {\n return false;\n }\n }\n\n }\n}\n\nexport const sleep = (s = 0) => new Promise(r => setTimeout(r, s * 1000));\n\nexport const toMap = <K=string, V=any>(items: Array<V> | Set<V>, idKey = 'id'): Map<K, V> => {\n const map = new Map<K, V>();\n for (let it of items) {\n map.set(it[idKey], it);\n }\n return map;\n};"],"names":[],"mappings":"AACO,MAAM,WAAW,CAAC,UAAkB,MAAM,MAAM;AACrD,SAAO,WAAW,SAAS,QAAQ,GAAG,CAAC;AACzC;AAUO,SAAS,wBACd,MACA,IACA,cAAc,YACd,QACA;AACA,MAAI,OAAO,KAAK;AAChB,WAAS,IAAI,GAAG,IAAI,MAAM,KAAK;AACvB,UAAA,UAAU,KAAK,CAAC;AAChB,UAAA,MAAM,GAAG,SAAS,MAAM;AAC1B,QAAA,QAAQ,MAAc,QAAA;AAC1B,QAAI,QAAQ,eAAgB;AAEtB,UAAA,WAAY,mCAAkB;AACpC,QAAI,qCAAU,QAAQ;AACpB,UAAI,wBAAwB,UAAU,IAAI,aAAa,OAAO,MAAM,OAAO;AAClE,eAAA;AAAA,MAAA;AAAA,IACT;AAAA,EACF;AAGJ;AAUO,SAAS,YACd,MACA,IACA,cAAc,YACd,QACA;AACA,MAAI,OAAO,KAAK;AAChB,WAAS,IAAI,GAAG,IAAI,MAAM,KAAK;AACvB,UAAA,UAAU,KAAK,CAAC;AACtB,QAAI,GAAG,SAAS,MAAM,MAAM,MAAc,QAAA;AACpC,UAAA,WAAY,mCAAkB;AACpC,QAAI,qCAAU,QAAQ;AACpB,UAAI,YAAY,UAAU,IAAI,aAAa,OAAO,MAAM,OAAO;AACtD,eAAA;AAAA,MAAA;AAAA,IACT;AAAA,EACF;AAGJ;"}