Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Offset Line #17

Open
F1LT3R opened this issue May 13, 2015 · 1 comment
Open

Offset Line #17

F1LT3R opened this issue May 13, 2015 · 1 comment

Comments

@F1LT3R
Copy link

F1LT3R commented May 13, 2015

Hi @thlorenz I am wondering about your use of offset line.

I've taken your code and tried to add a third file to the map:

var convert = require('convert-source-map');
var combine = require('combine-source-map');

var foo = {
  version        :  3,
  file           :  'foo.js',
  sourceRoot     :  '',
  sources        :  [ 'foo.coffee' ],
  names          :  [],
  mappings       :  ';AAAA;CAAA;CAAA,CAAA,CAAA,IAAO,GAAK;CAAZ',
  sourcesContent :  [ 'console.log(require \'./bar.js\')\n' ]
};

var bar = {
  version        :  3,
  file           :  'bar.js',
  sourceRoot     :  '',
  sources        :  [ 'bar.coffee' ],
  names          :  [],
  mappings       :  ';AAAA;CAAA;CAAA,CAAA,CAAA,IAAO,GAAK;CAAZ',
  sourcesContent :  [ 'console.log(alert \'alerts suck\')\n' ]
};


var bar3 = {
  version        :  3,
  file           :  'bar3.js',
  sourceRoot     :  '',
  sources        :  [ 'bar3.coffee' ],
  names          :  [],
  mappings       :  ';AAAA;CAAA;CAAA,CAAA,CAAA,IAAO,GAAK;CAAZ',
  sourcesContent :  [ 'console.log(alert \'alerts suck3\')\n' ]
};


var fooComment = convert.fromObject(foo).toComment();
var barComment = convert.fromObject(bar).toComment();
var bar3Comment = convert.fromObject(bar3).toComment();

var fooFile = {
    source: '(function() {\n\n  console.log(require(\'./bar.js\'));\n\n}).call(this);\n' + '\n' + fooComment
  , sourceFile: 'foo.js'
};
var barFile = {
    source: '(function() {\n\n  console.log(alert(\'alerts suck\'));\n\n}).call(this);\n' + '\n' + barComment
  , sourceFile: 'bar.js'
};
var barFile3 = {
    source: '(function() {\n\n  console.log(alert(\'alerts suck 3\'));\n\n}).call(this);\n' + '\n' + bar3Comment
  , sourceFile: 'bar3.js'
};

var offset = { line: 2 };
var base64 = combine
  .create('bundle.js')
  .addFile(fooFile, offset)
  .addFile(barFile, { line: offset.line + 8 })
  .addFile(barFile3, { line: offset.line + 8 })
  .base64();

var sm = convert.fromBase64(base64).toObject();
console.log('Combined source maps:\n', sm);
console.log('\nMappings:\n', sm.mappings);

This seems to work fine, but what I would like to check with you... is if .addFile(barFile3, { line: offset.line + 8 }) will work for adding the third file (all all subsequent files)?

@treshugart
Copy link

I also don't understand the significance of the lines in the example. What does 2 mean? What does 8 mean? I've tried to make educated guesses but no number I guess at seems to give me the correct line in my source maps.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants