@solidactions/sdk 0.1.0 → 0.2.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 (115) hide show
  1. package/README.md +28 -4
  2. package/dist/src/adminserver.d.ts +0 -2
  3. package/dist/src/adminserver.d.ts.map +1 -1
  4. package/dist/src/adminserver.js +17 -7
  5. package/dist/src/adminserver.js.map +1 -1
  6. package/dist/src/authdecorators.js +1 -2
  7. package/dist/src/authdecorators.js.map +1 -1
  8. package/dist/src/cli/cli.js +0 -0
  9. package/dist/src/conductor/conductor.d.ts +0 -1
  10. package/dist/src/conductor/conductor.d.ts.map +1 -1
  11. package/dist/src/conductor/conductor.js +17 -7
  12. package/dist/src/conductor/conductor.js.map +1 -1
  13. package/dist/src/config.js +11 -11
  14. package/dist/src/config.js.map +1 -1
  15. package/dist/src/context.d.ts +0 -2
  16. package/dist/src/context.d.ts.map +1 -1
  17. package/dist/src/context.js +8 -9
  18. package/dist/src/context.js.map +1 -1
  19. package/dist/src/database_utils.js +3 -4
  20. package/dist/src/database_utils.js.map +1 -1
  21. package/dist/src/debugpoint.js +5 -5
  22. package/dist/src/debugpoint.js.map +1 -1
  23. package/dist/src/decorators.d.ts.map +1 -1
  24. package/dist/src/decorators.js +35 -35
  25. package/dist/src/decorators.js.map +1 -1
  26. package/dist/src/error.d.ts +2 -2
  27. package/dist/src/error.d.ts.map +1 -1
  28. package/dist/src/error.js +3 -3
  29. package/dist/src/error.js.map +1 -1
  30. package/dist/src/http_client.d.ts +7 -1
  31. package/dist/src/http_client.d.ts.map +1 -1
  32. package/dist/src/http_client.js +17 -6
  33. package/dist/src/http_client.js.map +1 -1
  34. package/dist/src/http_system_database.d.ts +1 -0
  35. package/dist/src/http_system_database.d.ts.map +1 -1
  36. package/dist/src/http_system_database.js +11 -1
  37. package/dist/src/http_system_database.js.map +1 -1
  38. package/dist/src/index.js +17 -7
  39. package/dist/src/index.js.map +1 -1
  40. package/dist/src/serialization.d.ts.map +1 -1
  41. package/dist/src/serialization.js +7 -7
  42. package/dist/src/serialization.js.map +1 -1
  43. package/dist/src/solidactions-executor.js +17 -7
  44. package/dist/src/solidactions-executor.js.map +1 -1
  45. package/dist/src/solidactions.d.ts +23 -3
  46. package/dist/src/solidactions.d.ts.map +1 -1
  47. package/dist/src/solidactions.js +30 -4
  48. package/dist/src/solidactions.js.map +1 -1
  49. package/dist/src/system_database.d.ts +1 -0
  50. package/dist/src/system_database.d.ts.map +1 -1
  51. package/dist/src/system_database.js.map +1 -1
  52. package/dist/src/telemetry/collector.d.ts.map +1 -1
  53. package/dist/src/telemetry/logs.d.ts.map +1 -1
  54. package/dist/src/telemetry/traces.js +5 -5
  55. package/dist/src/telemetry/traces.js.map +1 -1
  56. package/dist/src/testing/index.d.ts +13 -0
  57. package/dist/src/testing/index.d.ts.map +1 -0
  58. package/dist/src/testing/index.js +19 -0
  59. package/dist/src/testing/index.js.map +1 -0
  60. package/dist/src/testing/mock_server.d.ts +134 -0
  61. package/dist/src/testing/mock_server.d.ts.map +1 -0
  62. package/dist/src/testing/mock_server.js +613 -0
  63. package/dist/src/testing/mock_server.js.map +1 -0
  64. package/dist/src/utils.d.ts +0 -1
  65. package/dist/src/utils.d.ts.map +1 -1
  66. package/dist/src/utils.js +8 -8
  67. package/dist/src/utils.js.map +1 -1
  68. package/dist/src/workflow.d.ts +1 -1
  69. package/dist/src/workflow.d.ts.map +1 -1
  70. package/dist/src/workflow.js +2 -2
  71. package/dist/src/workflow.js.map +1 -1
  72. package/dist/src/workflow_management.js +7 -8
  73. package/dist/src/workflow_management.js.map +1 -1
  74. package/dist/tsconfig.tsbuildinfo +1 -1
  75. package/docs/sdk-reference.md +1207 -0
  76. package/package.json +6 -1
  77. package/.claude/settings.local.json +0 -7
  78. package/dist/dbos-config.schema.json +0 -132
  79. package/dist/src/cli/commands.d.ts +0 -3
  80. package/dist/src/cli/commands.d.ts.map +0 -1
  81. package/dist/src/cli/commands.js +0 -46
  82. package/dist/src/cli/commands.js.map +0 -1
  83. package/dist/src/datasource.d.ts +0 -109
  84. package/dist/src/datasource.d.ts.map +0 -1
  85. package/dist/src/datasource.js +0 -204
  86. package/dist/src/datasource.js.map +0 -1
  87. package/dist/src/dbos-executor.d.ts +0 -189
  88. package/dist/src/dbos-executor.d.ts.map +0 -1
  89. package/dist/src/dbos-executor.js +0 -817
  90. package/dist/src/dbos-executor.js.map +0 -1
  91. package/dist/src/dbos.d.ts +0 -519
  92. package/dist/src/dbos.d.ts.map +0 -1
  93. package/dist/src/dbos.js +0 -1282
  94. package/dist/src/dbos.js.map +0 -1
  95. package/dist/src/debouncer.d.ts +0 -33
  96. package/dist/src/debouncer.d.ts.map +0 -1
  97. package/dist/src/debouncer.js +0 -170
  98. package/dist/src/debouncer.js.map +0 -1
  99. package/dist/src/scheduler/crontab.d.ts +0 -14
  100. package/dist/src/scheduler/crontab.d.ts.map +0 -1
  101. package/dist/src/scheduler/crontab.js +0 -308
  102. package/dist/src/scheduler/crontab.js.map +0 -1
  103. package/dist/src/scheduler/scheduler.d.ts +0 -41
  104. package/dist/src/scheduler/scheduler.d.ts.map +0 -1
  105. package/dist/src/scheduler/scheduler.js +0 -165
  106. package/dist/src/scheduler/scheduler.js.map +0 -1
  107. package/dist/src/wfqueue.d.ts +0 -64
  108. package/dist/src/wfqueue.d.ts.map +0 -1
  109. package/dist/src/wfqueue.js +0 -147
  110. package/dist/src/wfqueue.js.map +0 -1
  111. package/docs/api-schema.md +0 -1441
  112. package/docs/migration-guide.md +0 -460
  113. package/docs/phase-14-changes.md +0 -156
  114. package/docs/solidsteps-ai-prompt.md +0 -534
  115. package/solidactions-ai-prompt.md +0 -1504
@@ -1 +0,0 @@
1
- {"version":3,"file":"dbos.js","sourceRoot":"","sources":["../../src/dbos.ts"],"names":[],"mappings":"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"}
@@ -1,33 +0,0 @@
1
- import { DBOSClient } from '.';
2
- import { StartWorkflowParams } from './dbos';
3
- interface DebouncerWorkflowParams {
4
- workflowName: string;
5
- workflowClassName: string;
6
- startWorkflowParams?: StartWorkflowParams;
7
- debounceTimeoutMs?: number;
8
- }
9
- interface DebouncerConfig<Args extends unknown[], Return> {
10
- workflow: (...args: Args) => Promise<Return>;
11
- startWorkflowParams?: StartWorkflowParams;
12
- debounceTimeoutMs?: number;
13
- }
14
- interface DebouncerClientConfig {
15
- workflowName: string;
16
- workflowClassName?: string;
17
- startWorkflowParams?: StartWorkflowParams;
18
- debounceTimeoutMs?: number;
19
- }
20
- export declare const debouncerWorkflowFunction: (initialDebouncePeriodMs: number, cfg: DebouncerWorkflowParams, ...args: unknown[]) => Promise<void>;
21
- export declare class Debouncer<Args extends unknown[], Return> {
22
- private readonly cfg;
23
- constructor(params: DebouncerConfig<Args, Return>);
24
- debounce(debounceKey: string, debouncePeriodMs: number, ...args: Args): Promise<import("./workflow").WorkflowHandle<Awaited<Return>>>;
25
- }
26
- export declare class DebouncerClient {
27
- readonly client: DBOSClient;
28
- private readonly cfg;
29
- constructor(client: DBOSClient, params: DebouncerClientConfig);
30
- debounce(debounceKey: string, debouncePeriodMs: number, ...args: unknown[]): Promise<import("./workflow").WorkflowHandle<unknown>>;
31
- }
32
- export {};
33
- //# sourceMappingURL=debouncer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"debouncer.d.ts","sourceRoot":"","sources":["../../src/debouncer.ts"],"names":[],"mappings":"AACA,OAAO,EAAQ,UAAU,EAAE,MAAM,GAAG,CAAC;AACrC,OAAO,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAY7C,UAAU,uBAAuB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AASD,UAAU,eAAe,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,MAAM;IACtD,QAAQ,EAAE,CAAC,GAAG,IAAI,EAAE,IAAI,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,UAAU,qBAAqB;IAC7B,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAID,eAAO,MAAM,yBAAyB,4BACX,MAAM,OAC1B,uBAAuB,WACnB,OAAO,EAAE,kBAuBnB,CAAC;AAEF,qBAAa,SAAS,CAAC,IAAI,SAAS,OAAO,EAAE,EAAE,MAAM;IACnD,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA0B;gBAClC,MAAM,EAAE,eAAe,CAAC,IAAI,EAAE,MAAM,CAAC;IAU3C,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,IAAI;CAuD5E;AAED,qBAAa,eAAe;IAGxB,QAAQ,CAAC,MAAM,EAAE,UAAU;IAF7B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA0B;gBAEnC,MAAM,EAAE,UAAU,EAC3B,MAAM,EAAE,qBAAqB;IAUzB,QAAQ,CAAC,WAAW,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE;CAyDjF"}
@@ -1,170 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DebouncerClient = exports.Debouncer = exports.debouncerWorkflowFunction = void 0;
4
- const node_crypto_1 = require("node:crypto");
5
- const _1 = require(".");
6
- const dbos_executor_1 = require("./dbos-executor");
7
- const decorators_1 = require("./decorators");
8
- const error_1 = require("./error");
9
- const utils_1 = require("./utils");
10
- const _DEBOUNCER_TOPIC = 'DEBOUNCER_TOPIC';
11
- const debouncerWorkflowFunction = async (initialDebouncePeriodMs, cfg, ...args) => {
12
- let workflowInputs = args;
13
- const debounceDeadlineEpochMs = cfg.debounceTimeoutMs ? Date.now() + cfg.debounceTimeoutMs : Number.MAX_VALUE;
14
- let debouncePeriodMs = initialDebouncePeriodMs;
15
- while (Date.now() < debounceDeadlineEpochMs) {
16
- const timeUntilDeadline = Math.max(debounceDeadlineEpochMs - Date.now(), 0);
17
- const timeoutMs = Math.min(debouncePeriodMs, timeUntilDeadline);
18
- const message = await _1.DBOS.recv(_DEBOUNCER_TOPIC, timeoutMs / 1000);
19
- if (message === null) {
20
- break;
21
- }
22
- else {
23
- workflowInputs = message['args'];
24
- debouncePeriodMs = message['debouncePeriodMs'];
25
- await _1.DBOS.setEvent(message.messageID, message.messageID);
26
- }
27
- }
28
- const methReg = (0, decorators_1.getFunctionRegistrationByName)(cfg.workflowClassName, cfg.workflowName);
29
- if (!methReg || !methReg.registeredFunction) {
30
- throw Error(`Invalid workflow name provided to debouncer: ${cfg.workflowName}`);
31
- }
32
- const func = methReg?.registeredFunction;
33
- await _1.DBOS.startWorkflow(func, cfg.startWorkflowParams)(...workflowInputs);
34
- };
35
- exports.debouncerWorkflowFunction = debouncerWorkflowFunction;
36
- class Debouncer {
37
- cfg;
38
- constructor(params) {
39
- const wInfo = (0, decorators_1.getFunctionRegistration)(params.workflow);
40
- this.cfg = {
41
- workflowName: wInfo?.name ?? params.workflow.name,
42
- workflowClassName: (0, decorators_1.getRegisteredFunctionClassName)(params.workflow),
43
- startWorkflowParams: params.startWorkflowParams,
44
- debounceTimeoutMs: params.debounceTimeoutMs,
45
- };
46
- }
47
- async debounce(debounceKey, debouncePeriodMs, ...args) {
48
- if (debouncePeriodMs <= 0) {
49
- throw Error(`debouncePeriodMs must be positive, not ${debouncePeriodMs}`);
50
- }
51
- const cfg = { ...this.cfg };
52
- cfg.startWorkflowParams = this.cfg.startWorkflowParams ? { ...this.cfg.startWorkflowParams } : {};
53
- cfg.startWorkflowParams.workflowID = cfg.startWorkflowParams.workflowID ?? (await _1.DBOS.randomUUID());
54
- while (true) {
55
- const deduplicationID = `${cfg.workflowClassName}.${cfg.workflowName}-${debounceKey}`;
56
- try {
57
- // Attempt to enqueue a debouncer for this workflow
58
- await _1.DBOS.startWorkflow(dbos_executor_1.DBOSExecutor.debouncerWorkflow, {
59
- queueName: utils_1.INTERNAL_QUEUE_NAME,
60
- enqueueOptions: { deduplicationID },
61
- })(debouncePeriodMs, cfg, ...args);
62
- return _1.DBOS.retrieveWorkflow(cfg.startWorkflowParams.workflowID);
63
- }
64
- catch (e) {
65
- // If there is already a debouncer, send a message to it.
66
- if (e instanceof Error && (0, error_1.getDBOSErrorCode)(e) === error_1.QueueDedupIDDuplicated) {
67
- const dedupWorkflowID = await _1.DBOS.runStep(async () => {
68
- return await dbos_executor_1.DBOSExecutor.globalInstance?.systemDatabase.getDeduplicatedWorkflow(utils_1.INTERNAL_QUEUE_NAME, deduplicationID);
69
- });
70
- if (!dedupWorkflowID) {
71
- continue;
72
- }
73
- else {
74
- const messageID = await _1.DBOS.randomUUID();
75
- const message = {
76
- messageID,
77
- args,
78
- debouncePeriodMs,
79
- };
80
- await _1.DBOS.send(dedupWorkflowID, message, _DEBOUNCER_TOPIC);
81
- // Wait for the debouncer to acknowledge receipt of the message.
82
- // If the message is not acknowledged, this likely means the debouncer started its workflow
83
- // and exited without processing this message, so try again.
84
- const event = await _1.DBOS.getEvent(dedupWorkflowID, messageID, 1000);
85
- if (!event) {
86
- continue;
87
- }
88
- // Retrieve the user workflow ID from the input to the debouncer
89
- // and return a handle to it.
90
- const dedupWorkflowInput = await _1.DBOS.retrieveWorkflow(dedupWorkflowID).getWorkflowInputs();
91
- const typedInput = dedupWorkflowInput;
92
- const userWorkflowID = typedInput[1].startWorkflowParams.workflowID;
93
- return _1.DBOS.retrieveWorkflow(userWorkflowID);
94
- }
95
- }
96
- else {
97
- throw e;
98
- }
99
- }
100
- }
101
- }
102
- }
103
- exports.Debouncer = Debouncer;
104
- class DebouncerClient {
105
- client;
106
- cfg;
107
- constructor(client, params) {
108
- this.client = client;
109
- this.cfg = {
110
- workflowName: params.workflowName,
111
- workflowClassName: params.workflowClassName || '',
112
- startWorkflowParams: params.startWorkflowParams,
113
- debounceTimeoutMs: params.debounceTimeoutMs,
114
- };
115
- }
116
- async debounce(debounceKey, debouncePeriodMs, ...args) {
117
- if (debouncePeriodMs <= 0) {
118
- throw Error(`debouncePeriodMs must be positive, not ${debouncePeriodMs}`);
119
- }
120
- const cfg = { ...this.cfg };
121
- cfg.startWorkflowParams = this.cfg.startWorkflowParams ? { ...this.cfg.startWorkflowParams } : {};
122
- cfg.startWorkflowParams.workflowID = cfg.startWorkflowParams.workflowID ?? String((0, node_crypto_1.randomUUID)());
123
- while (true) {
124
- const deduplicationID = `${cfg.workflowClassName}.${cfg.workflowName}-${debounceKey}`;
125
- try {
126
- // Attempt to enqueue a debouncer for this workflow
127
- await this.client.enqueue({ workflowName: utils_1.DEBOUNCER_WORKLOW_NAME, queueName: utils_1.INTERNAL_QUEUE_NAME, deduplicationID }, debouncePeriodMs, cfg, ...args);
128
- return this.client.retrieveWorkflow(cfg.startWorkflowParams.workflowID);
129
- }
130
- catch (e) {
131
- // If there is already a debouncer, send a message to it.
132
- if (e instanceof Error && (0, error_1.getDBOSErrorCode)(e) === error_1.QueueDedupIDDuplicated) {
133
- // Access the private client system database
134
- // eslint-disable-next-line @typescript-eslint/no-unsafe-call, @typescript-eslint/no-unsafe-member-access, @typescript-eslint/no-explicit-any
135
- const dedupWorkflowID = (await this.client.systemDatabase.getDeduplicatedWorkflow(utils_1.INTERNAL_QUEUE_NAME, deduplicationID));
136
- if (!dedupWorkflowID) {
137
- continue;
138
- }
139
- else {
140
- const messageID = String((0, node_crypto_1.randomUUID)());
141
- const message = {
142
- messageID,
143
- args,
144
- debouncePeriodMs,
145
- };
146
- await this.client.send(dedupWorkflowID, message, _DEBOUNCER_TOPIC);
147
- // Wait for the debouncer to acknowledge receipt of the message.
148
- // If the message is not acknowledged, this likely means the debouncer started its workflow
149
- // and exited without processing this message, so try again.
150
- const event = await this.client.getEvent(dedupWorkflowID, messageID, 1000);
151
- if (!event) {
152
- continue;
153
- }
154
- // Retrieve the user workflow ID from the input to the debouncer
155
- // and return a handle to it.
156
- const dedupWorkflowInput = await this.client.retrieveWorkflow(dedupWorkflowID).getWorkflowInputs();
157
- const typedInput = dedupWorkflowInput;
158
- const userWorkflowID = typedInput[1].startWorkflowParams.workflowID;
159
- return this.client.retrieveWorkflow(userWorkflowID);
160
- }
161
- }
162
- else {
163
- throw e;
164
- }
165
- }
166
- }
167
- }
168
- }
169
- exports.DebouncerClient = DebouncerClient;
170
- //# sourceMappingURL=debouncer.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"debouncer.js","sourceRoot":"","sources":["../../src/debouncer.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- export declare function convertAsterisksToRanges(expressions: string[]): string[];
2
- /**
3
- * Validates a Cron-Job expression pattern.
4
- * Throws on error.
5
- */
6
- export declare function validateCrontab(pattern: string): string;
7
- export declare function convertExpression(crontab: string): string;
8
- export declare class TimeMatcher {
9
- #private;
10
- constructor(pattern: string, timezone?: string);
11
- match(date: Date | number): boolean;
12
- nextWakeupTime(date: Date | number): Date;
13
- }
14
- //# sourceMappingURL=crontab.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crontab.d.ts","sourceRoot":"","sources":["../../../src/scheduler/crontab.ts"],"names":[],"mappings":"AAmFA,wBAAgB,wBAAwB,CAAC,WAAW,EAAE,MAAM,EAAE,YAQ7D;AA2HD;;;GAGG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,UAW9C;AAmBD,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,UAYhD;AAeD,qBAAa,WAAW;;gBAMV,OAAO,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IAoB9C,KAAK,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;IAmBzB,cAAc,CAAC,IAAI,EAAE,IAAI,GAAG,MAAM;CAoBnC"}
@@ -1,308 +0,0 @@
1
- "use strict";
2
- // This code was based on code from node-cron:
3
- // https://github.com/node-cron/node-cron
4
- /*
5
- ISC License
6
- Copyright (c) 2016, Lucas Merencia <lucas.merencia@gmail.com>
7
-
8
- Permission to use, copy, modify, and/or distribute this software for any
9
- purpose with or without fee is hereby granted, provided that the above
10
- copyright notice and this permission notice appear in all copies.
11
-
12
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
13
- WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
14
- MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
15
- ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
16
- WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
17
- ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
18
- OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
19
- */
20
- Object.defineProperty(exports, "__esModule", { value: true });
21
- exports.TimeMatcher = exports.convertExpression = exports.validateCrontab = exports.convertAsterisksToRanges = void 0;
22
- function removeExtraSpaces(str) {
23
- return str.replace(/\s{2,}/g, ' ').trim();
24
- }
25
- function prependSecondExpression(expressions) {
26
- if (expressions.length === 5) {
27
- return ['0'].concat(expressions);
28
- }
29
- return expressions;
30
- }
31
- const months = [
32
- 'january',
33
- 'february',
34
- 'march',
35
- 'april',
36
- 'may',
37
- 'june',
38
- 'july',
39
- 'august',
40
- 'september',
41
- 'october',
42
- 'november',
43
- 'december',
44
- ];
45
- const shortMonths = ['jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'];
46
- function convertMonthNameI(expression, items) {
47
- for (let i = 0; i < items.length; i++) {
48
- expression = expression.replace(new RegExp(items[i], 'gi'), `${i + 1}`);
49
- }
50
- return expression;
51
- }
52
- function monthNamesConversion(monthExpression) {
53
- monthExpression = convertMonthNameI(monthExpression, months);
54
- monthExpression = convertMonthNameI(monthExpression, shortMonths);
55
- return monthExpression;
56
- }
57
- const weekDays = ['sunday', 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday'];
58
- const shortWeekDays = ['sun', 'mon', 'tue', 'wed', 'thu', 'fri', 'sat'];
59
- function convertWeekDayName(weekExpression, items) {
60
- for (let i = 0; i < items.length; i++) {
61
- weekExpression = weekExpression.replace(new RegExp(items[i], 'gi'), `${i}`);
62
- }
63
- return weekExpression;
64
- }
65
- function weekDayNamesConversion(expression) {
66
- expression = expression.replace('7', '0');
67
- expression = convertWeekDayName(expression, weekDays);
68
- return convertWeekDayName(expression, shortWeekDays);
69
- }
70
- function convertAsterisk(expression, replacement) {
71
- if (expression.indexOf('*') !== -1) {
72
- return expression.replace('*', replacement);
73
- }
74
- return expression;
75
- }
76
- // Based on position in full crontab, convert asterisk to appropriate range
77
- function convertAsterisksToRanges(expressions) {
78
- expressions[0] = convertAsterisk(expressions[0], '0-59');
79
- expressions[1] = convertAsterisk(expressions[1], '0-59');
80
- expressions[2] = convertAsterisk(expressions[2], '0-23');
81
- expressions[3] = convertAsterisk(expressions[3], '1-31');
82
- expressions[4] = convertAsterisk(expressions[4], '1-12');
83
- expressions[5] = convertAsterisk(expressions[5], '0-6');
84
- return expressions;
85
- }
86
- exports.convertAsterisksToRanges = convertAsterisksToRanges;
87
- function replaceWithRange(expression, text, init, end) {
88
- const numbers = [];
89
- let last = parseInt(end);
90
- let first = parseInt(init);
91
- if (first > last) {
92
- last = parseInt(init);
93
- first = parseInt(end);
94
- }
95
- for (let i = first; i <= last; i++) {
96
- numbers.push(i.toString());
97
- }
98
- return expression.replace(new RegExp(text, 'i'), numbers.join());
99
- }
100
- function convertRange(expression) {
101
- const rangeRegEx = /(\d+)-(\d+)/;
102
- let match = rangeRegEx.exec(expression);
103
- while (match !== null && match.length > 0) {
104
- expression = replaceWithRange(expression, match[0], match[1], match[2]);
105
- match = rangeRegEx.exec(expression);
106
- }
107
- return expression;
108
- }
109
- function convertAllRanges(expressions) {
110
- for (let i = 0; i < expressions.length; i++) {
111
- expressions[i] = convertRange(expressions[i]);
112
- }
113
- return expressions;
114
- }
115
- function convertSteps(expressions) {
116
- const stepValuePattern = /^(.+)\/(\w+)$/;
117
- for (let i = 0; i < expressions.length; i++) {
118
- const match = stepValuePattern.exec(expressions[i]);
119
- const isStepValue = match !== null && match.length > 0;
120
- if (isStepValue) {
121
- const baseDivider = match[2];
122
- if (isNaN(parseInt(baseDivider))) {
123
- throw new Error(baseDivider + ' is not a valid step value');
124
- }
125
- const values = match[1].split(',');
126
- const stepValues = [];
127
- const divider = parseInt(baseDivider, 10);
128
- for (let j = 0; j <= values.length; j++) {
129
- const value = parseInt(values[j], 10);
130
- if (value % divider === 0) {
131
- stepValues.push(`${value}`);
132
- }
133
- }
134
- expressions[i] = stepValues.join(',');
135
- }
136
- }
137
- return expressions;
138
- }
139
- // Function that takes care of normalization.
140
- function normalizeIntegers(expressions) {
141
- for (let i = 0; i < expressions.length; i++) {
142
- const numbers = expressions[i].split(',');
143
- for (let j = 0; j < numbers.length; j++) {
144
- numbers[j] = parseInt(numbers[j]).toString();
145
- }
146
- expressions[i] = numbers.join(',');
147
- }
148
- return expressions;
149
- }
150
- const validationRegex = /^(?:\d+|\*|\*\/\d+)$/;
151
- // Check comma-delimited list to see if elements are in range
152
- function isValidExpression(expression, min, max) {
153
- const options = expression.split(',');
154
- for (const option of options) {
155
- const optionAsInt = parseInt(option, 10);
156
- if ((!Number.isNaN(optionAsInt) && (optionAsInt < min || optionAsInt > max)) || !validationRegex.test(option)) {
157
- return false;
158
- }
159
- }
160
- return true;
161
- }
162
- function isInvalidSecond(expression) {
163
- return !isValidExpression(expression, 0, 59);
164
- }
165
- function isInvalidMinute(expression) {
166
- return !isValidExpression(expression, 0, 59);
167
- }
168
- function isInvalidHour(expression) {
169
- return !isValidExpression(expression, 0, 23);
170
- }
171
- function isInvalidDayOfMonth(expression) {
172
- return !isValidExpression(expression, 1, 31);
173
- }
174
- function isInvalidMonth(expression) {
175
- return !isValidExpression(expression, 1, 12);
176
- }
177
- function isInvalidWeekDay(expression) {
178
- return !isValidExpression(expression, 0, 7);
179
- }
180
- function validateFields(patterns, executablePatterns) {
181
- if (isInvalidSecond(executablePatterns[0]))
182
- throw new Error(`${patterns[0]} is a invalid expression for second`);
183
- if (isInvalidMinute(executablePatterns[1]))
184
- throw new Error(`${patterns[1]} is a invalid expression for minute`);
185
- if (isInvalidHour(executablePatterns[2]))
186
- throw new Error(`${patterns[2]} is a invalid expression for hour`);
187
- if (isInvalidDayOfMonth(executablePatterns[3]))
188
- throw new Error(`${patterns[3]} is a invalid expression for day of month`);
189
- if (isInvalidMonth(executablePatterns[4]))
190
- throw new Error(`${patterns[4]} is a invalid expression for month`);
191
- if (isInvalidWeekDay(executablePatterns[5]))
192
- throw new Error(`${patterns[5]} is a invalid expression for week day`);
193
- }
194
- /**
195
- * Validates a Cron-Job expression pattern.
196
- * Throws on error.
197
- */
198
- function validateCrontab(pattern) {
199
- if (typeof pattern !== 'string')
200
- throw new TypeError('pattern must be a string!');
201
- const patterns = pattern.split(' ');
202
- const executablePatterns = convertExpression(pattern).split(' ');
203
- if (patterns.length === 5)
204
- patterns.unshift('0');
205
- validateFields(patterns, executablePatterns);
206
- return executablePatterns.join(' ');
207
- }
208
- exports.validateCrontab = validateCrontab;
209
- /*
210
- * The node-cron core allows only numbers (including multiple numbers e.g 1,2).
211
- * This module is going to translate the month names, week day names and ranges
212
- * to integers relatives.
213
- *
214
- * Month names example:
215
- * - expression 0 1 1 January,Sep *
216
- * - Will be translated to 0 1 1 1,9 *
217
- *
218
- * Week day names example:
219
- * - expression 0 1 1 2 Monday,Sat
220
- * - Will be translated to 0 1 1 1,5 *
221
- *
222
- * Ranges example:
223
- * - expression 1-5 * * * *
224
- * - Will be translated to 1,2,3,4,5 * * * *
225
- */
226
- function convertExpression(crontab) {
227
- let expressions = removeExtraSpaces(crontab).split(' ');
228
- expressions = prependSecondExpression(expressions);
229
- expressions[4] = monthNamesConversion(expressions[4]);
230
- expressions[5] = weekDayNamesConversion(expressions[5]);
231
- expressions = convertAsterisksToRanges(expressions);
232
- expressions = convertAllRanges(expressions);
233
- expressions = convertSteps(expressions);
234
- expressions = normalizeIntegers(expressions);
235
- return expressions.join(' ');
236
- }
237
- exports.convertExpression = convertExpression;
238
- //////////
239
- /// Time matcher
240
- //////////
241
- function matchPattern(pattern, nvalue) {
242
- const value = `${nvalue}`;
243
- if (pattern.indexOf(',') !== -1) {
244
- const patterns = pattern.split(',');
245
- return patterns.includes(value);
246
- }
247
- return pattern === value;
248
- }
249
- class TimeMatcher {
250
- #pattern;
251
- #expressions;
252
- #dtf;
253
- #timezone;
254
- constructor(pattern, timezone) {
255
- validateCrontab(pattern);
256
- this.#pattern = convertExpression(pattern);
257
- this.#timezone = timezone;
258
- this.#expressions = this.#pattern.split(' ');
259
- this.#dtf = this.#timezone
260
- ? new Intl.DateTimeFormat('en-US', {
261
- year: 'numeric',
262
- month: '2-digit',
263
- day: '2-digit',
264
- hour: '2-digit',
265
- minute: '2-digit',
266
- second: '2-digit',
267
- hourCycle: 'h23',
268
- fractionalSecondDigits: 3,
269
- timeZone: this.#timezone,
270
- })
271
- : null;
272
- }
273
- match(date) {
274
- date = this.#apply(date);
275
- const runOnSecond = matchPattern(this.#expressions[0], date.getSeconds());
276
- const runOnMinute = matchPattern(this.#expressions[1], date.getMinutes());
277
- const runOnHour = matchPattern(this.#expressions[2], date.getHours());
278
- const runOnDay = this.#runsThisDay(date);
279
- return runOnSecond && runOnMinute && runOnHour && runOnDay;
280
- }
281
- #runsThisDay(date) {
282
- const runOnDay = matchPattern(this.#expressions[3], date.getDate());
283
- const runOnMonth = matchPattern(this.#expressions[4], date.getMonth() + 1);
284
- const runOnWeekDay = matchPattern(this.#expressions[5], date.getDay());
285
- return runOnDay && runOnMonth && runOnWeekDay;
286
- }
287
- nextWakeupTime(date) {
288
- // This is conservative. Some schedules never occur, such as the 30th of February, but you can ask for them
289
- const time = typeof date === 'number' ? date : date.getTime();
290
- let msec = Math.round(time);
291
- // This can be optimized by skipping ahead, but unit test first
292
- for (let maxIters = 3600; --maxIters; maxIters > 0) {
293
- msec += 1000;
294
- const nd = new Date(msec);
295
- if (this.match(nd))
296
- return nd;
297
- }
298
- return new Date(msec);
299
- }
300
- #apply(date) {
301
- if (this.#dtf) {
302
- return new Date(this.#dtf.format(date));
303
- }
304
- return typeof date === 'number' ? new Date(date) : date;
305
- }
306
- }
307
- exports.TimeMatcher = TimeMatcher;
308
- //# sourceMappingURL=crontab.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"crontab.js","sourceRoot":"","sources":["../../../src/scheduler/crontab.ts"],"names":[],"mappings":"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"}