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

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 (211) hide show
  1. package/fesm2022/aya-flights-ngx-goox-lib.mjs +109 -109
  2. package/fesm2022/aya-flights-ngx-goox-lib.mjs.map +1 -1
  3. package/lib/services/AccountsEndPoint.d.ts +1 -1
  4. package/lib/services/CertificatesEndPoint.d.ts +1 -1
  5. package/lib/services/ContactsEndPoint.d.ts +2 -2
  6. package/lib/services/CreditsEndPoint.d.ts +1 -1
  7. package/lib/services/FlightsEndPoint.d.ts +1 -1
  8. package/lib/services/MaintenancesEndPoint.d.ts +1 -1
  9. package/lib/services/MyCertificatesEndPoint.d.ts +1 -1
  10. package/lib/services/MyFlightsEndPoint.d.ts +1 -1
  11. package/lib/services/MyInfoEndPoint.d.ts +1 -1
  12. package/lib/services/MyStudentsEndPoint.d.ts +2 -2
  13. package/package.json +4 -6
  14. package/rest-utils.d.ts +2 -2
  15. package/esm2022/aya-flights-ngx-goox-lib.mjs +0 -5
  16. package/esm2022/config.mjs +0 -15
  17. package/esm2022/lib/model/ADSBCategoryCode.mjs +0 -43
  18. package/esm2022/lib/model/ADSBSourceFlag.mjs +0 -32
  19. package/esm2022/lib/model/ADSBState.mjs +0 -48
  20. package/esm2022/lib/model/Account.mjs +0 -28
  21. package/esm2022/lib/model/AccountStatusCode.mjs +0 -35
  22. package/esm2022/lib/model/AccountTypeCode.mjs +0 -39
  23. package/esm2022/lib/model/AccountsFilter.mjs +0 -27
  24. package/esm2022/lib/model/ActionResponse.mjs +0 -15
  25. package/esm2022/lib/model/Address.mjs +0 -21
  26. package/esm2022/lib/model/Airplane.mjs +0 -36
  27. package/esm2022/lib/model/AirplaneStatusCode.mjs +0 -31
  28. package/esm2022/lib/model/AirplaneValidationFlag.mjs +0 -119
  29. package/esm2022/lib/model/AirplanesFilter.mjs +0 -27
  30. package/esm2022/lib/model/AnyKeyValue.mjs +0 -12
  31. package/esm2022/lib/model/AssessmentCode.mjs +0 -31
  32. package/esm2022/lib/model/AuditLog.mjs +0 -21
  33. package/esm2022/lib/model/AuditLogFilter.mjs +0 -39
  34. package/esm2022/lib/model/BaseEntity.mjs +0 -17
  35. package/esm2022/lib/model/BaseEntityEx.mjs +0 -23
  36. package/esm2022/lib/model/BaseFilter.mjs +0 -18
  37. package/esm2022/lib/model/BaseRestResponse.mjs +0 -12
  38. package/esm2022/lib/model/Billing.mjs +0 -36
  39. package/esm2022/lib/model/BillingRecord.mjs +0 -24
  40. package/esm2022/lib/model/BillingStatusCode.mjs +0 -59
  41. package/esm2022/lib/model/Booking.mjs +0 -31
  42. package/esm2022/lib/model/BookingPlan.mjs +0 -28
  43. package/esm2022/lib/model/BookingSlot.mjs +0 -20
  44. package/esm2022/lib/model/BookingSlots.mjs +0 -15
  45. package/esm2022/lib/model/BookingSlotsSet.mjs +0 -17
  46. package/esm2022/lib/model/BookingStatusCode.mjs +0 -55
  47. package/esm2022/lib/model/BookingTypeFlag.mjs +0 -51
  48. package/esm2022/lib/model/BookingsFilter.mjs +0 -36
  49. package/esm2022/lib/model/Boundaries.mjs +0 -12
  50. package/esm2022/lib/model/Campaign.mjs +0 -25
  51. package/esm2022/lib/model/CampaignStatusCode.mjs +0 -35
  52. package/esm2022/lib/model/CampaignTypeCode.mjs +0 -31
  53. package/esm2022/lib/model/Certificate.mjs +0 -23
  54. package/esm2022/lib/model/CertificatesFilter.mjs +0 -33
  55. package/esm2022/lib/model/ColumnDef.mjs +0 -27
  56. package/esm2022/lib/model/ConfirmStatusCode.mjs +0 -31
  57. package/esm2022/lib/model/Contact.mjs +0 -40
  58. package/esm2022/lib/model/ContactGroup.mjs +0 -15
  59. package/esm2022/lib/model/ContactsFilter.mjs +0 -36
  60. package/esm2022/lib/model/Credit.mjs +0 -29
  61. package/esm2022/lib/model/CreditsFilter.mjs +0 -36
  62. package/esm2022/lib/model/CrewDutyDayRisks.mjs +0 -15
  63. package/esm2022/lib/model/CurrencyCode.mjs +0 -31
  64. package/esm2022/lib/model/DepartureRisks.mjs +0 -21
  65. package/esm2022/lib/model/DestinationRisks.mjs +0 -42
  66. package/esm2022/lib/model/Distribution.mjs +0 -15
  67. package/esm2022/lib/model/Document.mjs +0 -24
  68. package/esm2022/lib/model/DocumentRevision.mjs +0 -27
  69. package/esm2022/lib/model/Engine.mjs +0 -21
  70. package/esm2022/lib/model/Entities.mjs +0 -10
  71. package/esm2022/lib/model/EntitiesRequest.mjs +0 -9
  72. package/esm2022/lib/model/EntitiesResponse.mjs +0 -18
  73. package/esm2022/lib/model/EntityAction.mjs +0 -6
  74. package/esm2022/lib/model/EntityRequest.mjs +0 -9
  75. package/esm2022/lib/model/EntityResponse.mjs +0 -14
  76. package/esm2022/lib/model/ErrorCode.mjs +0 -67
  77. package/esm2022/lib/model/FilterFlag.mjs +0 -119
  78. package/esm2022/lib/model/Flight.mjs +0 -49
  79. package/esm2022/lib/model/FlightBilling.mjs +0 -24
  80. package/esm2022/lib/model/FlightCategoryCode.mjs +0 -163
  81. package/esm2022/lib/model/FlightClassCode.mjs +0 -47
  82. package/esm2022/lib/model/FlightPassenger.mjs +0 -18
  83. package/esm2022/lib/model/FlightPlan.mjs +0 -36
  84. package/esm2022/lib/model/FlightPurposeCode.mjs +0 -67
  85. package/esm2022/lib/model/FlightRisk.mjs +0 -23
  86. package/esm2022/lib/model/FlightStateCode.mjs +0 -35
  87. package/esm2022/lib/model/FlightStatusCode.mjs +0 -43
  88. package/esm2022/lib/model/FlightTicket.mjs +0 -22
  89. package/esm2022/lib/model/FlightTypeCode.mjs +0 -39
  90. package/esm2022/lib/model/FlightsFilter.mjs +0 -45
  91. package/esm2022/lib/model/FollowUpAction.mjs +0 -15
  92. package/esm2022/lib/model/Fuel.mjs +0 -27
  93. package/esm2022/lib/model/Group.mjs +0 -17
  94. package/esm2022/lib/model/InstructionTypeCode.mjs +0 -31
  95. package/esm2022/lib/model/IntEnumValue.mjs +0 -12
  96. package/esm2022/lib/model/IntKeyValue.mjs +0 -12
  97. package/esm2022/lib/model/Json.mjs +0 -7
  98. package/esm2022/lib/model/JsonDoc.mjs +0 -13
  99. package/esm2022/lib/model/Lead.mjs +0 -30
  100. package/esm2022/lib/model/LeadAction.mjs +0 -17
  101. package/esm2022/lib/model/LeadStatusCode.mjs +0 -47
  102. package/esm2022/lib/model/LeadsFilter.mjs +0 -24
  103. package/esm2022/lib/model/Lesson.mjs +0 -45
  104. package/esm2022/lib/model/LessonSubjectCode.mjs +0 -383
  105. package/esm2022/lib/model/LessonTypeCode.mjs +0 -59
  106. package/esm2022/lib/model/LicenseKindFlag.mjs +0 -63
  107. package/esm2022/lib/model/LocalTime.mjs +0 -7
  108. package/esm2022/lib/model/Location.mjs +0 -15
  109. package/esm2022/lib/model/LogBookRecord.mjs +0 -32
  110. package/esm2022/lib/model/LoginParams.mjs +0 -15
  111. package/esm2022/lib/model/Lookup.mjs +0 -19
  112. package/esm2022/lib/model/LookupGroup.mjs +0 -15
  113. package/esm2022/lib/model/Magneto.mjs +0 -18
  114. package/esm2022/lib/model/Maintenance.mjs +0 -28
  115. package/esm2022/lib/model/MaintenanceActionCode.mjs +0 -43
  116. package/esm2022/lib/model/MaintenancesFilter.mjs +0 -33
  117. package/esm2022/lib/model/MedicalCertClassCode.mjs +0 -31
  118. package/esm2022/lib/model/MessageConfirm.mjs +0 -20
  119. package/esm2022/lib/model/MessageTypeCode.mjs +0 -47
  120. package/esm2022/lib/model/Metar.mjs +0 -15
  121. package/esm2022/lib/model/MetarReport.mjs +0 -21
  122. package/esm2022/lib/model/Mitigation.mjs +0 -27
  123. package/esm2022/lib/model/ModuleCode.mjs +0 -71
  124. package/esm2022/lib/model/Notification.mjs +0 -18
  125. package/esm2022/lib/model/NotificationTypeCode.mjs +0 -39
  126. package/esm2022/lib/model/OperatorCode.mjs +0 -15
  127. package/esm2022/lib/model/PaymentMethodCode.mjs +0 -43
  128. package/esm2022/lib/model/Permission.mjs +0 -12
  129. package/esm2022/lib/model/PermissionFlag.mjs +0 -43
  130. package/esm2022/lib/model/PilotQualificationsRisks.mjs +0 -18
  131. package/esm2022/lib/model/Point.mjs +0 -12
  132. package/esm2022/lib/model/PostFlightInfo.mjs +0 -117
  133. package/esm2022/lib/model/PreFlightInfo.mjs +0 -99
  134. package/esm2022/lib/model/Price.mjs +0 -18
  135. package/esm2022/lib/model/PriorityCode.mjs +0 -35
  136. package/esm2022/lib/model/Propeller.mjs +0 -21
  137. package/esm2022/lib/model/RiskAssessment.mjs +0 -33
  138. package/esm2022/lib/model/SimpleEntity.mjs +0 -11
  139. package/esm2022/lib/model/SpecialRisks.mjs +0 -15
  140. package/esm2022/lib/model/StatusCode.mjs +0 -39
  141. package/esm2022/lib/model/StorageItem.mjs +0 -19
  142. package/esm2022/lib/model/StringKeyValue.mjs +0 -12
  143. package/esm2022/lib/model/StudentSheet.mjs +0 -32
  144. package/esm2022/lib/model/Syllabus.mjs +0 -20
  145. package/esm2022/lib/model/SyllabusFilter.mjs +0 -27
  146. package/esm2022/lib/model/SyllabusStageCode.mjs +0 -79
  147. package/esm2022/lib/model/SyllabusTopic.mjs +0 -21
  148. package/esm2022/lib/model/SyllabusTrack.mjs +0 -36
  149. package/esm2022/lib/model/SystemConfig.mjs +0 -15
  150. package/esm2022/lib/model/SystemMessage.mjs +0 -19
  151. package/esm2022/lib/model/TOLData.mjs +0 -24
  152. package/esm2022/lib/model/TafReport.mjs +0 -21
  153. package/esm2022/lib/model/TicketStatusCode.mjs +0 -27
  154. package/esm2022/lib/model/TimeDataPoint.mjs +0 -12
  155. package/esm2022/lib/model/TimeFrame.mjs +0 -12
  156. package/esm2022/lib/model/TimePeriodCode.mjs +0 -39
  157. package/esm2022/lib/model/TimeSeries.mjs +0 -15
  158. package/esm2022/lib/model/Timestamp.mjs +0 -7
  159. package/esm2022/lib/model/TokenData.mjs +0 -18
  160. package/esm2022/lib/model/TransactionTypeCode.mjs +0 -47
  161. package/esm2022/lib/model/TripRisks.mjs +0 -21
  162. package/esm2022/lib/model/Tuple.mjs +0 -16
  163. package/esm2022/lib/model/TypeRatingFlag.mjs +0 -35
  164. package/esm2022/lib/model/User.mjs +0 -22
  165. package/esm2022/lib/model/UserRoleFlag.mjs +0 -51
  166. package/esm2022/lib/model/UserStatusCode.mjs +0 -35
  167. package/esm2022/lib/model/UserTypeCode.mjs +0 -35
  168. package/esm2022/lib/model/UsersFilter.mjs +0 -30
  169. package/esm2022/lib/model/ValidationFlag.mjs +0 -67
  170. package/esm2022/lib/model/WBConfig.mjs +0 -54
  171. package/esm2022/lib/model/WeatherRisks.mjs +0 -36
  172. package/esm2022/lib/model/errorStruct.mjs +0 -12
  173. package/esm2022/lib/model/index.mjs +0 -157
  174. package/esm2022/lib/services/AccountsEndPoint.mjs +0 -189
  175. package/esm2022/lib/services/AirplanesEndPoint.mjs +0 -196
  176. package/esm2022/lib/services/AuditLogsEndPoint.mjs +0 -120
  177. package/esm2022/lib/services/BookingSlotsEndPoint.mjs +0 -139
  178. package/esm2022/lib/services/BookingsEndPoint.mjs +0 -223
  179. package/esm2022/lib/services/CampaignsEndPoint.mjs +0 -96
  180. package/esm2022/lib/services/CertificatesEndPoint.mjs +0 -104
  181. package/esm2022/lib/services/ContactsEndPoint.mjs +0 -293
  182. package/esm2022/lib/services/ContactsGroupsEndPoint.mjs +0 -96
  183. package/esm2022/lib/services/CreditsEndPoint.mjs +0 -101
  184. package/esm2022/lib/services/DocumentsEndPoint.mjs +0 -109
  185. package/esm2022/lib/services/FlightTicketsEndPoint.mjs +0 -80
  186. package/esm2022/lib/services/FlightsEndPoint.mjs +0 -335
  187. package/esm2022/lib/services/GroupsEndPoint.mjs +0 -96
  188. package/esm2022/lib/services/LeadsEndPoint.mjs +0 -203
  189. package/esm2022/lib/services/LookupsEndPoint.mjs +0 -87
  190. package/esm2022/lib/services/MaintenancesEndPoint.mjs +0 -104
  191. package/esm2022/lib/services/McpToolsEndPoint.mjs +0 -58
  192. package/esm2022/lib/services/MessageConfirmsEndPoint.mjs +0 -104
  193. package/esm2022/lib/services/MyAuthEndPoint.mjs +0 -58
  194. package/esm2022/lib/services/MyBookingsEndPoint.mjs +0 -148
  195. package/esm2022/lib/services/MyCertificatesEndPoint.mjs +0 -101
  196. package/esm2022/lib/services/MyCreditsEndPoint.mjs +0 -50
  197. package/esm2022/lib/services/MyFlightsEndPoint.mjs +0 -137
  198. package/esm2022/lib/services/MyInfoEndPoint.mjs +0 -50
  199. package/esm2022/lib/services/MyMessagesEndPoint.mjs +0 -46
  200. package/esm2022/lib/services/MyStudentsEndPoint.mjs +0 -62
  201. package/esm2022/lib/services/PriceListEndPoint.mjs +0 -80
  202. package/esm2022/lib/services/SyllabusEndPoint.mjs +0 -95
  203. package/esm2022/lib/services/SystemConfigsEndPoint.mjs +0 -71
  204. package/esm2022/lib/services/SystemEndPoint.mjs +0 -34
  205. package/esm2022/lib/services/SystemMessagesEndPoint.mjs +0 -105
  206. package/esm2022/lib/services/UserEndPoint.mjs +0 -35
  207. package/esm2022/lib/services/UsersEndPoint.mjs +0 -114
  208. package/esm2022/lib/services/index.mjs +0 -35
  209. package/esm2022/ngx-goox-lib.module.mjs +0 -26
  210. package/esm2022/public-api.mjs +0 -8
  211. package/esm2022/rest-utils.mjs +0 -137
@@ -1,196 +0,0 @@
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
- // AirplanesEndPoint Services for airplanes actions
7
- export class AirplanesEndPoint {
8
- // Class constructor
9
- constructor(config, rest) {
10
- this.config = config;
11
- this.rest = rest;
12
- // URL to web api
13
- this.baseUrl = '/airplanes';
14
- this.baseUrl = this.config.api + this.baseUrl;
15
- }
16
- /**
17
- * region Endpoint REST handlers ---------------------------------------------------------------------------------------
18
- * Get new and empty account template
19
- */
20
- new() {
21
- return this.rest.post(`${this.baseUrl}/new`, '');
22
- }
23
- /**
24
- * Create new airplane
25
- */
26
- create(body) {
27
- return this.rest.post(`${this.baseUrl}`, typeof body === 'object' ? JSON.stringify(body) : body);
28
- }
29
- /**
30
- * Update existing airplane
31
- */
32
- update(body) {
33
- return this.rest.put(`${this.baseUrl}`, typeof body === 'object' ? JSON.stringify(body) : body);
34
- }
35
- /**
36
- * Update existing airplane's Weight and Balance configuration
37
- */
38
- updateWBConfig(body) {
39
- return this.rest.put(`${this.baseUrl}/wb-config`, typeof body === 'object' ? JSON.stringify(body) : body);
40
- }
41
- /**
42
- * Delete airplane and all its content
43
- */
44
- delete(id) {
45
- return this.rest.delete(`${this.baseUrl}/${id}`);
46
- }
47
- /**
48
- * Get a single airplane by id
49
- */
50
- get(id) {
51
- return this.rest.get(`${this.baseUrl}/${id}`);
52
- }
53
- /**
54
- * Find airplanes by query
55
- */
56
- find(search, status, sort, page, size) {
57
- const params = [];
58
- if (search != null) {
59
- params.push(`search=${search}`);
60
- }
61
- if (status != null) {
62
- params.push(`status=${status}`);
63
- }
64
- if (sort != null) {
65
- params.push(`sort=${sort}`);
66
- }
67
- if (page != null) {
68
- params.push(`page=${page}`);
69
- }
70
- if (size != null) {
71
- params.push(`size=${size}`);
72
- }
73
- return this.rest.get(`${this.baseUrl}`, ...params);
74
- }
75
- /**
76
- * Lookup airplanes ID->Name by filter
77
- */
78
- lookup(search, status, sort, page, size) {
79
- const params = [];
80
- if (search != null) {
81
- params.push(`search=${search}`);
82
- }
83
- if (status != null) {
84
- params.push(`status=${status}`);
85
- }
86
- if (sort != null) {
87
- params.push(`sort=${sort}`);
88
- }
89
- if (page != null) {
90
- params.push(`page=${page}`);
91
- }
92
- if (size != null) {
93
- params.push(`size=${size}`);
94
- }
95
- return this.rest.get(`${this.baseUrl}/lookup`, ...params);
96
- }
97
- /**
98
- * Get minimal active airplanes data for hours statistics only
99
- */
100
- hours() {
101
- return this.rest.get(`${this.baseUrl}/hours`);
102
- }
103
- /**
104
- * Find airplane flights
105
- */
106
- findFlights(id, search, type, status, state, purpose, from, to, sort, page, size) {
107
- const params = [];
108
- if (search != null) {
109
- params.push(`search=${search}`);
110
- }
111
- if (type != null) {
112
- params.push(`type=${type}`);
113
- }
114
- if (status != null) {
115
- params.push(`status=${status}`);
116
- }
117
- if (state != null) {
118
- params.push(`state=${state}`);
119
- }
120
- if (purpose != null) {
121
- params.push(`purpose=${purpose}`);
122
- }
123
- if (from != null) {
124
- params.push(`from=${from}`);
125
- }
126
- if (to != null) {
127
- params.push(`to=${to}`);
128
- }
129
- if (sort != null) {
130
- params.push(`sort=${sort}`);
131
- }
132
- if (page != null) {
133
- params.push(`page=${page}`);
134
- }
135
- if (size != null) {
136
- params.push(`size=${size}`);
137
- }
138
- return this.rest.get(`${this.baseUrl}/${id}/flights`, ...params);
139
- }
140
- /**
141
- * Find airplane documents
142
- */
143
- findDocuments(id, search, sort, page, size) {
144
- const params = [];
145
- if (search != null) {
146
- params.push(`search=${search}`);
147
- }
148
- if (sort != null) {
149
- params.push(`sort=${sort}`);
150
- }
151
- if (page != null) {
152
- params.push(`page=${page}`);
153
- }
154
- if (size != null) {
155
- params.push(`size=${size}`);
156
- }
157
- return this.rest.get(`${this.baseUrl}/${id}/documents`, ...params);
158
- }
159
- /**
160
- * Find airplane maintenance log book
161
- */
162
- findMaintenance(id, search, status, action, sort, page, size) {
163
- const params = [];
164
- if (search != null) {
165
- params.push(`search=${search}`);
166
- }
167
- if (status != null) {
168
- params.push(`status=${status}`);
169
- }
170
- if (action != null) {
171
- params.push(`action=${action}`);
172
- }
173
- if (sort != null) {
174
- params.push(`sort=${sort}`);
175
- }
176
- if (page != null) {
177
- params.push(`page=${page}`);
178
- }
179
- if (size != null) {
180
- params.push(`size=${size}`);
181
- }
182
- return this.rest.get(`${this.baseUrl}/${id}/maintenance`, ...params);
183
- }
184
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AirplanesEndPoint, deps: [{ token: APP_CONFIG }, { token: i1.RestUtils }], target: i0.ɵɵFactoryTarget.Injectable }); }
185
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AirplanesEndPoint, providedIn: 'root' }); }
186
- }
187
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AirplanesEndPoint, decorators: [{
188
- type: Injectable,
189
- args: [{
190
- providedIn: 'root'
191
- }]
192
- }], ctorParameters: () => [{ type: i2.AppConfig, decorators: [{
193
- type: Inject,
194
- args: [APP_CONFIG]
195
- }] }, { type: i1.RestUtils }] });
196
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQWlycGxhbmVzRW5kUG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZ29veC1saWIyL3NyYy9saWIvc2VydmljZXMvQWlycGxhbmVzRW5kUG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGNBQWMsQ0FBQzs7OztBQWtCckQsb0RBQW9EO0FBSXBELE1BQU0sT0FBTyxpQkFBaUI7SUFLNUIsb0JBQW9CO0lBQ3BCLFlBQXdDLE1BQWlCLEVBQVUsSUFBZTtRQUExQyxXQUFNLEdBQU4sTUFBTSxDQUFXO1FBQVUsU0FBSSxHQUFKLElBQUksQ0FBVztRQUpsRixpQkFBaUI7UUFDVCxZQUFPLEdBQUcsWUFBWSxDQUFDO1FBSTdCLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUNoRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsR0FBRztRQUNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQTJCLEdBQUcsSUFBSSxDQUFDLE9BQU8sTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzdFLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxJQUFlO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQTJCLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLE9BQU8sSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsTUFBTSxDQUFDLElBQWU7UUFDcEIsT0FBTyxJQUFJLENBQUMs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SUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDbEQsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFFcEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBZ0MsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLEVBQUUsY0FBYyxFQUFFLEdBQUcsTUFBTSxDQUFDLENBQUM7SUFDcEcsQ0FBQzsrR0FySVUsaUJBQWlCLGtCQU1SLFVBQVU7bUhBTm5CLGlCQUFpQixjQUZoQixNQUFNOzs0RkFFUCxpQkFBaUI7a0JBSDdCLFVBQVU7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLE1BQU07aUJBQ25COzswQkFPYyxNQUFNOzJCQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUmVzdFV0aWxzIH0gZnJvbSAnLi4vLi4vcmVzdC11dGlscyc7XG5pbXBvcnQgeyBBUFBfQ09ORklHLCBBcHBDb25maWcgfSBmcm9tICcuLi8uLi9jb25maWcnO1xuXG5pbXBvcnQgeyBBY3Rpb25SZXNwb25zZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IEZsaWdodFN0YXR1c0NvZGUgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBGbGlnaHRQdXJwb3NlQ29kZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IEZsaWdodCB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IEVudGl0aWVzUmVzcG9uc2UgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBTdHJpbmdLZXlWYWx1ZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IERvY3VtZW50IH0gZnJvbSAnLi4vbW9kZWwnO1xuaW1wb3J0IHsgTWFpbnRlbmFuY2UgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBBaXJwbGFuZVN0YXR1c0NvZGUgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBGbGlnaHRUeXBlQ29kZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IEZsaWdodFN0YXRlQ29kZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IFN0YXR1c0NvZGUgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBNYWludGVuYW5jZUFjdGlvbkNvZGUgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBFbnRpdHlSZXNwb25zZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IEFpcnBsYW5lIH0gZnJvbSAnLi4vbW9kZWwnO1xuXG4vLyBBaXJwbGFuZXNFbmRQb2ludCBTZXJ2aWNlcyBmb3IgYWlycGxhbmVzIGFjdGlvbnMgXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBBaXJwbGFuZXNFbmRQb2ludCB7XG5cbiAgLy8gVVJMIHRvIHdlYiBhcGlcbiAgcHJpdmF0ZSBiYXNlVXJsID0gJy9haXJwbGFuZXMnO1xuXG4gIC8vIENsYXNzIGNvbnN0cnVjdG9yXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoQVBQX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IEFwcENvbmZpZywgcHJpdmF0ZSByZXN0OiBSZXN0VXRpbHMpIHtcbiAgICB0aGlzLmJhc2VVcmwgPSB0aGlzLmNvbmZpZy5hcGkgKyB0aGlzLmJhc2VVcmw7XG4gIH1cblxuICAvKipcbiAgICogcmVnaW9uIEVuZHBvaW50IFJFU1QgaGFuZGxlcnMgLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tXG4gICAqIEdldCBuZXcgYW5kIGVtcHR5IGFjY291bnQgdGVtcGxhdGVcbiAgICovXG4gIG5ldygpIHtcbiAgICByZXR1cm4gdGhpcy5yZXN0LnBvc3Q8RW50aXR5UmVzcG9uc2U8QWlycGxhbmU+PihgJHt0aGlzLmJhc2VVcmx9L25ld2AsICcnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgbmV3IGFpcnBsYW5lXG4gICAqL1xuICBjcmVhdGUoYm9keT86IEFpcnBsYW5lKSB7XG4gICAgcmV0dXJuIHRoaXMucmVzdC5wb3N0PEVudGl0eVJlc3BvbnNlPEFpcnBsYW5lPj4oYCR7dGhpcy5iYXNlVXJsfWAsIHR5cGVvZiBib2R5ID09PSAnb2JqZWN0JyA/IEpTT04uc3RyaW5naWZ5KGJvZHkpIDogYm9keSk7XG4gIH1cblxuICAvKipcbiAgICogVXBkYXRlIGV4aXN0aW5nIGFpcnBsYW5lXG4gICAqL1xuICB1cGRhdGUoYm9keT86IEFpcnBsYW5lKSB7XG4gICAgcmV0dXJuIHRoaXMucmVzdC5wdXQ8RW50aXR5UmVzcG9uc2U8QWlycGxhbmU+PihgJHt0aGlzLmJhc2VVcmx9YCwgdHlwZW9mIGJvZHkgPT09ICdvYmplY3QnID8gSlNPTi5zdHJpbmdpZnkoYm9keSkgOiBib2R5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBVcGRhdGUgZXhpc3RpbmcgYWlycGxhbmUncyBXZWlnaHQgYW5kIEJhbGFuY2UgY29uZmlndXJhdGlvblxuICAgKi9cbiAgdXBkYXRlV0JDb25maWcoYm9keT86IEFpcnBsYW5lKSB7XG4gICAgcmV0dXJuIHRoaXMucmVzdC5wdXQ8RW50aXR5UmVzcG9uc2U8QWlycGxhbmU+PihgJHt0aGlzLmJhc2VVcmx9L3diLWNvbmZpZ2AsIHR5cGVvZiBib2R5ID09PSAnb2JqZWN0JyA/IEpTT04uc3RyaW5naWZ5KGJvZHkpIDogYm9keSk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlIGFpcnBsYW5lIGFuZCBhbGwgaXRzIGNvbnRlbnRcbiAgICovXG4gIGRlbGV0ZShpZD86IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnJlc3QuZGVsZXRlPEFjdGlvblJlc3BvbnNlPihgJHt0aGlzLmJhc2VVcmx9LyR7aWR9YCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGEgc2luZ2xlIGFpcnBsYW5lIGJ5IGlkXG4gICAqL1xuICBnZXQoaWQ/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5yZXN0LmdldDxFbnRpdHlSZXNwb25zZTxBaXJwbGFuZT4+KGAke3RoaXMuYmFzZVVybH0vJHtpZH1gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kIGFpcnBsYW5lcyBieSBxdWVyeVxuICAgKi9cbiAgZmluZChzZWFyY2g/OiBzdHJpbmcsIHN0YXR1cz86IEFpcnBsYW5lU3RhdHVzQ29kZVtdLCBzb3J0Pzogc3RyaW5nLCBwYWdlPzogbnVtYmVyLCBzaXplPzogbnVtYmVyKSB7XG4gICAgY29uc3QgcGFyYW1zID0gW107XG4gICAgaWYgKHNlYXJjaCAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzZWFyY2g9JHtzZWFyY2h9YCk7IH1cbiAgICBpZiAoc3RhdHVzICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHN0YXR1cz0ke3N0YXR1c31gKTsgfVxuICAgIGlmIChzb3J0ICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNvcnQ9JHtzb3J0fWApOyB9XG4gICAgaWYgKHBhZ2UgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgcGFnZT0ke3BhZ2V9YCk7IH1cbiAgICBpZiAoc2l6ZSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzaXplPSR7c2l6ZX1gKTsgfVxuXG5cdFx0cmV0dXJuIHRoaXMucmVzdC5nZXQ8RW50aXRpZXNSZXNwb25zZTxBaXJwbGFuZT4+KGAke3RoaXMuYmFzZVVybH1gLCAuLi5wYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIExvb2t1cCBhaXJwbGFuZXMgSUQtPk5hbWUgYnkgZmlsdGVyXG4gICAqL1xuICBsb29rdXAoc2VhcmNoPzogc3RyaW5nLCBzdGF0dXM/OiBBaXJwbGFuZVN0YXR1c0NvZGVbXSwgc29ydD86IHN0cmluZywgcGFnZT86IG51bWJlciwgc2l6ZT86IG51bWJlcikge1xuICAgIGNvbnN0IHBhcmFtcyA9IFtdO1xuICAgIGlmIChzZWFyY2ggIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc2VhcmNoPSR7c2VhcmNofWApOyB9XG4gICAgaWYgKHN0YXR1cyAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzdGF0dXM9JHtzdGF0dXN9YCk7IH1cbiAgICBpZiAoc29ydCAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzb3J0PSR7c29ydH1gKTsgfVxuICAgIGlmIChwYWdlICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHBhZ2U9JHtwYWdlfWApOyB9XG4gICAgaWYgKHNpemUgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc2l6ZT0ke3NpemV9YCk7IH1cblxuXHRcdHJldHVybiB0aGlzLnJlc3QuZ2V0PEVudGl0aWVzUmVzcG9uc2U8U3RyaW5nS2V5VmFsdWU+PihgJHt0aGlzLmJhc2VVcmx9L2xvb2t1cGAsIC4uLnBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IG1pbmltYWwgYWN0aXZlIGFpcnBsYW5lcyBkYXRhIGZvciBob3VycyBzdGF0aXN0aWNzIG9ubHlcbiAgICovXG4gIGhvdXJzKCkge1xuICAgIHJldHVybiB0aGlzLnJlc3QuZ2V0PEVudGl0aWVzUmVzcG9uc2U8QWlycGxhbmU+PihgJHt0aGlzLmJhc2VVcmx9L2hvdXJzYCk7XG4gIH1cblxuICAvKipcbiAgICogRmluZCBhaXJwbGFuZSBmbGlnaHRzXG4gICAqL1xuICBmaW5kRmxpZ2h0cyhpZD86IHN0cmluZywgc2VhcmNoPzogc3RyaW5nLCB0eXBlPzogRmxpZ2h0VHlwZUNvZGVbXSwgc3RhdHVzPzogRmxpZ2h0U3RhdHVzQ29kZVtdLCBzdGF0ZT86IEZsaWdodFN0YXRlQ29kZVtdLCBwdXJwb3NlPzogRmxpZ2h0UHVycG9zZUNvZGVbXSwgZnJvbT86IG51bWJlciwgdG8/OiBudW1iZXIsIHNvcnQ/OiBzdHJpbmcsIHBhZ2U/OiBudW1iZXIsIHNpemU/OiBudW1iZXIpIHtcbiAgICBjb25zdCBwYXJhbXMgPSBbXTtcbiAgICBpZiAoc2VhcmNoICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNlYXJjaD0ke3NlYXJjaH1gKTsgfVxuICAgIGlmICh0eXBlICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHR5cGU9JHt0eXBlfWApOyB9XG4gICAgaWYgKHN0YXR1cyAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzdGF0dXM9JHtzdGF0dXN9YCk7IH1cbiAgICBpZiAoc3RhdGUgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc3RhdGU9JHtzdGF0ZX1gKTsgfVxuICAgIGlmIChwdXJwb3NlICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHB1cnBvc2U9JHtwdXJwb3NlfWApOyB9XG4gICAgaWYgKGZyb20gIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgZnJvbT0ke2Zyb219YCk7IH1cbiAgICBpZiAodG8gIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgdG89JHt0b31gKTsgfVxuICAgIGlmIChzb3J0ICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNvcnQ9JHtzb3J0fWApOyB9XG4gICAgaWYgKHBhZ2UgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgcGFnZT0ke3BhZ2V9YCk7IH1cbiAgICBpZiAoc2l6ZSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzaXplPSR7c2l6ZX1gKTsgfVxuXG5cdFx0cmV0dXJuIHRoaXMucmVzdC5nZXQ8RW50aXRpZXNSZXNwb25zZTxGbGlnaHQ+PihgJHt0aGlzLmJhc2VVcmx9LyR7aWR9L2ZsaWdodHNgLCAuLi5wYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmQgYWlycGxhbmUgZG9jdW1lbnRzXG4gICAqL1xuICBmaW5kRG9jdW1lbnRzKGlkPzogc3RyaW5nLCBzZWFyY2g/OiBzdHJpbmcsIHNvcnQ/OiBzdHJpbmcsIHBhZ2U/OiBudW1iZXIsIHNpemU/OiBudW1iZXIpIHtcbiAgICBjb25zdCBwYXJhbXMgPSBbXTtcbiAgICBpZiAoc2VhcmNoICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNlYXJjaD0ke3NlYXJjaH1gKTsgfVxuICAgIGlmIChzb3J0ICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNvcnQ9JHtzb3J0fWApOyB9XG4gICAgaWYgKHBhZ2UgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgcGFnZT0ke3BhZ2V9YCk7IH1cbiAgICBpZiAoc2l6ZSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzaXplPSR7c2l6ZX1gKTsgfVxuXG5cdFx0cmV0dXJuIHRoaXMucmVzdC5nZXQ8RW50aXRpZXNSZXNwb25zZTxEb2N1bWVudD4+KGAke3RoaXMuYmFzZVVybH0vJHtpZH0vZG9jdW1lbnRzYCwgLi4ucGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kIGFpcnBsYW5lIG1haW50ZW5hbmNlIGxvZyBib29rXG4gICAqL1xuICBmaW5kTWFpbnRlbmFuY2UoaWQ/OiBzdHJpbmcsIHNlYXJjaD86IHN0cmluZywgc3RhdHVzPzogU3RhdHVzQ29kZVtdLCBhY3Rpb24/OiBNYWludGVuYW5jZUFjdGlvbkNvZGVbXSwgc29ydD86IHN0cmluZywgcGFnZT86IG51bWJlciwgc2l6ZT86IG51bWJlcikge1xuICAgIGNvbnN0IHBhcmFtcyA9IFtdO1xuICAgIGlmIChzZWFyY2ggIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc2VhcmNoPSR7c2VhcmNofWApOyB9XG4gICAgaWYgKHN0YXR1cyAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzdGF0dXM9JHtzdGF0dXN9YCk7IH1cbiAgICBpZiAoYWN0aW9uICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYGFjdGlvbj0ke2FjdGlvbn1gKTsgfVxuICAgIGlmIChzb3J0ICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNvcnQ9JHtzb3J0fWApOyB9XG4gICAgaWYgKHBhZ2UgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgcGFnZT0ke3BhZ2V9YCk7IH1cbiAgICBpZiAoc2l6ZSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzaXplPSR7c2l6ZX1gKTsgfVxuXG5cdFx0cmV0dXJuIHRoaXMucmVzdC5nZXQ8RW50aXRpZXNSZXNwb25zZTxNYWludGVuYW5jZT4+KGAke3RoaXMuYmFzZVVybH0vJHtpZH0vbWFpbnRlbmFuY2VgLCAuLi5wYXJhbXMpO1xuICB9XG5cbn1cbiJdfQ==
@@ -1,120 +0,0 @@
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
- // AuditLogsEndPoint Services for auditLogs actions
7
- export class AuditLogsEndPoint {
8
- // Class constructor
9
- constructor(config, rest) {
10
- this.config = config;
11
- this.rest = rest;
12
- // URL to web api
13
- this.baseUrl = '/audit_logs';
14
- this.baseUrl = this.config.api + this.baseUrl;
15
- }
16
- /**
17
- * Create new auditLog
18
- */
19
- create(body) {
20
- return this.rest.post(`${this.baseUrl}`, typeof body === 'object' ? JSON.stringify(body) : body);
21
- }
22
- /**
23
- * Get a single auditLog by id
24
- */
25
- get(id) {
26
- return this.rest.get(`${this.baseUrl}/${id}`);
27
- }
28
- /**
29
- * Find auditLogs by query
30
- */
31
- find(from, to, userId, action, itemType, itemId, itemName, search, sort, page, size) {
32
- const params = [];
33
- if (from != null) {
34
- params.push(`from=${from}`);
35
- }
36
- if (to != null) {
37
- params.push(`to=${to}`);
38
- }
39
- if (userId != null) {
40
- params.push(`userId=${userId}`);
41
- }
42
- if (action != null) {
43
- params.push(`action=${action}`);
44
- }
45
- if (itemType != null) {
46
- params.push(`itemType=${itemType}`);
47
- }
48
- if (itemId != null) {
49
- params.push(`itemId=${itemId}`);
50
- }
51
- if (itemName != null) {
52
- params.push(`itemName=${itemName}`);
53
- }
54
- if (search != null) {
55
- params.push(`search=${search}`);
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 auditLogs count histogram over time
70
- */
71
- histogram(from, to, userId, action, itemType, itemId, itemName, search, sort, page, size) {
72
- const params = [];
73
- if (from != null) {
74
- params.push(`from=${from}`);
75
- }
76
- if (to != null) {
77
- params.push(`to=${to}`);
78
- }
79
- if (userId != null) {
80
- params.push(`userId=${userId}`);
81
- }
82
- if (action != null) {
83
- params.push(`action=${action}`);
84
- }
85
- if (itemType != null) {
86
- params.push(`itemType=${itemType}`);
87
- }
88
- if (itemId != null) {
89
- params.push(`itemId=${itemId}`);
90
- }
91
- if (itemName != null) {
92
- params.push(`itemName=${itemName}`);
93
- }
94
- if (search != null) {
95
- params.push(`search=${search}`);
96
- }
97
- if (sort != null) {
98
- params.push(`sort=${sort}`);
99
- }
100
- if (page != null) {
101
- params.push(`page=${page}`);
102
- }
103
- if (size != null) {
104
- params.push(`size=${size}`);
105
- }
106
- return this.rest.get(`${this.baseUrl}/histogram`, ...params);
107
- }
108
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AuditLogsEndPoint, deps: [{ token: APP_CONFIG }, { token: i1.RestUtils }], target: i0.ɵɵFactoryTarget.Injectable }); }
109
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AuditLogsEndPoint, providedIn: 'root' }); }
110
- }
111
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: AuditLogsEndPoint, decorators: [{
112
- type: Injectable,
113
- args: [{
114
- providedIn: 'root'
115
- }]
116
- }], ctorParameters: () => [{ type: i2.AppConfig, decorators: [{
117
- type: Inject,
118
- args: [APP_CONFIG]
119
- }] }, { type: i1.RestUtils }] });
120
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQXVkaXRMb2dzRW5kUG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZ29veC1saWIyL3NyYy9saWIvc2VydmljZXMvQXVkaXRMb2dzRW5kUG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGNBQWMsQ0FBQzs7OztBQU9yRCxvREFBb0Q7QUFJcEQsTUFBTSxPQUFPLGlCQUFpQjtJQUs1QixvQkFBb0I7SUFDcEIsWUFBd0MsTUFBaUIsRUFBVSxJQUFlO1FBQTFDLFdBQU0sR0FBTixNQUFNLENBQVc7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFXO1FBSmxGLGlCQUFpQjtRQUNULFlBQU8sR0FBRyxhQUFhLENBQUM7UUFJOUIsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ2hELENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxJQUFlO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQTJCLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLE9BQU8sSUFBSSxLQUFLLFFBQVEsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDN0gsQ0FBQztJQUVEOztPQUVHO0lBQ0gsR0FBRyxDQUFDLEVBQVc7UUFDYixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUEyQixHQUFHLElBQUksQ0FBQyxPQUFPLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQztJQUMxRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxJQUFJLENBQUMsSUFBYSxFQUFFLEVBQVcsRUFBRSxNQUFlLEVBQUUsTUFBZSxFQUFFLFFBQWlCLEVBQUUsTUFBZSxFQUFFLFFBQWlCLEVBQUUsTUFBZSxFQUFFLElBQWEsRUFBRSxJQUFhLEVBQUUsSUFBYTtRQUNwTCxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDbEQsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDNUMsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDeEQsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDeEQsSUFBSSxRQUFRLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksUUFBUSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDOUQsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDeEQsSUFBSSxRQUFRLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksUUFBUSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDOUQsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDeEQsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDbEQsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDbEQsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFFcEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBNkIsR0FBRyxJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsR0FBRyxNQUFNLENBQUMsQ0FBQztJQUMvRSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxTQUFTLENBQUMsSUFBYSxFQUFFLEVBQVcsRUFBRSxNQUFlLEVBQUUsTUFBZSxFQUFFLFFBQWlCLEVBQUUsTUFBZSxFQUFFLFFBQWlCLEVBQUUsTUFBZSxFQUFFLElBQWEsRUFBRSxJQUFhLEVBQUUsSUFBYTtRQUN6TCxNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDbEQsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDNUMsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDeEQsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDeEQsSUFBSSxRQUFRLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksUUFBUSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDOUQsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDeEQsSUFBSSxRQUFRLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFlBQVksUUFBUSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDOUQsSUFBSSxNQUFNLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFVBQVUsTUFBTSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDeEQsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDbEQsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFDbEQsSUFBSSxJQUFJLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLFFBQVEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFFcEQsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBcUMsR0FBRyxJQUFJLENBQUMsT0FBTyxZQUFZLEVBQUUsR0FBRyxNQUFNLENBQUMsQ0FBQztJQUNqRyxDQUFDOytHQTlEVSxpQkFBaUIsa0JBTVIsVUFBVTttSEFObkIsaUJBQWlCLGNBRmhCLE1BQU07OzRGQUVQLGlCQUFpQjtrQkFIN0IsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU9jLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZXN0VXRpbHMgfSBmcm9tICcuLi8uLi9yZXN0LXV0aWxzJztcbmltcG9ydCB7IEFQUF9DT05GSUcsIEFwcENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbmZpZyc7XG5cbmltcG9ydCB7IEF1ZGl0TG9nIH0gZnJvbSAnLi4vbW9kZWwnO1xuaW1wb3J0IHsgRW50aXR5UmVzcG9uc2UgfSBmcm9tICcuLi9tb2RlbCc7XG5pbXBvcnQgeyBFbnRpdGllc1Jlc3BvbnNlIH0gZnJvbSAnLi4vbW9kZWwnO1xuaW1wb3J0IHsgVGltZVNlcmllcyB9IGZyb20gJy4uL21vZGVsJztcblxuLy8gQXVkaXRMb2dzRW5kUG9pbnQgU2VydmljZXMgZm9yIGF1ZGl0TG9ncyBhY3Rpb25zIFxuQEluamVjdGFibGUoe1xuICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgQXVkaXRMb2dzRW5kUG9pbnQge1xuXG4gIC8vIFVSTCB0byB3ZWIgYXBpXG4gIHByaXZhdGUgYmFzZVVybCA9ICcvYXVkaXRfbG9ncyc7XG5cbiAgLy8gQ2xhc3MgY29uc3RydWN0b3JcbiAgY29uc3RydWN0b3IoQEluamVjdChBUFBfQ09ORklHKSBwcml2YXRlIGNvbmZpZzogQXBwQ29uZmlnLCBwcml2YXRlIHJlc3Q6IFJlc3RVdGlscykge1xuICAgIHRoaXMuYmFzZVVybCA9IHRoaXMuY29uZmlnLmFwaSArIHRoaXMuYmFzZVVybDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDcmVhdGUgbmV3IGF1ZGl0TG9nXG4gICAqL1xuICBjcmVhdGUoYm9keT86IEF1ZGl0TG9nKSB7XG4gICAgcmV0dXJuIHRoaXMucmVzdC5wb3N0PEVudGl0eVJlc3BvbnNlPEF1ZGl0TG9nPj4oYCR7dGhpcy5iYXNlVXJsfWAsIHR5cGVvZiBib2R5ID09PSAnb2JqZWN0JyA/IEpTT04uc3RyaW5naWZ5KGJvZHkpIDogYm9keSk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGEgc2luZ2xlIGF1ZGl0TG9nIGJ5IGlkXG4gICAqL1xuICBnZXQoaWQ/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5yZXN0LmdldDxFbnRpdHlSZXNwb25zZTxBdWRpdExvZz4+KGAke3RoaXMuYmFzZVVybH0vJHtpZH1gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kIGF1ZGl0TG9ncyBieSBxdWVyeVxuICAgKi9cbiAgZmluZChmcm9tPzogbnVtYmVyLCB0bz86IG51bWJlciwgdXNlcklkPzogc3RyaW5nLCBhY3Rpb24/OiBzdHJpbmcsIGl0ZW1UeXBlPzogc3RyaW5nLCBpdGVtSWQ/OiBzdHJpbmcsIGl0ZW1OYW1lPzogc3RyaW5nLCBzZWFyY2g/OiBzdHJpbmcsIHNvcnQ/OiBzdHJpbmcsIHBhZ2U/OiBudW1iZXIsIHNpemU/OiBudW1iZXIpIHtcbiAgICBjb25zdCBwYXJhbXMgPSBbXTtcbiAgICBpZiAoZnJvbSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBmcm9tPSR7ZnJvbX1gKTsgfVxuICAgIGlmICh0byAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGB0bz0ke3RvfWApOyB9XG4gICAgaWYgKHVzZXJJZCAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGB1c2VySWQ9JHt1c2VySWR9YCk7IH1cbiAgICBpZiAoYWN0aW9uICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYGFjdGlvbj0ke2FjdGlvbn1gKTsgfVxuICAgIGlmIChpdGVtVHlwZSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBpdGVtVHlwZT0ke2l0ZW1UeXBlfWApOyB9XG4gICAgaWYgKGl0ZW1JZCAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBpdGVtSWQ9JHtpdGVtSWR9YCk7IH1cbiAgICBpZiAoaXRlbU5hbWUgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgaXRlbU5hbWU9JHtpdGVtTmFtZX1gKTsgfVxuICAgIGlmIChzZWFyY2ggIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc2VhcmNoPSR7c2VhcmNofWApOyB9XG4gICAgaWYgKHNvcnQgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc29ydD0ke3NvcnR9YCk7IH1cbiAgICBpZiAocGFnZSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBwYWdlPSR7cGFnZX1gKTsgfVxuICAgIGlmIChzaXplICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNpemU9JHtzaXplfWApOyB9XG5cblx0XHRyZXR1cm4gdGhpcy5yZXN0LmdldDxFbnRpdGllc1Jlc3BvbnNlPEF1ZGl0TG9nPj4oYCR7dGhpcy5iYXNlVXJsfWAsIC4uLnBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICogRmluZCBhdWRpdExvZ3MgY291bnQgaGlzdG9ncmFtIG92ZXIgdGltZVxuICAgKi9cbiAgaGlzdG9ncmFtKGZyb20/OiBudW1iZXIsIHRvPzogbnVtYmVyLCB1c2VySWQ/OiBzdHJpbmcsIGFjdGlvbj86IHN0cmluZywgaXRlbVR5cGU/OiBzdHJpbmcsIGl0ZW1JZD86IHN0cmluZywgaXRlbU5hbWU/OiBzdHJpbmcsIHNlYXJjaD86IHN0cmluZywgc29ydD86IHN0cmluZywgcGFnZT86IG51bWJlciwgc2l6ZT86IG51bWJlcikge1xuICAgIGNvbnN0IHBhcmFtcyA9IFtdO1xuICAgIGlmIChmcm9tICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYGZyb209JHtmcm9tfWApOyB9XG4gICAgaWYgKHRvICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHRvPSR7dG99YCk7IH1cbiAgICBpZiAodXNlcklkICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHVzZXJJZD0ke3VzZXJJZH1gKTsgfVxuICAgIGlmIChhY3Rpb24gIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgYWN0aW9uPSR7YWN0aW9ufWApOyB9XG4gICAgaWYgKGl0ZW1UeXBlICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYGl0ZW1UeXBlPSR7aXRlbVR5cGV9YCk7IH1cbiAgICBpZiAoaXRlbUlkICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYGl0ZW1JZD0ke2l0ZW1JZH1gKTsgfVxuICAgIGlmIChpdGVtTmFtZSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBpdGVtTmFtZT0ke2l0ZW1OYW1lfWApOyB9XG4gICAgaWYgKHNlYXJjaCAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzZWFyY2g9JHtzZWFyY2h9YCk7IH1cbiAgICBpZiAoc29ydCAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzb3J0PSR7c29ydH1gKTsgfVxuICAgIGlmIChwYWdlICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHBhZ2U9JHtwYWdlfWApOyB9XG4gICAgaWYgKHNpemUgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgc2l6ZT0ke3NpemV9YCk7IH1cblxuXHRcdHJldHVybiB0aGlzLnJlc3QuZ2V0PEVudGl0eVJlc3BvbnNlPFRpbWVTZXJpZXM8bnVtYmVyPj4+KGAke3RoaXMuYmFzZVVybH0vaGlzdG9ncmFtYCwgLi4ucGFyYW1zKTtcbiAgfVxuXG59XG4iXX0=
@@ -1,139 +0,0 @@
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
- // BookingSlotsEndPoint Services for bookingSlots actions
7
- export class BookingSlotsEndPoint {
8
- // Class constructor
9
- constructor(config, rest) {
10
- this.config = config;
11
- this.rest = rest;
12
- // URL to web api
13
- this.baseUrl = '/booking_slots';
14
- this.baseUrl = this.config.api + this.baseUrl;
15
- }
16
- /**
17
- * Get new and empty booking slot template
18
- */
19
- new() {
20
- return this.rest.post(`${this.baseUrl}/new`, '');
21
- }
22
- /**
23
- * Create new bookingSlot
24
- */
25
- create(body) {
26
- return this.rest.post(`${this.baseUrl}`, typeof body === 'object' ? JSON.stringify(body) : body);
27
- }
28
- /**
29
- * Update existing bookingSlot
30
- */
31
- update(body) {
32
- return this.rest.put(`${this.baseUrl}`, typeof body === 'object' ? JSON.stringify(body) : body);
33
- }
34
- /**
35
- * Delete bookingSlot and all its content
36
- */
37
- delete(id) {
38
- return this.rest.delete(`${this.baseUrl}/${id}`);
39
- }
40
- /**
41
- * Get a single bookingSlot by id
42
- */
43
- get(id) {
44
- return this.rest.get(`${this.baseUrl}/${id}`);
45
- }
46
- /**
47
- * Find bookingSlots by query
48
- */
49
- find(search, sort, page, size) {
50
- const params = [];
51
- if (search != null) {
52
- params.push(`search=${search}`);
53
- }
54
- if (sort != null) {
55
- params.push(`sort=${sort}`);
56
- }
57
- if (page != null) {
58
- params.push(`page=${page}`);
59
- }
60
- if (size != null) {
61
- params.push(`size=${size}`);
62
- }
63
- return this.rest.get(`${this.baseUrl}`, ...params);
64
- }
65
- /**
66
- * Find Monthly slots (limit of 1000)
67
- */
68
- monthly(year, month) {
69
- const params = [];
70
- if (year != null) {
71
- params.push(`year=${year}`);
72
- }
73
- if (month != null) {
74
- params.push(`month=${month}`);
75
- }
76
- return this.rest.get(`${this.baseUrl}/monthly`, ...params);
77
- }
78
- /**
79
- * Get all available monthly slots for patterns
80
- */
81
- monthlySlotOptions(year, month) {
82
- const params = [];
83
- if (year != null) {
84
- params.push(`year=${year}`);
85
- }
86
- if (month != null) {
87
- params.push(`month=${month}`);
88
- }
89
- return this.rest.get(`${this.baseUrl}/monthly-slot-options`, ...params);
90
- }
91
- /**
92
- * Add or remove a bulk of monthly slots for patterns
93
- */
94
- setMonthlySlot(body) {
95
- return this.rest.post(`${this.baseUrl}/monthly-slots`, typeof body === 'object' ? JSON.stringify(body) : body);
96
- }
97
- /**
98
- * Publish slots (make invisible slots to visible)
99
- */
100
- publish(id) {
101
- const params = [];
102
- if (id != null) {
103
- params.push(`id=${id}`);
104
- }
105
- return this.rest.post(`${this.baseUrl}/publish`, '', ...params);
106
- }
107
- /**
108
- * UnPublish slots (make visible slots to invisible)
109
- */
110
- unPublish(id) {
111
- const params = [];
112
- if (id != null) {
113
- params.push(`id=${id}`);
114
- }
115
- return this.rest.post(`${this.baseUrl}/unpublish`, '', ...params);
116
- }
117
- /**
118
- * Unbook slot will remove the booking item related to this slot, but if it is related to a flight, it will return an error
119
- */
120
- unBook(id) {
121
- const params = [];
122
- if (id != null) {
123
- params.push(`id=${id}`);
124
- }
125
- return this.rest.post(`${this.baseUrl}/unbook`, '', ...params);
126
- }
127
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BookingSlotsEndPoint, deps: [{ token: APP_CONFIG }, { token: i1.RestUtils }], target: i0.ɵɵFactoryTarget.Injectable }); }
128
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BookingSlotsEndPoint, providedIn: 'root' }); }
129
- }
130
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: BookingSlotsEndPoint, decorators: [{
131
- type: Injectable,
132
- args: [{
133
- providedIn: 'root'
134
- }]
135
- }], ctorParameters: () => [{ type: i2.AppConfig, decorators: [{
136
- type: Inject,
137
- args: [APP_CONFIG]
138
- }] }, { type: i1.RestUtils }] });
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQm9va2luZ1Nsb3RzRW5kUG9pbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtZ29veC1saWIyL3NyYy9saWIvc2VydmljZXMvQm9va2luZ1Nsb3RzRW5kUG9pbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFbkQsT0FBTyxFQUFFLFVBQVUsRUFBYSxNQUFNLGNBQWMsQ0FBQzs7OztBQVNyRCwwREFBMEQ7QUFJMUQsTUFBTSxPQUFPLG9CQUFvQjtJQUsvQixvQkFBb0I7SUFDcEIsWUFBd0MsTUFBaUIsRUFBVSxJQUFlO1FBQTFDLFdBQU0sR0FBTixNQUFNLENBQVc7UUFBVSxTQUFJLEdBQUosSUFBSSxDQUFXO1FBSmxGLGlCQUFpQjtRQUNULFlBQU8sR0FBRyxnQkFBZ0IsQ0FBQztRQUlqQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDaEQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsR0FBRztRQUNELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQThCLEdBQUcsSUFBSSxDQUFDLE9BQU8sTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ2hGLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxJQUFrQjtRQUN2QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUE4QixHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxPQUFPLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hJLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxJQUFrQjtRQUN2QixPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUE4QixHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsRUFBRSxPQUFPLElBQUksS0FBSyxRQUFRLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQy9ILENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxFQUFXO1FBQ2hCLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxNQUFNLENBQWlCLEdBQUcsSUFBSSxDQUFDLE9BQU8sSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQ25FLENBQUM7SUFFRDs7T0FFRztJQUNILEdBQUcsQ0FBQyxFQUFXO1FBQ2IsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBOEIsR0FBRyxJQUFJLENBQUMsT0FBTyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDN0UsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSSxDQUFDLE1BQWUsRUFBRSxJQUFhLEVBQUUsSUFBYSxFQUFFLElBQWE7UUFDL0QsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksTUFBTSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxVQUFVLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFBQyxDQUFDO1FBQ3hELElBQUksSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUM7UUFBQyxDQUFDO1FBQ2xELElBQUksSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUM7UUFBQyxDQUFDO1FBQ2xELElBQUksSUFBSSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksRUFBRSxDQUFDLENBQUM7UUFBQyxDQUFDO1FBRXBELE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQWdDLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxFQUFFLEdBQUcsTUFBTSxDQUFDLENBQUM7SUFDbEYsQ0FBQztJQUVEOztPQUVHO0lBQ0gsT0FBTyxDQUFDLElBQWEsRUFBRSxLQUFjO1FBQ25DLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLElBQUksSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQUMsQ0FBQztRQUNsRCxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQUMsQ0FBQztRQUV2RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFnQyxHQUFHLElBQUksQ0FBQyxPQUFPLFVBQVUsRUFBRSxHQUFHLE1BQU0sQ0FBQyxDQUFDO0lBQzFGLENBQUM7SUFFRDs7T0FFRztJQUNILGtCQUFrQixDQUFDLElBQWEsRUFBRSxLQUFjO1FBQzlDLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLElBQUksSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsUUFBUSxJQUFJLEVBQUUsQ0FBQyxDQUFDO1FBQUMsQ0FBQztRQUNsRCxJQUFJLEtBQUssSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQUMsQ0FBQztRQUV2RCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFpQyxHQUFHLElBQUksQ0FBQyxPQUFPLHVCQUF1QixFQUFFLEdBQUcsTUFBTSxDQUFDLENBQUM7SUFDeEcsQ0FBQztJQUVEOztPQUVHO0lBQ0gsY0FBYyxDQUFDLElBQXNCO1FBQ25DLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQWlCLEdBQUcsSUFBSSxDQUFDLE9BQU8sZ0JBQWdCLEVBQUUsT0FBTyxJQUFJLEtBQUssUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNqSSxDQUFDO0lBRUQ7O09BRUc7SUFDSCxPQUFPLENBQUMsRUFBYTtRQUNuQixNQUFNLE1BQU0sR0FBRyxFQUFFLENBQUM7UUFDbEIsSUFBSSxFQUFFLElBQUksSUFBSSxFQUFFLENBQUM7WUFBQyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUFDLENBQUM7UUFFOUMsT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBaUIsR0FBRyxJQUFJLENBQUMsT0FBTyxVQUFVLEVBQUUsRUFBRSxFQUFFLEdBQUcsTUFBTSxDQUFDLENBQUM7SUFDaEYsQ0FBQztJQUVEOztPQUVHO0lBQ0gsU0FBUyxDQUFDLEVBQWE7UUFDckIsTUFBTSxNQUFNLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLElBQUksRUFBRSxJQUFJLElBQUksRUFBRSxDQUFDO1lBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFBQyxDQUFDO1FBRTlDLE9BQU8sSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQWlCLEdBQUcsSUFBSSxDQUFDLE9BQU8sWUFBWSxFQUFFLEVBQUUsRUFBRSxHQUFHLE1BQU0sQ0FBQyxDQUFDO0lBQ2xGLENBQUM7SUFFRDs7T0FFRztJQUNILE1BQU0sQ0FBQyxFQUFXO1FBQ2hCLE1BQU0sTUFBTSxHQUFHLEVBQUUsQ0FBQztRQUNsQixJQUFJLEVBQUUsSUFBSSxJQUFJLEVBQUUsQ0FBQztZQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsTUFBTSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQUMsQ0FBQztRQUU5QyxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFpQixHQUFHLElBQUksQ0FBQyxPQUFPLFNBQVMsRUFBRSxFQUFFLEVBQUUsR0FBRyxNQUFNLENBQUMsQ0FBQztJQUMvRSxDQUFDOytHQW5IVSxvQkFBb0Isa0JBTVgsVUFBVTttSEFObkIsb0JBQW9CLGNBRm5CLE1BQU07OzRGQUVQLG9CQUFvQjtrQkFIaEMsVUFBVTttQkFBQztvQkFDVixVQUFVLEVBQUUsTUFBTTtpQkFDbkI7OzBCQU9jLE1BQU07MkJBQUMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbIlxuaW1wb3J0IHsgSW5qZWN0YWJsZSwgSW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSZXN0VXRpbHMgfSBmcm9tICcuLi8uLi9yZXN0LXV0aWxzJztcbmltcG9ydCB7IEFQUF9DT05GSUcsIEFwcENvbmZpZyB9IGZyb20gJy4uLy4uL2NvbmZpZyc7XG5cbmltcG9ydCB7IEFjdGlvblJlc3BvbnNlIH0gZnJvbSAnLi4vbW9kZWwnO1xuaW1wb3J0IHsgRW50aXRpZXNSZXNwb25zZSB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IEJvb2tpbmdTbG90cyB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IEJvb2tpbmdTbG90c1NldCB9IGZyb20gJy4uL21vZGVsJztcbmltcG9ydCB7IEVudGl0eVJlc3BvbnNlIH0gZnJvbSAnLi4vbW9kZWwnO1xuaW1wb3J0IHsgQm9va2luZ1Nsb3QgfSBmcm9tICcuLi9tb2RlbCc7XG5cbi8vIEJvb2tpbmdTbG90c0VuZFBvaW50IFNlcnZpY2VzIGZvciBib29raW5nU2xvdHMgYWN0aW9ucyBcbkBJbmplY3RhYmxlKHtcbiAgcHJvdmlkZWRJbjogJ3Jvb3QnXG59KVxuZXhwb3J0IGNsYXNzIEJvb2tpbmdTbG90c0VuZFBvaW50IHtcblxuICAvLyBVUkwgdG8gd2ViIGFwaVxuICBwcml2YXRlIGJhc2VVcmwgPSAnL2Jvb2tpbmdfc2xvdHMnO1xuXG4gIC8vIENsYXNzIGNvbnN0cnVjdG9yXG4gIGNvbnN0cnVjdG9yKEBJbmplY3QoQVBQX0NPTkZJRykgcHJpdmF0ZSBjb25maWc6IEFwcENvbmZpZywgcHJpdmF0ZSByZXN0OiBSZXN0VXRpbHMpIHtcbiAgICB0aGlzLmJhc2VVcmwgPSB0aGlzLmNvbmZpZy5hcGkgKyB0aGlzLmJhc2VVcmw7XG4gIH1cblxuICAvKipcbiAgICogR2V0IG5ldyBhbmQgZW1wdHkgYm9va2luZyBzbG90IHRlbXBsYXRlXG4gICAqL1xuICBuZXcoKSB7XG4gICAgcmV0dXJuIHRoaXMucmVzdC5wb3N0PEVudGl0eVJlc3BvbnNlPEJvb2tpbmdTbG90Pj4oYCR7dGhpcy5iYXNlVXJsfS9uZXdgLCAnJyk7XG4gIH1cblxuICAvKipcbiAgICogQ3JlYXRlIG5ldyBib29raW5nU2xvdFxuICAgKi9cbiAgY3JlYXRlKGJvZHk/OiBCb29raW5nU2xvdCkge1xuICAgIHJldHVybiB0aGlzLnJlc3QucG9zdDxFbnRpdHlSZXNwb25zZTxCb29raW5nU2xvdD4+KGAke3RoaXMuYmFzZVVybH1gLCB0eXBlb2YgYm9keSA9PT0gJ29iamVjdCcgPyBKU09OLnN0cmluZ2lmeShib2R5KSA6IGJvZHkpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZSBleGlzdGluZyBib29raW5nU2xvdFxuICAgKi9cbiAgdXBkYXRlKGJvZHk/OiBCb29raW5nU2xvdCkge1xuICAgIHJldHVybiB0aGlzLnJlc3QucHV0PEVudGl0eVJlc3BvbnNlPEJvb2tpbmdTbG90Pj4oYCR7dGhpcy5iYXNlVXJsfWAsIHR5cGVvZiBib2R5ID09PSAnb2JqZWN0JyA/IEpTT04uc3RyaW5naWZ5KGJvZHkpIDogYm9keSk7XG4gIH1cblxuICAvKipcbiAgICogRGVsZXRlIGJvb2tpbmdTbG90IGFuZCBhbGwgaXRzIGNvbnRlbnRcbiAgICovXG4gIGRlbGV0ZShpZD86IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLnJlc3QuZGVsZXRlPEFjdGlvblJlc3BvbnNlPihgJHt0aGlzLmJhc2VVcmx9LyR7aWR9YCk7XG4gIH1cblxuICAvKipcbiAgICogR2V0IGEgc2luZ2xlIGJvb2tpbmdTbG90IGJ5IGlkXG4gICAqL1xuICBnZXQoaWQ/OiBzdHJpbmcpIHtcbiAgICByZXR1cm4gdGhpcy5yZXN0LmdldDxFbnRpdHlSZXNwb25zZTxCb29raW5nU2xvdD4+KGAke3RoaXMuYmFzZVVybH0vJHtpZH1gKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBGaW5kIGJvb2tpbmdTbG90cyBieSBxdWVyeVxuICAgKi9cbiAgZmluZChzZWFyY2g/OiBzdHJpbmcsIHNvcnQ/OiBzdHJpbmcsIHBhZ2U/OiBudW1iZXIsIHNpemU/OiBudW1iZXIpIHtcbiAgICBjb25zdCBwYXJhbXMgPSBbXTtcbiAgICBpZiAoc2VhcmNoICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNlYXJjaD0ke3NlYXJjaH1gKTsgfVxuICAgIGlmIChzb3J0ICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYHNvcnQ9JHtzb3J0fWApOyB9XG4gICAgaWYgKHBhZ2UgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgcGFnZT0ke3BhZ2V9YCk7IH1cbiAgICBpZiAoc2l6ZSAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBzaXplPSR7c2l6ZX1gKTsgfVxuXG5cdFx0cmV0dXJuIHRoaXMucmVzdC5nZXQ8RW50aXRpZXNSZXNwb25zZTxCb29raW5nU2xvdD4+KGAke3RoaXMuYmFzZVVybH1gLCAuLi5wYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIEZpbmQgTW9udGhseSBzbG90cyAobGltaXQgb2YgMTAwMClcbiAgICovXG4gIG1vbnRobHkoeWVhcj86IG51bWJlciwgbW9udGg/OiBudW1iZXIpIHtcbiAgICBjb25zdCBwYXJhbXMgPSBbXTtcbiAgICBpZiAoeWVhciAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGB5ZWFyPSR7eWVhcn1gKTsgfVxuICAgIGlmIChtb250aCAhPSBudWxsKSB7IHBhcmFtcy5wdXNoKGBtb250aD0ke21vbnRofWApOyB9XG5cblx0XHRyZXR1cm4gdGhpcy5yZXN0LmdldDxFbnRpdGllc1Jlc3BvbnNlPEJvb2tpbmdTbG90Pj4oYCR7dGhpcy5iYXNlVXJsfS9tb250aGx5YCwgLi4ucGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBHZXQgYWxsIGF2YWlsYWJsZSBtb250aGx5IHNsb3RzIGZvciBwYXR0ZXJuc1xuICAgKi9cbiAgbW9udGhseVNsb3RPcHRpb25zKHllYXI/OiBudW1iZXIsIG1vbnRoPzogbnVtYmVyKSB7XG4gICAgY29uc3QgcGFyYW1zID0gW107XG4gICAgaWYgKHllYXIgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgeWVhcj0ke3llYXJ9YCk7IH1cbiAgICBpZiAobW9udGggIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgbW9udGg9JHttb250aH1gKTsgfVxuXG5cdFx0cmV0dXJuIHRoaXMucmVzdC5nZXQ8RW50aXRpZXNSZXNwb25zZTxCb29raW5nU2xvdHM+PihgJHt0aGlzLmJhc2VVcmx9L21vbnRobHktc2xvdC1vcHRpb25zYCwgLi4ucGFyYW1zKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBBZGQgb3IgcmVtb3ZlIGEgYnVsayBvZiBtb250aGx5IHNsb3RzIGZvciBwYXR0ZXJuc1xuICAgKi9cbiAgc2V0TW9udGhseVNsb3QoYm9keT86IEJvb2tpbmdTbG90c1NldCkge1xuICAgIHJldHVybiB0aGlzLnJlc3QucG9zdDxBY3Rpb25SZXNwb25zZT4oYCR7dGhpcy5iYXNlVXJsfS9tb250aGx5LXNsb3RzYCwgdHlwZW9mIGJvZHkgPT09ICdvYmplY3QnID8gSlNPTi5zdHJpbmdpZnkoYm9keSkgOiBib2R5KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQdWJsaXNoIHNsb3RzIChtYWtlIGludmlzaWJsZSBzbG90cyB0byB2aXNpYmxlKVxuICAgKi9cbiAgcHVibGlzaChpZD86IHN0cmluZ1tdKSB7XG4gICAgY29uc3QgcGFyYW1zID0gW107XG4gICAgaWYgKGlkICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYGlkPSR7aWR9YCk7IH1cblxuXHRcdHJldHVybiB0aGlzLnJlc3QucG9zdDxBY3Rpb25SZXNwb25zZT4oYCR7dGhpcy5iYXNlVXJsfS9wdWJsaXNoYCwgJycsIC4uLnBhcmFtcyk7XG4gIH1cblxuICAvKipcbiAgICogVW5QdWJsaXNoIHNsb3RzIChtYWtlIHZpc2libGUgc2xvdHMgdG8gaW52aXNpYmxlKVxuICAgKi9cbiAgdW5QdWJsaXNoKGlkPzogc3RyaW5nW10pIHtcbiAgICBjb25zdCBwYXJhbXMgPSBbXTtcbiAgICBpZiAoaWQgIT0gbnVsbCkgeyBwYXJhbXMucHVzaChgaWQ9JHtpZH1gKTsgfVxuXG5cdFx0cmV0dXJuIHRoaXMucmVzdC5wb3N0PEFjdGlvblJlc3BvbnNlPihgJHt0aGlzLmJhc2VVcmx9L3VucHVibGlzaGAsICcnLCAuLi5wYXJhbXMpO1xuICB9XG5cbiAgLyoqXG4gICAqIFVuYm9vayBzbG90IHdpbGwgcmVtb3ZlIHRoZSBib29raW5nIGl0ZW0gcmVsYXRlZCB0byB0aGlzIHNsb3QsIGJ1dCBpZiBpdCBpcyByZWxhdGVkIHRvIGEgZmxpZ2h0LCBpdCB3aWxsIHJldHVybiBhbiBlcnJvclxuICAgKi9cbiAgdW5Cb29rKGlkPzogc3RyaW5nKSB7XG4gICAgY29uc3QgcGFyYW1zID0gW107XG4gICAgaWYgKGlkICE9IG51bGwpIHsgcGFyYW1zLnB1c2goYGlkPSR7aWR9YCk7IH1cblxuXHRcdHJldHVybiB0aGlzLnJlc3QucG9zdDxBY3Rpb25SZXNwb25zZT4oYCR7dGhpcy5iYXNlVXJsfS91bmJvb2tgLCAnJywgLi4ucGFyYW1zKTtcbiAgfVxuXG59XG4iXX0=