@speakableio/core 0.1.103 → 0.1.105

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,405 @@
1
+ import { V as VerificationCardStatus } from './card.constants-DhKFipX3.js';
2
+ import { F as FirebaseInstance, a as FirestoreHelpers, C as CallableFunction, A as AssignmentWithId, b as CustomTimestamp, c as ActivityPageType, P as PageActivity, d as PageActivityWithId } from './assignment.model-DLMWAp0Y.js';
3
+ import { A as AssignmentAnalyticsType } from './assignment.constants-BIKM6fYi.js';
4
+ import '@react-native-firebase/firestore';
5
+ import 'firebase/firestore';
6
+
7
+ type FsClientParams = Omit<Parameters<typeof createFsClientBase>[0], 'helpers'>;
8
+ declare function createFsClientBase({ db, helpers, httpsCallable, logEvent, }: {
9
+ db: FirebaseInstance;
10
+ helpers: FirestoreHelpers;
11
+ httpsCallable: (name: string) => CallableFunction;
12
+ logEvent: (name: string, data: any) => void;
13
+ }): {
14
+ assignmentRepo: {
15
+ getAssignment: (params: {
16
+ assignmentId: string;
17
+ currentUserId: string;
18
+ analyticType?: AssignmentAnalyticsType;
19
+ studentId?: string;
20
+ }) => Promise<AssignmentWithId | {
21
+ scores: any;
22
+ id: string;
23
+ isAvailable: boolean;
24
+ name: string;
25
+ description: string;
26
+ scheduledTime?: string | null;
27
+ dueTime?: {
28
+ hours: number;
29
+ minutes: number;
30
+ nanos: number;
31
+ };
32
+ speakableio: boolean;
33
+ owners: string[];
34
+ image: {
35
+ path: string | null;
36
+ url: string;
37
+ };
38
+ dueDate: {
39
+ day: number;
40
+ month: number;
41
+ year: number;
42
+ };
43
+ teacherName: string;
44
+ courseWorkId: string | null;
45
+ dueDateTimestamp: CustomTimestamp;
46
+ scheduledTimeTimestamp: number;
47
+ active: boolean;
48
+ voice: string | null;
49
+ setId: string;
50
+ dateMade: {
51
+ seconds: number;
52
+ nanoseconds: number;
53
+ };
54
+ maxPoints: number;
55
+ courseId: string;
56
+ isAssessment: boolean;
57
+ ltiDeeplink?: string;
58
+ content?: string[];
59
+ weights?: Record<string, number>;
60
+ language?: string;
61
+ types?: { [key in ActivityPageType]?: number; };
62
+ aiEnabled?: boolean;
63
+ chat_experience?: boolean;
64
+ } | null>;
65
+ attachScoresAssignment: (args_0: {
66
+ assignments: AssignmentWithId[];
67
+ analyticType: AssignmentAnalyticsType;
68
+ studentId?: string;
69
+ currentUserId: string;
70
+ }) => Promise<{
71
+ scores: any;
72
+ id: string;
73
+ isAvailable: boolean;
74
+ name: string;
75
+ description: string;
76
+ scheduledTime?: string | null;
77
+ dueTime?: {
78
+ hours: number;
79
+ minutes: number;
80
+ nanos: number;
81
+ };
82
+ speakableio: boolean;
83
+ owners: string[];
84
+ image: {
85
+ path: string | null;
86
+ url: string;
87
+ };
88
+ dueDate: {
89
+ day: number;
90
+ month: number;
91
+ year: number;
92
+ };
93
+ teacherName: string;
94
+ courseWorkId: string | null;
95
+ dueDateTimestamp: CustomTimestamp;
96
+ scheduledTimeTimestamp: number;
97
+ active: boolean;
98
+ voice: string | null;
99
+ setId: string;
100
+ dateMade: {
101
+ seconds: number;
102
+ nanoseconds: number;
103
+ };
104
+ maxPoints: number;
105
+ courseId: string;
106
+ isAssessment: boolean;
107
+ ltiDeeplink?: string;
108
+ content?: string[];
109
+ weights?: Record<string, number>;
110
+ language?: string;
111
+ types?: { [key in ActivityPageType]?: number; };
112
+ aiEnabled?: boolean;
113
+ chat_experience?: boolean;
114
+ }[]>;
115
+ getAssignmentScores: (args_0: {
116
+ assignmentId: string;
117
+ currentUserId: string;
118
+ analyticType?: AssignmentAnalyticsType;
119
+ studentId?: string;
120
+ }) => Promise<{
121
+ scores: unknown;
122
+ id: string;
123
+ } | undefined>;
124
+ getAllAssignments: () => Promise<(AssignmentWithId & {
125
+ id: string;
126
+ })[]>;
127
+ };
128
+ cardRepo: {
129
+ createCard: (args_0: {
130
+ data: Partial<PageActivity>;
131
+ }) => Promise<{
132
+ id: string;
133
+ } & Partial<PageActivity>>;
134
+ createCards: (args_0: {
135
+ cards: PageActivity[];
136
+ }) => Promise<{
137
+ id: string;
138
+ owners: string[];
139
+ checked?: boolean;
140
+ completed?: boolean;
141
+ media_area_id?: string | null;
142
+ media_area_layout?: "left" | "right" | null;
143
+ score?: number;
144
+ verificationStatus?: VerificationCardStatus;
145
+ native_text?: string;
146
+ repeat?: number;
147
+ language?: string | null;
148
+ image?: {
149
+ path?: string | null;
150
+ url?: string;
151
+ };
152
+ audio?: {
153
+ path?: string | null;
154
+ url?: string;
155
+ } | null;
156
+ notes?: string;
157
+ difficulty?: string;
158
+ default_language?: string;
159
+ target_text?: string;
160
+ type: ActivityPageType;
161
+ grading_criteria?: string;
162
+ scoring_type?: string;
163
+ grading_method?: "simple" | "rubric" | "manual" | "standards_based";
164
+ feedback_types?: string[];
165
+ rubricId?: string;
166
+ prompt?: string;
167
+ title?: string;
168
+ passing_score?: number;
169
+ maxCharacters?: number;
170
+ answer?: string[];
171
+ choices?: {
172
+ value: string;
173
+ option: string;
174
+ }[];
175
+ MCQType?: string;
176
+ multipleAttemptsAllowed?: boolean;
177
+ allowRetries?: boolean;
178
+ question?: string;
179
+ respondTime?: number;
180
+ hidePrompt?: boolean;
181
+ videoUrl?: string;
182
+ link?: string;
183
+ text?: string;
184
+ isListenAloud?: boolean;
185
+ embedCode?: string;
186
+ attempt?: number;
187
+ correct?: number;
188
+ autoGrade?: boolean;
189
+ points?: number;
190
+ shuffle?: boolean;
191
+ translation?: string;
192
+ includeAIContext?: boolean;
193
+ media_area_context_ref?: string | null;
194
+ standardId?: string;
195
+ target_proficiency_level?: string;
196
+ allowTTS?: boolean;
197
+ feedback_language?: string | null;
198
+ correct_answer?: string | null;
199
+ limit_attempts?: boolean;
200
+ max_attempts?: number;
201
+ rich_text?: string;
202
+ }[]>;
203
+ getCard: (params: {
204
+ cardId: string;
205
+ }) => Promise<PageActivityWithId | null>;
206
+ };
207
+ };
208
+
209
+ declare const createFsClientWeb: ({ db, httpsCallable, logEvent }: FsClientParams) => {
210
+ assignmentRepo: {
211
+ getAssignment: (params: {
212
+ assignmentId: string;
213
+ currentUserId: string;
214
+ analyticType?: AssignmentAnalyticsType;
215
+ studentId?: string;
216
+ }) => Promise<AssignmentWithId | {
217
+ scores: any;
218
+ id: string;
219
+ isAvailable: boolean;
220
+ name: string;
221
+ description: string;
222
+ scheduledTime?: string | null;
223
+ dueTime?: {
224
+ hours: number;
225
+ minutes: number;
226
+ nanos: number;
227
+ };
228
+ speakableio: boolean;
229
+ owners: string[];
230
+ image: {
231
+ path: string | null;
232
+ url: string;
233
+ };
234
+ dueDate: {
235
+ day: number;
236
+ month: number;
237
+ year: number;
238
+ };
239
+ teacherName: string;
240
+ courseWorkId: string | null;
241
+ dueDateTimestamp: CustomTimestamp;
242
+ scheduledTimeTimestamp: number;
243
+ active: boolean;
244
+ voice: string | null;
245
+ setId: string;
246
+ dateMade: {
247
+ seconds: number;
248
+ nanoseconds: number;
249
+ };
250
+ maxPoints: number;
251
+ courseId: string;
252
+ isAssessment: boolean;
253
+ ltiDeeplink?: string;
254
+ content?: string[];
255
+ weights?: Record<string, number>;
256
+ language?: string;
257
+ types?: { [key in ActivityPageType]?: number; };
258
+ aiEnabled?: boolean;
259
+ chat_experience?: boolean;
260
+ } | null>;
261
+ attachScoresAssignment: (args_0: {
262
+ assignments: AssignmentWithId[];
263
+ analyticType: AssignmentAnalyticsType;
264
+ studentId?: string;
265
+ currentUserId: string;
266
+ }) => Promise<{
267
+ scores: any;
268
+ id: string;
269
+ isAvailable: boolean;
270
+ name: string;
271
+ description: string;
272
+ scheduledTime?: string | null;
273
+ dueTime?: {
274
+ hours: number;
275
+ minutes: number;
276
+ nanos: number;
277
+ };
278
+ speakableio: boolean;
279
+ owners: string[];
280
+ image: {
281
+ path: string | null;
282
+ url: string;
283
+ };
284
+ dueDate: {
285
+ day: number;
286
+ month: number;
287
+ year: number;
288
+ };
289
+ teacherName: string;
290
+ courseWorkId: string | null;
291
+ dueDateTimestamp: CustomTimestamp;
292
+ scheduledTimeTimestamp: number;
293
+ active: boolean;
294
+ voice: string | null;
295
+ setId: string;
296
+ dateMade: {
297
+ seconds: number;
298
+ nanoseconds: number;
299
+ };
300
+ maxPoints: number;
301
+ courseId: string;
302
+ isAssessment: boolean;
303
+ ltiDeeplink?: string;
304
+ content?: string[];
305
+ weights?: Record<string, number>;
306
+ language?: string;
307
+ types?: { [key in ActivityPageType]?: number; };
308
+ aiEnabled?: boolean;
309
+ chat_experience?: boolean;
310
+ }[]>;
311
+ getAssignmentScores: (args_0: {
312
+ assignmentId: string;
313
+ currentUserId: string;
314
+ analyticType?: AssignmentAnalyticsType;
315
+ studentId?: string;
316
+ }) => Promise<{
317
+ scores: unknown;
318
+ id: string;
319
+ } | undefined>;
320
+ getAllAssignments: () => Promise<(AssignmentWithId & {
321
+ id: string;
322
+ })[]>;
323
+ };
324
+ cardRepo: {
325
+ createCard: (args_0: {
326
+ data: Partial<PageActivity>;
327
+ }) => Promise<{
328
+ id: string;
329
+ } & Partial<PageActivity>>;
330
+ createCards: (args_0: {
331
+ cards: PageActivity[];
332
+ }) => Promise<{
333
+ id: string;
334
+ owners: string[];
335
+ checked?: boolean;
336
+ completed?: boolean;
337
+ media_area_id?: string | null;
338
+ media_area_layout?: "left" | "right" | null;
339
+ score?: number;
340
+ verificationStatus?: VerificationCardStatus;
341
+ native_text?: string;
342
+ repeat?: number;
343
+ language?: string | null;
344
+ image?: {
345
+ path?: string | null;
346
+ url?: string;
347
+ };
348
+ audio?: {
349
+ path?: string | null;
350
+ url?: string;
351
+ } | null;
352
+ notes?: string;
353
+ difficulty?: string;
354
+ default_language?: string;
355
+ target_text?: string;
356
+ type: ActivityPageType;
357
+ grading_criteria?: string;
358
+ scoring_type?: string;
359
+ grading_method?: "simple" | "rubric" | "manual" | "standards_based";
360
+ feedback_types?: string[];
361
+ rubricId?: string;
362
+ prompt?: string;
363
+ title?: string;
364
+ passing_score?: number;
365
+ maxCharacters?: number;
366
+ answer?: string[];
367
+ choices?: {
368
+ value: string;
369
+ option: string;
370
+ }[];
371
+ MCQType?: string;
372
+ multipleAttemptsAllowed?: boolean;
373
+ allowRetries?: boolean;
374
+ question?: string;
375
+ respondTime?: number;
376
+ hidePrompt?: boolean;
377
+ videoUrl?: string;
378
+ link?: string;
379
+ text?: string;
380
+ isListenAloud?: boolean;
381
+ embedCode?: string;
382
+ attempt?: number;
383
+ correct?: number;
384
+ autoGrade?: boolean;
385
+ points?: number;
386
+ shuffle?: boolean;
387
+ translation?: string;
388
+ includeAIContext?: boolean;
389
+ media_area_context_ref?: string | null;
390
+ standardId?: string;
391
+ target_proficiency_level?: string;
392
+ allowTTS?: boolean;
393
+ feedback_language?: string | null;
394
+ correct_answer?: string | null;
395
+ limit_attempts?: boolean;
396
+ max_attempts?: number;
397
+ rich_text?: string;
398
+ }[]>;
399
+ getCard: (params: {
400
+ cardId: string;
401
+ }) => Promise<PageActivityWithId | null>;
402
+ };
403
+ };
404
+
405
+ export { createFsClientWeb as createFsClient };
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/entry-points/models.ts
21
+ var models_exports = {};
22
+ __export(models_exports, {
23
+ ActivityPageType: () => ActivityPageType,
24
+ MULTIPLE_CHOICE_PAGE_ACTIVITY_TYPES: () => MULTIPLE_CHOICE_PAGE_ACTIVITY_TYPES,
25
+ REPEAT_PAGE_ACTIVITY_TYPES: () => REPEAT_PAGE_ACTIVITY_TYPES,
26
+ RESPOND_AUDIO_PAGE_ACTIVITY_TYPES: () => RESPOND_AUDIO_PAGE_ACTIVITY_TYPES,
27
+ RESPOND_PAGE_ACTIVITY_TYPES: () => RESPOND_PAGE_ACTIVITY_TYPES,
28
+ RESPOND_WRITE_PAGE_ACTIVITY_TYPES: () => RESPOND_WRITE_PAGE_ACTIVITY_TYPES
29
+ });
30
+ module.exports = __toCommonJS(models_exports);
31
+
32
+ // src/domains/cards/card.model.ts
33
+ var ActivityPageType = /* @__PURE__ */ ((ActivityPageType2) => {
34
+ ActivityPageType2["READ_REPEAT"] = "READ_REPEAT";
35
+ ActivityPageType2["VIDEO"] = "VIDEO";
36
+ ActivityPageType2["TEXT"] = "TEXT";
37
+ ActivityPageType2["READ_RESPOND"] = "READ_RESPOND";
38
+ ActivityPageType2["FREE_RESPONSE"] = "FREE_RESPONSE";
39
+ ActivityPageType2["REPEAT"] = "REPEAT";
40
+ ActivityPageType2["RESPOND"] = "RESPOND";
41
+ ActivityPageType2["RESPOND_WRITE"] = "RESPOND_WRITE";
42
+ ActivityPageType2["TEXT_TO_SPEECH"] = "TEXT_TO_SPEECH";
43
+ ActivityPageType2["MULTIPLE_CHOICE"] = "MULTIPLE_CHOICE";
44
+ ActivityPageType2["PODCAST"] = "PODCAST";
45
+ ActivityPageType2["MEDIA_PAGE"] = "MEDIA_PAGE";
46
+ ActivityPageType2["WRITE"] = "WRITE";
47
+ ActivityPageType2["SHORT_ANSWER"] = "SHORT_ANSWER";
48
+ ActivityPageType2["SHORT_STORY"] = "SHORT_STORY";
49
+ ActivityPageType2["SPEAK"] = "SPEAK";
50
+ ActivityPageType2["CONVERSATION"] = "CONVERSATION";
51
+ ActivityPageType2["CONVERSATION_WRITE"] = "CONVERSATION_WRITE";
52
+ ActivityPageType2["DIALOGUE"] = "DIALOGUE";
53
+ ActivityPageType2["INSTRUCTION"] = "INSTRUCTION";
54
+ ActivityPageType2["LISTEN"] = "LISTEN";
55
+ ActivityPageType2["READ"] = "READ";
56
+ ActivityPageType2["ANSWER"] = "ANSWER";
57
+ return ActivityPageType2;
58
+ })(ActivityPageType || {});
59
+ var RESPOND_PAGE_ACTIVITY_TYPES = [
60
+ "READ_RESPOND" /* READ_RESPOND */,
61
+ "RESPOND" /* RESPOND */,
62
+ "RESPOND_WRITE" /* RESPOND_WRITE */,
63
+ "FREE_RESPONSE" /* FREE_RESPONSE */
64
+ ];
65
+ var MULTIPLE_CHOICE_PAGE_ACTIVITY_TYPES = ["MULTIPLE_CHOICE" /* MULTIPLE_CHOICE */];
66
+ var REPEAT_PAGE_ACTIVITY_TYPES = ["READ_REPEAT" /* READ_REPEAT */, "REPEAT" /* REPEAT */];
67
+ var RESPOND_WRITE_PAGE_ACTIVITY_TYPES = [
68
+ "RESPOND_WRITE" /* RESPOND_WRITE */,
69
+ "FREE_RESPONSE" /* FREE_RESPONSE */
70
+ ];
71
+ var RESPOND_AUDIO_PAGE_ACTIVITY_TYPES = [
72
+ "RESPOND" /* RESPOND */,
73
+ "READ_RESPOND" /* READ_RESPOND */
74
+ ];
75
+ //# sourceMappingURL=models.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/entry-points/models.ts","../src/domains/cards/card.model.ts"],"sourcesContent":["/* eslint-disable padding-line-between-statements */\n\n// Assignment models\nexport * from '../domains/assignment/assignment.model'\n\n// Page models\nexport * from '../domains/cards/card.model'\n\n// Set models\nexport * from '../domains/sets/set.model'\n","import { type VerificationCardStatus } from './card.constants'\n\n/* eslint-disable @typescript-eslint/naming-convention */\nexport interface PageActivityWithId extends PageActivity {\n id: string\n}\n\nexport interface PageActivity {\n owners: string[]\n checked?: boolean\n completed?: boolean\n media_area_id?: string | null\n media_area_layout?: 'left' | 'right' | null\n score?: number\n verificationStatus?: VerificationCardStatus\n native_text?: string\n repeat?: number\n language?: string | null\n image?: {\n path?: string | null\n url?: string\n }\n audio?: {\n path?: string | null\n url?: string\n } | null\n notes?: string\n difficulty?: string\n default_language?: string\n target_text?: string\n type: ActivityPageType\n grading_criteria?: string\n scoring_type?: string\n grading_method?: 'simple' | 'rubric' | 'manual' | 'standards_based'\n feedback_types?: string[]\n rubricId?: string\n prompt?: string\n title?: string\n passing_score?: number\n maxCharacters?: number\n answer?: string[]\n choices?: {\n value: string\n option: string\n }[]\n MCQType?: string\n multipleAttemptsAllowed?: boolean\n allowRetries?: boolean\n question?: string\n respondTime?: number\n hidePrompt?: boolean\n videoUrl?: string\n link?: string\n text?: string\n isListenAloud?: boolean\n embedCode?: string\n attempt?: number\n correct?: number\n autoGrade?: boolean\n points?: number\n shuffle?: boolean\n translation?: string\n includeAIContext?: boolean\n media_area_context_ref?: string | null\n standardId?: string\n target_proficiency_level?: string\n allowTTS?: boolean\n feedback_language?: string | null\n correct_answer?: string | null\n limit_attempts?: boolean\n max_attempts?: number\n rich_text?: string\n}\n\nexport enum ActivityPageType {\n // DEFAULT = 'READ_REPEAT',\n READ_REPEAT = 'READ_REPEAT',\n VIDEO = 'VIDEO',\n TEXT = 'TEXT',\n READ_RESPOND = 'READ_RESPOND',\n FREE_RESPONSE = 'FREE_RESPONSE',\n REPEAT = 'REPEAT',\n RESPOND = 'RESPOND',\n RESPOND_WRITE = 'RESPOND_WRITE',\n TEXT_TO_SPEECH = 'TEXT_TO_SPEECH',\n MULTIPLE_CHOICE = 'MULTIPLE_CHOICE',\n PODCAST = 'PODCAST',\n MEDIA_PAGE = 'MEDIA_PAGE',\n WRITE = 'WRITE',\n SHORT_ANSWER = 'SHORT_ANSWER',\n SHORT_STORY = 'SHORT_STORY',\n SPEAK = 'SPEAK',\n CONVERSATION = 'CONVERSATION',\n CONVERSATION_WRITE = 'CONVERSATION_WRITE',\n DIALOGUE = 'DIALOGUE',\n INSTRUCTION = 'INSTRUCTION',\n LISTEN = 'LISTEN',\n READ = 'READ',\n ANSWER = 'ANSWER',\n}\n\nexport const RESPOND_PAGE_ACTIVITY_TYPES = [\n ActivityPageType.READ_RESPOND,\n ActivityPageType.RESPOND,\n ActivityPageType.RESPOND_WRITE,\n ActivityPageType.FREE_RESPONSE,\n]\n\nexport const MULTIPLE_CHOICE_PAGE_ACTIVITY_TYPES = [ActivityPageType.MULTIPLE_CHOICE]\n\nexport const REPEAT_PAGE_ACTIVITY_TYPES = [ActivityPageType.READ_REPEAT, ActivityPageType.REPEAT]\n\nexport const RESPOND_WRITE_PAGE_ACTIVITY_TYPES = [\n ActivityPageType.RESPOND_WRITE,\n ActivityPageType.FREE_RESPONSE,\n]\n\nexport const RESPOND_AUDIO_PAGE_ACTIVITY_TYPES = [\n ActivityPageType.RESPOND,\n ActivityPageType.READ_RESPOND,\n]\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;AC0EO,IAAK,mBAAL,kBAAKA,sBAAL;AAEL,EAAAA,kBAAA,iBAAc;AACd,EAAAA,kBAAA,WAAQ;AACR,EAAAA,kBAAA,UAAO;AACP,EAAAA,kBAAA,kBAAe;AACf,EAAAA,kBAAA,mBAAgB;AAChB,EAAAA,kBAAA,YAAS;AACT,EAAAA,kBAAA,aAAU;AACV,EAAAA,kBAAA,mBAAgB;AAChB,EAAAA,kBAAA,oBAAiB;AACjB,EAAAA,kBAAA,qBAAkB;AAClB,EAAAA,kBAAA,aAAU;AACV,EAAAA,kBAAA,gBAAa;AACb,EAAAA,kBAAA,WAAQ;AACR,EAAAA,kBAAA,kBAAe;AACf,EAAAA,kBAAA,iBAAc;AACd,EAAAA,kBAAA,WAAQ;AACR,EAAAA,kBAAA,kBAAe;AACf,EAAAA,kBAAA,wBAAqB;AACrB,EAAAA,kBAAA,cAAW;AACX,EAAAA,kBAAA,iBAAc;AACd,EAAAA,kBAAA,YAAS;AACT,EAAAA,kBAAA,UAAO;AACP,EAAAA,kBAAA,YAAS;AAxBC,SAAAA;AAAA,GAAA;AA2BL,IAAM,8BAA8B;AAAA,EACzC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AAEO,IAAM,sCAAsC,CAAC,uCAAgC;AAE7E,IAAM,6BAA6B,CAAC,iCAA8B,qBAAuB;AAEzF,IAAM,oCAAoC;AAAA,EAC/C;AAAA,EACA;AACF;AAEO,IAAM,oCAAoC;AAAA,EAC/C;AAAA,EACA;AACF;","names":["ActivityPageType"]}
@@ -0,0 +1,56 @@
1
+ import { c as ActivityPageType } from './assignment.model-DLMWAp0Y.js';
2
+ export { g as Assignment, A as AssignmentWithId, M as MULTIPLE_CHOICE_PAGE_ACTIVITY_TYPES, P as PageActivity, d as PageActivityWithId, f as PageScore, h as REPEAT_PAGE_ACTIVITY_TYPES, j as RESPOND_AUDIO_PAGE_ACTIVITY_TYPES, R as RESPOND_PAGE_ACTIVITY_TYPES, i as RESPOND_WRITE_PAGE_ACTIVITY_TYPES, e as Score, S as ScoreWithId } from './assignment.model-DLMWAp0Y.js';
3
+ import { FieldValue } from 'firebase/firestore';
4
+ import '@react-native-firebase/firestore';
5
+ import './card.constants-DhKFipX3.js';
6
+
7
+ interface SetWithId extends Set {
8
+ id: string;
9
+ }
10
+ interface Set {
11
+ id: string;
12
+ language: string;
13
+ ownerName: string;
14
+ weights: Record<string, number>;
15
+ repeat?: number;
16
+ voice?: string;
17
+ averagePhraseLength?: number;
18
+ passing_score?: number;
19
+ organizations?: string[];
20
+ description: string;
21
+ image: {
22
+ url: string;
23
+ path: null | string;
24
+ };
25
+ additionalLanguages?: string[];
26
+ owners: string[];
27
+ name: string;
28
+ content: string[];
29
+ types: {
30
+ [key in ActivityPageType]?: number;
31
+ };
32
+ defaultLanguage: string;
33
+ createdAt: FieldValue;
34
+ public: boolean;
35
+ defaultRubricId?: string;
36
+ difficulty?: string;
37
+ end_screen?: {
38
+ variant: 0 | 1 | 2;
39
+ title: string;
40
+ description: string;
41
+ };
42
+ mcAllowRetries?: boolean;
43
+ welcome_screen?: {
44
+ variant: 'colored' | 'blank';
45
+ };
46
+ poorFunctionalityWarning?: boolean;
47
+ status?: 'draft' | 'published';
48
+ subjects?: any[];
49
+ respondAllowRetries?: boolean;
50
+ respondAllowTTS?: boolean;
51
+ feedbackLanguage?: string;
52
+ respondMaxCharacters?: number;
53
+ respondMaxTime?: number;
54
+ }
55
+
56
+ export { ActivityPageType, type Set, type SetWithId };
@@ -0,0 +1,21 @@
1
+ declare const SPEAKABLE_NOTIFICATIONS: {
2
+ readonly NEW_ASSIGNMENT: "new_assignment";
3
+ readonly ASSESSMENT_SUBMITTED: "assessment_submitted";
4
+ readonly ASSESSMENT_SCORED: "assessment_scored";
5
+ readonly NEW_COMMENT: "NEW_COMMENT";
6
+ };
7
+ type SpeakableNotificationType = (typeof SPEAKABLE_NOTIFICATIONS)[keyof typeof SPEAKABLE_NOTIFICATIONS];
8
+ declare const SpeakableNotificationTypes: {
9
+ NEW_ASSIGNMENT: string;
10
+ FEEDBACK_FROM_TEACHER: string;
11
+ MESSAGE_FROM_STUDENT: string;
12
+ PHRASE_MARKED_CORRECT: string;
13
+ STUDENT_PROGRESS: string;
14
+ PLAYLIST_FOLLOWERS: string;
15
+ PLAYLIST_PLAYS: string;
16
+ ASSESSMENT_SUBMITTED: string;
17
+ ASSESSMENT_SCORED: string;
18
+ NEW_COMMENT: string;
19
+ };
20
+
21
+ export { type SpeakableNotificationType as S, SPEAKABLE_NOTIFICATIONS as a, SpeakableNotificationTypes as b };
@@ -0,0 +1,21 @@
1
+ declare const SPEAKABLE_NOTIFICATIONS: {
2
+ readonly NEW_ASSIGNMENT: "new_assignment";
3
+ readonly ASSESSMENT_SUBMITTED: "assessment_submitted";
4
+ readonly ASSESSMENT_SCORED: "assessment_scored";
5
+ readonly NEW_COMMENT: "NEW_COMMENT";
6
+ };
7
+ type SpeakableNotificationType = (typeof SPEAKABLE_NOTIFICATIONS)[keyof typeof SPEAKABLE_NOTIFICATIONS];
8
+ declare const SpeakableNotificationTypes: {
9
+ NEW_ASSIGNMENT: string;
10
+ FEEDBACK_FROM_TEACHER: string;
11
+ MESSAGE_FROM_STUDENT: string;
12
+ PHRASE_MARKED_CORRECT: string;
13
+ STUDENT_PROGRESS: string;
14
+ PLAYLIST_FOLLOWERS: string;
15
+ PLAYLIST_PLAYS: string;
16
+ ASSESSMENT_SUBMITTED: string;
17
+ ASSESSMENT_SCORED: string;
18
+ NEW_COMMENT: string;
19
+ };
20
+
21
+ export { type SpeakableNotificationType as S, SPEAKABLE_NOTIFICATIONS as a, SpeakableNotificationTypes as b };