@adins/ucsearch 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. package/README.md +24 -0
  2. package/bundles/ucsearch.umd.js +656 -0
  3. package/bundles/ucsearch.umd.js.map +1 -0
  4. package/bundles/ucsearch.umd.min.js +2 -0
  5. package/bundles/ucsearch.umd.min.js.map +1 -0
  6. package/esm2015/lib/model/AdInstConstant.js +597 -0
  7. package/esm2015/lib/model/CriteriaObj.Model.js +26 -0
  8. package/esm2015/lib/model/HttpRequestObj.model.js +29 -0
  9. package/esm2015/lib/model/RequestCriteriaObj.model.js +28 -0
  10. package/esm2015/lib/ucsearch.component.js +392 -0
  11. package/esm2015/lib/ucsearch.module.js +19 -0
  12. package/esm2015/lib/ucsearch.service.js +18 -0
  13. package/esm2015/public-api.js +11 -0
  14. package/esm2015/ucsearch.js +9 -0
  15. package/esm5/lib/model/AdInstConstant.js +601 -0
  16. package/esm5/lib/model/CriteriaObj.Model.js +28 -0
  17. package/esm5/lib/model/HttpRequestObj.model.js +33 -0
  18. package/esm5/lib/model/RequestCriteriaObj.model.js +30 -0
  19. package/esm5/lib/ucsearch.component.js +432 -0
  20. package/esm5/lib/ucsearch.module.js +23 -0
  21. package/esm5/lib/ucsearch.service.js +21 -0
  22. package/esm5/public-api.js +11 -0
  23. package/esm5/ucsearch.js +9 -0
  24. package/fesm2015/ucsearch.js +600 -0
  25. package/fesm2015/ucsearch.js.map +1 -0
  26. package/fesm5/ucsearch.js +649 -0
  27. package/fesm5/ucsearch.js.map +1 -0
  28. package/lib/model/AdInstConstant.d.ts +190 -0
  29. package/lib/model/CriteriaObj.Model.d.ts +9 -0
  30. package/lib/model/HttpRequestObj.model.d.ts +12 -0
  31. package/lib/model/RequestCriteriaObj.model.d.ts +11 -0
  32. package/lib/ucsearch.component.d.ts +53 -0
  33. package/lib/ucsearch.module.d.ts +2 -0
  34. package/lib/ucsearch.service.d.ts +3 -0
  35. package/package.json +34 -0
  36. package/public-api.d.ts +3 -0
  37. package/ucsearch.d.ts +4 -0
  38. package/ucsearch.metadata.json +1 -0
@@ -0,0 +1,26 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ export class CriteriaObj {
6
+ constructor() {
7
+ this.low = 0;
8
+ this.high = 0;
9
+ this.DataType = 'Text';
10
+ }
11
+ }
12
+ if (false) {
13
+ /** @type {?} */
14
+ CriteriaObj.prototype.propName;
15
+ /** @type {?} */
16
+ CriteriaObj.prototype.restriction;
17
+ /** @type {?} */
18
+ CriteriaObj.prototype.value;
19
+ /** @type {?} */
20
+ CriteriaObj.prototype.low;
21
+ /** @type {?} */
22
+ CriteriaObj.prototype.high;
23
+ /** @type {?} */
24
+ CriteriaObj.prototype.DataType;
25
+ }
26
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ3JpdGVyaWFPYmouTW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly91Y3NlYXJjaC8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbC9Dcml0ZXJpYU9iai5Nb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsTUFBTSxPQUFPLFdBQVc7SUFRcEI7UUFFSSxJQUFJLENBQUMsR0FBRyxHQUFDLENBQUMsQ0FBQztRQUNYLElBQUksQ0FBQyxJQUFJLEdBQUMsQ0FBQyxDQUFDO1FBQ1osSUFBSSxDQUFDLFFBQVEsR0FBQyxNQUFNLENBQUM7SUFDekIsQ0FBQztDQUVKOzs7SUFkRywrQkFBZ0I7O0lBQ2hCLGtDQUFtQjs7SUFDbkIsNEJBQWE7O0lBQ2IsMEJBQVc7O0lBQ1gsMkJBQVk7O0lBQ1osK0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNsYXNzIENyaXRlcmlhT2Jqe1xyXG4gICAgcHJvcE5hbWU6c3RyaW5nO1xyXG4gICAgcmVzdHJpY3Rpb246c3RyaW5nO1xyXG4gICAgdmFsdWU6c3RyaW5nO1xyXG4gICAgbG93Om51bWJlcjtcclxuICAgIGhpZ2g6bnVtYmVyO1xyXG4gICAgRGF0YVR5cGU6c3RyaW5nO1xyXG5cclxuICAgIGNvbnN0cnVjdG9yKClcclxuICAgIHtcclxuICAgICAgICB0aGlzLmxvdz0wO1xyXG4gICAgICAgIHRoaXMuaGlnaD0wO1xyXG4gICAgICAgIHRoaXMuRGF0YVR5cGU9J1RleHQnO1xyXG4gICAgfVxyXG5cclxufSJdfQ==
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ export class HttpRequestObj {
6
+ }
7
+ if (false) {
8
+ /** @type {?} */
9
+ HttpRequestObj.prototype.SendDateTime;
10
+ /** @type {?} */
11
+ HttpRequestObj.prototype.Latitude;
12
+ /** @type {?} */
13
+ HttpRequestObj.prototype.Longitude;
14
+ /** @type {?} */
15
+ HttpRequestObj.prototype.Ip;
16
+ /** @type {?} */
17
+ HttpRequestObj.prototype.UserName;
18
+ /** @type {?} */
19
+ HttpRequestObj.prototype.Role;
20
+ /** @type {?} */
21
+ HttpRequestObj.prototype.Office;
22
+ /** @type {?} */
23
+ HttpRequestObj.prototype.LastPageAccess;
24
+ /** @type {?} */
25
+ HttpRequestObj.prototype.LastPageAccessTime;
26
+ /** @type {?} */
27
+ HttpRequestObj.prototype.RequestObject;
28
+ }
29
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiSHR0cFJlcXVlc3RPYmoubW9kZWwuanMiLCJzb3VyY2VSb290Ijoibmc6Ly91Y3NlYXJjaC8iLCJzb3VyY2VzIjpbImxpYi9tb2RlbC9IdHRwUmVxdWVzdE9iai5tb2RlbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsTUFBTSxPQUFPLGNBQWM7Q0FXMUI7OztJQVZHLHNDQUFvQjs7SUFDcEIsa0NBQWdCOztJQUNoQixtQ0FBaUI7O0lBQ2pCLDRCQUFVOztJQUNWLGtDQUFnQjs7SUFDaEIsOEJBQVk7O0lBQ1osZ0NBQWM7O0lBQ2Qsd0NBQXNCOztJQUN0Qiw0Q0FBMEI7O0lBQzFCLHVDQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBIdHRwUmVxdWVzdE9iantcclxuICAgIFNlbmREYXRlVGltZTpzdHJpbmc7XHJcbiAgICBMYXRpdHVkZTpzdHJpbmc7XHJcbiAgICBMb25naXR1ZGU6c3RyaW5nO1xyXG4gICAgSXA6c3RyaW5nO1xyXG4gICAgVXNlck5hbWU6c3RyaW5nO1xyXG4gICAgUm9sZTpTdHJpbmc7XHJcbiAgICBPZmZpY2U6c3RyaW5nO1xyXG4gICAgTGFzdFBhZ2VBY2Nlc3M6c3RyaW5nO1xyXG4gICAgTGFzdFBhZ2VBY2Nlc3NUaW1lOnN0cmluZztcclxuICAgIFJlcXVlc3RPYmplY3Q6YW55O1xyXG59Il19
@@ -0,0 +1,28 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ export class RequestCriteriaObj {
6
+ constructor() {
7
+ this.includeCount = true;
8
+ this.includeData = true;
9
+ this.isLoading = true;
10
+ }
11
+ }
12
+ if (false) {
13
+ /** @type {?} */
14
+ RequestCriteriaObj.prototype.includeCount;
15
+ /** @type {?} */
16
+ RequestCriteriaObj.prototype.includeData;
17
+ /** @type {?} */
18
+ RequestCriteriaObj.prototype.pageNo;
19
+ /** @type {?} */
20
+ RequestCriteriaObj.prototype.rowPerPage;
21
+ /** @type {?} */
22
+ RequestCriteriaObj.prototype.orderBy;
23
+ /** @type {?} */
24
+ RequestCriteriaObj.prototype.criteria;
25
+ /** @type {?} */
26
+ RequestCriteriaObj.prototype.isLoading;
27
+ }
28
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVxdWVzdENyaXRlcmlhT2JqLm1vZGVsLmpzIiwic291cmNlUm9vdCI6Im5nOi8vdWNzZWFyY2gvIiwic291cmNlcyI6WyJsaWIvbW9kZWwvUmVxdWVzdENyaXRlcmlhT2JqLm1vZGVsLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFFQSxNQUFNLE9BQU8sa0JBQWtCO0lBUzNCO1FBRUksSUFBSSxDQUFDLFlBQVksR0FBQyxJQUFJLENBQUM7UUFDdkIsSUFBSSxDQUFDLFdBQVcsR0FBQyxJQUFJLENBQUM7UUFDdEIsSUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7SUFDMUIsQ0FBQztDQUNKOzs7SUFkRywwQ0FBcUI7O0lBQ3JCLHlDQUFvQjs7SUFDcEIsb0NBQWM7O0lBQ2Qsd0NBQWtCOztJQUNsQixxQ0FBWTs7SUFDWixzQ0FBdUI7O0lBQ3ZCLHVDQUFvQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENyaXRlcmlhT2JqIH0gZnJvbSBcIi4uL21vZGVsL0NyaXRlcmlhT2JqLm1vZGVsXCI7XHJcblxyXG5leHBvcnQgY2xhc3MgUmVxdWVzdENyaXRlcmlhT2Jqe1xyXG4gICAgaW5jbHVkZUNvdW50OmJvb2xlYW47XHJcbiAgICBpbmNsdWRlRGF0YTpib29sZWFuO1xyXG4gICAgcGFnZU5vOm51bWJlcjtcclxuICAgIHJvd1BlclBhZ2U6bnVtYmVyO1xyXG4gICAgb3JkZXJCeTphbnk7XHJcbiAgICBjcml0ZXJpYTpDcml0ZXJpYU9ialtdO1xyXG4gICAgaXNMb2FkaW5nIDogYm9vbGVhbjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvcigpXHJcbiAgICB7XHJcbiAgICAgICAgdGhpcy5pbmNsdWRlQ291bnQ9dHJ1ZTtcclxuICAgICAgICB0aGlzLmluY2x1ZGVEYXRhPXRydWU7XHJcbiAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSB0cnVlO1xyXG4gICAgfVxyXG59Il19
@@ -0,0 +1,392 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { Component, Input, ViewChild, ElementRef, Inject, Renderer2, EventEmitter, Output } from '@angular/core';
6
+ import { HttpClient } from '@angular/common/http';
7
+ import { formatDate, DecimalPipe } from '@angular/common';
8
+ import 'rxjs/add/operator/map';
9
+ import { CriteriaObj } from './model/CriteriaObj.Model';
10
+ import { RequestCriteriaObj } from './model/RequestCriteriaObj.model';
11
+ import { AdInsConstant } from './model/AdInstConstant';
12
+ import { HttpRequestObj } from './model/HttpRequestObj.model';
13
+ import { DOCUMENT } from '@angular/platform-browser';
14
+ export class UCSearchComponent {
15
+ /**
16
+ * @param {?} http
17
+ * @param {?} decimalPipe
18
+ * @param {?} _renderer2
19
+ * @param {?} _document
20
+ */
21
+ constructor(http, decimalPipe, _renderer2, _document) {
22
+ this.http = http;
23
+ this.decimalPipe = decimalPipe;
24
+ this._renderer2 = _renderer2;
25
+ this._document = _document;
26
+ this.pageSize = 10;
27
+ this.pageNow = 1;
28
+ this.addCritInput = null;
29
+ this.result = new EventEmitter();
30
+ this.isDataLoaded = false;
31
+ this.isHidden = false;
32
+ this.payLoad = '';
33
+ this.countForm = 0;
34
+ this.formattedAmount = '';
35
+ this.amount = 0;
36
+ }
37
+ /**
38
+ * @return {?}
39
+ */
40
+ initiateForm() {
41
+ this.getJSON(this._url).subscribe((/**
42
+ * @param {?} data
43
+ * @return {?}
44
+ */
45
+ data => {
46
+ console.log(data);
47
+ this.configuration = data;
48
+ this.urlGet = data.url;
49
+ this.exportData = data.exportExcel;
50
+ this.countForm = data.component.length;
51
+ console.log(this.countForm);
52
+ this.isDataLoaded = true;
53
+ /** @type {?} */
54
+ var i = 0;
55
+ for (var i = 0; i < this.countForm; i++) {
56
+ //ini kalau datanya di load dari URL
57
+ if (data.component[i].isFromURL == true) {
58
+ /** @type {?} */
59
+ var _this = this;
60
+ /** @type {?} */
61
+ var _index = i;
62
+ //lempar objectnya sekalian sama urlnya, nnti di bind di dalem karena masalah di asyncnya
63
+ //biar tiap function ada state2nya sendiri
64
+ this.resolveObject(data.component[i], data.component[i].url);
65
+ }
66
+ if (data.component[i].type === "numeric") {
67
+ data.component[i].value = parseFloat(data.component[i].value).toLocaleString('en');
68
+ }
69
+ //pengecekan tanggal
70
+ if (data.component[i].type === "datepicker") {
71
+ if (data.component[i].value.includes("BD")) {
72
+ /** @type {?} */
73
+ let businessDate = new Date(JSON.parse(localStorage.getItem("UserContext")).BusinessDate);
74
+ /** @type {?} */
75
+ var operator = data.component[i].value.charAt(2);
76
+ /** @type {?} */
77
+ var dateShow = new Date();
78
+ if (operator === "-") {
79
+ /** @type {?} */
80
+ var tempMinus = data.component[i].value.split("-", 2);
81
+ /** @type {?} */
82
+ var numDay = parseInt(tempMinus[1]);
83
+ dateShow.setDate(businessDate.getDate() - numDay);
84
+ }
85
+ else if (operator === "+") {
86
+ /** @type {?} */
87
+ var tempMinus = data.component[i].value.split("+", 2);
88
+ /** @type {?} */
89
+ var numDay = parseInt(tempMinus[1]);
90
+ dateShow.setDate(businessDate.getDate() + numDay);
91
+ }
92
+ /** @type {?} */
93
+ var dateText = formatDate(dateShow, 'yyyy-MM-dd', 'en-US');
94
+ data.component[i].value = dateText;
95
+ }
96
+ }
97
+ }
98
+ }));
99
+ }
100
+ /**
101
+ * @return {?}
102
+ */
103
+ ngOnInit() {
104
+ this.apiUrl = this.enviromentUrl + this.apiQryPaging;
105
+ this.arrCrit = this.arrCritObj;
106
+ /** @type {?} */
107
+ let js = this._renderer2.createElement('script');
108
+ js.text = `
109
+ $(document).ready(function(){
110
+ $("#flip").click(function(){
111
+ $("#panel").slideToggle("slow");
112
+ });
113
+ });
114
+ `;
115
+ this._renderer2.appendChild(this._document.body, js);
116
+ this.initiateForm();
117
+ }
118
+ /**
119
+ * @param {?} url
120
+ * @return {?}
121
+ */
122
+ getJSON(url) {
123
+ return this.http.get(url);
124
+ }
125
+ /**
126
+ * @param {?} url
127
+ * @return {?}
128
+ */
129
+ postJSON(url) {
130
+ return this.http.post(url, null);
131
+ }
132
+ /**
133
+ * @return {?}
134
+ */
135
+ onSubmit() {
136
+ this.payLoad = JSON.stringify(this.form.value);
137
+ console.log("This is Payload:" + this.payLoad);
138
+ }
139
+ /**
140
+ * @return {?}
141
+ */
142
+ searchTry() {
143
+ console.log("This Call Search");
144
+ console.log(this.myForm);
145
+ for (var i = 0; i < this.countForm; i++) {
146
+ console.log(this.myForm.nativeElement[i].name + " - " + this.myForm.nativeElement[i].value);
147
+ }
148
+ }
149
+ /**
150
+ * @return {?}
151
+ */
152
+ searchClick() {
153
+ this.orderByKey = null;
154
+ this.orderByValue = true;
155
+ this.pageNow = 1;
156
+ this.search(this.apiUrl, this.pageNow, this.pageSize, null, this.arrCrit);
157
+ }
158
+ /**
159
+ * @param {?} apiUrl
160
+ * @param {?} pageNo
161
+ * @param {?} rowPerPage
162
+ * @param {?} orderBy
163
+ * @param {?=} addCrit
164
+ * @return {?}
165
+ */
166
+ search(apiUrl, pageNo, rowPerPage, orderBy, addCrit = null) {
167
+ console.log(pageNo);
168
+ /** @type {?} */
169
+ var request = new RequestCriteriaObj();
170
+ /** @type {?} */
171
+ var arrCrit = new Array();
172
+ console.log("Search");
173
+ request.pageNo = pageNo;
174
+ request.rowPerPage = rowPerPage;
175
+ request.orderBy = orderBy;
176
+ for (var i = 0; i < this.countForm; i++) {
177
+ /** @type {?} */
178
+ var critObj = new CriteriaObj();
179
+ /** @type {?} */
180
+ var component = this.myForm.nativeElement[i];
181
+ critObj.DataType = component.getAttribute('data-type');
182
+ console.log('component');
183
+ console.log(component.value);
184
+ //Ini khusus kalau dari Drop Down
185
+ if (component.value != "") {
186
+ if (component.nodeName === 'SELECT') {
187
+ /** @type {?} */
188
+ var ddl = component.options;
189
+ /** @type {?} */
190
+ var text = ddl[ddl.selectedIndex].value;
191
+ if (text !== "All") {
192
+ //Kalau Dari Dropdown udah pasti pake Eq
193
+ critObj.restriction = AdInsConstant.RestrictionEq;
194
+ critObj.propName = component.name;
195
+ critObj.value = text;
196
+ arrCrit.push(critObj);
197
+ }
198
+ }
199
+ else {
200
+ //Kalau ada Percent maka yang dipake nnti adalah Restrictions Like
201
+ critObj.propName = component.name;
202
+ critObj.value = component.value;
203
+ console.log(component.type);
204
+ console.log(component.restriction);
205
+ if (component.value.includes("%")) {
206
+ critObj.restriction = AdInsConstant.RestrictionLike;
207
+ }
208
+ //kalau componentnya Date, restrictionsnya lgsg ambil dari property JSONnya
209
+ else if (component.getAttribute('data-restriction') != "" && component.getAttribute('data-restriction') != null) {
210
+ critObj.restriction = component.getAttribute('data-restriction');
211
+ }
212
+ else {
213
+ critObj.restriction = AdInsConstant.RestrictionEq;
214
+ }
215
+ arrCrit.push(critObj);
216
+ }
217
+ }
218
+ }
219
+ if (addCrit !== null) {
220
+ for (var i = 0; i < addCrit.length; i++) {
221
+ arrCrit.push(addCrit[i]);
222
+ }
223
+ }
224
+ else if (this.addCritInput !== null) {
225
+ for (var i = 0; i < this.addCritInput.length; i++) {
226
+ arrCrit.push(this.addCritInput[i]);
227
+ }
228
+ }
229
+ request.criteria = arrCrit;
230
+ /** @type {?} */
231
+ var httpRequest = new HttpRequestObj();
232
+ this.http.post(apiUrl, request).subscribe((/**
233
+ * @param {?} response
234
+ * @return {?}
235
+ */
236
+ (response) => {
237
+ /** @type {?} */
238
+ var qryPaging = {
239
+ response: response,
240
+ pageNow: pageNo
241
+ };
242
+ console.log(qryPaging);
243
+ this.result.emit(qryPaging);
244
+ return response;
245
+ }));
246
+ }
247
+ /**
248
+ * @return {?}
249
+ */
250
+ lessThanFour() {
251
+ if (this.countForm > 3) {
252
+ return false;
253
+ }
254
+ else {
255
+ return true;
256
+ }
257
+ }
258
+ /**
259
+ * @param {?} obj
260
+ * @param {?} url
261
+ * @return {?}
262
+ */
263
+ resolveObject(obj, url) {
264
+ /** @type {?} */
265
+ const val = this.postJSON(this.enviromentUrl + url);
266
+ val.subscribe((/**
267
+ * @param {?} tempData
268
+ * @return {?}
269
+ */
270
+ tempData => {
271
+ obj.itemsUrl = tempData.returnObject;
272
+ }));
273
+ }
274
+ /**
275
+ * @param {?} element
276
+ * @return {?}
277
+ */
278
+ transformAmount(element) {
279
+ this.formattedAmount = parseFloat(element.target.value).toLocaleString('en');
280
+ // Remove or comment this line if you dont want
281
+ // to show the formatted amount in the textbox.
282
+ element.target.value = this.formattedAmount;
283
+ }
284
+ /**
285
+ * @param {?} element
286
+ * @return {?}
287
+ */
288
+ transformToDecimal(element) {
289
+ element.target.value = parseFloat(element.target.value.toString().replace(/,/g, ''));
290
+ }
291
+ }
292
+ UCSearchComponent.decorators = [
293
+ { type: Component, args: [{
294
+ selector: 'lib-UCSearch',
295
+ template: "<!-- Basic form layout section start -->\r\n<section id=\"horizontal-form-layouts\">\r\n <div class=\"row text-left\">\r\n <div class=\"col-md-12\">\r\n <div class=\"card\">\r\n <div class=\"card-body\">\r\n <div class=\"px-3\">\r\n <form class=\"form form-horizontal\" id=\"formSearch\" #formIdSearch>\r\n <div class=\"form-body\">\r\n <h4 class=\"form-section\"> {{configuration?.title}} <div id=\"flip\" class=\"btn float-right\"\r\n (click)=\"isHidden = !isHidden\"><i class=\"fa\"\r\n [ngClass]=\"isHidden ? 'fa-chevron-down' : 'fa-chevron-up'\"></i></div>\r\n </h4>\r\n <!-- Ini Digunakan untuk Generate Dynamic Component -->\r\n <!-- [hidden]=\"isHidden\" -->\r\n <div id=\"panel\">\r\n <div class=\"row\">\r\n <div class=\"col-md-6 form-group\"\r\n *ngFor=\"let question of configuration?.component\">\r\n <div class=\"col-md-12\">\r\n <div class=\"row\">\r\n <label class=\"col-md-5 no-padding\" for=\"projectinput1\"\r\n translate>{{question.label}}</label>\r\n <div class=\"col-md-7 no-padding\">\r\n <div *ngIf=\"question.type==='textbox'\">\r\n <input type=\"text\" id=\"{{question.id}}\" class=\"form-control search-form-control\"\r\n name=\"{{question.name}}\" value=\"{{question.value}}\"\r\n attr.data-type=\"{{question.datatype}}\">\r\n </div>\r\n <div *ngIf=\"question.type==='textarea'\">\r\n <textarea type=\"text\" id=\"{{question.id}}\" class=\"form-control search-form-control\"\r\n name=\"{{question.name}}\" attr.data-type=\"{{question.datatype}}\"\r\n value=\"{{question.value}}\"></textarea>\r\n </div>\r\n <div *ngIf=\"question.type==='numeric'\">\r\n <input type=\"text\" id=\"{{question.id}}\" (focus)=\"transformToDecimal($event)\"\r\n (blur)=\"transformAmount($event)\" class=\"form-control search-form-control\"\r\n name=\"{{question.name}}\" value=\"{{question.value}}\"\r\n attr.data-restriction=\"{{question.restriction}}\" attr.data-type=\"{{question.datatype}}\">\r\n </div>\r\n \r\n <!-- Sementara di Hardcode begini dulu-->\r\n <div *ngIf=\"question.type==='lookupProduct'\">\r\n <!-- <app-lookup></app-lookup> -->\r\n </div>\r\n \r\n <!-- End Hardcode Lookup didalem-->\r\n <div *ngIf=\"question.type==='datepicker'\">\r\n <input type=\"date\" id=\"{{question.id}}\" class=\"form-control search-form-control btn-lookup\"\r\n name=\"{{question.name}}\" value=\"{{question.value}}\" attr.data-type=\"{{question.datatype}}\"\r\n attr.data-restriction=\"{{question.restriction}}\">\r\n </div>\r\n <div *ngIf=\"question.type==='dropdown'\">\r\n <!-- Ini kalau datanya tidak di load dari URL -->\r\n <div *ngIf=\"!question.isFromURL\">\r\n <select id=\"projectinput6\" name=\"{{question.name}}\"\r\n class=\"form-control search-form-control\" attr.data-type=\"{{question.datatype}}\">\r\n <option *ngIf=\"!question.isSelectOne\" value=\"All\">\r\n All\r\n </option>\r\n <option *ngFor=\"let item of question?.items\" value=\"{{item.key}}\">\r\n {{item.value}}\r\n </option>\r\n </select>\r\n </div>\r\n <!-- Ini kalau datanya di load dari URL -->\r\n <div *ngIf=\"question.isFromURL\">\r\n <select id=\"projectinput6\" name=\"{{question.name}}\"\r\n class=\"form-control search-form-control\" attr.data-type=\"{{question.datatype}}\">\r\n <option *ngIf=\"!question.isSelectOne\" value=\"All\">\r\n All\r\n </option>\r\n <option *ngFor=\"let item of question?.itemsUrl\" value=\"{{item.key}}\">\r\n {{item.value}}\r\n </option>\r\n </select>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"col-md-12 no-padding\">\r\n <form>\r\n <div class=\"form-actions right\">\r\n <button *ngIf=\"exportData\" type=\"button\"\r\n class=\"btn btn-raised btn-success mr-1\" translate>\r\n <i class=\"fa fa-plus-circle\"></i> Export Excel\r\n </button>\r\n <button type=\"button\" class=\"btn btn-raised btn-warning mr-1\" translate>\r\n <i class=\"ft-x\"></i> Reset\r\n </button>\r\n <button type=\"button\" (click)=\"searchClick()\" class=\"btn btn-raised btn-primary\" translate>\r\n <i class=\"fa fa-search\"></i> Search\r\n </button>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </section>\r\n <br>\r\n <!-- // Basic form layout section end -->"
296
+ }] }
297
+ ];
298
+ /** @nocollapse */
299
+ UCSearchComponent.ctorParameters = () => [
300
+ { type: HttpClient },
301
+ { type: DecimalPipe },
302
+ { type: Renderer2 },
303
+ { type: undefined, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
304
+ ];
305
+ UCSearchComponent.propDecorators = {
306
+ myForm: [{ type: ViewChild, args: ['formIdSearch',] }],
307
+ _url: [{ type: Input }],
308
+ apiQryPaging: [{ type: Input }],
309
+ enviromentUrl: [{ type: Input }],
310
+ arrCritObj: [{ type: Input }],
311
+ pageSize: [{ type: Input }],
312
+ pageNow: [{ type: Input }],
313
+ addCritInput: [{ type: Input }],
314
+ result: [{ type: Output }]
315
+ };
316
+ if (false) {
317
+ /** @type {?} */
318
+ UCSearchComponent.prototype.myForm;
319
+ /** @type {?} */
320
+ UCSearchComponent.prototype._url;
321
+ /** @type {?} */
322
+ UCSearchComponent.prototype.apiQryPaging;
323
+ /** @type {?} */
324
+ UCSearchComponent.prototype.enviromentUrl;
325
+ /** @type {?} */
326
+ UCSearchComponent.prototype.arrCritObj;
327
+ /** @type {?} */
328
+ UCSearchComponent.prototype.pageSize;
329
+ /** @type {?} */
330
+ UCSearchComponent.prototype.pageNow;
331
+ /** @type {?} */
332
+ UCSearchComponent.prototype.addCritInput;
333
+ /** @type {?} */
334
+ UCSearchComponent.prototype.result;
335
+ /** @type {?} */
336
+ UCSearchComponent.prototype.orderByKey;
337
+ /** @type {?} */
338
+ UCSearchComponent.prototype.orderByValue;
339
+ /** @type {?} */
340
+ UCSearchComponent.prototype.tempUrl;
341
+ /** @type {?} */
342
+ UCSearchComponent.prototype.urlGet;
343
+ /** @type {?} */
344
+ UCSearchComponent.prototype.server;
345
+ /** @type {?} */
346
+ UCSearchComponent.prototype.configuration;
347
+ /** @type {?} */
348
+ UCSearchComponent.prototype.itemUrl;
349
+ /** @type {?} */
350
+ UCSearchComponent.prototype.exportData;
351
+ /** @type {?} */
352
+ UCSearchComponent.prototype.ExcelData;
353
+ /** @type {?} */
354
+ UCSearchComponent.prototype.isDataLoaded;
355
+ /** @type {?} */
356
+ UCSearchComponent.prototype.isHidden;
357
+ /** @type {?} */
358
+ UCSearchComponent.prototype.form;
359
+ /** @type {?} */
360
+ UCSearchComponent.prototype.payLoad;
361
+ /** @type {?} */
362
+ UCSearchComponent.prototype.countForm;
363
+ /** @type {?} */
364
+ UCSearchComponent.prototype.formattedAmount;
365
+ /** @type {?} */
366
+ UCSearchComponent.prototype.amount;
367
+ /** @type {?} */
368
+ UCSearchComponent.prototype.apiUrl;
369
+ /** @type {?} */
370
+ UCSearchComponent.prototype.arrCrit;
371
+ /**
372
+ * @type {?}
373
+ * @private
374
+ */
375
+ UCSearchComponent.prototype.http;
376
+ /**
377
+ * @type {?}
378
+ * @private
379
+ */
380
+ UCSearchComponent.prototype.decimalPipe;
381
+ /**
382
+ * @type {?}
383
+ * @private
384
+ */
385
+ UCSearchComponent.prototype._renderer2;
386
+ /**
387
+ * @type {?}
388
+ * @private
389
+ */
390
+ UCSearchComponent.prototype._document;
391
+ }
392
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWNzZWFyY2guY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vdWNzZWFyY2gvIiwic291cmNlcyI6WyJsaWIvdWNzZWFyY2guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFVLEtBQUssRUFBRSxTQUFTLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV6SCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFFbEQsT0FBTyxFQUFFLFVBQVUsRUFBMkIsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkYsT0FBTyx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDeEQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFPckQsTUFBTSxPQUFPLGlCQUFpQjs7Ozs7OztJQThCNUIsWUFBb0IsSUFBZ0IsRUFBVSxXQUF3QixFQUFVLFVBQXFCLEVBQTRCLFNBQVM7UUFBdEgsU0FBSSxHQUFKLElBQUksQ0FBWTtRQUFVLGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVUsZUFBVSxHQUFWLFVBQVUsQ0FBVztRQUE0QixjQUFTLEdBQVQsU0FBUyxDQUFBO1FBdkJqSSxhQUFRLEdBQVEsRUFBRSxDQUFDO1FBQ25CLFlBQU8sR0FBUSxDQUFDLENBQUM7UUFDakIsaUJBQVksR0FBa0IsSUFBSSxDQUFDO1FBQ2xDLFdBQU0sR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQVV6RCxpQkFB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O0lBRXpCLGlDQUFnQjs7SUFDaEIsb0NBQWE7O0lBQ2Isc0NBQWM7O0lBQ2QsNENBQXFCOztJQUNyQixtQ0FBVzs7SUFDWCxtQ0FBZTs7SUFDZixvQ0FBYTs7Ozs7SUFDRCxpQ0FBd0I7Ozs7O0lBQUUsd0NBQWdDOzs7OztJQUFFLHVDQUE2Qjs7Ozs7SUFBRSxzQ0FBbUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgSW5wdXQsIFZpZXdDaGlsZCwgRWxlbWVudFJlZiwgSW5qZWN0LCBSZW5kZXJlcjIsIEV2ZW50RW1pdHRlciwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xuaW1wb3J0IHsgRm9ybUdyb3VwIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgZm9ybWF0RGF0ZSwgZ2V0TG9jYWxlRGF0ZVRpbWVGb3JtYXQsIERlY2ltYWxQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCAncnhqcy9hZGQvb3BlcmF0b3IvbWFwJztcbmltcG9ydCB7IENyaXRlcmlhT2JqIH0gZnJvbSAnLi9tb2RlbC9Dcml0ZXJpYU9iai5Nb2RlbCc7XG5pbXBvcnQgeyBSZXF1ZXN0Q3JpdGVyaWFPYmogfSBmcm9tICcuL21vZGVsL1JlcXVlc3RDcml0ZXJpYU9iai5tb2RlbCc7XG5pbXBvcnQgeyBBZEluc0NvbnN0YW50IH0gZnJvbSAnLi9tb2RlbC9BZEluc3RDb25zdGFudCc7XG5pbXBvcnQgeyBIdHRwUmVxdWVzdE9iaiB9IGZyb20gJy4vbW9kZWwvSHR0cFJlcXVlc3RPYmoubW9kZWwnO1xuaW1wb3J0IHsgRE9DVU1FTlQgfSBmcm9tICdAYW5ndWxhci9wbGF0Zm9ybS1icm93c2VyJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnbGliLVVDU2VhcmNoJyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Vjc2VhcmNoLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVzOiBbXVxufSlcbmV4cG9ydCBjbGFzcyBVQ1NlYXJjaENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG5cbiAgQFZpZXdDaGlsZCgnZm9ybUlkU2VhcmNoJykgbXlGb3JtOiBFbGVtZW50UmVmO1xuICBASW5wdXQoKSBfdXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGFwaVFyeVBhZ2luZzogc3RyaW5nO1xuICBASW5wdXQoKSBlbnZpcm9tZW50VXJsOiBzdHJpbmc7XG4gIEBJbnB1dCgpIGFyckNyaXRPYmo6IGFueTtcbiAgQElucHV0KCkgcGFnZVNpemU6IGFueSA9IDEwO1xuICBASW5wdXQoKSBwYWdlTm93OiBhbnkgPSAxO1xuICBASW5wdXQoKSBhZGRDcml0SW5wdXQ6IENyaXRlcmlhT2JqW10gPSBudWxsO1xuICBAT3V0cHV0KCkgcmVzdWx0OiBFdmVudEVtaXR0ZXI8YW55PiA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcbiAgb3JkZXJCeUtleTogYW55O1xuICBvcmRlckJ5VmFsdWU6IGFueTtcbiAgdGVtcFVybDogc3RyaW5nO1xuICB1cmxHZXQ6IHN0cmluZztcbiAgc2VydmVyOiBhbnk7XG4gIGNvbmZpZ3VyYXRpb246IGFueTtcbiAgaXRlbVVybDogYW55O1xuICBleHBvcnREYXRhOiBhbnk7XG4gIEV4Y2VsRGF0YTogYW55O1xuICBpc0RhdGFMb2FkZWQ6IGJvb2xlYW4gPSBmYWxzZTtcbiAgaXNIaWRkZW46Ym9vbGVhbiA9IGZhbHNlO1xuICBcbiAgZm9ybTogRm9ybUdyb3VwO1xuICBwYXlMb2FkID0gJyc7XG4gIGNvdW50Rm9ybSA9IDA7XG4gIGZvcm1hdHRlZEFtb3VudCA9ICcnO1xuICBhbW91bnQgPSAwO1xuICBhcGlVcmw6IHN0cmluZztcbiAgYXJyQ3JpdDogYW55O1xuICBjb25zdHJ1Y3Rvcihwcml2YXRlIGh0dHA6IEh0dHBDbGllbnQsIHByaXZhdGUgZGVjaW1hbFBpcGU6IERlY2ltYWxQaXBlLCBwcml2YXRlIF9yZW5kZXJlcjI6IFJlbmRlcmVyMiwgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSBfZG9jdW1lbnQpIHtcbiAgfVxuXG5cblxuICBpbml0aWF0ZUZvcm0oKSB7XG4gICAgdGhpcy5nZXRKU09OKHRoaXMuX3VybCkuc3Vic2NyaWJlKGRhdGEgPT4ge1xuICAgICAgY29uc29sZS5sb2coZGF0YSk7XG4gICAgICB0aGlzLmNvbmZpZ3VyYXRpb24gPSBkYXRhO1xuICAgICAgdGhpcy51cmxHZXQgPSBkYXRhLnVybDtcbiAgICAgIHRoaXMuZXhwb3J0RGF0YSA9IGRhdGEuZXhwb3J0RXhjZWw7XG4gICAgICB0aGlzLmNvdW50Rm9ybSA9IGRhdGEuY29tcG9uZW50Lmxlbmd0aDtcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMuY291bnRGb3JtKTtcbiAgICAgIHRoaXMuaXNEYXRhTG9hZGVkID0gdHJ1ZTtcbiAgICAgIHZhciBpID0gMDtcbiAgICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5jb3VudEZvcm07IGkrKykge1xuXG4gICAgICAgIC8vaW5pIGthbGF1IGRhdGFueWEgZGkgbG9hZCBkYXJpIFVSTFxuICAgICAgICBpZiAoZGF0YS5jb21wb25lbnRbaV0uaXNGcm9tVVJMID09IHRydWUpIHtcbiAgICAgICAgICB2YXIgX3RoaXMgPSB0aGlzO1xuICAgICAgICAgIHZhciBfaW5kZXggPSBpO1xuICAgICAgICAgIC8vbGVtcGFyIG9iamVjdG55YSBzZWthbGlhbiBzYW1hIHVybG55YSwgbm50aSBkaSBiaW5kIGRpIGRhbGVtIGthcmVuYSBtYXNhbGFoIGRpIGFzeW5jbnlhXG4gICAgICAgICAgLy9iaWFyIHRpYXAgZnVuY3Rpb24gYWRhIHN0YXRlMm55YSBzZW5kaXJpXG4gICAgICAgICAgdGhpcy5yZXNvbHZlT2JqZWN0KGRhdGEuY29tcG9uZW50W2ldLCBkYXRhLmNvbXBvbmVudFtpXS51cmwpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKGRhdGEuY29tcG9uZW50W2ldLnR5cGUgPT09IFwibnVtZXJpY1wiKSB7XG4gICAgICAgICAgZGF0YS5jb21wb25lbnRbaV0udmFsdWUgPSBwYXJzZUZsb2F0KGRhdGEuY29tcG9uZW50W2ldLnZhbHVlKS50b0xvY2FsZVN0cmluZygnZW4nKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vcGVuZ2VjZWthbiB0YW5nZ2FsXG4gICAgICAgIGlmIChkYXRhLmNvbXBvbmVudFtpXS50eXBlID09PSBcImRhdGVwaWNrZXJcIikge1xuICAgICAgICAgIGlmIChkYXRhLmNvbXBvbmVudFtpXS52YWx1ZS5pbmNsdWRlcyhcIkJEXCIpKSB7XG4gICAgICAgICAgICBsZXQgYnVzaW5lc3NEYXRlID0gbmV3IERhdGUoSlNPTi5wYXJzZShsb2NhbFN0b3JhZ2UuZ2V0SXRlbShcIlVzZXJDb250ZXh0XCIpKS5CdXNpbmVzc0RhdGUpO1xuICAgICAgICAgICAgdmFyIG9wZXJhdG9yID0gZGF0YS5jb21wb25lbnRbaV0udmFsdWUuY2hhckF0KDIpO1xuICAgICAgICAgICAgdmFyIGRhdGVTaG93ID0gbmV3IERhdGUoKTtcbiAgICAgICAgICAgIGlmIChvcGVyYXRvciA9PT0gXCItXCIpIHtcbiAgICAgICAgICAgICAgdmFyIHRlbXBNaW51cyA9IGRhdGEuY29tcG9uZW50W2ldLnZhbHVlLnNwbGl0KFwiLVwiLCAyKTtcbiAgICAgICAgICAgICAgdmFyIG51bURheSA9IHBhcnNlSW50KHRlbXBNaW51c1sxXSk7XG4gICAgICAgICAgICAgIGRhdGVTaG93LnNldERhdGUoYnVzaW5lc3NEYXRlLmdldERhdGUoKSAtIG51bURheSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIGlmIChvcGVyYXRvciA9PT0gXCIrXCIpIHtcbiAgICAgICAgICAgICAgdmFyIHRlbXBNaW51cyA9IGRhdGEuY29tcG9uZW50W2ldLnZhbHVlLnNwbGl0KFwiK1wiLCAyKTtcbiAgICAgICAgICAgICAgdmFyIG51bURheSA9IHBhcnNlSW50KHRlbXBNaW51c1sxXSk7XG4gICAgICAgICAgICAgIGRhdGVTaG93LnNldERhdGUoYnVzaW5lc3NEYXRlLmdldERhdGUoKSArIG51bURheSk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB2YXIgZGF0ZVRleHQgPSBmb3JtYXREYXRlKGRhdGVTaG93LCAneXl5eS1NTS1kZCcsICdlbi1VUycpXG4gICAgICAgICAgICBkYXRhLmNvbXBvbmVudFtpXS52YWx1ZSA9IGRhdGVUZXh0O1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgfVxuICAgIH0pO1xuXG4gIH1cblxuICBuZ09uSW5pdCgpIHtcbiAgICB0aGlzLmFwaVVybCA9IHRoaXMuZW52aXJvbWVudFVybCArIHRoaXMuYXBpUXJ5UGFnaW5nO1xuICAgIHRoaXMuYXJyQ3JpdCA9IHRoaXMuYXJyQ3JpdE9iajtcbiAgICBsZXQganMgPSB0aGlzLl9yZW5kZXJlcjIuY3JlYXRlRWxlbWVudCgnc2NyaXB0Jyk7XG4gICAganMudGV4dCA9IGBcbiAgICAgICAgICAkKGRvY3VtZW50KS5yZWFkeShmdW5jdGlvbigpe1xuICAgICAgICAgICAgJChcIiNmbGlwXCIpLmNsaWNrKGZ1bmN0aW9uKCl7XG4gICAgICAgICAgICAgICQoXCIjcGFuZWxcIikuc2xpZGVUb2dnbGUoXCJzbG93XCIpO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfSk7XG4gICAgICAgIGA7XG4gICAgdGhpcy5fcmVuZGVyZXIyLmFwcGVuZENoaWxkKHRoaXMuX2RvY3VtZW50LmJvZHksIGpzKTtcbiAgICB0aGlzLmluaXRpYXRlRm9ybSgpO1xuICB9XG5cbiAgcHVibGljIGdldEpTT04odXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAuZ2V0KHVybCk7XG4gIH1cblxuICBwdWJsaWMgcG9zdEpTT04odXJsOiBzdHJpbmcpOiBPYnNlcnZhYmxlPGFueT4ge1xuICAgIHJldHVybiB0aGlzLmh0dHAucG9zdCh1cmwsIG51bGwpO1xuICB9XG5cbiAgb25TdWJtaXQoKSB7XG4gICAgdGhpcy5wYXlMb2FkID0gSlNPTi5zdHJpbmdpZnkodGhpcy5mb3JtLnZhbHVlKTtcbiAgICBjb25zb2xlLmxvZyhcIlRoaXMgaXMgUGF5bG9hZDpcIiArIHRoaXMucGF5TG9hZCk7XG4gIH1cblxuICBzZWFyY2hUcnkoKSB7XG4gICAgY29uc29sZS5sb2coXCJUaGlzIENhbGwgU2VhcmNoXCIpO1xuICAgIGNvbnNvbGUubG9nKHRoaXMubXlGb3JtKTtcbiAgICBmb3IgKHZhciBpID0gMDsgaSA8IHRoaXMuY291bnRGb3JtOyBpKyspIHtcbiAgICAgIGNvbnNvbGUubG9nKHRoaXMubXlGb3JtLm5hdGl2ZUVsZW1lbnRbaV0ubmFtZSArIFwiIC0gXCIgKyB0aGlzLm15Rm9ybS5uYXRpdmVFbGVtZW50W2ldLnZhbHVlKTtcbiAgICB9XG4gIH1cblxuICBzZWFyY2hDbGljaygpIHtcbiAgICB0aGlzLm9yZGVyQnlLZXkgPSBudWxsXG4gICAgdGhpcy5vcmRlckJ5VmFsdWUgPSB0cnVlXG4gICAgdGhpcy5wYWdlTm93ID0gMTtcbiAgICB0aGlzLnNlYXJjaCh0aGlzLmFwaVVybCwgdGhpcy5wYWdlTm93LCB0aGlzLnBhZ2VTaXplLCBudWxsLCB0aGlzLmFyckNyaXQpO1xuICB9XG5cbiAgc2VhcmNoKGFwaVVybDogc3RyaW5nLCBwYWdlTm86IG51bWJlciwgcm93UGVyUGFnZTogbnVtYmVyLCBvcmRlckJ5OiBhbnksIGFkZENyaXQ6IENyaXRlcmlhT2JqW10gPSBudWxsKSB7XG4gICAgY29uc29sZS5sb2cocGFnZU5vKTtcbiAgICB2YXIgcmVxdWVzdCA9IG5ldyBSZXF1ZXN0Q3JpdGVyaWFPYmooKTtcbiAgICB2YXIgYXJyQ3JpdCA9IG5ldyBBcnJheSgpO1xuXG5cbiAgICBjb25zb2xlLmxvZyhcIlNlYXJjaFwiKTtcblxuICAgIHJlcXVlc3QucGFnZU5vID0gcGFnZU5vO1xuICAgIHJlcXVlc3Qucm93UGVyUGFnZSA9IHJvd1BlclBhZ2U7XG4gICAgcmVxdWVzdC5vcmRlckJ5ID0gb3JkZXJCeTtcblxuICAgIGZvciAodmFyIGkgPSAwOyBpIDwgdGhpcy5jb3VudEZvcm07IGkrKykge1xuICAgICAgdmFyIGNyaXRPYmogPSBuZXcgQ3JpdGVyaWFPYmooKTtcbiAgICAgIHZhciBjb21wb25lbnQgPSB0aGlzLm15Rm9ybS5uYXRpdmVFbGVtZW50W2ldO1xuICAgICAgY3JpdE9iai5EYXRhVHlwZSA9IGNvbXBvbmVudC5nZXRBdHRyaWJ1dGUoJ2RhdGEtdHlwZScpO1xuICAgICAgY29uc29sZS5sb2coJ2NvbXBvbmVudCcpO1xuICAgICAgY29uc29sZS5sb2coY29tcG9uZW50LnZhbHVlKTtcbiAgICAgIC8vSW5pIGtodXN1cyBrYWxhdSBkYXJpIERyb3AgRG93blxuICAgICAgaWYgKGNvbXBvbmVudC52YWx1ZSAhPSBcIlwiKSB7XG4gICAgICAgIGlmIChjb21wb25lbnQubm9kZU5hbWUgPT09ICdTRUxFQ1QnKSB7XG4gICAgICAgICAgdmFyIGRkbCA9IGNvbXBvbmVudC5vcHRpb25zO1xuICAgICAgICAgIHZhciB0ZXh0ID0gZGRsW2RkbC5zZWxlY3RlZEluZGV4XS52YWx1ZTtcbiAgICAgICAgICBpZiAodGV4dCAhPT0gXCJBbGxcIikge1xuICAgICAgICAgICAgLy9LYWxhdSBEYXJpIERyb3Bkb3duIHVkYWggcGFzdGkgcGFrZSBFcVxuICAgICAgICAgICAgY3JpdE9iai5yZXN0cmljdGlvbiA9IEFkSW5zQ29uc3RhbnQuUmVzdHJpY3Rpb25FcTtcbiAgICAgICAgICAgIGNyaXRPYmoucHJvcE5hbWUgPSBjb21wb25lbnQubmFtZTtcbiAgICAgICAgICAgIGNyaXRPYmoudmFsdWUgPSB0ZXh0O1xuICAgICAgICAgICAgYXJyQ3JpdC5wdXNoKGNyaXRPYmopO1xuICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgIC8vS2FsYXUgYWRhIFBlcmNlbnQgbWFrYSB5YW5nIGRpcGFrZSBubnRpIGFkYWxhaCBSZXN0cmljdGlvbnMgTGlrZVxuICAgICAgICAgIGNyaXRPYmoucHJvcE5hbWUgPSBjb21wb25lbnQubmFtZTtcbiAgICAgICAgICBjcml0T2JqLnZhbHVlID0gY29tcG9uZW50LnZhbHVlO1xuICAgICAgICAgIGNvbnNvbGUubG9nKGNvbXBvbmVudC50eXBlKTtcbiAgICAgICAgICBjb25zb2xlLmxvZyhjb21wb25lbnQucmVzdHJpY3Rpb24pO1xuICAgICAgICAgIGlmIChjb21wb25lbnQudmFsdWUuaW5jbHVkZXMoXCIlXCIpKSB7XG4gICAgICAgICAgICBjcml0T2JqLnJlc3RyaWN0aW9uID0gQWRJbnNDb25zdGFudC5SZXN0cmljdGlvbkxpa2U7XG5cbiAgICAgICAgICB9XG4gICAgICAgICAgLy9rYWxhdSBjb21wb25lbnRueWEgRGF0ZSwgcmVzdHJpY3Rpb25zbnlhIGxnc2cgYW1iaWwgZGFyaSBwcm9wZXJ0eSBKU09ObnlhXG5cbiAgICAgICAgICBlbHNlIGlmIChjb21wb25lbnQuZ2V0QXR0cmlidXRlKCdkYXRhLXJlc3RyaWN0aW9uJykgIT0gXCJcIiAmJiBjb21wb25lbnQuZ2V0QXR0cmlidXRlKCdkYXRhLXJlc3RyaWN0aW9uJykgIT0gbnVsbCkge1xuICAgICAgICAgICAgY3JpdE9iai5yZXN0cmljdGlvbiA9IGNvbXBvbmVudC5nZXRBdHRyaWJ1dGUoJ2RhdGEtcmVzdHJpY3Rpb24nKTtcbiAgICAgICAgICB9XG4gICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICBjcml0T2JqLnJlc3RyaWN0aW9uID0gQWRJbnNDb25zdGFudC5SZXN0cmljdGlvbkVxXG4gICAgICAgICAgfVxuICAgICAgICAgIGFyckNyaXQucHVzaChjcml0T2JqKTtcbiAgICAgICAgfVxuICAgICAgfVxuXG4gICAgfVxuICAgIGlmIChhZGRDcml0ICE9PSBudWxsKSB7XG4gICAgICBmb3IgKHZhciBpID0gMDsgaSA8IGFkZENyaXQubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgYXJyQ3JpdC5wdXNoKGFkZENyaXRbaV0pO1xuICAgICAgfVxuICAgIH1cbiAgICBlbHNlIGlmICh0aGlzLmFkZENyaXRJbnB1dCAhPT0gbnVsbCkge1xuICAgICAgZm9yICh2YXIgaSA9IDA7IGkgPCB0aGlzLmFkZENyaXRJbnB1dC5sZW5ndGg7IGkrKykge1xuICAgICAgICBhcnJDcml0LnB1c2godGhpcy5hZGRDcml0SW5wdXRbaV0pO1xuICAgICAgfVxuICAgIH1cblxuICAgIHJlcXVlc3QuY3JpdGVyaWEgPSBhcnJDcml0O1xuICAgIHZhciBodHRwUmVxdWVzdCA9IG5ldyBIdHRwUmVxdWVzdE9iaigpO1xuICAgIHRoaXMuaHR0cC5wb3N0KGFwaVVybCwgcmVxdWVzdCkuc3Vic2NyaWJlKChyZXNwb25zZSkgPT4ge1xuICAgICAgdmFyIHFyeVBhZ2luZyA9IHtcbiAgICAgICAgcmVzcG9uc2UgOiByZXNwb25zZSxcbiAgICAgICAgcGFnZU5vdyA6IHBhZ2VOb1xuICAgICAgfVxuICAgICAgY29uc29sZS5sb2cocXJ5UGFnaW5nKTtcbiAgICAgIHRoaXMucmVzdWx0LmVtaXQocXJ5UGFnaW5nKTtcbiAgICAgIHJldHVybiByZXNwb25zZTtcbiAgICB9KTtcbiAgfVxuXG4gIGxlc3NUaGFuRm91cigpOiBib29sZWFuIHtcbiAgICBpZiAodGhpcy5jb3VudEZvcm0gPiAzKSB7XG4gICAgICByZXR1cm4gZmFsc2U7XG4gICAgfVxuICAgIGVsc2Uge1xuICAgICAgcmV0dXJuIHRydWU7XG4gICAgfVxuICB9XG5cbiAgcmVzb2x2ZU9iamVjdChvYmo6IGFueSwgdXJsOiBzdHJpbmcpIHtcbiAgICBjb25zdCB2YWwgPSB0aGlzLnBvc3RKU09OKHRoaXMuZW52aXJvbWVudFVybCArIHVybCk7XG4gICAgdmFsLnN1YnNjcmliZSh0ZW1wRGF0YSA9PiB7XG4gICAgICBvYmouaXRlbXNVcmwgPSB0ZW1wRGF0YS5yZXR1cm5PYmplY3Q7XG4gICAgfSk7XG4gIH1cblxuICB0cmFuc2Zvcm1BbW91bnQoZWxlbWVudDogYW55KSB7XG5cbiAgICB0aGlzLmZvcm1hdHRlZEFtb3VudCA9IHBhcnNlRmxvYXQoZWxlbWVudC50YXJnZXQudmFsdWUpLnRvTG9jYWxlU3RyaW5nKCdlbicpO1xuICAgIC8vIFJlbW92ZSBvciBjb21tZW50IHRoaXMgbGluZSBpZiB5b3UgZG9udCB3YW50XG4gICAgLy8gdG8gc2hvdyB0aGUgZm9ybWF0dGVkIGFtb3VudCBpbiB0aGUgdGV4dGJveC5cbiAgICBlbGVtZW50LnRhcmdldC52YWx1ZSA9IHRoaXMuZm9ybWF0dGVkQW1vdW50O1xuICB9XG5cbiAgdHJhbnNmb3JtVG9EZWNpbWFsKGVsZW1lbnQ6IGFueSkge1xuICAgIGVsZW1lbnQudGFyZ2V0LnZhbHVlID0gcGFyc2VGbG9hdChlbGVtZW50LnRhcmdldC52YWx1ZS50b1N0cmluZygpLnJlcGxhY2UoLywvZywgJycpKTtcbiAgfVxufVxuIl19
@@ -0,0 +1,19 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { NgModule } from '@angular/core';
6
+ import { UCSearchComponent } from './ucsearch.component';
7
+ import { CommonModule } from '@angular/common';
8
+ export class UCSearchModule {
9
+ }
10
+ UCSearchModule.decorators = [
11
+ { type: NgModule, args: [{
12
+ declarations: [UCSearchComponent],
13
+ imports: [
14
+ CommonModule
15
+ ],
16
+ exports: [UCSearchComponent]
17
+ },] }
18
+ ];
19
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWNzZWFyY2gubW9kdWxlLmpzIiwic291cmNlUm9vdCI6Im5nOi8vdWNzZWFyY2gvIiwic291cmNlcyI6WyJsaWIvdWNzZWFyY2gubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQVMvQyxNQUFNLE9BQU8sY0FBYzs7O1lBUDFCLFFBQVEsU0FBQztnQkFDUixZQUFZLEVBQUUsQ0FBQyxpQkFBaUIsQ0FBQztnQkFDakMsT0FBTyxFQUFFO29CQUNQLFlBQVk7aUJBQ2I7Z0JBQ0QsT0FBTyxFQUFFLENBQUMsaUJBQWlCLENBQUM7YUFDN0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBOZ01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgVUNTZWFyY2hDb21wb25lbnQgfSBmcm9tICcuL3Vjc2VhcmNoLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDb21tb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtVQ1NlYXJjaENvbXBvbmVudF0sXG4gIGltcG9ydHM6IFtcbiAgICBDb21tb25Nb2R1bGVcbiAgXSxcbiAgZXhwb3J0czogW1VDU2VhcmNoQ29tcG9uZW50XVxufSlcbmV4cG9ydCBjbGFzcyBVQ1NlYXJjaE1vZHVsZSB7IH1cbiJdfQ==
@@ -0,0 +1,18 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ import { Injectable } from '@angular/core';
6
+ import * as i0 from "@angular/core";
7
+ export class UCSearchService {
8
+ constructor() { }
9
+ }
10
+ UCSearchService.decorators = [
11
+ { type: Injectable, args: [{
12
+ providedIn: 'root'
13
+ },] }
14
+ ];
15
+ /** @nocollapse */
16
+ UCSearchService.ctorParameters = () => [];
17
+ /** @nocollapse */ UCSearchService.ngInjectableDef = i0.defineInjectable({ factory: function UCSearchService_Factory() { return new UCSearchService(); }, token: UCSearchService, providedIn: "root" });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWNzZWFyY2guc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL3Vjc2VhcmNoLyIsInNvdXJjZXMiOlsibGliL3Vjc2VhcmNoLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7OztBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBSzNDLE1BQU0sT0FBTyxlQUFlO0lBRTFCLGdCQUFnQixDQUFDOzs7WUFMbEIsVUFBVSxTQUFDO2dCQUNWLFVBQVUsRUFBRSxNQUFNO2FBQ25CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBVQ1NlYXJjaFNlcnZpY2Uge1xuXG4gIGNvbnN0cnVjdG9yKCkgeyB9XG59XG4iXX0=
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ /*
6
+ * Public API Surface of ucsearch
7
+ */
8
+ export { UCSearchService } from './lib/ucsearch.service';
9
+ export { UCSearchComponent } from './lib/ucsearch.component';
10
+ export { UCSearchModule } from './lib/ucsearch.module';
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL3Vjc2VhcmNoLyIsInNvdXJjZXMiOlsicHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBSUEsZ0NBQWMsd0JBQXdCLENBQUM7QUFDdkMsa0NBQWMsMEJBQTBCLENBQUM7QUFDekMsK0JBQWMsdUJBQXVCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogUHVibGljIEFQSSBTdXJmYWNlIG9mIHVjc2VhcmNoXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvdWNzZWFyY2guc2VydmljZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi91Y3NlYXJjaC5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvdWNzZWFyY2gubW9kdWxlJztcbiJdfQ==
@@ -0,0 +1,9 @@
1
+ /**
2
+ * @fileoverview added by tsickle
3
+ * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
4
+ */
5
+ /**
6
+ * Generated bundle index. Do not edit.
7
+ */
8
+ export { UCSearchService, UCSearchComponent, UCSearchModule } from './public-api';
9
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidWNzZWFyY2guanMiLCJzb3VyY2VSb290Ijoibmc6Ly91Y3NlYXJjaC8iLCJzb3VyY2VzIjpbInVjc2VhcmNoLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxtRUFBYyxjQUFjLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEdlbmVyYXRlZCBidW5kbGUgaW5kZXguIERvIG5vdCBlZGl0LlxuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vcHVibGljLWFwaSc7XG4iXX0=