@happyvertical/smrt-education 0.57.52 → 0.58.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.
- package/AGENTS.md +12 -7
- package/README.md +36 -2
- package/agents/course-work-design.md +144 -0
- package/agents/group-sharing.md +5 -1
- package/agents/learner-plan.md +3 -3
- package/agents/learner-service.md +1 -1
- package/agents/lesson-materials.md +52 -0
- package/agents/{workbook-service.md → lesson-work-service.md} +164 -95
- package/agents/{workbook-test-matrix.md → lesson-work-test-matrix.md} +3 -3
- package/agents/photo-intake.md +37 -50
- package/agents/question-records.md +1 -1
- package/agents/submission-service.md +22 -6
- package/dist/catalog-service.d.ts +1 -1
- package/dist/catalog-service.d.ts.map +1 -1
- package/dist/catalog.d.ts +11 -0
- package/dist/catalog.d.ts.map +1 -1
- package/dist/chunks/{workbook-photo-service-BtMQsbhq.js → workbook-photo-service-COtyQL1y.js} +5927 -4963
- package/dist/chunks/workbook-photo-service-COtyQL1y.js.map +1 -0
- package/dist/course-authoring-contracts.d.ts +5 -1
- package/dist/course-authoring-contracts.d.ts.map +1 -1
- package/dist/course-authoring-service.d.ts.map +1 -1
- package/dist/course-work-migration.d.ts +27 -0
- package/dist/course-work-migration.d.ts.map +1 -0
- package/dist/group-sharing-contracts.d.ts +3 -3
- package/dist/group-sharing-contracts.d.ts.map +1 -1
- package/dist/group-sharing-policy.d.ts +4 -4
- package/dist/group-sharing-policy.d.ts.map +1 -1
- package/dist/group-sharing-reader.d.ts.map +1 -1
- package/dist/index.d.ts +13 -11
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +351 -36
- package/dist/index.js.map +1 -1
- package/dist/ingestion.d.ts +12 -11
- package/dist/ingestion.d.ts.map +1 -1
- package/dist/ingestion.js +63 -56
- package/dist/ingestion.js.map +1 -1
- package/dist/learner-plan-service.d.ts +1 -1
- package/dist/learner-plan-service.d.ts.map +1 -1
- package/dist/learner-service.d.ts +19 -5
- package/dist/learner-service.d.ts.map +1 -1
- package/dist/lesson-assets.d.ts +66 -2
- package/dist/lesson-assets.d.ts.map +1 -1
- package/dist/lesson-pages.d.ts +36 -0
- package/dist/lesson-pages.d.ts.map +1 -0
- package/dist/{workbook-completion.d.ts → lesson-work-completion.d.ts} +10 -10
- package/dist/lesson-work-completion.d.ts.map +1 -0
- package/dist/{workbook-contracts.d.ts → lesson-work-contracts.d.ts} +100 -52
- package/dist/lesson-work-contracts.d.ts.map +1 -0
- package/dist/lesson-work-models.d.ts +118 -0
- package/dist/lesson-work-models.d.ts.map +1 -0
- package/dist/lesson-work-service.d.ts +239 -0
- package/dist/lesson-work-service.d.ts.map +1 -0
- package/dist/manifest.json +6504 -5419
- package/dist/smrt-knowledge.json +2147 -1744
- package/dist/submission-service.d.ts +135 -5
- package/dist/submission-service.d.ts.map +1 -1
- package/dist/submissions.d.ts +2 -0
- package/dist/submissions.d.ts.map +1 -1
- package/dist/work-answer-regions.d.ts +11 -0
- package/dist/work-answer-regions.d.ts.map +1 -0
- package/dist/work-layout.d.ts +13 -0
- package/dist/work-layout.d.ts.map +1 -0
- package/dist/workbook-photo-contracts.d.ts +9 -7
- package/dist/workbook-photo-contracts.d.ts.map +1 -1
- package/dist/workbook-photo-ingestion.d.ts +1 -1
- package/dist/workbook-photo-ingestion.d.ts.map +1 -1
- package/dist/workbook-photo-models.d.ts +5 -5
- package/dist/workbook-photo-models.d.ts.map +1 -1
- package/dist/workbook-photo-service.d.ts +13 -10
- package/dist/workbook-photo-service.d.ts.map +1 -1
- package/package.json +8 -8
- package/dist/chunks/workbook-photo-service-BtMQsbhq.js.map +0 -1
- package/dist/workbook-answer-regions.d.ts +0 -11
- package/dist/workbook-answer-regions.d.ts.map +0 -1
- package/dist/workbook-completion.d.ts.map +0 -1
- package/dist/workbook-contracts.d.ts.map +0 -1
- package/dist/workbook-layout.d.ts +0 -13
- package/dist/workbook-layout.d.ts.map +0 -1
- package/dist/workbook-models.d.ts +0 -129
- package/dist/workbook-models.d.ts.map +0 -1
- package/dist/workbook-service.d.ts +0 -163
- package/dist/workbook-service.d.ts.map +0 -1
|
@@ -2,12 +2,21 @@ import { type Asset, type AssetRuntime, type AssetRuntimeOptions } from '@happyv
|
|
|
2
2
|
import type { DatabaseInterface } from '@happyvertical/sql';
|
|
3
3
|
import type { CatalogAuthorizer } from './catalog-service.js';
|
|
4
4
|
import { type LearnerAuthorizer, type LearnerRequest, LearnerService, LearnerValidationError } from './learner-service.js';
|
|
5
|
+
import { type ExternalVideoProvider, type LessonAssetRelationship, type MaterialAudience } from './lesson-assets.js';
|
|
6
|
+
import type { WorkAssistance } from './lesson-work-contracts.js';
|
|
7
|
+
import { type LessonActivity } from './lesson-work-models.js';
|
|
5
8
|
import type { Grade, Submission, SubmissionKind } from './submissions.js';
|
|
6
9
|
/** A single captured page. No model patches or pre-existing asset IDs are accepted. */
|
|
7
10
|
export interface SubmissionPage {
|
|
8
11
|
name: string;
|
|
9
12
|
mimeType: 'image/jpeg' | 'image/png' | 'image/webp' | 'application/pdf';
|
|
10
13
|
data: Buffer;
|
|
14
|
+
/**
|
|
15
|
+
* The lesson page this file is (`p1`, `p12-back`); default `p<position>`.
|
|
16
|
+
* A correction may carry only the pages it replaces: a page keeps its key
|
|
17
|
+
* across the correction chain, so a host can show "page 2: v1, v2".
|
|
18
|
+
*/
|
|
19
|
+
pageKey?: string;
|
|
11
20
|
}
|
|
12
21
|
export interface SubmissionAssetClaim {
|
|
13
22
|
enrollmentId: string;
|
|
@@ -45,6 +54,7 @@ export type SubmissionView = Readonly<{
|
|
|
45
54
|
pages: ReadonlyArray<{
|
|
46
55
|
assetId: string;
|
|
47
56
|
sortOrder: number;
|
|
57
|
+
pageKey: string;
|
|
48
58
|
}>;
|
|
49
59
|
/** Guardian-origin photo work remains private until explicit feedback release. */
|
|
50
60
|
awaitingParentRelease?: boolean;
|
|
@@ -89,10 +99,36 @@ type CaptureRequest = LessonRequest & {
|
|
|
89
99
|
notes?: string;
|
|
90
100
|
intake?: SubmissionIntake;
|
|
91
101
|
};
|
|
92
|
-
/**
|
|
93
|
-
|
|
102
|
+
/**
|
|
103
|
+
* Book and loose-page work is captured only through `LessonWorkService`, which
|
|
104
|
+
* owns its receipt, correction-identity and release checks.
|
|
105
|
+
*/
|
|
106
|
+
export declare class LessonWorkWorkflowRequiredError extends Error {
|
|
94
107
|
constructor();
|
|
95
108
|
}
|
|
109
|
+
/** An external video reference is not an allowlisted YouTube id or URL. */
|
|
110
|
+
export declare class ExternalVideoReferenceError extends LearnerValidationError {
|
|
111
|
+
constructor();
|
|
112
|
+
}
|
|
113
|
+
/** One material as a learner or guardian may see it. */
|
|
114
|
+
export type LessonMaterialView = Readonly<{
|
|
115
|
+
id: string;
|
|
116
|
+
kind: 'file' | 'external-video';
|
|
117
|
+
scope: 'lesson' | 'course';
|
|
118
|
+
relationship: LessonAssetRelationship;
|
|
119
|
+
audience: MaterialAudience;
|
|
120
|
+
title: string;
|
|
121
|
+
/** Sort order for files, step order for videos. */
|
|
122
|
+
order: number;
|
|
123
|
+
/** Files only; sign with `signLessonMaterial` / `signCourseMaterial`. */
|
|
124
|
+
assetId: string | null;
|
|
125
|
+
provider: ExternalVideoProvider | null;
|
|
126
|
+
videoId: string | null;
|
|
127
|
+
/** Privacy-enhanced embed URL for an external video. */
|
|
128
|
+
embedUrl: string | null;
|
|
129
|
+
}>;
|
|
130
|
+
/** The page key a file carries: its own, or `p<position>` for older rows. */
|
|
131
|
+
export declare function submissionPageKey(pageKey: string, sortOrder: number): string;
|
|
96
132
|
/** Failure includes fresh asset identities only, for explicit storage reconciliation. */
|
|
97
133
|
export declare class SubmissionStorageCleanupError extends Error {
|
|
98
134
|
readonly assetIds: readonly string[];
|
|
@@ -122,20 +158,42 @@ export declare class SubmissionService extends LearnerService {
|
|
|
122
158
|
guardianOrigin: boolean;
|
|
123
159
|
released: boolean;
|
|
124
160
|
}>;
|
|
161
|
+
/**
|
|
162
|
+
* A submission's learner-owned page files and whether they are withheld
|
|
163
|
+
* from this actor (guardian-origin source awaiting release). The caller has
|
|
164
|
+
* already authorized the submission's learner and enrollment.
|
|
165
|
+
*/
|
|
166
|
+
protected submissionPages(row: Submission, actorUserId: string, pagesOnly?: boolean): Promise<{
|
|
167
|
+
pages: Array<{
|
|
168
|
+
assetId: string;
|
|
169
|
+
sortOrder: number;
|
|
170
|
+
pageKey: string;
|
|
171
|
+
}>;
|
|
172
|
+
awaitingParentRelease: boolean;
|
|
173
|
+
guardianOrigin: boolean;
|
|
174
|
+
learnerUserId: string;
|
|
175
|
+
}>;
|
|
125
176
|
private view;
|
|
126
177
|
/** Recheck the exact assignment without creating progress or accepting bytes.
|
|
127
178
|
* Trusted intake bridges call this before reading retained evidence.
|
|
128
179
|
*/
|
|
129
180
|
assertLessonAssignment(request: LessonRequest): Promise<void>;
|
|
130
|
-
/**
|
|
131
|
-
|
|
181
|
+
/**
|
|
182
|
+
* Refuse generic upload entry points for book and loose-page work, using
|
|
183
|
+
* the authoritative enrollment, lesson and predecessor. Hosts call this
|
|
184
|
+
* before creating a generic intake receipt.
|
|
185
|
+
*/
|
|
186
|
+
assertOrdinarySubmissionScope(request: LearnerRequest & {
|
|
132
187
|
enrollmentId: string;
|
|
133
188
|
lessonId?: string;
|
|
134
189
|
previousSubmissionId?: string;
|
|
135
190
|
}): Promise<void>;
|
|
136
191
|
captureSubmission(request: CaptureRequest): Promise<SubmissionView>;
|
|
137
192
|
/** Owning workflow extension; no browser input can grant this scoped path. */
|
|
138
|
-
protected
|
|
193
|
+
protected captureActivitySubmission(request: CaptureRequest, scope: {
|
|
194
|
+
activityId: string;
|
|
195
|
+
assistance: WorkAssistance;
|
|
196
|
+
}): Promise<SubmissionView>;
|
|
139
197
|
private captureSubmissionInScope;
|
|
140
198
|
/** Capture a blank workbook scan without claiming completion or a grade. */
|
|
141
199
|
captureBlankReference(request: LessonRequest & {
|
|
@@ -155,6 +213,22 @@ export declare class SubmissionService extends LearnerService {
|
|
|
155
213
|
getSubmission(request: SubmissionRequest): Promise<SubmissionView>;
|
|
156
214
|
/** Latest retained completed-work evidence; lesson completion is independent. */
|
|
157
215
|
getLatestLessonSubmission(request: LessonRequest): Promise<SubmissionView | null>;
|
|
216
|
+
/** The course work policy a new attempt snapshots (its enrollment's course). */
|
|
217
|
+
protected workPolicy(activity: LessonActivity): Promise<{
|
|
218
|
+
reviewRequired: boolean;
|
|
219
|
+
policyVersion: number;
|
|
220
|
+
}>;
|
|
221
|
+
/**
|
|
222
|
+
* Record a completed-work hand-in in the lesson work pipeline: the learner's
|
|
223
|
+
* activity on this lesson (created on first capture) and one immutable
|
|
224
|
+
* attempt bound to the submission, continuing its predecessor's episode.
|
|
225
|
+
*/
|
|
226
|
+
protected recordAttempt(request: LessonRequest, row: Submission, pages: readonly SubmissionPage[], assetIds: readonly string[], scope: {
|
|
227
|
+
activity: LessonActivity | null;
|
|
228
|
+
assistance: WorkAssistance;
|
|
229
|
+
}): Promise<void>;
|
|
230
|
+
/** A guardian grade on an ordinary lesson's current attempt completes it. */
|
|
231
|
+
private recordGradeCompletion;
|
|
158
232
|
private grade;
|
|
159
233
|
reviewSubmission(request: SubmissionRequest & {
|
|
160
234
|
score?: number | null;
|
|
@@ -196,6 +270,62 @@ export declare class SubmissionService extends LearnerService {
|
|
|
196
270
|
expiresAt: Date;
|
|
197
271
|
}>;
|
|
198
272
|
/** Sign only an exact authorized printable join; answer keys never qualify. */
|
|
273
|
+
/** Whether the actor is the learner themself (learner audience only). */
|
|
274
|
+
private learnerAudienceOnly;
|
|
275
|
+
private visibleTo;
|
|
276
|
+
private materialName;
|
|
277
|
+
/**
|
|
278
|
+
* A lesson's materials for this actor: files by role and audience, then
|
|
279
|
+
* external video references in step order. A learner sees only
|
|
280
|
+
* learner-audience material; keys and guidance never reach them.
|
|
281
|
+
*/
|
|
282
|
+
listLessonMaterials(request: LessonRequest): Promise<LessonMaterialView[]>;
|
|
283
|
+
/** Course-level materials (supply lists, posters) under the same audience rule. */
|
|
284
|
+
listCourseMaterials(request: LearnerRequest & {
|
|
285
|
+
enrollmentId: string;
|
|
286
|
+
}): Promise<LessonMaterialView[]>;
|
|
287
|
+
private signMaterial;
|
|
288
|
+
/** Sign one lesson file the actor may see (learners: learner audience only). */
|
|
289
|
+
signLessonMaterial(request: LessonRequest & {
|
|
290
|
+
materialId: string;
|
|
291
|
+
}): Promise<{
|
|
292
|
+
url: string;
|
|
293
|
+
expiresAt: Date;
|
|
294
|
+
}>;
|
|
295
|
+
/** Sign one course-level file the actor may see. */
|
|
296
|
+
signCourseMaterial(request: LearnerRequest & {
|
|
297
|
+
enrollmentId: string;
|
|
298
|
+
materialId: string;
|
|
299
|
+
}): Promise<{
|
|
300
|
+
url: string;
|
|
301
|
+
expiresAt: Date;
|
|
302
|
+
}>;
|
|
303
|
+
/** Re-save a family material join under the exact private-asset capability. */
|
|
304
|
+
private saveFamilyMaterial;
|
|
305
|
+
/** Family-owned, non-authored course rows only; authored material changes through authoring. */
|
|
306
|
+
private familyMaterialCourse;
|
|
307
|
+
/**
|
|
308
|
+
* Change who a family-owned material is for, within its role's bounds
|
|
309
|
+
* (keys and assessment guidance stay guardian-only). Guardian planning.
|
|
310
|
+
*/
|
|
311
|
+
setMaterialAudience(request: LearnerRequest & {
|
|
312
|
+
enrollmentId: string;
|
|
313
|
+
scope: 'lesson' | 'course';
|
|
314
|
+
kind: 'file' | 'external-video';
|
|
315
|
+
materialId: string;
|
|
316
|
+
audience: MaterialAudience;
|
|
317
|
+
}): Promise<LessonMaterialView>;
|
|
318
|
+
/**
|
|
319
|
+
* Add an allowlisted external video (a YouTube id or URL) to a family-owned
|
|
320
|
+
* lesson, with its title and step order. Nothing is downloaded. A replay of
|
|
321
|
+
* the same video, title, step and audience returns the same reference.
|
|
322
|
+
*/
|
|
323
|
+
addLessonVideo(request: LessonRequest & {
|
|
324
|
+
reference: string;
|
|
325
|
+
title: string;
|
|
326
|
+
stepOrder: number;
|
|
327
|
+
audience?: MaterialAudience;
|
|
328
|
+
}): Promise<LessonMaterialView>;
|
|
199
329
|
signLessonPrintable(request: LessonRequest & {
|
|
200
330
|
assetId: string;
|
|
201
331
|
}): Promise<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"submission-service.d.ts","sourceRoot":"","sources":["../src/submission-service.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,KAAK,EACV,KAAK,YAAY,EACjB,KAAK,mBAAmB,EAGzB,MAAM,4BAA4B,CAAC;AACpC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAa9D,OAAO,EAEL,KAAK,iBAAiB,EAEtB,KAAK,cAAc,EACnB,cAAc,EACd,sBAAsB,EAEvB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"submission-service.d.ts","sourceRoot":"","sources":["../src/submission-service.ts"],"names":[],"mappings":"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"}
|
package/dist/submissions.d.ts
CHANGED
|
@@ -89,6 +89,8 @@ export declare class SubmissionAsset extends SmrtObject {
|
|
|
89
89
|
assetId: string;
|
|
90
90
|
relationship: SubmissionAssetRelationship;
|
|
91
91
|
sortOrder: number;
|
|
92
|
+
/** Lesson page this file is; '' on older rows reads as `p<sortOrder+1>`. */
|
|
93
|
+
pageKey: string;
|
|
92
94
|
constructor(options?: Record<string, unknown>);
|
|
93
95
|
save(options?: SmrtSaveOptions): Promise<this>;
|
|
94
96
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"submissions.d.ts","sourceRoot":"","sources":["../src/submissions.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"submissions.d.ts","sourceRoot":"","sources":["../src/submissions.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,UAAU,EACV,KAAK,eAAe,EAErB,MAAM,0BAA0B,CAAC;AAkElC,MAAM,MAAM,gBAAgB,GACxB,UAAU,GACV,YAAY,GACZ,cAAc,GACd,QAAQ,GACR,UAAU,CAAC;AACf,MAAM,MAAM,0BAA0B,GAAG,SAAS,GAAG,UAAU,GAAG,QAAQ,CAAC;AAC3E,MAAM,MAAM,2BAA2B,GAAG,MAAM,GAAG,YAAY,CAAC;AAChE,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,IAAI,GAAG,UAAU,GAAG,YAAY,CAAC;AACnE,4EAA4E;AAC5E,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;AAElE,2DAA2D;AAC3D,qBAEa,UAAW,SAAQ,UAAU;IAC5B,QAAQ,SAAM;IACiB,SAAS,SAAM;IAChB,QAAQ,SAAM;IACN,UAAU,SAAM;IAClE,WAAW,OAAc;IACzB,MAAM,EAAE,gBAAgB,CAAc;IACtC,KAAK,SAAM;IACX,8EAA8E;IAC9E,UAAU,SAAM;IAChB,0EAA0E;IAC1E,aAAa,SAAM;IACnB,6EAA6E;IAClD,IAAI,EAAE,cAAc,CAAoB;IACnE,2DAA2D;IACb,oBAAoB,EAC9D,MAAM,GACN,IAAI,CAAQ;IAChB,8EAA8E;IACrC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAQ;gBAEhE,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAKlC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CA6C9D;AAED;;GAEG;AACH,qBAMa,uBAAwB,SAAQ,UAAU;IACzC,QAAQ,SAAM;IACe,YAAY,SAAM;IACb,YAAY,SAAM;gBAEpD,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAKlC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAe9D;AAED,oDAAoD;AACpD,qBACa,iBAAkB,SAAQ,UAAU;IAC/C,SAAS,SAAK;IACd,OAAO,SAAM;IACb,SAAS,SAAQ;gBAEL,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAKjD,YAAY,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAIvC,YAAY,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAInC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAI9D;AAED,wEAAwE;AACxE,qBACa,kBAAmB,SAAQ,UAAU;IAChD,UAAU,EAAE,0BAA0B,CAAa;IACnD,WAAW,SAAM;IACW,aAAa,SAAO;gBAEpC,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAKlC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAK9D;AAED;;;;GAIG;AACH,qBACa,WAAY,SAAQ,UAAU;CAAG;AAE9C;;;;GAIG;AACH,qBAMa,qBAAsB,SAAQ,UAAU;IACvC,QAAQ,SAAM;IACoB,YAAY,SAAM;IACd,UAAU,SAAM;IACvB,SAAS,SAAM;IAChB,QAAQ,SAAM;IACxD,qEAAqE;IACrE,WAAW,SAAM;IACjB,wEAAwE;IACxE,WAAW,SAAM;IACjB,UAAU,OAAc;gBAEZ,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAKlC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAIvB,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CA+B9D;AAED,uDAAuD;AACvD,qBAMa,eAAgB,SAAQ,UAAU;IACjC,QAAQ,SAAM;IACoB,YAAY,SAAM;IAEhE,OAAO,SAAM;IACc,YAAY,EAAE,2BAA2B,CAAU;IAC9E,SAAS,SAAK;IACd,4EAA4E;IAC5E,OAAO,SAAM;gBAED,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAKlC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CA8B9D;AAED,kFAAkF;AAClF,qBAEa,KAAM,SAAQ,UAAU;IACvB,QAAQ,SAAM;IACoB,YAAY,SAAM;IACrC,UAAU,EAAE,UAAU,CAAU;IAE3D,eAAe,EAAE,MAAM,GAAG,IAAI,CAAQ;IACM,KAAK,EAAE,MAAM,GAAG,IAAI,CAAQ;IAC5B,YAAY,EAAE,MAAM,GAAG,IAAI,CAChE;IACqC,cAAc,EAAE,MAAM,GAAG,IAAI,CAClE;IACP,aAAa,SAAQ;IACrB;;;OAGG;IACsC,kBAAkB,EAAE,MAAM,GAAG,IAAI,CACnE;IACP,QAAQ,SAAM;IACd,QAAQ,OAAc;gBAEV,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IAKjD,gBAAgB,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAI3C,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI;IAIvC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAsC9D"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { WorkAnswerRegions, WorkQuestion } from './lesson-work-contracts.js';
|
|
2
|
+
/** Normalize presentation only. Never change answers, layout or verified anchors. */
|
|
3
|
+
export declare function normalizeWorkAnswerRegions(value: unknown, questions: readonly WorkQuestion[], sources: readonly {
|
|
4
|
+
assetId: string;
|
|
5
|
+
sha256?: string;
|
|
6
|
+
pageCount: number;
|
|
7
|
+
}[]): {
|
|
8
|
+
answerRegions?: WorkAnswerRegions;
|
|
9
|
+
answerRegionsOmission?: 'invalid';
|
|
10
|
+
};
|
|
11
|
+
//# sourceMappingURL=work-answer-regions.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"work-answer-regions.d.ts","sourceRoot":"","sources":["../src/work-answer-regions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,iBAAiB,EACjB,YAAY,EACb,MAAM,4BAA4B,CAAC;AACpC,qFAAqF;AACrF,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,SAAS,YAAY,EAAE,EAClC,OAAO,EAAE,SAAS;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,GAC1E;IACD,aAAa,CAAC,EAAE,iBAAiB,CAAC;IAClC,qBAAqB,CAAC,EAAE,SAAS,CAAC;CACnC,CAoEA"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { WorkObservedLayout, WorkQuestion } from './lesson-work-contracts.js';
|
|
2
|
+
/** Copy only bounded observed metadata, dropping the entire layout on any error.
|
|
3
|
+
* This browser-safe helper never changes questions or grants source geometry.
|
|
4
|
+
*/
|
|
5
|
+
export declare function normalizeWorkObservedLayout(value: unknown, questions: readonly WorkQuestion[], sources: readonly {
|
|
6
|
+
assetId: string;
|
|
7
|
+
sha256?: string;
|
|
8
|
+
pageCount: number;
|
|
9
|
+
}[]): {
|
|
10
|
+
layout?: WorkObservedLayout;
|
|
11
|
+
layoutOmission?: 'invalid';
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=work-layout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"work-layout.d.ts","sourceRoot":"","sources":["../src/work-layout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,kBAAkB,EAClB,YAAY,EACb,MAAM,4BAA4B,CAAC;AASpC;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,OAAO,EACd,SAAS,EAAE,SAAS,YAAY,EAAE,EAClC,OAAO,EAAE,SAAS;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAAE,GAC1E;IAAE,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAAC,cAAc,CAAC,EAAE,SAAS,CAAA;CAAE,CAgG7D"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { LessonActivityView } from './lesson-work-contracts.js';
|
|
2
2
|
/** Activity keys identify a printed lesson, potentially spanning multiple pages. */
|
|
3
3
|
export interface WorkbookPhotoIdentification {
|
|
4
4
|
kind: 'lesson' | 'work' | 'cover' | 'reference' | 'uncertain';
|
|
@@ -23,19 +23,19 @@ export interface WorkbookPhotoProposal {
|
|
|
23
23
|
identityEvidence: string[];
|
|
24
24
|
/** A printed lesson/exercise identifier, never the page number alone. */
|
|
25
25
|
lessonEvidence: string;
|
|
26
|
-
/** Optional exact existing
|
|
26
|
+
/** Optional exact existing book course candidate (course id) from authorized discovery. */
|
|
27
27
|
workbookId?: string;
|
|
28
28
|
}
|
|
29
29
|
export interface WorkbookPhotoIntakeView {
|
|
30
30
|
id: string;
|
|
31
31
|
itemId: string;
|
|
32
|
-
/**
|
|
33
|
-
|
|
32
|
+
/** Book course of the exact latest retained book-context resolution, independent of filing. */
|
|
33
|
+
bookCourseId: string | null;
|
|
34
34
|
learnerId: string;
|
|
35
35
|
status: 'pending' | 'resolved' | 'captured';
|
|
36
36
|
identification: WorkbookPhotoIdentification | null;
|
|
37
37
|
proposal: WorkbookPhotoProposal | null;
|
|
38
|
-
activity:
|
|
38
|
+
activity: LessonActivityView | null;
|
|
39
39
|
submissionId: string | null;
|
|
40
40
|
originals: {
|
|
41
41
|
assetId: string;
|
|
@@ -45,9 +45,11 @@ export interface WorkbookPhotoIntakeView {
|
|
|
45
45
|
}[];
|
|
46
46
|
}
|
|
47
47
|
export declare function validateWorkbookPhotoIdentification(value: WorkbookPhotoIdentification): void;
|
|
48
|
-
|
|
48
|
+
/** A family book course offered to photo identification and the guardian picker. */
|
|
49
|
+
export interface PhotoBookCourseView {
|
|
50
|
+
/** Course id; the provider wire field `workbookId` carries this value. */
|
|
49
51
|
id: string;
|
|
50
|
-
|
|
52
|
+
bookKey: string;
|
|
51
53
|
title: string;
|
|
52
54
|
edition: string;
|
|
53
55
|
publisher?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workbook-photo-contracts.d.ts","sourceRoot":"","sources":["../src/workbook-photo-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"workbook-photo-contracts.d.ts","sourceRoot":"","sources":["../src/workbook-photo-contracts.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,oFAAoF;AACpF,MAAM,WAAW,2BAA2B;IAC1C,IAAI,EAAE,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,WAAW,GAAG,WAAW,CAAC;IAC9D,QAAQ,CAAC,EAAE;QACT,WAAW,EAAE,MAAM,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,IAAI,CAAC,EAAE,MAAM,CAAC;KACf,CAAC;IACF,QAAQ,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAClD,SAAS,CAAC,EAAE,OAAO,GAAG,WAAW,GAAG,SAAS,CAAC;IAC9C,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AACD,MAAM,WAAW,qBAAqB;IACpC,cAAc,EAAE,2BAA2B,CAAC;IAC5C,UAAU,EAAE,WAAW,GAAG,WAAW,CAAC;IACtC,iFAAiF;IACjF,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,yEAAyE;IACzE,cAAc,EAAE,MAAM,CAAC;IACvB,2FAA2F;IAC3F,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AACD,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,MAAM,CAAC;IACf,+FAA+F;IAC/F,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;IAC5C,cAAc,EAAE,2BAA2B,GAAG,IAAI,CAAC;IACnD,QAAQ,EAAE,qBAAqB,GAAG,IAAI,CAAC;IACvC,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAAC;IACpC,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,EAAE;QACT,OAAO,EAAE,MAAM,CAAC;QAChB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;QACjB,MAAM,EAAE,MAAM,CAAC;KAChB,EAAE,CAAC;CACL;AACD,wBAAgB,mCAAmC,CACjD,KAAK,EAAE,2BAA2B,GACjC,IAAI,CA0CN;AAED,oFAAoF;AACpF,MAAM,WAAW,mBAAmB;IAClC,0EAA0E;IAC1E,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf"}
|
|
@@ -64,7 +64,7 @@ export declare function processWorkbookPhotoAnalysis(input: Parameters<typeof pr
|
|
|
64
64
|
revision: number;
|
|
65
65
|
};
|
|
66
66
|
intake: import("./workbook-photo-contracts.js").WorkbookPhotoIntakeView;
|
|
67
|
-
capture: import("./
|
|
67
|
+
capture: import("./lesson-work-contracts.js").WorkAttemptView | null;
|
|
68
68
|
assessmentRequired: boolean;
|
|
69
69
|
}>;
|
|
70
70
|
//# sourceMappingURL=workbook-photo-ingestion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workbook-photo-ingestion.d.ts","sourceRoot":"","sources":["../src/workbook-photo-ingestion.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,gBAAgB,EAErB,KAAK,YAAY,EAClB,MAAM,sCAAsC,CAAC;AAG9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"workbook-photo-ingestion.d.ts","sourceRoot":"","sources":["../src/workbook-photo-ingestion.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAChF,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,gBAAgB,EAErB,KAAK,YAAY,EAClB,MAAM,sCAAsC,CAAC;AAG9C,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAE1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAO3D,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,6BAA6B,CAAC;AAGrC,eAAO,MAAM,sBAAsB,0DACsB,CAAC;AAsF1D,+FAA+F;AAC/F,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,SAAS,EAAE,oBAAoB,CAAC;IAChC,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,gBAAgB,EAAE,CAqHrB;AAQD,8EAA8E;AAC9E,wBAAgB,iCAAiC,CAAC,KAAK,EAAE;IACvD,SAAS,EAAE,oBAAoB,CAAC;IAChC,OAAO,EAAE,cAAc,CAAC;CACzB,GAAG,OAAO,yCAAyC,EAAE,sBAAsB,CAAC,cAAc,CAAC,CAwB3F;AACD,mGAAmG;AACnG,wBAAsB,0BAA0B,CAAC,KAAK,EAAE;IACtD,SAAS,EAAE,gBAAgB,CAAC;IAC5B,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAChC,SAAS,EAAE,oBAAoB,CAAC;IAChC,OAAO,EAAE,cAAc,CAAC;IACxB,OAAO,EAAE,YAAY,CAAC;CACvB;;;;;;;;;;GAWA;AACD,yFAAyF;AACzF,wBAAsB,0BAA0B,CAAC,KAAK,EAAE;IACtD,SAAS,EAAE,gBAAgB,CAAC;IAC5B,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAChC,SAAS,EAAE,oBAAoB,CAAC;IAChC,OAAO,EAAE,cAAc,CAAC;IACxB,MAAM,EAAE,MAAM,CAAC;CAChB,4EA2CA;AACD,+FAA+F;AAC/F,wBAAsB,mCAAmC,CAAC,KAAK,EAAE;IAC/D,SAAS,EAAE,gBAAgB,CAAC;IAC5B,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAChC,SAAS,EAAE,oBAAoB,CAAC;IAChC,OAAO,EAAE,cAAc,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD,4EAyFA;AACD,uFAAuF;AACvF,wBAAsB,4BAA4B,CAChD,KAAK,EAAE,UAAU,CAAC,OAAO,wBAAwB,CAAC,CAAC,CAAC,CAAC,GAAG;IACtD,KAAK,EAAE,QAAQ,CAAC,cAAc,CAAC,CAAC;IAChC,SAAS,EAAE,oBAAoB,CAAC;IAChC,OAAO,EAAE,cAAc,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAChD;;;;;;;;;;GA8BF"}
|
|
@@ -47,18 +47,18 @@ export declare class WorkbookPhotoDecision extends SmrtObject {
|
|
|
47
47
|
export declare class WorkbookPhotoDecisionCollection extends SmrtCollection<WorkbookPhotoDecision> {
|
|
48
48
|
static readonly _itemClass: typeof WorkbookPhotoDecision;
|
|
49
49
|
}
|
|
50
|
-
/** Versioned contextual metadata; never edits
|
|
51
|
-
export declare class
|
|
50
|
+
/** Versioned contextual metadata; never edits book identity or learning evidence. */
|
|
51
|
+
export declare class BookContextRevision extends SmrtObject {
|
|
52
52
|
tenantId: string;
|
|
53
53
|
learnerId: string;
|
|
54
54
|
delete(): Promise<void>;
|
|
55
|
-
|
|
55
|
+
courseId: string;
|
|
56
56
|
decisionId: string;
|
|
57
57
|
metadataJson: string;
|
|
58
58
|
constructor(options?: Record<string, unknown>);
|
|
59
59
|
save(options?: SmrtSaveOptions): Promise<this>;
|
|
60
60
|
}
|
|
61
|
-
export declare class
|
|
62
|
-
static readonly _itemClass: typeof
|
|
61
|
+
export declare class BookContextRevisionCollection extends SmrtCollection<BookContextRevision> {
|
|
62
|
+
static readonly _itemClass: typeof BookContextRevision;
|
|
63
63
|
}
|
|
64
64
|
//# sourceMappingURL=workbook-photo-models.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workbook-photo-models.d.ts","sourceRoot":"","sources":["../src/workbook-photo-models.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,cAAc,EACd,UAAU,EACV,KAAK,eAAe,EAErB,MAAM,0BAA0B,CAAC;AA0BlC,wEAAwE;AACxE,qBAMa,mBAAoB,SAAQ,UAAU;IACrC,QAAQ,SAAM;IACiB,SAAS,SAAM;IAC3C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAGV,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;IACjE,MAAM,SAAM;IACZ,WAAW,SAAM;IACjB,aAAa,SAAM;IACJ,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;gBAuBjD,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;CASlD;AACD,qBAAa,6BAA8B,SAAQ,cAAc,CAAC,mBAAmB,CAAC;IACpF,MAAM,CAAC,QAAQ,CAAC,UAAU,6BAAuB;CAClD;AACD,uDAAuD;AACvD,qBAMa,kBAAmB,SAAQ,UAAU;IACpC,QAAQ,SAAM;IACiB,SAAS,SAAM;IAC3C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAGiB,QAAQ,SAAM;IAChB,OAAO,SAAM;IAClE,IAAI,SAAM;IACV,QAAQ,SAAM;IACd,MAAM,SAAM;IACZ,QAAQ,SAAK;gBACD,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IASlC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAsD9D;AACD,qBAAa,4BAA6B,SAAQ,cAAc,CAAC,kBAAkB,CAAC;IAClF,MAAM,CAAC,QAAQ,CAAC,UAAU,4BAAsB;CACjD;AACD,wFAAwF;AACxF,qBAMa,qBAAsB,SAAQ,UAAU;IACvC,QAAQ,SAAM;IACiB,SAAS,SAAM;IAC3C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAGiB,QAAQ,SAAM;IACrE,UAAU,SAAM;IAChB,QAAQ,SAAK;IACb,WAAW,SAAM;IACQ,QAAQ,SAAQ;gBAC7B,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IASlC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAY9D;AACD,qBAAa,+BAAgC,SAAQ,cAAc,CAAC,qBAAqB,CAAC;IACxF,MAAM,CAAC,QAAQ,CAAC,UAAU,+BAAyB;CACpD;AACD,
|
|
1
|
+
{"version":3,"file":"workbook-photo-models.d.ts","sourceRoot":"","sources":["../src/workbook-photo-models.ts"],"names":[],"mappings":"AAAA,OAAO,EAIL,cAAc,EACd,UAAU,EACV,KAAK,eAAe,EAErB,MAAM,0BAA0B,CAAC;AA0BlC,wEAAwE;AACxE,qBAMa,mBAAoB,SAAQ,UAAU;IACrC,QAAQ,SAAM;IACiB,SAAS,SAAM;IAC3C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAGV,cAAc,EAAE,MAAM,GAAG,IAAI,CAAQ;IACjE,MAAM,SAAM;IACZ,WAAW,SAAM;IACjB,aAAa,SAAM;IACJ,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;gBAuBjD,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;CASlD;AACD,qBAAa,6BAA8B,SAAQ,cAAc,CAAC,mBAAmB,CAAC;IACpF,MAAM,CAAC,QAAQ,CAAC,UAAU,6BAAuB;CAClD;AACD,uDAAuD;AACvD,qBAMa,kBAAmB,SAAQ,UAAU;IACpC,QAAQ,SAAM;IACiB,SAAS,SAAM;IAC3C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAGiB,QAAQ,SAAM;IAChB,OAAO,SAAM;IAClE,IAAI,SAAM;IACV,QAAQ,SAAM;IACd,MAAM,SAAM;IACZ,QAAQ,SAAK;gBACD,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IASlC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAsD9D;AACD,qBAAa,4BAA6B,SAAQ,cAAc,CAAC,kBAAkB,CAAC;IAClF,MAAM,CAAC,QAAQ,CAAC,UAAU,4BAAsB;CACjD;AACD,wFAAwF;AACxF,qBAMa,qBAAsB,SAAQ,UAAU;IACvC,QAAQ,SAAM;IACiB,SAAS,SAAM;IAC3C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAGiB,QAAQ,SAAM;IACrE,UAAU,SAAM;IAChB,QAAQ,SAAK;IACb,WAAW,SAAM;IACQ,QAAQ,SAAQ;gBAC7B,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IASlC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAY9D;AACD,qBAAa,+BAAgC,SAAQ,cAAc,CAAC,qBAAqB,CAAC;IACxF,MAAM,CAAC,QAAQ,CAAC,UAAU,+BAAyB;CACpD;AACD,qFAAqF;AACrF,qBAMa,mBAAoB,SAAQ,UAAU;IACrC,QAAQ,SAAM;IACiB,SAAS,SAAM;IAC3C,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAGI,QAAQ,SAAM;IACC,UAAU,SAAM;IAChD,YAAY,SAAQ;gBACjC,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAM;IASlC,IAAI,CAAC,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;CAmB9D;AACD,qBAAa,6BAA8B,SAAQ,cAAc,CAAC,mBAAmB,CAAC;IACpF,MAAM,CAAC,QAAQ,CAAC,UAAU,6BAAuB;CAClD"}
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import type { DatabaseInterface } from '@happyvertical/sql';
|
|
2
2
|
import type { CatalogAuthorizer } from './catalog-service.js';
|
|
3
3
|
import { type LearnerAuthorizer, type LearnerRequest } from './learner-service.js';
|
|
4
|
+
import type { WorkAssessment, WorkAssistance } from './lesson-work-contracts.js';
|
|
5
|
+
import { LessonWorkService } from './lesson-work-service.js';
|
|
4
6
|
import type { SubmissionPage, SubmissionServiceOptions } from './submission-service.js';
|
|
5
|
-
import type
|
|
6
|
-
import { type WorkbookPhotoIdentification, type WorkbookPhotoIntakeView, type WorkbookPhotoProposal, type WorkbookPhotoWorkbookView } from './workbook-photo-contracts.js';
|
|
7
|
-
import { WorkbookService } from './workbook-service.js';
|
|
7
|
+
import { type PhotoBookCourseView, type WorkbookPhotoIdentification, type WorkbookPhotoIntakeView, type WorkbookPhotoProposal } from './workbook-photo-contracts.js';
|
|
8
8
|
/** Internal bridge capability, intentionally absent from package exports. */
|
|
9
9
|
export declare const preservePhotoProposal: unique symbol;
|
|
10
10
|
type PhotoRequest = LearnerRequest & {
|
|
11
11
|
intakeId: string;
|
|
12
12
|
};
|
|
13
13
|
/** Server-owned intake before assignment. All originals survive ingestion scratch expiry. */
|
|
14
|
-
export declare class WorkbookPhotoService extends
|
|
14
|
+
export declare class WorkbookPhotoService extends LessonWorkService {
|
|
15
15
|
private readonly photoOptions;
|
|
16
16
|
constructor(db: DatabaseInterface, authorize: LearnerAuthorizer, authorizeCatalog: CatalogAuthorizer, photoOptions: SubmissionServiceOptions & {
|
|
17
|
-
|
|
17
|
+
workVocabulary?: WorkAssessment['vocabulary'];
|
|
18
18
|
});
|
|
19
19
|
protected createTransactionService(db: DatabaseInterface): this;
|
|
20
20
|
/** Only an exact adopted receipt can bridge its immutable family source scope. */
|
|
@@ -40,8 +40,11 @@ export declare class WorkbookPhotoService extends WorkbookService {
|
|
|
40
40
|
listWorkbookPhotoIntakes(request: LearnerRequest, options?: {
|
|
41
41
|
newestFirst?: boolean;
|
|
42
42
|
}): Promise<WorkbookPhotoIntakeView[]>;
|
|
43
|
-
/**
|
|
44
|
-
|
|
43
|
+
/**
|
|
44
|
+
* The family's book courses (including books known only from a cover), with
|
|
45
|
+
* publisher/ISBN context from this learner's own retained photo decisions.
|
|
46
|
+
*/
|
|
47
|
+
listPhotoBookCourses(request: LearnerRequest): Promise<PhotoBookCourseView[]>;
|
|
45
48
|
readWorkbookPhotoOriginal(request: PhotoRequest & {
|
|
46
49
|
assetId: string;
|
|
47
50
|
}): Promise<{
|
|
@@ -66,13 +69,13 @@ export declare class WorkbookPhotoService extends WorkbookService {
|
|
|
66
69
|
limit?: number;
|
|
67
70
|
cursor?: string;
|
|
68
71
|
revisionId?: string;
|
|
69
|
-
}): Promise<import("./
|
|
72
|
+
}): Promise<import("./lesson-work-contracts.js").WorkTimeline>;
|
|
70
73
|
captureWorkbookPhotoIntake(request: PhotoRequest & {
|
|
71
74
|
requestKey: string;
|
|
72
|
-
assistance?:
|
|
75
|
+
assistance?: WorkAssistance;
|
|
73
76
|
previousSubmissionId?: string;
|
|
74
77
|
completedWork?: boolean;
|
|
75
|
-
}): Promise<import("./
|
|
78
|
+
}): Promise<import("./lesson-work-contracts.js").WorkAttemptView>;
|
|
76
79
|
}
|
|
77
80
|
export {};
|
|
78
81
|
//# sourceMappingURL=workbook-photo-service.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workbook-photo-service.d.ts","sourceRoot":"","sources":["../src/workbook-photo-service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"workbook-photo-service.d.ts","sourceRoot":"","sources":["../src/workbook-photo-service.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@happyvertical/smrt-education",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.58.0",
|
|
4
4
|
"smrtJsdoc": "strict",
|
|
5
5
|
"description": "Tenant-aware learning catalog models and authorized catalog access for SMRT",
|
|
6
6
|
"type": "module",
|
|
@@ -25,18 +25,18 @@
|
|
|
25
25
|
}
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@happyvertical/smrt-assets": "0.
|
|
29
|
-
"@happyvertical/smrt-core": "0.
|
|
30
|
-
"@happyvertical/smrt-profiles": "0.
|
|
31
|
-
"@happyvertical/smrt-tenancy": "0.
|
|
32
|
-
"@happyvertical/smrt-users": "0.
|
|
28
|
+
"@happyvertical/smrt-assets": "0.58.0",
|
|
29
|
+
"@happyvertical/smrt-core": "0.58.0",
|
|
30
|
+
"@happyvertical/smrt-profiles": "0.58.0",
|
|
31
|
+
"@happyvertical/smrt-tenancy": "0.58.0",
|
|
32
|
+
"@happyvertical/smrt-users": "0.58.0",
|
|
33
33
|
"@happyvertical/files": "^0.111.3",
|
|
34
34
|
"@happyvertical/sql": "^0.111.3",
|
|
35
35
|
"pdf-lib": "1.17.1",
|
|
36
|
-
"@happyvertical/smrt-ingestion": "0.
|
|
36
|
+
"@happyvertical/smrt-ingestion": "0.58.0"
|
|
37
37
|
},
|
|
38
38
|
"devDependencies": {
|
|
39
|
-
"@happyvertical/smrt-vitest": "0.
|
|
39
|
+
"@happyvertical/smrt-vitest": "0.58.0",
|
|
40
40
|
"@types/node": "24.13.6",
|
|
41
41
|
"typescript": "6.0.3",
|
|
42
42
|
"vite": "8.1.6",
|