@m6d/cortex-server 1.7.0 → 1.8.0

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 (252) hide show
  1. package/dist/index.d.ts +1 -1
  2. package/dist/src/{adapters → lib/adapters}/database.d.ts +16 -1
  3. package/dist/src/lib/ai/context/compressor.d.ts +18 -0
  4. package/dist/src/{ai → lib/ai}/context/index.d.ts +2 -1
  5. package/dist/src/lib/ai/context/intra-turn-compressor.d.ts +24 -0
  6. package/dist/src/{ai → lib/ai}/context/types.d.ts +2 -0
  7. package/dist/src/{config.d.ts → lib/config.d.ts} +54 -66
  8. package/dist/src/{db → lib/db}/schema.d.ts +104 -1
  9. package/dist/src/{index.d.ts → lib/index.d.ts} +1 -2
  10. package/dist/src/{types.d.ts → lib/types.d.ts} +15 -14
  11. package/index.ts +1 -1
  12. package/package.json +8 -3
  13. package/src/{adapters → lib/adapters}/database.ts +20 -1
  14. package/src/{adapters → lib/adapters}/minio.ts +2 -1
  15. package/src/{adapters → lib/adapters}/mssql.ts +38 -2
  16. package/src/lib/ai/context/compressor.ts +259 -0
  17. package/src/{ai → lib/ai}/context/index.ts +6 -1
  18. package/src/lib/ai/context/intra-turn-compressor.ts +264 -0
  19. package/src/{ai → lib/ai}/context/types.ts +4 -1
  20. package/src/{ai → lib/ai}/index.ts +114 -13
  21. package/src/lib/ai/prompt.ts +354 -0
  22. package/src/{ai → lib/ai}/tools/execute-code.tool.ts +5 -2
  23. package/src/{auth → lib/auth}/middleware.ts +7 -0
  24. package/src/{config.ts → lib/config.ts} +65 -66
  25. package/src/{db/migrations/20260309012148_cloudy_maria_hill → lib/db/migrations/20260326231647_nice_speedball}/migration.sql +12 -0
  26. package/src/{db/migrations/20260309012148_cloudy_maria_hill → lib/db/migrations/20260326231647_nice_speedball}/snapshot.json +106 -1
  27. package/src/{db → lib/db}/schema.ts +15 -2
  28. package/src/{factory.ts → lib/factory.ts} +1 -0
  29. package/src/{index.ts → lib/index.ts} +2 -1
  30. package/src/{routes → lib/routes}/files.ts +9 -2
  31. package/src/{routes → lib/routes}/threads.ts +8 -1
  32. package/src/{types.ts → lib/types.ts} +16 -15
  33. package/src/sample/db/client.ts +9 -0
  34. package/src/sample/db/migrations/20260411023125_rich_purple_man/migration.sql +5 -0
  35. package/src/sample/db/migrations/20260411023125_rich_purple_man/snapshot.json +50 -0
  36. package/src/sample/db/schema.ts +10 -0
  37. package/src/sample/domains/account/concepts/session.concept.ts +17 -0
  38. package/src/sample/domains/account/endpoints/listCurrentSessions.endpoint.ts +31 -0
  39. package/src/sample/domains/account/endpoints/revokeAllOtherSessions.endpoint.ts +22 -0
  40. package/src/sample/domains/account/endpoints/revokeCurrentSession.endpoint.ts +33 -0
  41. package/src/sample/domains/account/index.ts +18 -0
  42. package/src/sample/domains/appraisals/concepts/appraisalCycle.concept.ts +15 -0
  43. package/src/sample/domains/appraisals/concepts/appraisalRecord.concept.ts +20 -0
  44. package/src/sample/domains/appraisals/concepts/appraisalRecordCompetency.concept.ts +10 -0
  45. package/src/sample/domains/appraisals/concepts/appraisalRecordFunctionalRequirement.concept.ts +10 -0
  46. package/src/sample/domains/appraisals/concepts/appraisalRecordGoal.concept.ts +17 -0
  47. package/src/sample/domains/appraisals/endpoints/getAppraisalRecordById.endpoint.ts +321 -0
  48. package/src/sample/domains/appraisals/endpoints/getAppraisalRecordCompetencies.endpoint.ts +120 -0
  49. package/src/sample/domains/appraisals/endpoints/getAppraisalRecordFunctionalRequirements.endpoint.ts +126 -0
  50. package/src/sample/domains/appraisals/endpoints/getAppraisalRecordGoals.endpoint.ts +104 -0
  51. package/src/sample/domains/appraisals/endpoints/getAppraisalRecordScore.endpoint.ts +58 -0
  52. package/src/sample/domains/appraisals/endpoints/listAppraisalCyclesSimple.endpoint.ts +52 -0
  53. package/src/sample/domains/appraisals/endpoints/listAppraisalRecords.endpoint.ts +245 -0
  54. package/src/sample/domains/appraisals/endpoints/listAppraisalTemplatesSimple.endpoint.ts +52 -0
  55. package/src/sample/domains/appraisals/index.ts +40 -0
  56. package/src/sample/domains/appraisals/rules/appraisalRecordScoping.rule.ts +7 -0
  57. package/src/sample/domains/attendance/concepts/attendancePermission.concept.ts +17 -0
  58. package/src/sample/domains/attendance/concepts/attendanceTransaction.concept.ts +17 -0
  59. package/src/sample/domains/attendance/concepts/publicHoliday.concept.ts +10 -0
  60. package/src/sample/domains/attendance/concepts/punch.concept.ts +19 -0
  61. package/src/sample/domains/attendance/endpoints/getAttendanceTransactionById.endpoint.ts +444 -0
  62. package/src/sample/domains/attendance/endpoints/getCurrentAttendanceProfile.endpoint.ts +886 -0
  63. package/src/sample/domains/attendance/endpoints/getCurrentAttendanceStatistics.endpoint.ts +49 -0
  64. package/src/sample/domains/attendance/endpoints/listAttendancePermissions.endpoint.ts +176 -0
  65. package/src/sample/domains/attendance/endpoints/listAttendanceTransactionStates.endpoint.ts +26 -0
  66. package/src/sample/domains/attendance/endpoints/listAttendanceTransactions.endpoint.ts +373 -0
  67. package/src/sample/domains/attendance/endpoints/listPublicHolidaysSimple.endpoint.ts +52 -0
  68. package/src/sample/domains/attendance/endpoints/listPunchTypes.endpoint.ts +25 -0
  69. package/src/sample/domains/attendance/endpoints/listPunches.endpoint.ts +178 -0
  70. package/src/sample/domains/attendance/index.ts +41 -0
  71. package/src/sample/domains/attendance/services/attendancePermissions.service.ts +15 -0
  72. package/src/sample/domains/employees/concepts/employee.concept.ts +20 -0
  73. package/src/sample/domains/employees/concepts/employeeBankAccount.concept.ts +19 -0
  74. package/src/sample/domains/employees/concepts/employeeChild.concept.ts +19 -0
  75. package/src/sample/domains/employees/concepts/employeeDocument.concept.ts +21 -0
  76. package/src/sample/domains/employees/concepts/employeeEvent.concept.ts +21 -0
  77. package/src/sample/domains/employees/concepts/employeeExperience.concept.ts +18 -0
  78. package/src/sample/domains/employees/concepts/employeeJobLevelChange.concept.ts +21 -0
  79. package/src/sample/domains/employees/concepts/employeeMedal.concept.ts +20 -0
  80. package/src/sample/domains/employees/concepts/employeeQualification.concept.ts +20 -0
  81. package/src/sample/domains/employees/concepts/employeeSpouse.concept.ts +21 -0
  82. package/src/sample/domains/employees/concepts/employeeViolation.concept.ts +19 -0
  83. package/src/sample/domains/employees/endpoints/getCurrentEmployee.endpoint.ts +1651 -0
  84. package/src/sample/domains/employees/endpoints/getCurrentIdentity.endpoint.ts +197 -0
  85. package/src/sample/domains/employees/endpoints/getCurrentManagers.endpoint.ts +142 -0
  86. package/src/sample/domains/employees/endpoints/getEmployeeById.endpoint.ts +1659 -0
  87. package/src/sample/domains/employees/endpoints/getEmployeeStatistics.endpoint.ts +43 -0
  88. package/src/sample/domains/employees/endpoints/listBankAccounts.endpoint.ts +223 -0
  89. package/src/sample/domains/employees/endpoints/listChildren.endpoint.ts +211 -0
  90. package/src/sample/domains/employees/endpoints/listDocuments.endpoint.ts +222 -0
  91. package/src/sample/domains/employees/endpoints/listEmployeesSimple.endpoint.ts +156 -0
  92. package/src/sample/domains/employees/endpoints/listEvents.endpoint.ts +120 -0
  93. package/src/sample/domains/employees/endpoints/listExperiences.endpoint.ts +188 -0
  94. package/src/sample/domains/employees/endpoints/listJobLevelChanges.endpoint.ts +240 -0
  95. package/src/sample/domains/employees/endpoints/listMedals.endpoint.ts +266 -0
  96. package/src/sample/domains/employees/endpoints/listQualifications.endpoint.ts +265 -0
  97. package/src/sample/domains/employees/endpoints/listSpouses.endpoint.ts +278 -0
  98. package/src/sample/domains/employees/endpoints/listViolations.endpoint.ts +245 -0
  99. package/src/sample/domains/employees/index.ts +75 -0
  100. package/src/sample/domains/employees/services/employees.service.ts +181 -0
  101. package/src/sample/domains/index.ts +10 -0
  102. package/src/sample/domains/leaves/concepts/leave.concept.ts +21 -0
  103. package/src/sample/domains/leaves/concepts/leaveBalance.concept.ts +17 -0
  104. package/src/sample/domains/leaves/concepts/leaveBalanceTransaction.concept.ts +16 -0
  105. package/src/sample/domains/leaves/concepts/leaveType.concept.ts +13 -0
  106. package/src/sample/domains/leaves/concepts/leaveTypes.concept.ts +205 -0
  107. package/src/sample/domains/leaves/endpoints/getBalance.endpoint.ts +53 -0
  108. package/src/sample/domains/leaves/endpoints/getLeaveById.endpoint.ts +53 -0
  109. package/src/sample/domains/leaves/endpoints/listBalanceTransactions.endpoint.ts +196 -0
  110. package/src/sample/domains/leaves/endpoints/listBalanceTypes.endpoint.ts +26 -0
  111. package/src/sample/domains/leaves/endpoints/listBalances.endpoint.ts +201 -0
  112. package/src/sample/domains/leaves/endpoints/listLeaveTypes.endpoint.ts +28 -0
  113. package/src/sample/domains/leaves/endpoints/listLeaves.endpoint.ts +234 -0
  114. package/src/sample/domains/leaves/index.ts +38 -0
  115. package/src/sample/domains/leaves/services/leaveRequests.service.ts +232 -0
  116. package/src/sample/domains/notifications/concepts/notification.concept.ts +19 -0
  117. package/src/sample/domains/notifications/endpoints/countMyNotifications.endpoint.ts +21 -0
  118. package/src/sample/domains/notifications/endpoints/getMyNotification.endpoint.ts +57 -0
  119. package/src/sample/domains/notifications/endpoints/listMyNotifications.endpoint.ts +59 -0
  120. package/src/sample/domains/notifications/endpoints/markMyNotificationAsRead.endpoint.ts +32 -0
  121. package/src/sample/domains/notifications/index.ts +20 -0
  122. package/src/sample/domains/payroll/concepts/payslip.concept.ts +18 -0
  123. package/src/sample/domains/payroll/concepts/salaryCertificate.concept.ts +17 -0
  124. package/src/sample/domains/payroll/concepts/salaryCertificateRequestingEntity.concept.ts +8 -0
  125. package/src/sample/domains/payroll/endpoints/getPayslipById.endpoint.ts +238 -0
  126. package/src/sample/domains/payroll/endpoints/listPayslips.endpoint.ts +216 -0
  127. package/src/sample/domains/payroll/endpoints/listSalaryCertificateLanguages.endpoint.ts +25 -0
  128. package/src/sample/domains/payroll/endpoints/listSalaryCertificateRequestingEntities.endpoint.ts +62 -0
  129. package/src/sample/domains/payroll/endpoints/listSalaryCertificateTypes.endpoint.ts +24 -0
  130. package/src/sample/domains/payroll/endpoints/listSalaryCertificates.endpoint.ts +122 -0
  131. package/src/sample/domains/payroll/endpoints/previewSalaryCertificate.endpoint.ts +45 -0
  132. package/src/sample/domains/payroll/index.ts +32 -0
  133. package/src/sample/domains/payroll/rules/payrollEmployeeContext.rule.ts +7 -0
  134. package/src/sample/domains/payroll/services/salaryCertificates.service.ts +15 -0
  135. package/src/sample/domains/servicing/concepts/service.concept.ts +6 -0
  136. package/src/sample/domains/servicing/concepts/serviceRequest.concept.ts +12 -0
  137. package/src/sample/domains/servicing/concepts/serviceRequestApproval.concept.ts +9 -0
  138. package/src/sample/domains/servicing/endpoints/cancelServiceRequest.endpoint.ts +21 -0
  139. package/src/sample/domains/servicing/endpoints/createServiceRequest.endpoint.ts +511 -0
  140. package/src/sample/domains/servicing/endpoints/getServiceRequest.endpoint.ts +352 -0
  141. package/src/sample/domains/servicing/endpoints/getServiceRequestFormItems.endpoint.ts +219 -0
  142. package/src/sample/domains/servicing/endpoints/getServiceRequestTransactionFormItems.endpoint.ts +216 -0
  143. package/src/sample/domains/servicing/endpoints/getServiceStates.endpoint.ts +47 -0
  144. package/src/sample/domains/servicing/endpoints/invokeServiceRequestAction.endpoint.ts +139 -0
  145. package/src/sample/domains/servicing/endpoints/listServiceRequests.endpoint.ts +292 -0
  146. package/src/sample/domains/servicing/endpoints/listServices.endpoint.ts +108 -0
  147. package/src/sample/domains/servicing/endpoints/updateServiceRequest.endpoint.ts +355 -0
  148. package/src/sample/domains/servicing/index.ts +44 -0
  149. package/src/sample/domains/servicing/rules/checkValidActions.rule.ts +7 -0
  150. package/src/sample/domains/servicing/rules/createServiceRequest.rule.ts +7 -0
  151. package/src/sample/domains/servicing/rules/filterServiceRequestsByState.rule.ts +7 -0
  152. package/src/sample/domains/servicing/rules/passingOptionFields.rule.ts +7 -0
  153. package/src/sample/domains/shared/rules/pagination.rule.ts +7 -0
  154. package/src/sample/domains/suggestions/concepts/suggestion.concept.ts +19 -0
  155. package/src/sample/domains/suggestions/concepts/suggestionCategory.concept.ts +7 -0
  156. package/src/sample/domains/suggestions/concepts/suggestionImpactLevel.concept.ts +7 -0
  157. package/src/sample/domains/suggestions/endpoints/createSuggestion.endpoint.ts +705 -0
  158. package/src/sample/domains/suggestions/endpoints/deleteSuggestion.endpoint.ts +32 -0
  159. package/src/sample/domains/suggestions/endpoints/getSuggestionById.endpoint.ts +635 -0
  160. package/src/sample/domains/suggestions/endpoints/listSuggestionCategories.endpoint.ts +62 -0
  161. package/src/sample/domains/suggestions/endpoints/listSuggestionImpactLevels.endpoint.ts +62 -0
  162. package/src/sample/domains/suggestions/endpoints/listSuggestionStates.endpoint.ts +24 -0
  163. package/src/sample/domains/suggestions/endpoints/listSuggestions.endpoint.ts +132 -0
  164. package/src/sample/domains/suggestions/endpoints/updateSuggestion.endpoint.ts +690 -0
  165. package/src/sample/domains/suggestions/endpoints/updateSuggestionState.endpoint.ts +39 -0
  166. package/src/sample/domains/suggestions/index.ts +34 -0
  167. package/src/sample/domains/suggestions/rules/suggestionScope.rule.ts +7 -0
  168. package/src/sample/domains/surveys/concepts/survey.concept.ts +10 -0
  169. package/src/sample/domains/surveys/concepts/surveyResponse.concept.ts +14 -0
  170. package/src/sample/domains/surveys/endpoints/getSurveyResponseById.endpoint.ts +131 -0
  171. package/src/sample/domains/surveys/endpoints/getTargetedSurvey.endpoint.ts +129 -0
  172. package/src/sample/domains/surveys/endpoints/listTargetedSurveys.endpoint.ts +160 -0
  173. package/src/sample/domains/surveys/endpoints/respondToSurvey.endpoint.ts +144 -0
  174. package/src/sample/domains/surveys/index.ts +21 -0
  175. package/src/sample/drizzle.config.ts +11 -0
  176. package/src/sample/index.bak.ts +341 -0
  177. package/src/sample/index.ts +318 -0
  178. package/src/sample/official-statements/defaults.ts +57 -0
  179. package/src/sample/official-statements/routes.ts +137 -0
  180. package/src/sample/official-statements/service.ts +148 -0
  181. package/src/sample/official-statements/types.ts +23 -0
  182. package/dist/src/ai/context/compressor.d.ts +0 -7
  183. package/dist/src/ai/tools/call-endpoint.tool.d.ts +0 -7
  184. package/src/ai/context/compressor.ts +0 -47
  185. package/src/ai/prompt.ts +0 -126
  186. package/src/ai/tools/call-endpoint.tool.ts +0 -89
  187. package/src/db/migrations/20260315000000_add_context_meta/migration.sql +0 -1
  188. package/dist/src/{adapters → lib/adapters}/minio.d.ts +0 -0
  189. package/dist/src/{adapters → lib/adapters}/mssql.d.ts +0 -0
  190. package/dist/src/{adapters → lib/adapters}/storage.d.ts +0 -0
  191. package/dist/src/{ai → lib/ai}/active-streams.d.ts +0 -0
  192. package/dist/src/{ai → lib/ai}/context/builder.d.ts +0 -0
  193. package/dist/src/{ai → lib/ai}/context/summarizer.d.ts +0 -0
  194. package/dist/src/{ai → lib/ai}/context/token-estimator.d.ts +0 -0
  195. package/dist/src/{ai → lib/ai}/fetch.d.ts +0 -0
  196. package/dist/src/{ai → lib/ai}/helpers.d.ts +0 -0
  197. package/dist/src/{ai → lib/ai}/index.d.ts +0 -0
  198. package/dist/src/{ai → lib/ai}/interceptors/request-interceptor.d.ts +0 -0
  199. package/dist/src/{ai → lib/ai}/prompt.d.ts +0 -0
  200. package/dist/src/{ai → lib/ai}/tools/capture-files.tool.d.ts +0 -0
  201. package/dist/src/{ai → lib/ai}/tools/execute-code.tool.d.ts +0 -0
  202. package/dist/src/{ai → lib/ai}/tools/query-graph.tool.d.ts +0 -0
  203. package/dist/src/{auth → lib/auth}/middleware.d.ts +0 -0
  204. package/dist/src/{cli → lib/cli}/extract-endpoints.d.ts +0 -0
  205. package/dist/src/{db → lib/db}/migrate.d.ts +0 -0
  206. package/dist/src/{factory.d.ts → lib/factory.d.ts} +0 -0
  207. package/dist/src/{graph → lib/graph}/expand-domains.d.ts +0 -0
  208. package/dist/src/{graph → lib/graph}/generate-cypher.d.ts +0 -0
  209. package/dist/src/{graph → lib/graph}/helpers.d.ts +2 -2
  210. /package/dist/src/{graph → lib/graph}/index.d.ts +0 -0
  211. /package/dist/src/{graph → lib/graph}/neo4j.d.ts +0 -0
  212. /package/dist/src/{graph → lib/graph}/resolver.d.ts +0 -0
  213. /package/dist/src/{graph → lib/graph}/seed.d.ts +0 -0
  214. /package/dist/src/{graph → lib/graph}/types.d.ts +0 -0
  215. /package/dist/src/{graph → lib/graph}/validate.d.ts +0 -0
  216. /package/dist/src/{routes → lib/routes}/chat.d.ts +0 -0
  217. /package/dist/src/{routes → lib/routes}/files.d.ts +0 -0
  218. /package/dist/src/{routes → lib/routes}/index.d.ts +0 -0
  219. /package/dist/src/{routes → lib/routes}/threads.d.ts +0 -0
  220. /package/dist/src/{routes → lib/routes}/ws.d.ts +0 -0
  221. /package/dist/src/{ws → lib/ws}/connections.d.ts +0 -0
  222. /package/dist/src/{ws → lib/ws}/events.d.ts +0 -0
  223. /package/dist/src/{ws → lib/ws}/index.d.ts +0 -0
  224. /package/dist/src/{ws → lib/ws}/notify.d.ts +0 -0
  225. /package/src/{adapters → lib/adapters}/storage.ts +0 -0
  226. /package/src/{ai → lib/ai}/active-streams.ts +0 -0
  227. /package/src/{ai → lib/ai}/context/builder.ts +0 -0
  228. /package/src/{ai → lib/ai}/context/summarizer.ts +0 -0
  229. /package/src/{ai → lib/ai}/context/token-estimator.ts +0 -0
  230. /package/src/{ai → lib/ai}/fetch.ts +0 -0
  231. /package/src/{ai → lib/ai}/helpers.ts +0 -0
  232. /package/src/{ai → lib/ai}/interceptors/request-interceptor.ts +0 -0
  233. /package/src/{ai → lib/ai}/tools/capture-files.tool.ts +0 -0
  234. /package/src/{ai → lib/ai}/tools/query-graph.tool.ts +0 -0
  235. /package/src/{cli → lib/cli}/extract-endpoints.ts +0 -0
  236. /package/src/{db → lib/db}/migrate.ts +0 -0
  237. /package/src/{graph → lib/graph}/expand-domains.ts +0 -0
  238. /package/src/{graph → lib/graph}/generate-cypher.ts +0 -0
  239. /package/src/{graph → lib/graph}/helpers.ts +0 -0
  240. /package/src/{graph → lib/graph}/index.ts +0 -0
  241. /package/src/{graph → lib/graph}/neo4j.ts +0 -0
  242. /package/src/{graph → lib/graph}/resolver.ts +0 -0
  243. /package/src/{graph → lib/graph}/seed.ts +0 -0
  244. /package/src/{graph → lib/graph}/types.ts +0 -0
  245. /package/src/{graph → lib/graph}/validate.ts +0 -0
  246. /package/src/{routes → lib/routes}/chat.ts +0 -0
  247. /package/src/{routes → lib/routes}/index.ts +0 -0
  248. /package/src/{routes → lib/routes}/ws.ts +0 -0
  249. /package/src/{ws → lib/ws}/connections.ts +0 -0
  250. /package/src/{ws → lib/ws}/events.ts +0 -0
  251. /package/src/{ws → lib/ws}/index.ts +0 -0
  252. /package/src/{ws → lib/ws}/notify.ts +0 -0
@@ -0,0 +1,1651 @@
1
+ import { defineEndpoint } from "@m6d/cortex-server";
2
+ import { employeeConcept } from "../concepts/employee.concept";
3
+
4
+ export const getCurrentEmployeeEndpoint = defineEndpoint({
5
+ name: "Get current employee profile",
6
+ path: "/employees/user",
7
+ method: "GET",
8
+ description:
9
+ "Get the full employee profile for the currently authenticated user. Returns comprehensive personal information, job assignment, department, and employment details. Returns 204 if the user has no linked employee record.",
10
+ queries: [employeeConcept],
11
+ returns: [{ concept: employeeConcept }],
12
+
13
+ // @auto-generated-start
14
+ autoGenerated: {
15
+ params: [] as const,
16
+ body: [] as const,
17
+ response: [
18
+ { name: "id", required: false, type: "uuid" },
19
+ {
20
+ name: "user",
21
+ required: false,
22
+ type: "object",
23
+ properties: [
24
+ { name: "id", required: false, type: "uuid" },
25
+ {
26
+ name: "name",
27
+ required: false,
28
+ type: "object",
29
+ properties: [
30
+ { name: "ar", required: false, type: "string" },
31
+ { name: "en", required: false, type: "string" },
32
+ ],
33
+ },
34
+ ],
35
+ },
36
+ {
37
+ name: "name",
38
+ required: false,
39
+ type: "object",
40
+ properties: [
41
+ { name: "ar", required: false, type: "string" },
42
+ { name: "en", required: false, type: "string" },
43
+ ],
44
+ },
45
+ {
46
+ name: "oldName",
47
+ required: false,
48
+ type: "object",
49
+ properties: [
50
+ { name: "ar", required: false, type: "string" },
51
+ { name: "en", required: false, type: "string" },
52
+ ],
53
+ },
54
+ { name: "gender", required: false, type: "string" },
55
+ {
56
+ name: "nationality",
57
+ required: false,
58
+ type: "object",
59
+ properties: [
60
+ { name: "id", required: false, type: "uuid" },
61
+ {
62
+ name: "name",
63
+ required: false,
64
+ type: "object",
65
+ properties: [
66
+ { name: "ar", required: false, type: "string" },
67
+ { name: "en", required: false, type: "string" },
68
+ ],
69
+ },
70
+ {
71
+ name: "description",
72
+ required: false,
73
+ type: "object",
74
+ properties: [
75
+ { name: "ar", required: false, type: "string" },
76
+ { name: "en", required: false, type: "string" },
77
+ ],
78
+ },
79
+ { name: "order", required: false, type: "number" },
80
+ { name: "category", required: false, type: "string" },
81
+ ],
82
+ },
83
+ {
84
+ name: "oldNationality",
85
+ required: false,
86
+ type: "object",
87
+ properties: [
88
+ { name: "id", required: false, type: "uuid" },
89
+ {
90
+ name: "name",
91
+ required: false,
92
+ type: "object",
93
+ properties: [
94
+ { name: "ar", required: false, type: "string" },
95
+ { name: "en", required: false, type: "string" },
96
+ ],
97
+ },
98
+ {
99
+ name: "description",
100
+ required: false,
101
+ type: "object",
102
+ properties: [
103
+ { name: "ar", required: false, type: "string" },
104
+ { name: "en", required: false, type: "string" },
105
+ ],
106
+ },
107
+ { name: "order", required: false, type: "number" },
108
+ { name: "category", required: false, type: "string" },
109
+ ],
110
+ },
111
+ { name: "oldNationalityName", required: false, type: "string" },
112
+ { name: "newNationalityChangeDate", required: false, type: "datetime" },
113
+ { name: "dateOfBirth", required: false, type: "datetime" },
114
+ { name: "placeOfBirth", required: false, type: "string" },
115
+ {
116
+ name: "maritalStatus",
117
+ required: false,
118
+ type: "object",
119
+ properties: [
120
+ { name: "id", required: false, type: "uuid" },
121
+ {
122
+ name: "name",
123
+ required: false,
124
+ type: "object",
125
+ properties: [
126
+ { name: "ar", required: false, type: "string" },
127
+ { name: "en", required: false, type: "string" },
128
+ ],
129
+ },
130
+ ],
131
+ },
132
+ { name: "heightInCentimeters", required: false, type: "number" },
133
+ { name: "weightInKilograms", required: false, type: "number" },
134
+ {
135
+ name: "religion",
136
+ required: false,
137
+ type: "object",
138
+ properties: [
139
+ { name: "id", required: false, type: "uuid" },
140
+ {
141
+ name: "name",
142
+ required: false,
143
+ type: "object",
144
+ properties: [
145
+ { name: "ar", required: false, type: "string" },
146
+ { name: "en", required: false, type: "string" },
147
+ ],
148
+ },
149
+ ],
150
+ },
151
+ { name: "bloodType", required: false, type: "string" },
152
+ { name: "nationalityAcquisitionMethod", required: false, type: "string" },
153
+ { name: "nationalityAcquisitionDate", required: false, type: "datetime" },
154
+ { name: "isMotherCitizen", required: false, type: "boolean" },
155
+ {
156
+ name: "photoFile",
157
+ required: false,
158
+ type: "object",
159
+ properties: [
160
+ { name: "id", required: false, type: "uuid" },
161
+ { name: "createdTime", required: false, type: "datetime" },
162
+ {
163
+ name: "name",
164
+ required: false,
165
+ type: "object",
166
+ properties: [
167
+ { name: "ar", required: false, type: "string" },
168
+ { name: "en", required: false, type: "string" },
169
+ ],
170
+ },
171
+ {
172
+ name: "description",
173
+ required: false,
174
+ type: "object",
175
+ properties: [
176
+ { name: "ar", required: false, type: "string" },
177
+ { name: "en", required: false, type: "string" },
178
+ ],
179
+ },
180
+ { name: "sizeInBytes", required: false, type: "number" },
181
+ { name: "contentType", required: false, type: "string" },
182
+ ],
183
+ },
184
+ { name: "nationalIdNumber", required: false, type: "string" },
185
+ { name: "nationalIdExpirationDate", required: false, type: "datetime" },
186
+ { name: "passportNumber", required: false, type: "string" },
187
+ { name: "passportExpirationDate", required: false, type: "datetime" },
188
+ { name: "passportUnifiedNumber", required: false, type: "string" },
189
+ { name: "passportIssueAuthority", required: false, type: "string" },
190
+ { name: "familyBookNumber", required: false, type: "string" },
191
+ {
192
+ name: "familyBookIssuingCity",
193
+ required: false,
194
+ type: "object",
195
+ properties: [
196
+ { name: "id", required: false, type: "uuid" },
197
+ {
198
+ name: "name",
199
+ required: false,
200
+ type: "object",
201
+ properties: [
202
+ { name: "ar", required: false, type: "string" },
203
+ { name: "en", required: false, type: "string" },
204
+ ],
205
+ },
206
+ { name: "suburbCount", required: false, type: "number" },
207
+ ],
208
+ },
209
+ {
210
+ name: "familyBookIssuingSuburb",
211
+ required: false,
212
+ type: "object",
213
+ properties: [
214
+ { name: "id", required: false, type: "uuid" },
215
+ {
216
+ name: "name",
217
+ required: false,
218
+ type: "object",
219
+ properties: [
220
+ { name: "ar", required: false, type: "string" },
221
+ { name: "en", required: false, type: "string" },
222
+ ],
223
+ },
224
+ ],
225
+ },
226
+ { name: "residencyNumber", required: false, type: "string" },
227
+ { name: "residencyExpirationDate", required: false, type: "datetime" },
228
+ {
229
+ name: "city",
230
+ required: false,
231
+ type: "object",
232
+ properties: [
233
+ { name: "id", required: false, type: "uuid" },
234
+ {
235
+ name: "name",
236
+ required: false,
237
+ type: "object",
238
+ properties: [
239
+ { name: "ar", required: false, type: "string" },
240
+ { name: "en", required: false, type: "string" },
241
+ ],
242
+ },
243
+ { name: "suburbCount", required: false, type: "number" },
244
+ ],
245
+ },
246
+ { name: "address", required: false, type: "string" },
247
+ { name: "phoneNumber", required: false, type: "string" },
248
+ { name: "email", required: false, type: "string" },
249
+ { name: "number", required: false, type: "string" },
250
+ { name: "isConfidential", required: false, type: "boolean" },
251
+ {
252
+ name: "department",
253
+ required: false,
254
+ type: "object",
255
+ properties: [
256
+ { name: "id", required: false, type: "uuid" },
257
+ {
258
+ name: "name",
259
+ required: false,
260
+ type: "object",
261
+ properties: [
262
+ { name: "ar", required: false, type: "string" },
263
+ { name: "en", required: false, type: "string" },
264
+ ],
265
+ },
266
+ { name: "code", required: false, type: "string" },
267
+ {
268
+ name: "parent",
269
+ required: false,
270
+ type: "object",
271
+ properties: [
272
+ { name: "id", required: false, type: "uuid" },
273
+ {
274
+ name: "name",
275
+ required: false,
276
+ type: "object",
277
+ properties: [
278
+ { name: "ar", required: false, type: "string" },
279
+ { name: "en", required: false, type: "string" },
280
+ ],
281
+ },
282
+ ],
283
+ },
284
+ {
285
+ name: "parentSecond",
286
+ required: false,
287
+ type: "object",
288
+ properties: [
289
+ { name: "id", required: false, type: "uuid" },
290
+ {
291
+ name: "name",
292
+ required: false,
293
+ type: "object",
294
+ properties: [
295
+ { name: "ar", required: false, type: "string" },
296
+ { name: "en", required: false, type: "string" },
297
+ ],
298
+ },
299
+ ],
300
+ },
301
+ {
302
+ name: "parentThird",
303
+ required: false,
304
+ type: "object",
305
+ properties: [
306
+ { name: "id", required: false, type: "uuid" },
307
+ {
308
+ name: "name",
309
+ required: false,
310
+ type: "object",
311
+ properties: [
312
+ { name: "ar", required: false, type: "string" },
313
+ { name: "en", required: false, type: "string" },
314
+ ],
315
+ },
316
+ ],
317
+ },
318
+ { name: "childCount", required: false, type: "number" },
319
+ { name: "employeeCount", required: false, type: "number" },
320
+ {
321
+ name: "manager",
322
+ required: false,
323
+ type: "object",
324
+ properties: [
325
+ { name: "id", required: false, type: "uuid" },
326
+ {
327
+ name: "name",
328
+ required: false,
329
+ type: "object",
330
+ properties: [
331
+ { name: "ar", required: false, type: "string" },
332
+ { name: "en", required: false, type: "string" },
333
+ ],
334
+ },
335
+ { name: "number", required: false, type: "string" },
336
+ {
337
+ name: "jobClassification",
338
+ required: false,
339
+ type: "object",
340
+ properties: [
341
+ { name: "id", required: false, type: "uuid" },
342
+ {
343
+ name: "name",
344
+ required: false,
345
+ type: "object",
346
+ properties: [
347
+ { name: "ar", required: false, type: "string" },
348
+ { name: "en", required: false, type: "string" },
349
+ ],
350
+ },
351
+ { name: "type", required: false, type: "string" },
352
+ ],
353
+ },
354
+ {
355
+ name: "jobLevel",
356
+ required: false,
357
+ type: "object",
358
+ properties: [
359
+ { name: "id", required: false, type: "uuid" },
360
+ {
361
+ name: "name",
362
+ required: false,
363
+ type: "object",
364
+ properties: [
365
+ { name: "ar", required: false, type: "string" },
366
+ { name: "en", required: false, type: "string" },
367
+ ],
368
+ },
369
+ ],
370
+ },
371
+ {
372
+ name: "jobTitle",
373
+ required: false,
374
+ type: "object",
375
+ properties: [
376
+ { name: "id", required: false, type: "uuid" },
377
+ {
378
+ name: "name",
379
+ required: false,
380
+ type: "object",
381
+ properties: [
382
+ { name: "ar", required: false, type: "string" },
383
+ { name: "en", required: false, type: "string" },
384
+ ],
385
+ },
386
+ {
387
+ name: "category",
388
+ required: false,
389
+ type: "object",
390
+ properties: [
391
+ { name: "id", required: false, type: "uuid" },
392
+ { name: "name", required: false, type: "object" },
393
+ ],
394
+ },
395
+ ],
396
+ },
397
+ {
398
+ name: "department",
399
+ required: false,
400
+ type: "object",
401
+ properties: [
402
+ { name: "id", required: false, type: "uuid" },
403
+ {
404
+ name: "name",
405
+ required: false,
406
+ type: "object",
407
+ properties: [
408
+ { name: "ar", required: false, type: "string" },
409
+ { name: "en", required: false, type: "string" },
410
+ ],
411
+ },
412
+ ],
413
+ },
414
+ {
415
+ name: "user",
416
+ required: false,
417
+ type: "object",
418
+ properties: [
419
+ { name: "id", required: false, type: "uuid" },
420
+ {
421
+ name: "name",
422
+ required: false,
423
+ type: "object",
424
+ properties: [
425
+ { name: "ar", required: false, type: "string" },
426
+ { name: "en", required: false, type: "string" },
427
+ ],
428
+ },
429
+ ],
430
+ },
431
+ ],
432
+ },
433
+ ],
434
+ },
435
+ {
436
+ name: "manager",
437
+ required: false,
438
+ type: "object",
439
+ properties: [
440
+ {
441
+ name: "employee",
442
+ required: false,
443
+ type: "object",
444
+ properties: [
445
+ { name: "id", required: false, type: "uuid" },
446
+ {
447
+ name: "name",
448
+ required: false,
449
+ type: "object",
450
+ properties: [
451
+ { name: "ar", required: false, type: "string" },
452
+ { name: "en", required: false, type: "string" },
453
+ ],
454
+ },
455
+ { name: "number", required: false, type: "string" },
456
+ {
457
+ name: "jobClassification",
458
+ required: false,
459
+ type: "object",
460
+ properties: [
461
+ { name: "id", required: false, type: "uuid" },
462
+ {
463
+ name: "name",
464
+ required: false,
465
+ type: "object",
466
+ properties: [
467
+ { name: "ar", required: false, type: "string" },
468
+ { name: "en", required: false, type: "string" },
469
+ ],
470
+ },
471
+ { name: "type", required: false, type: "string" },
472
+ ],
473
+ },
474
+ {
475
+ name: "jobLevel",
476
+ required: false,
477
+ type: "object",
478
+ properties: [
479
+ { name: "id", required: false, type: "uuid" },
480
+ {
481
+ name: "name",
482
+ required: false,
483
+ type: "object",
484
+ properties: [
485
+ { name: "ar", required: false, type: "string" },
486
+ { name: "en", required: false, type: "string" },
487
+ ],
488
+ },
489
+ ],
490
+ },
491
+ {
492
+ name: "jobTitle",
493
+ required: false,
494
+ type: "object",
495
+ properties: [
496
+ { name: "id", required: false, type: "uuid" },
497
+ {
498
+ name: "name",
499
+ required: false,
500
+ type: "object",
501
+ properties: [
502
+ { name: "ar", required: false, type: "string" },
503
+ { name: "en", required: false, type: "string" },
504
+ ],
505
+ },
506
+ {
507
+ name: "category",
508
+ required: false,
509
+ type: "object",
510
+ properties: [
511
+ { name: "id", required: false, type: "uuid" },
512
+ { name: "name", required: false, type: "object" },
513
+ ],
514
+ },
515
+ ],
516
+ },
517
+ {
518
+ name: "department",
519
+ required: false,
520
+ type: "object",
521
+ properties: [
522
+ { name: "id", required: false, type: "uuid" },
523
+ {
524
+ name: "name",
525
+ required: false,
526
+ type: "object",
527
+ properties: [
528
+ { name: "ar", required: false, type: "string" },
529
+ { name: "en", required: false, type: "string" },
530
+ ],
531
+ },
532
+ ],
533
+ },
534
+ {
535
+ name: "user",
536
+ required: false,
537
+ type: "object",
538
+ properties: [
539
+ { name: "id", required: false, type: "uuid" },
540
+ {
541
+ name: "name",
542
+ required: false,
543
+ type: "object",
544
+ properties: [
545
+ { name: "ar", required: false, type: "string" },
546
+ { name: "en", required: false, type: "string" },
547
+ ],
548
+ },
549
+ ],
550
+ },
551
+ ],
552
+ },
553
+ { name: "type", required: false, type: "string" },
554
+ {
555
+ name: "titles",
556
+ required: false,
557
+ type: "object",
558
+ isArray: true,
559
+ properties: [
560
+ { name: "ar", required: false, type: "string" },
561
+ { name: "en", required: false, type: "string" },
562
+ ],
563
+ },
564
+ ],
565
+ },
566
+ {
567
+ name: "jobClassification",
568
+ required: false,
569
+ type: "object",
570
+ properties: [
571
+ { name: "id", required: false, type: "uuid" },
572
+ {
573
+ name: "name",
574
+ required: false,
575
+ type: "object",
576
+ properties: [
577
+ { name: "ar", required: false, type: "string" },
578
+ { name: "en", required: false, type: "string" },
579
+ ],
580
+ },
581
+ { name: "type", required: false, type: "string" },
582
+ ],
583
+ },
584
+ {
585
+ name: "jobLevel",
586
+ required: false,
587
+ type: "object",
588
+ properties: [
589
+ { name: "id", required: false, type: "uuid" },
590
+ {
591
+ name: "name",
592
+ required: false,
593
+ type: "object",
594
+ properties: [
595
+ { name: "ar", required: false, type: "string" },
596
+ { name: "en", required: false, type: "string" },
597
+ ],
598
+ },
599
+ ],
600
+ },
601
+ {
602
+ name: "jobTitle",
603
+ required: false,
604
+ type: "object",
605
+ properties: [
606
+ { name: "id", required: false, type: "uuid" },
607
+ {
608
+ name: "name",
609
+ required: false,
610
+ type: "object",
611
+ properties: [
612
+ { name: "ar", required: false, type: "string" },
613
+ { name: "en", required: false, type: "string" },
614
+ ],
615
+ },
616
+ ],
617
+ },
618
+ {
619
+ name: "jobCategory",
620
+ required: false,
621
+ type: "object",
622
+ properties: [
623
+ { name: "id", required: false, type: "uuid" },
624
+ {
625
+ name: "name",
626
+ required: false,
627
+ type: "object",
628
+ properties: [
629
+ { name: "ar", required: false, type: "string" },
630
+ { name: "en", required: false, type: "string" },
631
+ ],
632
+ },
633
+ ],
634
+ },
635
+ {
636
+ name: "qualification",
637
+ required: false,
638
+ type: "object",
639
+ properties: [
640
+ { name: "id", required: false, type: "uuid" },
641
+ {
642
+ name: "name",
643
+ required: false,
644
+ type: "object",
645
+ properties: [
646
+ { name: "ar", required: false, type: "string" },
647
+ { name: "en", required: false, type: "string" },
648
+ ],
649
+ },
650
+ ],
651
+ },
652
+ { name: "hireDate", required: false, type: "datetime" },
653
+ { name: "lengthOfServiceInDays", required: false, type: "number" },
654
+ { name: "lengthOfPreviousExperienceInDays", required: false, type: "number" },
655
+ { name: "seniorityRecordInMonths", required: false, type: "number" },
656
+ {
657
+ name: "employmentType",
658
+ required: false,
659
+ type: "object",
660
+ properties: [
661
+ { name: "id", required: false, type: "uuid" },
662
+ {
663
+ name: "name",
664
+ required: false,
665
+ type: "object",
666
+ properties: [
667
+ { name: "ar", required: false, type: "string" },
668
+ { name: "en", required: false, type: "string" },
669
+ ],
670
+ },
671
+ ],
672
+ },
673
+ { name: "workLocation", required: false, type: "string" },
674
+ {
675
+ name: "militaryStatus",
676
+ required: false,
677
+ type: "object",
678
+ properties: [
679
+ { name: "id", required: false, type: "uuid" },
680
+ {
681
+ name: "name",
682
+ required: false,
683
+ type: "object",
684
+ properties: [
685
+ { name: "ar", required: false, type: "string" },
686
+ { name: "en", required: false, type: "string" },
687
+ ],
688
+ },
689
+ ],
690
+ },
691
+ { name: "state", required: false, type: "string" },
692
+ {
693
+ name: "lastJobLevelChange",
694
+ required: false,
695
+ type: "object",
696
+ properties: [
697
+ { name: "id", required: false, type: "uuid" },
698
+ {
699
+ name: "employee",
700
+ required: false,
701
+ type: "object",
702
+ properties: [
703
+ { name: "id", required: false, type: "uuid" },
704
+ {
705
+ name: "name",
706
+ required: false,
707
+ type: "object",
708
+ properties: [
709
+ { name: "ar", required: false, type: "string" },
710
+ { name: "en", required: false, type: "string" },
711
+ ],
712
+ },
713
+ { name: "number", required: false, type: "string" },
714
+ {
715
+ name: "jobClassification",
716
+ required: false,
717
+ type: "object",
718
+ properties: [
719
+ { name: "id", required: false, type: "uuid" },
720
+ {
721
+ name: "name",
722
+ required: false,
723
+ type: "object",
724
+ properties: [
725
+ { name: "ar", required: false, type: "string" },
726
+ { name: "en", required: false, type: "string" },
727
+ ],
728
+ },
729
+ { name: "type", required: false, type: "string" },
730
+ ],
731
+ },
732
+ {
733
+ name: "jobLevel",
734
+ required: false,
735
+ type: "object",
736
+ properties: [
737
+ { name: "id", required: false, type: "uuid" },
738
+ {
739
+ name: "name",
740
+ required: false,
741
+ type: "object",
742
+ properties: [
743
+ { name: "ar", required: false, type: "string" },
744
+ { name: "en", required: false, type: "string" },
745
+ ],
746
+ },
747
+ ],
748
+ },
749
+ {
750
+ name: "jobTitle",
751
+ required: false,
752
+ type: "object",
753
+ properties: [
754
+ { name: "id", required: false, type: "uuid" },
755
+ {
756
+ name: "name",
757
+ required: false,
758
+ type: "object",
759
+ properties: [
760
+ { name: "ar", required: false, type: "string" },
761
+ { name: "en", required: false, type: "string" },
762
+ ],
763
+ },
764
+ {
765
+ name: "category",
766
+ required: false,
767
+ type: "object",
768
+ properties: [
769
+ { name: "id", required: false, type: "uuid" },
770
+ { name: "name", required: false, type: "object" },
771
+ ],
772
+ },
773
+ ],
774
+ },
775
+ {
776
+ name: "department",
777
+ required: false,
778
+ type: "object",
779
+ properties: [
780
+ { name: "id", required: false, type: "uuid" },
781
+ {
782
+ name: "name",
783
+ required: false,
784
+ type: "object",
785
+ properties: [
786
+ { name: "ar", required: false, type: "string" },
787
+ { name: "en", required: false, type: "string" },
788
+ ],
789
+ },
790
+ ],
791
+ },
792
+ {
793
+ name: "user",
794
+ required: false,
795
+ type: "object",
796
+ properties: [
797
+ { name: "id", required: false, type: "uuid" },
798
+ {
799
+ name: "name",
800
+ required: false,
801
+ type: "object",
802
+ properties: [
803
+ { name: "ar", required: false, type: "string" },
804
+ { name: "en", required: false, type: "string" },
805
+ ],
806
+ },
807
+ ],
808
+ },
809
+ ],
810
+ },
811
+ {
812
+ name: "serviceRequest",
813
+ required: false,
814
+ type: "object",
815
+ properties: [{ name: "id", required: false, type: "uuid" }],
816
+ },
817
+ { name: "type", required: false, type: "string" },
818
+ {
819
+ name: "promotionType",
820
+ required: false,
821
+ type: "object",
822
+ properties: [
823
+ { name: "id", required: false, type: "uuid" },
824
+ {
825
+ name: "name",
826
+ required: false,
827
+ type: "object",
828
+ properties: [
829
+ { name: "ar", required: false, type: "string" },
830
+ { name: "en", required: false, type: "string" },
831
+ ],
832
+ },
833
+ ],
834
+ },
835
+ { name: "reason", required: false, type: "string" },
836
+ { name: "changeDate", required: false, type: "datetime" },
837
+ { name: "referenceDate", required: false, type: "datetime" },
838
+ { name: "referenceNumber", required: false, type: "string" },
839
+ {
840
+ name: "currentJobLevel",
841
+ required: false,
842
+ type: "object",
843
+ properties: [
844
+ { name: "id", required: false, type: "uuid" },
845
+ {
846
+ name: "name",
847
+ required: false,
848
+ type: "object",
849
+ properties: [
850
+ { name: "ar", required: false, type: "string" },
851
+ { name: "en", required: false, type: "string" },
852
+ ],
853
+ },
854
+ ],
855
+ },
856
+ {
857
+ name: "newJobLevel",
858
+ required: false,
859
+ type: "object",
860
+ properties: [
861
+ { name: "id", required: false, type: "uuid" },
862
+ {
863
+ name: "name",
864
+ required: false,
865
+ type: "object",
866
+ properties: [
867
+ { name: "ar", required: false, type: "string" },
868
+ { name: "en", required: false, type: "string" },
869
+ ],
870
+ },
871
+ ],
872
+ },
873
+ ],
874
+ },
875
+ { name: "nextPromotionDueDate", required: false, type: "datetime" },
876
+ {
877
+ name: "qualifications",
878
+ required: false,
879
+ type: "object",
880
+ isArray: true,
881
+ properties: [
882
+ { name: "id", required: false, type: "uuid" },
883
+ {
884
+ name: "employee",
885
+ required: false,
886
+ type: "object",
887
+ properties: [
888
+ { name: "id", required: false, type: "uuid" },
889
+ {
890
+ name: "name",
891
+ required: false,
892
+ type: "object",
893
+ properties: [
894
+ { name: "ar", required: false, type: "string" },
895
+ { name: "en", required: false, type: "string" },
896
+ ],
897
+ },
898
+ { name: "number", required: false, type: "string" },
899
+ {
900
+ name: "jobClassification",
901
+ required: false,
902
+ type: "object",
903
+ properties: [
904
+ { name: "id", required: false, type: "uuid" },
905
+ {
906
+ name: "name",
907
+ required: false,
908
+ type: "object",
909
+ properties: [
910
+ { name: "ar", required: false, type: "string" },
911
+ { name: "en", required: false, type: "string" },
912
+ ],
913
+ },
914
+ { name: "type", required: false, type: "string" },
915
+ ],
916
+ },
917
+ {
918
+ name: "jobLevel",
919
+ required: false,
920
+ type: "object",
921
+ properties: [
922
+ { name: "id", required: false, type: "uuid" },
923
+ {
924
+ name: "name",
925
+ required: false,
926
+ type: "object",
927
+ properties: [
928
+ { name: "ar", required: false, type: "string" },
929
+ { name: "en", required: false, type: "string" },
930
+ ],
931
+ },
932
+ ],
933
+ },
934
+ {
935
+ name: "jobTitle",
936
+ required: false,
937
+ type: "object",
938
+ properties: [
939
+ { name: "id", required: false, type: "uuid" },
940
+ {
941
+ name: "name",
942
+ required: false,
943
+ type: "object",
944
+ properties: [
945
+ { name: "ar", required: false, type: "string" },
946
+ { name: "en", required: false, type: "string" },
947
+ ],
948
+ },
949
+ {
950
+ name: "category",
951
+ required: false,
952
+ type: "object",
953
+ properties: [
954
+ { name: "id", required: false, type: "uuid" },
955
+ { name: "name", required: false, type: "object" },
956
+ ],
957
+ },
958
+ ],
959
+ },
960
+ {
961
+ name: "department",
962
+ required: false,
963
+ type: "object",
964
+ properties: [
965
+ { name: "id", required: false, type: "uuid" },
966
+ {
967
+ name: "name",
968
+ required: false,
969
+ type: "object",
970
+ properties: [
971
+ { name: "ar", required: false, type: "string" },
972
+ { name: "en", required: false, type: "string" },
973
+ ],
974
+ },
975
+ ],
976
+ },
977
+ {
978
+ name: "user",
979
+ required: false,
980
+ type: "object",
981
+ properties: [
982
+ { name: "id", required: false, type: "uuid" },
983
+ {
984
+ name: "name",
985
+ required: false,
986
+ type: "object",
987
+ properties: [
988
+ { name: "ar", required: false, type: "string" },
989
+ { name: "en", required: false, type: "string" },
990
+ ],
991
+ },
992
+ ],
993
+ },
994
+ ],
995
+ },
996
+ {
997
+ name: "qualification",
998
+ required: false,
999
+ type: "object",
1000
+ properties: [
1001
+ { name: "id", required: false, type: "uuid" },
1002
+ {
1003
+ name: "name",
1004
+ required: false,
1005
+ type: "object",
1006
+ properties: [
1007
+ { name: "ar", required: false, type: "string" },
1008
+ { name: "en", required: false, type: "string" },
1009
+ ],
1010
+ },
1011
+ ],
1012
+ },
1013
+ {
1014
+ name: "major",
1015
+ required: false,
1016
+ type: "object",
1017
+ properties: [
1018
+ { name: "id", required: false, type: "uuid" },
1019
+ {
1020
+ name: "name",
1021
+ required: false,
1022
+ type: "object",
1023
+ properties: [
1024
+ { name: "ar", required: false, type: "string" },
1025
+ { name: "en", required: false, type: "string" },
1026
+ ],
1027
+ },
1028
+ ],
1029
+ },
1030
+ {
1031
+ name: "specialization",
1032
+ required: false,
1033
+ type: "object",
1034
+ properties: [
1035
+ { name: "id", required: false, type: "uuid" },
1036
+ {
1037
+ name: "name",
1038
+ required: false,
1039
+ type: "object",
1040
+ properties: [
1041
+ { name: "ar", required: false, type: "string" },
1042
+ { name: "en", required: false, type: "string" },
1043
+ ],
1044
+ },
1045
+ ],
1046
+ },
1047
+ { name: "commencementDate", required: false, type: "datetime" },
1048
+ { name: "graduationDate", required: false, type: "datetime" },
1049
+ { name: "grade", required: false, type: "string" },
1050
+ { name: "score", required: false, type: "string" },
1051
+ { name: "institution", required: false, type: "string" },
1052
+ { name: "placeOfStudy", required: false, type: "string" },
1053
+ {
1054
+ name: "attachment",
1055
+ required: false,
1056
+ type: "object",
1057
+ properties: [
1058
+ { name: "id", required: false, type: "uuid" },
1059
+ { name: "createdTime", required: false, type: "datetime" },
1060
+ {
1061
+ name: "name",
1062
+ required: false,
1063
+ type: "object",
1064
+ properties: [
1065
+ { name: "ar", required: false, type: "string" },
1066
+ { name: "en", required: false, type: "string" },
1067
+ ],
1068
+ },
1069
+ {
1070
+ name: "description",
1071
+ required: false,
1072
+ type: "object",
1073
+ properties: [
1074
+ { name: "ar", required: false, type: "string" },
1075
+ { name: "en", required: false, type: "string" },
1076
+ ],
1077
+ },
1078
+ { name: "sizeInBytes", required: false, type: "number" },
1079
+ { name: "contentType", required: false, type: "string" },
1080
+ ],
1081
+ },
1082
+ ],
1083
+ },
1084
+ {
1085
+ name: "children",
1086
+ required: false,
1087
+ type: "object",
1088
+ isArray: true,
1089
+ properties: [
1090
+ { name: "id", required: false, type: "uuid" },
1091
+ {
1092
+ name: "employee",
1093
+ required: false,
1094
+ type: "object",
1095
+ properties: [
1096
+ { name: "id", required: false, type: "uuid" },
1097
+ {
1098
+ name: "name",
1099
+ required: false,
1100
+ type: "object",
1101
+ properties: [
1102
+ { name: "ar", required: false, type: "string" },
1103
+ { name: "en", required: false, type: "string" },
1104
+ ],
1105
+ },
1106
+ ],
1107
+ },
1108
+ {
1109
+ name: "name",
1110
+ required: false,
1111
+ type: "object",
1112
+ properties: [
1113
+ { name: "ar", required: false, type: "string" },
1114
+ { name: "en", required: false, type: "string" },
1115
+ ],
1116
+ },
1117
+ { name: "dateOfBirth", required: false, type: "datetime" },
1118
+ { name: "order", required: false, type: "number" },
1119
+ { name: "gender", required: false, type: "string" },
1120
+ { name: "placeOfBirth", required: false, type: "string" },
1121
+ { name: "nationalIdNumber", required: false, type: "string" },
1122
+ { name: "nationalIdExpirationDate", required: false, type: "datetime" },
1123
+ {
1124
+ name: "nationality",
1125
+ required: false,
1126
+ type: "object",
1127
+ properties: [
1128
+ { name: "id", required: false, type: "uuid" },
1129
+ {
1130
+ name: "name",
1131
+ required: false,
1132
+ type: "object",
1133
+ properties: [
1134
+ { name: "ar", required: false, type: "string" },
1135
+ { name: "en", required: false, type: "string" },
1136
+ ],
1137
+ },
1138
+ ],
1139
+ },
1140
+ { name: "motherName", required: false, type: "string" },
1141
+ { name: "allowanceStatus", required: false, type: "string" },
1142
+ { name: "notes", required: false, type: "string" },
1143
+ {
1144
+ name: "birthCertificateFile",
1145
+ required: false,
1146
+ type: "object",
1147
+ properties: [
1148
+ { name: "id", required: false, type: "uuid" },
1149
+ { name: "createdTime", required: false, type: "datetime" },
1150
+ {
1151
+ name: "name",
1152
+ required: false,
1153
+ type: "object",
1154
+ properties: [
1155
+ { name: "ar", required: false, type: "string" },
1156
+ { name: "en", required: false, type: "string" },
1157
+ ],
1158
+ },
1159
+ {
1160
+ name: "description",
1161
+ required: false,
1162
+ type: "object",
1163
+ properties: [
1164
+ { name: "ar", required: false, type: "string" },
1165
+ { name: "en", required: false, type: "string" },
1166
+ ],
1167
+ },
1168
+ { name: "sizeInBytes", required: false, type: "number" },
1169
+ { name: "contentType", required: false, type: "string" },
1170
+ ],
1171
+ },
1172
+ {
1173
+ name: "nationalIdFile",
1174
+ required: false,
1175
+ type: "object",
1176
+ properties: [
1177
+ { name: "id", required: false, type: "uuid" },
1178
+ { name: "createdTime", required: false, type: "datetime" },
1179
+ {
1180
+ name: "name",
1181
+ required: false,
1182
+ type: "object",
1183
+ properties: [
1184
+ { name: "ar", required: false, type: "string" },
1185
+ { name: "en", required: false, type: "string" },
1186
+ ],
1187
+ },
1188
+ {
1189
+ name: "description",
1190
+ required: false,
1191
+ type: "object",
1192
+ properties: [
1193
+ { name: "ar", required: false, type: "string" },
1194
+ { name: "en", required: false, type: "string" },
1195
+ ],
1196
+ },
1197
+ { name: "sizeInBytes", required: false, type: "number" },
1198
+ { name: "contentType", required: false, type: "string" },
1199
+ ],
1200
+ },
1201
+ {
1202
+ name: "passportFile",
1203
+ required: false,
1204
+ type: "object",
1205
+ properties: [
1206
+ { name: "id", required: false, type: "uuid" },
1207
+ { name: "createdTime", required: false, type: "datetime" },
1208
+ {
1209
+ name: "name",
1210
+ required: false,
1211
+ type: "object",
1212
+ properties: [
1213
+ { name: "ar", required: false, type: "string" },
1214
+ { name: "en", required: false, type: "string" },
1215
+ ],
1216
+ },
1217
+ {
1218
+ name: "description",
1219
+ required: false,
1220
+ type: "object",
1221
+ properties: [
1222
+ { name: "ar", required: false, type: "string" },
1223
+ { name: "en", required: false, type: "string" },
1224
+ ],
1225
+ },
1226
+ { name: "sizeInBytes", required: false, type: "number" },
1227
+ { name: "contentType", required: false, type: "string" },
1228
+ ],
1229
+ },
1230
+ {
1231
+ name: "allowanceFormFile",
1232
+ required: false,
1233
+ type: "object",
1234
+ properties: [
1235
+ { name: "id", required: false, type: "uuid" },
1236
+ { name: "createdTime", required: false, type: "datetime" },
1237
+ {
1238
+ name: "name",
1239
+ required: false,
1240
+ type: "object",
1241
+ properties: [
1242
+ { name: "ar", required: false, type: "string" },
1243
+ { name: "en", required: false, type: "string" },
1244
+ ],
1245
+ },
1246
+ {
1247
+ name: "description",
1248
+ required: false,
1249
+ type: "object",
1250
+ properties: [
1251
+ { name: "ar", required: false, type: "string" },
1252
+ { name: "en", required: false, type: "string" },
1253
+ ],
1254
+ },
1255
+ { name: "sizeInBytes", required: false, type: "number" },
1256
+ { name: "contentType", required: false, type: "string" },
1257
+ ],
1258
+ },
1259
+ ],
1260
+ },
1261
+ { name: "motherName", required: false, type: "string" },
1262
+ { name: "motherDateOfBirth", required: false, type: "datetime" },
1263
+ { name: "motherCitizenPassportIssuePlace", required: false, type: "string" },
1264
+ { name: "motherPlaceOfBirth", required: false, type: "string" },
1265
+ {
1266
+ name: "motherNationality",
1267
+ required: false,
1268
+ type: "object",
1269
+ properties: [
1270
+ { name: "id", required: false, type: "uuid" },
1271
+ {
1272
+ name: "name",
1273
+ required: false,
1274
+ type: "object",
1275
+ properties: [
1276
+ { name: "ar", required: false, type: "string" },
1277
+ { name: "en", required: false, type: "string" },
1278
+ ],
1279
+ },
1280
+ {
1281
+ name: "description",
1282
+ required: false,
1283
+ type: "object",
1284
+ properties: [
1285
+ { name: "ar", required: false, type: "string" },
1286
+ { name: "en", required: false, type: "string" },
1287
+ ],
1288
+ },
1289
+ { name: "order", required: false, type: "number" },
1290
+ { name: "category", required: false, type: "string" },
1291
+ ],
1292
+ },
1293
+ {
1294
+ name: "currentTemporaryTransfer",
1295
+ required: false,
1296
+ type: "object",
1297
+ properties: [
1298
+ { name: "id", required: false, type: "uuid" },
1299
+ {
1300
+ name: "employee",
1301
+ required: false,
1302
+ type: "object",
1303
+ properties: [
1304
+ { name: "id", required: false, type: "uuid" },
1305
+ {
1306
+ name: "name",
1307
+ required: false,
1308
+ type: "object",
1309
+ properties: [
1310
+ { name: "ar", required: false, type: "string" },
1311
+ { name: "en", required: false, type: "string" },
1312
+ ],
1313
+ },
1314
+ { name: "number", required: false, type: "string" },
1315
+ {
1316
+ name: "jobClassification",
1317
+ required: false,
1318
+ type: "object",
1319
+ properties: [
1320
+ { name: "id", required: false, type: "uuid" },
1321
+ {
1322
+ name: "name",
1323
+ required: false,
1324
+ type: "object",
1325
+ properties: [
1326
+ { name: "ar", required: false, type: "string" },
1327
+ { name: "en", required: false, type: "string" },
1328
+ ],
1329
+ },
1330
+ { name: "type", required: false, type: "string" },
1331
+ ],
1332
+ },
1333
+ {
1334
+ name: "jobLevel",
1335
+ required: false,
1336
+ type: "object",
1337
+ properties: [
1338
+ { name: "id", required: false, type: "uuid" },
1339
+ {
1340
+ name: "name",
1341
+ required: false,
1342
+ type: "object",
1343
+ properties: [
1344
+ { name: "ar", required: false, type: "string" },
1345
+ { name: "en", required: false, type: "string" },
1346
+ ],
1347
+ },
1348
+ ],
1349
+ },
1350
+ {
1351
+ name: "jobTitle",
1352
+ required: false,
1353
+ type: "object",
1354
+ properties: [
1355
+ { name: "id", required: false, type: "uuid" },
1356
+ {
1357
+ name: "name",
1358
+ required: false,
1359
+ type: "object",
1360
+ properties: [
1361
+ { name: "ar", required: false, type: "string" },
1362
+ { name: "en", required: false, type: "string" },
1363
+ ],
1364
+ },
1365
+ {
1366
+ name: "category",
1367
+ required: false,
1368
+ type: "object",
1369
+ properties: [
1370
+ { name: "id", required: false, type: "uuid" },
1371
+ { name: "name", required: false, type: "object" },
1372
+ ],
1373
+ },
1374
+ ],
1375
+ },
1376
+ {
1377
+ name: "department",
1378
+ required: false,
1379
+ type: "object",
1380
+ properties: [
1381
+ { name: "id", required: false, type: "uuid" },
1382
+ {
1383
+ name: "name",
1384
+ required: false,
1385
+ type: "object",
1386
+ properties: [
1387
+ { name: "ar", required: false, type: "string" },
1388
+ { name: "en", required: false, type: "string" },
1389
+ ],
1390
+ },
1391
+ ],
1392
+ },
1393
+ {
1394
+ name: "user",
1395
+ required: false,
1396
+ type: "object",
1397
+ properties: [
1398
+ { name: "id", required: false, type: "uuid" },
1399
+ {
1400
+ name: "name",
1401
+ required: false,
1402
+ type: "object",
1403
+ properties: [
1404
+ { name: "ar", required: false, type: "string" },
1405
+ { name: "en", required: false, type: "string" },
1406
+ ],
1407
+ },
1408
+ ],
1409
+ },
1410
+ ],
1411
+ },
1412
+ {
1413
+ name: "serviceRequest",
1414
+ required: false,
1415
+ type: "object",
1416
+ properties: [{ name: "id", required: false, type: "uuid" }],
1417
+ },
1418
+ { name: "transferFromDate", required: false, type: "datetime" },
1419
+ { name: "transferToDate", required: false, type: "datetime" },
1420
+ {
1421
+ name: "transferReason",
1422
+ required: false,
1423
+ type: "object",
1424
+ properties: [
1425
+ { name: "id", required: false, type: "uuid" },
1426
+ {
1427
+ name: "name",
1428
+ required: false,
1429
+ type: "object",
1430
+ properties: [
1431
+ { name: "ar", required: false, type: "string" },
1432
+ { name: "en", required: false, type: "string" },
1433
+ ],
1434
+ },
1435
+ ],
1436
+ },
1437
+ { name: "reason", required: false, type: "string" },
1438
+ { name: "type", required: false, type: "string" },
1439
+ {
1440
+ name: "fromDepartment",
1441
+ required: false,
1442
+ type: "object",
1443
+ properties: [
1444
+ { name: "id", required: false, type: "uuid" },
1445
+ {
1446
+ name: "name",
1447
+ required: false,
1448
+ type: "object",
1449
+ properties: [
1450
+ { name: "ar", required: false, type: "string" },
1451
+ { name: "en", required: false, type: "string" },
1452
+ ],
1453
+ },
1454
+ ],
1455
+ },
1456
+ {
1457
+ name: "toDepartment",
1458
+ required: false,
1459
+ type: "object",
1460
+ properties: [
1461
+ { name: "id", required: false, type: "uuid" },
1462
+ {
1463
+ name: "name",
1464
+ required: false,
1465
+ type: "object",
1466
+ properties: [
1467
+ { name: "ar", required: false, type: "string" },
1468
+ { name: "en", required: false, type: "string" },
1469
+ ],
1470
+ },
1471
+ ],
1472
+ },
1473
+ { name: "referenceNumber", required: false, type: "string" },
1474
+ { name: "notes", required: false, type: "string" },
1475
+ {
1476
+ name: "file",
1477
+ required: false,
1478
+ type: "object",
1479
+ properties: [
1480
+ { name: "id", required: false, type: "uuid" },
1481
+ { name: "createdTime", required: false, type: "datetime" },
1482
+ {
1483
+ name: "name",
1484
+ required: false,
1485
+ type: "object",
1486
+ properties: [
1487
+ { name: "ar", required: false, type: "string" },
1488
+ { name: "en", required: false, type: "string" },
1489
+ ],
1490
+ },
1491
+ {
1492
+ name: "description",
1493
+ required: false,
1494
+ type: "object",
1495
+ properties: [
1496
+ { name: "ar", required: false, type: "string" },
1497
+ { name: "en", required: false, type: "string" },
1498
+ ],
1499
+ },
1500
+ { name: "sizeInBytes", required: false, type: "number" },
1501
+ { name: "contentType", required: false, type: "string" },
1502
+ ],
1503
+ },
1504
+ ],
1505
+ },
1506
+ {
1507
+ name: "currentLeave",
1508
+ required: false,
1509
+ type: "object",
1510
+ properties: [
1511
+ { name: "id", required: false, type: "uuid" },
1512
+ {
1513
+ name: "employee",
1514
+ required: false,
1515
+ type: "object",
1516
+ properties: [
1517
+ { name: "id", required: false, type: "uuid" },
1518
+ {
1519
+ name: "name",
1520
+ required: false,
1521
+ type: "object",
1522
+ properties: [
1523
+ { name: "ar", required: false, type: "string" },
1524
+ { name: "en", required: false, type: "string" },
1525
+ ],
1526
+ },
1527
+ ],
1528
+ },
1529
+ { name: "type", required: false, type: "string" },
1530
+ { name: "from", required: false, type: "datetime" },
1531
+ { name: "to", required: false, type: "datetime" },
1532
+ { name: "dayCount", required: false, type: "number" },
1533
+ { name: "daysBalanceBeforeLeave", required: false, type: "number" },
1534
+ { name: "deductibleFromBalance", required: false, type: "boolean" },
1535
+ {
1536
+ name: "serviceRequest",
1537
+ required: false,
1538
+ type: "object",
1539
+ properties: [{ name: "id", required: false, type: "uuid" }],
1540
+ },
1541
+ ],
1542
+ },
1543
+ {
1544
+ name: "currentTermination",
1545
+ required: false,
1546
+ type: "object",
1547
+ properties: [
1548
+ { name: "id", required: false, type: "uuid" },
1549
+ {
1550
+ name: "employee",
1551
+ required: false,
1552
+ type: "object",
1553
+ properties: [
1554
+ { name: "id", required: false, type: "uuid" },
1555
+ {
1556
+ name: "name",
1557
+ required: false,
1558
+ type: "object",
1559
+ properties: [
1560
+ { name: "ar", required: false, type: "string" },
1561
+ { name: "en", required: false, type: "string" },
1562
+ ],
1563
+ },
1564
+ ],
1565
+ },
1566
+ { name: "lastWorkDate", required: false, type: "datetime" },
1567
+ {
1568
+ name: "type",
1569
+ required: false,
1570
+ type: "object",
1571
+ properties: [
1572
+ { name: "id", required: false, type: "uuid" },
1573
+ {
1574
+ name: "name",
1575
+ required: false,
1576
+ type: "object",
1577
+ properties: [
1578
+ { name: "ar", required: false, type: "string" },
1579
+ { name: "en", required: false, type: "string" },
1580
+ ],
1581
+ },
1582
+ ],
1583
+ },
1584
+ {
1585
+ name: "terminationReason",
1586
+ required: false,
1587
+ type: "object",
1588
+ properties: [
1589
+ { name: "id", required: false, type: "uuid" },
1590
+ {
1591
+ name: "name",
1592
+ required: false,
1593
+ type: "object",
1594
+ properties: [
1595
+ { name: "ar", required: false, type: "string" },
1596
+ { name: "en", required: false, type: "string" },
1597
+ ],
1598
+ },
1599
+ ],
1600
+ },
1601
+ { name: "details", required: false, type: "string" },
1602
+ {
1603
+ name: "signedRequestFile",
1604
+ required: false,
1605
+ type: "object",
1606
+ properties: [
1607
+ { name: "id", required: false, type: "uuid" },
1608
+ { name: "createdTime", required: false, type: "datetime" },
1609
+ {
1610
+ name: "name",
1611
+ required: false,
1612
+ type: "object",
1613
+ properties: [
1614
+ { name: "ar", required: false, type: "string" },
1615
+ { name: "en", required: false, type: "string" },
1616
+ ],
1617
+ },
1618
+ {
1619
+ name: "description",
1620
+ required: false,
1621
+ type: "object",
1622
+ properties: [
1623
+ { name: "ar", required: false, type: "string" },
1624
+ { name: "en", required: false, type: "string" },
1625
+ ],
1626
+ },
1627
+ { name: "sizeInBytes", required: false, type: "number" },
1628
+ { name: "contentType", required: false, type: "string" },
1629
+ ],
1630
+ },
1631
+ { name: "financeNotes", required: false, type: "string" },
1632
+ { name: "warehouseNotes", required: false, type: "string" },
1633
+ { name: "armoryNotes", required: false, type: "string" },
1634
+ { name: "isResidencyCanceled", required: false, type: "boolean" },
1635
+ { name: "isHealthInsuranceCanceled", required: false, type: "boolean" },
1636
+ {
1637
+ name: "residencyAndHealthInsuranceCancellationNotes",
1638
+ required: false,
1639
+ type: "string",
1640
+ },
1641
+ { name: "lengthOfServiceInDays", required: false, type: "number" },
1642
+ { name: "endOfServiceBenefits", required: false, type: "number" },
1643
+ ],
1644
+ },
1645
+ ] as const,
1646
+ successStatus: 200,
1647
+ errorStatuses: [],
1648
+ responseKind: "object",
1649
+ } as const,
1650
+ // @auto-generated-end
1651
+ });