nazar-salary 3.5.7 → 3.5.8

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 (3) hide show
  1. package/index.d.ts +52 -0
  2. package/index.js +18 -0
  3. package/package.json +1 -1
package/index.d.ts CHANGED
@@ -1607,6 +1607,56 @@ declare module 'nazar-salary' {
1607
1607
  students: ManagerFinishedStudentItem[];
1608
1608
  }
1609
1609
 
1610
+ /** GET /admin/students/active — every filter optional, manager_id included */
1611
+ export interface AdminStudentsListParams {
1612
+ manager_id?: number;
1613
+ teacher_id?: number;
1614
+ prepayment?: boolean;
1615
+ is_verified?: boolean;
1616
+ price_id?: number;
1617
+ created_from?: string;
1618
+ created_to?: string;
1619
+ main_course?: string;
1620
+ page?: number;
1621
+ /** Max 30 */
1622
+ limit?: number;
1623
+ }
1624
+
1625
+ export interface AdminStudentListItem extends Omit<StudentListItem, 'manager_name'> {
1626
+ owned_by: number;
1627
+ /** "First Last" of the student's manager */
1628
+ manager_name: string | null;
1629
+ }
1630
+
1631
+ export interface AdminStudentsListResponse {
1632
+ total_students: number;
1633
+ current_page: number;
1634
+ total_pages: number;
1635
+ students: AdminStudentListItem[];
1636
+ }
1637
+
1638
+ /** GET /admin/students/finished */
1639
+ export interface AdminFinishedStudentsParams {
1640
+ manager_id?: number;
1641
+ teacher_id?: number;
1642
+ search?: string;
1643
+ page?: number;
1644
+ /** Max 30 */
1645
+ limit?: number;
1646
+ }
1647
+
1648
+ export interface AdminFinishedStudentItem extends ManagerFinishedStudentItem {
1649
+ owned_by: number;
1650
+ manager_name: string | null;
1651
+ }
1652
+
1653
+ export interface AdminFinishedStudentsResponse {
1654
+ total_students: number;
1655
+ current_page: number;
1656
+ total_pages: number;
1657
+ students: AdminFinishedStudentItem[];
1658
+ }
1659
+
1610
1660
  export interface StudentsListLiteParams {
1611
1661
  page?: number;
1612
1662
  }
@@ -1894,6 +1944,8 @@ declare module 'nazar-salary' {
1894
1944
 
1895
1945
  /** Get finished (inactive course) students of specific manager (Admin only) */
1896
1946
  getManagerFinishedStudents(managerId: number, params?: ManagerFinishedStudentsParams): Promise<ManagerFinishedStudentsResponse>;
1947
+ getAdminActiveStudents(params?: AdminStudentsListParams): Promise<AdminStudentsListResponse>;
1948
+ getAdminFinishedStudents(params?: AdminFinishedStudentsParams): Promise<AdminFinishedStudentsResponse>;
1897
1949
 
1898
1950
  // Dashboard endpoints
1899
1951
  /**
package/index.js CHANGED
@@ -339,6 +339,24 @@ class SalaryAPI {
339
339
  );
340
340
  }
341
341
 
342
+ /**
343
+ * Active students of all managers or one (manager_id), with manager_name (Admin only)
344
+ * @param {object} [params] - { manager_id?, teacher_id?, prepayment?, is_verified?, price_id?, created_from?, created_to?, main_course?, page?, limit? (max 30) }
345
+ * @returns {Promise<AdminStudentsListResponse>}
346
+ */
347
+ async getAdminActiveStudents(params = {}) {
348
+ return await this.client.get("/api/v1/admin/students/active", { params });
349
+ }
350
+
351
+ /**
352
+ * Finished students (completed_lessons = total_lessons) of all managers or one, with manager_name (Admin only)
353
+ * @param {object} [params] - { manager_id?, teacher_id?, search?, page?, limit? (max 30) }
354
+ * @returns {Promise<AdminFinishedStudentsResponse>}
355
+ */
356
+ async getAdminFinishedStudents(params = {}) {
357
+ return await this.client.get("/api/v1/admin/students/finished", { params });
358
+ }
359
+
342
360
  /**
343
361
  * Get manager salary for specific month (Admin only)
344
362
  * @param {string} month - Month in YYYY-MM format
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "nazar-salary",
3
- "version": "3.5.7",
3
+ "version": "3.5.8",
4
4
  "description": "Frontend library for Nazar Salary API",
5
5
  "main": "index.js",
6
6
  "types": "index.d.ts",