ts-fsrs 2.0.1 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # About The
2
2
 
3
3
  ts-fsrs is a TypeScript package used to implement the Free Spaced Repetition Scheduler (FSRS) algorithm. It helps
4
- developers apply FSRS to their flashcard applications, thereby improving the user learning experience.,
4
+ developers apply FSRS to their flashcard applications, thereby improving the user learning experience.
5
5
 
6
6
  # Usage
7
7
 
package/lib/fsrs.d.ts CHANGED
@@ -10,7 +10,7 @@ export default class FSRS {
10
10
  card: Card;
11
11
  log: {
12
12
  rating: Rating;
13
- state: State.Learning | State.Review | State.Relearning;
13
+ state: State;
14
14
  elapsed_days: number;
15
15
  scheduled_days: number;
16
16
  review: Date;
@@ -20,7 +20,7 @@ export default class FSRS {
20
20
  card: Card;
21
21
  log: {
22
22
  rating: Rating;
23
- state: State.Learning | State.Review | State.Relearning;
23
+ state: State;
24
24
  elapsed_days: number;
25
25
  scheduled_days: number;
26
26
  review: Date;
@@ -30,7 +30,7 @@ export default class FSRS {
30
30
  card: Card;
31
31
  log: {
32
32
  rating: Rating;
33
- state: State.Learning | State.Review | State.Relearning;
33
+ state: State;
34
34
  elapsed_days: number;
35
35
  scheduled_days: number;
36
36
  review: Date;
@@ -40,7 +40,7 @@ export default class FSRS {
40
40
  card: Card;
41
41
  log: {
42
42
  rating: Rating;
43
- state: State.Learning | State.Review | State.Relearning;
43
+ state: State;
44
44
  elapsed_days: number;
45
45
  scheduled_days: number;
46
46
  review: Date;
package/lib/fsrs.js CHANGED
@@ -44,7 +44,7 @@ class FSRS {
44
44
  good_interval = this.next_interval(s.good.stability);
45
45
  hard_interval = Math.min(hard_interval, good_interval);
46
46
  good_interval = Math.max(good_interval, hard_interval + 1);
47
- easy_interval = Math.max(this.next_interval(s.easy.stability * this.param.hard_factor), good_interval + 1);
47
+ easy_interval = Math.max(this.next_interval(s.easy.stability * this.param.easy_bonus), good_interval + 1);
48
48
  s.schedule(now, hard_interval, good_interval, easy_interval);
49
49
  break;
50
50
  }
package/lib/index.d.ts CHANGED
@@ -18,7 +18,7 @@ declare const generatorParameters: (props?: {
18
18
  w: number[];
19
19
  enable_fuzz: boolean;
20
20
  };
21
- declare const FSRS_Version = "2.0.0";
21
+ declare const FSRS_Version = "2.0.2";
22
22
  export { fsrs, FSRS_Version, State, Rating, SchedulingCard, createEmptyCard, generatorParameters };
23
23
  export type { StateType, RatingType, ReviewLog, Card, SchedulingLog, FSRSParameters };
24
24
  export { default_request_retention, default_maximum_interval, default_easy_bonus, default_hard_factor, default_w, default_enable_fuzz };
package/lib/index.js CHANGED
@@ -55,7 +55,7 @@ const generatorParameters = (props) => {
55
55
  };
56
56
  };
57
57
  exports.generatorParameters = generatorParameters;
58
- const FSRS_Version = "2.0.0";
58
+ const FSRS_Version = "2.0.2";
59
59
  exports.FSRS_Version = FSRS_Version;
60
60
  var help_1 = require("./help");
61
61
  Object.defineProperty(exports, "date_scheduler", { enumerable: true, get: function () { return help_1.date_scheduler; } });
@@ -13,7 +13,7 @@ export declare class SchedulingCard {
13
13
  card: Card;
14
14
  log: {
15
15
  rating: Rating;
16
- state: State.Learning | State.Review | State.Relearning;
16
+ state: State;
17
17
  elapsed_days: number;
18
18
  scheduled_days: number;
19
19
  review: Date;
@@ -23,7 +23,7 @@ export declare class SchedulingCard {
23
23
  card: Card;
24
24
  log: {
25
25
  rating: Rating;
26
- state: State.Learning | State.Review | State.Relearning;
26
+ state: State;
27
27
  elapsed_days: number;
28
28
  scheduled_days: number;
29
29
  review: Date;
@@ -33,7 +33,7 @@ export declare class SchedulingCard {
33
33
  card: Card;
34
34
  log: {
35
35
  rating: Rating;
36
- state: State.Learning | State.Review | State.Relearning;
36
+ state: State;
37
37
  elapsed_days: number;
38
38
  scheduled_days: number;
39
39
  review: Date;
@@ -43,7 +43,7 @@ export declare class SchedulingCard {
43
43
  card: Card;
44
44
  log: {
45
45
  rating: Rating;
46
- state: State.Learning | State.Review | State.Relearning;
46
+ state: State;
47
47
  elapsed_days: number;
48
48
  scheduled_days: number;
49
49
  review: Date;
package/lib/scheduler.js CHANGED
@@ -53,7 +53,7 @@ class SchedulingCard {
53
53
  card: this.again,
54
54
  log: {
55
55
  rating: models_1.Rating.Again,
56
- state: card.state == models_1.State.New ? models_1.State.Learning : card.state,
56
+ state: card.state,
57
57
  elapsed_days: this.again.scheduled_days,
58
58
  scheduled_days: card.elapsed_days,
59
59
  review: now
@@ -63,8 +63,8 @@ class SchedulingCard {
63
63
  card: this.hard,
64
64
  log: {
65
65
  rating: models_1.Rating.Hard,
66
- state: card.state == models_1.State.New ? models_1.State.Learning : card.state,
67
- elapsed_days: this.hard.scheduled_days,
66
+ state: card.state,
67
+ elapsed_days: this.again.scheduled_days,
68
68
  scheduled_days: card.elapsed_days,
69
69
  review: now
70
70
  }
@@ -73,8 +73,8 @@ class SchedulingCard {
73
73
  card: this.good,
74
74
  log: {
75
75
  rating: models_1.Rating.Good,
76
- state: card.state == models_1.State.New ? models_1.State.Learning : card.state,
77
- elapsed_days: this.good.scheduled_days,
76
+ state: card.state,
77
+ elapsed_days: this.again.scheduled_days,
78
78
  scheduled_days: card.elapsed_days,
79
79
  review: now
80
80
  }
@@ -83,8 +83,8 @@ class SchedulingCard {
83
83
  card: this.easy,
84
84
  log: {
85
85
  rating: models_1.Rating.Easy,
86
- state: card.state == models_1.State.New ? models_1.State.Learning : card.state,
87
- elapsed_days: this.easy.scheduled_days,
86
+ state: card.state,
87
+ elapsed_days: this.again.scheduled_days,
88
88
  scheduled_days: card.elapsed_days,
89
89
  review: now
90
90
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ts-fsrs",
3
- "version": "2.0.1",
3
+ "version": "2.0.2",
4
4
  "description": "ts-fsrs is a TypeScript package used to implement the Free Spaced Repetition Scheduler (FSRS) algorithm. It helps developers apply FSRS to their flashcard applications, thereby improving the user learning experience.",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",