windmill-cli 1.407.0 → 1.407.2
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.
- package/esm/apps.js +1 -1
- package/esm/deps/jsr.io/@std/io/0.225.0/types.js +15 -0
- package/esm/deps/jsr.io/@std/log/0.224.9/base_handler.js +331 -0
- package/esm/deps/jsr.io/@std/log/0.224.9/console_handler.js +112 -0
- package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/critical.js +1 -0
- package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/debug.js +1 -0
- package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/error.js +1 -0
- package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/file_handler.js +1 -1
- package/esm/deps/jsr.io/@std/log/0.224.9/formatters.js +45 -0
- package/esm/deps/jsr.io/@std/log/0.224.9/get_logger.js +75 -0
- package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/info.js +1 -0
- package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/levels.js +2 -0
- package/esm/deps/jsr.io/@std/log/0.224.9/logger.js +447 -0
- package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/warn.js +1 -0
- package/esm/deps.js +4 -4
- package/esm/gen/core/OpenAPI.js +1 -1
- package/esm/main.js +1 -1
- package/package.json +1 -1
- package/types/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/_constants.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/copy.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/read_all.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/io/0.225.0/types.d.ts +146 -0
- package/types/deps/jsr.io/@std/io/0.225.0/types.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/write_all.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/_config.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/_file_handler_symbols.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/_state.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/log/0.224.9/base_handler.d.ts +326 -0
- package/types/deps/jsr.io/@std/log/0.224.9/base_handler.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/log/0.224.9/console_handler.d.ts +76 -0
- package/types/deps/jsr.io/@std/log/0.224.9/console_handler.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/log/0.224.9/critical.d.ts +53 -0
- package/types/deps/jsr.io/@std/log/0.224.9/critical.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/log/0.224.9/debug.d.ts +105 -0
- package/types/deps/jsr.io/@std/log/0.224.9/debug.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/log/0.224.9/error.d.ts +53 -0
- package/types/deps/jsr.io/@std/log/0.224.9/error.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/file_handler.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/log/0.224.9/formatters.d.ts +34 -0
- package/types/deps/jsr.io/@std/log/0.224.9/formatters.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/log/0.224.9/get_logger.d.ts +59 -0
- package/types/deps/jsr.io/@std/log/0.224.9/get_logger.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/log/0.224.9/info.d.ts +53 -0
- package/types/deps/jsr.io/@std/log/0.224.9/info.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/levels.d.ts +2 -0
- package/types/deps/jsr.io/@std/log/0.224.9/levels.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/log/0.224.9/logger.d.ts +539 -0
- package/types/deps/jsr.io/@std/log/0.224.9/logger.d.ts.map +1 -0
- package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/mod.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/rotating_file_handler.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/setup.d.ts.map +1 -1
- package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/warn.d.ts +3 -1
- package/types/deps/jsr.io/@std/log/0.224.9/warn.d.ts.map +1 -0
- package/types/deps.d.ts +4 -4
- package/types/main.d.ts +1 -1
- package/esm/deps/jsr.io/@std/log/0.224.8/base_handler.js +0 -60
- package/esm/deps/jsr.io/@std/log/0.224.8/console_handler.js +0 -59
- package/esm/deps/jsr.io/@std/log/0.224.8/formatters.js +0 -19
- package/esm/deps/jsr.io/@std/log/0.224.8/get_logger.js +0 -21
- package/esm/deps/jsr.io/@std/log/0.224.8/logger.js +0 -179
- package/types/deps/jsr.io/@std/log/0.224.8/base_handler.d.ts +0 -22
- package/types/deps/jsr.io/@std/log/0.224.8/base_handler.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/log/0.224.8/console_handler.d.ts +0 -18
- package/types/deps/jsr.io/@std/log/0.224.8/console_handler.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/log/0.224.8/critical.d.ts +0 -5
- package/types/deps/jsr.io/@std/log/0.224.8/critical.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/log/0.224.8/debug.d.ts +0 -5
- package/types/deps/jsr.io/@std/log/0.224.8/debug.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/log/0.224.8/error.d.ts +0 -5
- package/types/deps/jsr.io/@std/log/0.224.8/error.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/log/0.224.8/formatters.d.ts +0 -6
- package/types/deps/jsr.io/@std/log/0.224.8/formatters.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/log/0.224.8/get_logger.d.ts +0 -4
- package/types/deps/jsr.io/@std/log/0.224.8/get_logger.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/log/0.224.8/info.d.ts +0 -5
- package/types/deps/jsr.io/@std/log/0.224.8/info.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/log/0.224.8/levels.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/log/0.224.8/logger.d.ts +0 -63
- package/types/deps/jsr.io/@std/log/0.224.8/logger.d.ts.map +0 -1
- package/types/deps/jsr.io/@std/log/0.224.8/warn.d.ts.map +0 -1
- /package/esm/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/_constants.js +0 -0
- /package/esm/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/copy.js +0 -0
- /package/esm/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/read_all.js +0 -0
- /package/esm/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/write_all.js +0 -0
- /package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/_config.js +0 -0
- /package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/_file_handler_symbols.js +0 -0
- /package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/_state.js +0 -0
- /package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/mod.js +0 -0
- /package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/rotating_file_handler.js +0 -0
- /package/esm/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/setup.js +0 -0
- /package/types/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/_constants.d.ts +0 -0
- /package/types/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/copy.d.ts +0 -0
- /package/types/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/read_all.d.ts +0 -0
- /package/types/deps/jsr.io/@std/io/{0.224.9 → 0.225.0}/write_all.d.ts +0 -0
- /package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/_config.d.ts +0 -0
- /package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/_file_handler_symbols.d.ts +0 -0
- /package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/_state.d.ts +0 -0
- /package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/file_handler.d.ts +0 -0
- /package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/mod.d.ts +0 -0
- /package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/rotating_file_handler.d.ts +0 -0
- /package/types/deps/jsr.io/@std/log/{0.224.8 → 0.224.9}/setup.d.ts +0 -0
package/esm/apps.js
CHANGED
|
@@ -11,7 +11,7 @@ export async function pushApp(workspace, remotePath, localPath, message) {
|
|
|
11
11
|
return;
|
|
12
12
|
}
|
|
13
13
|
alreadySynced.push(localPath);
|
|
14
|
-
remotePath.replaceAll(SEP, "/");
|
|
14
|
+
remotePath = remotePath.replaceAll(SEP, "/");
|
|
15
15
|
let app = undefined;
|
|
16
16
|
// deleting old app if it exists in raw mode
|
|
17
17
|
try {
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
|
2
|
+
// This module is browser compatible.
|
|
3
|
+
/**
|
|
4
|
+
* A enum which defines the seek mode for IO related APIs that support
|
|
5
|
+
* seeking.
|
|
6
|
+
*/
|
|
7
|
+
export var SeekMode;
|
|
8
|
+
(function (SeekMode) {
|
|
9
|
+
/* Seek from the start of the file/resource. */
|
|
10
|
+
SeekMode[SeekMode["Start"] = 0] = "Start";
|
|
11
|
+
/* Seek from the current position within the file/resource. */
|
|
12
|
+
SeekMode[SeekMode["Current"] = 1] = "Current";
|
|
13
|
+
/* Seek from the end of the current file/resource. */
|
|
14
|
+
SeekMode[SeekMode["End"] = 2] = "End";
|
|
15
|
+
})(SeekMode || (SeekMode = {}));
|
|
@@ -0,0 +1,331 @@
|
|
|
1
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
2
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
3
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
4
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
5
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _BaseHandler_levelName, _BaseHandler_level;
|
|
13
|
+
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
|
14
|
+
// This module is browser compatible.
|
|
15
|
+
import { getLevelByName, getLevelName, } from "./levels.js";
|
|
16
|
+
const DEFAULT_FORMATTER = ({ levelName, msg }) => `${levelName} ${msg}`;
|
|
17
|
+
/**
|
|
18
|
+
* A base class for all log handlers.
|
|
19
|
+
*
|
|
20
|
+
* This class is abstract and should not be instantiated directly. Instead, it
|
|
21
|
+
* should be extended by other classes that implement the `log` method.
|
|
22
|
+
*
|
|
23
|
+
* @example Usage
|
|
24
|
+
* ```ts
|
|
25
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
26
|
+
* import { assertInstanceOf } from "@std/assert/instance-of";
|
|
27
|
+
*
|
|
28
|
+
* class MyHandler extends BaseHandler {
|
|
29
|
+
* log(msg: string) {
|
|
30
|
+
* console.log(msg);
|
|
31
|
+
* }
|
|
32
|
+
* }
|
|
33
|
+
*
|
|
34
|
+
* const handler = new MyHandler("INFO");
|
|
35
|
+
* assertInstanceOf(handler, BaseHandler);
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export class BaseHandler {
|
|
39
|
+
/**
|
|
40
|
+
* Constructs a new instance.
|
|
41
|
+
*
|
|
42
|
+
* @param levelName The name of the log level to handle.
|
|
43
|
+
* @param options Options for the handler.
|
|
44
|
+
*/
|
|
45
|
+
constructor(levelName, options) {
|
|
46
|
+
_BaseHandler_levelName.set(this, void 0);
|
|
47
|
+
_BaseHandler_level.set(this, void 0);
|
|
48
|
+
/**
|
|
49
|
+
* The function that formats log records.
|
|
50
|
+
*
|
|
51
|
+
* @example Usage
|
|
52
|
+
* ```ts
|
|
53
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
54
|
+
* import { LogRecord } from "@std/log/logger";
|
|
55
|
+
* import { LogLevels } from "@std/log/levels";
|
|
56
|
+
* import { assertEquals } from "@std/assert/equals";
|
|
57
|
+
*
|
|
58
|
+
* class MyHandler extends BaseHandler {
|
|
59
|
+
* log(msg: string) {
|
|
60
|
+
* console.log(msg);
|
|
61
|
+
* }
|
|
62
|
+
* }
|
|
63
|
+
*
|
|
64
|
+
* const handler = new MyHandler("INFO");
|
|
65
|
+
* const record = new LogRecord({
|
|
66
|
+
* msg: "Hello, world!",
|
|
67
|
+
* args: ["foo", "bar"],
|
|
68
|
+
* level: LogLevels.INFO,
|
|
69
|
+
* loggerName: "example",
|
|
70
|
+
* });
|
|
71
|
+
* const formatted = handler.formatter(record);
|
|
72
|
+
* assertEquals(formatted, "INFO Hello, world!");
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
Object.defineProperty(this, "formatter", {
|
|
76
|
+
enumerable: true,
|
|
77
|
+
configurable: true,
|
|
78
|
+
writable: true,
|
|
79
|
+
value: void 0
|
|
80
|
+
});
|
|
81
|
+
const { formatter = DEFAULT_FORMATTER } = options ?? {};
|
|
82
|
+
__classPrivateFieldSet(this, _BaseHandler_levelName, levelName, "f");
|
|
83
|
+
__classPrivateFieldSet(this, _BaseHandler_level, getLevelByName(levelName), "f");
|
|
84
|
+
this.formatter = formatter;
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Getter for the log level that this handler will handle.
|
|
88
|
+
*
|
|
89
|
+
* @example Usage
|
|
90
|
+
* ```ts
|
|
91
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
92
|
+
* import { LogLevels } from "@std/log/levels";
|
|
93
|
+
* import { assertEquals } from "@std/assert/equals";
|
|
94
|
+
*
|
|
95
|
+
* class MyHandler extends BaseHandler {
|
|
96
|
+
* log(msg: string) {
|
|
97
|
+
* console.log(msg);
|
|
98
|
+
* }
|
|
99
|
+
* }
|
|
100
|
+
*
|
|
101
|
+
* const handler = new MyHandler("INFO");
|
|
102
|
+
* assertEquals(handler.level, LogLevels.INFO);
|
|
103
|
+
* ```
|
|
104
|
+
*
|
|
105
|
+
* @returns The log level to handle.
|
|
106
|
+
*/
|
|
107
|
+
get level() {
|
|
108
|
+
return __classPrivateFieldGet(this, _BaseHandler_level, "f");
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* Setter for the log level that this handler will handle.
|
|
112
|
+
*
|
|
113
|
+
* @example Usage
|
|
114
|
+
* ```ts
|
|
115
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
116
|
+
* import { LogLevels } from "@std/log/levels";
|
|
117
|
+
* import { assertEquals } from "@std/assert/equals";
|
|
118
|
+
*
|
|
119
|
+
* class MyHandler extends BaseHandler {
|
|
120
|
+
* log(msg: string) {
|
|
121
|
+
* console.log(msg);
|
|
122
|
+
* }
|
|
123
|
+
* }
|
|
124
|
+
*
|
|
125
|
+
* const handler = new MyHandler("INFO");
|
|
126
|
+
* handler.level = LogLevels.DEBUG;
|
|
127
|
+
* assertEquals(handler.level, LogLevels.DEBUG);
|
|
128
|
+
* ```
|
|
129
|
+
*
|
|
130
|
+
* @param level The log level to handle.
|
|
131
|
+
*/
|
|
132
|
+
set level(level) {
|
|
133
|
+
__classPrivateFieldSet(this, _BaseHandler_level, level, "f");
|
|
134
|
+
__classPrivateFieldSet(this, _BaseHandler_levelName, getLevelName(level), "f");
|
|
135
|
+
}
|
|
136
|
+
/**
|
|
137
|
+
* Getter for the name of the log level that this handler will handle.
|
|
138
|
+
*
|
|
139
|
+
* @example Usage
|
|
140
|
+
* ```ts
|
|
141
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
142
|
+
* import { assertEquals } from "@std/assert/equals";
|
|
143
|
+
*
|
|
144
|
+
* class MyHandler extends BaseHandler {
|
|
145
|
+
* log(msg: string) {
|
|
146
|
+
* console.log(msg);
|
|
147
|
+
* }
|
|
148
|
+
* }
|
|
149
|
+
*
|
|
150
|
+
* const handler = new MyHandler("INFO");
|
|
151
|
+
* assertEquals(handler.levelName, "INFO");
|
|
152
|
+
* ```
|
|
153
|
+
*
|
|
154
|
+
* @returns The name of the log level to handle.
|
|
155
|
+
*/
|
|
156
|
+
get levelName() {
|
|
157
|
+
return __classPrivateFieldGet(this, _BaseHandler_levelName, "f");
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* Setter for the name of the log level that this handler will handle.
|
|
161
|
+
*
|
|
162
|
+
* @param levelName The name of the log level to handle.
|
|
163
|
+
*
|
|
164
|
+
* @example Usage
|
|
165
|
+
* ```ts
|
|
166
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
167
|
+
* import { assertEquals } from "@std/assert/equals";
|
|
168
|
+
*
|
|
169
|
+
* class MyHandler extends BaseHandler {
|
|
170
|
+
* log(msg: string) {
|
|
171
|
+
* console.log(msg);
|
|
172
|
+
* }
|
|
173
|
+
* }
|
|
174
|
+
*
|
|
175
|
+
* const handler = new MyHandler("INFO");
|
|
176
|
+
* handler.levelName = "DEBUG";
|
|
177
|
+
* assertEquals(handler.levelName, "DEBUG");
|
|
178
|
+
* ```
|
|
179
|
+
*/
|
|
180
|
+
set levelName(levelName) {
|
|
181
|
+
__classPrivateFieldSet(this, _BaseHandler_levelName, levelName, "f");
|
|
182
|
+
__classPrivateFieldSet(this, _BaseHandler_level, getLevelByName(levelName), "f");
|
|
183
|
+
}
|
|
184
|
+
/**
|
|
185
|
+
* Handles a log record.
|
|
186
|
+
*
|
|
187
|
+
* @param logRecord The log record to handle.
|
|
188
|
+
*
|
|
189
|
+
* @example Usage
|
|
190
|
+
* ```ts
|
|
191
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
192
|
+
* import { LogRecord } from "@std/log/logger";
|
|
193
|
+
* import { LogLevels } from "@std/log/levels";
|
|
194
|
+
* import { assertInstanceOf } from "@std/assert/instance-of";
|
|
195
|
+
*
|
|
196
|
+
* class MyHandler extends BaseHandler {
|
|
197
|
+
* log(msg: string) {
|
|
198
|
+
* console.log(msg);
|
|
199
|
+
* }
|
|
200
|
+
* }
|
|
201
|
+
*
|
|
202
|
+
* const handler = new MyHandler("INFO");
|
|
203
|
+
* const record = new LogRecord({
|
|
204
|
+
* msg: "Hello, world!",
|
|
205
|
+
* args: ["foo", "bar"],
|
|
206
|
+
* level: LogLevels.INFO,
|
|
207
|
+
* loggerName: "example",
|
|
208
|
+
* });
|
|
209
|
+
* handler.handle(record);
|
|
210
|
+
*
|
|
211
|
+
* assertInstanceOf(handler, BaseHandler);
|
|
212
|
+
* ```
|
|
213
|
+
*/
|
|
214
|
+
handle(logRecord) {
|
|
215
|
+
if (this.level > logRecord.level)
|
|
216
|
+
return;
|
|
217
|
+
const msg = this.format(logRecord);
|
|
218
|
+
this.log(msg);
|
|
219
|
+
}
|
|
220
|
+
/**
|
|
221
|
+
* Formats a log record.
|
|
222
|
+
*
|
|
223
|
+
* @param logRecord The log record to format.
|
|
224
|
+
* @returns A string representation of the log record.
|
|
225
|
+
*
|
|
226
|
+
* @example Usage
|
|
227
|
+
* ```ts
|
|
228
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
229
|
+
* import { LogRecord } from "@std/log/logger";
|
|
230
|
+
* import { LogLevels } from "@std/log/levels";
|
|
231
|
+
* import { assertEquals } from "@std/assert/equals";
|
|
232
|
+
*
|
|
233
|
+
* class MyHandler extends BaseHandler {
|
|
234
|
+
* log(msg: string) {
|
|
235
|
+
* console.log(msg);
|
|
236
|
+
* }
|
|
237
|
+
* }
|
|
238
|
+
*
|
|
239
|
+
* const handler = new MyHandler("INFO");
|
|
240
|
+
* const record = new LogRecord({
|
|
241
|
+
* msg: "Hello, world!",
|
|
242
|
+
* args: ["foo", "bar"],
|
|
243
|
+
* level: LogLevels.INFO,
|
|
244
|
+
* loggerName: "example",
|
|
245
|
+
* });
|
|
246
|
+
* const formatted = handler.format(record);
|
|
247
|
+
* assertEquals(formatted, "INFO Hello, world!");
|
|
248
|
+
* ```
|
|
249
|
+
*/
|
|
250
|
+
format(logRecord) {
|
|
251
|
+
return this.formatter(logRecord);
|
|
252
|
+
}
|
|
253
|
+
/**
|
|
254
|
+
* Initializes the handler.
|
|
255
|
+
*
|
|
256
|
+
* This method is called when the handler is added to a logger. It can be
|
|
257
|
+
* used to perform any setup that is required by the handler.
|
|
258
|
+
*
|
|
259
|
+
* @example Usage
|
|
260
|
+
* ```ts
|
|
261
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
262
|
+
* import { assertInstanceOf } from "@std/assert/instance-of";
|
|
263
|
+
*
|
|
264
|
+
* class MyHandler extends BaseHandler {
|
|
265
|
+
* log(msg: string) {
|
|
266
|
+
* console.log(msg);
|
|
267
|
+
* }
|
|
268
|
+
*
|
|
269
|
+
* override setup() {
|
|
270
|
+
* console.log("Handler setup!");
|
|
271
|
+
* }
|
|
272
|
+
* }
|
|
273
|
+
*
|
|
274
|
+
* const handler = new MyHandler("INFO");
|
|
275
|
+
* handler.setup(); // Prints "Handler setup!"
|
|
276
|
+
*
|
|
277
|
+
* assertInstanceOf(handler, BaseHandler);
|
|
278
|
+
* ```
|
|
279
|
+
*/
|
|
280
|
+
setup() { }
|
|
281
|
+
/**
|
|
282
|
+
* Destroys the handler, performing any cleanup that is required.
|
|
283
|
+
*
|
|
284
|
+
* This method is called when the handler is removed from a logger. It can be
|
|
285
|
+
* used to perform any cleanup that is required by the handler.
|
|
286
|
+
*
|
|
287
|
+
* @example Usage
|
|
288
|
+
* ```ts
|
|
289
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
290
|
+
* import { assertInstanceOf } from "@std/assert/instance-of";
|
|
291
|
+
*
|
|
292
|
+
* class MyHandler extends BaseHandler {
|
|
293
|
+
* log(msg: string) {
|
|
294
|
+
* console.log(msg);
|
|
295
|
+
* }
|
|
296
|
+
*
|
|
297
|
+
* override destroy() {
|
|
298
|
+
* console.log("Handler destroyed!");
|
|
299
|
+
* }
|
|
300
|
+
* }
|
|
301
|
+
*
|
|
302
|
+
* const handler = new MyHandler("INFO");
|
|
303
|
+
* handler.destroy(); // Prints "Handler destroyed!"
|
|
304
|
+
* assertInstanceOf(handler, BaseHandler);
|
|
305
|
+
* ```
|
|
306
|
+
*/
|
|
307
|
+
destroy() { }
|
|
308
|
+
/**
|
|
309
|
+
* Automatically disposes of the handler when instantiated with the `using`
|
|
310
|
+
* keyword by calling the {@linkcode BaseHandler.destroy} method.
|
|
311
|
+
*
|
|
312
|
+
* @example Usage
|
|
313
|
+
* ```ts
|
|
314
|
+
* import { BaseHandler } from "@std/log/base-handler";
|
|
315
|
+
* import { LogRecord } from "@std/log/logger";
|
|
316
|
+
* import { assertInstanceOf } from "@std/assert/instance-of";
|
|
317
|
+
*
|
|
318
|
+
* class MyHandler extends BaseHandler {
|
|
319
|
+
* log(msg: string) {
|
|
320
|
+
* console.log(msg);
|
|
321
|
+
* }
|
|
322
|
+
* }
|
|
323
|
+
*
|
|
324
|
+
* using handler = new MyHandler("INFO");
|
|
325
|
+
* assertInstanceOf(handler, BaseHandler);
|
|
326
|
+
* ```
|
|
327
|
+
*/
|
|
328
|
+
[(_BaseHandler_levelName = new WeakMap(), _BaseHandler_level = new WeakMap(), Symbol.dispose)]() {
|
|
329
|
+
this.destroy();
|
|
330
|
+
}
|
|
331
|
+
}
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
|
|
2
|
+
if (kind === "m") throw new TypeError("Private method is not writable");
|
|
3
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
|
|
4
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
|
|
5
|
+
return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
|
|
6
|
+
};
|
|
7
|
+
var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
|
|
8
|
+
if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
|
|
9
|
+
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
|
+
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
|
+
};
|
|
12
|
+
var _ConsoleHandler_useColors;
|
|
13
|
+
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
|
14
|
+
// This module is browser compatible.
|
|
15
|
+
import { LogLevels } from "./levels.js";
|
|
16
|
+
import { blue, bold, red, yellow } from "../../fmt/1.0.2/colors.js";
|
|
17
|
+
import { BaseHandler } from "./base_handler.js";
|
|
18
|
+
function applyColors(msg, level) {
|
|
19
|
+
switch (level) {
|
|
20
|
+
case LogLevels.INFO:
|
|
21
|
+
msg = blue(msg);
|
|
22
|
+
break;
|
|
23
|
+
case LogLevels.WARN:
|
|
24
|
+
msg = yellow(msg);
|
|
25
|
+
break;
|
|
26
|
+
case LogLevels.ERROR:
|
|
27
|
+
msg = red(msg);
|
|
28
|
+
break;
|
|
29
|
+
case LogLevels.CRITICAL:
|
|
30
|
+
msg = bold(red(msg));
|
|
31
|
+
break;
|
|
32
|
+
default:
|
|
33
|
+
break;
|
|
34
|
+
}
|
|
35
|
+
return msg;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Default logger that outputs log messages to the console via
|
|
39
|
+
* {@linkcode console.log}.
|
|
40
|
+
*
|
|
41
|
+
* @example Usage
|
|
42
|
+
* ```ts no-assert
|
|
43
|
+
* import { ConsoleHandler } from "@std/log/console-handler";
|
|
44
|
+
*
|
|
45
|
+
* const handler = new ConsoleHandler("INFO");
|
|
46
|
+
* handler.log("Hello, world!"); // Prints "Hello, world!"
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
export class ConsoleHandler extends BaseHandler {
|
|
50
|
+
/**
|
|
51
|
+
* Constructs a new instance.
|
|
52
|
+
*
|
|
53
|
+
* @param levelName The level name to log messages at.
|
|
54
|
+
* @param options Options for the handler.
|
|
55
|
+
*/
|
|
56
|
+
constructor(levelName, options = {}) {
|
|
57
|
+
super(levelName, options);
|
|
58
|
+
_ConsoleHandler_useColors.set(this, void 0);
|
|
59
|
+
__classPrivateFieldSet(this, _ConsoleHandler_useColors, options.useColors ?? true, "f");
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Formats a log record into a string.
|
|
63
|
+
*
|
|
64
|
+
* @example Usage
|
|
65
|
+
* ```ts
|
|
66
|
+
* import { ConsoleHandler } from "@std/log/console-handler";
|
|
67
|
+
* import { LogRecord } from "@std/log/logger";
|
|
68
|
+
* import { LogLevels } from "@std/log/levels";
|
|
69
|
+
* import { assertEquals } from "@std/assert/equals";
|
|
70
|
+
* import { blue } from "@std/fmt/colors";
|
|
71
|
+
*
|
|
72
|
+
* const handler = new ConsoleHandler("INFO");
|
|
73
|
+
* const logRecord = new LogRecord({
|
|
74
|
+
* msg: "Hello, world!",
|
|
75
|
+
* args: ["foo", "bar"],
|
|
76
|
+
* level: LogLevels.INFO,
|
|
77
|
+
* loggerName: "my-logger",
|
|
78
|
+
* });
|
|
79
|
+
* const result = handler.format(logRecord);
|
|
80
|
+
*
|
|
81
|
+
* assertEquals(result, blue("INFO Hello, world!"));
|
|
82
|
+
* ```
|
|
83
|
+
*
|
|
84
|
+
* @param logRecord The log record to format.
|
|
85
|
+
* @returns The formatted log record.
|
|
86
|
+
*/
|
|
87
|
+
format(logRecord) {
|
|
88
|
+
let msg = super.format(logRecord);
|
|
89
|
+
if (__classPrivateFieldGet(this, _ConsoleHandler_useColors, "f")) {
|
|
90
|
+
msg = applyColors(msg, logRecord.level);
|
|
91
|
+
}
|
|
92
|
+
return msg;
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Logs a message to the console.
|
|
96
|
+
*
|
|
97
|
+
* @example Usage
|
|
98
|
+
* ```ts no-assert
|
|
99
|
+
* import { ConsoleHandler } from "@std/log/console-handler";
|
|
100
|
+
*
|
|
101
|
+
* const handler = new ConsoleHandler("INFO");
|
|
102
|
+
* handler.log("Hello, world!"); // Prints "Hello, world!"
|
|
103
|
+
* ```
|
|
104
|
+
*
|
|
105
|
+
* @param msg The message to log.
|
|
106
|
+
*/
|
|
107
|
+
log(msg) {
|
|
108
|
+
// deno-lint-ignore no-console
|
|
109
|
+
console.log(msg);
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
_ConsoleHandler_useColors = new WeakMap();
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
|
2
2
|
// This module is browser compatible.
|
|
3
3
|
import { getLogger } from "./get_logger.js";
|
|
4
|
+
import "./setup.js";
|
|
4
5
|
export function critical(msg, ...args) {
|
|
5
6
|
// Assist TS compiler with pass-through generic type
|
|
6
7
|
if (msg instanceof Function) {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
|
2
2
|
// This module is browser compatible.
|
|
3
3
|
import { getLogger } from "./get_logger.js";
|
|
4
|
+
import "./setup.js";
|
|
4
5
|
export function debug(msg, ...args) {
|
|
5
6
|
// Assist TS compiler with pass-through generic type
|
|
6
7
|
if (msg instanceof Function) {
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
|
2
2
|
// This module is browser compatible.
|
|
3
3
|
import { getLogger } from "./get_logger.js";
|
|
4
|
+
import "./setup.js";
|
|
4
5
|
export function error(msg, ...args) {
|
|
5
6
|
// Assist TS compiler with pass-through generic type
|
|
6
7
|
if (msg instanceof Function) {
|
|
@@ -8,7 +8,7 @@ var _FileHandler_instances, _FileHandler_unloadCallback, _FileHandler_resetBuffe
|
|
|
8
8
|
import * as dntShim from "../../../../../_dnt.shims.js";
|
|
9
9
|
import { LogLevels } from "./levels.js";
|
|
10
10
|
import { BaseHandler } from "./base_handler.js";
|
|
11
|
-
import { writeAllSync } from "../../io/0.
|
|
11
|
+
import { writeAllSync } from "../../io/0.225.0/write_all.js";
|
|
12
12
|
import { bufSymbol, encoderSymbol, filenameSymbol, fileSymbol, modeSymbol, openOptionsSymbol, pointerSymbol, } from "./_file_handler_symbols.js";
|
|
13
13
|
/**
|
|
14
14
|
* This handler will output to a file using an optional mode (default is `a`,
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* JSON log formatter.
|
|
3
|
+
*
|
|
4
|
+
* @example Usage
|
|
5
|
+
* ```ts
|
|
6
|
+
* import { LogRecord } from "@std/log/logger";
|
|
7
|
+
* import { jsonFormatter } from "@std/log/formatters";
|
|
8
|
+
* import { LogLevels } from "@std/log/levels";
|
|
9
|
+
* import { assertEquals } from "@std/assert/equals";
|
|
10
|
+
*
|
|
11
|
+
* const record = new LogRecord({
|
|
12
|
+
* msg: "Hello, world!",
|
|
13
|
+
* args: ["foo", "bar"],
|
|
14
|
+
* level: LogLevels.INFO,
|
|
15
|
+
* loggerName: "example",
|
|
16
|
+
* });
|
|
17
|
+
* const formatted = jsonFormatter(record);
|
|
18
|
+
*
|
|
19
|
+
* assertEquals(
|
|
20
|
+
* formatted,
|
|
21
|
+
* `{"level":"INFO","datetime":${record.datetime.getTime()},"message":"Hello, world!","args":["foo","bar"]}`,
|
|
22
|
+
* );
|
|
23
|
+
* ```
|
|
24
|
+
*
|
|
25
|
+
* @param logRecord Log record to format.
|
|
26
|
+
* @returns JSON string representation of the log record.
|
|
27
|
+
*/
|
|
28
|
+
export function jsonFormatter(logRecord) {
|
|
29
|
+
return JSON.stringify({
|
|
30
|
+
level: logRecord.levelName,
|
|
31
|
+
datetime: logRecord.datetime.getTime(),
|
|
32
|
+
message: logRecord.msg,
|
|
33
|
+
args: flattenArgs(logRecord.args),
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
function flattenArgs(args) {
|
|
37
|
+
if (args.length === 1) {
|
|
38
|
+
return args[0];
|
|
39
|
+
}
|
|
40
|
+
else if (args.length > 1) {
|
|
41
|
+
return args;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
/** Formatters for log records. */
|
|
45
|
+
export const formatters = { jsonFormatter };
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
|
2
|
+
// This module is browser compatible.
|
|
3
|
+
import { Logger } from "./logger.js";
|
|
4
|
+
import { state } from "./_state.js";
|
|
5
|
+
/**
|
|
6
|
+
* Get a logger instance. If not specified `name`, get the default logger.
|
|
7
|
+
*
|
|
8
|
+
* @param name The name of the logger.
|
|
9
|
+
* @returns The logger instance.
|
|
10
|
+
*
|
|
11
|
+
* @example Usage (without defined name and minimal setup)
|
|
12
|
+
* ```ts
|
|
13
|
+
* import { getLogger } from "@std/log/get-logger";
|
|
14
|
+
* import "@std/log/setup";
|
|
15
|
+
* import { assertEquals } from "@std/assert/equals";
|
|
16
|
+
*
|
|
17
|
+
* const logger = getLogger();
|
|
18
|
+
* const result = logger.info("Hello world!"); // Prints "INFO Hello world!" in blue
|
|
19
|
+
*
|
|
20
|
+
* assertEquals(result, "Hello world!");
|
|
21
|
+
* ```
|
|
22
|
+
*
|
|
23
|
+
* @example Usage (without defined name and custom setup)
|
|
24
|
+
* ```ts
|
|
25
|
+
* import { getLogger } from "@std/log/get-logger";
|
|
26
|
+
* import { ConsoleHandler } from "@std/log/console-handler";
|
|
27
|
+
* import { setup } from "@std/log/setup";
|
|
28
|
+
* import { assertEquals } from "@std/assert/equals";
|
|
29
|
+
*
|
|
30
|
+
* setup({
|
|
31
|
+
* handlers: {
|
|
32
|
+
* console: new ConsoleHandler("DEBUG"),
|
|
33
|
+
* },
|
|
34
|
+
* loggers: {
|
|
35
|
+
* default: {
|
|
36
|
+
* level: "DEBUG",
|
|
37
|
+
* handlers: ["console"],
|
|
38
|
+
* },
|
|
39
|
+
* },
|
|
40
|
+
* });
|
|
41
|
+
*
|
|
42
|
+
* const logger = getLogger();
|
|
43
|
+
*
|
|
44
|
+
* const result = logger.info("Hello world!"); // Prints "INFO Hello world!" in blue
|
|
45
|
+
*
|
|
46
|
+
* assertEquals(result, "Hello world!");
|
|
47
|
+
* ```
|
|
48
|
+
*
|
|
49
|
+
* @example Usage (with defined name)
|
|
50
|
+
* ```ts
|
|
51
|
+
* import { getLogger } from "@std/log/get-logger";
|
|
52
|
+
* import { assertEquals } from "@std/assert/equals";
|
|
53
|
+
*
|
|
54
|
+
* const logger = getLogger("my-logger");
|
|
55
|
+
* const result = logger.info("Hello world!");
|
|
56
|
+
*
|
|
57
|
+
* assertEquals(result, "Hello world!");
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
export function getLogger(name) {
|
|
61
|
+
if (!name) {
|
|
62
|
+
const d = state.loggers.get("default");
|
|
63
|
+
if (d === undefined) {
|
|
64
|
+
throw new Error(`"default" logger must be set for getting logger without name`);
|
|
65
|
+
}
|
|
66
|
+
return d;
|
|
67
|
+
}
|
|
68
|
+
const result = state.loggers.get(name);
|
|
69
|
+
if (!result) {
|
|
70
|
+
const logger = new Logger(name, "NOTSET", { handlers: [] });
|
|
71
|
+
state.loggers.set(name, logger);
|
|
72
|
+
return logger;
|
|
73
|
+
}
|
|
74
|
+
return result;
|
|
75
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
|
2
2
|
// This module is browser compatible.
|
|
3
3
|
import { getLogger } from "./get_logger.js";
|
|
4
|
+
import "./setup.js";
|
|
4
5
|
export function info(msg, ...args) {
|
|
5
6
|
// Assist TS compiler with pass-through generic type
|
|
6
7
|
if (msg instanceof Function) {
|