@memberjunction/ng-user-view-properties 1.0.9 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -223,7 +223,7 @@ function UserViewPropertiesDialogComponent_kendo_window_5_Template(rf, ctx) { if
223
223
  i0.ɵɵelementEnd()();
224
224
  i0.ɵɵelementStart(16, "div", 18)(17, "button", 19);
225
225
  i0.ɵɵlistener("click", function UserViewPropertiesDialogComponent_kendo_window_5_Template_button_click_17_listener() { i0.ɵɵrestoreView(_r50); const ctx_r54 = i0.ɵɵnextContext(); return i0.ɵɵresetView(ctx_r54.saveProperties()); });
226
- i0.ɵɵelement(18, "kendo-svgicon", 20);
226
+ i0.ɵɵelement(18, "span", 20);
227
227
  i0.ɵɵtext(19, " Save ");
228
228
  i0.ɵɵelementEnd();
229
229
  i0.ɵɵelementStart(20, "button", 21);
@@ -241,8 +241,6 @@ function UserViewPropertiesDialogComponent_kendo_window_5_Template(rf, ctx) { if
241
241
  i0.ɵɵproperty("keepTabContent", true)("animate", false)("height", ctx_r3.TabHeight);
242
242
  i0.ɵɵadvance();
243
243
  i0.ɵɵproperty("selected", true);
244
- i0.ɵɵadvance(12);
245
- i0.ɵɵproperty("icon", ctx_r3.sharedService.kendoSVGIcon("save"));
246
244
  } }
247
245
  export class UserViewPropertiesDialogComponent extends BaseFormComponent {
248
246
  constructor(route, elRef, ss, formBuilder, router, renderer) {
@@ -584,11 +582,11 @@ UserViewPropertiesDialogComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({
584
582
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.nameField = _t.first);
585
583
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.dialogContainer = _t.first);
586
584
  i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.outerDialogContainer = _t.first);
587
- } }, inputs: { ViewID: "ViewID", EntityName: "EntityName", ShowPropertiesButton: "ShowPropertiesButton" }, outputs: { dialogClosed: "dialogClosed" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 6, vars: 3, consts: [["kendoButton", "", "themeColor", "info", "class", "view-properties-button", 3, "click", 4, "ngIf"], ["outerDialogContainer", ""], ["class", "k-overlay", 4, "ngIf"], ["title", "View Properties", 3, "minHeight", "minWidth", "top", "left", "width", "height", "resizable", "close", "resizeEnd", "heightChange", "widthChange", 4, "ngIf"], ["kendoButton", "", "themeColor", "info", 1, "view-properties-button", 3, "click"], [1, "fa-solid", "fa-gear"], [1, "k-overlay"], ["title", "View Properties", 3, "minHeight", "minWidth", "top", "left", "width", "height", "resizable", "close", "resizeEnd", "heightChange", "widthChange"], ["type", "converging-spinner", 4, "ngIf"], [1, "k-d-flex", "k-flex-col", "k-justify-content-between", "k-h-full"], ["dialogContainer", ""], [3, "keepTabContent", "animate", "height"], ["title", "General", 3, "selected"], ["kendoTabContent", ""], ["title", "Fields"], ["title", "Filters"], ["title", "Sorting"], ["title", "Advanced"], [1, "k-actions", "k-actions-end", "customBtn", "popup-actions"], ["kendoButton", "", "themeColor", "info", 3, "click"], [3, "icon"], ["fillMode", "outline", "themeColor", "info", "kendoButton", "", 3, "click"], ["type", "converging-spinner"], [1, "view-prop-tab-contents"], [1, "form-group"], ["text", "Name", 1, "k-form-label"], [1, "view-name", 3, "ngModel", "ngModelChange"], ["nameField", ""], [1, "form-group", "form-group-description"], ["text", "Description", 1, "k-form-label"], [1, "k-input", "k-input-solid", "view-description", 3, "ngModel", "ngModelChange"], ["itemClass", "item", "activeItemClass", "item active", 3, "kendoSortableBinding", "animation", "dragEnd"], [1, "item-content"], ["type", "checkbox", "kendoCheckBox", "", 3, "ngModel", "id", "ngModelChange", "change"], [1, "k-checkbox-label", 3, "for", "text"], [1, "fa-solid", "fa-bars-staggered"], [1, "smart-filter-container"], ["text", "Smart Filter", 1, "smart-filter-label"], [3, "ngModel", "ngModelChange"], ["class", "smart-filter-prompt", "mjFillContainer", "", 3, "fillHeight", 4, "ngIf"], [4, "ngIf"], ["mjFillContainer", "", 1, "smart-filter-prompt", 3, "fillHeight"], ["placeholder", "Describe how you would like the data filtered", "resizable", "vertical", 3, "rows", "ngModel", "ngModelChange"], [3, "filters", "value", "valueChange"], [1, "sort-header"], ["kendoButton", "", 3, "click"], [1, "fa-solid", "fa-plus"], [4, "ngFor", "ngForOf"], ["textField", "Name", "valueField", "Name", 1, "sort-column", 3, "data", "ngModel", "valueChange", "ngModelChange"], ["textField", "Name", "valueField", "Value", 1, "sort-direction", 3, "data", "ngModel", "valueChange", "ngModelChange"], [1, "fa-solid", "fa-xmark"], ["resizable", "vertical", 1, "advanced-tab-details", 3, "readonly", "rows", "ngModel", "ngModelChange"]], template: function UserViewPropertiesDialogComponent_Template(rf, ctx) { if (rf & 1) {
585
+ } }, inputs: { ViewID: "ViewID", EntityName: "EntityName", ShowPropertiesButton: "ShowPropertiesButton" }, outputs: { dialogClosed: "dialogClosed" }, features: [i0.ɵɵInheritDefinitionFeature], decls: 6, vars: 3, consts: [["kendoButton", "", "themeColor", "info", "class", "view-properties-button", 3, "click", 4, "ngIf"], ["outerDialogContainer", ""], ["class", "k-overlay", 4, "ngIf"], ["title", "View Properties", 3, "minHeight", "minWidth", "top", "left", "width", "height", "resizable", "close", "resizeEnd", "heightChange", "widthChange", 4, "ngIf"], ["kendoButton", "", "themeColor", "info", 1, "view-properties-button", 3, "click"], [1, "fa-solid", "fa-gear"], [1, "k-overlay"], ["title", "View Properties", 3, "minHeight", "minWidth", "top", "left", "width", "height", "resizable", "close", "resizeEnd", "heightChange", "widthChange"], ["type", "converging-spinner", 4, "ngIf"], [1, "k-d-flex", "k-flex-col", "k-justify-content-between", "k-h-full"], ["dialogContainer", ""], [3, "keepTabContent", "animate", "height"], ["title", "General", 3, "selected"], ["kendoTabContent", ""], ["title", "Fields"], ["title", "Filters"], ["title", "Sorting"], ["title", "Advanced"], [1, "k-actions", "k-actions-end", "customBtn", "popup-actions"], ["kendoButton", "", "themeColor", "info", 3, "click"], [1, "fa-solid", "fa-circle-check"], ["fillMode", "outline", "themeColor", "info", "kendoButton", "", 3, "click"], ["type", "converging-spinner"], [1, "view-prop-tab-contents"], [1, "form-group"], ["text", "Name", 1, "k-form-label"], [1, "view-name", 3, "ngModel", "ngModelChange"], ["nameField", ""], [1, "form-group", "form-group-description"], ["text", "Description", 1, "k-form-label"], [1, "k-input", "k-input-solid", "view-description", 3, "ngModel", "ngModelChange"], ["itemClass", "item", "activeItemClass", "item active", 3, "kendoSortableBinding", "animation", "dragEnd"], [1, "item-content"], ["type", "checkbox", "kendoCheckBox", "", 3, "ngModel", "id", "ngModelChange", "change"], [1, "k-checkbox-label", 3, "for", "text"], [1, "fa-solid", "fa-bars-staggered"], [1, "smart-filter-container"], ["text", "Smart Filter", 1, "smart-filter-label"], [3, "ngModel", "ngModelChange"], ["class", "smart-filter-prompt", "mjFillContainer", "", 3, "fillHeight", 4, "ngIf"], [4, "ngIf"], ["mjFillContainer", "", 1, "smart-filter-prompt", 3, "fillHeight"], ["placeholder", "Describe how you would like the data filtered", "resizable", "vertical", 3, "rows", "ngModel", "ngModelChange"], [3, "filters", "value", "valueChange"], [1, "sort-header"], ["kendoButton", "", 3, "click"], [1, "fa-solid", "fa-plus"], [4, "ngFor", "ngForOf"], ["textField", "Name", "valueField", "Name", 1, "sort-column", 3, "data", "ngModel", "valueChange", "ngModelChange"], ["textField", "Name", "valueField", "Value", 1, "sort-direction", 3, "data", "ngModel", "valueChange", "ngModelChange"], [1, "fa-solid", "fa-xmark"], ["resizable", "vertical", 1, "advanced-tab-details", 3, "readonly", "rows", "ngModel", "ngModelChange"]], template: function UserViewPropertiesDialogComponent_Template(rf, ctx) { if (rf & 1) {
588
586
  i0.ɵɵelementStart(0, "div");
589
587
  i0.ɵɵtemplate(1, UserViewPropertiesDialogComponent_button_1_Template, 3, 0, "button", 0);
590
588
  i0.ɵɵelementStart(2, "div", null, 1);
591
- i0.ɵɵtemplate(4, UserViewPropertiesDialogComponent_div_4_Template, 1, 0, "div", 2)(5, UserViewPropertiesDialogComponent_kendo_window_5_Template, 22, 15, "kendo-window", 3);
589
+ i0.ɵɵtemplate(4, UserViewPropertiesDialogComponent_div_4_Template, 1, 0, "div", 2)(5, UserViewPropertiesDialogComponent_kendo_window_5_Template, 22, 14, "kendo-window", 3);
592
590
  i0.ɵɵelementEnd()();
593
591
  } if (rf & 2) {
594
592
  i0.ɵɵadvance();
@@ -600,7 +598,7 @@ UserViewPropertiesDialogComponent.ɵcmp = /*@__PURE__*/ i0.ɵɵdefineComponent({
600
598
  } }, dependencies: [i4.NgForOf, i4.NgIf, i5.TextAreaComponent, i5.TextBoxComponent, i5.SwitchComponent, i5.CheckBoxDirective, i6.LabelComponent, i3.DefaultValueAccessor, i3.CheckboxControlValueAccessor, i3.NgControlStatus, i3.NgModel, i7.ButtonComponent, i8.WindowComponent, i9.TabStripComponent, i9.TabStripTabComponent, i9.TabContentDirective, i10.SortableComponent, i10.SortableBindingDirective, i11.FilterComponent, i12.DropDownListComponent], styles: [".view-properties-button[_ngcontent-%COMP%] {\n margin-left: 0px;\n }\n .view-prop-tab-contents[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: column;\n height: 100%; \n\n }\n \n .form-group[_ngcontent-%COMP%] {\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n margin-bottom: 10px;\n }\n \n .form-group-description[_ngcontent-%COMP%] {\n flex-grow: 1;\n }\n \n .k-form-label[_ngcontent-%COMP%] {\n width: 150px; \n\n margin-right: 10px;\n }\n \n .view-description[_ngcontent-%COMP%] {\n flex-grow: 1;\n height: 100%;\n padding: 5px;\n resize: none;\n }\n \n \n \n .item-content[_ngcontent-%COMP%] {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n \n .popup-content[_ngcontent-%COMP%] {\n height: calc(100% - 46px);\n }\n \n .popup-actions[_ngcontent-%COMP%] {\n padding: 16px 0 0;\n }\n \n .view-prop-tab-contents[_ngcontent-%COMP%] {\n overflow: hidden;\n }\n \n .sort-column[_ngcontent-%COMP%] {\n width: 300px;\n }\n \n .sort-direction[_ngcontent-%COMP%] {\n width: 125px;\n }\n \n .sort-header[_ngcontent-%COMP%] > button[_ngcontent-%COMP%] {\n margin-left: 5px;\n margin-bottom: 5px;\n width: 75px;\n }\n \n .smart-filter-label[_ngcontent-%COMP%] {\n margin-right: 10px;\n }\n \n .smart-filter-prompt[_ngcontent-%COMP%] {\n margin-top: 15px;\n }\n \n .advanced-tab-details[_ngcontent-%COMP%]\n {\n margin-bottom: 10px;\n }\n .customBtn button {\n flex: 1;\n border-radius: 10px;\n line-height: 34px;\n }\n .popup-content .k-tabstrip-items-wrapper {\n background: var(--white-color) !important;\n padding-left: 0 !important;\n }\n .popup-content .k-tabstrip-items-wrapper .k-tabstrip-items .k-tabstrip-item.k-active {\n border-bottom: 3px solid var(--border-blue) !important;\n }\n .popup-content .k-tabstrip-items-wrapper .k-tabstrip-items .k-tabstrip-item {\n background: var(--white-color) !important;\n border-right: 0 !important;\n }\n\n.k-checkbox[_ngcontent-%COMP%]:checked {\n background-color: var(--border-blue);\n border-color: var(--border-blue);\n color: white;\n}\n\n.k-switch-on[_ngcontent-%COMP%] .k-switch-track[_ngcontent-%COMP%] {\n background-color: var(--border-blue);\n border-color: var(--border-blue);\n color: white;\n}\n\n.k-selected[_ngcontent-%COMP%] {\n background-color: var(--border-blue);\n border-color: var(--border-blue);\n color: white;\n}"] });
601
599
  (() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(UserViewPropertiesDialogComponent, [{
602
600
  type: Component,
603
- args: [{ selector: 'mj-user-view-properties-dialog', template: "<div>\n <button *ngIf=\"ShowPropertiesButton\"\n kendoButton\n themeColor=\"info\"\n (click)=\"this.Open()\"\n class=\"view-properties-button\"\n >\n <span class=\"fa-solid fa-gear\"></span>\n Properties\n </button>\n <div #outerDialogContainer>\n <div class=\"k-overlay\" *ngIf=\"isDialogOpened\"></div>\n <kendo-window\n [minHeight]=\"300\"\n [minWidth]=\"800\"\n [top]=\"100\"\n [left]=\"100\"\n [width]=\"668\"\n [height]=\"525\"\n [resizable]=\"true\"\n title=\"View Properties\"\n *ngIf=\"isDialogOpened\"\n (close)=\"closePropertiesDialog()\"\n (resizeEnd)=\"this.ResizeTab()\"\n (heightChange)=\"this.ResizeTab()\"\n (widthChange)=\"this.ResizeTab()\"\n >\n <kendo-loader *ngIf=\"showloader\" type=\"converging-spinner\" ></kendo-loader>\n <div class=\"k-d-flex k-flex-col k-justify-content-between k-h-full\" #dialogContainer>\n <div [class]=\"showloader ? 'disabled-div' : ''\">\n <kendo-tabstrip [keepTabContent]=\"true\" [animate] = \"false\" [height]=\"TabHeight\" >\n <kendo-tabstrip-tab title=\"General\" [selected]=\"true\">\n <ng-template kendoTabContent>\n <div class=\"view-prop-tab-contents\">\n <div class=\"form-group\">\n <kendo-label class=\"k-form-label\" text=\"Name\"></kendo-label>\n <kendo-textbox #nameField class=\"view-name\" [(ngModel)]=\"record.Name\"></kendo-textbox>\n </div>\n <div class=\"form-group form-group-description\">\n <kendo-label class=\"k-form-label\" text=\"Description\"></kendo-label>\n <textarea class=\"k-input k-input-solid view-description\" [(ngModel)]=\"record.Description\"></textarea>\n </div>\n </div>\n </ng-template>\n </kendo-tabstrip-tab>\n <kendo-tabstrip-tab title=\"Fields\">\n <ng-template kendoTabContent>\n \n <kendo-sortable\n [kendoSortableBinding]=\"this.localGridState.columnSettings\"\n [animation]=\"true\"\n itemClass=\"item\"\n activeItemClass=\"item active\"\n (dragEnd)=\"onDragEnd($event)\"\n >\n <ng-template let-col=\"item\">\n <div class=\"item-content\">\n <div>\n <input\n type=\"checkbox\"\n [(ngModel)]=\"!col.hidden\"\n id=\"column_{{col.ID}}\"\n kendoCheckBox\n (change)=\"toggleColumn(col)\"\n />\n <kendo-label\n [for]=\"'column_'+col.ID\"\n [text]=\"col.DisplayName ? col.DisplayName : col.Name\"\n class=\"k-checkbox-label\"\n ></kendo-label>\n </div>\n <span class=\"fa-solid fa-bars-staggered\"></span>\n </div>\n </ng-template>\n </kendo-sortable>\n </ng-template>\n </kendo-tabstrip-tab>\n <kendo-tabstrip-tab title=\"Filters\">\n <ng-template kendoTabContent>\n <div class=\"smart-filter-container\">\n <kendo-label text=\"Smart Filter\" class=\"smart-filter-label\"></kendo-label>\n <kendo-switch [(ngModel)]=\"record.SmartFilterEnabled\"></kendo-switch>\n </div>\n <div *ngIf=\"record.SmartFilterEnabled\" class=\"smart-filter-prompt\" mjFillContainer [fillHeight]=\"true\">\n <kendo-textarea\n placeholder=\"Describe how you would like the data filtered\"\n [rows]=\"10\"\n [(ngModel)]=\"record.SmartFilterPrompt\"\n resizable=\"vertical\"\n ></kendo-textarea>\n </div>\n <div *ngIf=\"!record.SmartFilterEnabled\">\n <kendo-filter\n [filters]=\"setupFilters()\"\n [value]=\"defaultFilterState\"\n (valueChange)=\"onFilterChange($event)\"\n >\n </kendo-filter>\n </div>\n </ng-template>\n </kendo-tabstrip-tab>\n <kendo-tabstrip-tab title=\"Sorting\">\n <ng-template kendoTabContent>\n <div class=\"sort-header\">\n <button kendoButton (click)=\"addSort()\">\n <span class=\"fa-solid fa-plus\"></span>\n Add\n </button>\n </div>\n <div *ngFor=\"let s of this.sortState\"> \n <kendo-dropdownlist \n class=\"sort-column\"\n [data]=\"sortFields\"\n textField=\"Name\"\n valueField=\"Name\"\n (valueChange)=\"sortColumnValueChange(s, $event)\"\n [(ngModel)]=\"s.field\"\n >\n </kendo-dropdownlist>\n <kendo-dropdownlist\n class=\"sort-direction\"\n [data]=\"sortDirections\"\n textField=\"Name\"\n valueField=\"Value\"\n (valueChange)=\"sortDirectionValueChange(s, $event)\"\n [(ngModel)]=\"s.direction\"\n >\n </kendo-dropdownlist>\n <button kendoButton (click)=\"removeSort(s)\">\n <span class=\"fa-solid fa-xmark\"></span>\n Remove\n </button>\n </div> \n </ng-template>\n </kendo-tabstrip-tab>\n <kendo-tabstrip-tab title=\"Advanced\">\n <ng-template kendoTabContent>\n @if(record.SmartFilterEnabled) {\n <kendo-textarea\n [readonly]=\"true\"\n [rows]=\"5\"\n [(ngModel)]=\"record.SmartFilterExplanation\"\n resizable=\"vertical\"\n class=\"advanced-tab-details\"\n ></kendo-textarea>\n <kendo-textarea\n [readonly]=\"true\"\n [rows]=\"5\"\n [(ngModel)]=\"record.SmartFilterWhereClause\"\n resizable=\"vertical\"\n class=\"advanced-tab-details\"\n ></kendo-textarea> \n }\n @else {\n <kendo-textarea\n [readonly]=\"true\"\n [rows]=\"7\"\n [(ngModel)]=\"record.WhereClause\"\n resizable=\"vertical\"\n class=\"advanced-tab-details\"\n ></kendo-textarea>\n }\n \n </ng-template>\n </kendo-tabstrip-tab>\n </kendo-tabstrip>\n \n <div class=\"k-actions k-actions-end customBtn popup-actions\">\n <button kendoButton (click)=\"saveProperties()\" themeColor=\"info\">\n <kendo-svgicon [icon]=\"sharedService.kendoSVGIcon('save')\"></kendo-svgicon>\n Save\n </button>\n <button fillMode=\"outline\" themeColor=\"info\" kendoButton (click)=\"closePropertiesDialog()\">Cancel</button>\n </div>\n </div>\n </div>\n </kendo-window>\n </div>\n</div> ", styles: [".view-properties-button {\n margin-left: 0px;\n }\n .view-prop-tab-contents {\n display: flex;\n flex-direction: column;\n height: 100%; /* Set to the height you want */\n }\n \n .form-group {\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n margin-bottom: 10px;\n }\n \n .form-group-description {\n flex-grow: 1;\n }\n \n .k-form-label {\n width: 150px; /* Adjust as needed */\n margin-right: 10px;\n }\n \n .view-description {\n flex-grow: 1;\n height: 100%;\n padding: 5px;\n resize: none;\n }\n \n \n \n .item-content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n \n .popup-content {\n height: calc(100% - 46px);\n }\n \n .popup-actions {\n padding: 16px 0 0;\n }\n \n .view-prop-tab-contents {\n overflow: hidden;\n }\n \n .sort-column {\n width: 300px;\n }\n \n .sort-direction {\n width: 125px;\n }\n \n .sort-header > button {\n margin-left: 5px;\n margin-bottom: 5px;\n width: 75px;\n }\n \n .smart-filter-label {\n margin-right: 10px;\n }\n \n .smart-filter-prompt {\n margin-top: 15px;\n }\n \n .advanced-tab-details\n {\n margin-bottom: 10px;\n }\n ::ng-deep .customBtn button {\n flex: 1;\n border-radius: 10px;\n line-height: 34px;\n }\n ::ng-deep .popup-content .k-tabstrip-items-wrapper {\n background: var(--white-color) !important;\n padding-left: 0 !important;\n }\n ::ng-deep .popup-content .k-tabstrip-items-wrapper .k-tabstrip-items .k-tabstrip-item.k-active {\n border-bottom: 3px solid var(--border-blue) !important;\n }\n ::ng-deep .popup-content .k-tabstrip-items-wrapper .k-tabstrip-items .k-tabstrip-item {\n background: var(--white-color) !important;\n border-right: 0 !important;\n }\n\n.k-checkbox:checked {\n background-color: var(--border-blue);\n border-color: var(--border-blue);\n color: white;\n}\n\n.k-switch-on .k-switch-track {\n background-color: var(--border-blue);\n border-color: var(--border-blue);\n color: white;\n}\n\n.k-selected {\n background-color: var(--border-blue);\n border-color: var(--border-blue);\n color: white;\n}"] }]
601
+ args: [{ selector: 'mj-user-view-properties-dialog', template: "<div>\n <button *ngIf=\"ShowPropertiesButton\"\n kendoButton\n themeColor=\"info\"\n (click)=\"this.Open()\"\n class=\"view-properties-button\"\n >\n <span class=\"fa-solid fa-gear\"></span>\n Properties\n </button>\n <div #outerDialogContainer>\n <div class=\"k-overlay\" *ngIf=\"isDialogOpened\"></div>\n <kendo-window\n [minHeight]=\"300\"\n [minWidth]=\"800\"\n [top]=\"100\"\n [left]=\"100\"\n [width]=\"668\"\n [height]=\"525\"\n [resizable]=\"true\"\n title=\"View Properties\"\n *ngIf=\"isDialogOpened\"\n (close)=\"closePropertiesDialog()\"\n (resizeEnd)=\"this.ResizeTab()\"\n (heightChange)=\"this.ResizeTab()\"\n (widthChange)=\"this.ResizeTab()\"\n >\n <kendo-loader *ngIf=\"showloader\" type=\"converging-spinner\" ></kendo-loader>\n <div class=\"k-d-flex k-flex-col k-justify-content-between k-h-full\" #dialogContainer>\n <div [class]=\"showloader ? 'disabled-div' : ''\">\n <kendo-tabstrip [keepTabContent]=\"true\" [animate] = \"false\" [height]=\"TabHeight\" >\n <kendo-tabstrip-tab title=\"General\" [selected]=\"true\">\n <ng-template kendoTabContent>\n <div class=\"view-prop-tab-contents\">\n <div class=\"form-group\">\n <kendo-label class=\"k-form-label\" text=\"Name\"></kendo-label>\n <kendo-textbox #nameField class=\"view-name\" [(ngModel)]=\"record.Name\"></kendo-textbox>\n </div>\n <div class=\"form-group form-group-description\">\n <kendo-label class=\"k-form-label\" text=\"Description\"></kendo-label>\n <textarea class=\"k-input k-input-solid view-description\" [(ngModel)]=\"record.Description\"></textarea>\n </div>\n </div>\n </ng-template>\n </kendo-tabstrip-tab>\n <kendo-tabstrip-tab title=\"Fields\">\n <ng-template kendoTabContent>\n \n <kendo-sortable\n [kendoSortableBinding]=\"this.localGridState.columnSettings\"\n [animation]=\"true\"\n itemClass=\"item\"\n activeItemClass=\"item active\"\n (dragEnd)=\"onDragEnd($event)\"\n >\n <ng-template let-col=\"item\">\n <div class=\"item-content\">\n <div>\n <input\n type=\"checkbox\"\n [(ngModel)]=\"!col.hidden\"\n id=\"column_{{col.ID}}\"\n kendoCheckBox\n (change)=\"toggleColumn(col)\"\n />\n <kendo-label\n [for]=\"'column_'+col.ID\"\n [text]=\"col.DisplayName ? col.DisplayName : col.Name\"\n class=\"k-checkbox-label\"\n ></kendo-label>\n </div>\n <span class=\"fa-solid fa-bars-staggered\"></span>\n </div>\n </ng-template>\n </kendo-sortable>\n </ng-template>\n </kendo-tabstrip-tab>\n <kendo-tabstrip-tab title=\"Filters\">\n <ng-template kendoTabContent>\n <div class=\"smart-filter-container\">\n <kendo-label text=\"Smart Filter\" class=\"smart-filter-label\"></kendo-label>\n <kendo-switch [(ngModel)]=\"record.SmartFilterEnabled\"></kendo-switch>\n </div>\n <div *ngIf=\"record.SmartFilterEnabled\" class=\"smart-filter-prompt\" mjFillContainer [fillHeight]=\"true\">\n <kendo-textarea\n placeholder=\"Describe how you would like the data filtered\"\n [rows]=\"10\"\n [(ngModel)]=\"record.SmartFilterPrompt\"\n resizable=\"vertical\"\n ></kendo-textarea>\n </div>\n <div *ngIf=\"!record.SmartFilterEnabled\">\n <kendo-filter\n [filters]=\"setupFilters()\"\n [value]=\"defaultFilterState\"\n (valueChange)=\"onFilterChange($event)\"\n >\n </kendo-filter>\n </div>\n </ng-template>\n </kendo-tabstrip-tab>\n <kendo-tabstrip-tab title=\"Sorting\">\n <ng-template kendoTabContent>\n <div class=\"sort-header\">\n <button kendoButton (click)=\"addSort()\">\n <span class=\"fa-solid fa-plus\"></span>\n Add\n </button>\n </div>\n <div *ngFor=\"let s of this.sortState\"> \n <kendo-dropdownlist \n class=\"sort-column\"\n [data]=\"sortFields\"\n textField=\"Name\"\n valueField=\"Name\"\n (valueChange)=\"sortColumnValueChange(s, $event)\"\n [(ngModel)]=\"s.field\"\n >\n </kendo-dropdownlist>\n <kendo-dropdownlist\n class=\"sort-direction\"\n [data]=\"sortDirections\"\n textField=\"Name\"\n valueField=\"Value\"\n (valueChange)=\"sortDirectionValueChange(s, $event)\"\n [(ngModel)]=\"s.direction\"\n >\n </kendo-dropdownlist>\n <button kendoButton (click)=\"removeSort(s)\">\n <span class=\"fa-solid fa-xmark\"></span>\n Remove\n </button>\n </div> \n </ng-template>\n </kendo-tabstrip-tab>\n <kendo-tabstrip-tab title=\"Advanced\">\n <ng-template kendoTabContent>\n @if(record.SmartFilterEnabled) {\n <kendo-textarea\n [readonly]=\"true\"\n [rows]=\"5\"\n [(ngModel)]=\"record.SmartFilterExplanation\"\n resizable=\"vertical\"\n class=\"advanced-tab-details\"\n ></kendo-textarea>\n <kendo-textarea\n [readonly]=\"true\"\n [rows]=\"5\"\n [(ngModel)]=\"record.SmartFilterWhereClause\"\n resizable=\"vertical\"\n class=\"advanced-tab-details\"\n ></kendo-textarea> \n }\n @else {\n <kendo-textarea\n [readonly]=\"true\"\n [rows]=\"7\"\n [(ngModel)]=\"record.WhereClause\"\n resizable=\"vertical\"\n class=\"advanced-tab-details\"\n ></kendo-textarea>\n }\n \n </ng-template>\n </kendo-tabstrip-tab>\n </kendo-tabstrip>\n \n <div class=\"k-actions k-actions-end customBtn popup-actions\">\n <button kendoButton (click)=\"saveProperties()\" themeColor=\"info\">\n <span class=\"fa-solid fa-circle-check\"></span>\n Save\n </button>\n <button fillMode=\"outline\" themeColor=\"info\" kendoButton (click)=\"closePropertiesDialog()\">Cancel</button>\n </div>\n </div>\n </div>\n </kendo-window>\n </div>\n</div> ", styles: [".view-properties-button {\n margin-left: 0px;\n }\n .view-prop-tab-contents {\n display: flex;\n flex-direction: column;\n height: 100%; /* Set to the height you want */\n }\n \n .form-group {\n display: flex;\n flex-direction: row;\n align-items: flex-start;\n margin-bottom: 10px;\n }\n \n .form-group-description {\n flex-grow: 1;\n }\n \n .k-form-label {\n width: 150px; /* Adjust as needed */\n margin-right: 10px;\n }\n \n .view-description {\n flex-grow: 1;\n height: 100%;\n padding: 5px;\n resize: none;\n }\n \n \n \n .item-content {\n display: flex;\n justify-content: space-between;\n align-items: center;\n }\n \n .popup-content {\n height: calc(100% - 46px);\n }\n \n .popup-actions {\n padding: 16px 0 0;\n }\n \n .view-prop-tab-contents {\n overflow: hidden;\n }\n \n .sort-column {\n width: 300px;\n }\n \n .sort-direction {\n width: 125px;\n }\n \n .sort-header > button {\n margin-left: 5px;\n margin-bottom: 5px;\n width: 75px;\n }\n \n .smart-filter-label {\n margin-right: 10px;\n }\n \n .smart-filter-prompt {\n margin-top: 15px;\n }\n \n .advanced-tab-details\n {\n margin-bottom: 10px;\n }\n ::ng-deep .customBtn button {\n flex: 1;\n border-radius: 10px;\n line-height: 34px;\n }\n ::ng-deep .popup-content .k-tabstrip-items-wrapper {\n background: var(--white-color) !important;\n padding-left: 0 !important;\n }\n ::ng-deep .popup-content .k-tabstrip-items-wrapper .k-tabstrip-items .k-tabstrip-item.k-active {\n border-bottom: 3px solid var(--border-blue) !important;\n }\n ::ng-deep .popup-content .k-tabstrip-items-wrapper .k-tabstrip-items .k-tabstrip-item {\n background: var(--white-color) !important;\n border-right: 0 !important;\n }\n\n.k-checkbox:checked {\n background-color: var(--border-blue);\n border-color: var(--border-blue);\n color: white;\n}\n\n.k-switch-on .k-switch-track {\n background-color: var(--border-blue);\n border-color: var(--border-blue);\n color: white;\n}\n\n.k-selected {\n background-color: var(--border-blue);\n border-color: var(--border-blue);\n color: white;\n}"] }]
604
602
  }], () => [{ type: i1.ActivatedRoute }, { type: i0.ElementRef }, { type: i2.SharedService }, { type: i3.FormBuilder }, { type: i1.Router }, { type: i0.Renderer2 }], { ViewID: [{
605
603
  type: Input
606
604
  }], EntityName: [{
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ng-user-view-properties",
3
- "version": "1.0.9",
3
+ "version": "1.1.0",
4
4
  "description": "MemberJunction: Angular UI Dialog Component to View/Edit User View Properties",
5
5
  "main": "./dist/public-api.js",
6
6
  "typings": "./dist/public-api.d.ts",
@@ -24,11 +24,11 @@
24
24
  "@angular/forms": "~17.2.2"
25
25
  },
26
26
  "dependencies": {
27
- "@memberjunction/global": "^1.0.9",
28
- "@memberjunction/core": "^1.0.9",
29
- "@memberjunction/core-entities": "^1.0.9",
30
- "@memberjunction/ng-base-forms": "^1.0.9",
31
- "@memberjunction/ng-shared": "^1.0.9",
27
+ "@memberjunction/global": "~1.1.0",
28
+ "@memberjunction/core": "~1.1.0",
29
+ "@memberjunction/core-entities": "~1.1.0",
30
+ "@memberjunction/ng-base-forms": "~1.1.0",
31
+ "@memberjunction/ng-shared": "~1.1.0",
32
32
  "@progress/kendo-angular-sortable": "~15.1.0",
33
33
  "@progress/kendo-angular-dialog": "~15.1.0",
34
34
  "@progress/kendo-angular-layout": "~15.1.0",