@academy-sdk/sdk 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/dist/components/atoms/Avatar.d.ts +9 -0
- package/dist/components/atoms/Avatar.d.ts.map +1 -0
- package/dist/components/atoms/Badge.d.ts +10 -0
- package/dist/components/atoms/Badge.d.ts.map +1 -0
- package/dist/components/atoms/Button.d.ts +11 -0
- package/dist/components/atoms/Button.d.ts.map +1 -0
- package/dist/components/atoms/Card.d.ts +11 -0
- package/dist/components/atoms/Card.d.ts.map +1 -0
- package/dist/components/atoms/Input.d.ts +7 -0
- package/dist/components/atoms/Input.d.ts.map +1 -0
- package/dist/components/atoms/ProgressBar.d.ts +11 -0
- package/dist/components/atoms/ProgressBar.d.ts.map +1 -0
- package/dist/components/atoms/Tabs.d.ts +16 -0
- package/dist/components/atoms/Tabs.d.ts.map +1 -0
- package/dist/components/atoms/index.d.ts +11 -0
- package/dist/components/atoms/index.d.ts.map +1 -0
- package/dist/components/index.d.ts +5 -0
- package/dist/components/index.d.ts.map +1 -0
- package/dist/components/molecules/CourseCard.d.ts +25 -0
- package/dist/components/molecules/CourseCard.d.ts.map +1 -0
- package/dist/components/molecules/EmptyState.d.ts +10 -0
- package/dist/components/molecules/EmptyState.d.ts.map +1 -0
- package/dist/components/molecules/LoadingSpinner.d.ts +7 -0
- package/dist/components/molecules/LoadingSpinner.d.ts.map +1 -0
- package/dist/components/molecules/PageHeader.d.ts +8 -0
- package/dist/components/molecules/PageHeader.d.ts.map +1 -0
- package/dist/components/molecules/Pagination.d.ts +13 -0
- package/dist/components/molecules/Pagination.d.ts.map +1 -0
- package/dist/components/molecules/SearchInput.d.ts +8 -0
- package/dist/components/molecules/SearchInput.d.ts.map +1 -0
- package/dist/components/molecules/index.d.ts +13 -0
- package/dist/components/molecules/index.d.ts.map +1 -0
- package/dist/components/organisms/CourseSidebar.d.ts +37 -0
- package/dist/components/organisms/CourseSidebar.d.ts.map +1 -0
- package/dist/components/organisms/LearnerNavbar.d.ts +8 -0
- package/dist/components/organisms/LearnerNavbar.d.ts.map +1 -0
- package/dist/components/organisms/LearnerSidebar.d.ts +16 -0
- package/dist/components/organisms/LearnerSidebar.d.ts.map +1 -0
- package/dist/components/organisms/LessonBookmarks.d.ts +8 -0
- package/dist/components/organisms/LessonBookmarks.d.ts.map +1 -0
- package/dist/components/organisms/LessonNotes.d.ts +8 -0
- package/dist/components/organisms/LessonNotes.d.ts.map +1 -0
- package/dist/components/organisms/index.d.ts +11 -0
- package/dist/components/organisms/index.d.ts.map +1 -0
- package/dist/components/pages/BundleDetailPage.d.ts +3 -0
- package/dist/components/pages/BundleDetailPage.d.ts.map +1 -0
- package/dist/components/pages/CatalogBundlesPage.d.ts +3 -0
- package/dist/components/pages/CatalogBundlesPage.d.ts.map +1 -0
- package/dist/components/pages/CatalogCoursesPage.d.ts +3 -0
- package/dist/components/pages/CatalogCoursesPage.d.ts.map +1 -0
- package/dist/components/pages/CourseDetailPage.d.ts +3 -0
- package/dist/components/pages/CourseDetailPage.d.ts.map +1 -0
- package/dist/components/pages/CoursePlayerPage.d.ts +8 -0
- package/dist/components/pages/CoursePlayerPage.d.ts.map +1 -0
- package/dist/components/pages/CreatorProfilePage.d.ts +3 -0
- package/dist/components/pages/CreatorProfilePage.d.ts.map +1 -0
- package/dist/components/pages/LearnerSettingsPage.d.ts +3 -0
- package/dist/components/pages/LearnerSettingsPage.d.ts.map +1 -0
- package/dist/components/pages/ManualReviewDetailPage.d.ts +3 -0
- package/dist/components/pages/ManualReviewDetailPage.d.ts.map +1 -0
- package/dist/components/pages/ManualReviewPage.d.ts +3 -0
- package/dist/components/pages/ManualReviewPage.d.ts.map +1 -0
- package/dist/components/pages/MessagesPage.d.ts +3 -0
- package/dist/components/pages/MessagesPage.d.ts.map +1 -0
- package/dist/components/pages/MyLearningPage.d.ts +3 -0
- package/dist/components/pages/MyLearningPage.d.ts.map +1 -0
- package/dist/components/pages/PaymentCancelPage.d.ts +3 -0
- package/dist/components/pages/PaymentCancelPage.d.ts.map +1 -0
- package/dist/components/pages/PaymentSuccessPage.d.ts +3 -0
- package/dist/components/pages/PaymentSuccessPage.d.ts.map +1 -0
- package/dist/components/pages/index.d.ts +14 -0
- package/dist/components/pages/index.d.ts.map +1 -0
- package/dist/components/utils.d.ts +3 -0
- package/dist/components/utils.d.ts.map +1 -0
- package/dist/contracts/components.contract.d.ts +87 -0
- package/dist/contracts/components.contract.d.ts.map +1 -0
- package/dist/contracts/index.d.ts +5 -0
- package/dist/contracts/index.d.ts.map +1 -0
- package/dist/contracts/layout.contract.d.ts +35 -0
- package/dist/contracts/layout.contract.d.ts.map +1 -0
- package/dist/contracts/pages.contract.d.ts +192 -0
- package/dist/contracts/pages.contract.d.ts.map +1 -0
- package/dist/contracts/template.contract.d.ts +49 -0
- package/dist/contracts/template.contract.d.ts.map +1 -0
- package/dist/hooks/index.d.ts +14 -0
- package/dist/hooks/index.d.ts.map +1 -0
- package/dist/hooks/sdk-context.d.ts +125 -0
- package/dist/hooks/sdk-context.d.ts.map +1 -0
- package/dist/hooks/useAiCoach.d.ts +32 -0
- package/dist/hooks/useAiCoach.d.ts.map +1 -0
- package/dist/hooks/useBookmarks.d.ts +31 -0
- package/dist/hooks/useBookmarks.d.ts.map +1 -0
- package/dist/hooks/useCourseSearch.d.ts +15 -0
- package/dist/hooks/useCourseSearch.d.ts.map +1 -0
- package/dist/hooks/useDebounce.d.ts +13 -0
- package/dist/hooks/useDebounce.d.ts.map +1 -0
- package/dist/hooks/useMyBundles.d.ts +19 -0
- package/dist/hooks/useMyBundles.d.ts.map +1 -0
- package/dist/hooks/useMyCourses.d.ts +18 -0
- package/dist/hooks/useMyCourses.d.ts.map +1 -0
- package/dist/hooks/useNotes.d.ts +31 -0
- package/dist/hooks/useNotes.d.ts.map +1 -0
- package/dist/hooks/useNotifications.d.ts +19 -0
- package/dist/hooks/useNotifications.d.ts.map +1 -0
- package/dist/hooks/useTheme.d.ts +14 -0
- package/dist/hooks/useTheme.d.ts.map +1 -0
- package/dist/hooks/useToast.d.ts +17 -0
- package/dist/hooks/useToast.d.ts.map +1 -0
- package/dist/hooks/useUser.d.ts +29 -0
- package/dist/hooks/useUser.d.ts.map +1 -0
- package/dist/index.d.ts +17 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/layouts/DefaultLayout.d.ts +9 -0
- package/dist/layouts/DefaultLayout.d.ts.map +1 -0
- package/dist/types/ai-coach.d.ts +22 -0
- package/dist/types/ai-coach.d.ts.map +1 -0
- package/dist/types/bookmarks.d.ts +19 -0
- package/dist/types/bookmarks.d.ts.map +1 -0
- package/dist/types/bundle.d.ts +114 -0
- package/dist/types/bundle.d.ts.map +1 -0
- package/dist/types/common.d.ts +23 -0
- package/dist/types/common.d.ts.map +1 -0
- package/dist/types/course.d.ts +127 -0
- package/dist/types/course.d.ts.map +1 -0
- package/dist/types/enrollment.d.ts +34 -0
- package/dist/types/enrollment.d.ts.map +1 -0
- package/dist/types/index.d.ts +16 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/lesson.d.ts +105 -0
- package/dist/types/lesson.d.ts.map +1 -0
- package/dist/types/manual-review.d.ts +123 -0
- package/dist/types/manual-review.d.ts.map +1 -0
- package/dist/types/messaging.d.ts +101 -0
- package/dist/types/messaging.d.ts.map +1 -0
- package/dist/types/notification.d.ts +28 -0
- package/dist/types/notification.d.ts.map +1 -0
- package/dist/types/payment.d.ts +38 -0
- package/dist/types/payment.d.ts.map +1 -0
- package/dist/types/progress.d.ts +18 -0
- package/dist/types/progress.d.ts.map +1 -0
- package/dist/types/rating.d.ts +20 -0
- package/dist/types/rating.d.ts.map +1 -0
- package/dist/types/search.d.ts +28 -0
- package/dist/types/search.d.ts.map +1 -0
- package/dist/types/user.d.ts +15 -0
- package/dist/types/user.d.ts.map +1 -0
- package/dist/utils/formatters.d.ts +25 -0
- package/dist/utils/formatters.d.ts.map +1 -0
- package/dist/utils/index.d.ts +2 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/package.json +1 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Debounce a value.
|
|
3
|
+
*
|
|
4
|
+
* @param value - The value to debounce
|
|
5
|
+
* @param delay - Delay in milliseconds
|
|
6
|
+
*
|
|
7
|
+
* @example
|
|
8
|
+
* ```tsx
|
|
9
|
+
* const debouncedSearch = useDebounce(searchQuery, 500);
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export declare function useDebounce<T>(value: T, delay: number): T;
|
|
13
|
+
//# sourceMappingURL=useDebounce.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useDebounce.d.ts","sourceRoot":"","sources":["../../src/hooks/useDebounce.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;GAUG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,CAAC,CAGzD"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fetch the current user's enrolled bundles.
|
|
3
|
+
*
|
|
4
|
+
* @param status - Filter by status: 'IN_PROGRESS' | 'COMPLETED' | undefined (all)
|
|
5
|
+
* @param page - Page number (1-based)
|
|
6
|
+
* @param limit - Items per page (default: 12)
|
|
7
|
+
* @param search - Optional search query
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```tsx
|
|
11
|
+
* const { bundles, meta, isLoading } = useMyBundles(undefined, 1, 12);
|
|
12
|
+
* ```
|
|
13
|
+
*/
|
|
14
|
+
export declare function useMyBundles(status?: string, page?: number, limit?: number, search?: string): {
|
|
15
|
+
bundles: any[];
|
|
16
|
+
meta: any | null;
|
|
17
|
+
isLoading: boolean;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=useMyBundles.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMyBundles.d.ts","sourceRoot":"","sources":["../../src/hooks/useMyBundles.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM;;;;EAG3F"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fetch the current user's enrolled courses.
|
|
3
|
+
*
|
|
4
|
+
* @param status - Filter by status: 'IN_PROGRESS' | 'COMPLETED' | undefined (all)
|
|
5
|
+
* @param page - Page number (1-based)
|
|
6
|
+
* @param limit - Items per page (default: 12)
|
|
7
|
+
*
|
|
8
|
+
* @example
|
|
9
|
+
* ```tsx
|
|
10
|
+
* const { courses, meta, isLoading } = useMyCourses('IN_PROGRESS', 1, 12);
|
|
11
|
+
* ```
|
|
12
|
+
*/
|
|
13
|
+
export declare function useMyCourses(status?: string, page?: number, limit?: number): {
|
|
14
|
+
courses: any[];
|
|
15
|
+
meta: any | null;
|
|
16
|
+
isLoading: boolean;
|
|
17
|
+
};
|
|
18
|
+
//# sourceMappingURL=useMyCourses.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMyCourses.d.ts","sourceRoot":"","sources":["../../src/hooks/useMyCourses.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM;;;;EAG1E"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Fetch notes for a lesson/activity.
|
|
3
|
+
*/
|
|
4
|
+
export declare function useLessonNotes(activityId: string): {
|
|
5
|
+
data: any[];
|
|
6
|
+
isLoading: boolean;
|
|
7
|
+
error: Error | null;
|
|
8
|
+
refetch: () => Promise<void>;
|
|
9
|
+
};
|
|
10
|
+
/**
|
|
11
|
+
* Create a new note.
|
|
12
|
+
*/
|
|
13
|
+
export declare function useCreateNote(): {
|
|
14
|
+
createNote: (payload: any) => Promise<any>;
|
|
15
|
+
isLoading: boolean;
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Update an existing note.
|
|
19
|
+
*/
|
|
20
|
+
export declare function useUpdateNote(): {
|
|
21
|
+
updateNote: (noteId: string, payload: any) => Promise<any>;
|
|
22
|
+
isLoading: boolean;
|
|
23
|
+
};
|
|
24
|
+
/**
|
|
25
|
+
* Delete a note.
|
|
26
|
+
*/
|
|
27
|
+
export declare function useDeleteNote(): {
|
|
28
|
+
deleteNote: (noteId: string) => Promise<boolean>;
|
|
29
|
+
isLoading: boolean;
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=useNotes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useNotes.d.ts","sourceRoot":"","sources":["../../src/hooks/useNotes.ts"],"names":[],"mappings":"AAIA;;GAEG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,MAAM;;;;;EAGhD;AAED;;GAEG;AACH,wBAAgB,aAAa;;;EAG5B;AAED;;GAEG;AACH,wBAAgB,aAAa;;;EAG5B;AAED;;GAEG;AACH,wBAAgB,aAAa;;;EAG5B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Manage notifications (message notifications).
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```tsx
|
|
6
|
+
* const { notifications, unreadCount, markConversationRead } = useNotifications();
|
|
7
|
+
* ```
|
|
8
|
+
*/
|
|
9
|
+
export declare function useNotifications(): {
|
|
10
|
+
notifications: any[];
|
|
11
|
+
unreadCount: number;
|
|
12
|
+
isLoading: boolean;
|
|
13
|
+
isLoadingMore: boolean;
|
|
14
|
+
hasMore: boolean;
|
|
15
|
+
loadMore: () => void;
|
|
16
|
+
refresh: () => void;
|
|
17
|
+
markConversationRead: (conversationId: string) => Promise<void>;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=useNotifications.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useNotifications.d.ts","sourceRoot":"","sources":["../../src/hooks/useNotifications.ts"],"names":[],"mappings":"AAIA;;;;;;;GAOG;AACH,wBAAgB,gBAAgB;;;;;;;;;EAG/B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Access and change the current theme.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```tsx
|
|
6
|
+
* const { theme, setTheme } = useTheme();
|
|
7
|
+
* return <button onClick={() => setTheme('dark')}>Dark Mode</button>;
|
|
8
|
+
* ```
|
|
9
|
+
*/
|
|
10
|
+
export declare function useTheme(): {
|
|
11
|
+
theme: string;
|
|
12
|
+
setTheme: (theme: string) => void;
|
|
13
|
+
};
|
|
14
|
+
//# sourceMappingURL=useTheme.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useTheme.d.ts","sourceRoot":"","sources":["../../src/hooks/useTheme.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AACH,wBAAgB,QAAQ;;;EAGvB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Show toast notifications.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```tsx
|
|
6
|
+
* const { toast } = useToast();
|
|
7
|
+
* toast({ title: 'Success', description: 'Course enrolled!' });
|
|
8
|
+
* ```
|
|
9
|
+
*/
|
|
10
|
+
export declare function useToast(): {
|
|
11
|
+
toast: (props: {
|
|
12
|
+
title?: string;
|
|
13
|
+
description?: string;
|
|
14
|
+
variant?: "default" | "destructive";
|
|
15
|
+
}) => void;
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=useToast.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useToast.d.ts","sourceRoot":"","sources":["../../src/hooks/useToast.ts"],"names":[],"mappings":"AAIA;;;;;;;;GAQG;AACH,wBAAgB,QAAQ;;aAIguF,CAAC;mBAAqB,CAAC;eAAiB,CAAC;;EADhyF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get the current authenticated user.
|
|
3
|
+
*
|
|
4
|
+
* @example
|
|
5
|
+
* ```tsx
|
|
6
|
+
* const { user, isAuthenticated } = useUser();
|
|
7
|
+
* if (user) {
|
|
8
|
+
* return <span>Hello, {user.name}</span>;
|
|
9
|
+
* }
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export declare function useUser(): {
|
|
13
|
+
user: import("..").User | null;
|
|
14
|
+
isAuthenticated: boolean;
|
|
15
|
+
memberships: import("..").Membership[];
|
|
16
|
+
};
|
|
17
|
+
/**
|
|
18
|
+
* Get the logout function.
|
|
19
|
+
*
|
|
20
|
+
* @example
|
|
21
|
+
* ```tsx
|
|
22
|
+
* const { logout } = useLogout();
|
|
23
|
+
* return <button onClick={logout}>Log out</button>;
|
|
24
|
+
* ```
|
|
25
|
+
*/
|
|
26
|
+
export declare function useLogout(): {
|
|
27
|
+
logout: () => void;
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=useUser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useUser.d.ts","sourceRoot":"","sources":["../../src/hooks/useUser.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;GAUG;AACH,wBAAgB,OAAO;;;;EAGtB;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS;;EAGxB"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @academy/sdk
|
|
3
|
+
*
|
|
4
|
+
* SDK for building custom learner templates for the Academy platform.
|
|
5
|
+
*
|
|
6
|
+
* @example
|
|
7
|
+
* ```tsx
|
|
8
|
+
* import { useMyCourses, useUser } from '@academy/sdk';
|
|
9
|
+
* import type { MyLearningPageProps, TemplateManifest } from '@academy/sdk';
|
|
10
|
+
* ```
|
|
11
|
+
*/
|
|
12
|
+
export * from './types';
|
|
13
|
+
export * from './hooks';
|
|
14
|
+
export * from './contracts';
|
|
15
|
+
export * from './utils';
|
|
16
|
+
export { DefaultLayout } from './layouts/DefaultLayout';
|
|
17
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,cAAc,SAAS,CAAC;AAGxB,cAAc,SAAS,CAAC;AAGxB,cAAc,aAAa,CAAC;AAG5B,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
interface DefaultLayoutProps {
|
|
3
|
+
children: ReactNode;
|
|
4
|
+
currentPath?: string;
|
|
5
|
+
onNavigate?: (path: string) => void;
|
|
6
|
+
}
|
|
7
|
+
export declare function DefaultLayout({ children, currentPath, onNavigate }: DefaultLayoutProps): import("react/jsx-runtime").JSX.Element;
|
|
8
|
+
export {};
|
|
9
|
+
//# sourceMappingURL=DefaultLayout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"DefaultLayout.d.ts","sourceRoot":"","sources":["../../src/layouts/DefaultLayout.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAIjD,UAAU,kBAAkB;IAC1B,QAAQ,EAAE,SAAS,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;CACrC;AAED,wBAAgB,aAAa,CAAC,EAAE,QAAQ,EAAE,WAA4B,EAAE,UAAU,EAAE,EAAE,kBAAkB,2CA6CvG"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
export type ChatRole = 'user' | 'assistant';
|
|
2
|
+
export interface ChatMessage {
|
|
3
|
+
id: string;
|
|
4
|
+
role: ChatRole;
|
|
5
|
+
content: string;
|
|
6
|
+
createdAt: number;
|
|
7
|
+
isStreaming?: boolean;
|
|
8
|
+
sources?: unknown[];
|
|
9
|
+
}
|
|
10
|
+
export interface AICoachInfo {
|
|
11
|
+
id: string;
|
|
12
|
+
name: string;
|
|
13
|
+
}
|
|
14
|
+
export interface AICoachAvailability {
|
|
15
|
+
active: boolean;
|
|
16
|
+
coach: AICoachInfo | null;
|
|
17
|
+
}
|
|
18
|
+
export interface AICoachHistoryGroup {
|
|
19
|
+
date: string;
|
|
20
|
+
messages: ChatMessage[];
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=ai-coach.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai-coach.d.ts","sourceRoot":"","sources":["../../src/types/ai-coach.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,WAAW,CAAC;AAE5C,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,QAAQ,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,WAAW,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export interface Bookmark {
|
|
2
|
+
id: string;
|
|
3
|
+
activityId: string;
|
|
4
|
+
userId: string;
|
|
5
|
+
second: number;
|
|
6
|
+
label?: string;
|
|
7
|
+
createdAt: string;
|
|
8
|
+
updatedAt: string;
|
|
9
|
+
}
|
|
10
|
+
export interface CreateBookmarkPayload {
|
|
11
|
+
activityId: string;
|
|
12
|
+
second: number;
|
|
13
|
+
label?: string;
|
|
14
|
+
}
|
|
15
|
+
export interface UpdateBookmarkPayload {
|
|
16
|
+
second?: number;
|
|
17
|
+
label?: string;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=bookmarks.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bookmarks.d.ts","sourceRoot":"","sources":["../../src/types/bookmarks.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,qBAAqB;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
export interface BundleSettings {
|
|
2
|
+
pricingType: 'FREE' | 'ONE_TIME' | 'SUBSCRIPTION' | 'INSTALLMENT';
|
|
3
|
+
price?: number;
|
|
4
|
+
currency?: string;
|
|
5
|
+
accessDurationDays?: number;
|
|
6
|
+
allowCourseSkipping?: boolean;
|
|
7
|
+
requireSequentialCompletion?: boolean;
|
|
8
|
+
enableBundleCertificate?: boolean;
|
|
9
|
+
trialEnabled?: boolean;
|
|
10
|
+
trialPrice?: number;
|
|
11
|
+
trialDurationDays?: number;
|
|
12
|
+
}
|
|
13
|
+
export interface Bundle {
|
|
14
|
+
id: string;
|
|
15
|
+
tenantId?: string;
|
|
16
|
+
title: string;
|
|
17
|
+
slug?: string;
|
|
18
|
+
description?: string;
|
|
19
|
+
status: 'DRAFT' | 'PUBLISHED' | 'UNPUBLISHED' | 'ARCHIVED';
|
|
20
|
+
settings?: BundleSettings;
|
|
21
|
+
courses?: BundleCourse[];
|
|
22
|
+
includedCourses?: BundleCourse[];
|
|
23
|
+
createdAt: string;
|
|
24
|
+
updatedAt: string;
|
|
25
|
+
}
|
|
26
|
+
export interface BundleCourse {
|
|
27
|
+
courseId: string;
|
|
28
|
+
orderIndex: number;
|
|
29
|
+
dripType?: 'STUDENT_ENROLLMENT_DATE' | 'STUDENT_START_DATE' | 'SPECIFIC_DATE';
|
|
30
|
+
dripStartDate?: string;
|
|
31
|
+
course?: {
|
|
32
|
+
id: string;
|
|
33
|
+
title: string;
|
|
34
|
+
slug?: string;
|
|
35
|
+
thumbnail?: string;
|
|
36
|
+
summary?: string;
|
|
37
|
+
status?: string;
|
|
38
|
+
sections?: Array<{
|
|
39
|
+
id: string;
|
|
40
|
+
title: string;
|
|
41
|
+
description?: string;
|
|
42
|
+
activities?: Array<{
|
|
43
|
+
id: string;
|
|
44
|
+
title: string;
|
|
45
|
+
description?: string;
|
|
46
|
+
estimatedDuration?: string;
|
|
47
|
+
}>;
|
|
48
|
+
}>;
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
export interface LearnerBundleCourse {
|
|
52
|
+
id: string;
|
|
53
|
+
title: string;
|
|
54
|
+
slug: string;
|
|
55
|
+
summary?: string;
|
|
56
|
+
thumbnail?: string;
|
|
57
|
+
orderIndex: number;
|
|
58
|
+
status: string;
|
|
59
|
+
totalActivities: number;
|
|
60
|
+
isEnrolled: boolean;
|
|
61
|
+
enrollmentId?: string;
|
|
62
|
+
enrollmentSource?: string;
|
|
63
|
+
isAccessible: boolean;
|
|
64
|
+
isAvailable: boolean;
|
|
65
|
+
availableAt?: string;
|
|
66
|
+
dripType?: 'STUDENT_ENROLLMENT_DATE' | 'STUDENT_START_DATE' | 'SPECIFIC_DATE';
|
|
67
|
+
isCompleted?: boolean;
|
|
68
|
+
completedAt?: string;
|
|
69
|
+
progressPercentage?: number;
|
|
70
|
+
completedActivities?: number;
|
|
71
|
+
}
|
|
72
|
+
export interface LearnerBundleCreator {
|
|
73
|
+
id: string;
|
|
74
|
+
name: string;
|
|
75
|
+
email: string;
|
|
76
|
+
}
|
|
77
|
+
export interface LearnerBundle {
|
|
78
|
+
id: string;
|
|
79
|
+
title: string;
|
|
80
|
+
slug: string;
|
|
81
|
+
description?: string;
|
|
82
|
+
courses: LearnerBundleCourse[];
|
|
83
|
+
totalCourses: number;
|
|
84
|
+
totalActivities: number;
|
|
85
|
+
price?: number | null;
|
|
86
|
+
currency: string;
|
|
87
|
+
pricingType: 'FREE' | 'ONE_TIME' | 'SUBSCRIPTION' | 'INSTALLMENT';
|
|
88
|
+
creator: LearnerBundleCreator;
|
|
89
|
+
isEnrolled: boolean;
|
|
90
|
+
createdAt: string;
|
|
91
|
+
updatedAt: string;
|
|
92
|
+
allowCourseSkipping: boolean;
|
|
93
|
+
requireSequentialCompletion: boolean;
|
|
94
|
+
enableBundleCertificate: boolean;
|
|
95
|
+
enableDiscussions: boolean;
|
|
96
|
+
bundleProgressPercentage: number;
|
|
97
|
+
allCoursesCompleted?: boolean;
|
|
98
|
+
certificateUrl?: string;
|
|
99
|
+
trialEnabled?: boolean;
|
|
100
|
+
trialPrice?: number;
|
|
101
|
+
trialDurationDays?: number;
|
|
102
|
+
}
|
|
103
|
+
export interface BundleListResponse {
|
|
104
|
+
data: Bundle[];
|
|
105
|
+
meta: {
|
|
106
|
+
page: number;
|
|
107
|
+
limit: number;
|
|
108
|
+
total: number;
|
|
109
|
+
totalPages: number;
|
|
110
|
+
hasNextPage: boolean;
|
|
111
|
+
hasPreviousPage: boolean;
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=bundle.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bundle.d.ts","sourceRoot":"","sources":["../../src/types/bundle.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface PaginationMeta {
|
|
2
|
+
page: number;
|
|
3
|
+
limit: number;
|
|
4
|
+
total: number;
|
|
5
|
+
totalPages: number;
|
|
6
|
+
hasNextPage: boolean;
|
|
7
|
+
hasPreviousPage: boolean;
|
|
8
|
+
}
|
|
9
|
+
export interface PaginatedResponse<T> {
|
|
10
|
+
data: T[];
|
|
11
|
+
meta: PaginationMeta;
|
|
12
|
+
}
|
|
13
|
+
export interface PaginationProps {
|
|
14
|
+
currentPage: number;
|
|
15
|
+
totalPages: number;
|
|
16
|
+
total: number;
|
|
17
|
+
pageSize: number;
|
|
18
|
+
hasNextPage: boolean;
|
|
19
|
+
hasPreviousPage: boolean;
|
|
20
|
+
onPageChange: (page: number) => void;
|
|
21
|
+
maxVisiblePages?: number;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=common.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"common.d.ts","sourceRoot":"","sources":["../../src/types/common.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAiB,CAAC,CAAC;IAClC,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,IAAI,EAAE,cAAc,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,OAAO,CAAC;IACrB,eAAe,EAAE,OAAO,CAAC;IACzB,YAAY,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B"}
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
export interface Course {
|
|
2
|
+
id: string;
|
|
3
|
+
title: string;
|
|
4
|
+
description?: string;
|
|
5
|
+
summary?: string;
|
|
6
|
+
slug?: string;
|
|
7
|
+
thumbnail?: string;
|
|
8
|
+
instructorId?: string;
|
|
9
|
+
status?: string;
|
|
10
|
+
modules?: Module[];
|
|
11
|
+
sections?: any[];
|
|
12
|
+
studentsEnrolled?: number;
|
|
13
|
+
totalActivities?: number;
|
|
14
|
+
createdAt?: Date;
|
|
15
|
+
updatedAt?: Date;
|
|
16
|
+
timestamp?: string;
|
|
17
|
+
settings?: CourseSettings;
|
|
18
|
+
}
|
|
19
|
+
export interface CourseSettings {
|
|
20
|
+
dripEnabled?: boolean;
|
|
21
|
+
timezone?: string;
|
|
22
|
+
banner?: string;
|
|
23
|
+
primaryThemeColor?: string;
|
|
24
|
+
secondaryThemeColor?: string;
|
|
25
|
+
communityEnabled?: boolean;
|
|
26
|
+
slackCommunityEnabled?: boolean;
|
|
27
|
+
slackCommunityStatus?: string;
|
|
28
|
+
slackChannelId?: string;
|
|
29
|
+
slackChannelName?: string;
|
|
30
|
+
seoTitle?: string;
|
|
31
|
+
seoDescription?: string;
|
|
32
|
+
seo?: CourseSEOSettings;
|
|
33
|
+
trialEnabled?: boolean;
|
|
34
|
+
trialPrice?: number;
|
|
35
|
+
trialDurationDays?: number;
|
|
36
|
+
}
|
|
37
|
+
export interface CourseSEOSettings {
|
|
38
|
+
title?: string;
|
|
39
|
+
description?: string;
|
|
40
|
+
isPubliclyDiscoverable?: boolean;
|
|
41
|
+
requirePassword?: boolean;
|
|
42
|
+
coursePassword?: string;
|
|
43
|
+
}
|
|
44
|
+
export interface Module {
|
|
45
|
+
id: string;
|
|
46
|
+
courseId: string;
|
|
47
|
+
title: string;
|
|
48
|
+
description: string;
|
|
49
|
+
order: number;
|
|
50
|
+
lessons: Lesson[];
|
|
51
|
+
}
|
|
52
|
+
export interface Lesson {
|
|
53
|
+
id: string;
|
|
54
|
+
moduleId: string;
|
|
55
|
+
title: string;
|
|
56
|
+
description: string;
|
|
57
|
+
videoUrl?: string;
|
|
58
|
+
content: string;
|
|
59
|
+
resources: Resource[];
|
|
60
|
+
homeworkRequired: boolean;
|
|
61
|
+
order: number;
|
|
62
|
+
duration?: number;
|
|
63
|
+
}
|
|
64
|
+
export interface Resource {
|
|
65
|
+
id: string;
|
|
66
|
+
lessonId: string;
|
|
67
|
+
title: string;
|
|
68
|
+
url: string;
|
|
69
|
+
type: 'pdf' | 'video' | 'link' | 'document';
|
|
70
|
+
}
|
|
71
|
+
export interface CoursePlayerLesson {
|
|
72
|
+
id: string;
|
|
73
|
+
title: string;
|
|
74
|
+
videoUrl: string;
|
|
75
|
+
videoProvider?: 'YOUTUBE' | 'VIMEO' | 'LOOM' | 'OTHERS';
|
|
76
|
+
videoResourceId?: string;
|
|
77
|
+
hasTranscript?: boolean;
|
|
78
|
+
duration: string;
|
|
79
|
+
completed: boolean;
|
|
80
|
+
locked?: boolean;
|
|
81
|
+
available?: boolean;
|
|
82
|
+
availableAt?: string;
|
|
83
|
+
availabilityMessage?: string;
|
|
84
|
+
schedulingType?: string;
|
|
85
|
+
remainingDays?: number;
|
|
86
|
+
hasPrerequisite?: boolean;
|
|
87
|
+
downloadable?: boolean;
|
|
88
|
+
lessonIcon?: string;
|
|
89
|
+
description?: string;
|
|
90
|
+
summary?: string;
|
|
91
|
+
learningObjectives?: string[];
|
|
92
|
+
enableDiscussion?: boolean;
|
|
93
|
+
secondaryResources?: Array<{
|
|
94
|
+
id: string;
|
|
95
|
+
title: string;
|
|
96
|
+
type: 'VIDEO' | 'LINK' | 'DOCUMENT';
|
|
97
|
+
metadataJson: {
|
|
98
|
+
url?: string;
|
|
99
|
+
key?: string;
|
|
100
|
+
name?: string;
|
|
101
|
+
size?: number;
|
|
102
|
+
mimeType?: string;
|
|
103
|
+
};
|
|
104
|
+
}>;
|
|
105
|
+
progressData?: {
|
|
106
|
+
progressId?: string;
|
|
107
|
+
completed?: boolean;
|
|
108
|
+
lastAccessed?: string;
|
|
109
|
+
progressSecond?: number;
|
|
110
|
+
completedAt?: string;
|
|
111
|
+
};
|
|
112
|
+
_fullData?: any;
|
|
113
|
+
}
|
|
114
|
+
export interface CoursePlayerModule {
|
|
115
|
+
id: string;
|
|
116
|
+
title: string;
|
|
117
|
+
lessons: CoursePlayerLesson[];
|
|
118
|
+
}
|
|
119
|
+
export interface CoursePlayerCourse {
|
|
120
|
+
id: string;
|
|
121
|
+
title: string;
|
|
122
|
+
description: string;
|
|
123
|
+
modules: CoursePlayerModule[];
|
|
124
|
+
summary?: string;
|
|
125
|
+
learningObjectives?: string[];
|
|
126
|
+
}
|
|
127
|
+
//# sourceMappingURL=course.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"course.d.ts","sourceRoot":"","sources":["../../src/types/course.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,GAAG,EAAE,CAAC;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,cAAc,CAAC;CAC3B;AAED,MAAM,WAAW,cAAc;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,oBAAoB,CAAC,EAAE,MAAM,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,GAAG,CAAC,EAAE,iBAAiB,CAAC;IACxB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAED,MAAM,WAAW,MAAM;IACrB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,QAAQ,EAAE,CAAC;IACtB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,KAAK,GAAG,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;CAC7C;AAGD,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,MAAM,GAAG,QAAQ,CAAC;IACxD,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC9B,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,kBAAkB,CAAC,EAAE,KAAK,CAAC;QACzB,EAAE,EAAE,MAAM,CAAC;QACX,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,OAAO,GAAG,MAAM,GAAG,UAAU,CAAC;QACpC,YAAY,EAAE;YACZ,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,GAAG,CAAC,EAAE,MAAM,CAAC;YACb,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,IAAI,CAAC,EAAE,MAAM,CAAC;YACd,QAAQ,CAAC,EAAE,MAAM,CAAC;SACnB,CAAC;KACH,CAAC,CAAC;IACH,YAAY,CAAC,EAAE;QACb,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,OAAO,CAAC;QACpB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,WAAW,CAAC,EAAE,MAAM,CAAC;KACtB,CAAC;IACF,SAAS,CAAC,EAAE,GAAG,CAAC;CACjB;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,kBAAkB,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC/B"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
export interface StudentProgress {
|
|
2
|
+
id: string;
|
|
3
|
+
studentId: string;
|
|
4
|
+
courseId: string;
|
|
5
|
+
lessonsCompleted: string[];
|
|
6
|
+
currentLessonId?: string;
|
|
7
|
+
completionPercentage: number;
|
|
8
|
+
lastAccessedAt: Date;
|
|
9
|
+
}
|
|
10
|
+
export interface CourseEnrollment {
|
|
11
|
+
id: string;
|
|
12
|
+
learnerId: string;
|
|
13
|
+
learnerName: string;
|
|
14
|
+
learnerEmail: string;
|
|
15
|
+
learnerAvatar?: string;
|
|
16
|
+
courseId: string;
|
|
17
|
+
enrollmentDate: string;
|
|
18
|
+
status: 'active' | 'inactive' | 'removed' | 'pending';
|
|
19
|
+
progress: {
|
|
20
|
+
completedLessons: number;
|
|
21
|
+
totalLessons: number;
|
|
22
|
+
percentage: number;
|
|
23
|
+
};
|
|
24
|
+
lastAccessedAt?: string;
|
|
25
|
+
}
|
|
26
|
+
export interface EnrollmentStatus {
|
|
27
|
+
isEnrolled: boolean;
|
|
28
|
+
enrollmentId?: string;
|
|
29
|
+
enrolledAt?: string;
|
|
30
|
+
lastActivityId?: string;
|
|
31
|
+
progress?: number;
|
|
32
|
+
hasReviewed?: boolean;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=enrollment.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"enrollment.d.ts","sourceRoot":"","sources":["../../src/types/enrollment.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,cAAc,EAAE,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,cAAc,EAAE,MAAM,CAAC;IACvB,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,SAAS,CAAC;IACtD,QAAQ,EAAE;QACR,gBAAgB,EAAE,MAAM,CAAC;QACzB,YAAY,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,OAAO,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export * from './course';
|
|
2
|
+
export * from './lesson';
|
|
3
|
+
export * from './bundle';
|
|
4
|
+
export * from './user';
|
|
5
|
+
export * from './enrollment';
|
|
6
|
+
export * from './messaging';
|
|
7
|
+
export * from './ai-coach';
|
|
8
|
+
export * from './search';
|
|
9
|
+
export * from './notification';
|
|
10
|
+
export * from './rating';
|
|
11
|
+
export * from './manual-review';
|
|
12
|
+
export * from './payment';
|
|
13
|
+
export * from './common';
|
|
14
|
+
export * from './bookmarks';
|
|
15
|
+
export * from './progress';
|
|
16
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,UAAU,CAAC;AACzB,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
|