@digiteers/uloba3-sdk 1.3.7

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 (162) hide show
  1. package/.eslintrc.json +29 -0
  2. package/.github/workflows/generate-sdk.yml +126 -0
  3. package/.prettierrc +11 -0
  4. package/MIGRATION.md +118 -0
  5. package/README.md +256 -0
  6. package/dist/api/accounts.d.ts +31 -0
  7. package/dist/api/accounts.d.ts.map +1 -0
  8. package/dist/api/accounts.js +71 -0
  9. package/dist/api/accounts.js.map +1 -0
  10. package/dist/api/admin/arrangements.d.ts +41 -0
  11. package/dist/api/admin/arrangements.d.ts.map +1 -0
  12. package/dist/api/admin/arrangements.js +60 -0
  13. package/dist/api/admin/arrangements.js.map +1 -0
  14. package/dist/api/admin/assistance-types.d.ts +41 -0
  15. package/dist/api/admin/assistance-types.d.ts.map +1 -0
  16. package/dist/api/admin/assistance-types.js +60 -0
  17. package/dist/api/admin/assistance-types.js.map +1 -0
  18. package/dist/api/admin/contract-case-workflow-states.d.ts +69 -0
  19. package/dist/api/admin/contract-case-workflow-states.d.ts.map +1 -0
  20. package/dist/api/admin/contract-case-workflow-states.js +59 -0
  21. package/dist/api/admin/contract-case-workflow-states.js.map +1 -0
  22. package/dist/api/admin/contract-types.d.ts +41 -0
  23. package/dist/api/admin/contract-types.d.ts.map +1 -0
  24. package/dist/api/admin/contract-types.js +60 -0
  25. package/dist/api/admin/contract-types.js.map +1 -0
  26. package/dist/api/admin/expectation-templates.d.ts +39 -0
  27. package/dist/api/admin/expectation-templates.d.ts.map +1 -0
  28. package/dist/api/admin/expectation-templates.js +66 -0
  29. package/dist/api/admin/expectation-templates.js.map +1 -0
  30. package/dist/api/admin/index.d.ts +11 -0
  31. package/dist/api/admin/index.d.ts.map +1 -0
  32. package/dist/api/admin/index.js +24 -0
  33. package/dist/api/admin/index.js.map +1 -0
  34. package/dist/api/admin/interest-templates.d.ts +39 -0
  35. package/dist/api/admin/interest-templates.d.ts.map +1 -0
  36. package/dist/api/admin/interest-templates.js +66 -0
  37. package/dist/api/admin/interest-templates.js.map +1 -0
  38. package/dist/api/admin/organization.d.ts +15 -0
  39. package/dist/api/admin/organization.d.ts.map +1 -0
  40. package/dist/api/admin/organization.js +25 -0
  41. package/dist/api/admin/organization.js.map +1 -0
  42. package/dist/api/admin/responsibility-templates.d.ts +39 -0
  43. package/dist/api/admin/responsibility-templates.d.ts.map +1 -0
  44. package/dist/api/admin/responsibility-templates.js +66 -0
  45. package/dist/api/admin/responsibility-templates.js.map +1 -0
  46. package/dist/api/admin/salaries.d.ts +48 -0
  47. package/dist/api/admin/salaries.d.ts.map +1 -0
  48. package/dist/api/admin/salaries.js +60 -0
  49. package/dist/api/admin/salaries.js.map +1 -0
  50. package/dist/api/admin/work-schedules.d.ts +67 -0
  51. package/dist/api/admin/work-schedules.d.ts.map +1 -0
  52. package/dist/api/admin/work-schedules.js +59 -0
  53. package/dist/api/admin/work-schedules.js.map +1 -0
  54. package/dist/api/analytics.d.ts +37 -0
  55. package/dist/api/analytics.d.ts.map +1 -0
  56. package/dist/api/analytics.js +37 -0
  57. package/dist/api/analytics.js.map +1 -0
  58. package/dist/api/applications.d.ts +166 -0
  59. package/dist/api/applications.d.ts.map +1 -0
  60. package/dist/api/applications.js +156 -0
  61. package/dist/api/applications.js.map +1 -0
  62. package/dist/api/assistants.d.ts +413 -0
  63. package/dist/api/assistants.d.ts.map +1 -0
  64. package/dist/api/assistants.js +250 -0
  65. package/dist/api/assistants.js.map +1 -0
  66. package/dist/api/auth.d.ts +57 -0
  67. package/dist/api/auth.d.ts.map +1 -0
  68. package/dist/api/auth.js +46 -0
  69. package/dist/api/auth.js.map +1 -0
  70. package/dist/api/billing.d.ts +33 -0
  71. package/dist/api/billing.d.ts.map +1 -0
  72. package/dist/api/billing.js +49 -0
  73. package/dist/api/billing.js.map +1 -0
  74. package/dist/api/contract-cases.d.ts +38 -0
  75. package/dist/api/contract-cases.d.ts.map +1 -0
  76. package/dist/api/contract-cases.js +65 -0
  77. package/dist/api/contract-cases.js.map +1 -0
  78. package/dist/api/contracts.d.ts +903 -0
  79. package/dist/api/contracts.d.ts.map +1 -0
  80. package/dist/api/contracts.js +300 -0
  81. package/dist/api/contracts.js.map +1 -0
  82. package/dist/api/documents.d.ts +20 -0
  83. package/dist/api/documents.d.ts.map +1 -0
  84. package/dist/api/documents.js +27 -0
  85. package/dist/api/documents.js.map +1 -0
  86. package/dist/api/feeds.d.ts +23 -0
  87. package/dist/api/feeds.d.ts.map +1 -0
  88. package/dist/api/feeds.js +47 -0
  89. package/dist/api/feeds.js.map +1 -0
  90. package/dist/api/gdpr.d.ts +23 -0
  91. package/dist/api/gdpr.d.ts.map +1 -0
  92. package/dist/api/gdpr.js +50 -0
  93. package/dist/api/gdpr.js.map +1 -0
  94. package/dist/api/inquiries.d.ts +190 -0
  95. package/dist/api/inquiries.d.ts.map +1 -0
  96. package/dist/api/inquiries.js +173 -0
  97. package/dist/api/inquiries.js.map +1 -0
  98. package/dist/api/jobs.d.ts +169 -0
  99. package/dist/api/jobs.d.ts.map +1 -0
  100. package/dist/api/jobs.js +294 -0
  101. package/dist/api/jobs.js.map +1 -0
  102. package/dist/api/locations.d.ts +30 -0
  103. package/dist/api/locations.d.ts.map +1 -0
  104. package/dist/api/locations.js +25 -0
  105. package/dist/api/locations.js.map +1 -0
  106. package/dist/api/meetings.d.ts +109 -0
  107. package/dist/api/meetings.d.ts.map +1 -0
  108. package/dist/api/meetings.js +75 -0
  109. package/dist/api/meetings.js.map +1 -0
  110. package/dist/api/messaging.d.ts +32 -0
  111. package/dist/api/messaging.d.ts.map +1 -0
  112. package/dist/api/messaging.js +114 -0
  113. package/dist/api/messaging.js.map +1 -0
  114. package/dist/api/notes.d.ts +21 -0
  115. package/dist/api/notes.d.ts.map +1 -0
  116. package/dist/api/notes.js +38 -0
  117. package/dist/api/notes.js.map +1 -0
  118. package/dist/api/organization.d.ts +56 -0
  119. package/dist/api/organization.d.ts.map +1 -0
  120. package/dist/api/organization.js +39 -0
  121. package/dist/api/organization.js.map +1 -0
  122. package/dist/api/salaries.d.ts +24 -0
  123. package/dist/api/salaries.d.ts.map +1 -0
  124. package/dist/api/salaries.js +39 -0
  125. package/dist/api/salaries.js.map +1 -0
  126. package/dist/api/tasks.d.ts +19 -0
  127. package/dist/api/tasks.d.ts.map +1 -0
  128. package/dist/api/tasks.js +35 -0
  129. package/dist/api/tasks.js.map +1 -0
  130. package/dist/api/users.d.ts +62 -0
  131. package/dist/api/users.d.ts.map +1 -0
  132. package/dist/api/users.js +62 -0
  133. package/dist/api/users.js.map +1 -0
  134. package/dist/api-types.d.ts +1242 -0
  135. package/dist/api-types.d.ts.map +1 -0
  136. package/dist/api-types.js +5 -0
  137. package/dist/api-types.js.map +1 -0
  138. package/dist/client.d.ts +69 -0
  139. package/dist/client.d.ts.map +1 -0
  140. package/dist/client.js +142 -0
  141. package/dist/client.js.map +1 -0
  142. package/dist/components/contracts/forms/DirectContractForm.d.ts +1 -0
  143. package/dist/components/contracts/forms/DirectContractForm.d.ts.map +1 -0
  144. package/dist/components/contracts/forms/DirectContractForm.js +2 -0
  145. package/dist/components/contracts/forms/DirectContractForm.js.map +1 -0
  146. package/dist/constants.d.ts +133 -0
  147. package/dist/constants.d.ts.map +1 -0
  148. package/dist/constants.js +139 -0
  149. package/dist/constants.js.map +1 -0
  150. package/dist/index.d.ts +36 -0
  151. package/dist/index.d.ts.map +1 -0
  152. package/dist/index.js +85 -0
  153. package/dist/index.js.map +1 -0
  154. package/dist/types.d.ts +36489 -0
  155. package/dist/types.d.ts.map +1 -0
  156. package/dist/types.js +7 -0
  157. package/dist/types.js.map +1 -0
  158. package/dist/view-types.d.ts +44 -0
  159. package/dist/view-types.d.ts.map +1 -0
  160. package/dist/view-types.js +7 -0
  161. package/dist/view-types.js.map +1 -0
  162. package/package.json +85 -0
@@ -0,0 +1,166 @@
1
+ import { AxiosInstance } from 'axios';
2
+ import type { paths } from '../types';
3
+ export type ApplicationViewEnhancedResponse = paths['/api/applications/{applicationId}/view']['get']['responses']['200']['content']['application/json'];
4
+ export type ApplicationEnhancedResponse = paths['/api/applications/{applicationId}']['get']['responses']['200']['content']['application/json'];
5
+ export interface Application {
6
+ id: string;
7
+ job_id: string;
8
+ account_id?: string | null;
9
+ applicant_id: string;
10
+ status: 'draft' | 'submitted' | 'approved' | 'rejected' | 'cancelled';
11
+ cover_letter?: string | null;
12
+ availability_from?: string | null;
13
+ availability_to?: string | null;
14
+ hours_per_week?: number | null;
15
+ archived_by_applicant: boolean;
16
+ archived_by_coordinator: boolean;
17
+ archived_at_applicant?: string | null;
18
+ archived_at_coordinator?: string | null;
19
+ submitted_at?: string | null;
20
+ approved_at?: string | null;
21
+ rejected_at?: string | null;
22
+ cancelled_at?: string | null;
23
+ cancelled_message?: string | null;
24
+ rejected_message?: string | null;
25
+ approved_message?: string | null;
26
+ application_number: number;
27
+ previous_application_id?: string | null;
28
+ lifecycle_status: 'operational' | 'archived' | 'anonymized';
29
+ created_at: string;
30
+ updated_at: string;
31
+ status_changed_at: string;
32
+ }
33
+ export interface CreateApplicationData {
34
+ job_id: string;
35
+ cover_letter?: string;
36
+ availability_from?: string;
37
+ availability_to?: string;
38
+ hours_per_week?: number;
39
+ }
40
+ export interface UpdateApplicationData {
41
+ cover_letter?: string;
42
+ availability_from?: string;
43
+ availability_to?: string;
44
+ hours_per_week?: number;
45
+ }
46
+ export interface ApplicationFilters {
47
+ status?: string;
48
+ job_id?: string;
49
+ archived?: boolean;
50
+ page?: number;
51
+ limit?: number;
52
+ sort_by?: string;
53
+ sort_order?: 'asc' | 'desc';
54
+ }
55
+ export interface ApplicationsListResponse {
56
+ data: Application[];
57
+ pagination: {
58
+ page: number;
59
+ limit: number;
60
+ total: number;
61
+ total_pages: number;
62
+ has_more: boolean;
63
+ };
64
+ }
65
+ export interface JobApplicationsFilters {
66
+ status?: string;
67
+ archived?: boolean;
68
+ page?: number;
69
+ limit?: number;
70
+ sort_by?: string;
71
+ sort_order?: 'asc' | 'desc';
72
+ }
73
+ export declare class ApplicationsApi {
74
+ private axios;
75
+ constructor(axios: AxiosInstance);
76
+ /**
77
+ * List my applications as an applicant
78
+ */
79
+ listMyApplications(filters?: ApplicationFilters): Promise<ApplicationsListResponse>;
80
+ /**
81
+ * List my applications as an applicant (alias for listMyApplications)
82
+ */
83
+ list(filters?: ApplicationFilters): Promise<ApplicationsListResponse>;
84
+ /**
85
+ * List all received applications for coordinator's jobs
86
+ */
87
+ listReceived(filters?: ApplicationFilters): Promise<ApplicationsListResponse>;
88
+ /**
89
+ * List applications for teamlead role (role-based pattern)
90
+ */
91
+ listAsTeamlead(filters?: ApplicationFilters): Promise<ApplicationsListResponse>;
92
+ /**
93
+ * List applications for assistant role (role-based pattern)
94
+ */
95
+ listAsAssistant(filters?: ApplicationFilters): Promise<ApplicationsListResponse>;
96
+ /**
97
+ * Get application statistics for teamlead role
98
+ */
99
+ getTeamleadStats(): Promise<any>;
100
+ /**
101
+ * Get application statistics for assistant role
102
+ */
103
+ getAssistantStats(): Promise<any>;
104
+ /**
105
+ * Get role-based statistics (generic method)
106
+ */
107
+ getRoleStats(role: 'teamlead' | 'assistant'): Promise<any>;
108
+ /**
109
+ * List applications for a specific job (coordinator only)
110
+ */
111
+ listJobApplications(jobId: string, filters?: JobApplicationsFilters): Promise<ApplicationsListResponse>;
112
+ /**
113
+ * Get a specific application by ID
114
+ * Returns enhanced response with metadata and permissions
115
+ */
116
+ get(applicationId: string): Promise<ApplicationEnhancedResponse>;
117
+ /**
118
+ * Get just the application data without metadata
119
+ * Convenience method for backward compatibility
120
+ */
121
+ getData(applicationId: string): Promise<Application>;
122
+ /**
123
+ * Get application view with enhanced data
124
+ */
125
+ getApplicationView(applicationId: string): Promise<ApplicationViewEnhancedResponse>;
126
+ /**
127
+ * Create a draft application
128
+ */
129
+ create(data: CreateApplicationData): Promise<Application>;
130
+ /**
131
+ * Update a draft application
132
+ */
133
+ update(applicationId: string, data: UpdateApplicationData): Promise<Application>;
134
+ /**
135
+ * Submit an application
136
+ */
137
+ submit(applicationId: string, data?: UpdateApplicationData): Promise<Application>;
138
+ /**
139
+ * Approve an application (coordinator only)
140
+ */
141
+ approve(applicationId: string, message?: string): Promise<Application>;
142
+ /**
143
+ * Reject an application (coordinator only)
144
+ */
145
+ reject(applicationId: string, message?: string): Promise<Application>;
146
+ /**
147
+ * Cancel an application (applicant only)
148
+ */
149
+ cancel(applicationId: string, message?: string): Promise<Application>;
150
+ /**
151
+ * Archive or unarchive an application
152
+ */
153
+ archive(applicationId: string, archive?: boolean): Promise<Application>;
154
+ /**
155
+ * Create a contract from an approved application (coordinator only)
156
+ */
157
+ createContract(applicationId: string, data?: {
158
+ contract_type?: 'on_call' | 'regular' | 'temporary';
159
+ service_type?: 'bpa' | 'function_assistance';
160
+ hours_per_week?: number;
161
+ hourly_rate?: number;
162
+ start_date?: string;
163
+ end_date?: string;
164
+ }): Promise<any>;
165
+ }
166
+ //# sourceMappingURL=applications.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applications.d.ts","sourceRoot":"","sources":["../../src/api/applications.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,156 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ApplicationsApi = void 0;
4
+ class ApplicationsApi {
5
+ axios;
6
+ constructor(axios) {
7
+ this.axios = axios;
8
+ }
9
+ /**
10
+ * List my applications as an applicant
11
+ */
12
+ async listMyApplications(filters) {
13
+ const response = await this.axios.get('/api/applications', { params: filters });
14
+ return response.data;
15
+ }
16
+ /**
17
+ * List my applications as an applicant (alias for listMyApplications)
18
+ */
19
+ async list(filters) {
20
+ return this.listMyApplications(filters);
21
+ }
22
+ /**
23
+ * List all received applications for coordinator's jobs
24
+ */
25
+ async listReceived(filters) {
26
+ const response = await this.axios.get('/api/applications/received', { params: filters });
27
+ return response.data;
28
+ }
29
+ /**
30
+ * List applications for teamlead role (role-based pattern)
31
+ */
32
+ async listAsTeamlead(filters) {
33
+ const response = await this.axios.get('/api/applications/teamlead', { params: filters });
34
+ return response.data;
35
+ }
36
+ /**
37
+ * List applications for assistant role (role-based pattern)
38
+ */
39
+ async listAsAssistant(filters) {
40
+ const response = await this.axios.get('/api/applications/assistant', { params: filters });
41
+ return response.data;
42
+ }
43
+ /**
44
+ * Get application statistics for teamlead role
45
+ */
46
+ async getTeamleadStats() {
47
+ const response = await this.axios.get('/api/applications/teamlead/stats');
48
+ return response.data;
49
+ }
50
+ /**
51
+ * Get application statistics for assistant role
52
+ */
53
+ async getAssistantStats() {
54
+ const response = await this.axios.get('/api/applications/assistant/stats');
55
+ return response.data;
56
+ }
57
+ /**
58
+ * Get role-based statistics (generic method)
59
+ */
60
+ async getRoleStats(role) {
61
+ const response = await this.axios.get(`/api/applications/${role}/stats`);
62
+ return response.data;
63
+ }
64
+ /**
65
+ * List applications for a specific job (coordinator only)
66
+ */
67
+ async listJobApplications(jobId, filters) {
68
+ const response = await this.axios.get(`/api/jobs/${jobId}/applications`, { params: filters });
69
+ return response.data;
70
+ }
71
+ /**
72
+ * Get a specific application by ID
73
+ * Returns enhanced response with metadata and permissions
74
+ */
75
+ async get(applicationId) {
76
+ const response = await this.axios.get(`/api/applications/${applicationId}`);
77
+ return response.data;
78
+ }
79
+ /**
80
+ * Get just the application data without metadata
81
+ * Convenience method for backward compatibility
82
+ */
83
+ async getData(applicationId) {
84
+ const response = await this.get(applicationId);
85
+ // The response might have data property or be the data directly
86
+ return (response.data || response);
87
+ }
88
+ /**
89
+ * Get application view with enhanced data
90
+ */
91
+ async getApplicationView(applicationId) {
92
+ const response = await this.axios.get(`/api/applications/${applicationId}/view`);
93
+ return response.data;
94
+ }
95
+ /**
96
+ * Create a draft application
97
+ */
98
+ async create(data) {
99
+ const response = await this.axios.post('/api/applications', data);
100
+ return response.data;
101
+ }
102
+ /**
103
+ * Update a draft application
104
+ */
105
+ async update(applicationId, data) {
106
+ const response = await this.axios.put(`/api/applications/${applicationId}`, data);
107
+ return response.data;
108
+ }
109
+ /**
110
+ * Submit an application
111
+ */
112
+ async submit(applicationId, data) {
113
+ // If no data or empty object, send empty object to avoid body/content-type mismatch
114
+ const body = data && Object.keys(data).length > 0 ? data : {};
115
+ const response = await this.axios.post(`/api/applications/${applicationId}/submit`, body);
116
+ return response.data;
117
+ }
118
+ /**
119
+ * Approve an application (coordinator only)
120
+ */
121
+ async approve(applicationId, message) {
122
+ const response = await this.axios.post(`/api/applications/${applicationId}/approve`, { message });
123
+ return response.data;
124
+ }
125
+ /**
126
+ * Reject an application (coordinator only)
127
+ */
128
+ async reject(applicationId, message) {
129
+ const response = await this.axios.post(`/api/applications/${applicationId}/reject`, { message });
130
+ return response.data;
131
+ }
132
+ /**
133
+ * Cancel an application (applicant only)
134
+ */
135
+ async cancel(applicationId, message) {
136
+ const response = await this.axios.post(`/api/applications/${applicationId}/cancel`, { message });
137
+ return response.data;
138
+ }
139
+ /**
140
+ * Archive or unarchive an application
141
+ */
142
+ async archive(applicationId, archive = true) {
143
+ // Backend expects 'archived' field, not 'archive'
144
+ const response = await this.axios.post(`/api/applications/${applicationId}/archive`, { archived: archive });
145
+ return response.data;
146
+ }
147
+ /**
148
+ * Create a contract from an approved application (coordinator only)
149
+ */
150
+ async createContract(applicationId, data) {
151
+ const response = await this.axios.post(`/api/applications/${applicationId}/contracts`, data || {});
152
+ return response.data;
153
+ }
154
+ }
155
+ exports.ApplicationsApi = ApplicationsApi;
156
+ //# sourceMappingURL=applications.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"applications.js","sourceRoot":"","sources":["../../src/api/applications.ts"],"names":[],"mappings":"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"}