@chainlink/external-adapter-framework 2.13.0 → 2.13.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/README.md +1 -1
  2. package/generator-adapter/node_modules/.yarn-integrity +29 -33
  3. package/generator-adapter/node_modules/@inquirer/ansi/package.json +28 -26
  4. package/generator-adapter/node_modules/@inquirer/checkbox/dist/index.d.ts +6 -1
  5. package/generator-adapter/node_modules/@inquirer/checkbox/dist/index.js +30 -10
  6. package/generator-adapter/node_modules/@inquirer/checkbox/package.json +23 -21
  7. package/generator-adapter/node_modules/@inquirer/confirm/package.json +21 -19
  8. package/generator-adapter/node_modules/@inquirer/core/dist/index.d.ts +1 -1
  9. package/generator-adapter/node_modules/@inquirer/core/dist/index.js +1 -1
  10. package/generator-adapter/node_modules/@inquirer/core/dist/lib/create-prompt.js +51 -25
  11. package/generator-adapter/node_modules/@inquirer/core/dist/lib/key.d.ts +2 -0
  12. package/generator-adapter/node_modules/@inquirer/core/dist/lib/key.js +1 -0
  13. package/generator-adapter/node_modules/@inquirer/core/dist/lib/utils.js +1 -1
  14. package/generator-adapter/node_modules/@inquirer/core/package.json +22 -20
  15. package/generator-adapter/node_modules/@inquirer/editor/dist/index.d.ts +3 -0
  16. package/generator-adapter/node_modules/@inquirer/editor/dist/index.js +5 -5
  17. package/generator-adapter/node_modules/@inquirer/editor/package.json +22 -20
  18. package/generator-adapter/node_modules/@inquirer/expand/package.json +21 -19
  19. package/generator-adapter/node_modules/@inquirer/external-editor/package.json +33 -31
  20. package/generator-adapter/node_modules/@inquirer/figures/package.json +18 -16
  21. package/generator-adapter/node_modules/@inquirer/input/dist/index.js +5 -3
  22. package/generator-adapter/node_modules/@inquirer/input/package.json +21 -19
  23. package/generator-adapter/node_modules/@inquirer/number/package.json +21 -19
  24. package/generator-adapter/node_modules/@inquirer/password/dist/index.d.ts +6 -1
  25. package/generator-adapter/node_modules/@inquirer/password/dist/index.js +7 -2
  26. package/generator-adapter/node_modules/@inquirer/password/package.json +22 -20
  27. package/generator-adapter/node_modules/@inquirer/prompts/README.md +15 -0
  28. package/generator-adapter/node_modules/@inquirer/prompts/package.json +31 -29
  29. package/generator-adapter/node_modules/@inquirer/rawlist/README.md +4 -0
  30. package/generator-adapter/node_modules/@inquirer/rawlist/dist/index.d.ts +9 -2
  31. package/generator-adapter/node_modules/@inquirer/rawlist/dist/index.js +24 -7
  32. package/generator-adapter/node_modules/@inquirer/rawlist/package.json +21 -19
  33. package/generator-adapter/node_modules/@inquirer/search/README.md +2 -1
  34. package/generator-adapter/node_modules/@inquirer/search/dist/index.d.ts +1 -0
  35. package/generator-adapter/node_modules/@inquirer/search/dist/index.js +11 -4
  36. package/generator-adapter/node_modules/@inquirer/search/package.json +22 -20
  37. package/generator-adapter/node_modules/@inquirer/select/dist/index.d.ts +5 -2
  38. package/generator-adapter/node_modules/@inquirer/select/dist/index.js +28 -11
  39. package/generator-adapter/node_modules/@inquirer/select/package.json +23 -21
  40. package/generator-adapter/node_modules/@inquirer/type/package.json +18 -16
  41. package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.d.ts +0 -3
  42. package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.js +1 -0
  43. package/generator-adapter/node_modules/@yeoman/adapter/dist/adapter.js.map +1 -1
  44. package/generator-adapter/node_modules/@yeoman/adapter/dist/log.d.ts +0 -2
  45. package/generator-adapter/node_modules/@yeoman/adapter/dist/log.js.map +1 -1
  46. package/generator-adapter/node_modules/@yeoman/adapter/dist/queued-adapter.d.ts +0 -1
  47. package/generator-adapter/node_modules/@yeoman/adapter/dist/queued-adapter.js.map +1 -1
  48. package/generator-adapter/node_modules/@yeoman/adapter/dist/testing/test-adapter.d.ts +0 -1
  49. package/generator-adapter/node_modules/@yeoman/adapter/dist/testing/test-adapter.js.map +1 -1
  50. package/generator-adapter/node_modules/@yeoman/adapter/package.json +11 -11
  51. package/generator-adapter/node_modules/ansi-styles/index.d.ts +341 -232
  52. package/generator-adapter/node_modules/ansi-styles/index.js +130 -190
  53. package/generator-adapter/node_modules/ansi-styles/license +1 -1
  54. package/generator-adapter/node_modules/ansi-styles/package.json +10 -8
  55. package/generator-adapter/node_modules/ansi-styles/readme.md +32 -53
  56. package/generator-adapter/node_modules/chalk/package.json +3 -3
  57. package/generator-adapter/node_modules/chalk/readme.md +25 -53
  58. package/generator-adapter/node_modules/chalk/source/index.d.ts +6 -1
  59. package/generator-adapter/node_modules/chalk/source/vendor/supports-color/browser.js +6 -2
  60. package/generator-adapter/node_modules/chalk/source/vendor/supports-color/index.js +10 -2
  61. package/generator-adapter/node_modules/fast-string-truncated-width/dist/index.d.ts +4 -0
  62. package/generator-adapter/node_modules/fast-string-truncated-width/dist/index.js +111 -0
  63. package/generator-adapter/node_modules/fast-string-truncated-width/dist/types.d.ts +19 -0
  64. package/generator-adapter/node_modules/{p-queue/dist/options copy.js → fast-string-truncated-width/dist/types.js} +1 -0
  65. package/generator-adapter/node_modules/fast-string-truncated-width/dist/utils.d.ts +4 -0
  66. package/generator-adapter/node_modules/fast-string-truncated-width/dist/utils.js +20 -0
  67. package/generator-adapter/node_modules/fast-string-truncated-width/license +21 -0
  68. package/generator-adapter/node_modules/fast-string-truncated-width/package.json +35 -0
  69. package/generator-adapter/node_modules/fast-string-truncated-width/readme.md +59 -0
  70. package/generator-adapter/node_modules/fast-string-width/dist/index.d.ts +4 -0
  71. package/generator-adapter/node_modules/fast-string-width/dist/index.js +14 -0
  72. package/generator-adapter/node_modules/fast-string-width/license +21 -0
  73. package/generator-adapter/node_modules/fast-string-width/package.json +34 -0
  74. package/generator-adapter/node_modules/fast-string-width/readme.md +42 -0
  75. package/generator-adapter/node_modules/fast-wrap-ansi/LICENSE +23 -0
  76. package/generator-adapter/node_modules/fast-wrap-ansi/README.md +26 -0
  77. package/generator-adapter/node_modules/fast-wrap-ansi/lib/main.d.ts +6 -0
  78. package/generator-adapter/node_modules/fast-wrap-ansi/lib/main.js +219 -0
  79. package/generator-adapter/node_modules/fast-wrap-ansi/lib/main.js.map +1 -0
  80. package/generator-adapter/node_modules/fast-wrap-ansi/package.json +51 -0
  81. package/generator-adapter/node_modules/iconv-lite/lib/index.d.ts +114 -26
  82. package/generator-adapter/node_modules/iconv-lite/lib/index.js +39 -40
  83. package/generator-adapter/node_modules/iconv-lite/package.json +13 -2
  84. package/generator-adapter/node_modules/iconv-lite/types/encodings.d.ts +423 -0
  85. package/generator-adapter/node_modules/inquirer/dist/types.d.ts +12 -11
  86. package/generator-adapter/node_modules/inquirer/dist/ui/prompt.js +9 -1
  87. package/generator-adapter/node_modules/inquirer/dist/ui/skipped-renderer.d.ts +13 -0
  88. package/generator-adapter/node_modules/inquirer/dist/ui/skipped-renderer.js +57 -0
  89. package/generator-adapter/node_modules/inquirer/package.json +21 -19
  90. package/generator-adapter/node_modules/log-symbols/package.json +1 -1
  91. package/generator-adapter/node_modules/log-symbols/symbols.js +1 -1
  92. package/generator-adapter/node_modules/mem-fs/dist/index.d.ts +0 -2
  93. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/LICENSE +21 -0
  94. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/README.md +447 -0
  95. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/index.js +346 -0
  96. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/lib/inspect-stream.js +13 -0
  97. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/lib/is-stream.js +15 -0
  98. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/lib/normalize.js +9 -0
  99. package/generator-adapter/node_modules/mem-fs/node_modules/vinyl/package.json +59 -0
  100. package/generator-adapter/node_modules/mem-fs/package.json +9 -9
  101. package/generator-adapter/node_modules/ora/index.d.ts +3 -1
  102. package/generator-adapter/node_modules/ora/index.js +299 -109
  103. package/generator-adapter/node_modules/ora/package.json +3 -4
  104. package/generator-adapter/node_modules/ora/readme.md +24 -0
  105. package/generator-adapter/node_modules/p-queue/dist/index.js +145 -22
  106. package/generator-adapter/node_modules/p-queue/dist/options.d.ts +17 -1
  107. package/generator-adapter/node_modules/p-queue/package.json +1 -1
  108. package/generator-adapter/node_modules/p-queue/readme.md +32 -1
  109. package/generator-adapter/node_modules/stdin-discarder/index.js +50 -22
  110. package/generator-adapter/node_modules/stdin-discarder/package.json +1 -1
  111. package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/package.json +3 -3
  112. package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/readme.md +53 -25
  113. package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/index.d.ts +1 -6
  114. package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/supports-color/browser.js +2 -6
  115. package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/supports-color/index.js +2 -10
  116. package/generator-adapter/package.json +2 -2
  117. package/package.json +4 -4
  118. package/transports/websocket.d.ts +5 -0
  119. package/transports/websocket.js +25 -13
  120. package/transports/websocket.js.map +1 -1
  121. package/generator-adapter/node_modules/emoji-regex/LICENSE-MIT.txt +0 -20
  122. package/generator-adapter/node_modules/emoji-regex/README.md +0 -107
  123. package/generator-adapter/node_modules/emoji-regex/index.d.ts +0 -3
  124. package/generator-adapter/node_modules/emoji-regex/index.js +0 -4
  125. package/generator-adapter/node_modules/emoji-regex/index.mjs +0 -4
  126. package/generator-adapter/node_modules/emoji-regex/package.json +0 -45
  127. package/generator-adapter/node_modules/iconv-lite/Changelog.md +0 -236
  128. package/generator-adapter/node_modules/jake/node_modules/ansi-styles/index.d.ts +0 -345
  129. package/generator-adapter/node_modules/jake/node_modules/ansi-styles/index.js +0 -163
  130. package/generator-adapter/node_modules/jake/node_modules/ansi-styles/license +0 -9
  131. package/generator-adapter/node_modules/jake/node_modules/ansi-styles/package.json +0 -56
  132. package/generator-adapter/node_modules/jake/node_modules/ansi-styles/readme.md +0 -152
  133. package/generator-adapter/node_modules/ora/node_modules/log-symbols/browser-symbols.js +0 -4
  134. package/generator-adapter/node_modules/ora/node_modules/log-symbols/browser.js +0 -1
  135. package/generator-adapter/node_modules/ora/node_modules/log-symbols/index.d.ts +0 -22
  136. package/generator-adapter/node_modules/ora/node_modules/log-symbols/index.js +0 -1
  137. package/generator-adapter/node_modules/ora/node_modules/log-symbols/license +0 -9
  138. package/generator-adapter/node_modules/ora/node_modules/log-symbols/package.json +0 -60
  139. package/generator-adapter/node_modules/ora/node_modules/log-symbols/readme.md +0 -39
  140. package/generator-adapter/node_modules/ora/node_modules/log-symbols/symbols.js +0 -14
  141. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/index.d.ts +0 -15
  142. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/index.js +0 -14
  143. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/license +0 -9
  144. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/package.json +0 -59
  145. package/generator-adapter/node_modules/ora/node_modules/strip-ansi/readme.md +0 -37
  146. package/generator-adapter/node_modules/p-queue/dist/options copy.d.ts +0 -121
  147. package/generator-adapter/node_modules/wrap-ansi/index.d.ts +0 -41
  148. package/generator-adapter/node_modules/wrap-ansi/index.js +0 -222
  149. package/generator-adapter/node_modules/wrap-ansi/license +0 -9
  150. package/generator-adapter/node_modules/wrap-ansi/node_modules/string-width/index.d.ts +0 -39
  151. package/generator-adapter/node_modules/wrap-ansi/node_modules/string-width/index.js +0 -82
  152. package/generator-adapter/node_modules/wrap-ansi/node_modules/string-width/license +0 -9
  153. package/generator-adapter/node_modules/wrap-ansi/node_modules/string-width/package.json +0 -64
  154. package/generator-adapter/node_modules/wrap-ansi/node_modules/string-width/readme.md +0 -66
  155. package/generator-adapter/node_modules/wrap-ansi/package.json +0 -69
  156. package/generator-adapter/node_modules/wrap-ansi/readme.md +0 -75
  157. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/license +0 -0
  158. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/index.js +0 -0
  159. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/utilities.js +0 -0
  160. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/ansi-styles/index.d.ts +0 -0
  161. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/ansi-styles/index.js +0 -0
  162. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/supports-color/browser.d.ts +0 -0
  163. /package/generator-adapter/node_modules/{ora → yeoman-generator}/node_modules/chalk/source/vendor/supports-color/index.d.ts +0 -0
@@ -1,83 +1,130 @@
1
- const ANSI_BACKGROUND_OFFSET = 10;
2
-
3
- const wrapAnsi16 = (offset = 0) => code => `\u001B[${code + offset}m`;
4
-
5
- const wrapAnsi256 = (offset = 0) => code => `\u001B[${38 + offset};5;${code}m`;
6
-
7
- const wrapAnsi16m = (offset = 0) => (red, green, blue) => `\u001B[${38 + offset};2;${red};${green};${blue}m`;
8
-
9
- const styles = {
10
- modifier: {
11
- reset: [0, 0],
12
- // 21 isn't widely supported and 22 does the same thing
13
- bold: [1, 22],
14
- dim: [2, 22],
15
- italic: [3, 23],
16
- underline: [4, 24],
17
- overline: [53, 55],
18
- inverse: [7, 27],
19
- hidden: [8, 28],
20
- strikethrough: [9, 29],
21
- },
22
- color: {
23
- black: [30, 39],
24
- red: [31, 39],
25
- green: [32, 39],
26
- yellow: [33, 39],
27
- blue: [34, 39],
28
- magenta: [35, 39],
29
- cyan: [36, 39],
30
- white: [37, 39],
31
-
32
- // Bright color
33
- blackBright: [90, 39],
34
- gray: [90, 39], // Alias of `blackBright`
35
- grey: [90, 39], // Alias of `blackBright`
36
- redBright: [91, 39],
37
- greenBright: [92, 39],
38
- yellowBright: [93, 39],
39
- blueBright: [94, 39],
40
- magentaBright: [95, 39],
41
- cyanBright: [96, 39],
42
- whiteBright: [97, 39],
43
- },
44
- bgColor: {
45
- bgBlack: [40, 49],
46
- bgRed: [41, 49],
47
- bgGreen: [42, 49],
48
- bgYellow: [43, 49],
49
- bgBlue: [44, 49],
50
- bgMagenta: [45, 49],
51
- bgCyan: [46, 49],
52
- bgWhite: [47, 49],
53
-
54
- // Bright color
55
- bgBlackBright: [100, 49],
56
- bgGray: [100, 49], // Alias of `bgBlackBright`
57
- bgGrey: [100, 49], // Alias of `bgBlackBright`
58
- bgRedBright: [101, 49],
59
- bgGreenBright: [102, 49],
60
- bgYellowBright: [103, 49],
61
- bgBlueBright: [104, 49],
62
- bgMagentaBright: [105, 49],
63
- bgCyanBright: [106, 49],
64
- bgWhiteBright: [107, 49],
65
- },
1
+ 'use strict';
2
+
3
+ const wrapAnsi16 = (fn, offset) => (...args) => {
4
+ const code = fn(...args);
5
+ return `\u001B[${code + offset}m`;
6
+ };
7
+
8
+ const wrapAnsi256 = (fn, offset) => (...args) => {
9
+ const code = fn(...args);
10
+ return `\u001B[${38 + offset};5;${code}m`;
11
+ };
12
+
13
+ const wrapAnsi16m = (fn, offset) => (...args) => {
14
+ const rgb = fn(...args);
15
+ return `\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`;
16
+ };
17
+
18
+ const ansi2ansi = n => n;
19
+ const rgb2rgb = (r, g, b) => [r, g, b];
20
+
21
+ const setLazyProperty = (object, property, get) => {
22
+ Object.defineProperty(object, property, {
23
+ get: () => {
24
+ const value = get();
25
+
26
+ Object.defineProperty(object, property, {
27
+ value,
28
+ enumerable: true,
29
+ configurable: true
30
+ });
31
+
32
+ return value;
33
+ },
34
+ enumerable: true,
35
+ configurable: true
36
+ });
66
37
  };
67
38
 
68
- export const modifierNames = Object.keys(styles.modifier);
69
- export const foregroundColorNames = Object.keys(styles.color);
70
- export const backgroundColorNames = Object.keys(styles.bgColor);
71
- export const colorNames = [...foregroundColorNames, ...backgroundColorNames];
39
+ /** @type {typeof import('color-convert')} */
40
+ let colorConvert;
41
+ const makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => {
42
+ if (colorConvert === undefined) {
43
+ colorConvert = require('color-convert');
44
+ }
45
+
46
+ const offset = isBackground ? 10 : 0;
47
+ const styles = {};
48
+
49
+ for (const [sourceSpace, suite] of Object.entries(colorConvert)) {
50
+ const name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace;
51
+ if (sourceSpace === targetSpace) {
52
+ styles[name] = wrap(identity, offset);
53
+ } else if (typeof suite === 'object') {
54
+ styles[name] = wrap(suite[targetSpace], offset);
55
+ }
56
+ }
57
+
58
+ return styles;
59
+ };
72
60
 
73
61
  function assembleStyles() {
74
62
  const codes = new Map();
63
+ const styles = {
64
+ modifier: {
65
+ reset: [0, 0],
66
+ // 21 isn't widely supported and 22 does the same thing
67
+ bold: [1, 22],
68
+ dim: [2, 22],
69
+ italic: [3, 23],
70
+ underline: [4, 24],
71
+ inverse: [7, 27],
72
+ hidden: [8, 28],
73
+ strikethrough: [9, 29]
74
+ },
75
+ color: {
76
+ black: [30, 39],
77
+ red: [31, 39],
78
+ green: [32, 39],
79
+ yellow: [33, 39],
80
+ blue: [34, 39],
81
+ magenta: [35, 39],
82
+ cyan: [36, 39],
83
+ white: [37, 39],
84
+
85
+ // Bright color
86
+ blackBright: [90, 39],
87
+ redBright: [91, 39],
88
+ greenBright: [92, 39],
89
+ yellowBright: [93, 39],
90
+ blueBright: [94, 39],
91
+ magentaBright: [95, 39],
92
+ cyanBright: [96, 39],
93
+ whiteBright: [97, 39]
94
+ },
95
+ bgColor: {
96
+ bgBlack: [40, 49],
97
+ bgRed: [41, 49],
98
+ bgGreen: [42, 49],
99
+ bgYellow: [43, 49],
100
+ bgBlue: [44, 49],
101
+ bgMagenta: [45, 49],
102
+ bgCyan: [46, 49],
103
+ bgWhite: [47, 49],
104
+
105
+ // Bright color
106
+ bgBlackBright: [100, 49],
107
+ bgRedBright: [101, 49],
108
+ bgGreenBright: [102, 49],
109
+ bgYellowBright: [103, 49],
110
+ bgBlueBright: [104, 49],
111
+ bgMagentaBright: [105, 49],
112
+ bgCyanBright: [106, 49],
113
+ bgWhiteBright: [107, 49]
114
+ }
115
+ };
116
+
117
+ // Alias bright black as gray (and grey)
118
+ styles.color.gray = styles.color.blackBright;
119
+ styles.bgColor.bgGray = styles.bgColor.bgBlackBright;
120
+ styles.color.grey = styles.color.blackBright;
121
+ styles.bgColor.bgGrey = styles.bgColor.bgBlackBright;
75
122
 
76
123
  for (const [groupName, group] of Object.entries(styles)) {
77
124
  for (const [styleName, style] of Object.entries(group)) {
78
125
  styles[styleName] = {
79
126
  open: `\u001B[${style[0]}m`,
80
- close: `\u001B[${style[1]}m`,
127
+ close: `\u001B[${style[1]}m`
81
128
  };
82
129
 
83
130
  group[styleName] = styles[styleName];
@@ -87,137 +134,30 @@ function assembleStyles() {
87
134
 
88
135
  Object.defineProperty(styles, groupName, {
89
136
  value: group,
90
- enumerable: false,
137
+ enumerable: false
91
138
  });
92
139
  }
93
140
 
94
141
  Object.defineProperty(styles, 'codes', {
95
142
  value: codes,
96
- enumerable: false,
143
+ enumerable: false
97
144
  });
98
145
 
99
146
  styles.color.close = '\u001B[39m';
100
147
  styles.bgColor.close = '\u001B[49m';
101
148
 
102
- styles.color.ansi = wrapAnsi16();
103
- styles.color.ansi256 = wrapAnsi256();
104
- styles.color.ansi16m = wrapAnsi16m();
105
- styles.bgColor.ansi = wrapAnsi16(ANSI_BACKGROUND_OFFSET);
106
- styles.bgColor.ansi256 = wrapAnsi256(ANSI_BACKGROUND_OFFSET);
107
- styles.bgColor.ansi16m = wrapAnsi16m(ANSI_BACKGROUND_OFFSET);
108
-
109
- // From https://github.com/Qix-/color-convert/blob/3f0e0d4e92e235796ccb17f6e85c72094a651f49/conversions.js
110
- Object.defineProperties(styles, {
111
- rgbToAnsi256: {
112
- value(red, green, blue) {
113
- // We use the extended greyscale palette here, with the exception of
114
- // black and white. normal palette only has 4 greyscale shades.
115
- if (red === green && green === blue) {
116
- if (red < 8) {
117
- return 16;
118
- }
119
-
120
- if (red > 248) {
121
- return 231;
122
- }
123
-
124
- return Math.round(((red - 8) / 247) * 24) + 232;
125
- }
126
-
127
- return 16
128
- + (36 * Math.round(red / 255 * 5))
129
- + (6 * Math.round(green / 255 * 5))
130
- + Math.round(blue / 255 * 5);
131
- },
132
- enumerable: false,
133
- },
134
- hexToRgb: {
135
- value(hex) {
136
- const matches = /[a-f\d]{6}|[a-f\d]{3}/i.exec(hex.toString(16));
137
- if (!matches) {
138
- return [0, 0, 0];
139
- }
140
-
141
- let [colorString] = matches;
142
-
143
- if (colorString.length === 3) {
144
- colorString = [...colorString].map(character => character + character).join('');
145
- }
146
-
147
- const integer = Number.parseInt(colorString, 16);
148
-
149
- return [
150
- /* eslint-disable no-bitwise */
151
- (integer >> 16) & 0xFF,
152
- (integer >> 8) & 0xFF,
153
- integer & 0xFF,
154
- /* eslint-enable no-bitwise */
155
- ];
156
- },
157
- enumerable: false,
158
- },
159
- hexToAnsi256: {
160
- value: hex => styles.rgbToAnsi256(...styles.hexToRgb(hex)),
161
- enumerable: false,
162
- },
163
- ansi256ToAnsi: {
164
- value(code) {
165
- if (code < 8) {
166
- return 30 + code;
167
- }
168
-
169
- if (code < 16) {
170
- return 90 + (code - 8);
171
- }
172
-
173
- let red;
174
- let green;
175
- let blue;
176
-
177
- if (code >= 232) {
178
- red = (((code - 232) * 10) + 8) / 255;
179
- green = red;
180
- blue = red;
181
- } else {
182
- code -= 16;
183
-
184
- const remainder = code % 36;
185
-
186
- red = Math.floor(code / 36) / 5;
187
- green = Math.floor(remainder / 6) / 5;
188
- blue = (remainder % 6) / 5;
189
- }
190
-
191
- const value = Math.max(red, green, blue) * 2;
192
-
193
- if (value === 0) {
194
- return 30;
195
- }
196
-
197
- // eslint-disable-next-line no-bitwise
198
- let result = 30 + ((Math.round(blue) << 2) | (Math.round(green) << 1) | Math.round(red));
199
-
200
- if (value === 2) {
201
- result += 60;
202
- }
203
-
204
- return result;
205
- },
206
- enumerable: false,
207
- },
208
- rgbToAnsi: {
209
- value: (red, green, blue) => styles.ansi256ToAnsi(styles.rgbToAnsi256(red, green, blue)),
210
- enumerable: false,
211
- },
212
- hexToAnsi: {
213
- value: hex => styles.ansi256ToAnsi(styles.hexToAnsi256(hex)),
214
- enumerable: false,
215
- },
216
- });
149
+ setLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false));
150
+ setLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false));
151
+ setLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false));
152
+ setLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true));
153
+ setLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true));
154
+ setLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true));
217
155
 
218
156
  return styles;
219
157
  }
220
158
 
221
- const ansiStyles = assembleStyles();
222
-
223
- export default ansiStyles;
159
+ // Make the export immutable
160
+ Object.defineProperty(module, 'exports', {
161
+ enumerable: true,
162
+ get: assembleStyles
163
+ });
@@ -1,6 +1,6 @@
1
1
  MIT License
2
2
 
3
- Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (https://sindresorhus.com)
3
+ Copyright (c) Sindre Sorhus <sindresorhus@gmail.com> (sindresorhus.com)
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
6
6
 
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ansi-styles",
3
- "version": "6.2.3",
3
+ "version": "4.3.0",
4
4
  "description": "ANSI escape codes for styling strings in the terminal",
5
5
  "license": "MIT",
6
6
  "repository": "chalk/ansi-styles",
@@ -8,12 +8,10 @@
8
8
  "author": {
9
9
  "name": "Sindre Sorhus",
10
10
  "email": "sindresorhus@gmail.com",
11
- "url": "https://sindresorhus.com"
11
+ "url": "sindresorhus.com"
12
12
  },
13
- "type": "module",
14
- "exports": "./index.js",
15
13
  "engines": {
16
- "node": ">=12"
14
+ "node": ">=8"
17
15
  },
18
16
  "scripts": {
19
17
  "test": "xo && ava && tsd",
@@ -45,10 +43,14 @@
45
43
  "command-line",
46
44
  "text"
47
45
  ],
46
+ "dependencies": {
47
+ "color-convert": "^2.0.1"
48
+ },
48
49
  "devDependencies": {
49
- "ava": "^6.1.3",
50
+ "@types/color-convert": "^1.9.0",
51
+ "ava": "^2.3.0",
50
52
  "svg-term-cli": "^2.1.1",
51
- "tsd": "^0.31.1",
52
- "xo": "^0.58.0"
53
+ "tsd": "^0.11.0",
54
+ "xo": "^0.25.3"
53
55
  }
54
56
  }
@@ -1,57 +1,39 @@
1
- # ansi-styles
1
+ # ansi-styles [![Build Status](https://travis-ci.org/chalk/ansi-styles.svg?branch=master)](https://travis-ci.org/chalk/ansi-styles)
2
2
 
3
3
  > [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors_and_Styles) for styling strings in the terminal
4
4
 
5
5
  You probably want the higher-level [chalk](https://github.com/chalk/chalk) module for styling your strings.
6
6
 
7
- ![](screenshot.png)
7
+ <img src="screenshot.svg" width="900">
8
8
 
9
9
  ## Install
10
10
 
11
- ```sh
12
- npm install ansi-styles
11
+ ```
12
+ $ npm install ansi-styles
13
13
  ```
14
14
 
15
15
  ## Usage
16
16
 
17
17
  ```js
18
- import styles from 'ansi-styles';
18
+ const style = require('ansi-styles');
19
19
 
20
- console.log(`${styles.green.open}Hello world!${styles.green.close}`);
20
+ console.log(`${style.green.open}Hello world!${style.green.close}`);
21
21
 
22
22
 
23
- // Color conversion between 256/truecolor
24
- // NOTE: When converting from truecolor to 256 colors, the original color
25
- // may be degraded to fit the new color palette. This means terminals
23
+ // Color conversion between 16/256/truecolor
24
+ // NOTE: If conversion goes to 16 colors or 256 colors, the original color
25
+ // may be degraded to fit that color palette. This means terminals
26
26
  // that do not support 16 million colors will best-match the
27
27
  // original color.
28
- console.log(`${styles.color.ansi(styles.rgbToAnsi(199, 20, 250))}Hello World${styles.color.close}`)
29
- console.log(`${styles.color.ansi256(styles.rgbToAnsi256(199, 20, 250))}Hello World${styles.color.close}`)
30
- console.log(`${styles.color.ansi16m(...styles.hexToRgb('#abcdef'))}Hello World${styles.color.close}`)
28
+ console.log(style.bgColor.ansi.hsl(120, 80, 72) + 'Hello world!' + style.bgColor.close);
29
+ console.log(style.color.ansi256.rgb(199, 20, 250) + 'Hello world!' + style.color.close);
30
+ console.log(style.color.ansi16m.hex('#abcdef') + 'Hello world!' + style.color.close);
31
31
  ```
32
32
 
33
33
  ## API
34
34
 
35
- ### `open` and `close`
36
-
37
35
  Each style has an `open` and `close` property.
38
36
 
39
- ### `modifierNames`, `foregroundColorNames`, `backgroundColorNames`, and `colorNames`
40
-
41
- All supported style strings are exposed as an array of strings for convenience. `colorNames` is the combination of `foregroundColorNames` and `backgroundColorNames`.
42
-
43
- This can be useful if you need to validate input:
44
-
45
- ```js
46
- import {modifierNames, foregroundColorNames} from 'ansi-styles';
47
-
48
- console.log(modifierNames.includes('bold'));
49
- //=> true
50
-
51
- console.log(foregroundColorNames.includes('pink'));
52
- //=> false
53
- ```
54
-
55
37
  ## Styles
56
38
 
57
39
  ### Modifiers
@@ -61,7 +43,6 @@ console.log(foregroundColorNames.includes('pink'));
61
43
  - `dim`
62
44
  - `italic` *(Not widely supported)*
63
45
  - `underline`
64
- - `overline` *Supported on VTE-based terminals, the GNOME terminal, mintty, and Git Bash.*
65
46
  - `inverse`
66
47
  - `hidden`
67
48
  - `strikethrough` *(Not widely supported)*
@@ -108,53 +89,51 @@ console.log(foregroundColorNames.includes('pink'));
108
89
 
109
90
  By default, you get a map of styles, but the styles are also available as groups. They are non-enumerable so they don't show up unless you access them explicitly. This makes it easier to expose only a subset in a higher-level module.
110
91
 
111
- - `styles.modifier`
112
- - `styles.color`
113
- - `styles.bgColor`
92
+ - `style.modifier`
93
+ - `style.color`
94
+ - `style.bgColor`
114
95
 
115
96
  ###### Example
116
97
 
117
98
  ```js
118
- import styles from 'ansi-styles';
119
-
120
- console.log(styles.color.green.open);
99
+ console.log(style.color.green.open);
121
100
  ```
122
101
 
123
- Raw escape codes (i.e. without the CSI escape prefix `\u001B[` and render mode postfix `m`) are available under `styles.codes`, which returns a `Map` with the open codes as keys and close codes as values.
102
+ Raw escape codes (i.e. without the CSI escape prefix `\u001B[` and render mode postfix `m`) are available under `style.codes`, which returns a `Map` with the open codes as keys and close codes as values.
124
103
 
125
104
  ###### Example
126
105
 
127
106
  ```js
128
- import styles from 'ansi-styles';
129
-
130
- console.log(styles.codes.get(36));
107
+ console.log(style.codes.get(36));
131
108
  //=> 39
132
109
  ```
133
110
 
134
- ## 16 / 256 / 16 million (TrueColor) support
111
+ ## [256 / 16 million (TrueColor) support](https://gist.github.com/XVilka/8346728)
135
112
 
136
- `ansi-styles` allows converting between various color formats and ANSI escapes, with support for 16, 256 and [16 million colors](https://gist.github.com/XVilka/8346728).
113
+ `ansi-styles` uses the [`color-convert`](https://github.com/Qix-/color-convert) package to allow for converting between various colors and ANSI escapes, with support for 256 and 16 million colors.
137
114
 
138
- The following color spaces are supported:
115
+ The following color spaces from `color-convert` are supported:
139
116
 
140
117
  - `rgb`
141
118
  - `hex`
142
- - `ansi256`
119
+ - `keyword`
120
+ - `hsl`
121
+ - `hsv`
122
+ - `hwb`
143
123
  - `ansi`
124
+ - `ansi256`
144
125
 
145
126
  To use these, call the associated conversion function with the intended output, for example:
146
127
 
147
128
  ```js
148
- import styles from 'ansi-styles';
149
-
150
- styles.color.ansi(styles.rgbToAnsi(100, 200, 15)); // RGB to 16 color ansi foreground code
151
- styles.bgColor.ansi(styles.hexToAnsi('#C0FFEE')); // HEX to 16 color ansi foreground code
129
+ style.color.ansi.rgb(100, 200, 15); // RGB to 16 color ansi foreground code
130
+ style.bgColor.ansi.rgb(100, 200, 15); // RGB to 16 color ansi background code
152
131
 
153
- styles.color.ansi256(styles.rgbToAnsi256(100, 200, 15)); // RGB to 256 color ansi foreground code
154
- styles.bgColor.ansi256(styles.hexToAnsi256('#C0FFEE')); // HEX to 256 color ansi foreground code
132
+ style.color.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code
133
+ style.bgColor.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code
155
134
 
156
- styles.color.ansi16m(100, 200, 15); // RGB to 16 million color foreground code
157
- styles.bgColor.ansi16m(...styles.hexToRgb('#C0FFEE')); // Hex (RGB) to 16 million color foreground code
135
+ style.color.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color foreground code
136
+ style.bgColor.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color background code
158
137
  ```
159
138
 
160
139
  ## Related
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "chalk",
3
- "version": "5.3.0",
3
+ "version": "5.6.2",
4
4
  "description": "Terminal string styling done right",
5
5
  "license": "MIT",
6
6
  "repository": "chalk/chalk",
@@ -16,6 +16,7 @@
16
16
  }
17
17
  },
18
18
  "types": "./source/index.d.ts",
19
+ "sideEffects": false,
19
20
  "engines": {
20
21
  "node": "^12.17.0 || ^14.13 || >=16.0.0"
21
22
  },
@@ -58,10 +59,9 @@
58
59
  "log-update": "^5.0.0",
59
60
  "matcha": "^0.7.0",
60
61
  "tsd": "^0.19.0",
61
- "xo": "^0.53.0",
62
+ "xo": "^0.57.0",
62
63
  "yoctodelay": "^2.0.0"
63
64
  },
64
- "sideEffects": false,
65
65
  "xo": {
66
66
  "rules": {
67
67
  "unicorn/prefer-string-slice": "off",