@aya-flights/ngx-goox-lib 2.20.23-ang-19 → 2.20.24-ang-18

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 (250) hide show
  1. package/esm2022/aya-flights-ngx-goox-lib.mjs +5 -0
  2. package/esm2022/config.mjs +15 -0
  3. package/esm2022/lib/model/ADSBCategoryCode.mjs +43 -0
  4. package/esm2022/lib/model/ADSBSourceFlag.mjs +32 -0
  5. package/esm2022/lib/model/ADSBState.mjs +48 -0
  6. package/esm2022/lib/model/Account.mjs +28 -0
  7. package/esm2022/lib/model/AccountStatusCode.mjs +35 -0
  8. package/esm2022/lib/model/AccountTypeCode.mjs +39 -0
  9. package/esm2022/lib/model/AccountsFilter.mjs +27 -0
  10. package/esm2022/lib/model/ActionResponse.mjs +15 -0
  11. package/esm2022/lib/model/Address.mjs +21 -0
  12. package/esm2022/lib/model/Airplane.mjs +36 -0
  13. package/esm2022/lib/model/AirplaneStatusCode.mjs +31 -0
  14. package/esm2022/lib/model/AirplaneValidationFlag.mjs +119 -0
  15. package/esm2022/lib/model/AirplanesFilter.mjs +27 -0
  16. package/esm2022/lib/model/AnyKeyValue.mjs +12 -0
  17. package/esm2022/lib/model/AssessmentCode.mjs +31 -0
  18. package/esm2022/lib/model/AuditLog.mjs +21 -0
  19. package/esm2022/lib/model/AuditLogFilter.mjs +39 -0
  20. package/esm2022/lib/model/BaseEntity.mjs +17 -0
  21. package/esm2022/lib/model/BaseEntityEx.mjs +23 -0
  22. package/esm2022/lib/model/BaseFilter.mjs +18 -0
  23. package/esm2022/lib/model/BaseRestResponse.mjs +12 -0
  24. package/esm2022/lib/model/Billing.mjs +36 -0
  25. package/esm2022/lib/model/BillingRecord.mjs +24 -0
  26. package/esm2022/lib/model/BillingStatusCode.mjs +59 -0
  27. package/esm2022/lib/model/Booking.mjs +31 -0
  28. package/esm2022/lib/model/BookingPlan.mjs +28 -0
  29. package/esm2022/lib/model/BookingSlot.mjs +20 -0
  30. package/esm2022/lib/model/BookingSlots.mjs +15 -0
  31. package/esm2022/lib/model/BookingSlotsSet.mjs +17 -0
  32. package/esm2022/lib/model/BookingStatusCode.mjs +55 -0
  33. package/esm2022/lib/model/BookingTypeFlag.mjs +51 -0
  34. package/esm2022/lib/model/BookingsFilter.mjs +36 -0
  35. package/esm2022/lib/model/Boundaries.mjs +12 -0
  36. package/esm2022/lib/model/Campaign.mjs +25 -0
  37. package/esm2022/lib/model/CampaignStatusCode.mjs +35 -0
  38. package/esm2022/lib/model/CampaignTypeCode.mjs +31 -0
  39. package/esm2022/lib/model/Certificate.mjs +23 -0
  40. package/esm2022/lib/model/CertificatesFilter.mjs +33 -0
  41. package/esm2022/lib/model/ColumnDef.mjs +27 -0
  42. package/esm2022/lib/model/ConfirmStatusCode.mjs +31 -0
  43. package/esm2022/lib/model/Contact.mjs +40 -0
  44. package/esm2022/lib/model/ContactGroup.mjs +15 -0
  45. package/esm2022/lib/model/ContactsFilter.mjs +36 -0
  46. package/esm2022/lib/model/Credit.mjs +30 -0
  47. package/esm2022/lib/model/CreditsFilter.mjs +36 -0
  48. package/esm2022/lib/model/CrewDutyDayRisks.mjs +15 -0
  49. package/esm2022/lib/model/CurrencyCode.mjs +31 -0
  50. package/esm2022/lib/model/DepartureRisks.mjs +21 -0
  51. package/esm2022/lib/model/DestinationRisks.mjs +42 -0
  52. package/esm2022/lib/model/Distribution.mjs +15 -0
  53. package/esm2022/lib/model/Document.mjs +24 -0
  54. package/esm2022/lib/model/DocumentRevision.mjs +27 -0
  55. package/esm2022/lib/model/Engine.mjs +21 -0
  56. package/esm2022/lib/model/Entities.mjs +10 -0
  57. package/esm2022/lib/model/EntitiesRequest.mjs +9 -0
  58. package/esm2022/lib/model/EntitiesResponse.mjs +18 -0
  59. package/esm2022/lib/model/EntityAction.mjs +6 -0
  60. package/esm2022/lib/model/EntityRequest.mjs +9 -0
  61. package/esm2022/lib/model/EntityResponse.mjs +14 -0
  62. package/esm2022/lib/model/ErrorCode.mjs +67 -0
  63. package/esm2022/lib/model/FilterFlag.mjs +119 -0
  64. package/esm2022/lib/model/Flight.mjs +49 -0
  65. package/esm2022/lib/model/FlightBilling.mjs +24 -0
  66. package/esm2022/lib/model/FlightCategoryCode.mjs +163 -0
  67. package/esm2022/lib/model/FlightClassCode.mjs +47 -0
  68. package/esm2022/lib/model/FlightPassenger.mjs +18 -0
  69. package/esm2022/lib/model/FlightPlan.mjs +36 -0
  70. package/esm2022/lib/model/FlightPurposeCode.mjs +67 -0
  71. package/esm2022/lib/model/FlightRisk.mjs +23 -0
  72. package/esm2022/lib/model/FlightStateCode.mjs +35 -0
  73. package/esm2022/lib/model/FlightStatusCode.mjs +43 -0
  74. package/esm2022/lib/model/FlightTicket.mjs +22 -0
  75. package/esm2022/lib/model/FlightTypeCode.mjs +39 -0
  76. package/esm2022/lib/model/FlightsFilter.mjs +45 -0
  77. package/esm2022/lib/model/FollowUpAction.mjs +15 -0
  78. package/esm2022/lib/model/Fuel.mjs +27 -0
  79. package/esm2022/lib/model/Group.mjs +17 -0
  80. package/esm2022/lib/model/InstructionTypeCode.mjs +31 -0
  81. package/esm2022/lib/model/IntEnumValue.mjs +12 -0
  82. package/esm2022/lib/model/IntKeyValue.mjs +12 -0
  83. package/esm2022/lib/model/Json.mjs +7 -0
  84. package/esm2022/lib/model/JsonDoc.mjs +13 -0
  85. package/esm2022/lib/model/Lead.mjs +30 -0
  86. package/esm2022/lib/model/LeadAction.mjs +17 -0
  87. package/esm2022/lib/model/LeadStatusCode.mjs +47 -0
  88. package/esm2022/lib/model/LeadsFilter.mjs +24 -0
  89. package/esm2022/lib/model/Lesson.mjs +45 -0
  90. package/esm2022/lib/model/LessonSubjectCode.mjs +383 -0
  91. package/esm2022/lib/model/LessonTypeCode.mjs +59 -0
  92. package/esm2022/lib/model/LicenseKindFlag.mjs +63 -0
  93. package/esm2022/lib/model/LocalTime.mjs +7 -0
  94. package/esm2022/lib/model/Location.mjs +15 -0
  95. package/esm2022/lib/model/LogBookRecord.mjs +32 -0
  96. package/esm2022/lib/model/LoginParams.mjs +15 -0
  97. package/esm2022/lib/model/Lookup.mjs +19 -0
  98. package/esm2022/lib/model/LookupGroup.mjs +15 -0
  99. package/esm2022/lib/model/Magneto.mjs +18 -0
  100. package/esm2022/lib/model/Maintenance.mjs +28 -0
  101. package/esm2022/lib/model/MaintenanceActionCode.mjs +43 -0
  102. package/esm2022/lib/model/MaintenancesFilter.mjs +33 -0
  103. package/esm2022/lib/model/MedicalCertClassCode.mjs +31 -0
  104. package/esm2022/lib/model/MessageConfirm.mjs +20 -0
  105. package/esm2022/lib/model/MessageTypeCode.mjs +47 -0
  106. package/esm2022/lib/model/Metar.mjs +15 -0
  107. package/esm2022/lib/model/MetarReport.mjs +21 -0
  108. package/esm2022/lib/model/Mitigation.mjs +27 -0
  109. package/esm2022/lib/model/ModuleCode.mjs +71 -0
  110. package/esm2022/lib/model/Notification.mjs +18 -0
  111. package/esm2022/lib/model/NotificationTypeCode.mjs +39 -0
  112. package/esm2022/lib/model/OperatorCode.mjs +15 -0
  113. package/esm2022/lib/model/PaymentMethodCode.mjs +43 -0
  114. package/esm2022/lib/model/Permission.mjs +12 -0
  115. package/esm2022/lib/model/PermissionFlag.mjs +43 -0
  116. package/esm2022/lib/model/PilotQualificationsRisks.mjs +18 -0
  117. package/esm2022/lib/model/Point.mjs +12 -0
  118. package/esm2022/lib/model/PostFlightInfo.mjs +117 -0
  119. package/esm2022/lib/model/PreFlightInfo.mjs +99 -0
  120. package/esm2022/lib/model/Price.mjs +18 -0
  121. package/esm2022/lib/model/PriorityCode.mjs +35 -0
  122. package/esm2022/lib/model/Propeller.mjs +21 -0
  123. package/esm2022/lib/model/RiskAssessment.mjs +33 -0
  124. package/esm2022/lib/model/SimpleEntity.mjs +11 -0
  125. package/esm2022/lib/model/SpecialRisks.mjs +15 -0
  126. package/esm2022/lib/model/StatusCode.mjs +39 -0
  127. package/esm2022/lib/model/StorageItem.mjs +19 -0
  128. package/esm2022/lib/model/StringKeyValue.mjs +12 -0
  129. package/esm2022/lib/model/StudentSheet.mjs +32 -0
  130. package/esm2022/lib/model/Syllabus.mjs +20 -0
  131. package/esm2022/lib/model/SyllabusFilter.mjs +27 -0
  132. package/esm2022/lib/model/SyllabusStageCode.mjs +79 -0
  133. package/esm2022/lib/model/SyllabusTrack.mjs +36 -0
  134. package/esm2022/lib/model/SystemConfig.mjs +15 -0
  135. package/esm2022/lib/model/SystemMessage.mjs +19 -0
  136. package/esm2022/lib/model/TOLData.mjs +24 -0
  137. package/esm2022/lib/model/TafReport.mjs +21 -0
  138. package/esm2022/lib/model/TicketStatusCode.mjs +27 -0
  139. package/esm2022/lib/model/TimeDataPoint.mjs +12 -0
  140. package/esm2022/lib/model/TimeFrame.mjs +12 -0
  141. package/esm2022/lib/model/TimePeriodCode.mjs +39 -0
  142. package/esm2022/lib/model/TimeSeries.mjs +15 -0
  143. package/esm2022/lib/model/Timestamp.mjs +7 -0
  144. package/esm2022/lib/model/TokenData.mjs +18 -0
  145. package/esm2022/lib/model/TransactionTypeCode.mjs +47 -0
  146. package/esm2022/lib/model/TripRisks.mjs +21 -0
  147. package/esm2022/lib/model/Tuple.mjs +16 -0
  148. package/esm2022/lib/model/TypeRatingFlag.mjs +35 -0
  149. package/esm2022/lib/model/User.mjs +22 -0
  150. package/esm2022/lib/model/UserRoleFlag.mjs +51 -0
  151. package/esm2022/lib/model/UserStatusCode.mjs +35 -0
  152. package/esm2022/lib/model/UserTypeCode.mjs +35 -0
  153. package/esm2022/lib/model/UsersFilter.mjs +30 -0
  154. package/esm2022/lib/model/ValidationFlag.mjs +67 -0
  155. package/esm2022/lib/model/WBConfig.mjs +54 -0
  156. package/esm2022/lib/model/WeatherRisks.mjs +36 -0
  157. package/esm2022/lib/model/errorStruct.mjs +12 -0
  158. package/esm2022/lib/model/index.mjs +156 -0
  159. package/esm2022/lib/services/AccountsEndPoint.mjs +189 -0
  160. package/esm2022/lib/services/AirplanesEndPoint.mjs +196 -0
  161. package/esm2022/lib/services/AuditLogsEndPoint.mjs +120 -0
  162. package/esm2022/lib/services/BookingSlotsEndPoint.mjs +139 -0
  163. package/esm2022/lib/services/BookingsEndPoint.mjs +223 -0
  164. package/esm2022/lib/services/CampaignsEndPoint.mjs +96 -0
  165. package/esm2022/lib/services/CertificatesEndPoint.mjs +104 -0
  166. package/esm2022/lib/services/ContactsEndPoint.mjs +293 -0
  167. package/esm2022/lib/services/ContactsGroupsEndPoint.mjs +96 -0
  168. package/esm2022/lib/services/CreditsEndPoint.mjs +101 -0
  169. package/esm2022/lib/services/DocumentsEndPoint.mjs +109 -0
  170. package/esm2022/lib/services/FlightTicketsEndPoint.mjs +80 -0
  171. package/esm2022/lib/services/FlightsEndPoint.mjs +335 -0
  172. package/esm2022/lib/services/GroupsEndPoint.mjs +96 -0
  173. package/esm2022/lib/services/LeadsEndPoint.mjs +203 -0
  174. package/esm2022/lib/services/LookupsEndPoint.mjs +87 -0
  175. package/esm2022/lib/services/MaintenancesEndPoint.mjs +104 -0
  176. package/esm2022/lib/services/McpToolsEndPoint.mjs +58 -0
  177. package/esm2022/lib/services/MessageConfirmsEndPoint.mjs +104 -0
  178. package/esm2022/lib/services/MyAuthEndPoint.mjs +58 -0
  179. package/esm2022/lib/services/MyBookingsEndPoint.mjs +148 -0
  180. package/esm2022/lib/services/MyCertificatesEndPoint.mjs +101 -0
  181. package/esm2022/lib/services/MyCreditsEndPoint.mjs +50 -0
  182. package/esm2022/lib/services/MyFlightsEndPoint.mjs +137 -0
  183. package/esm2022/lib/services/MyInfoEndPoint.mjs +50 -0
  184. package/esm2022/lib/services/MyMessagesEndPoint.mjs +46 -0
  185. package/esm2022/lib/services/MyStudentsEndPoint.mjs +62 -0
  186. package/esm2022/lib/services/PriceListEndPoint.mjs +80 -0
  187. package/esm2022/lib/services/SyllabusEndPoint.mjs +95 -0
  188. package/esm2022/lib/services/SystemConfigsEndPoint.mjs +71 -0
  189. package/esm2022/lib/services/SystemEndPoint.mjs +34 -0
  190. package/esm2022/lib/services/SystemMessagesEndPoint.mjs +105 -0
  191. package/esm2022/lib/services/UserEndPoint.mjs +35 -0
  192. package/esm2022/lib/services/UsersEndPoint.mjs +114 -0
  193. package/esm2022/lib/services/index.mjs +35 -0
  194. package/esm2022/ngx-goox-lib.module.mjs +26 -0
  195. package/esm2022/public-api.mjs +8 -0
  196. package/esm2022/rest-utils.mjs +137 -0
  197. package/fesm2022/aya-flights-ngx-goox-lib.mjs +5611 -5610
  198. package/fesm2022/aya-flights-ngx-goox-lib.mjs.map +1 -1
  199. package/lib/model/Account.d.ts +1 -1
  200. package/lib/model/Airplane.d.ts +5 -5
  201. package/lib/model/Booking.d.ts +1 -1
  202. package/lib/model/BookingPlan.d.ts +2 -2
  203. package/lib/model/BookingsFilter.d.ts +1 -1
  204. package/lib/model/Certificate.d.ts +1 -1
  205. package/lib/model/CertificatesFilter.d.ts +1 -1
  206. package/lib/model/ContactGroup.d.ts +1 -1
  207. package/lib/model/Credit.d.ts +1 -0
  208. package/lib/model/Flight.d.ts +5 -5
  209. package/lib/model/FlightPlan.d.ts +1 -1
  210. package/lib/model/FlightRisk.d.ts +5 -5
  211. package/lib/model/Group.d.ts +1 -1
  212. package/lib/model/Maintenance.d.ts +1 -1
  213. package/lib/model/MaintenancesFilter.d.ts +1 -1
  214. package/lib/model/PostFlightInfo.d.ts +1 -1
  215. package/lib/model/RiskAssessment.d.ts +1 -1
  216. package/lib/model/StudentSheet.d.ts +1 -1
  217. package/lib/model/SyllabusTrack.d.ts +1 -1
  218. package/lib/model/TokenData.d.ts +1 -1
  219. package/lib/model/UsersFilter.d.ts +1 -1
  220. package/lib/model/index.d.ts +127 -127
  221. package/lib/services/AccountsEndPoint.d.ts +8 -8
  222. package/lib/services/AirplanesEndPoint.d.ts +7 -7
  223. package/lib/services/AuditLogsEndPoint.d.ts +1 -1
  224. package/lib/services/BookingSlotsEndPoint.d.ts +2 -2
  225. package/lib/services/BookingsEndPoint.d.ts +4 -4
  226. package/lib/services/CampaignsEndPoint.d.ts +1 -1
  227. package/lib/services/CertificatesEndPoint.d.ts +1 -1
  228. package/lib/services/ContactsEndPoint.d.ts +15 -15
  229. package/lib/services/ContactsGroupsEndPoint.d.ts +2 -2
  230. package/lib/services/CreditsEndPoint.d.ts +2 -2
  231. package/lib/services/DocumentsEndPoint.d.ts +2 -2
  232. package/lib/services/FlightsEndPoint.d.ts +12 -12
  233. package/lib/services/LeadsEndPoint.d.ts +4 -4
  234. package/lib/services/LookupsEndPoint.d.ts +2 -2
  235. package/lib/services/MaintenancesEndPoint.d.ts +1 -1
  236. package/lib/services/MessageConfirmsEndPoint.d.ts +2 -2
  237. package/lib/services/MyAuthEndPoint.d.ts +1 -1
  238. package/lib/services/MyBookingsEndPoint.d.ts +4 -4
  239. package/lib/services/MyCertificatesEndPoint.d.ts +3 -3
  240. package/lib/services/MyFlightsEndPoint.d.ts +6 -6
  241. package/lib/services/MyInfoEndPoint.d.ts +2 -2
  242. package/lib/services/MyMessagesEndPoint.d.ts +2 -2
  243. package/lib/services/MyStudentsEndPoint.d.ts +3 -3
  244. package/lib/services/SyllabusEndPoint.d.ts +3 -3
  245. package/lib/services/SystemConfigsEndPoint.d.ts +1 -1
  246. package/lib/services/UserEndPoint.d.ts +1 -1
  247. package/lib/services/UsersEndPoint.d.ts +3 -3
  248. package/lib/services/index.d.ts +25 -25
  249. package/package.json +6 -4
  250. package/rest-utils.d.ts +2 -2
@@ -0,0 +1,105 @@
1
+ import { Injectable, Inject } from '@angular/core';
2
+ import { APP_CONFIG } from '../../config';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../rest-utils";
5
+ import * as i2 from "../../config";
6
+ // SystemMessagesEndPoint Services for systemMessages actions
7
+ export class SystemMessagesEndPoint {
8
+ // Class constructor
9
+ constructor(config, rest) {
10
+ this.config = config;
11
+ this.rest = rest;
12
+ // URL to web api
13
+ this.baseUrl = '/system_messages';
14
+ this.baseUrl = this.config.api + this.baseUrl;
15
+ }
16
+ /**
17
+ * Get new and empty systemMessage template
18
+ */
19
+ new() {
20
+ return this.rest.post(`${this.baseUrl}/new`, '');
21
+ }
22
+ /**
23
+ * Create new systemMessage
24
+ */
25
+ create(body) {
26
+ return this.rest.post(`${this.baseUrl}`, typeof body === 'object' ? JSON.stringify(body) : body);
27
+ }
28
+ /**
29
+ * Update existing systemMessage
30
+ */
31
+ update(body) {
32
+ return this.rest.put(`${this.baseUrl}`, typeof body === 'object' ? JSON.stringify(body) : body);
33
+ }
34
+ /**
35
+ * Delete systemMessage and all its content
36
+ */
37
+ delete(id) {
38
+ return this.rest.delete(`${this.baseUrl}/${id}`);
39
+ }
40
+ /**
41
+ * Get a single systemMessage by id
42
+ */
43
+ get(id) {
44
+ return this.rest.get(`${this.baseUrl}/${id}`);
45
+ }
46
+ /**
47
+ * Find systemMessages by query
48
+ */
49
+ find(search, type, sort, page, size) {
50
+ const params = [];
51
+ if (search != null) {
52
+ params.push(`search=${search}`);
53
+ }
54
+ if (type != null) {
55
+ params.push(`type=${type}`);
56
+ }
57
+ if (sort != null) {
58
+ params.push(`sort=${sort}`);
59
+ }
60
+ if (page != null) {
61
+ params.push(`page=${page}`);
62
+ }
63
+ if (size != null) {
64
+ params.push(`size=${size}`);
65
+ }
66
+ return this.rest.get(`${this.baseUrl}`, ...params);
67
+ }
68
+ /**
69
+ * Find message confirmations
70
+ */
71
+ findConfirms(id, search, sort, page, size) {
72
+ const params = [];
73
+ if (search != null) {
74
+ params.push(`search=${search}`);
75
+ }
76
+ if (sort != null) {
77
+ params.push(`sort=${sort}`);
78
+ }
79
+ if (page != null) {
80
+ params.push(`page=${page}`);
81
+ }
82
+ if (size != null) {
83
+ params.push(`size=${size}`);
84
+ }
85
+ return this.rest.get(`${this.baseUrl}/${id}/confirms`, ...params);
86
+ }
87
+ /**
88
+ * Publish message to all relevant contacts
89
+ */
90
+ publish(id) {
91
+ return this.rest.post(`${this.baseUrl}/${id}/publish`, '');
92
+ }
93
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SystemMessagesEndPoint, deps: [{ token: APP_CONFIG }, { token: i1.RestUtils }], target: i0.ɵɵFactoryTarget.Injectable }); }
94
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SystemMessagesEndPoint, providedIn: 'root' }); }
95
+ }
96
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: SystemMessagesEndPoint, decorators: [{
97
+ type: Injectable,
98
+ args: [{
99
+ providedIn: 'root'
100
+ }]
101
+ }], ctorParameters: () => [{ type: i2.AppConfig, decorators: [{
102
+ type: Inject,
103
+ args: [APP_CONFIG]
104
+ }] }, { type: i1.RestUtils }] });
105
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiU3lzdGVtTWVzc2FnZXNFbmRQb2ludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1nb294LWxpYjIvc3JjL2xpYi9zZXJ2aWNlcy9TeXN0ZW1NZXNzYWdlc0VuZFBvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxjQUFjLENBQUM7Ozs7QUFTckQsOERBQThEO0FBSTlELE1BQU0sT0FBTyxzQkFBc0I7SUFLakMsb0JBQW9CO0lBQ3BCLFlBQXdDLE1BQWlCLEVBQVUsSUFBZTtRQUExQyxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQVUsU0FBSSxHQUFKLElBQUksQ0FBVztRQUpsRixpQkFBaUI7UUFDVCxZQUFPLEdBQUcsa0JBQWtCLENBQUM7UUFJbkMsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ2hELENBQUM7SUFFRDs7T0FFRztJQUNILEdBQUc7UUFDRCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFnQyxHQUFHLElBQUksQ0FBQyxPQUFPLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztJQUNsRixDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsSUFBb0I7UUFDekIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBZ0MsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsT0FBTyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsSSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxNQUFNLENBQUMsSUFBb0I7UUFDekIsT0FB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QUFPLElBQUksRUFBRSxVQUFVLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDN0UsQ0FBQzsrR0E3RVUsc0JBQXNCLGtCQU1iLFVBQVU7bUhBTm5CLHNCQUFzQixjQUZyQixNQUFNOzs0RkFFUCxzQkFBc0I7a0JBSGxDLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFPYyxNQUFNOzJCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVzdFV0aWxzIH0gZnJvbSAnLi4vLi4vcmVzdC11dGlscyc7XG5pbXBvcnQgeyBBUFBfQ09ORklHLCBBcHBDb25maWcgfSBmcm9tICcuLi8uLi9jb25maWcnO1xuXG5pbXBvcnQgeyBFbnRpdHlSZXNwb25zZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IFN5c3RlbU1lc3NhZ2UgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBBY3Rpb25SZXNwb25zZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IE1lc3NhZ2VUeXBlQ29kZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IEVudGl0aWVzUmVzcG9uc2UgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBNZXNzYWdlQ29uZmlybSB9IGZyb20gJy4uL21vZGVsJztcblxuLy8gU3lzdGVtTWVzc2FnZXNFbmRQb2ludCBTZXJ2aWNlcyBmb3Igc3lzdGVtTWVzc2FnZXMgYWN0aW9ucyBcbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFN5c3RlbU1lc3NhZ2VzRW5kUG9pbnQge1xuXG4gIC8vIFVSTCB0byB3ZWIgYXBpXG4gIHByaXZhdGUgYmFzZVVybCA9ICcvc3lzdGVtX21lc3NhZ2VzJztcblxuICAvLyBDbGFzcyBjb25zdHJ1Y3RvclxuICBjb25zdHJ1Y3RvcihASW5qZWN0KEFQUF9DT05GSUcpIHByaXZhdGUgY29uZmlnOiBBcHBDb25maWcsIHByaXZhdGUgcmVzdDogUmVzdFV0aWxzKSB7XG4gICAgdGhpcy5iYXNlVXJsID0gdGhpcy5jb25maWcuYXBpICsgdGhpcy5iYXNlVXJsO1xuICB9XG5cbiAgLyoqXG4gICAqIEdldCBuZXcgYW5kIGVtcHR5IHN5c3RlbU1lc3NhZ2UgdGVtcGxhdGVcbiAgICovXG4gIG5ldygpIHtcbiAgICByZXR1cm4gdGhpcy5yZXN0LnBvc3Q8RW50aXR5UmVzcG9uc2U8U3lzdGVtTWVzc2FnZT4+KGAke3RoaXMuYmFzZVVybH0vbmV3YCwgJycpO1xuICB9XG5cbiAgLyoqXG4gICAqIENyZWF0ZSBuZXcgc3lzdGVtTWVzc2FnZVxuICAgKi9cbiAgY3JlYXRlKGJvZHk/OiBTeXN0ZW1NZXNzYWdlKSB7XG4gICAgcmV0dXJuIHRoaXMucmVzdC5wb3N0PEVudGl0eVJlc3BvbnNlPFN5c3RlbU1lc3NhZ2U+PihgJHt0aGlzLmJhc2VVcmx9YCwgdHlwZW9mIGJvZHkgPT09ICdvYmplY3QnID8gSlNPTi5zdHJpbmdpZnkoYm9keSkgOiBib2R5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgZXhpc3Rpbmcgc3lzdGVtTWVzc2FnZVxuICAgKi9cbiAgdXBkYXRlKGJvZHk/OiBTeXN0ZW1NZXNzYWdlKSB7XG4gICAgcmV0dXJuIHRoaXMucmVzdC5wdXQ8RW50aXR5UmVzcG9uc2U8U3lzdGVtTWVzc2FnZT4+KGAke3RoaXMuYmFzZVVybH1gLCB0eXBlb2YgYm9keSA9PT0gJ29iamVjdCcgPyBKU09OLnN0cmluZ2lmeShib2R5KSA6IGJvZHkpO1xuICB9XG5cbiAgLyoqXG4gICAqIERlbGV0ZSBzeXN0ZW1NZXNzYWdlIGFuZCBhbGwgaXRzIGNvbnRlbnRcbiAgICovXG4gIGRlbGV0ZShpZD86IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnJlc3QuZGVsZXRlPEFjdGlvblJlc3BvbnNlPihgJHt0aGlzLmJhc2VVcmx9LyR7aWR9YCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGEgc2luZ2xlIHN5c3RlbU1lc3NhZ2UgYnkgaWRcbiAgICovXG4gIGdldChpZD86IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnJlc3QuZ2V0PEVudGl0eVJlc3BvbnNlPFN5c3RlbU1lc3NhZ2U+PihgJHt0aGlzLmJhc2VVcmx9LyR7aWR9YCk7XG4gIH1cblxuICAvKipcbiAgICogRmluZCBzeXN0ZW1NZXNzYWdlcyBieSBxdWVyeVxuICAgKi9cbiAgZmluZChzZWFyY2g/OiBzdHJpbmcsIHR5cGU/OiBNZXNzYWdlVHlwZUNvZGVbXSwgc29ydD86IHN0cmluZywgcGFnZT86IG51bWJlciwgc2l6ZT86IG51bWJlcikge1xuICAgIGNvbnN0IHBhcmFtcyA9IFtdO1xuICAgIGlmIChzZWFyY2ggIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc2VhcmNoPSR7c2VhcmNofWApOyB9XG4gICAgaWYgKHR5cGUgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgdHlwZT0ke3R5cGV9YCk7IH1cbiAgICBpZiAoc29ydCAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzb3J0PSR7c29ydH1gKTsgfVxuICAgIGlmIChwYWdlICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHBhZ2U9JHtwYWdlfWApOyB9XG4gICAgaWYgKHNpemUgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc2l6ZT0ke3NpemV9YCk7IH1cblxuXHRcdHJldHVybiB0aGlzLnJlc3QuZ2V0PEVudGl0aWVzUmVzcG9uc2U8U3lzdGVtTWVzc2FnZT4+KGAke3RoaXMuYmFzZVVybH1gLCAuLi5wYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmQgbWVzc2FnZSBjb25maXJtYXRpb25zXG4gICAqL1xuICBmaW5kQ29uZmlybXMoaWQ/OiBzdHJpbmcsIHNlYXJjaD86IHN0cmluZywgc29ydD86IHN0cmluZywgcGFnZT86IG51bWJlciwgc2l6ZT86IG51bWJlcikge1xuICAgIGNvbnN0IHBhcmFtcyA9IFtdO1xuICAgIGlmIChzZWFyY2ggIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc2VhcmNoPSR7c2VhcmNofWApOyB9XG4gICAgaWYgKHNvcnQgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc29ydD0ke3NvcnR9YCk7IH1cbiAgICBpZiAocGFnZSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBwYWdlPSR7cGFnZX1gKTsgfVxuICAgIGlmIChzaXplICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNpemU9JHtzaXplfWApOyB9XG5cblx0XHRyZXR1cm4gdGhpcy5yZXN0LmdldDxFbnRpdGllc1Jlc3BvbnNlPE1lc3NhZ2VDb25maXJtPj4oYCR7dGhpcy5iYXNlVXJsfS8ke2lkfS9jb25maXJtc2AsIC4uLnBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICogUHVibGlzaCBtZXNzYWdlIHRvIGFsbCByZWxldmFudCBjb250YWN0c1xuICAgKi9cbiAgcHVibGlzaChpZD86IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnJlc3QucG9zdDxBY3Rpb25SZXNwb25zZT4oYCR7dGhpcy5iYXNlVXJsfS8ke2lkfS9wdWJsaXNoYCwgJycpO1xuICB9XG5cbn1cbiJdfQ==
@@ -0,0 +1,35 @@
1
+ import { Injectable, Inject } from '@angular/core';
2
+ import { APP_CONFIG } from '../../config';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../rest-utils";
5
+ import * as i2 from "../../config";
6
+ // UserEndPoint Services for user registration and login
7
+ export class UserEndPoint {
8
+ // Class constructor
9
+ constructor(config, rest) {
10
+ this.config = config;
11
+ this.rest = rest;
12
+ // URL to web api
13
+ this.baseUrl = '/user';
14
+ this.baseUrl = this.config.api + this.baseUrl;
15
+ }
16
+ /**
17
+ * Authorize user, verify user exists in the system
18
+ * The response includes access token valid for 20 minutes. The client side should renew the token before expiration using refresh-token method
19
+ */
20
+ authorize(body) {
21
+ return this.rest.post(`${this.baseUrl}/authorize`, typeof body === 'object' ? JSON.stringify(body) : body);
22
+ }
23
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserEndPoint, deps: [{ token: APP_CONFIG }, { token: i1.RestUtils }], target: i0.ɵɵFactoryTarget.Injectable }); }
24
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserEndPoint, providedIn: 'root' }); }
25
+ }
26
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UserEndPoint, decorators: [{
27
+ type: Injectable,
28
+ args: [{
29
+ providedIn: 'root'
30
+ }]
31
+ }], ctorParameters: () => [{ type: i2.AppConfig, decorators: [{
32
+ type: Inject,
33
+ args: [APP_CONFIG]
34
+ }] }, { type: i1.RestUtils }] });
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXNlckVuZFBvaW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWdvb3gtbGliMi9zcmMvbGliL3NlcnZpY2VzL1VzZXJFbmRQb2ludC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVuRCxPQUFPLEVBQUUsVUFBVSxFQUFhLE1BQU0sY0FBYyxDQUFDOzs7O0FBTXJELHlEQUF5RDtBQUl6RCxNQUFNLE9BQU8sWUFBWTtJQUt2QixvQkFBb0I7SUFDcEIsWUFBd0MsTUFBaUIsRUFBVSxJQUFlO1FBQTFDLFdBQU0sR0FBTixNQUFNLENBQVc7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFXO1FBSmxGLGlCQUFpQjtRQUNULFlBQU8sR0FBRyxPQUFPLENBQUM7UUFJeEIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ2hELENBQUM7SUFFRDs7O09BR0c7SUFDSCxTQUFTLENBQUMsSUFBa0I7UUFDMUIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBdUIsR0FBRyxJQUFJLENBQUMsT0FBTyxZQUFZLEVBQUUsT0FBTyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNuSSxDQUFDOytHQWhCVSxZQUFZLGtCQU1ILFVBQVU7bUhBTm5CLFlBQVksY0FGWCxNQUFNOzs0RkFFUCxZQUFZO2tCQUh4QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBT2MsTUFBTTsyQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlc3RVdGlscyB9IGZyb20gJy4uLy4uL3Jlc3QtdXRpbHMnO1xuaW1wb3J0IHsgQVBQX0NPTkZJRywgQXBwQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29uZmlnJztcblxuaW1wb3J0IHsgVXNlciB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IExvZ2luUGFyYW1zIH0gZnJvbSAnLi4vbW9kZWwnO1xuaW1wb3J0IHsgRW50aXR5UmVzcG9uc2UgfSBmcm9tICcuLi9tb2RlbCc7XG5cbi8vIFVzZXJFbmRQb2ludCBTZXJ2aWNlcyBmb3IgdXNlciByZWdpc3RyYXRpb24gYW5kIGxvZ2luIFxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgVXNlckVuZFBvaW50IHtcblxuICAvLyBVUkwgdG8gd2ViIGFwaVxuICBwcml2YXRlIGJhc2VVcmwgPSAnL3VzZXInO1xuXG4gIC8vIENsYXNzIGNvbnN0cnVjdG9yXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoQVBQX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IEFwcENvbmZpZywgcHJpdmF0ZSByZXN0OiBSZXN0VXRpbHMpIHtcbiAgICB0aGlzLmJhc2VVcmwgPSB0aGlzLmNvbmZpZy5hcGkgKyB0aGlzLmJhc2VVcmw7XG4gIH1cblxuICAvKipcbiAgICogQXV0aG9yaXplIHVzZXIsIHZlcmlmeSB1c2VyIGV4aXN0cyBpbiB0aGUgc3lzdGVtXG4gICAqIFRoZSByZXNwb25zZSBpbmNsdWRlcyBhY2Nlc3MgdG9rZW4gdmFsaWQgZm9yIDIwIG1pbnV0ZXMuIFRoZSBjbGllbnQgc2lkZSBzaG91bGQgcmVuZXcgdGhlIHRva2VuIGJlZm9yZSBleHBpcmF0aW9uIHVzaW5nIHJlZnJlc2gtdG9rZW4gbWV0aG9kXG4gICAqL1xuICBhdXRob3JpemUoYm9keT86IExvZ2luUGFyYW1zKSB7XG4gICAgcmV0dXJuIHRoaXMucmVzdC5wb3N0PEVudGl0eVJlc3BvbnNlPFVzZXI+PihgJHt0aGlzLmJhc2VVcmx9L2F1dGhvcml6ZWAsIHR5cGVvZiBib2R5ID09PSAnb2JqZWN0JyA/IEpTT04uc3RyaW5naWZ5KGJvZHkpIDogYm9keSk7XG4gIH1cblxufVxuIl19
@@ -0,0 +1,114 @@
1
+ import { Injectable, Inject } from '@angular/core';
2
+ import { APP_CONFIG } from '../../config';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "../../rest-utils";
5
+ import * as i2 from "../../config";
6
+ // UsersEndPoint Services for users actions
7
+ export class UsersEndPoint {
8
+ // Class constructor
9
+ constructor(config, rest) {
10
+ this.config = config;
11
+ this.rest = rest;
12
+ // URL to web api
13
+ this.baseUrl = '/users';
14
+ this.baseUrl = this.config.api + this.baseUrl;
15
+ }
16
+ /**
17
+ * Get new and empty user template
18
+ */
19
+ new() {
20
+ return this.rest.post(`${this.baseUrl}/new`, '');
21
+ }
22
+ /**
23
+ * Create new user
24
+ */
25
+ create(body) {
26
+ return this.rest.post(`${this.baseUrl}`, typeof body === 'object' ? JSON.stringify(body) : body);
27
+ }
28
+ /**
29
+ * Update existing user
30
+ */
31
+ update(body) {
32
+ return this.rest.put(`${this.baseUrl}`, typeof body === 'object' ? JSON.stringify(body) : body);
33
+ }
34
+ /**
35
+ * Delete user and all its content
36
+ */
37
+ delete(id) {
38
+ return this.rest.delete(`${this.baseUrl}/${id}`);
39
+ }
40
+ /**
41
+ * Get a single user by id
42
+ */
43
+ get(id) {
44
+ return this.rest.get(`${this.baseUrl}/${id}`);
45
+ }
46
+ /**
47
+ * Find users by query
48
+ */
49
+ find(search, type, status, sort, page, size) {
50
+ const params = [];
51
+ if (search != null) {
52
+ params.push(`search=${search}`);
53
+ }
54
+ if (type != null) {
55
+ params.push(`type=${type}`);
56
+ }
57
+ if (status != null) {
58
+ params.push(`status=${status}`);
59
+ }
60
+ if (sort != null) {
61
+ params.push(`sort=${sort}`);
62
+ }
63
+ if (page != null) {
64
+ params.push(`page=${page}`);
65
+ }
66
+ if (size != null) {
67
+ params.push(`size=${size}`);
68
+ }
69
+ return this.rest.get(`${this.baseUrl}`, ...params);
70
+ }
71
+ /**
72
+ * Lookup users ID->Name by filter
73
+ */
74
+ lookup(search, type, status, sort, page, size) {
75
+ const params = [];
76
+ if (search != null) {
77
+ params.push(`search=${search}`);
78
+ }
79
+ if (type != null) {
80
+ params.push(`type=${type}`);
81
+ }
82
+ if (status != null) {
83
+ params.push(`status=${status}`);
84
+ }
85
+ if (sort != null) {
86
+ params.push(`sort=${sort}`);
87
+ }
88
+ if (page != null) {
89
+ params.push(`page=${page}`);
90
+ }
91
+ if (size != null) {
92
+ params.push(`size=${size}`);
93
+ }
94
+ return this.rest.get(`${this.baseUrl}/lookup`, ...params);
95
+ }
96
+ /**
97
+ * Lookup groups ID->Name
98
+ */
99
+ groupsLookup() {
100
+ return this.rest.get(`${this.baseUrl}/groups-lookup`);
101
+ }
102
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UsersEndPoint, deps: [{ token: APP_CONFIG }, { token: i1.RestUtils }], target: i0.ɵɵFactoryTarget.Injectable }); }
103
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UsersEndPoint, providedIn: 'root' }); }
104
+ }
105
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: UsersEndPoint, decorators: [{
106
+ type: Injectable,
107
+ args: [{
108
+ providedIn: 'root'
109
+ }]
110
+ }], ctorParameters: () => [{ type: i2.AppConfig, decorators: [{
111
+ type: Inject,
112
+ args: [APP_CONFIG]
113
+ }] }, { type: i1.RestUtils }] });
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVXNlcnNFbmRQb2ludC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1nb294LWxpYjIvc3JjL2xpYi9zZXJ2aWNlcy9Vc2Vyc0VuZFBvaW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRW5ELE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxjQUFjLENBQUM7Ozs7QUFVckQsNENBQTRDO0FBSTVDLE1BQU0sT0FBTyxhQUFhO0lBS3hCLG9CQUFvQjtJQUNwQixZQUF3QyxNQUFpQixFQUFVLElBQWU7UUFBMUMsV0FBTSxHQUFOLE1BQU0sQ0FBVztRQUFVLFNBQUksR0FBSixJQUFJLENBQVc7UUFKbEYsaUJBQWlCO1FBQ1QsWUFBTyxHQUFHLFFBQVEsQ0FBQztRQUl6QixJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDaEQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsR0FBRztRQUNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQXVCLEdBQUcsSUFBSSxDQUFDLE9BQU8sTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ3pFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxJQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQXVCLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLE9BQU8sSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDekgsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLElBQVc7UUFDaEIsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdB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SUFBSSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUM7UUFBQyxDQUFDO1FBRXBELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQW1DLEdBQUcsSUFBSSxDQUFDLE9BQU8sU0FBUyxFQUFFLEdBQUcsTUFBTSxDQUFDLENBQUM7SUFDNUYsQ0FBQztJQUVEOztPQUVHO0lBQ0gsWUFBWTtRQUNWLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQW1DLEdBQUcsSUFBSSxDQUFDLE9BQU8sZ0JBQWdCLENBQUMsQ0FBQztJQUMxRixDQUFDOytHQWhGVSxhQUFhLGtCQU1KLFVBQVU7bUhBTm5CLGFBQWEsY0FGWixNQUFNOzs0RkFFUCxhQUFhO2tCQUh6QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQjs7MEJBT2MsTUFBTTsyQkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiXG5pbXBvcnQgeyBJbmplY3RhYmxlLCBJbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJlc3RVdGlscyB9IGZyb20gJy4uLy4uL3Jlc3QtdXRpbHMnO1xuaW1wb3J0IHsgQVBQX0NPTkZJRywgQXBwQ29uZmlnIH0gZnJvbSAnLi4vLi4vY29uZmlnJztcblxuaW1wb3J0IHsgVXNlclN0YXR1c0NvZGUgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBFbnRpdGllc1Jlc3BvbnNlIH0gZnJvbSAnLi4vbW9kZWwnO1xuaW1wb3J0IHsgU3RyaW5nS2V5VmFsdWUgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBFbnRpdHlSZXNwb25zZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IFVzZXIgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBBY3Rpb25SZXNwb25zZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IFVzZXJUeXBlQ29kZSB9IGZyb20gJy4uL21vZGVsJztcblxuLy8gVXNlcnNFbmRQb2ludCBTZXJ2aWNlcyBmb3IgdXNlcnMgYWN0aW9ucyBcbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFVzZXJzRW5kUG9pbnQge1xuXG4gIC8vIFVSTCB0byB3ZWIgYXBpXG4gIHByaXZhdGUgYmFzZVVybCA9ICcvdXNlcnMnO1xuXG4gIC8vIENsYXNzIGNvbnN0cnVjdG9yXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoQVBQX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IEFwcENvbmZpZywgcHJpdmF0ZSByZXN0OiBSZXN0VXRpbHMpIHtcbiAgICB0aGlzLmJhc2VVcmwgPSB0aGlzLmNvbmZpZy5hcGkgKyB0aGlzLmJhc2VVcmw7XG4gIH1cblxuICAvKipcbiAgICogR2V0IG5ldyBhbmQgZW1wdHkgdXNlciB0ZW1wbGF0ZVxuICAgKi9cbiAgbmV3KCkge1xuICAgIHJldHVybiB0aGlzLnJlc3QucG9zdDxFbnRpdHlSZXNwb25zZTxVc2VyPj4oYCR7dGhpcy5iYXNlVXJsfS9uZXdgLCAnJyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIG5ldyB1c2VyXG4gICAqL1xuICBjcmVhdGUoYm9keT86IFVzZXIpIHtcbiAgICByZXR1cm4gdGhpcy5yZXN0LnBvc3Q8RW50aXR5UmVzcG9uc2U8VXNlcj4+KGAke3RoaXMuYmFzZVVybH1gLCB0eXBlb2YgYm9keSA9PT0gJ29iamVjdCcgPyBKU09OLnN0cmluZ2lmeShib2R5KSA6IGJvZHkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBleGlzdGluZyB1c2VyXG4gICAqL1xuICB1cGRhdGUoYm9keT86IFVzZXIpIHtcbiAgICByZXR1cm4gdGhpcy5yZXN0LnB1dDxFbnRpdHlSZXNwb25zZTxVc2VyPj4oYCR7dGhpcy5iYXNlVXJsfWAsIHR5cGVvZiBib2R5ID09PSAnb2JqZWN0JyA/IEpTT04uc3RyaW5naWZ5KGJvZHkpIDogYm9keSk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlIHVzZXIgYW5kIGFsbCBpdHMgY29udGVudFxuICAgKi9cbiAgZGVsZXRlKGlkPzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMucmVzdC5kZWxldGU8QWN0aW9uUmVzcG9uc2U+KGAke3RoaXMuYmFzZVVybH0vJHtpZH1gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYSBzaW5nbGUgdXNlciBieSBpZFxuICAgKi9cbiAgZ2V0KGlkPzogc3RyaW5nKSB7XG4gICAgcmV0dXJuIHRoaXMucmVzdC5nZXQ8RW50aXR5UmVzcG9uc2U8VXNlcj4+KGAke3RoaXMuYmFzZVVybH0vJHtpZH1gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kIHVzZXJzIGJ5IHF1ZXJ5XG4gICAqL1xuICBmaW5kKHNlYXJjaD86IHN0cmluZywgdHlwZT86IFVzZXJUeXBlQ29kZVtdLCBzdGF0dXM/OiBVc2VyU3RhdHVzQ29kZVtdLCBzb3J0Pzogc3RyaW5nLCBwYWdlPzogbnVtYmVyLCBzaXplPzogbnVtYmVyKSB7XG4gICAgY29uc3QgcGFyYW1zID0gW107XG4gICAgaWYgKHNlYXJjaCAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzZWFyY2g9JHtzZWFyY2h9YCk7IH1cbiAgICBpZiAodHlwZSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGB0eXBlPSR7dHlwZX1gKTsgfVxuICAgIGlmIChzdGF0dXMgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc3RhdHVzPSR7c3RhdHVzfWApOyB9XG4gICAgaWYgKHNvcnQgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc29ydD0ke3NvcnR9YCk7IH1cbiAgICBpZiAocGFnZSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBwYWdlPSR7cGFnZX1gKTsgfVxuICAgIGlmIChzaXplICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNpemU9JHtzaXplfWApOyB9XG5cblx0XHRyZXR1cm4gdGhpcy5yZXN0LmdldDxFbnRpdGllc1Jlc3BvbnNlPFVzZXI+PihgJHt0aGlzLmJhc2VVcmx9YCwgLi4ucGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBMb29rdXAgdXNlcnMgSUQtPk5hbWUgYnkgZmlsdGVyXG4gICAqL1xuICBsb29rdXAoc2VhcmNoPzogc3RyaW5nLCB0eXBlPzogVXNlclR5cGVDb2RlW10sIHN0YXR1cz86IFVzZXJTdGF0dXNDb2RlW10sIHNvcnQ/OiBzdHJpbmcsIHBhZ2U/OiBudW1iZXIsIHNpemU/OiBudW1iZXIpIHtcbiAgICBjb25zdCBwYXJhbXMgPSBbXTtcbiAgICBpZiAoc2VhcmNoICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNlYXJjaD0ke3NlYXJjaH1gKTsgfVxuICAgIGlmICh0eXBlICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHR5cGU9JHt0eXBlfWApOyB9XG4gICAgaWYgKHN0YXR1cyAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzdGF0dXM9JHtzdGF0dXN9YCk7IH1cbiAgICBpZiAoc29ydCAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzb3J0PSR7c29ydH1gKTsgfVxuICAgIGlmIChwYWdlICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHBhZ2U9JHtwYWdlfWApOyB9XG4gICAgaWYgKHNpemUgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc2l6ZT0ke3NpemV9YCk7IH1cblxuXHRcdHJldHVybiB0aGlzLnJlc3QuZ2V0PEVudGl0aWVzUmVzcG9uc2U8U3RyaW5nS2V5VmFsdWU+PihgJHt0aGlzLmJhc2VVcmx9L2xvb2t1cGAsIC4uLnBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICogTG9va3VwIGdyb3VwcyBJRC0+TmFtZVxuICAgKi9cbiAgZ3JvdXBzTG9va3VwKCkge1xuICAgIHJldHVybiB0aGlzLnJlc3QuZ2V0PEVudGl0aWVzUmVzcG9uc2U8U3RyaW5nS2V5VmFsdWU+PihgJHt0aGlzLmJhc2VVcmx9L2dyb3Vwcy1sb29rdXBgKTtcbiAgfVxuXG59XG4iXX0=
@@ -0,0 +1,35 @@
1
+ export * from './ContactsEndPoint';
2
+ export * from './ContactsGroupsEndPoint';
3
+ export * from './DocumentsEndPoint';
4
+ export * from './McpToolsEndPoint';
5
+ export * from './MyBookingsEndPoint';
6
+ export * from './MyFlightsEndPoint';
7
+ export * from './BookingsEndPoint';
8
+ export * from './MaintenancesEndPoint';
9
+ export * from './PriceListEndPoint';
10
+ export * from './MyStudentsEndPoint';
11
+ export * from './LookupsEndPoint';
12
+ export * from './MessageConfirmsEndPoint';
13
+ export * from './MyAuthEndPoint';
14
+ export * from './MyCertificatesEndPoint';
15
+ export * from './MyInfoEndPoint';
16
+ export * from './MyMessagesEndPoint';
17
+ export * from './AccountsEndPoint';
18
+ export * from './AuditLogsEndPoint';
19
+ export * from './CreditsEndPoint';
20
+ export * from './UsersEndPoint';
21
+ export * from './CertificatesEndPoint';
22
+ export * from './FlightTicketsEndPoint';
23
+ export * from './SystemMessagesEndPoint';
24
+ export * from './BookingSlotsEndPoint';
25
+ export * from './AirplanesEndPoint';
26
+ export * from './CampaignsEndPoint';
27
+ export * from './SyllabusEndPoint';
28
+ export * from './SystemConfigsEndPoint';
29
+ export * from './SystemEndPoint';
30
+ export * from './UserEndPoint';
31
+ export * from './FlightsEndPoint';
32
+ export * from './GroupsEndPoint';
33
+ export * from './LeadsEndPoint';
34
+ export * from './MyCreditsEndPoint';
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZ29veC1saWIyL3NyYy9saWIvc2VydmljZXMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHNCQUFzQixDQUFDO0FBQ3JDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxvQkFBb0IsQ0FBQztBQUNuQyxjQUFjLHdCQUF3QixDQUFDO0FBQ3ZDLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLG1CQUFtQixDQUFDO0FBQ2xDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyxzQkFBc0IsQ0FBQztBQUNyQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMscUJBQXFCLENBQUM7QUFDcEMsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGlCQUFpQixDQUFDO0FBQ2hDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLDBCQUEwQixDQUFDO0FBQ3pDLGNBQWMsd0JBQXdCLENBQUM7QUFDdkMsY0FBYyxxQkFBcUIsQ0FBQztBQUNwQyxjQUFjLHFCQUFxQixDQUFDO0FBQ3BDLGNBQWMsb0JBQW9CLENBQUM7QUFDbkMsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsZ0JBQWdCLENBQUM7QUFDL0IsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxxQkFBcUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIlxuZXhwb3J0ICogZnJvbSAnLi9Db250YWN0c0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vQ29udGFjdHNHcm91cHNFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL0RvY3VtZW50c0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vTWNwVG9vbHNFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL015Qm9va2luZ3NFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL015RmxpZ2h0c0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vQm9va2luZ3NFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL01haW50ZW5hbmNlc0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vUHJpY2VMaXN0RW5kUG9pbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9NeVN0dWRlbnRzRW5kUG9pbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9Mb29rdXBzRW5kUG9pbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9NZXNzYWdlQ29uZmlybXNFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL015QXV0aEVuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vTXlDZXJ0aWZpY2F0ZXNFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL015SW5mb0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vTXlNZXNzYWdlc0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vQWNjb3VudHNFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL0F1ZGl0TG9nc0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vQ3JlZGl0c0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vVXNlcnNFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL0NlcnRpZmljYXRlc0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vRmxpZ2h0VGlja2V0c0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vU3lzdGVtTWVzc2FnZXNFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL0Jvb2tpbmdTbG90c0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vQWlycGxhbmVzRW5kUG9pbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9DYW1wYWlnbnNFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL1N5bGxhYnVzRW5kUG9pbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9TeXN0ZW1Db25maWdzRW5kUG9pbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9TeXN0ZW1FbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL1VzZXJFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL0ZsaWdodHNFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL0dyb3Vwc0VuZFBvaW50JztcbmV4cG9ydCAqIGZyb20gJy4vTGVhZHNFbmRQb2ludCc7XG5leHBvcnQgKiBmcm9tICcuL015Q3JlZGl0c0VuZFBvaW50JztcblxuXG4iXX0=
@@ -0,0 +1,26 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { CommonModule } from '@angular/common';
3
+ import { provideHttpClient } from '@angular/common/http';
4
+ import { APP_CONFIG } from './config';
5
+ import * as i0 from "@angular/core";
6
+ export class NgxGooxLibModule {
7
+ static forRoot(config) {
8
+ return {
9
+ ngModule: NgxGooxLibModule,
10
+ providers: [
11
+ provideHttpClient(),
12
+ { provide: APP_CONFIG, useValue: config }
13
+ ]
14
+ };
15
+ }
16
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxGooxLibModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
17
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.14", ngImport: i0, type: NgxGooxLibModule, imports: [CommonModule] }); }
18
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxGooxLibModule, imports: [CommonModule] }); }
19
+ }
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NgxGooxLibModule, decorators: [{
21
+ type: NgModule,
22
+ args: [{
23
+ imports: [CommonModule]
24
+ }]
25
+ }] });
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LWdvb3gtbGliLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1nb294LWxpYjIvc3JjL25neC1nb294LWxpYi5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBdUIsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxVQUFVLEVBQWEsTUFBTSxVQUFVLENBQUM7O0FBS2pELE1BQU0sT0FBTyxnQkFBZ0I7SUFDM0IsTUFBTSxDQUFDLE9BQU8sQ0FBQyxNQUFpQjtRQUM5QixPQUFPO1lBQ0wsUUFBUSxFQUFFLGdCQUFnQjtZQUMxQixTQUFTLEVBQUU7Z0JBQ1QsaUJBQWlCLEVBQUU7Z0JBQ25CLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxFQUFFO2FBQzFDO1NBQ0YsQ0FBQztJQUNKLENBQUM7K0dBVFUsZ0JBQWdCO2dIQUFoQixnQkFBZ0IsWUFGakIsWUFBWTtnSEFFWCxnQkFBZ0IsWUFGakIsWUFBWTs7NEZBRVgsZ0JBQWdCO2tCQUg1QixRQUFRO21CQUFDO29CQUNSLE9BQU8sRUFBRSxDQUFDLFlBQVksQ0FBQztpQkFDeEIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSwgTW9kdWxlV2l0aFByb3ZpZGVycyB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IHByb3ZpZGVIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgQVBQX0NPTkZJRywgQXBwQ29uZmlnIH0gZnJvbSAnLi9jb25maWcnO1xuXG5ATmdNb2R1bGUoe1xuICBpbXBvcnRzOiBbQ29tbW9uTW9kdWxlXVxufSlcbmV4cG9ydCBjbGFzcyBOZ3hHb294TGliTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QoY29uZmlnOiBBcHBDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5neEdvb3hMaWJNb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IE5neEdvb3hMaWJNb2R1bGUsXG4gICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgcHJvdmlkZUh0dHBDbGllbnQoKSxcbiAgICAgICAgeyBwcm92aWRlOiBBUFBfQ09ORklHLCB1c2VWYWx1ZTogY29uZmlnIH1cbiAgICAgIF1cbiAgICB9O1xuICB9XG59XG4iXX0=
@@ -0,0 +1,8 @@
1
+ /*
2
+ * Public API Surface of common
3
+ */
4
+ export * from './lib/model';
5
+ export * from './lib/services';
6
+ export * from './config';
7
+ export * from './ngx-goox-lib.module';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1nb294LWxpYjIvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGFBQWEsQ0FBQztBQUM1QixjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsVUFBVSxDQUFDO0FBQ3pCLGNBQWMsdUJBQXVCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIGNvbW1vblxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL21vZGVsJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NlcnZpY2VzJztcbmV4cG9ydCAqIGZyb20gJy4vY29uZmlnJztcbmV4cG9ydCAqIGZyb20gJy4vbmd4LWdvb3gtbGliLm1vZHVsZSdcbiJdfQ==
@@ -0,0 +1,137 @@
1
+ import { Injectable } from '@angular/core';
2
+ import { HttpHeaders, HttpRequest } from '@angular/common/http';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/common/http";
5
+ const httpOptions = {
6
+ headers: new HttpHeaders({
7
+ 'Content-Type': 'application/json',
8
+ 'Cache-Control': 'no-cache, no-store',
9
+ 'Access-Control-Allow-Origin': '*',
10
+ 'Access-Control-Allow-Headers': 'Content-Type, Content-Length, Accept-Encoding, X-CSRF-Token, X-API-KEY, X-ACCESS-TOKEN, X-TIMEZONE, accept, origin, Cache-Control, X-Requested-With, Authorization, Content-Disposition, Content-Filename',
11
+ })
12
+ };
13
+ // Utility class for all REST services with common functions
14
+ export class RestUtils {
15
+ // Constructor with injected authentication service
16
+ constructor(http) {
17
+ this.http = http;
18
+ }
19
+ // Upload is HTTP POST action but the body is File object
20
+ upload(file, url, ...params) {
21
+ const resourceUrl = this.buildUrl(url, ...params);
22
+ const formData = new FormData();
23
+ formData.append('fileKey', file, file.name);
24
+ const req = new HttpRequest('POST', resourceUrl, formData, {
25
+ reportProgress: false,
26
+ responseType: 'json',
27
+ });
28
+ return this.http.request(req);
29
+ }
30
+ // Download is HTTP GET action but the content is a blob
31
+ download(fileName, url, ...params) {
32
+ const resourceUrl = this.buildUrl(url, ...params);
33
+ let downloadLink = fileName;
34
+ // extract file name
35
+ params.forEach(p => {
36
+ let arr = p.split('=');
37
+ if (arr.length > 1) {
38
+ if (arr[0].toLowerCase() === 'filename') {
39
+ downloadLink = arr[1];
40
+ }
41
+ }
42
+ });
43
+ // Set content type for: json / csv / xml / pdf /xslx
44
+ let contentType = this.getMimeType(downloadLink);
45
+ return this.http.get(resourceUrl, {
46
+ responseType: 'blob',
47
+ reportProgress: true,
48
+ observe: 'events',
49
+ headers: new HttpHeaders({ 'Content-Type': contentType })
50
+ });
51
+ }
52
+ // Download2 is an alternative option to download
53
+ download2(fileName, url, ...params) {
54
+ let downloadLink = fileName;
55
+ // extract file name
56
+ params.forEach(p => {
57
+ let arr = p.split('=');
58
+ if (arr.length > 1) {
59
+ if (arr[0].toLowerCase() === 'filename') {
60
+ downloadLink = arr[1];
61
+ }
62
+ }
63
+ });
64
+ let contentType = this.getMimeType(fileName);
65
+ const link = document.createElement('a');
66
+ link.href = this.buildUrl(url, ...params);
67
+ link.download = downloadLink;
68
+ document.body.appendChild(link);
69
+ link.click();
70
+ document.body.removeChild(link);
71
+ }
72
+ // HTTP GET action
73
+ get(url, ...params) {
74
+ const resourceUrl = this.buildUrl(url, ...params);
75
+ return this.http.get(resourceUrl, httpOptions);
76
+ }
77
+ // HTTP POST action
78
+ post(url, body, ...params) {
79
+ const resourceUrl = this.buildUrl(url, ...params);
80
+ return this.http.post(resourceUrl, body, httpOptions);
81
+ }
82
+ // HTTP PUT action
83
+ put(url, body, ...params) {
84
+ const resourceUrl = this.buildUrl(url, ...params);
85
+ return this.http.put(resourceUrl, body, httpOptions);
86
+ }
87
+ // HTTP PATCH action
88
+ patch(url, body, ...params) {
89
+ const resourceUrl = this.buildUrl(url, ...params);
90
+ return this.http.patch(resourceUrl, body, httpOptions);
91
+ }
92
+ // HTTP DELETE action
93
+ delete(url, ...params) {
94
+ const resourceUrl = this.buildUrl(url, ...params);
95
+ return this.http.delete(resourceUrl, httpOptions);
96
+ }
97
+ // Construct URL with parameters
98
+ buildUrl(url, ...params) {
99
+ return (params === null) ? url : (params.length === 0) ? url : `${url}${params && params.length > 0 ? '?' + params.join('&') : ''}`;
100
+ }
101
+ // Return MIME type based on file extension
102
+ getMimeType(fileName) {
103
+ // Set content type for: json / csv / xml / pdf /xslx
104
+ let contentType = 'application/json';
105
+ if (fileName.toLowerCase().endsWith('jpg') || fileName.toLowerCase().endsWith('jpeg')) {
106
+ contentType = 'image/jpeg';
107
+ }
108
+ else if (fileName.toLowerCase().endsWith('png')) {
109
+ contentType = 'image/png';
110
+ }
111
+ else if (fileName.toLowerCase().endsWith('tif') || fileName.toLowerCase().endsWith('tiff')) {
112
+ contentType = 'image/tiff';
113
+ }
114
+ else if (fileName.toLowerCase().endsWith('csv')) {
115
+ contentType = 'text/csv';
116
+ }
117
+ else if (fileName.toLowerCase().endsWith('xml')) {
118
+ contentType = 'text/xml';
119
+ }
120
+ else if (fileName.toLowerCase().endsWith('pdf')) {
121
+ contentType = 'application/pdf';
122
+ }
123
+ else if (fileName.toLowerCase().endsWith('xlsx')) {
124
+ contentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet";
125
+ }
126
+ return contentType;
127
+ }
128
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RestUtils, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable }); }
129
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RestUtils, providedIn: 'root' }); }
130
+ }
131
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: RestUtils, decorators: [{
132
+ type: Injectable,
133
+ args: [{
134
+ providedIn: 'root'
135
+ }]
136
+ }], ctorParameters: () => [{ type: i1.HttpClient }] });
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzdC11dGlscy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1nb294LWxpYjIvc3JjL3Jlc3QtdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsV0FBVyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNCQUFzQixDQUFDOzs7QUFHNUUsTUFBTSxXQUFXLEdBQUc7SUFDbEIsT0FBTyxFQUFFLElBQUksV0FBVyxDQUFDO1FBQ3ZCLGNBQWMsRUFBRyxrQkFBa0I7UUFDbkMsZUFBZSxFQUFFLG9CQUFvQjtRQUNyQyw2QkFBNkIsRUFBRSxHQUFHO1FBQ2xDLDhCQUE4QixFQUFFLDJNQUEyTTtLQUM1TyxDQUFDO0NBQ0gsQ0FBQztBQUVGLDREQUE0RDtBQUk1RCxNQUFNLE9BQU8sU0FBUztJQUVwQixtREFBbUQ7SUFDbkQsWUFBb0IsSUFBZ0I7UUFBaEIsU0FBSSxHQUFKLElBQUksQ0FBWTtJQUFJLENBQUM7SUFFekMseURBQXlEO0lBQ3pELE1BQU0sQ0FBSSxJQUFVLEVBQUUsR0FBVyxFQUFFLEdBQUcsTUFBZ0I7UUFFcEQsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEVBQUUsR0FBRyxNQUFNLENBQUMsQ0FBQztRQUVsRCxNQUFNLFFBQVEsR0FBYSxJQUFJLFFBQVEsRUFBRSxDQUFDO1FBQzFDLFFBQVEsQ0FBQyxNQUFNLENBQUMsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7UUFFNUMsTUFBTSxHQUFHLEdBQUcsSUFBSSxXQUFXLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUU7WUFDekQsY0FBYyxFQUFFLEtBQUs7WUFDckIsWUFBWSxFQUFFLE1BQU07U0FDckIsQ0FBQyxDQUFDO1FBQ0gsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9B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M0IsQ0FBQzthQUFNLElBQUksUUFBUSxDQUFDLFdBQVcsRUFBRSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO1lBQ2xELFdBQVcsR0FBRyxpQkFBaUIsQ0FBQztRQUNsQyxDQUFDO2FBQU0sSUFBSSxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDbkQsV0FBVyxHQUFHLG1FQUFtRSxDQUFBO1FBQ25GLENBQUM7UUFDRCxPQUFPLFdBQVcsQ0FBQTtJQUNwQixDQUFDOytHQWhJVSxTQUFTO21IQUFULFNBQVMsY0FGUixNQUFNOzs0RkFFUCxTQUFTO2tCQUhyQixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh0dHBDbGllbnQsIEh0dHBIZWFkZXJzLCBIdHRwUmVxdWVzdCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcbmltcG9ydCB7IE9ic2VydmFibGUsIHRocm93RXJyb3IgfSBmcm9tICdyeGpzJztcblxuY29uc3QgaHR0cE9wdGlvbnMgPSB7XG4gIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7XG4gICAgJ0NvbnRlbnQtVHlwZSc6ICAnYXBwbGljYXRpb24vanNvbicsXG4gICAgJ0NhY2hlLUNvbnRyb2wnOiAnbm8tY2FjaGUsIG5vLXN0b3JlJyxcbiAgICAnQWNjZXNzLUNvbnRyb2wtQWxsb3ctT3JpZ2luJzogJyonLFxuICAgICdBY2Nlc3MtQ29udHJvbC1BbGxvdy1IZWFkZXJzJzogJ0NvbnRlbnQtVHlwZSwgQ29udGVudC1MZW5ndGgsIEFjY2VwdC1FbmNvZGluZywgWC1DU1JGLVRva2VuLCBYLUFQSS1LRVksIFgtQUNDRVNTLVRPS0VOLCBYLVRJTUVaT05FLCBhY2NlcHQsIG9yaWdpbiwgQ2FjaGUtQ29udHJvbCwgWC1SZXF1ZXN0ZWQtV2l0aCwgQXV0aG9yaXphdGlvbiwgQ29udGVudC1EaXNwb3NpdGlvbiwgQ29udGVudC1GaWxlbmFtZScsXG4gIH0pXG59O1xuXG4vLyBVdGlsaXR5IGNsYXNzIGZvciBhbGwgUkVTVCBzZXJ2aWNlcyB3aXRoIGNvbW1vbiBmdW5jdGlvbnNcbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIFJlc3RVdGlscyB7XG5cbiAgLy8gQ29uc3RydWN0b3Igd2l0aCBpbmplY3RlZCBhdXRoZW50aWNhdGlvbiBzZXJ2aWNlXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgaHR0cDogSHR0cENsaWVudCkgeyB9XG5cbiAgLy8gVXBsb2FkIGlzIEhUVFAgUE9TVCBhY3Rpb24gYnV0IHRoZSBib2R5IGlzIEZpbGUgb2JqZWN0XG4gIHVwbG9hZDxUPihmaWxlOiBGaWxlLCB1cmw6IHN0cmluZywgLi4ucGFyYW1zOiBzdHJpbmdbXSkge1xuXG4gICAgY29uc3QgcmVzb3VyY2VVcmwgPSB0aGlzLmJ1aWxkVXJsKHVybCwgLi4ucGFyYW1zKTtcblxuICAgIGNvbnN0IGZvcm1EYXRhOiBGb3JtRGF0YSA9IG5ldyBGb3JtRGF0YSgpO1xuICAgIGZvcm1EYXRhLmFwcGVuZCgnZmlsZUtleScsIGZpbGUsIGZpbGUubmFtZSk7XG5cbiAgICBjb25zdCByZXEgPSBuZXcgSHR0cFJlcXVlc3QoJ1BPU1QnLCByZXNvdXJjZVVybCwgZm9ybURhdGEsIHtcbiAgICAgIHJlcG9ydFByb2dyZXNzOiBmYWxzZSxcbiAgICAgIHJlc3BvbnNlVHlwZTogJ2pzb24nLFxuICAgIH0pO1xuICAgIHJldHVybiB0aGlzLmh0dHAucmVxdWVzdDxUPihyZXEpO1xuICB9XG5cbiAgLy8gRG93bmxvYWQgaXMgSFRUUCBHRVQgYWN0aW9uIGJ1dCB0aGUgY29udGVudCBpcyBhIGJsb2JcbiAgZG93bmxvYWQoZmlsZU5hbWU6IHN0cmluZywgdXJsOiBzdHJpbmcsIC4uLnBhcmFtczogc3RyaW5nW10pIHtcbiAgICBjb25zdCByZXNvdXJjZVVybCA9IHRoaXMuYnVpbGRVcmwodXJsLCAuLi5wYXJhbXMpO1xuXG4gICAgbGV0IGRvd25sb2FkTGluayA9IGZpbGVOYW1lXG5cbiAgICAvLyBleHRyYWN0IGZpbGUgbmFtZVxuICAgIHBhcmFtcy5mb3JFYWNoKHAgPT4ge1xuICAgICAgbGV0IGFyciA9IHAuc3BsaXQoJz0nKTtcbiAgICAgIGlmIChhcnIubGVuZ3RoID4gMSkge1xuICAgICAgICBpZiAoYXJyWzBdLnRvTG93ZXJDYXNlKCkgPT09ICdmaWxlbmFtZScpIHtcbiAgICAgICAgICBkb3dubG9hZExpbmsgPSBhcnJbMV07XG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9KTtcblxuICAgIC8vIFNldCBjb250ZW50IHR5cGUgZm9yOiBqc29uIC8gY3N2IC8geG1sIC8gcGRmIC94c2x4XG4gICAgbGV0IGNvbnRlbnRUeXBlID0gdGhpcy5nZXRNaW1lVHlwZShkb3dubG9hZExpbmspO1xuXG4gICAgcmV0dXJuIHRoaXMuaHR0cC5nZXQocmVzb3VyY2VVcmwsIHtcbiAgICAgIHJlc3BvbnNlVHlwZTogJ2Jsb2InLFxuICAgICAgcmVwb3J0UHJvZ3Jlc3M6IHRydWUsXG4gICAgICBvYnNlcnZlOiAnZXZlbnRzJyxcbiAgICAgIGhlYWRlcnM6IG5ldyBIdHRwSGVhZGVycyh7ICdDb250ZW50LVR5cGUnOiBjb250ZW50VHlwZSB9KVxuICAgIH0pO1xuICB9XG5cbiAgLy8gRG93bmxvYWQyIGlzIGFuIGFsdGVybmF0aXZlIG9wdGlvbiB0byBkb3dubG9hZFxuICBkb3dubG9hZDIoZmlsZU5hbWU6IHN0cmluZywgdXJsOiBzdHJpbmcsIC4uLnBhcmFtczogc3RyaW5nW10pIHtcblxuICAgIGxldCBkb3dubG9hZExpbmsgPSBmaWxlTmFtZVxuXG4gICAgLy8gZXh0cmFjdCBmaWxlIG5hbWVcbiAgICBwYXJhbXMuZm9yRWFjaChwID0+IHtcbiAgICAgIGxldCBhcnIgPSBwLnNwbGl0KCc9Jyk7XG4gICAgICBpZiAoYXJyLmxlbmd0aCA+IDEpIHtcbiAgICAgICAgaWYgKGFyclswXS50b0xvd2VyQ2FzZSgpID09PSAnZmlsZW5hbWUnKSB7XG4gICAgICAgICAgZG93bmxvYWRMaW5rID0gYXJyWzFdO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgfSk7XG5cbiAgICBsZXQgY29udGVudFR5cGUgPSB0aGlzLmdldE1pbWVUeXBlKGZpbGVOYW1lKTtcblxuICAgIGNvbnN0IGxpbmsgPSBkb2N1bWVudC5jcmVhdGVFbGVtZW50KCdhJyk7XG4gICAgbGluay5ocmVmID0gdGhpcy5idWlsZFVybCh1cmwsIC4uLnBhcmFtcyk7XG4gICAgbGluay5kb3dubG9hZCA9IGRvd25sb2FkTGluaztcbiAgICBkb2N1bWVudC5ib2R5LmFwcGVuZENoaWxkKGxpbmspO1xuICAgIGxpbmsuY2xpY2soKTtcbiAgICBkb2N1bWVudC5ib2R5LnJlbW92ZUNoaWxkKGxpbmspO1xuXG4gIH1cblxuICAvLyBIVFRQIEdFVCBhY3Rpb25cbiAgZ2V0PFQ+KHVybDogc3RyaW5nLCAuLi5wYXJhbXM6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgY29uc3QgcmVzb3VyY2VVcmwgPSB0aGlzLmJ1aWxkVXJsKHVybCwgLi4ucGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmdldDxUPihyZXNvdXJjZVVybCwgaHR0cE9wdGlvbnMpXG4gIH1cblxuICAvLyBIVFRQIFBPU1QgYWN0aW9uXG4gIHBvc3Q8VD4odXJsOiBzdHJpbmcsIGJvZHk/OiBzdHJpbmcsIC4uLnBhcmFtczogc3RyaW5nW10pOiBPYnNlcnZhYmxlPFQ+IHtcbiAgICBjb25zdCByZXNvdXJjZVVybCA9IHRoaXMuYnVpbGRVcmwodXJsLCAuLi5wYXJhbXMpO1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdDxUPihyZXNvdXJjZVVybCwgYm9keSwgaHR0cE9wdGlvbnMpXG4gIH1cblxuICAvLyBIVFRQIFBVVCBhY3Rpb25cbiAgcHV0PFQ+KHVybDogc3RyaW5nLCBib2R5Pzogc3RyaW5nLCAuLi5wYXJhbXM6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgY29uc3QgcmVzb3VyY2VVcmwgPSB0aGlzLmJ1aWxkVXJsKHVybCwgLi4ucGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLnB1dDxUPihyZXNvdXJjZVVybCwgYm9keSwgaHR0cE9wdGlvbnMpXG4gIH1cblxuICAvLyBIVFRQIFBBVENIIGFjdGlvblxuICBwYXRjaDxUPih1cmw6IHN0cmluZywgYm9keT86IHN0cmluZywgLi4ucGFyYW1zOiBzdHJpbmdbXSk6IE9ic2VydmFibGU8VD4ge1xuICAgIGNvbnN0IHJlc291cmNlVXJsID0gdGhpcy5idWlsZFVybCh1cmwsIC4uLnBhcmFtcyk7XG4gICAgcmV0dXJuIHRoaXMuaHR0cC5wYXRjaDxUPihyZXNvdXJjZVVybCwgYm9keSwgaHR0cE9wdGlvbnMpXG4gIH1cblxuICAvLyBIVFRQIERFTEVURSBhY3Rpb25cbiAgZGVsZXRlPFQ+KHVybDogc3RyaW5nLCAuLi5wYXJhbXM6IHN0cmluZ1tdKTogT2JzZXJ2YWJsZTxUPiB7XG4gICAgY29uc3QgcmVzb3VyY2VVcmwgPSB0aGlzLmJ1aWxkVXJsKHVybCwgLi4ucGFyYW1zKTtcbiAgICByZXR1cm4gdGhpcy5odHRwLmRlbGV0ZTxUPihyZXNvdXJjZVVybCwgaHR0cE9wdGlvbnMpXG4gIH1cblxuICAvLyBDb25zdHJ1Y3QgVVJMIHdpdGggcGFyYW1ldGVyc1xuICBwcml2YXRlIGJ1aWxkVXJsKHVybDogc3RyaW5nLCAuLi5wYXJhbXM6IHN0cmluZ1tdKSB7XG4gICAgcmV0dXJuIChwYXJhbXMgPT09IG51bGwpID8gdXJsIDogKHBhcmFtcy5sZW5ndGggPT09IDApID8gdXJsIDogYCR7dXJsfSR7cGFyYW1zICYmIHBhcmFtcy5sZW5ndGggPiAwID8gJz8nK3BhcmFtcy5qb2luKCcmJykgOiAnJ31gO1xuICB9XG5cbiAgLy8gUmV0dXJuIE1JTUUgdHlwZSBiYXNlZCBvbiBmaWxlIGV4dGVuc2lvblxuICBwcml2YXRlIGdldE1pbWVUeXBlKGZpbGVOYW1lOiBzdHJpbmcpOiBzdHJpbmcge1xuICAgIC8vIFNldCBjb250ZW50IHR5cGUgZm9yOiBqc29uIC8gY3N2IC8geG1sIC8gcGRmIC94c2x4XG4gICAgbGV0IGNvbnRlbnRUeXBlID0gJ2FwcGxpY2F0aW9uL2pzb24nO1xuICAgIGlmIChmaWxlTmFtZS50b0xvd2VyQ2FzZSgpLmVuZHNXaXRoKCdqcGcnKSB8fCBmaWxlTmFtZS50b0xvd2VyQ2FzZSgpLmVuZHNXaXRoKCdqcGVnJykpIHtcbiAgICAgIGNvbnRlbnRUeXBlID0gJ2ltYWdlL2pwZWcnO1xuICAgIH0gZWxzZSBpZiAoZmlsZU5hbWUudG9Mb3dlckNhc2UoKS5lbmRzV2l0aCgncG5nJykpIHtcbiAgICAgIGNvbnRlbnRUeXBlID0gJ2ltYWdlL3BuZyc7XG4gICAgfSBlbHNlIGlmIChmaWxlTmFtZS50b0xvd2VyQ2FzZSgpLmVuZHNXaXRoKCd0aWYnKSB8fCBmaWxlTmFtZS50b0xvd2VyQ2FzZSgpLmVuZHNXaXRoKCd0aWZmJykpIHtcbiAgICAgIGNvbnRlbnRUeXBlID0gJ2ltYWdlL3RpZmYnO1xuICAgIH0gZWxzZSBpZiAoZmlsZU5hbWUudG9Mb3dlckNhc2UoKS5lbmRzV2l0aCgnY3N2JykpIHtcbiAgICAgIGNvbnRlbnRUeXBlID0gJ3RleHQvY3N2JztcbiAgICB9IGVsc2UgaWYgKGZpbGVOYW1lLnRvTG93ZXJDYXNlKCkuZW5kc1dpdGgoJ3htbCcpKSB7XG4gICAgICBjb250ZW50VHlwZSA9ICd0ZXh0L3htbCc7XG4gICAgfSBlbHNlIGlmIChmaWxlTmFtZS50b0xvd2VyQ2FzZSgpLmVuZHNXaXRoKCdwZGYnKSkge1xuICAgICAgY29udGVudFR5cGUgPSAnYXBwbGljYXRpb24vcGRmJztcbiAgICB9IGVsc2UgaWYgKGZpbGVOYW1lLnRvTG93ZXJDYXNlKCkuZW5kc1dpdGgoJ3hsc3gnKSkge1xuICAgICAgY29udGVudFR5cGUgPSBcImFwcGxpY2F0aW9uL3ZuZC5vcGVueG1sZm9ybWF0cy1vZmZpY2Vkb2N1bWVudC5zcHJlYWRzaGVldG1sLnNoZWV0XCJcbiAgICB9XG4gICAgcmV0dXJuIGNvbnRlbnRUeXBlXG4gIH1cbn1cbiJdfQ==