standard-log-color 3.2.3 → 5.0.0

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 (302) hide show
  1. package/LICENSE +1 -1
  2. package/{lib → cjs}/ansi/adjustCodes.d.ts +0 -0
  3. package/cjs/ansi/adjustCodes.d.ts.map +1 -0
  4. package/cjs/ansi/adjustCodes.js +24 -0
  5. package/cjs/ansi/adjustCodes.js.map +1 -0
  6. package/cjs/ansi/adjustCodes.spec.d.ts +2 -0
  7. package/cjs/ansi/adjustCodes.spec.d.ts.map +1 -0
  8. package/cjs/ansi/adjustCodes.spec.js +13 -0
  9. package/cjs/ansi/adjustCodes.spec.js.map +1 -0
  10. package/{lib → cjs}/ansi/ansiFormatter.d.ts +0 -0
  11. package/cjs/ansi/ansiFormatter.d.ts.map +1 -0
  12. package/cjs/ansi/ansiFormatter.js +47 -0
  13. package/cjs/ansi/ansiFormatter.js.map +1 -0
  14. package/{lib → cjs}/ansi/constants.d.ts +0 -0
  15. package/cjs/ansi/constants.d.ts.map +1 -0
  16. package/{lib → cjs}/ansi/constants.js +0 -0
  17. package/cjs/ansi/constants.js.map +1 -0
  18. package/{lib → cjs}/ansi/createColorCodes.d.ts +0 -0
  19. package/cjs/ansi/createColorCodes.d.ts.map +1 -0
  20. package/cjs/ansi/createColorCodes.js +49 -0
  21. package/cjs/ansi/createColorCodes.js.map +1 -0
  22. package/cjs/ansi/createColorCodes.spec.d.ts +2 -0
  23. package/cjs/ansi/createColorCodes.spec.d.ts.map +1 -0
  24. package/cjs/ansi/createColorCodes.spec.js +34 -0
  25. package/cjs/ansi/createColorCodes.spec.js.map +1 -0
  26. package/cjs/ansi/index.d.ts +4 -0
  27. package/cjs/ansi/index.d.ts.map +1 -0
  28. package/cjs/ansi/index.js +20 -0
  29. package/cjs/ansi/index.js.map +1 -0
  30. package/{lib → cjs}/ansi/isColor.d.ts +1 -1
  31. package/cjs/ansi/isColor.d.ts.map +1 -0
  32. package/cjs/ansi/isColor.js +13 -0
  33. package/cjs/ansi/isColor.js.map +1 -0
  34. package/cjs/ansi/isColor.spec.d.ts +2 -0
  35. package/cjs/ansi/isColor.spec.d.ts.map +1 -0
  36. package/cjs/ansi/isColor.spec.js +17 -0
  37. package/cjs/ansi/isColor.spec.js.map +1 -0
  38. package/{lib → cjs}/ansi/wrapAnsi.d.ts +0 -0
  39. package/cjs/ansi/wrapAnsi.d.ts.map +1 -0
  40. package/{lib → cjs}/ansi/wrapAnsi.js +2 -2
  41. package/cjs/ansi/wrapAnsi.js.map +1 -0
  42. package/cjs/ansi/wrapAnsi.spec.d.ts +2 -0
  43. package/cjs/ansi/wrapAnsi.spec.d.ts.map +1 -0
  44. package/cjs/ansi/wrapAnsi.spec.js +9 -0
  45. package/cjs/ansi/wrapAnsi.spec.js.map +1 -0
  46. package/{lib → cjs}/createColorLogReporter.browser.d.ts +0 -0
  47. package/cjs/createColorLogReporter.browser.d.ts.map +1 -0
  48. package/{lib → cjs}/createColorLogReporter.browser.js +5 -5
  49. package/cjs/createColorLogReporter.browser.js.map +1 -0
  50. package/{lib → cjs}/createColorLogReporter.d.ts +0 -0
  51. package/cjs/createColorLogReporter.d.ts.map +1 -0
  52. package/{lib → cjs}/createColorLogReporter.js +5 -5
  53. package/cjs/createColorLogReporter.js.map +1 -0
  54. package/cjs/createColorLogReporter.spec.d.ts +2 -0
  55. package/cjs/createColorLogReporter.spec.d.ts.map +1 -0
  56. package/cjs/createColorLogReporter.spec.js +178 -0
  57. package/cjs/createColorLogReporter.spec.js.map +1 -0
  58. package/{lib → cjs}/css/colors.d.ts +0 -0
  59. package/cjs/css/colors.d.ts.map +1 -0
  60. package/{lib → cjs}/css/colors.js +0 -0
  61. package/cjs/css/colors.js.map +1 -0
  62. package/{lib → cjs}/css/cssFormatter.d.ts +0 -0
  63. package/cjs/css/cssFormatter.d.ts.map +1 -0
  64. package/{lib → cjs}/css/cssFormatter.js +22 -14
  65. package/cjs/css/cssFormatter.js.map +1 -0
  66. package/cjs/css/cssFormatter.spec.d.ts +2 -0
  67. package/cjs/css/cssFormatter.spec.d.ts.map +1 -0
  68. package/cjs/css/cssFormatter.spec.js +33 -0
  69. package/cjs/css/cssFormatter.spec.js.map +1 -0
  70. package/cjs/css/index.d.ts +2 -0
  71. package/cjs/css/index.d.ts.map +1 -0
  72. package/cjs/css/index.js +18 -0
  73. package/cjs/css/index.js.map +1 -0
  74. package/cjs/index.d.ts +4 -0
  75. package/cjs/index.d.ts.map +1 -0
  76. package/cjs/index.js +20 -0
  77. package/cjs/index.js.map +1 -0
  78. package/cjs/package.json +3 -0
  79. package/cjs/utils/index.d.ts +2 -0
  80. package/cjs/utils/index.d.ts.map +1 -0
  81. package/cjs/utils/index.js +18 -0
  82. package/cjs/utils/index.js.map +1 -0
  83. package/{lib → cjs}/utils/supportColor.browser.d.ts +0 -0
  84. package/cjs/utils/supportColor.browser.d.ts.map +1 -0
  85. package/{lib → cjs}/utils/supportColor.browser.js +3 -0
  86. package/cjs/utils/supportColor.browser.js.map +1 -0
  87. package/{lib → cjs}/utils/supportColor.d.ts +0 -0
  88. package/cjs/utils/supportColor.d.ts.map +1 -0
  89. package/{lib → cjs}/utils/supportColor.js +0 -0
  90. package/cjs/utils/supportColor.js.map +1 -0
  91. package/dist/standard-log-color.es5.js +2 -0
  92. package/dist/standard-log-color.es5.js.gz +0 -0
  93. package/dist/standard-log-color.es5.js.map +1 -0
  94. package/dist/standard-log-color.es5.js.map.gz +0 -0
  95. package/dist/standard-log-color.esm.js +2 -0
  96. package/dist/standard-log-color.esm.js.gz +0 -0
  97. package/dist/standard-log-color.esm.js.map +1 -0
  98. package/dist/standard-log-color.esm.js.map.gz +0 -0
  99. package/{libm → esm}/ansi/adjustCodes.d.ts +0 -0
  100. package/esm/ansi/adjustCodes.d.ts.map +1 -0
  101. package/{libm → esm}/ansi/adjustCodes.js +1 -1
  102. package/esm/ansi/adjustCodes.js.map +1 -0
  103. package/esm/ansi/adjustCodes.spec.d.ts +2 -0
  104. package/esm/ansi/adjustCodes.spec.d.ts.map +1 -0
  105. package/esm/ansi/adjustCodes.spec.js +11 -0
  106. package/esm/ansi/adjustCodes.spec.js.map +1 -0
  107. package/{libm → esm}/ansi/ansiFormatter.d.ts +0 -0
  108. package/esm/ansi/ansiFormatter.d.ts.map +1 -0
  109. package/{libm → esm}/ansi/ansiFormatter.js +4 -4
  110. package/esm/ansi/ansiFormatter.js.map +1 -0
  111. package/{libm → esm}/ansi/constants.d.ts +0 -0
  112. package/esm/ansi/constants.d.ts.map +1 -0
  113. package/{libm → esm}/ansi/constants.js +0 -0
  114. package/esm/ansi/constants.js.map +1 -0
  115. package/{libm → esm}/ansi/createColorCodes.d.ts +0 -0
  116. package/esm/ansi/createColorCodes.d.ts.map +1 -0
  117. package/{libm → esm}/ansi/createColorCodes.js +2 -2
  118. package/esm/ansi/createColorCodes.js.map +1 -0
  119. package/esm/ansi/createColorCodes.spec.d.ts +2 -0
  120. package/esm/ansi/createColorCodes.spec.d.ts.map +1 -0
  121. package/esm/ansi/createColorCodes.spec.js +32 -0
  122. package/esm/ansi/createColorCodes.spec.js.map +1 -0
  123. package/esm/ansi/index.d.ts +4 -0
  124. package/esm/ansi/index.d.ts.map +1 -0
  125. package/esm/ansi/index.js +4 -0
  126. package/esm/ansi/index.js.map +1 -0
  127. package/{libm → esm}/ansi/isColor.d.ts +1 -1
  128. package/esm/ansi/isColor.d.ts.map +1 -0
  129. package/{libm → esm}/ansi/isColor.js +1 -1
  130. package/esm/ansi/isColor.js.map +1 -0
  131. package/esm/ansi/isColor.spec.d.ts +2 -0
  132. package/esm/ansi/isColor.spec.d.ts.map +1 -0
  133. package/esm/ansi/isColor.spec.js +15 -0
  134. package/esm/ansi/isColor.spec.js.map +1 -0
  135. package/{libm → esm}/ansi/wrapAnsi.d.ts +0 -0
  136. package/esm/ansi/wrapAnsi.d.ts.map +1 -0
  137. package/{libm → esm}/ansi/wrapAnsi.js +0 -0
  138. package/esm/ansi/wrapAnsi.js.map +1 -0
  139. package/esm/ansi/wrapAnsi.spec.d.ts +2 -0
  140. package/esm/ansi/wrapAnsi.spec.d.ts.map +1 -0
  141. package/esm/ansi/wrapAnsi.spec.js +7 -0
  142. package/esm/ansi/wrapAnsi.spec.js.map +1 -0
  143. package/{libm → esm}/createColorLogReporter.browser.d.ts +0 -0
  144. package/esm/createColorLogReporter.browser.d.ts.map +1 -0
  145. package/{libm → esm}/createColorLogReporter.browser.js +2 -2
  146. package/esm/createColorLogReporter.browser.js.map +1 -0
  147. package/{libm → esm}/createColorLogReporter.d.ts +0 -0
  148. package/esm/createColorLogReporter.d.ts.map +1 -0
  149. package/{libm → esm}/createColorLogReporter.js +2 -2
  150. package/esm/createColorLogReporter.js.map +1 -0
  151. package/esm/createColorLogReporter.spec.d.ts +2 -0
  152. package/esm/createColorLogReporter.spec.d.ts.map +1 -0
  153. package/esm/createColorLogReporter.spec.js +152 -0
  154. package/esm/createColorLogReporter.spec.js.map +1 -0
  155. package/{libm → esm}/css/colors.d.ts +0 -0
  156. package/esm/css/colors.d.ts.map +1 -0
  157. package/{libm → esm}/css/colors.js +0 -0
  158. package/esm/css/colors.js.map +1 -0
  159. package/{libm → esm}/css/cssFormatter.d.ts +0 -0
  160. package/esm/css/cssFormatter.d.ts.map +1 -0
  161. package/{libm → esm}/css/cssFormatter.js +1 -1
  162. package/esm/css/cssFormatter.js.map +1 -0
  163. package/esm/css/cssFormatter.spec.d.ts +2 -0
  164. package/esm/css/cssFormatter.spec.d.ts.map +1 -0
  165. package/esm/css/cssFormatter.spec.js +28 -0
  166. package/esm/css/cssFormatter.spec.js.map +1 -0
  167. package/esm/css/index.d.ts +2 -0
  168. package/esm/css/index.d.ts.map +1 -0
  169. package/esm/css/index.js +2 -0
  170. package/esm/css/index.js.map +1 -0
  171. package/esm/index.d.ts +4 -0
  172. package/esm/index.d.ts.map +1 -0
  173. package/esm/index.js +4 -0
  174. package/esm/index.js.map +1 -0
  175. package/esm/utils/index.d.ts +2 -0
  176. package/esm/utils/index.d.ts.map +1 -0
  177. package/esm/utils/index.js +2 -0
  178. package/esm/utils/index.js.map +1 -0
  179. package/{libm → esm}/utils/supportColor.browser.d.ts +0 -0
  180. package/esm/utils/supportColor.browser.d.ts.map +1 -0
  181. package/{libm → esm}/utils/supportColor.browser.js +3 -0
  182. package/esm/utils/supportColor.browser.js.map +1 -0
  183. package/{libm → esm}/utils/supportColor.d.ts +0 -0
  184. package/esm/utils/supportColor.d.ts.map +1 -0
  185. package/{libm → esm}/utils/supportColor.js +0 -0
  186. package/esm/utils/supportColor.js.map +1 -0
  187. package/package.json +81 -35
  188. package/{src → ts}/ansi/adjustCodes.ts +1 -1
  189. package/{src → ts}/ansi/ansiFormatter.ts +5 -5
  190. package/{src → ts}/ansi/constants.ts +0 -0
  191. package/{src → ts}/ansi/createColorCodes.ts +2 -3
  192. package/ts/ansi/index.ts +3 -0
  193. package/{src → ts}/ansi/isColor.ts +1 -1
  194. package/{src → ts}/ansi/wrapAnsi.ts +0 -0
  195. package/{src → ts}/createColorLogReporter.browser.ts +2 -2
  196. package/{src → ts}/createColorLogReporter.ts +2 -2
  197. package/{src → ts}/css/colors.ts +0 -0
  198. package/{src → ts}/css/cssFormatter.ts +1 -1
  199. package/ts/css/index.ts +1 -0
  200. package/ts/index.ts +3 -0
  201. package/ts/utils/index.ts +1 -0
  202. package/{src → ts}/utils/supportColor.browser.ts +6 -3
  203. package/{src → ts}/utils/supportColor.ts +0 -0
  204. package/CHANGELOG.md +0 -631
  205. package/dist/standard-log-color.js +0 -2
  206. package/dist/standard-log-color.js.gz +0 -0
  207. package/dist/standard-log-color.js.map +0 -1
  208. package/dist/standard-log-color.js.map.gz +0 -0
  209. package/lib/ansi/adjustCodes.d.ts.map +0 -1
  210. package/lib/ansi/adjustCodes.js +0 -16
  211. package/lib/ansi/adjustCodes.js.map +0 -1
  212. package/lib/ansi/ansiFormatter.d.ts.map +0 -1
  213. package/lib/ansi/ansiFormatter.js +0 -39
  214. package/lib/ansi/ansiFormatter.js.map +0 -1
  215. package/lib/ansi/constants.d.ts.map +0 -1
  216. package/lib/ansi/constants.js.map +0 -1
  217. package/lib/ansi/createColorCodes.d.ts.map +0 -1
  218. package/lib/ansi/createColorCodes.js +0 -41
  219. package/lib/ansi/createColorCodes.js.map +0 -1
  220. package/lib/ansi/index.d.ts +0 -4
  221. package/lib/ansi/index.d.ts.map +0 -1
  222. package/lib/ansi/index.js +0 -7
  223. package/lib/ansi/index.js.map +0 -1
  224. package/lib/ansi/isColor.d.ts.map +0 -1
  225. package/lib/ansi/isColor.js +0 -13
  226. package/lib/ansi/isColor.js.map +0 -1
  227. package/lib/ansi/wrapAnsi.d.ts.map +0 -1
  228. package/lib/ansi/wrapAnsi.js.map +0 -1
  229. package/lib/createColorLogReporter.browser.d.ts.map +0 -1
  230. package/lib/createColorLogReporter.browser.js.map +0 -1
  231. package/lib/createColorLogReporter.d.ts.map +0 -1
  232. package/lib/createColorLogReporter.js.map +0 -1
  233. package/lib/css/colors.d.ts.map +0 -1
  234. package/lib/css/colors.js.map +0 -1
  235. package/lib/css/cssFormatter.d.ts.map +0 -1
  236. package/lib/css/cssFormatter.js.map +0 -1
  237. package/lib/css/index.d.ts +0 -2
  238. package/lib/css/index.d.ts.map +0 -1
  239. package/lib/css/index.js +0 -5
  240. package/lib/css/index.js.map +0 -1
  241. package/lib/index.d.ts +0 -4
  242. package/lib/index.d.ts.map +0 -1
  243. package/lib/index.js +0 -7
  244. package/lib/index.js.map +0 -1
  245. package/lib/utils/index.d.ts +0 -2
  246. package/lib/utils/index.d.ts.map +0 -1
  247. package/lib/utils/index.js +0 -5
  248. package/lib/utils/index.js.map +0 -1
  249. package/lib/utils/supportColor.browser.d.ts.map +0 -1
  250. package/lib/utils/supportColor.browser.js.map +0 -1
  251. package/lib/utils/supportColor.d.ts.map +0 -1
  252. package/lib/utils/supportColor.js.map +0 -1
  253. package/libm/ansi/adjustCodes.d.ts.map +0 -1
  254. package/libm/ansi/adjustCodes.js.map +0 -1
  255. package/libm/ansi/ansiFormatter.d.ts.map +0 -1
  256. package/libm/ansi/ansiFormatter.js.map +0 -1
  257. package/libm/ansi/constants.d.ts.map +0 -1
  258. package/libm/ansi/constants.js.map +0 -1
  259. package/libm/ansi/createColorCodes.d.ts.map +0 -1
  260. package/libm/ansi/createColorCodes.js.map +0 -1
  261. package/libm/ansi/index.d.ts +0 -4
  262. package/libm/ansi/index.d.ts.map +0 -1
  263. package/libm/ansi/index.js +0 -4
  264. package/libm/ansi/index.js.map +0 -1
  265. package/libm/ansi/isColor.d.ts.map +0 -1
  266. package/libm/ansi/isColor.js.map +0 -1
  267. package/libm/ansi/wrapAnsi.d.ts.map +0 -1
  268. package/libm/ansi/wrapAnsi.js.map +0 -1
  269. package/libm/createColorLogReporter.browser.d.ts.map +0 -1
  270. package/libm/createColorLogReporter.browser.js.map +0 -1
  271. package/libm/createColorLogReporter.d.ts.map +0 -1
  272. package/libm/createColorLogReporter.js.map +0 -1
  273. package/libm/css/colors.d.ts.map +0 -1
  274. package/libm/css/colors.js.map +0 -1
  275. package/libm/css/cssFormatter.d.ts.map +0 -1
  276. package/libm/css/cssFormatter.js.map +0 -1
  277. package/libm/css/index.d.ts +0 -2
  278. package/libm/css/index.d.ts.map +0 -1
  279. package/libm/css/index.js +0 -2
  280. package/libm/css/index.js.map +0 -1
  281. package/libm/index.d.ts +0 -4
  282. package/libm/index.d.ts.map +0 -1
  283. package/libm/index.js +0 -4
  284. package/libm/index.js.map +0 -1
  285. package/libm/utils/index.d.ts +0 -2
  286. package/libm/utils/index.d.ts.map +0 -1
  287. package/libm/utils/index.js +0 -2
  288. package/libm/utils/index.js.map +0 -1
  289. package/libm/utils/supportColor.browser.d.ts.map +0 -1
  290. package/libm/utils/supportColor.browser.js.map +0 -1
  291. package/libm/utils/supportColor.d.ts.map +0 -1
  292. package/libm/utils/supportColor.js.map +0 -1
  293. package/src/ansi/adjustCodes.spec.ts +0 -12
  294. package/src/ansi/createColorCodes.spec.ts +0 -35
  295. package/src/ansi/index.ts +0 -3
  296. package/src/ansi/isColor.spec.ts +0 -18
  297. package/src/ansi/wrapAnsi.spec.ts +0 -7
  298. package/src/createColorLogReporter.spec.ts +0 -193
  299. package/src/css/cssFormatter.spec.ts +0 -30
  300. package/src/css/index.ts +0 -1
  301. package/src/index.ts +0 -3
  302. package/src/utils/index.ts +0 -1
@@ -0,0 +1,178 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var standard_log_1 = require("standard-log");
4
+ var index_js_1 = require("./index.js");
5
+ beforeAll(function () { return (0, standard_log_1.configForTest)(); });
6
+ describe('rendering tests', function () {
7
+ test('default to color rendering', function () {
8
+ var reporter = (0, index_js_1.createColorLogReporter)();
9
+ ['emergency', 'info', 'warn', 'debug'].forEach(function (level) {
10
+ reporter.write({ id: 'color', level: standard_log_1.logLevels[level], args: ['hello', 'world'], timestamp: new Date() });
11
+ });
12
+ });
13
+ test('plain rendering', function () {
14
+ var reporter = (0, index_js_1.createColorLogReporter)({ formatter: standard_log_1.plainLogFormatter });
15
+ ['emergency', 'info', 'warn', 'debug'].forEach(function (level) {
16
+ reporter.write({ id: 'plain', level: standard_log_1.logLevels[level], args: ['hello', 'world'], timestamp: new Date() });
17
+ });
18
+ });
19
+ test('different timestamp settings', function () {
20
+ var reporter = (0, index_js_1.createColorLogReporter)();
21
+ ['none', 'iso', 'elapsed'].forEach(function (timestamp) {
22
+ reporter.formatter = (0, index_js_1.createAnsiFormatter)({ timestamp: timestamp });
23
+ reporter.write({ id: timestamp, level: standard_log_1.logLevels.info, args: ['hello', 'world'], timestamp: new Date() });
24
+ });
25
+ });
26
+ test('different timestamp settings for css', function () {
27
+ var reporter = (0, index_js_1.createColorLogReporter)();
28
+ ['none', 'iso', 'elapsed'].forEach(function (timestamp) {
29
+ reporter.formatter = (0, index_js_1.createCssFormatter)({ timestamp: timestamp });
30
+ reporter.write({ id: timestamp, level: standard_log_1.logLevels.info, args: ['hello', 'world'], timestamp: new Date() });
31
+ });
32
+ });
33
+ });
34
+ describe('id', function () {
35
+ test('default is "console"', function () {
36
+ var reporter = (0, index_js_1.createColorLogReporter)();
37
+ expect(reporter.id).toBe('console');
38
+ });
39
+ test('can be overridden', function () {
40
+ var reporter = (0, index_js_1.createColorLogReporter)({ id: 'neo-console' });
41
+ expect(reporter.id).toBe('neo-console');
42
+ });
43
+ });
44
+ describe('log level', function () {
45
+ test('error, alert, critical and emergency logs are written to console.error', function () {
46
+ var id = 'log';
47
+ var reporter = (0, index_js_1.createColorLogReporter)();
48
+ var fakeConsole = reporter.console = createFakeConsole();
49
+ reporter.write({ id: id, level: standard_log_1.logLevels.emergency, args: ['emergency'], timestamp: new Date() });
50
+ reporter.write({ id: id, level: standard_log_1.logLevels.critical, args: ['critical'], timestamp: new Date() });
51
+ reporter.write({ id: id, level: standard_log_1.logLevels.alert, args: ['alert'], timestamp: new Date() });
52
+ reporter.write({ id: id, level: standard_log_1.logLevels.error, args: ['error'], timestamp: new Date() });
53
+ expect(fakeConsole.errors.length).toBe(4);
54
+ });
55
+ test('warn logs are written to console.warn', function () {
56
+ var id = 'log';
57
+ var reporter = (0, index_js_1.createColorLogReporter)();
58
+ var fakeConsole = reporter.console = createFakeConsole();
59
+ reporter.write({ id: id, level: standard_log_1.logLevels.warn, args: ['warn'], timestamp: new Date() });
60
+ expect(fakeConsole.warns.length).toBe(1);
61
+ });
62
+ test('notice and info logs are written to console.info', function () {
63
+ var id = 'log';
64
+ var reporter = (0, index_js_1.createColorLogReporter)();
65
+ var fakeConsole = reporter.console = createFakeConsole();
66
+ reporter.write({ id: id, level: standard_log_1.logLevels.notice, args: ['notice'], timestamp: new Date() });
67
+ reporter.write({ id: id, level: standard_log_1.logLevels.info, args: ['info'], timestamp: new Date() });
68
+ expect(fakeConsole.infos.length).toBe(2);
69
+ });
70
+ test('debug, trace, and planck logs are written to console.debug', function () {
71
+ var id = 'log';
72
+ var reporter = (0, index_js_1.createColorLogReporter)();
73
+ var fakeConsole = reporter.console = createFakeConsole();
74
+ reporter.write({ id: id, level: standard_log_1.logLevels.debug, args: ['debug'], timestamp: new Date() });
75
+ reporter.write({ id: id, level: standard_log_1.logLevels.trace, args: ['trace'], timestamp: new Date() });
76
+ reporter.write({ id: id, level: standard_log_1.logLevels.planck, args: ['planck'], timestamp: new Date() });
77
+ expect(fakeConsole.debugs.length).toBe(3);
78
+ });
79
+ });
80
+ describe('custom logs', function () {
81
+ afterEach(function () { return (0, standard_log_1.clearCustomLogLevel)(); });
82
+ test('are written according to their log level value', function () {
83
+ (0, standard_log_1.addCustomLogLevel)('high', 50);
84
+ (0, standard_log_1.addCustomLogLevel)('important', 450);
85
+ (0, standard_log_1.addCustomLogLevel)('interest', 650);
86
+ (0, standard_log_1.addCustomLogLevel)('silly', 1000);
87
+ var id = 'log';
88
+ var reporter = (0, index_js_1.createColorLogReporter)();
89
+ var fakeConsole = reporter.console = createFakeConsole();
90
+ reporter.write({ id: id, level: 50, args: ['a'], timestamp: new Date() });
91
+ reporter.write({ id: id, level: 450, args: ['b'], timestamp: new Date() });
92
+ reporter.write({ id: id, level: 650, args: ['c'], timestamp: new Date() });
93
+ reporter.write({ id: id, level: 1000, args: ['d'], timestamp: new Date() });
94
+ expect(fakeConsole.errors.length).toBe(1);
95
+ expect(fakeConsole.warns.length).toBe(1);
96
+ expect(fakeConsole.infos.length).toBe(1);
97
+ expect(fakeConsole.debugs.length).toBe(1);
98
+ });
99
+ });
100
+ var idFormatter = function (entry) { return [entry.id]; };
101
+ describe('formatter', function () {
102
+ test('use specific formatter', function () {
103
+ var id = 'id-only';
104
+ var reporter = (0, index_js_1.createColorLogReporter)({ formatter: idFormatter });
105
+ var fakeConsole = reporter.console = createFakeConsole();
106
+ reporter.write({ id: id, level: standard_log_1.logLevels.emergency, args: ['emergency'], timestamp: new Date() });
107
+ expect(fakeConsole.errors).toEqual([['id-only']]);
108
+ });
109
+ test('formatter can be changed afterward', function () {
110
+ var id = 'id-only';
111
+ var reporter = (0, index_js_1.createColorLogReporter)();
112
+ reporter.formatter = idFormatter;
113
+ var fakeConsole = reporter.console = createFakeConsole();
114
+ reporter.write({ id: id, level: standard_log_1.logLevels.emergency, args: ['emergency'], timestamp: new Date() });
115
+ expect(fakeConsole.errors).toEqual([['id-only']]);
116
+ });
117
+ });
118
+ describe('filter', function () {
119
+ var filter = function (entry) { return entry.id !== 'secret'; };
120
+ test('use specific filter', function () {
121
+ var reporter = (0, index_js_1.createColorLogReporter)({ formatter: idFormatter, filter: filter });
122
+ var fakeConsole = reporter.console = createFakeConsole();
123
+ reporter.write({ id: 'normal', level: standard_log_1.logLevels.emergency, args: ['emergency'], timestamp: new Date() });
124
+ reporter.write({ id: 'secret', level: standard_log_1.logLevels.emergency, args: ['emergency'], timestamp: new Date() });
125
+ expect(fakeConsole.errors).toEqual([['normal']]);
126
+ });
127
+ });
128
+ test('write log entry with multiple arguments', function () {
129
+ var id = 'log';
130
+ var reporter = (0, index_js_1.createColorLogReporter)({ formatter: standard_log_1.plainLogFormatter });
131
+ var fakeConsole = reporter.console = createFakeConsole();
132
+ var entry = { id: id, level: standard_log_1.logLevels.info, args: ['a', 'b', 'c'], timestamp: new Date() };
133
+ reporter.write(entry);
134
+ expect(fakeConsole.infos).toEqual([
135
+ [entry.timestamp.toISOString(), 'log', '(INFO)', 'a', 'b', 'c']
136
+ ]);
137
+ });
138
+ function createFakeConsole() {
139
+ var errors = [];
140
+ var infos = [];
141
+ var warns = [];
142
+ var debugs = [];
143
+ return {
144
+ errors: errors,
145
+ infos: infos,
146
+ warns: warns,
147
+ debugs: debugs,
148
+ error: function () {
149
+ var args = [];
150
+ for (var _i = 0; _i < arguments.length; _i++) {
151
+ args[_i] = arguments[_i];
152
+ }
153
+ errors.push(args);
154
+ },
155
+ info: function () {
156
+ var args = [];
157
+ for (var _i = 0; _i < arguments.length; _i++) {
158
+ args[_i] = arguments[_i];
159
+ }
160
+ infos.push(args);
161
+ },
162
+ warn: function () {
163
+ var args = [];
164
+ for (var _i = 0; _i < arguments.length; _i++) {
165
+ args[_i] = arguments[_i];
166
+ }
167
+ warns.push(args);
168
+ },
169
+ debug: function () {
170
+ var args = [];
171
+ for (var _i = 0; _i < arguments.length; _i++) {
172
+ args[_i] = arguments[_i];
173
+ }
174
+ debugs.push(args);
175
+ }
176
+ };
177
+ }
178
+ //# sourceMappingURL=createColorLogReporter.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createColorLogReporter.spec.js","sourceRoot":"","sources":["../ts/createColorLogReporter.spec.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n addCustomLogLevel, clearCustomLogLevel, configForTest,\n ConsoleLogFormatter, LogFilter, logLevels, plainLogFormatter\n} from 'standard-log'\nimport { createAnsiFormatter, createColorLogReporter, createCssFormatter } from './index.js'\n\nbeforeAll(() => configForTest())\n\ndescribe('rendering tests', () => {\n test('default to color rendering', () => {\n const reporter = createColorLogReporter();\n ['emergency', 'info', 'warn', 'debug'].forEach(level => {\n reporter.write({ id: 'color', level: (logLevels as any)[level], args: ['hello', 'world'], timestamp: new Date() })\n })\n })\n test('plain rendering', () => {\n const reporter = createColorLogReporter({ formatter: plainLogFormatter });\n ['emergency', 'info', 'warn', 'debug'].forEach(level => {\n reporter.write({ id: 'plain', level: (logLevels as any)[level], args: ['hello', 'world'], timestamp: new Date() })\n })\n })\n\n test('different timestamp settings', () => {\n const reporter = createColorLogReporter();\n\n ['none', 'iso', 'elapsed'].forEach((timestamp: any) => {\n reporter.formatter = createAnsiFormatter({ timestamp })\n reporter.write({ id: timestamp, level: logLevels.info, args: ['hello', 'world'], timestamp: new Date() })\n })\n })\n test('different timestamp settings for css', () => {\n const reporter = createColorLogReporter();\n\n ['none', 'iso', 'elapsed'].forEach((timestamp: any) => {\n reporter.formatter = createCssFormatter({ timestamp })\n reporter.write({ id: timestamp, level: logLevels.info, args: ['hello', 'world'], timestamp: new Date() })\n })\n })\n})\n\ndescribe('id', () => {\n test('default is \"console\"', () => {\n const reporter = createColorLogReporter()\n expect(reporter.id).toBe('console')\n })\n test('can be overridden', () => {\n const reporter = createColorLogReporter({ id: 'neo-console' })\n expect(reporter.id).toBe('neo-console')\n })\n})\n\ndescribe('log level', () => {\n test('error, alert, critical and emergency logs are written to console.error', () => {\n const id = 'log'\n const reporter = createColorLogReporter()\n const fakeConsole = reporter.console = createFakeConsole()\n\n reporter.write({ id, level: logLevels.emergency, args: ['emergency'], timestamp: new Date() })\n reporter.write({ id, level: logLevels.critical, args: ['critical'], timestamp: new Date() })\n reporter.write({ id, level: logLevels.alert, args: ['alert'], timestamp: new Date() })\n reporter.write({ id, level: logLevels.error, args: ['error'], timestamp: new Date() })\n\n expect(fakeConsole.errors.length).toBe(4)\n })\n\n test('warn logs are written to console.warn', () => {\n const id = 'log'\n const reporter = createColorLogReporter()\n\n const fakeConsole = reporter.console = createFakeConsole()\n\n reporter.write({ id, level: logLevels.warn, args: ['warn'], timestamp: new Date() })\n\n expect(fakeConsole.warns.length).toBe(1)\n })\n\n test('notice and info logs are written to console.info', () => {\n const id = 'log'\n const reporter = createColorLogReporter()\n\n const fakeConsole = reporter.console = createFakeConsole()\n\n reporter.write({ id, level: logLevels.notice, args: ['notice'], timestamp: new Date() })\n reporter.write({ id, level: logLevels.info, args: ['info'], timestamp: new Date() })\n\n expect(fakeConsole.infos.length).toBe(2)\n })\n\n\n test('debug, trace, and planck logs are written to console.debug', () => {\n const id = 'log'\n const reporter = createColorLogReporter()\n const fakeConsole = reporter.console = createFakeConsole()\n\n reporter.write({ id, level: logLevels.debug, args: ['debug'], timestamp: new Date() })\n reporter.write({ id, level: logLevels.trace, args: ['trace'], timestamp: new Date() })\n reporter.write({ id, level: logLevels.planck, args: ['planck'], timestamp: new Date() })\n\n expect(fakeConsole.debugs.length).toBe(3)\n })\n})\n\ndescribe('custom logs', () => {\n afterEach(() => clearCustomLogLevel())\n\n test('are written according to their log level value', () => {\n addCustomLogLevel('high', 50)\n addCustomLogLevel('important', 450)\n addCustomLogLevel('interest', 650)\n addCustomLogLevel('silly', 1000)\n\n const id = 'log'\n const reporter = createColorLogReporter()\n const fakeConsole = reporter.console = createFakeConsole()\n\n reporter.write({ id, level: 50, args: ['a'], timestamp: new Date() })\n reporter.write({ id, level: 450, args: ['b'], timestamp: new Date() })\n reporter.write({ id, level: 650, args: ['c'], timestamp: new Date() })\n reporter.write({ id, level: 1000, args: ['d'], timestamp: new Date() })\n\n expect(fakeConsole.errors.length).toBe(1)\n expect(fakeConsole.warns.length).toBe(1)\n expect(fakeConsole.infos.length).toBe(1)\n expect(fakeConsole.debugs.length).toBe(1)\n })\n})\n\nconst idFormatter: ConsoleLogFormatter = (entry) => [entry.id]\n\ndescribe('formatter', () => {\n test('use specific formatter', () => {\n const id = 'id-only'\n const reporter = createColorLogReporter({ formatter: idFormatter })\n const fakeConsole = reporter.console = createFakeConsole()\n\n reporter.write({ id, level: logLevels.emergency, args: ['emergency'], timestamp: new Date() })\n\n expect(fakeConsole.errors).toEqual([['id-only']])\n })\n\n test('formatter can be changed afterward', () => {\n const id = 'id-only'\n const reporter = createColorLogReporter()\n reporter.formatter = idFormatter\n const fakeConsole = reporter.console = createFakeConsole()\n\n reporter.write({ id, level: logLevels.emergency, args: ['emergency'], timestamp: new Date() })\n\n expect(fakeConsole.errors).toEqual([['id-only']])\n })\n})\n\ndescribe('filter', () => {\n const filter: LogFilter = (entry) => entry.id !== 'secret'\n test('use specific filter', () => {\n const reporter = createColorLogReporter({ formatter: idFormatter, filter })\n const fakeConsole = reporter.console = createFakeConsole()\n\n reporter.write({ id: 'normal', level: logLevels.emergency, args: ['emergency'], timestamp: new Date() })\n reporter.write({ id: 'secret', level: logLevels.emergency, args: ['emergency'], timestamp: new Date() })\n\n expect(fakeConsole.errors).toEqual([['normal']])\n })\n})\n\ntest('write log entry with multiple arguments', () => {\n const id = 'log'\n const reporter = createColorLogReporter({ formatter: plainLogFormatter })\n const fakeConsole = reporter.console = createFakeConsole()\n\n const entry = { id, level: logLevels.info, args: ['a', 'b', 'c'], timestamp: new Date() }\n\n reporter.write(entry)\n\n expect(fakeConsole.infos).toEqual([\n [entry.timestamp.toISOString(), 'log', '(INFO)', 'a', 'b', 'c']\n ])\n})\n\nfunction createFakeConsole() {\n const errors: any[] = []\n const infos: any[] = []\n const warns: any[] = []\n const debugs: any[] = []\n return {\n errors,\n infos,\n warns,\n debugs,\n error(...args: any[]) { errors.push(args) },\n info(...args: any[]) { infos.push(args) },\n warn(...args: any[]) { warns.push(args) },\n debug(...args: any[]) { debugs.push(args) }\n }\n}\n"]}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colors.d.ts","sourceRoot":"","sources":["../../ts/css/colors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAA;AAEpC,eAAO,MAAM,OAAO,EAAE,QAUrB,CAAA"}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"colors.js","sourceRoot":"","sources":["../../ts/css/colors.ts"],"names":[],"mappings":";;;AAEa,QAAA,OAAO,GAAa;IAC/B,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE;IAC/B,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE;IAClC,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE;IAClC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;IACpC,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE;IACnC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE;IACpC,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE;IACnC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE;IACpC,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,GAAG,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE;CAC/B,CAAA","sourcesContent":["import { ColorMap } from 'color-map'\n\nexport const rainbow: ColorMap = [\n { index: 0, rgb: [150, 0, 90] },\n { index: 0.125, rgb: [0, 0, 200] },\n { index: 0.25, rgb: [0, 25, 255] },\n { index: 0.375, rgb: [0, 152, 255] },\n { index: 0.5, rgb: [44, 255, 150] },\n { index: 0.625, rgb: [151, 255, 0] },\n { index: 0.75, rgb: [255, 234, 0] },\n { index: 0.875, rgb: [255, 111, 0] },\n { index: 1, rgb: [255, 0, 0] }\n]\n"]}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cssFormatter.d.ts","sourceRoot":"","sources":["../../ts/css/cssFormatter.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,QAAQ,EAAE,eAAe,EAAE,MAAM,cAAc,CAAA;AAKlF,oBAAY,mBAAmB,GAAG;IAChC;;;;OAIG;IACH,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,eAAe,CAAA;CAC3B,CAAA;AAED,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,mBAAmB,CAAC,WAQnC,QAAQ,WA+B7C"}
@@ -1,35 +1,43 @@
1
1
  "use strict";
2
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
3
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
4
+ if (ar || !(i in from)) {
5
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
6
+ ar[i] = from[i];
7
+ }
8
+ }
9
+ return to.concat(ar || Array.prototype.slice.call(from));
10
+ };
2
11
  Object.defineProperty(exports, "__esModule", { value: true });
3
12
  exports.createCssFormatter = void 0;
4
- var tslib_1 = require("tslib");
5
13
  var standard_log_1 = require("standard-log");
6
14
  var color_map_1 = require("color-map");
7
15
  var unpartial_1 = require("unpartial");
8
- var colors_1 = require("./colors");
16
+ var colors_js_1 = require("./colors.js");
9
17
  function createCssFormatter(options) {
10
- var _a = unpartial_1.required({ maxColor: 20, timestamp: 'none' }, options), maxColor = _a.maxColor, timestamp = _a.timestamp;
18
+ var _a = (0, unpartial_1.required)({ maxColor: 20, timestamp: 'none' }, options), maxColor = _a.maxColor, timestamp = _a.timestamp;
11
19
  var loggerMap = {};
12
- var colorMap = color_map_1.createColorsFromMap(colors_1.rainbow, maxColor);
20
+ var colorMap = (0, color_map_1.createColorsFromMap)(colors_js_1.rainbow, maxColor);
13
21
  var count = 0;
14
- var timestampFormatter = standard_log_1.createTimestampFormatter(timestamp);
22
+ var timestampFormatter = (0, standard_log_1.createTimestampFormatter)(timestamp);
15
23
  return function cssFormatter(entry) {
16
- var idStr = "%c " + entry.id + " ";
24
+ var idStr = "%c ".concat(entry.id, " ");
17
25
  var args;
18
26
  if (firstArgIsColorTemplate(entry.args)) {
19
27
  idStr += entry.args[0];
20
- args = tslib_1.__spreadArray([], entry.args.slice(1));
28
+ args = __spreadArray([], entry.args.slice(1), true);
21
29
  }
22
30
  else {
23
- args = tslib_1.__spreadArray([], entry.args);
31
+ args = __spreadArray([], entry.args, true);
24
32
  }
25
33
  var rgb = getRgb(entry.id);
26
- var background = color_map_1.rgbHex(rgb);
27
- var border = color_map_1.rgbHex(rgb.map(function (x) { return Math.max(0, x - 32); }));
34
+ var background = (0, color_map_1.rgbHex)(rgb);
35
+ var border = (0, color_map_1.rgbHex)(rgb.map(function (x) { return Math.max(0, x - 32); }));
28
36
  var color = getForegroundColor(rgb);
29
- var result = tslib_1.__spreadArray([
37
+ var result = __spreadArray([
30
38
  idStr,
31
- "padding: 2px; margin: 2px; line-height: 1.8em;background: " + background + ";border: 1px solid " + border + ";color: " + color + ";"
32
- ], args);
39
+ "padding: 2px; margin: 2px; line-height: 1.8em;background: ".concat(background, ";border: 1px solid ").concat(border, ";color: ").concat(color, ";")
40
+ ], args, true);
33
41
  var t = timestampFormatter(entry.timestamp);
34
42
  if (t !== undefined)
35
43
  result.push(t);
@@ -79,6 +87,6 @@ function getComplementary(rgb) {
79
87
  var r = 255 - rgb[0];
80
88
  var g = 255 - rgb[1];
81
89
  var b = 255 - rgb[2];
82
- return color_map_1.rgbHex([r, g, b]);
90
+ return (0, color_map_1.rgbHex)([r, g, b]);
83
91
  }
84
92
  //# sourceMappingURL=cssFormatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cssFormatter.js","sourceRoot":"","sources":["../../ts/css/cssFormatter.ts"],"names":[],"mappings":"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","sourcesContent":["import { createTimestampFormatter, LogEntry, TimestampFormat } from 'standard-log'\nimport { createColorsFromMap, RGB, RGBA, rgbHex } from 'color-map'\nimport { required } from 'unpartial'\nimport { rainbow } from './colors.js'\n\nexport type CssFormatterOptions = {\n /**\n * How many colors available.\n * Recommend at least 10.\n * Default to 20.\n */\n maxColor: number,\n timestamp: TimestampFormat\n}\n\nexport function createCssFormatter(options?: Partial<CssFormatterOptions>) {\n const { maxColor, timestamp } = required({ maxColor: 20, timestamp: 'none' }, options)\n const loggerMap: Record<string, RGB> = {}\n const colorMap: RGBA[] = createColorsFromMap(rainbow, maxColor)\n let count = 0\n\n const timestampFormatter = createTimestampFormatter(timestamp)\n\n return function cssFormatter(entry: LogEntry) {\n let idStr = `%c ${entry.id} `\n let args: any[]\n if (firstArgIsColorTemplate(entry.args)) {\n idStr += entry.args[0]\n args = [...entry.args.slice(1)]\n }\n else {\n args = [...entry.args]\n }\n const rgb = getRgb(entry.id)\n const background = rgbHex(rgb)\n const border = rgbHex(rgb.map(x => Math.max(0, x - 32)) as RGB)\n const color = getForegroundColor(rgb)\n const result = [\n idStr,\n `padding: 2px; margin: 2px; line-height: 1.8em;background: ${background};border: 1px solid ${border};color: ${color};`,\n ...args\n ]\n const t = timestampFormatter(entry.timestamp)\n if (t !== undefined) result.push(t)\n return result\n }\n\n function firstArgIsColorTemplate(args: any[]) {\n return typeof args[0] === 'string' && args[0].indexOf('%c') !== -1\n }\n\n function getRgb(id: string) {\n return loggerMap[id] = loggerMap[id] || colorMap[count++ & maxColor]\n }\n}\n\nconst gammaMap = {\n rc: 0.2126,\n gc: 0.7152,\n bc: 0.0722,\n lowc: 1 / 12.92\n}\n\nfunction getForegroundColor(background: RGB) {\n // Setting the contrasting color as default\n let color = getComplementary(background)\n const bgLuminance = getRelativeLuminance(background)\n const fgLuminance = (color === '#ffffff') ?\n getRelativeLuminance([255, 255, 255]) :\n getRelativeLuminance([0, 0, 0])\n const relativeL = bgLuminance > fgLuminance ? (bgLuminance + 0.05) / (fgLuminance + 0.05) : (fgLuminance + 0.05) / (bgLuminance + 0.05)\n\n // Can set the contrast ratio based on text size later.\n if (relativeL < 4.5) {\n const avgLuminance = background[0] * gammaMap['rc'] + background[1] * gammaMap['gc'] + background[2] * gammaMap['bc']\n\n // If the relative contrast is lower than standard, we switch color to black/white\n color = (avgLuminance < 220) ? '#ffffff' : '#000000'\n }\n return color\n}\n\nfunction getRelativeLuminance(rgb: RGB) {\n // https://www.w3.org/TR/WCAG/#relativeluminancedef\n const rsrgb = rgb[0] / 255\n const gsrgb = rgb[1] / 255\n const bsrgb = rgb[2] / 255\n\n const r = rsrgb <= 0.03928 ? rsrgb * gammaMap['lowc'] : Math.pow((rsrgb + 0.055) / 1.055, 2.4)\n const g = gsrgb <= 0.03928 ? gsrgb * gammaMap['lowc'] : Math.pow((gsrgb + 0.055) / 1.055, 2.4)\n const b = bsrgb <= 0.03928 ? bsrgb * gammaMap['lowc'] : Math.pow((bsrgb + 0.055) / 1.055, 2.4)\n\n return r * gammaMap['rc'] + g * gammaMap['gc'] + b * gammaMap['bc']\n}\n\nfunction getComplementary(rgb: RGB) {\n const r = 255 - rgb[0]\n const g = 255 - rgb[1]\n const b = 255 - rgb[2]\n return rgbHex([r, g, b])\n}\n"]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=cssFormatter.spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cssFormatter.spec.d.ts","sourceRoot":"","sources":["../../ts/css/cssFormatter.spec.ts"],"names":[],"mappings":""}
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ var standard_log_1 = require("standard-log");
7
+ var assertron_1 = __importDefault(require("assertron"));
8
+ var satisfier_1 = require("satisfier");
9
+ var cssFormatter_js_1 = require("./cssFormatter.js");
10
+ var cssFormatter = (0, cssFormatter_js_1.createCssFormatter)();
11
+ test('same logger will get the same color', function () {
12
+ var a = cssFormatter({ id: 'log', level: standard_log_1.logLevels.critical, args: ['a'], timestamp: new Date() });
13
+ var b = cssFormatter({ id: 'log', level: standard_log_1.logLevels.critical, args: ['a'], timestamp: new Date() });
14
+ expect(a[1]).toEqual('padding: 2px; margin: 2px; line-height: 1.8em;background: #96005a;border: 1px solid #76003a;color: #ffffff;');
15
+ expect(a[1]).toEqual(b[1]);
16
+ });
17
+ test('support color template', function () {
18
+ var actual = cssFormatter({
19
+ id: 'color-template',
20
+ level: standard_log_1.logLevels.critical,
21
+ args: ['%c SomeColored Text %c AnotherColor', 'color:blue;', 'color:red;', 'not colored'],
22
+ timestamp: new Date()
23
+ });
24
+ assertron_1.default.satisfies(actual, [
25
+ '%c color-template %c SomeColored Text %c AnotherColor',
26
+ 'padding: 2px; margin: 2px; line-height: 1.8em;background: #96005a;border: 1px solid #76003a;color: #ffffff;',
27
+ 'color:blue;',
28
+ 'color:red;',
29
+ 'not colored',
30
+ satisfier_1.anything
31
+ ]);
32
+ });
33
+ //# sourceMappingURL=cssFormatter.spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cssFormatter.spec.js","sourceRoot":"","sources":["../../ts/css/cssFormatter.spec.ts"],"names":[],"mappings":";;;;;AAAA,6CAAwC;AACxC,wDAAyB;AACzB,uCAAoC;AACpC,qDAAsD;AAEtD,IAAM,YAAY,GAAG,IAAA,oCAAkB,GAAE,CAAA;AAEzC,IAAI,CAAC,qCAAqC,EAAE;IAC1C,IAAM,CAAC,GAAG,YAAY,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAA;IACpG,IAAM,CAAC,GAAG,YAAY,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,wBAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,CAAC,CAAA;IACpG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,6GAA6G,CAAC,CAAA;IACnI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;AAC5B,CAAC,CAAC,CAAA;AAEF,IAAI,CAAC,wBAAwB,EAAE;IAC7B,IAAM,MAAM,GAAG,YAAY,CAAC;QAC1B,EAAE,EAAE,gBAAgB;QACpB,KAAK,EAAE,wBAAS,CAAC,QAAQ;QACzB,IAAI,EAAE,CAAC,qCAAqC,EAAE,aAAa,EAAE,YAAY,EAAE,aAAa,CAAC;QACzF,SAAS,EAAE,IAAI,IAAI,EAAE;KACtB,CAAC,CAAA;IACF,mBAAC,CAAC,SAAS,CAAC,MAAM,EAAE;QAClB,uDAAuD;QACvD,6GAA6G;QAC7G,aAAa;QACb,YAAY;QACZ,aAAa;QACb,oBAAQ;KACT,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA","sourcesContent":["import { logLevels } from 'standard-log'\nimport a from 'assertron'\nimport { anything } from 'satisfier'\nimport { createCssFormatter } from './cssFormatter.js'\n\nconst cssFormatter = createCssFormatter()\n\ntest('same logger will get the same color', () => {\n const a = cssFormatter({ id: 'log', level: logLevels.critical, args: ['a'], timestamp: new Date() })\n const b = cssFormatter({ id: 'log', level: logLevels.critical, args: ['a'], timestamp: new Date() })\n expect(a[1]).toEqual('padding: 2px; margin: 2px; line-height: 1.8em;background: #96005a;border: 1px solid #76003a;color: #ffffff;')\n expect(a[1]).toEqual(b[1])\n})\n\ntest('support color template', () => {\n const actual = cssFormatter({\n id: 'color-template',\n level: logLevels.critical,\n args: ['%c SomeColored Text %c AnotherColor', 'color:blue;', 'color:red;', 'not colored'],\n timestamp: new Date()\n })\n a.satisfies(actual, [\n '%c color-template %c SomeColored Text %c AnotherColor',\n 'padding: 2px; margin: 2px; line-height: 1.8em;background: #96005a;border: 1px solid #76003a;color: #ffffff;',\n 'color:blue;',\n 'color:red;',\n 'not colored',\n anything\n ])\n})\n"]}
@@ -0,0 +1,2 @@
1
+ export * from './cssFormatter.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/css/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./cssFormatter.js"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/css/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAiC","sourcesContent":["export * from './cssFormatter.js'\n"]}
package/cjs/index.d.ts ADDED
@@ -0,0 +1,4 @@
1
+ export * from './ansi/index.js';
2
+ export * from './createColorLogReporter.js';
3
+ export * from './css/index.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAA;AAC/B,cAAc,6BAA6B,CAAA;AAC3C,cAAc,gBAAgB,CAAA"}
package/cjs/index.js ADDED
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./ansi/index.js"), exports);
18
+ __exportStar(require("./createColorLogReporter.js"), exports);
19
+ __exportStar(require("./css/index.js"), exports);
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../ts/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,kDAA+B;AAC/B,8DAA2C;AAC3C,iDAA8B","sourcesContent":["export * from './ansi/index.js'\nexport * from './createColorLogReporter.js'\nexport * from './css/index.js'\n"]}
@@ -0,0 +1,3 @@
1
+ {
2
+ "type": "commonjs"
3
+ }
@@ -0,0 +1,2 @@
1
+ export * from './supportColor.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,mBAAmB,CAAA"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./supportColor.js"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../ts/utils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,oDAAiC","sourcesContent":["export * from './supportColor.js'\n"]}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supportColor.browser.d.ts","sourceRoot":"","sources":["../../ts/utils/supportColor.browser.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,IAAI,OAAO,CAEtC"}
@@ -10,6 +10,7 @@ function doesBrowserSupportColor() {
10
10
  // NB: In an Electron preload script, document will be defined but not fully
11
11
  // initialized. Since we know we're in Chrome, we'll just detect this case
12
12
  // explicitly
13
+ // @ts-ignore
13
14
  if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {
14
15
  return true;
15
16
  }
@@ -19,8 +20,10 @@ function doesBrowserSupportColor() {
19
20
  }
20
21
  // Is webkit? http://stackoverflow.com/a/16459606/376773
21
22
  // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632
23
+ // @ts-ignore
22
24
  return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||
23
25
  // Is firebug? http://stackoverflow.com/a/398120/376773
26
+ // @ts-ignore
24
27
  (typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||
25
28
  // Is firefox >= v31?
26
29
  // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supportColor.browser.js","sourceRoot":"","sources":["../../ts/utils/supportColor.browser.ts"],"names":[],"mappings":";;;AAAA,SAAgB,YAAY;IAC1B,OAAO,uBAAuB,EAAE,CAAA;AAClC,CAAC;AAFD,oCAEC;AAED,uBAAuB;AACvB,SAAS,uBAAuB;IAC9B,4EAA4E;IAC5E,0EAA0E;IAC1E,aAAa;IACb,aAAa;IACb,IAAI,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,KAAK,UAAU,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;QACpH,OAAO,IAAI,CAAA;KACZ;IAED,oDAAoD;IACpD,IAAI,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,uBAAuB,CAAC,EAAE;QAC/H,OAAO,KAAK,CAAA;KACb;IAED,wDAAwD;IACxD,4FAA4F;IAC5F,aAAa;IACb,OAAO,CAAC,OAAO,QAAQ,KAAK,WAAW,IAAI,QAAQ,CAAC,eAAe,IAAI,QAAQ,CAAC,eAAe,CAAC,KAAK,IAAI,QAAQ,CAAC,eAAe,CAAC,KAAK,CAAC,gBAAgB,CAAC;QACvJ,uDAAuD;QACvD,aAAa;QACb,CAAC,OAAO,MAAM,KAAK,WAAW,IAAI,MAAM,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,IAAI,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;QACnI,qBAAqB;QACrB,8EAA8E;QAC9E,CAAC,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,QAAQ,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC;QACvJ,mEAAmE;QACnE,CAAC,OAAO,SAAS,KAAK,WAAW,IAAI,SAAS,CAAC,SAAS,IAAI,SAAS,CAAC,SAAS,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAA;AAC9H,CAAC","sourcesContent":["export function supportColor(): boolean {\n return doesBrowserSupportColor()\n}\n\n// istanbul ignore next\nfunction doesBrowserSupportColor() {\n // NB: In an Electron preload script, document will be defined but not fully\n // initialized. Since we know we're in Chrome, we'll just detect this case\n // explicitly\n // @ts-ignore\n if (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {\n return true\n }\n\n // Internet Explorer and Edge do not support colors.\n if (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)) {\n return false\n }\n\n // Is webkit? http://stackoverflow.com/a/16459606/376773\n // document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n // @ts-ignore\n return (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||\n // Is firebug? http://stackoverflow.com/a/398120/376773\n // @ts-ignore\n (typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||\n // Is firefox >= v31?\n // https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||\n // Double check webkit in userAgent just in case we are in a worker\n (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/))\n}\n"]}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supportColor.d.ts","sourceRoot":"","sources":["../../ts/utils/supportColor.ts"],"names":[],"mappings":"AAAA,wBAAgB,YAAY,IAAI,OAAO,CAEtC"}
File without changes
@@ -0,0 +1 @@
1
+ {"version":3,"file":"supportColor.js","sourceRoot":"","sources":["../../ts/utils/supportColor.ts"],"names":[],"mappings":";;;AAAA,SAAgB,YAAY;IAC1B,OAAO,IAAI,CAAA;AACb,CAAC;AAFD,oCAEC","sourcesContent":["export function supportColor(): boolean {\n return true\n}\n"]}
@@ -0,0 +1,2 @@
1
+ var StandardLogColor;!function(){"use strict";var e={458:function(e,r){var t=this&&this.__spreadArray||function(e,r,t){if(t||2===arguments.length)for(var o,n=0,i=r.length;n<i;n++)!o&&n in r||(o||(o=Array.prototype.slice.call(r,0,n)),o[n]=r[n]);return e.concat(o||Array.prototype.slice.call(r))};Object.defineProperty(r,"__esModule",{value:!0}),r.createColors=void 0,r.createColors=function(e,r,o,n){void 0===n&&(n=[4===e.length?e[3]:4===r.length?r[3]:1,4===r.length?r[3]:4===e.length?e[3]:1]);var i=t([],e,!0),a=[r[0]-e[0],r[1]-e[1],r[2]-e[2],n[1]-n[0]];3===i.length&&i.push(n[0]);for(var c=1/Math.max(o-1,1),u=[],l=0;l<o;l++){var s=[Math.round(i[0]+l*a[0]*c),Math.round(i[1]+l*a[1]*c),Math.round(i[2]+l*a[2]*c),i[3]+l*a[3]*c];u.push(s)}return u}},663:function(e,r,t){Object.defineProperty(r,"__esModule",{value:!0}),r.createColorsFromMap=void 0;var o=t(458);r.createColorsFromMap=function(e,r,t){if(r<e.length)throw new Error("Requires at least ".concat(e.length," shades."));for(var n=[],i=[],a=0;a<e.length;a++)i.push(Math.round(e[a].index*r));for(a=0;a<e.length-1;a++){var c=i[a+1]-i[a],u=e[a].rgb,l=e[a+1].rgb;n.push.apply(n,(0,o.createColors)(u,l,c,t))}return n}},485:function(e,r,t){var o=this&&this.__createBinding||(Object.create?function(e,r,t,o){void 0===o&&(o=t),Object.defineProperty(e,o,{enumerable:!0,get:function(){return r[t]}})}:function(e,r,t,o){void 0===o&&(o=t),e[o]=r[t]}),n=this&&this.__exportStar||function(e,r){for(var t in e)"default"===t||Object.prototype.hasOwnProperty.call(r,t)||o(r,e,t)};Object.defineProperty(r,"__esModule",{value:!0}),n(t(458),r),n(t(663),r),n(t(165),r),n(t(800),r),n(t(85),r)},165:function(e,r){Object.defineProperty(r,"__esModule",{value:!0})},800:function(e,r){Object.defineProperty(r,"__esModule",{value:!0}),r.rgbHex=void 0,r.rgbHex=function(e){for(var r,t="#",o=0;o<3;o++)t+=(void 0,(r=(+e[o]).toString(16)).length<2?"0"+r:r);return t}},85:function(e,r){Object.defineProperty(r,"__esModule",{value:!0}),r.rgbaString=void 0,r.rgbaString=function(e){return"rgba("+e.join(",")+")"}},678:function(e,r,t){var o=this&&this.__spreadArray||function(e,r,t){if(t||2===arguments.length)for(var o,n=0,i=r.length;n<i;n++)!o&&n in r||(o||(o=Array.prototype.slice.call(r,0,n)),o[n]=r[n]);return e.concat(o||Array.prototype.slice.call(r))};Object.defineProperty(r,"__esModule",{value:!0}),r.adjustCodes=void 0;var n=t(946);r.adjustCodes=function(e,r){if("error"===r&&e[0]===n.ANSI_RED+n.ANSI_BACKGROUND||"warn"===r&&e[0]===n.ANSI_YELLOW+n.ANSI_BACKGROUND){var t=o([],e,!0);return t[1]=n.ANSI_BLACK+n.ANSI_FOREGROUND,t}return e}},104:function(e,r,t){var o=this&&this.__spreadArray||function(e,r,t){if(t||2===arguments.length)for(var o,n=0,i=r.length;n<i;n++)!o&&n in r||(o||(o=Array.prototype.slice.call(r,0,n)),o[n]=r[n]);return e.concat(o||Array.prototype.slice.call(r))};Object.defineProperty(r,"__esModule",{value:!0}),r.createAnsiFormatter=void 0;var n=t(616),i=t(678),a=t(946),c=t(303),u=t(202);r.createAnsiFormatter=function(e){void 0===e&&(e={timestamp:"none"});var r={colorMap:(0,c.createColorCodes)(),idMap:{},counter:0},t=(0,n.createTimestampFormatter)(e.timestamp);return function(e){var c=(0,n.toConsoleMethod)(e.level),l=(0,i.adjustCodes)(function(e,r){return e.idMap[r]=e.idMap[r]||e.colorMap[e.counter++%e.colorMap.length]}(r,e.id),c),s=(0,u.wrapAnsiId)(e.id,l),d=o([],e.args,!0),f=t(e.timestamp);void 0!==f&&d.push(f);var p="error"===c?[a.ANSI_RED+a.ANSI_FOREGROUND]:"warn"===c?[a.ANSI_YELLOW+a.ANSI_FOREGROUND]:void 0;return o([s],p?d.map((function(e){return(0,u.wrapAnsi)(e,p)})):d,!0)}}},946:function(e,r){Object.defineProperty(r,"__esModule",{value:!0}),r.ANSI_BACKGROUND=r.ANSI_FOREGROUND=r.ANSI_UNDERSCORE=r.ANSI_BRIGHT=r.ANSI_WHITE=r.ANSI_CYAN=r.ANSI_MAGENTA=r.ANSI_BLUE=r.ANSI_YELLOW=r.ANSI_GREEN=r.ANSI_RED=r.ANSI_BLACK=void 0,r.ANSI_BLACK=0,r.ANSI_RED=1,r.ANSI_GREEN=2,r.ANSI_YELLOW=3,r.ANSI_BLUE=4,r.ANSI_MAGENTA=5,r.ANSI_CYAN=6,r.ANSI_WHITE=7,r.ANSI_BRIGHT=1,r.ANSI_UNDERSCORE=4,r.ANSI_FOREGROUND=30,r.ANSI_BACKGROUND=40},303:function(e,r,t){var o=this&&this.__spreadArray||function(e,r,t){if(t||2===arguments.length)for(var o,n=0,i=r.length;n<i;n++)!o&&n in r||(o||(o=Array.prototype.slice.call(r,0,n)),o[n]=r[n]);return e.concat(o||Array.prototype.slice.call(r))};Object.defineProperty(r,"__esModule",{value:!0}),r.createColorCodes=void 0;var n=t(946),i=t(237);r.createColorCodes=function(){var e=[n.ANSI_RED,n.ANSI_GREEN,n.ANSI_YELLOW,n.ANSI_BLUE,n.ANSI_MAGENTA,n.ANSI_CYAN],r=e.map((function(e){return e+n.ANSI_BACKGROUND})),t=r.map((function(e){return[e]}));e.forEach((function(e){return t.push.apply(t,r.map((function(r){return[r,e+n.ANSI_FOREGROUND]})))}));var a=(t=function(e){return e.filter((function(e){return!((0,i.isColor)(e,n.ANSI_WHITE,n.ANSI_YELLOW)||(0,i.isColor)(e,n.ANSI_MAGENTA,n.ANSI_RED)||(0,i.isColor)(e,n.ANSI_RED,n.ANSI_MAGENTA)||(0,i.isColor)(e,n.ANSI_CYAN,n.ANSI_BLUE)||(0,i.isColor)(e,n.ANSI_BLUE,n.ANSI_CYAN)||(0,i.isColor)(e,n.ANSI_CYAN,n.ANSI_GREEN)||(0,i.isColor)(e,n.ANSI_GREEN,n.ANSI_CYAN)||(0,i.isColor)(e,n.ANSI_RED,n.ANSI_BLUE)||(0,i.isColor)(e,n.ANSI_BLUE,n.ANSI_RED)||(0,i.isColor)(e,n.ANSI_BLUE,n.ANSI_MAGENTA)||(0,i.isColor)(e,n.ANSI_MAGENTA,n.ANSI_BLUE)||(0,i.isColor)(e,n.ANSI_GREEN,n.ANSI_YELLOW)||(0,i.isColor)(e,n.ANSI_YELLOW,n.ANSI_GREEN)||(0,i.isColor)(e,n.ANSI_CYAN,n.ANSI_YELLOW)||(0,i.isColor)(e,n.ANSI_YELLOW,n.ANSI_CYAN))}))}(t=function(e){return e.filter((function(e){return 1===e.length||e[0]!==e[1]+10}))}(t))).filter((function(e){return 1!==e.length})).map((function(e){return o(o([],e,!0),[n.ANSI_BRIGHT],!1)})),c=t.filter((function(e){return 1!==e.length})).map((function(e){return o(o([],e,!0),[n.ANSI_UNDERSCORE],!1)}));return o(o(o([],t,!0),a,!0),c,!0)}},109:function(e,r,t){var o=this&&this.__createBinding||(Object.create?function(e,r,t,o){void 0===o&&(o=t);var n=Object.getOwnPropertyDescriptor(r,t);n&&!("get"in n?!r.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(e,o,n)}:function(e,r,t,o){void 0===o&&(o=t),e[o]=r[t]}),n=this&&this.__exportStar||function(e,r){for(var t in e)"default"===t||Object.prototype.hasOwnProperty.call(r,t)||o(r,e,t)};Object.defineProperty(r,"__esModule",{value:!0}),n(t(104),r),n(t(946),r),n(t(202),r)},237:function(e,r,t){Object.defineProperty(r,"__esModule",{value:!0}),r.isColor=void 0;var o=t(946);r.isColor=function(e,r,t,n){if(1===e.length)return r===o.ANSI_WHITE&&e[0]===t+o.ANSI_BACKGROUND;var i=e[1]===r+o.ANSI_FOREGROUND&&e[0]===t+o.ANSI_BACKGROUND;return n?e[2]===n&&i:i}},202:function(e,r){function t(e,r){return"[".concat(r.join(";"),"m").concat(e,"")}Object.defineProperty(r,"__esModule",{value:!0}),r.wrapAnsi=r.wrapAnsiId=void 0,r.wrapAnsiId=function(e,r){return t(function(e,r){return r.some((function(e){return e>40}))?" ".concat(e," "):e}(e,r),r)},r.wrapAnsi=t},16:function(e,r,t){Object.defineProperty(r,"__esModule",{value:!0}),r.createColorLogReporter=void 0;var o=t(616),n=t(942),i=t(265),a=t(756);r.createColorLogReporter=function(e){return(0,o.createConsoleLogReporter)((0,n.required)({formatter:(0,a.supportColor)()?(0,i.createCssFormatter)():o.plainLogFormatter},e))}},137:function(e,r){Object.defineProperty(r,"__esModule",{value:!0}),r.rainbow=void 0,r.rainbow=[{index:0,rgb:[150,0,90]},{index:.125,rgb:[0,0,200]},{index:.25,rgb:[0,25,255]},{index:.375,rgb:[0,152,255]},{index:.5,rgb:[44,255,150]},{index:.625,rgb:[151,255,0]},{index:.75,rgb:[255,234,0]},{index:.875,rgb:[255,111,0]},{index:1,rgb:[255,0,0]}]},392:function(e,r,t){var o=this&&this.__spreadArray||function(e,r,t){if(t||2===arguments.length)for(var o,n=0,i=r.length;n<i;n++)!o&&n in r||(o||(o=Array.prototype.slice.call(r,0,n)),o[n]=r[n]);return e.concat(o||Array.prototype.slice.call(r))};Object.defineProperty(r,"__esModule",{value:!0}),r.createCssFormatter=void 0;var n=t(616),i=t(485),a=t(942),c=t(137);r.createCssFormatter=function(e){var r=(0,a.required)({maxColor:20,timestamp:"none"},e),t=r.maxColor,d=r.timestamp,p={},_=(0,i.createColorsFromMap)(c.rainbow,t),A=0,v=(0,n.createTimestampFormatter)(d);return function(e){var r,n="%c ".concat(e.id," ");!function(e){return"string"==typeof e[0]&&-1!==e[0].indexOf("%c")}(e.args)?r=o([],e.args,!0):(n+=e.args[0],r=o([],e.args.slice(1),!0));var a,c=(a=e.id,p[a]=p[a]||_[A++&t]),d=(0,i.rgbHex)(c),N=(0,i.rgbHex)(c.map((function(e){return Math.max(0,e-32)}))),g=function(e){var r=function(e){var r=255-e[0],t=255-e[1],o=255-e[2];return(0,i.rgbHex)([r,t,o])}(e),t=f(e),o=f("#ffffff"===r?[255,255,255]:[0,0,0]);return(t>o?(t+.05)/(o+.05):(o+.05)/(t+.05))<4.5&&(r=e[0]*u+e[1]*l+e[2]*s<220?"#ffffff":"#000000"),r}(c),S=o([n,"padding: 2px; margin: 2px; line-height: 1.8em;background: ".concat(d,";border: 1px solid ").concat(N,";color: ").concat(g,";")],r,!0),b=v(e.timestamp);return void 0!==b&&S.push(b),S}};var u=.2126,l=.7152,s=.0722,d=1/12.92;function f(e){var r=e[0]/255,t=e[1]/255,o=e[2]/255,n=r<=.03928?r*d:Math.pow((r+.055)/1.055,2.4),i=t<=.03928?t*d:Math.pow((t+.055)/1.055,2.4),a=o<=.03928?o*d:Math.pow((o+.055)/1.055,2.4);return n*u+i*l+a*s}},265:function(e,r,t){var o=this&&this.__createBinding||(Object.create?function(e,r,t,o){void 0===o&&(o=t);var n=Object.getOwnPropertyDescriptor(r,t);n&&!("get"in n?!r.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(e,o,n)}:function(e,r,t,o){void 0===o&&(o=t),e[o]=r[t]}),n=this&&this.__exportStar||function(e,r){for(var t in e)"default"===t||Object.prototype.hasOwnProperty.call(r,t)||o(r,e,t)};Object.defineProperty(r,"__esModule",{value:!0}),n(t(392),r)},724:function(e,r,t){var o=this&&this.__createBinding||(Object.create?function(e,r,t,o){void 0===o&&(o=t);var n=Object.getOwnPropertyDescriptor(r,t);n&&!("get"in n?!r.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(e,o,n)}:function(e,r,t,o){void 0===o&&(o=t),e[o]=r[t]}),n=this&&this.__exportStar||function(e,r){for(var t in e)"default"===t||Object.prototype.hasOwnProperty.call(r,t)||o(r,e,t)};Object.defineProperty(r,"__esModule",{value:!0}),n(t(109),r),n(t(16),r),n(t(265),r)},756:function(e,r,t){var o=this&&this.__createBinding||(Object.create?function(e,r,t,o){void 0===o&&(o=t);var n=Object.getOwnPropertyDescriptor(r,t);n&&!("get"in n?!r.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(e,o,n)}:function(e,r,t,o){void 0===o&&(o=t),e[o]=r[t]}),n=this&&this.__exportStar||function(e,r){for(var t in e)"default"===t||Object.prototype.hasOwnProperty.call(r,t)||o(r,e,t)};Object.defineProperty(r,"__esModule",{value:!0}),n(t(938),r)},938:function(e,r){Object.defineProperty(r,"__esModule",{value:!0}),r.supportColor=void 0,r.supportColor=function(){return!("undefined"==typeof window||!window.process||"renderer"!==window.process.type&&!window.process.__nwjs)||("undefined"==typeof navigator||!navigator.userAgent||!navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/))&&("undefined"!=typeof document&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||"undefined"!=typeof window&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||"undefined"!=typeof navigator&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/))}},616:function(e){e.exports=StandardLog},942:function(e,r,t){t.r(r);var o=Object.create?function(e,r,t,o){void 0===o&&(o=t);var n=Object.getOwnPropertyDescriptor(r,t);n&&!("get"in n?!r.__esModule:n.writable||n.configurable)||(n={enumerable:!0,get:function(){return r[t]}}),Object.defineProperty(e,o,n)}:function(e,r,t,o){void 0===o&&(o=t),e[o]=r[t]},n=function(e,r){for(var t in e)"default"===t||Object.prototype.hasOwnProperty.call(r,t)||o(r,e,t)};Object.defineProperty(exports,"__esModule",{value:!0}),n(require("./required.js"),exports),n(require("./unpartial.js"),exports)}},r={};function t(o){var n=r[o];if(void 0!==n)return n.exports;var i=r[o]={exports:{}};return e[o].call(i.exports,i,i.exports,t),i.exports}t.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var o=t(724);StandardLogColor=o}();
2
+ //# sourceMappingURL=standard-log-color.es5.js.map