conduithub 0.0.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.
package/dist/index.cjs ADDED
@@ -0,0 +1,10 @@
1
+ 'use strict';
2
+
3
+ const utils_index = require('./utils/index.cjs');
4
+
5
+
6
+
7
+ exports.createLogger = utils_index.createLogger;
8
+ exports.levels = utils_index.levels;
9
+ exports.logger = utils_index.logger;
10
+ exports.shouldPublishLog = utils_index.shouldPublishLog;
@@ -0,0 +1 @@
1
+ export { LogHandlerParams, LogLevel, Logger, createLogger, levels, logger, shouldPublishLog } from './utils/index.cjs';
@@ -0,0 +1 @@
1
+ export { LogHandlerParams, LogLevel, Logger, createLogger, levels, logger, shouldPublishLog } from './utils/index.mjs';
@@ -0,0 +1 @@
1
+ export { LogHandlerParams, LogLevel, Logger, createLogger, levels, logger, shouldPublishLog } from './utils/index.js';
package/dist/index.mjs ADDED
@@ -0,0 +1 @@
1
+ export { createLogger, levels, logger, shouldPublishLog } from './utils/index.mjs';
@@ -0,0 +1,58 @@
1
+ 'use strict';
2
+
3
+ const levels = ["info", "success", "warn", "error", "debug"];
4
+ function shouldPublishLog(currentLogLevel, logLevel) {
5
+ return levels.indexOf(logLevel) <= levels.indexOf(currentLogLevel);
6
+ }
7
+ const colors = {
8
+ reset: "\x1B[0m",
9
+ bright: "\x1B[1m",
10
+ dim: "\x1B[2m",
11
+ fg: {
12
+ red: "\x1B[31m",
13
+ green: "\x1B[32m",
14
+ yellow: "\x1B[33m",
15
+ blue: "\x1B[34m",
16
+ magenta: "\x1B[35m"}};
17
+ const levelColors = {
18
+ info: colors.fg.blue,
19
+ success: colors.fg.green,
20
+ warn: colors.fg.yellow,
21
+ error: colors.fg.red,
22
+ debug: colors.fg.magenta
23
+ };
24
+ const formatMessage = (level, message, name) => {
25
+ const timestamp = (/* @__PURE__ */ new Date()).toISOString();
26
+ return `${colors.dim}${timestamp}${colors.reset} ${levelColors[level]}${level.toUpperCase()}${colors.reset} ${colors.bright}[${name ?? "ConduiHub"}]:${colors.reset} ${message}`;
27
+ };
28
+ const createLogger = (options) => {
29
+ const enabled = options?.disabled !== true;
30
+ const logLevel = options?.level ?? "error";
31
+ const name = options?.name ?? "ConduiHub";
32
+ const LogFunc = (level, message, args = []) => {
33
+ if (!enabled || !shouldPublishLog(logLevel, level)) {
34
+ return;
35
+ }
36
+ const formattedMessage = formatMessage(level, message, name);
37
+ if (!options || typeof options.log !== "function") {
38
+ if (level === "error") {
39
+ console.error(formattedMessage, ...args);
40
+ } else if (level === "warn") {
41
+ console.warn(formattedMessage, ...args);
42
+ } else {
43
+ console.log(formattedMessage, ...args);
44
+ }
45
+ return;
46
+ }
47
+ options.log(level === "success" ? "info" : level, message, ...args);
48
+ };
49
+ return Object.fromEntries(
50
+ levels.map((level) => [level, (...[message, ...args]) => LogFunc(level, message, args)])
51
+ );
52
+ };
53
+ const logger = createLogger();
54
+
55
+ exports.createLogger = createLogger;
56
+ exports.levels = levels;
57
+ exports.logger = logger;
58
+ exports.shouldPublishLog = shouldPublishLog;
@@ -0,0 +1,15 @@
1
+ type LogLevel = "info" | "success" | "warn" | "error" | "debug";
2
+ declare const levels: readonly ["info", "success", "warn", "error", "debug"];
3
+ declare function shouldPublishLog(currentLogLevel: LogLevel, logLevel: LogLevel): boolean;
4
+ interface Logger {
5
+ disabled?: boolean;
6
+ level?: Exclude<LogLevel, "success">;
7
+ name?: string;
8
+ log?: (level: Exclude<LogLevel, "success">, message: string, ...args: unknown[]) => void;
9
+ }
10
+ type LogHandlerParams = Parameters<NonNullable<Logger["log"]>> extends [LogLevel, ...infer Rest] ? Rest : never;
11
+ declare const createLogger: (options?: Logger) => Record<LogLevel, (...params: LogHandlerParams) => void>;
12
+ declare const logger: Record<LogLevel, (message: string, ...args: unknown[]) => void>;
13
+
14
+ export { createLogger, levels, logger, shouldPublishLog };
15
+ export type { LogHandlerParams, LogLevel, Logger };
@@ -0,0 +1,15 @@
1
+ type LogLevel = "info" | "success" | "warn" | "error" | "debug";
2
+ declare const levels: readonly ["info", "success", "warn", "error", "debug"];
3
+ declare function shouldPublishLog(currentLogLevel: LogLevel, logLevel: LogLevel): boolean;
4
+ interface Logger {
5
+ disabled?: boolean;
6
+ level?: Exclude<LogLevel, "success">;
7
+ name?: string;
8
+ log?: (level: Exclude<LogLevel, "success">, message: string, ...args: unknown[]) => void;
9
+ }
10
+ type LogHandlerParams = Parameters<NonNullable<Logger["log"]>> extends [LogLevel, ...infer Rest] ? Rest : never;
11
+ declare const createLogger: (options?: Logger) => Record<LogLevel, (...params: LogHandlerParams) => void>;
12
+ declare const logger: Record<LogLevel, (message: string, ...args: unknown[]) => void>;
13
+
14
+ export { createLogger, levels, logger, shouldPublishLog };
15
+ export type { LogHandlerParams, LogLevel, Logger };
@@ -0,0 +1,15 @@
1
+ type LogLevel = "info" | "success" | "warn" | "error" | "debug";
2
+ declare const levels: readonly ["info", "success", "warn", "error", "debug"];
3
+ declare function shouldPublishLog(currentLogLevel: LogLevel, logLevel: LogLevel): boolean;
4
+ interface Logger {
5
+ disabled?: boolean;
6
+ level?: Exclude<LogLevel, "success">;
7
+ name?: string;
8
+ log?: (level: Exclude<LogLevel, "success">, message: string, ...args: unknown[]) => void;
9
+ }
10
+ type LogHandlerParams = Parameters<NonNullable<Logger["log"]>> extends [LogLevel, ...infer Rest] ? Rest : never;
11
+ declare const createLogger: (options?: Logger) => Record<LogLevel, (...params: LogHandlerParams) => void>;
12
+ declare const logger: Record<LogLevel, (message: string, ...args: unknown[]) => void>;
13
+
14
+ export { createLogger, levels, logger, shouldPublishLog };
15
+ export type { LogHandlerParams, LogLevel, Logger };
@@ -0,0 +1,53 @@
1
+ const levels = ["info", "success", "warn", "error", "debug"];
2
+ function shouldPublishLog(currentLogLevel, logLevel) {
3
+ return levels.indexOf(logLevel) <= levels.indexOf(currentLogLevel);
4
+ }
5
+ const colors = {
6
+ reset: "\x1B[0m",
7
+ bright: "\x1B[1m",
8
+ dim: "\x1B[2m",
9
+ fg: {
10
+ red: "\x1B[31m",
11
+ green: "\x1B[32m",
12
+ yellow: "\x1B[33m",
13
+ blue: "\x1B[34m",
14
+ magenta: "\x1B[35m"}};
15
+ const levelColors = {
16
+ info: colors.fg.blue,
17
+ success: colors.fg.green,
18
+ warn: colors.fg.yellow,
19
+ error: colors.fg.red,
20
+ debug: colors.fg.magenta
21
+ };
22
+ const formatMessage = (level, message, name) => {
23
+ const timestamp = (/* @__PURE__ */ new Date()).toISOString();
24
+ return `${colors.dim}${timestamp}${colors.reset} ${levelColors[level]}${level.toUpperCase()}${colors.reset} ${colors.bright}[${name ?? "ConduiHub"}]:${colors.reset} ${message}`;
25
+ };
26
+ const createLogger = (options) => {
27
+ const enabled = options?.disabled !== true;
28
+ const logLevel = options?.level ?? "error";
29
+ const name = options?.name ?? "ConduiHub";
30
+ const LogFunc = (level, message, args = []) => {
31
+ if (!enabled || !shouldPublishLog(logLevel, level)) {
32
+ return;
33
+ }
34
+ const formattedMessage = formatMessage(level, message, name);
35
+ if (!options || typeof options.log !== "function") {
36
+ if (level === "error") {
37
+ console.error(formattedMessage, ...args);
38
+ } else if (level === "warn") {
39
+ console.warn(formattedMessage, ...args);
40
+ } else {
41
+ console.log(formattedMessage, ...args);
42
+ }
43
+ return;
44
+ }
45
+ options.log(level === "success" ? "info" : level, message, ...args);
46
+ };
47
+ return Object.fromEntries(
48
+ levels.map((level) => [level, (...[message, ...args]) => LogFunc(level, message, args)])
49
+ );
50
+ };
51
+ const logger = createLogger();
52
+
53
+ export { createLogger, levels, logger, shouldPublishLog };
package/package.json ADDED
@@ -0,0 +1,73 @@
1
+ {
2
+ "name": "conduithub",
3
+ "version": "0.0.1",
4
+ "description": "",
5
+ "type": "module",
6
+ "license": "MIT",
7
+ "author": "Samson Tesfaye(aka @haxurn)",
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "https://github.com/haxurn/axova",
11
+ "directory": "packages/conduithub"
12
+ },
13
+ "keywords": [
14
+ "kafka",
15
+ "elasticsearch",
16
+ "redis",
17
+ "typescript",
18
+ "all-in-one"
19
+ ],
20
+ "publishConfig": {
21
+ "access": "public"
22
+ },
23
+ "main": "./dist/index.cjs",
24
+ "module": "./dist/index.mjs",
25
+ "exports": {
26
+ ".": {
27
+ "import": {
28
+ "types": "./dist/index.d.ts",
29
+ "default": "./dist/index.mjs"
30
+ },
31
+ "require": {
32
+ "types": "./dist/index.d.cts",
33
+ "default": "./dist/index.cjs"
34
+ }
35
+ },
36
+ "./utils": {
37
+ "import": {
38
+ "types": "./dist/utils/index.d.ts",
39
+ "default": "./dist/utils/index.mjs"
40
+ },
41
+ "require": {
42
+ "types": "./dist/utils/index.d.cts",
43
+ "default": "./dist/utils/index.cjs"
44
+ }
45
+ }
46
+ },
47
+ "typeVersion": {
48
+ "*": {
49
+ "*": [
50
+ "./dist/index.d.ts"
51
+ ],
52
+ "utils": [
53
+ "./dist/utils/index.d.ts"
54
+ ]
55
+ }
56
+ },
57
+ "files": [
58
+ "dist"
59
+ ],
60
+ "devDependencies": {
61
+ "concurrently": "^9.2.0",
62
+ "unbuild": "^3.6.0",
63
+ "vitest": "^3.2.4"
64
+ },
65
+ "scripts": {
66
+ "build": "unbuild --clean",
67
+ "dev": "concurrently \"unbuild --watch\" \"npm run dev:types\"",
68
+ "dev:types": "tsc --project tsconfig.declarations.json --watch",
69
+ "build:types": "tsc --project tsconfig.declarations.json",
70
+ "stub": "unbuild --stub",
71
+ "test": "vitest"
72
+ }
73
+ }