@sapphire/plugin-scheduled-tasks 7.1.1 → 7.1.2-next.261c2fc.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 (43) hide show
  1. package/package.json +1 -1
  2. package/dist/lib/strategies/ScheduledTaskRedisStrategy.d.ts +0 -36
  3. package/dist/lib/strategies/ScheduledTaskRedisStrategy.d.ts.map +0 -1
  4. package/dist/lib/strategies/ScheduledTaskRedisStrategy.js +0 -99
  5. package/dist/lib/strategies/ScheduledTaskRedisStrategy.js.map +0 -1
  6. package/dist/lib/strategies/ScheduledTaskSQSStrategy.d.ts +0 -29
  7. package/dist/lib/strategies/ScheduledTaskSQSStrategy.d.ts.map +0 -1
  8. package/dist/lib/strategies/ScheduledTaskSQSStrategy.js +0 -92
  9. package/dist/lib/strategies/ScheduledTaskSQSStrategy.js.map +0 -1
  10. package/dist/lib/types/ScheduledTaskBaseStrategy.d.ts +0 -17
  11. package/dist/lib/types/ScheduledTaskBaseStrategy.d.ts.map +0 -1
  12. package/dist/lib/types/ScheduledTaskBaseStrategy.js +0 -3
  13. package/dist/lib/types/ScheduledTaskBaseStrategy.js.map +0 -1
  14. package/dist/lib/types/ScheduledTaskCreateRepeatedTask.d.ts +0 -6
  15. package/dist/lib/types/ScheduledTaskCreateRepeatedTask.d.ts.map +0 -1
  16. package/dist/lib/types/ScheduledTaskCreateRepeatedTask.js +0 -3
  17. package/dist/lib/types/ScheduledTaskCreateRepeatedTask.js.map +0 -1
  18. package/dist/lib/types/ScheduledTasksOptions.d.ts +0 -5
  19. package/dist/lib/types/ScheduledTasksOptions.d.ts.map +0 -1
  20. package/dist/lib/types/ScheduledTasksOptions.js +0 -3
  21. package/dist/lib/types/ScheduledTasksOptions.js.map +0 -1
  22. package/dist/lib/types/ScheduledTasksTaskOptions.d.ts +0 -19
  23. package/dist/lib/types/ScheduledTasksTaskOptions.d.ts.map +0 -1
  24. package/dist/lib/types/ScheduledTasksTaskOptions.js +0 -3
  25. package/dist/lib/types/ScheduledTasksTaskOptions.js.map +0 -1
  26. package/dist/register-redis.d.ts +0 -10
  27. package/dist/register-redis.d.ts.map +0 -1
  28. package/dist/register-redis.js +0 -6
  29. package/dist/register-redis.js.map +0 -1
  30. package/dist/register-redis.mjs +0 -4
  31. package/dist/register-sqs.d.ts +0 -4
  32. package/dist/register-sqs.d.ts.map +0 -1
  33. package/dist/register-sqs.js +0 -6
  34. package/dist/register-sqs.js.map +0 -1
  35. package/dist/register-sqs.mjs +0 -4
  36. package/dist/types-redis.d.ts +0 -2
  37. package/dist/types-redis.d.ts.map +0 -1
  38. package/dist/types-redis.js +0 -3
  39. package/dist/types-redis.js.map +0 -1
  40. package/dist/types-sqs.d.ts +0 -2
  41. package/dist/types-sqs.d.ts.map +0 -1
  42. package/dist/types-sqs.js +0 -3
  43. package/dist/types-sqs.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sapphire/plugin-scheduled-tasks",
3
- "version": "7.1.1",
3
+ "version": "7.1.2-next.261c2fc.0",
4
4
  "description": "Plugin for @sapphire/framework to have scheduled tasks",
5
5
  "author": "@sapphire",
6
6
  "license": "MIT",
@@ -1,36 +0,0 @@
1
- import { Job, Queue, type EntryId, type JobState, type QueueOptions } from 'bullmq';
2
- import type { ScheduledTaskBaseStrategy } from '../types/ScheduledTaskBaseStrategy';
3
- import type { ScheduledTaskCreateRepeatedTask } from '../types/ScheduledTaskCreateRepeatedTask';
4
- import type { ScheduledTasksTaskOptions } from '../types/ScheduledTasksTaskOptions';
5
- export interface ScheduledTaskRedisStrategyOptions {
6
- queue?: string;
7
- bull?: QueueOptions;
8
- }
9
- export interface ScheduledTaskRedisStrategyJob {
10
- }
11
- export interface ScheduledTaskRedisStrategyListRepeatedOptions {
12
- start?: number;
13
- end?: number;
14
- asc?: boolean;
15
- }
16
- export interface ScheduledTaskRedisStrategyListOptions extends ScheduledTaskRedisStrategyListRepeatedOptions {
17
- types: JobState[];
18
- }
19
- export type BullClient = Queue<ScheduledTaskRedisStrategyJob | null>;
20
- export type ScheduledTaskRedisListRepeatedReturnType = ReturnType<BullClient['getRepeatableJobs']> extends Promise<infer U> ? U : never;
21
- export declare class ScheduledTaskRedisStrategy implements ScheduledTaskBaseStrategy {
22
- readonly options: QueueOptions;
23
- readonly queue: string;
24
- private queueClient;
25
- constructor(options?: ScheduledTaskRedisStrategyOptions);
26
- get client(): BullClient;
27
- connect(): void;
28
- create<T = unknown>(task: string, payload?: ScheduledTaskRedisStrategyJob | null, options?: ScheduledTasksTaskOptions): Promise<Job<T>> | undefined;
29
- createRepeated(tasks: ScheduledTaskCreateRepeatedTask[]): Promise<void>;
30
- delete(id: EntryId): Promise<void>;
31
- list<T = unknown>(options: ScheduledTaskRedisStrategyListOptions): Promise<Job<T>[]> | undefined;
32
- listRepeated(options: ScheduledTaskRedisStrategyListRepeatedOptions): Promise<ScheduledTaskRedisListRepeatedReturnType> | undefined;
33
- get<T = unknown>(id: EntryId): Promise<Job<T> | null> | undefined;
34
- run(task: string, payload: unknown): Promise<unknown>;
35
- }
36
- //# sourceMappingURL=ScheduledTaskRedisStrategy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTaskRedisStrategy.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/ScheduledTaskRedisStrategy.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,KAAK,EAAU,KAAK,OAAO,EAAoB,KAAK,QAAQ,EAAE,KAAK,YAAY,EAAE,MAAM,QAAQ,CAAC;AAC9G,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAEhG,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAEpF,MAAM,WAAW,iCAAiC;IACjD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,YAAY,CAAC;CACpB;AAED,MAAM,WAAW,6BAA6B;CAAG;AAEjD,MAAM,WAAW,6CAA6C;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,OAAO,CAAC;CACd;AAED,MAAM,WAAW,qCAAsC,SAAQ,6CAA6C;IAC3G,KAAK,EAAE,QAAQ,EAAE,CAAC;CAClB;AAED,MAAM,MAAM,UAAU,GAAG,KAAK,CAAC,6BAA6B,GAAG,IAAI,CAAC,CAAC;AAErE,MAAM,MAAM,wCAAwC,GAAG,UAAU,CAAC,UAAU,CAAC,mBAAmB,CAAC,CAAC,SAAS,OAAO,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;AAExI,qBAAa,0BAA2B,YAAW,yBAAyB;IAC3E,SAAgB,OAAO,EAAE,YAAY,CAAC;IACtC,SAAgB,KAAK,EAAE,MAAM,CAAC;IAC9B,OAAO,CAAC,WAAW,CAAc;gBAEd,OAAO,CAAC,EAAE,iCAAiC;IAK9D,IAAW,MAAM,IAAI,UAAU,CAE9B;IAEM,OAAO,IAAI,IAAI;IASf,MAAM,CAAC,CAAC,GAAG,OAAO,EACxB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE,6BAA6B,GAAG,IAAI,EAC9C,OAAO,CAAC,EAAE,yBAAyB,GACjC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,SAAS;IA0BjB,cAAc,CAAC,KAAK,EAAE,+BAA+B,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAMvE,MAAM,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IASxC,IAAI,CAAC,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,qCAAqC,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,SAAS;IAShG,YAAY,CAAC,OAAO,EAAE,6CAA6C,GAAG,OAAO,CAAC,wCAAwC,CAAC,GAAG,SAAS;IASnI,GAAG,CAAC,CAAC,GAAG,OAAO,EAAE,EAAE,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GAAG,SAAS;IAQjE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;CAG5D"}
@@ -1,99 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ScheduledTaskRedisStrategy = void 0;
4
- const framework_1 = require("@sapphire/framework");
5
- const bullmq_1 = require("bullmq");
6
- const ScheduledTaskEvents_1 = require("../types/ScheduledTaskEvents");
7
- class ScheduledTaskRedisStrategy {
8
- constructor(options) {
9
- Object.defineProperty(this, "options", {
10
- enumerable: true,
11
- configurable: true,
12
- writable: true,
13
- value: void 0
14
- });
15
- Object.defineProperty(this, "queue", {
16
- enumerable: true,
17
- configurable: true,
18
- writable: true,
19
- value: void 0
20
- });
21
- Object.defineProperty(this, "queueClient", {
22
- enumerable: true,
23
- configurable: true,
24
- writable: true,
25
- value: void 0
26
- });
27
- this.queue = options?.queue ?? 'scheduled-tasks';
28
- this.options = options?.bull ?? {};
29
- }
30
- get client() {
31
- return this.queueClient;
32
- }
33
- connect() {
34
- const connectResult = framework_1.Result.from(() => {
35
- this.queueClient = new bullmq_1.Queue(this.queue, this.options);
36
- new bullmq_1.Worker(this.queue, async (job) => this.run(job?.name, job?.data), { connection: this.options.connection });
37
- });
38
- connectResult.inspectErr((error) => framework_1.container.client.emit(ScheduledTaskEvents_1.ScheduledTaskEvents.ScheduledTaskStrategyConnectError, error));
39
- }
40
- create(task, payload, options) {
41
- if (!this.queueClient) {
42
- return;
43
- }
44
- let jobOptions = {
45
- delay: options?.delay,
46
- ...options?.customJobOptions
47
- };
48
- if (options?.repeated) {
49
- jobOptions = {
50
- ...jobOptions,
51
- repeat: options?.interval
52
- ? {
53
- every: options.interval
54
- }
55
- : {
56
- pattern: options.pattern
57
- }
58
- };
59
- }
60
- return this.queueClient.add(task, payload ?? null, jobOptions);
61
- }
62
- async createRepeated(tasks) {
63
- for (const task of tasks) {
64
- await this.create(task.name, null, task.options);
65
- }
66
- }
67
- async delete(id) {
68
- if (!this.queueClient) {
69
- return;
70
- }
71
- const job = await this.get(id);
72
- return job?.remove();
73
- }
74
- list(options) {
75
- const { types, start, end, asc } = options;
76
- if (!this.queueClient) {
77
- return;
78
- }
79
- return this.queueClient.getJobs(types, start, end, asc);
80
- }
81
- listRepeated(options) {
82
- const { start, end, asc } = options;
83
- if (!this.queueClient) {
84
- return;
85
- }
86
- return this.queueClient.getRepeatableJobs(start, end, asc);
87
- }
88
- get(id) {
89
- if (!this.queueClient) {
90
- return;
91
- }
92
- return this.queueClient.getJob(id);
93
- }
94
- run(task, payload) {
95
- return framework_1.container.tasks.run(task, payload);
96
- }
97
- }
98
- exports.ScheduledTaskRedisStrategy = ScheduledTaskRedisStrategy;
99
- //# sourceMappingURL=ScheduledTaskRedisStrategy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTaskRedisStrategy.js","sourceRoot":"","sources":["../../../src/lib/strategies/ScheduledTaskRedisStrategy.ts"],"names":[],"mappings":"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"}
@@ -1,29 +0,0 @@
1
- import type { SendMessageBatchResultEntryList } from 'aws-sdk/clients/sqs';
2
- import { type ConsumerOptions } from 'sqs-consumer';
3
- import { Producer } from 'sqs-producer';
4
- import type { ScheduledTaskBaseStrategy } from '../types/ScheduledTaskBaseStrategy';
5
- import type { ScheduledTaskCreateRepeatedTask } from '../types/ScheduledTaskCreateRepeatedTask';
6
- import type { ScheduledTasksTaskOptions } from '../types/ScheduledTasksTaskOptions';
7
- export interface ScheduledTaskSQSStrategyMessageBody {
8
- task: string;
9
- payload?: unknown;
10
- options: ScheduledTasksTaskOptions;
11
- }
12
- export type SQSClient = Producer;
13
- export declare class ScheduledTaskSQSStrategy implements ScheduledTaskBaseStrategy {
14
- readonly options: ConsumerOptions;
15
- private producer;
16
- constructor(options: ConsumerOptions);
17
- get client(): SQSClient;
18
- connect(): void;
19
- create(task: string, payload?: unknown, options?: ScheduledTasksTaskOptions): Promise<SendMessageBatchResultEntryList>;
20
- createRepeated(tasks: ScheduledTaskCreateRepeatedTask[]): Promise<void>;
21
- delete(): void;
22
- list(): void;
23
- listRepeated(): void;
24
- get(): void;
25
- run(task: string, payload: unknown): Promise<unknown>;
26
- private handleMessage;
27
- private handleBatch;
28
- }
29
- //# sourceMappingURL=ScheduledTaskSQSStrategy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTaskSQSStrategy.d.ts","sourceRoot":"","sources":["../../../src/lib/strategies/ScheduledTaskSQSStrategy.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,qBAAqB,CAAC;AAE3E,OAAO,EAAY,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AACpF,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAEhG,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAEpF,MAAM,WAAW,mCAAmC;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,yBAAyB,CAAC;CACnC;AAED,MAAM,MAAM,SAAS,GAAG,QAAQ,CAAC;AAEjC,qBAAa,wBAAyB,YAAW,yBAAyB;IACzE,SAAgB,OAAO,EAAE,eAAe,CAAC;IAEzC,OAAO,CAAC,QAAQ,CAAY;gBAET,OAAO,EAAE,eAAe;IAK3C,IAAW,MAAM,IAAI,SAAS,CAE7B;IAEM,OAAO;IAcP,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,yBAAyB,GAAG,OAAO,CAAC,+BAA+B,CAAC;IAqBhH,cAAc,CAAC,KAAK,EAAE,+BAA+B,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAM7E,MAAM,IAAI,IAAI;IAId,IAAI,IAAI,IAAI;IAIZ,YAAY,IAAI,IAAI;IAIpB,GAAG,IAAI,IAAI;IAIX,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;YAI9C,aAAa;YAWb,WAAW;CAOzB"}
@@ -1,92 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ScheduledTaskSQSStrategy = void 0;
4
- const framework_1 = require("@sapphire/framework");
5
- const crypto_1 = require("crypto");
6
- const sqs_consumer_1 = require("sqs-consumer");
7
- const sqs_producer_1 = require("sqs-producer");
8
- const ScheduledTaskEvents_1 = require("../types/ScheduledTaskEvents");
9
- class ScheduledTaskSQSStrategy {
10
- constructor(options) {
11
- Object.defineProperty(this, "options", {
12
- enumerable: true,
13
- configurable: true,
14
- writable: true,
15
- value: void 0
16
- });
17
- Object.defineProperty(this, "producer", {
18
- enumerable: true,
19
- configurable: true,
20
- writable: true,
21
- value: void 0
22
- });
23
- this.options = options;
24
- this.producer = sqs_producer_1.Producer.create(this.options);
25
- }
26
- get client() {
27
- return this.producer;
28
- }
29
- connect() {
30
- const connectResult = framework_1.Result.from(() => {
31
- const consumer = sqs_consumer_1.Consumer.create({
32
- ...this.options,
33
- handleMessage: this.handleMessage.bind(this),
34
- handleMessageBatch: this.handleBatch.bind(this)
35
- });
36
- consumer.start();
37
- });
38
- connectResult.inspectErr((error) => framework_1.container.client.emit(ScheduledTaskEvents_1.ScheduledTaskEvents.ScheduledTaskStrategyConnectError, error));
39
- }
40
- create(task, payload, options) {
41
- if (options?.pattern) {
42
- throw new Error('SQS does not support pattern notation.');
43
- }
44
- let delay = (options?.delay ?? 0) / 1000;
45
- if (options?.repeated) {
46
- delay = options.interval / 1000;
47
- }
48
- return this.producer.send({
49
- id: `${task}-${(0, crypto_1.randomBytes)(6)}`,
50
- body: JSON.stringify({
51
- task,
52
- payload,
53
- options
54
- }),
55
- delaySeconds: delay
56
- });
57
- }
58
- async createRepeated(tasks) {
59
- for (const task of tasks) {
60
- await this.create(task.name, null, task.options);
61
- }
62
- }
63
- delete() {
64
- throw new Error('SQS does not support deleting tasks.');
65
- }
66
- list() {
67
- throw new Error('SQS does not support listing tasks.');
68
- }
69
- listRepeated() {
70
- throw new Error('SQS does not support listing tasks.');
71
- }
72
- get() {
73
- throw new Error('SQS does not support getting tasks.');
74
- }
75
- run(task, payload) {
76
- return framework_1.container.tasks.run(task, payload);
77
- }
78
- async handleMessage(message) {
79
- const data = JSON.parse(message.Body);
80
- await this.run(data.task, data.payload);
81
- if (data.options.repeated) {
82
- await this.create(data.task, data.payload, data.options);
83
- }
84
- }
85
- async handleBatch(messages) {
86
- for (const message of messages) {
87
- await this.handleMessage(message);
88
- }
89
- }
90
- }
91
- exports.ScheduledTaskSQSStrategy = ScheduledTaskSQSStrategy;
92
- //# sourceMappingURL=ScheduledTaskSQSStrategy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTaskSQSStrategy.js","sourceRoot":"","sources":["../../../src/lib/strategies/ScheduledTaskSQSStrategy.ts"],"names":[],"mappings":"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"}
@@ -1,17 +0,0 @@
1
- import type { Awaitable } from '@sapphire/utilities';
2
- import type { ScheduledTaskCreateRepeatedTask } from './ScheduledTaskCreateRepeatedTask';
3
- import type { ScheduledTasksTaskOptions } from './ScheduledTasksTaskOptions';
4
- export interface ScheduledTaskBaseStrategy {
5
- client: unknown;
6
- connect(): void;
7
- create(task: keyof ScheduledTasks, payload: unknown, options?: ScheduledTasksTaskOptions): Awaitable<unknown>;
8
- createRepeated(tasks: ScheduledTaskCreateRepeatedTask[]): void;
9
- delete(id: unknown): unknown;
10
- list(options?: unknown): unknown;
11
- listRepeated(options?: unknown): unknown;
12
- get(id: unknown): unknown;
13
- run(task: string, payload: unknown): Awaitable<unknown>;
14
- }
15
- export interface ScheduledTasks {
16
- }
17
- //# sourceMappingURL=ScheduledTaskBaseStrategy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTaskBaseStrategy.d.ts","sourceRoot":"","sources":["../../../src/lib/types/ScheduledTaskBaseStrategy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,mCAAmC,CAAC;AACzF,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAE7E,MAAM,WAAW,yBAAyB;IACzC,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,IAAI,IAAI,CAAC;IAChB,MAAM,CAAC,IAAI,EAAE,MAAM,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,yBAAyB,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9G,cAAc,CAAC,KAAK,EAAE,+BAA+B,EAAE,GAAG,IAAI,CAAC;IAC/D,MAAM,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAAC;IAC7B,IAAI,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACjC,YAAY,CAAC,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC;IACzC,GAAG,CAAC,EAAE,EAAE,OAAO,GAAG,OAAO,CAAC;IAC1B,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;CACxD;AAED,MAAM,WAAW,cAAc;CAAG"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=ScheduledTaskBaseStrategy.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTaskBaseStrategy.js","sourceRoot":"","sources":["../../../src/lib/types/ScheduledTaskBaseStrategy.ts"],"names":[],"mappings":""}
@@ -1,6 +0,0 @@
1
- import type { ScheduledTasksTaskOptions } from './ScheduledTasksTaskOptions';
2
- export interface ScheduledTaskCreateRepeatedTask {
3
- name: string;
4
- options: ScheduledTasksTaskOptions;
5
- }
6
- //# sourceMappingURL=ScheduledTaskCreateRepeatedTask.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTaskCreateRepeatedTask.d.ts","sourceRoot":"","sources":["../../../src/lib/types/ScheduledTaskCreateRepeatedTask.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAE7E,MAAM,WAAW,+BAA+B;IAC/C,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,yBAAyB,CAAC;CACnC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=ScheduledTaskCreateRepeatedTask.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTaskCreateRepeatedTask.js","sourceRoot":"","sources":["../../../src/lib/types/ScheduledTaskCreateRepeatedTask.ts"],"names":[],"mappings":""}
@@ -1,5 +0,0 @@
1
- import type { ScheduledTaskBaseStrategy } from './ScheduledTaskBaseStrategy';
2
- export interface ScheduledTasksOptions {
3
- strategy: ScheduledTaskBaseStrategy;
4
- }
5
- //# sourceMappingURL=ScheduledTasksOptions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTasksOptions.d.ts","sourceRoot":"","sources":["../../../src/lib/types/ScheduledTasksOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,6BAA6B,CAAC;AAE7E,MAAM,WAAW,qBAAqB;IACrC,QAAQ,EAAE,yBAAyB,CAAC;CACpC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=ScheduledTasksOptions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTasksOptions.js","sourceRoot":"","sources":["../../../src/lib/types/ScheduledTasksOptions.ts"],"names":[],"mappings":""}
@@ -1,19 +0,0 @@
1
- export type ScheduledTasksTaskOptions = {
2
- repeated: boolean;
3
- } & ({
4
- delay: number;
5
- interval?: never;
6
- pattern?: never;
7
- customJobOptions?: any;
8
- } | {
9
- delay?: never;
10
- interval: number;
11
- pattern?: never;
12
- customJobOptions?: any;
13
- } | {
14
- delay?: never;
15
- interval?: never;
16
- pattern: string;
17
- customJobOptions?: any;
18
- });
19
- //# sourceMappingURL=ScheduledTasksTaskOptions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTasksTaskOptions.d.ts","sourceRoot":"","sources":["../../../src/lib/types/ScheduledTasksTaskOptions.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,yBAAyB,GAAG;IACvC,QAAQ,EAAE,OAAO,CAAC;CAClB,GAAG,CACD;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IAAC,OAAO,CAAC,EAAE,KAAK,CAAC;IAAC,gBAAgB,CAAC,EAAE,GAAG,CAAA;CAAE,GAC5E;IAAE,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,KAAK,CAAC;IAAC,gBAAgB,CAAC,EAAE,GAAG,CAAA;CAAE,GAC5E;IAAE,KAAK,CAAC,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,EAAE,KAAK,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,gBAAgB,CAAC,EAAE,GAAG,CAAA;CAAE,CAC9E,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=ScheduledTasksTaskOptions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ScheduledTasksTaskOptions.js","sourceRoot":"","sources":["../../../src/lib/types/ScheduledTasksTaskOptions.ts"],"names":[],"mappings":""}
@@ -1,10 +0,0 @@
1
- import type { JobsOptions } from 'bullmq';
2
- import './index';
3
- import './register';
4
- export * from './lib/strategies/ScheduledTaskRedisStrategy';
5
- declare module '@sapphire/plugin-scheduled-tasks' {
6
- interface ScheduledTaskOptions {
7
- bullJobsOptions?: Omit<JobsOptions, 'repeat'>;
8
- }
9
- }
10
- //# sourceMappingURL=register-redis.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"register-redis.d.ts","sourceRoot":"","sources":["../src/register-redis.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAC1C,OAAO,SAAS,CAAC;AACjB,OAAO,YAAY,CAAC;AAEpB,cAAc,6CAA6C,CAAC;AAG5D,OAAO,QAAQ,kCAAkC,CAAC;IACjD,UAAU,oBAAoB;QAC7B,eAAe,CAAC,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;KAC9C;CACD"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- require("./index");
4
- require("./register");
5
- __exportStar(require("./lib/strategies/ScheduledTaskRedisStrategy"), exports);
6
- //# sourceMappingURL=register-redis.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"register-redis.js","sourceRoot":"","sources":["../src/register-redis.ts"],"names":[],"mappings":";;AACA,mBAAiB;AACjB,sBAAoB;AAEpB,8EAA4D"}
@@ -1,4 +0,0 @@
1
- import mod from "./register-redis.js";
2
-
3
- export default mod;
4
- export const {ScheduledTaskRedisStrategy} = mod;
@@ -1,4 +0,0 @@
1
- import './index';
2
- import './register';
3
- export * from './lib/strategies/ScheduledTaskSQSStrategy';
4
- //# sourceMappingURL=register-sqs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"register-sqs.d.ts","sourceRoot":"","sources":["../src/register-sqs.ts"],"names":[],"mappings":"AAAA,OAAO,SAAS,CAAC;AACjB,OAAO,YAAY,CAAC;AAEpB,cAAc,2CAA2C,CAAC"}
@@ -1,6 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- require("./index");
4
- require("./register");
5
- __exportStar(require("./lib/strategies/ScheduledTaskSQSStrategy"), exports);
6
- //# sourceMappingURL=register-sqs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"register-sqs.js","sourceRoot":"","sources":["../src/register-sqs.ts"],"names":[],"mappings":";;AAAA,mBAAiB;AACjB,sBAAoB;AAEpB,4EAA0D"}
@@ -1,4 +0,0 @@
1
- import mod from "./register-sqs.js";
2
-
3
- export default mod;
4
- export const {ScheduledTaskSQSStrategy} = mod;
@@ -1,2 +0,0 @@
1
- export type { BullClient, ScheduledTaskRedisListRepeatedReturnType, ScheduledTaskRedisStrategy, ScheduledTaskRedisStrategyJob, ScheduledTaskRedisStrategyListOptions, ScheduledTaskRedisStrategyListRepeatedOptions, ScheduledTaskRedisStrategyOptions } from './lib/strategies/ScheduledTaskRedisStrategy';
2
- //# sourceMappingURL=types-redis.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types-redis.d.ts","sourceRoot":"","sources":["../src/types-redis.ts"],"names":[],"mappings":"AAAA,YAAY,EACX,UAAU,EACV,wCAAwC,EACxC,0BAA0B,EAC1B,6BAA6B,EAC7B,qCAAqC,EACrC,6CAA6C,EAC7C,iCAAiC,EACjC,MAAM,6CAA6C,CAAC"}
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types-redis.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types-redis.js","sourceRoot":"","sources":["../src/types-redis.ts"],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- export type { ScheduledTaskSQSStrategy, ScheduledTaskSQSStrategyMessageBody, SQSClient } from './lib/strategies/ScheduledTaskSQSStrategy';
2
- //# sourceMappingURL=types-sqs.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types-sqs.d.ts","sourceRoot":"","sources":["../src/types-sqs.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,wBAAwB,EAAE,mCAAmC,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAC"}
package/dist/types-sqs.js DELETED
@@ -1,3 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- //# sourceMappingURL=types-sqs.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types-sqs.js","sourceRoot":"","sources":["../src/types-sqs.ts"],"names":[],"mappings":""}