@bnsights/bbsf-controls 1.0.28 → 1.0.29

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.
@@ -5638,6 +5638,7 @@
5638
5638
  function RepeaterComponent() {
5639
5639
  this.templateRefs = [];
5640
5640
  this.items = [];
5641
+ this.originalItems = [];
5641
5642
  this.repeaterContext = { index: 0, delete: null, elements: null };
5642
5643
  }
5643
5644
  RepeaterComponent.prototype.ngOnInit = function () {
@@ -5645,10 +5646,16 @@
5645
5646
  this.currentTemplate = this.initialTemplate;
5646
5647
  this.repeaterGroup = new forms.FormGroup({});
5647
5648
  this.group.addControl(this.options.Name, this.repeaterGroup);
5648
- this.group.get(this.options.Name).setValue(this.options.RepeaterValue);
5649
- for (var index = 0; index < this.options.MinRequiredItems; index++) {
5650
- this.items.push(index);
5649
+ if (this.options.RepeaterValue.length > 0) {
5650
+ this.originalItems = this.options.RepeaterValue;
5651
+ for (var index = 0; index < this.options.RepeaterValue.length; index++) {
5652
+ this.items.push(index + 1);
5653
+ }
5651
5654
  }
5655
+ else
5656
+ for (var index = 0; index < this.options.MinRequiredItems; index++) {
5657
+ this.items.push(index);
5658
+ }
5652
5659
  this.repeaterGroup.valueChanges.subscribe(function (res) {
5653
5660
  var _a, _b;
5654
5661
  var result = [];
@@ -5693,6 +5700,7 @@
5693
5700
  };
5694
5701
  RepeaterComponent.prototype.deleteItem = function (Index) {
5695
5702
  var _a;
5703
+ var _this = this;
5696
5704
  if (this.items.length == this.options.MinRequiredItems && this.options.IsRequired)
5697
5705
  return;
5698
5706
  var deletedControls = [];
@@ -5717,11 +5725,10 @@
5717
5725
  }
5718
5726
  }
5719
5727
  }
5720
- var item = this.items[Index];
5721
- this.items = this.items.filter(function (res) { return res != item; });
5728
+ this.items = this.items.filter(function (res) { return res != _this.items[Index]; });
5722
5729
  };
5723
- RepeaterComponent.prototype.AddItem = function () {
5724
- this.items.push(this.items.length + 1);
5730
+ RepeaterComponent.prototype.addItem = function () {
5731
+ this.items.push(this.items[this.items.length - 1] + 1);
5725
5732
  };
5726
5733
  RepeaterComponent.prototype.ngAfterViewInit = function () {
5727
5734
  var templateRefs = this._templates["_results"].map(function (item) { return item["template"]; });
@@ -5737,7 +5744,7 @@
5737
5744
  RepeaterComponent.decorators = [
5738
5745
  { type: i0.Component, args: [{
5739
5746
  selector: 'BBSF-repeater',
5740
- template: "<div *ngFor='let item of items ; index as i'>\r\n {{setCurrentIndex(i)}}\r\n <ng-container *ngTemplateOutlet=\"currentTemplate; context: repeaterContext\">\r\n </ng-container>\r\n\r\n</div>\r\n\r\n<div>\r\n <ng-container *ngTemplateOutlet=\"add\">\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template *ngFor=\"let RepeaterField of options.RepeaterStructure ; index as i\" name=\"R{{i}}\" \r\n let-Index=\"itemIndex\" let-control=\"controlIndex\">\r\n <repeater-field-builder *ngIf=\"RepeaterField\" [RepeaterField]=\"RepeaterField\" [itemNumber]=\"Index\" [controlNumber]=\"control\"\r\n [group]=\"repeaterGroup\"></repeater-field-builder>\r\n</ng-template>\r\n\r\n<ng-template #delete let-item=\"itemIndex\">\r\n <button class=\"{{options.DeleteButtonExtraClasses}}\" type=\"button\" (click)=\"deleteItem(item)\"\r\n [disabled]=\"items.length ==options.MinRequiredItems&&options.IsRequired\"> <span [innerHTML]=\"options.DeleteButtonText\"></span></button>\r\n</ng-template>\r\n\r\n<ng-template #add>\r\n <button class=\"{{options.AddButtonExtraClasses}}\" type=\"button\"\r\n (click)=\"AddItem()\"><span [innerHTML]=\"options.AddButtonText\"></span></button>\r\n</ng-template>\r\n\r\n\r\n\r\n\r\n\r\n<!-- <ng-template adHost></ng-template> -->",
5747
+ template: "<ng-container *ngFor='let item of items ; index as i'>\r\n {{setCurrentIndex(i)}}\r\n <ng-container *ngTemplateOutlet=\"currentTemplate; context: repeaterContext\">\r\n </ng-container>\r\n\r\n</ng-container>\r\n\r\n<ng-container *ngTemplateOutlet=\"add\">\r\n</ng-container>\r\n\r\n<ng-template *ngFor=\"let RepeaterField of options.RepeaterStructure ; index as i\" name=\"R{{i}}\" let-Index=\"itemIndex\"\r\n let-control=\"controlIndex\">\r\n <repeater-field-builder *ngIf=\"RepeaterField\" [RepeaterField]=\"RepeaterField\" [itemNumber]=\"Index\"\r\n [itemsValue]=\"originalItems\" [controlNumber]=\"control\" [group]=\"repeaterGroup\">\r\n </repeater-field-builder>\r\n</ng-template>\r\n\r\n<ng-template #delete let-item=\"itemIndex\">\r\n <button class=\"{{options.DeleteButtonExtraClasses}}\" type=\"button\" (click)=\"deleteItem(item)\"\r\n [disabled]=\"items.length ==options.MinRequiredItems&&options.IsRequired\"> <span\r\n [innerHTML]=\"options.DeleteButtonText\"></span></button>\r\n</ng-template>\r\n\r\n<ng-template #add>\r\n <button class=\"{{options.AddButtonExtraClasses}}\" type=\"button\" (click)=\"addItem()\"><span\r\n [innerHTML]=\"options.AddButtonText\"></span></button>\r\n</ng-template>\r\n\r\n\r\n\r\n\r\n\r\n<!-- <ng-template adHost></ng-template> -->\r\n",
5741
5748
  styles: [""]
5742
5749
  },] }
5743
5750
  ];
@@ -6002,12 +6009,24 @@
6002
6009
  function RepeaterFieldBuilderComponent(renderComponentService, TextControlHost) {
6003
6010
  this.renderComponentService = renderComponentService;
6004
6011
  this.TextControlHost = TextControlHost;
6012
+ this.itemsValue = [];
6013
+ this.itemValue = null;
6005
6014
  }
6006
6015
  RepeaterFieldBuilderComponent.prototype.ngOnInit = function () {
6007
6016
  };
6008
6017
  RepeaterFieldBuilderComponent.prototype.ngAfterViewInit = function () {
6009
6018
  var _this = this;
6010
6019
  setTimeout(function () {
6020
+ if (_this.itemsValue.length > 0)
6021
+ _this.itemValue = _this.itemsValue[_this.itemNumber];
6022
+ if (_this.itemValue) {
6023
+ for (var key in _this.itemValue) {
6024
+ if (Object.prototype.hasOwnProperty.call(_this.itemValue, key) && key == _this.RepeaterField.ControlOptions.Name) {
6025
+ var element = _this.itemValue[key];
6026
+ _this.value = element;
6027
+ }
6028
+ }
6029
+ }
6011
6030
  _this.Item.clear();
6012
6031
  switch (_this.RepeaterField.ControlType) {
6013
6032
  ///TextBox
@@ -6024,6 +6043,7 @@
6024
6043
  Text.MaxLength = _this.RepeaterField.ControlOptions.maxLength;
6025
6044
  if (_this.RepeaterField.ControlOptions.minLength)
6026
6045
  Text.MinLength = _this.RepeaterField.ControlOptions.minLength;
6046
+ Text.Value = _this.value;
6027
6047
  _this.renderComponentService.renderDynamicComponent(_this.Item, TextboxComponent, _this.group, Text);
6028
6048
  break;
6029
6049
  case exports.DataType.Name:
@@ -6039,6 +6059,7 @@
6039
6059
  if (_this.RepeaterField.ControlOptions.minLength)
6040
6060
  Name.MinLength = _this.RepeaterField.ControlOptions.minLength;
6041
6061
  Name.Type = exports.InputType.Text;
6062
+ Name.Value = _this.value;
6042
6063
  _this.renderComponentService.renderDynamicComponent(_this.Item, TextboxComponent, _this.group, Name);
6043
6064
  break;
6044
6065
  case exports.DataType.Email:
@@ -6050,6 +6071,7 @@
6050
6071
  Email.ViewType = _this.RepeaterField.ControlOptions.ViewType;
6051
6072
  Email.LabelDescription = _this.RepeaterField.ControlOptions.LabelDescription ? _this.RepeaterField.ControlOptions.LabelDescription : "";
6052
6073
  Email.Type = exports.InputType.Email;
6074
+ Email.Value = _this.value;
6053
6075
  _this.renderComponentService.renderDynamicComponent(_this.Item, TextboxComponent, _this.group, Email);
6054
6076
  break;
6055
6077
  case exports.DataType.Number:
@@ -6065,6 +6087,7 @@
6065
6087
  rangeNumber.To = _this.RepeaterField.ControlOptions.maxLength;
6066
6088
  rangeNumber.From = _this.RepeaterField.ControlOptions.minLength;
6067
6089
  Number.NumberRange = rangeNumber;
6090
+ Number.Value = _this.value;
6068
6091
  _this.renderComponentService.renderDynamicComponent(_this.Item, TextboxComponent, _this.group, Number);
6069
6092
  break;
6070
6093
  ///DateTime
@@ -6079,6 +6102,7 @@
6079
6102
  Date.PickerType = exports.PickerType.Calendar;
6080
6103
  Date.SelectMode = exports.SelectMode.Single;
6081
6104
  Date.StartView = exports.StartView.Month;
6105
+ Date.Value = _this.value;
6082
6106
  _this.renderComponentService.renderDynamicComponent(_this.Item, DateInputComponent, _this.group, Date);
6083
6107
  break;
6084
6108
  case exports.DataType.DateTime:
@@ -6092,6 +6116,7 @@
6092
6116
  DateTime.PickerType = exports.PickerType.Both;
6093
6117
  DateTime.SelectMode = exports.SelectMode.Single;
6094
6118
  DateTime.StartView = exports.StartView.Month;
6119
+ DateTime.Value = _this.value;
6095
6120
  _this.renderComponentService.renderDynamicComponent(_this.Item, DateInputComponent, _this.group, DateTime);
6096
6121
  break;
6097
6122
  case exports.DataType.Time:
@@ -6105,6 +6130,7 @@
6105
6130
  Time.PickerType = exports.PickerType.Timer;
6106
6131
  Time.SelectMode = exports.SelectMode.Single;
6107
6132
  Time.StartView = exports.StartView.Month;
6133
+ Time.Value = _this.value;
6108
6134
  _this.renderComponentService.renderDynamicComponent(_this.Item, DateInputComponent, _this.group, Time);
6109
6135
  break;
6110
6136
  //Dropdown
@@ -6120,6 +6146,7 @@
6120
6146
  SingleSelect.SingleSelection = true;
6121
6147
  SingleSelect.ShowCheckbox = false;
6122
6148
  SingleSelect.AllowSearchFilter = _this.RepeaterField.ControlOptions.hasSearch;
6149
+ SingleSelect.SelectedItems = _this.value;
6123
6150
  _this.renderComponentService.renderDynamicComponent(_this.Item, DropdownListComponent, _this.group, SingleSelect);
6124
6151
  break;
6125
6152
  case exports.DataType.MulipleSelect:
@@ -6134,6 +6161,7 @@
6134
6161
  MulipleSelect.SingleSelection = false;
6135
6162
  MulipleSelect.ShowCheckbox = false;
6136
6163
  MulipleSelect.AllowSearchFilter = _this.RepeaterField.ControlOptions.hasSearch;
6164
+ MulipleSelect.SelectedItems = _this.value;
6137
6165
  _this.renderComponentService.renderDynamicComponent(_this.Item, DropdownListComponent, _this.group, MulipleSelect);
6138
6166
  break;
6139
6167
  case exports.DataType.Goal:
@@ -6148,6 +6176,7 @@
6148
6176
  Goal.SingleSelection = !_this.RepeaterField.ControlOptions.isMultiple;
6149
6177
  Goal.ShowCheckbox = false;
6150
6178
  Goal.AllowSearchFilter = _this.RepeaterField.ControlOptions.hasSearch;
6179
+ Goal.SelectedItems = _this.value;
6151
6180
  _this.renderComponentService.renderDynamicComponent(_this.Item, DropdownListComponent, _this.group, Goal);
6152
6181
  break;
6153
6182
  case exports.DataType.Challenge:
@@ -6163,6 +6192,7 @@
6163
6192
  Challenge.SingleSelection = !_this.RepeaterField.ControlOptions.isMultiple;
6164
6193
  Challenge.ShowCheckbox = false;
6165
6194
  Challenge.AllowSearchFilter = _this.RepeaterField.ControlOptions.hasSearch;
6195
+ Challenge.SelectedItems = _this.value;
6166
6196
  _this.renderComponentService.renderDynamicComponent(_this.Item, DropdownListComponent, _this.group, Challenge);
6167
6197
  break;
6168
6198
  case exports.DataType.InnovationLab:
@@ -6177,6 +6207,7 @@
6177
6207
  InnovationLab.SingleSelection = !_this.RepeaterField.ControlOptions.isMultiple;
6178
6208
  InnovationLab.ShowCheckbox = false;
6179
6209
  InnovationLab.AllowSearchFilter = _this.RepeaterField.ControlOptions.hasSearch;
6210
+ InnovationLab.SelectedItems = _this.value;
6180
6211
  _this.renderComponentService.renderDynamicComponent(_this.Item, DropdownListComponent, _this.group, InnovationLab);
6181
6212
  break;
6182
6213
  case exports.DataType.Country:
@@ -6191,6 +6222,7 @@
6191
6222
  Country.SingleSelection = !_this.RepeaterField.ControlOptions.isMultiple;
6192
6223
  Country.ShowCheckbox = false;
6193
6224
  Country.AllowSearchFilter = _this.RepeaterField.ControlOptions.hasSearch;
6225
+ Country.SelectedItems = _this.value;
6194
6226
  _this.renderComponentService.renderDynamicComponent(_this.Item, DropdownListComponent, _this.group, Country);
6195
6227
  break;
6196
6228
  //FileUpload
@@ -6203,6 +6235,7 @@
6203
6235
  File.ViewType = _this.RepeaterField.ControlOptions.ViewType;
6204
6236
  File.LabelDescription = _this.RepeaterField.ControlOptions.LabelDescription ? _this.RepeaterField.ControlOptions.LabelDescription : "";
6205
6237
  File.FileMaxSizeInMB = _this.RepeaterField.ControlOptions.maxFileSizeInMB;
6238
+ File.Value = _this.value;
6206
6239
  _this.renderComponentService.renderDynamicComponent(_this.Item, FileUploadComponent, _this.group, File);
6207
6240
  break;
6208
6241
  case exports.DataType.MultiFile:
@@ -6216,6 +6249,7 @@
6216
6249
  MultiFile.MaxSizeForAllFilesInMB = _this.RepeaterField.ControlOptions.maxFileSizeInMB;
6217
6250
  MultiFile.MaxNoOfFiles = _this.RepeaterField.ControlOptions.maxFileCount;
6218
6251
  MultiFile.IsMultipleFile = true;
6252
+ MultiFile.Value = _this.value;
6219
6253
  _this.renderComponentService.renderDynamicComponent(_this.Item, FileUploadComponent, _this.group, MultiFile);
6220
6254
  break;
6221
6255
  //ImageUpload
@@ -6229,6 +6263,7 @@
6229
6263
  Image.LabelDescription = _this.RepeaterField.ControlOptions.LabelDescription ? _this.RepeaterField.ControlOptions.LabelDescription : "";
6230
6264
  if (_this.RepeaterField.ControlOptions.maxFileSizeInMB)
6231
6265
  Image.FileMaxSizeInMB = _this.RepeaterField.ControlOptions.maxFileSizeInMB;
6266
+ Image.Value = _this.value;
6232
6267
  _this.renderComponentService.renderDynamicComponent(_this.Item, ImageUploaderComponent, _this.group, Image);
6233
6268
  break;
6234
6269
  case exports.DataType.CoverPhoto:
@@ -6241,6 +6276,7 @@
6241
6276
  CoverPhoto.LabelDescription = _this.RepeaterField.ControlOptions.LabelDescription ? _this.RepeaterField.ControlOptions.LabelDescription : "";
6242
6277
  if (_this.RepeaterField.ControlOptions.maxFileSizeInMB)
6243
6278
  CoverPhoto.FileMaxSizeInMB = _this.RepeaterField.ControlOptions.maxFileSizeInMB;
6279
+ CoverPhoto.Value = _this.value;
6244
6280
  _this.renderComponentService.renderDynamicComponent(_this.Item, ImageUploaderComponent, _this.group, CoverPhoto);
6245
6281
  break;
6246
6282
  //Mobile
@@ -6256,6 +6292,7 @@
6256
6292
  Mobile.PhoneValidation = true;
6257
6293
  Mobile.SelectFirstCountry = true;
6258
6294
  Mobile.EnablePlaceholder = true;
6295
+ Mobile.Value = _this.value;
6259
6296
  _this.renderComponentService.renderDynamicComponent(_this.Item, PhoneComponent, _this.group, Mobile);
6260
6297
  break;
6261
6298
  //MultilineText
@@ -6273,6 +6310,7 @@
6273
6310
  MultilineText.MinLength = _this.RepeaterField.ControlOptions.minLength;
6274
6311
  MultilineText.Rows = _this.RepeaterField.ControlOptions.rows;
6275
6312
  MultilineText.ForceDirection = _this.RepeaterField.ControlOptions.ForceDirection;
6313
+ MultilineText.Value = _this.value;
6276
6314
  _this.renderComponentService.renderDynamicComponent(_this.Item, TextAreaComponent, _this.group, MultilineText);
6277
6315
  break;
6278
6316
  //HTML
@@ -6290,6 +6328,7 @@
6290
6328
  HTML.MinLength = _this.RepeaterField.ControlOptions.minLength;
6291
6329
  HTML.Height = _this.RepeaterField.ControlOptions.rows;
6292
6330
  HTML.ForceDirection = _this.RepeaterField.ControlOptions.ForceDirection;
6331
+ HTML.Value = _this.value;
6293
6332
  _this.renderComponentService.renderDynamicComponent(_this.Item, HtmlEditorComponent, _this.group, HTML);
6294
6333
  break;
6295
6334
  //Boolean
@@ -6299,6 +6338,7 @@
6299
6338
  Boolean.HideLabel = _this.RepeaterField.ControlOptions.HideLabel;
6300
6339
  Boolean.LabelKey = _this.RepeaterField.ControlOptions.LabelKey;
6301
6340
  Boolean.ViewType = _this.RepeaterField.ControlOptions.ViewType;
6341
+ Boolean.Value = _this.value;
6302
6342
  Boolean.LabelDescription = _this.RepeaterField.ControlOptions.LabelDescription ? _this.RepeaterField.ControlOptions.LabelDescription : "";
6303
6343
  _this.renderComponentService.renderDynamicComponent(_this.Item, ToggleslideComponent, _this.group, Boolean);
6304
6344
  break;
@@ -6310,6 +6350,7 @@
6310
6350
  Location.LabelKey = _this.RepeaterField.ControlOptions.LabelKey;
6311
6351
  Location.IsRequired = _this.RepeaterField.ControlOptions.IsRequired;
6312
6352
  Location.ViewType = _this.RepeaterField.ControlOptions.ViewType;
6353
+ Location.Value = _this.value;
6313
6354
  Location.LabelDescription = _this.RepeaterField.ControlOptions.LabelDescription ? _this.RepeaterField.ControlOptions.LabelDescription : "";
6314
6355
  _this.renderComponentService.renderDynamicComponent(_this.Item, MapAutoCompleteComponent, _this.group, Location);
6315
6356
  break;
@@ -6319,341 +6360,342 @@
6319
6360
  }, 0);
6320
6361
  };
6321
6362
  RepeaterFieldBuilderComponent.prototype.ngOnChanges = function (changes) {
6322
- if (changes.itemNumber.previousValue) {
6323
- var name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.previousValue.toString() + "." + this.controlNumber.toString();
6324
- var value = this.group.controls[name].value;
6325
- this.Item.clear();
6326
- this.group.removeControl(name);
6327
- switch (this.RepeaterField.ControlType) {
6328
- ///TextBox
6329
- case exports.DataType.Text:
6330
- var Text = new TextBoxOptions();
6331
- Text.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6332
- Text.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6333
- Text.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6334
- Text.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6335
- Text.ViewType = this.RepeaterField.ControlOptions.ViewType;
6336
- Text.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6337
- Text.Type = exports.InputType.Text;
6338
- if (this.RepeaterField.ControlOptions.maxLength)
6339
- Text.MaxLength = this.RepeaterField.ControlOptions.maxLength;
6340
- if (this.RepeaterField.ControlOptions.minLength)
6341
- Text.MinLength = this.RepeaterField.ControlOptions.minLength;
6342
- Text.Value = value;
6343
- this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Text);
6344
- break;
6345
- case exports.DataType.Name:
6346
- var Name = new TextBoxOptions();
6347
- Name.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6348
- Name.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6349
- Name.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6350
- Name.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6351
- Name.ViewType = this.RepeaterField.ControlOptions.ViewType;
6352
- Name.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6353
- if (this.RepeaterField.ControlOptions.maxLength)
6354
- Name.MaxLength = this.RepeaterField.ControlOptions.maxLength;
6355
- if (this.RepeaterField.ControlOptions.minLength)
6356
- Name.MinLength = this.RepeaterField.ControlOptions.minLength;
6357
- Name.Type = exports.InputType.Text;
6358
- Name.Value = value;
6359
- this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Name);
6360
- break;
6361
- case exports.DataType.Email:
6362
- var Email = new TextBoxOptions();
6363
- Email.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6364
- Email.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6365
- Email.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6366
- Email.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6367
- Email.ViewType = this.RepeaterField.ControlOptions.ViewType;
6368
- Email.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6369
- Email.Type = exports.InputType.Email;
6370
- Email.Value = value;
6371
- this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Email);
6372
- break;
6373
- case exports.DataType.Number:
6374
- var Number = new TextBoxOptions();
6375
- Number.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6376
- Number.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6377
- Number.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6378
- Number.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6379
- Number.ViewType = this.RepeaterField.ControlOptions.ViewType;
6380
- Number.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6381
- Number.Type = exports.InputType.Number;
6382
- var rangeNumber = new RangeNumber();
6383
- rangeNumber.To = this.RepeaterField.ControlOptions.maxLength;
6384
- rangeNumber.From = this.RepeaterField.ControlOptions.minLength;
6385
- Number.NumberRange = rangeNumber;
6386
- Number.Value = value;
6387
- this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Number);
6388
- break;
6389
- ///DateTime
6390
- case exports.DataType.Date:
6391
- var Date = new DatePickerOptions();
6392
- Date.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6393
- Date.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6394
- Date.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6395
- Date.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6396
- Date.ViewType = this.RepeaterField.ControlOptions.ViewType;
6397
- Date.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6398
- Date.PickerType = exports.PickerType.Calendar;
6399
- Date.SelectMode = exports.SelectMode.Single;
6400
- Date.StartView = exports.StartView.Month;
6401
- Date.Value = value;
6402
- this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, Date);
6403
- break;
6404
- case exports.DataType.DateTime:
6405
- var DateTime = new DatePickerOptions();
6406
- DateTime.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6407
- DateTime.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6408
- DateTime.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6409
- DateTime.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6410
- DateTime.ViewType = this.RepeaterField.ControlOptions.ViewType;
6411
- DateTime.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6412
- DateTime.PickerType = exports.PickerType.Both;
6413
- DateTime.SelectMode = exports.SelectMode.Single;
6414
- DateTime.StartView = exports.StartView.Month;
6415
- DateTime.Value = value;
6416
- this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, DateTime);
6417
- break;
6418
- case exports.DataType.Time:
6419
- var Time = new DatePickerOptions();
6420
- Time.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6421
- Time.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6422
- Time.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6423
- Time.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6424
- Time.ViewType = this.RepeaterField.ControlOptions.ViewType;
6425
- Time.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6426
- Time.PickerType = exports.PickerType.Timer;
6427
- Time.SelectMode = exports.SelectMode.Single;
6428
- Time.StartView = exports.StartView.Month;
6429
- Time.Value = value;
6430
- this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, Time);
6431
- break;
6432
- //Dropdown
6433
- case exports.DataType.SingleSelect:
6434
- var SingleSelect = new DropdownOptions();
6435
- SingleSelect.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6436
- SingleSelect.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6437
- SingleSelect.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6438
- SingleSelect.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6439
- SingleSelect.ViewType = this.RepeaterField.ControlOptions.ViewType;
6440
- SingleSelect.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6441
- SingleSelect.DataSource = this.RepeaterField.ControlOptions.dataSource;
6442
- SingleSelect.SingleSelection = true;
6443
- SingleSelect.ShowCheckbox = false;
6444
- SingleSelect.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6445
- SingleSelect.SelectedItems = value;
6446
- this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, SingleSelect);
6447
- break;
6448
- case exports.DataType.MulipleSelect:
6449
- var MulipleSelect = new DropdownOptions();
6450
- MulipleSelect.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6451
- MulipleSelect.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6452
- MulipleSelect.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6453
- MulipleSelect.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6454
- MulipleSelect.ViewType = this.RepeaterField.ControlOptions.ViewType;
6455
- MulipleSelect.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6456
- MulipleSelect.DataSource = this.RepeaterField.ControlOptions.dataSource;
6457
- MulipleSelect.SingleSelection = false;
6458
- MulipleSelect.ShowCheckbox = false;
6459
- MulipleSelect.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6460
- MulipleSelect.SelectedItems = value;
6461
- this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, MulipleSelect);
6462
- break;
6463
- case exports.DataType.Goal:
6464
- var Goal = new DropdownOptions();
6465
- Goal.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6466
- Goal.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6467
- Goal.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6468
- Goal.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6469
- Goal.ViewType = this.RepeaterField.ControlOptions.ViewType;
6470
- Goal.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6471
- Goal.DataSource = this.RepeaterField.ControlOptions.dataSource;
6472
- Goal.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
6473
- Goal.ShowCheckbox = false;
6474
- Goal.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6475
- Goal.SelectedItems = value;
6476
- this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Goal);
6477
- break;
6478
- case exports.DataType.Challenge:
6479
- var Challenge = new DropdownOptions();
6480
- Challenge.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6481
- Challenge.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6482
- Challenge.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6483
- Challenge.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6484
- Challenge.ViewType = this.RepeaterField.ControlOptions.ViewType;
6485
- Challenge.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6486
- Challenge.DataSource = this.RepeaterField.ControlOptions.dataSource;
6487
- Challenge.DataSource = this.RepeaterField.ControlOptions.dataSource;
6488
- Challenge.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
6489
- Challenge.ShowCheckbox = false;
6490
- Challenge.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6491
- Challenge.SelectedItems = value;
6492
- this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Challenge);
6493
- break;
6494
- case exports.DataType.InnovationLab:
6495
- var InnovationLab = new DropdownOptions();
6496
- InnovationLab.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6497
- InnovationLab.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6498
- InnovationLab.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6499
- InnovationLab.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6500
- InnovationLab.ViewType = this.RepeaterField.ControlOptions.ViewType;
6501
- InnovationLab.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6502
- InnovationLab.DataSource = this.RepeaterField.ControlOptions.dataSource;
6503
- InnovationLab.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
6504
- InnovationLab.ShowCheckbox = false;
6505
- InnovationLab.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6506
- InnovationLab.SelectedItems = value;
6507
- this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, InnovationLab);
6508
- break;
6509
- case exports.DataType.Country:
6510
- var Country = new DropdownOptions();
6511
- Country.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6512
- Country.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6513
- Country.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6514
- Country.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6515
- Country.ViewType = this.RepeaterField.ControlOptions.ViewType;
6516
- Country.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6517
- Country.DataSource = this.RepeaterField.ControlOptions.dataSource;
6518
- Country.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
6519
- Country.ShowCheckbox = false;
6520
- Country.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6521
- Country.SelectedItems = value;
6522
- this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Country);
6523
- break;
6524
- //FileUpload
6525
- case exports.DataType.File:
6526
- var File = new FileUploadOptions();
6527
- File.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6528
- File.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6529
- File.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6530
- File.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6531
- File.ViewType = this.RepeaterField.ControlOptions.ViewType;
6532
- File.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6533
- File.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
6534
- File.Value = value;
6535
- this.renderComponentService.renderDynamicComponent(this.Item, FileUploadComponent, this.group, File);
6536
- break;
6537
- case exports.DataType.MultiFile:
6538
- var MultiFile = new FileUploadOptions();
6539
- File.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6540
- File.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6541
- File.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6542
- File.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6543
- File.ViewType = this.RepeaterField.ControlOptions.ViewType;
6544
- File.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6545
- MultiFile.MaxSizeForAllFilesInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
6546
- MultiFile.MaxNoOfFiles = this.RepeaterField.ControlOptions.maxFileCount;
6547
- MultiFile.IsMultipleFile = true;
6548
- MultiFile.Value = value;
6549
- this.renderComponentService.renderDynamicComponent(this.Item, FileUploadComponent, this.group, MultiFile);
6550
- break;
6551
- //ImageUpload
6552
- case exports.DataType.Image:
6553
- var Image = new ImageUploadOptions();
6554
- Image.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6555
- Image.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6556
- Image.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6557
- Image.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6558
- Image.ViewType = this.RepeaterField.ControlOptions.ViewType;
6559
- Image.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6560
- if (this.RepeaterField.ControlOptions.maxFileSizeInMB)
6561
- Image.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
6562
- Image.Value = value;
6563
- this.renderComponentService.renderDynamicComponent(this.Item, ImageUploaderComponent, this.group, Image);
6564
- break;
6565
- case exports.DataType.CoverPhoto:
6566
- var CoverPhoto = new ImageUploadOptions();
6567
- CoverPhoto.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6568
- CoverPhoto.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6569
- CoverPhoto.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6570
- CoverPhoto.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6571
- CoverPhoto.ViewType = this.RepeaterField.ControlOptions.ViewType;
6572
- CoverPhoto.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6573
- if (this.RepeaterField.ControlOptions.maxFileSizeInMB)
6574
- CoverPhoto.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
6575
- CoverPhoto.Value = value;
6576
- this.renderComponentService.renderDynamicComponent(this.Item, ImageUploaderComponent, this.group, CoverPhoto);
6577
- break;
6578
- //Mobile
6579
- case exports.DataType.Mobile:
6580
- var Mobile = new PhoneOptions();
6581
- Mobile.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6582
- Mobile.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6583
- Mobile.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6584
- Mobile.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6585
- Mobile.ViewType = this.RepeaterField.ControlOptions.ViewType;
6586
- Mobile.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6587
- Mobile.AllowSearch = true;
6588
- Mobile.PhoneValidation = true;
6589
- Mobile.SelectFirstCountry = true;
6590
- Mobile.EnablePlaceholder = true;
6591
- Mobile.Value = value;
6592
- this.renderComponentService.renderDynamicComponent(this.Item, PhoneComponent, this.group, Mobile);
6593
- break;
6594
- //MultilineText
6595
- case exports.DataType.MultilineText:
6596
- var MultilineText = new TextAreaOptions();
6597
- MultilineText.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6598
- MultilineText.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6599
- MultilineText.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6600
- MultilineText.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6601
- MultilineText.ViewType = this.RepeaterField.ControlOptions.ViewType;
6602
- MultilineText.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6603
- if (this.RepeaterField.ControlOptions.maxLength)
6604
- MultilineText.MaxLength = this.RepeaterField.ControlOptions.maxLength;
6605
- if (this.RepeaterField.ControlOptions.minLength)
6606
- MultilineText.MinLength = this.RepeaterField.ControlOptions.minLength;
6607
- MultilineText.Rows = this.RepeaterField.ControlOptions.rows;
6608
- MultilineText.ForceDirection = this.RepeaterField.ControlOptions.ForceDirection;
6609
- MultilineText.Value = value;
6610
- this.renderComponentService.renderDynamicComponent(this.Item, TextAreaComponent, this.group, MultilineText);
6611
- break;
6612
- //HTML
6613
- case exports.DataType.HTML:
6614
- var HTML = new HtmlEditorOptions();
6615
- HTML.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6616
- HTML.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6617
- HTML.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6618
- HTML.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6619
- HTML.ViewType = this.RepeaterField.ControlOptions.ViewType;
6620
- HTML.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6621
- if (this.RepeaterField.ControlOptions.maxLength)
6622
- HTML.MaxLength = this.RepeaterField.ControlOptions.maxLength;
6623
- if (this.RepeaterField.ControlOptions.minLength)
6624
- HTML.MinLength = this.RepeaterField.ControlOptions.minLength;
6625
- HTML.Height = this.RepeaterField.ControlOptions.rows;
6626
- HTML.ForceDirection = this.RepeaterField.ControlOptions.ForceDirection;
6627
- HTML.Value = value;
6628
- this.renderComponentService.renderDynamicComponent(this.Item, HtmlEditorComponent, this.group, HTML);
6629
- break;
6630
- //Boolean
6631
- case exports.DataType.Boolean:
6632
- var Boolean = new ToggleSlideOptions();
6633
- Boolean.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6634
- Boolean.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6635
- Boolean.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6636
- Boolean.ViewType = this.RepeaterField.ControlOptions.ViewType;
6637
- Boolean.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6638
- Boolean.Value = value;
6639
- this.renderComponentService.renderDynamicComponent(this.Item, ToggleslideComponent, this.group, Boolean);
6640
- break;
6641
- //Location
6642
- case exports.DataType.Location:
6643
- var Location = new MapAutoCompleteOptions();
6644
- Location.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6645
- Location.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6646
- Location.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6647
- Location.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6648
- Location.ViewType = this.RepeaterField.ControlOptions.ViewType;
6649
- Location.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6650
- Location.Value = value;
6651
- this.renderComponentService.renderDynamicComponent(this.Item, MapAutoCompleteComponent, this.group, Location);
6652
- break;
6653
- default:
6654
- break;
6363
+ if (changes.itemNumber)
6364
+ if (changes.itemNumber.previousValue) {
6365
+ var name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.previousValue.toString() + "." + this.controlNumber.toString();
6366
+ var value = this.group.controls[name].value;
6367
+ this.Item.clear();
6368
+ this.group.removeControl(name);
6369
+ switch (this.RepeaterField.ControlType) {
6370
+ ///TextBox
6371
+ case exports.DataType.Text:
6372
+ var Text = new TextBoxOptions();
6373
+ Text.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6374
+ Text.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6375
+ Text.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6376
+ Text.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6377
+ Text.ViewType = this.RepeaterField.ControlOptions.ViewType;
6378
+ Text.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6379
+ Text.Type = exports.InputType.Text;
6380
+ if (this.RepeaterField.ControlOptions.maxLength)
6381
+ Text.MaxLength = this.RepeaterField.ControlOptions.maxLength;
6382
+ if (this.RepeaterField.ControlOptions.minLength)
6383
+ Text.MinLength = this.RepeaterField.ControlOptions.minLength;
6384
+ Text.Value = value;
6385
+ this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Text);
6386
+ break;
6387
+ case exports.DataType.Name:
6388
+ var Name = new TextBoxOptions();
6389
+ Name.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6390
+ Name.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6391
+ Name.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6392
+ Name.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6393
+ Name.ViewType = this.RepeaterField.ControlOptions.ViewType;
6394
+ Name.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6395
+ if (this.RepeaterField.ControlOptions.maxLength)
6396
+ Name.MaxLength = this.RepeaterField.ControlOptions.maxLength;
6397
+ if (this.RepeaterField.ControlOptions.minLength)
6398
+ Name.MinLength = this.RepeaterField.ControlOptions.minLength;
6399
+ Name.Type = exports.InputType.Text;
6400
+ Name.Value = value;
6401
+ this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Name);
6402
+ break;
6403
+ case exports.DataType.Email:
6404
+ var Email = new TextBoxOptions();
6405
+ Email.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6406
+ Email.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6407
+ Email.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6408
+ Email.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6409
+ Email.ViewType = this.RepeaterField.ControlOptions.ViewType;
6410
+ Email.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6411
+ Email.Type = exports.InputType.Email;
6412
+ Email.Value = value;
6413
+ this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Email);
6414
+ break;
6415
+ case exports.DataType.Number:
6416
+ var Number = new TextBoxOptions();
6417
+ Number.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6418
+ Number.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6419
+ Number.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6420
+ Number.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6421
+ Number.ViewType = this.RepeaterField.ControlOptions.ViewType;
6422
+ Number.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6423
+ Number.Type = exports.InputType.Number;
6424
+ var rangeNumber = new RangeNumber();
6425
+ rangeNumber.To = this.RepeaterField.ControlOptions.maxLength;
6426
+ rangeNumber.From = this.RepeaterField.ControlOptions.minLength;
6427
+ Number.NumberRange = rangeNumber;
6428
+ Number.Value = value;
6429
+ this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Number);
6430
+ break;
6431
+ ///DateTime
6432
+ case exports.DataType.Date:
6433
+ var Date = new DatePickerOptions();
6434
+ Date.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6435
+ Date.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6436
+ Date.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6437
+ Date.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6438
+ Date.ViewType = this.RepeaterField.ControlOptions.ViewType;
6439
+ Date.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6440
+ Date.PickerType = exports.PickerType.Calendar;
6441
+ Date.SelectMode = exports.SelectMode.Single;
6442
+ Date.StartView = exports.StartView.Month;
6443
+ Date.Value = value;
6444
+ this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, Date);
6445
+ break;
6446
+ case exports.DataType.DateTime:
6447
+ var DateTime = new DatePickerOptions();
6448
+ DateTime.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6449
+ DateTime.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6450
+ DateTime.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6451
+ DateTime.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6452
+ DateTime.ViewType = this.RepeaterField.ControlOptions.ViewType;
6453
+ DateTime.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6454
+ DateTime.PickerType = exports.PickerType.Both;
6455
+ DateTime.SelectMode = exports.SelectMode.Single;
6456
+ DateTime.StartView = exports.StartView.Month;
6457
+ DateTime.Value = value;
6458
+ this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, DateTime);
6459
+ break;
6460
+ case exports.DataType.Time:
6461
+ var Time = new DatePickerOptions();
6462
+ Time.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6463
+ Time.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6464
+ Time.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6465
+ Time.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6466
+ Time.ViewType = this.RepeaterField.ControlOptions.ViewType;
6467
+ Time.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6468
+ Time.PickerType = exports.PickerType.Timer;
6469
+ Time.SelectMode = exports.SelectMode.Single;
6470
+ Time.StartView = exports.StartView.Month;
6471
+ Time.Value = value;
6472
+ this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, Time);
6473
+ break;
6474
+ //Dropdown
6475
+ case exports.DataType.SingleSelect:
6476
+ var SingleSelect = new DropdownOptions();
6477
+ SingleSelect.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6478
+ SingleSelect.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6479
+ SingleSelect.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6480
+ SingleSelect.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6481
+ SingleSelect.ViewType = this.RepeaterField.ControlOptions.ViewType;
6482
+ SingleSelect.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6483
+ SingleSelect.DataSource = this.RepeaterField.ControlOptions.dataSource;
6484
+ SingleSelect.SingleSelection = true;
6485
+ SingleSelect.ShowCheckbox = false;
6486
+ SingleSelect.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6487
+ SingleSelect.SelectedItems = value;
6488
+ this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, SingleSelect);
6489
+ break;
6490
+ case exports.DataType.MulipleSelect:
6491
+ var MulipleSelect = new DropdownOptions();
6492
+ MulipleSelect.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6493
+ MulipleSelect.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6494
+ MulipleSelect.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6495
+ MulipleSelect.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6496
+ MulipleSelect.ViewType = this.RepeaterField.ControlOptions.ViewType;
6497
+ MulipleSelect.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6498
+ MulipleSelect.DataSource = this.RepeaterField.ControlOptions.dataSource;
6499
+ MulipleSelect.SingleSelection = false;
6500
+ MulipleSelect.ShowCheckbox = false;
6501
+ MulipleSelect.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6502
+ MulipleSelect.SelectedItems = value;
6503
+ this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, MulipleSelect);
6504
+ break;
6505
+ case exports.DataType.Goal:
6506
+ var Goal = new DropdownOptions();
6507
+ Goal.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6508
+ Goal.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6509
+ Goal.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6510
+ Goal.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6511
+ Goal.ViewType = this.RepeaterField.ControlOptions.ViewType;
6512
+ Goal.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6513
+ Goal.DataSource = this.RepeaterField.ControlOptions.dataSource;
6514
+ Goal.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
6515
+ Goal.ShowCheckbox = false;
6516
+ Goal.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6517
+ Goal.SelectedItems = value;
6518
+ this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Goal);
6519
+ break;
6520
+ case exports.DataType.Challenge:
6521
+ var Challenge = new DropdownOptions();
6522
+ Challenge.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6523
+ Challenge.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6524
+ Challenge.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6525
+ Challenge.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6526
+ Challenge.ViewType = this.RepeaterField.ControlOptions.ViewType;
6527
+ Challenge.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6528
+ Challenge.DataSource = this.RepeaterField.ControlOptions.dataSource;
6529
+ Challenge.DataSource = this.RepeaterField.ControlOptions.dataSource;
6530
+ Challenge.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
6531
+ Challenge.ShowCheckbox = false;
6532
+ Challenge.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6533
+ Challenge.SelectedItems = value;
6534
+ this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Challenge);
6535
+ break;
6536
+ case exports.DataType.InnovationLab:
6537
+ var InnovationLab = new DropdownOptions();
6538
+ InnovationLab.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6539
+ InnovationLab.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6540
+ InnovationLab.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6541
+ InnovationLab.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6542
+ InnovationLab.ViewType = this.RepeaterField.ControlOptions.ViewType;
6543
+ InnovationLab.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6544
+ InnovationLab.DataSource = this.RepeaterField.ControlOptions.dataSource;
6545
+ InnovationLab.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
6546
+ InnovationLab.ShowCheckbox = false;
6547
+ InnovationLab.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6548
+ InnovationLab.SelectedItems = value;
6549
+ this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, InnovationLab);
6550
+ break;
6551
+ case exports.DataType.Country:
6552
+ var Country = new DropdownOptions();
6553
+ Country.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6554
+ Country.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6555
+ Country.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6556
+ Country.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6557
+ Country.ViewType = this.RepeaterField.ControlOptions.ViewType;
6558
+ Country.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6559
+ Country.DataSource = this.RepeaterField.ControlOptions.dataSource;
6560
+ Country.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
6561
+ Country.ShowCheckbox = false;
6562
+ Country.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
6563
+ Country.SelectedItems = value;
6564
+ this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Country);
6565
+ break;
6566
+ //FileUpload
6567
+ case exports.DataType.File:
6568
+ var File = new FileUploadOptions();
6569
+ File.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6570
+ File.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6571
+ File.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6572
+ File.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6573
+ File.ViewType = this.RepeaterField.ControlOptions.ViewType;
6574
+ File.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6575
+ File.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
6576
+ File.Value = value;
6577
+ this.renderComponentService.renderDynamicComponent(this.Item, FileUploadComponent, this.group, File);
6578
+ break;
6579
+ case exports.DataType.MultiFile:
6580
+ var MultiFile = new FileUploadOptions();
6581
+ File.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6582
+ File.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6583
+ File.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6584
+ File.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6585
+ File.ViewType = this.RepeaterField.ControlOptions.ViewType;
6586
+ File.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6587
+ MultiFile.MaxSizeForAllFilesInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
6588
+ MultiFile.MaxNoOfFiles = this.RepeaterField.ControlOptions.maxFileCount;
6589
+ MultiFile.IsMultipleFile = true;
6590
+ MultiFile.Value = value;
6591
+ this.renderComponentService.renderDynamicComponent(this.Item, FileUploadComponent, this.group, MultiFile);
6592
+ break;
6593
+ //ImageUpload
6594
+ case exports.DataType.Image:
6595
+ var Image = new ImageUploadOptions();
6596
+ Image.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6597
+ Image.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6598
+ Image.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6599
+ Image.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6600
+ Image.ViewType = this.RepeaterField.ControlOptions.ViewType;
6601
+ Image.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6602
+ if (this.RepeaterField.ControlOptions.maxFileSizeInMB)
6603
+ Image.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
6604
+ Image.Value = value;
6605
+ this.renderComponentService.renderDynamicComponent(this.Item, ImageUploaderComponent, this.group, Image);
6606
+ break;
6607
+ case exports.DataType.CoverPhoto:
6608
+ var CoverPhoto = new ImageUploadOptions();
6609
+ CoverPhoto.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6610
+ CoverPhoto.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6611
+ CoverPhoto.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6612
+ CoverPhoto.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6613
+ CoverPhoto.ViewType = this.RepeaterField.ControlOptions.ViewType;
6614
+ CoverPhoto.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6615
+ if (this.RepeaterField.ControlOptions.maxFileSizeInMB)
6616
+ CoverPhoto.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
6617
+ CoverPhoto.Value = value;
6618
+ this.renderComponentService.renderDynamicComponent(this.Item, ImageUploaderComponent, this.group, CoverPhoto);
6619
+ break;
6620
+ //Mobile
6621
+ case exports.DataType.Mobile:
6622
+ var Mobile = new PhoneOptions();
6623
+ Mobile.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6624
+ Mobile.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6625
+ Mobile.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6626
+ Mobile.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6627
+ Mobile.ViewType = this.RepeaterField.ControlOptions.ViewType;
6628
+ Mobile.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6629
+ Mobile.AllowSearch = true;
6630
+ Mobile.PhoneValidation = true;
6631
+ Mobile.SelectFirstCountry = true;
6632
+ Mobile.EnablePlaceholder = true;
6633
+ Mobile.Value = value;
6634
+ this.renderComponentService.renderDynamicComponent(this.Item, PhoneComponent, this.group, Mobile);
6635
+ break;
6636
+ //MultilineText
6637
+ case exports.DataType.MultilineText:
6638
+ var MultilineText = new TextAreaOptions();
6639
+ MultilineText.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6640
+ MultilineText.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6641
+ MultilineText.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6642
+ MultilineText.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6643
+ MultilineText.ViewType = this.RepeaterField.ControlOptions.ViewType;
6644
+ MultilineText.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6645
+ if (this.RepeaterField.ControlOptions.maxLength)
6646
+ MultilineText.MaxLength = this.RepeaterField.ControlOptions.maxLength;
6647
+ if (this.RepeaterField.ControlOptions.minLength)
6648
+ MultilineText.MinLength = this.RepeaterField.ControlOptions.minLength;
6649
+ MultilineText.Rows = this.RepeaterField.ControlOptions.rows;
6650
+ MultilineText.ForceDirection = this.RepeaterField.ControlOptions.ForceDirection;
6651
+ MultilineText.Value = value;
6652
+ this.renderComponentService.renderDynamicComponent(this.Item, TextAreaComponent, this.group, MultilineText);
6653
+ break;
6654
+ //HTML
6655
+ case exports.DataType.HTML:
6656
+ var HTML = new HtmlEditorOptions();
6657
+ HTML.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6658
+ HTML.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6659
+ HTML.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6660
+ HTML.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6661
+ HTML.ViewType = this.RepeaterField.ControlOptions.ViewType;
6662
+ HTML.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6663
+ if (this.RepeaterField.ControlOptions.maxLength)
6664
+ HTML.MaxLength = this.RepeaterField.ControlOptions.maxLength;
6665
+ if (this.RepeaterField.ControlOptions.minLength)
6666
+ HTML.MinLength = this.RepeaterField.ControlOptions.minLength;
6667
+ HTML.Height = this.RepeaterField.ControlOptions.rows;
6668
+ HTML.ForceDirection = this.RepeaterField.ControlOptions.ForceDirection;
6669
+ HTML.Value = value;
6670
+ this.renderComponentService.renderDynamicComponent(this.Item, HtmlEditorComponent, this.group, HTML);
6671
+ break;
6672
+ //Boolean
6673
+ case exports.DataType.Boolean:
6674
+ var Boolean = new ToggleSlideOptions();
6675
+ Boolean.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6676
+ Boolean.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6677
+ Boolean.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6678
+ Boolean.ViewType = this.RepeaterField.ControlOptions.ViewType;
6679
+ Boolean.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6680
+ Boolean.Value = value;
6681
+ this.renderComponentService.renderDynamicComponent(this.Item, ToggleslideComponent, this.group, Boolean);
6682
+ break;
6683
+ //Location
6684
+ case exports.DataType.Location:
6685
+ var Location = new MapAutoCompleteOptions();
6686
+ Location.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
6687
+ Location.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
6688
+ Location.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
6689
+ Location.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
6690
+ Location.ViewType = this.RepeaterField.ControlOptions.ViewType;
6691
+ Location.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
6692
+ Location.Value = value;
6693
+ this.renderComponentService.renderDynamicComponent(this.Item, MapAutoCompleteComponent, this.group, Location);
6694
+ break;
6695
+ default:
6696
+ break;
6697
+ }
6655
6698
  }
6656
- }
6657
6699
  };
6658
6700
  return RepeaterFieldBuilderComponent;
6659
6701
  }());
@@ -6672,7 +6714,8 @@
6672
6714
  group: [{ type: i0.Input }],
6673
6715
  itemNumber: [{ type: i0.Input }],
6674
6716
  controlNumber: [{ type: i0.Input }],
6675
- RepeaterField: [{ type: i0.Input }]
6717
+ RepeaterField: [{ type: i0.Input }],
6718
+ itemsValue: [{ type: i0.Input }]
6676
6719
  };
6677
6720
 
6678
6721
  var RepeaterItemFieldComponent = /** @class */ (function () {
@@ -6696,6 +6739,116 @@
6696
6739
  itemIndex: [{ type: i0.Input }]
6697
6740
  };
6698
6741
 
6742
+ var RepeaterTableComponent = /** @class */ (function () {
6743
+ function RepeaterTableComponent(utilityService) {
6744
+ this.utilityService = utilityService;
6745
+ this.items = [];
6746
+ this.originalItems = [];
6747
+ }
6748
+ RepeaterTableComponent.prototype.ngOnInit = function () {
6749
+ var _this = this;
6750
+ this.repeaterGroup = new forms.FormGroup({});
6751
+ this.group.addControl(this.options.Name, this.repeaterGroup);
6752
+ if (this.options.RepeaterValue.length > 0) {
6753
+ this.originalItems = this.options.RepeaterValue;
6754
+ for (var index = 0; index < this.options.RepeaterValue.length; index++) {
6755
+ this.items.push(index + 1);
6756
+ }
6757
+ }
6758
+ else
6759
+ for (var index = 0; index < this.options.MinRequiredItems; index++) {
6760
+ this.items.push(index);
6761
+ }
6762
+ this.repeaterGroup.valueChanges.subscribe(function (res) {
6763
+ var _a, _b;
6764
+ var result = [];
6765
+ var rowNumber = [];
6766
+ var addItems = [];
6767
+ for (var key in _this.repeaterGroup.controls) {
6768
+ if (Object.prototype.hasOwnProperty.call(_this.repeaterGroup.controls, key)) {
6769
+ var keySplitArr = key.split('.');
6770
+ var item = (_a = {},
6771
+ _a[keySplitArr[1]] = (_b = {}, _b[keySplitArr[0]] = _this.group.controls[_this.options.Name].value[key], _b),
6772
+ _a);
6773
+ addItems.push(item);
6774
+ if (!rowNumber.includes(keySplitArr[1]))
6775
+ rowNumber.push(keySplitArr[1]);
6776
+ }
6777
+ }
6778
+ var _loop_1 = function (index) {
6779
+ var row = rowNumber[index];
6780
+ var addObject = {};
6781
+ var filteredElements = addItems.filter(function (item) { return item[row]; });
6782
+ for (var index_1 = 0; index_1 < filteredElements.length; index_1++) {
6783
+ var filteredElement = filteredElements[index_1];
6784
+ for (var key in filteredElement) {
6785
+ if (Object.prototype.hasOwnProperty.call(filteredElement, key)) {
6786
+ var element = filteredElement[key];
6787
+ for (var key_1 in element) {
6788
+ if (Object.prototype.hasOwnProperty.call(element, key_1)) {
6789
+ var value = element[key_1];
6790
+ addObject[key_1] = value;
6791
+ }
6792
+ }
6793
+ }
6794
+ }
6795
+ }
6796
+ result.push(addObject);
6797
+ };
6798
+ for (var index = 0; index < rowNumber.length; index++) {
6799
+ _loop_1(index);
6800
+ }
6801
+ _this.options.RepeaterValue = result;
6802
+ });
6803
+ };
6804
+ RepeaterTableComponent.prototype.deleteItem = function (Index) {
6805
+ var _a;
6806
+ var _this = this;
6807
+ if (this.items.length == this.options.MinRequiredItems && this.options.IsRequired)
6808
+ return;
6809
+ var deletedControls = [];
6810
+ var controlNames = this.options.RepeaterStructure.map(function (e) { return e.ControlOptions.Name; });
6811
+ for (var key in this.repeaterGroup.controls) {
6812
+ if (Object.prototype.hasOwnProperty.call(this.repeaterGroup.controls, key)) {
6813
+ for (var index = 0; index < controlNames.length; index++) {
6814
+ var element = controlNames[index];
6815
+ var keySplitArr = key.split('.');
6816
+ if (keySplitArr[0] + keySplitArr[1] == "" + element + Index) {
6817
+ var element_1 = this.repeaterGroup.controls[key];
6818
+ deletedControls.push((_a = {}, _a[key] = element_1, _a));
6819
+ }
6820
+ }
6821
+ }
6822
+ }
6823
+ for (var index = 0; index < deletedControls.length; index++) {
6824
+ var element = deletedControls[index];
6825
+ for (var key in element) {
6826
+ if (Object.prototype.hasOwnProperty.call(element, key)) {
6827
+ this.repeaterGroup.removeControl(key);
6828
+ }
6829
+ }
6830
+ }
6831
+ this.items = this.items.filter(function (res) { return res != _this.items[Index]; });
6832
+ };
6833
+ RepeaterTableComponent.prototype.addItem = function () {
6834
+ this.items.push(this.items[this.items.length - 1] + 1);
6835
+ };
6836
+ return RepeaterTableComponent;
6837
+ }());
6838
+ RepeaterTableComponent.decorators = [
6839
+ { type: i0.Component, args: [{
6840
+ selector: 'BBSF-repeater-table',
6841
+ template: "<div class=\"b-control b-repeater-table\">\r\n <table class=\"{{options.RepeaterTableExtraClasses}}\">\r\n <thead>\r\n <tr class=\"{{options.RepeaterTableRowExtraClasses}}\">\r\n <th *ngFor=\"let item of options.RepeaterStructure\" class=\"min-w-150px\">{{item.HeaderTitle}}</th>\r\n <th>{{utilityService.getResourceValue(options.ActionLabelKey)}}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <tr *ngFor=\"let item of items ; index as i\">\r\n <td *ngFor=\"let RepeaterField of options.RepeaterStructure ; index as r\">\r\n <repeater-field-builder [RepeaterField]=\"RepeaterField\" [itemNumber]=\"i\" [itemsValue]=\"originalItems\"\r\n [controlNumber]=\"r\" [group]=\"repeaterGroup\"></repeater-field-builder>\r\n </td>\r\n <td>\r\n <button class=\"{{options.DeleteButtonExtraClasses}}\" type=\"button\" (click)=\"deleteItem(i)\"\r\n [disabled]=\"(items.length ==options.MinRequiredItems&&options.IsRequired) ||(originalItems.length-1>=i)\"> <span\r\n [innerHTML]=\"options.DeleteButtonText\"></span></button>\r\n </td>\r\n </tr>\r\n </tbody>\r\n <tfoot>\r\n <tr>\r\n <button class=\"{{options.AddButtonExtraClasses}}\" type=\"button\" (click)=\"addItem()\"><span\r\n [innerHTML]=\"options.AddButtonText\"></span></button>\r\n </tr>\r\n </tfoot>\r\n </table>\r\n</div>"
6842
+ },] }
6843
+ ];
6844
+ RepeaterTableComponent.ctorParameters = function () { return [
6845
+ { type: bbsfUtilities.UtilityService }
6846
+ ]; };
6847
+ RepeaterTableComponent.propDecorators = {
6848
+ group: [{ type: i0.Input }],
6849
+ options: [{ type: i0.Input }]
6850
+ };
6851
+
6699
6852
  var options;
6700
6853
  exports.AppInjector = void 0;
6701
6854
  angular.FullCalendarModule.registerPlugins([
@@ -6744,6 +6897,7 @@
6744
6897
  RepeaterFieldBuilderComponent,
6745
6898
  NgTemplateNameDirective,
6746
6899
  RepeaterItemFieldComponent,
6900
+ RepeaterTableComponent
6747
6901
  ],
6748
6902
  imports: [
6749
6903
  common.CommonModule,
@@ -6838,6 +6992,7 @@
6838
6992
  RepeaterFieldBuilderComponent,
6839
6993
  NgTemplateNameDirective,
6840
6994
  RepeaterItemFieldComponent,
6995
+ RepeaterTableComponent
6841
6996
  ]
6842
6997
  },] }
6843
6998
  ];
@@ -7243,6 +7398,7 @@
7243
7398
  var RepeaterOptions = /** @class */ (function () {
7244
7399
  function RepeaterOptions() {
7245
7400
  this.MinRequiredItems = 1;
7401
+ this.ActionLabelKey = "";
7246
7402
  this.AddButtonText = "Add";
7247
7403
  this.DeleteButtonText = "Delete";
7248
7404
  this.RepeaterValue = [];
@@ -7640,6 +7796,7 @@
7640
7796
  exports.RepeaterFieldBuilderComponent = RepeaterFieldBuilderComponent;
7641
7797
  exports.RepeaterItemFieldComponent = RepeaterItemFieldComponent;
7642
7798
  exports.RepeaterOptions = RepeaterOptions;
7799
+ exports.RepeaterTableComponent = RepeaterTableComponent;
7643
7800
  exports.SaveDTO = SaveDTO;
7644
7801
  exports.TagsInputComponent = TagsInputComponent;
7645
7802
  exports.TagsInputDTO = TagsInputDTO;