@instructure/platform-grades 0.0.3 → 0.1.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.
@@ -0,0 +1,18 @@
1
+ import { default as Big } from 'big.js';
2
+ export declare function add(a: number | null | undefined, b: number | null | undefined): Big;
3
+ /** Throws `[big.js] Division by zero` if `b` is 0, null, or undefined. */
4
+ export declare function divide(a: number | null | undefined, b: number | null | undefined): Big;
5
+ export declare function multiply(a: number | null | undefined, b: number | null | undefined): Big;
6
+ export declare function toNumber(big: Big): number;
7
+ export declare function bigSum(values: (Big | null)[]): Big;
8
+ export declare function sum(collection: any): number;
9
+ export declare function sumBy(collection: any, attr: any): number;
10
+ export declare function scoreToPercentage(score: number | null | undefined, pointsPossible: number | null | undefined): number;
11
+ export declare function scoreToScaledPoints(score: number | null, pointsPossible: number, scalingFactor: number): number;
12
+ export declare function weightedPercent({ score, possible, weight, }: {
13
+ score: number | null;
14
+ possible: number;
15
+ weight: number;
16
+ }): Big;
17
+ export declare function totalGradeRound(n: number | string | Big | null, digits?: number): number;
18
+ //# sourceMappingURL=GradeCalculationHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GradeCalculationHelper.d.ts","sourceRoot":"","sources":["../../src/grading/GradeCalculationHelper.ts"],"names":[],"mappings":"AAkBA,OAAO,GAAG,MAAM,QAAQ,CAAA;AAGxB,wBAAgB,GAAG,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,GAAG,CAEnF;AAED,0EAA0E;AAC1E,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,GAAG,CAEtF;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,GAAG,CAExF;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAEzC;AAED,wBAAgB,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,CAElD;AAGD,wBAAgB,GAAG,CAAC,UAAU,EAAE,GAAG,GAAG,MAAM,CAG3C;AAGD,wBAAgB,KAAK,CAAC,UAAU,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,GAAG,MAAM,CAGxD;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EAChC,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACxC,MAAM,CASR;AAED,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,MAAM,GAAG,IAAI,EACpB,cAAc,EAAE,MAAM,EACtB,aAAa,EAAE,MAAM,GACpB,MAAM,CASR;AAED,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,EACR,MAAM,GACP,EAAE;IACD,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,MAAM,CAAA;CACf,GAAG,GAAG,CAEN;AAED,wBAAgB,eAAe,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,GAAG,GAAG,IAAI,EAAE,MAAM,SAAI,GAAG,MAAM,CAUnF"}
@@ -0,0 +1,42 @@
1
+ import { FormatGradeOptions, SubmissionData } from './types';
2
+ export declare const UNGRADED = "\u2013";
3
+ export declare const QUANTITATIVE_GRADING_TYPES: string[];
4
+ export declare const QUALITATIVE_GRADING_TYPES: string[];
5
+ export declare function replaceDashWithMinus(grade: string | number | null | undefined): string | number | null | undefined;
6
+ export declare function isExcused(grade: string | number | null): boolean;
7
+ export declare function excused(): string;
8
+ export declare function formatPointsOutOf(grade: string | number | null | undefined, pointsPossible: number | null | undefined): string | number | null | undefined;
9
+ export declare function formatGradeInfo(gradeInfo: {
10
+ excused: boolean;
11
+ grade: string | null;
12
+ }, options?: {
13
+ defaultValue?: string;
14
+ }): string;
15
+ export declare function formatGrade(grade: string | number | undefined | null, options?: FormatGradeOptions): string | number | undefined | null;
16
+ export declare function delocalizeGrade(localizedGrade: string | number | null | undefined): string | number | null | undefined;
17
+ export declare function parseGrade(grade: string | number | undefined | null, options?: FormatGradeOptions): string | number | undefined | null;
18
+ export declare function formatSubmissionGrade(submission: SubmissionData, options?: {
19
+ version: string;
20
+ defaultValue?: string;
21
+ formatType?: string;
22
+ pointsPossible?: number;
23
+ }): string;
24
+ /**
25
+ * Backward-compatible object export matching the original @canvas/grading default export.
26
+ * Prefer named imports for new code.
27
+ */
28
+ export declare const GradeFormatHelper: {
29
+ formatGrade: typeof formatGrade;
30
+ delocalizeGrade: typeof delocalizeGrade;
31
+ parseGrade: typeof parseGrade;
32
+ excused: typeof excused;
33
+ isExcused: typeof isExcused;
34
+ formatGradeInfo: typeof formatGradeInfo;
35
+ formatPointsOutOf: typeof formatPointsOutOf;
36
+ formatSubmissionGrade: typeof formatSubmissionGrade;
37
+ replaceDashWithMinus: typeof replaceDashWithMinus;
38
+ UNGRADED: typeof UNGRADED;
39
+ QUANTITATIVE_GRADING_TYPES: typeof QUANTITATIVE_GRADING_TYPES;
40
+ QUALITATIVE_GRADING_TYPES: typeof QUALITATIVE_GRADING_TYPES;
41
+ };
42
+ //# sourceMappingURL=GradeFormatHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GradeFormatHelper.d.ts","sourceRoot":"","sources":["../../src/grading/GradeFormatHelper.ts"],"names":[],"mappings":"AAsBA,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAYjE,eAAO,MAAM,QAAQ,WAAM,CAAA;AAC3B,eAAO,MAAM,0BAA0B,EAAE,MAAM,EAAiC,CAAA;AAChF,eAAO,MAAM,yBAAyB,EAAE,MAAM,EAAkC,CAAA;AAEhF,wBAAgB,oBAAoB,CAClC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GACxC,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAGpC;AAgBD,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,OAAO,CAEhE;AAED,wBAAgB,OAAO,IAAI,MAAM,CAEhC;AAED,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,EACzC,cAAc,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GACxC,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAmBpC;AAmGD,wBAAgB,eAAe,CAC7B,SAAS,EAAE;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EACrD,OAAO,GAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAA;CAAO,GACtC,MAAM,CAUR;AAED,wBAAgB,WAAW,CACzB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,EACzC,OAAO,GAAE,kBAAuB,GAC/B,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CA6EpC;AAED,wBAAgB,eAAe,CAC7B,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,GACjD,MAAM,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAiBpC;AAED,wBAAgB,UAAU,CACxB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,EACzC,OAAO,GAAE,kBAAuB,GAC/B,MAAM,GAAG,MAAM,GAAG,SAAS,GAAG,IAAI,CAoBpC;AAED,wBAAgB,qBAAqB,CACnC,UAAU,EAAE,cAAc,EAC1B,OAAO,GAAE;IACP,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,cAAc,CAAC,EAAE,MAAM,CAAA;CACD,GACvB,MAAM,CAsBR;AAED;;;GAGG;AACH,eAAO,MAAM,iBAAiB,EAAE;IAC9B,WAAW,EAAE,OAAO,WAAW,CAAA;IAC/B,eAAe,EAAE,OAAO,eAAe,CAAA;IACvC,UAAU,EAAE,OAAO,UAAU,CAAA;IAC7B,OAAO,EAAE,OAAO,OAAO,CAAA;IACvB,SAAS,EAAE,OAAO,SAAS,CAAA;IAC3B,eAAe,EAAE,OAAO,eAAe,CAAA;IACvC,iBAAiB,EAAE,OAAO,iBAAiB,CAAA;IAC3C,qBAAqB,EAAE,OAAO,qBAAqB,CAAA;IACnD,oBAAoB,EAAE,OAAO,oBAAoB,CAAA;IACjD,QAAQ,EAAE,OAAO,QAAQ,CAAA;IACzB,0BAA0B,EAAE,OAAO,0BAA0B,CAAA;IAC7D,yBAAyB,EAAE,OAAO,yBAAyB,CAAA;CAc5D,CAAA"}
@@ -0,0 +1,7 @@
1
+ import { GradingStandard } from '@instructure/grading-utils';
2
+ import { DeprecatedGradingScheme } from './types';
3
+ export declare function indexOfGrade(grade: null | string | number, gradingSchemes: GradingStandard[]): number;
4
+ export declare function gradeToScoreUpperBound(grade: string | number, gradingSchemes: GradingStandard[]): number | null;
5
+ export declare function gradeToScoreLowerBound(grade: null | string | number, gradingSchemes: GradingStandard[]): number | null;
6
+ export declare function gradePointsToPercentage(grade: null | number, gradingScheme: DeprecatedGradingScheme): number | undefined;
7
+ //# sourceMappingURL=GradingSchemeHelper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GradingSchemeHelper.d.ts","sourceRoot":"","sources":["../../src/grading/GradingSchemeHelper.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAEjE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAEtD,wBAAgB,YAAY,CAC1B,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,EAC7B,cAAc,EAAE,eAAe,EAAE,GAChC,MAAM,CAWR;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,MAAM,GAAG,MAAM,EACtB,cAAc,EAAE,eAAe,EAAE,GAChC,MAAM,GAAG,IAAI,CAyBf;AAED,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,IAAI,GAAG,MAAM,GAAG,MAAM,EAC7B,cAAc,EAAE,eAAe,EAAE,GAChC,MAAM,GAAG,IAAI,CAUf;AAED,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,IAAI,GAAG,MAAM,EACpB,aAAa,EAAE,uBAAuB,GACrC,MAAM,GAAG,SAAS,CAIpB"}
@@ -0,0 +1,7 @@
1
+ export { add, bigSum, divide, multiply, scoreToPercentage, scoreToScaledPoints, sum, sumBy, toNumber, totalGradeRound, weightedPercent, } from './GradeCalculationHelper';
2
+ export { delocalizeGrade, excused, formatGrade, formatGradeInfo, formatPointsOutOf, formatSubmissionGrade, GradeFormatHelper, isExcused, parseGrade, QUALITATIVE_GRADING_TYPES, QUANTITATIVE_GRADING_TYPES, replaceDashWithMinus, UNGRADED, } from './GradeFormatHelper';
3
+ export { gradePointsToPercentage, gradeToScoreLowerBound, gradeToScoreUpperBound, indexOfGrade, } from './GradingSchemeHelper';
4
+ export { configureGradeFormatting, type GradeFormattingConfig, type GradeFormattingStrings, type NumberFormatOptions, resetGradeFormatting, } from './locale';
5
+ export { round } from './round';
6
+ export type { DeprecatedGradingScheme, FormatGradeOptions, GradeEntryMode, GradeEntryOptions, GradeInput, GradeResult, GradeType, SubmissionData, } from './types';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/grading/index.ts"],"names":[],"mappings":"AAmBA,OAAO,EACL,GAAG,EACH,MAAM,EACN,MAAM,EACN,QAAQ,EACR,iBAAiB,EACjB,mBAAmB,EACnB,GAAG,EACH,KAAK,EACL,QAAQ,EACR,eAAe,EACf,eAAe,GAChB,MAAM,0BAA0B,CAAA;AAGjC,OAAO,EACL,eAAe,EACf,OAAO,EACP,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,iBAAiB,EACjB,SAAS,EACT,UAAU,EACV,yBAAyB,EACzB,0BAA0B,EAC1B,oBAAoB,EACpB,QAAQ,GACT,MAAM,qBAAqB,CAAA;AAE5B,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,YAAY,GACb,MAAM,uBAAuB,CAAA;AAE9B,OAAO,EACL,wBAAwB,EACxB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,mBAAmB,EACxB,oBAAoB,GACrB,MAAM,UAAU,CAAA;AAGjB,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAG/B,YAAY,EACV,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,EACd,iBAAiB,EACjB,UAAU,EACV,WAAW,EACX,SAAS,EACT,cAAc,GACf,MAAM,SAAS,CAAA"}
@@ -0,0 +1,47 @@
1
+ /**
2
+ * Options for number formatting, matching the subset of I18n.n() options
3
+ * used by GradeFormatHelper.
4
+ */
5
+ export interface NumberFormatOptions {
6
+ precision?: number;
7
+ percentage?: boolean;
8
+ strip_insignificant_zeros?: boolean;
9
+ }
10
+ /**
11
+ * Translatable strings used by GradeFormatHelper.
12
+ * The host app provides locale-appropriate values; defaults are English.
13
+ */
14
+ export interface GradeFormattingStrings {
15
+ excused: string;
16
+ complete: string;
17
+ incomplete: string;
18
+ /** Template for "score/pointsPossible", e.g. "%{score}/%{pointsPossible}" */
19
+ scoreOutOf: string;
20
+ }
21
+ /**
22
+ * Configuration for grade formatting i18n.
23
+ * Follows the same injection pattern as widget_dashboard's TranslationsProvider,
24
+ * adapted for non-React utility code (GradeFormatHelper is used in gradebook
25
+ * grid formatters and other non-React contexts).
26
+ */
27
+ export interface GradeFormattingConfig {
28
+ /** Format a number for locale-aware display. Replaces I18n.n(). */
29
+ formatNumber: (value: number, options?: NumberFormatOptions) => string;
30
+ /** Parse a locale-formatted number string back to a number. Replaces numberHelper.parse(). */
31
+ parseNumber: (input: string | number) => number;
32
+ /** Translated strings for grade display. */
33
+ strings: GradeFormattingStrings;
34
+ }
35
+ /**
36
+ * Configure grade formatting i18n. Call once at app startup.
37
+ * Canvas LMS passes its I18n.n, numberHelper.parse, and translated strings.
38
+ * Other hosts can pass their own implementations or rely on defaults.
39
+ */
40
+ export declare function configureGradeFormatting(config: Partial<GradeFormattingConfig>): void;
41
+ /**
42
+ * Reset to default configuration. Useful for tests.
43
+ */
44
+ export declare function resetGradeFormatting(): void;
45
+ /** @internal */
46
+ export declare function getLocale(): GradeFormattingConfig;
47
+ //# sourceMappingURL=locale.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"locale.d.ts","sourceRoot":"","sources":["../../src/grading/locale.ts"],"names":[],"mappings":"AAkBA;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,yBAAyB,CAAC,EAAE,OAAO,CAAA;CACpC;AAED;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,6EAA6E;IAC7E,UAAU,EAAE,MAAM,CAAA;CACnB;AAED;;;;;GAKG;AACH,MAAM,WAAW,qBAAqB;IACpC,mEAAmE;IACnE,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,mBAAmB,KAAK,MAAM,CAAA;IACtE,8FAA8F;IAC9F,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,KAAK,MAAM,CAAA;IAC/C,4CAA4C;IAC5C,OAAO,EAAE,sBAAsB,CAAA;CAChC;AA2CD;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,OAAO,CAAC,qBAAqB,CAAC,GAAG,IAAI,CAMrF;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,IAAI,CAE3C;AAED,gBAAgB;AAChB,wBAAgB,SAAS,IAAI,qBAAqB,CAEjD"}
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Rounds a number to `digits` decimal places using big.js for precision.
3
+ * Port of @canvas/round.
4
+ */
5
+ interface RoundFunction {
6
+ (n: number | string | null, digits?: number): number;
7
+ DEFAULT: number;
8
+ }
9
+ export declare const round: RoundFunction;
10
+ export {};
11
+ //# sourceMappingURL=round.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"round.d.ts","sourceRoot":"","sources":["../../src/grading/round.ts"],"names":[],"mappings":"AAoBA;;;GAGG;AACH,UAAU,aAAa;IACrB,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpD,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,eAAO,MAAM,KAAK,EAAE,aAYnB,CAAA"}
@@ -0,0 +1,65 @@
1
+ import { GradingStandard } from '@instructure/grading-utils';
2
+ export type FormatGradeOptions = {
3
+ formatType?: 'points_out_of_fraction';
4
+ defaultValue?: string;
5
+ gradingType?: string;
6
+ delocalize?: boolean;
7
+ precision?: number;
8
+ pointsPossible?: number;
9
+ score?: number | null;
10
+ restrict_quantitative_data?: boolean;
11
+ grading_scheme?: DeprecatedGradingScheme[];
12
+ points_based_grading_scheme?: boolean;
13
+ scaling_factor?: number;
14
+ };
15
+ export type SubmissionData = {
16
+ id?: string;
17
+ dropped: boolean | undefined;
18
+ enteredGrade?: string | null;
19
+ enteredScore?: number | null;
20
+ excused: boolean;
21
+ extended: boolean;
22
+ grade: string | null;
23
+ late: boolean;
24
+ missing: boolean;
25
+ pointsDeducted?: number | null;
26
+ resubmitted: boolean;
27
+ score: number | null;
28
+ customGradeStatusId?: string | null;
29
+ };
30
+ /**
31
+ * @deprecated
32
+ */
33
+ export type DeprecatedGradingScheme = {
34
+ id?: string;
35
+ title?: string;
36
+ pointsBased: boolean;
37
+ scalingFactor: number;
38
+ data: GradingStandard[];
39
+ };
40
+ export type GradeType = 'gradingScheme' | 'percent' | 'points' | 'passFail' | 'excused' | 'missing';
41
+ export type GradeEntryMode = 'gradingScheme' | 'passFail' | 'percent' | 'points';
42
+ export type GradeInput = {
43
+ enteredAs: GradeType;
44
+ percent: null | number;
45
+ points: number;
46
+ schemeKey: null | string;
47
+ };
48
+ export type GradeResult = {
49
+ enteredAs: null | GradeType;
50
+ excused: boolean;
51
+ grade: null | string;
52
+ late_policy_status: null | string;
53
+ score: null | number;
54
+ valid: boolean;
55
+ subAssignmentTag?: string;
56
+ };
57
+ export type GradeEntryOptions = {
58
+ gradingScheme?: {
59
+ data: GradingStandard[];
60
+ pointsBased: boolean;
61
+ scalingFactor: number;
62
+ } | null;
63
+ restrictPointsBasedInput?: boolean;
64
+ };
65
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/grading/types.ts"],"names":[],"mappings":"AAkBA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAA;AAEjE,MAAM,MAAM,kBAAkB,GAAG;IAC/B,UAAU,CAAC,EAAE,wBAAwB,CAAA;IACrC,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,UAAU,CAAC,EAAE,OAAO,CAAA;IACpB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAErB,0BAA0B,CAAC,EAAE,OAAO,CAAA;IACpC,cAAc,CAAC,EAAE,uBAAuB,EAAE,CAAA;IAC1C,2BAA2B,CAAC,EAAE,OAAO,CAAA;IACrC,cAAc,CAAC,EAAE,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,OAAO,EAAE,OAAO,GAAG,SAAS,CAAA;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,OAAO,EAAE,OAAO,CAAA;IAChB,QAAQ,EAAE,OAAO,CAAA;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,IAAI,EAAE,OAAO,CAAA;IACb,OAAO,EAAE,OAAO,CAAA;IAChB,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC9B,WAAW,EAAE,OAAO,CAAA;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACpC,CAAA;AAED;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG;IACpC,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,OAAO,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;IACrB,IAAI,EAAE,eAAe,EAAE,CAAA;CACxB,CAAA;AAED,MAAM,MAAM,SAAS,GAAG,eAAe,GAAG,SAAS,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAA;AAEnG,MAAM,MAAM,cAAc,GAAG,eAAe,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAA;AAEhF,MAAM,MAAM,UAAU,GAAG;IACvB,SAAS,EAAE,SAAS,CAAA;IACpB,OAAO,EAAE,IAAI,GAAG,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,IAAI,GAAG,MAAM,CAAA;CACzB,CAAA;AAED,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,EAAE,IAAI,GAAG,SAAS,CAAA;IAC3B,OAAO,EAAE,OAAO,CAAA;IAChB,KAAK,EAAE,IAAI,GAAG,MAAM,CAAA;IACpB,kBAAkB,EAAE,IAAI,GAAG,MAAM,CAAA;IACjC,KAAK,EAAE,IAAI,GAAG,MAAM,CAAA;IACpB,KAAK,EAAE,OAAO,CAAA;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B,CAAA;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,CAAC,EAAE;QAAE,IAAI,EAAE,eAAe,EAAE,CAAC;QAAC,WAAW,EAAE,OAAO,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAA;IAC/F,wBAAwB,CAAC,EAAE,OAAO,CAAA;CACnC,CAAA"}
package/dist/index.d.ts CHANGED
@@ -13,6 +13,7 @@ export type { SubmissionStatusPillProps } from './components/SubmissionStatusPil
13
13
  export { calculateSubmissionStatus, SubmissionStatusPill } from './components/SubmissionStatusPill';
14
14
  export type { TotalScoreHeadingFullProps } from './components/TotalScoreHeading';
15
15
  export { TotalScoreHeading } from './components/TotalScoreHeading';
16
+ export { add, bigSum, configureGradeFormatting, type DeprecatedGradingScheme, delocalizeGrade, divide, excused, type FormatGradeOptions, formatGrade, formatGradeInfo, formatPointsOutOf, formatSubmissionGrade, type GradeEntryMode, type GradeEntryOptions, GradeFormatHelper, type GradeFormattingConfig, type GradeFormattingStrings, type GradeInput, type GradeResult, type GradeType, gradePointsToPercentage, gradeToScoreLowerBound, gradeToScoreUpperBound, indexOfGrade, isExcused, multiply, type NumberFormatOptions, parseGrade, QUALITATIVE_GRADING_TYPES, QUANTITATIVE_GRADING_TYPES, replaceDashWithMinus, resetGradeFormatting, round, type SubmissionData, scoreToPercentage, scoreToScaledPoints, sum, sumBy, toNumber, totalGradeRound, UNGRADED, weightedPercent, } from './grading';
16
17
  export type { UseGetCourseScoresOptions } from './hooks/useGetCourseScores';
17
18
  export { useGetCourseScores } from './hooks/useGetCourseScores';
18
19
  export type { UseGetCourseSettingsOptions } from './hooks/useGetCourseSettings';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAI/C,YAAY,EAAE,+BAA+B,IAAI,wCAAwC,EAAE,MAAM,yCAAyC,CAAA;AAC1I,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAA;AACpF,YAAY,EAAE,0BAA0B,IAAI,mCAAmC,EAAE,MAAM,oCAAoC,CAAA;AAC3H,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACpE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAClE,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,YAAY,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AACnG,YAAY,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAA;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAClE,YAAY,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAE3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAC/D,YAAY,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAA;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAGnE,YAAY,EACV,uBAAuB,EACvB,sBAAsB,EACtB,eAAe,EACf,sBAAsB,GACvB,MAAM,eAAe,CAAA;AAGtB,YAAY,EACV,0BAA0B,EAC1B,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,GACf,MAAM,gBAAgB,CAAA;AAGvB,OAAO,EAAE,8BAA8B,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAA;AACpG,OAAO,EACL,WAAW,EACX,aAAa,EACb,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,qBAAqB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAA;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAI/C,YAAY,EAAE,+BAA+B,IAAI,wCAAwC,EAAE,MAAM,yCAAyC,CAAA;AAC1I,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAA;AACpF,YAAY,EAAE,0BAA0B,IAAI,mCAAmC,EAAE,MAAM,oCAAoC,CAAA;AAC3H,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAA;AAC1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAA;AACpE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAA;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAClE,YAAY,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAA;AAClE,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,YAAY,EAAE,yBAAyB,EAAE,MAAM,mCAAmC,CAAA;AAClF,OAAO,EAAE,yBAAyB,EAAE,oBAAoB,EAAE,MAAM,mCAAmC,CAAA;AACnG,YAAY,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAA;AAChF,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAA;AAElE,OAAO,EAEL,GAAG,EACH,MAAM,EAEN,wBAAwB,EAExB,KAAK,uBAAuB,EAE5B,eAAe,EACf,MAAM,EACN,OAAO,EACP,KAAK,kBAAkB,EACvB,WAAW,EACX,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,KAAK,cAAc,EACnB,KAAK,iBAAiB,EACtB,iBAAiB,EACjB,KAAK,qBAAqB,EAC1B,KAAK,sBAAsB,EAC3B,KAAK,UAAU,EACf,KAAK,WAAW,EAChB,KAAK,SAAS,EAEd,uBAAuB,EACvB,sBAAsB,EACtB,sBAAsB,EACtB,YAAY,EACZ,SAAS,EACT,QAAQ,EACR,KAAK,mBAAmB,EACxB,UAAU,EACV,yBAAyB,EACzB,0BAA0B,EAC1B,oBAAoB,EACpB,oBAAoB,EAEpB,KAAK,EACL,KAAK,cAAc,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,GAAG,EACH,KAAK,EACL,QAAQ,EACR,eAAe,EACf,QAAQ,EACR,eAAe,GAChB,MAAM,WAAW,CAAA;AAClB,YAAY,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAA;AAE3E,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAA;AAC/D,YAAY,EAAE,2BAA2B,EAAE,MAAM,8BAA8B,CAAA;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAA;AAEnE,YAAY,EACV,uBAAuB,EACvB,sBAAsB,EACtB,eAAe,EACf,sBAAsB,GACvB,MAAM,eAAe,CAAA;AAEtB,YAAY,EACV,0BAA0B,EAC1B,qBAAqB,EACrB,oBAAoB,EACpB,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,qBAAqB,EACrB,aAAa,EACb,YAAY,EACZ,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,GACf,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAE,8BAA8B,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAA;AACpG,OAAO,EACL,WAAW,EACX,aAAa,EACb,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,qBAAqB,CAAA"}