@ketab-ir/core 1.2.3 → 1.3.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.
Files changed (31) hide show
  1. package/esm2022/lib/enums/ktb-course-type.mjs +13 -1
  2. package/esm2022/lib/index.mjs +2 -1
  3. package/esm2022/lib/models/base/ktb-config.mjs +1 -1
  4. package/esm2022/lib/modules/index.mjs +2 -0
  5. package/esm2022/lib/modules/ketabsal/course.mjs +2 -0
  6. package/esm2022/lib/modules/ketabsal/enums.mjs +6 -0
  7. package/esm2022/lib/modules/ketabsal/index.mjs +11 -0
  8. package/esm2022/lib/modules/ketabsal/input.mjs +2 -0
  9. package/esm2022/lib/modules/ketabsal/kts-services.service.mjs +3 -0
  10. package/esm2022/lib/modules/ketabsal/media.mjs +2 -0
  11. package/esm2022/lib/modules/ketabsal/news.mjs +2 -0
  12. package/esm2022/lib/modules/ketabsal/people.mjs +2 -0
  13. package/esm2022/lib/modules/ketabsal/product.mjs +2 -0
  14. package/esm2022/lib/modules/ketabsal/settings.mjs +2 -0
  15. package/fesm2022/ketab-ir-core.mjs +22 -1
  16. package/fesm2022/ketab-ir-core.mjs.map +1 -1
  17. package/lib/enums/ktb-course-type.d.ts +11 -0
  18. package/lib/index.d.ts +1 -0
  19. package/lib/models/base/ktb-config.d.ts +1 -0
  20. package/lib/modules/index.d.ts +1 -0
  21. package/lib/modules/ketabsal/course.d.ts +34 -0
  22. package/lib/modules/ketabsal/enums.d.ts +4 -0
  23. package/lib/modules/ketabsal/index.d.ts +10 -0
  24. package/lib/modules/ketabsal/input.d.ts +7 -0
  25. package/lib/modules/ketabsal/kts-services.service.d.ts +24 -0
  26. package/lib/modules/ketabsal/media.d.ts +8 -0
  27. package/lib/modules/ketabsal/news.d.ts +17 -0
  28. package/lib/modules/ketabsal/people.d.ts +7 -0
  29. package/lib/modules/ketabsal/product.d.ts +7 -0
  30. package/lib/modules/ketabsal/settings.d.ts +24 -0
  31. package/package.json +1 -1
@@ -14,3 +14,14 @@ export declare enum KtbAwardsType {
14
14
  BookAndMedia = 5,
15
15
  WorldBook = 6
16
16
  }
17
+ export declare enum KtbPlatformType {
18
+ None = 0,
19
+ Isbn = 1,
20
+ KetabSal = 2,
21
+ BookAward = 3,
22
+ Resane = 4,
23
+ HafteKetab = 5,
24
+ Ahleghalam = 6,
25
+ Club = 7,
26
+ LitratureFiction = 8
27
+ }
package/lib/index.d.ts CHANGED
@@ -2,3 +2,4 @@ export * from './models';
2
2
  export * from './contracts';
3
3
  export * from './constants';
4
4
  export * from './enums';
5
+ export * from './modules';
@@ -9,4 +9,5 @@ export interface IKtbConfig {
9
9
  customerUrl?: string;
10
10
  vendorUrl?: string;
11
11
  android?: boolean;
12
+ clientId?: string;
12
13
  }
@@ -0,0 +1 @@
1
+ export * from './ketabsal';
@@ -0,0 +1,34 @@
1
+ export interface KtsCourse {
2
+ id?: number;
3
+ title?: string;
4
+ description?: string;
5
+ imageAddress?: string;
6
+ }
7
+ export interface KtsCourseDetail {
8
+ closingDate?: Date;
9
+ courseId?: number;
10
+ imagename?: null | string;
11
+ invitation?: KtsCourseInvitation;
12
+ isActive?: boolean;
13
+ isCurrent?: boolean;
14
+ openingDate?: Date;
15
+ ranks?: null | Array<KtsCourseRank>;
16
+ showInLanding?: boolean;
17
+ status?: number;
18
+ title?: null | string;
19
+ type?: number;
20
+ }
21
+ export interface KtsCourseInvitation {
22
+ conditions?: null | string;
23
+ id?: number;
24
+ isActive?: boolean;
25
+ objectives?: null | string;
26
+ pdfname?: null | string;
27
+ submitDeadline?: Date;
28
+ }
29
+ export interface KtsCourseRank {
30
+ enTitle?: null | string;
31
+ id?: number;
32
+ priority?: number;
33
+ title?: null | string;
34
+ }
@@ -0,0 +1,4 @@
1
+ export declare enum KtsRanksType {
2
+ selected = 1,
3
+ honorable = 2
4
+ }
@@ -0,0 +1,10 @@
1
+ export * from './course';
2
+ export * from './media';
3
+ export * from './people';
4
+ export * from './people';
5
+ export * from './product';
6
+ export * from './news';
7
+ export * from './settings';
8
+ export * from './input';
9
+ export * from './kts-services.service';
10
+ export * from './enums';
@@ -0,0 +1,7 @@
1
+ import { IKtbNewPagedInput } from '../../models';
2
+ export interface KtsPagedInput extends IKtbNewPagedInput {
3
+ courseId?: number;
4
+ }
5
+ export interface KtsSubmissionInput extends KtsPagedInput {
6
+ rank?: number;
7
+ }
@@ -0,0 +1,24 @@
1
+ import { Observable } from 'rxjs';
2
+ import { IKtbNewPagedInput, IKtbPageResult } from '../../models';
3
+ import { KtsCourse, KtsCourseDetail } from './course';
4
+ import { KtsPeople } from './people';
5
+ import { KtsSetting } from './settings';
6
+ import { KtsPagedInput, KtsSubmissionInput } from './input';
7
+ import { KtsMedia } from './media';
8
+ import { KtsProduct } from './product';
9
+ import { KtsNews } from './news';
10
+ export declare abstract class IKtsServices {
11
+ abstract getCurrentCourse(): Observable<KtsCourseDetail>;
12
+ abstract getSettings(): Observable<KtsSetting>;
13
+ abstract getAllCourses(input?: IKtbNewPagedInput): Observable<IKtbPageResult<KtsCourse>>;
14
+ abstract getCourseDetail(id: number): Observable<KtsCourseDetail>;
15
+ abstract getCourseAuthors(input: KtsPagedInput): Observable<KtsPeople[]>;
16
+ abstract getCourseMembers(input: KtsPagedInput): Observable<KtsPeople[]>;
17
+ abstract getCourseReferees(input: KtsPagedInput): Observable<IKtbPageResult<KtsPeople>>;
18
+ abstract getCourseImages(input: KtsPagedInput): Observable<IKtbPageResult<KtsMedia>>;
19
+ abstract getCourseVideos(input: KtsPagedInput): Observable<IKtbPageResult<KtsMedia>>;
20
+ abstract getBooks(input: KtsSubmissionInput): Observable<IKtbPageResult<KtsProduct>>;
21
+ abstract getNewsMostView(take?: number): Observable<KtsNews[]>;
22
+ abstract getAllNews(input: IKtbNewPagedInput): Observable<IKtbPageResult<KtsNews>>;
23
+ abstract getNewsDetail(id: number): Observable<KtsNews>;
24
+ }
@@ -0,0 +1,8 @@
1
+ export interface KtsMedia {
2
+ imageAddress?: string;
3
+ linkAddress?: string;
4
+ id?: number;
5
+ title?: string;
6
+ description?: string;
7
+ mediaType: 'image' | 'video';
8
+ }
@@ -0,0 +1,17 @@
1
+ export interface KtsNews {
2
+ id?: number;
3
+ title?: string;
4
+ subtitle?: string;
5
+ time?: Date;
6
+ viewCount?: number;
7
+ abstract?: string;
8
+ fullDescription?: string;
9
+ imageAddress?: string;
10
+ videoAddress?: string;
11
+ imageList?: {
12
+ id?: number;
13
+ title?: string;
14
+ imageAddress?: string;
15
+ }[];
16
+ newsType: 'text' | 'gallery' | 'video';
17
+ }
@@ -0,0 +1,7 @@
1
+ export interface KtsPeople {
2
+ id?: number;
3
+ title?: string;
4
+ description?: string;
5
+ imageAddress?: string;
6
+ category?: string;
7
+ }
@@ -0,0 +1,7 @@
1
+ export interface KtsProduct {
2
+ id?: number;
3
+ title?: string;
4
+ description?: string;
5
+ imageAddress?: string;
6
+ category?: string;
7
+ }
@@ -0,0 +1,24 @@
1
+ export interface KtsSetting {
2
+ aboutText?: null | string;
3
+ address?: null | string;
4
+ email?: null | string;
5
+ id?: number;
6
+ links?: null | Array<KtsLink>;
7
+ phone?: null | string;
8
+ platForm?: number;
9
+ socials?: null | Array<KtsSocial>;
10
+ }
11
+ export interface KtsLink {
12
+ title: string;
13
+ url: string;
14
+ isActive: boolean;
15
+ priority: number;
16
+ }
17
+ export interface KtsSocial {
18
+ title: string;
19
+ url: string;
20
+ iconeAddress: string;
21
+ isActive: boolean;
22
+ priority: number;
23
+ iconeAltText: string;
24
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ketab-ir/core",
3
- "version": "1.2.3",
3
+ "version": "1.3.1",
4
4
  "private": false,
5
5
  "peerDependencies": {
6
6
  "@angular/common": ">=16.0.0",