@adins/ucsearch 4.0.0-research.2 → 4.0.0-research.3

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 (54) hide show
  1. package/README.md +1296 -1011
  2. package/adins-ucsearch.d.ts.map +1 -0
  3. package/esm2022/lib/constants/month.mjs +1 -1
  4. package/esm2022/lib/model/adins-constant.mjs +1 -1
  5. package/esm2022/lib/model/criteria-obj.model.mjs +1 -1
  6. package/esm2022/lib/model/input-search-obj.model.mjs +1 -1
  7. package/esm2022/lib/model/integration-obj.model.mjs +1 -1
  8. package/esm2022/lib/model/key-value-report.model.mjs +1 -1
  9. package/esm2022/lib/model/key-value-uc-search.model.mjs +1 -1
  10. package/esm2022/lib/model/request-criteria-obj.model.mjs +1 -1
  11. package/esm2022/lib/pipe/text-search.pipe.mjs +3 -3
  12. package/esm2022/lib/services/export-file.service.mjs +3 -3
  13. package/esm2022/lib/services/ucsearch-datetime.service.mjs +3 -3
  14. package/esm2022/lib/services/ucsearch-form.service.mjs +3 -3
  15. package/esm2022/lib/ucsearch.component.mjs +444 -268
  16. package/esm2022/lib/ucsearch.module.mjs +73 -52
  17. package/esm2022/lib/ucsearch.service.mjs +3 -3
  18. package/esm2022/public-api.mjs +2 -1
  19. package/fesm2022/adins-ucsearch.mjs +490 -296
  20. package/fesm2022/adins-ucsearch.mjs.map +1 -1
  21. package/index.d.ts +1 -0
  22. package/lib/constants/month.d.ts +1 -0
  23. package/lib/constants/month.d.ts.map +1 -0
  24. package/lib/model/adins-constant.d.ts +1 -0
  25. package/lib/model/adins-constant.d.ts.map +1 -0
  26. package/lib/model/criteria-obj.model.d.ts +1 -0
  27. package/lib/model/criteria-obj.model.d.ts.map +1 -0
  28. package/lib/model/input-search-obj.model.d.ts +1 -0
  29. package/lib/model/input-search-obj.model.d.ts.map +1 -0
  30. package/lib/model/integration-obj.model.d.ts +1 -0
  31. package/lib/model/integration-obj.model.d.ts.map +1 -0
  32. package/lib/model/key-value-report.model.d.ts +1 -0
  33. package/lib/model/key-value-report.model.d.ts.map +1 -0
  34. package/lib/model/key-value-uc-search.model.d.ts +1 -0
  35. package/lib/model/key-value-uc-search.model.d.ts.map +1 -0
  36. package/lib/model/request-criteria-obj.model.d.ts +1 -0
  37. package/lib/model/request-criteria-obj.model.d.ts.map +1 -0
  38. package/lib/pipe/text-search.pipe.d.ts +1 -0
  39. package/lib/pipe/text-search.pipe.d.ts.map +1 -0
  40. package/lib/services/export-file.service.d.ts +1 -0
  41. package/lib/services/export-file.service.d.ts.map +1 -0
  42. package/lib/services/ucsearch-datetime.service.d.ts +1 -0
  43. package/lib/services/ucsearch-datetime.service.d.ts.map +1 -0
  44. package/lib/services/ucsearch-form.service.d.ts +1 -0
  45. package/lib/services/ucsearch-form.service.d.ts.map +1 -0
  46. package/lib/ucsearch.component.d.ts +20 -20
  47. package/lib/ucsearch.component.d.ts.map +1 -0
  48. package/lib/ucsearch.module.d.ts +16 -13
  49. package/lib/ucsearch.module.d.ts.map +1 -0
  50. package/lib/ucsearch.service.d.ts +1 -0
  51. package/lib/ucsearch.service.d.ts.map +1 -0
  52. package/package.json +2 -12
  53. package/public-api.d.ts +1 -0
  54. package/public-api.d.ts.map +1 -0
package/README.md CHANGED
@@ -1,1011 +1,1296 @@
1
- # UCSearch
2
-
3
- This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.0.0.
4
-
5
- ## Version
6
- notes: new ui under canary.x tags
7
-
8
- Version 3.8.18
9
- 1. add default value option first day and last day of month for search type datepicker
10
-
11
- Version 3.8.17
12
- 1. add showRptExecType input to show generate report execution type input
13
-
14
- Version 3.8.16
15
- 1. undo fix checkNumericPair to read value from form - will rework later
16
- 2. remove trailing `\` if restriction is LIKE
17
-
18
- Version 3.8.15
19
- 1. add ? when accessing experimental value from environment
20
-
21
- Version 3.8.14
22
- 1. add disabled button search when criteria not ready
23
- 2. fix checkNumericPair to read value from form
24
-
25
- Version 3.8.13
26
- 1. add input useOthersSelection for search type ddl
27
-
28
- Version 3.8.12
29
- 1. fix set task definition key or process key to integration object on search when only has one option
30
-
31
- Version 3.8.11
32
- 1. fix affectedCriteria for lookup
33
-
34
- Version 3.8.10
35
- 1. add affectedfilter for lookup
36
- 2. expose search paging via `notify` input
37
-
38
- Version 3.8.9
39
- 1. add additional property (formRaw) when emit genRpt
40
-
41
- Version 3.8.8
42
- 1. fix datetimeService.GetNewDate to always return new Date()
43
-
44
- Version 3.8.7
45
- 1. add `UcsearchFormService`. Use `getform()` to get FormGroup / form value from UcSearch
46
-
47
- Version 3.8.6
48
- 1. add `isLockHo` in input type `officeRoleCodes`
49
-
50
- Version 3.8.5
51
- 1. fix lookup circular deps
52
- 2. fix behavior `enter` when isReport is true
53
-
54
- Version 3.8.4
55
- 1. add support restriction like for ddl
56
-
57
- Version 3.8.3
58
- 1. change form.get to form.controls[_control_name_]
59
-
60
- Version 3.8.2
61
- 1. remove unnecessary p tag
62
-
63
- Version 3.8.1
64
- 1. support 'useFirstValue' option for search type dropdown - will select the first value as default value
65
- 2. fix input type currency dealing with multiple same name
66
-
67
- Version 3.8.0
68
- 1. support search type `datepicker` to using ucdatepicker when environment.experimental.useNewDatepicker set to true
69
- 2. fix minor bug related to search type `datepicker`
70
- 3. fix bug related to search type `time` when using timepair
71
- 4. fix minor bug related to seatch type `blank`
72
-
73
- Version 3.7.12
74
- 1. fix typo function
75
-
76
- Version 3.7.11
77
- 1. fix data not set properly for where and from value
78
- 2. fix value not patch properly for search component type dropdown
79
-
80
- Version 3.7.10
81
- 1. add search type `time`. will bind to assigned datepicker when timePair not empty
82
-
83
- Version 3.7.9
84
- 1. fix lookup when empty
85
- 2. fix when restriction is undefined for type datepicker
86
-
87
- Version 3.7.8
88
- 1. add input type `month` and `year`
89
-
90
- Version 3.7.7
91
- 1. fix isolated dictionaries - will save to dicts when request only one parameter
92
-
93
- Version 3.7.6
94
- 1. fix numeric default value
95
-
96
- Version 3.7.5
97
- 1. fix numeric and currency attribute name for search
98
-
99
- Version 3.7.4
100
- 1. add validation min/max for type numeric and currency
101
- 2. fix datepicker attribute name for search
102
-
103
- Version 3.7.3
104
- 1. fix Show Errors: Migrated all form control error handling to utilize Reactive Forms, ensuring consistent error display and handling.
105
- 2. fix Dynamic Date Boundaries: Resolved issue where setting min/max values for dynamic date inputs would incorrectly affect themselves.
106
- 3. add Support for Multiple Parameters in Affected Dropdowns: Implemented support for passing multiple parameters via isolated dictionaries. These dictionaries capture dropdownlist data from the previous search component, enabling better control over dropdown interactions.
107
-
108
- Version 3.7.2
109
- 1. enhance dynamic date min/max via datepickerPair -> now datepickerPair can be set to 1 variable act as base value for min/max with the value of the same datepickerPair
110
- 2. add option to exclude input from criteria using `excludeFromCrit` option
111
-
112
- Version 3.7.1
113
- 1. support multiple parameter for affected dropdown
114
- 2. support dynamic date min/max via datepickerPair
115
-
116
- Version 3.7.0
117
- 1. add support uclookup on search component
118
-
119
- Version 3.6.5
120
- 1. fix export file data - data type boolean will convert into `YES` and `NO`
121
-
122
- Version 3.6.4
123
- 1. fix export file data - now data exported with the same order as on grid UI
124
-
125
- Version 3.6.3
126
- 1. Migrate dropdown popup to ngbDropdown
127
-
128
- Version 3.6.2
129
- 1. fix date range guard validation
130
-
131
- Version 3.6.1
132
- 1. add action to export list on each property value
133
-
134
- Version 3.6.0
135
- 1. add sequential export file
136
-
137
- Version 3.5.14
138
- 1. fix parse currency to compare
139
-
140
- Version 3.5.13
141
- 1. add option `keepDdl` - will make dropdown still a dropdown despite there were only one data in ddl
142
-
143
- Version 3.5.12
144
- 1. remove validation `restriction` for min/max date. will set the min/max date even when `restriction` is undefined
145
-
146
- Version 3.5.11
147
- 1. add validation min / max by numericpair (will compare date to the same numericpair depends on lte or gte)
148
-
149
- Version 3.5.10
150
- 1. fix min / max date validation
151
-
152
- Version 3.5.9
153
- 1. fix min / max date validation
154
- 2. add validation min / max by datepickerpair (will compare date to the same datepickerpair depends on lte or gte)
155
-
156
- Version 3.5.8
157
- 1. fix dropdown. will send value as criteria if there's only one option inside dropdown
158
-
159
- Version 3.5.7
160
- 1. add support uc-directive-validate-date
161
-
162
- Version 3.5.6
163
- 1. add support custom object, key, and value name for dropdown - will default to `ReturnObject`, `Key`, and `Value` respectively
164
-
165
- Version 3.5.5
166
- 1. handle if response data null
167
-
168
- Version 3.5.4
169
- 1. fix export type col length
170
- 2. configurable list inside export as button
171
-
172
- Version 3.5.3
173
- 1. fix calling getQueryParams (ngx-router)
174
-
175
- Version 3.5.2
176
- 1. fix parameter when calling getQueryParams (ngx-router)
177
-
178
- Version 3.5.1
179
- 1. add support fe-core for ngx-router
180
-
181
- Version 3.5.0
182
- 1. add feature to set where value from the search component value - by name property
183
-
184
- Version 3.4.10
185
- 1. add support autofill for type dropdownlist
186
- 2. add support autofill source from dicts
187
-
188
- Version 3.4.9
189
- 1. add support for multiple request object for dropdown
190
- 2. add support for request object get data from useraccess
191
-
192
- Version 3.4.8
193
- 1. add clear default value on focus input currency
194
-
195
- Version 3.4.7
196
- 1. fix guard clause for orderby
197
-
198
- Version 3.4.6
199
- 1. uppercase value on autofill
200
-
201
- Version 3.4.5
202
- 1. fix affected filter when set back to all
203
-
204
- Version 3.4.4
205
- 1. add placeholder
206
-
207
- Version 3.4.3
208
- 1. change font size
209
- 2. change dropdown icon
210
-
211
- Version 3.4.2
212
- 1. change font color
213
-
214
- Version 3.4.1
215
- 1. add option on/off uppercase for search input
216
-
217
- Version 3.4.0
218
- 1. add option useraccess for autofill source
219
- 2. add isReadonly config
220
-
221
- Version 3.3.3
222
- 1. fix subsection title
223
-
224
- Version 3.3.2
225
- 1. add button hover
226
-
227
- Version 3.3.1
228
- 1. Update UI/UX padding
229
-
230
- Version 3.3.0
231
- 1. Update UI/UX
232
- 2. support dropdownlist criteria from queryparam
233
-
234
- Version 3.2.0
235
- 1. add support for exclude export list. user can select exclude data to display on excel
236
-
237
- Version 3.1.1
238
- 1. change copy object from shallow copy (spread) to deep copy (JSON.parse(JSON.stringify)). notes structured clone not available as for TS version < 4.7
239
-
240
- Version 3.1.0
241
- 1. add support for additional export list. user can select additional data to display on excel when doing export other than data displayed on grid
242
-
243
- Version 3.0.8
244
- 1. add guard clause for orderby
245
-
246
- Version 3.0.7
247
- 1. fix guard clause for dataInput on export file
248
-
249
- Version 3.0.5
250
- 1. fix dataInput undefined
251
-
252
- Version 3.0.4
253
- 1. fix dataInput
254
-
255
- Version 3.0.3
256
- 1. fix error when set title
257
-
258
- Version 3.0.2
259
- 1. Fix bug search addToTemp, data not filtered
260
-
261
- Version 3.0.1
262
- 1. update readme
263
-
264
- Version 3.0.0
265
- 1. Fix versioning for angular 13
266
- 2. support data input
267
-
268
- Version 2.9.23 (angular 13) & 2.13.6 (angular 7)
269
- 1. Fix bug error ketika isSearched true
270
-
271
- Version 2.9.22 (angular 13) & 2.13.5 (angular 7)
272
- 1. Fix bug ketika melakukan sort, hasil table berubah sesuai dengan crit. hasil table berubah jika hanya tombol search diklik
273
-
274
- Version 2.9.21 (angular 13) & 2.13.4 (angular 7)
275
- 1. add option autofill for auto input based on source
276
-
277
- Version 2.9.20 (angular 13)
278
- 1. add option export file as csv and json
279
- 2. Fix bug ketika export excel untuk type action - selain button / icon
280
-
281
- Version 2.9.19 (angular 13)
282
- 1. Fix header in export excel - nama header dalam file excel akan sesuai dengan nama header pada gridview
283
-
284
- Version 2.9.18 (angular 13)
285
- 1. Fix bug ketika export excel untuk type action
286
-
287
- Version 2.9.17 (angular 13)
288
- 1. Export excel button will appear if only user has click search button.
289
- 2. Export excel data will display the same data as grid view.
290
- 3. Export excel file name will adjust the json file title.
291
-
292
- Version 2.9.16 (angular 13)
293
- 1. bug fix - type numeric untuk value > 1000
294
-
295
- Version 2.9.15 (angular 13)
296
- 1. bug fix - check required when generate report
297
-
298
- Version 2.9.14 (angular 13) & 2.13.3 (angular 7)
299
- 1. add option on ExportTypeList for Justify PDF
300
- 2. remove option XLS & DOC from ExportTypeList
301
-
302
- Version 2.9.13 (angular 13) & 2.13.2 (angular 7)
303
- 1. tambah penjagaan criteria ketika export excel
304
-
305
- Version 2.9.11
306
- 1. tambah penjagaan check gte/lte/gt/lt
307
-
308
- Version 2.9.10
309
- 1. kasih penjagaan check gte/lte/gt/lt
310
-
311
- Version 2.9.9
312
- 1. add validation check gte/lte/gt/lt if numeric
313
-
314
- Version 2.13.1
315
- 1. add validation buat numeric, from gbs > dari to
316
-
317
- Version 2.12.1
318
- 1. wfKeyFilter harus string with split delimiter (xania;yoan;apsari)
319
-
320
- Version 2.11.28
321
- 1. async ngOnInit, initiateForm, reset
322
-
323
- Version 2.11.26
324
- 1. type dropdownsearch
325
- 1.
326
- 1.
327
- 1.
328
-
329
- Version 2.9.0
330
- 1. Update new attribute readonly buat datepicker
331
-
332
- Version 2.8.0
333
- 1. restriction tidak trigger checkInputDate
334
-
335
- Version 2.7.0
336
- 1. Tambah attribute data-numericpair
337
-
338
- Version 2.6.0
339
- 1. Hapus logic skip untuk type "officeRoleCodes"
340
-
341
- Version 2.5.3
342
- 1. Fix Bug Reset Report Type jadi kosong
343
-
344
- Version 2.5.2
345
- 1. Tambah attribute data-datepickerpair
346
-
347
- Version 2.5.1
348
- 1. Tambah output buat emit request get all datanya
349
-
350
- Version 2.4.1
351
- 1. Fix condition affected value punya affected value
352
-
353
- Version 2.3.8
354
- 1. Fix condition affected value punya affected value
355
-
356
- Version 2.3.7
357
- 1. Update condition affected value punya affected value
358
-
359
- Version 2.3.6
360
- 1. LOGGING buat CMS-119
361
-
362
- Version 2.3.5
363
- 1. LOGGING buat CMS-119
364
-
365
- Version 2.3.4
366
- 1. LOGGING buat CMS-119
367
-
368
- Version 2.3.3
369
- 1. LOGGING buat CMS-119
370
-
371
- Version 2.3.2
372
- 1. Test *
373
-
374
- Version 2.3.1
375
- 1. update folder/file name to lower-case
376
-
377
- Version 2.3.0
378
- 1. Hapus penggunaan ddlEnvironments
379
-
380
- Version 2.2.64
381
- 1. Bug fixing ucsearch
382
-
383
- Version 2.2.63
384
- 1. logging
385
-
386
- Version 2.2.62
387
- 1. logging
388
-
389
- Version 2.2.61
390
- 1. logging
391
-
392
- Version 2.2.60
393
- 1. Bug fixing ucsearch
394
-
395
- Version 2.2.59
396
- 1. Bug fixing ucsearch
397
-
398
- Version 2.2.58
399
- 1. Bug fixing ucsearch
400
-
401
- Version 2.2.57
402
- 1. Menambah tipe ProcessKey
403
-
404
- Version 2.2.56
405
- 1. tambahan input property InputSearchObj.fromValue
406
-
407
- Version 2.2.55
408
- 1. isCriteriaDataTable pada type dropdown
409
-
410
- Version 2.2.54
411
- 1. setMonthDDL dropdown list + setDefaultValueYear + setDefaultValueMonth
412
-
413
- Version 2.2.53
414
- 1. isCriteriaDataTable pada type datetime
415
-
416
- Version 2.2.52
417
- 1. ucsearch bug when ddltype one
418
-
419
- Version 2.2.51
420
- 1. datepicker tambahan isTime fungsiny buat ubah date ada time
421
-
422
- Version 2.2.50
423
- 1. bug fixing Translate di button
424
-
425
- Version 2.2.49
426
- 1. rapihin text
427
-
428
- Version 2.2.48
429
- 1. bug fixing dropdown
430
-
431
- Version 2.2.47
432
- 1. taskDefinitionKey + officeRoleCodes bugV2
433
-
434
- Version 2.2.45
435
- 1. taskDefinitionKey + officeRoleCodes bug
436
-
437
- Version 2.2.41
438
- 1. onchangeEvent bug
439
-
440
- Version 2.2.40
441
- 1. tambah type taskDefinitionKey + officeRoleCodes
442
-
443
- Version 2.2.38
444
- 1. Tambah fitur exclude untuk dropdown
445
-
446
- Version 2.2.37
447
- 1. Tambah type claim
448
- 2. CriteriaObj tambah property isCriteriaDataTable
449
- 3.
450
-
451
- Version 2.2.32
452
- 1. using UcUpperCase
453
-
454
- Version 2.2.29
455
- 1. propname ddl bug, get from attribute
456
-
457
- Version 2.2.26
458
- 1. type dropdown new dtmType
459
- 2. ddl type default value by BD
460
-
461
- Version 2.2.25
462
- 1. Fixed html for type numeric and datepicker
463
- 2. Fixed validation for datepicker
464
-
465
- Version 2.2.24
466
- 1. ddl isEvent jika list 1 di trigger filter nya
467
-
468
- Version 2.2.21
469
- 1. Comment validation datepicker when click search
470
-
471
- Version 2.2.20
472
- 1. Add attr.label
473
-
474
- Version 2.2.19
475
- 1. Add Validation min max pada DatePicker
476
- 2. Fixed patch default value
477
- 3. Fixed patch value datepicker ketika lihat BusinessDate
478
-
479
- Version 2.2.18
480
- 1. fix export excel
481
-
482
- Version 2.2.16
483
- 1. fix datetime value BD
484
-
485
- Version 2.2.15
486
- 1. reset with viewchild
487
-
488
- Version 2.2.14
489
- 1. listEnvironments, setting urlenvi in json
490
-
491
- Version 2.2.12
492
- 1. hapus logic popup message jika required
493
-
494
- Version 2.2.11
495
- 1. isRequired, jika required dan tidak diisi valueny maka akan keluar error message seperti form
496
-
497
- Version 2.2.10
498
- 1. isRequired, jika required dan tidak diisi valueny maka akan muncul pop up message
499
-
500
- Version 2.2.9
501
- 1. Add joinType
502
-
503
- Version 2.2.8
504
- 1. update ReadMe
505
-
506
- Version 2.2.7
507
- 1. join query dengan API luar
508
- 2. update InputSearchObj
509
-
510
- Version 2.2.4
511
- 1. TranslateModule
512
-
513
- Version 2.2.3
514
- 1. bug onChangeEvent
515
-
516
- Version 2.2.2
517
- 1. filterPropName
518
-
519
- Version 2.2.1
520
- 1. merapikan reset
521
-
522
- Version 2.2.0
523
- 1. ucsearch support ucreport
524
-
525
- Version 2.1.5
526
- 1. Input isReport
527
- 2. Output genRpt
528
-
529
- Version 2.1.4
530
- 1. typo
531
-
532
- Version 2.1.3
533
- 1. attribute data-name
534
-
535
- Version 2.1.2
536
- 1. dropdown if only 1 option show label only
537
-
538
- Version 2.1.0
539
- 1. update option all ddl
540
-
541
- Version 2.0.73
542
- 1. change property json : isSelectOne to ddlType
543
-
544
- Version 2.0.72
545
- 1. type currency
546
-
547
- Version 2.0.50
548
- 1. rollback
549
-
550
- Version 2.0.49
551
- 1. form to div
552
-
553
- Version 2.0.48
554
- 1. keyup
555
-
556
- Version 2.0.47
557
- 1. rollback
558
-
559
- Version 2.0.46
560
- 1. Add type switch
561
-
562
- Version 2.0.37
563
- 1. search able to do like restriction
564
-
565
- Version 2.0.34
566
- 1. css title
567
-
568
- Version 2.0.31
569
- 1. hapus headerTitle
570
- 2. tambah sectionTitle di json
571
- 3. title jdi card title paging
572
-
573
- Version 2.0.30
574
- 1. header title in ucpaging
575
-
576
- Version 2.0.29
577
- 1. pageSize
578
-
579
- Version 2.0.28
580
- 1. fix value date ambil dari businessDt
581
-
582
- Version 2.0.27
583
- 1. fix bug whereValue undefined
584
-
585
- Version 2.0.26
586
- 1. update whereValue jadi list object {property, value}
587
-
588
- Version 2.0.25
589
- 1. tambahan input property
590
- - InputSearchObj.title
591
- - InputSearchObj.whereValue
592
-
593
- Version 2.0.24
594
- 1. fix onChangeEvent baca fullpath
595
-
596
- Version 2.0.23
597
- 1. fix logic date
598
-
599
- Version 2.0.22
600
- 1. fix date
601
-
602
- Version 2.0.20
603
- 1. input title
604
-
605
- Version 2.0.19
606
- 1. Orderby default
607
-
608
- Version 2.0.18
609
- 1. #UCSearchClick buat panggil click
610
-
611
- Version 2.0.17
612
- 1. dropdown bentuk path dan environment dalam object ddlEnvironments
613
-
614
- Version 2.0.16
615
- 1. tambah kondisi dropwdown isQueryIn, jika select all criteria nya dari list dropdown
616
-
617
- Version 2.0.14
618
- 1. Key Value
619
-
620
- Version 2.0.13
621
- 1. tambah ReturnObject di ResolveObj
622
-
623
- Version 2.0.12
624
- 1. tambah rowVersion
625
-
626
- Version 2.0.11
627
- 1. ubah response model
628
-
629
- Version 2.0.9
630
- 1. Update textbox tambah data restriction
631
-
632
- Version 2.0.8
633
- 1. Menambahkan Query String pada export Excel
634
-
635
- Version 2.0.7
636
- 1. Update validasi additional criteria
637
-
638
- Version 2.0.6
639
- 1. Update add criteria
640
-
641
- Version 2.0.5
642
- 1. Update add criteria
643
-
644
- Version 2.0.4
645
- 1. Update add criteria
646
-
647
- Version 2.0.3
648
- 1. change export data button icon
649
-
650
- Version 2.0.2
651
- 1. fix exportData show
652
-
653
- Version 2.0.1
654
- 1. add search by queryString
655
-
656
- Version 2.0.0
657
- 1. Update ReadMe
658
-
659
- Version 1.0.17
660
- 1. Update ReadMe
661
-
662
- Version 1.0.16
663
- 1. Update ReadMe
664
-
665
- Version 1.0.15
666
- 1. Update ReadMe
667
-
668
- Version 1.0.14
669
- 1. Update ReadMe
670
-
671
- Version 1.0.11
672
- 1. Tambahan FlaTModuleId
673
-
674
- Version 1.0.10
675
- 1. Tambahan Encapsulation
676
-
677
- Version 1.0.9
678
- 1. ubah icon subsection
679
-
680
- Version 1.0.8
681
- 1. Ubah Search Component agar dapat di tambahkan criteria (contoh: refMasterTypeCode)
682
-
683
- Version 1.0.7
684
- 1. ubah search component ketika menerima url environment
685
-
686
- Version 1.0.6
687
- 1. ubah search title position, dan subsection icon
688
-
689
- Version 1.0.5
690
- 1. reset input search, merapikan coding
691
-
692
- Version 1.0.4
693
- 1. addCritInput penjagaan undefined
694
-
695
- Version 1.0.2
696
- 1. Fix InputObj, filter with function
697
-
698
- Version 1.0.1
699
- 1. Added ReadMe
700
-
701
- ## Dependency Module
702
- import this module :
703
- - FormsModule
704
-
705
- ## Selector
706
- lib-ucsearch
707
-
708
- ## Input
709
- 1. searchInput : InputSearchObj (object) *mandatory
710
- 2. pageSize : default search pageSize
711
- 3. isReport : boolean // default false | for ucreport usage
712
- 3. showRptExecType: boolean // default false | for ucreport usage
713
-
714
- ## Output
715
- 1. result : Emitting event after search, return resultData of search paging
716
- 2. genRpt : { ExportType: number, showRptExecType: number, ElRef: ElementRef } // ucreport usage
717
- 3. reqGetAllData : Emitting event after search, return request for get all data
718
-
719
- ## Object property & JSON property
720
- InputSearchObj :
721
- - _url : search.json
722
- - enviromentUrl : environment path (foundation, setting, vendor)
723
- - title : title for section paging // *optional, if using same json for multiple component
724
- - apiQryPaging : search paging API path
725
- - listEnvironments : Array<EnvisObj> // set default envi url
726
- - whereValue :
727
- [
728
- {
729
- property: "IsActive",
730
- value: "true"
731
- },
732
- {
733
- property: "BizTmpltCode",
734
- value: "CF4W"
735
- }
736
- ] *optional // list for value in whereQuery
737
- - fromValue :
738
- [
739
- {
740
- {
741
- property: "CustId",
742
- value: "123"
743
- },
744
- {
745
- property: "AppId",
746
- value: "20"
747
- }
748
- }
749
- ] *optional // list for value in fromQuery
750
- - switchValue :
751
- [
752
- {
753
- property: "BizTmpltCode",
754
- value: "CF4W"
755
- }
756
- ] *optional // list value for headerList type switch
757
- - isJoinExAPI : boolean // to determine if query join external API
758
- - integrationObj : {// mandatory information that needed to be send if isJoinExAPI true
759
- baseUrl: environment url
760
- apiPath: routing url
761
- requestObj: request object for the external API
762
- leftColumnToJoin: querystring join query external API // written from the alias select
763
- from querystring
764
- rightColumnToJoin: query external API join querystring // written from the alias select
765
- from query external API
766
- joinType : string // determine join type (LEFT | default INNER) *optional
767
- } IntegrationObj (object)
768
- *notes : querystring and query external API cannot have the same alias in select querystring or returnObj external API
769
- - dataInput : alternative data supply; use ESModule import to load json data, then pass the value into here. will override http.get
770
-
771
- search.json :
772
- ``` javascript
773
- {
774
- "title" : "title", // Title paging
775
- "sectionTitle" : "title", // section title paging *optional, default title in section "paging"
776
- "exportExcel" : "false", // boolean: true|false
777
- "component" : [ // search criteria property
778
- {
779
- "type" : "textbox", // type input
780
- "label" : "search id", // label criteria name
781
- "name" : "searchId", // property search to backend
782
- "id" : "uniqueId", // bound the label with the input, when click label *optional
783
- "value" : "", // default value of input *optional
784
- "placeholder" : "placeholder", // *optional
785
- "datatype" : "text", // data type of input (text, numeric, date)
786
- "restriction" : "like", // restriction criteria for backend (like)
787
- "isRequired" : false, // boolean: true|false, if true will show pop message when input value empty
788
- "isCriteriaDataTable" : false, // mandatory, default false, filter criteria from datatable or not
789
- },
790
- {
791
- "type" : "textarea",
792
- "label" : "textarea",
793
- "name" : "textareaId",
794
- "id" : "uniqueId",
795
- "value" : "",
796
- "placeholder" : "",
797
- "datatype" : "text"
798
- },
799
- {
800
- "type" : "numeric",
801
- "label" : "numeric <=",
802
- "name" : "numericId",
803
- "id" : "uniqueId",
804
- "value" : "1",
805
- "restriction" : "lte", // restriction criteria for backend (lte, gte)
806
- "placeholder" : "",
807
- "datatype" : "numeric"
808
- },
809
- {
810
- "type" : "currency",
811
- "label" : "Money Amount",
812
- "name" : "currencyId",
813
- "id" : "uniqueId",
814
- "value" : "1",
815
- "restriction" : "eq",
816
- "placeholder" : "",
817
- "datatype" : "numeric",
818
- "isCustom" : "false" // boolean: true|false
819
- // setting currencyMask if isCustom true
820
- "thousands" : "," // string | separator
821
- "decimal" : "." // string | separator
822
- "align" : "right" // string | left,right
823
- "allowNegative" : "" // boolean: true|false
824
- "allowZero" : "" // boolean: true|false
825
- "precision" : "2" // number
826
- "nullable" : "" // boolean: true|false
827
- },
828
- {
829
- "type" : "datepicker",
830
- "label" : "Date From",
831
- "name" : "dateDt",
832
- "id" : "uniqueId", //*mandatory di ucReport
833
- "value" : "", // BD : set value base on BusinessDate. format: BD + (+|-) + number.
834
- "isTime" : "" // boolean: true|false
835
- "restriction" : "gte",
836
- "datatype" : "date",
837
- "minDate" : "2-1-2021", //format can be either, MM-dd-YYYY or dd-MMM-yyyy
838
- "maxDate" : "31-Mar-2021",
839
- "datepickerPair": "string" //date from and date to have a same value (for report only)
840
- },
841
- {
842
- "type" : "dropdown",
843
- "label" : "dropdown",
844
- "name" : "dropdownId",
845
- "id" : "uniqueId",
846
- "value" : "BD+", // BD : set value base on BusinessDate. format: BD + (+|-) + number(default 1).
847
- "datatype" : "date",
848
- "dtmType" : "month" // string: (month | year) format : "month"/"year" + (+-|-+|+|-) + number. generate list month/year base on number.
849
- "ddlType" : "all", // string: (one, all, blank) // (select one, select all, 'no select option') | default select all
850
- "items" : [ // hardcode the option list
851
- {
852
- "key" : "1",
853
- "value" : "Yes"
854
- },
855
- {
856
- "key" : "0",
857
- "value" : "No"
858
- }
859
- ],
860
- "isFromURL" : "true", // boolean: true|false, if true get the option list from backend
861
- "url" : "", // full path get keyValue API *mandatory, if isFromUrl true
862
- "itemsUrl" : [], // *mandatory if isFromUrl true, property to store option list from backend
863
- "criteriaPropName" : "typeCode", // additional criteria property *optional
864
- "criteriaPropValue" : "TYPE_CODE" // additional criteria value *optional
865
- },
866
- {
867
- "type" : "dropdown",
868
- "label" : "dropdown",
869
- "name" : "dropdownId",
870
- "id" : "uniqueId",
871
- "value" : "",
872
- "datatype" : "date",
873
- "ddlType" : "all", // string: (one, all, blank) // (select one, select all, 'no select option') | default select all
874
- "items" : [],
875
- "isEvent" : "true", // boolean: true|false, if true dropdown criteria affect other dropdown criteria
876
- "affectedFilter" : ["dropdownId", "searchId"], // affected filter check by name
877
- "filterPropName" : "Id", // string, request propName for ddl affectedFilter
878
- "isFromURL" : "true",
879
- "url" : "", // full path url api
880
- "path": "", // path api
881
- "criteriaPropName": "", // criteria property name
882
- "criteriaPropValue": "", // criteria value
883
- "itemsUrl" : [],
884
- "exclude" : [] // list value to exclude from list
885
- },
886
- {
887
- "type" : "dropdownSearch",
888
- "label" : "dropdown",
889
- "name" : "dropdownId",
890
- "value" : "",
891
- "descr" : "", // value yg tampilin di inputan dds(drop-down-search)
892
- "ddsType" : "true", // string: (one, all, blank) // (select one, select all, 'no select option') | default select all
893
- "placeholder": "FILTER",
894
- "size": 10, // height of dds, *mandatory
895
- "isListHide": true, // default setting, *mandatory
896
- "isFromURL": true,
897
- "isQueryIn": true,
898
- "environment": "", // key name from listEnvironments
899
- "path": "", // path api
900
- "items" : [],
901
- "itemsUrl" : [],
902
- "criteriaPropName": "", // criteria property name
903
- "criteriaPropValue": "", // criteria value
904
- "exclude" : [] // list value to exclude from list
905
-
906
- },
907
- {
908
- "type": "taskDefinitionKey",
909
- "label" : "taskDefinitionKey",
910
- "datatype": "text",
911
- "name" : "taskDefinitionKeyId",
912
- "id" : "uniqueId",
913
- "placeholder": "Placeholder",
914
- "isFromURL": true, //*mandatory
915
- "ddlType" : "one", // *mandatory string: one
916
- "path": "", // *mandatory path api
917
- "criteriaPropValue" : "TaskDefinitionKey" //field yang mau dicompare
918
- },
919
- {
920
- "type": "processKey",
921
- "label" : "processKey",
922
- "datatype": "text",
923
- "name" : "processKeyId",
924
- "id" : "uniqueId",
925
- "placeholder": "Placeholder",
926
- "isFromURL": true, //*mandatory
927
- "ddlType" : "one", // *mandatory string: one
928
- "path": "/RefMaster/GetListKeyValueActiveByCode", // *mandatory path api
929
- "criteriaPropName": "Code",
930
- "criteriaPropValue" : "PRCS_KEY_LEAD_CANCEL", //field yang mau dicompare
931
- "wfKeyFilter" : "ProcessKey"
932
- },
933
- {
934
- "type": "officeRoleCodes",
935
- "label" : "officeRoleCodes",
936
- "datatype": "text",
937
- "name" : "officeRoleCodesId",
938
- "id" : "uniqueId",
939
- "placeholder": "Placeholder",
940
- "isFromURL": true,
941
- "ddlType" : "all", // string: (one, all, blank) // (select one, select all, 'no select option') | default select all
942
- "isQueryIn": true, // boolean: true|false, if true and ddlType all then in list insert to criteria
943
- "path": "", // path api
944
- "isLockHo": false //boolean: true|false, if true then ddl value will be locked to Head Office only
945
- },
946
- {
947
- "label" : "label",
948
- "type" : "claim",
949
- "ddlType" : "all", // string: (one, all, blank) // (select one, select all, 'no select option') | default select all
950
- "isCriteriaDataTable" : false, // mandatory, default false, filter criteria from datatable or not
951
- },
952
- {
953
- "type" : "switch",
954
- "case" : [ // list of case
955
- {
956
- "conditions" : [ // list of conditions
957
- {
958
- "property" : "type", // property for condition checking
959
- "value" : "EXE", // value to check
960
- "restriction" : "EQ" // condition restrictions (EQ, NEQ, GT, GTE, LT, LTE | default EQ) *optional
961
- }
962
- ],
963
- "result" : { // result of this case
964
- "type": "textbox", // type like bodyList : text,decimal,date,link,boolean
965
- "label" : "Action",
966
- "datatype" : "text",
967
- "name" : "dateDt",
968
- "id" : "uniqueId",
969
- "value" : "",
970
- "restriction" : "gte"
971
- },
972
- "isHide" : true
973
- }
974
- ]
975
- }
976
- ],
977
- "querystring": { // query data by sql
978
- "select": "", // ex: "SELECT APP_ID AS appId, IS_ACTIVE AS isActive" *must use alias, field to select first must be the first row of grid
979
- "from": "", // ex: "FROM dbo.APP WITH(NOLOCK)" *don't forget WITH(NOLOCK), INNER JOIN, DBO.
980
- "where": "", // ex: "WHERE IS_ACTIVE = 1"
981
- "where": "", // where when using whereValue, ex: "WHERE IS_ACTIVE = {0}" *must use whereValue
982
- // where untuk string/Date -> N'{0}', int -> {0}
983
- "groupby": "", // ex: "GROUP BY ....."
984
- },
985
- "orderby": {
986
- "key": "A.APP_ID", // sort by name
987
- "value": "true" // boolean: true|false, true|false = ASC|DESC
988
- }
989
- }
990
- }
991
- ```
992
- ## Code scaffolding
993
-
994
- Run `ng generate component component-name --project UCSearch` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project UCSearch`.
995
- > Note: Don't forget to add `--project UCSearch` or else it will be added to the default project in your `angular.json` file.
996
-
997
- ## Build
998
-
999
- Run `ng build UCSearch` to build the project. The build artifacts will be stored in the `dist/` directory.
1000
-
1001
- ## Publishing
1002
-
1003
- After building your library with `ng build UCSearch`, go to the dist folder `cd dist/ucsearch` and run `npm publish`.
1004
-
1005
- ## Running unit tests
1006
-
1007
- Run `ng test UCSearch` to execute the unit tests via [Karma](https://karma-runner.github.io).
1008
-
1009
- ## Further help
1010
-
1011
- To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).
1
+ # UCSearch
2
+
3
+ This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 13.0.0.
4
+
5
+ ## Bootstrap 5 Compatibility
6
+
7
+ ✅ **Fully Compatible with Bootstrap 5**
8
+
9
+ This component has been migrated from Bootstrap 3 to Bootstrap 5 and includes:
10
+
11
+ - Updated CSS classes: `panel` → `card`, `btn-primary` → `btn btn-primary`
12
+ - Modern responsive design with Bootstrap 5 grid system
13
+ - Enhanced form controls using `form-control` and `form-select`
14
+ - Improved button styling with outline variants (`btn-outline-*`)
15
+ - Better accessibility with ARIA attributes
16
+
17
+ ### Migration Summary
18
+
19
+ - **Bootstrap 3 Patterns Migrated**: 6 patterns including buttons, grid, panels, and forms
20
+ - **Bootstrap 5 Features Added**: Cards, modern form controls, utility classes
21
+ - **Migration Priority**: HIGH (completed)
22
+
23
+ ## Version
24
+
25
+ notes: new ui under canary.x tags
26
+
27
+ Version 3.8.18
28
+
29
+ 1. add default value option first day and last day of month for search type datepicker
30
+
31
+ Version 3.8.17
32
+
33
+ 1. add showRptExecType input to show generate report execution type input
34
+
35
+ Version 3.8.16
36
+
37
+ 1. undo fix checkNumericPair to read value from form - will rework later
38
+ 2. remove trailing `\` if restriction is LIKE
39
+
40
+ Version 3.8.15
41
+
42
+ 1. add ? when accessing experimental value from environment
43
+
44
+ Version 3.8.14
45
+
46
+ 1. add disabled button search when criteria not ready
47
+ 2. fix checkNumericPair to read value from form
48
+
49
+ Version 3.8.13
50
+
51
+ 1. add input useOthersSelection for search type ddl
52
+
53
+ Version 3.8.12
54
+
55
+ 1. fix set task definition key or process key to integration object on search when only has one option
56
+
57
+ Version 3.8.11
58
+
59
+ 1. fix affectedCriteria for lookup
60
+
61
+ Version 3.8.10
62
+
63
+ 1. add affectedfilter for lookup
64
+ 2. expose search paging via `notify` input
65
+
66
+ Version 3.8.9
67
+
68
+ 1. add additional property (formRaw) when emit genRpt
69
+
70
+ Version 3.8.8
71
+
72
+ 1. fix datetimeService.GetNewDate to always return new Date()
73
+
74
+ Version 3.8.7
75
+
76
+ 1. add `UcsearchFormService`. Use `getform()` to get FormGroup / form value from UcSearch
77
+
78
+ Version 3.8.6
79
+
80
+ 1. add `isLockHo` in input type `officeRoleCodes`
81
+
82
+ Version 3.8.5
83
+
84
+ 1. fix lookup circular deps
85
+ 2. fix behavior `enter` when isReport is true
86
+
87
+ Version 3.8.4
88
+
89
+ 1. add support restriction like for ddl
90
+
91
+ Version 3.8.3
92
+
93
+ 1. change form.get to form.controls[_control_name_]
94
+
95
+ Version 3.8.2
96
+
97
+ 1. remove unnecessary p tag
98
+
99
+ Version 3.8.1
100
+
101
+ 1. support 'useFirstValue' option for search type dropdown - will select the first value as default value
102
+ 2. fix input type currency dealing with multiple same name
103
+
104
+ Version 3.8.0
105
+
106
+ 1. support search type `datepicker` to using ucdatepicker when environment.experimental.useNewDatepicker set to true
107
+ 2. fix minor bug related to search type `datepicker`
108
+ 3. fix bug related to search type `time` when using timepair
109
+ 4. fix minor bug related to seatch type `blank`
110
+
111
+ Version 3.7.12
112
+
113
+ 1. fix typo function
114
+
115
+ Version 3.7.11
116
+
117
+ 1. fix data not set properly for where and from value
118
+ 2. fix value not patch properly for search component type dropdown
119
+
120
+ Version 3.7.10
121
+
122
+ 1. add search type `time`. will bind to assigned datepicker when timePair not empty
123
+
124
+ Version 3.7.9
125
+
126
+ 1. fix lookup when empty
127
+ 2. fix when restriction is undefined for type datepicker
128
+
129
+ Version 3.7.8
130
+
131
+ 1. add input type `month` and `year`
132
+
133
+ Version 3.7.7
134
+
135
+ 1. fix isolated dictionaries - will save to dicts when request only one parameter
136
+
137
+ Version 3.7.6
138
+
139
+ 1. fix numeric default value
140
+
141
+ Version 3.7.5
142
+
143
+ 1. fix numeric and currency attribute name for search
144
+
145
+ Version 3.7.4
146
+
147
+ 1. add validation min/max for type numeric and currency
148
+ 2. fix datepicker attribute name for search
149
+
150
+ Version 3.7.3
151
+
152
+ 1. fix Show Errors: Migrated all form control error handling to utilize Reactive Forms, ensuring consistent error display and handling.
153
+ 2. fix Dynamic Date Boundaries: Resolved issue where setting min/max values for dynamic date inputs would incorrectly affect themselves.
154
+ 3. add Support for Multiple Parameters in Affected Dropdowns: Implemented support for passing multiple parameters via isolated dictionaries. These dictionaries capture dropdownlist data from the previous search component, enabling better control over dropdown interactions.
155
+
156
+ Version 3.7.2
157
+
158
+ 1. enhance dynamic date min/max via datepickerPair -> now datepickerPair can be set to 1 variable act as base value for min/max with the value of the same datepickerPair
159
+ 2. add option to exclude input from criteria using `excludeFromCrit` option
160
+
161
+ Version 3.7.1
162
+
163
+ 1. support multiple parameter for affected dropdown
164
+ 2. support dynamic date min/max via datepickerPair
165
+
166
+ Version 3.7.0
167
+
168
+ 1. add support uclookup on search component
169
+
170
+ Version 3.6.5
171
+
172
+ 1. fix export file data - data type boolean will convert into `YES` and `NO`
173
+
174
+ Version 3.6.4
175
+
176
+ 1. fix export file data - now data exported with the same order as on grid UI
177
+
178
+ Version 3.6.3
179
+
180
+ 1. Migrate dropdown popup to ngbDropdown
181
+
182
+ Version 3.6.2
183
+
184
+ 1. fix date range guard validation
185
+
186
+ Version 3.6.1
187
+
188
+ 1. add action to export list on each property value
189
+
190
+ Version 3.6.0
191
+
192
+ 1. add sequential export file
193
+
194
+ Version 3.5.14
195
+
196
+ 1. fix parse currency to compare
197
+
198
+ Version 3.5.13
199
+
200
+ 1. add option `keepDdl` - will make dropdown still a dropdown despite there were only one data in ddl
201
+
202
+ Version 3.5.12
203
+
204
+ 1. remove validation `restriction` for min/max date. will set the min/max date even when `restriction` is undefined
205
+
206
+ Version 3.5.11
207
+
208
+ 1. add validation min / max by numericpair (will compare date to the same numericpair depends on lte or gte)
209
+
210
+ Version 3.5.10
211
+
212
+ 1. fix min / max date validation
213
+
214
+ Version 3.5.9
215
+
216
+ 1. fix min / max date validation
217
+ 2. add validation min / max by datepickerpair (will compare date to the same datepickerpair depends on lte or gte)
218
+
219
+ Version 3.5.8
220
+
221
+ 1. fix dropdown. will send value as criteria if there's only one option inside dropdown
222
+
223
+ Version 3.5.7
224
+
225
+ 1. add support uc-directive-validate-date
226
+
227
+ Version 3.5.6
228
+
229
+ 1. add support custom object, key, and value name for dropdown - will default to `ReturnObject`, `Key`, and `Value` respectively
230
+
231
+ Version 3.5.5
232
+
233
+ 1. handle if response data null
234
+
235
+ Version 3.5.4
236
+
237
+ 1. fix export type col length
238
+ 2. configurable list inside export as button
239
+
240
+ Version 3.5.3
241
+
242
+ 1. fix calling getQueryParams (ngx-router)
243
+
244
+ Version 3.5.2
245
+
246
+ 1. fix parameter when calling getQueryParams (ngx-router)
247
+
248
+ Version 3.5.1
249
+
250
+ 1. add support fe-core for ngx-router
251
+
252
+ Version 3.5.0
253
+
254
+ 1. add feature to set where value from the search component value - by name property
255
+
256
+ Version 3.4.10
257
+
258
+ 1. add support autofill for type dropdownlist
259
+ 2. add support autofill source from dicts
260
+
261
+ Version 3.4.9
262
+
263
+ 1. add support for multiple request object for dropdown
264
+ 2. add support for request object get data from useraccess
265
+
266
+ Version 3.4.8
267
+
268
+ 1. add clear default value on focus input currency
269
+
270
+ Version 3.4.7
271
+
272
+ 1. fix guard clause for orderby
273
+
274
+ Version 3.4.6
275
+
276
+ 1. uppercase value on autofill
277
+
278
+ Version 3.4.5
279
+
280
+ 1. fix affected filter when set back to all
281
+
282
+ Version 3.4.4
283
+
284
+ 1. add placeholder
285
+
286
+ Version 3.4.3
287
+
288
+ 1. change font size
289
+ 2. change dropdown icon
290
+
291
+ Version 3.4.2
292
+
293
+ 1. change font color
294
+
295
+ Version 3.4.1
296
+
297
+ 1. add option on/off uppercase for search input
298
+
299
+ Version 3.4.0
300
+
301
+ 1. add option useraccess for autofill source
302
+ 2. add isReadonly config
303
+
304
+ Version 3.3.3
305
+
306
+ 1. fix subsection title
307
+
308
+ Version 3.3.2
309
+
310
+ 1. add button hover
311
+
312
+ Version 3.3.1
313
+
314
+ 1. Update UI/UX padding
315
+
316
+ Version 3.3.0
317
+
318
+ 1. Update UI/UX
319
+ 2. support dropdownlist criteria from queryparam
320
+
321
+ Version 3.2.0
322
+
323
+ 1. add support for exclude export list. user can select exclude data to display on excel
324
+
325
+ Version 3.1.1
326
+
327
+ 1. change copy object from shallow copy (spread) to deep copy (JSON.parse(JSON.stringify)). notes structured clone not available as for TS version < 4.7
328
+
329
+ Version 3.1.0
330
+
331
+ 1. add support for additional export list. user can select additional data to display on excel when doing export other than data displayed on grid
332
+
333
+ Version 3.0.8
334
+
335
+ 1. add guard clause for orderby
336
+
337
+ Version 3.0.7
338
+
339
+ 1. fix guard clause for dataInput on export file
340
+
341
+ Version 3.0.5
342
+
343
+ 1. fix dataInput undefined
344
+
345
+ Version 3.0.4
346
+
347
+ 1. fix dataInput
348
+
349
+ Version 3.0.3
350
+
351
+ 1. fix error when set title
352
+
353
+ Version 3.0.2
354
+
355
+ 1. Fix bug search addToTemp, data not filtered
356
+
357
+ Version 3.0.1
358
+
359
+ 1. update readme
360
+
361
+ Version 3.0.0
362
+
363
+ 1. Fix versioning for angular 13
364
+ 2. support data input
365
+
366
+ Version 2.9.23 (angular 13) & 2.13.6 (angular 7)
367
+
368
+ 1. Fix bug error ketika isSearched true
369
+
370
+ Version 2.9.22 (angular 13) & 2.13.5 (angular 7)
371
+
372
+ 1. Fix bug ketika melakukan sort, hasil table berubah sesuai dengan crit. hasil table berubah jika hanya tombol search diklik
373
+
374
+ Version 2.9.21 (angular 13) & 2.13.4 (angular 7)
375
+
376
+ 1. add option autofill for auto input based on source
377
+
378
+ Version 2.9.20 (angular 13)
379
+
380
+ 1. add option export file as csv and json
381
+ 2. Fix bug ketika export excel untuk type action - selain button / icon
382
+
383
+ Version 2.9.19 (angular 13)
384
+
385
+ 1. Fix header in export excel - nama header dalam file excel akan sesuai dengan nama header pada gridview
386
+
387
+ Version 2.9.18 (angular 13)
388
+
389
+ 1. Fix bug ketika export excel untuk type action
390
+
391
+ Version 2.9.17 (angular 13)
392
+
393
+ 1. Export excel button will appear if only user has click search button.
394
+ 2. Export excel data will display the same data as grid view.
395
+ 3. Export excel file name will adjust the json file title.
396
+
397
+ Version 2.9.16 (angular 13)
398
+
399
+ 1. bug fix - type numeric untuk value > 1000
400
+
401
+ Version 2.9.15 (angular 13)
402
+
403
+ 1. bug fix - check required when generate report
404
+
405
+ Version 2.9.14 (angular 13) & 2.13.3 (angular 7)
406
+
407
+ 1. add option on ExportTypeList for Justify PDF
408
+ 2. remove option XLS & DOC from ExportTypeList
409
+
410
+ Version 2.9.13 (angular 13) & 2.13.2 (angular 7)
411
+
412
+ 1. tambah penjagaan criteria ketika export excel
413
+
414
+ Version 2.9.11
415
+
416
+ 1. tambah penjagaan check gte/lte/gt/lt
417
+
418
+ Version 2.9.10
419
+
420
+ 1. kasih penjagaan check gte/lte/gt/lt
421
+
422
+ Version 2.9.9
423
+
424
+ 1. add validation check gte/lte/gt/lt if numeric
425
+
426
+ Version 2.13.1
427
+
428
+ 1. add validation buat numeric, from gbs > dari to
429
+
430
+ Version 2.12.1
431
+
432
+ 1. wfKeyFilter harus string with split delimiter (xania;yoan;apsari)
433
+
434
+ Version 2.11.28
435
+
436
+ 1. async ngOnInit, initiateForm, reset
437
+
438
+ Version 2.11.26
439
+
440
+ 1. type dropdownsearch
441
+ 1.
442
+ 1.
443
+ 1.
444
+
445
+ Version 2.9.0
446
+
447
+ 1. Update new attribute readonly buat datepicker
448
+
449
+ Version 2.8.0
450
+
451
+ 1. restriction tidak trigger checkInputDate
452
+
453
+ Version 2.7.0
454
+
455
+ 1. Tambah attribute data-numericpair
456
+
457
+ Version 2.6.0
458
+
459
+ 1. Hapus logic skip untuk type "officeRoleCodes"
460
+
461
+ Version 2.5.3
462
+
463
+ 1. Fix Bug Reset Report Type jadi kosong
464
+
465
+ Version 2.5.2
466
+
467
+ 1. Tambah attribute data-datepickerpair
468
+
469
+ Version 2.5.1
470
+
471
+ 1. Tambah output buat emit request get all datanya
472
+
473
+ Version 2.4.1
474
+
475
+ 1. Fix condition affected value punya affected value
476
+
477
+ Version 2.3.8
478
+
479
+ 1. Fix condition affected value punya affected value
480
+
481
+ Version 2.3.7
482
+
483
+ 1. Update condition affected value punya affected value
484
+
485
+ Version 2.3.6
486
+
487
+ 1. LOGGING buat CMS-119
488
+
489
+ Version 2.3.5
490
+
491
+ 1. LOGGING buat CMS-119
492
+
493
+ Version 2.3.4
494
+
495
+ 1. LOGGING buat CMS-119
496
+
497
+ Version 2.3.3
498
+
499
+ 1. LOGGING buat CMS-119
500
+
501
+ Version 2.3.2
502
+
503
+ 1. Test \*
504
+
505
+ Version 2.3.1
506
+
507
+ 1. update folder/file name to lower-case
508
+
509
+ Version 2.3.0
510
+
511
+ 1. Hapus penggunaan ddlEnvironments
512
+
513
+ Version 2.2.64
514
+
515
+ 1. Bug fixing ucsearch
516
+
517
+ Version 2.2.63
518
+
519
+ 1. logging
520
+
521
+ Version 2.2.62
522
+
523
+ 1. logging
524
+
525
+ Version 2.2.61
526
+
527
+ 1. logging
528
+
529
+ Version 2.2.60
530
+
531
+ 1. Bug fixing ucsearch
532
+
533
+ Version 2.2.59
534
+
535
+ 1. Bug fixing ucsearch
536
+
537
+ Version 2.2.58
538
+
539
+ 1. Bug fixing ucsearch
540
+
541
+ Version 2.2.57
542
+
543
+ 1. Menambah tipe ProcessKey
544
+
545
+ Version 2.2.56
546
+
547
+ 1. tambahan input property InputSearchObj.fromValue
548
+
549
+ Version 2.2.55
550
+
551
+ 1. isCriteriaDataTable pada type dropdown
552
+
553
+ Version 2.2.54
554
+
555
+ 1. setMonthDDL dropdown list + setDefaultValueYear + setDefaultValueMonth
556
+
557
+ Version 2.2.53
558
+
559
+ 1. isCriteriaDataTable pada type datetime
560
+
561
+ Version 2.2.52
562
+
563
+ 1. ucsearch bug when ddltype one
564
+
565
+ Version 2.2.51
566
+
567
+ 1. datepicker tambahan isTime fungsiny buat ubah date ada time
568
+
569
+ Version 2.2.50
570
+
571
+ 1. bug fixing Translate di button
572
+
573
+ Version 2.2.49
574
+
575
+ 1. rapihin text
576
+
577
+ Version 2.2.48
578
+
579
+ 1. bug fixing dropdown
580
+
581
+ Version 2.2.47
582
+
583
+ 1. taskDefinitionKey + officeRoleCodes bugV2
584
+
585
+ Version 2.2.45
586
+
587
+ 1. taskDefinitionKey + officeRoleCodes bug
588
+
589
+ Version 2.2.41
590
+
591
+ 1. onchangeEvent bug
592
+
593
+ Version 2.2.40
594
+
595
+ 1. tambah type taskDefinitionKey + officeRoleCodes
596
+
597
+ Version 2.2.38
598
+
599
+ 1. Tambah fitur exclude untuk dropdown
600
+
601
+ Version 2.2.37
602
+
603
+ 1. Tambah type claim
604
+ 2. CriteriaObj tambah property isCriteriaDataTable
605
+ 3.
606
+
607
+ Version 2.2.32
608
+
609
+ 1. using UcUpperCase
610
+
611
+ Version 2.2.29
612
+
613
+ 1. propname ddl bug, get from attribute
614
+
615
+ Version 2.2.26
616
+
617
+ 1. type dropdown new dtmType
618
+ 2. ddl type default value by BD
619
+
620
+ Version 2.2.25
621
+
622
+ 1. Fixed html for type numeric and datepicker
623
+ 2. Fixed validation for datepicker
624
+
625
+ Version 2.2.24
626
+
627
+ 1. ddl isEvent jika list 1 di trigger filter nya
628
+
629
+ Version 2.2.21
630
+
631
+ 1. Comment validation datepicker when click search
632
+
633
+ Version 2.2.20
634
+
635
+ 1. Add attr.label
636
+
637
+ Version 2.2.19
638
+
639
+ 1. Add Validation min max pada DatePicker
640
+ 2. Fixed patch default value
641
+ 3. Fixed patch value datepicker ketika lihat BusinessDate
642
+
643
+ Version 2.2.18
644
+
645
+ 1. fix export excel
646
+
647
+ Version 2.2.16
648
+
649
+ 1. fix datetime value BD
650
+
651
+ Version 2.2.15
652
+
653
+ 1. reset with viewchild
654
+
655
+ Version 2.2.14
656
+
657
+ 1. listEnvironments, setting urlenvi in json
658
+
659
+ Version 2.2.12
660
+
661
+ 1. hapus logic popup message jika required
662
+
663
+ Version 2.2.11
664
+
665
+ 1. isRequired, jika required dan tidak diisi valueny maka akan keluar error message seperti form
666
+
667
+ Version 2.2.10
668
+
669
+ 1. isRequired, jika required dan tidak diisi valueny maka akan muncul pop up message
670
+
671
+ Version 2.2.9
672
+
673
+ 1. Add joinType
674
+
675
+ Version 2.2.8
676
+
677
+ 1. update ReadMe
678
+
679
+ Version 2.2.7
680
+
681
+ 1. join query dengan API luar
682
+ 2. update InputSearchObj
683
+
684
+ Version 2.2.4
685
+
686
+ 1. TranslateModule
687
+
688
+ Version 2.2.3
689
+
690
+ 1. bug onChangeEvent
691
+
692
+ Version 2.2.2
693
+
694
+ 1. filterPropName
695
+
696
+ Version 2.2.1
697
+
698
+ 1. merapikan reset
699
+
700
+ Version 2.2.0
701
+
702
+ 1. ucsearch support ucreport
703
+
704
+ Version 2.1.5
705
+
706
+ 1. Input isReport
707
+ 2. Output genRpt
708
+
709
+ Version 2.1.4
710
+
711
+ 1. typo
712
+
713
+ Version 2.1.3
714
+
715
+ 1. attribute data-name
716
+
717
+ Version 2.1.2
718
+
719
+ 1. dropdown if only 1 option show label only
720
+
721
+ Version 2.1.0
722
+
723
+ 1. update option all ddl
724
+
725
+ Version 2.0.73
726
+
727
+ 1. change property json : isSelectOne to ddlType
728
+
729
+ Version 2.0.72
730
+
731
+ 1. type currency
732
+
733
+ Version 2.0.50
734
+
735
+ 1. rollback
736
+
737
+ Version 2.0.49
738
+
739
+ 1. form to div
740
+
741
+ Version 2.0.48
742
+
743
+ 1. keyup
744
+
745
+ Version 2.0.47
746
+
747
+ 1. rollback
748
+
749
+ Version 2.0.46
750
+
751
+ 1. Add type switch
752
+
753
+ Version 2.0.37
754
+
755
+ 1. search able to do like restriction
756
+
757
+ Version 2.0.34
758
+
759
+ 1. css title
760
+
761
+ Version 2.0.31
762
+
763
+ 1. hapus headerTitle
764
+ 2. tambah sectionTitle di json
765
+ 3. title jdi card title paging
766
+
767
+ Version 2.0.30
768
+
769
+ 1. header title in ucpaging
770
+
771
+ Version 2.0.29
772
+
773
+ 1. pageSize
774
+
775
+ Version 2.0.28
776
+
777
+ 1. fix value date ambil dari businessDt
778
+
779
+ Version 2.0.27
780
+
781
+ 1. fix bug whereValue undefined
782
+
783
+ Version 2.0.26
784
+
785
+ 1. update whereValue jadi list object {property, value}
786
+
787
+ Version 2.0.25
788
+
789
+ 1. tambahan input property
790
+ - InputSearchObj.title
791
+ - InputSearchObj.whereValue
792
+
793
+ Version 2.0.24
794
+
795
+ 1. fix onChangeEvent baca fullpath
796
+
797
+ Version 2.0.23
798
+
799
+ 1. fix logic date
800
+
801
+ Version 2.0.22
802
+
803
+ 1. fix date
804
+
805
+ Version 2.0.20
806
+
807
+ 1. input title
808
+
809
+ Version 2.0.19
810
+
811
+ 1. Orderby default
812
+
813
+ Version 2.0.18
814
+
815
+ 1. #UCSearchClick buat panggil click
816
+
817
+ Version 2.0.17
818
+
819
+ 1. dropdown bentuk path dan environment dalam object ddlEnvironments
820
+
821
+ Version 2.0.16
822
+
823
+ 1. tambah kondisi dropwdown isQueryIn, jika select all criteria nya dari list dropdown
824
+
825
+ Version 2.0.14
826
+
827
+ 1. Key Value
828
+
829
+ Version 2.0.13
830
+
831
+ 1. tambah ReturnObject di ResolveObj
832
+
833
+ Version 2.0.12
834
+
835
+ 1. tambah rowVersion
836
+
837
+ Version 2.0.11
838
+
839
+ 1. ubah response model
840
+
841
+ Version 2.0.9
842
+
843
+ 1. Update textbox tambah data restriction
844
+
845
+ Version 2.0.8
846
+
847
+ 1. Menambahkan Query String pada export Excel
848
+
849
+ Version 2.0.7
850
+
851
+ 1. Update validasi additional criteria
852
+
853
+ Version 2.0.6
854
+
855
+ 1. Update add criteria
856
+
857
+ Version 2.0.5
858
+
859
+ 1. Update add criteria
860
+
861
+ Version 2.0.4
862
+
863
+ 1. Update add criteria
864
+
865
+ Version 2.0.3
866
+
867
+ 1. change export data button icon
868
+
869
+ Version 2.0.2
870
+
871
+ 1. fix exportData show
872
+
873
+ Version 2.0.1
874
+
875
+ 1. add search by queryString
876
+
877
+ Version 2.0.0
878
+
879
+ 1. Update ReadMe
880
+
881
+ Version 1.0.17
882
+
883
+ 1. Update ReadMe
884
+
885
+ Version 1.0.16
886
+
887
+ 1. Update ReadMe
888
+
889
+ Version 1.0.15
890
+
891
+ 1. Update ReadMe
892
+
893
+ Version 1.0.14
894
+
895
+ 1. Update ReadMe
896
+
897
+ Version 1.0.11
898
+
899
+ 1. Tambahan FlaTModuleId
900
+
901
+ Version 1.0.10
902
+
903
+ 1. Tambahan Encapsulation
904
+
905
+ Version 1.0.9
906
+
907
+ 1. ubah icon subsection
908
+
909
+ Version 1.0.8
910
+
911
+ 1. Ubah Search Component agar dapat di tambahkan criteria (contoh: refMasterTypeCode)
912
+
913
+ Version 1.0.7
914
+
915
+ 1. ubah search component ketika menerima url environment
916
+
917
+ Version 1.0.6
918
+
919
+ 1. ubah search title position, dan subsection icon
920
+
921
+ Version 1.0.5
922
+
923
+ 1. reset input search, merapikan coding
924
+
925
+ Version 1.0.4
926
+
927
+ 1. addCritInput penjagaan undefined
928
+
929
+ Version 1.0.2
930
+
931
+ 1. Fix InputObj, filter with function
932
+
933
+ Version 1.0.1
934
+
935
+ 1. Added ReadMe
936
+
937
+ ## Bootstrap 5 Features
938
+
939
+ ### CSS Classes Used
940
+
941
+ This component utilizes the following Bootstrap 5 classes:
942
+
943
+ ```scss
944
+ // Layout & Grid
945
+ .col-* // Responsive grid columns
946
+ .col-md-* // Medium breakpoint columns
947
+ .card // Replaces .panel
948
+ .card-body // Replaces .panel-body
949
+
950
+ // Forms
951
+ .form-control // Enhanced form inputs
952
+ .form-select // Modern select dropdowns
953
+ .btn // Button base class
954
+ .btn-outline-* // Outline button variants
955
+
956
+ // Utilities
957
+ .d-inline // Display utilities
958
+ .d-block // Block display
959
+ ```
960
+
961
+ ### Responsive Design
962
+
963
+ - **Mobile First**: Optimized for mobile devices with responsive breakpoints
964
+ - **Grid System**: Uses Bootstrap 5 flexbox grid with `.col-*` classes
965
+ - **Form Layout**: Responsive form controls that adapt to screen size
966
+
967
+ ### Accessibility Improvements
968
+
969
+ - **ARIA Labels**: Enhanced screen reader support
970
+ - **Keyboard Navigation**: Full keyboard accessibility
971
+ - **Focus Management**: Proper focus indicators and management
972
+ - **Form Validation**: Accessible error messaging
973
+
974
+ ## Dependency Module
975
+
976
+ import this module :
977
+
978
+ - FormsModule
979
+ - **Bootstrap 5**: Requires Bootstrap 5.3.0 or higher
980
+ - **@ng-bootstrap/ng-bootstrap**: For Bootstrap 5 Angular components
981
+
982
+ ## Selector
983
+
984
+ lib-ucsearch
985
+
986
+ ## Input
987
+
988
+ 1. searchInput : InputSearchObj (object) \*mandatory
989
+ 2. pageSize : default search pageSize
990
+ 3. isReport : boolean // default false | for ucreport usage
991
+ 4. showRptExecType: boolean // default false | for ucreport usage
992
+
993
+ ## Output
994
+
995
+ 1. result : Emitting event after search, return resultData of search paging
996
+ 2. genRpt : { ExportType: number, showRptExecType: number, ElRef: ElementRef } // ucreport usage
997
+ 3. reqGetAllData : Emitting event after search, return request for get all data
998
+
999
+ ## Object property & JSON property
1000
+
1001
+ InputSearchObj :
1002
+
1003
+ - \_url : search.json
1004
+ - enviromentUrl : environment path (foundation, setting, vendor)
1005
+ - title : title for section paging // \*optional, if using same json for multiple component
1006
+ - apiQryPaging : search paging API path
1007
+ - listEnvironments : Array<EnvisObj> // set default envi url
1008
+ - whereValue :
1009
+ [
1010
+ {
1011
+ property: "IsActive",
1012
+ value: "true"
1013
+ },
1014
+ {
1015
+ property: "BizTmpltCode",
1016
+ value: "CF4W"
1017
+ }
1018
+ ] \*optional // list for value in whereQuery
1019
+ - fromValue :
1020
+ [
1021
+ {
1022
+ {
1023
+ property: "CustId",
1024
+ value: "123"
1025
+ },
1026
+ {
1027
+ property: "AppId",
1028
+ value: "20"
1029
+ }
1030
+ }
1031
+ ] \*optional // list for value in fromQuery
1032
+ - switchValue :
1033
+ [
1034
+ {
1035
+ property: "BizTmpltCode",
1036
+ value: "CF4W"
1037
+ }
1038
+ ] \*optional // list value for headerList type switch
1039
+ - isJoinExAPI : boolean // to determine if query join external API
1040
+ - integrationObj : {// mandatory information that needed to be send if isJoinExAPI true
1041
+ baseUrl: environment url
1042
+ apiPath: routing url
1043
+ requestObj: request object for the external API
1044
+ leftColumnToJoin: querystring join query external API // written from the alias select
1045
+ from querystring
1046
+ rightColumnToJoin: query external API join querystring // written from the alias select
1047
+ from query external API
1048
+ joinType : string // determine join type (LEFT | default INNER) *optional
1049
+ } IntegrationObj (object)
1050
+ *notes : querystring and query external API cannot have the same alias in select querystring or returnObj external API
1051
+ - dataInput : alternative data supply; use ESModule import to load json data, then pass the value into here. will override http.get
1052
+
1053
+ search.json :
1054
+
1055
+ ```javascript
1056
+ {
1057
+ "title" : "title", // Title paging
1058
+ "sectionTitle" : "title", // section title paging *optional, default title in section "paging"
1059
+ "exportExcel" : "false", // boolean: true|false
1060
+ "component" : [ // search criteria property
1061
+ {
1062
+ "type" : "textbox", // type input
1063
+ "label" : "search id", // label criteria name
1064
+ "name" : "searchId", // property search to backend
1065
+ "id" : "uniqueId", // bound the label with the input, when click label *optional
1066
+ "value" : "", // default value of input *optional
1067
+ "placeholder" : "placeholder", // *optional
1068
+ "datatype" : "text", // data type of input (text, numeric, date)
1069
+ "restriction" : "like", // restriction criteria for backend (like)
1070
+ "isRequired" : false, // boolean: true|false, if true will show pop message when input value empty
1071
+ "isCriteriaDataTable" : false, // mandatory, default false, filter criteria from datatable or not
1072
+ },
1073
+ {
1074
+ "type" : "textarea",
1075
+ "label" : "textarea",
1076
+ "name" : "textareaId",
1077
+ "id" : "uniqueId",
1078
+ "value" : "",
1079
+ "placeholder" : "",
1080
+ "datatype" : "text"
1081
+ },
1082
+ {
1083
+ "type" : "numeric",
1084
+ "label" : "numeric <=",
1085
+ "name" : "numericId",
1086
+ "id" : "uniqueId",
1087
+ "value" : "1",
1088
+ "restriction" : "lte", // restriction criteria for backend (lte, gte)
1089
+ "placeholder" : "",
1090
+ "datatype" : "numeric"
1091
+ },
1092
+ {
1093
+ "type" : "currency",
1094
+ "label" : "Money Amount",
1095
+ "name" : "currencyId",
1096
+ "id" : "uniqueId",
1097
+ "value" : "1",
1098
+ "restriction" : "eq",
1099
+ "placeholder" : "",
1100
+ "datatype" : "numeric",
1101
+ "isCustom" : "false" // boolean: true|false
1102
+ // setting currencyMask if isCustom true
1103
+ "thousands" : "," // string | separator
1104
+ "decimal" : "." // string | separator
1105
+ "align" : "right" // string | left,right
1106
+ "allowNegative" : "" // boolean: true|false
1107
+ "allowZero" : "" // boolean: true|false
1108
+ "precision" : "2" // number
1109
+ "nullable" : "" // boolean: true|false
1110
+ },
1111
+ {
1112
+ "type" : "datepicker",
1113
+ "label" : "Date From",
1114
+ "name" : "dateDt",
1115
+ "id" : "uniqueId", //*mandatory di ucReport
1116
+ "value" : "", // BD : set value base on BusinessDate. format: BD + (+|-) + number.
1117
+ "isTime" : "" // boolean: true|false
1118
+ "restriction" : "gte",
1119
+ "datatype" : "date",
1120
+ "minDate" : "2-1-2021", //format can be either, MM-dd-YYYY or dd-MMM-yyyy
1121
+ "maxDate" : "31-Mar-2021",
1122
+ "datepickerPair": "string" //date from and date to have a same value (for report only)
1123
+ },
1124
+ {
1125
+ "type" : "dropdown",
1126
+ "label" : "dropdown",
1127
+ "name" : "dropdownId",
1128
+ "id" : "uniqueId",
1129
+ "value" : "BD+", // BD : set value base on BusinessDate. format: BD + (+|-) + number(default 1).
1130
+ "datatype" : "date",
1131
+ "dtmType" : "month" // string: (month | year) format : "month"/"year" + (+-|-+|+|-) + number. generate list month/year base on number.
1132
+ "ddlType" : "all", // string: (one, all, blank) // (select one, select all, 'no select option') | default select all
1133
+ "items" : [ // hardcode the option list
1134
+ {
1135
+ "key" : "1",
1136
+ "value" : "Yes"
1137
+ },
1138
+ {
1139
+ "key" : "0",
1140
+ "value" : "No"
1141
+ }
1142
+ ],
1143
+ "isFromURL" : "true", // boolean: true|false, if true get the option list from backend
1144
+ "url" : "", // full path get keyValue API *mandatory, if isFromUrl true
1145
+ "itemsUrl" : [], // *mandatory if isFromUrl true, property to store option list from backend
1146
+ "criteriaPropName" : "typeCode", // additional criteria property *optional
1147
+ "criteriaPropValue" : "TYPE_CODE" // additional criteria value *optional
1148
+ },
1149
+ {
1150
+ "type" : "dropdown",
1151
+ "label" : "dropdown",
1152
+ "name" : "dropdownId",
1153
+ "id" : "uniqueId",
1154
+ "value" : "",
1155
+ "datatype" : "date",
1156
+ "ddlType" : "all", // string: (one, all, blank) // (select one, select all, 'no select option') | default select all
1157
+ "items" : [],
1158
+ "isEvent" : "true", // boolean: true|false, if true dropdown criteria affect other dropdown criteria
1159
+ "affectedFilter" : ["dropdownId", "searchId"], // affected filter check by name
1160
+ "filterPropName" : "Id", // string, request propName for ddl affectedFilter
1161
+ "isFromURL" : "true",
1162
+ "url" : "", // full path url api
1163
+ "path": "", // path api
1164
+ "criteriaPropName": "", // criteria property name
1165
+ "criteriaPropValue": "", // criteria value
1166
+ "itemsUrl" : [],
1167
+ "exclude" : [] // list value to exclude from list
1168
+ },
1169
+ {
1170
+ "type" : "dropdownSearch",
1171
+ "label" : "dropdown",
1172
+ "name" : "dropdownId",
1173
+ "value" : "",
1174
+ "descr" : "", // value yg tampilin di inputan dds(drop-down-search)
1175
+ "ddsType" : "true", // string: (one, all, blank) // (select one, select all, 'no select option') | default select all
1176
+ "placeholder": "FILTER",
1177
+ "size": 10, // height of dds, *mandatory
1178
+ "isListHide": true, // default setting, *mandatory
1179
+ "isFromURL": true,
1180
+ "isQueryIn": true,
1181
+ "environment": "", // key name from listEnvironments
1182
+ "path": "", // path api
1183
+ "items" : [],
1184
+ "itemsUrl" : [],
1185
+ "criteriaPropName": "", // criteria property name
1186
+ "criteriaPropValue": "", // criteria value
1187
+ "exclude" : [] // list value to exclude from list
1188
+
1189
+ },
1190
+ {
1191
+ "type": "taskDefinitionKey",
1192
+ "label" : "taskDefinitionKey",
1193
+ "datatype": "text",
1194
+ "name" : "taskDefinitionKeyId",
1195
+ "id" : "uniqueId",
1196
+ "placeholder": "Placeholder",
1197
+ "isFromURL": true, //*mandatory
1198
+ "ddlType" : "one", // *mandatory string: one
1199
+ "path": "", // *mandatory path api
1200
+ "criteriaPropValue" : "TaskDefinitionKey" //field yang mau dicompare
1201
+ },
1202
+ {
1203
+ "type": "processKey",
1204
+ "label" : "processKey",
1205
+ "datatype": "text",
1206
+ "name" : "processKeyId",
1207
+ "id" : "uniqueId",
1208
+ "placeholder": "Placeholder",
1209
+ "isFromURL": true, //*mandatory
1210
+ "ddlType" : "one", // *mandatory string: one
1211
+ "path": "/RefMaster/GetListKeyValueActiveByCode", // *mandatory path api
1212
+ "criteriaPropName": "Code",
1213
+ "criteriaPropValue" : "PRCS_KEY_LEAD_CANCEL", //field yang mau dicompare
1214
+ "wfKeyFilter" : "ProcessKey"
1215
+ },
1216
+ {
1217
+ "type": "officeRoleCodes",
1218
+ "label" : "officeRoleCodes",
1219
+ "datatype": "text",
1220
+ "name" : "officeRoleCodesId",
1221
+ "id" : "uniqueId",
1222
+ "placeholder": "Placeholder",
1223
+ "isFromURL": true,
1224
+ "ddlType" : "all", // string: (one, all, blank) // (select one, select all, 'no select option') | default select all
1225
+ "isQueryIn": true, // boolean: true|false, if true and ddlType all then in list insert to criteria
1226
+ "path": "", // path api
1227
+ "isLockHo": false //boolean: true|false, if true then ddl value will be locked to Head Office only
1228
+ },
1229
+ {
1230
+ "label" : "label",
1231
+ "type" : "claim",
1232
+ "ddlType" : "all", // string: (one, all, blank) // (select one, select all, 'no select option') | default select all
1233
+ "isCriteriaDataTable" : false, // mandatory, default false, filter criteria from datatable or not
1234
+ },
1235
+ {
1236
+ "type" : "switch",
1237
+ "case" : [ // list of case
1238
+ {
1239
+ "conditions" : [ // list of conditions
1240
+ {
1241
+ "property" : "type", // property for condition checking
1242
+ "value" : "EXE", // value to check
1243
+ "restriction" : "EQ" // condition restrictions (EQ, NEQ, GT, GTE, LT, LTE | default EQ) *optional
1244
+ }
1245
+ ],
1246
+ "result" : { // result of this case
1247
+ "type": "textbox", // type like bodyList : text,decimal,date,link,boolean
1248
+ "label" : "Action",
1249
+ "datatype" : "text",
1250
+ "name" : "dateDt",
1251
+ "id" : "uniqueId",
1252
+ "value" : "",
1253
+ "restriction" : "gte"
1254
+ },
1255
+ "isHide" : true
1256
+ }
1257
+ ]
1258
+ }
1259
+ ],
1260
+ "querystring": { // query data by sql
1261
+ "select": "", // ex: "SELECT APP_ID AS appId, IS_ACTIVE AS isActive" *must use alias, field to select first must be the first row of grid
1262
+ "from": "", // ex: "FROM dbo.APP WITH(NOLOCK)" *don't forget WITH(NOLOCK), INNER JOIN, DBO.
1263
+ "where": "", // ex: "WHERE IS_ACTIVE = 1"
1264
+ "where": "", // where when using whereValue, ex: "WHERE IS_ACTIVE = {0}" *must use whereValue
1265
+ // where untuk string/Date -> N'{0}', int -> {0}
1266
+ "groupby": "", // ex: "GROUP BY ....."
1267
+ },
1268
+ "orderby": {
1269
+ "key": "A.APP_ID", // sort by name
1270
+ "value": "true" // boolean: true|false, true|false = ASC|DESC
1271
+ }
1272
+ }
1273
+ }
1274
+ ```
1275
+
1276
+ ## Code scaffolding
1277
+
1278
+ Run `ng generate component component-name --project UCSearch` to generate a new component. You can also use `ng generate directive|pipe|service|class|guard|interface|enum|module --project UCSearch`.
1279
+
1280
+ > Note: Don't forget to add `--project UCSearch` or else it will be added to the default project in your `angular.json` file.
1281
+
1282
+ ## Build
1283
+
1284
+ Run `ng build UCSearch` to build the project. The build artifacts will be stored in the `dist/` directory.
1285
+
1286
+ ## Publishing
1287
+
1288
+ After building your library with `ng build UCSearch`, go to the dist folder `cd dist/ucsearch` and run `npm publish`.
1289
+
1290
+ ## Running unit tests
1291
+
1292
+ Run `ng test UCSearch` to execute the unit tests via [Karma](https://karma-runner.github.io).
1293
+
1294
+ ## Further help
1295
+
1296
+ To get more help on the Angular CLI use `ng help` or go check out the [Angular CLI README](https://github.com/angular/angular-cli/blob/master/README.md).