@danielx/civet 0.3.15 → 0.3.16

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/browser.js CHANGED
@@ -672,6 +672,8 @@ var Civet = (() => {
672
672
  InsertCloseParen,
673
673
  InsertOpenBrace,
674
674
  InsertCloseBrace,
675
+ InsertConst,
676
+ InsertReadonly,
675
677
  InsertNewline,
676
678
  InsertIndent,
677
679
  InsertSpace,
@@ -1240,21 +1242,7 @@ var Civet = (() => {
1240
1242
  return Static$0(state);
1241
1243
  }
1242
1244
  }
1243
- var FieldDefinition$0 = $TS($S(ClassElementName, $E(TypeSuffix), __, ConstAssignment, AssignmentExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
1244
- var name = $1;
1245
- var suffix = $2;
1246
- var ws = $3;
1247
- var ca = $4;
1248
- var exp = $5;
1249
- return [
1250
- { ts: true, children: ["readonly "] },
1251
- name,
1252
- suffix,
1253
- ws,
1254
- { $loc: ca.$loc, token: "=" },
1255
- exp
1256
- ];
1257
- });
1245
+ var FieldDefinition$0 = $S(InsertReadonly, ClassElementName, $E(TypeSuffix), __, ConstAssignment, AssignmentExpression);
1258
1246
  var FieldDefinition$1 = $S(ClassElementName, $E(TypeSuffix), $E(Initializer));
1259
1247
  function FieldDefinition(state) {
1260
1248
  if (state.tokenize) {
@@ -2792,21 +2780,7 @@ var Civet = (() => {
2792
2780
  }
2793
2781
  }
2794
2782
  var LexicalDeclaration$0 = $S(LetOrConst, __, LexicalBinding, $Q($S(__, $EXPECT($L0, fail, 'LexicalDeclaration ","'), __, LexicalBinding)));
2795
- var LexicalDeclaration$1 = $TS($S($C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, ConstAssignment, AssignmentExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
2796
- var bind = $1;
2797
- var suffix = $2;
2798
- var ws = $3;
2799
- var ca = $4;
2800
- var exp = $5;
2801
- return [
2802
- "const ",
2803
- bind,
2804
- suffix,
2805
- ws,
2806
- { $loc: ca.$loc, token: "=" },
2807
- exp
2808
- ];
2809
- });
2783
+ var LexicalDeclaration$1 = $S(InsertConst, $C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, ConstAssignment, AssignmentExpression);
2810
2784
  function LexicalDeclaration(state) {
2811
2785
  if (state.tokenize) {
2812
2786
  return $TOKEN("LexicalDeclaration", state, LexicalDeclaration$0(state) || LexicalDeclaration$1(state));
@@ -2815,7 +2789,7 @@ var Civet = (() => {
2815
2789
  }
2816
2790
  }
2817
2791
  var ConstAssignment$0 = $TV($EXPECT($L116, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
2818
- return { $loc, token: $1 };
2792
+ return { $loc, token: "=" };
2819
2793
  });
2820
2794
  function ConstAssignment(state) {
2821
2795
  if (state.verbose)
@@ -3609,7 +3583,7 @@ var Civet = (() => {
3609
3583
  return Type$0(state);
3610
3584
  }
3611
3585
  }
3612
- var TypeBinary$0 = $S(TypeUnary, $Q($S(__, TypeBinaryOp, TypeUnary)));
3586
+ var TypeBinary$0 = $S(TypeUnary, $Q($S(__, TypeBinaryOp, __, TypeUnary)));
3613
3587
  function TypeBinary(state) {
3614
3588
  if (state.verbose)
3615
3589
  console.log("ENTER:", "TypeBinary");
@@ -3877,6 +3851,30 @@ var Civet = (() => {
3877
3851
  return InsertCloseBrace$0(state);
3878
3852
  }
3879
3853
  }
3854
+ var InsertConst$0 = $T($EXPECT($L33, fail, 'InsertConst ""'), function(value) {
3855
+ return "const ";
3856
+ });
3857
+ function InsertConst(state) {
3858
+ if (state.verbose)
3859
+ console.log("ENTER:", "InsertConst");
3860
+ if (state.tokenize) {
3861
+ return $TOKEN("InsertConst", state, InsertConst$0(state));
3862
+ } else {
3863
+ return InsertConst$0(state);
3864
+ }
3865
+ }
3866
+ var InsertReadonly$0 = $T($EXPECT($L33, fail, 'InsertReadonly ""'), function(value) {
3867
+ return { "ts": true, "children": ["readonly "] };
3868
+ });
3869
+ function InsertReadonly(state) {
3870
+ if (state.verbose)
3871
+ console.log("ENTER:", "InsertReadonly");
3872
+ if (state.tokenize) {
3873
+ return $TOKEN("InsertReadonly", state, InsertReadonly$0(state));
3874
+ } else {
3875
+ return InsertReadonly$0(state);
3876
+ }
3877
+ }
3880
3878
  var InsertNewline$0 = $TV($EXPECT($L33, fail, 'InsertNewline ""'), function($skip, $loc, $0, $1) {
3881
3879
  return "\n";
3882
3880
  });
@@ -4275,6 +4273,7 @@ var Civet = (() => {
4275
4273
  var require_main = __commonJS({
4276
4274
  "source/main.coffee"(exports, module) {
4277
4275
  var SourceMap;
4276
+ var base64Encode;
4278
4277
  var defaultOptions;
4279
4278
  var gen;
4280
4279
  var parse;
@@ -4287,24 +4286,38 @@ var Civet = (() => {
4287
4286
  module.exports = {
4288
4287
  parse,
4289
4288
  compile: function(src, options = defaultOptions) {
4290
- var ast, code, sm;
4289
+ var ast, code, filename, sm, srcMapJSON;
4290
+ filename = options.filename || "unknown";
4291
4291
  ast = prune(parse(src, {
4292
- filename: options.filename
4292
+ filename
4293
4293
  }));
4294
- if (options.sourceMap) {
4294
+ if (options.ast) {
4295
+ return ast;
4296
+ }
4297
+ if (options.sourceMap || options.inlineMap) {
4295
4298
  sm = SourceMap(src);
4296
4299
  options.updateSourceMap = sm.updateSourceMap;
4297
4300
  code = gen(ast, options);
4298
- return {
4299
- code,
4300
- sourceMap: sm
4301
- };
4301
+ if (options.inlineMap) {
4302
+ srcMapJSON = sm.json(filename, filename.replace(/(?:\.civet$)?/, ".ts"));
4303
+ return `${code}
4304
+ //# sourceMappingURL=data:application/json;base64,${base64Encode(JSON.stringify(srcMapJSON))}
4305
+ `;
4306
+ } else {
4307
+ return {
4308
+ code,
4309
+ sourceMap: sm
4310
+ };
4311
+ }
4302
4312
  }
4303
4313
  return gen(ast, options);
4304
4314
  },
4305
4315
  generate: gen,
4306
4316
  util
4307
4317
  };
4318
+ base64Encode = function(src) {
4319
+ return Buffer.from(src).toString("base64");
4320
+ };
4308
4321
  }
4309
4322
  });
4310
4323
  return require_main();
package/dist/civet CHANGED
@@ -1,20 +1,22 @@
1
1
  #!/usr/bin/env node
2
2
  "use strict";
3
- var ast, encoding, fs, generate, input, js, output, parse, prune;
3
+ var ast, compile, encoding, fs, generate, inlineMap, input, js, output, parse, prune;
4
4
  if (process.argv.includes("--version")) {
5
5
  process.stdout.write(require("../package.json").version + "\n");
6
6
  process.exit(0);
7
7
  }
8
- ({ parse, generate } = require("./main"));
8
+ ({ parse, compile, generate } = require("./main"));
9
9
  ({ prune } = generate);
10
10
  encoding = "utf8";
11
11
  fs = require("fs");
12
12
  input = fs.readFileSync(process.stdin.fd, encoding);
13
- ast = prune(parse(input));
13
+ process.argv.includes("--ast");
14
14
  js = process.argv.includes("--js");
15
- if (process.argv.includes("--ast")) {
15
+ inlineMap = process.argv.includes("--inline-map");
16
+ if (ast) {
17
+ ast = prune(parse(input));
16
18
  process.stdout.write(JSON.stringify(ast, null, 2));
17
- return;
19
+ process.exit(0);
18
20
  }
19
- output = generate(ast, { js });
21
+ output = compile(input, { js, inlineMap });
20
22
  process.stdout.write(output);
@@ -7,7 +7,7 @@ module.exports = {
7
7
  name: 'civet',
8
8
  setup(build) {
9
9
  build.onLoad({
10
- filter: /\.civet/,
10
+ filter: /\.civet$/,
11
11
  }, function(args) {
12
12
  return readFile(args.path, 'utf8')
13
13
  .then(function(source) {
package/dist/main.js CHANGED
@@ -671,6 +671,8 @@ var require_parser = __commonJS({
671
671
  InsertCloseParen,
672
672
  InsertOpenBrace,
673
673
  InsertCloseBrace,
674
+ InsertConst,
675
+ InsertReadonly,
674
676
  InsertNewline,
675
677
  InsertIndent,
676
678
  InsertSpace,
@@ -1239,21 +1241,7 @@ var require_parser = __commonJS({
1239
1241
  return Static$0(state);
1240
1242
  }
1241
1243
  }
1242
- var FieldDefinition$0 = $TS($S(ClassElementName, $E(TypeSuffix), __, ConstAssignment, AssignmentExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
1243
- var name = $1;
1244
- var suffix = $2;
1245
- var ws = $3;
1246
- var ca = $4;
1247
- var exp = $5;
1248
- return [
1249
- { ts: true, children: ["readonly "] },
1250
- name,
1251
- suffix,
1252
- ws,
1253
- { $loc: ca.$loc, token: "=" },
1254
- exp
1255
- ];
1256
- });
1244
+ var FieldDefinition$0 = $S(InsertReadonly, ClassElementName, $E(TypeSuffix), __, ConstAssignment, AssignmentExpression);
1257
1245
  var FieldDefinition$1 = $S(ClassElementName, $E(TypeSuffix), $E(Initializer));
1258
1246
  function FieldDefinition(state) {
1259
1247
  if (state.tokenize) {
@@ -2791,21 +2779,7 @@ var require_parser = __commonJS({
2791
2779
  }
2792
2780
  }
2793
2781
  var LexicalDeclaration$0 = $S(LetOrConst, __, LexicalBinding, $Q($S(__, $EXPECT($L0, fail, 'LexicalDeclaration ","'), __, LexicalBinding)));
2794
- var LexicalDeclaration$1 = $TS($S($C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, ConstAssignment, AssignmentExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
2795
- var bind = $1;
2796
- var suffix = $2;
2797
- var ws = $3;
2798
- var ca = $4;
2799
- var exp = $5;
2800
- return [
2801
- "const ",
2802
- bind,
2803
- suffix,
2804
- ws,
2805
- { $loc: ca.$loc, token: "=" },
2806
- exp
2807
- ];
2808
- });
2782
+ var LexicalDeclaration$1 = $S(InsertConst, $C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, ConstAssignment, AssignmentExpression);
2809
2783
  function LexicalDeclaration(state) {
2810
2784
  if (state.tokenize) {
2811
2785
  return $TOKEN("LexicalDeclaration", state, LexicalDeclaration$0(state) || LexicalDeclaration$1(state));
@@ -2814,7 +2788,7 @@ var require_parser = __commonJS({
2814
2788
  }
2815
2789
  }
2816
2790
  var ConstAssignment$0 = $TV($EXPECT($L116, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
2817
- return { $loc, token: $1 };
2791
+ return { $loc, token: "=" };
2818
2792
  });
2819
2793
  function ConstAssignment(state) {
2820
2794
  if (state.verbose)
@@ -3608,7 +3582,7 @@ var require_parser = __commonJS({
3608
3582
  return Type$0(state);
3609
3583
  }
3610
3584
  }
3611
- var TypeBinary$0 = $S(TypeUnary, $Q($S(__, TypeBinaryOp, TypeUnary)));
3585
+ var TypeBinary$0 = $S(TypeUnary, $Q($S(__, TypeBinaryOp, __, TypeUnary)));
3612
3586
  function TypeBinary(state) {
3613
3587
  if (state.verbose)
3614
3588
  console.log("ENTER:", "TypeBinary");
@@ -3876,6 +3850,30 @@ var require_parser = __commonJS({
3876
3850
  return InsertCloseBrace$0(state);
3877
3851
  }
3878
3852
  }
3853
+ var InsertConst$0 = $T($EXPECT($L33, fail, 'InsertConst ""'), function(value) {
3854
+ return "const ";
3855
+ });
3856
+ function InsertConst(state) {
3857
+ if (state.verbose)
3858
+ console.log("ENTER:", "InsertConst");
3859
+ if (state.tokenize) {
3860
+ return $TOKEN("InsertConst", state, InsertConst$0(state));
3861
+ } else {
3862
+ return InsertConst$0(state);
3863
+ }
3864
+ }
3865
+ var InsertReadonly$0 = $T($EXPECT($L33, fail, 'InsertReadonly ""'), function(value) {
3866
+ return { "ts": true, "children": ["readonly "] };
3867
+ });
3868
+ function InsertReadonly(state) {
3869
+ if (state.verbose)
3870
+ console.log("ENTER:", "InsertReadonly");
3871
+ if (state.tokenize) {
3872
+ return $TOKEN("InsertReadonly", state, InsertReadonly$0(state));
3873
+ } else {
3874
+ return InsertReadonly$0(state);
3875
+ }
3876
+ }
3879
3877
  var InsertNewline$0 = $TV($EXPECT($L33, fail, 'InsertNewline ""'), function($skip, $loc, $0, $1) {
3880
3878
  return "\n";
3881
3879
  });
@@ -4272,6 +4270,7 @@ var require_util = __commonJS({
4272
4270
 
4273
4271
  // source/main.coffee
4274
4272
  var SourceMap;
4273
+ var base64Encode;
4275
4274
  var defaultOptions;
4276
4275
  var gen;
4277
4276
  var parse;
@@ -4284,21 +4283,35 @@ defaultOptions = {};
4284
4283
  module.exports = {
4285
4284
  parse,
4286
4285
  compile: function(src, options = defaultOptions) {
4287
- var ast, code, sm;
4286
+ var ast, code, filename, sm, srcMapJSON;
4287
+ filename = options.filename || "unknown";
4288
4288
  ast = prune(parse(src, {
4289
- filename: options.filename
4289
+ filename
4290
4290
  }));
4291
- if (options.sourceMap) {
4291
+ if (options.ast) {
4292
+ return ast;
4293
+ }
4294
+ if (options.sourceMap || options.inlineMap) {
4292
4295
  sm = SourceMap(src);
4293
4296
  options.updateSourceMap = sm.updateSourceMap;
4294
4297
  code = gen(ast, options);
4295
- return {
4296
- code,
4297
- sourceMap: sm
4298
- };
4298
+ if (options.inlineMap) {
4299
+ srcMapJSON = sm.json(filename, filename.replace(/(?:\.civet$)?/, ".ts"));
4300
+ return `${code}
4301
+ //# sourceMappingURL=data:application/json;base64,${base64Encode(JSON.stringify(srcMapJSON))}
4302
+ `;
4303
+ } else {
4304
+ return {
4305
+ code,
4306
+ sourceMap: sm
4307
+ };
4308
+ }
4299
4309
  }
4300
4310
  return gen(ast, options);
4301
4311
  },
4302
4312
  generate: gen,
4303
4313
  util
4304
4314
  };
4315
+ base64Encode = function(src) {
4316
+ return Buffer.from(src).toString("base64");
4317
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@danielx/civet",
3
- "version": "0.3.15",
3
+ "version": "0.3.16",
4
4
  "description": "CoffeeScript style syntax for TypeScript",
5
5
  "main": "dist/main.js",
6
6
  "exports": {