@pepperi-addons/ngx-composite-lib 0.4.2-beta.137 → 0.4.2-beta.138

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.
@@ -51,6 +51,7 @@ export class MenuDataViewComponent {
51
51
  this.fieldsChange.emit(this.fields);
52
52
  }
53
53
  ngOnInit() {
54
+ debugger;
54
55
  if (this.itemKeyLabel == '') {
55
56
  this.translate.get('DATA_VIEW_BUILDER.MENU_ITEM_KEY_TITLE').toPromise().then((res) => {
56
57
  this.itemKeyLabel = res;
@@ -133,4 +134,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
133
134
  }], fieldsChange: [{
134
135
  type: Output
135
136
  }] } });
136
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1kYXRhLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvZGF0YS12aWV3LWJ1aWxkZXIvbWVudS1kYXRhLXZpZXcvbWVudS1kYXRhLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvZGF0YS12aWV3LWJ1aWxkZXIvbWVudS1kYXRhLXZpZXcvbWVudS1kYXRhLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF5QyxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7O0FBY3ZHLE1BQU0sT0FBTyxxQkFBcUI7SUE4QjlCLFlBQ1ksU0FBMkIsRUFDM0IsYUFBK0IsRUFDL0Isc0JBQThDO1FBRjlDLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQUMvQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBN0IxRCxXQUFNLEdBQXlCLEVBQUUsQ0FBQyxDQUFDLHdCQUF3QjtRQUczRCwwQkFBcUIsR0FBd0IsSUFBSSxHQUFHLEVBQWtCLENBQUMsQ0FBQyx1REFBdUQ7UUFHL0gsb0JBQWUsR0FBRyxFQUFFLENBQUM7UUFHckIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFHcEIscUJBQWdCLEdBQUcsSUFBSSxDQUFDO1FBR3hCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBR2xCLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBR3BCLGlCQUFZLEdBQWtDLElBQUksWUFBWSxFQUFtQixDQUFDO1FBRWxGLGVBQVUsR0FBRyxLQUFLLENB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QUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQzthQUMzQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUFhO1FBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxRQUE0QixTQUFTO1FBQzdDLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7O2tIQWhJUSxxQkFBcUI7c0dBQXJCLHFCQUFxQixrZEFDb0IsV0FBVyw2QkNoQmpFLDJySUEyRUE7MkZENURhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDSSxnQkFBZ0I7MktBS3VDLDJCQUEyQjtzQkFBM0YsU0FBUzt1QkFBQyw2QkFBNkIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBRy9ELE1BQU07c0JBREwsS0FBSztnQkFJTixxQkFBcUI7c0JBRHBCLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixnQkFBZ0I7c0JBRGYsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0RyYWdEcm9wLCBDZGtEcmFnRW5kLCBDZGtEcmFnU3RhcnQsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IElQZXBCdXR0b25DbGlja0V2ZW50IH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvYnV0dG9uJztcbmltcG9ydCB7IFBlcERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9kaWFsb2cnO1xuaW1wb3J0IHsgSVBlcERyYWdnYWJsZUl0ZW0gfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9kcmFnZ2FibGUtaXRlbXMnO1xuaW1wb3J0IHsgRGF0YVZpZXdGaWVsZCwgTWVudURhdGFWaWV3RmllbGQgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvcGFwaS1zZGsnO1xuaW1wb3J0IHsgRGF0YVZpZXdCdWlsZGVyU2VydmljZSB9IGZyb20gJy4uL2RhdGEtdmlldy1idWlsZGVyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ21lbnUtZGF0YS12aWV3JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbWVudS1kYXRhLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL21lbnUtZGF0YS12aWV3LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTWVudURhdGFWaWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkKCdzZXBhcmF0b3JUaXRsZU1vZGFsVGVtcGxhdGUnLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pIHNlcGFyYXRvclRpdGxlTW9kYWxUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBASW5wdXQoKSBcbiAgICBmaWVsZHM6IEFycmF5PERhdGFWaWV3RmllbGQ+ID0gW107IC8vIFRoZSBkYXRhIHZpZXcgZmllbGRzLlxuXG4gICAgQElucHV0KClcbiAgICBhdmFpbGFibGVGaWVsZHNUaXRsZXM6IE1hcDxzdHJpbmcsIHN0cmluZz4gPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpOyAvLyA8RmllbGRJRCwgT3JpZ2luYWwgVGl0bGU+IGZyb20gdGhlIGF2YWlsYWJsZSBmaWVsZHMuXG5cbiAgICBASW5wdXQoKSBcbiAgICBlbXB0eURyb3BBcmVhSWQgPSAnJztcblxuICAgIEBJbnB1dCgpIFxuICAgIG1hcHBlZEZpZWxkc0lkID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIHNob3dBZGRTZXBhcmF0b3IgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBpdGVtS2V5TGFiZWwgPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgaXRlbVRpdGxlTGFiZWwgPSAnJztcblxuICAgIEBPdXRwdXQoKVxuICAgIGZpZWxkc0NoYW5nZTogRXZlbnRFbWl0dGVyPERhdGFWaWV3RmllbGRbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPERhdGFWaWV3RmllbGRbXT4oKTtcbiAgICBcbiAgICBpc0dyYWJiaW5nID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxhbnk+IHwgbnVsbCA9IG51bGw7XG4gICAgXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IFBlcERpYWxvZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZGF0YVZpZXdCdWlsZGVyU2VydmljZTogRGF0YVZpZXdCdWlsZGVyU2VydmljZVxuICAgICkgeyBcbiAgICAgICAgdGhpcy5kYXRhVmlld0J1aWxkZXJTZXJ2aWNlLmlzR3JhYmJpbmdDaGFuZ2UkLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNHcmFiYmluZyA9IHZhbHVlO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgXG4gICAgcHJpdmF0ZSBhZGROZXdGaWVsZChkcmFnZ2FibGVJdGVtOiBJUGVwRHJhZ2dhYmxlSXRlbSwgaW5kZXg6IG51bWJlcikge1xuICAgICAgICAvLyBBZGQgbmV3IG1lbnVGaWVsZCB0byB0aGUgbWFwcGVkRmllbGRzLlxuICAgICAgICBjb25zdCBtZW51RmllbGQ6IE1lbnVEYXRhVmlld0ZpZWxkID0geyBGaWVsZElEOiBkcmFnZ2FibGVJdGVtLmRhdGEua2V5LCBUaXRsZTogZHJhZ2dhYmxlSXRlbS50aXRsZSB9O1xuICAgICAgICB0aGlzLnNwbGljZU1hcHBlZEZpZWxkcyhpbmRleCwgMCwgbWVudUZpZWxkKTtcbiAgICB9XG4gICAgXG4gICAgcHJpdmF0ZSBzcGxpY2VNYXBwZWRGaWVsZHMoc3RhcnQ6IG51bWJlciwgZGVsZXRlQ291bnQ6IG51bWJlciwgaXRlbT86IE1lbnVEYXRhVmlld0ZpZWxkKSB7XG4gICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgICB0aGlzLmZpZWxkcy5zcGxpY2Uoc3RhcnQsIGRlbGV0ZUNvdW50LCBpdGVtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZmllbGRzLnNwbGljZShzdGFydCwgZGVsZXRlQ291bnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5ub3RpZnlGaWVsZHNDaGFuZ2UoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNoYW5nZVRpdGxlKG1lbnVGaWVsZDogTWVudURhdGFWaWV3RmllbGQsIHRpdGxlOiBzdHJpbmcpIHtcbiAgICAgICAgbWVudUZpZWxkLlRpdGxlID0gdGl0bGU7XG4gICAgICAgIHRoaXMubm90aWZ5RmllbGRzQ2hhbmdlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBub3RpZnlGaWVsZHNDaGFuZ2UoKSB7XG4gICAgICAgIHRoaXMuZmllbGRzQ2hhbmdlLmVtaXQodGhpcy5maWVsZHMpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBpZih0aGlzLml0ZW1LZXlMYWJlbCA9PSAnJyl7XG4gICAgICAgICAgICB0aGlzLnRyYW5zbGF0ZS5nZXQoJ0RBVEFfVklFV19CVUlMREVSLk1FTlVfSVRFTV9LRVlfVElUTEUnKS50b1Byb21pc2UoKS50aGVuKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLml0ZW1LZXlMYWJlbCA9IHJlcztcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGlmKHRoaXMuaXRlbVRpdGxlTGFiZWwgPT0gJycpe1xuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGUuZ2V0KCdEQVRBX1ZJRVdfQlVJTERFUi5NRU5VX0lURU1fVkFMVUVfVElUTEUnKS50b1Byb21pc2UoKS50aGVuKChyZXMpID0+IHtcbiAgICAgICAgICAgICAgICB0aGlzLml0ZW1UaXRsZUxhYmVsID0gcmVzO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBhZGRTZXBhcmF0b3IoaW5kZXg6IG51bWJlcikge1xuICAgICAgICBjb25zdCBtZW51RmllbGQ6IE1lbnVEYXRhVmlld0ZpZWxkID0geyBGaWVsZElEOiAnJywgVGl0bGU6ICcnIH07XG4gICAgICAgIHRoaXMuc3BsaWNlTWFwcGVkRmllbGRzKGluZGV4LCAwLCBtZW51RmllbGQpO1xuICAgIH1cblxuICAgIG9uRHJhZ1N0YXJ0KGV2ZW50OiBDZGtEcmFnU3RhcnQpIHtcbiAgICAgICAgdGhpcy5kYXRhVmlld0J1aWxkZXJTZXJ2aWNlLm9uRHJhZ1N0YXJ0KGV2ZW50KTtcbiAgICB9XG5cbiAgICBvbkRyYWdFbmQoZXZlbnQ6IENka0RyYWdFbmQpIHtcbiAgICAgICAgdGhpcy5kYXRhVmlld0J1aWxkZXJTZXJ2aWNlLm9uRHJhZ0VuZChldmVudCk7XG4gICAgfVxuICAgIFxuICAgIG9uRHJvcEZpZWxkKGV2ZW50OiBDZGtEcmFnRHJvcDxhbnlbXT4pIHtcbiAgICAgICAgaWYgKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyID09PSBldmVudC5jb250YWluZXIpIHtcbiAgICAgICAgICAgIG1vdmVJdGVtSW5BcnJheShldmVudC5jb250YWluZXIuZGF0YSwgZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KTtcbiAgICAgICAgICAgIHRoaXMubm90aWZ5RmllbGRzQ2hhbmdlKCk7XG4gICAgICAgIH0gZWxzZSBpZiAoZXZlbnQuY29udGFpbmVyLmlkID09PSAnZW1wdHlEcm9wQXJlYScpIHtcbiAgICAgICAgICAgIHRoaXMuYWRkTmV3RmllbGQoZXZlbnQucHJldmlvdXNDb250YWluZXIuZGF0YVtldmVudC5wcmV2aW91c0luZGV4XSwgdGhpcy5maWVsZHMubGVuZ3RoKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuYWRkTmV3RmllbGQoZXZlbnQucHJldmlvdXNDb250YWluZXIuZGF0YVtldmVudC5wcmV2aW91c0luZGV4XSwgZXZlbnQuY3VycmVudEluZGV4KTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uVGl0bGVDaGFuZ2VkKGV2ZW50OiBzdHJpbmcsIG1lbnVGaWVsZDogTWVudURhdGFWaWV3RmllbGQpIHtcbiAgICAgICAgdGhpcy5jaGFuZ2VUaXRsZShtZW51RmllbGQsIGV2ZW50KTtcbiAgICB9XG5cbiAgICBvbkRlbGV0ZU1hcHBlZEZpZWxkKGV2ZW50OiBJUGVwQnV0dG9uQ2xpY2tFdmVudCwgbWVudUZpZWxkOiBNZW51RGF0YVZpZXdGaWVsZCkge1xuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZmllbGRzLmZpbmRJbmRleChtcyA9PiBtcyA9PT0gbWVudUZpZWxkKTtcbiAgICAgICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgICAgICAgIHRoaXMuc3BsaWNlTWFwcGVkRmllbGRzKGluZGV4LCAxKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIG9uRWRpdFNlcGFyYXRvckZpZWxkKGV2ZW50OiBJUGVwQnV0dG9uQ2xpY2tFdmVudCwgbWVudUZpZWxkOiBNZW51RGF0YVZpZXdGaWVsZCkge1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZiA9IHRoaXMuZGlhbG9nU2VydmljZS5vcGVuRGlhbG9nKHRoaXMuc2VwYXJhdG9yVGl0bGVNb2RhbFRlbXBsYXRlLCB7IHZhbHVlOiBtZW51RmllbGQuVGl0bGUgfSk7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmLmFmdGVyQ2xvc2VkKCkuc3Vic2NyaWJlKCh0aXRsZVZhbHVlKSA9PiB7XG4gICAgICAgICAgICBpZiAodGl0bGVWYWx1ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgdGhpcy5jaGFuZ2VUaXRsZShtZW51RmllbGQsIHRpdGxlVmFsdWUpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICBzZXREaWFsb2dWYWx1ZSh2YWx1ZTogc3RyaW5nKSB7XG4gICAgICAgIHRoaXMuY2xvc2VEaWFsb2codmFsdWUpO1xuICAgIH1cblxuICAgIGNsb3NlRGlhbG9nKHZhbHVlOiBzdHJpbmcgfCB1bmRlZmluZWQgPSB1bmRlZmluZWQpIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWY/LmNsb3NlKHZhbHVlKTtcbiAgICB9XG59IiwiPG5nLWNvbnRhaW5lciAqbmdJZj1cImZpZWxkcyA9PT0gbnVsbCB8fCBmaWVsZHMubGVuZ3RoID09PSAwOyB0aGVuIGVtcHR5VGVtcGxhdGU7IGVsc2Ugbm90RW1wdHlUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuPG5nLXRlbXBsYXRlICNlbXB0eVRlbXBsYXRlPlxuICAgIDxkaXYgW2lkXT1cImVtcHR5RHJvcEFyZWFJZFwiIGNsYXNzPVwiZHJvcC1maWVsZC1oZXJlLWFyZWFcIiBjZGtEcm9wTGlzdCAoY2RrRHJvcExpc3REcm9wcGVkKT1cIm9uRHJvcEZpZWxkKCRldmVudClcIj5cbiAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudFwiPlxuICAgICAgICAgICAgPHBlcC1pY29uIG5hbWU9XCJhcnJvd19kb3duX2FsdFwiPjwvcGVwLWljb24+XG4gICAgICAgIDwvbWF0LWljb24+XG4gICAgICAgIDxzcGFuIGNsYXNzPVwiYm9keS1zbSBlbGxpcHNpc1wiPlxuICAgICAgICAgICAge3sgJ0RBVEFfVklFV19CVUlMREVSLkVNUFRZX0RST1BfQVJFQV9URVhUJyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICA8L3NwYW4+IFxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjbm90RW1wdHlUZW1wbGF0ZT5cbiAgICA8ZGl2IFtpZF09XCJtYXBwZWRGaWVsZHNJZFwiIGNsYXNzPVwibWFwcGVkLWZpZWxkcy1hcmVhXCIgW25nQ2xhc3NdPVwieyAnbm8tcm93LWdhcCc6ICFpc0dyYWJiaW5nIH1cIlxuICAgICAgICBjZGtEcm9wTGlzdCBbY2RrRHJvcExpc3REYXRhXT1cImZpZWxkc1wiIChjZGtEcm9wTGlzdERyb3BwZWQpPVwib25Ecm9wRmllbGQoJGV2ZW50KVwiPlxuICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBtZW51RmllbGQgb2YgZmllbGRzOyBsZXQgaSA9IGluZGV4XCIgPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cIm1hcHBlZC1maWVsZC1jb250YWluZXJcIiBbbmdDbGFzc109XCJ7ICdzZXBhcmF0b3ItY29udGFpbmVyJzogbWVudUZpZWxkLkZpZWxkSUQgPT09ICcnIH1cIiBcbiAgICAgICAgICAgICAgICBjZGtEcmFnIChjZGtEcmFnU3RhcnRlZCk9XCJvbkRyYWdTdGFydCgkZXZlbnQpXCIgKGNka0RyYWdFbmRlZCk9XCJvbkRyYWdFbmQoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJtYXBwZWRGaWVsZFRlbXBsYXRlOyBjb250ZXh0OiB7IG1lbnVGaWVsZDogbWVudUZpZWxkIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiAqbmdJZj1cIiFpc0dyYWJiaW5nXCIgY2xhc3M9XCJhZGQtc2VwYXJhdG9yLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICAgIDxwZXAtYnV0dG9uICpuZ0lmPVwic2hvd0FkZFNlcGFyYXRvclwiIGNsYXNzPVwiYWRkLXNlcGFyYXRvclwiIHN0eWxlVHlwZT1cInJlZ3VsYXJcIiBzaXplVHlwZT1cInNtXCIgaWNvbk5hbWU9XCJudW1iZXJfcGx1c1wiIFxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwiJ0RBVEFfVklFV19CVUlMREVSLkFERF9TRVBBUkFUT1InIHwgdHJhbnNsYXRlXCIgKGJ1dHRvbkNsaWNrKT1cImFkZFNlcGFyYXRvcihpKzEpXCI+PC9wZXAtYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNtYXBwZWRGaWVsZFRlbXBsYXRlIGxldC1tZW51RmllbGQ9XCJtZW51RmllbGRcIj5cbiAgICA8bmctY29udGFpbmVyICpuZ0lmPVwibWVudUZpZWxkLkZpZWxkSUQgIT09ICcnOyB0aGVuIG1lbnVJdGVtVGVtcGxhdGU7IGVsc2Ugc2VwYXJhdG9yVGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cblxuICAgIDxuZy10ZW1wbGF0ZSAjbWVudUl0ZW1UZW1wbGF0ZT5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZpZWxkcy13cmFwcGVyXCI+XG4gICAgICAgICAgICA8cGVwLXRleHRib3ggW2xhYmVsXT1cIml0ZW1LZXlMYWJlbFwiIFt2YWx1ZV09XCJtZW51RmllbGQuRmllbGRJRFwiIFtkaXNhYmxlZF09XCJ0cnVlXCI+XG4gICAgICAgICAgICA8L3BlcC10ZXh0Ym94PlxuICAgICAgICAgICAgXG4gICAgICAgICAgICA8cGVwLXRleHRib3ggW2xhYmVsXT1cIml0ZW1UaXRsZUxhYmVsXCIgW2hpbnRdPVwiJygnICsgKGF2YWlsYWJsZUZpZWxkc1RpdGxlcy5nZXQobWVudUZpZWxkLkZpZWxkSUQpIHx8ICcnKSArICcpJ1wiXG4gICAgICAgICAgICAgICAgW3ZhbHVlXT1cIm1lbnVGaWVsZC5UaXRsZVwiICh2YWx1ZUNoYW5nZSk9XCJvblRpdGxlQ2hhbmdlZCgkZXZlbnQsIG1lbnVGaWVsZClcIj5cbiAgICAgICAgICAgIDwvcGVwLXRleHRib3g+XG4gICAgXG4gICAgICAgICAgICA8cGVwLWJ1dHRvbiBjbGFzcz1cImNlbnRlci1idXR0b25cIiBpY29uTmFtZT1cInN5c3RlbV9iaW5cIiBbdGl0bGVdPVwiJ0FDVElPTlMuREVMRVRFJyB8IHRyYW5zbGF0ZVwiIChidXR0b25DbGljayk9XCJvbkRlbGV0ZU1hcHBlZEZpZWxkKCRldmVudCwgbWVudUZpZWxkKVwiPjwvcGVwLWJ1dHRvbj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8bmctdGVtcGxhdGUgI3NlcGFyYXRvclRlbXBsYXRlPlxuICAgICAgICA8ZGl2IGNsYXNzPVwic2VwYXJhdG9yLXdyYXBwZXIgXCI+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudCB0aXRsZSB0aXRsZS1tZCBjb2xvci1kaW1tZWRcIj5cbiAgICAgICAgICAgICAgICA8c3BhbiBbdGl0bGVdPVwibWVudUZpZWxkLlRpdGxlXCI+e3sgbWVudUZpZWxkLlRpdGxlIH19PC9zcGFuPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwibGlzdC1hY3Rpb25zXCI+XG4gICAgICAgICAgICAgICAgPHBlcC1idXR0b24gaWNvbk5hbWU9XCJzeXN0ZW1fZWRpdFwiIFt0aXRsZV09XCInQUNUSU9OUy5FRElUJyB8IHRyYW5zbGF0ZVwiIHNpemVUeXBlPVwieHNcIiBzdHlsZVR5cGU9XCJyZWd1bGFyXCIgKGJ1dHRvbkNsaWNrKT1cIm9uRWRpdFNlcGFyYXRvckZpZWxkKCRldmVudCwgbWVudUZpZWxkKVwiPjwvcGVwLWJ1dHRvbj5cbiAgICAgICAgICAgICAgICA8cGVwLWJ1dHRvbiBpY29uTmFtZT1cInN5c3RlbV9iaW5cIiBbdGl0bGVdPVwiJ0FDVElPTlMuREVMRVRFJyB8IHRyYW5zbGF0ZVwiIHNpemVUeXBlPVwieHNcIiBzdHlsZVR5cGU9XCJyZWd1bGFyXCIgKGJ1dHRvbkNsaWNrKT1cIm9uRGVsZXRlTWFwcGVkRmllbGQoJGV2ZW50LCBtZW51RmllbGQpXCI+PC9wZXAtYnV0dG9uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuXG48bmctdGVtcGxhdGUgI3NlcGFyYXRvclRpdGxlTW9kYWxUZW1wbGF0ZSBsZXQtZGF0YT5cbiAgICA8cGVwLWRpYWxvZyBbdGl0bGVdPVwiJ0RBVEFfVklFV19CVUlMREVSLlNFUEFSQVRPUl9USVRMRScgfCB0cmFuc2xhdGVcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBwZXAtZGlhbG9nLWNvbnRlbnQ+XG4gICAgICAgICAgICA8cGVwLXRleHRib3ggI3R4dCBbbGFiZWxdPVwiJ0RBVEFfVklFV19CVUlMREVSLkFERF9BX1RJVExFJyB8IHRyYW5zbGF0ZVwiIFsodmFsdWUpXT1cImRhdGEudmFsdWVcIj5cbiAgICAgICAgICAgIDwvcGVwLXRleHRib3g+XG4gICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8bmctY29udGFpbmVyIHBlcC1kaWFsb2ctYWN0aW9ucz5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwZXAtc3BhY2luZy1lbGVtZW50LW5lZ2F0aXZlXCI+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudCBwZXAtYnV0dG9uIG1kIHdlYWtcIlxuICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwiY2xvc2VEaWFsb2coKVwiPlxuICAgICAgICAgICAgICAgICAgICB7eydDYW5jZWwnIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8YnV0dG9uIG1hdC1idXR0b24gY2xhc3M9XCJwZXAtc3BhY2luZy1lbGVtZW50IHBlcC1idXR0b24gbWQgc3Ryb25nXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldERpYWxvZ1ZhbHVlKHR4dC52YWx1ZSlcIj5cbiAgICAgICAgICAgICAgICAgICAge3sgJ1NhdmUnIHwgdHJhbnNsYXRlfX1cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L3BlcC1kaWFsb2c+XG48L25nLXRlbXBsYXRlPlxuIl19
137
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWVudS1kYXRhLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvZGF0YS12aWV3LWJ1aWxkZXIvbWVudS1kYXRhLXZpZXcvbWVudS1kYXRhLXZpZXcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvZGF0YS12aWV3LWJ1aWxkZXIvbWVudS1kYXRhLXZpZXcvbWVudS1kYXRhLXZpZXcuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUF5QyxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRyxPQUFPLEVBQUUsU0FBUyxFQUFFLFlBQVksRUFBRSxLQUFLLEVBQVUsTUFBTSxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7O0FBY3ZHLE1BQU0sT0FBTyxxQkFBcUI7SUE4QjlCLFlBQ1ksU0FBMkIsRUFDM0IsYUFBK0IsRUFDL0Isc0JBQThDO1FBRjlDLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLGtCQUFhLEdBQWIsYUFBYSxDQUFrQjtRQUMvQiwyQkFBc0IsR0FBdEIsc0JBQXNCLENBQXdCO1FBN0IxRCxXQUFNLEdBQXlCLEVBQUUsQ0FBQyxDQUFDLHdCQUF3QjtRQUczRCwwQkFBcUIsR0FBd0IsSUFBSSxHQUFHLEVBQWtCLENBQUMsQ0FBQyx1REFBdUQ7UUFHL0gsb0JBQWUsR0FBRyxFQUFFLENBQUM7UUFHckIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFHcEIscUJBQWdCLEdBQUcsSUFBSSxDQUFDO1FBR3hCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBR2xCLG1CQUFjLEdBQUcsRUFBRSxDQUFDO1FBR3BCLGlCQUFZLEdBQWtDLElBQUksWUFBWSxFQUFtQixDQUFDO1FBRWxGLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFDWCxjQUFTLEdBQTZCLElBQUksQ0FBQztRQU8vQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsaUJBQWlCLENBQUMsU0FBUyxDQUFDLENBQUMsS0FBSyxFQUFFLEVBQUU7WUFDOUQsSUFBSSxDQUFDLFVBQVUsR0FBRyxLQUFLLENBQUM7UUFDNUIsQ0FBQyxDQUFDLENBQUM7SUFDUCxDQUFDO0lBRU8sV0FBVyxDQUFDLGFBQWdDLEVBQUUsS0FBYTtRQUMvRCx5Q0FBeUM7UUFDekMsTUFBTSxTQUFTLEdBQXNCLEVBQUUsT0FBTyxFQUFFLGFBQWEsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLEtBQUssRUFBRSxhQUFhLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDckcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVPLGtCQUFrQixDQUFDLEtBQWEsRUFBRSxXQUFtQixFQUFFLElBQXdCO1FBQ25GLElBQUksSUFBSSxFQUFFO1lBQ04sSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFdBQVcsRUFBRSxJQUFJLENBQUMsQ0FBQztTQUNoRDthQUFNO1lBQ0gsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLFdBQVcsQ0FBQyxDQUFDO1NBQzFDO1FBRUQsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVPLFdBQVcsQ0FBQyxTQUE0QixFQUFFLEtBQWE7UUFDM0QsU0FBUyxDQUFDLEtBQUssR0FBRyxLQUFLLENBQUM7UUFDeEIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVPLGtCQUFrQjtRQUN0QixJQUFJLENBQUMsWUFBWSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELFFBQVE7UUFDSixRQUFRLENBQUM7UUFDVCxJQUFHLElBQUksQ0FBQyxZQUFZLElBQUksRUFBRSxFQUFDO1lBQ3ZCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLHVDQUF1QyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ2pGLElBQUksQ0FBQyxZQUFZLEdBQUcsR0FBRyxDQUFDO1lBQzVCLENBQUMsQ0FBQyxDQUFDO1NBQ047UUFDRCxJQUFHLElBQUksQ0FBQyxjQUFjLElBQUksRUFBRSxFQUFDO1lBQ3pCLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLHlDQUF5QyxDQUFDLENBQUMsU0FBUyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxFQUFFLEVBQUU7Z0JBQ25GLElBQUksQ0FBQyxjQUFjLEdBQUcsR0FBRyxDQUFDO1lBQzlCLENBQUMsQ0FBQyxDQUFDO1NBQ047SUFDTCxDQUFDO0lBRUQsWUFBWSxDQUFDLEtBQWE7UUFDdEIsTUFBTSxTQUFTLEdBQXNCLEVBQUUsT0FBTyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsRUFBRSxFQUFFLENBQUM7UUFDaEUsSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxDQUFDLEVBQUUsU0FBUyxDQUFDLENBQUM7SUFDakQsQ0FBQztJQUVELFdBQVcsQ0FBQyxLQUFtQjtRQUMzQixJQUFJLENBQUMsc0JBQXNCLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ25ELENBQUM7SUFFRCxTQUFTLENBQUMsS0FBaUI7UUFDdkIsSUFBSSxDQUFDLHNCQUFzQixDQUFDLFNBQVMsQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsV0FBVyxDQUFDLEtBQXlCO1FBQ2pDLElBQUksS0FBSyxDQUFDLGlCQUFpQixLQUFLLEtBQUssQ0FBQyxTQUFTLEVBQUU7WUFDN0MsZUFBZSxDQUFDLEtBQUssQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxhQUFhLEVBQUUsS0FBSyxDQUFDLFlBQVksQ0FBQyxDQUFDO1lBQy9FLElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO1NBQzdCO2FBQU0sSUFBSSxLQUFLLENBQUMsU0FBUyxDQUFDLEVBQUUsS0FBSyxlQUFlLEVBQUU7WUFDL0MsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUMsaUJBQWlCLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxhQUFhLENBQUMsRUFBRSxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1NBQzNGO2FBQU07WUFDSCxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztTQUMzRjtJQUNMLENBQUM7SUFFRCxjQUFjLENBQUMsS0FBYSxFQUFFLFNBQTRCO1FBQ3RELElBQUksQ0FBQyxXQUFXLENBQUMsU0FBUyxFQUFFLEtBQUssQ0FBQyxDQUFDO0lBQ3ZDLENBQUM7SUFFRCxtQkFBbUIsQ0FBQyxLQUEyQixFQUFFLFNBQTRCO1FBQ3pFLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLFNBQVMsQ0FBQyxDQUFDO1FBQzVELElBQUksS0FBSyxHQUFHLENBQUMsQ0FBQyxFQUFFO1lBQ1osSUFBSSxDQUFDLGtCQUFrQixDQUFDLEtBQUssRUFBRSxDQUFDLENBQUMsQ0FBQztTQUNyQztJQUNMLENBQUM7SUFFRCxvQkFBb0IsQ0FBQyxLQUEyQixFQUFFLFNBQTRCO1FBQzFFLElBQUksQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGFBQWEsQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLDJCQUEyQixFQUFFLEVBQUUsS0FBSyxFQUFFLFNBQVMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQzdHLElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLENBQUMsU0FBUyxDQUFDLENBQUMsVUFBVSxFQUFFLEVBQUU7WUFDbEQsSUFBSSxVQUFVLEtBQUssU0FBUyxFQUFFO2dCQUMxQixJQUFJLENBQUMsV0FBVyxDQUFDLFNBQVMsRUFBRSxVQUFVLENBQUMsQ0FBQzthQUMzQztRQUNMLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELGNBQWMsQ0FBQyxLQUFhO1FBQ3hCLElBQUksQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDNUIsQ0FBQztJQUVELFdBQVcsQ0FBQyxRQUE0QixTQUFTO1FBQzdDLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7O2tIQWpJUSxxQkFBcUI7c0dBQXJCLHFCQUFxQixrZEFDb0IsV0FBVyw2QkNoQmpFLDJySUEyRUE7MkZENURhLHFCQUFxQjtrQkFMakMsU0FBUzsrQkFDSSxnQkFBZ0I7MktBS3VDLDJCQUEyQjtzQkFBM0YsU0FBUzt1QkFBQyw2QkFBNkIsRUFBRSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUU7Z0JBRy9ELE1BQU07c0JBREwsS0FBSztnQkFJTixxQkFBcUI7c0JBRHBCLEtBQUs7Z0JBSU4sZUFBZTtzQkFEZCxLQUFLO2dCQUlOLGNBQWM7c0JBRGIsS0FBSztnQkFJTixnQkFBZ0I7c0JBRGYsS0FBSztnQkFJTixZQUFZO3NCQURYLEtBQUs7Z0JBSU4sY0FBYztzQkFEYixLQUFLO2dCQUlOLFlBQVk7c0JBRFgsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0RyYWdEcm9wLCBDZGtEcmFnRW5kLCBDZGtEcmFnU3RhcnQsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgTWF0RGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvZGlhbG9nJztcbmltcG9ydCB7IFRyYW5zbGF0ZVNlcnZpY2UgfSBmcm9tICdAbmd4LXRyYW5zbGF0ZS9jb3JlJztcbmltcG9ydCB7IElQZXBCdXR0b25DbGlja0V2ZW50IH0gZnJvbSAnQHBlcHBlcmktYWRkb25zL25neC1saWIvYnV0dG9uJztcbmltcG9ydCB7IFBlcERpYWxvZ1NlcnZpY2UgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9kaWFsb2cnO1xuaW1wb3J0IHsgSVBlcERyYWdnYWJsZUl0ZW0gfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9kcmFnZ2FibGUtaXRlbXMnO1xuaW1wb3J0IHsgRGF0YVZpZXdGaWVsZCwgTWVudURhdGFWaWV3RmllbGQgfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvcGFwaS1zZGsnO1xuaW1wb3J0IHsgRGF0YVZpZXdCdWlsZGVyU2VydmljZSB9IGZyb20gJy4uL2RhdGEtdmlldy1idWlsZGVyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ21lbnUtZGF0YS12aWV3JyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vbWVudS1kYXRhLXZpZXcuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL21lbnUtZGF0YS12aWV3LmNvbXBvbmVudC5zY3NzJ11cbn0pXG5leHBvcnQgY2xhc3MgTWVudURhdGFWaWV3Q29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICBAVmlld0NoaWxkKCdzZXBhcmF0b3JUaXRsZU1vZGFsVGVtcGxhdGUnLCB7IHJlYWQ6IFRlbXBsYXRlUmVmIH0pIHNlcGFyYXRvclRpdGxlTW9kYWxUZW1wbGF0ZSE6IFRlbXBsYXRlUmVmPGFueT47XG5cbiAgICBASW5wdXQoKSBcbiAgICBmaWVsZHM6IEFycmF5PERhdGFWaWV3RmllbGQ+ID0gW107IC8vIFRoZSBkYXRhIHZpZXcgZmllbGRzLlxuXG4gICAgQElucHV0KClcbiAgICBhdmFpbGFibGVGaWVsZHNUaXRsZXM6IE1hcDxzdHJpbmcsIHN0cmluZz4gPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nPigpOyAvLyA8RmllbGRJRCwgT3JpZ2luYWwgVGl0bGU+IGZyb20gdGhlIGF2YWlsYWJsZSBmaWVsZHMuXG5cbiAgICBASW5wdXQoKSBcbiAgICBlbXB0eURyb3BBcmVhSWQgPSAnJztcblxuICAgIEBJbnB1dCgpIFxuICAgIG1hcHBlZEZpZWxkc0lkID0gJyc7XG5cbiAgICBASW5wdXQoKVxuICAgIHNob3dBZGRTZXBhcmF0b3IgPSB0cnVlO1xuXG4gICAgQElucHV0KClcbiAgICBpdGVtS2V5TGFiZWwgPSAnJztcblxuICAgIEBJbnB1dCgpXG4gICAgaXRlbVRpdGxlTGFiZWwgPSAnJztcblxuICAgIEBPdXRwdXQoKVxuICAgIGZpZWxkc0NoYW5nZTogRXZlbnRFbWl0dGVyPERhdGFWaWV3RmllbGRbXT4gPSBuZXcgRXZlbnRFbWl0dGVyPERhdGFWaWV3RmllbGRbXT4oKTtcbiAgICBcbiAgICBpc0dyYWJiaW5nID0gZmFsc2U7XG4gICAgcHJpdmF0ZSBkaWFsb2dSZWY6IE1hdERpYWxvZ1JlZjxhbnk+IHwgbnVsbCA9IG51bGw7XG4gICAgXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgdHJhbnNsYXRlOiBUcmFuc2xhdGVTZXJ2aWNlLFxuICAgICAgICBwcml2YXRlIGRpYWxvZ1NlcnZpY2U6IFBlcERpYWxvZ1NlcnZpY2UsXG4gICAgICAgIHByaXZhdGUgZGF0YVZpZXdCdWlsZGVyU2VydmljZTogRGF0YVZpZXdCdWlsZGVyU2VydmljZVxuICAgICkgeyBcbiAgICAgICAgdGhpcy5kYXRhVmlld0J1aWxkZXJTZXJ2aWNlLmlzR3JhYmJpbmdDaGFuZ2UkLnN1YnNjcmliZSgodmFsdWUpID0+IHtcbiAgICAgICAgICAgIHRoaXMuaXNHcmFiYmluZyA9IHZhbHVlO1xuICAgICAgICB9KTtcbiAgICB9XG4gICAgXG4gICAgcHJpdmF0ZSBhZGROZXdGaWVsZChkcmFnZ2FibGVJdGVtOiBJUGVwRHJhZ2dhYmxlSXRlbSwgaW5kZXg6IG51bWJlcikge1xuICAgICAgICAvLyBBZGQgbmV3IG1lbnVGaWVsZCB0byB0aGUgbWFwcGVkRmllbGRzLlxuICAgICAgICBjb25zdCBtZW51RmllbGQ6IE1lbnVEYXRhVmlld0ZpZWxkID0geyBGaWVsZElEOiBkcmFnZ2FibGVJdGVtLmRhdGEua2V5LCBUaXRsZTogZHJhZ2dhYmxlSXRlbS50aXRsZSB9O1xuICAgICAgICB0aGlzLnNwbGljZU1hcHBlZEZpZWxkcyhpbmRleCwgMCwgbWVudUZpZWxkKTtcbiAgICB9XG4gICAgXG4gICAgcHJpdmF0ZSBzcGxpY2VNYXBwZWRGaWVsZHMoc3RhcnQ6IG51bWJlciwgZGVsZXRlQ291bnQ6IG51bWJlciwgaXRlbT86IE1lbnVEYXRhVmlld0ZpZWxkKSB7XG4gICAgICAgIGlmIChpdGVtKSB7XG4gICAgICAgICAgICB0aGlzLmZpZWxkcy5zcGxpY2Uoc3RhcnQsIGRlbGV0ZUNvdW50LCBpdGVtKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHRoaXMuZmllbGRzLnNwbGljZShzdGFydCwgZGVsZXRlQ291bnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5ub3RpZnlGaWVsZHNDaGFuZ2UoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNoYW5nZVRpdGxlKG1lbnVGaWVsZDogTWVudURhdGFWaWV3RmllbGQsIHRpdGxlOiBzdHJpbmcpIHtcbiAgICAgICAgbWVudUZpZWxkLlRpdGxlID0gdGl0bGU7XG4gICAgICAgIHRoaXMubm90aWZ5RmllbGRzQ2hhbmdlKCk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBub3RpZnlGaWVsZHNDaGFuZ2UoKSB7XG4gICAgICAgIHRoaXMuZmllbGRzQ2hhbmdlLmVtaXQodGhpcy5maWVsZHMpO1xuICAgIH1cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBkZWJ1Z2dlcjtcbiAgICAgICAgaWYodGhpcy5pdGVtS2V5TGFiZWwgPT0gJycpe1xuICAgICAgICAgICAgdGhpcy50cmFuc2xhdGUuZ2V0KCdEQVRBX1ZJRVdfQlVJTERFUi5NRU5VX0lURU1fS0VZX1RJVExFJykudG9Qcm9taXNlKCkudGhlbigocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtS2V5TGFiZWwgPSByZXM7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBpZih0aGlzLml0ZW1UaXRsZUxhYmVsID09ICcnKXtcbiAgICAgICAgICAgIHRoaXMudHJhbnNsYXRlLmdldCgnREFUQV9WSUVXX0JVSUxERVIuTUVOVV9JVEVNX1ZBTFVFX1RJVExFJykudG9Qcm9taXNlKCkudGhlbigocmVzKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5pdGVtVGl0bGVMYWJlbCA9IHJlcztcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgfVxuXG4gICAgYWRkU2VwYXJhdG9yKGluZGV4OiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgbWVudUZpZWxkOiBNZW51RGF0YVZpZXdGaWVsZCA9IHsgRmllbGRJRDogJycsIFRpdGxlOiAnJyB9O1xuICAgICAgICB0aGlzLnNwbGljZU1hcHBlZEZpZWxkcyhpbmRleCwgMCwgbWVudUZpZWxkKTtcbiAgICB9XG5cbiAgICBvbkRyYWdTdGFydChldmVudDogQ2RrRHJhZ1N0YXJ0KSB7XG4gICAgICAgIHRoaXMuZGF0YVZpZXdCdWlsZGVyU2VydmljZS5vbkRyYWdTdGFydChldmVudCk7XG4gICAgfVxuXG4gICAgb25EcmFnRW5kKGV2ZW50OiBDZGtEcmFnRW5kKSB7XG4gICAgICAgIHRoaXMuZGF0YVZpZXdCdWlsZGVyU2VydmljZS5vbkRyYWdFbmQoZXZlbnQpO1xuICAgIH1cbiAgICBcbiAgICBvbkRyb3BGaWVsZChldmVudDogQ2RrRHJhZ0Ryb3A8YW55W10+KSB7XG4gICAgICAgIGlmIChldmVudC5wcmV2aW91c0NvbnRhaW5lciA9PT0gZXZlbnQuY29udGFpbmVyKSB7XG4gICAgICAgICAgICBtb3ZlSXRlbUluQXJyYXkoZXZlbnQuY29udGFpbmVyLmRhdGEsIGV2ZW50LnByZXZpb3VzSW5kZXgsIGV2ZW50LmN1cnJlbnRJbmRleCk7XG4gICAgICAgICAgICB0aGlzLm5vdGlmeUZpZWxkc0NoYW5nZSgpO1xuICAgICAgICB9IGVsc2UgaWYgKGV2ZW50LmNvbnRhaW5lci5pZCA9PT0gJ2VtcHR5RHJvcEFyZWEnKSB7XG4gICAgICAgICAgICB0aGlzLmFkZE5ld0ZpZWxkKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyLmRhdGFbZXZlbnQucHJldmlvdXNJbmRleF0sIHRoaXMuZmllbGRzLmxlbmd0aCk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICB0aGlzLmFkZE5ld0ZpZWxkKGV2ZW50LnByZXZpb3VzQ29udGFpbmVyLmRhdGFbZXZlbnQucHJldmlvdXNJbmRleF0sIGV2ZW50LmN1cnJlbnRJbmRleCk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvblRpdGxlQ2hhbmdlZChldmVudDogc3RyaW5nLCBtZW51RmllbGQ6IE1lbnVEYXRhVmlld0ZpZWxkKSB7XG4gICAgICAgIHRoaXMuY2hhbmdlVGl0bGUobWVudUZpZWxkLCBldmVudCk7XG4gICAgfVxuXG4gICAgb25EZWxldGVNYXBwZWRGaWVsZChldmVudDogSVBlcEJ1dHRvbkNsaWNrRXZlbnQsIG1lbnVGaWVsZDogTWVudURhdGFWaWV3RmllbGQpIHtcbiAgICAgICAgY29uc3QgaW5kZXggPSB0aGlzLmZpZWxkcy5maW5kSW5kZXgobXMgPT4gbXMgPT09IG1lbnVGaWVsZCk7XG4gICAgICAgIGlmIChpbmRleCA+IC0xKSB7XG4gICAgICAgICAgICB0aGlzLnNwbGljZU1hcHBlZEZpZWxkcyhpbmRleCwgMSk7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBvbkVkaXRTZXBhcmF0b3JGaWVsZChldmVudDogSVBlcEJ1dHRvbkNsaWNrRXZlbnQsIG1lbnVGaWVsZDogTWVudURhdGFWaWV3RmllbGQpIHtcbiAgICAgICAgdGhpcy5kaWFsb2dSZWYgPSB0aGlzLmRpYWxvZ1NlcnZpY2Uub3BlbkRpYWxvZyh0aGlzLnNlcGFyYXRvclRpdGxlTW9kYWxUZW1wbGF0ZSwgeyB2YWx1ZTogbWVudUZpZWxkLlRpdGxlIH0pO1xuICAgICAgICB0aGlzLmRpYWxvZ1JlZi5hZnRlckNsb3NlZCgpLnN1YnNjcmliZSgodGl0bGVWYWx1ZSkgPT4ge1xuICAgICAgICAgICAgaWYgKHRpdGxlVmFsdWUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIHRoaXMuY2hhbmdlVGl0bGUobWVudUZpZWxkLCB0aXRsZVZhbHVlKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgc2V0RGlhbG9nVmFsdWUodmFsdWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLmNsb3NlRGlhbG9nKHZhbHVlKTtcbiAgICB9XG5cbiAgICBjbG9zZURpYWxvZyh2YWx1ZTogc3RyaW5nIHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkKSB7XG4gICAgICAgIHRoaXMuZGlhbG9nUmVmPy5jbG9zZSh2YWx1ZSk7XG4gICAgfVxufSIsIjxuZy1jb250YWluZXIgKm5nSWY9XCJmaWVsZHMgPT09IG51bGwgfHwgZmllbGRzLmxlbmd0aCA9PT0gMDsgdGhlbiBlbXB0eVRlbXBsYXRlOyBlbHNlIG5vdEVtcHR5VGVtcGxhdGVcIj48L25nLWNvbnRhaW5lcj5cbjxuZy10ZW1wbGF0ZSAjZW1wdHlUZW1wbGF0ZT5cbiAgICA8ZGl2IFtpZF09XCJlbXB0eURyb3BBcmVhSWRcIiBjbGFzcz1cImRyb3AtZmllbGQtaGVyZS1hcmVhXCIgY2RrRHJvcExpc3QgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJvbkRyb3BGaWVsZCgkZXZlbnQpXCI+XG4gICAgICAgIDxtYXQtaWNvbiBjbGFzcz1cInBlcC1zcGFjaW5nLWVsZW1lbnRcIj5cbiAgICAgICAgICAgIDxwZXAtaWNvbiBuYW1lPVwiYXJyb3dfZG93bl9hbHRcIj48L3BlcC1pY29uPlxuICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICA8c3BhbiBjbGFzcz1cImJvZHktc20gZWxsaXBzaXNcIj5cbiAgICAgICAgICAgIHt7ICdEQVRBX1ZJRVdfQlVJTERFUi5FTVBUWV9EUk9QX0FSRUFfVEVYVCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgPC9zcGFuPiBcbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI25vdEVtcHR5VGVtcGxhdGU+XG4gICAgPGRpdiBbaWRdPVwibWFwcGVkRmllbGRzSWRcIiBjbGFzcz1cIm1hcHBlZC1maWVsZHMtYXJlYVwiIFtuZ0NsYXNzXT1cInsgJ25vLXJvdy1nYXAnOiAhaXNHcmFiYmluZyB9XCJcbiAgICAgICAgY2RrRHJvcExpc3QgW2Nka0Ryb3BMaXN0RGF0YV09XCJmaWVsZHNcIiAoY2RrRHJvcExpc3REcm9wcGVkKT1cIm9uRHJvcEZpZWxkKCRldmVudClcIj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdGb3I9XCJsZXQgbWVudUZpZWxkIG9mIGZpZWxkczsgbGV0IGkgPSBpbmRleFwiID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYXBwZWQtZmllbGQtY29udGFpbmVyXCIgW25nQ2xhc3NdPVwieyAnc2VwYXJhdG9yLWNvbnRhaW5lcic6IG1lbnVGaWVsZC5GaWVsZElEID09PSAnJyB9XCIgXG4gICAgICAgICAgICAgICAgY2RrRHJhZyAoY2RrRHJhZ1N0YXJ0ZWQpPVwib25EcmFnU3RhcnQoJGV2ZW50KVwiIChjZGtEcmFnRW5kZWQpPVwib25EcmFnRW5kKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ1RlbXBsYXRlT3V0bGV0PVwibWFwcGVkRmllbGRUZW1wbGF0ZTsgY29udGV4dDogeyBtZW51RmllbGQ6IG1lbnVGaWVsZCB9XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgKm5nSWY9XCIhaXNHcmFiYmluZ1wiIGNsYXNzPVwiYWRkLXNlcGFyYXRvci1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICA8cGVwLWJ1dHRvbiAqbmdJZj1cInNob3dBZGRTZXBhcmF0b3JcIiBjbGFzcz1cImFkZC1zZXBhcmF0b3JcIiBzdHlsZVR5cGU9XCJyZWd1bGFyXCIgc2l6ZVR5cGU9XCJzbVwiIGljb25OYW1lPVwibnVtYmVyX3BsdXNcIiBcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cIidEQVRBX1ZJRVdfQlVJTERFUi5BRERfU0VQQVJBVE9SJyB8IHRyYW5zbGF0ZVwiIChidXR0b25DbGljayk9XCJhZGRTZXBhcmF0b3IoaSsxKVwiPjwvcGVwLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbjwvbmctdGVtcGxhdGU+XG5cbjxuZy10ZW1wbGF0ZSAjbWFwcGVkRmllbGRUZW1wbGF0ZSBsZXQtbWVudUZpZWxkPVwibWVudUZpZWxkXCI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1lbnVGaWVsZC5GaWVsZElEICE9PSAnJzsgdGhlbiBtZW51SXRlbVRlbXBsYXRlOyBlbHNlIHNlcGFyYXRvclRlbXBsYXRlXCI+PC9uZy1jb250YWluZXI+XG5cbiAgICA8bmctdGVtcGxhdGUgI21lbnVJdGVtVGVtcGxhdGU+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWVsZHMtd3JhcHBlclwiPlxuICAgICAgICAgICAgPHBlcC10ZXh0Ym94IFtsYWJlbF09XCJpdGVtS2V5TGFiZWxcIiBbdmFsdWVdPVwibWVudUZpZWxkLkZpZWxkSURcIiBbZGlzYWJsZWRdPVwidHJ1ZVwiPlxuICAgICAgICAgICAgPC9wZXAtdGV4dGJveD5cbiAgICAgICAgICAgIFxuICAgICAgICAgICAgPHBlcC10ZXh0Ym94IFtsYWJlbF09XCJpdGVtVGl0bGVMYWJlbFwiIFtoaW50XT1cIicoJyArIChhdmFpbGFibGVGaWVsZHNUaXRsZXMuZ2V0KG1lbnVGaWVsZC5GaWVsZElEKSB8fCAnJykgKyAnKSdcIlxuICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJtZW51RmllbGQuVGl0bGVcIiAodmFsdWVDaGFuZ2UpPVwib25UaXRsZUNoYW5nZWQoJGV2ZW50LCBtZW51RmllbGQpXCI+XG4gICAgICAgICAgICA8L3BlcC10ZXh0Ym94PlxuICAgIFxuICAgICAgICAgICAgPHBlcC1idXR0b24gY2xhc3M9XCJjZW50ZXItYnV0dG9uXCIgaWNvbk5hbWU9XCJzeXN0ZW1fYmluXCIgW3RpdGxlXT1cIidBQ1RJT05TLkRFTEVURScgfCB0cmFuc2xhdGVcIiAoYnV0dG9uQ2xpY2spPVwib25EZWxldGVNYXBwZWRGaWVsZCgkZXZlbnQsIG1lbnVGaWVsZClcIj48L3BlcC1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPG5nLXRlbXBsYXRlICNzZXBhcmF0b3JUZW1wbGF0ZT5cbiAgICAgICAgPGRpdiBjbGFzcz1cInNlcGFyYXRvci13cmFwcGVyIFwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInBlcC1zcGFjaW5nLWVsZW1lbnQgdGl0bGUgdGl0bGUtbWQgY29sb3ItZGltbWVkXCI+XG4gICAgICAgICAgICAgICAgPHNwYW4gW3RpdGxlXT1cIm1lbnVGaWVsZC5UaXRsZVwiPnt7IG1lbnVGaWVsZC5UaXRsZSB9fTwvc3Bhbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImxpc3QtYWN0aW9uc1wiPlxuICAgICAgICAgICAgICAgIDxwZXAtYnV0dG9uIGljb25OYW1lPVwic3lzdGVtX2VkaXRcIiBbdGl0bGVdPVwiJ0FDVElPTlMuRURJVCcgfCB0cmFuc2xhdGVcIiBzaXplVHlwZT1cInhzXCIgc3R5bGVUeXBlPVwicmVndWxhclwiIChidXR0b25DbGljayk9XCJvbkVkaXRTZXBhcmF0b3JGaWVsZCgkZXZlbnQsIG1lbnVGaWVsZClcIj48L3BlcC1idXR0b24+XG4gICAgICAgICAgICAgICAgPHBlcC1idXR0b24gaWNvbk5hbWU9XCJzeXN0ZW1fYmluXCIgW3RpdGxlXT1cIidBQ1RJT05TLkRFTEVURScgfCB0cmFuc2xhdGVcIiBzaXplVHlwZT1cInhzXCIgc3R5bGVUeXBlPVwicmVndWxhclwiIChidXR0b25DbGljayk9XCJvbkRlbGV0ZU1hcHBlZEZpZWxkKCRldmVudCwgbWVudUZpZWxkKVwiPjwvcGVwLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICA8L25nLXRlbXBsYXRlPlxuPC9uZy10ZW1wbGF0ZT5cblxuPG5nLXRlbXBsYXRlICNzZXBhcmF0b3JUaXRsZU1vZGFsVGVtcGxhdGUgbGV0LWRhdGE+XG4gICAgPHBlcC1kaWFsb2cgW3RpdGxlXT1cIidEQVRBX1ZJRVdfQlVJTERFUi5TRVBBUkFUT1JfVElUTEUnIHwgdHJhbnNsYXRlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgcGVwLWRpYWxvZy1jb250ZW50PlxuICAgICAgICAgICAgPHBlcC10ZXh0Ym94ICN0eHQgW2xhYmVsXT1cIidEQVRBX1ZJRVdfQlVJTERFUi5BRERfQV9USVRMRScgfCB0cmFuc2xhdGVcIiBbKHZhbHVlKV09XCJkYXRhLnZhbHVlXCI+XG4gICAgICAgICAgICA8L3BlcC10ZXh0Ym94PlxuICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPG5nLWNvbnRhaW5lciBwZXAtZGlhbG9nLWFjdGlvbnM+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudC1uZWdhdGl2ZVwiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gbWF0LWJ1dHRvbiBjbGFzcz1cInBlcC1zcGFjaW5nLWVsZW1lbnQgcGVwLWJ1dHRvbiBtZCB3ZWFrXCJcbiAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cImNsb3NlRGlhbG9nKClcIj5cbiAgICAgICAgICAgICAgICAgICAge3snQ2FuY2VsJyB8IHRyYW5zbGF0ZX19XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBtYXQtYnV0dG9uIGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudCBwZXAtYnV0dG9uIG1kIHN0cm9uZ1wiXG4gICAgICAgICAgICAgICAgICAgIChjbGljayk9XCJzZXREaWFsb2dWYWx1ZSh0eHQudmFsdWUpXCI+XG4gICAgICAgICAgICAgICAgICAgIHt7ICdTYXZlJyB8IHRyYW5zbGF0ZX19XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9uZy1jb250YWluZXI+XG4gICAgPC9wZXAtZGlhbG9nPlxuPC9uZy10ZW1wbGF0ZT5cbiJdfQ==
@@ -81,10 +81,10 @@ export class GenericFieldsBuilderComponent {
81
81
  }
82
82
  }
83
83
  GenericFieldsBuilderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: GenericFieldsBuilderComponent, deps: [{ token: i1.GenericFieldsBuilderService }], target: i0.ɵɵFactoryTarget.Component });
84
- GenericFieldsBuilderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: GenericFieldsBuilderComponent, selector: "pep-generic-fields-builder", inputs: { builderTitle: "builderTitle", builderTitleHint: "builderTitleHint", showAddSeparator: "showAddSeparator", itemKeyLabel: "itemKeyLabel", itemTitleLabel: "itemTitleLabel", availableFields: "availableFields", fieldTemplate: "fieldTemplate", fields: "fields" }, outputs: { fieldsChange: "fieldsChange" }, ngImport: i0, template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i6.PepPageLayoutComponent, selector: "pep-page-layout", inputs: ["addPadding", "showShadow"] }, { kind: "component", type: i7.PepDraggableItemsComponent, selector: "pep-draggable-items", inputs: ["containerId", "showSearch", "title", "titleType", "titleSizeType", "itemPlaceholderType", "dropAreaIds", "items"], outputs: ["itemDragStarted", "itemDragEnded"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
84
+ GenericFieldsBuilderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: GenericFieldsBuilderComponent, selector: "pep-generic-fields-builder", inputs: { builderTitle: "builderTitle", builderTitleHint: "builderTitleHint", showAddSeparator: "showAddSeparator", itemKeyLabel: "itemKeyLabel", itemTitleLabel: "itemTitleLabel", availableFields: "availableFields", fieldTemplate: "fieldTemplate", fields: "fields" }, outputs: { fieldsChange: "fieldsChange" }, ngImport: i0, template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field, index: i }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\" let-index=\"index\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i5.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i6.PepPageLayoutComponent, selector: "pep-page-layout", inputs: ["addPadding", "showShadow"] }, { kind: "component", type: i7.PepDraggableItemsComponent, selector: "pep-draggable-items", inputs: ["containerId", "showSearch", "title", "titleType", "titleSizeType", "itemPlaceholderType", "dropAreaIds", "items"], outputs: ["itemDragStarted", "itemDragEnded"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
85
85
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: GenericFieldsBuilderComponent, decorators: [{
86
86
  type: Component,
87
- args: [{ selector: 'pep-generic-fields-builder', template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"] }]
87
+ args: [{ selector: 'pep-generic-fields-builder', template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field, index: i }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\" let-index=\"index\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"] }]
88
88
  }], ctorParameters: function () { return [{ type: i1.GenericFieldsBuilderService }]; }, propDecorators: { builderTitle: [{
89
89
  type: Input
90
90
  }], builderTitleHint: [{
@@ -104,4 +104,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
104
104
  }], fieldsChange: [{
105
105
  type: Output
106
106
  }] } });
107
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1maWVsZHMtYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tcG9zaXRlLWxpYi9nZW5lcmljLWZpZWxkcy1idWlsZGVyL2dlbmVyaWMtZmllbGRzLWJ1aWxkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvZ2VuZXJpYy1maWVsZHMtYnVpbGRlci9nZW5lcmljLWZpZWxkcy1idWlsZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBeUMsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBMEIsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7QUFTdkcsTUFBTSxPQUFPLDZCQUE2QjtJQW1DdEMsWUFDWSwyQkFBd0Q7UUFBeEQsZ0NBQTJCLEdBQTNCLDJCQUEyQixDQUE2QjtRQW5DcEUsK0JBQStCO1FBQ3RCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUN0QixxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDeEIsaUJBQVksR0FBRyxFQUFFLENBQUM7UUFDbEIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFFckIscUJBQWdCLEdBQTZCLEVBQUUsQ0FBQztRQVMvQyxrQkFBYSxHQUFpQyxTQUFTLENBQUM7UUFFekQsWUFBTyxHQUFVLEVBQUUsQ0FBQztRQVU1QixpQkFBWSxHQUF3QixJQUFJLFlBQVksRUFBUyxDQUFDO1FBRTlELG9CQUFlLEdBQUcsZUFBZSxDQUFDO1FBQ2xDLG1CQUFjLEdBQUcsY0FBYyxDQUFDO1FBQ2hDLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFLZixJQUFJLENBQUMsMkJBQTJCLENBQUMsaUJBQWlCLENBQUMs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QUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFJRixlQUFlO3NCQURsQixLQUFLO2dCQVFHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBSUYsTUFBTTtzQkFEVCxLQUFLO2dCQVNOLFlBQVk7c0JBRFgsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0RyYWdEcm9wLCBDZGtEcmFnRW5kLCBDZGtEcmFnU3RhcnQsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSVBlcERyYWdnYWJsZUl0ZW0gfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9kcmFnZ2FibGUtaXRlbXMnO1xuaW1wb3J0IHsgR2VuZXJpY0ZpZWxkc0J1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi9nZW5lcmljLWZpZWxkcy1idWlsZGVyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3BlcC1nZW5lcmljLWZpZWxkcy1idWlsZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZ2VuZXJpYy1maWVsZHMtYnVpbGRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZ2VuZXJpYy1maWVsZHMtYnVpbGRlci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdlbmVyaWNGaWVsZHNCdWlsZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICAvLyBASW5wdXQoKSB0aXRsZTogc3RyaW5nID0gJyc7XG4gICAgQElucHV0KCkgYnVpbGRlclRpdGxlID0gJyc7XG4gICAgQElucHV0KCkgYnVpbGRlclRpdGxlSGludCA9ICcnO1xuICAgIEBJbnB1dCgpIHNob3dBZGRTZXBhcmF0b3IgPSB0cnVlO1xuICAgIEBJbnB1dCgpIGl0ZW1LZXlMYWJlbCA9ICcnO1xuICAgIEBJbnB1dCgpIGl0ZW1UaXRsZUxhYmVsID0gJyc7XG4gICAgXG4gICAgcHJpdmF0ZSBfYXZhaWxhYmxlRmllbGRzOiBBcnJheTxJUGVwRHJhZ2dhYmxlSXRlbT4gPSBbXTtcbiAgICBASW5wdXQoKVxuICAgIHNldCBhdmFpbGFibGVGaWVsZHModmFsdWU6IEFycmF5PElQZXBEcmFnZ2FibGVJdGVtPikge1xuICAgICAgICB0aGlzLl9hdmFpbGFibGVGaWVsZHMgPSB2YWx1ZTtcbiAgICB9XG4gICAgZ2V0IGF2YWlsYWJsZUZpZWxkcygpOiBBcnJheTxJUGVwRHJhZ2dhYmxlSXRlbT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fYXZhaWxhYmxlRmllbGRzO1xuICAgIH1cbiAgICBcbiAgICBASW5wdXQoKSBmaWVsZFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIFxuICAgIHByaXZhdGUgX2ZpZWxkczogYW55W10gPSBbXTtcbiAgICBASW5wdXQoKVxuICAgIHNldCBmaWVsZHModmFsdWU6IGFueVtdKSB7XG4gICAgICAgIHRoaXMuX2ZpZWxkcyA9IHZhbHVlO1xuICAgIH1cbiAgICBnZXQgZmllbGRzKCkgOiBhbnlbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9maWVsZHM7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpXG4gICAgZmllbGRzQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55W10+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcbiAgICBcbiAgICBlbXB0eURyb3BBcmVhSWQgPSAnZW1wdHlEcm9wQXJlYSc7XG4gICAgbWFwcGVkRmllbGRzSWQgPSAnbWFwcGVkRmllbGRzJztcbiAgICBpc0dyYWJiaW5nID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBnZW5lcmljRmllbGRzQnVpbGRlclNlcnZpY2U6IEdlbmVyaWNGaWVsZHNCdWlsZGVyU2VydmljZVxuICAgICkge1xuICAgICAgICB0aGlzLmdlbmVyaWNGaWVsZHNCdWlsZGVyU2VydmljZS5pc0dyYWJiaW5nQ2hhbmdlJC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzR3JhYmJpbmcgPSB2YWx1ZTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBub3RpZnlGaWVsZHNDaGFuZ2UoKSB7XG4gICAgICAgIHRoaXMuZmllbGRzQ2hhbmdlLmVtaXQodGhpcy5fZmllbGRzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZE5ld0ZpZWxkKGRyYWdnYWJsZUl0ZW06IElQZXBEcmFnZ2FibGVJdGVtLCBpbmRleDogbnVtYmVyKSB7XG4gICAgICAgIC8vIEFkZCBuZXcgbWVudUZpZWxkIHRvIHRoZSBtYXBwZWRGaWVsZHMuXG4gICAgICAgIGNvbnN0IGZpZWxkOiBhbnkgPSB7IGtleTogZHJhZ2dhYmxlSXRlbS5kYXRhLmtleSwgdGl0bGU6IGRyYWdnYWJsZUl0ZW0udGl0bGUgfTtcbiAgICAgICAgdGhpcy5zcGxpY2VNYXBwZWRGaWVsZHMoaW5kZXgsIDAsIGZpZWxkKTtcbiAgICB9XG4gICAgXG4gICAgcHJpdmF0ZSBzcGxpY2VNYXBwZWRGaWVsZHMoc3RhcnQ6IG51bWJlciwgZGVsZXRlQ291bnQ6IG51bWJlciwgZmllbGQ/OiBhbnkpIHtcbiAgICAgICAgaWYgKGZpZWxkKSB7XG4gICAgICAgICAgICB0aGlzLl9maWVsZHMuc3BsaWNlKHN0YXJ0LCBkZWxldGVDb3VudCwgZmllbGQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fZmllbGRzLnNwbGljZShzdGFydCwgZGVsZXRlQ291bnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5ub3RpZnlGaWVsZHNDaGFuZ2UoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgLy9cbiAgICB9XG5cbiAgICBvbkRyYWdTdGFydChldmVudDogQ2RrRHJhZ1N0YXJ0KSB7XG4gICAgICAgIHRoaXMuZ2VuZXJpY0ZpZWxkc0J1aWxkZXJTZXJ2aWNlLm9uRHJhZ1N0YXJ0KGV2ZW50KTtcbiAgICB9XG4gICAgXG4gICAgb25EcmFnRW5kKGV2ZW50OiBDZGtEcmFnRW5kKSB7XG4gICAgICAgIHRoaXMuZ2VuZXJpY0ZpZWxkc0J1aWxkZXJTZXJ2aWNlLm9uRHJhZ0VuZChldmVudCk7XG4gICAgfVxuXG4gICAgb25Ecm9wRmllbGQoZXZlbnQ6IENka0RyYWdEcm9wPGFueVtdPikge1xuICAgICAgICBpZiAoZXZlbnQucHJldmlvdXNDb250YWluZXIgPT09IGV2ZW50LmNvbnRhaW5lcikge1xuICAgICAgICAgICAgbW92ZUl0ZW1JbkFycmF5KGV2ZW50LmNvbnRhaW5lci5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xuICAgICAgICAgICAgdGhpcy5ub3RpZnlGaWVsZHNDaGFuZ2UoKTtcbiAgICAgICAgfSBlbHNlIGlmIChldmVudC5jb250YWluZXIuaWQgPT09ICdlbXB0eURyb3BBcmVhJykge1xuICAgICAgICAgICAgdGhpcy5hZGROZXdGaWVsZChldmVudC5wcmV2aW91c0NvbnRhaW5lci5kYXRhW2V2ZW50LnByZXZpb3VzSW5kZXhdLCB0aGlzLmZpZWxkcy5sZW5ndGgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hZGROZXdGaWVsZChldmVudC5wcmV2aW91c0NvbnRhaW5lci5kYXRhW2V2ZW50LnByZXZpb3VzSW5kZXhdLCBldmVudC5jdXJyZW50SW5kZXgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPHBlcC1wYWdlLWxheW91dCA+XG4gICAgPG5nLWNvbnRhaW5lciBwZXAtbWFpbi1hcmVhPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXZhaWxhYmxlRmllbGRzXCIgY2xhc3M9XCJtYXBwZWQtZmllbGRzLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YWlsYWJsZS1maWVsZHMtc2lkZS1hcmVhXCI+XG4gICAgICAgICAgICAgICAgPHBlcC1kcmFnZ2FibGUtaXRlbXMgW2l0ZW1zXT1cImF2YWlsYWJsZUZpZWxkc1wiIFt0aXRsZV09XCInR0VORVJJQ19GSUVMRFNfQlVJTERFUi5BVkFJTEFCTEVfRklFTERTJyB8IHRyYW5zbGF0ZVwiIHRpdGxlVHlwZT1cIndpdGgtYm90dG9tLWJvcmRlclwiIHRpdGxlU2l6ZVR5cGU9XCJtZFwiXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1QbGFjZWhvbGRlclR5cGU9XCJ3ZWFrXCIgW3Nob3dTZWFyY2hdPVwidHJ1ZVwiIFtkcm9wQXJlYUlkc109XCJbJ2VtcHR5RHJvcEFyZWEnLCAnbWFwcGVkRmllbGRzJ11cIiAoaXRlbURyYWdTdGFydGVkKT1cIm9uRHJhZ1N0YXJ0KCRldmVudClcIiAoaXRlbURyYWdFbmRlZCk9XCJvbkRyYWdFbmQoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgIDwvcGVwLWRyYWdnYWJsZS1pdGVtcz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBwZXAtbWFpbi1hcmVhIGNsYXNzPVwibWFwcGVkLWZpZWxkcy1tYWluLWFyZWFcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFwcGVkLWZpZWxkcy10b3AtYXJlYSBwZXAtYm9yZGVyLWJvdHRvbVwiXG4gICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJidWlsZGVyVGl0bGUgKyAnICcgKyAoYnVpbGRlclRpdGxlSGludCA/ICgnKCcgKyBidWlsZGVyVGl0bGVIaW50ICsgJyknKSA6ICcnKVwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlLW1kXCI+e3sgYnVpbGRlclRpdGxlIH19Jm5ic3A7PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImJ1aWxkZXJUaXRsZUhpbnRcIiBjbGFzcz1cImNvbG9yLWRpbW1lZFwiPih7eyBidWlsZGVyVGl0bGVIaW50IH19KTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRzLWFyZWFcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZpZWxkcyA9PT0gbnVsbCB8fCBmaWVsZHMubGVuZ3RoID09PSAwOyB0aGVuIGVtcHR5VGVtcGxhdGU7IGVsc2Ugbm90RW1wdHlUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2VtcHR5VGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtpZF09XCJlbXB0eURyb3BBcmVhSWRcIiBjbGFzcz1cImRyb3AtZmllbGQtaGVyZS1hcmVhXCIgY2RrRHJvcExpc3QgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJvbkRyb3BGaWVsZCgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGVwLWljb24gbmFtZT1cImFycm93X2Rvd25fYWx0XCI+PC9wZXAtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYm9keS1zbSBlbGxpcHNpc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnR0VORVJJQ19GSUVMRFNfQlVJTERFUi5FTVBUWV9EUk9QX0FSRUFfVEVYVCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm90RW1wdHlUZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW2lkXT1cIm1hcHBlZEZpZWxkc0lkXCIgY2xhc3M9XCJtYXBwZWQtZmllbGRzLWFyZWFcIiBbbmdDbGFzc109XCJ7ICduby1yb3ctZ2FwJzogIWlzR3JhYmJpbmcgfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2RrRHJvcExpc3QgW2Nka0Ryb3BMaXN0RGF0YV09XCJmaWVsZHNcIiAoY2RrRHJvcExpc3REcm9wcGVkKT1cIm9uRHJvcEZpZWxkKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBmaWVsZHM7IGxldCBpID0gaW5kZXhcIiA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYXBwZWQtZmllbGQtY29udGFpbmVyXCIgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZGtEcmFnIChjZGtEcmFnU3RhcnRlZCk9XCJvbkRyYWdTdGFydCgkZXZlbnQpXCIgKGNka0RyYWdFbmRlZCk9XCJvbkRyYWdFbmQoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQtd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaWVsZFRlbXBsYXRlIHx8IGRlZmF1bHRUZW1wbGF0ZTsgY29udGV4dDogeyBmaWVsZDogZmllbGQgfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9uZy1jb250YWluZXI+XG48L3BlcC1wYWdlLWxheW91dD5cblxuPG5nLXRlbXBsYXRlICNkZWZhdWx0VGVtcGxhdGUgbGV0LWZpZWxkPVwiZmllbGRcIj5cbiAgICB7eyAnR0VORVJJQ19GSUVMRFNfQlVJTERFUi5URU1QTEFURV9OT1RfU1VQUExJRUQnIHwgdHJhbnNsYXRlOiB7IGZpZWxkVGl0bGU6IGZpZWxkLnRpdGxlIHx8IGZpZWxkLmtleSB9IH19XG48L25nLXRlbXBsYXRlPlxuIl19
107
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2VuZXJpYy1maWVsZHMtYnVpbGRlci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtY29tcG9zaXRlLWxpYi9nZW5lcmljLWZpZWxkcy1idWlsZGVyL2dlbmVyaWMtZmllbGRzLWJ1aWxkZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LWNvbXBvc2l0ZS1saWIvZ2VuZXJpYy1maWVsZHMtYnVpbGRlci9nZW5lcmljLWZpZWxkcy1idWlsZGVyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBeUMsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEcsT0FBTyxFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBMEIsTUFBTSxlQUFlLENBQUM7Ozs7Ozs7Ozs7QUFTdkcsTUFBTSxPQUFPLDZCQUE2QjtJQW1DdEMsWUFDWSwyQkFBd0Q7UUFBeEQsZ0NBQTJCLEdBQTNCLDJCQUEyQixDQUE2QjtRQW5DcEUsK0JBQStCO1FBQ3RCLGlCQUFZLEdBQUcsRUFBRSxDQUFDO1FBQ2xCLHFCQUFnQixHQUFHLEVBQUUsQ0FBQztRQUN0QixxQkFBZ0IsR0FBRyxJQUFJLENBQUM7UUFDeEIsaUJBQVksR0FBRyxFQUFFLENBQUM7UUFDbEIsbUJBQWMsR0FBRyxFQUFFLENBQUM7UUFFckIscUJBQWdCLEdBQTZCLEVBQUUsQ0FBQztRQVMvQyxrQkFBYSxHQUFpQyxTQUFTLENBQUM7UUFFekQsWUFBTyxHQUFVLEVBQUUsQ0FBQztRQVU1QixpQkFBWSxHQUF3QixJQUFJLFlBQVksRUFBUyxDQUFDO1FBRTlELG9CQUFlLEdBQUcsZUFBZSxDQUFDO1FBQ2xDLG1CQUFjLEdBQUcsY0FBYyxDQUFDO1FBQ2hDLGVBQVUsR0FBRyxLQUFLLENBQUM7UUFLZixJQUFJLENBQUMsMkJBQTJCLENBQUMsaUJBQWlCLENBQUMs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QUs7Z0JBQ0csY0FBYztzQkFBdEIsS0FBSztnQkFJRixlQUFlO3NCQURsQixLQUFLO2dCQVFHLGFBQWE7c0JBQXJCLEtBQUs7Z0JBSUYsTUFBTTtzQkFEVCxLQUFLO2dCQVNOLFlBQVk7c0JBRFgsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0RyYWdEcm9wLCBDZGtEcmFnRW5kLCBDZGtEcmFnU3RhcnQsIG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVGVtcGxhdGVSZWYsIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgSVBlcERyYWdnYWJsZUl0ZW0gfSBmcm9tICdAcGVwcGVyaS1hZGRvbnMvbmd4LWxpYi9kcmFnZ2FibGUtaXRlbXMnO1xuaW1wb3J0IHsgR2VuZXJpY0ZpZWxkc0J1aWxkZXJTZXJ2aWNlIH0gZnJvbSAnLi9nZW5lcmljLWZpZWxkcy1idWlsZGVyLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3BlcC1nZW5lcmljLWZpZWxkcy1idWlsZGVyJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vZ2VuZXJpYy1maWVsZHMtYnVpbGRlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vZ2VuZXJpYy1maWVsZHMtYnVpbGRlci5jb21wb25lbnQuc2NzcyddXG59KVxuZXhwb3J0IGNsYXNzIEdlbmVyaWNGaWVsZHNCdWlsZGVyQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgICAvLyBASW5wdXQoKSB0aXRsZTogc3RyaW5nID0gJyc7XG4gICAgQElucHV0KCkgYnVpbGRlclRpdGxlID0gJyc7XG4gICAgQElucHV0KCkgYnVpbGRlclRpdGxlSGludCA9ICcnO1xuICAgIEBJbnB1dCgpIHNob3dBZGRTZXBhcmF0b3IgPSB0cnVlO1xuICAgIEBJbnB1dCgpIGl0ZW1LZXlMYWJlbCA9ICcnO1xuICAgIEBJbnB1dCgpIGl0ZW1UaXRsZUxhYmVsID0gJyc7XG4gICAgXG4gICAgcHJpdmF0ZSBfYXZhaWxhYmxlRmllbGRzOiBBcnJheTxJUGVwRHJhZ2dhYmxlSXRlbT4gPSBbXTtcbiAgICBASW5wdXQoKVxuICAgIHNldCBhdmFpbGFibGVGaWVsZHModmFsdWU6IEFycmF5PElQZXBEcmFnZ2FibGVJdGVtPikge1xuICAgICAgICB0aGlzLl9hdmFpbGFibGVGaWVsZHMgPSB2YWx1ZTtcbiAgICB9XG4gICAgZ2V0IGF2YWlsYWJsZUZpZWxkcygpOiBBcnJheTxJUGVwRHJhZ2dhYmxlSXRlbT4ge1xuICAgICAgICByZXR1cm4gdGhpcy5fYXZhaWxhYmxlRmllbGRzO1xuICAgIH1cbiAgICBcbiAgICBASW5wdXQoKSBmaWVsZFRlbXBsYXRlOiBUZW1wbGF0ZVJlZjxhbnk+IHwgdW5kZWZpbmVkID0gdW5kZWZpbmVkO1xuICAgIFxuICAgIHByaXZhdGUgX2ZpZWxkczogYW55W10gPSBbXTtcbiAgICBASW5wdXQoKVxuICAgIHNldCBmaWVsZHModmFsdWU6IGFueVtdKSB7XG4gICAgICAgIHRoaXMuX2ZpZWxkcyA9IHZhbHVlO1xuICAgIH1cbiAgICBnZXQgZmllbGRzKCkgOiBhbnlbXSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9maWVsZHM7XG4gICAgfVxuXG4gICAgQE91dHB1dCgpXG4gICAgZmllbGRzQ2hhbmdlOiBFdmVudEVtaXR0ZXI8YW55W10+ID0gbmV3IEV2ZW50RW1pdHRlcjxhbnlbXT4oKTtcbiAgICBcbiAgICBlbXB0eURyb3BBcmVhSWQgPSAnZW1wdHlEcm9wQXJlYSc7XG4gICAgbWFwcGVkRmllbGRzSWQgPSAnbWFwcGVkRmllbGRzJztcbiAgICBpc0dyYWJiaW5nID0gZmFsc2U7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSBnZW5lcmljRmllbGRzQnVpbGRlclNlcnZpY2U6IEdlbmVyaWNGaWVsZHNCdWlsZGVyU2VydmljZVxuICAgICkge1xuICAgICAgICB0aGlzLmdlbmVyaWNGaWVsZHNCdWlsZGVyU2VydmljZS5pc0dyYWJiaW5nQ2hhbmdlJC5zdWJzY3JpYmUoKHZhbHVlKSA9PiB7XG4gICAgICAgICAgICB0aGlzLmlzR3JhYmJpbmcgPSB2YWx1ZTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBub3RpZnlGaWVsZHNDaGFuZ2UoKSB7XG4gICAgICAgIHRoaXMuZmllbGRzQ2hhbmdlLmVtaXQodGhpcy5fZmllbGRzKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGFkZE5ld0ZpZWxkKGRyYWdnYWJsZUl0ZW06IElQZXBEcmFnZ2FibGVJdGVtLCBpbmRleDogbnVtYmVyKSB7XG4gICAgICAgIC8vIEFkZCBuZXcgbWVudUZpZWxkIHRvIHRoZSBtYXBwZWRGaWVsZHMuXG4gICAgICAgIGNvbnN0IGZpZWxkOiBhbnkgPSB7IGtleTogZHJhZ2dhYmxlSXRlbS5kYXRhLmtleSwgdGl0bGU6IGRyYWdnYWJsZUl0ZW0udGl0bGUgfTtcbiAgICAgICAgdGhpcy5zcGxpY2VNYXBwZWRGaWVsZHMoaW5kZXgsIDAsIGZpZWxkKTtcbiAgICB9XG4gICAgXG4gICAgcHJpdmF0ZSBzcGxpY2VNYXBwZWRGaWVsZHMoc3RhcnQ6IG51bWJlciwgZGVsZXRlQ291bnQ6IG51bWJlciwgZmllbGQ/OiBhbnkpIHtcbiAgICAgICAgaWYgKGZpZWxkKSB7XG4gICAgICAgICAgICB0aGlzLl9maWVsZHMuc3BsaWNlKHN0YXJ0LCBkZWxldGVDb3VudCwgZmllbGQpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5fZmllbGRzLnNwbGljZShzdGFydCwgZGVsZXRlQ291bnQpO1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5ub3RpZnlGaWVsZHNDaGFuZ2UoKTtcbiAgICB9XG5cbiAgICBuZ09uSW5pdCgpIHtcbiAgICAgICAgLy9cbiAgICB9XG5cbiAgICBvbkRyYWdTdGFydChldmVudDogQ2RrRHJhZ1N0YXJ0KSB7XG4gICAgICAgIHRoaXMuZ2VuZXJpY0ZpZWxkc0J1aWxkZXJTZXJ2aWNlLm9uRHJhZ1N0YXJ0KGV2ZW50KTtcbiAgICB9XG4gICAgXG4gICAgb25EcmFnRW5kKGV2ZW50OiBDZGtEcmFnRW5kKSB7XG4gICAgICAgIHRoaXMuZ2VuZXJpY0ZpZWxkc0J1aWxkZXJTZXJ2aWNlLm9uRHJhZ0VuZChldmVudCk7XG4gICAgfVxuXG4gICAgb25Ecm9wRmllbGQoZXZlbnQ6IENka0RyYWdEcm9wPGFueVtdPikge1xuICAgICAgICBpZiAoZXZlbnQucHJldmlvdXNDb250YWluZXIgPT09IGV2ZW50LmNvbnRhaW5lcikge1xuICAgICAgICAgICAgbW92ZUl0ZW1JbkFycmF5KGV2ZW50LmNvbnRhaW5lci5kYXRhLCBldmVudC5wcmV2aW91c0luZGV4LCBldmVudC5jdXJyZW50SW5kZXgpO1xuICAgICAgICAgICAgdGhpcy5ub3RpZnlGaWVsZHNDaGFuZ2UoKTtcbiAgICAgICAgfSBlbHNlIGlmIChldmVudC5jb250YWluZXIuaWQgPT09ICdlbXB0eURyb3BBcmVhJykge1xuICAgICAgICAgICAgdGhpcy5hZGROZXdGaWVsZChldmVudC5wcmV2aW91c0NvbnRhaW5lci5kYXRhW2V2ZW50LnByZXZpb3VzSW5kZXhdLCB0aGlzLmZpZWxkcy5sZW5ndGgpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdGhpcy5hZGROZXdGaWVsZChldmVudC5wcmV2aW91c0NvbnRhaW5lci5kYXRhW2V2ZW50LnByZXZpb3VzSW5kZXhdLCBldmVudC5jdXJyZW50SW5kZXgpO1xuICAgICAgICB9XG4gICAgfVxufVxuIiwiPHBlcC1wYWdlLWxheW91dCA+XG4gICAgPG5nLWNvbnRhaW5lciBwZXAtbWFpbi1hcmVhPlxuICAgICAgICA8ZGl2ICpuZ0lmPVwiYXZhaWxhYmxlRmllbGRzXCIgY2xhc3M9XCJtYXBwZWQtZmllbGRzLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImF2YWlsYWJsZS1maWVsZHMtc2lkZS1hcmVhXCI+XG4gICAgICAgICAgICAgICAgPHBlcC1kcmFnZ2FibGUtaXRlbXMgW2l0ZW1zXT1cImF2YWlsYWJsZUZpZWxkc1wiIFt0aXRsZV09XCInR0VORVJJQ19GSUVMRFNfQlVJTERFUi5BVkFJTEFCTEVfRklFTERTJyB8IHRyYW5zbGF0ZVwiIHRpdGxlVHlwZT1cIndpdGgtYm90dG9tLWJvcmRlclwiIHRpdGxlU2l6ZVR5cGU9XCJtZFwiXG4gICAgICAgICAgICAgICAgICAgIGl0ZW1QbGFjZWhvbGRlclR5cGU9XCJ3ZWFrXCIgW3Nob3dTZWFyY2hdPVwidHJ1ZVwiIFtkcm9wQXJlYUlkc109XCJbJ2VtcHR5RHJvcEFyZWEnLCAnbWFwcGVkRmllbGRzJ11cIiAoaXRlbURyYWdTdGFydGVkKT1cIm9uRHJhZ1N0YXJ0KCRldmVudClcIiAoaXRlbURyYWdFbmRlZCk9XCJvbkRyYWdFbmQoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgIDwvcGVwLWRyYWdnYWJsZS1pdGVtcz5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPGRpdiBwZXAtbWFpbi1hcmVhIGNsYXNzPVwibWFwcGVkLWZpZWxkcy1tYWluLWFyZWFcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwibWFwcGVkLWZpZWxkcy10b3AtYXJlYSBwZXAtYm9yZGVyLWJvdHRvbVwiXG4gICAgICAgICAgICAgICAgICAgIFt0aXRsZV09XCJidWlsZGVyVGl0bGUgKyAnICcgKyAoYnVpbGRlclRpdGxlSGludCA/ICgnKCcgKyBidWlsZGVyVGl0bGVIaW50ICsgJyknKSA6ICcnKVwiPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInRpdGxlLW1kXCI+e3sgYnVpbGRlclRpdGxlIH19Jm5ic3A7PC9zcGFuPlxuICAgICAgICAgICAgICAgICAgICA8c3BhbiAqbmdJZj1cImJ1aWxkZXJUaXRsZUhpbnRcIiBjbGFzcz1cImNvbG9yLWRpbW1lZFwiPih7eyBidWlsZGVyVGl0bGVIaW50IH19KTwvc3Bhbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICBcbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGRzLWFyZWFcIj5cbiAgICAgICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cImZpZWxkcyA9PT0gbnVsbCB8fCBmaWVsZHMubGVuZ3RoID09PSAwOyB0aGVuIGVtcHR5VGVtcGxhdGU7IGVsc2Ugbm90RW1wdHlUZW1wbGF0ZVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgICAgICAgICA8bmctdGVtcGxhdGUgI2VtcHR5VGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IFtpZF09XCJlbXB0eURyb3BBcmVhSWRcIiBjbGFzcz1cImRyb3AtZmllbGQtaGVyZS1hcmVhXCIgY2RrRHJvcExpc3QgKGNka0Ryb3BMaXN0RHJvcHBlZCk9XCJvbkRyb3BGaWVsZCgkZXZlbnQpXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgPG1hdC1pY29uIGNsYXNzPVwicGVwLXNwYWNpbmctZWxlbWVudFwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8cGVwLWljb24gbmFtZT1cImFycm93X2Rvd25fYWx0XCI+PC9wZXAtaWNvbj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L21hdC1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYm9keS1zbSBlbGxpcHNpc1wiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB7eyAnR0VORVJJQ19GSUVMRFNfQlVJTERFUi5FTVBUWV9EUk9QX0FSRUFfVEVYVCcgfCB0cmFuc2xhdGUgfX1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L3NwYW4+IFxuICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgICAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSAjbm90RW1wdHlUZW1wbGF0ZT5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgW2lkXT1cIm1hcHBlZEZpZWxkc0lkXCIgY2xhc3M9XCJtYXBwZWQtZmllbGRzLWFyZWFcIiBbbmdDbGFzc109XCJ7ICduby1yb3ctZ2FwJzogIWlzR3JhYmJpbmcgfVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY2RrRHJvcExpc3QgW2Nka0Ryb3BMaXN0RGF0YV09XCJmaWVsZHNcIiAoY2RrRHJvcExpc3REcm9wcGVkKT1cIm9uRHJvcEZpZWxkKCRldmVudClcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBmaWVsZCBvZiBmaWVsZHM7IGxldCBpID0gaW5kZXhcIiA+XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJtYXBwZWQtZmllbGQtY29udGFpbmVyXCIgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjZGtEcmFnIChjZGtEcmFnU3RhcnRlZCk9XCJvbkRyYWdTdGFydCgkZXZlbnQpXCIgKGNka0RyYWdFbmRlZCk9XCJvbkRyYWdFbmQoJGV2ZW50KVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiZmllbGQtd3JhcHBlclwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJmaWVsZFRlbXBsYXRlIHx8IGRlZmF1bHRUZW1wbGF0ZTsgY29udGV4dDogeyBmaWVsZDogZmllbGQsIGluZGV4OiBpIH1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgIDwvZGl2PlxuICAgIDwvbmctY29udGFpbmVyPlxuPC9wZXAtcGFnZS1sYXlvdXQ+XG5cbjxuZy10ZW1wbGF0ZSAjZGVmYXVsdFRlbXBsYXRlIGxldC1maWVsZD1cImZpZWxkXCIgbGV0LWluZGV4PVwiaW5kZXhcIj5cbiAgICB7eyAnR0VORVJJQ19GSUVMRFNfQlVJTERFUi5URU1QTEFURV9OT1RfU1VQUExJRUQnIHwgdHJhbnNsYXRlOiB7IGZpZWxkVGl0bGU6IGZpZWxkLnRpdGxlIHx8IGZpZWxkLmtleSB9IH19XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -101,6 +101,7 @@ class MenuDataViewComponent {
101
101
  this.fieldsChange.emit(this.fields);
102
102
  }
103
103
  ngOnInit() {
104
+ debugger;
104
105
  if (this.itemKeyLabel == '') {
105
106
  this.translate.get('DATA_VIEW_BUILDER.MENU_ITEM_KEY_TITLE').toPromise().then((res) => {
106
107
  this.itemKeyLabel = res;
@@ -1 +1 @@
1
- {"version":3,"file":"pepperi-addons-ngx-composite-lib-data-view-builder.mjs","sources":["../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.service.ts","../../../projects/ngx-composite-lib/data-view-builder/menu-data-view/menu-data-view.component.ts","../../../projects/ngx-composite-lib/data-view-builder/menu-data-view/menu-data-view.component.html","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.component.ts","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.component.html","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.module.ts","../../../projects/ngx-composite-lib/data-view-builder/public-api.ts","../../../projects/ngx-composite-lib/data-view-builder/pepperi-addons-ngx-composite-lib-data-view-builder.ts"],"sourcesContent":["import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { distinctUntilChanged, filter } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DataViewBuilderService {\n \n // This subject is for is grabbing mode.\n private _isGrabbingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n get isGrabbingChange$(): Observable<boolean> {\n return this._isGrabbingSubject.asObservable().pipe(distinctUntilChanged());\n }\n\n constructor() { \n //\n }\n\n private changeCursorOnDragStart() {\n document.body.classList.add('inheritCursors');\n document.body.style.cursor = 'grabbing';\n this._isGrabbingSubject.next(true);\n }\n\n private changeCursorOnDragEnd() {\n document.body.classList.remove('inheritCursors');\n document.body.style.cursor = 'unset';\n this._isGrabbingSubject.next(false);\n }\n \n onDragStart(event: CdkDragStart) {\n this.changeCursorOnDragStart();\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.changeCursorOnDragEnd();\n }\n}\n","import { CdkDragDrop, CdkDragEnd, CdkDragStart, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { TranslateService } from '@ngx-translate/core';\nimport { IPepButtonClickEvent } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { DataViewField, MenuDataViewField } from '@pepperi-addons/papi-sdk';\nimport { DataViewBuilderService } from '../data-view-builder.service';\n\n@Component({\n selector: 'menu-data-view',\n templateUrl: './menu-data-view.component.html',\n styleUrls: ['./menu-data-view.component.scss']\n})\nexport class MenuDataViewComponent implements OnInit {\n @ViewChild('separatorTitleModalTemplate', { read: TemplateRef }) separatorTitleModalTemplate!: TemplateRef<any>;\n\n @Input() \n fields: Array<DataViewField> = []; // The data view fields.\n\n @Input()\n availableFieldsTitles: Map<string, string> = new Map<string, string>(); // <FieldID, Original Title> from the available fields.\n\n @Input() \n emptyDropAreaId = '';\n\n @Input() \n mappedFieldsId = '';\n\n @Input()\n showAddSeparator = true;\n\n @Input()\n itemKeyLabel = '';\n\n @Input()\n itemTitleLabel = '';\n\n @Output()\n fieldsChange: EventEmitter<DataViewField[]> = new EventEmitter<DataViewField[]>();\n \n isGrabbing = false;\n private dialogRef: MatDialogRef<any> | null = null;\n \n constructor(\n private translate: TranslateService,\n private dialogService: PepDialogService,\n private dataViewBuilderService: DataViewBuilderService\n ) { \n this.dataViewBuilderService.isGrabbingChange$.subscribe((value) => {\n this.isGrabbing = value;\n });\n }\n \n private addNewField(draggableItem: IPepDraggableItem, index: number) {\n // Add new menuField to the mappedFields.\n const menuField: MenuDataViewField = { FieldID: draggableItem.data.key, Title: draggableItem.title };\n this.spliceMappedFields(index, 0, menuField);\n }\n \n private spliceMappedFields(start: number, deleteCount: number, item?: MenuDataViewField) {\n if (item) {\n this.fields.splice(start, deleteCount, item);\n } else {\n this.fields.splice(start, deleteCount);\n }\n\n this.notifyFieldsChange();\n }\n\n private changeTitle(menuField: MenuDataViewField, title: string) {\n menuField.Title = title;\n this.notifyFieldsChange();\n }\n\n private notifyFieldsChange() {\n this.fieldsChange.emit(this.fields);\n }\n\n ngOnInit() {\n if(this.itemKeyLabel == ''){\n this.translate.get('DATA_VIEW_BUILDER.MENU_ITEM_KEY_TITLE').toPromise().then((res) => {\n this.itemKeyLabel = res;\n });\n }\n if(this.itemTitleLabel == ''){\n this.translate.get('DATA_VIEW_BUILDER.MENU_ITEM_VALUE_TITLE').toPromise().then((res) => {\n this.itemTitleLabel = res;\n });\n }\n }\n\n addSeparator(index: number) {\n const menuField: MenuDataViewField = { FieldID: '', Title: '' };\n this.spliceMappedFields(index, 0, menuField);\n }\n\n onDragStart(event: CdkDragStart) {\n this.dataViewBuilderService.onDragStart(event);\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.dataViewBuilderService.onDragEnd(event);\n }\n \n onDropField(event: CdkDragDrop<any[]>) {\n if (event.previousContainer === event.container) {\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\n this.notifyFieldsChange();\n } else if (event.container.id === 'emptyDropArea') {\n this.addNewField(event.previousContainer.data[event.previousIndex], this.fields.length);\n } else {\n this.addNewField(event.previousContainer.data[event.previousIndex], event.currentIndex);\n }\n }\n\n onTitleChanged(event: string, menuField: MenuDataViewField) {\n this.changeTitle(menuField, event);\n }\n\n onDeleteMappedField(event: IPepButtonClickEvent, menuField: MenuDataViewField) {\n const index = this.fields.findIndex(ms => ms === menuField);\n if (index > -1) {\n this.spliceMappedFields(index, 1);\n }\n }\n\n onEditSeparatorField(event: IPepButtonClickEvent, menuField: MenuDataViewField) {\n this.dialogRef = this.dialogService.openDialog(this.separatorTitleModalTemplate, { value: menuField.Title });\n this.dialogRef.afterClosed().subscribe((titleValue) => {\n if (titleValue !== undefined) {\n this.changeTitle(menuField, titleValue);\n }\n });\n }\n\n setDialogValue(value: string) {\n this.closeDialog(value);\n }\n\n closeDialog(value: string | undefined = undefined) {\n this.dialogRef?.close(value);\n }\n}","<ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n<ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'DATA_VIEW_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n</ng-template>\n<ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let menuField of fields; let i = index\" >\n <div class=\"mapped-field-container\" [ngClass]=\"{ 'separator-container': menuField.FieldID === '' }\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n <ng-container *ngTemplateOutlet=\"mappedFieldTemplate; context: { menuField: menuField }\"></ng-container>\n </div>\n <div *ngIf=\"!isGrabbing\" class=\"add-separator-container\">\n <pep-button *ngIf=\"showAddSeparator\" class=\"add-separator\" styleType=\"regular\" sizeType=\"sm\" iconName=\"number_plus\" \n [value]=\"'DATA_VIEW_BUILDER.ADD_SEPARATOR' | translate\" (buttonClick)=\"addSeparator(i+1)\"></pep-button>\n </div>\n </ng-container>\n </div>\n</ng-template>\n\n<ng-template #mappedFieldTemplate let-menuField=\"menuField\">\n <ng-container *ngIf=\"menuField.FieldID !== ''; then menuItemTemplate; else separatorTemplate\"></ng-container>\n\n <ng-template #menuItemTemplate>\n <div class=\"fields-wrapper\">\n <pep-textbox [label]=\"itemKeyLabel\" [value]=\"menuField.FieldID\" [disabled]=\"true\">\n </pep-textbox>\n \n <pep-textbox [label]=\"itemTitleLabel\" [hint]=\"'(' + (availableFieldsTitles.get(menuField.FieldID) || '') + ')'\"\n [value]=\"menuField.Title\" (valueChange)=\"onTitleChanged($event, menuField)\">\n </pep-textbox>\n \n <pep-button class=\"center-button\" iconName=\"system_bin\" [title]=\"'ACTIONS.DELETE' | translate\" (buttonClick)=\"onDeleteMappedField($event, menuField)\"></pep-button>\n </div>\n </ng-template>\n <ng-template #separatorTemplate>\n <div class=\"separator-wrapper \">\n <div class=\"pep-spacing-element title title-md color-dimmed\">\n <span [title]=\"menuField.Title\">{{ menuField.Title }}</span>\n </div>\n <div class=\"list-actions\">\n <pep-button iconName=\"system_edit\" [title]=\"'ACTIONS.EDIT' | translate\" sizeType=\"xs\" styleType=\"regular\" (buttonClick)=\"onEditSeparatorField($event, menuField)\"></pep-button>\n <pep-button iconName=\"system_bin\" [title]=\"'ACTIONS.DELETE' | translate\" sizeType=\"xs\" styleType=\"regular\" (buttonClick)=\"onDeleteMappedField($event, menuField)\"></pep-button>\n </div>\n </div>\n </ng-template>\n</ng-template>\n\n<ng-template #separatorTitleModalTemplate let-data>\n <pep-dialog [title]=\"'DATA_VIEW_BUILDER.SEPARATOR_TITLE' | translate\">\n <ng-container pep-dialog-content>\n <pep-textbox #txt [label]=\"'DATA_VIEW_BUILDER.ADD_A_TITLE' | translate\" [(value)]=\"data.value\">\n </pep-textbox>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"pep-spacing-element-negative\">\n <button mat-button class=\"pep-spacing-element pep-button md weak\"\n (click)=\"closeDialog()\">\n {{'Cancel' | translate}}\n </button>\n <button mat-button class=\"pep-spacing-element pep-button md strong\"\n (click)=\"setDialogValue(txt.value)\">\n {{ 'Save' | translate}}\n </button>\n </div>\n </ng-container>\n </pep-dialog>\n</ng-template>\n","import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { BaseDataView, DataViewField } from '@pepperi-addons/papi-sdk';\nimport { PepDataViewBuilderType } from './data-view-builder.model';\nimport { DataViewBuilderService } from './data-view-builder.service';\n\n@Component({\n selector: 'pep-data-view-builder',\n templateUrl: './data-view-builder.component.html',\n styleUrls: ['./data-view-builder.component.scss']\n})\nexport class DataViewBuilderComponent implements OnInit {\n // @Input() title: string = '';\n @Input() builderTitle = '';\n @Input() builderTitleHint = '';\n @Input() showAddSeparator = true;\n @Input() itemKeyLabel = '';\n @Input() itemTitleLabel = '';\n \n private _availableFields: Array<IPepDraggableItem> = [];\n @Input()\n set availableFields(value: Array<IPepDraggableItem>) {\n this._availableFields = value;\n this.setTitlesMap();\n }\n get availableFields(): Array<IPepDraggableItem> {\n return this._availableFields;\n }\n \n private _dataView!: BaseDataView;\n @Input()\n set dataView(value: BaseDataView) {\n this._dataView = value;\n this.setType();\n this.refreshAvailableFields();\n }\n get dataView() : BaseDataView {\n return this._dataView;\n }\n\n @Output()\n dataViewChange: EventEmitter<BaseDataView> = new EventEmitter<BaseDataView>();\n \n type: PepDataViewBuilderType = 'not-supported';\n \n emptyDropAreaId = 'emptyDropArea';\n mappedFieldsId = 'mappedFields';\n\n availableFieldsTitles: Map<string, string> = new Map<string, string>();\n\n constructor(\n private dataViewBuilderService: DataViewBuilderService\n ) {\n //\n }\n\n private setType() {\n if (this._dataView.Type === 'Menu') {\n this.type = 'menu';\n } else if (this._dataView.Type === 'Grid') {\n this.type = 'list';\n } else if ((this._dataView.Type === 'Card') || \n (this._dataView.Type === 'Form') || \n (this._dataView.Type === 'Large') || \n (this._dataView.Type === 'Line')) {\n this.type = 'card';\n } else {\n this.type = 'not-supported';\n }\n }\n\n private setAvailableFieldPermission(field: string, disable: boolean) {\n // Find the item in the available fields\n const item = this.availableFields.find(as => as.data.key === field);\n \n // If exist disable or enable it.\n if (item) {\n item.disabled = disable;\n }\n }\n\n private refreshAvailableFields() {\n this.availableFields.forEach(af => af.disabled = false);\n \n if (this.dataView && this.dataView.Fields) {\n for (let index = 0; index < this.dataView.Fields.length; index++) {\n this.setAvailableFieldPermission(this.dataView.Fields[index].FieldID, true);\n }\n }\n }\n\n private setTitlesMap() {\n this.availableFieldsTitles.clear();\n\n if (this.availableFields?.length > 0) {\n for (let index = 0; index < this.availableFields.length; index++) {\n const availableField = this.availableFields[index];\n\n if (availableField?.data?.key.length > 0) {\n this.availableFieldsTitles.set(availableField.data.key, availableField.title);\n }\n }\n }\n }\n\n private notifyDataViewChange() {\n this.dataViewChange.emit(this.dataView);\n // console.log(this.dataView);\n }\n\n ngOnInit() {\n //\n }\n\n onDragStart(event: CdkDragStart) {\n this.dataViewBuilderService.onDragStart(event);\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.dataViewBuilderService.onDragEnd(event);\n }\n \n onFieldsChanged(fields: Array<DataViewField>) {\n this.dataView.Fields = fields;\n this.refreshAvailableFields();\n this.notifyDataViewChange();\n }\n}\n","<pep-page-layout >\n <!-- <ng-container pep-top-area>\n <pep-top-bar [title]=\"title\">\n <div header-end-content>\n </div>\n </pep-top-bar>\n </ng-container> -->\n <ng-container pep-main-area>\n <ng-container *ngIf=\"type === 'not-supported' ; then notSupportedTemplate; else supportedTemplate\"></ng-container>\n <ng-template #notSupportedTemplate>\n <span class=\"body-sm ellipsis\">\n {{ 'DATA_VIEW_BUILDER.TYPE_NOT_SUPPORTED' | translate }}\n </span> \n </ng-template>\n <ng-template #supportedTemplate>\n <div *ngIf=\"dataView && availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'DATA_VIEW_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"data-view-by-type-area\" [ngSwitch]=\"type\">\n <ng-container *ngSwitchCase=\"'menu'\">\n <menu-data-view [fields]=\"dataView?.Fields || []\" [availableFieldsTitles]=\"availableFieldsTitles\" [emptyDropAreaId]=\"emptyDropAreaId\"\n [mappedFieldsId]=\"mappedFieldsId\" (fieldsChange)=\"onFieldsChanged($event)\" [showAddSeparator]=\"showAddSeparator\" [itemKeyLabel]=\"itemKeyLabel\" [itemTitleLabel]=\"itemTitleLabel\">\n </menu-data-view>\n </ng-container>\n <!-- <ng-container *ngSwitchDefault>\n </ng-container> -->\n </div>\n </div>\n </div>\n </ng-template>\n </ng-container>\n</pep-page-layout>\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\n\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepMenuModule } from '@pepperi-addons/ngx-lib/menu';\nimport { PepPageLayoutModule } from '@pepperi-addons/ngx-lib/page-layout';\nimport { PepTextboxModule } from '@pepperi-addons/ngx-lib/textbox';\nimport { PepTopBarModule } from '@pepperi-addons/ngx-lib/top-bar';\nimport { PepDraggableItemsModule } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { PepIconRegistry, PepIconModule, pepIconSystemClose, pepIconArrowDownAlt, pepIconSystemBin, pepIconNumberPlus } from '@pepperi-addons/ngx-lib/icon';\n\nimport { DataViewBuilderService } from './data-view-builder.service';\n\nimport { DataViewBuilderComponent } from './data-view-builder.component';\nimport { MenuDataViewComponent } from './menu-data-view/menu-data-view.component';\n\nconst pepIcons = [\n pepIconSystemClose,\n pepIconArrowDownAlt,\n pepIconSystemBin,\n pepIconNumberPlus\n];\n\n@NgModule({\n declarations: [\n DataViewBuilderComponent, MenuDataViewComponent\n ],\n imports: [\n CommonModule,\n DragDropModule,\n MatIconModule,\n PepNgxLibModule,\n PepButtonModule,\n PepDialogModule,\n PepIconModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTextboxModule,\n PepTopBarModule,\n PepDraggableItemsModule,\n ],\n exports: [DataViewBuilderComponent],\n providers: [DataViewBuilderService]\n})\nexport class PepDataViewBuilderModule {\n constructor(\n private pepIconRegistry: PepIconRegistry,\n ) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/data-view-builder\n */\nexport * from './data-view-builder.module';\nexport * from './data-view-builder.component';\nexport * from './data-view-builder.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.DataViewBuilderService","i8","i1.DataViewBuilderService","i2","i4","i5.MenuDataViewComponent","i6","i1"],"mappings":"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"}
1
+ {"version":3,"file":"pepperi-addons-ngx-composite-lib-data-view-builder.mjs","sources":["../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.service.ts","../../../projects/ngx-composite-lib/data-view-builder/menu-data-view/menu-data-view.component.ts","../../../projects/ngx-composite-lib/data-view-builder/menu-data-view/menu-data-view.component.html","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.component.ts","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.component.html","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.module.ts","../../../projects/ngx-composite-lib/data-view-builder/public-api.ts","../../../projects/ngx-composite-lib/data-view-builder/pepperi-addons-ngx-composite-lib-data-view-builder.ts"],"sourcesContent":["import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { distinctUntilChanged, filter } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DataViewBuilderService {\n \n // This subject is for is grabbing mode.\n private _isGrabbingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n get isGrabbingChange$(): Observable<boolean> {\n return this._isGrabbingSubject.asObservable().pipe(distinctUntilChanged());\n }\n\n constructor() { \n //\n }\n\n private changeCursorOnDragStart() {\n document.body.classList.add('inheritCursors');\n document.body.style.cursor = 'grabbing';\n this._isGrabbingSubject.next(true);\n }\n\n private changeCursorOnDragEnd() {\n document.body.classList.remove('inheritCursors');\n document.body.style.cursor = 'unset';\n this._isGrabbingSubject.next(false);\n }\n \n onDragStart(event: CdkDragStart) {\n this.changeCursorOnDragStart();\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.changeCursorOnDragEnd();\n }\n}\n","import { CdkDragDrop, CdkDragEnd, CdkDragStart, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { TranslateService } from '@ngx-translate/core';\nimport { IPepButtonClickEvent } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { DataViewField, MenuDataViewField } from '@pepperi-addons/papi-sdk';\nimport { DataViewBuilderService } from '../data-view-builder.service';\n\n@Component({\n selector: 'menu-data-view',\n templateUrl: './menu-data-view.component.html',\n styleUrls: ['./menu-data-view.component.scss']\n})\nexport class MenuDataViewComponent implements OnInit {\n @ViewChild('separatorTitleModalTemplate', { read: TemplateRef }) separatorTitleModalTemplate!: TemplateRef<any>;\n\n @Input() \n fields: Array<DataViewField> = []; // The data view fields.\n\n @Input()\n availableFieldsTitles: Map<string, string> = new Map<string, string>(); // <FieldID, Original Title> from the available fields.\n\n @Input() \n emptyDropAreaId = '';\n\n @Input() \n mappedFieldsId = '';\n\n @Input()\n showAddSeparator = true;\n\n @Input()\n itemKeyLabel = '';\n\n @Input()\n itemTitleLabel = '';\n\n @Output()\n fieldsChange: EventEmitter<DataViewField[]> = new EventEmitter<DataViewField[]>();\n \n isGrabbing = false;\n private dialogRef: MatDialogRef<any> | null = null;\n \n constructor(\n private translate: TranslateService,\n private dialogService: PepDialogService,\n private dataViewBuilderService: DataViewBuilderService\n ) { \n this.dataViewBuilderService.isGrabbingChange$.subscribe((value) => {\n this.isGrabbing = value;\n });\n }\n \n private addNewField(draggableItem: IPepDraggableItem, index: number) {\n // Add new menuField to the mappedFields.\n const menuField: MenuDataViewField = { FieldID: draggableItem.data.key, Title: draggableItem.title };\n this.spliceMappedFields(index, 0, menuField);\n }\n \n private spliceMappedFields(start: number, deleteCount: number, item?: MenuDataViewField) {\n if (item) {\n this.fields.splice(start, deleteCount, item);\n } else {\n this.fields.splice(start, deleteCount);\n }\n\n this.notifyFieldsChange();\n }\n\n private changeTitle(menuField: MenuDataViewField, title: string) {\n menuField.Title = title;\n this.notifyFieldsChange();\n }\n\n private notifyFieldsChange() {\n this.fieldsChange.emit(this.fields);\n }\n\n ngOnInit() {\n debugger;\n if(this.itemKeyLabel == ''){\n this.translate.get('DATA_VIEW_BUILDER.MENU_ITEM_KEY_TITLE').toPromise().then((res) => {\n this.itemKeyLabel = res;\n });\n }\n if(this.itemTitleLabel == ''){\n this.translate.get('DATA_VIEW_BUILDER.MENU_ITEM_VALUE_TITLE').toPromise().then((res) => {\n this.itemTitleLabel = res;\n });\n }\n }\n\n addSeparator(index: number) {\n const menuField: MenuDataViewField = { FieldID: '', Title: '' };\n this.spliceMappedFields(index, 0, menuField);\n }\n\n onDragStart(event: CdkDragStart) {\n this.dataViewBuilderService.onDragStart(event);\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.dataViewBuilderService.onDragEnd(event);\n }\n \n onDropField(event: CdkDragDrop<any[]>) {\n if (event.previousContainer === event.container) {\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\n this.notifyFieldsChange();\n } else if (event.container.id === 'emptyDropArea') {\n this.addNewField(event.previousContainer.data[event.previousIndex], this.fields.length);\n } else {\n this.addNewField(event.previousContainer.data[event.previousIndex], event.currentIndex);\n }\n }\n\n onTitleChanged(event: string, menuField: MenuDataViewField) {\n this.changeTitle(menuField, event);\n }\n\n onDeleteMappedField(event: IPepButtonClickEvent, menuField: MenuDataViewField) {\n const index = this.fields.findIndex(ms => ms === menuField);\n if (index > -1) {\n this.spliceMappedFields(index, 1);\n }\n }\n\n onEditSeparatorField(event: IPepButtonClickEvent, menuField: MenuDataViewField) {\n this.dialogRef = this.dialogService.openDialog(this.separatorTitleModalTemplate, { value: menuField.Title });\n this.dialogRef.afterClosed().subscribe((titleValue) => {\n if (titleValue !== undefined) {\n this.changeTitle(menuField, titleValue);\n }\n });\n }\n\n setDialogValue(value: string) {\n this.closeDialog(value);\n }\n\n closeDialog(value: string | undefined = undefined) {\n this.dialogRef?.close(value);\n }\n}","<ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n<ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'DATA_VIEW_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n</ng-template>\n<ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let menuField of fields; let i = index\" >\n <div class=\"mapped-field-container\" [ngClass]=\"{ 'separator-container': menuField.FieldID === '' }\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n <ng-container *ngTemplateOutlet=\"mappedFieldTemplate; context: { menuField: menuField }\"></ng-container>\n </div>\n <div *ngIf=\"!isGrabbing\" class=\"add-separator-container\">\n <pep-button *ngIf=\"showAddSeparator\" class=\"add-separator\" styleType=\"regular\" sizeType=\"sm\" iconName=\"number_plus\" \n [value]=\"'DATA_VIEW_BUILDER.ADD_SEPARATOR' | translate\" (buttonClick)=\"addSeparator(i+1)\"></pep-button>\n </div>\n </ng-container>\n </div>\n</ng-template>\n\n<ng-template #mappedFieldTemplate let-menuField=\"menuField\">\n <ng-container *ngIf=\"menuField.FieldID !== ''; then menuItemTemplate; else separatorTemplate\"></ng-container>\n\n <ng-template #menuItemTemplate>\n <div class=\"fields-wrapper\">\n <pep-textbox [label]=\"itemKeyLabel\" [value]=\"menuField.FieldID\" [disabled]=\"true\">\n </pep-textbox>\n \n <pep-textbox [label]=\"itemTitleLabel\" [hint]=\"'(' + (availableFieldsTitles.get(menuField.FieldID) || '') + ')'\"\n [value]=\"menuField.Title\" (valueChange)=\"onTitleChanged($event, menuField)\">\n </pep-textbox>\n \n <pep-button class=\"center-button\" iconName=\"system_bin\" [title]=\"'ACTIONS.DELETE' | translate\" (buttonClick)=\"onDeleteMappedField($event, menuField)\"></pep-button>\n </div>\n </ng-template>\n <ng-template #separatorTemplate>\n <div class=\"separator-wrapper \">\n <div class=\"pep-spacing-element title title-md color-dimmed\">\n <span [title]=\"menuField.Title\">{{ menuField.Title }}</span>\n </div>\n <div class=\"list-actions\">\n <pep-button iconName=\"system_edit\" [title]=\"'ACTIONS.EDIT' | translate\" sizeType=\"xs\" styleType=\"regular\" (buttonClick)=\"onEditSeparatorField($event, menuField)\"></pep-button>\n <pep-button iconName=\"system_bin\" [title]=\"'ACTIONS.DELETE' | translate\" sizeType=\"xs\" styleType=\"regular\" (buttonClick)=\"onDeleteMappedField($event, menuField)\"></pep-button>\n </div>\n </div>\n </ng-template>\n</ng-template>\n\n<ng-template #separatorTitleModalTemplate let-data>\n <pep-dialog [title]=\"'DATA_VIEW_BUILDER.SEPARATOR_TITLE' | translate\">\n <ng-container pep-dialog-content>\n <pep-textbox #txt [label]=\"'DATA_VIEW_BUILDER.ADD_A_TITLE' | translate\" [(value)]=\"data.value\">\n </pep-textbox>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"pep-spacing-element-negative\">\n <button mat-button class=\"pep-spacing-element pep-button md weak\"\n (click)=\"closeDialog()\">\n {{'Cancel' | translate}}\n </button>\n <button mat-button class=\"pep-spacing-element pep-button md strong\"\n (click)=\"setDialogValue(txt.value)\">\n {{ 'Save' | translate}}\n </button>\n </div>\n </ng-container>\n </pep-dialog>\n</ng-template>\n","import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { BaseDataView, DataViewField } from '@pepperi-addons/papi-sdk';\nimport { PepDataViewBuilderType } from './data-view-builder.model';\nimport { DataViewBuilderService } from './data-view-builder.service';\n\n@Component({\n selector: 'pep-data-view-builder',\n templateUrl: './data-view-builder.component.html',\n styleUrls: ['./data-view-builder.component.scss']\n})\nexport class DataViewBuilderComponent implements OnInit {\n // @Input() title: string = '';\n @Input() builderTitle = '';\n @Input() builderTitleHint = '';\n @Input() showAddSeparator = true;\n @Input() itemKeyLabel = '';\n @Input() itemTitleLabel = '';\n \n private _availableFields: Array<IPepDraggableItem> = [];\n @Input()\n set availableFields(value: Array<IPepDraggableItem>) {\n this._availableFields = value;\n this.setTitlesMap();\n }\n get availableFields(): Array<IPepDraggableItem> {\n return this._availableFields;\n }\n \n private _dataView!: BaseDataView;\n @Input()\n set dataView(value: BaseDataView) {\n this._dataView = value;\n this.setType();\n this.refreshAvailableFields();\n }\n get dataView() : BaseDataView {\n return this._dataView;\n }\n\n @Output()\n dataViewChange: EventEmitter<BaseDataView> = new EventEmitter<BaseDataView>();\n \n type: PepDataViewBuilderType = 'not-supported';\n \n emptyDropAreaId = 'emptyDropArea';\n mappedFieldsId = 'mappedFields';\n\n availableFieldsTitles: Map<string, string> = new Map<string, string>();\n\n constructor(\n private dataViewBuilderService: DataViewBuilderService\n ) {\n //\n }\n\n private setType() {\n if (this._dataView.Type === 'Menu') {\n this.type = 'menu';\n } else if (this._dataView.Type === 'Grid') {\n this.type = 'list';\n } else if ((this._dataView.Type === 'Card') || \n (this._dataView.Type === 'Form') || \n (this._dataView.Type === 'Large') || \n (this._dataView.Type === 'Line')) {\n this.type = 'card';\n } else {\n this.type = 'not-supported';\n }\n }\n\n private setAvailableFieldPermission(field: string, disable: boolean) {\n // Find the item in the available fields\n const item = this.availableFields.find(as => as.data.key === field);\n \n // If exist disable or enable it.\n if (item) {\n item.disabled = disable;\n }\n }\n\n private refreshAvailableFields() {\n this.availableFields.forEach(af => af.disabled = false);\n \n if (this.dataView && this.dataView.Fields) {\n for (let index = 0; index < this.dataView.Fields.length; index++) {\n this.setAvailableFieldPermission(this.dataView.Fields[index].FieldID, true);\n }\n }\n }\n\n private setTitlesMap() {\n this.availableFieldsTitles.clear();\n\n if (this.availableFields?.length > 0) {\n for (let index = 0; index < this.availableFields.length; index++) {\n const availableField = this.availableFields[index];\n\n if (availableField?.data?.key.length > 0) {\n this.availableFieldsTitles.set(availableField.data.key, availableField.title);\n }\n }\n }\n }\n\n private notifyDataViewChange() {\n this.dataViewChange.emit(this.dataView);\n // console.log(this.dataView);\n }\n\n ngOnInit() {\n //\n }\n\n onDragStart(event: CdkDragStart) {\n this.dataViewBuilderService.onDragStart(event);\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.dataViewBuilderService.onDragEnd(event);\n }\n \n onFieldsChanged(fields: Array<DataViewField>) {\n this.dataView.Fields = fields;\n this.refreshAvailableFields();\n this.notifyDataViewChange();\n }\n}\n","<pep-page-layout >\n <!-- <ng-container pep-top-area>\n <pep-top-bar [title]=\"title\">\n <div header-end-content>\n </div>\n </pep-top-bar>\n </ng-container> -->\n <ng-container pep-main-area>\n <ng-container *ngIf=\"type === 'not-supported' ; then notSupportedTemplate; else supportedTemplate\"></ng-container>\n <ng-template #notSupportedTemplate>\n <span class=\"body-sm ellipsis\">\n {{ 'DATA_VIEW_BUILDER.TYPE_NOT_SUPPORTED' | translate }}\n </span> \n </ng-template>\n <ng-template #supportedTemplate>\n <div *ngIf=\"dataView && availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'DATA_VIEW_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"data-view-by-type-area\" [ngSwitch]=\"type\">\n <ng-container *ngSwitchCase=\"'menu'\">\n <menu-data-view [fields]=\"dataView?.Fields || []\" [availableFieldsTitles]=\"availableFieldsTitles\" [emptyDropAreaId]=\"emptyDropAreaId\"\n [mappedFieldsId]=\"mappedFieldsId\" (fieldsChange)=\"onFieldsChanged($event)\" [showAddSeparator]=\"showAddSeparator\" [itemKeyLabel]=\"itemKeyLabel\" [itemTitleLabel]=\"itemTitleLabel\">\n </menu-data-view>\n </ng-container>\n <!-- <ng-container *ngSwitchDefault>\n </ng-container> -->\n </div>\n </div>\n </div>\n </ng-template>\n </ng-container>\n</pep-page-layout>\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\n\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepMenuModule } from '@pepperi-addons/ngx-lib/menu';\nimport { PepPageLayoutModule } from '@pepperi-addons/ngx-lib/page-layout';\nimport { PepTextboxModule } from '@pepperi-addons/ngx-lib/textbox';\nimport { PepTopBarModule } from '@pepperi-addons/ngx-lib/top-bar';\nimport { PepDraggableItemsModule } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { PepIconRegistry, PepIconModule, pepIconSystemClose, pepIconArrowDownAlt, pepIconSystemBin, pepIconNumberPlus } from '@pepperi-addons/ngx-lib/icon';\n\nimport { DataViewBuilderService } from './data-view-builder.service';\n\nimport { DataViewBuilderComponent } from './data-view-builder.component';\nimport { MenuDataViewComponent } from './menu-data-view/menu-data-view.component';\n\nconst pepIcons = [\n pepIconSystemClose,\n pepIconArrowDownAlt,\n pepIconSystemBin,\n pepIconNumberPlus\n];\n\n@NgModule({\n declarations: [\n DataViewBuilderComponent, MenuDataViewComponent\n ],\n imports: [\n CommonModule,\n DragDropModule,\n MatIconModule,\n PepNgxLibModule,\n PepButtonModule,\n PepDialogModule,\n PepIconModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTextboxModule,\n PepTopBarModule,\n PepDraggableItemsModule,\n ],\n exports: [DataViewBuilderComponent],\n providers: [DataViewBuilderService]\n})\nexport class PepDataViewBuilderModule {\n constructor(\n private pepIconRegistry: PepIconRegistry,\n ) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/data-view-builder\n */\nexport * from './data-view-builder.module';\nexport * from './data-view-builder.component';\nexport * from './data-view-builder.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.DataViewBuilderService","i8","i1.DataViewBuilderService","i2","i4","i5.MenuDataViewComponent","i6","i1"],"mappings":"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"}
@@ -129,10 +129,10 @@ class GenericFieldsBuilderComponent {
129
129
  }
130
130
  }
131
131
  GenericFieldsBuilderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: GenericFieldsBuilderComponent, deps: [{ token: GenericFieldsBuilderService }], target: i0.ɵɵFactoryTarget.Component });
132
- GenericFieldsBuilderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: GenericFieldsBuilderComponent, selector: "pep-generic-fields-builder", inputs: { builderTitle: "builderTitle", builderTitleHint: "builderTitleHint", showAddSeparator: "showAddSeparator", itemKeyLabel: "itemKeyLabel", itemTitleLabel: "itemTitleLabel", availableFields: "availableFields", fieldTemplate: "fieldTemplate", fields: "fields" }, outputs: { fieldsChange: "fieldsChange" }, ngImport: i0, template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i6.PepPageLayoutComponent, selector: "pep-page-layout", inputs: ["addPadding", "showShadow"] }, { kind: "component", type: i7.PepDraggableItemsComponent, selector: "pep-draggable-items", inputs: ["containerId", "showSearch", "title", "titleType", "titleSizeType", "itemPlaceholderType", "dropAreaIds", "items"], outputs: ["itemDragStarted", "itemDragEnded"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
132
+ GenericFieldsBuilderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: GenericFieldsBuilderComponent, selector: "pep-generic-fields-builder", inputs: { builderTitle: "builderTitle", builderTitleHint: "builderTitleHint", showAddSeparator: "showAddSeparator", itemKeyLabel: "itemKeyLabel", itemTitleLabel: "itemTitleLabel", availableFields: "availableFields", fieldTemplate: "fieldTemplate", fields: "fields" }, outputs: { fieldsChange: "fieldsChange" }, ngImport: i0, template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field, index: i }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\" let-index=\"index\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i6.PepPageLayoutComponent, selector: "pep-page-layout", inputs: ["addPadding", "showShadow"] }, { kind: "component", type: i7.PepDraggableItemsComponent, selector: "pep-draggable-items", inputs: ["containerId", "showSearch", "title", "titleType", "titleSizeType", "itemPlaceholderType", "dropAreaIds", "items"], outputs: ["itemDragStarted", "itemDragEnded"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
133
133
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: GenericFieldsBuilderComponent, decorators: [{
134
134
  type: Component,
135
- args: [{ selector: 'pep-generic-fields-builder', template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"] }]
135
+ args: [{ selector: 'pep-generic-fields-builder', template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field, index: i }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\" let-index=\"index\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"] }]
136
136
  }], ctorParameters: function () { return [{ type: GenericFieldsBuilderService }]; }, propDecorators: { builderTitle: [{
137
137
  type: Input
138
138
  }], builderTitleHint: [{
@@ -1 +1 @@
1
- {"version":3,"file":"pepperi-addons-ngx-composite-lib-generic-fields-builder.mjs","sources":["../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.service.ts","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.component.ts","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.component.html","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.module.ts","../../../projects/ngx-composite-lib/generic-fields-builder/public-api.ts","../../../projects/ngx-composite-lib/generic-fields-builder/pepperi-addons-ngx-composite-lib-generic-fields-builder.ts"],"sourcesContent":["import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { distinctUntilChanged, filter } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GenericFieldsBuilderService {\n \n // This subject is for is grabbing mode.\n private _isGrabbingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n get isGrabbingChange$(): Observable<boolean> {\n return this._isGrabbingSubject.asObservable().pipe(distinctUntilChanged());\n }\n\n constructor() { \n //\n }\n\n private changeCursorOnDragStart() {\n document.body.classList.add('inheritCursors');\n document.body.style.cursor = 'grabbing';\n this._isGrabbingSubject.next(true);\n }\n\n private changeCursorOnDragEnd() {\n document.body.classList.remove('inheritCursors');\n document.body.style.cursor = 'unset';\n this._isGrabbingSubject.next(false);\n }\n \n onDragStart(event: CdkDragStart) {\n this.changeCursorOnDragStart();\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.changeCursorOnDragEnd();\n }\n}\n","import { CdkDragDrop, CdkDragEnd, CdkDragStart, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { GenericFieldsBuilderService } from './generic-fields-builder.service';\n\n@Component({\n selector: 'pep-generic-fields-builder',\n templateUrl: './generic-fields-builder.component.html',\n styleUrls: ['./generic-fields-builder.component.scss']\n})\nexport class GenericFieldsBuilderComponent implements OnInit {\n // @Input() title: string = '';\n @Input() builderTitle = '';\n @Input() builderTitleHint = '';\n @Input() showAddSeparator = true;\n @Input() itemKeyLabel = '';\n @Input() itemTitleLabel = '';\n \n private _availableFields: Array<IPepDraggableItem> = [];\n @Input()\n set availableFields(value: Array<IPepDraggableItem>) {\n this._availableFields = value;\n }\n get availableFields(): Array<IPepDraggableItem> {\n return this._availableFields;\n }\n \n @Input() fieldTemplate: TemplateRef<any> | undefined = undefined;\n \n private _fields: any[] = [];\n @Input()\n set fields(value: any[]) {\n this._fields = value;\n }\n get fields() : any[] {\n return this._fields;\n }\n\n @Output()\n fieldsChange: EventEmitter<any[]> = new EventEmitter<any[]>();\n \n emptyDropAreaId = 'emptyDropArea';\n mappedFieldsId = 'mappedFields';\n isGrabbing = false;\n\n constructor(\n private genericFieldsBuilderService: GenericFieldsBuilderService\n ) {\n this.genericFieldsBuilderService.isGrabbingChange$.subscribe((value) => {\n this.isGrabbing = value;\n });\n }\n\n private notifyFieldsChange() {\n this.fieldsChange.emit(this._fields);\n }\n\n private addNewField(draggableItem: IPepDraggableItem, index: number) {\n // Add new menuField to the mappedFields.\n const field: any = { key: draggableItem.data.key, title: draggableItem.title };\n this.spliceMappedFields(index, 0, field);\n }\n \n private spliceMappedFields(start: number, deleteCount: number, field?: any) {\n if (field) {\n this._fields.splice(start, deleteCount, field);\n } else {\n this._fields.splice(start, deleteCount);\n }\n\n this.notifyFieldsChange();\n }\n\n ngOnInit() {\n //\n }\n\n onDragStart(event: CdkDragStart) {\n this.genericFieldsBuilderService.onDragStart(event);\n }\n \n onDragEnd(event: CdkDragEnd) {\n this.genericFieldsBuilderService.onDragEnd(event);\n }\n\n onDropField(event: CdkDragDrop<any[]>) {\n if (event.previousContainer === event.container) {\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\n this.notifyFieldsChange();\n } else if (event.container.id === 'emptyDropArea') {\n this.addNewField(event.previousContainer.data[event.previousIndex], this.fields.length);\n } else {\n this.addNewField(event.previousContainer.data[event.previousIndex], event.currentIndex);\n }\n }\n}\n","<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\n\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepMenuModule } from '@pepperi-addons/ngx-lib/menu';\nimport { PepPageLayoutModule } from '@pepperi-addons/ngx-lib/page-layout';\nimport { PepTextboxModule } from '@pepperi-addons/ngx-lib/textbox';\nimport { PepTopBarModule } from '@pepperi-addons/ngx-lib/top-bar';\nimport { PepDraggableItemsModule } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { PepIconRegistry, PepIconModule, pepIconSystemClose, pepIconArrowDownAlt, pepIconSystemBin, pepIconNumberPlus } from '@pepperi-addons/ngx-lib/icon';\n\nimport { GenericFieldsBuilderService } from './generic-fields-builder.service';\n\nimport { GenericFieldsBuilderComponent } from './generic-fields-builder.component';\n\nconst pepIcons = [\n pepIconSystemClose,\n pepIconArrowDownAlt,\n pepIconSystemBin,\n pepIconNumberPlus\n];\n\n@NgModule({\n declarations: [\n GenericFieldsBuilderComponent\n ],\n imports: [\n CommonModule,\n DragDropModule,\n MatIconModule,\n PepNgxLibModule,\n PepButtonModule,\n PepDialogModule,\n PepIconModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTextboxModule,\n PepTopBarModule,\n PepDraggableItemsModule,\n ],\n exports: [GenericFieldsBuilderComponent],\n providers: [GenericFieldsBuilderService]\n})\nexport class PepGenericFieldsBuilderModule {\n constructor(\n private pepIconRegistry: PepIconRegistry,\n ) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/generic-fields-builder\n */\nexport * from './generic-fields-builder.module';\nexport * from './generic-fields-builder.component';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.GenericFieldsBuilderService","i5"],"mappings":"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"}
1
+ {"version":3,"file":"pepperi-addons-ngx-composite-lib-generic-fields-builder.mjs","sources":["../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.service.ts","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.component.ts","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.component.html","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.module.ts","../../../projects/ngx-composite-lib/generic-fields-builder/public-api.ts","../../../projects/ngx-composite-lib/generic-fields-builder/pepperi-addons-ngx-composite-lib-generic-fields-builder.ts"],"sourcesContent":["import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { distinctUntilChanged, filter } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GenericFieldsBuilderService {\n \n // This subject is for is grabbing mode.\n private _isGrabbingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n get isGrabbingChange$(): Observable<boolean> {\n return this._isGrabbingSubject.asObservable().pipe(distinctUntilChanged());\n }\n\n constructor() { \n //\n }\n\n private changeCursorOnDragStart() {\n document.body.classList.add('inheritCursors');\n document.body.style.cursor = 'grabbing';\n this._isGrabbingSubject.next(true);\n }\n\n private changeCursorOnDragEnd() {\n document.body.classList.remove('inheritCursors');\n document.body.style.cursor = 'unset';\n this._isGrabbingSubject.next(false);\n }\n \n onDragStart(event: CdkDragStart) {\n this.changeCursorOnDragStart();\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.changeCursorOnDragEnd();\n }\n}\n","import { CdkDragDrop, CdkDragEnd, CdkDragStart, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { GenericFieldsBuilderService } from './generic-fields-builder.service';\n\n@Component({\n selector: 'pep-generic-fields-builder',\n templateUrl: './generic-fields-builder.component.html',\n styleUrls: ['./generic-fields-builder.component.scss']\n})\nexport class GenericFieldsBuilderComponent implements OnInit {\n // @Input() title: string = '';\n @Input() builderTitle = '';\n @Input() builderTitleHint = '';\n @Input() showAddSeparator = true;\n @Input() itemKeyLabel = '';\n @Input() itemTitleLabel = '';\n \n private _availableFields: Array<IPepDraggableItem> = [];\n @Input()\n set availableFields(value: Array<IPepDraggableItem>) {\n this._availableFields = value;\n }\n get availableFields(): Array<IPepDraggableItem> {\n return this._availableFields;\n }\n \n @Input() fieldTemplate: TemplateRef<any> | undefined = undefined;\n \n private _fields: any[] = [];\n @Input()\n set fields(value: any[]) {\n this._fields = value;\n }\n get fields() : any[] {\n return this._fields;\n }\n\n @Output()\n fieldsChange: EventEmitter<any[]> = new EventEmitter<any[]>();\n \n emptyDropAreaId = 'emptyDropArea';\n mappedFieldsId = 'mappedFields';\n isGrabbing = false;\n\n constructor(\n private genericFieldsBuilderService: GenericFieldsBuilderService\n ) {\n this.genericFieldsBuilderService.isGrabbingChange$.subscribe((value) => {\n this.isGrabbing = value;\n });\n }\n\n private notifyFieldsChange() {\n this.fieldsChange.emit(this._fields);\n }\n\n private addNewField(draggableItem: IPepDraggableItem, index: number) {\n // Add new menuField to the mappedFields.\n const field: any = { key: draggableItem.data.key, title: draggableItem.title };\n this.spliceMappedFields(index, 0, field);\n }\n \n private spliceMappedFields(start: number, deleteCount: number, field?: any) {\n if (field) {\n this._fields.splice(start, deleteCount, field);\n } else {\n this._fields.splice(start, deleteCount);\n }\n\n this.notifyFieldsChange();\n }\n\n ngOnInit() {\n //\n }\n\n onDragStart(event: CdkDragStart) {\n this.genericFieldsBuilderService.onDragStart(event);\n }\n \n onDragEnd(event: CdkDragEnd) {\n this.genericFieldsBuilderService.onDragEnd(event);\n }\n\n onDropField(event: CdkDragDrop<any[]>) {\n if (event.previousContainer === event.container) {\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\n this.notifyFieldsChange();\n } else if (event.container.id === 'emptyDropArea') {\n this.addNewField(event.previousContainer.data[event.previousIndex], this.fields.length);\n } else {\n this.addNewField(event.previousContainer.data[event.previousIndex], event.currentIndex);\n }\n }\n}\n","<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field, index: i }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\" let-index=\"index\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\n\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepMenuModule } from '@pepperi-addons/ngx-lib/menu';\nimport { PepPageLayoutModule } from '@pepperi-addons/ngx-lib/page-layout';\nimport { PepTextboxModule } from '@pepperi-addons/ngx-lib/textbox';\nimport { PepTopBarModule } from '@pepperi-addons/ngx-lib/top-bar';\nimport { PepDraggableItemsModule } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { PepIconRegistry, PepIconModule, pepIconSystemClose, pepIconArrowDownAlt, pepIconSystemBin, pepIconNumberPlus } from '@pepperi-addons/ngx-lib/icon';\n\nimport { GenericFieldsBuilderService } from './generic-fields-builder.service';\n\nimport { GenericFieldsBuilderComponent } from './generic-fields-builder.component';\n\nconst pepIcons = [\n pepIconSystemClose,\n pepIconArrowDownAlt,\n pepIconSystemBin,\n pepIconNumberPlus\n];\n\n@NgModule({\n declarations: [\n GenericFieldsBuilderComponent\n ],\n imports: [\n CommonModule,\n DragDropModule,\n MatIconModule,\n PepNgxLibModule,\n PepButtonModule,\n PepDialogModule,\n PepIconModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTextboxModule,\n PepTopBarModule,\n PepDraggableItemsModule,\n ],\n exports: [GenericFieldsBuilderComponent],\n providers: [GenericFieldsBuilderService]\n})\nexport class PepGenericFieldsBuilderModule {\n constructor(\n private pepIconRegistry: PepIconRegistry,\n ) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/generic-fields-builder\n */\nexport * from './generic-fields-builder.module';\nexport * from './generic-fields-builder.component';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.GenericFieldsBuilderService","i5"],"mappings":"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"}
@@ -101,6 +101,7 @@ class MenuDataViewComponent {
101
101
  this.fieldsChange.emit(this.fields);
102
102
  }
103
103
  ngOnInit() {
104
+ debugger;
104
105
  if (this.itemKeyLabel == '') {
105
106
  this.translate.get('DATA_VIEW_BUILDER.MENU_ITEM_KEY_TITLE').toPromise().then((res) => {
106
107
  this.itemKeyLabel = res;
@@ -1 +1 @@
1
- {"version":3,"file":"pepperi-addons-ngx-composite-lib-data-view-builder.mjs","sources":["../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.service.ts","../../../projects/ngx-composite-lib/data-view-builder/menu-data-view/menu-data-view.component.ts","../../../projects/ngx-composite-lib/data-view-builder/menu-data-view/menu-data-view.component.html","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.component.ts","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.component.html","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.module.ts","../../../projects/ngx-composite-lib/data-view-builder/public-api.ts","../../../projects/ngx-composite-lib/data-view-builder/pepperi-addons-ngx-composite-lib-data-view-builder.ts"],"sourcesContent":["import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { distinctUntilChanged, filter } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DataViewBuilderService {\n \n // This subject is for is grabbing mode.\n private _isGrabbingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n get isGrabbingChange$(): Observable<boolean> {\n return this._isGrabbingSubject.asObservable().pipe(distinctUntilChanged());\n }\n\n constructor() { \n //\n }\n\n private changeCursorOnDragStart() {\n document.body.classList.add('inheritCursors');\n document.body.style.cursor = 'grabbing';\n this._isGrabbingSubject.next(true);\n }\n\n private changeCursorOnDragEnd() {\n document.body.classList.remove('inheritCursors');\n document.body.style.cursor = 'unset';\n this._isGrabbingSubject.next(false);\n }\n \n onDragStart(event: CdkDragStart) {\n this.changeCursorOnDragStart();\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.changeCursorOnDragEnd();\n }\n}\n","import { CdkDragDrop, CdkDragEnd, CdkDragStart, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { TranslateService } from '@ngx-translate/core';\nimport { IPepButtonClickEvent } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { DataViewField, MenuDataViewField } from '@pepperi-addons/papi-sdk';\nimport { DataViewBuilderService } from '../data-view-builder.service';\n\n@Component({\n selector: 'menu-data-view',\n templateUrl: './menu-data-view.component.html',\n styleUrls: ['./menu-data-view.component.scss']\n})\nexport class MenuDataViewComponent implements OnInit {\n @ViewChild('separatorTitleModalTemplate', { read: TemplateRef }) separatorTitleModalTemplate!: TemplateRef<any>;\n\n @Input() \n fields: Array<DataViewField> = []; // The data view fields.\n\n @Input()\n availableFieldsTitles: Map<string, string> = new Map<string, string>(); // <FieldID, Original Title> from the available fields.\n\n @Input() \n emptyDropAreaId = '';\n\n @Input() \n mappedFieldsId = '';\n\n @Input()\n showAddSeparator = true;\n\n @Input()\n itemKeyLabel = '';\n\n @Input()\n itemTitleLabel = '';\n\n @Output()\n fieldsChange: EventEmitter<DataViewField[]> = new EventEmitter<DataViewField[]>();\n \n isGrabbing = false;\n private dialogRef: MatDialogRef<any> | null = null;\n \n constructor(\n private translate: TranslateService,\n private dialogService: PepDialogService,\n private dataViewBuilderService: DataViewBuilderService\n ) { \n this.dataViewBuilderService.isGrabbingChange$.subscribe((value) => {\n this.isGrabbing = value;\n });\n }\n \n private addNewField(draggableItem: IPepDraggableItem, index: number) {\n // Add new menuField to the mappedFields.\n const menuField: MenuDataViewField = { FieldID: draggableItem.data.key, Title: draggableItem.title };\n this.spliceMappedFields(index, 0, menuField);\n }\n \n private spliceMappedFields(start: number, deleteCount: number, item?: MenuDataViewField) {\n if (item) {\n this.fields.splice(start, deleteCount, item);\n } else {\n this.fields.splice(start, deleteCount);\n }\n\n this.notifyFieldsChange();\n }\n\n private changeTitle(menuField: MenuDataViewField, title: string) {\n menuField.Title = title;\n this.notifyFieldsChange();\n }\n\n private notifyFieldsChange() {\n this.fieldsChange.emit(this.fields);\n }\n\n ngOnInit() {\n if(this.itemKeyLabel == ''){\n this.translate.get('DATA_VIEW_BUILDER.MENU_ITEM_KEY_TITLE').toPromise().then((res) => {\n this.itemKeyLabel = res;\n });\n }\n if(this.itemTitleLabel == ''){\n this.translate.get('DATA_VIEW_BUILDER.MENU_ITEM_VALUE_TITLE').toPromise().then((res) => {\n this.itemTitleLabel = res;\n });\n }\n }\n\n addSeparator(index: number) {\n const menuField: MenuDataViewField = { FieldID: '', Title: '' };\n this.spliceMappedFields(index, 0, menuField);\n }\n\n onDragStart(event: CdkDragStart) {\n this.dataViewBuilderService.onDragStart(event);\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.dataViewBuilderService.onDragEnd(event);\n }\n \n onDropField(event: CdkDragDrop<any[]>) {\n if (event.previousContainer === event.container) {\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\n this.notifyFieldsChange();\n } else if (event.container.id === 'emptyDropArea') {\n this.addNewField(event.previousContainer.data[event.previousIndex], this.fields.length);\n } else {\n this.addNewField(event.previousContainer.data[event.previousIndex], event.currentIndex);\n }\n }\n\n onTitleChanged(event: string, menuField: MenuDataViewField) {\n this.changeTitle(menuField, event);\n }\n\n onDeleteMappedField(event: IPepButtonClickEvent, menuField: MenuDataViewField) {\n const index = this.fields.findIndex(ms => ms === menuField);\n if (index > -1) {\n this.spliceMappedFields(index, 1);\n }\n }\n\n onEditSeparatorField(event: IPepButtonClickEvent, menuField: MenuDataViewField) {\n this.dialogRef = this.dialogService.openDialog(this.separatorTitleModalTemplate, { value: menuField.Title });\n this.dialogRef.afterClosed().subscribe((titleValue) => {\n if (titleValue !== undefined) {\n this.changeTitle(menuField, titleValue);\n }\n });\n }\n\n setDialogValue(value: string) {\n this.closeDialog(value);\n }\n\n closeDialog(value: string | undefined = undefined) {\n this.dialogRef?.close(value);\n }\n}","<ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n<ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'DATA_VIEW_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n</ng-template>\n<ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let menuField of fields; let i = index\" >\n <div class=\"mapped-field-container\" [ngClass]=\"{ 'separator-container': menuField.FieldID === '' }\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n <ng-container *ngTemplateOutlet=\"mappedFieldTemplate; context: { menuField: menuField }\"></ng-container>\n </div>\n <div *ngIf=\"!isGrabbing\" class=\"add-separator-container\">\n <pep-button *ngIf=\"showAddSeparator\" class=\"add-separator\" styleType=\"regular\" sizeType=\"sm\" iconName=\"number_plus\" \n [value]=\"'DATA_VIEW_BUILDER.ADD_SEPARATOR' | translate\" (buttonClick)=\"addSeparator(i+1)\"></pep-button>\n </div>\n </ng-container>\n </div>\n</ng-template>\n\n<ng-template #mappedFieldTemplate let-menuField=\"menuField\">\n <ng-container *ngIf=\"menuField.FieldID !== ''; then menuItemTemplate; else separatorTemplate\"></ng-container>\n\n <ng-template #menuItemTemplate>\n <div class=\"fields-wrapper\">\n <pep-textbox [label]=\"itemKeyLabel\" [value]=\"menuField.FieldID\" [disabled]=\"true\">\n </pep-textbox>\n \n <pep-textbox [label]=\"itemTitleLabel\" [hint]=\"'(' + (availableFieldsTitles.get(menuField.FieldID) || '') + ')'\"\n [value]=\"menuField.Title\" (valueChange)=\"onTitleChanged($event, menuField)\">\n </pep-textbox>\n \n <pep-button class=\"center-button\" iconName=\"system_bin\" [title]=\"'ACTIONS.DELETE' | translate\" (buttonClick)=\"onDeleteMappedField($event, menuField)\"></pep-button>\n </div>\n </ng-template>\n <ng-template #separatorTemplate>\n <div class=\"separator-wrapper \">\n <div class=\"pep-spacing-element title title-md color-dimmed\">\n <span [title]=\"menuField.Title\">{{ menuField.Title }}</span>\n </div>\n <div class=\"list-actions\">\n <pep-button iconName=\"system_edit\" [title]=\"'ACTIONS.EDIT' | translate\" sizeType=\"xs\" styleType=\"regular\" (buttonClick)=\"onEditSeparatorField($event, menuField)\"></pep-button>\n <pep-button iconName=\"system_bin\" [title]=\"'ACTIONS.DELETE' | translate\" sizeType=\"xs\" styleType=\"regular\" (buttonClick)=\"onDeleteMappedField($event, menuField)\"></pep-button>\n </div>\n </div>\n </ng-template>\n</ng-template>\n\n<ng-template #separatorTitleModalTemplate let-data>\n <pep-dialog [title]=\"'DATA_VIEW_BUILDER.SEPARATOR_TITLE' | translate\">\n <ng-container pep-dialog-content>\n <pep-textbox #txt [label]=\"'DATA_VIEW_BUILDER.ADD_A_TITLE' | translate\" [(value)]=\"data.value\">\n </pep-textbox>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"pep-spacing-element-negative\">\n <button mat-button class=\"pep-spacing-element pep-button md weak\"\n (click)=\"closeDialog()\">\n {{'Cancel' | translate}}\n </button>\n <button mat-button class=\"pep-spacing-element pep-button md strong\"\n (click)=\"setDialogValue(txt.value)\">\n {{ 'Save' | translate}}\n </button>\n </div>\n </ng-container>\n </pep-dialog>\n</ng-template>\n","import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { BaseDataView, DataViewField } from '@pepperi-addons/papi-sdk';\nimport { PepDataViewBuilderType } from './data-view-builder.model';\nimport { DataViewBuilderService } from './data-view-builder.service';\n\n@Component({\n selector: 'pep-data-view-builder',\n templateUrl: './data-view-builder.component.html',\n styleUrls: ['./data-view-builder.component.scss']\n})\nexport class DataViewBuilderComponent implements OnInit {\n // @Input() title: string = '';\n @Input() builderTitle = '';\n @Input() builderTitleHint = '';\n @Input() showAddSeparator = true;\n @Input() itemKeyLabel = '';\n @Input() itemTitleLabel = '';\n \n private _availableFields: Array<IPepDraggableItem> = [];\n @Input()\n set availableFields(value: Array<IPepDraggableItem>) {\n this._availableFields = value;\n this.setTitlesMap();\n }\n get availableFields(): Array<IPepDraggableItem> {\n return this._availableFields;\n }\n \n private _dataView!: BaseDataView;\n @Input()\n set dataView(value: BaseDataView) {\n this._dataView = value;\n this.setType();\n this.refreshAvailableFields();\n }\n get dataView() : BaseDataView {\n return this._dataView;\n }\n\n @Output()\n dataViewChange: EventEmitter<BaseDataView> = new EventEmitter<BaseDataView>();\n \n type: PepDataViewBuilderType = 'not-supported';\n \n emptyDropAreaId = 'emptyDropArea';\n mappedFieldsId = 'mappedFields';\n\n availableFieldsTitles: Map<string, string> = new Map<string, string>();\n\n constructor(\n private dataViewBuilderService: DataViewBuilderService\n ) {\n //\n }\n\n private setType() {\n if (this._dataView.Type === 'Menu') {\n this.type = 'menu';\n } else if (this._dataView.Type === 'Grid') {\n this.type = 'list';\n } else if ((this._dataView.Type === 'Card') || \n (this._dataView.Type === 'Form') || \n (this._dataView.Type === 'Large') || \n (this._dataView.Type === 'Line')) {\n this.type = 'card';\n } else {\n this.type = 'not-supported';\n }\n }\n\n private setAvailableFieldPermission(field: string, disable: boolean) {\n // Find the item in the available fields\n const item = this.availableFields.find(as => as.data.key === field);\n \n // If exist disable or enable it.\n if (item) {\n item.disabled = disable;\n }\n }\n\n private refreshAvailableFields() {\n this.availableFields.forEach(af => af.disabled = false);\n \n if (this.dataView && this.dataView.Fields) {\n for (let index = 0; index < this.dataView.Fields.length; index++) {\n this.setAvailableFieldPermission(this.dataView.Fields[index].FieldID, true);\n }\n }\n }\n\n private setTitlesMap() {\n this.availableFieldsTitles.clear();\n\n if (this.availableFields?.length > 0) {\n for (let index = 0; index < this.availableFields.length; index++) {\n const availableField = this.availableFields[index];\n\n if (availableField?.data?.key.length > 0) {\n this.availableFieldsTitles.set(availableField.data.key, availableField.title);\n }\n }\n }\n }\n\n private notifyDataViewChange() {\n this.dataViewChange.emit(this.dataView);\n // console.log(this.dataView);\n }\n\n ngOnInit() {\n //\n }\n\n onDragStart(event: CdkDragStart) {\n this.dataViewBuilderService.onDragStart(event);\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.dataViewBuilderService.onDragEnd(event);\n }\n \n onFieldsChanged(fields: Array<DataViewField>) {\n this.dataView.Fields = fields;\n this.refreshAvailableFields();\n this.notifyDataViewChange();\n }\n}\n","<pep-page-layout >\n <!-- <ng-container pep-top-area>\n <pep-top-bar [title]=\"title\">\n <div header-end-content>\n </div>\n </pep-top-bar>\n </ng-container> -->\n <ng-container pep-main-area>\n <ng-container *ngIf=\"type === 'not-supported' ; then notSupportedTemplate; else supportedTemplate\"></ng-container>\n <ng-template #notSupportedTemplate>\n <span class=\"body-sm ellipsis\">\n {{ 'DATA_VIEW_BUILDER.TYPE_NOT_SUPPORTED' | translate }}\n </span> \n </ng-template>\n <ng-template #supportedTemplate>\n <div *ngIf=\"dataView && availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'DATA_VIEW_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"data-view-by-type-area\" [ngSwitch]=\"type\">\n <ng-container *ngSwitchCase=\"'menu'\">\n <menu-data-view [fields]=\"dataView?.Fields || []\" [availableFieldsTitles]=\"availableFieldsTitles\" [emptyDropAreaId]=\"emptyDropAreaId\"\n [mappedFieldsId]=\"mappedFieldsId\" (fieldsChange)=\"onFieldsChanged($event)\" [showAddSeparator]=\"showAddSeparator\" [itemKeyLabel]=\"itemKeyLabel\" [itemTitleLabel]=\"itemTitleLabel\">\n </menu-data-view>\n </ng-container>\n <!-- <ng-container *ngSwitchDefault>\n </ng-container> -->\n </div>\n </div>\n </div>\n </ng-template>\n </ng-container>\n</pep-page-layout>\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\n\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepMenuModule } from '@pepperi-addons/ngx-lib/menu';\nimport { PepPageLayoutModule } from '@pepperi-addons/ngx-lib/page-layout';\nimport { PepTextboxModule } from '@pepperi-addons/ngx-lib/textbox';\nimport { PepTopBarModule } from '@pepperi-addons/ngx-lib/top-bar';\nimport { PepDraggableItemsModule } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { PepIconRegistry, PepIconModule, pepIconSystemClose, pepIconArrowDownAlt, pepIconSystemBin, pepIconNumberPlus } from '@pepperi-addons/ngx-lib/icon';\n\nimport { DataViewBuilderService } from './data-view-builder.service';\n\nimport { DataViewBuilderComponent } from './data-view-builder.component';\nimport { MenuDataViewComponent } from './menu-data-view/menu-data-view.component';\n\nconst pepIcons = [\n pepIconSystemClose,\n pepIconArrowDownAlt,\n pepIconSystemBin,\n pepIconNumberPlus\n];\n\n@NgModule({\n declarations: [\n DataViewBuilderComponent, MenuDataViewComponent\n ],\n imports: [\n CommonModule,\n DragDropModule,\n MatIconModule,\n PepNgxLibModule,\n PepButtonModule,\n PepDialogModule,\n PepIconModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTextboxModule,\n PepTopBarModule,\n PepDraggableItemsModule,\n ],\n exports: [DataViewBuilderComponent],\n providers: [DataViewBuilderService]\n})\nexport class PepDataViewBuilderModule {\n constructor(\n private pepIconRegistry: PepIconRegistry,\n ) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/data-view-builder\n */\nexport * from './data-view-builder.module';\nexport * from './data-view-builder.component';\nexport * from './data-view-builder.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.DataViewBuilderService","i8","i1.DataViewBuilderService","i2","i4","i5.MenuDataViewComponent","i6","i1"],"mappings":"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"}
1
+ {"version":3,"file":"pepperi-addons-ngx-composite-lib-data-view-builder.mjs","sources":["../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.service.ts","../../../projects/ngx-composite-lib/data-view-builder/menu-data-view/menu-data-view.component.ts","../../../projects/ngx-composite-lib/data-view-builder/menu-data-view/menu-data-view.component.html","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.component.ts","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.component.html","../../../projects/ngx-composite-lib/data-view-builder/data-view-builder.module.ts","../../../projects/ngx-composite-lib/data-view-builder/public-api.ts","../../../projects/ngx-composite-lib/data-view-builder/pepperi-addons-ngx-composite-lib-data-view-builder.ts"],"sourcesContent":["import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { distinctUntilChanged, filter } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DataViewBuilderService {\n \n // This subject is for is grabbing mode.\n private _isGrabbingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n get isGrabbingChange$(): Observable<boolean> {\n return this._isGrabbingSubject.asObservable().pipe(distinctUntilChanged());\n }\n\n constructor() { \n //\n }\n\n private changeCursorOnDragStart() {\n document.body.classList.add('inheritCursors');\n document.body.style.cursor = 'grabbing';\n this._isGrabbingSubject.next(true);\n }\n\n private changeCursorOnDragEnd() {\n document.body.classList.remove('inheritCursors');\n document.body.style.cursor = 'unset';\n this._isGrabbingSubject.next(false);\n }\n \n onDragStart(event: CdkDragStart) {\n this.changeCursorOnDragStart();\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.changeCursorOnDragEnd();\n }\n}\n","import { CdkDragDrop, CdkDragEnd, CdkDragStart, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\nimport { TranslateService } from '@ngx-translate/core';\nimport { IPepButtonClickEvent } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogService } from '@pepperi-addons/ngx-lib/dialog';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { DataViewField, MenuDataViewField } from '@pepperi-addons/papi-sdk';\nimport { DataViewBuilderService } from '../data-view-builder.service';\n\n@Component({\n selector: 'menu-data-view',\n templateUrl: './menu-data-view.component.html',\n styleUrls: ['./menu-data-view.component.scss']\n})\nexport class MenuDataViewComponent implements OnInit {\n @ViewChild('separatorTitleModalTemplate', { read: TemplateRef }) separatorTitleModalTemplate!: TemplateRef<any>;\n\n @Input() \n fields: Array<DataViewField> = []; // The data view fields.\n\n @Input()\n availableFieldsTitles: Map<string, string> = new Map<string, string>(); // <FieldID, Original Title> from the available fields.\n\n @Input() \n emptyDropAreaId = '';\n\n @Input() \n mappedFieldsId = '';\n\n @Input()\n showAddSeparator = true;\n\n @Input()\n itemKeyLabel = '';\n\n @Input()\n itemTitleLabel = '';\n\n @Output()\n fieldsChange: EventEmitter<DataViewField[]> = new EventEmitter<DataViewField[]>();\n \n isGrabbing = false;\n private dialogRef: MatDialogRef<any> | null = null;\n \n constructor(\n private translate: TranslateService,\n private dialogService: PepDialogService,\n private dataViewBuilderService: DataViewBuilderService\n ) { \n this.dataViewBuilderService.isGrabbingChange$.subscribe((value) => {\n this.isGrabbing = value;\n });\n }\n \n private addNewField(draggableItem: IPepDraggableItem, index: number) {\n // Add new menuField to the mappedFields.\n const menuField: MenuDataViewField = { FieldID: draggableItem.data.key, Title: draggableItem.title };\n this.spliceMappedFields(index, 0, menuField);\n }\n \n private spliceMappedFields(start: number, deleteCount: number, item?: MenuDataViewField) {\n if (item) {\n this.fields.splice(start, deleteCount, item);\n } else {\n this.fields.splice(start, deleteCount);\n }\n\n this.notifyFieldsChange();\n }\n\n private changeTitle(menuField: MenuDataViewField, title: string) {\n menuField.Title = title;\n this.notifyFieldsChange();\n }\n\n private notifyFieldsChange() {\n this.fieldsChange.emit(this.fields);\n }\n\n ngOnInit() {\n debugger;\n if(this.itemKeyLabel == ''){\n this.translate.get('DATA_VIEW_BUILDER.MENU_ITEM_KEY_TITLE').toPromise().then((res) => {\n this.itemKeyLabel = res;\n });\n }\n if(this.itemTitleLabel == ''){\n this.translate.get('DATA_VIEW_BUILDER.MENU_ITEM_VALUE_TITLE').toPromise().then((res) => {\n this.itemTitleLabel = res;\n });\n }\n }\n\n addSeparator(index: number) {\n const menuField: MenuDataViewField = { FieldID: '', Title: '' };\n this.spliceMappedFields(index, 0, menuField);\n }\n\n onDragStart(event: CdkDragStart) {\n this.dataViewBuilderService.onDragStart(event);\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.dataViewBuilderService.onDragEnd(event);\n }\n \n onDropField(event: CdkDragDrop<any[]>) {\n if (event.previousContainer === event.container) {\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\n this.notifyFieldsChange();\n } else if (event.container.id === 'emptyDropArea') {\n this.addNewField(event.previousContainer.data[event.previousIndex], this.fields.length);\n } else {\n this.addNewField(event.previousContainer.data[event.previousIndex], event.currentIndex);\n }\n }\n\n onTitleChanged(event: string, menuField: MenuDataViewField) {\n this.changeTitle(menuField, event);\n }\n\n onDeleteMappedField(event: IPepButtonClickEvent, menuField: MenuDataViewField) {\n const index = this.fields.findIndex(ms => ms === menuField);\n if (index > -1) {\n this.spliceMappedFields(index, 1);\n }\n }\n\n onEditSeparatorField(event: IPepButtonClickEvent, menuField: MenuDataViewField) {\n this.dialogRef = this.dialogService.openDialog(this.separatorTitleModalTemplate, { value: menuField.Title });\n this.dialogRef.afterClosed().subscribe((titleValue) => {\n if (titleValue !== undefined) {\n this.changeTitle(menuField, titleValue);\n }\n });\n }\n\n setDialogValue(value: string) {\n this.closeDialog(value);\n }\n\n closeDialog(value: string | undefined = undefined) {\n this.dialogRef?.close(value);\n }\n}","<ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n<ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'DATA_VIEW_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n</ng-template>\n<ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let menuField of fields; let i = index\" >\n <div class=\"mapped-field-container\" [ngClass]=\"{ 'separator-container': menuField.FieldID === '' }\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n <ng-container *ngTemplateOutlet=\"mappedFieldTemplate; context: { menuField: menuField }\"></ng-container>\n </div>\n <div *ngIf=\"!isGrabbing\" class=\"add-separator-container\">\n <pep-button *ngIf=\"showAddSeparator\" class=\"add-separator\" styleType=\"regular\" sizeType=\"sm\" iconName=\"number_plus\" \n [value]=\"'DATA_VIEW_BUILDER.ADD_SEPARATOR' | translate\" (buttonClick)=\"addSeparator(i+1)\"></pep-button>\n </div>\n </ng-container>\n </div>\n</ng-template>\n\n<ng-template #mappedFieldTemplate let-menuField=\"menuField\">\n <ng-container *ngIf=\"menuField.FieldID !== ''; then menuItemTemplate; else separatorTemplate\"></ng-container>\n\n <ng-template #menuItemTemplate>\n <div class=\"fields-wrapper\">\n <pep-textbox [label]=\"itemKeyLabel\" [value]=\"menuField.FieldID\" [disabled]=\"true\">\n </pep-textbox>\n \n <pep-textbox [label]=\"itemTitleLabel\" [hint]=\"'(' + (availableFieldsTitles.get(menuField.FieldID) || '') + ')'\"\n [value]=\"menuField.Title\" (valueChange)=\"onTitleChanged($event, menuField)\">\n </pep-textbox>\n \n <pep-button class=\"center-button\" iconName=\"system_bin\" [title]=\"'ACTIONS.DELETE' | translate\" (buttonClick)=\"onDeleteMappedField($event, menuField)\"></pep-button>\n </div>\n </ng-template>\n <ng-template #separatorTemplate>\n <div class=\"separator-wrapper \">\n <div class=\"pep-spacing-element title title-md color-dimmed\">\n <span [title]=\"menuField.Title\">{{ menuField.Title }}</span>\n </div>\n <div class=\"list-actions\">\n <pep-button iconName=\"system_edit\" [title]=\"'ACTIONS.EDIT' | translate\" sizeType=\"xs\" styleType=\"regular\" (buttonClick)=\"onEditSeparatorField($event, menuField)\"></pep-button>\n <pep-button iconName=\"system_bin\" [title]=\"'ACTIONS.DELETE' | translate\" sizeType=\"xs\" styleType=\"regular\" (buttonClick)=\"onDeleteMappedField($event, menuField)\"></pep-button>\n </div>\n </div>\n </ng-template>\n</ng-template>\n\n<ng-template #separatorTitleModalTemplate let-data>\n <pep-dialog [title]=\"'DATA_VIEW_BUILDER.SEPARATOR_TITLE' | translate\">\n <ng-container pep-dialog-content>\n <pep-textbox #txt [label]=\"'DATA_VIEW_BUILDER.ADD_A_TITLE' | translate\" [(value)]=\"data.value\">\n </pep-textbox>\n </ng-container>\n <ng-container pep-dialog-actions>\n <div class=\"pep-spacing-element-negative\">\n <button mat-button class=\"pep-spacing-element pep-button md weak\"\n (click)=\"closeDialog()\">\n {{'Cancel' | translate}}\n </button>\n <button mat-button class=\"pep-spacing-element pep-button md strong\"\n (click)=\"setDialogValue(txt.value)\">\n {{ 'Save' | translate}}\n </button>\n </div>\n </ng-container>\n </pep-dialog>\n</ng-template>\n","import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { BaseDataView, DataViewField } from '@pepperi-addons/papi-sdk';\nimport { PepDataViewBuilderType } from './data-view-builder.model';\nimport { DataViewBuilderService } from './data-view-builder.service';\n\n@Component({\n selector: 'pep-data-view-builder',\n templateUrl: './data-view-builder.component.html',\n styleUrls: ['./data-view-builder.component.scss']\n})\nexport class DataViewBuilderComponent implements OnInit {\n // @Input() title: string = '';\n @Input() builderTitle = '';\n @Input() builderTitleHint = '';\n @Input() showAddSeparator = true;\n @Input() itemKeyLabel = '';\n @Input() itemTitleLabel = '';\n \n private _availableFields: Array<IPepDraggableItem> = [];\n @Input()\n set availableFields(value: Array<IPepDraggableItem>) {\n this._availableFields = value;\n this.setTitlesMap();\n }\n get availableFields(): Array<IPepDraggableItem> {\n return this._availableFields;\n }\n \n private _dataView!: BaseDataView;\n @Input()\n set dataView(value: BaseDataView) {\n this._dataView = value;\n this.setType();\n this.refreshAvailableFields();\n }\n get dataView() : BaseDataView {\n return this._dataView;\n }\n\n @Output()\n dataViewChange: EventEmitter<BaseDataView> = new EventEmitter<BaseDataView>();\n \n type: PepDataViewBuilderType = 'not-supported';\n \n emptyDropAreaId = 'emptyDropArea';\n mappedFieldsId = 'mappedFields';\n\n availableFieldsTitles: Map<string, string> = new Map<string, string>();\n\n constructor(\n private dataViewBuilderService: DataViewBuilderService\n ) {\n //\n }\n\n private setType() {\n if (this._dataView.Type === 'Menu') {\n this.type = 'menu';\n } else if (this._dataView.Type === 'Grid') {\n this.type = 'list';\n } else if ((this._dataView.Type === 'Card') || \n (this._dataView.Type === 'Form') || \n (this._dataView.Type === 'Large') || \n (this._dataView.Type === 'Line')) {\n this.type = 'card';\n } else {\n this.type = 'not-supported';\n }\n }\n\n private setAvailableFieldPermission(field: string, disable: boolean) {\n // Find the item in the available fields\n const item = this.availableFields.find(as => as.data.key === field);\n \n // If exist disable or enable it.\n if (item) {\n item.disabled = disable;\n }\n }\n\n private refreshAvailableFields() {\n this.availableFields.forEach(af => af.disabled = false);\n \n if (this.dataView && this.dataView.Fields) {\n for (let index = 0; index < this.dataView.Fields.length; index++) {\n this.setAvailableFieldPermission(this.dataView.Fields[index].FieldID, true);\n }\n }\n }\n\n private setTitlesMap() {\n this.availableFieldsTitles.clear();\n\n if (this.availableFields?.length > 0) {\n for (let index = 0; index < this.availableFields.length; index++) {\n const availableField = this.availableFields[index];\n\n if (availableField?.data?.key.length > 0) {\n this.availableFieldsTitles.set(availableField.data.key, availableField.title);\n }\n }\n }\n }\n\n private notifyDataViewChange() {\n this.dataViewChange.emit(this.dataView);\n // console.log(this.dataView);\n }\n\n ngOnInit() {\n //\n }\n\n onDragStart(event: CdkDragStart) {\n this.dataViewBuilderService.onDragStart(event);\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.dataViewBuilderService.onDragEnd(event);\n }\n \n onFieldsChanged(fields: Array<DataViewField>) {\n this.dataView.Fields = fields;\n this.refreshAvailableFields();\n this.notifyDataViewChange();\n }\n}\n","<pep-page-layout >\n <!-- <ng-container pep-top-area>\n <pep-top-bar [title]=\"title\">\n <div header-end-content>\n </div>\n </pep-top-bar>\n </ng-container> -->\n <ng-container pep-main-area>\n <ng-container *ngIf=\"type === 'not-supported' ; then notSupportedTemplate; else supportedTemplate\"></ng-container>\n <ng-template #notSupportedTemplate>\n <span class=\"body-sm ellipsis\">\n {{ 'DATA_VIEW_BUILDER.TYPE_NOT_SUPPORTED' | translate }}\n </span> \n </ng-template>\n <ng-template #supportedTemplate>\n <div *ngIf=\"dataView && availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'DATA_VIEW_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"data-view-by-type-area\" [ngSwitch]=\"type\">\n <ng-container *ngSwitchCase=\"'menu'\">\n <menu-data-view [fields]=\"dataView?.Fields || []\" [availableFieldsTitles]=\"availableFieldsTitles\" [emptyDropAreaId]=\"emptyDropAreaId\"\n [mappedFieldsId]=\"mappedFieldsId\" (fieldsChange)=\"onFieldsChanged($event)\" [showAddSeparator]=\"showAddSeparator\" [itemKeyLabel]=\"itemKeyLabel\" [itemTitleLabel]=\"itemTitleLabel\">\n </menu-data-view>\n </ng-container>\n <!-- <ng-container *ngSwitchDefault>\n </ng-container> -->\n </div>\n </div>\n </div>\n </ng-template>\n </ng-container>\n</pep-page-layout>\n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\n\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepMenuModule } from '@pepperi-addons/ngx-lib/menu';\nimport { PepPageLayoutModule } from '@pepperi-addons/ngx-lib/page-layout';\nimport { PepTextboxModule } from '@pepperi-addons/ngx-lib/textbox';\nimport { PepTopBarModule } from '@pepperi-addons/ngx-lib/top-bar';\nimport { PepDraggableItemsModule } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { PepIconRegistry, PepIconModule, pepIconSystemClose, pepIconArrowDownAlt, pepIconSystemBin, pepIconNumberPlus } from '@pepperi-addons/ngx-lib/icon';\n\nimport { DataViewBuilderService } from './data-view-builder.service';\n\nimport { DataViewBuilderComponent } from './data-view-builder.component';\nimport { MenuDataViewComponent } from './menu-data-view/menu-data-view.component';\n\nconst pepIcons = [\n pepIconSystemClose,\n pepIconArrowDownAlt,\n pepIconSystemBin,\n pepIconNumberPlus\n];\n\n@NgModule({\n declarations: [\n DataViewBuilderComponent, MenuDataViewComponent\n ],\n imports: [\n CommonModule,\n DragDropModule,\n MatIconModule,\n PepNgxLibModule,\n PepButtonModule,\n PepDialogModule,\n PepIconModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTextboxModule,\n PepTopBarModule,\n PepDraggableItemsModule,\n ],\n exports: [DataViewBuilderComponent],\n providers: [DataViewBuilderService]\n})\nexport class PepDataViewBuilderModule {\n constructor(\n private pepIconRegistry: PepIconRegistry,\n ) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/data-view-builder\n */\nexport * from './data-view-builder.module';\nexport * from './data-view-builder.component';\nexport * from './data-view-builder.model';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i3.DataViewBuilderService","i8","i1.DataViewBuilderService","i2","i4","i5.MenuDataViewComponent","i6","i1"],"mappings":"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"}
@@ -129,10 +129,10 @@ class GenericFieldsBuilderComponent {
129
129
  }
130
130
  }
131
131
  GenericFieldsBuilderComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: GenericFieldsBuilderComponent, deps: [{ token: GenericFieldsBuilderService }], target: i0.ɵɵFactoryTarget.Component });
132
- GenericFieldsBuilderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: GenericFieldsBuilderComponent, selector: "pep-generic-fields-builder", inputs: { builderTitle: "builderTitle", builderTitleHint: "builderTitleHint", showAddSeparator: "showAddSeparator", itemKeyLabel: "itemKeyLabel", itemTitleLabel: "itemTitleLabel", availableFields: "availableFields", fieldTemplate: "fieldTemplate", fields: "fields" }, outputs: { fieldsChange: "fieldsChange" }, ngImport: i0, template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i6.PepPageLayoutComponent, selector: "pep-page-layout", inputs: ["addPadding", "showShadow"] }, { kind: "component", type: i7.PepDraggableItemsComponent, selector: "pep-draggable-items", inputs: ["containerId", "showSearch", "title", "titleType", "titleSizeType", "itemPlaceholderType", "dropAreaIds", "items"], outputs: ["itemDragStarted", "itemDragEnded"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
132
+ GenericFieldsBuilderComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: GenericFieldsBuilderComponent, selector: "pep-generic-fields-builder", inputs: { builderTitle: "builderTitle", builderTitleHint: "builderTitleHint", showAddSeparator: "showAddSeparator", itemKeyLabel: "itemKeyLabel", itemTitleLabel: "itemTitleLabel", availableFields: "availableFields", fieldTemplate: "fieldTemplate", fields: "fields" }, outputs: { fieldsChange: "fieldsChange" }, ngImport: i0, template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field, index: i }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\" let-index=\"index\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"], dependencies: [{ kind: "directive", type: i2.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i2.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i3.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: i1.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i6.PepPageLayoutComponent, selector: "pep-page-layout", inputs: ["addPadding", "showShadow"] }, { kind: "component", type: i7.PepDraggableItemsComponent, selector: "pep-draggable-items", inputs: ["containerId", "showSearch", "title", "titleType", "titleSizeType", "itemPlaceholderType", "dropAreaIds", "items"], outputs: ["itemDragStarted", "itemDragEnded"] }, { kind: "pipe", type: i8.TranslatePipe, name: "translate" }] });
133
133
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: GenericFieldsBuilderComponent, decorators: [{
134
134
  type: Component,
135
- args: [{ selector: 'pep-generic-fields-builder', template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"] }]
135
+ args: [{ selector: 'pep-generic-fields-builder', template: "<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field, index: i }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\" let-index=\"index\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n", styles: [".mapped-fields-container{display:grid;height:100%;grid-template-columns:auto 1fr;grid-template-areas:\"side-area main-area\"}.mapped-fields-container .available-fields-side-area{grid-area:side-area;width:240px;max-width:240px;overflow:auto;height:inherit;padding-top:var(--pep-spacing-2xl, 2rem);margin-inline-end:calc(var(--pep-spacing-lg, 1rem) * 2)}.mapped-fields-container .mapped-fields-main-area{display:grid;grid-template-rows:auto 1fr;grid-area:main-area;padding-top:var(--pep-spacing-2xl, 2rem);overflow:auto;height:inherit}.mapped-fields-container .mapped-fields-main-area .mapped-fields-top-area{height:var(--pep-top-bar-field-height, 2.5rem);display:flex;align-items:center}.mapped-fields-container .mapped-fields-main-area .fields-area{overflow:auto;height:inherit;padding-top:var(--pep-spacing-lg, 1rem);padding-bottom:var(--pep-spacing-lg, 1rem);padding-inline:var(--pep-spacing-xs, .25rem)}.drop-field-here-area{min-height:5rem;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsla(var(--pep-color-weak-h, 0),var(--pep-color-weak-s, 0%),var(--pep-color-weak-l, 10%),.08);position:relative}.drop-field-here-area:after{z-index:0;content:\"\";transition:all .25s;display:block;position:absolute;inset:0;border-radius:inherit;border:1px dashed hsl(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),calc(var(--pep-color-system-primary-l, 10%) + 30%))}.drop-field-here-area.cdk-drop-list-dragging{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging:hover{background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.16);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 20%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.drop-field-here-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{display:none}.mapped-fields-area{display:flex;flex-direction:column;gap:var(--pep-spacing-lg, 1rem)}.mapped-fields-area.cdk-drop-list-dragging ::ng-deep .placeholder-item{max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5);height:0!important}.mapped-fields-area .mapped-field-container{cursor:grab;max-width:600px;display:flex;justify-content:center;align-items:center;border-radius:var(--pep-border-radius-md, .25rem);background:hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),98%);box-shadow:var(--pep-shadow-xs-offset, 0 .125rem .25rem 0) hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.08);border:1px solid hsl(var(--pep-color-regular-h, 0),var(--pep-color-regular-s, 0%),calc(var(--pep-color-regular-l, 10%) + 30%));min-height:2.5rem}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder{box-shadow:0 0 0 var(--pep-spacing-xs, .25rem) hsla(var(--pep-color-text-link-h, 207),var(--pep-color-text-link-s, 76%),var(--pep-color-text-link-l, 37%),.5)}.mapped-fields-area .mapped-field-container.cdk-drag-placeholder .field-wrapper{opacity:0}\n"] }]
136
136
  }], ctorParameters: function () { return [{ type: GenericFieldsBuilderService }]; }, propDecorators: { builderTitle: [{
137
137
  type: Input
138
138
  }], builderTitleHint: [{
@@ -1 +1 @@
1
- {"version":3,"file":"pepperi-addons-ngx-composite-lib-generic-fields-builder.mjs","sources":["../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.service.ts","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.component.ts","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.component.html","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.module.ts","../../../projects/ngx-composite-lib/generic-fields-builder/public-api.ts","../../../projects/ngx-composite-lib/generic-fields-builder/pepperi-addons-ngx-composite-lib-generic-fields-builder.ts"],"sourcesContent":["import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { distinctUntilChanged, filter } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GenericFieldsBuilderService {\n \n // This subject is for is grabbing mode.\n private _isGrabbingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n get isGrabbingChange$(): Observable<boolean> {\n return this._isGrabbingSubject.asObservable().pipe(distinctUntilChanged());\n }\n\n constructor() { \n //\n }\n\n private changeCursorOnDragStart() {\n document.body.classList.add('inheritCursors');\n document.body.style.cursor = 'grabbing';\n this._isGrabbingSubject.next(true);\n }\n\n private changeCursorOnDragEnd() {\n document.body.classList.remove('inheritCursors');\n document.body.style.cursor = 'unset';\n this._isGrabbingSubject.next(false);\n }\n \n onDragStart(event: CdkDragStart) {\n this.changeCursorOnDragStart();\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.changeCursorOnDragEnd();\n }\n}\n","import { CdkDragDrop, CdkDragEnd, CdkDragStart, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { GenericFieldsBuilderService } from './generic-fields-builder.service';\n\n@Component({\n selector: 'pep-generic-fields-builder',\n templateUrl: './generic-fields-builder.component.html',\n styleUrls: ['./generic-fields-builder.component.scss']\n})\nexport class GenericFieldsBuilderComponent implements OnInit {\n // @Input() title: string = '';\n @Input() builderTitle = '';\n @Input() builderTitleHint = '';\n @Input() showAddSeparator = true;\n @Input() itemKeyLabel = '';\n @Input() itemTitleLabel = '';\n \n private _availableFields: Array<IPepDraggableItem> = [];\n @Input()\n set availableFields(value: Array<IPepDraggableItem>) {\n this._availableFields = value;\n }\n get availableFields(): Array<IPepDraggableItem> {\n return this._availableFields;\n }\n \n @Input() fieldTemplate: TemplateRef<any> | undefined = undefined;\n \n private _fields: any[] = [];\n @Input()\n set fields(value: any[]) {\n this._fields = value;\n }\n get fields() : any[] {\n return this._fields;\n }\n\n @Output()\n fieldsChange: EventEmitter<any[]> = new EventEmitter<any[]>();\n \n emptyDropAreaId = 'emptyDropArea';\n mappedFieldsId = 'mappedFields';\n isGrabbing = false;\n\n constructor(\n private genericFieldsBuilderService: GenericFieldsBuilderService\n ) {\n this.genericFieldsBuilderService.isGrabbingChange$.subscribe((value) => {\n this.isGrabbing = value;\n });\n }\n\n private notifyFieldsChange() {\n this.fieldsChange.emit(this._fields);\n }\n\n private addNewField(draggableItem: IPepDraggableItem, index: number) {\n // Add new menuField to the mappedFields.\n const field: any = { key: draggableItem.data.key, title: draggableItem.title };\n this.spliceMappedFields(index, 0, field);\n }\n \n private spliceMappedFields(start: number, deleteCount: number, field?: any) {\n if (field) {\n this._fields.splice(start, deleteCount, field);\n } else {\n this._fields.splice(start, deleteCount);\n }\n\n this.notifyFieldsChange();\n }\n\n ngOnInit() {\n //\n }\n\n onDragStart(event: CdkDragStart) {\n this.genericFieldsBuilderService.onDragStart(event);\n }\n \n onDragEnd(event: CdkDragEnd) {\n this.genericFieldsBuilderService.onDragEnd(event);\n }\n\n onDropField(event: CdkDragDrop<any[]>) {\n if (event.previousContainer === event.container) {\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\n this.notifyFieldsChange();\n } else if (event.container.id === 'emptyDropArea') {\n this.addNewField(event.previousContainer.data[event.previousIndex], this.fields.length);\n } else {\n this.addNewField(event.previousContainer.data[event.previousIndex], event.currentIndex);\n }\n }\n}\n","<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\n\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepMenuModule } from '@pepperi-addons/ngx-lib/menu';\nimport { PepPageLayoutModule } from '@pepperi-addons/ngx-lib/page-layout';\nimport { PepTextboxModule } from '@pepperi-addons/ngx-lib/textbox';\nimport { PepTopBarModule } from '@pepperi-addons/ngx-lib/top-bar';\nimport { PepDraggableItemsModule } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { PepIconRegistry, PepIconModule, pepIconSystemClose, pepIconArrowDownAlt, pepIconSystemBin, pepIconNumberPlus } from '@pepperi-addons/ngx-lib/icon';\n\nimport { GenericFieldsBuilderService } from './generic-fields-builder.service';\n\nimport { GenericFieldsBuilderComponent } from './generic-fields-builder.component';\n\nconst pepIcons = [\n pepIconSystemClose,\n pepIconArrowDownAlt,\n pepIconSystemBin,\n pepIconNumberPlus\n];\n\n@NgModule({\n declarations: [\n GenericFieldsBuilderComponent\n ],\n imports: [\n CommonModule,\n DragDropModule,\n MatIconModule,\n PepNgxLibModule,\n PepButtonModule,\n PepDialogModule,\n PepIconModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTextboxModule,\n PepTopBarModule,\n PepDraggableItemsModule,\n ],\n exports: [GenericFieldsBuilderComponent],\n providers: [GenericFieldsBuilderService]\n})\nexport class PepGenericFieldsBuilderModule {\n constructor(\n private pepIconRegistry: PepIconRegistry,\n ) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/generic-fields-builder\n */\nexport * from './generic-fields-builder.module';\nexport * from './generic-fields-builder.component';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.GenericFieldsBuilderService","i5"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;MAQa,2BAA2B,CAAA;AAQpC,IAAA,WAAA,GAAA;;AALQ,QAAA,IAAA,CAAA,kBAAkB,GAA6B,IAAI,eAAe,CAAU,KAAK,CAAC,CAAC;;KAO1F;AAND,IAAA,IAAI,iBAAiB,GAAA;AACjB,QAAA,OAAO,IAAI,CAAC,kBAAkB,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC;KAC9E;IAMO,uBAAuB,GAAA;QAC3B,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC9C,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,UAAU,CAAC;AACxC,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;KACtC;IAEO,qBAAqB,GAAA;QACzB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QACjD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,OAAO,CAAC;AACrC,QAAA,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;KACvC;AAED,IAAA,WAAW,CAAC,KAAmB,EAAA;QAC3B,IAAI,CAAC,uBAAuB,EAAE,CAAC;KAClC;AAED,IAAA,SAAS,CAAC,KAAiB,EAAA;QACvB,IAAI,CAAC,qBAAqB,EAAE,CAAC;KAChC;;wHA9BQ,2BAA2B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,UAAA,EAAA,CAAA,CAAA;AAA3B,2BAAA,CAAA,KAAA,GAAA,EAAA,CAAA,qBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,2BAA2B,cAFxB,MAAM,EAAA,CAAA,CAAA;2FAET,2BAA2B,EAAA,UAAA,EAAA,CAAA;kBAHvC,UAAU;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,UAAU,EAAE,MAAM;AACrB,iBAAA,CAAA;;;MCGY,6BAA6B,CAAA;AAmCtC,IAAA,WAAA,CACY,2BAAwD,EAAA;QAAxD,IAA2B,CAAA,2BAAA,GAA3B,2BAA2B,CAA6B;;QAlC3D,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC;QAClB,IAAgB,CAAA,gBAAA,GAAG,EAAE,CAAC;QACtB,IAAgB,CAAA,gBAAA,GAAG,IAAI,CAAC;QACxB,IAAY,CAAA,YAAA,GAAG,EAAE,CAAC;QAClB,IAAc,CAAA,cAAA,GAAG,EAAE,CAAC;QAErB,IAAgB,CAAA,gBAAA,GAA6B,EAAE,CAAC;QAS/C,IAAa,CAAA,aAAA,GAAiC,SAAS,CAAC;QAEzD,IAAO,CAAA,OAAA,GAAU,EAAE,CAAC;AAU5B,QAAA,IAAA,CAAA,YAAY,GAAwB,IAAI,YAAY,EAAS,CAAC;QAE9D,IAAe,CAAA,eAAA,GAAG,eAAe,CAAC;QAClC,IAAc,CAAA,cAAA,GAAG,cAAc,CAAC;QAChC,IAAU,CAAA,UAAA,GAAG,KAAK,CAAC;QAKf,IAAI,CAAC,2BAA2B,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,KAAK,KAAI;AACnE,YAAA,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;AAC5B,SAAC,CAAC,CAAC;KACN;IAhCD,IACI,eAAe,CAAC,KAA+B,EAAA;AAC/C,QAAA,IAAI,CAAC,gBAAgB,GAAG,KAAK,CAAC;KACjC;AACD,IAAA,IAAI,eAAe,GAAA;QACf,OAAO,IAAI,CAAC,gBAAgB,CAAC;KAChC;IAKD,IACI,MAAM,CAAC,KAAY,EAAA;AACnB,QAAA,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC;KACxB;AACD,IAAA,IAAI,MAAM,GAAA;QACN,OAAO,IAAI,CAAC,OAAO,CAAC;KACvB;IAiBO,kBAAkB,GAAA;QACtB,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;KACxC;IAEO,WAAW,CAAC,aAAgC,EAAE,KAAa,EAAA;;AAE/D,QAAA,MAAM,KAAK,GAAQ,EAAE,GAAG,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,EAAE,KAAK,EAAE,aAAa,CAAC,KAAK,EAAE,CAAC;QAC/E,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,CAAC,CAAC;KAC5C;AAEO,IAAA,kBAAkB,CAAC,KAAa,EAAE,WAAmB,EAAE,KAAW,EAAA;AACtE,QAAA,IAAI,KAAK,EAAE;YACP,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC;AAClD,SAAA;AAAM,aAAA;YACH,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;AAC3C,SAAA;QAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;KAC7B;IAED,QAAQ,GAAA;;KAEP;AAED,IAAA,WAAW,CAAC,KAAmB,EAAA;AAC3B,QAAA,IAAI,CAAC,2BAA2B,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;KACvD;AAED,IAAA,SAAS,CAAC,KAAiB,EAAA;AACvB,QAAA,IAAI,CAAC,2BAA2B,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;KACrD;AAED,IAAA,WAAW,CAAC,KAAyB,EAAA;AACjC,QAAA,IAAI,KAAK,CAAC,iBAAiB,KAAK,KAAK,CAAC,SAAS,EAAE;AAC7C,YAAA,eAAe,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;YAC/E,IAAI,CAAC,kBAAkB,EAAE,CAAC;AAC7B,SAAA;AAAM,aAAA,IAAI,KAAK,CAAC,SAAS,CAAC,EAAE,KAAK,eAAe,EAAE;YAC/C,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;AAC3F,SAAA;AAAM,aAAA;AACH,YAAA,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,KAAK,CAAC,YAAY,CAAC,CAAC;AAC3F,SAAA;KACJ;;0HApFQ,6BAA6B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAAA,2BAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAA7B,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,6BAA6B,yXCV1C,8sGAkDA,EAAA,MAAA,EAAA,CAAA,ghIAAA,CAAA,EAAA,YAAA,EAAA,CAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,kBAAA,EAAA,MAAA,EAAA,CAAA,SAAA,EAAA,cAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,IAAA,EAAA,QAAA,EAAA,QAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,UAAA,EAAA,UAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,oBAAA,EAAA,MAAA,EAAA,CAAA,yBAAA,EAAA,kBAAA,EAAA,0BAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,WAAA,EAAA,QAAA,EAAA,8BAAA,EAAA,MAAA,EAAA,CAAA,wBAAA,EAAA,iBAAA,EAAA,wBAAA,EAAA,IAAA,EAAA,qBAAA,EAAA,qBAAA,EAAA,4BAAA,EAAA,2BAAA,EAAA,0BAAA,EAAA,+BAAA,EAAA,2BAAA,CAAA,EAAA,OAAA,EAAA,CAAA,oBAAA,EAAA,oBAAA,EAAA,mBAAA,EAAA,mBAAA,CAAA,EAAA,QAAA,EAAA,CAAA,aAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,WAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,iBAAA,EAAA,oBAAA,EAAA,iBAAA,EAAA,mBAAA,EAAA,yBAAA,EAAA,iBAAA,EAAA,0BAAA,EAAA,qBAAA,EAAA,yBAAA,CAAA,EAAA,OAAA,EAAA,CAAA,gBAAA,EAAA,iBAAA,EAAA,cAAA,EAAA,gBAAA,EAAA,eAAA,EAAA,gBAAA,EAAA,cAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,OAAA,EAAA,QAAA,EAAA,SAAA,EAAA,SAAA,EAAA,UAAA,CAAA,EAAA,QAAA,EAAA,CAAA,SAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAAC,EAAA,CAAA,gBAAA,EAAA,QAAA,EAAA,UAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,MAAA,EAAA,MAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,sBAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,MAAA,EAAA,CAAA,YAAA,EAAA,YAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,WAAA,EAAA,IAAA,EAAA,EAAA,CAAA,0BAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,MAAA,EAAA,CAAA,aAAA,EAAA,YAAA,EAAA,OAAA,EAAA,WAAA,EAAA,eAAA,EAAA,qBAAA,EAAA,aAAA,EAAA,OAAA,CAAA,EAAA,OAAA,EAAA,CAAA,iBAAA,EAAA,eAAA,CAAA,EAAA,EAAA,EAAA,IAAA,EAAA,MAAA,EAAA,IAAA,EAAA,EAAA,CAAA,aAAA,EAAA,IAAA,EAAA,WAAA,EAAA,CAAA,EAAA,CAAA,CAAA;2FDxCa,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBALzC,SAAS;+BACI,4BAA4B,EAAA,QAAA,EAAA,8sGAAA,EAAA,MAAA,EAAA,CAAA,ghIAAA,CAAA,EAAA,CAAA;+GAM7B,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBACG,gBAAgB,EAAA,CAAA;sBAAxB,KAAK;gBACG,YAAY,EAAA,CAAA;sBAApB,KAAK;gBACG,cAAc,EAAA,CAAA;sBAAtB,KAAK;gBAIF,eAAe,EAAA,CAAA;sBADlB,KAAK;gBAQG,aAAa,EAAA,CAAA;sBAArB,KAAK;gBAIF,MAAM,EAAA,CAAA;sBADT,KAAK;gBASN,YAAY,EAAA,CAAA;sBADX,MAAM;;;AEjBX,MAAM,QAAQ,GAAG;IACb,kBAAkB;IAClB,mBAAmB;IACnB,gBAAgB;IAChB,iBAAiB;CACpB,CAAC;MAuBW,6BAA6B,CAAA;AACtC,IAAA,WAAA,CACY,eAAgC,EAAA;QAAhC,IAAe,CAAA,eAAA,GAAf,eAAe,CAAiB;AAExC,QAAA,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;KAChD;;0HALQ,6BAA6B,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,EAAA,CAAA,eAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;2HAA7B,6BAA6B,EAAA,YAAA,EAAA,CAnBlC,6BAA6B,CAAA,EAAA,OAAA,EAAA,CAG7B,YAAY;QACZ,cAAc;QACd,aAAa;QACb,eAAe;QACf,eAAe;QACf,eAAe;QACf,aAAa;QACb,aAAa;QACb,mBAAmB;QACnB,gBAAgB;QAChB,eAAe;AACf,QAAA,uBAAuB,aAEjB,6BAA6B,CAAA,EAAA,CAAA,CAAA;AAG9B,6BAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,6BAA6B,EAF3B,SAAA,EAAA,CAAC,2BAA2B,CAAC,YAdpC,YAAY;QACZ,cAAc;QACd,aAAa;QACb,eAAe;QACf,eAAe;QACf,eAAe;QACf,aAAa;QACb,aAAa;QACb,mBAAmB;QACnB,gBAAgB;QAChB,eAAe;QACf,uBAAuB,CAAA,EAAA,CAAA,CAAA;2FAKlB,6BAA6B,EAAA,UAAA,EAAA,CAAA;kBArBzC,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,YAAY,EAAE;wBACV,6BAA6B;AAChC,qBAAA;AACD,oBAAA,OAAO,EAAE;wBACL,YAAY;wBACZ,cAAc;wBACd,aAAa;wBACb,eAAe;wBACf,eAAe;wBACf,eAAe;wBACf,aAAa;wBACb,aAAa;wBACb,mBAAmB;wBACnB,gBAAgB;wBAChB,eAAe;wBACf,uBAAuB;AAC1B,qBAAA;oBACD,OAAO,EAAE,CAAC,6BAA6B,CAAC;oBACxC,SAAS,EAAE,CAAC,2BAA2B,CAAC;AAC3C,iBAAA,CAAA;;;AChDD;;AAEG;;ACFH;;AAEG;;;;"}
1
+ {"version":3,"file":"pepperi-addons-ngx-composite-lib-generic-fields-builder.mjs","sources":["../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.service.ts","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.component.ts","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.component.html","../../../projects/ngx-composite-lib/generic-fields-builder/generic-fields-builder.module.ts","../../../projects/ngx-composite-lib/generic-fields-builder/public-api.ts","../../../projects/ngx-composite-lib/generic-fields-builder/pepperi-addons-ngx-composite-lib-generic-fields-builder.ts"],"sourcesContent":["import { CdkDragEnd, CdkDragStart } from '@angular/cdk/drag-drop';\nimport { Injectable } from '@angular/core';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { distinctUntilChanged, filter } from 'rxjs/operators';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class GenericFieldsBuilderService {\n \n // This subject is for is grabbing mode.\n private _isGrabbingSubject: BehaviorSubject<boolean> = new BehaviorSubject<boolean>(false);\n get isGrabbingChange$(): Observable<boolean> {\n return this._isGrabbingSubject.asObservable().pipe(distinctUntilChanged());\n }\n\n constructor() { \n //\n }\n\n private changeCursorOnDragStart() {\n document.body.classList.add('inheritCursors');\n document.body.style.cursor = 'grabbing';\n this._isGrabbingSubject.next(true);\n }\n\n private changeCursorOnDragEnd() {\n document.body.classList.remove('inheritCursors');\n document.body.style.cursor = 'unset';\n this._isGrabbingSubject.next(false);\n }\n \n onDragStart(event: CdkDragStart) {\n this.changeCursorOnDragStart();\n }\n\n onDragEnd(event: CdkDragEnd) {\n this.changeCursorOnDragEnd();\n }\n}\n","import { CdkDragDrop, CdkDragEnd, CdkDragStart, moveItemInArray } from '@angular/cdk/drag-drop';\nimport { Component, EventEmitter, Input, OnInit, Output, TemplateRef, ViewChild } from '@angular/core';\nimport { IPepDraggableItem } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { GenericFieldsBuilderService } from './generic-fields-builder.service';\n\n@Component({\n selector: 'pep-generic-fields-builder',\n templateUrl: './generic-fields-builder.component.html',\n styleUrls: ['./generic-fields-builder.component.scss']\n})\nexport class GenericFieldsBuilderComponent implements OnInit {\n // @Input() title: string = '';\n @Input() builderTitle = '';\n @Input() builderTitleHint = '';\n @Input() showAddSeparator = true;\n @Input() itemKeyLabel = '';\n @Input() itemTitleLabel = '';\n \n private _availableFields: Array<IPepDraggableItem> = [];\n @Input()\n set availableFields(value: Array<IPepDraggableItem>) {\n this._availableFields = value;\n }\n get availableFields(): Array<IPepDraggableItem> {\n return this._availableFields;\n }\n \n @Input() fieldTemplate: TemplateRef<any> | undefined = undefined;\n \n private _fields: any[] = [];\n @Input()\n set fields(value: any[]) {\n this._fields = value;\n }\n get fields() : any[] {\n return this._fields;\n }\n\n @Output()\n fieldsChange: EventEmitter<any[]> = new EventEmitter<any[]>();\n \n emptyDropAreaId = 'emptyDropArea';\n mappedFieldsId = 'mappedFields';\n isGrabbing = false;\n\n constructor(\n private genericFieldsBuilderService: GenericFieldsBuilderService\n ) {\n this.genericFieldsBuilderService.isGrabbingChange$.subscribe((value) => {\n this.isGrabbing = value;\n });\n }\n\n private notifyFieldsChange() {\n this.fieldsChange.emit(this._fields);\n }\n\n private addNewField(draggableItem: IPepDraggableItem, index: number) {\n // Add new menuField to the mappedFields.\n const field: any = { key: draggableItem.data.key, title: draggableItem.title };\n this.spliceMappedFields(index, 0, field);\n }\n \n private spliceMappedFields(start: number, deleteCount: number, field?: any) {\n if (field) {\n this._fields.splice(start, deleteCount, field);\n } else {\n this._fields.splice(start, deleteCount);\n }\n\n this.notifyFieldsChange();\n }\n\n ngOnInit() {\n //\n }\n\n onDragStart(event: CdkDragStart) {\n this.genericFieldsBuilderService.onDragStart(event);\n }\n \n onDragEnd(event: CdkDragEnd) {\n this.genericFieldsBuilderService.onDragEnd(event);\n }\n\n onDropField(event: CdkDragDrop<any[]>) {\n if (event.previousContainer === event.container) {\n moveItemInArray(event.container.data, event.previousIndex, event.currentIndex);\n this.notifyFieldsChange();\n } else if (event.container.id === 'emptyDropArea') {\n this.addNewField(event.previousContainer.data[event.previousIndex], this.fields.length);\n } else {\n this.addNewField(event.previousContainer.data[event.previousIndex], event.currentIndex);\n }\n }\n}\n","<pep-page-layout >\n <ng-container pep-main-area>\n <div *ngIf=\"availableFields\" class=\"mapped-fields-container\">\n <div class=\"available-fields-side-area\">\n <pep-draggable-items [items]=\"availableFields\" [title]=\"'GENERIC_FIELDS_BUILDER.AVAILABLE_FIELDS' | translate\" titleType=\"with-bottom-border\" titleSizeType=\"md\"\n itemPlaceholderType=\"weak\" [showSearch]=\"true\" [dropAreaIds]=\"['emptyDropArea', 'mappedFields']\" (itemDragStarted)=\"onDragStart($event)\" (itemDragEnded)=\"onDragEnd($event)\">\n </pep-draggable-items>\n </div>\n <div pep-main-area class=\"mapped-fields-main-area\">\n <div class=\"mapped-fields-top-area pep-border-bottom\"\n [title]=\"builderTitle + ' ' + (builderTitleHint ? ('(' + builderTitleHint + ')') : '')\">\n <span class=\"title-md\">{{ builderTitle }}&nbsp;</span>\n <span *ngIf=\"builderTitleHint\" class=\"color-dimmed\">({{ builderTitleHint }})</span>\n </div>\n \n <div class=\"fields-area\">\n <ng-container *ngIf=\"fields === null || fields.length === 0; then emptyTemplate; else notEmptyTemplate\"></ng-container>\n <ng-template #emptyTemplate>\n <div [id]=\"emptyDropAreaId\" class=\"drop-field-here-area\" cdkDropList (cdkDropListDropped)=\"onDropField($event)\">\n <mat-icon class=\"pep-spacing-element\">\n <pep-icon name=\"arrow_down_alt\"></pep-icon>\n </mat-icon>\n <span class=\"body-sm ellipsis\">\n {{ 'GENERIC_FIELDS_BUILDER.EMPTY_DROP_AREA_TEXT' | translate }}\n </span> \n </div>\n </ng-template>\n <ng-template #notEmptyTemplate>\n <div [id]=\"mappedFieldsId\" class=\"mapped-fields-area\" [ngClass]=\"{ 'no-row-gap': !isGrabbing }\"\n cdkDropList [cdkDropListData]=\"fields\" (cdkDropListDropped)=\"onDropField($event)\">\n <ng-container *ngFor=\"let field of fields; let i = index\" >\n <div class=\"mapped-field-container\" \n cdkDrag (cdkDragStarted)=\"onDragStart($event)\" (cdkDragEnded)=\"onDragEnd($event)\">\n \n <div class=\"field-wrapper\">\n <ng-container *ngTemplateOutlet=\"fieldTemplate || defaultTemplate; context: { field: field, index: i }\"></ng-container>\n </div>\n </div>\n </ng-container>\n </div>\n </ng-template>\n </div>\n </div>\n </div>\n </ng-container>\n</pep-page-layout>\n\n<ng-template #defaultTemplate let-field=\"field\" let-index=\"index\">\n {{ 'GENERIC_FIELDS_BUILDER.TEMPLATE_NOT_SUPPLIED' | translate: { fieldTitle: field.title || field.key } }}\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\nimport { DragDropModule } from '@angular/cdk/drag-drop';\n\nimport { MatIconModule } from '@angular/material/icon';\n\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { PepDialogModule } from '@pepperi-addons/ngx-lib/dialog';\nimport { PepMenuModule } from '@pepperi-addons/ngx-lib/menu';\nimport { PepPageLayoutModule } from '@pepperi-addons/ngx-lib/page-layout';\nimport { PepTextboxModule } from '@pepperi-addons/ngx-lib/textbox';\nimport { PepTopBarModule } from '@pepperi-addons/ngx-lib/top-bar';\nimport { PepDraggableItemsModule } from '@pepperi-addons/ngx-lib/draggable-items';\nimport { PepIconRegistry, PepIconModule, pepIconSystemClose, pepIconArrowDownAlt, pepIconSystemBin, pepIconNumberPlus } from '@pepperi-addons/ngx-lib/icon';\n\nimport { GenericFieldsBuilderService } from './generic-fields-builder.service';\n\nimport { GenericFieldsBuilderComponent } from './generic-fields-builder.component';\n\nconst pepIcons = [\n pepIconSystemClose,\n pepIconArrowDownAlt,\n pepIconSystemBin,\n pepIconNumberPlus\n];\n\n@NgModule({\n declarations: [\n GenericFieldsBuilderComponent\n ],\n imports: [\n CommonModule,\n DragDropModule,\n MatIconModule,\n PepNgxLibModule,\n PepButtonModule,\n PepDialogModule,\n PepIconModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTextboxModule,\n PepTopBarModule,\n PepDraggableItemsModule,\n ],\n exports: [GenericFieldsBuilderComponent],\n providers: [GenericFieldsBuilderService]\n})\nexport class PepGenericFieldsBuilderModule {\n constructor(\n private pepIconRegistry: PepIconRegistry,\n ) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/generic-fields-builder\n */\nexport * from './generic-fields-builder.module';\nexport * from './generic-fields-builder.component';","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.GenericFieldsBuilderService","i5"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pepperi-addons/ngx-composite-lib",
3
- "version": "0.4.2-beta.137",
3
+ "version": "0.4.2-beta.138",
4
4
  "peerDependencies": {
5
5
  "@angular/animations": ">= 14.0.2",
6
6
  "@angular/cdk": ">= 14.0.2",