namirasoft-node 1.3.65 → 1.3.67

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.
@@ -7,10 +7,11 @@ export declare abstract class BaseCron<D extends BaseDatabase> {
7
7
  abstract getInfo(): {
8
8
  name: string;
9
9
  expression: string;
10
+ runOnStart: boolean;
10
11
  ignoreDatabase?: boolean;
11
12
  };
12
- abstract preHandle(): Promise<void>;
13
+ preHandle(): Promise<void>;
13
14
  abstract handleOne(): Promise<void>;
14
- abstract postHandle(): Promise<void>;
15
+ postHandle(): Promise<void>;
15
16
  run(): void;
16
17
  }
package/dist/BaseCron.js CHANGED
@@ -18,10 +18,16 @@ class BaseCron {
18
18
  constructor(app) {
19
19
  this.app = app;
20
20
  }
21
+ preHandle() {
22
+ return __awaiter(this, void 0, void 0, function* () { });
23
+ }
24
+ postHandle() {
25
+ return __awaiter(this, void 0, void 0, function* () { });
26
+ }
21
27
  run() {
22
28
  let info = this.getInfo();
23
29
  this.app.logger.info(`Cron ${info.name} was schedued for ${info.expression}.`);
24
- node_cron_1.default.schedule(info.expression, () => __awaiter(this, void 0, void 0, function* () {
30
+ let runner = () => __awaiter(this, void 0, void 0, function* () {
25
31
  this.app.logger.info(`Cron ${info.name} was started.`);
26
32
  try {
27
33
  if (!info.ignoreDatabase) {
@@ -39,7 +45,10 @@ class BaseCron {
39
45
  catch (error) {
40
46
  this.app.logger.onCatchError(error);
41
47
  }
42
- }));
48
+ });
49
+ if (info.runOnStart)
50
+ runner();
51
+ node_cron_1.default.schedule(info.expression, runner);
43
52
  }
44
53
  }
45
54
  exports.BaseCron = BaseCron;
@@ -1 +1 @@
1
- {"version":3,"file":"BaseCron.js","sourceRoot":"","sources":["../src/BaseCron.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,0DAA6B;AAG7B,MAAsB,QAAQ;IAI1B,YAAY,GAAuB;QAE/B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IAMD,GAAG;QAEC,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,qBAAqB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QAC/E,mBAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,GAAS,EAAE;YAEtC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,eAAe,CAAC,CAAC;YACvD,IACA;gBACI,IAAI,CAAC,IAAI,CAAC,cAAc,EACxB;oBACI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAClB;wBACI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;wBACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;qBACxB;oBACD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;iBAC3B;gBAGD,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBAEvB,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBAEvB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBAExB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,gBAAgB,CAAC,CAAC;aAC3D;YACD,OAAO,KAAU,EACjB;gBACI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;aACvC;QACL,CAAC,CAAA,CAAC,CAAC;IACP,CAAC;CACJ;AA/CD,4BA+CC"}
1
+ {"version":3,"file":"BaseCron.js","sourceRoot":"","sources":["../src/BaseCron.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AACA,0DAA6B;AAG7B,MAAsB,QAAQ;IAI1B,YAAY,GAAuB;QAE/B,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;IACnB,CAAC;IAEK,SAAS;8DAAoB,CAAC;KAAA;IAE9B,UAAU;8DAAoB,CAAC;KAAA;IAErC,GAAG;QAEC,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC1B,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,qBAAqB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QAC/E,IAAI,MAAM,GAAG,GAAS,EAAE;YAEpB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,eAAe,CAAC,CAAC;YACvD,IACA;gBACI,IAAI,CAAC,IAAI,CAAC,cAAc,EACxB;oBACI,IAAI,CAAC,IAAI,CAAC,QAAQ,EAClB;wBACI,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;wBACvC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;qBACxB;oBACD,IAAI,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;iBAC3B;gBAGD,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBAEvB,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;gBAEvB,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBAExB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,gBAAgB,CAAC,CAAC;aAC3D;YACD,OAAO,KAAU,EACjB;gBACI,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;aACvC;QACL,CAAC,CAAA,CAAC;QACF,IAAI,IAAI,CAAC,UAAU;YACf,MAAM,EAAE,CAAC;QACb,mBAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;CACJ;AAlDD,4BAkDC"}
package/package.json CHANGED
@@ -8,7 +8,7 @@
8
8
  "framework": "npm",
9
9
  "application": "package",
10
10
  "private": false,
11
- "version": "1.3.65",
11
+ "version": "1.3.67",
12
12
  "author": "Amir Abolhasani",
13
13
  "license": "MIT",
14
14
  "main": "./dist/index.js",
package/src/BaseCron.ts CHANGED
@@ -10,16 +10,16 @@ export abstract class BaseCron<D extends BaseDatabase>
10
10
  {
11
11
  this.app = app;
12
12
  }
13
- abstract getInfo(): { name: string, expression: string, ignoreDatabase?: boolean };
14
- abstract preHandle(): Promise<void>;
13
+ abstract getInfo(): { name: string, expression: string, runOnStart: boolean, ignoreDatabase?: boolean };
14
+ async preHandle(): Promise<void> { }
15
15
  abstract handleOne(): Promise<void>;
16
- abstract postHandle(): Promise<void>;
16
+ async postHandle(): Promise<void> { }
17
17
 
18
18
  run()
19
19
  {
20
20
  let info = this.getInfo();
21
21
  this.app.logger.info(`Cron ${info.name} was schedued for ${info.expression}.`);
22
- cron.schedule(info.expression, async () =>
22
+ let runner = async () =>
23
23
  {
24
24
  this.app.logger.info(`Cron ${info.name} was started.`);
25
25
  try
@@ -47,6 +47,9 @@ export abstract class BaseCron<D extends BaseDatabase>
47
47
  {
48
48
  this.app.logger.onCatchError(error);
49
49
  }
50
- });
50
+ };
51
+ if (info.runOnStart)
52
+ runner();
53
+ cron.schedule(info.expression, runner);
51
54
  }
52
55
  }