@adlfe/campaign-management-library 2.10.5 → 2.11.1

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 (18) hide show
  1. package/bundles/adlfe-campaign-management-library.umd.js +34 -6
  2. package/bundles/adlfe-campaign-management-library.umd.js.map +1 -1
  3. package/bundles/adlfe-campaign-management-library.umd.min.js +2 -2
  4. package/bundles/adlfe-campaign-management-library.umd.min.js.map +1 -1
  5. package/esm2015/environments/environment.js +3 -3
  6. package/esm2015/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.js +21 -3
  7. package/esm2015/lib/campaign-management/modules/new-campaign/new-campaign.component.js +7 -2
  8. package/esm2015/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.js +1 -2
  9. package/esm5/environments/environment.js +3 -3
  10. package/esm5/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.js +27 -3
  11. package/esm5/lib/campaign-management/modules/new-campaign/new-campaign.component.js +7 -2
  12. package/esm5/lib/campaign-management/modules/new-campaign/new-number-bases/new-number-bases.component.js +1 -2
  13. package/fesm2015/adlfe-campaign-management-library.js +28 -6
  14. package/fesm2015/adlfe-campaign-management-library.js.map +1 -1
  15. package/fesm5/adlfe-campaign-management-library.js +34 -6
  16. package/fesm5/adlfe-campaign-management-library.js.map +1 -1
  17. package/lib/campaign-management/modules/campaign-index/component/filter-in-list-of-campaign/filter-in-list-of-campaign.component.d.ts +6 -0
  18. package/package.json +2 -11
@@ -850,11 +850,11 @@
850
850
  }
851
851
  // 4. Cek Demo Dev secara spesifik
852
852
  else if (origin.includes('demo-dev')) {
853
- API_CONST = 'https://apibsp-dev.adlsandbox.net';
853
+ API_CONST = 'https://api-staging.neuapix.com';
854
854
  }
855
855
  // 5. Default (Localhost atau lainnya)
856
856
  else {
857
- API_CONST = 'https://apibsp-dev.adlsandbox.net';
857
+ API_CONST = 'https://api-staging.neuapix.com';
858
858
  }
859
859
  var environment = {
860
860
  production: false,
@@ -1620,8 +1620,11 @@
1620
1620
  function FilterInListOfCampaignComponent(apiAdapterService) {
1621
1621
  this.apiAdapterService = apiAdapterService;
1622
1622
  this.channelOption = PlatformOptionConst;
1623
+ this.filteredChannelOption = [];
1623
1624
  this.businessNameOption = [];
1625
+ this.filteredBusinessNameOption = [];
1624
1626
  this.statusOption = [];
1627
+ this.filteredStatusOption = [];
1625
1628
  this.templateOption = [];
1626
1629
  this.isHaveNextTemplateOption = true;
1627
1630
  this.isLoadingTemplateOption = false;
@@ -1632,6 +1635,8 @@
1632
1635
  }
1633
1636
  FilterInListOfCampaignComponent.prototype.ngOnInit = function () {
1634
1637
  this.statusOption = generateEnumOption(StatusCampaignEnum);
1638
+ this.filteredStatusOption = __spread(this.statusOption);
1639
+ this.filteredChannelOption = __spread(this.channelOption);
1635
1640
  this.initForm();
1636
1641
  this.getBusinessNameOptionService();
1637
1642
  };
@@ -1656,6 +1661,7 @@
1656
1661
  .executeApiRequest([], '/admin/client/all-with-child?pageNo=1&rowPerPage=1000', 'GET')
1657
1662
  .subscribe(function (res) {
1658
1663
  _this.businessNameOption = res.data;
1664
+ _this.filteredBusinessNameOption = __spread(_this.businessNameOption);
1659
1665
  });
1660
1666
  this.subscribers.push(subs);
1661
1667
  };
@@ -1704,6 +1710,24 @@
1704
1710
  this.pageNoTemplateOption = 1;
1705
1711
  this.getTemplateOptionService(searchValue);
1706
1712
  };
1713
+ FilterInListOfCampaignComponent.prototype.businessNameSearch = function (searchValue) {
1714
+ var value = searchValue.toLowerCase();
1715
+ this.filteredBusinessNameOption = this.businessNameOption.filter(function (option) {
1716
+ return option.name.toLowerCase().includes(value);
1717
+ });
1718
+ };
1719
+ FilterInListOfCampaignComponent.prototype.channelSearch = function (searchValue) {
1720
+ var value = searchValue.toLowerCase();
1721
+ this.filteredChannelOption = this.channelOption.filter(function (option) {
1722
+ return option.label.toLowerCase().includes(value);
1723
+ });
1724
+ };
1725
+ FilterInListOfCampaignComponent.prototype.statusSearch = function (searchValue) {
1726
+ var value = searchValue.toLowerCase();
1727
+ this.filteredStatusOption = this.statusOption.filter(function (option) {
1728
+ return option.label.toLowerCase().includes(value);
1729
+ });
1730
+ };
1707
1731
  FilterInListOfCampaignComponent.prototype.clearDate = function () {
1708
1732
  this.form.get('startDate').setValue(null);
1709
1733
  this.form.get('endDate').setValue(null);
@@ -1742,8 +1766,8 @@
1742
1766
  FilterInListOfCampaignComponent = __decorate([
1743
1767
  core.Component({
1744
1768
  selector: 'lib-filter-in-list-of-campaign',
1745
- template: "<p class=\"font-16px font-bold\">Filter</p>\r\n\r\n<form [formGroup]=\"form\"\r\n\tclass=\"contact-filter\">\r\n\t<div class=\"row\">\r\n\t\t<div class=\"col-md-12 col-12\">\r\n\t\t\t<div class=\"form-group\">\r\n\t\t\t\t<mat-form-field appearance=\"outline\"\r\n\t\t\t\t\tfloatLabel=\"always\"\r\n\t\t\t\t\tclass=\"w-70\">\r\n\t\t\t\t\t<mat-label>Business Name</mat-label>\r\n\r\n\t\t\t\t\t<mat-select placeholder=\"Select Business Name\"\r\n\t\t\t\t\t\tformControlName=\"businessName\">\r\n\t\t\t\t\t\t<mat-option value=\"\"> --- select none --- </mat-option>\r\n\t\t\t\t\t\t<mat-option *ngFor=\"let option of businessNameOption\"\r\n\t\t\t\t\t\t\t[value]=\"option.id\">\r\n\t\t\t\t\t\t\t{{ option.name }}\r\n\t\t\t\t\t\t</mat-option>\r\n\t\t\t\t\t</mat-select>\r\n\t\t\t\t</mat-form-field>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"col-md-12 col-12\">\r\n\t\t\t<div class=\"form-group\">\r\n\t\t\t\t<mat-form-field appearance=\"outline\"\r\n\t\t\t\t\tfloatLabel=\"always\"\r\n\t\t\t\t\tclass=\"w-70\">\r\n\t\t\t\t\t<mat-label>Channel</mat-label>\r\n\r\n\t\t\t\t\t<mat-select placeholder=\"Select the Channel\"\r\n\t\t\t\t\t\tformControlName=\"medium\">\r\n\t\t\t\t\t\t<mat-option value=\"\"> --- select none --- </mat-option>\r\n\t\t\t\t\t\t<mat-option *ngFor=\"let option of channelOption\"\r\n\t\t\t\t\t\t\t[value]=\"option.value\"\r\n\t\t\t\t\t\t\t(click)=\"getTemplateOptionService()\">\r\n\t\t\t\t\t\t\t{{ option.label }}\r\n\t\t\t\t\t\t</mat-option>\r\n\t\t\t\t\t</mat-select>\r\n\t\t\t\t</mat-form-field>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"col-md-12 col-12\">\r\n\t\t\t<div class=\"form-group\">\r\n\t\t\t\t<mat-form-field appearance=\"outline\"\r\n\t\t\t\t\tfloatLabel=\"always\"\r\n\t\t\t\t\tclass=\"w-100\">\r\n\t\t\t\t\t<mat-label class=\"asterix--after\">Template Name</mat-label>\r\n\r\n\t\t\t\t\t<mat-select matSelectInfiniteScroll\r\n\t\t\t\t\t\tformControlName=\"templateName\"\r\n\t\t\t\t\t\tplaceholder=\"Select template\"\r\n\t\t\t\t\t\t[complete]=\"isHaveNextTemplateOption === false\"\r\n\t\t\t\t\t\t[compareWith]=\"templateSelectedDisplay\"\r\n\t\t\t\t\t\t(infiniteScroll)=\"getNextTemplateBatch()\">\r\n\t\t\t\t\t\t<div style=\"margin: 20px\">\r\n\t\t\t\t\t\t\t<lib-search [placeholder]=\"'Search'\"\r\n\t\t\t\t\t\t\t\t[currentValue]=\"form?.get('templateName').value?.name\"\r\n\t\t\t\t\t\t\t\t(searchRes)=\"templateSearch($event)\"></lib-search>\r\n\t\t\t\t\t\t</div>\r\n\r\n\t\t\t\t\t\t<mat-option *ngFor=\"let option of templateOption\"\r\n\t\t\t\t\t\t\t[value]=\"option\">\r\n\t\t\t\t\t\t\t{{ option.name }}\r\n\t\t\t\t\t\t</mat-option>\r\n\t\t\t\t\t\t<mat-option *ngIf=\"isLoadingTemplateOption\">Loading...</mat-option>\r\n\t\t\t\t\t</mat-select>\r\n\t\t\t\t</mat-form-field>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"col-md-12 col-12\">\r\n\t\t\t<div class=\"form-group\">\r\n\t\t\t\t<mat-form-field appearance=\"outline\"\r\n\t\t\t\t\tfloatLabel=\"always\"\r\n\t\t\t\t\tclass=\"w-70\">\r\n\t\t\t\t\t<mat-label>Status</mat-label>\r\n\r\n\t\t\t\t\t<mat-select placeholder=\"Select the Status\"\r\n\t\t\t\t\t\tformControlName=\"status\">\r\n\t\t\t\t\t\t<mat-option value=\"\"> --- select none --- </mat-option>\r\n\t\t\t\t\t\t<mat-option *ngFor=\"let option of statusOption\"\r\n\t\t\t\t\t\t\t[value]=\"option.value\">\r\n\t\t\t\t\t\t\t{{ option.label }}\r\n\t\t\t\t\t\t</mat-option>\r\n\t\t\t\t\t</mat-select>\r\n\t\t\t\t</mat-form-field>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"col-md-12 col-12\">\r\n\t\t\t<div class=\"form-group\">\r\n\t\t\t\t<mat-form-field appearance=\"outline\"\r\n\t\t\t\t\tfloatLabel=\"always\"\r\n\t\t\t\t\tclass=\"w-100\">\r\n\t\t\t\t\t<mat-label> Start Date </mat-label>\r\n\t\t\t\t\t<input matInput\r\n\t\t\t\t\t\t[matDatepicker]=\"startDatePicker\"\r\n\t\t\t\t\t\tformControlName=\"startDate\"\r\n\t\t\t\t\t\tclass=\"mat-datepicker-input\"\r\n\t\t\t\t\t\t(dateChange)=\"validateBackDate()\" />\r\n\r\n\t\t\t\t\t<mat-datepicker-toggle matSuffix\r\n\t\t\t\t\t\t[for]=\"startDatePicker\"> </mat-datepicker-toggle>\r\n\t\t\t\t\t<mat-icon *ngIf=\"form.get('startDate').value\"\r\n\t\t\t\t\t\tmatDatepickerToggleIcon\r\n\t\t\t\t\t\t(click)=\"clearDate()\">clear</mat-icon>\r\n\t\t\t\t\t<mat-datepicker #startDatePicker></mat-datepicker>\r\n\t\t\t\t</mat-form-field>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div class=\"col-md-12 col-12\">\r\n\t\t\t<div class=\"form-group\">\r\n\t\t\t\t<mat-form-field appearance=\"outline\"\r\n\t\t\t\t\tfloatLabel=\"always\"\r\n\t\t\t\t\tclass=\"w-100\">\r\n\t\t\t\t\t<mat-label> End Date </mat-label>\r\n\t\t\t\t\t<input matInput\r\n\t\t\t\t\t\t[min]=\"form.get('startDate').value\"\r\n\t\t\t\t\t\t[matDatepicker]=\"endDatePicker\"\r\n\t\t\t\t\t\tformControlName=\"endDate\"\r\n\t\t\t\t\t\tclass=\"mat-datepicker-input\"\r\n\t\t\t\t\t\t(dateChange)=\"validateBackDate()\" />\r\n\r\n\t\t\t\t\t<mat-datepicker-toggle matSuffix\r\n\t\t\t\t\t\t[for]=\"endDatePicker\"> </mat-datepicker-toggle>\r\n\t\t\t\t\t<mat-icon *ngIf=\"form.get('endDate').value\"\r\n\t\t\t\t\t\tmatDatepickerToggleIcon\r\n\t\t\t\t\t\t(click)=\"clearDate()\">clear</mat-icon>\r\n\t\t\t\t\t<mat-datepicker #endDatePicker></mat-datepicker>\r\n\t\t\t\t</mat-form-field>\r\n\t\t\t</div>\r\n\t\t</div>\r\n\r\n\t\t<div style=\"display: flex; flex: 1; width: 100%\">\r\n\t\t\t<button mat-stroked-button\r\n\t\t\t\tcolor=\"primary-telin\"\r\n\t\t\t\tclass=\"telin-font-color w-48\"\r\n\t\t\t\tstyle=\"width: 100%; margin-bottom: 10px\"\r\n\t\t\t\t(click)=\"onReset()\">\r\n\t\t\t\tReset\r\n\t\t\t</button>\r\n\t\t</div>\r\n\t\t<div class=\"d-flex justify-content-between\">\r\n\t\t\t<button mat-stroked-button\r\n\t\t\t\tcolor=\"secondary-telin\"\r\n\t\t\t\tclass=\"w-48\"\r\n\t\t\t\t(click)=\"onCancel()\">\r\n\t\t\t\tCancel\r\n\t\t\t</button>\r\n\r\n\t\t\t<button mat-flat-button\r\n\t\t\t\tcolor=\"primary-telin-blue2\"\r\n\t\t\t\tclass=\"w-48\"\r\n\t\t\t\t(click)=\"onApply()\">\r\n\t\t\t\tApply\r\n\t\t\t</button>\r\n\t\t</div>\r\n\t</div>\r\n</form>\r\n",
1746
- styles: [".contact-filter .platform{display:grid;grid-gap:5px;grid-template-columns:auto 1fr auto}.button-row{margin:8px 8px 8px 0}.mat-datepicker-input{width:85%}.mat-icon{position:relative;float:right;top:-7px;cursor:pointer;color:rgba(0,0,0,.54)}"]
1769
+ template: "<p class=\"font-16px font-bold\">Filter</p>\r\n\r\n<form [formGroup]=\"form\" class=\"contact-filter\">\r\n <div class=\"row\">\r\n <div class=\"col-md-12 col-12\">\r\n <div class=\"form-group\">\r\n <mat-form-field appearance=\"outline\" floatLabel=\"always\" class=\"w-70\">\r\n <mat-label>Business Name</mat-label>\r\n <mat-select placeholder=\"Select Business Name\" formControlName=\"businessName\">\r\n <div class=\"select-search\">\r\n <lib-search\r\n [placeholder]=\"'Search'\"\r\n (searchRes)=\"businessNameSearch($event)\"\r\n ></lib-search>\r\n </div>\r\n\r\n <mat-option value=\"\"> --- select none --- </mat-option>\r\n <mat-option\r\n *ngFor=\"let option of filteredBusinessNameOption\"\r\n [value]=\"option.id\"\r\n >\r\n {{ option.name }}\r\n </mat-option>\r\n <mat-option *ngIf=\"!filteredBusinessNameOption.length\" disabled>\r\n No data found\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-md-12 col-12\">\r\n <div class=\"form-group\">\r\n <mat-form-field appearance=\"outline\" floatLabel=\"always\" class=\"w-70\">\r\n <mat-label>Channel</mat-label>\r\n\r\n <mat-select placeholder=\"Select the Channel\" formControlName=\"medium\">\r\n <mat-option value=\"\"> --- select none --- </mat-option>\r\n <mat-option\r\n *ngFor=\"let option of filteredChannelOption\"\r\n [value]=\"option.value\"\r\n (click)=\"getTemplateOptionService()\"\r\n >\r\n {{ option.label }}\r\n </mat-option>\r\n <mat-option *ngIf=\"!filteredChannelOption.length\" disabled>\r\n No data found\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-md-12 col-12\">\r\n <div class=\"form-group\">\r\n <mat-form-field appearance=\"outline\" floatLabel=\"always\" class=\"w-100\">\r\n <mat-label class=\"asterix--after\">Template Name</mat-label>\r\n\r\n <mat-select\r\n matSelectInfiniteScroll\r\n formControlName=\"templateName\"\r\n placeholder=\"Select template\"\r\n [complete]=\"isHaveNextTemplateOption === false\"\r\n [compareWith]=\"templateSelectedDisplay\"\r\n (infiniteScroll)=\"getNextTemplateBatch()\"\r\n >\r\n <div style=\"margin: 20px\">\r\n <lib-search\r\n [placeholder]=\"'Search'\"\r\n [currentValue]=\"form?.get('templateName').value?.name\"\r\n (searchRes)=\"templateSearch($event)\"\r\n ></lib-search>\r\n </div>\r\n\r\n <mat-option *ngFor=\"let option of templateOption\" [value]=\"option\">\r\n {{ option.name }}\r\n </mat-option>\r\n <mat-option *ngIf=\"isLoadingTemplateOption\">Loading...</mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-md-12 col-12\">\r\n <div class=\"form-group\">\r\n <mat-form-field appearance=\"outline\" floatLabel=\"always\" class=\"w-70\">\r\n <mat-label>Status</mat-label>\r\n\r\n <mat-select placeholder=\"Select the Status\" formControlName=\"status\">\r\n <div class=\"select-search\">\r\n <lib-search\r\n [placeholder]=\"'Search'\"\r\n (searchRes)=\"statusSearch($event)\"\r\n ></lib-search>\r\n </div>\r\n\r\n <mat-option value=\"\"> --- select none --- </mat-option>\r\n <mat-option\r\n *ngFor=\"let option of filteredStatusOption\"\r\n [value]=\"option.value\"\r\n >\r\n {{ option.label }}\r\n </mat-option>\r\n <mat-option *ngIf=\"!filteredStatusOption.length\" disabled>\r\n No data found\r\n </mat-option>\r\n </mat-select>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-md-12 col-12\">\r\n <div class=\"form-group\">\r\n <mat-form-field appearance=\"outline\" floatLabel=\"always\" class=\"w-100\">\r\n <mat-label> Start Date </mat-label>\r\n <input\r\n matInput\r\n [matDatepicker]=\"startDatePicker\"\r\n formControlName=\"startDate\"\r\n class=\"mat-datepicker-input\"\r\n (dateChange)=\"validateBackDate()\"\r\n />\r\n\r\n <mat-datepicker-toggle matSuffix [for]=\"startDatePicker\">\r\n </mat-datepicker-toggle>\r\n <mat-icon\r\n *ngIf=\"form.get('startDate').value\"\r\n matDatepickerToggleIcon\r\n (click)=\"clearDate()\"\r\n >clear</mat-icon\r\n >\r\n <mat-datepicker #startDatePicker></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n <div class=\"col-md-12 col-12\">\r\n <div class=\"form-group\">\r\n <mat-form-field appearance=\"outline\" floatLabel=\"always\" class=\"w-100\">\r\n <mat-label> End Date </mat-label>\r\n <input\r\n matInput\r\n [min]=\"form.get('startDate').value\"\r\n [matDatepicker]=\"endDatePicker\"\r\n formControlName=\"endDate\"\r\n class=\"mat-datepicker-input\"\r\n (dateChange)=\"validateBackDate()\"\r\n />\r\n\r\n <mat-datepicker-toggle matSuffix [for]=\"endDatePicker\"> </mat-datepicker-toggle>\r\n <mat-icon\r\n *ngIf=\"form.get('endDate').value\"\r\n matDatepickerToggleIcon\r\n (click)=\"clearDate()\"\r\n >clear</mat-icon\r\n >\r\n <mat-datepicker #endDatePicker></mat-datepicker>\r\n </mat-form-field>\r\n </div>\r\n </div>\r\n\r\n <div style=\"display: flex; flex: 1; width: 100%\">\r\n <button\r\n mat-stroked-button\r\n color=\"primary-telin\"\r\n class=\"telin-font-color w-48\"\r\n style=\"width: 100%; margin-bottom: 10px\"\r\n (click)=\"onReset()\"\r\n >\r\n Reset\r\n </button>\r\n </div>\r\n <div class=\"d-flex justify-content-between\">\r\n <button mat-stroked-button color=\"secondary-telin\" class=\"w-48\" (click)=\"onCancel()\">\r\n Cancel\r\n </button>\r\n\r\n <button mat-flat-button color=\"primary-telin-blue2\" class=\"w-48\" (click)=\"onApply()\">\r\n Apply\r\n </button>\r\n </div>\r\n </div>\r\n</form>\r\n",
1770
+ styles: [".contact-filter .platform{display:grid;grid-gap:5px;grid-template-columns:auto 1fr auto}.button-row{margin:8px 8px 8px 0}.mat-datepicker-input{width:85%}.mat-icon{position:relative;float:right;top:-7px;cursor:pointer;color:rgba(0,0,0,.54)}.select-search{margin:20px}"]
1747
1771
  }),
1748
1772
  core.Injectable({
1749
1773
  providedIn: 'root',
@@ -2847,10 +2871,15 @@
2847
2871
  return;
2848
2872
  }
2849
2873
  var bodyReq = new GeneralInformationWAReqModel().clone(__assign({}, this.generalInformationData));
2874
+ var payloadValue = bodyReq.convert();
2875
+ if (payloadValue.template && this.generalInformationData.template) {
2876
+ payloadValue.template.type =
2877
+ payloadValue.template.type || this.generalInformationData.template.category;
2878
+ }
2850
2879
  var parameterList = [
2851
2880
  {
2852
2881
  name: 'data',
2853
- value: bodyReq.convert(),
2882
+ value: payloadValue,
2854
2883
  in: 'body',
2855
2884
  type: 'object',
2856
2885
  withoutKeyData: true,
@@ -5479,7 +5508,6 @@
5479
5508
  this.toastr.error('Upload media failed, max size 30mb');
5480
5509
  return;
5481
5510
  }
5482
- // this.uploadMediaService(file[0]);
5483
5511
  this.getPresignedUrlService(file[0]);
5484
5512
  };
5485
5513
  NewNumberBasesComponent.prototype.getPresignedUrlService = function (file) {