eternal-timer 2.2.1 → 2.3.0

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 (40) hide show
  1. package/README.md +75 -44
  2. package/dist/cjs/JSONLTimersManager.cjs +4 -3
  3. package/dist/cjs/JSONLTimersManager.cjs.map +1 -0
  4. package/dist/cjs/JSONLTimersManager.d.ts +6 -6
  5. package/dist/cjs/JSONLTimersManager.d.ts.map +1 -1
  6. package/dist/cjs/Log.cjs +0 -21
  7. package/dist/cjs/{Log.js.map → Log.cjs.map} +1 -1
  8. package/dist/cjs/PlainTextTimersManager.cjs +4 -4
  9. package/dist/cjs/PlainTextTimersManager.cjs.map +1 -0
  10. package/dist/cjs/PlainTextTimersManager.d.ts +6 -6
  11. package/dist/cjs/PlainTextTimersManager.d.ts.map +1 -1
  12. package/dist/cjs/TimersManager.d.ts +5 -5
  13. package/dist/cjs/TimersManager.d.ts.map +1 -1
  14. package/dist/cjs/index.d.ts +3 -3
  15. package/dist/cjs/index.d.ts.map +1 -1
  16. package/dist/cjs/types.d.ts +9 -2
  17. package/dist/cjs/types.d.ts.map +1 -1
  18. package/dist/esm/JSONLTimersManager.d.ts +5 -5
  19. package/dist/esm/JSONLTimersManager.d.ts.map +1 -1
  20. package/dist/esm/JSONLTimersManager.js +4 -3
  21. package/dist/esm/JSONLTimersManager.js.map +1 -1
  22. package/dist/esm/Log.js +0 -21
  23. package/dist/esm/Log.js.map +1 -1
  24. package/dist/esm/PlainTextTimersManager.d.ts +5 -5
  25. package/dist/esm/PlainTextTimersManager.d.ts.map +1 -1
  26. package/dist/esm/PlainTextTimersManager.js +4 -4
  27. package/dist/esm/PlainTextTimersManager.js.map +1 -1
  28. package/dist/esm/TimersManager.d.ts +5 -5
  29. package/dist/esm/TimersManager.d.ts.map +1 -1
  30. package/dist/esm/index.d.ts +1 -1
  31. package/dist/esm/index.d.ts.map +1 -1
  32. package/dist/esm/types.d.ts +9 -2
  33. package/dist/esm/types.d.ts.map +1 -1
  34. package/package.json +7 -4
  35. package/dist/cjs/JSONLTimersManager.js.map +0 -1
  36. package/dist/cjs/PlainTextTimersManager.js.map +0 -1
  37. /package/dist/cjs/{TimersManager.js.map → TimersManager.cjs.map} +0 -0
  38. /package/dist/cjs/{index.js.map → index.cjs.map} +0 -0
  39. /package/dist/cjs/{searchRoot.js.map → searchRoot.cjs.map} +0 -0
  40. /package/dist/cjs/{types.js.map → types.cjs.map} +0 -0
package/README.md CHANGED
@@ -33,20 +33,25 @@ async function main() {
33
33
  const manager = new JSONLTimersManager();
34
34
 
35
35
  // Create a timer (5 seconds) with a title and description
36
- const timerId = await manager.createTimer(5000, 'My Timer', 'This is a test timer.');
36
+ const timerId = await manager.createTimer({length: 5000, title: 'My Timer', description: 'This is a test timer.'});
37
37
  console.log('Timer created:', timerId);
38
38
 
39
39
  // Monitor timers (executes when timer expires)
40
40
  const interval = manager.checkTimers(async (timer) => {
41
41
  console.log('Timer expired:', timer.id, timer.title);
42
+ // Once the timer expires, you can remove it
43
+ await manager.removeTimer(timer.id);
42
44
  });
43
45
 
44
46
  // Display all timers
45
47
  const timers = await manager.showTimers();
46
48
  console.log('Active timers:', timers);
47
49
 
48
- // Remove a timer
49
- await manager.removeTimer(timerId);
50
+ // To stop monitoring, for example after 10 seconds
51
+ setTimeout(() => {
52
+ clearInterval(interval);
53
+ console.log('Stopped monitoring timers.');
54
+ }, 10000);
50
55
  }
51
56
 
52
57
  main();
@@ -70,7 +75,18 @@ async function main() {
70
75
  // Monitor timers
71
76
  const interval = manager.checkTimers(async (timer) => {
72
77
  console.log('Timer expired:', timer.id);
78
+ await manager.removeTimer(timer.id);
73
79
  });
80
+
81
+ // Display all timers
82
+ const timers = await manager.showTimers();
83
+ console.log('Active timers:', timers);
84
+
85
+ // Stop monitoring after a while
86
+ setTimeout(() => {
87
+ clearInterval(interval);
88
+ console.log('Stopped monitoring timers.');
89
+ }, 10000);
74
90
  }
75
91
 
76
92
  main();
@@ -78,79 +94,94 @@ main();
78
94
 
79
95
  ## API
80
96
 
81
- ### `new JSONLTimersManager(timerfiledir?: string)`
97
+ ### `JSONLTimersManager`
82
98
 
83
- Creates a manager for timers stored in the **JSON Lines** format.
99
+ #### `constructor(timerfiledir?: string)`
100
+ Creates a manager for timers stored in **JSON Lines** format.
84
101
 
85
- **Parameters:**
86
- - `timerfiledir` (string, optional): The path to the timer file. If omitted, the default is `.timers.jsonl` in the project root.
102
+ - **`timerfiledir`** (optional, string): Path to the timer file. Defaults to `.timers.jsonl` in the project root.
87
103
 
88
- ### `new PlainTextTimersManager(timerfiledir?: string)`
104
+ ### `PlainTextTimersManager`
89
105
 
90
- Creates a manager for timers stored in the **plain-text** format.
106
+ #### `constructor(timerfiledir?: string)`
107
+ Creates a manager for timers stored in **plain-text** format.
91
108
 
92
- **Parameters:**
93
- - `timerfiledir` (string, optional): The path to the timer file. If omitted, the default is `.timers` in the project root.
109
+ - **`timerfiledir`** (optional, string): Path to the timer file. Defaults to `.timers` in the project root.
94
110
 
95
111
  ---
96
112
 
97
- ### `createTimer(length: number, title?: string, description?: string): Promise<string>`
113
+ ### `createTimer(options: CreateTimerOptions<T>): Promise<string>`
114
+
115
+ Creates a new timer and saves it to the file.
116
+
117
+ #### Parameters
118
+
119
+ - **`options`**
98
120
 
99
- Creates a new timer.
121
+ When using `"PlainText"` storage:
122
+ - `number` — Timer duration in milliseconds.
100
123
 
101
- **Parameters:**
102
- - `length` (number): Timer duration in milliseconds
103
- - `title` (string, optional): A title for the timer. **Only available for `JSONLTimersManager`**.
104
- - `description` (string, optional): A description for the timer. **Only available for `JSONLTimersManager`**.
124
+ When using `"JSONL"` storage:
125
+ - `{ length: number; title?: string; description?: string }`
126
+ - `length` (number): Timer duration in milliseconds.
127
+ - `title` (optional, string): A title for the timer.
128
+ - `description` (optional, string): A description for the timer.
105
129
 
106
- **Returns:** Promise that resolves to the timer ID (UUID)
130
+ - `number` Timer duration in milliseconds.
131
+ ⚠ Not recommended. See [Storage Formats](#storage-formats).
107
132
 
108
- **Throws:** If length is invalid(e.g. length < 0) or file operation fails
133
+ **Returns** A `Promise<string>` that resolves to the timer's unique ID (UUID).
134
+
135
+ **Throws** An error if: `length` is invalid (e.g., negative) or a file operation fails
109
136
 
110
137
  ### `removeTimer(id: string): Promise<void>`
111
138
 
112
- Removes a timer by ID.
139
+ Removes a timer by its ID.
113
140
 
114
- **Parameters:**
115
- - `id` (string): ID of the timer to remove
141
+ - **`id`**: The ID of the timer to remove.
116
142
 
117
- **Returns:** void
143
+ **Returns:** A `Promise` that resolves when the timer is removed.
118
144
 
119
- **Throws:** If the timer with the specified ID is not found or if a file operation fails.
145
+ **Throws:** An error if the timer with the specified ID is not found or if a file operation fails.
120
146
 
121
- ### `checkTimers(callback: (timer: Timer) => Promise<void>, interval?: number): Promise<NodeJS.Timeout>`
147
+ ### `checkTimers(callback: (timer: Timer) => Promise<void>, interval?: number): NodeJS.Timeout`
122
148
 
123
- Starts monitoring expired timers and returns immediately.
149
+ Starts monitoring for expired timers at a specified interval. This function runs asynchronously and will not block execution.
124
150
 
125
- The callback is invoked when a timer expires during periodic checks.
126
- The callback is awaited before the next timer check continues.
151
+ When an expired timer is found, the provided `callback` function is invoked with the `timer` object. The function waits for the `callback`'s `Promise` to resolve before proceeding to the next check, preventing race conditions. Error handling has been added within the `callback` to prevent the application from crashing if an error occurs during timer processing.
127
152
 
128
- **Parameters:**
129
- - `callback`: Function invoked when an expired timer is detected (called during periodic checks and awaited)
130
- - `interval` (number, optional): Check interval in milliseconds (default: 200ms)
153
+ - **`callback`**: An async function that is called with the expired `timer` object.
154
+ - **`interval`** (optional, number): The interval in milliseconds to check for expired timers. Defaults to `200ms`.
131
155
 
132
- **Returns:** interval id of checkTimers
156
+ **Returns:** A `NodeJS.Timeout` object that can be used with `clearInterval()` to stop monitoring.
133
157
 
134
- **Throws:** If file operation fails
158
+ **Throws:** An error if a file operation fails during monitoring.
135
159
 
136
160
  ### `showTimers(): Promise<Timer[]>`
137
161
 
138
162
  Retrieves all active timers.
139
163
 
140
- **Returns:** Array of `Timer` objects
164
+ **Returns:** A `Promise` that resolves to an array of `Timer` objects.
141
165
 
142
- **Throws:** If file operation fails
166
+ **Throws:** An error if a file operation fails.
143
167
 
144
168
  ## Type Definition
145
169
 
170
+ The `StorageType` has the following structure:
146
171
  ```typescript
147
- type Timer = {
148
- id: string; // Unique timer identifier (UUID)
149
- start: number; // Timer start timestamp
150
- stop: number; // Timer end timestamp
151
- title?: string;
152
- description?: string;
153
- }
172
+ type StorageType = "JSONL" | "PlainText"
173
+ ```
174
+
175
+ The `Timer` object has the following structure:
176
+
177
+ ```typescript
178
+ type Timer<T extends StorageType> = {
179
+ id: string;
180
+ start: number;
181
+ stop: number;
182
+ } & (T extends "JSONL"
183
+ ? { title?: string; description?: string }
184
+ : object);
154
185
  ```
155
186
 
156
187
  ## Scripts
@@ -168,7 +199,7 @@ You can choose between two storage formats by selecting the appropriate manager
168
199
  ### 1. JSON Lines (via `JSONLTimersManager`)
169
200
  This is the recommended format for storing rich metadata.
170
201
 
171
- - **Pros**: Allows for storing `title` and `description`.
202
+ - **Pros**: Allows for storing `title` and `description`. Improved memory efficiency due to line-by-line file reading.
172
203
  - **Cons**: Involves JSON parsing, which may have a minor performance overhead.
173
204
  - **Default File**: `.timers.jsonl`
174
205
  - **Format**:
@@ -179,7 +210,7 @@ This is the recommended format for storing rich metadata.
179
210
  ### 2. Plain Text (via `PlainTextTimersManager`)
180
211
  This format is more lightweight and slightly faster.
181
212
 
182
- - **Pros**: Simple and efficient.
213
+ - **Pros**: Simple and efficient. Improved memory efficiency due to line-by-line file reading.
183
214
  - **Cons**: Cannot store additional data like `title` or `description`.
184
215
  - **Default File**: `.timers`
185
216
  - **Format**:
@@ -58,8 +58,9 @@ class JSONLTimersManager extends TimersManager_js_1.TimersManager {
58
58
  * const newTimer = await manager.createTimer(5000);
59
59
  * // newTimer will be id of the timer
60
60
  */
61
- async createTimer(length, title, description) {
61
+ async createTimer(options) {
62
62
  try {
63
+ let length = typeof options === "object" ? options.length : options;
63
64
  if (length < 0) {
64
65
  throw new Error(`Invailed length: ${length}`);
65
66
  }
@@ -73,8 +74,8 @@ class JSONLTimersManager extends TimersManager_js_1.TimersManager {
73
74
  id,
74
75
  start: now,
75
76
  stop: (now + length),
76
- ...(title !== undefined && { title }),
77
- ...(description !== undefined && { description }),
77
+ ...(typeof options === "object" && options.title !== undefined && { title: options.title }),
78
+ ...(typeof options === "object" && options.description !== undefined && { description: options.description }),
78
79
  });
79
80
  await fs_1.default.promises.appendFile(this.timerfiledir, newTimerData + "\n");
80
81
  return id;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"JSONLTimersManager.js","sourceRoot":"","sources":["../../src/JSONLTimersManager.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import type { Timer } from "./types.cjs";
2
- import { TimersManager } from "./TimersManager.cjs";
1
+ import type { Timer, CreateTimerOptions } from "./types.js";
2
+ import { TimersManager } from "./TimersManager.js";
3
3
  /**
4
4
  * JSONLTimersManager
5
5
  * @description
@@ -9,7 +9,7 @@ import { TimersManager } from "./TimersManager.cjs";
9
9
  * - Timers are persisted in a file
10
10
  * - Expired timers are detected by polling
11
11
  */
12
- export declare class JSONLTimersManager extends TimersManager {
12
+ export declare class JSONLTimersManager extends TimersManager<"JSONL"> {
13
13
  protected getDefaultFilename(): string;
14
14
  protected checkTimerfileSyntax(fileData: string): Promise<void>;
15
15
  /**
@@ -25,7 +25,7 @@ export declare class JSONLTimersManager extends TimersManager {
25
25
  * const newTimer = await manager.createTimer(5000);
26
26
  * // newTimer will be id of the timer
27
27
  */
28
- createTimer(length: number, title?: string, description?: string): Promise<string>;
28
+ createTimer(options: CreateTimerOptions<"JSONL">): Promise<string>;
29
29
  /**
30
30
  * removeTimer
31
31
  * @description Removes a timer by ID.
@@ -48,7 +48,7 @@ export declare class JSONLTimersManager extends TimersManager {
48
48
  * console.log(`A timer was stopped: ${timer.id}`);
49
49
  * });
50
50
  */
51
- checkTimers(callback: (timer: Timer) => Promise<void>, interval?: number): NodeJS.Timeout;
51
+ checkTimers(callback: (timer: Timer<"JSONL">) => Promise<void>, interval?: number): NodeJS.Timeout;
52
52
  /**
53
53
  * showTimers
54
54
  * @description Retrieves all active timers.
@@ -58,6 +58,6 @@ export declare class JSONLTimersManager extends TimersManager {
58
58
  * const timers = await manager.showTimers();
59
59
  * console.log(JSON.stringify(timers))
60
60
  */
61
- showTimers(): Promise<Timer[]>;
61
+ showTimers(): Promise<Timer<"JSONL">[]>;
62
62
  }
63
63
  //# sourceMappingURL=JSONLTimersManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"JSONLTimersManager.d.ts","sourceRoot":"","sources":["../../src/JSONLTimersManager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD;;;;;;;;GAQG;AACH,qBAAa,kBAAmB,SAAQ,aAAa;IACpD,SAAS,CAAC,kBAAkB,IAAI,MAAM;cAItB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBrE;;;;;;;;;;;;OAYM;IACO,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA4B/F;;;;;;;;OAQM;IACO,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCnD;;;;;;;;;;;OAWM;IACC,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAAC,OAAO;IAoCrG;;;;;;;;OAQM;IACO,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;CAa3C"}
1
+ {"version":3,"file":"JSONLTimersManager.d.ts","sourceRoot":"","sources":["../../src/JSONLTimersManager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD;;;;;;;;GAQG;AACH,qBAAa,kBAAmB,SAAQ,aAAa,CAAC,OAAO,CAAC;cAC1C,kBAAkB,IAAI,MAAM;cAI/B,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBrE;;;;;;;;;;;;OAYM;IACgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IA6BxF;;;;;;;;OAQM;IACgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiC5D;;;;;;;;;;;OAWM;IACU,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAAC,OAAO;IAoCvH;;;;;;;;OAQM;IACgB,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;CAa7D"}
package/dist/cjs/Log.cjs CHANGED
@@ -58,25 +58,4 @@ class Log {
58
58
  }
59
59
  }
60
60
  exports.Log = Log;
61
- /*
62
- let logger: Logger | null = null;
63
- let initPromise: Promise<void> | null = null;
64
-
65
- export async function ensureLogger() {
66
- if (logger) return;
67
- if (!initPromise) {
68
- initPromise = (async () => {
69
- try {
70
- const logtape = await import("@logtape/logtape");
71
- logger = logtape.getLogger(["eternal-timer"]);
72
- } catch {
73
- console.info(
74
- "Tip: Install the optional package '@logtape/logtape' to customize logging behavior.",
75
- );
76
- }
77
- })();
78
- }
79
- await initPromise;
80
- }
81
- */
82
61
  //# sourceMappingURL=Log.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Log.js","sourceRoot":"","sources":["../../src/Log.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAAa,GAAG;IACP,MAAM,CAAC,MAAM,GAAkB,IAAI,CAAC;IACpC,MAAM,CAAC,WAAW,GAAyB,IAAI,CAAC;IAEjD,MAAM,CAAC,KAAK,CAAC,YAAY;QAC/B,IAAI,GAAG,CAAC,MAAM;YAAE,OAAO;QACvB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACtB,GAAG,CAAC,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC7B,IAAI,CAAC;oBACJ,MAAM,OAAO,GAAG,wDAAa,kBAAkB,GAAC,CAAC;oBACjD,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;gBACnD,CAAC;gBAAC,MAAM,CAAC;oBACR,OAAO,CAAC,IAAI,CACX,qFAAqF,CACrF,CAAC;gBACH,CAAC;YACF,CAAC,CAAC,EAAE,CAAC;QACN,CAAC;QACD,MAAM,GAAG,CAAC,WAAW,CAAC;IACvB,CAAC;IAEM,MAAM,KAAK,cAAc;QAC/B,OAAO,GAAG,CAAC,MAAM,CAAC;IACnB,CAAC;;AAvBF,kBAwBC;AAED;;;;;;;;;;;;;;;;;;;;EAoBE"}
1
+ {"version":3,"file":"Log.js","sourceRoot":"","sources":["../../src/Log.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA,MAAa,GAAG;IACP,MAAM,CAAC,MAAM,GAAkB,IAAI,CAAC;IACpC,MAAM,CAAC,WAAW,GAAyB,IAAI,CAAC;IAEjD,MAAM,CAAC,KAAK,CAAC,YAAY;QAC/B,IAAI,GAAG,CAAC,MAAM;YAAE,OAAO;QACvB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACtB,GAAG,CAAC,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC7B,IAAI,CAAC;oBACJ,MAAM,OAAO,GAAG,wDAAa,kBAAkB,GAAC,CAAC;oBACjD,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;gBACnD,CAAC;gBAAC,MAAM,CAAC;oBACR,OAAO,CAAC,IAAI,CACX,qFAAqF,CACrF,CAAC;gBACH,CAAC;YACF,CAAC,CAAC,EAAE,CAAC;QACN,CAAC;QACD,MAAM,GAAG,CAAC,WAAW,CAAC;IACvB,CAAC;IAEM,MAAM,KAAK,cAAc;QAC/B,OAAO,GAAG,CAAC,MAAM,CAAC;IACnB,CAAC;;AAvBF,kBAwBC"}
@@ -52,14 +52,14 @@ class PlainTextTimersManager extends TimersManager_js_1.TimersManager {
52
52
  * const newTimer = await manager.createTimer(5000);
53
53
  * // newTimer will be id of the timer
54
54
  */
55
- async createTimer(length) {
55
+ async createTimer(options) {
56
56
  try {
57
- if (length < 0) {
58
- throw new Error(`Invailed length: ${length}`);
57
+ if (options < 0) {
58
+ throw new Error(`Invailed length: ${options}`);
59
59
  }
60
60
  const timersRaw = await fs_1.default.promises.readFile(this.timerfiledir, "utf-8");
61
61
  await this.checkTimerfileSyntax(timersRaw);
62
- length = Math.trunc(length);
62
+ const length = Math.trunc(options);
63
63
  // uuid, start, end
64
64
  const id = (0, uuid_1.v4)();
65
65
  const now = Date.now();
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PlainTextTimersManager.js","sourceRoot":"","sources":["../../src/PlainTextTimersManager.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import type { Timer } from "./types.cjs";
2
- import { TimersManager } from "./TimersManager.cjs";
3
- export declare class PlainTextTimersManager extends TimersManager {
1
+ import type { Timer, CreateTimerOptions } from "./types.js";
2
+ import { TimersManager } from "./TimersManager.js";
3
+ export declare class PlainTextTimersManager extends TimersManager<"PlainText"> {
4
4
  protected getDefaultFilename(): string;
5
5
  /**
6
6
  * checkTimerfileSyntax
@@ -21,7 +21,7 @@ export declare class PlainTextTimersManager extends TimersManager {
21
21
  * const newTimer = await manager.createTimer(5000);
22
22
  * // newTimer will be id of the timer
23
23
  */
24
- createTimer(length: number): Promise<string>;
24
+ createTimer(options: CreateTimerOptions<"PlainText">): Promise<string>;
25
25
  /**
26
26
  * removeTimer
27
27
  * @description Removes a timer by ID.
@@ -45,7 +45,7 @@ export declare class PlainTextTimersManager extends TimersManager {
45
45
  * console.log(`A timer was stopped: ${timer.id}`);
46
46
  * });
47
47
  */
48
- checkTimers(callback: (timer: Timer) => Promise<void>, interval?: number): NodeJS.Timeout;
48
+ checkTimers(callback: (timer: Timer<"PlainText">) => Promise<void>, interval?: number): NodeJS.Timeout;
49
49
  /**
50
50
  * showTimers
51
51
  * @description Retrieves all active timers.
@@ -55,6 +55,6 @@ export declare class PlainTextTimersManager extends TimersManager {
55
55
  * const timers = await manager.showTimers();
56
56
  * console.log(JSON.stringify(timers))
57
57
  */
58
- showTimers(): Promise<Timer[]>;
58
+ showTimers(): Promise<Timer<"PlainText">[]>;
59
59
  }
60
60
  //# sourceMappingURL=PlainTextTimersManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlainTextTimersManager.d.ts","sourceRoot":"","sources":["../../src/PlainTextTimersManager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,qBAAa,sBAAuB,SAAQ,aAAa;IACxD,SAAS,CAAC,kBAAkB,IAAI,MAAM;IAItC;;;;;;OAMG;cACa,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBrE;;;;;;;;;;OAUG;IACU,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBzD;;;;;;;;OAQG;IACU,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BnD;;;;;;;;;;;;OAYG;IACI,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAAC,OAAO;IAyCrG;;;;;;;;OAQG;IACU,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;CAoB3C"}
1
+ {"version":3,"file":"PlainTextTimersManager.d.ts","sourceRoot":"","sources":["../../src/PlainTextTimersManager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,qBAAa,sBAAuB,SAAQ,aAAa,CAAC,WAAW,CAAC;IACrE,SAAS,CAAC,kBAAkB,IAAI,MAAM;IAItC;;;;;;OAMG;cACsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB9E;;;;;;;;;;OAUG;IACmB,WAAW,CAAC,OAAO,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAsB5F;;;;;;;;OAQG;IACmB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B5D;;;;;;;;;;;;OAYG;IACa,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAAC,OAAO;IAyC3H;;;;;;;;OAQG;IACmB,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;CAoBjE"}
@@ -1,4 +1,4 @@
1
- import type { Timer } from "./types.cjs";
1
+ import type { CreateTimerOptions, StorageType, Timer } from "./types.js";
2
2
  /**
3
3
  * TimersManager
4
4
  * @description
@@ -8,7 +8,7 @@ import type { Timer } from "./types.cjs";
8
8
  * - Timers are persisted in a file
9
9
  * - Expired timers are detected by polling
10
10
  */
11
- export declare abstract class TimersManager {
11
+ export declare abstract class TimersManager<T extends StorageType> {
12
12
  protected readonly timerfiledir: string;
13
13
  protected checkLock: boolean;
14
14
  protected abstract getDefaultFilename(): string;
@@ -37,7 +37,7 @@ export declare abstract class TimersManager {
37
37
  * const newTimer = await manager.createTimer(5000);
38
38
  * // newTimer will be id of the timer
39
39
  */
40
- abstract createTimer(length: number, title?: string, description?: string): Promise<string>;
40
+ abstract createTimer(options: CreateTimerOptions<T>): Promise<string>;
41
41
  /**
42
42
  * removeTimer
43
43
  * @description Removes a timer by ID.
@@ -60,7 +60,7 @@ export declare abstract class TimersManager {
60
60
  * console.log(`A timer was stopped: ${timer.id}`);
61
61
  * });
62
62
  */
63
- abstract checkTimers(callback: (timer: Timer) => Promise<void>, interval?: number): NodeJS.Timeout;
63
+ abstract checkTimers(callback: (timer: Timer<T>) => Promise<void>, interval?: number): NodeJS.Timeout;
64
64
  /**
65
65
  * showTimers
66
66
  * @description Retrieves all active timers.
@@ -70,6 +70,6 @@ export declare abstract class TimersManager {
70
70
  * const timers = await manager.showTimers();
71
71
  * console.log(JSON.stringify(timers))
72
72
  */
73
- abstract showTimers(): Promise<Timer[]>;
73
+ abstract showTimers(): Promise<Timer<T>[]>;
74
74
  }
75
75
  //# sourceMappingURL=TimersManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TimersManager.d.ts","sourceRoot":"","sources":["../../src/TimersManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC;;;;;;;;GAQG;AACH,8BAAsB,aAAa;IAClC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IACxC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAS;IAErC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,IAAI,MAAM;IAE/C;;;;OAIM;gBAEL,YAAY,CAAC,EAAE,MAAM;IAYtB;;;;;;OAMG;IACH,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAExE;;;;;;;;;;OAUM;aACU,WAAW,CAAC,MAAM,EAAC,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjG;;;;;;;;OAQM;aACU,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAEtD;;;;;;;;;;;OAWM;aACU,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,OAAO;IAEzG;;;;;;;;OAQM;aACU,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;CAC9C"}
1
+ {"version":3,"file":"TimersManager.d.ts","sourceRoot":"","sources":["../../src/TimersManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEzE;;;;;;;;GAQG;AACH,8BAAsB,aAAa,CAAC,CAAC,SAAS,WAAW;IACxD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IACxC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAS;IAErC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,IAAI,MAAM;IAE/C;;;;OAIM;gBAEL,YAAY,CAAC,EAAE,MAAM;IAYtB;;;;;;OAMG;IACH,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAExE;;;;;;;;;;OAUM;aACc,WAAW,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAEhF;;;;;;;;OAQM;aACU,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAEtD;;;;;;;;;;;OAWM;aACc,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,OAAO;IAEhH;;;;;;;;OAQM;aACU,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;CACjD"}
@@ -1,4 +1,4 @@
1
- export type { Timer } from "./types.cjs";
2
- export { JSONLTimersManager } from "./JSONLTimersManager.cjs";
3
- export { PlainTextTimersManager } from "./PlainTextTimersManager.cjs";
1
+ export type { Timer, CreateTimerOptions, StorageType } from "./types.js";
2
+ export { JSONLTimersManager } from "./JSONLTimersManager.js";
3
+ export { PlainTextTimersManager } from "./PlainTextTimersManager.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -1,8 +1,15 @@
1
- export type Timer = {
1
+ export type StorageType = "JSONL" | "PlainText";
2
+ export type Timer<T extends StorageType> = {
2
3
  id: string;
3
4
  start: number;
4
5
  stop: number;
6
+ } & (T extends "JSONL" ? {
5
7
  title?: string;
6
8
  description?: string;
7
- };
9
+ } : object);
10
+ export type CreateTimerOptions<T extends StorageType> = T extends "JSONL" ? {
11
+ length: number;
12
+ title?: string;
13
+ description?: string;
14
+ } | number : T extends "PlainText" ? number : never;
8
15
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,WAAW,CAAC;AAEhD,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,WAAW,IAAI;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CAChB,GAAG,CAAC,CAAC,SAAS,OAAO,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,CAAC;AAE5E,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS,OAAO,GACnE;IACI,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG,MAAM,GACV,CAAC,SAAS,WAAW,GACnB,MAAM,GACN,KAAK,CAAC"}
@@ -1,4 +1,4 @@
1
- import type { Timer } from "./types.js";
1
+ import type { Timer, CreateTimerOptions } from "./types.js";
2
2
  import { TimersManager } from "./TimersManager.js";
3
3
  /**
4
4
  * JSONLTimersManager
@@ -9,7 +9,7 @@ import { TimersManager } from "./TimersManager.js";
9
9
  * - Timers are persisted in a file
10
10
  * - Expired timers are detected by polling
11
11
  */
12
- export declare class JSONLTimersManager extends TimersManager {
12
+ export declare class JSONLTimersManager extends TimersManager<"JSONL"> {
13
13
  protected getDefaultFilename(): string;
14
14
  protected checkTimerfileSyntax(fileData: string): Promise<void>;
15
15
  /**
@@ -25,7 +25,7 @@ export declare class JSONLTimersManager extends TimersManager {
25
25
  * const newTimer = await manager.createTimer(5000);
26
26
  * // newTimer will be id of the timer
27
27
  */
28
- createTimer(length: number, title?: string, description?: string): Promise<string>;
28
+ createTimer(options: CreateTimerOptions<"JSONL">): Promise<string>;
29
29
  /**
30
30
  * removeTimer
31
31
  * @description Removes a timer by ID.
@@ -48,7 +48,7 @@ export declare class JSONLTimersManager extends TimersManager {
48
48
  * console.log(`A timer was stopped: ${timer.id}`);
49
49
  * });
50
50
  */
51
- checkTimers(callback: (timer: Timer) => Promise<void>, interval?: number): NodeJS.Timeout;
51
+ checkTimers(callback: (timer: Timer<"JSONL">) => Promise<void>, interval?: number): NodeJS.Timeout;
52
52
  /**
53
53
  * showTimers
54
54
  * @description Retrieves all active timers.
@@ -58,6 +58,6 @@ export declare class JSONLTimersManager extends TimersManager {
58
58
  * const timers = await manager.showTimers();
59
59
  * console.log(JSON.stringify(timers))
60
60
  */
61
- showTimers(): Promise<Timer[]>;
61
+ showTimers(): Promise<Timer<"JSONL">[]>;
62
62
  }
63
63
  //# sourceMappingURL=JSONLTimersManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"JSONLTimersManager.d.ts","sourceRoot":"","sources":["../../src/JSONLTimersManager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD;;;;;;;;GAQG;AACH,qBAAa,kBAAmB,SAAQ,aAAa;IACpD,SAAS,CAAC,kBAAkB,IAAI,MAAM;cAItB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBrE;;;;;;;;;;;;OAYM;IACO,WAAW,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA4B/F;;;;;;;;OAQM;IACO,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiCnD;;;;;;;;;;;OAWM;IACC,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAAC,OAAO;IAoCrG;;;;;;;;OAQM;IACO,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;CAa3C"}
1
+ {"version":3,"file":"JSONLTimersManager.d.ts","sourceRoot":"","sources":["../../src/JSONLTimersManager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD;;;;;;;;GAQG;AACH,qBAAa,kBAAmB,SAAQ,aAAa,CAAC,OAAO,CAAC;cAC1C,kBAAkB,IAAI,MAAM;cAI/B,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAmBrE;;;;;;;;;;;;OAYM;IACgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IA6BxF;;;;;;;;OAQM;IACgB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiC5D;;;;;;;;;;;OAWM;IACU,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAAC,OAAO;IAoCvH;;;;;;;;OAQM;IACgB,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;CAa7D"}
@@ -52,8 +52,9 @@ export class JSONLTimersManager extends TimersManager {
52
52
  * const newTimer = await manager.createTimer(5000);
53
53
  * // newTimer will be id of the timer
54
54
  */
55
- async createTimer(length, title, description) {
55
+ async createTimer(options) {
56
56
  try {
57
+ let length = typeof options === "object" ? options.length : options;
57
58
  if (length < 0) {
58
59
  throw new Error(`Invailed length: ${length}`);
59
60
  }
@@ -67,8 +68,8 @@ export class JSONLTimersManager extends TimersManager {
67
68
  id,
68
69
  start: now,
69
70
  stop: (now + length),
70
- ...(title !== undefined && { title }),
71
- ...(description !== undefined && { description }),
71
+ ...(typeof options === "object" && options.title !== undefined && { title: options.title }),
72
+ ...(typeof options === "object" && options.description !== undefined && { description: options.description }),
72
73
  });
73
74
  await fs.promises.appendFile(this.timerfiledir, newTimerData + "\n");
74
75
  return id;
@@ -1 +1 @@
1
- {"version":3,"file":"JSONLTimersManager.js","sourceRoot":"","sources":["../../src/JSONLTimersManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"JSONLTimersManager.js","sourceRoot":"","sources":["../../src/JSONLTimersManager.ts"],"names":[],"mappings":"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"}
package/dist/esm/Log.js CHANGED
@@ -21,25 +21,4 @@ export class Log {
21
21
  return Log.logger;
22
22
  }
23
23
  }
24
- /*
25
- let logger: Logger | null = null;
26
- let initPromise: Promise<void> | null = null;
27
-
28
- export async function ensureLogger() {
29
- if (logger) return;
30
- if (!initPromise) {
31
- initPromise = (async () => {
32
- try {
33
- const logtape = await import("@logtape/logtape");
34
- logger = logtape.getLogger(["eternal-timer"]);
35
- } catch {
36
- console.info(
37
- "Tip: Install the optional package '@logtape/logtape' to customize logging behavior.",
38
- );
39
- }
40
- })();
41
- }
42
- await initPromise;
43
- }
44
- */
45
24
  //# sourceMappingURL=Log.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Log.js","sourceRoot":"","sources":["../../src/Log.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,GAAG;IACP,MAAM,CAAC,MAAM,GAAkB,IAAI,CAAC;IACpC,MAAM,CAAC,WAAW,GAAyB,IAAI,CAAC;IAEjD,MAAM,CAAC,KAAK,CAAC,YAAY;QAC/B,IAAI,GAAG,CAAC,MAAM;YAAE,OAAO;QACvB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACtB,GAAG,CAAC,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC7B,IAAI,CAAC;oBACJ,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;oBACjD,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;gBACnD,CAAC;gBAAC,MAAM,CAAC;oBACR,OAAO,CAAC,IAAI,CACX,qFAAqF,CACrF,CAAC;gBACH,CAAC;YACF,CAAC,CAAC,EAAE,CAAC;QACN,CAAC;QACD,MAAM,GAAG,CAAC,WAAW,CAAC;IACvB,CAAC;IAEM,MAAM,KAAK,cAAc;QAC/B,OAAO,GAAG,CAAC,MAAM,CAAC;IACnB,CAAC;;AAGF;;;;;;;;;;;;;;;;;;;;EAoBE"}
1
+ {"version":3,"file":"Log.js","sourceRoot":"","sources":["../../src/Log.ts"],"names":[],"mappings":"AAEA,MAAM,OAAO,GAAG;IACP,MAAM,CAAC,MAAM,GAAkB,IAAI,CAAC;IACpC,MAAM,CAAC,WAAW,GAAyB,IAAI,CAAC;IAEjD,MAAM,CAAC,KAAK,CAAC,YAAY;QAC/B,IAAI,GAAG,CAAC,MAAM;YAAE,OAAO;QACvB,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;YACtB,GAAG,CAAC,WAAW,GAAG,CAAC,KAAK,IAAI,EAAE;gBAC7B,IAAI,CAAC;oBACJ,MAAM,OAAO,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;oBACjD,GAAG,CAAC,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC;gBACnD,CAAC;gBAAC,MAAM,CAAC;oBACR,OAAO,CAAC,IAAI,CACX,qFAAqF,CACrF,CAAC;gBACH,CAAC;YACF,CAAC,CAAC,EAAE,CAAC;QACN,CAAC;QACD,MAAM,GAAG,CAAC,WAAW,CAAC;IACvB,CAAC;IAEM,MAAM,KAAK,cAAc;QAC/B,OAAO,GAAG,CAAC,MAAM,CAAC;IACnB,CAAC"}
@@ -1,6 +1,6 @@
1
- import type { Timer } from "./types.js";
1
+ import type { Timer, CreateTimerOptions } from "./types.js";
2
2
  import { TimersManager } from "./TimersManager.js";
3
- export declare class PlainTextTimersManager extends TimersManager {
3
+ export declare class PlainTextTimersManager extends TimersManager<"PlainText"> {
4
4
  protected getDefaultFilename(): string;
5
5
  /**
6
6
  * checkTimerfileSyntax
@@ -21,7 +21,7 @@ export declare class PlainTextTimersManager extends TimersManager {
21
21
  * const newTimer = await manager.createTimer(5000);
22
22
  * // newTimer will be id of the timer
23
23
  */
24
- createTimer(length: number): Promise<string>;
24
+ createTimer(options: CreateTimerOptions<"PlainText">): Promise<string>;
25
25
  /**
26
26
  * removeTimer
27
27
  * @description Removes a timer by ID.
@@ -45,7 +45,7 @@ export declare class PlainTextTimersManager extends TimersManager {
45
45
  * console.log(`A timer was stopped: ${timer.id}`);
46
46
  * });
47
47
  */
48
- checkTimers(callback: (timer: Timer) => Promise<void>, interval?: number): NodeJS.Timeout;
48
+ checkTimers(callback: (timer: Timer<"PlainText">) => Promise<void>, interval?: number): NodeJS.Timeout;
49
49
  /**
50
50
  * showTimers
51
51
  * @description Retrieves all active timers.
@@ -55,6 +55,6 @@ export declare class PlainTextTimersManager extends TimersManager {
55
55
  * const timers = await manager.showTimers();
56
56
  * console.log(JSON.stringify(timers))
57
57
  */
58
- showTimers(): Promise<Timer[]>;
58
+ showTimers(): Promise<Timer<"PlainText">[]>;
59
59
  }
60
60
  //# sourceMappingURL=PlainTextTimersManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PlainTextTimersManager.d.ts","sourceRoot":"","sources":["../../src/PlainTextTimersManager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,qBAAa,sBAAuB,SAAQ,aAAa;IACxD,SAAS,CAAC,kBAAkB,IAAI,MAAM;IAItC;;;;;;OAMG;cACa,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBrE;;;;;;;;;;OAUG;IACU,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAsBzD;;;;;;;;OAQG;IACU,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8BnD;;;;;;;;;;;;OAYG;IACI,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAAC,OAAO;IAyCrG;;;;;;;;OAQG;IACU,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;CAoB3C"}
1
+ {"version":3,"file":"PlainTextTimersManager.d.ts","sourceRoot":"","sources":["../../src/PlainTextTimersManager.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAGnD,qBAAa,sBAAuB,SAAQ,aAAa,CAAC,WAAW,CAAC;IACrE,SAAS,CAAC,kBAAkB,IAAI,MAAM;IAItC;;;;;;OAMG;cACsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkB9E;;;;;;;;;;OAUG;IACmB,WAAW,CAAC,OAAO,EAAE,kBAAkB,CAAC,WAAW,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAsB5F;;;;;;;;OAQG;IACmB,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA8B5D;;;;;;;;;;;;OAYG;IACa,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,WAAW,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,GAAE,MAAY,GAAG,MAAM,CAAC,OAAO;IAyC3H;;;;;;;;OAQG;IACmB,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC;CAoBjE"}
@@ -46,14 +46,14 @@ export class PlainTextTimersManager extends TimersManager {
46
46
  * const newTimer = await manager.createTimer(5000);
47
47
  * // newTimer will be id of the timer
48
48
  */
49
- async createTimer(length) {
49
+ async createTimer(options) {
50
50
  try {
51
- if (length < 0) {
52
- throw new Error(`Invailed length: ${length}`);
51
+ if (options < 0) {
52
+ throw new Error(`Invailed length: ${options}`);
53
53
  }
54
54
  const timersRaw = await fs.promises.readFile(this.timerfiledir, "utf-8");
55
55
  await this.checkTimerfileSyntax(timersRaw);
56
- length = Math.trunc(length);
56
+ const length = Math.trunc(options);
57
57
  // uuid, start, end
58
58
  const id = uuidv4();
59
59
  const now = Date.now();
@@ -1 +1 @@
1
- {"version":3,"file":"PlainTextTimersManager.js","sourceRoot":"","sources":["../../src/PlainTextTimersManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlainTextTimersManager.js","sourceRoot":"","sources":["../../src/PlainTextTimersManager.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { Timer } from "./types.js";
1
+ import type { CreateTimerOptions, StorageType, Timer } from "./types.js";
2
2
  /**
3
3
  * TimersManager
4
4
  * @description
@@ -8,7 +8,7 @@ import type { Timer } from "./types.js";
8
8
  * - Timers are persisted in a file
9
9
  * - Expired timers are detected by polling
10
10
  */
11
- export declare abstract class TimersManager {
11
+ export declare abstract class TimersManager<T extends StorageType> {
12
12
  protected readonly timerfiledir: string;
13
13
  protected checkLock: boolean;
14
14
  protected abstract getDefaultFilename(): string;
@@ -37,7 +37,7 @@ export declare abstract class TimersManager {
37
37
  * const newTimer = await manager.createTimer(5000);
38
38
  * // newTimer will be id of the timer
39
39
  */
40
- abstract createTimer(length: number, title?: string, description?: string): Promise<string>;
40
+ abstract createTimer(options: CreateTimerOptions<T>): Promise<string>;
41
41
  /**
42
42
  * removeTimer
43
43
  * @description Removes a timer by ID.
@@ -60,7 +60,7 @@ export declare abstract class TimersManager {
60
60
  * console.log(`A timer was stopped: ${timer.id}`);
61
61
  * });
62
62
  */
63
- abstract checkTimers(callback: (timer: Timer) => Promise<void>, interval?: number): NodeJS.Timeout;
63
+ abstract checkTimers(callback: (timer: Timer<T>) => Promise<void>, interval?: number): NodeJS.Timeout;
64
64
  /**
65
65
  * showTimers
66
66
  * @description Retrieves all active timers.
@@ -70,6 +70,6 @@ export declare abstract class TimersManager {
70
70
  * const timers = await manager.showTimers();
71
71
  * console.log(JSON.stringify(timers))
72
72
  */
73
- abstract showTimers(): Promise<Timer[]>;
73
+ abstract showTimers(): Promise<Timer<T>[]>;
74
74
  }
75
75
  //# sourceMappingURL=TimersManager.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TimersManager.d.ts","sourceRoot":"","sources":["../../src/TimersManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC;;;;;;;;GAQG;AACH,8BAAsB,aAAa;IAClC,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IACxC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAS;IAErC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,IAAI,MAAM;IAE/C;;;;OAIM;gBAEL,YAAY,CAAC,EAAE,MAAM;IAYtB;;;;;;OAMG;IACH,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAExE;;;;;;;;;;OAUM;aACU,WAAW,CAAC,MAAM,EAAC,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAEjG;;;;;;;;OAQM;aACU,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAEtD;;;;;;;;;;;OAWM;aACU,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,OAAO;IAEzG;;;;;;;;OAQM;aACU,UAAU,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;CAC9C"}
1
+ {"version":3,"file":"TimersManager.d.ts","sourceRoot":"","sources":["../../src/TimersManager.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEzE;;;;;;;;GAQG;AACH,8BAAsB,aAAa,CAAC,CAAC,SAAS,WAAW;IACxD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IACxC,SAAS,CAAC,SAAS,EAAE,OAAO,CAAS;IAErC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,IAAI,MAAM;IAE/C;;;;OAIM;gBAEL,YAAY,CAAC,EAAE,MAAM;IAYtB;;;;;;OAMG;IACH,SAAS,CAAC,QAAQ,CAAC,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAExE;;;;;;;;;;OAUM;aACc,WAAW,CAAC,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,MAAM,CAAC;IAEhF;;;;;;;;OAQM;aACU,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAEtD;;;;;;;;;;;OAWM;aACc,WAAW,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC,OAAO;IAEhH;;;;;;;;OAQM;aACU,UAAU,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;CACjD"}
@@ -1,4 +1,4 @@
1
- export type { Timer } from "./types.js";
1
+ export type { Timer, CreateTimerOptions, StorageType } from "./types.js";
2
2
  export { JSONLTimersManager } from "./JSONLTimersManager.js";
3
3
  export { PlainTextTimersManager } from "./PlainTextTimersManager.js";
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACxC,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,KAAK,EAAE,kBAAkB,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC"}
@@ -1,8 +1,15 @@
1
- export type Timer = {
1
+ export type StorageType = "JSONL" | "PlainText";
2
+ export type Timer<T extends StorageType> = {
2
3
  id: string;
3
4
  start: number;
4
5
  stop: number;
6
+ } & (T extends "JSONL" ? {
5
7
  title?: string;
6
8
  description?: string;
7
- };
9
+ } : object);
10
+ export type CreateTimerOptions<T extends StorageType> = T extends "JSONL" ? {
11
+ length: number;
12
+ title?: string;
13
+ description?: string;
14
+ } | number : T extends "PlainText" ? number : never;
8
15
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GAAG;IAChB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG,WAAW,CAAC;AAEhD,MAAM,MAAM,KAAK,CAAC,CAAC,SAAS,WAAW,IAAI;IACvC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CAChB,GAAG,CAAC,CAAC,SAAS,OAAO,GAAG;IAAE,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAAC,CAAC;AAE5E,MAAM,MAAM,kBAAkB,CAAC,CAAC,SAAS,WAAW,IAAI,CAAC,SAAS,OAAO,GACnE;IACI,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB,GAAG,MAAM,GACV,CAAC,SAAS,WAAW,GACnB,MAAM,GACN,KAAK,CAAC"}
package/package.json CHANGED
@@ -1,13 +1,13 @@
1
1
  {
2
2
  "name": "eternal-timer",
3
- "version": "2.2.1",
3
+ "version": "2.3.0",
4
4
  "description": "timer for node.js package",
5
5
  "scripts": {
6
6
  "dev": "nodemon --watch src --exec ts-node src/index.ts",
7
7
  "build": "tsc -p tsconfig.esm.json && tsc -p tsconfig.cjs.json && node scripts/rename-cjs.js",
8
8
  "start": "npm run build && node dist/esm/index.js",
9
9
  "lint": "npx eslint --fix --config ./eslint/eslint.config.ts",
10
- "test": "node test/index.js"
10
+ "test": "npm run build && node test/index.js"
11
11
  },
12
12
  "repository": {
13
13
  "type": "git",
@@ -40,10 +40,13 @@
40
40
  ".": {
41
41
  "import": "./dist/esm/index.js",
42
42
  "require": "./dist/cjs/index.cjs",
43
- "types": "./dist/esm/index.d.ts"
43
+ "types": {
44
+ "import": "./dist/esm/index.d.ts",
45
+ "require": "./dist/cjs/index.d.ts"
46
+ }
44
47
  }
45
48
  },
46
- "types": "dist/esm/index.d.ts",
49
+ "types": "dist/cjs/index.d.ts",
47
50
  "dependencies": {
48
51
  "uuid": "^13.0.0"
49
52
  },
@@ -1 +0,0 @@
1
- {"version":3,"file":"JSONLTimersManager.js","sourceRoot":"","sources":["../../src/JSONLTimersManager.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"PlainTextTimersManager.js","sourceRoot":"","sources":["../../src/PlainTextTimersManager.ts"],"names":[],"mappings":";;;;;;AAAA,4CAAoB;AACpB,+BAAoC;AACpC,wDAAgC;AAGhC,yDAAmD;AACnD,qCAA+B;AAE/B,MAAa,sBAAuB,SAAQ,gCAAa;IAC9C,kBAAkB;QAC3B,OAAO,SAAS,CAAC;IAClB,CAAC;IAED;;;;;;OAMG;IACO,KAAK,CAAC,oBAAoB,CAAC,QAAgB;QACpD,MAAM,QAAQ,GAAG,GAAG,EAAE;YACrB,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,CAAC;QACjD,CAAC,CAAC;QACF,MAAM,UAAU,GAAG,QAAQ;aACzB,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAClB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QACxB,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;YACpC,MAAM,UAAU,GAAa,SAAS,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACpD,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;gBAAE,QAAQ,EAAE,CAAC;YACxC,IAAI,UAAU,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,EAAE;gBAAE,QAAQ,EAAE,CAAC;YAC7C,IAAI,UAAU,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,KAAK,EAAE;gBAAE,QAAQ,EAAE,CAAC;YAC7C,IAAI,UAAU,CAAC,CAAC,CAAE,CAAC,IAAI,EAAE,KAAK,EAAE;gBAAE,QAAQ,EAAE,CAAC;QAC9C,CAAC;QACD,OAAO;IACR,CAAC;IAED;;;;;;;;;;OAUG;IACI,KAAK,CAAC,WAAW,CAAC,MAAc;QACtC,IAAI,CAAC;YACJ,IAAI,MAAM,GAAG,CAAC,EAAE,CAAC;gBAChB,MAAM,IAAI,KAAK,CAAC,oBAAoB,MAAM,EAAE,CAAC,CAAC;YAC/C,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACzE,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;YAE3C,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;YAE5B,mBAAmB;YACnB,MAAM,EAAE,GAAG,IAAA,SAAM,GAAE,CAAC;YACpB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;YACvB,MAAM,YAAY,GAAG,GAAG,EAAE,IAAI,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC;YAC5E,MAAM,YAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,YAAY,EAAE,YAAY,GAAG,IAAI,CAAC,CAAC;YACrE,OAAO,EAAE,CAAC;QACX,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;QACpD,CAAC;IACF,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,WAAW,CAAC,EAAU;QAClC,IAAI,CAAC;YACJ,MAAM,SAAS,GAAW,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACjF,MAAM,IAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,CAAC;YAE3C,MAAM,EAAE,GAAG,kBAAQ,CAAC,eAAe,CAAC;gBACnC,KAAK,EAAE,YAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC;gBAC7C,SAAS,EAAE,QAAQ;aACnB,CAAC,CAAC;YACH,MAAM,kBAAkB,GAAa,EAAE,CAAC;YACxC,IAAI,KAAK,GAAG,KAAK,CAAC;YAClB,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,EAAE,EAAE,CAAC;gBAC7B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;oBAAE,SAAS;gBAC3B,MAAM,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAClC,IAAI,OAAO,KAAK,EAAE,EAAE,CAAC;oBACpB,KAAK,GAAG,IAAI,CAAC;oBACb,SAAS;gBACV,CAAC;gBACD,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC/B,CAAC;YACD,IAAI,CAAC,KAAK,EAAE,CAAC;gBACZ,MAAM,IAAI,KAAK,CAAC,iBAAiB,EAAE,YAAY,CAAC,CAAC;YAClD,CAAC;YACD,MAAM,YAAE,CAAC,QAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,YAAY,EAAE,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;YACvF,OAAO;QACR,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;QACpD,CAAC;IACF,CAAC;IAED;;;;;;;;;;;;OAYG;IACI,WAAW,CAAC,QAAyC,EAAE,WAAmB,GAAG;QACnF,OAAO,WAAW,CAAC,KAAK,IAAI,EAAE;YAC7B,IAAI,IAAI,CAAC,SAAS;gBAAE,OAAO;YAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;YAEtB,IAAI,CAAC;gBACJ,MAAM,EAAE,GAAG,kBAAQ,CAAC,eAAe,CAAC;oBACnC,KAAK,EAAE,YAAE,CAAC,gBAAgB,CAAC,IAAI,CAAC,YAAY,CAAC;oBAC7C,SAAS,EAAE,QAAQ;iBACnB,CAAC,CAAC;gBAEH,IAAI,KAAK,EAAE,MAAM,IAAI,IAAI,EAAE,EAAE,CAAC;oBAC7B,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;wBAAE,SAAS;oBAC3B,MAAM,CAAC,EAAE,EAAE,QAAQ,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAChD,MAAM,KAAK,GAAU;wBACpB,EAAE,EAAE,EAAG;wBACP,KAAK,EAAE,MAAM,CAAC,QAAS,CAAC;wBACxB,IAAI,EAAE,MAAM,CAAC,OAAQ,CAAC;qBACtB,CAAC;oBACF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;oBACvB,IAAI,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC;wBAC/B,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;wBACjC,QAAQ,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE;4BACjC,MAAM,YAAG,CAAC,YAAY,EAAE,CAAC;4BACzB,IAAI,YAAG,CAAC,cAAc,EAAE,CAAC;gCACxB,YAAG,CAAC,cAAc,CAAC,KAAK,CAAC,4BAA4B,CAAC,EAAE,CAAC,CAAC;4BAC3D,CAAC;wBACF,CAAC,CAAC,CAAC;oBACJ,CAAC;gBACF,CAAC;YACF,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACZ,MAAM,YAAG,CAAC,YAAY,EAAE,CAAC;gBACzB,IAAI,YAAG,CAAC,cAAc,EAAE,CAAC;oBACxB,YAAG,CAAC,cAAc,CAAC,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;gBAC7D,CAAC;YACF,CAAC;oBAAS,CAAC;gBACV,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACxB,CAAC;QACF,CAAC,EAAE,QAAQ,CAAC,CAAC;IACd,CAAC;IAED;;;;;;;;OAQG;IACI,KAAK,CAAC,UAAU;QACtB,IAAI,CAAC;YACJ,MAAM,SAAS,GAAW,MAAM,YAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YACjF,MAAM,UAAU,GAAa,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAEtD,MAAM,UAAU,GAAY,EAAE,CAAC;YAC/B,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;gBACpC,MAAM,gBAAgB,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBAC9C,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE;oBAAE,SAAS;gBAChC,UAAU,CAAC,IAAI,CAAC;oBACf,EAAE,EAAE,gBAAgB,CAAC,CAAC,CAAE;oBACxB,KAAK,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAE,CAAC;oBACnC,IAAI,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAE,CAAC;iBAClC,CAAC,CAAC;YACJ,CAAC;YACD,OAAO,UAAU,CAAC;QACnB,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,8BAA8B,CAAC,EAAE,CAAC,CAAC;QACpD,CAAC;IACF,CAAC;CACD;AAzLD,wDAyLC"}
File without changes
File without changes