lotus / node_modules /.cache /ts-loader /395801c42d044db337931d4b64fc9c81.json
k-l-lambda's picture
updated node_modules
4cadbaf
{"remainingRequest":"/home/camus/work/lotus/node_modules/babel-loader/lib/index.js!/home/camus/work/lotus/node_modules/ts-loader/index.js??ref--15-2!/home/camus/work/lotus/node_modules/eslint-loader/index.js??ref--14-0!/home/camus/work/lotus/inc/lilyNotation/fuzzyMatch.ts","dependencies":[{"path":"/home/camus/work/lotus/inc/lilyNotation/fuzzyMatch.ts","mtime":1732184473659},{"path":"/home/camus/work/lotus/node_modules/cache-loader/dist/cjs.js","mtime":1719800821084},{"path":"/home/camus/work/lotus/node_modules/babel-loader/lib/index.js","mtime":1727163989637},{"path":"/home/camus/work/lotus/node_modules/ts-loader/index.js","mtime":1726221607070},{"path":"/home/camus/work/lotus/node_modules/eslint-loader/index.js","mtime":1719800837044}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Owpjb25zdCBub3RlUGl0Y2hEaXN0YW5jZSA9IChuMSwgbjIpID0+IHsKICBsZXQgZGlmZmVyID0gTWF0aC5hYnMobjEucGl0Y2ggLSBuMi5waXRjaCk7CiAgaWYgKGRpZmZlciA+IDcpIGRpZmZlciAtPSAxMS41OwogIHJldHVybiBkaWZmZXIgKiAyOwp9Owpjb25zdCBmdXp6eU1hdGNoTm90ZXMgPSAocGF0aCwgY25vdGVzLCBzbm90ZXMsIHBpdGNoVG9sZXJhbmNlLCBvZmZzZXRUb2xlcmFuY2UgPSAyKSA9PiB7CiAgY29uc3QgY2FuZGlkYXRlcyA9IHt9OwogIGNvbnN0IG1hdGNoZWQgPSBzbm90ZXMucmVkdWNlKChjb3VudCwgc25vdGUpID0+IHsKICAgIGNvbnN0IHBjYW4gPSBjbm90ZXMuZmlsdGVyKGNub3RlID0+IG5vdGVQaXRjaERpc3RhbmNlKGNub3RlLCBzbm90ZSkgPD0gcGl0Y2hUb2xlcmFuY2UgJiYgTWF0aC5hYnMoc25vdGUuYmFzZUNzaSAtIGNub3RlLnNvZnRJbmRleCkgPCBvZmZzZXRUb2xlcmFuY2UpLnNvcnQoKG4xLCBuMikgPT4gTWF0aC5hYnMoc25vdGUuYmFzZUNzaSAtIG4xLnNvZnRJbmRleCkgLSBNYXRoLmFicyhzbm90ZS5iYXNlQ3NpIC0gbjIuc29mdEluZGV4KSk7CiAgICBpZiAocGNhbi5sZW5ndGgpIHsKICAgICAgY29uc3QgYmVzdERpc3RhbmNlID0gbm90ZVBpdGNoRGlzdGFuY2UocGNhblswXSwgc25vdGUpOwogICAgICBjb25zdCBsYXN0ID0gY2FuZGlkYXRlc1twY2FuWzBdLmluZGV4XTsKICAgICAgaWYgKCFsYXN0IHx8IGJlc3REaXN0YW5jZSA8IGxhc3QuZGlzdGFuY2UpIGNhbmRpZGF0ZXNbcGNhblswXS5pbmRleF0gPSB7CiAgICAgICAgc2k6IHNub3RlLmluZGV4LAogICAgICAgIGRpc3RhbmNlOiBiZXN0RGlzdGFuY2UKICAgICAgfTsKICAgICAgKytjb3VudDsKICAgIH0KICAgIHJldHVybiBjb3VudDsKICB9LCAwKTsKICBjb25zdCBmaXhlZCA9IE9iamVjdC5lbnRyaWVzKGNhbmRpZGF0ZXMpLm1hcCgoW2NpLCB7CiAgICBzaQogIH1dKSA9PiB7CiAgICBwYXRoW3NpXSA9IE51bWJlcihjaSk7CiAgICByZXR1cm4gW3NpLCBOdW1iZXIoY2kpXTsKICB9KTsKICAvL2NvbnNvbGUuZGVidWcoImZ1enp5TWF0Y2guZml4ZWQ6IiwgZml4ZWQubWFwKHBhaXIgPT4gcGFpci5qb2luKCkpKTsKICByZXR1cm4gewogICAgZml4ZWQ6IGZpeGVkLmxlbmd0aCwKICAgIG1hdGNoZWQKICB9Owp9Owpjb25zdCBmdXp6eU1hdGNoTm90YXRpb25zID0gKHBhdGgsIGNyaXRlcmlvbiwgc2FtcGxlLCB7CiAgcGl0Y2hUb2xlcmFuY2VNYXggPSA0Cn0gPSB7fSkgPT4gewogIC8vIHVubWF0Y2ggb3ZlcmxhcHBlZCBpbmRpY2VzCiAgY29uc3Qgb3ZlcmxhcHBlZCA9IG5ldyBTZXQoKTsKICBwYXRoLnJlZHVjZSgoc2V0LCBjaSkgPT4gewogICAgaWYgKGNpID49IDApIHsKICAgICAgaWYgKHNldC5oYXMoY2kpKSBvdmVybGFwcGVkLmFkZChjaSk7ZWxzZSBzZXQuYWRkKGNpKTsKICAgIH0KICAgIHJldHVybiBzZXQ7CiAgfSwgbmV3IFNldCgpKTsKICAvL2NvbnNvbGUuZGVidWcoIm92ZXJsYXBwZWQ6Iiwgb3ZlcmxhcHBlZCwgWy4uLnBhdGhdKTsKICBwYXRoLmZvckVhY2goKGNpLCBzaSkgPT4gewogICAgaWYgKG92ZXJsYXBwZWQuaGFzKGNpKSkgcGF0aFtzaV0gPSAtMTsKICB9KTsKICAvLyBhc3NpZ24gYmFzZSBvZmZzZXQgb24gc2FtcGxlIG5vdGVzCiAgbGV0IG9mZnNldCA9IG51bGw7CiAgZm9yIChsZXQgaSA9IDA7IGkgPCBzYW1wbGUubm90ZXMubGVuZ3RoOyArK2kpIHsKICAgIGNvbnN0IG5vdGUgPSBzYW1wbGUubm90ZXNbaV07CiAgICBjb25zdCBjaSA9IHBhdGhbaV07CiAgICBpZiAoY2kgPCAwKSBub3RlLmJhc2VPZmZzZXQgPSBvZmZzZXQ7ZWxzZSBvZmZzZXQgPSBub3RlLnNvZnRJbmRleCAtIGNyaXRlcmlvbi5ub3Rlc1tjaV0uc29mdEluZGV4OwogIH0KICBmb3IgKGxldCBpID0gc2FtcGxlLm5vdGVzLmxlbmd0aCAtIDE7IGkgPj0gMDsgLS1pKSB7CiAgICBjb25zdCBub3RlID0gc2FtcGxlLm5vdGVzW2ldOwogICAgY29uc3QgY2kgPSBwYXRoW2ldOwogICAgaWYgKGNpIDwgMCkgewogICAgICBjb25zdCBsYXN0T2Zmc2V0ID0gbm90ZS5iYXNlT2Zmc2V0OwogICAgICBub3RlLmJhc2VPZmZzZXQgPSBOdW1iZXIuaXNGaW5pdGUobGFzdE9mZnNldCkgPyAobGFzdE9mZnNldCArIG9mZnNldCkgLyAyIDogb2Zmc2V0OwogICAgfSBlbHNlIG9mZnNldCA9IG5vdGUuc29mdEluZGV4IC0gY3JpdGVyaW9uLm5vdGVzW2NpXS5zb2Z0SW5kZXg7CiAgfQogIGxldCBwaXRjaFRvbGVyYW5jZSA9IDA7CiAgd2hpbGUgKHRydWUpIHsKICAgIGNvbnN0IGNub3RlcyA9IGNyaXRlcmlvbi5ub3Rlcy5maWx0ZXIobm90ZSA9PiAhcGF0aC5zb21lKGNpID0+IGNpID09PSBub3RlLmluZGV4KSkubWFwKG5vdGUgPT4gKHsKICAgICAgaW5kZXg6IG5vdGUuaW5kZXgsCiAgICAgIHBpdGNoOiBub3RlLnBpdGNoLAogICAgICBzb2Z0SW5kZXg6IG5vdGUuc29mdEluZGV4CiAgICB9KSk7CiAgICBjb25zdCBzbm90ZXMgPSBzYW1wbGUubm90ZXMuZmlsdGVyKG5vdGUgPT4gcGF0aFtub3RlLmluZGV4XSA8IDAgJiYgTnVtYmVyLmlzRmluaXRlKG5vdGUuYmFzZU9mZnNldCkpLm1hcChub3RlID0+ICh7CiAgICAgIGluZGV4OiBub3RlLmluZGV4LAogICAgICBwaXRjaDogbm90ZS5waXRjaCwKICAgICAgc29mdEluZGV4OiBub3RlLnNvZnRJbmRleCwKICAgICAgYmFzZUNzaTogbm90ZS5zb2Z0SW5kZXggLSBub3RlLmJhc2VPZmZzZXQKICAgIH0pKTsKICAgIC8vY29uc29sZS5kZWJ1ZygiZnV6enlNYXRjaC5ub3RlczoiLCBjbm90ZXMubWFwKG5vdGUgPT4gbm90ZS5pbmRleCksIHNub3Rlcy5tYXAobm90ZSA9PiBub3RlLmluZGV4KSk7CiAgICBpZiAoIWNub3Rlcy5sZW5ndGggfHwgIXNub3Rlcy5sZW5ndGgpIGJyZWFrOwogICAgY29uc3QgewogICAgICBmaXhlZCwKICAgICAgbWF0Y2hlZAogICAgfSA9IGZ1enp5TWF0Y2hOb3RlcyhwYXRoLCBjbm90ZXMsIHNub3RlcywgcGl0Y2hUb2xlcmFuY2UpOwogICAgaWYgKG1hdGNoZWQpIGNvbnNvbGUuZGVidWcoImZ1enp5TWF0Y2gucGFzczoiLCBgYzoke2Nub3Rlcy5sZW5ndGh9LCBzOiR7c25vdGVzLmxlbmd0aH0sYCwgcGl0Y2hUb2xlcmFuY2UsIGAke2ZpeGVkfS8ke21hdGNoZWR9YCk7CiAgICBpZiAoZml4ZWQgPj0gbWF0Y2hlZCkgewogICAgICArK3BpdGNoVG9sZXJhbmNlOwogICAgICBpZiAocGl0Y2hUb2xlcmFuY2UgPiBwaXRjaFRvbGVyYW5jZU1heCkgYnJlYWs7CiAgICB9CiAgfQogIC8vY29uc29sZS5kZWJ1ZygiZnV6enlNYXRjaC5wYXRoOiIsIHBhdGgpOwp9OwpleHBvcnQgeyBmdXp6eU1hdGNoTm90YXRpb25zIH07"},{"version":3,"names":["notePitchDistance","n1","n2","differ","Math","abs","pitch","fuzzyMatchNotes","path","cnotes","snotes","pitchTolerance","offsetTolerance","candidates","matched","reduce","count","snote","pcan","filter","cnote","baseCsi","softIndex","sort","length","bestDistance","last","index","distance","si","fixed","Object","entries","map","ci","Number","fuzzyMatchNotations","criterion","sample","pitchToleranceMax","overlapped","Set","set","has","add","forEach","offset","i","notes","note","baseOffset","lastOffset","isFinite","some","console","debug"],"sources":["/home/camus/work/lotus/node_modules/eslint-loader/index.js??ref--14-0!/home/camus/work/lotus/inc/lilyNotation/fuzzyMatch.ts"],"sourcesContent":["\n// eslint-disable-next-line\nimport {MusicNotation} from \"@k-l-lambda/music-widgets\";\n\n\n\ninterface Note {\n\tindex: number;\n\tpitch: number;\n\tsoftIndex: number;\n\tbaseCsi?: number;\n};\n\n\nconst notePitchDistance = (n1: Note, n2: Note): number => {\n\tlet differ = Math.abs(n1.pitch - n2.pitch);\n\tif (differ > 7)\n\t\tdiffer -= 11.5;\n\n\treturn differ * 2;\n};\n\n\nconst fuzzyMatchNotes = (path: number[], cnotes: Note[], snotes: Note[], pitchTolerance: number, offsetTolerance = 2): {fixed: number, matched: number} => {\n\tconst candidates: {[key: number]: {si: number, distance: number}} = {};\n\n\tconst matched = snotes.reduce((count, snote) => {\n\t\tconst pcan = cnotes.filter(cnote => notePitchDistance(cnote, snote) <= pitchTolerance\n\t\t\t&& Math.abs(snote.baseCsi - cnote.softIndex) < offsetTolerance)\n\t\t\t.sort((n1, n2) => Math.abs(snote.baseCsi - n1.softIndex) - Math.abs(snote.baseCsi - n2.softIndex));\n\n\t\tif (pcan.length) {\n\t\t\tconst bestDistance = notePitchDistance(pcan[0], snote);\n\t\t\tconst last = candidates[pcan[0].index];\n\t\t\tif (!last || bestDistance < last.distance)\n\t\t\t\tcandidates[pcan[0].index] = {si: snote.index, distance: bestDistance};\n\n\t\t\t++count;\n\t\t}\n\n\t\treturn count;\n\t}, 0);\n\n\tconst fixed = Object.entries(candidates).map(([ci, {si}]) => {\n\t\tpath[si] = Number(ci);\n\n\t\treturn [si, Number(ci)];\n\t});\n\t//console.debug(\"fuzzyMatch.fixed:\", fixed.map(pair => pair.join()));\n\n\treturn {fixed: fixed.length, matched};\n};\n\n\nconst fuzzyMatchNotations = (path: number[], criterion: MusicNotation.NotationData, sample: MusicNotation.NotationData, {pitchToleranceMax = 4} = {}) => {\n\t// unmatch overlapped indices\n\tconst overlapped = new Set();\n\tpath.reduce((set, ci) => {\n\t\tif (ci >= 0) {\n\t\t\tif (set.has(ci))\n\t\t\t\toverlapped.add(ci);\n\t\t\telse\n\t\t\t\tset.add(ci);\n\t\t}\n\n\t\treturn set;\n\t}, new Set());\n\t//console.debug(\"overlapped:\", overlapped, [...path]);\n\tpath.forEach((ci, si) => {\n\t\tif (overlapped.has(ci))\n\t\t\tpath[si] = -1;\n\t});\n\n\t// assign base offset on sample notes\n\tlet offset = null;\n\tfor (let i = 0; i < sample.notes.length; ++i) {\n\t\tconst note = sample.notes[i];\n\t\tconst ci = path[i];\n\n\t\tif (ci < 0)\n\t\t\t(note as any).baseOffset = offset;\n\t\telse\n\t\t\toffset = note.softIndex - criterion.notes[ci].softIndex;\n\t}\n\tfor (let i = sample.notes.length - 1; i >= 0; --i) {\n\t\tconst note = sample.notes[i];\n\t\tconst ci = path[i];\n\n\t\tif (ci < 0) {\n\t\t\tconst lastOffset = (note as any).baseOffset;\n\t\t\t(note as any).baseOffset = Number.isFinite(lastOffset) ? (lastOffset + offset) / 2 : offset;\n\t\t}\n\t\telse\n\t\t\toffset = note.softIndex - criterion.notes[ci].softIndex;\n\t}\n\n\tlet pitchTolerance = 0;\n\twhile (true) {\n\t\tconst cnotes = criterion.notes.filter(note => !path.some(ci => ci === note.index)).map(note => ({index: note.index, pitch: note.pitch, softIndex: note.softIndex}));\n\t\tconst snotes = sample.notes.filter(note => path[note.index] < 0 && Number.isFinite((note as any).baseOffset))\n\t\t\t.map(note => ({index: note.index, pitch: note.pitch, softIndex: note.softIndex, baseCsi: note.softIndex - (note as any).baseOffset}));\n\n\t\t//console.debug(\"fuzzyMatch.notes:\", cnotes.map(note => note.index), snotes.map(note => note.index));\n\n\t\tif (!cnotes.length || !snotes.length)\n\t\t\tbreak;\n\n\t\tconst {fixed, matched} = fuzzyMatchNotes(path, cnotes, snotes, pitchTolerance);\n\t\tif (matched)\n\t\t\tconsole.debug(\"fuzzyMatch.pass:\", `c:${cnotes.length}, s:${snotes.length},`, pitchTolerance, `${fixed}/${matched}`);\n\n\t\tif (fixed >= matched) {\n\t\t\t++pitchTolerance;\n\t\t\tif (pitchTolerance > pitchToleranceMax)\n\t\t\t\tbreak;\n\t\t}\n\t}\n\t//console.debug(\"fuzzyMatch.path:\", path);\n};\n\n\n\nexport {\n\tfuzzyMatchNotations,\n};\n"],"mappings":"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","ignoreList":[]}]}