@matter/tools 0.12.2-alpha.0-20250201-eb5d40a2f → 0.12.3-alpha.0-20250203-34ba45cae

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 (225) hide show
  1. package/dist/cjs/ansi-text/chars.d.ts +11 -0
  2. package/dist/cjs/ansi-text/chars.d.ts.map +1 -0
  3. package/dist/cjs/ansi-text/chars.js +57 -0
  4. package/dist/cjs/ansi-text/chars.js.map +6 -0
  5. package/dist/cjs/ansi-text/consumer.d.ts +45 -0
  6. package/dist/cjs/ansi-text/consumer.d.ts.map +1 -0
  7. package/dist/cjs/ansi-text/consumer.js +22 -0
  8. package/dist/cjs/ansi-text/consumer.js.map +6 -0
  9. package/dist/cjs/ansi-text/contiguous-output-segment.d.ts +31 -0
  10. package/dist/cjs/ansi-text/contiguous-output-segment.d.ts.map +1 -0
  11. package/dist/cjs/ansi-text/contiguous-output-segment.js +156 -0
  12. package/dist/cjs/ansi-text/contiguous-output-segment.js.map +6 -0
  13. package/dist/cjs/ansi-text/index.d.ts +12 -0
  14. package/dist/cjs/ansi-text/index.d.ts.map +1 -0
  15. package/dist/cjs/ansi-text/index.js +29 -0
  16. package/dist/cjs/ansi-text/index.js.map +6 -0
  17. package/dist/cjs/ansi-text/printer.d.ts +24 -0
  18. package/dist/cjs/ansi-text/printer.d.ts.map +1 -0
  19. package/dist/cjs/ansi-text/printer.js +81 -0
  20. package/dist/cjs/ansi-text/printer.js.map +6 -0
  21. package/dist/cjs/ansi-text/producer.d.ts +17 -0
  22. package/dist/cjs/ansi-text/producer.d.ts.map +1 -0
  23. package/dist/cjs/ansi-text/producer.js +45 -0
  24. package/dist/cjs/ansi-text/producer.js.map +6 -0
  25. package/dist/cjs/ansi-text/screen.d.ts +13 -0
  26. package/dist/cjs/ansi-text/screen.d.ts.map +1 -0
  27. package/dist/cjs/ansi-text/screen.js +38 -0
  28. package/dist/cjs/ansi-text/screen.js.map +6 -0
  29. package/dist/cjs/ansi-text/sgr.d.ts +100 -0
  30. package/dist/cjs/ansi-text/sgr.d.ts.map +1 -0
  31. package/dist/cjs/ansi-text/sgr.js +140 -0
  32. package/dist/cjs/ansi-text/sgr.js.map +6 -0
  33. package/dist/cjs/ansi-text/std.d.ts +17 -0
  34. package/dist/cjs/ansi-text/std.d.ts.map +1 -0
  35. package/dist/cjs/ansi-text/std.js +43 -0
  36. package/dist/cjs/ansi-text/std.js.map +6 -0
  37. package/dist/cjs/ansi-text/style.d.ts +88 -0
  38. package/dist/cjs/ansi-text/style.d.ts.map +1 -0
  39. package/dist/cjs/ansi-text/style.js +257 -0
  40. package/dist/cjs/ansi-text/style.js.map +6 -0
  41. package/dist/cjs/ansi-text/text-builder.d.ts +78 -0
  42. package/dist/cjs/ansi-text/text-builder.d.ts.map +1 -0
  43. package/dist/cjs/ansi-text/text-builder.js +164 -0
  44. package/dist/cjs/ansi-text/text-builder.js.map +6 -0
  45. package/dist/cjs/ansi-text/text-writer.d.ts +30 -0
  46. package/dist/cjs/ansi-text/text-writer.d.ts.map +1 -0
  47. package/dist/cjs/ansi-text/text-writer.js +317 -0
  48. package/dist/cjs/ansi-text/text-writer.js.map +6 -0
  49. package/dist/cjs/ansi-text/token.d.ts +61 -0
  50. package/dist/cjs/ansi-text/token.d.ts.map +1 -0
  51. package/dist/cjs/ansi-text/token.js +22 -0
  52. package/dist/cjs/ansi-text/token.js.map +6 -0
  53. package/dist/cjs/ansi-text/tokenize.d.ts +11 -0
  54. package/dist/cjs/ansi-text/tokenize.d.ts.map +1 -0
  55. package/dist/cjs/ansi-text/tokenize.js +190 -0
  56. package/dist/cjs/ansi-text/tokenize.js.map +6 -0
  57. package/dist/cjs/ansi-text/truncator.d.ts +20 -0
  58. package/dist/cjs/ansi-text/truncator.d.ts.map +1 -0
  59. package/dist/cjs/ansi-text/truncator.js +72 -0
  60. package/dist/cjs/ansi-text/truncator.js.map +6 -0
  61. package/dist/cjs/ansi-text/visible-width-of.d.ts +10 -0
  62. package/dist/cjs/ansi-text/visible-width-of.d.ts.map +1 -0
  63. package/dist/cjs/ansi-text/visible-width-of.js +55 -0
  64. package/dist/cjs/ansi-text/visible-width-of.js.map +6 -0
  65. package/dist/cjs/ansi-text/wrapper.d.ts +34 -0
  66. package/dist/cjs/ansi-text/wrapper.d.ts.map +1 -0
  67. package/dist/cjs/ansi-text/wrapper.js +208 -0
  68. package/dist/cjs/ansi-text/wrapper.js.map +6 -0
  69. package/dist/cjs/building/cli.js +6 -6
  70. package/dist/cjs/building/cli.js.map +1 -1
  71. package/dist/cjs/building/graph.d.ts +2 -2
  72. package/dist/cjs/building/graph.d.ts.map +1 -1
  73. package/dist/cjs/building/graph.js.map +1 -1
  74. package/dist/cjs/building/project-builder.d.ts +38 -0
  75. package/dist/cjs/building/project-builder.d.ts.map +1 -0
  76. package/dist/cjs/building/project-builder.js +200 -0
  77. package/dist/cjs/building/project-builder.js.map +6 -0
  78. package/dist/cjs/building/tsconfig.js +1 -1
  79. package/dist/cjs/building/tsconfig.js.map +1 -1
  80. package/dist/cjs/index.d.ts +4 -6
  81. package/dist/cjs/index.d.ts.map +1 -1
  82. package/dist/cjs/index.js +4 -6
  83. package/dist/cjs/index.js.map +1 -1
  84. package/dist/cjs/running/ensure-compiled.js +2 -2
  85. package/dist/cjs/running/ensure-compiled.js.map +1 -1
  86. package/dist/cjs/util/commander.d.ts.map +1 -1
  87. package/dist/cjs/util/commander.js +4 -5
  88. package/dist/cjs/util/commander.js.map +2 -2
  89. package/dist/cjs/util/index.d.ts +1 -0
  90. package/dist/cjs/util/index.d.ts.map +1 -1
  91. package/dist/cjs/util/index.js +1 -0
  92. package/dist/cjs/util/index.js.map +1 -1
  93. package/dist/cjs/util/progress.d.ts +2 -2
  94. package/dist/cjs/util/progress.d.ts.map +1 -1
  95. package/dist/cjs/util/progress.js +25 -53
  96. package/dist/cjs/util/progress.js.map +2 -2
  97. package/dist/cjs/versioning/versioner.js +2 -12
  98. package/dist/cjs/versioning/versioner.js.map +2 -2
  99. package/dist/esm/ansi-text/chars.d.ts +11 -0
  100. package/dist/esm/ansi-text/chars.d.ts.map +1 -0
  101. package/dist/esm/ansi-text/chars.js +37 -0
  102. package/dist/esm/ansi-text/chars.js.map +6 -0
  103. package/dist/esm/ansi-text/consumer.d.ts +45 -0
  104. package/dist/esm/ansi-text/consumer.d.ts.map +1 -0
  105. package/dist/esm/ansi-text/consumer.js +6 -0
  106. package/dist/esm/ansi-text/consumer.js.map +6 -0
  107. package/dist/esm/ansi-text/contiguous-output-segment.d.ts +31 -0
  108. package/dist/esm/ansi-text/contiguous-output-segment.d.ts.map +1 -0
  109. package/dist/esm/ansi-text/contiguous-output-segment.js +136 -0
  110. package/dist/esm/ansi-text/contiguous-output-segment.js.map +6 -0
  111. package/dist/esm/ansi-text/index.d.ts +12 -0
  112. package/dist/esm/ansi-text/index.d.ts.map +1 -0
  113. package/dist/esm/ansi-text/index.js +12 -0
  114. package/dist/esm/ansi-text/index.js.map +6 -0
  115. package/dist/esm/ansi-text/printer.d.ts +24 -0
  116. package/dist/esm/ansi-text/printer.d.ts.map +1 -0
  117. package/dist/esm/ansi-text/printer.js +61 -0
  118. package/dist/esm/ansi-text/printer.js.map +6 -0
  119. package/dist/esm/ansi-text/producer.d.ts +17 -0
  120. package/dist/esm/ansi-text/producer.d.ts.map +1 -0
  121. package/dist/esm/ansi-text/producer.js +25 -0
  122. package/dist/esm/ansi-text/producer.js.map +6 -0
  123. package/dist/esm/ansi-text/screen.d.ts +13 -0
  124. package/dist/esm/ansi-text/screen.d.ts.map +1 -0
  125. package/dist/esm/ansi-text/screen.js +18 -0
  126. package/dist/esm/ansi-text/screen.js.map +6 -0
  127. package/dist/esm/ansi-text/sgr.d.ts +100 -0
  128. package/dist/esm/ansi-text/sgr.d.ts.map +1 -0
  129. package/dist/esm/ansi-text/sgr.js +120 -0
  130. package/dist/esm/ansi-text/sgr.js.map +6 -0
  131. package/dist/esm/ansi-text/std.d.ts +17 -0
  132. package/dist/esm/ansi-text/std.d.ts.map +1 -0
  133. package/dist/esm/ansi-text/std.js +23 -0
  134. package/dist/esm/ansi-text/std.js.map +6 -0
  135. package/dist/esm/ansi-text/style.d.ts +88 -0
  136. package/dist/esm/ansi-text/style.d.ts.map +1 -0
  137. package/dist/esm/ansi-text/style.js +245 -0
  138. package/dist/esm/ansi-text/style.js.map +6 -0
  139. package/dist/esm/ansi-text/text-builder.d.ts +78 -0
  140. package/dist/esm/ansi-text/text-builder.d.ts.map +1 -0
  141. package/dist/esm/ansi-text/text-builder.js +150 -0
  142. package/dist/esm/ansi-text/text-builder.js.map +6 -0
  143. package/dist/esm/ansi-text/text-writer.d.ts +30 -0
  144. package/dist/esm/ansi-text/text-writer.d.ts.map +1 -0
  145. package/dist/esm/ansi-text/text-writer.js +297 -0
  146. package/dist/esm/ansi-text/text-writer.js.map +6 -0
  147. package/dist/esm/ansi-text/token.d.ts +61 -0
  148. package/dist/esm/ansi-text/token.d.ts.map +1 -0
  149. package/dist/esm/ansi-text/token.js +6 -0
  150. package/dist/esm/ansi-text/token.js.map +6 -0
  151. package/dist/esm/ansi-text/tokenize.d.ts +11 -0
  152. package/dist/esm/ansi-text/tokenize.d.ts.map +1 -0
  153. package/dist/esm/ansi-text/tokenize.js +170 -0
  154. package/dist/esm/ansi-text/tokenize.js.map +6 -0
  155. package/dist/esm/ansi-text/truncator.d.ts +20 -0
  156. package/dist/esm/ansi-text/truncator.d.ts.map +1 -0
  157. package/dist/esm/ansi-text/truncator.js +52 -0
  158. package/dist/esm/ansi-text/truncator.js.map +6 -0
  159. package/dist/esm/ansi-text/visible-width-of.d.ts +10 -0
  160. package/dist/esm/ansi-text/visible-width-of.d.ts.map +1 -0
  161. package/dist/esm/ansi-text/visible-width-of.js +35 -0
  162. package/dist/esm/ansi-text/visible-width-of.js.map +6 -0
  163. package/dist/esm/ansi-text/wrapper.d.ts +34 -0
  164. package/dist/esm/ansi-text/wrapper.d.ts.map +1 -0
  165. package/dist/esm/ansi-text/wrapper.js +188 -0
  166. package/dist/esm/ansi-text/wrapper.js.map +6 -0
  167. package/dist/esm/building/cli.js +3 -3
  168. package/dist/esm/building/cli.js.map +1 -1
  169. package/dist/esm/building/graph.d.ts +2 -2
  170. package/dist/esm/building/graph.d.ts.map +1 -1
  171. package/dist/esm/building/graph.js +1 -1
  172. package/dist/esm/building/graph.js.map +1 -1
  173. package/dist/esm/building/project-builder.d.ts +38 -0
  174. package/dist/esm/building/project-builder.d.ts.map +1 -0
  175. package/dist/esm/building/project-builder.js +180 -0
  176. package/dist/esm/building/project-builder.js.map +6 -0
  177. package/dist/esm/building/tsconfig.js +2 -2
  178. package/dist/esm/building/tsconfig.js.map +1 -1
  179. package/dist/esm/index.d.ts +4 -6
  180. package/dist/esm/index.d.ts.map +1 -1
  181. package/dist/esm/index.js +5 -7
  182. package/dist/esm/index.js.map +1 -1
  183. package/dist/esm/running/ensure-compiled.js +3 -3
  184. package/dist/esm/running/ensure-compiled.js.map +1 -1
  185. package/dist/esm/util/commander.d.ts.map +1 -1
  186. package/dist/esm/util/commander.js +5 -6
  187. package/dist/esm/util/commander.js.map +1 -1
  188. package/dist/esm/util/index.d.ts +1 -0
  189. package/dist/esm/util/index.d.ts.map +1 -1
  190. package/dist/esm/util/index.js +2 -1
  191. package/dist/esm/util/index.js.map +1 -1
  192. package/dist/esm/util/progress.d.ts +2 -2
  193. package/dist/esm/util/progress.d.ts.map +1 -1
  194. package/dist/esm/util/progress.js +26 -44
  195. package/dist/esm/util/progress.js.map +1 -1
  196. package/dist/esm/versioning/versioner.js +3 -3
  197. package/dist/esm/versioning/versioner.js.map +1 -1
  198. package/package.json +11 -1
  199. package/src/ansi-text/chars.ts +31 -0
  200. package/src/ansi-text/consumer.ts +53 -0
  201. package/src/ansi-text/contiguous-output-segment.ts +181 -0
  202. package/src/ansi-text/index.ts +14 -0
  203. package/src/ansi-text/printer.ts +86 -0
  204. package/src/ansi-text/producer.ts +29 -0
  205. package/src/ansi-text/screen.ts +18 -0
  206. package/src/ansi-text/sgr.ts +154 -0
  207. package/src/ansi-text/std.ts +28 -0
  208. package/src/ansi-text/style.ts +369 -0
  209. package/src/ansi-text/text-builder.ts +261 -0
  210. package/src/ansi-text/text-writer.ts +363 -0
  211. package/src/ansi-text/token.ts +76 -0
  212. package/src/ansi-text/tokenize.ts +212 -0
  213. package/src/ansi-text/truncator.ts +63 -0
  214. package/src/ansi-text/visible-width-of.ts +39 -0
  215. package/src/ansi-text/wrapper.ts +244 -0
  216. package/src/building/cli.ts +2 -2
  217. package/src/building/graph.ts +2 -2
  218. package/src/building/project-builder.ts +230 -0
  219. package/src/building/tsconfig.ts +2 -4
  220. package/src/index.ts +4 -6
  221. package/src/running/ensure-compiled.ts +2 -2
  222. package/src/util/commander.ts +4 -6
  223. package/src/util/index.ts +1 -0
  224. package/src/util/progress.ts +24 -61
  225. package/src/versioning/versioner.ts +2 -2
@@ -0,0 +1,257 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var style_exports = {};
20
+ __export(style_exports, {
21
+ Style: () => Style
22
+ });
23
+ module.exports = __toCommonJS(style_exports);
24
+ var import_sgr = require("./sgr.js");
25
+ /**
26
+ * @license
27
+ * Copyright 2022-2024 Matter.js Authors
28
+ * SPDX-License-Identifier: Apache-2.0
29
+ */
30
+ const codes = Symbol("codes");
31
+ const text = Symbol("text");
32
+ function Style(definition) {
33
+ if (definition instanceof Style) {
34
+ return definition;
35
+ }
36
+ const style = Object.create(Style.prototype);
37
+ style.styleDefinition = Style.definitionOf(definition);
38
+ return style;
39
+ }
40
+ ((Style2) => {
41
+ function opcodeOf(code) {
42
+ if (typeof code === "number") {
43
+ return code;
44
+ }
45
+ if (code === "") {
46
+ return 0;
47
+ }
48
+ const opcode = Number.parseInt(code);
49
+ if (Number.isNaN(opcode)) {
50
+ return void 0;
51
+ }
52
+ return opcode;
53
+ }
54
+ Style2.opcodeOf = opcodeOf;
55
+ function codesOf(definition) {
56
+ definition = textOf(definition);
57
+ if (definition === void 0) {
58
+ return [];
59
+ }
60
+ if (definition === "") {
61
+ return [0];
62
+ }
63
+ const parts = definition.split(";");
64
+ const codes2 = Array();
65
+ let pos = 0;
66
+ while (pos < parts.length) {
67
+ const part = parts[pos];
68
+ const opcode = opcodeOf(parts[pos]);
69
+ pos++;
70
+ let expectedParts;
71
+ switch (opcode) {
72
+ case import_sgr.SgrOpcodeBlock.fg + import_sgr.Color.extended:
73
+ case import_sgr.SgrOpcodeBlock.bg + import_sgr.Color.extended:
74
+ switch (opcodeOf(parts[pos])) {
75
+ case import_sgr.ExtendedColor.eightBit:
76
+ expectedParts = 3;
77
+ break;
78
+ case import_sgr.ExtendedColor.rgb:
79
+ expectedParts = 5;
80
+ break;
81
+ default:
82
+ expectedParts = 1;
83
+ break;
84
+ }
85
+ break;
86
+ case void 0:
87
+ continue;
88
+ default:
89
+ expectedParts = 0;
90
+ break;
91
+ }
92
+ let baseCode;
93
+ if (opcode.toString() === part) {
94
+ baseCode = opcode;
95
+ } else {
96
+ baseCode = part;
97
+ }
98
+ if (expectedParts) {
99
+ const codeCount = part.split(":").length;
100
+ if (codeCount < expectedParts) {
101
+ const argParts = expectedParts - codeCount;
102
+ codes2.push([baseCode, ...parts.slice(pos, pos + argParts)].join(";"));
103
+ pos += argParts;
104
+ continue;
105
+ }
106
+ }
107
+ codes2.push(baseCode);
108
+ }
109
+ return codes2;
110
+ }
111
+ Style2.codesOf = codesOf;
112
+ function textOf(definition) {
113
+ if (definition === void 0 || definition === "") {
114
+ return definition;
115
+ }
116
+ definition = definition.trim();
117
+ if (definition[0] === "\x1B" && definition[1] === "[") {
118
+ definition = definition.slice(2);
119
+ }
120
+ if (definition[definition.length - 1] === "m") {
121
+ definition = definition.slice(0, definition.length - 1);
122
+ }
123
+ return definition;
124
+ }
125
+ Style2.textOf = textOf;
126
+ function definitionOf(definition) {
127
+ if (definition !== void 0 && typeof definition !== "string" && !Array.isArray(definition)) {
128
+ return definition.styleDefinition;
129
+ }
130
+ return definition;
131
+ }
132
+ Style2.definitionOf = definitionOf;
133
+ })(Style || (Style = {}));
134
+ Style.prototype = {
135
+ get styleDefinition() {
136
+ if (this[codes] !== void 0) {
137
+ return this[codes];
138
+ }
139
+ if (this[text] !== void 0) {
140
+ return this[text];
141
+ }
142
+ },
143
+ set styleDefinition(definition) {
144
+ if (typeof definition === "function" || typeof definition === "object" && !Array.isArray(definition)) {
145
+ this.styleDefinition = definition.styleDefinition;
146
+ } else if (typeof definition === "string") {
147
+ this[text] = Style.textOf(definition);
148
+ this[codes] = void 0;
149
+ } else {
150
+ this[codes] = definition;
151
+ this[text] = void 0;
152
+ }
153
+ },
154
+ get styleCodes() {
155
+ if (this[codes] === void 0) {
156
+ this[codes] = Style.codesOf(this[text]);
157
+ }
158
+ return this[codes] ?? [];
159
+ },
160
+ get styleToken() {
161
+ return {
162
+ kind: "style",
163
+ // Do not use this because extension toString() may not do the correct thing
164
+ style: Style(this.styleDefinition)
165
+ };
166
+ },
167
+ get undoStyle() {
168
+ const codes2 = Array();
169
+ for (const code of this.styleCodes) {
170
+ const opcode = Style.opcodeOf(code);
171
+ if (opcode === void 0) {
172
+ continue;
173
+ }
174
+ const undo = import_sgr.SgrOpcodeToUndoOpcode[opcode];
175
+ if (undo === void 0) {
176
+ continue;
177
+ }
178
+ codes2.push(undo);
179
+ }
180
+ return Style(codes2);
181
+ },
182
+ toString() {
183
+ const codes2 = Array();
184
+ for (const code of this.styleCodes) {
185
+ const opcode = Style.opcodeOf(code);
186
+ if (opcode === void 0) {
187
+ continue;
188
+ }
189
+ codes2.push(code);
190
+ }
191
+ return `\x1B[${codes2.join(";")}m`;
192
+ },
193
+ addStyle(codes2) {
194
+ let categories = Array();
195
+ function processor(category, code) {
196
+ if (category === import_sgr.SgrCategory.reset) {
197
+ categories = [import_sgr.SgrOpcode.reset];
198
+ } else {
199
+ categories[category] = code;
200
+ }
201
+ }
202
+ this.evaluateStyle(processor);
203
+ codes2 = Style.definitionOf(codes2);
204
+ if (codes2 !== void 0) {
205
+ Style(codes2).evaluateStyle(processor);
206
+ }
207
+ return this.factory(
208
+ categories.filter((entry) => entry !== void 0),
209
+ this
210
+ );
211
+ },
212
+ diffStyle(other) {
213
+ let current = Array();
214
+ this.evaluateStyle((category, code) => {
215
+ if (category === import_sgr.SgrCategory.reset) {
216
+ current = [];
217
+ } else {
218
+ current[category] = code;
219
+ }
220
+ });
221
+ let target = [...current];
222
+ other.evaluateStyle((category, code) => {
223
+ if (category === import_sgr.SgrCategory.reset) {
224
+ current = [];
225
+ target = [import_sgr.SgrCategory.reset];
226
+ } else if (current[category] === code) {
227
+ target[category] = void 0;
228
+ } else {
229
+ target[category] = code;
230
+ }
231
+ });
232
+ return this.factory(
233
+ target.filter((entry) => entry !== void 0),
234
+ this
235
+ );
236
+ },
237
+ evaluateStyle(processor) {
238
+ for (const code of this.styleCodes) {
239
+ const opcode = Style.opcodeOf(code);
240
+ if (opcode !== void 0) {
241
+ const category = import_sgr.SgrOpcodeToCategory[opcode];
242
+ if (category !== void 0) {
243
+ processor(category, code);
244
+ }
245
+ }
246
+ }
247
+ },
248
+ get factory() {
249
+ return Style;
250
+ },
251
+ [Symbol.iterator]() {
252
+ return [{ kind: "style", style: this }][Symbol.iterator]();
253
+ }
254
+ };
255
+ Style.Inherit = Style();
256
+ Style.None = Style([0]);
257
+ //# sourceMappingURL=style.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/ansi-text/style.ts"],
4
+ "mappings": "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",
5
+ "names": ["Style", "codes"]
6
+ }
@@ -0,0 +1,78 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2024 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Producer } from "./producer.js";
7
+ import { Color, EightBitColor, RgbColor } from "./sgr.js";
8
+ import { Style } from "./style.js";
9
+ /**
10
+ * Convenience API for building ANSI text.
11
+ *
12
+ * Allows you to create ANSI escape sequences using e.g. `ansi.bright.yellow.bg.blue.blink`.
13
+ */
14
+ export interface TextBuilder extends Style {
15
+ (...text: Producer.Sequence): TextBuilder;
16
+ readonly state: TextBuilder.State;
17
+ readonly bg: TextBuilder;
18
+ readonly not: TextBuilder;
19
+ readonly reset: TextBuilder;
20
+ readonly bold: TextBuilder;
21
+ readonly dim: TextBuilder;
22
+ readonly bright: TextBuilder;
23
+ readonly italic: TextBuilder;
24
+ readonly underline: TextBuilder;
25
+ readonly doubleUnderline: TextBuilder;
26
+ readonly blink: TextBuilder;
27
+ readonly fastBlink: TextBuilder;
28
+ readonly invert: TextBuilder;
29
+ readonly conceal: TextBuilder;
30
+ readonly strike: TextBuilder;
31
+ readonly black: TextBuilder;
32
+ readonly red: TextBuilder;
33
+ readonly green: TextBuilder;
34
+ readonly yellow: TextBuilder;
35
+ readonly blue: TextBuilder;
36
+ readonly magenta: TextBuilder;
37
+ readonly cyan: TextBuilder;
38
+ readonly white: TextBuilder;
39
+ color(color: Color | EightBitColor | RgbColor): TextBuilder;
40
+ factory: TextBuilder.Factory;
41
+ }
42
+ export declare function TextBuilder(definition?: Style.InputDefinition | Style, derivesFrom?: Style, state?: TextBuilder.State): TextBuilder;
43
+ export declare namespace TextBuilder {
44
+ var prototype: any;
45
+ }
46
+ export declare namespace TextBuilder {
47
+ interface State {
48
+ /**
49
+ * If next build affects a color it will modify bg rather than fg.
50
+ */
51
+ readonly bg?: boolean;
52
+ /**
53
+ * If next build affects 8-bit color the color will render as bright.
54
+ */
55
+ readonly bright?: boolean;
56
+ /**
57
+ * If next build modifies ANSI styling its meaning is inverted.
58
+ */
59
+ readonly not?: boolean;
60
+ /**
61
+ * Serialization will include style reversion as the final token.
62
+ *
63
+ * Set after invoking builder as function, cleared when modifying style. This means that ansi.red("foo") is
64
+ * terminated but ansi.red("foo").green will render as a red "foo" and leave text styled green.
65
+ */
66
+ readonly revert?: boolean;
67
+ /**
68
+ * The serialization sequence. Populated by invoking builder as function.
69
+ */
70
+ readonly sequence?: Producer.Sequence;
71
+ }
72
+ type Factory = (definition?: Style.Definition | Style, derivesFrom?: Style, state?: TextBuilder.State) => TextBuilder;
73
+ }
74
+ /**
75
+ * Initial builder.
76
+ */
77
+ export declare const ansi: TextBuilder;
78
+ //# sourceMappingURL=text-builder.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-builder.d.ts","sourceRoot":"","sources":["../../../src/ansi-text/text-builder.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACH,KAAK,EACL,aAAa,EAEb,QAAQ,EAIX,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAGnC;;;;GAIG;AACH,MAAM,WAAW,WAAY,SAAQ,KAAK;IACtC,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,QAAQ,GAAG,WAAW,CAAC;IAE1C,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;IAClC,QAAQ,CAAC,EAAE,EAAE,WAAW,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC;IAChC,QAAQ,CAAC,eAAe,EAAE,WAAW,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,SAAS,EAAE,WAAW,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,GAAG,EAAE,WAAW,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IAC7B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAC;IAC3B,QAAQ,CAAC,KAAK,EAAE,WAAW,CAAC;IAC5B,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,aAAa,GAAG,QAAQ,GAAG,WAAW,CAAC;IAE5D,OAAO,EAAE,WAAW,CAAC,OAAO,CAAC;CAChC;AAED,wBAAgB,WAAW,CACvB,UAAU,CAAC,EAAE,KAAK,CAAC,eAAe,GAAG,KAAK,EAC1C,WAAW,CAAC,EAAE,KAAK,EACnB,KAAK,CAAC,EAAE,WAAW,CAAC,KAAK,eA4B5B;yBA/Be,WAAW;;;AAoK3B,yBAAiB,WAAW,CAAC;IACzB,UAAiB,KAAK;QAClB;;WAEG;QACH,QAAQ,CAAC,EAAE,CAAC,EAAE,OAAO,CAAC;QAEtB;;WAEG;QACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAE1B;;WAEG;QACH,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC;QAEvB;;;;;WAKG;QACH,QAAQ,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC;QAE1B;;WAEG;QACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC;KACzC;IAED,KAAY,OAAO,GAAG,CAClB,UAAU,CAAC,EAAE,KAAK,CAAC,UAAU,GAAG,KAAK,EACrC,WAAW,CAAC,EAAE,KAAK,EACnB,KAAK,CAAC,EAAE,WAAW,CAAC,KAAK,KACxB,WAAW,CAAC;CACpB;AAED;;GAEG;AACH,eAAO,MAAM,IAAI,aAAgB,CAAC"}
@@ -0,0 +1,164 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var text_builder_exports = {};
20
+ __export(text_builder_exports, {
21
+ TextBuilder: () => TextBuilder,
22
+ ansi: () => ansi
23
+ });
24
+ module.exports = __toCommonJS(text_builder_exports);
25
+ var import_producer = require("./producer.js");
26
+ var import_sgr = require("./sgr.js");
27
+ var import_style = require("./style.js");
28
+ var import_text_writer = require("./text-writer.js");
29
+ /**
30
+ * @license
31
+ * Copyright 2022-2024 Matter.js Authors
32
+ * SPDX-License-Identifier: Apache-2.0
33
+ */
34
+ function TextBuilder(definition, derivesFrom, state) {
35
+ if (derivesFrom instanceof TextBuilder) {
36
+ state = { ...derivesFrom.state, ...state };
37
+ } else if (state === void 0) {
38
+ state = {};
39
+ }
40
+ definition = import_style.Style.definitionOf(definition);
41
+ const self = function TextBuilderInstance(...text) {
42
+ const sequence = self.state.sequence ? [...self.state.sequence] : [];
43
+ if (self.styleDefinition?.length) {
44
+ sequence.push(self.styleToken);
45
+ }
46
+ sequence.push(...text);
47
+ return TextBuilder(self, self, { sequence, revert: true });
48
+ };
49
+ Object.setPrototypeOf(self, TextBuilder.prototype);
50
+ self.state = state;
51
+ if (definition !== void 0) {
52
+ self.styleDefinition = definition;
53
+ }
54
+ return self;
55
+ }
56
+ TextBuilder.prototype = Object.create(import_style.Style.prototype, {
57
+ bg: chmode({ bg: true }),
58
+ not: chmode({ not: true }),
59
+ bold: toggle("bold"),
60
+ dim: toggle("dim"),
61
+ bright: chmode({ bright: true }),
62
+ italic: toggle("italic"),
63
+ underline: toggle("underline"),
64
+ doubleUnderline: toggle("doubleUnderline"),
65
+ slowBlink: toggle("slowBlink"),
66
+ fastBlink: toggle("fastBlink"),
67
+ invert: toggle("invert"),
68
+ conceal: toggle("conceal"),
69
+ strike: toggle("strike"),
70
+ black: color("black"),
71
+ red: color("red"),
72
+ green: color("green"),
73
+ yellow: color("yellow"),
74
+ blue: color("blue"),
75
+ magenta: color("magenta"),
76
+ cyan: color("cyan"),
77
+ white: color("white"),
78
+ reset: {
79
+ get() {
80
+ return this.addStyle([0]);
81
+ }
82
+ },
83
+ color: {
84
+ value(color2) {
85
+ if (this.state.not) {
86
+ return this.addStyle([this.state.bg ? import_sgr.SgrOpcode.normalBg : import_sgr.SgrOpcode.normalFg]);
87
+ }
88
+ if (typeof color2 === "object") {
89
+ if ("color" in color2) {
90
+ return this.addStyle([import_sgr.Color.extended, import_sgr.ExtendedColor.eightBit, color2.color]);
91
+ }
92
+ return this.addStyle([import_sgr.Color.extended, import_sgr.ExtendedColor.rgb, color2.r ?? 0, color2.g ?? 0, color2.b ?? 0]);
93
+ }
94
+ const block = this.state.bg ? this.state.bright ? import_sgr.SgrOpcodeBlock.bgBright : import_sgr.SgrOpcodeBlock.bg : this.state.bright ? import_sgr.SgrOpcodeBlock.fgBright : import_sgr.SgrOpcodeBlock.fg;
95
+ return this.addStyle([block + color2]);
96
+ }
97
+ },
98
+ toString: {
99
+ value() {
100
+ let { sequence } = this.state;
101
+ if (!sequence) {
102
+ sequence = [this.styleToken];
103
+ }
104
+ if (this.state.revert) {
105
+ sequence = [...sequence, this.undoStyle.styleToken];
106
+ }
107
+ const parts = Array();
108
+ const writer = new import_text_writer.TextWriter((part) => parts.push(part));
109
+ writer.write(...sequence);
110
+ writer.close();
111
+ return parts.join("");
112
+ }
113
+ },
114
+ [Symbol.iterator]: {
115
+ get() {
116
+ if (this.state.sequence === void 0) {
117
+ return {
118
+ next() {
119
+ return void 0;
120
+ },
121
+ done: true
122
+ };
123
+ }
124
+ let sequence = this.state.sequence;
125
+ if (this.state.revert) {
126
+ sequence = [...sequence, this.undoStyle.styleToken];
127
+ }
128
+ const iterable = import_producer.Producer.of(sequence);
129
+ return iterable[Symbol.iterator].bind(iterable);
130
+ }
131
+ },
132
+ factory: {
133
+ value: TextBuilder
134
+ }
135
+ });
136
+ function chmode(state) {
137
+ return {
138
+ get() {
139
+ return TextBuilder(this, this, state);
140
+ }
141
+ };
142
+ }
143
+ function toggle(name) {
144
+ const on = import_sgr.SgrOpcode[name];
145
+ const off = import_sgr.SgrOpcodeToUndoOpcode[on];
146
+ if (off === void 0) {
147
+ throw new Error(`Can't toggle opcode ${on}`);
148
+ }
149
+ return {
150
+ get() {
151
+ return this.addStyle([this.state.not ? off : on]);
152
+ }
153
+ };
154
+ }
155
+ function color(color2) {
156
+ const opcode = import_sgr.Color[color2];
157
+ return {
158
+ get() {
159
+ return this.color(opcode);
160
+ }
161
+ };
162
+ }
163
+ const ansi = TextBuilder();
164
+ //# sourceMappingURL=text-builder.js.map
@@ -0,0 +1,6 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/ansi-text/text-builder.ts"],
4
+ "mappings": "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",
5
+ "names": ["color"]
6
+ }
@@ -0,0 +1,30 @@
1
+ /**
2
+ * @license
3
+ * Copyright 2022-2024 Matter.js Authors
4
+ * SPDX-License-Identifier: Apache-2.0
5
+ */
6
+ import { Consumer } from "./consumer.js";
7
+ import { Producer } from "./producer.js";
8
+ /**
9
+ * Low-level text output with ANSI escape sequences, maintaining state regarding style and width of current line.
10
+ */
11
+ export declare class TextWriter implements Consumer {
12
+ #private;
13
+ tabWidth: number;
14
+ constructor(out: (text: string) => void, options?: Writer.Options);
15
+ get state(): Consumer.State;
16
+ write(...text: Producer.Sequence): void;
17
+ close(): void;
18
+ /**
19
+ * Reset styling.
20
+ */
21
+ reset(): void;
22
+ }
23
+ export declare namespace Writer {
24
+ interface Options {
25
+ tabWidth?: number;
26
+ terminalWidth?: number;
27
+ linePrefix?: string;
28
+ }
29
+ }
30
+ //# sourceMappingURL=text-writer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text-writer.d.ts","sourceRoot":"","sources":["../../../src/ansi-text/text-writer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAQzC;;GAEG;AACH,qBAAa,UAAW,YAAW,QAAQ;;IACvC,QAAQ,EAAE,MAAM,CAAC;gBAeL,GAAG,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,EAAE,OAAO,CAAC,EAAE,MAAM,CAAC,OAAO;IAuMjE,IAAI,KAAK,mBAER;IAED,KAAK,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,QAAQ;IAMhC,KAAK;IAIL;;OAEG;IACH,KAAK;CAuGR;AAED,yBAAiB,MAAM,CAAC;IACpB,UAAiB,OAAO;QACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,UAAU,CAAC,EAAE,MAAM,CAAC;KACvB;CACJ"}