sass-embedded 1.0.0-beta.4 → 1.0.0-rc.1

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.
Files changed (150) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/dist/.gitignore +1 -0
  3. package/dist/lib/index.js +40 -11
  4. package/dist/lib/index.js.map +1 -1
  5. package/dist/lib/src/{embedded-compiler/compiler.js → async-compiler.js} +13 -13
  6. package/dist/lib/src/async-compiler.js.map +1 -0
  7. package/dist/lib/src/compile.js +187 -85
  8. package/dist/lib/src/compile.js.map +1 -1
  9. package/dist/lib/src/compiler-path.js +18 -0
  10. package/dist/lib/src/compiler-path.js.map +1 -0
  11. package/dist/lib/src/deprotofy-span.js +51 -0
  12. package/dist/lib/src/deprotofy-span.js.map +1 -0
  13. package/dist/lib/src/{embedded-protocol/dispatcher.js → dispatcher.js} +47 -41
  14. package/dist/lib/src/dispatcher.js.map +1 -0
  15. package/dist/lib/src/exception.js +20 -0
  16. package/dist/lib/src/exception.js.map +1 -0
  17. package/dist/lib/src/function-registry.js +92 -0
  18. package/dist/lib/src/function-registry.js.map +1 -0
  19. package/dist/lib/src/importer-registry.js +127 -0
  20. package/dist/lib/src/importer-registry.js.map +1 -0
  21. package/dist/lib/src/legacy/importer.js +186 -0
  22. package/dist/lib/src/legacy/importer.js.map +1 -0
  23. package/dist/lib/src/legacy/index.js +261 -0
  24. package/dist/lib/src/legacy/index.js.map +1 -0
  25. package/dist/lib/src/legacy/resolve-path.js +101 -0
  26. package/dist/lib/src/legacy/resolve-path.js.map +1 -0
  27. package/dist/lib/src/legacy/value/base.js +17 -0
  28. package/dist/lib/src/legacy/value/base.js.map +1 -0
  29. package/dist/lib/src/legacy/value/color.js +64 -0
  30. package/dist/lib/src/legacy/value/color.js.map +1 -0
  31. package/dist/lib/src/legacy/value/index.js +23 -0
  32. package/dist/lib/src/legacy/value/index.js.map +1 -0
  33. package/dist/lib/src/legacy/value/list.js +50 -0
  34. package/dist/lib/src/legacy/value/list.js.map +1 -0
  35. package/dist/lib/src/legacy/value/map.js +74 -0
  36. package/dist/lib/src/legacy/value/map.js.map +1 -0
  37. package/dist/lib/src/legacy/value/number.js +60 -0
  38. package/dist/lib/src/legacy/value/number.js.map +1 -0
  39. package/dist/lib/src/legacy/value/string.js +27 -0
  40. package/dist/lib/src/legacy/value/string.js.map +1 -0
  41. package/dist/lib/src/legacy/value/wrap.js +83 -0
  42. package/dist/lib/src/legacy/value/wrap.js.map +1 -0
  43. package/dist/lib/src/{embedded-protocol/message-transformer.js → message-transformer.js} +11 -10
  44. package/dist/lib/src/message-transformer.js.map +1 -0
  45. package/dist/lib/src/{embedded-compiler/packet-transformer.js → packet-transformer.js} +2 -1
  46. package/dist/lib/src/packet-transformer.js.map +1 -0
  47. package/dist/lib/src/protofier.js +272 -0
  48. package/dist/lib/src/protofier.js.map +1 -0
  49. package/dist/lib/src/{embedded-protocol/request-tracker.js → request-tracker.js} +1 -0
  50. package/dist/lib/src/request-tracker.js.map +1 -0
  51. package/dist/lib/src/sync-compiler.js +52 -0
  52. package/dist/lib/src/sync-compiler.js.map +1 -0
  53. package/dist/lib/src/{exception/span.js → sync-process/event.js} +2 -2
  54. package/dist/lib/src/sync-process/event.js.map +1 -0
  55. package/dist/lib/src/sync-process/index.js +122 -0
  56. package/dist/lib/src/sync-process/index.js.map +1 -0
  57. package/dist/lib/src/sync-process/sync-message-port.js +128 -0
  58. package/dist/lib/src/sync-process/sync-message-port.js.map +1 -0
  59. package/dist/lib/src/sync-process/worker.js +51 -0
  60. package/dist/lib/src/sync-process/worker.js.map +1 -0
  61. package/dist/lib/src/utils.js +96 -1
  62. package/dist/lib/src/utils.js.map +1 -1
  63. package/dist/lib/src/value/argument-list.js +31 -0
  64. package/dist/lib/src/value/argument-list.js.map +1 -0
  65. package/dist/lib/src/value/boolean.js +22 -5
  66. package/dist/lib/src/value/boolean.js.map +1 -1
  67. package/dist/lib/src/value/color.js +258 -0
  68. package/dist/lib/src/value/color.js.map +1 -0
  69. package/dist/lib/src/value/function.js +34 -0
  70. package/dist/lib/src/value/function.js.map +1 -0
  71. package/dist/lib/src/value/{value.js → index.js} +28 -14
  72. package/dist/lib/src/value/index.js.map +1 -0
  73. package/dist/lib/src/value/list.js +99 -0
  74. package/dist/lib/src/value/list.js.map +1 -0
  75. package/dist/lib/src/value/map.js +91 -0
  76. package/dist/lib/src/value/map.js.map +1 -0
  77. package/dist/lib/src/value/null.js +16 -3
  78. package/dist/lib/src/value/null.js.map +1 -1
  79. package/dist/lib/src/value/number.js +41 -46
  80. package/dist/lib/src/value/number.js.map +1 -1
  81. package/dist/lib/src/value/string.js +18 -12
  82. package/dist/lib/src/value/string.js.map +1 -1
  83. package/dist/lib/src/value/utils.js +27 -2
  84. package/dist/lib/src/value/utils.js.map +1 -1
  85. package/dist/lib/src/vendor/embedded-protocol/embedded_sass_pb.js +1395 -101
  86. package/dist/lib/src/vendor/embedded-protocol/embedded_sass_pb.js.map +1 -1
  87. package/dist/package.json +23 -20
  88. package/dist/tool/utils.js +50 -18
  89. package/dist/tool/utils.js.map +1 -1
  90. package/dist/types/compile.d.ts +152 -0
  91. package/dist/types/exception.d.ts +41 -0
  92. package/dist/types/importer.d.ts +294 -0
  93. package/dist/types/index.d.ts +80 -0
  94. package/dist/types/legacy/exception.d.ts +54 -0
  95. package/dist/types/legacy/function.d.ts +756 -0
  96. package/dist/types/legacy/importer.d.ts +168 -0
  97. package/dist/types/legacy/options.d.ts +642 -0
  98. package/dist/types/legacy/plugin_this.d.ts +73 -0
  99. package/dist/types/legacy/render.d.ts +139 -0
  100. package/dist/types/logger/index.d.ts +94 -0
  101. package/dist/types/logger/source_location.d.ts +21 -0
  102. package/dist/types/logger/source_span.d.ts +34 -0
  103. package/dist/types/options.d.ts +418 -0
  104. package/dist/types/util/promise_or.d.ts +17 -0
  105. package/dist/types/value/argument_list.d.ts +47 -0
  106. package/dist/types/value/boolean.d.ts +29 -0
  107. package/dist/types/value/color.d.ts +107 -0
  108. package/dist/types/value/function.d.ts +22 -0
  109. package/dist/types/value/index.d.ts +173 -0
  110. package/dist/types/value/list.d.ts +54 -0
  111. package/dist/types/value/map.d.ts +41 -0
  112. package/dist/types/value/number.d.ts +305 -0
  113. package/dist/types/value/string.d.ts +84 -0
  114. package/package.json +23 -20
  115. package/dist/lib/index.d.ts +0 -7
  116. package/dist/lib/src/compile.d.ts +0 -20
  117. package/dist/lib/src/embedded-compiler/compiler.d.ts +0 -19
  118. package/dist/lib/src/embedded-compiler/compiler.js.map +0 -1
  119. package/dist/lib/src/embedded-compiler/packet-transformer.d.ts +0 -34
  120. package/dist/lib/src/embedded-compiler/packet-transformer.js.map +0 -1
  121. package/dist/lib/src/embedded-protocol/dispatcher.d.ts +0 -60
  122. package/dist/lib/src/embedded-protocol/dispatcher.js.map +0 -1
  123. package/dist/lib/src/embedded-protocol/message-transformer.d.ts +0 -47
  124. package/dist/lib/src/embedded-protocol/message-transformer.js.map +0 -1
  125. package/dist/lib/src/embedded-protocol/request-tracker.d.ts +0 -20
  126. package/dist/lib/src/embedded-protocol/request-tracker.js.map +0 -1
  127. package/dist/lib/src/embedded-protocol/utils.d.ts +0 -7
  128. package/dist/lib/src/embedded-protocol/utils.js +0 -52
  129. package/dist/lib/src/embedded-protocol/utils.js.map +0 -1
  130. package/dist/lib/src/exception/exception.d.ts +0 -19
  131. package/dist/lib/src/exception/exception.js +0 -36
  132. package/dist/lib/src/exception/exception.js.map +0 -1
  133. package/dist/lib/src/exception/location.d.ts +0 -11
  134. package/dist/lib/src/exception/location.js +0 -6
  135. package/dist/lib/src/exception/location.js.map +0 -1
  136. package/dist/lib/src/exception/span.d.ts +0 -29
  137. package/dist/lib/src/exception/span.js.map +0 -1
  138. package/dist/lib/src/node-sass/render.d.ts +0 -60
  139. package/dist/lib/src/node-sass/render.js +0 -126
  140. package/dist/lib/src/node-sass/render.js.map +0 -1
  141. package/dist/lib/src/utils.d.ts +0 -12
  142. package/dist/lib/src/value/boolean.d.ts +0 -25
  143. package/dist/lib/src/value/null.d.ts +0 -12
  144. package/dist/lib/src/value/number.d.ts +0 -189
  145. package/dist/lib/src/value/string.d.ts +0 -56
  146. package/dist/lib/src/value/utils.d.ts +0 -36
  147. package/dist/lib/src/value/value.d.ts +0 -103
  148. package/dist/lib/src/value/value.js.map +0 -1
  149. package/dist/lib/src/vendor/embedded-protocol/embedded_sass_pb.d.ts +0 -1
  150. package/dist/tool/utils.d.ts +0 -32
@@ -0,0 +1,60 @@
1
+ "use strict";
2
+ // Copyright 2022 Google LLC. Use of this source code is governed by an
3
+ // MIT-style license that can be found in the LICENSE file or at
4
+ // https://opensource.org/licenses/MIT.
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.LegacyNumber = void 0;
7
+ const number_1 = require("../../value/number");
8
+ const base_1 = require("./base");
9
+ class LegacyNumber extends base_1.LegacyValueBase {
10
+ constructor(valueOrInner, unit) {
11
+ super(valueOrInner instanceof number_1.SassNumber
12
+ ? valueOrInner
13
+ : parseNumber(valueOrInner, unit));
14
+ }
15
+ getValue() {
16
+ return this.inner.value;
17
+ }
18
+ setValue(value) {
19
+ this.inner = new number_1.SassNumber(value, {
20
+ numeratorUnits: this.inner.numeratorUnits,
21
+ denominatorUnits: this.inner.denominatorUnits,
22
+ });
23
+ }
24
+ getUnit() {
25
+ return (this.inner.numeratorUnits.join('*') +
26
+ (this.inner.denominatorUnits.size === 0 ? '' : '/') +
27
+ this.inner.denominatorUnits.join('*'));
28
+ }
29
+ setUnit(unit) {
30
+ this.inner = parseNumber(this.inner.value, unit);
31
+ }
32
+ }
33
+ exports.LegacyNumber = LegacyNumber;
34
+ Object.defineProperty(LegacyNumber, 'name', { value: 'sass.types.Number' });
35
+ // Parses a `SassNumber` from `value` and `unit`, using Node Sass's unit
36
+ // format.
37
+ function parseNumber(value, unit) {
38
+ if (!unit)
39
+ return new number_1.SassNumber(value);
40
+ if (!unit.includes('*') && !unit.includes('/')) {
41
+ return new number_1.SassNumber(value, unit);
42
+ }
43
+ const invalidUnit = new Error(`Unit ${unit} is invalid`);
44
+ const operands = unit.split('/');
45
+ if (operands.length > 2)
46
+ throw invalidUnit;
47
+ const numerator = operands[0];
48
+ const denominator = operands.length === 1 ? null : operands[1];
49
+ const numeratorUnits = numerator.length === 0 ? [] : numerator.split('*');
50
+ if (numeratorUnits.some(unit => unit.length === 0))
51
+ throw invalidUnit;
52
+ const denominatorUnits = denominator === null ? [] : denominator.split('*');
53
+ if (denominatorUnits.some(unit => unit.length === 0))
54
+ throw invalidUnit;
55
+ return new number_1.SassNumber(value, {
56
+ numeratorUnits: numeratorUnits,
57
+ denominatorUnits: denominatorUnits,
58
+ });
59
+ }
60
+ //# sourceMappingURL=number.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"number.js","sourceRoot":"","sources":["../../../../../lib/src/legacy/value/number.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ // Copyright 2022 Google LLC. Use of this source code is governed by an
3
+ // MIT-style license that can be found in the LICENSE file or at
4
+ // https://opensource.org/licenses/MIT.
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.LegacyString = void 0;
7
+ const string_1 = require("../../value/string");
8
+ const base_1 = require("./base");
9
+ class LegacyString extends base_1.LegacyValueBase {
10
+ constructor(valueOrInner) {
11
+ if (valueOrInner instanceof string_1.SassString) {
12
+ super(valueOrInner);
13
+ }
14
+ else {
15
+ super(new string_1.SassString(valueOrInner, { quotes: false }));
16
+ }
17
+ }
18
+ getValue() {
19
+ return this.inner.text;
20
+ }
21
+ setValue(value) {
22
+ this.inner = new string_1.SassString(value, { quotes: false });
23
+ }
24
+ }
25
+ exports.LegacyString = LegacyString;
26
+ Object.defineProperty(LegacyString, 'name', { value: 'sass.types.String' });
27
+ //# sourceMappingURL=string.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"string.js","sourceRoot":"","sources":["../../../../../lib/src/legacy/value/string.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,gEAAgE;AAChE,uCAAuC;;;AAEvC,+CAA8C;AAC9C,iCAAuC;AAEvC,MAAa,YAAa,SAAQ,sBAA2B;IAC3D,YAAY,YAAiC;QAC3C,IAAI,YAAY,YAAY,mBAAU,EAAE;YACtC,KAAK,CAAC,YAAY,CAAC,CAAC;SACrB;aAAM;YACL,KAAK,CAAC,IAAI,mBAAU,CAAC,YAAY,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC,CAAC,CAAC;SACtD;IACH,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC;IACzB,CAAC;IAED,QAAQ,CAAC,KAAa;QACpB,IAAI,CAAC,KAAK,GAAG,IAAI,mBAAU,CAAC,KAAK,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC,CAAC;IACtD,CAAC;CACF;AAhBD,oCAgBC;AAED,MAAM,CAAC,cAAc,CAAC,YAAY,EAAE,MAAM,EAAE,EAAC,KAAK,EAAE,mBAAmB,EAAC,CAAC,CAAC"}
@@ -0,0 +1,83 @@
1
+ "use strict";
2
+ // Copyright 2022 Google LLC. Use of this source code is governed by an
3
+ // MIT-style license that can be found in the LICENSE file or at
4
+ // https://opensource.org/licenses/MIT.
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.wrapValue = exports.unwrapValue = exports.wrapFunction = void 0;
7
+ const util = require("util");
8
+ const base_1 = require("./base");
9
+ const color_1 = require("./color");
10
+ const list_1 = require("./list");
11
+ const map_1 = require("./map");
12
+ const number_1 = require("./number");
13
+ const string_1 = require("./string");
14
+ const value_1 = require("../../value");
15
+ const color_2 = require("../../value/color");
16
+ const list_2 = require("../../value/list");
17
+ const map_2 = require("../../value/map");
18
+ const number_2 = require("../../value/number");
19
+ const string_2 = require("../../value/string");
20
+ /**
21
+ * Converts a `LegacyFunction` into a `CustomFunction` so it can be passed to
22
+ * the new JS API.
23
+ */
24
+ function wrapFunction(thisArg, callback, sync) {
25
+ if (sync) {
26
+ return args => unwrapTypedValue(callback.apply(thisArg, args.map(wrapValue)));
27
+ }
28
+ else {
29
+ return args => new Promise((resolve, reject) => {
30
+ const done = (result) => {
31
+ try {
32
+ if (result instanceof Error) {
33
+ reject(result);
34
+ }
35
+ else {
36
+ resolve(unwrapTypedValue(result));
37
+ }
38
+ }
39
+ catch (error) {
40
+ reject(error);
41
+ }
42
+ };
43
+ // The cast here is necesary to work around microsoft/TypeScript#33815.
44
+ const syncResult = callback.apply(thisArg, [...args.map(wrapValue), done]);
45
+ if (syncResult !== undefined)
46
+ resolve(unwrapTypedValue(syncResult));
47
+ });
48
+ }
49
+ }
50
+ exports.wrapFunction = wrapFunction;
51
+ // Like `unwrapValue()`, but returns a `types.Value` type.
52
+ function unwrapTypedValue(value) {
53
+ return unwrapValue(value);
54
+ }
55
+ /** Converts a value returned by a `LegacyFunction` into a `Value`. */
56
+ function unwrapValue(value) {
57
+ if (value instanceof Error)
58
+ throw value;
59
+ if (value instanceof value_1.Value)
60
+ return value;
61
+ if (value instanceof base_1.LegacyValueBase)
62
+ return value.inner;
63
+ throw new Error(`Expected legacy Sass value, got ${util.inspect(value)}.`);
64
+ }
65
+ exports.unwrapValue = unwrapValue;
66
+ /** Converts a `Value` into a `LegacyValue`. */
67
+ function wrapValue(value) {
68
+ if (value instanceof color_2.SassColor)
69
+ return new color_1.LegacyColor(value);
70
+ if (value instanceof list_2.SassList)
71
+ return new list_1.LegacyList(value);
72
+ if (value instanceof map_2.SassMap)
73
+ return new map_1.LegacyMap(value);
74
+ if (value instanceof number_2.SassNumber)
75
+ return new number_1.LegacyNumber(value);
76
+ if (value instanceof string_2.SassString)
77
+ return new string_1.LegacyString(value);
78
+ if (value instanceof value_1.Value)
79
+ return value;
80
+ throw new Error(`Expected Sass value, got ${util.inspect(value)}.`);
81
+ }
82
+ exports.wrapValue = wrapValue;
83
+ //# sourceMappingURL=wrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wrap.js","sourceRoot":"","sources":["../../../../../lib/src/legacy/value/wrap.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,gEAAgE;AAChE,uCAAuC;;;AAEvC,6BAA6B;AAE7B,iCAAuC;AACvC,mCAAoC;AACpC,iCAAkC;AAClC,+BAAgC;AAChC,qCAAsC;AACtC,qCAAsC;AAEtC,uCAAkC;AAClC,6CAA4C;AAC5C,2CAA0C;AAC1C,yCAAwC;AACxC,+CAA8C;AAC9C,+CAA8C;AAS9C;;;GAGG;AACH,SAAgB,YAAY,CAC1B,OAAyB,EACzB,QAA8B,EAC9B,IAAuB;IAEvB,IAAI,IAAI,EAAE;QACR,OAAO,IAAI,CAAC,EAAE,CACZ,gBAAgB,CACb,QAAmC,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CACzE,CAAC;KACL;SAAM;QACL,OAAO,IAAI,CAAC,EAAE,CACZ,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YAC9B,MAAM,IAAI,GAAG,CAAC,MAAe,EAAE,EAAE;gBAC/B,IAAI;oBACF,IAAI,MAAM,YAAY,KAAK,EAAE;wBAC3B,MAAM,CAAC,MAAM,CAAC,CAAC;qBAChB;yBAAM;wBACL,OAAO,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;qBACnC;iBACF;gBAAC,OAAO,KAAc,EAAE;oBACvB,MAAM,CAAC,KAAK,CAAC,CAAC;iBACf;YACH,CAAC,CAAC;YAEF,uEAAuE;YACvE,MAAM,UAAU,GAAI,QAA4C,CAAC,KAAK,CACpE,OAAO,EACP,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,EAAE,IAAI,CAAC,CAC/B,CAAC;YAEF,IAAI,UAAU,KAAK,SAAS;gBAAE,OAAO,CAAC,gBAAgB,CAAC,UAAU,CAAC,CAAC,CAAC;QACtE,CAAC,CAAiC,CAAC;KACtC;AACH,CAAC;AAlCD,oCAkCC;AAED,0DAA0D;AAC1D,SAAS,gBAAgB,CAAC,KAAc;IACtC,OAAO,WAAW,CAAC,KAAK,CAAgB,CAAC;AAC3C,CAAC;AAED,sEAAsE;AACtE,SAAgB,WAAW,CAAC,KAAc;IACxC,IAAI,KAAK,YAAY,KAAK;QAAE,MAAM,KAAK,CAAC;IACxC,IAAI,KAAK,YAAY,aAAK;QAAE,OAAO,KAAK,CAAC;IACzC,IAAI,KAAK,YAAY,sBAAe;QAAE,OAAO,KAAK,CAAC,KAAK,CAAC;IACzD,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAC7E,CAAC;AALD,kCAKC;AAED,+CAA+C;AAC/C,SAAgB,SAAS,CAAC,KAA0B;IAClD,IAAI,KAAK,YAAY,iBAAS;QAAE,OAAO,IAAI,mBAAW,CAAC,KAAK,CAAC,CAAC;IAC9D,IAAI,KAAK,YAAY,eAAQ;QAAE,OAAO,IAAI,iBAAU,CAAC,KAAK,CAAC,CAAC;IAC5D,IAAI,KAAK,YAAY,aAAO;QAAE,OAAO,IAAI,eAAS,CAAC,KAAK,CAAC,CAAC;IAC1D,IAAI,KAAK,YAAY,mBAAU;QAAE,OAAO,IAAI,qBAAY,CAAC,KAAK,CAAC,CAAC;IAChE,IAAI,KAAK,YAAY,mBAAU;QAAE,OAAO,IAAI,qBAAY,CAAC,KAAK,CAAC,CAAC;IAChE,IAAI,KAAK,YAAY,aAAK;QAAE,OAAO,KAAK,CAAC;IACzC,MAAM,IAAI,KAAK,CAAC,4BAA4B,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AACtE,CAAC;AARD,8BAQC"}
@@ -3,10 +3,11 @@
3
3
  // MIT-style license that can be found in the LICENSE file or at
4
4
  // https://opensource.org/licenses/MIT.
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.MessageTransformer = void 0;
6
7
  const rxjs_1 = require("rxjs");
7
8
  const operators_1 = require("rxjs/operators");
8
- const utils_1 = require("../utils");
9
- const embedded_sass_pb_1 = require("../vendor/embedded-protocol/embedded_sass_pb");
9
+ const utils_1 = require("./utils");
10
+ const embedded_sass_pb_1 = require("./vendor/embedded-protocol/embedded_sass_pb");
10
11
  /**
11
12
  * Encodes InboundTypedMessages into protocol buffers and decodes protocol
12
13
  * buffers into OutboundTypedMessages. Any Embedded Protocol violations that can
@@ -31,7 +32,7 @@ class MessageTransformer {
31
32
  */
32
33
  this.outboundMessages$ = this.outboundMessagesInternal$.pipe();
33
34
  this.outboundProtobufs$
34
- .pipe(operators_1.map(decode))
35
+ .pipe((0, operators_1.map)(decode))
35
36
  .subscribe(this.outboundMessagesInternal$);
36
37
  }
37
38
  /**
@@ -57,7 +58,7 @@ function decode(buffer) {
57
58
  message = embedded_sass_pb_1.OutboundMessage.deserializeBinary(buffer);
58
59
  }
59
60
  catch (error) {
60
- throw utils_1.compilerError('Invalid buffer');
61
+ throw (0, utils_1.compilerError)('Invalid buffer');
61
62
  }
62
63
  let payload;
63
64
  const type = message.getMessageCase();
@@ -68,7 +69,7 @@ function decode(buffer) {
68
69
  case embedded_sass_pb_1.OutboundMessage.MessageCase.COMPILE_RESPONSE:
69
70
  if (((_a = message.getCompileResponse()) === null || _a === void 0 ? void 0 : _a.getResultCase()) ===
70
71
  embedded_sass_pb_1.OutboundMessage.CompileResponse.ResultCase.RESULT_NOT_SET) {
71
- throw utils_1.compilerError('OutboundMessage.CompileResponse.result is not set');
72
+ throw (0, utils_1.compilerError)('OutboundMessage.CompileResponse.result is not set');
72
73
  }
73
74
  payload = message.getCompileResponse();
74
75
  break;
@@ -84,19 +85,19 @@ function decode(buffer) {
84
85
  case embedded_sass_pb_1.OutboundMessage.MessageCase.FUNCTION_CALL_REQUEST:
85
86
  if (((_b = message.getFunctionCallRequest()) === null || _b === void 0 ? void 0 : _b.getIdentifierCase()) ===
86
87
  embedded_sass_pb_1.OutboundMessage.FunctionCallRequest.IdentifierCase.IDENTIFIER_NOT_SET) {
87
- throw utils_1.compilerError('OutboundMessage.FunctionCallRequest.identifier is not set');
88
+ throw (0, utils_1.compilerError)('OutboundMessage.FunctionCallRequest.identifier is not set');
88
89
  }
89
90
  payload = message.getFunctionCallRequest();
90
91
  break;
91
92
  case embedded_sass_pb_1.OutboundMessage.MessageCase.ERROR:
92
- throw utils_1.hostError(`${(_c = message.getError()) === null || _c === void 0 ? void 0 : _c.getMessage()}`);
93
+ throw (0, utils_1.hostError)(`${(_c = message.getError()) === null || _c === void 0 ? void 0 : _c.getMessage()}`);
93
94
  case embedded_sass_pb_1.OutboundMessage.MessageCase.MESSAGE_NOT_SET:
94
- throw utils_1.compilerError('OutboundMessage.message is not set');
95
+ throw (0, utils_1.compilerError)('OutboundMessage.message is not set');
95
96
  default:
96
- throw utils_1.compilerError(`Unknown message type ${message.toString()}`);
97
+ throw (0, utils_1.compilerError)(`Unknown message type ${message.toString()}`);
97
98
  }
98
99
  if (!payload)
99
- throw utils_1.compilerError('OutboundMessage missing payload');
100
+ throw (0, utils_1.compilerError)('OutboundMessage missing payload');
100
101
  return {
101
102
  payload,
102
103
  type,
@@ -0,0 +1 @@
1
+ {"version":3,"file":"message-transformer.js","sourceRoot":"","sources":["../../../lib/src/message-transformer.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@
3
3
  // MIT-style license that can be found in the LICENSE file or at
4
4
  // https://opensource.org/licenses/MIT.
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.PacketTransformer = void 0;
6
7
  const rxjs_1 = require("rxjs");
7
8
  const operators_1 = require("rxjs/operators");
8
9
  const BufferBuilder = require("buffer-builder");
@@ -35,7 +36,7 @@ class PacketTransformer {
35
36
  */
36
37
  this.outboundProtobufs$ = this.outboundProtobufsInternal$.pipe();
37
38
  this.outboundBuffers$
38
- .pipe(operators_1.mergeMap(buffer => this.decode(buffer)))
39
+ .pipe((0, operators_1.mergeMap)(buffer => this.decode(buffer)))
39
40
  .subscribe(this.outboundProtobufsInternal$);
40
41
  }
41
42
  /**
@@ -0,0 +1 @@
1
+ {"version":3,"file":"packet-transformer.js","sourceRoot":"","sources":["../../../lib/src/packet-transformer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,272 @@
1
+ "use strict";
2
+ // Copyright 2021 Google Inc. Use of this source code is governed by an
3
+ // MIT-style license that can be found in the LICENSE file or at
4
+ // https://opensource.org/licenses/MIT.
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.Protofier = void 0;
7
+ const immutable_1 = require("immutable");
8
+ const proto = require("./vendor/embedded-protocol/embedded_sass_pb");
9
+ const utils = require("./utils");
10
+ const argument_list_1 = require("./value/argument-list");
11
+ const color_1 = require("./value/color");
12
+ const function_1 = require("./value/function");
13
+ const list_1 = require("./value/list");
14
+ const map_1 = require("./value/map");
15
+ const number_1 = require("./value/number");
16
+ const string_1 = require("./value/string");
17
+ const null_1 = require("./value/null");
18
+ const boolean_1 = require("./value/boolean");
19
+ /**
20
+ * A class that converts [Value] objects into protobufs.
21
+ *
22
+ * A given [Protofier] instance is valid only within the scope of a single
23
+ * custom function call.
24
+ */
25
+ class Protofier {
26
+ constructor(
27
+ /**
28
+ * The registry of custom functions that can be invoked by the compiler.
29
+ * This is used to register first-class functions so that the compiler may
30
+ * invoke them.
31
+ */
32
+ functions) {
33
+ this.functions = functions;
34
+ /** All the argument lists returned by `deprotofy()`. */
35
+ this.argumentLists = [];
36
+ }
37
+ /**
38
+ * Returns IDs of all argument lists passed to `deprotofy()` whose keywords
39
+ * have been accessed.
40
+ */
41
+ get accessedArgumentLists() {
42
+ return this.argumentLists
43
+ .filter(list => list.keywordsAccessed)
44
+ .map(list => list.id);
45
+ }
46
+ /** Converts `value` to its protocol buffer representation. */
47
+ protofy(value) {
48
+ const result = new proto.Value();
49
+ if (value instanceof string_1.SassString) {
50
+ const string = new proto.Value.String();
51
+ string.setText(value.text);
52
+ string.setQuoted(value.hasQuotes);
53
+ result.setString(string);
54
+ }
55
+ else if (value instanceof number_1.SassNumber) {
56
+ result.setNumber(this.protofyNumber(value));
57
+ }
58
+ else if (value instanceof color_1.SassColor) {
59
+ if (value.hasCalculatedHsl) {
60
+ const color = new proto.Value.HslColor();
61
+ color.setHue(value.hue);
62
+ color.setSaturation(value.saturation);
63
+ color.setLightness(value.lightness);
64
+ color.setAlpha(value.alpha);
65
+ result.setHslColor(color);
66
+ }
67
+ else {
68
+ const color = new proto.Value.RgbColor();
69
+ color.setRed(value.red);
70
+ color.setGreen(value.green);
71
+ color.setBlue(value.blue);
72
+ color.setAlpha(value.alpha);
73
+ result.setRgbColor(color);
74
+ }
75
+ }
76
+ else if (value instanceof list_1.SassList) {
77
+ const list = new proto.Value.List();
78
+ list.setSeparator(this.protofySeparator(value.separator));
79
+ list.setHasBrackets(value.hasBrackets);
80
+ for (const element of value.asList) {
81
+ list.addContents(this.protofy(element));
82
+ }
83
+ result.setList(list);
84
+ }
85
+ else if (value instanceof argument_list_1.SassArgumentList) {
86
+ const list = new proto.Value.ArgumentList();
87
+ list.setId(value.id);
88
+ list.setSeparator(this.protofySeparator(value.separator));
89
+ for (const element of value.asList) {
90
+ list.addContents(this.protofy(element));
91
+ }
92
+ const keywords = list.getKeywordsMap();
93
+ for (const [key, mapValue] of value.keywordsInternal) {
94
+ keywords.set(key, this.protofy(mapValue));
95
+ }
96
+ result.setArgumentList(list);
97
+ }
98
+ else if (value instanceof map_1.SassMap) {
99
+ const map = new proto.Value.Map();
100
+ for (const [key, mapValue] of value.contents) {
101
+ const entry = new proto.Value.Map.Entry();
102
+ entry.setKey(this.protofy(key));
103
+ entry.setValue(this.protofy(mapValue));
104
+ map.addEntries(entry);
105
+ }
106
+ result.setMap(map);
107
+ }
108
+ else if (value instanceof function_1.SassFunction) {
109
+ if (value.id !== undefined) {
110
+ const fn = new proto.Value.CompilerFunction();
111
+ fn.setId(value.id);
112
+ result.setCompilerFunction(fn);
113
+ }
114
+ else {
115
+ const fn = new proto.Value.HostFunction();
116
+ fn.setId(this.functions.register(value.callback));
117
+ fn.setSignature(value.signature);
118
+ result.setHostFunction(fn);
119
+ }
120
+ }
121
+ else if (value === boolean_1.sassTrue) {
122
+ result.setSingleton(proto.SingletonValue.TRUE);
123
+ }
124
+ else if (value === boolean_1.sassFalse) {
125
+ result.setSingleton(proto.SingletonValue.FALSE);
126
+ }
127
+ else if (value === null_1.sassNull) {
128
+ result.setSingleton(proto.SingletonValue.NULL);
129
+ }
130
+ else {
131
+ throw utils.compilerError(`Unknown Value ${value}`);
132
+ }
133
+ return result;
134
+ }
135
+ /** Converts `number` to its protocol buffer representation. */
136
+ protofyNumber(number) {
137
+ const value = new proto.Value.Number();
138
+ value.setValue(number.value);
139
+ for (const unit of number.numeratorUnits) {
140
+ value.addNumerators(unit);
141
+ }
142
+ for (const unit of number.denominatorUnits) {
143
+ value.addDenominators(unit);
144
+ }
145
+ return value;
146
+ }
147
+ /** Converts `separator` to its protocol buffer representation. */
148
+ protofySeparator(separator) {
149
+ switch (separator) {
150
+ case ',':
151
+ return proto.ListSeparator.COMMA;
152
+ case ' ':
153
+ return proto.ListSeparator.SPACE;
154
+ case '/':
155
+ return proto.ListSeparator.SLASH;
156
+ case null:
157
+ return proto.ListSeparator.UNDECIDED;
158
+ default:
159
+ throw utils.compilerError(`Unknown ListSeparator ${separator}`);
160
+ }
161
+ }
162
+ /** Converts `value` to its JS representation. */
163
+ deprotofy(value) {
164
+ switch (value.getValueCase()) {
165
+ case proto.Value.ValueCase.STRING: {
166
+ const string = value.getString();
167
+ return string.getText().length === 0
168
+ ? string_1.SassString.empty({ quotes: string.getQuoted() })
169
+ : new string_1.SassString(string.getText(), { quotes: string.getQuoted() });
170
+ }
171
+ case proto.Value.ValueCase.NUMBER:
172
+ return this.deprotofyNumber(value.getNumber());
173
+ case proto.Value.ValueCase.RGB_COLOR: {
174
+ const color = value.getRgbColor();
175
+ return new color_1.SassColor({
176
+ red: color.getRed(),
177
+ green: color.getGreen(),
178
+ blue: color.getBlue(),
179
+ alpha: color.getAlpha(),
180
+ });
181
+ }
182
+ case proto.Value.ValueCase.HSL_COLOR: {
183
+ const color = value.getHslColor();
184
+ return new color_1.SassColor({
185
+ hue: color.getHue(),
186
+ saturation: color.getSaturation(),
187
+ lightness: color.getLightness(),
188
+ alpha: color.getAlpha(),
189
+ });
190
+ }
191
+ case proto.Value.ValueCase.LIST: {
192
+ const list = value.getList();
193
+ const separator = this.deprotofySeparator(list.getSeparator());
194
+ const contents = list.getContentsList();
195
+ if (separator === null && contents.length > 1) {
196
+ throw utils.compilerError(`Value.List ${list} can't have an undecided separator because it ` +
197
+ `has ${contents.length} elements`);
198
+ }
199
+ return new list_1.SassList(contents.map(element => this.deprotofy(element)), { separator, brackets: list.getHasBrackets() });
200
+ }
201
+ case proto.Value.ValueCase.ARGUMENT_LIST: {
202
+ const list = value.getArgumentList();
203
+ const separator = this.deprotofySeparator(list.getSeparator());
204
+ const contents = list.getContentsList();
205
+ if (separator === null && contents.length > 1) {
206
+ throw utils.compilerError(`Value.List ${list} can't have an undecided separator because it ` +
207
+ `has ${contents.length} elements`);
208
+ }
209
+ const result = new argument_list_1.SassArgumentList(contents.map(element => this.deprotofy(element)), (0, immutable_1.OrderedMap)([...list.getKeywordsMap().entries()].map(([key, value]) => [
210
+ key,
211
+ this.deprotofy(value),
212
+ ])), separator, list.getId());
213
+ this.argumentLists.push(result);
214
+ return result;
215
+ }
216
+ case proto.Value.ValueCase.MAP:
217
+ return new map_1.SassMap((0, immutable_1.OrderedMap)(value
218
+ .getMap()
219
+ .getEntriesList()
220
+ .map(entry => {
221
+ const key = entry.getKey();
222
+ if (!key)
223
+ throw utils.mandatoryError('Value.Map.Entry.key');
224
+ const value = entry.getValue();
225
+ if (!value)
226
+ throw utils.mandatoryError('Value.Map.Entry.value');
227
+ return [this.deprotofy(key), this.deprotofy(value)];
228
+ })));
229
+ case proto.Value.ValueCase.COMPILER_FUNCTION:
230
+ return new function_1.SassFunction(value.getCompilerFunction().getId());
231
+ case proto.Value.ValueCase.HOST_FUNCTION:
232
+ throw utils.compilerError('The compiler may not send Value.host_function.');
233
+ case proto.Value.ValueCase.SINGLETON:
234
+ switch (value.getSingleton()) {
235
+ case proto.SingletonValue.TRUE:
236
+ return boolean_1.sassTrue;
237
+ case proto.SingletonValue.FALSE:
238
+ return boolean_1.sassFalse;
239
+ case proto.SingletonValue.NULL:
240
+ return null_1.sassNull;
241
+ default:
242
+ throw utils.compilerError(`Unknown Value.singleton ${value.getSingleton()}`);
243
+ }
244
+ default:
245
+ throw utils.mandatoryError('Value.value');
246
+ }
247
+ }
248
+ /** Converts `number` to its JS representation. */
249
+ deprotofyNumber(number) {
250
+ return new number_1.SassNumber(number.getValue(), {
251
+ numeratorUnits: number.getNumeratorsList(),
252
+ denominatorUnits: number.getDenominatorsList(),
253
+ });
254
+ }
255
+ /** Converts `separator` to its JS representation. */
256
+ deprotofySeparator(separator) {
257
+ switch (separator) {
258
+ case proto.ListSeparator.COMMA:
259
+ return ',';
260
+ case proto.ListSeparator.SPACE:
261
+ return ' ';
262
+ case proto.ListSeparator.SLASH:
263
+ return '/';
264
+ case proto.ListSeparator.UNDECIDED:
265
+ return null;
266
+ default:
267
+ throw utils.compilerError(`Unknown separator ${separator}`);
268
+ }
269
+ }
270
+ }
271
+ exports.Protofier = Protofier;
272
+ //# sourceMappingURL=protofier.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protofier.js","sourceRoot":"","sources":["../../../lib/src/protofier.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@
3
3
  // MIT-style license that can be found in the LICENSE file or at
4
4
  // https://opensource.org/licenses/MIT.
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.RequestTracker = void 0;
6
7
  /**
7
8
  * Manages pending inbound and outbound requests. Ensures that requests and
8
9
  * responses interact correctly and obey the Embedded Protocol.
@@ -0,0 +1 @@
1
+ {"version":3,"file":"request-tracker.js","sourceRoot":"","sources":["../../../lib/src/request-tracker.ts"],"names":[],"mappings":";AAAA,uEAAuE;AACvE,gEAAgE;AAChE,uCAAuC;;;AAIvC;;;GAGG;AACH,MAAa,cAAc;IAA3B;QACE,4EAA4E;QAC5E,8CAA8C;QAC7B,aAAQ,GAErB,EAAE,CAAC;IA4CT,CAAC;IA1CC,qCAAqC;IACrC,IAAI,MAAM;QACR,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE;gBAC/D,OAAO,CAAC,CAAC;aACV;SACF;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACH,GAAG,CACD,EAAU,EACV,oBAAgE;QAEhE,IAAI,EAAE,GAAG,CAAC,EAAE;YACV,MAAM,KAAK,CAAC,sBAAsB,EAAE,GAAG,CAAC,CAAC;SAC1C;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,EAAE;YAC5B,MAAM,KAAK,CACT,cAAc,EAAE,6CAA6C,CAC9D,CAAC;SACH;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,oBAAoB,CAAC;IAC3C,CAAC;IAED;;;OAGG;IACH,OAAO,CAAC,EAAU,EAAE,IAAgD;QAClE,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE;YACjE,MAAM,KAAK,CAAC,eAAe,EAAE,uCAAuC,CAAC,CAAC;SACvE;aAAM,IAAI,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,IAAI,EAAE;YACrC,MAAM,KAAK,CACT,oBAAoB,EAAE,oDAAoD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,iBAAiB,IAAI,GAAG,CACpH,CAAC;SACH;QACD,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IAC3B,CAAC;CACF;AAjDD,wCAiDC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ // Copyright 2021 Google LLC. Use of this source code is governed by an
3
+ // MIT-style license that can be found in the LICENSE file or at
4
+ // https://opensource.org/licenses/MIT.
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.SyncEmbeddedCompiler = void 0;
7
+ const rxjs_1 = require("rxjs");
8
+ const sync_process_1 = require("./sync-process");
9
+ const compiler_path_1 = require("./compiler-path");
10
+ /**
11
+ * A synchronous wrapper for the embedded Sass compiler that exposes its stdio
12
+ * streams as Observables.
13
+ */
14
+ class SyncEmbeddedCompiler {
15
+ constructor() {
16
+ /** The underlying process that's being wrapped. */
17
+ this.process = new sync_process_1.SyncProcess(compiler_path_1.compilerPath, { windowsHide: true });
18
+ /** The buffers emitted by the child process's stdout. */
19
+ this.stdout$ = new rxjs_1.Subject();
20
+ /** The buffers emitted by the child process's stderr. */
21
+ this.stderr$ = new rxjs_1.Subject();
22
+ }
23
+ /** Writes `buffer` to the child process's stdin. */
24
+ writeStdin(buffer) {
25
+ this.process.stdin.write(buffer);
26
+ }
27
+ yield() {
28
+ const event = this.process.yield();
29
+ switch (event.type) {
30
+ case 'stdout':
31
+ this.stdout$.next(event.data);
32
+ return true;
33
+ case 'stderr':
34
+ this.stderr$.next(event.data);
35
+ return true;
36
+ case 'exit':
37
+ return false;
38
+ }
39
+ }
40
+ /** Blocks until the underlying process exits. */
41
+ yieldUntilExit() {
42
+ while (this.yield()) {
43
+ // Any events will be handled by `this.yield()`.
44
+ }
45
+ }
46
+ /** Kills the child process, cleaning up all associated Observables. */
47
+ close() {
48
+ this.process.stdin.end();
49
+ }
50
+ }
51
+ exports.SyncEmbeddedCompiler = SyncEmbeddedCompiler;
52
+ //# sourceMappingURL=sync-compiler.js.map