jopi-node-space 0.0.5 → 0.0.6

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.
@@ -109,6 +109,7 @@ interface TerminalImpl {
109
109
  T_RESET: string;
110
110
  T_BOLD: string;
111
111
  T_UNDERLINE: string;
112
+ T_REWRITE_LINE: string;
112
113
  T_CLEAR_LINE: string;
113
114
  T_CLEAR_LINE_END: string;
114
115
  T_CLEAR_SCREEN: string;
@@ -127,6 +128,10 @@ interface TerminalImpl {
127
128
  B_MAGENTA: string;
128
129
  B_CYAN: string;
129
130
  B_WHITE: string;
131
+ /**
132
+ * Do a console.log, but replace the current line or add a new one.
133
+ */
134
+ consoleLogErasable: (erase: boolean, ...args: unknown[]) => void;
130
135
  colorize(...params: string[]): string;
131
136
  cssText(text: string, css: string): void;
132
137
  moveUp(n: number): string;
package/dist/_term.js CHANGED
@@ -3,6 +3,7 @@ const T_BOLD = "\x1b[1m";
3
3
  const T_UNDERLINE = "\x1b[4m";
4
4
  const T_CLEAR_LINE = "\x1b[2K";
5
5
  const T_CLEAR_LINE_END = "\x1b[K";
6
+ const T_REWRITE_LINE = "\r\x1B[1F\x1B[1F\x1b[K";
6
7
  const T_CLEAR_SCREEN = "\x1b[2J";
7
8
  const T_LINE_START = "\r";
8
9
  const C_RED = "\x1b[31m";
@@ -57,6 +58,7 @@ export function init_term() {
57
58
  T_BOLD,
58
59
  T_CLEAR_SCREEN,
59
60
  T_UNDERLINE,
61
+ T_REWRITE_LINE,
60
62
  T_CLEAR_LINE,
61
63
  T_CLEAR_LINE_END,
62
64
  T_LINE_START,
@@ -64,7 +66,18 @@ export function init_term() {
64
66
  return params.join("") + T_RESET;
65
67
  },
66
68
  cssText,
67
- moveUp, moveDown, moveLeft, moveRight, goAt
69
+ moveUp, moveDown, moveLeft, moveRight, goAt,
70
+ consoleLogErasable: (erase, ...args) => {
71
+ if (erase) {
72
+ let first = args.shift();
73
+ if (first)
74
+ first = "" + first;
75
+ console.log("\r\x1B[1F\x1B[1F\x1b[K" + first, ...args);
76
+ }
77
+ else {
78
+ console.log(...args);
79
+ }
80
+ }
68
81
  };
69
82
  }
70
83
  //# sourceMappingURL=_term.js.map
package/dist/_term.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"_term.js","sourceRoot":"","sources":["../src/_term.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG,SAAS,CAAC;AAE1B,MAAM,MAAM,GAAG,SAAS,CAAC;AACzB,MAAM,WAAW,GAAG,SAAS,CAAC;AAE9B,MAAM,YAAY,GAAG,SAAS,CAAC;AAC/B,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAClC,MAAM,cAAc,GAAG,SAAS,CAAC;AACjC,MAAM,YAAY,GAAG,IAAI,CAAC;AAE1B,MAAM,KAAK,GAAG,UAAU,CAAC;AACzB,MAAM,MAAM,GAAG,UAAU,CAAC;AAC1B,MAAM,YAAY,GAAG,UAAU,CAAC;AAChC,MAAM,OAAO,GAAG,UAAU,CAAC;AAC3B,MAAM,MAAM,GAAG,UAAU,CAAC;AAC1B,MAAM,QAAQ,GAAG,gBAAgB,CAAC;AAElC,MAAM,OAAO,GAAG,UAAU,CAAC;AAC3B,MAAM,KAAK,GAAG,UAAU,CAAC;AACzB,MAAM,OAAO,GAAG,UAAU,CAAC;AAC3B,MAAM,QAAQ,GAAG,UAAU,CAAC;AAC5B,MAAM,MAAM,GAAG,UAAU,CAAC;AAC1B,MAAM,SAAS,GAAG,UAAU,CAAC;AAC7B,MAAM,MAAM,GAAG,UAAU,CAAC;AAC1B,MAAM,OAAO,GAAG,UAAU,CAAC;AAE3B,SAAS,OAAO,CAAC,IAAY,EAAE,GAAW;IACtC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,EAAE,GAAG,CAAC,CAAA;AACjC,CAAC;AAED,SAAS,MAAM,CAAC,CAAS;IACrB,OAAO,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC;AAC7B,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS;IACvB,OAAO,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC;AAC7B,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS;IACvB,OAAO,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC;AAC7B,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IACxB,OAAO,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC;AAC7B,CAAC;AAED,SAAS,IAAI,CAAC,CAAS,EAAE,CAAS;IAC9B,OAAO,OAAO,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,SAAS;IACrB,SAAS,CAAC,IAAI,GAAG;QACb,KAAK;QACL,OAAO;QACP,MAAM;QACN,YAAY;QACZ,MAAM;QACN,QAAQ;QAER,OAAO;QACP,MAAM;QACN,MAAM;QACN,OAAO;QACP,SAAS;QACT,KAAK;QACL,OAAO;QACP,QAAQ;QAER,OAAO;QACP,MAAM;QACN,cAAc;QACd,WAAW;QACX,YAAY;QACZ,gBAAgB;QAChB,YAAY;QAEZ,QAAQ,CAAC,GAAG,MAAgB;YACxB,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;QACrC,CAAC;QAED,OAAO;QAEP,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI;KAE9C,CAAA;AACL,CAAC"}
1
+ {"version":3,"file":"_term.js","sourceRoot":"","sources":["../src/_term.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,GAAG,SAAS,CAAC;AAE1B,MAAM,MAAM,GAAG,SAAS,CAAC;AACzB,MAAM,WAAW,GAAG,SAAS,CAAC;AAE9B,MAAM,YAAY,GAAG,SAAS,CAAC;AAC/B,MAAM,gBAAgB,GAAG,QAAQ,CAAC;AAClC,MAAM,cAAc,GAAG,wBAAwB,CAAC;AAChD,MAAM,cAAc,GAAG,SAAS,CAAC;AACjC,MAAM,YAAY,GAAG,IAAI,CAAC;AAE1B,MAAM,KAAK,GAAG,UAAU,CAAC;AACzB,MAAM,MAAM,GAAG,UAAU,CAAC;AAC1B,MAAM,YAAY,GAAG,UAAU,CAAC;AAChC,MAAM,OAAO,GAAG,UAAU,CAAC;AAC3B,MAAM,MAAM,GAAG,UAAU,CAAC;AAC1B,MAAM,QAAQ,GAAG,gBAAgB,CAAC;AAElC,MAAM,OAAO,GAAG,UAAU,CAAC;AAC3B,MAAM,KAAK,GAAG,UAAU,CAAC;AACzB,MAAM,OAAO,GAAG,UAAU,CAAC;AAC3B,MAAM,QAAQ,GAAG,UAAU,CAAC;AAC5B,MAAM,MAAM,GAAG,UAAU,CAAC;AAC1B,MAAM,SAAS,GAAG,UAAU,CAAC;AAC7B,MAAM,MAAM,GAAG,UAAU,CAAC;AAC1B,MAAM,OAAO,GAAG,UAAU,CAAC;AAE3B,SAAS,OAAO,CAAC,IAAY,EAAE,GAAW;IACtC,OAAO,CAAC,GAAG,CAAC,IAAI,GAAG,IAAI,EAAE,GAAG,CAAC,CAAA;AACjC,CAAC;AAED,SAAS,MAAM,CAAC,CAAS;IACrB,OAAO,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC;AAC7B,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS;IACvB,OAAO,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC;AAC7B,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS;IACvB,OAAO,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC;AAC7B,CAAC;AAED,SAAS,SAAS,CAAC,CAAS;IACxB,OAAO,OAAO,GAAG,CAAC,GAAG,GAAG,CAAC;AAC7B,CAAC;AAED,SAAS,IAAI,CAAC,CAAS,EAAE,CAAS;IAC9B,OAAO,OAAO,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;AACvC,CAAC;AAED,MAAM,UAAU,SAAS;IACrB,SAAS,CAAC,IAAI,GAAG;QACb,KAAK;QACL,OAAO;QACP,MAAM;QACN,YAAY;QACZ,MAAM;QACN,QAAQ;QAER,OAAO;QACP,MAAM;QACN,MAAM;QACN,OAAO;QACP,SAAS;QACT,KAAK;QACL,OAAO;QACP,QAAQ;QAER,OAAO;QACP,MAAM;QACN,cAAc;QACd,WAAW;QACX,cAAc;QACd,YAAY;QACZ,gBAAgB;QAChB,YAAY;QAEZ,QAAQ,CAAC,GAAG,MAAgB;YACxB,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC;QACrC,CAAC;QAED,OAAO;QAEP,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,IAAI;QAE3C,kBAAkB,EAAE,CAAC,KAAc,EAAE,GAAG,IAAe,EAAE,EAAE;YACvD,IAAI,KAAK,EAAE,CAAC;gBACR,IAAI,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC;gBACzB,IAAI,KAAK;oBAAE,KAAK,GAAG,EAAE,GAAG,KAAK,CAAC;gBAC9B,OAAO,CAAC,GAAG,CAAC,wBAAwB,GAAG,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;YAC3D,CAAC;iBACI,CAAC;gBACF,OAAO,CAAC,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;YACzB,CAAC;QACL,CAAC;KAEJ,CAAA;AACL,CAAC"}
package/package.json CHANGED
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "0.0.5",
2
+ "version": "0.0.6",
3
3
  "private": false,
4
4
  "name": "jopi-node-space",
5
5
  "license": "MIT",
@@ -10,17 +10,20 @@
10
10
  "type": "module",
11
11
  "main": "dist/index.js",
12
12
  "types": "dist/index.d.ts",
13
+
13
14
  "devDependencies": {
14
15
  "@types/bun": "latest",
15
16
  "@types/node": "latest",
16
17
  "@types/mime-types": "latest"
17
18
  },
19
+
18
20
  "scripts": {
19
21
  "bun-install": "bun install",
20
22
  "tsc": "tsc",
21
23
  "npm-publish": "npm publish",
22
24
  "bun link": "bun link"
23
25
  },
26
+
24
27
  "dependencies": {
25
28
  "mime-types": "^3.0.1"
26
29
  }
package/src/__global.ts CHANGED
@@ -86,7 +86,6 @@ export interface FileState {
86
86
  isSymbolicLink: () => boolean,
87
87
  }
88
88
 
89
-
90
89
  interface FileSystemImpl {
91
90
  mkDir: (dirPath: string) => Promise<string | undefined>;
92
91
  fileURLToPath: (url: string) => string;
@@ -139,6 +138,7 @@ interface TerminalImpl {
139
138
  T_RESET: string;
140
139
  T_BOLD: string;
141
140
  T_UNDERLINE: string;
141
+ T_REWRITE_LINE: string;
142
142
  T_CLEAR_LINE: string;
143
143
  T_CLEAR_LINE_END: string;
144
144
  T_CLEAR_SCREEN: string;
@@ -160,6 +160,11 @@ interface TerminalImpl {
160
160
  B_CYAN: string;
161
161
  B_WHITE: string;
162
162
 
163
+ /**
164
+ * Do a console.log, but replace the current line or add a new one.
165
+ */
166
+ consoleLogErasable: (erase: boolean, ...args: unknown[])=>void;
167
+
163
168
  colorize(...params: string[]): string;
164
169
  cssText(text: string, css: string): void;
165
170
 
package/src/_term.ts CHANGED
@@ -5,6 +5,7 @@ const T_UNDERLINE = "\x1b[4m";
5
5
 
6
6
  const T_CLEAR_LINE = "\x1b[2K";
7
7
  const T_CLEAR_LINE_END = "\x1b[K";
8
+ const T_REWRITE_LINE = "\r\x1B[1F\x1B[1F\x1b[K";
8
9
  const T_CLEAR_SCREEN = "\x1b[2J";
9
10
  const T_LINE_START = "\r";
10
11
 
@@ -70,6 +71,7 @@ export function init_term() {
70
71
  T_BOLD,
71
72
  T_CLEAR_SCREEN,
72
73
  T_UNDERLINE,
74
+ T_REWRITE_LINE,
73
75
  T_CLEAR_LINE,
74
76
  T_CLEAR_LINE_END,
75
77
  T_LINE_START,
@@ -80,7 +82,18 @@ export function init_term() {
80
82
 
81
83
  cssText,
82
84
 
83
- moveUp, moveDown, moveLeft, moveRight, goAt
85
+ moveUp, moveDown, moveLeft, moveRight, goAt,
86
+
87
+ consoleLogErasable: (erase: boolean, ...args: unknown[]) => {
88
+ if (erase) {
89
+ let first = args.shift();
90
+ if (first) first = "" + first;
91
+ console.log("\r\x1B[1F\x1B[1F\x1b[K" + first, ...args);
92
+ }
93
+ else {
94
+ console.log(...args);
95
+ }
96
+ }
84
97
 
85
98
  }
86
99
  }