ts-fsrs 3.0.2 → 3.0.3
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/dist/default.js +1 -1
- package/dist/fsrs.d.ts +3 -3
- package/dist/fsrs.js +7 -7
- package/dist/index.d.ts +1 -1
- package/dist/models.d.ts +4 -0
- package/package.json +1 -1
package/dist/default.js
CHANGED
|
@@ -29,7 +29,7 @@ exports.default_w = exports.envParams.FSRS_W || [
|
|
|
29
29
|
0.34, 1.26, 0.29, 2.61,
|
|
30
30
|
];
|
|
31
31
|
exports.default_enable_fuzz = exports.envParams.FSRS_ENABLE_FUZZ || false;
|
|
32
|
-
exports.FSRSVersion = "3.0.
|
|
32
|
+
exports.FSRSVersion = "3.0.3";
|
|
33
33
|
const generatorParameters = (props) => {
|
|
34
34
|
return {
|
|
35
35
|
request_retention: props?.request_retention || exports.default_request_retention,
|
package/dist/fsrs.d.ts
CHANGED
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { SchedulingCard } from "./index";
|
|
2
|
-
import { FSRSParameters, Card, State, Rating } from "./models";
|
|
2
|
+
import { FSRSParameters, Card, State, Rating, CardInput, DateInput } from "./models";
|
|
3
3
|
import type { int } from "./type";
|
|
4
4
|
export declare class FSRS {
|
|
5
5
|
private param;
|
|
6
6
|
private readonly intervalModifier;
|
|
7
7
|
private seed?;
|
|
8
8
|
constructor(param: Partial<FSRSParameters>);
|
|
9
|
-
preProcess(
|
|
9
|
+
preProcess(_card: CardInput, _now: DateInput): {
|
|
10
10
|
card: Card;
|
|
11
11
|
now: Date;
|
|
12
12
|
};
|
|
13
|
-
repeat: (card:
|
|
13
|
+
repeat: (card: CardInput, now: DateInput) => {
|
|
14
14
|
1: {
|
|
15
15
|
card: Card;
|
|
16
16
|
log: {
|
package/dist/fsrs.js
CHANGED
|
@@ -19,14 +19,14 @@ class FSRS {
|
|
|
19
19
|
// The formula used is : I(r,s)=9 \cdot s \cdot (\frac{1}{r}-1)
|
|
20
20
|
this.intervalModifier = 9 * (1 / this.param.request_retention - 1);
|
|
21
21
|
}
|
|
22
|
-
preProcess(
|
|
23
|
-
card = {
|
|
24
|
-
...
|
|
25
|
-
state: (0, help_1.fixState)(
|
|
26
|
-
due: (0, help_1.fixDate)(
|
|
27
|
-
last_review:
|
|
22
|
+
preProcess(_card, _now) {
|
|
23
|
+
const card = {
|
|
24
|
+
..._card,
|
|
25
|
+
state: (0, help_1.fixState)(_card.state),
|
|
26
|
+
due: (0, help_1.fixDate)(_card.due),
|
|
27
|
+
last_review: _card.last_review ? (0, help_1.fixDate)(_card.last_review) : undefined,
|
|
28
28
|
};
|
|
29
|
-
now = (0, help_1.fixDate)(
|
|
29
|
+
const now = (0, help_1.fixDate)(_now);
|
|
30
30
|
return { card, now };
|
|
31
31
|
}
|
|
32
32
|
repeat = (card, now) => {
|
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,6 @@ export { SchedulingCard } from "./scheduler";
|
|
|
2
2
|
export { default_request_retention, default_maximum_interval, default_w, default_enable_fuzz, FSRSVersion, generatorParameters, createEmptyCard, fsrs, envParams } from "./default";
|
|
3
3
|
export { date_scheduler, date_diff, formatDate, show_diff_message, } from "./help";
|
|
4
4
|
export type { int, double } from "./type";
|
|
5
|
-
export type { FSRSParameters, Card, ReviewLog, StateType, RatingType, } from "./models";
|
|
5
|
+
export type { FSRSParameters, Card, ReviewLog, StateType, RatingType, CardInput, DateInput } from "./models";
|
|
6
6
|
export { State, Rating } from "./models";
|
|
7
7
|
export { FSRS } from "./fsrs";
|
package/dist/models.d.ts
CHANGED
|
@@ -30,6 +30,10 @@ export interface Card {
|
|
|
30
30
|
state: State;
|
|
31
31
|
last_review?: Date;
|
|
32
32
|
}
|
|
33
|
+
export type CardInput = Card & {
|
|
34
|
+
state: StateType | State;
|
|
35
|
+
};
|
|
36
|
+
export type DateInput = Date | number | string;
|
|
33
37
|
export interface FSRSParameters {
|
|
34
38
|
request_retention: number;
|
|
35
39
|
maximum_interval: number;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "ts-fsrs",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.3",
|
|
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": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|