@mathscan/geometry-engine 0.1.0 → 0.1.1
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 +24 -7
- package/dist/core.cjs +1 -1
- package/dist/core.mjs +4 -4
- package/dist/entries/core.d.cts +1 -1
- package/dist/entries/core.d.ts +1 -1
- package/dist/entries/core.d.ts.map +1 -1
- package/dist/exercise.schema-Bma3qN9P.js +251 -0
- package/dist/exercise.schema-Bma3qN9P.js.map +1 -0
- package/dist/exercise.schema-Oj5ZH-yO.cjs +2 -0
- package/dist/exercise.schema-Oj5ZH-yO.cjs.map +1 -0
- package/dist/exerciseLoad-Db9Cigxi.cjs +2 -0
- package/dist/exerciseLoad-Db9Cigxi.cjs.map +1 -0
- package/dist/{geometryAttemptStatus-5L_q6-9l.js → exerciseLoad-DgeDXYbf.js} +84 -71
- package/dist/exerciseLoad-DgeDXYbf.js.map +1 -0
- package/dist/geometry/entities/angle.d.cts +56 -0
- package/dist/geometry/entities/angle.d.ts +57 -0
- package/dist/geometry/entities/angle.d.ts.map +1 -0
- package/dist/geometry/entities/circle.d.ts.map +1 -1
- package/dist/geometry/entities/index.d.cts +8 -4
- package/dist/geometry/entities/index.d.ts +8 -4
- package/dist/geometry/entities/index.d.ts.map +1 -1
- package/dist/geometry/entities/line.d.ts.map +1 -1
- package/dist/geometry/entities/point.d.ts.map +1 -1
- package/dist/geometry/entities/relations.d.cts +8 -1
- package/dist/geometry/entities/relations.d.ts +8 -1
- package/dist/geometry/entities/relations.d.ts.map +1 -1
- package/dist/geometry/entities/segment.d.ts.map +1 -1
- package/dist/geometry/entityModel.d.cts +21 -3
- package/dist/geometry/entityModel.d.ts +21 -3
- package/dist/geometry/entityModel.d.ts.map +1 -1
- package/dist/geometryState.schema-B5ccMKDa.cjs +2 -0
- package/dist/geometryState.schema-B5ccMKDa.cjs.map +1 -0
- package/dist/geometryState.schema-CKFPlX8j.js +1177 -0
- package/dist/geometryState.schema-CKFPlX8j.js.map +1 -0
- package/dist/goals-BlSeniyt.js +563 -0
- package/dist/goals-BlSeniyt.js.map +1 -0
- package/dist/goals-DLbmBZD8.cjs +2 -0
- package/dist/goals-DLbmBZD8.cjs.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.mjs +8 -8
- package/dist/measure/angleType.d.cts +2 -0
- package/dist/measure/angleType.d.ts +3 -0
- package/dist/measure/angleType.d.ts.map +1 -0
- package/dist/measure/geometryAdapter.d.cts +3 -0
- package/dist/measure/geometryAdapter.d.ts +3 -0
- package/dist/measure/geometryAdapter.d.ts.map +1 -1
- package/dist/react-B26_e52I.cjs +2 -0
- package/dist/react-B26_e52I.cjs.map +1 -0
- package/dist/{react-BEcdx1f6.js → react-B5cGaxH8.js} +738 -513
- package/dist/react-B5cGaxH8.js.map +1 -0
- package/dist/react.cjs +1 -1
- package/dist/react.mjs +1 -1
- package/dist/renderer/GeometryCanvas.d.ts.map +1 -1
- package/dist/renderer/StudentGeometryCanvas.d.ts.map +1 -1
- package/dist/renderer/Toolbar.d.ts.map +1 -1
- package/dist/renderer/angleMeasure.d.cts +14 -0
- package/dist/renderer/angleMeasure.d.ts +15 -0
- package/dist/renderer/angleMeasure.d.ts.map +1 -0
- package/dist/renderer/deriveRenderableGeometry.d.cts +1 -0
- package/dist/renderer/deriveRenderableGeometry.d.ts +1 -0
- package/dist/renderer/deriveRenderableGeometry.d.ts.map +1 -1
- package/dist/renderer/deriveSemanticScene.d.ts.map +1 -1
- package/dist/renderer/dragSnap.d.cts +14 -0
- package/dist/renderer/dragSnap.d.ts +15 -0
- package/dist/renderer/dragSnap.d.ts.map +1 -0
- package/dist/renderer/shapes/AngleShape.d.cts +19 -0
- package/dist/renderer/shapes/AngleShape.d.ts +20 -0
- package/dist/renderer/shapes/AngleShape.d.ts.map +1 -0
- package/dist/renderer/shapes/EntityLabel.d.cts +9 -1
- package/dist/renderer/shapes/EntityLabel.d.ts +9 -1
- package/dist/renderer/shapes/EntityLabel.d.ts.map +1 -1
- package/dist/renderer/shapes/EntityShape.d.cts +2 -1
- package/dist/renderer/shapes/EntityShape.d.ts +2 -1
- package/dist/renderer/shapes/EntityShape.d.ts.map +1 -1
- package/dist/renderer/useConnectionPreview.d.cts +12 -1
- package/dist/renderer/useConnectionPreview.d.ts +12 -1
- package/dist/renderer/useConnectionPreview.d.ts.map +1 -1
- package/dist/renderer/usePointerGestures.d.cts +1 -1
- package/dist/renderer/usePointerGestures.d.ts +1 -1
- package/dist/renderer/usePointerGestures.d.ts.map +1 -1
- package/dist/schemas/entityDefinition.schema.d.cts +7 -0
- package/dist/schemas/entityDefinition.schema.d.ts +7 -0
- package/dist/schemas/entityDefinition.schema.d.ts.map +1 -1
- package/dist/schemas/entityDocument.d.cts +34 -13
- package/dist/schemas/entityDocument.d.ts +34 -13
- package/dist/schemas/entityDocument.d.ts.map +1 -1
- package/dist/schemas/entityPresentation.schema.d.cts +3 -0
- package/dist/schemas/entityPresentation.schema.d.ts +3 -0
- package/dist/schemas/entityPresentation.schema.d.ts.map +1 -1
- package/dist/schemas/exercise.schema.d.cts +80 -2
- package/dist/schemas/exercise.schema.d.ts +80 -2
- package/dist/schemas/exercise.schema.d.ts.map +1 -1
- package/dist/schemas/exerciseV2.schema.d.cts +57 -0
- package/dist/schemas/exerciseV2.schema.d.ts +57 -0
- package/dist/schemas/exerciseV2.schema.d.ts.map +1 -1
- package/dist/schemas/exerciseV4.schema.d.cts +168 -0
- package/dist/schemas/exerciseV4.schema.d.ts +169 -0
- package/dist/schemas/exerciseV4.schema.d.ts.map +1 -0
- package/dist/schemas/geometryState.schema.d.cts +8 -0
- package/dist/schemas/geometryState.schema.d.ts +8 -0
- package/dist/schemas/geometryState.schema.d.ts.map +1 -1
- package/dist/schemas/goals/angleBisectorGoal.schema.d.cts +15 -0
- package/dist/schemas/goals/angleBisectorGoal.schema.d.ts +16 -0
- package/dist/schemas/goals/angleBisectorGoal.schema.d.ts.map +1 -0
- package/dist/schemas/goals/angleCriterion.schema.d.cts +28 -0
- package/dist/schemas/goals/angleCriterion.schema.d.ts +29 -0
- package/dist/schemas/goals/angleCriterion.schema.d.ts.map +1 -0
- package/dist/schemas/goals/angleMeasureGoal.schema.d.cts +26 -0
- package/dist/schemas/goals/angleMeasureGoal.schema.d.ts +27 -0
- package/dist/schemas/goals/angleMeasureGoal.schema.d.ts.map +1 -0
- package/dist/schemas/goals/createGoal.schema.d.cts +1 -0
- package/dist/schemas/goals/createGoal.schema.d.ts +1 -0
- package/dist/schemas/goals/createGoal.schema.d.ts.map +1 -1
- package/dist/schemas/goals/geometryGoal.schema.d.cts +61 -0
- package/dist/schemas/goals/geometryGoal.schema.d.ts +61 -0
- package/dist/schemas/goals/geometryGoal.schema.d.ts.map +1 -1
- package/dist/schemas/goals/givenAngleGoal.schema.d.cts +35 -0
- package/dist/schemas/goals/givenAngleGoal.schema.d.ts +36 -0
- package/dist/schemas/goals/givenAngleGoal.schema.d.ts.map +1 -0
- package/dist/schemas/goals/goalKindDeclaration.d.cts +7 -0
- package/dist/schemas/goals/goalKindDeclaration.d.ts +7 -0
- package/dist/schemas/goals/goalKindDeclaration.d.ts.map +1 -1
- package/dist/schemas/goals/parallelGoal.schema.d.cts +1 -0
- package/dist/schemas/goals/parallelGoal.schema.d.ts +1 -0
- package/dist/schemas/goals/parallelGoal.schema.d.ts.map +1 -1
- package/dist/schemas/goals/perpendicularGoal.schema.d.cts +1 -0
- package/dist/schemas/goals/perpendicularGoal.schema.d.ts +1 -0
- package/dist/schemas/goals/perpendicularGoal.schema.d.ts.map +1 -1
- package/dist/schemas/goals/throughPointsGoal.schema.d.cts +1 -0
- package/dist/schemas/goals/throughPointsGoal.schema.d.ts +1 -0
- package/dist/schemas/goals/throughPointsGoal.schema.d.ts.map +1 -1
- package/dist/schemas/objectTypeName.schema.d.cts +1 -0
- package/dist/schemas/objectTypeName.schema.d.ts +1 -0
- package/dist/schemas/objectTypeName.schema.d.ts.map +1 -1
- package/dist/schemas/v2ToV3.d.cts +15 -1
- package/dist/schemas/v2ToV3.d.ts +15 -1
- package/dist/schemas/v2ToV3.d.ts.map +1 -1
- package/dist/schemas/v3ToV4.d.cts +2 -1
- package/dist/schemas/v3ToV4.d.ts +2 -1
- package/dist/schemas/v3ToV4.d.ts.map +1 -1
- package/dist/schemas/v4ToV5.d.cts +7 -0
- package/dist/schemas/v4ToV5.d.ts +8 -0
- package/dist/schemas/v4ToV5.d.ts.map +1 -0
- package/dist/schemas.cjs +1 -1
- package/dist/schemas.mjs +3 -3
- package/dist/snapping/computeDragSnap.d.cts +30 -0
- package/dist/snapping/computeDragSnap.d.ts +31 -0
- package/dist/snapping/computeDragSnap.d.ts.map +1 -0
- package/dist/state/geometryContext.d.ts.map +1 -1
- package/dist/store/attemptChange.d.cts +1 -1
- package/dist/store/attemptChange.d.ts +1 -1
- package/dist/store/attemptChange.d.ts.map +1 -1
- package/dist/store/constructionCommand.d.cts +14 -2
- package/dist/store/constructionCommand.d.ts +14 -2
- package/dist/store/constructionCommand.d.ts.map +1 -1
- package/dist/store/constructionIdentity.d.cts +9 -0
- package/dist/store/constructionIdentity.d.ts +9 -0
- package/dist/store/constructionIdentity.d.ts.map +1 -1
- package/dist/store/studentStore.d.cts +7 -0
- package/dist/store/studentStore.d.ts +7 -0
- package/dist/store/studentStore.d.ts.map +1 -1
- package/dist/store/teacherStore.d.cts +16 -0
- package/dist/store/teacherStore.d.ts +16 -0
- package/dist/store/teacherStore.d.ts.map +1 -1
- package/dist/{studentStore-CEKTtMCh.js → studentStore-CyYa0N93.js} +502 -370
- package/dist/studentStore-CyYa0N93.js.map +1 -0
- package/dist/studentStore-ubldy4PJ.cjs +2 -0
- package/dist/studentStore-ubldy4PJ.cjs.map +1 -0
- package/dist/validation/getGeometryExerciseWarnings.d.cts +3 -2
- package/dist/validation/getGeometryExerciseWarnings.d.ts +3 -2
- package/dist/validation/getGeometryExerciseWarnings.d.ts.map +1 -1
- package/dist/validation/goals/angleBisector.d.cts +3 -0
- package/dist/validation/goals/angleBisector.d.ts +4 -0
- package/dist/validation/goals/angleBisector.d.ts.map +1 -0
- package/dist/validation/goals/angleCriterion.d.cts +12 -0
- package/dist/validation/goals/angleCriterion.d.ts +13 -0
- package/dist/validation/goals/angleCriterion.d.ts.map +1 -0
- package/dist/validation/goals/angleMeasure.d.cts +9 -0
- package/dist/validation/goals/angleMeasure.d.ts +10 -0
- package/dist/validation/goals/angleMeasure.d.ts.map +1 -0
- package/dist/validation/goals/create.d.cts +2 -2
- package/dist/validation/goals/create.d.ts +2 -2
- package/dist/validation/goals/create.d.ts.map +1 -1
- package/dist/validation/goals/givenAngle.d.cts +11 -0
- package/dist/validation/goals/givenAngle.d.ts +12 -0
- package/dist/validation/goals/givenAngle.d.ts.map +1 -0
- package/dist/validation/goals/goalKindHandler.d.cts +38 -1
- package/dist/validation/goals/goalKindHandler.d.ts +38 -1
- package/dist/validation/goals/goalKindHandler.d.ts.map +1 -1
- package/dist/validation/goals/index.d.cts +9 -2
- package/dist/validation/goals/index.d.ts +9 -2
- package/dist/validation/goals/index.d.ts.map +1 -1
- package/dist/validation/goals/midpoint.d.cts +2 -2
- package/dist/validation/goals/midpoint.d.ts +2 -2
- package/dist/validation/goals/midpoint.d.ts.map +1 -1
- package/dist/validation/goals/parallel.d.cts +2 -2
- package/dist/validation/goals/parallel.d.ts +2 -2
- package/dist/validation/goals/parallel.d.ts.map +1 -1
- package/dist/validation/goals/perpendicular.d.cts +2 -2
- package/dist/validation/goals/perpendicular.d.ts +2 -2
- package/dist/validation/goals/perpendicular.d.ts.map +1 -1
- package/dist/validation/goals/segmentLength.d.cts +2 -2
- package/dist/validation/goals/segmentLength.d.ts +2 -2
- package/dist/validation/goals/segmentLength.d.ts.map +1 -1
- package/dist/validation/goals/throughPoints.d.cts +2 -2
- package/dist/validation/goals/throughPoints.d.ts +2 -2
- package/dist/validation/goals/throughPoints.d.ts.map +1 -1
- package/dist/validation/types.d.cts +5 -1
- package/dist/validation/types.d.ts +5 -1
- package/dist/validation/types.d.ts.map +1 -1
- package/dist/validation/validateGeometryState.d.ts.map +1 -1
- package/dist/validation/validateGeometryStateInput.d.ts.map +1 -1
- package/dist/validation.cjs +1 -1
- package/dist/validation.cjs.map +1 -1
- package/dist/validation.mjs +106 -85
- package/dist/validation.mjs.map +1 -1
- package/package.json +1 -1
- package/dist/exercise.schema-BV2b7rtN.cjs +0 -2
- package/dist/exercise.schema-BV2b7rtN.cjs.map +0 -1
- package/dist/exercise.schema-ckVBW9XA.js +0 -212
- package/dist/exercise.schema-ckVBW9XA.js.map +0 -1
- package/dist/geometryAttemptStatus-5L_q6-9l.js.map +0 -1
- package/dist/geometryAttemptStatus-N_XHIkiS.cjs +0 -2
- package/dist/geometryAttemptStatus-N_XHIkiS.cjs.map +0 -1
- package/dist/geometryState.schema-D0ixyGYE.js +0 -955
- package/dist/geometryState.schema-D0ixyGYE.js.map +0 -1
- package/dist/geometryState.schema-DKQ-durx.cjs +0 -2
- package/dist/geometryState.schema-DKQ-durx.cjs.map +0 -1
- package/dist/goals-C3ZwbEh_.js +0 -451
- package/dist/goals-C3ZwbEh_.js.map +0 -1
- package/dist/goals-CxR5qPDC.cjs +0 -2
- package/dist/goals-CxR5qPDC.cjs.map +0 -1
- package/dist/react-BEcdx1f6.js.map +0 -1
- package/dist/react-Pp_VSk--.cjs +0 -2
- package/dist/react-Pp_VSk--.cjs.map +0 -1
- package/dist/studentStore-CEKTtMCh.js.map +0 -1
- package/dist/studentStore-DLftfFAl.cjs +0 -2
- package/dist/studentStore-DLftfFAl.cjs.map +0 -1
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const v4ExerciseSchemaVersion = 4;
|
|
3
|
+
/** Version 4's vocabularies: version 2's plus the angle M3.4 added (ADR 0010). */
|
|
4
|
+
export declare const v4EntityKinds: readonly ["point", "segment", "line", "circle", "angle"];
|
|
5
|
+
export declare const v4ObjectTypeNames: readonly ["point", "segment", "line", "circle", "angle"];
|
|
6
|
+
export declare const v4ToolNames: readonly ["ruler", "setSquare", "protractor"];
|
|
7
|
+
export declare const v4GoalTypes: readonly ["create", "throughPoints", "perpendicular", "parallel", "segmentLength", "midpoint"];
|
|
8
|
+
export declare const v4PresentationKeys: readonly ["role", "label", "measureLabel"];
|
|
9
|
+
/**
|
|
10
|
+
* The exercise document at version 4 as M3.4 left it, frozen by ADR 0019 so the
|
|
11
|
+
* v4 → v5 step can ask "could version 4 have said this?" once the angle goals
|
|
12
|
+
* make the current schema wider — and so the v3 → v4 step still has a version 4
|
|
13
|
+
* to ask.
|
|
14
|
+
*
|
|
15
|
+
* Version 4 is version 3 plus `solution` (ADR 0015) and the angle — one entity
|
|
16
|
+
* kind, one object type, one presentation key — and no goal type, so it is built
|
|
17
|
+
* on the frozen v3 transcription with those written out and nothing imported
|
|
18
|
+
* from the current vocabulary (see `exerciseV2.schema.ts`).
|
|
19
|
+
*
|
|
20
|
+
* `solution` is admitted and never judged. It is an attempt document that
|
|
21
|
+
* migrates and validates on its own path (ADR 0015), a malformed one does not
|
|
22
|
+
* make the exercise unloadable, and both gates that ask this schema hand it the
|
|
23
|
+
* solution-free projection anyway (ADR 0019).
|
|
24
|
+
*/
|
|
25
|
+
export declare const geometryExerciseV4Schema: z.ZodObject<{
|
|
26
|
+
id: z.ZodString;
|
|
27
|
+
viewport: z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>;
|
|
28
|
+
showGrid: z.ZodOptional<z.ZodBoolean>;
|
|
29
|
+
draggableEntityIds: z.ZodArray<z.ZodString>;
|
|
30
|
+
tools: z.ZodArray<z.ZodEnum<{
|
|
31
|
+
ruler: "ruler";
|
|
32
|
+
setSquare: "setSquare";
|
|
33
|
+
protractor: "protractor";
|
|
34
|
+
}>>;
|
|
35
|
+
goals: z.ZodArray<z.ZodUnion<z.ZodObject<{
|
|
36
|
+
objectType: z.ZodEnum<{
|
|
37
|
+
point: "point";
|
|
38
|
+
segment: "segment";
|
|
39
|
+
line: "line";
|
|
40
|
+
circle: "circle";
|
|
41
|
+
}>;
|
|
42
|
+
id: z.ZodString;
|
|
43
|
+
type: z.ZodLiteral<"create" | "throughPoints" | "perpendicular" | "parallel" | "segmentLength" | "midpoint">;
|
|
44
|
+
} | {
|
|
45
|
+
objectType: z.ZodEnum<{
|
|
46
|
+
point: "point";
|
|
47
|
+
segment: "segment";
|
|
48
|
+
line: "line";
|
|
49
|
+
circle: "circle";
|
|
50
|
+
}>;
|
|
51
|
+
pointIds: z.ZodArray<z.ZodString>;
|
|
52
|
+
id: z.ZodString;
|
|
53
|
+
type: z.ZodLiteral<"create" | "throughPoints" | "perpendicular" | "parallel" | "segmentLength" | "midpoint">;
|
|
54
|
+
} | {
|
|
55
|
+
objectType: z.ZodEnum<{
|
|
56
|
+
point: "point";
|
|
57
|
+
segment: "segment";
|
|
58
|
+
line: "line";
|
|
59
|
+
circle: "circle";
|
|
60
|
+
}>;
|
|
61
|
+
referenceObjectId: z.ZodString;
|
|
62
|
+
throughPointId: z.ZodString;
|
|
63
|
+
toleranceDegrees: z.ZodNumber;
|
|
64
|
+
id: z.ZodString;
|
|
65
|
+
type: z.ZodLiteral<"create" | "throughPoints" | "perpendicular" | "parallel" | "segmentLength" | "midpoint">;
|
|
66
|
+
} | {
|
|
67
|
+
objectType: z.ZodEnum<{
|
|
68
|
+
point: "point";
|
|
69
|
+
segment: "segment";
|
|
70
|
+
line: "line";
|
|
71
|
+
circle: "circle";
|
|
72
|
+
}>;
|
|
73
|
+
referenceObjectId: z.ZodString;
|
|
74
|
+
throughPointId: z.ZodString;
|
|
75
|
+
toleranceDegrees: z.ZodNumber;
|
|
76
|
+
id: z.ZodString;
|
|
77
|
+
type: z.ZodLiteral<"create" | "throughPoints" | "perpendicular" | "parallel" | "segmentLength" | "midpoint">;
|
|
78
|
+
} | {
|
|
79
|
+
objectType: z.ZodLiteral<"segment">;
|
|
80
|
+
targetLength: z.ZodNumber;
|
|
81
|
+
toleranceUnits: z.ZodNumber;
|
|
82
|
+
id: z.ZodString;
|
|
83
|
+
type: z.ZodLiteral<"create" | "throughPoints" | "perpendicular" | "parallel" | "segmentLength" | "midpoint">;
|
|
84
|
+
} | {
|
|
85
|
+
objectType: z.ZodLiteral<"point">;
|
|
86
|
+
referenceObjectId: z.ZodString;
|
|
87
|
+
toleranceUnits: z.ZodNumber;
|
|
88
|
+
id: z.ZodString;
|
|
89
|
+
type: z.ZodLiteral<"create" | "throughPoints" | "perpendicular" | "parallel" | "segmentLength" | "midpoint">;
|
|
90
|
+
}, z.core.$strict>[]>>;
|
|
91
|
+
grading: z.ZodOptional<z.ZodObject<{
|
|
92
|
+
extraObjects: z.ZodEnum<{
|
|
93
|
+
allow: "allow";
|
|
94
|
+
reject: "reject";
|
|
95
|
+
}>;
|
|
96
|
+
}, z.core.$strict>>;
|
|
97
|
+
schemaVersion: z.ZodLiteral<4>;
|
|
98
|
+
entities: z.ZodType<Record<string, {
|
|
99
|
+
kind: "point";
|
|
100
|
+
at: {
|
|
101
|
+
x: number;
|
|
102
|
+
y: number;
|
|
103
|
+
};
|
|
104
|
+
} | {
|
|
105
|
+
kind: "point";
|
|
106
|
+
on: string;
|
|
107
|
+
t: number;
|
|
108
|
+
} | {
|
|
109
|
+
kind: "point";
|
|
110
|
+
intersectionOf: readonly [string, string];
|
|
111
|
+
which?: 0 | 1 | undefined;
|
|
112
|
+
} | {
|
|
113
|
+
kind: "segment";
|
|
114
|
+
parents: readonly [string, string];
|
|
115
|
+
} | {
|
|
116
|
+
kind: "line";
|
|
117
|
+
parents: readonly [string, string];
|
|
118
|
+
} | {
|
|
119
|
+
kind: "circle";
|
|
120
|
+
parents: readonly [string, string];
|
|
121
|
+
} | {
|
|
122
|
+
kind: "angle";
|
|
123
|
+
parents: readonly [string, string, string];
|
|
124
|
+
}>, unknown, z.core.$ZodTypeInternals<Record<string, {
|
|
125
|
+
kind: "point";
|
|
126
|
+
at: {
|
|
127
|
+
x: number;
|
|
128
|
+
y: number;
|
|
129
|
+
};
|
|
130
|
+
} | {
|
|
131
|
+
kind: "point";
|
|
132
|
+
on: string;
|
|
133
|
+
t: number;
|
|
134
|
+
} | {
|
|
135
|
+
kind: "point";
|
|
136
|
+
intersectionOf: readonly [string, string];
|
|
137
|
+
which?: 0 | 1 | undefined;
|
|
138
|
+
} | {
|
|
139
|
+
kind: "segment";
|
|
140
|
+
parents: readonly [string, string];
|
|
141
|
+
} | {
|
|
142
|
+
kind: "line";
|
|
143
|
+
parents: readonly [string, string];
|
|
144
|
+
} | {
|
|
145
|
+
kind: "circle";
|
|
146
|
+
parents: readonly [string, string];
|
|
147
|
+
} | {
|
|
148
|
+
kind: "angle";
|
|
149
|
+
parents: readonly [string, string, string];
|
|
150
|
+
}>, unknown>>;
|
|
151
|
+
presentation: z.ZodType<Record<string, {
|
|
152
|
+
role: "implicit" | "explicit";
|
|
153
|
+
label?: string | undefined;
|
|
154
|
+
measureLabel?: "degrees" | undefined;
|
|
155
|
+
}>, unknown, z.core.$ZodTypeInternals<Record<string, {
|
|
156
|
+
role: "implicit" | "explicit";
|
|
157
|
+
label?: string | undefined;
|
|
158
|
+
measureLabel?: "degrees" | undefined;
|
|
159
|
+
}>, unknown>>;
|
|
160
|
+
allowedObjects: z.ZodArray<z.ZodEnum<{
|
|
161
|
+
point: "point";
|
|
162
|
+
segment: "segment";
|
|
163
|
+
line: "line";
|
|
164
|
+
circle: "circle";
|
|
165
|
+
angle: "angle";
|
|
166
|
+
}>>;
|
|
167
|
+
solution: z.ZodOptional<z.ZodUnknown>;
|
|
168
|
+
}, z.core.$strict>;
|
|
169
|
+
//# sourceMappingURL=exerciseV4.schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"exerciseV4.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/exerciseV4.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAavB,eAAO,MAAM,uBAAuB,IAAI,CAAA;AAExC,kFAAkF;AAClF,eAAO,MAAM,aAAa,0DAAuC,CAAA;AACjE,eAAO,MAAM,iBAAiB,0DAA2C,CAAA;AACzE,eAAO,MAAM,WAAW,+CAAc,CAAA;AACtC,eAAO,MAAM,WAAW,gGAAc,CAAA;AACtC,eAAO,MAAM,kBAAkB,4CAAmD,CAAA;AAElF;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAwBnC,CAAA"}
|
|
@@ -27,6 +27,9 @@ export declare const geometryStateSchema: z.ZodObject<{
|
|
|
27
27
|
} | {
|
|
28
28
|
kind: "circle";
|
|
29
29
|
parents: readonly [string, string];
|
|
30
|
+
} | {
|
|
31
|
+
kind: "angle";
|
|
32
|
+
parents: readonly [string, string, string];
|
|
30
33
|
}>, unknown, z.core.$ZodTypeInternals<Record<string, {
|
|
31
34
|
kind: "point";
|
|
32
35
|
at: {
|
|
@@ -50,13 +53,18 @@ export declare const geometryStateSchema: z.ZodObject<{
|
|
|
50
53
|
} | {
|
|
51
54
|
kind: "circle";
|
|
52
55
|
parents: readonly [string, string];
|
|
56
|
+
} | {
|
|
57
|
+
kind: "angle";
|
|
58
|
+
parents: readonly [string, string, string];
|
|
53
59
|
}>, unknown>>;
|
|
54
60
|
presentation: z.ZodType<Record<string, {
|
|
55
61
|
role: "implicit" | "explicit";
|
|
56
62
|
label?: string | undefined;
|
|
63
|
+
measureLabel?: "degrees" | undefined;
|
|
57
64
|
}>, unknown, z.core.$ZodTypeInternals<Record<string, {
|
|
58
65
|
role: "implicit" | "explicit";
|
|
59
66
|
label?: string | undefined;
|
|
67
|
+
measureLabel?: "degrees" | undefined;
|
|
60
68
|
}>, unknown>>;
|
|
61
69
|
answerEntityIds: z.ZodArray<z.ZodString>;
|
|
62
70
|
}, z.core.$strict>;
|
|
@@ -27,6 +27,9 @@ export declare const geometryStateSchema: z.ZodObject<{
|
|
|
27
27
|
} | {
|
|
28
28
|
kind: "circle";
|
|
29
29
|
parents: readonly [string, string];
|
|
30
|
+
} | {
|
|
31
|
+
kind: "angle";
|
|
32
|
+
parents: readonly [string, string, string];
|
|
30
33
|
}>, unknown, z.core.$ZodTypeInternals<Record<string, {
|
|
31
34
|
kind: "point";
|
|
32
35
|
at: {
|
|
@@ -50,13 +53,18 @@ export declare const geometryStateSchema: z.ZodObject<{
|
|
|
50
53
|
} | {
|
|
51
54
|
kind: "circle";
|
|
52
55
|
parents: readonly [string, string];
|
|
56
|
+
} | {
|
|
57
|
+
kind: "angle";
|
|
58
|
+
parents: readonly [string, string, string];
|
|
53
59
|
}>, unknown>>;
|
|
54
60
|
presentation: z.ZodType<Record<string, {
|
|
55
61
|
role: "implicit" | "explicit";
|
|
56
62
|
label?: string | undefined;
|
|
63
|
+
measureLabel?: "degrees" | undefined;
|
|
57
64
|
}>, unknown, z.core.$ZodTypeInternals<Record<string, {
|
|
58
65
|
role: "implicit" | "explicit";
|
|
59
66
|
label?: string | undefined;
|
|
67
|
+
measureLabel?: "degrees" | undefined;
|
|
60
68
|
}>, unknown>>;
|
|
61
69
|
answerEntityIds: z.ZodArray<z.ZodString>;
|
|
62
70
|
}, z.core.$strict>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geometryState.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/geometryState.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAKvB,OAAO,EAAmB,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAA;AAatF,eAAO,MAAM,0BAA0B,IAAI,CAAA;AAG3C,eAAO,MAAM,uBAAuB,EAAE,SAAS,aAAa,EAA0B,CAAA;AAUtF,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"geometryState.schema.d.ts","sourceRoot":"","sources":["../../src/schemas/geometryState.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAKvB,OAAO,EAAmB,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,MAAM,WAAW,CAAA;AAatF,eAAO,MAAM,0BAA0B,IAAI,CAAA;AAG3C,eAAO,MAAM,uBAAuB,EAAE,SAAS,aAAa,EAA0B,CAAA;AAUtF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAuB5B,CAAA;AAEJ,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA;AAK/D,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB,CAErE"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const angleBisectorGoalSchema: z.ZodObject<{
|
|
3
|
+
id: z.ZodString;
|
|
4
|
+
type: z.ZodLiteral<"angleBisector">;
|
|
5
|
+
objectType: z.ZodEnum<{
|
|
6
|
+
point: "point";
|
|
7
|
+
segment: "segment";
|
|
8
|
+
line: "line";
|
|
9
|
+
circle: "circle";
|
|
10
|
+
angle: "angle";
|
|
11
|
+
}>;
|
|
12
|
+
referenceAngleId: z.ZodString;
|
|
13
|
+
toleranceDegrees: z.ZodNumber;
|
|
14
|
+
}, z.core.$strict>;
|
|
15
|
+
export type AngleBisectorGoal = z.infer<typeof angleBisectorGoalSchema>;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const angleBisectorGoalSchema: z.ZodObject<{
|
|
3
|
+
id: z.ZodString;
|
|
4
|
+
type: z.ZodLiteral<"angleBisector">;
|
|
5
|
+
objectType: z.ZodEnum<{
|
|
6
|
+
point: "point";
|
|
7
|
+
segment: "segment";
|
|
8
|
+
line: "line";
|
|
9
|
+
circle: "circle";
|
|
10
|
+
angle: "angle";
|
|
11
|
+
}>;
|
|
12
|
+
referenceAngleId: z.ZodString;
|
|
13
|
+
toleranceDegrees: z.ZodNumber;
|
|
14
|
+
}, z.core.$strict>;
|
|
15
|
+
export type AngleBisectorGoal = z.infer<typeof angleBisectorGoalSchema>;
|
|
16
|
+
//# sourceMappingURL=angleBisectorGoal.schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"angleBisectorGoal.schema.d.ts","sourceRoot":"","sources":["../../../src/schemas/goals/angleBisectorGoal.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,uBAAuB;;;;;;;;;;;;kBAUzB,CAAA;AAEX,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAA"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const angleTypeSchema: z.ZodEnum<{
|
|
3
|
+
acute: "acute";
|
|
4
|
+
right: "right";
|
|
5
|
+
obtuse: "obtuse";
|
|
6
|
+
straight: "straight";
|
|
7
|
+
reflex: "reflex";
|
|
8
|
+
}>;
|
|
9
|
+
/**
|
|
10
|
+
* What an angle goal asks of a measure (RFC 0006 § Decision 2): a degree with a
|
|
11
|
+
* tolerance, or a named type. A type takes no tolerance — "right, ± 2" is
|
|
12
|
+
* already `degrees` 90 ± 2 — so the strict member refuses one.
|
|
13
|
+
*/
|
|
14
|
+
export declare const angleCriterionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
15
|
+
kind: z.ZodLiteral<"degrees">;
|
|
16
|
+
targetDegrees: z.ZodNumber;
|
|
17
|
+
toleranceDegrees: z.ZodNumber;
|
|
18
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
19
|
+
kind: z.ZodLiteral<"type">;
|
|
20
|
+
angleType: z.ZodEnum<{
|
|
21
|
+
acute: "acute";
|
|
22
|
+
right: "right";
|
|
23
|
+
obtuse: "obtuse";
|
|
24
|
+
straight: "straight";
|
|
25
|
+
reflex: "reflex";
|
|
26
|
+
}>;
|
|
27
|
+
}, z.core.$strict>], "kind">;
|
|
28
|
+
export type AngleCriterion = z.infer<typeof angleCriterionSchema>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const angleTypeSchema: z.ZodEnum<{
|
|
3
|
+
acute: "acute";
|
|
4
|
+
right: "right";
|
|
5
|
+
obtuse: "obtuse";
|
|
6
|
+
straight: "straight";
|
|
7
|
+
reflex: "reflex";
|
|
8
|
+
}>;
|
|
9
|
+
/**
|
|
10
|
+
* What an angle goal asks of a measure (RFC 0006 § Decision 2): a degree with a
|
|
11
|
+
* tolerance, or a named type. A type takes no tolerance — "right, ± 2" is
|
|
12
|
+
* already `degrees` 90 ± 2 — so the strict member refuses one.
|
|
13
|
+
*/
|
|
14
|
+
export declare const angleCriterionSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
15
|
+
kind: z.ZodLiteral<"degrees">;
|
|
16
|
+
targetDegrees: z.ZodNumber;
|
|
17
|
+
toleranceDegrees: z.ZodNumber;
|
|
18
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
19
|
+
kind: z.ZodLiteral<"type">;
|
|
20
|
+
angleType: z.ZodEnum<{
|
|
21
|
+
acute: "acute";
|
|
22
|
+
right: "right";
|
|
23
|
+
obtuse: "obtuse";
|
|
24
|
+
straight: "straight";
|
|
25
|
+
reflex: "reflex";
|
|
26
|
+
}>;
|
|
27
|
+
}, z.core.$strict>], "kind">;
|
|
28
|
+
export type AngleCriterion = z.infer<typeof angleCriterionSchema>;
|
|
29
|
+
//# sourceMappingURL=angleCriterion.schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"angleCriterion.schema.d.ts","sourceRoot":"","sources":["../../../src/schemas/goals/angleCriterion.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,eAAe;;;;;;EAA6D,CAAA;AAEzF;;;;GAIG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;4BAU/B,CAAA;AAEF,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAA"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const angleMeasureGoalSchema: z.ZodObject<{
|
|
3
|
+
id: z.ZodString;
|
|
4
|
+
type: z.ZodLiteral<"angleMeasure">;
|
|
5
|
+
objectType: z.ZodLiteral<"angle">;
|
|
6
|
+
vertexPointId: z.ZodString;
|
|
7
|
+
interpretation: z.ZodEnum<{
|
|
8
|
+
directed: "directed";
|
|
9
|
+
undirected: "undirected";
|
|
10
|
+
}>;
|
|
11
|
+
criterion: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
12
|
+
kind: z.ZodLiteral<"degrees">;
|
|
13
|
+
targetDegrees: z.ZodNumber;
|
|
14
|
+
toleranceDegrees: z.ZodNumber;
|
|
15
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
16
|
+
kind: z.ZodLiteral<"type">;
|
|
17
|
+
angleType: z.ZodEnum<{
|
|
18
|
+
acute: "acute";
|
|
19
|
+
right: "right";
|
|
20
|
+
obtuse: "obtuse";
|
|
21
|
+
straight: "straight";
|
|
22
|
+
reflex: "reflex";
|
|
23
|
+
}>;
|
|
24
|
+
}, z.core.$strict>], "kind">;
|
|
25
|
+
}, z.core.$strict>;
|
|
26
|
+
export type AngleMeasureGoal = z.infer<typeof angleMeasureGoalSchema>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
export declare const angleMeasureGoalSchema: z.ZodObject<{
|
|
3
|
+
id: z.ZodString;
|
|
4
|
+
type: z.ZodLiteral<"angleMeasure">;
|
|
5
|
+
objectType: z.ZodLiteral<"angle">;
|
|
6
|
+
vertexPointId: z.ZodString;
|
|
7
|
+
interpretation: z.ZodEnum<{
|
|
8
|
+
directed: "directed";
|
|
9
|
+
undirected: "undirected";
|
|
10
|
+
}>;
|
|
11
|
+
criterion: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
12
|
+
kind: z.ZodLiteral<"degrees">;
|
|
13
|
+
targetDegrees: z.ZodNumber;
|
|
14
|
+
toleranceDegrees: z.ZodNumber;
|
|
15
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
16
|
+
kind: z.ZodLiteral<"type">;
|
|
17
|
+
angleType: z.ZodEnum<{
|
|
18
|
+
acute: "acute";
|
|
19
|
+
right: "right";
|
|
20
|
+
obtuse: "obtuse";
|
|
21
|
+
straight: "straight";
|
|
22
|
+
reflex: "reflex";
|
|
23
|
+
}>;
|
|
24
|
+
}, z.core.$strict>], "kind">;
|
|
25
|
+
}, z.core.$strict>;
|
|
26
|
+
export type AngleMeasureGoal = z.infer<typeof angleMeasureGoalSchema>;
|
|
27
|
+
//# sourceMappingURL=angleMeasureGoal.schema.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"angleMeasureGoal.schema.d.ts","sourceRoot":"","sources":["../../../src/schemas/goals/angleMeasureGoal.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;kBAWxB,CAAA;AAEX,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createGoal.schema.d.ts","sourceRoot":"","sources":["../../../src/schemas/goals/createGoal.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,gBAAgB
|
|
1
|
+
{"version":3,"file":"createGoal.schema.d.ts","sourceRoot":"","sources":["../../../src/schemas/goals/createGoal.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,gBAAgB;;;;;;;;;;kBAMlB,CAAA;AAEX,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAA"}
|
|
@@ -7,6 +7,7 @@ export declare const geometryGoalSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
7
7
|
segment: "segment";
|
|
8
8
|
line: "line";
|
|
9
9
|
circle: "circle";
|
|
10
|
+
angle: "angle";
|
|
10
11
|
}>;
|
|
11
12
|
}, z.core.$strict>, z.ZodObject<{
|
|
12
13
|
id: z.ZodString;
|
|
@@ -16,6 +17,7 @@ export declare const geometryGoalSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
16
17
|
segment: "segment";
|
|
17
18
|
line: "line";
|
|
18
19
|
circle: "circle";
|
|
20
|
+
angle: "angle";
|
|
19
21
|
}>;
|
|
20
22
|
pointIds: z.ZodArray<z.ZodString>;
|
|
21
23
|
}, z.core.$strict>, z.ZodObject<{
|
|
@@ -26,6 +28,7 @@ export declare const geometryGoalSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
26
28
|
segment: "segment";
|
|
27
29
|
line: "line";
|
|
28
30
|
circle: "circle";
|
|
31
|
+
angle: "angle";
|
|
29
32
|
}>;
|
|
30
33
|
referenceObjectId: z.ZodString;
|
|
31
34
|
throughPointId: z.ZodString;
|
|
@@ -38,6 +41,7 @@ export declare const geometryGoalSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
38
41
|
segment: "segment";
|
|
39
42
|
line: "line";
|
|
40
43
|
circle: "circle";
|
|
44
|
+
angle: "angle";
|
|
41
45
|
}>;
|
|
42
46
|
referenceObjectId: z.ZodString;
|
|
43
47
|
throughPointId: z.ZodString;
|
|
@@ -54,5 +58,62 @@ export declare const geometryGoalSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
54
58
|
objectType: z.ZodLiteral<"point">;
|
|
55
59
|
referenceObjectId: z.ZodString;
|
|
56
60
|
toleranceUnits: z.ZodNumber;
|
|
61
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
62
|
+
id: z.ZodString;
|
|
63
|
+
type: z.ZodLiteral<"angleMeasure">;
|
|
64
|
+
objectType: z.ZodLiteral<"angle">;
|
|
65
|
+
vertexPointId: z.ZodString;
|
|
66
|
+
interpretation: z.ZodEnum<{
|
|
67
|
+
directed: "directed";
|
|
68
|
+
undirected: "undirected";
|
|
69
|
+
}>;
|
|
70
|
+
criterion: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
71
|
+
kind: z.ZodLiteral<"degrees">;
|
|
72
|
+
targetDegrees: z.ZodNumber;
|
|
73
|
+
toleranceDegrees: z.ZodNumber;
|
|
74
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
75
|
+
kind: z.ZodLiteral<"type">;
|
|
76
|
+
angleType: z.ZodEnum<{
|
|
77
|
+
acute: "acute";
|
|
78
|
+
right: "right";
|
|
79
|
+
obtuse: "obtuse";
|
|
80
|
+
straight: "straight";
|
|
81
|
+
reflex: "reflex";
|
|
82
|
+
}>;
|
|
83
|
+
}, z.core.$strict>], "kind">;
|
|
84
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
85
|
+
id: z.ZodString;
|
|
86
|
+
type: z.ZodLiteral<"angleBisector">;
|
|
87
|
+
objectType: z.ZodEnum<{
|
|
88
|
+
point: "point";
|
|
89
|
+
segment: "segment";
|
|
90
|
+
line: "line";
|
|
91
|
+
circle: "circle";
|
|
92
|
+
angle: "angle";
|
|
93
|
+
}>;
|
|
94
|
+
referenceAngleId: z.ZodString;
|
|
95
|
+
toleranceDegrees: z.ZodNumber;
|
|
96
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
97
|
+
id: z.ZodString;
|
|
98
|
+
type: z.ZodLiteral<"givenAngle">;
|
|
99
|
+
angleId: z.ZodString;
|
|
100
|
+
interpretation: z.ZodEnum<{
|
|
101
|
+
directed: "directed";
|
|
102
|
+
undirected: "undirected";
|
|
103
|
+
}>;
|
|
104
|
+
criterion: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
105
|
+
kind: z.ZodLiteral<"degrees">;
|
|
106
|
+
targetDegrees: z.ZodNumber;
|
|
107
|
+
toleranceDegrees: z.ZodNumber;
|
|
108
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
109
|
+
kind: z.ZodLiteral<"type">;
|
|
110
|
+
angleType: z.ZodEnum<{
|
|
111
|
+
acute: "acute";
|
|
112
|
+
right: "right";
|
|
113
|
+
obtuse: "obtuse";
|
|
114
|
+
straight: "straight";
|
|
115
|
+
reflex: "reflex";
|
|
116
|
+
}>;
|
|
117
|
+
}, z.core.$strict>], "kind">;
|
|
57
118
|
}, z.core.$strict>], "type">;
|
|
58
119
|
export type GeometryGoal = z.infer<typeof geometryGoalSchema>;
|
|
@@ -7,6 +7,7 @@ export declare const geometryGoalSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
7
7
|
segment: "segment";
|
|
8
8
|
line: "line";
|
|
9
9
|
circle: "circle";
|
|
10
|
+
angle: "angle";
|
|
10
11
|
}>;
|
|
11
12
|
}, z.core.$strict>, z.ZodObject<{
|
|
12
13
|
id: z.ZodString;
|
|
@@ -16,6 +17,7 @@ export declare const geometryGoalSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
16
17
|
segment: "segment";
|
|
17
18
|
line: "line";
|
|
18
19
|
circle: "circle";
|
|
20
|
+
angle: "angle";
|
|
19
21
|
}>;
|
|
20
22
|
pointIds: z.ZodArray<z.ZodString>;
|
|
21
23
|
}, z.core.$strict>, z.ZodObject<{
|
|
@@ -26,6 +28,7 @@ export declare const geometryGoalSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
26
28
|
segment: "segment";
|
|
27
29
|
line: "line";
|
|
28
30
|
circle: "circle";
|
|
31
|
+
angle: "angle";
|
|
29
32
|
}>;
|
|
30
33
|
referenceObjectId: z.ZodString;
|
|
31
34
|
throughPointId: z.ZodString;
|
|
@@ -38,6 +41,7 @@ export declare const geometryGoalSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
38
41
|
segment: "segment";
|
|
39
42
|
line: "line";
|
|
40
43
|
circle: "circle";
|
|
44
|
+
angle: "angle";
|
|
41
45
|
}>;
|
|
42
46
|
referenceObjectId: z.ZodString;
|
|
43
47
|
throughPointId: z.ZodString;
|
|
@@ -54,6 +58,63 @@ export declare const geometryGoalSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
|
54
58
|
objectType: z.ZodLiteral<"point">;
|
|
55
59
|
referenceObjectId: z.ZodString;
|
|
56
60
|
toleranceUnits: z.ZodNumber;
|
|
61
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
62
|
+
id: z.ZodString;
|
|
63
|
+
type: z.ZodLiteral<"angleMeasure">;
|
|
64
|
+
objectType: z.ZodLiteral<"angle">;
|
|
65
|
+
vertexPointId: z.ZodString;
|
|
66
|
+
interpretation: z.ZodEnum<{
|
|
67
|
+
directed: "directed";
|
|
68
|
+
undirected: "undirected";
|
|
69
|
+
}>;
|
|
70
|
+
criterion: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
71
|
+
kind: z.ZodLiteral<"degrees">;
|
|
72
|
+
targetDegrees: z.ZodNumber;
|
|
73
|
+
toleranceDegrees: z.ZodNumber;
|
|
74
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
75
|
+
kind: z.ZodLiteral<"type">;
|
|
76
|
+
angleType: z.ZodEnum<{
|
|
77
|
+
acute: "acute";
|
|
78
|
+
right: "right";
|
|
79
|
+
obtuse: "obtuse";
|
|
80
|
+
straight: "straight";
|
|
81
|
+
reflex: "reflex";
|
|
82
|
+
}>;
|
|
83
|
+
}, z.core.$strict>], "kind">;
|
|
84
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
85
|
+
id: z.ZodString;
|
|
86
|
+
type: z.ZodLiteral<"angleBisector">;
|
|
87
|
+
objectType: z.ZodEnum<{
|
|
88
|
+
point: "point";
|
|
89
|
+
segment: "segment";
|
|
90
|
+
line: "line";
|
|
91
|
+
circle: "circle";
|
|
92
|
+
angle: "angle";
|
|
93
|
+
}>;
|
|
94
|
+
referenceAngleId: z.ZodString;
|
|
95
|
+
toleranceDegrees: z.ZodNumber;
|
|
96
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
97
|
+
id: z.ZodString;
|
|
98
|
+
type: z.ZodLiteral<"givenAngle">;
|
|
99
|
+
angleId: z.ZodString;
|
|
100
|
+
interpretation: z.ZodEnum<{
|
|
101
|
+
directed: "directed";
|
|
102
|
+
undirected: "undirected";
|
|
103
|
+
}>;
|
|
104
|
+
criterion: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
105
|
+
kind: z.ZodLiteral<"degrees">;
|
|
106
|
+
targetDegrees: z.ZodNumber;
|
|
107
|
+
toleranceDegrees: z.ZodNumber;
|
|
108
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
109
|
+
kind: z.ZodLiteral<"type">;
|
|
110
|
+
angleType: z.ZodEnum<{
|
|
111
|
+
acute: "acute";
|
|
112
|
+
right: "right";
|
|
113
|
+
obtuse: "obtuse";
|
|
114
|
+
straight: "straight";
|
|
115
|
+
reflex: "reflex";
|
|
116
|
+
}>;
|
|
117
|
+
}, z.core.$strict>], "kind">;
|
|
57
118
|
}, z.core.$strict>], "type">;
|
|
58
119
|
export type GeometryGoal = z.infer<typeof geometryGoalSchema>;
|
|
59
120
|
//# sourceMappingURL=geometryGoal.schema.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"geometryGoal.schema.d.ts","sourceRoot":"","sources":["../../../src/schemas/goals/geometryGoal.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;
|
|
1
|
+
{"version":3,"file":"geometryGoal.schema.d.ts","sourceRoot":"","sources":["../../../src/schemas/goals/geometryGoal.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAWvB,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4BAU7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
/**
|
|
3
|
+
* The first **figure goal** (ADR 0016): it judges a given angle as the evaluated
|
|
4
|
+
* figure resolves it, rather than an entity the student built.
|
|
5
|
+
*
|
|
6
|
+
* An exercise that pins an angle's vertex and first arm and lets the student
|
|
7
|
+
* drag the second has no candidate to grade — a given is never a candidate
|
|
8
|
+
* (ADR 0008 § Amendment) — so its only subject is the figure itself. What makes
|
|
9
|
+
* that safe is the override invariant: an attempt may move an authorized point
|
|
10
|
+
* and nothing else, so the figure judged here is the exercise's.
|
|
11
|
+
*/
|
|
12
|
+
export declare const givenAngleGoalSchema: z.ZodObject<{
|
|
13
|
+
id: z.ZodString;
|
|
14
|
+
type: z.ZodLiteral<"givenAngle">;
|
|
15
|
+
angleId: z.ZodString;
|
|
16
|
+
interpretation: z.ZodEnum<{
|
|
17
|
+
directed: "directed";
|
|
18
|
+
undirected: "undirected";
|
|
19
|
+
}>;
|
|
20
|
+
criterion: z.ZodDiscriminatedUnion<[z.ZodObject<{
|
|
21
|
+
kind: z.ZodLiteral<"degrees">;
|
|
22
|
+
targetDegrees: z.ZodNumber;
|
|
23
|
+
toleranceDegrees: z.ZodNumber;
|
|
24
|
+
}, z.core.$strict>, z.ZodObject<{
|
|
25
|
+
kind: z.ZodLiteral<"type">;
|
|
26
|
+
angleType: z.ZodEnum<{
|
|
27
|
+
acute: "acute";
|
|
28
|
+
right: "right";
|
|
29
|
+
obtuse: "obtuse";
|
|
30
|
+
straight: "straight";
|
|
31
|
+
reflex: "reflex";
|
|
32
|
+
}>;
|
|
33
|
+
}, z.core.$strict>], "kind">;
|
|
34
|
+
}, z.core.$strict>;
|
|
35
|
+
export type GivenAngleGoal = z.infer<typeof givenAngleGoalSchema>;
|