digital-zen-pack 0.0.4 → 0.1.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/dist/helpers/index.d.ts +1 -0
- package/dist/helpers/index.js +1 -0
- package/dist/helpers/logger.d.ts +57 -0
- package/dist/helpers/logger.js +102 -0
- package/dist/main.d.ts +1 -1
- package/dist/main.js +1 -1
- package/dist/style.css +64 -0
- package/package.json +10 -8
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './logger.js';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './logger.js';
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Universal Logger
|
|
3
|
+
*
|
|
4
|
+
* A logger that works in both Angular and Chrome Extension background contexts.
|
|
5
|
+
* Provides structured logging with module prefixes and log levels.
|
|
6
|
+
*/
|
|
7
|
+
export declare enum LogLevel {
|
|
8
|
+
DEBUG = 0,
|
|
9
|
+
INFO = 1,
|
|
10
|
+
WARN = 2,
|
|
11
|
+
ERROR = 3,
|
|
12
|
+
NONE = 4
|
|
13
|
+
}
|
|
14
|
+
export interface LoggerConfig {
|
|
15
|
+
level: LogLevel;
|
|
16
|
+
enableTimestamp: boolean;
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* Logger instance with prefixed methods
|
|
20
|
+
*/
|
|
21
|
+
export interface ModuleLogger {
|
|
22
|
+
debug: (...args: unknown[]) => void;
|
|
23
|
+
info: (...args: unknown[]) => void;
|
|
24
|
+
warn: (...args: unknown[]) => void;
|
|
25
|
+
error: (...args: unknown[]) => void;
|
|
26
|
+
}
|
|
27
|
+
export declare class UniversalLogger {
|
|
28
|
+
#private;
|
|
29
|
+
/**
|
|
30
|
+
* Configure the logger
|
|
31
|
+
*/
|
|
32
|
+
configure(config: Partial<LoggerConfig>): void;
|
|
33
|
+
/**
|
|
34
|
+
* Get current configuration
|
|
35
|
+
*/
|
|
36
|
+
getConfig(): LoggerConfig;
|
|
37
|
+
/**
|
|
38
|
+
* Create a prefixed logger for a specific module
|
|
39
|
+
*/
|
|
40
|
+
createLogger(prefix: string): ModuleLogger;
|
|
41
|
+
/**
|
|
42
|
+
* Log at DEBUG level
|
|
43
|
+
*/
|
|
44
|
+
debug(prefix: string, ...args: unknown[]): void;
|
|
45
|
+
/**
|
|
46
|
+
* Log at INFO level
|
|
47
|
+
*/
|
|
48
|
+
info(prefix: string, ...args: unknown[]): void;
|
|
49
|
+
/**
|
|
50
|
+
* Log at WARN level
|
|
51
|
+
*/
|
|
52
|
+
warn(prefix: string, ...args: unknown[]): void;
|
|
53
|
+
/**
|
|
54
|
+
* Log at ERROR level
|
|
55
|
+
*/
|
|
56
|
+
error(prefix: string, ...args: unknown[]): void;
|
|
57
|
+
}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Universal Logger
|
|
3
|
+
*
|
|
4
|
+
* A logger that works in both Angular and Chrome Extension background contexts.
|
|
5
|
+
* Provides structured logging with module prefixes and log levels.
|
|
6
|
+
*/
|
|
7
|
+
export var LogLevel;
|
|
8
|
+
(function (LogLevel) {
|
|
9
|
+
LogLevel[LogLevel["DEBUG"] = 0] = "DEBUG";
|
|
10
|
+
LogLevel[LogLevel["INFO"] = 1] = "INFO";
|
|
11
|
+
LogLevel[LogLevel["WARN"] = 2] = "WARN";
|
|
12
|
+
LogLevel[LogLevel["ERROR"] = 3] = "ERROR";
|
|
13
|
+
LogLevel[LogLevel["NONE"] = 4] = "NONE";
|
|
14
|
+
})(LogLevel || (LogLevel = {}));
|
|
15
|
+
export class UniversalLogger {
|
|
16
|
+
#config = {
|
|
17
|
+
level: LogLevel.INFO,
|
|
18
|
+
enableTimestamp: true,
|
|
19
|
+
};
|
|
20
|
+
/**
|
|
21
|
+
* Configure the logger
|
|
22
|
+
*/
|
|
23
|
+
configure(config) {
|
|
24
|
+
this.#config = { ...this.#config, ...config };
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Get current configuration
|
|
28
|
+
*/
|
|
29
|
+
getConfig() {
|
|
30
|
+
return { ...this.#config };
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Create a prefixed logger for a specific module
|
|
34
|
+
*/
|
|
35
|
+
createLogger(prefix) {
|
|
36
|
+
return {
|
|
37
|
+
debug: (...args) => this.#log(LogLevel.DEBUG, prefix, ...args),
|
|
38
|
+
info: (...args) => this.#log(LogLevel.INFO, prefix, ...args),
|
|
39
|
+
warn: (...args) => this.#log(LogLevel.WARN, prefix, ...args),
|
|
40
|
+
error: (...args) => this.#log(LogLevel.ERROR, prefix, ...args),
|
|
41
|
+
};
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Log at DEBUG level
|
|
45
|
+
*/
|
|
46
|
+
debug(prefix, ...args) {
|
|
47
|
+
this.#log(LogLevel.DEBUG, prefix, ...args);
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Log at INFO level
|
|
51
|
+
*/
|
|
52
|
+
info(prefix, ...args) {
|
|
53
|
+
this.#log(LogLevel.INFO, prefix, ...args);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Log at WARN level
|
|
57
|
+
*/
|
|
58
|
+
warn(prefix, ...args) {
|
|
59
|
+
this.#log(LogLevel.WARN, prefix, ...args);
|
|
60
|
+
}
|
|
61
|
+
/**
|
|
62
|
+
* Log at ERROR level
|
|
63
|
+
*/
|
|
64
|
+
error(prefix, ...args) {
|
|
65
|
+
this.#log(LogLevel.ERROR, prefix, ...args);
|
|
66
|
+
}
|
|
67
|
+
#log(level, prefix, ...args) {
|
|
68
|
+
if (level < this.#config.level) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
const timestamp = this.#config.enableTimestamp ? `[${new Date().toISOString()}]` : '';
|
|
72
|
+
const levelStr = this.#getLevelString(level);
|
|
73
|
+
const prefixStr = prefix ? `[${prefix}]` : '';
|
|
74
|
+
const logPrefix = [timestamp, levelStr, prefixStr].filter(Boolean).join(' ');
|
|
75
|
+
switch (level) {
|
|
76
|
+
case LogLevel.DEBUG:
|
|
77
|
+
case LogLevel.INFO:
|
|
78
|
+
console.log(logPrefix, ...args);
|
|
79
|
+
break;
|
|
80
|
+
case LogLevel.WARN:
|
|
81
|
+
console.warn(logPrefix, ...args);
|
|
82
|
+
break;
|
|
83
|
+
case LogLevel.ERROR:
|
|
84
|
+
console.error(logPrefix, ...args);
|
|
85
|
+
break;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
#getLevelString(level) {
|
|
89
|
+
switch (level) {
|
|
90
|
+
case LogLevel.DEBUG:
|
|
91
|
+
return '[DEBUG]';
|
|
92
|
+
case LogLevel.INFO:
|
|
93
|
+
return '[INFO]';
|
|
94
|
+
case LogLevel.WARN:
|
|
95
|
+
return '[WARN]';
|
|
96
|
+
case LogLevel.ERROR:
|
|
97
|
+
return '[ERROR]';
|
|
98
|
+
default:
|
|
99
|
+
return '';
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
}
|
package/dist/main.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
package/dist/main.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
export {};
|
package/dist/style.css
CHANGED
|
@@ -485,3 +485,67 @@
|
|
|
485
485
|
.dz-banner--lg .dz-banner__title {
|
|
486
486
|
font-size: var(--font-size-lg);
|
|
487
487
|
}
|
|
488
|
+
|
|
489
|
+
.shadow {
|
|
490
|
+
box-shadow: 0 4px 6px var(--shadow-color);
|
|
491
|
+
transition: transform 0.3s, box-shadow 0.3s;
|
|
492
|
+
}
|
|
493
|
+
.shadow:hover {
|
|
494
|
+
box-shadow: 0 6px 8px var(--shadow-color);
|
|
495
|
+
}
|
|
496
|
+
.shadow:hover:has(.shadow:hover) {
|
|
497
|
+
box-shadow: 0 4px 6px var(--shadow-color);
|
|
498
|
+
}
|
|
499
|
+
.shadow--activated {
|
|
500
|
+
box-shadow: 0 4px 6px var(--color-zen-accent);
|
|
501
|
+
}
|
|
502
|
+
.shadow--activated:hover {
|
|
503
|
+
box-shadow: 0 6px 8px var(--color-zen-accent);
|
|
504
|
+
}
|
|
505
|
+
.shadow--activated:hover:has(.shadow:hover) {
|
|
506
|
+
box-shadow: 0 4px 6px var(--color-zen-accent);
|
|
507
|
+
}
|
|
508
|
+
.shadow--hoverless:hover {
|
|
509
|
+
box-shadow: 0 4px 6px var(--shadow-color);
|
|
510
|
+
}
|
|
511
|
+
|
|
512
|
+
@keyframes pulse {
|
|
513
|
+
0% {
|
|
514
|
+
transform: scale(1);
|
|
515
|
+
}
|
|
516
|
+
70% {
|
|
517
|
+
transform: scale(1.3);
|
|
518
|
+
}
|
|
519
|
+
100% {
|
|
520
|
+
transform: scale(1);
|
|
521
|
+
}
|
|
522
|
+
}
|
|
523
|
+
.pulse {
|
|
524
|
+
animation: pulse 3s infinite;
|
|
525
|
+
}
|
|
526
|
+
|
|
527
|
+
@keyframes rotate {
|
|
528
|
+
0% {
|
|
529
|
+
transform: rotate(0deg);
|
|
530
|
+
}
|
|
531
|
+
100% {
|
|
532
|
+
transform: rotate(360deg);
|
|
533
|
+
}
|
|
534
|
+
}
|
|
535
|
+
.rotate {
|
|
536
|
+
animation: rotate 2s linear infinite;
|
|
537
|
+
}
|
|
538
|
+
|
|
539
|
+
.round {
|
|
540
|
+
border-radius: 99999px;
|
|
541
|
+
}
|
|
542
|
+
|
|
543
|
+
.hidden {
|
|
544
|
+
display: none !important;
|
|
545
|
+
pointer-events: none !important;
|
|
546
|
+
height: 0 !important;
|
|
547
|
+
width: 0 !important;
|
|
548
|
+
margin: 0 !important;
|
|
549
|
+
padding: 0 !important;
|
|
550
|
+
overflow: hidden !important;
|
|
551
|
+
}
|
package/package.json
CHANGED
|
@@ -1,24 +1,26 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "digital-zen-pack",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.1.2",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/main.js",
|
|
6
6
|
"types": "./dist/main.d.ts",
|
|
7
7
|
"exports": {
|
|
8
8
|
".": "./dist/main.js",
|
|
9
|
-
"./style.css": "./dist/style.css"
|
|
9
|
+
"./style.css": "./dist/style.css",
|
|
10
|
+
"./helpers": "./dist/helpers/index.js"
|
|
10
11
|
},
|
|
11
12
|
"files": [
|
|
12
13
|
"dist"
|
|
13
14
|
],
|
|
15
|
+
"scripts": {
|
|
16
|
+
"build:js": "tsc",
|
|
17
|
+
"build:css": "sass src/style.scss dist/style.css --no-source-map",
|
|
18
|
+
"build": "pnpm run build:js && pnpm run build:css",
|
|
19
|
+
"pack:local": "npm run build && npm pack"
|
|
20
|
+
},
|
|
14
21
|
"devDependencies": {
|
|
15
22
|
"sass": "^1.97.2",
|
|
16
23
|
"typescript": "~5.9.3",
|
|
17
24
|
"vite": "^7.2.4"
|
|
18
|
-
},
|
|
19
|
-
"scripts": {
|
|
20
|
-
"build:js": "tsc",
|
|
21
|
-
"build:css": "sass src/style.scss dist/style.css --no-source-map",
|
|
22
|
-
"build": "pnpm run build:js && pnpm run build:css"
|
|
23
25
|
}
|
|
24
|
-
}
|
|
26
|
+
}
|