cat-qw-lib 0.49.1 → 0.49.6
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.
- package/fesm2022/cat-qw-lib.mjs +204 -86
- package/fesm2022/cat-qw-lib.mjs.map +1 -1
- package/lib/admin/widget-admin/models/widget.model.d.ts +4 -4
- package/lib/shared/constant/SHARED.d.ts +1 -0
- package/lib/shared/services/style-builder.service.d.ts +1 -1
- package/lib/widget/components/widget-container/widget-container.component.d.ts +11 -30
- package/lib/widget/components/widget-header/widget-header.component.d.ts +17 -4
- package/lib/widget/components/widget-item/widget-item.component.d.ts +25 -6
- package/lib/widget/components/widget-main/widget-main.component.d.ts +16 -0
- package/lib/widget/components/widget-menu/widget-menu.component.d.ts +36 -0
- package/lib/widget/components/{widget-layout/widget-layout.component.d.ts → widget-row-tile/widget-row-tile.component.d.ts} +4 -4
- package/lib/widget/models/widget.model.d.ts +20 -1
- package/lib/widget/state/widget.query.d.ts +2 -1
- package/lib/widget/state/widget.store.d.ts +3 -2
- package/lib/widget/widget.module.d.ts +16 -14
- package/package.json +1 -1
- package/public-api.d.ts +0 -1
- package/lib/widget/models/progress-chart.model.d.ts +0 -9
package/fesm2022/cat-qw-lib.mjs
CHANGED
|
@@ -66,7 +66,6 @@ import { QuillModule, QuillConfigModule } from 'ngx-quill';
|
|
|
66
66
|
import * as i5$3 from 'primeng/tabview';
|
|
67
67
|
import { TabViewModule } from 'primeng/tabview';
|
|
68
68
|
import hljs from 'highlight.js';
|
|
69
|
-
import * as i2$3 from 'primeng/chart';
|
|
70
69
|
import { ChartModule } from 'primeng/chart';
|
|
71
70
|
|
|
72
71
|
class SHARED {
|
|
@@ -173,6 +172,7 @@ class SHARED {
|
|
|
173
172
|
static EXPENDITURE = 'expenditure';
|
|
174
173
|
static INCOME = 'income';
|
|
175
174
|
static WIDGET_NAME = 'widgetName';
|
|
175
|
+
static IS_MENU = 'isMenu';
|
|
176
176
|
}
|
|
177
177
|
const widgetLayoutTypeList = [
|
|
178
178
|
{ name: 'Row', value: 'row' },
|
|
@@ -2634,7 +2634,8 @@ class WidgetModel extends BaseModel {
|
|
|
2634
2634
|
subHeaderDictionaryID;
|
|
2635
2635
|
headerDictionaryItemID;
|
|
2636
2636
|
subHeaderDictionaryItemID;
|
|
2637
|
-
|
|
2637
|
+
style;
|
|
2638
|
+
layoutType;
|
|
2638
2639
|
isActive;
|
|
2639
2640
|
}
|
|
2640
2641
|
/**
|
|
@@ -2644,9 +2645,7 @@ class WidgetItemModel extends BaseModel {
|
|
|
2644
2645
|
name;
|
|
2645
2646
|
dictionaryItemID;
|
|
2646
2647
|
dictionaryID;
|
|
2647
|
-
|
|
2648
|
-
isEditable;
|
|
2649
|
-
linkedWidgetID;
|
|
2648
|
+
style;
|
|
2650
2649
|
isActive = true;
|
|
2651
2650
|
}
|
|
2652
2651
|
|
|
@@ -2771,11 +2770,11 @@ class WidgetAdminFormComponent extends BaseFormComponent {
|
|
|
2771
2770
|
super.ngOnDestroy();
|
|
2772
2771
|
}
|
|
2773
2772
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetAdminFormComponent, deps: [{ token: WidgetAdminService }, { token: ValidatorService }, { token: WidgetAdminStore }, { token: WidgetAdminQuery }, { token: i3$4.Router }, { token: i3$4.ActivatedRoute }, { token: BaseStore }, { token: BaseQuery }], target: i0.ɵɵFactoryTarget.Component });
|
|
2774
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.4", type: WidgetAdminFormComponent, isStandalone: false, selector: "lib-widget-admin-form", usesInheritance: true, ngImport: i0, template: "<form-container [record]=\"record\" [showSave]=\"true\" [messages]=\"message\" (onSave)=\"handleSubmit()\"\r\n (onCancel)=\"handleCancel()\">\r\n <div class=\"card p-fluid p-formgrid\">\r\n <h4 class=\"font-bold col-12 md:col-12\">Widget Form</h4>\r\n <div class=\"col-12 md:col-12 mt-2 mb-2 flex\">\r\n <div class=\"col-5 md:col-5 mt-2 mb-2\">\r\n <text-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n readonly: false,\r\n name: 'name',\r\n isRequired: true,\r\n displayText: 'Name',\r\n placeholder: 'Enter Widget Name'\r\n }\"></text-box>\r\n </div>\r\n\r\n <div class=\"col-5 md:col-5 mt-2 mb-2\">\r\n <dropdown [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n name:'apiConfigId',\r\n displayText : 'Select API',\r\n isRequired:true,\r\n }\" (onInput)=\"handleAPIChange($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"col-2 md:col-2 mt-5\">\r\n <check-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n name:'isActive',\r\n displayText : 'Active',\r\n }\">\r\n </check-box>\r\n </div>\r\n </div>\r\n <div class=\"grid align-items-center m-0\">\r\n <div class=\"col-6 md:col-5 mt-2 mb-2 flex\">\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'headerDictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n options: dictionaries\r\n }\" (onInput)=\"handleHeaderDictionarySelect($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'headerDictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select Header Item',\r\n options: headerDictionaryItems\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n <div class=\"col-6 md:col-5 mt-2 mb-2 flex\">\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'subHeaderDictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n options: dictionaries\r\n }\" (onInput)=\"handleSubHeaderDictionarySelect($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'subHeaderDictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select SubHeader Item',\r\n options: subHeaderDictionaryItems\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n <div class=\"col-6 md:col-2 mt-2 mb-2 flex\">\r\n <div class=\"field col-12 pl-2 pb-0 mb-2 md:mr-2 md:col-12\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'widgetLayoutType',\r\n listLabelProperty:'name',\r\n listValueProperty:'value',\r\n displayText : 'Select Layout Type',\r\n options: widgetLayoutTypeList\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"field p-0 pr-2 col-12 md:col-2\">\r\n <div class=\"card m-0 p-0 mb-2\">\r\n <div class=\"mt-3 w-full flex\">\r\n <button pButton pRipple routerLinkActive=\"router-link-active\"\r\n icon=\"pi pi-plus font-semibold\"\r\n class=\"py-3 justify-content-center font-semibold w-full border-round\"\r\n (click)=\"handleWidgetItemAddBtnClick()\">\r\n <span class=\"ml-3\">Add Widget Item </span>\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <!-- Widget Items -->\r\n <div class=\"feild-card col-12 md:col-12 flex\" *ngFor=\"let widgetItem of record.dataItems; let i = index;\">\r\n <div class=\"field col-2 col-sm-6\">\r\n <text-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name : 'name',\r\n readonly : false,\r\n displayText : 'Item Label',\r\n isRequired : true,\r\n }\"></text-box>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'dictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n isRequired:true,\r\n options: dictionaries\r\n }\" (onInput)=\"handleWidgetItemDictionarySelect($event, i)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'dictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select Properties',\r\n isRequired:true,\r\n options: dictionaryItemArray[i]\r\n }\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"false\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'linkedWidgetID',\r\n displayText : 'Select Linked Widget'\r\n }\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-4 m-0 flex justify-content-around md:col-4 mt-5\">\r\n <div class=\"m-0\">\r\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'isMain',\r\n displayText : 'Add to Main ?',\r\n }\">\r\n </check-box>\r\n </div>\r\n <div class=\"m-0\">\r\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'isEditable',\r\n displayText : 'Is Editable ?',\r\n }\">\r\n </check-box>\r\n </div>\r\n <div class=\"m-0\">\r\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'isActive',\r\n displayText : 'Is Active ?',\r\n }\">\r\n </check-box>\r\n </div>\r\n <div class=\"ml-1 delete-icon-container\">\r\n <i class=\"pi pi-trash trash-icon-wrapper cursor-pointer\" (click)=\"handleDeleteRecord(i)\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</form-container>", styles: [".trash-icon-wrapper{font-size:20px;color:var(--red-500)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: TextBoxComponent, selector: "text-box" }, { kind: "component", type: DropdownComponent, selector: "dropdown", inputs: ["isStaticDropdown"] }, { kind: "component", type: FormContainerComponent, selector: "form-container", inputs: ["messages", "record", "headerText", "showSave", "disableSaveButton"], outputs: ["onSave", "onCancel"] }, { kind: "component", type: CheckBoxComponent, selector: "check-box" }, { kind: "directive", type: i3$3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }] });
|
|
2773
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.4", type: WidgetAdminFormComponent, isStandalone: false, selector: "lib-widget-admin-form", usesInheritance: true, ngImport: i0, template: "<form-container [record]=\"record\" [showSave]=\"true\" [messages]=\"message\" (onSave)=\"handleSubmit()\"\r\n (onCancel)=\"handleCancel()\">\r\n <div class=\"card p-fluid p-formgrid\">\r\n <h4 class=\"font-bold col-12 md:col-12\">Widget Form</h4>\r\n <div class=\"col-12 md:col-12 mt-2 mb-2 flex\">\r\n <div class=\"col-3 md:col-3 mt-2 mb-2\">\r\n <text-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n readonly: false,\r\n name: 'name',\r\n isRequired: true,\r\n displayText: 'Name',\r\n placeholder: 'Enter Widget Name'\r\n }\"></text-box>\r\n </div>\r\n\r\n <div class=\"col-3 md:col-3 mt-2 mb-2\">\r\n <dropdown [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n name:'apiConfigId',\r\n displayText : 'Select API',\r\n isRequired:true,\r\n }\" (onInput)=\"handleAPIChange($event)\">\r\n </dropdown>\r\n </div>\r\n\r\n <div class=\"col-4 md:col-4 mt-2 mb-2\">\r\n <text-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n readonly: false,\r\n name: 'style',\r\n isRequired: false,\r\n displayText: 'Style',\r\n placeholder: 'Enter Widget Style'\r\n }\"></text-box>\r\n </div>\r\n\r\n <div class=\"col-2 md:col-2 mt-5\">\r\n <check-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n name:'isActive',\r\n displayText : 'Active',\r\n }\">\r\n </check-box>\r\n </div>\r\n </div>\r\n <div class=\"grid align-items-center m-0\">\r\n <div class=\"col-6 md:col-5 mt-2 mb-2 flex\">\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'headerDictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n options: dictionaries\r\n }\" (onInput)=\"handleHeaderDictionarySelect($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'headerDictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select Header Item',\r\n options: headerDictionaryItems\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n <div class=\"col-6 md:col-5 mt-2 mb-2 flex\">\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'subHeaderDictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n options: dictionaries\r\n }\" (onInput)=\"handleSubHeaderDictionarySelect($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'subHeaderDictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select SubHeader Item',\r\n options: subHeaderDictionaryItems\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n <div class=\"col-6 md:col-2 mt-2 mb-2 flex\">\r\n <div class=\"field col-12 pl-2 pb-0 mb-2 md:mr-2 md:col-12\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'layoutType',\r\n listLabelProperty:'name',\r\n listValueProperty:'value',\r\n displayText : 'Select Layout Type',\r\n options: widgetLayoutTypeList\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"field p-0 pr-2 col-12 md:col-2\">\r\n <div class=\"card m-0 p-0 mb-2\">\r\n <div class=\"mt-3 w-full flex\">\r\n <button pButton pRipple routerLinkActive=\"router-link-active\"\r\n icon=\"pi pi-plus font-semibold\"\r\n class=\"py-3 justify-content-center font-semibold w-full border-round\"\r\n (click)=\"handleWidgetItemAddBtnClick()\">\r\n <span class=\"ml-3\">Add Widget Item </span>\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <!-- Widget Items -->\r\n <div class=\"feild-card col-12 md:col-12 flex\" *ngFor=\"let widgetItem of record.dataItems; let i = index;\">\r\n <div class=\"field col-2 col-sm-6\">\r\n <text-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name : 'name',\r\n readonly : false,\r\n displayText : 'Item Label',\r\n isRequired : true,\r\n }\"></text-box>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'dictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n isRequired:true,\r\n options: dictionaries\r\n }\" (onInput)=\"handleWidgetItemDictionarySelect($event, i)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'dictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select Properties',\r\n isRequired:true,\r\n options: dictionaryItemArray[i]\r\n }\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-4 col-sm-6\">\r\n <text-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name : 'style',\r\n readonly : false,\r\n displayText : 'Item Style',\r\n isRequired : false,\r\n }\"></text-box>\r\n </div>\r\n <div class=\"field col-4 m-0 flex justify-content-center md:col-2 mt-5\">\r\n <div class=\"m-0\">\r\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'isActive',\r\n displayText : 'Is Active ?',\r\n }\">\r\n </check-box>\r\n </div>\r\n <div class=\"ml-4 delete-icon-container\">\r\n <i class=\"pi pi-trash trash-icon-wrapper cursor-pointer\" (click)=\"handleDeleteRecord(i)\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</form-container>", styles: [".trash-icon-wrapper{font-size:20px;color:var(--red-500)}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: TextBoxComponent, selector: "text-box" }, { kind: "component", type: DropdownComponent, selector: "dropdown", inputs: ["isStaticDropdown"] }, { kind: "component", type: FormContainerComponent, selector: "form-container", inputs: ["messages", "record", "headerText", "showSave", "disableSaveButton"], outputs: ["onSave", "onCancel"] }, { kind: "component", type: CheckBoxComponent, selector: "check-box" }, { kind: "directive", type: i3$3.ButtonDirective, selector: "[pButton]", inputs: ["iconPos", "loadingIcon", "label", "icon", "loading", "severity", "raised", "rounded", "text", "outlined", "size", "plain"] }] });
|
|
2775
2774
|
}
|
|
2776
2775
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetAdminFormComponent, decorators: [{
|
|
2777
2776
|
type: Component,
|
|
2778
|
-
args: [{ selector: 'lib-widget-admin-form', standalone: false, template: "<form-container [record]=\"record\" [showSave]=\"true\" [messages]=\"message\" (onSave)=\"handleSubmit()\"\r\n (onCancel)=\"handleCancel()\">\r\n <div class=\"card p-fluid p-formgrid\">\r\n <h4 class=\"font-bold col-12 md:col-12\">Widget Form</h4>\r\n <div class=\"col-12 md:col-12 mt-2 mb-2 flex\">\r\n <div class=\"col-5 md:col-5 mt-2 mb-2\">\r\n <text-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n readonly: false,\r\n name: 'name',\r\n isRequired: true,\r\n displayText: 'Name',\r\n placeholder: 'Enter Widget Name'\r\n }\"></text-box>\r\n </div>\r\n\r\n <div class=\"col-5 md:col-5 mt-2 mb-2\">\r\n <dropdown [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n name:'apiConfigId',\r\n displayText : 'Select API',\r\n isRequired:true,\r\n }\" (onInput)=\"handleAPIChange($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"col-2 md:col-2 mt-5\">\r\n <check-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n name:'isActive',\r\n displayText : 'Active',\r\n }\">\r\n </check-box>\r\n </div>\r\n </div>\r\n <div class=\"grid align-items-center m-0\">\r\n <div class=\"col-6 md:col-5 mt-2 mb-2 flex\">\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'headerDictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n options: dictionaries\r\n }\" (onInput)=\"handleHeaderDictionarySelect($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'headerDictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select Header Item',\r\n options: headerDictionaryItems\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n <div class=\"col-6 md:col-5 mt-2 mb-2 flex\">\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'subHeaderDictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n options: dictionaries\r\n }\" (onInput)=\"handleSubHeaderDictionarySelect($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'subHeaderDictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select SubHeader Item',\r\n options: subHeaderDictionaryItems\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n <div class=\"col-6 md:col-2 mt-2 mb-2 flex\">\r\n <div class=\"field col-12 pl-2 pb-0 mb-2 md:mr-2 md:col-12\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'widgetLayoutType',\r\n listLabelProperty:'name',\r\n listValueProperty:'value',\r\n displayText : 'Select Layout Type',\r\n options: widgetLayoutTypeList\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"field p-0 pr-2 col-12 md:col-2\">\r\n <div class=\"card m-0 p-0 mb-2\">\r\n <div class=\"mt-3 w-full flex\">\r\n <button pButton pRipple routerLinkActive=\"router-link-active\"\r\n icon=\"pi pi-plus font-semibold\"\r\n class=\"py-3 justify-content-center font-semibold w-full border-round\"\r\n (click)=\"handleWidgetItemAddBtnClick()\">\r\n <span class=\"ml-3\">Add Widget Item </span>\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <!-- Widget Items -->\r\n <div class=\"feild-card col-12 md:col-12 flex\" *ngFor=\"let widgetItem of record.dataItems; let i = index;\">\r\n <div class=\"field col-2 col-sm-6\">\r\n <text-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name : 'name',\r\n readonly : false,\r\n displayText : 'Item Label',\r\n isRequired : true,\r\n }\"></text-box>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'dictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n isRequired:true,\r\n options: dictionaries\r\n }\" (onInput)=\"handleWidgetItemDictionarySelect($event, i)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'dictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select Properties',\r\n isRequired:true,\r\n options: dictionaryItemArray[i]\r\n }\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"false\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'linkedWidgetID',\r\n displayText : 'Select Linked Widget'\r\n }\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-4 m-0 flex justify-content-around md:col-4 mt-5\">\r\n <div class=\"m-0\">\r\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'isMain',\r\n displayText : 'Add to Main ?',\r\n }\">\r\n </check-box>\r\n </div>\r\n <div class=\"m-0\">\r\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'isEditable',\r\n displayText : 'Is Editable ?',\r\n }\">\r\n </check-box>\r\n </div>\r\n <div class=\"m-0\">\r\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'isActive',\r\n displayText : 'Is Active ?',\r\n }\">\r\n </check-box>\r\n </div>\r\n <div class=\"ml-1 delete-icon-container\">\r\n <i class=\"pi pi-trash trash-icon-wrapper cursor-pointer\" (click)=\"handleDeleteRecord(i)\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</form-container>", styles: [".trash-icon-wrapper{font-size:20px;color:var(--red-500)}\n"] }]
|
|
2777
|
+
args: [{ selector: 'lib-widget-admin-form', standalone: false, template: "<form-container [record]=\"record\" [showSave]=\"true\" [messages]=\"message\" (onSave)=\"handleSubmit()\"\r\n (onCancel)=\"handleCancel()\">\r\n <div class=\"card p-fluid p-formgrid\">\r\n <h4 class=\"font-bold col-12 md:col-12\">Widget Form</h4>\r\n <div class=\"col-12 md:col-12 mt-2 mb-2 flex\">\r\n <div class=\"col-3 md:col-3 mt-2 mb-2\">\r\n <text-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n readonly: false,\r\n name: 'name',\r\n isRequired: true,\r\n displayText: 'Name',\r\n placeholder: 'Enter Widget Name'\r\n }\"></text-box>\r\n </div>\r\n\r\n <div class=\"col-3 md:col-3 mt-2 mb-2\">\r\n <dropdown [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n name:'apiConfigId',\r\n displayText : 'Select API',\r\n isRequired:true,\r\n }\" (onInput)=\"handleAPIChange($event)\">\r\n </dropdown>\r\n </div>\r\n\r\n <div class=\"col-4 md:col-4 mt-2 mb-2\">\r\n <text-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n readonly: false,\r\n name: 'style',\r\n isRequired: false,\r\n displayText: 'Style',\r\n placeholder: 'Enter Widget Style'\r\n }\"></text-box>\r\n </div>\r\n\r\n <div class=\"col-2 md:col-2 mt-5\">\r\n <check-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n name:'isActive',\r\n displayText : 'Active',\r\n }\">\r\n </check-box>\r\n </div>\r\n </div>\r\n <div class=\"grid align-items-center m-0\">\r\n <div class=\"col-6 md:col-5 mt-2 mb-2 flex\">\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'headerDictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n options: dictionaries\r\n }\" (onInput)=\"handleHeaderDictionarySelect($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'headerDictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select Header Item',\r\n options: headerDictionaryItems\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n <div class=\"col-6 md:col-5 mt-2 mb-2 flex\">\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'subHeaderDictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n options: dictionaries\r\n }\" (onInput)=\"handleSubHeaderDictionarySelect($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'subHeaderDictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select SubHeader Item',\r\n options: subHeaderDictionaryItems\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n <div class=\"col-6 md:col-2 mt-2 mb-2 flex\">\r\n <div class=\"field col-12 pl-2 pb-0 mb-2 md:mr-2 md:col-12\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\" [attributeModel]=\"{\r\n name:'layoutType',\r\n listLabelProperty:'name',\r\n listValueProperty:'value',\r\n displayText : 'Select Layout Type',\r\n options: widgetLayoutTypeList\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"field p-0 pr-2 col-12 md:col-2\">\r\n <div class=\"card m-0 p-0 mb-2\">\r\n <div class=\"mt-3 w-full flex\">\r\n <button pButton pRipple routerLinkActive=\"router-link-active\"\r\n icon=\"pi pi-plus font-semibold\"\r\n class=\"py-3 justify-content-center font-semibold w-full border-round\"\r\n (click)=\"handleWidgetItemAddBtnClick()\">\r\n <span class=\"ml-3\">Add Widget Item </span>\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <!-- Widget Items -->\r\n <div class=\"feild-card col-12 md:col-12 flex\" *ngFor=\"let widgetItem of record.dataItems; let i = index;\">\r\n <div class=\"field col-2 col-sm-6\">\r\n <text-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name : 'name',\r\n readonly : false,\r\n displayText : 'Item Label',\r\n isRequired : true,\r\n }\"></text-box>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'dictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n isRequired:true,\r\n options: dictionaries\r\n }\" (onInput)=\"handleWidgetItemDictionarySelect($event, i)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'dictionaryItemID',\r\n listLabelProperty:'itemName',\r\n listValueProperty:'_id',\r\n displayText : 'Select Properties',\r\n isRequired:true,\r\n options: dictionaryItemArray[i]\r\n }\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-4 col-sm-6\">\r\n <text-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name : 'style',\r\n readonly : false,\r\n displayText : 'Item Style',\r\n isRequired : false,\r\n }\"></text-box>\r\n </div>\r\n <div class=\"field col-4 m-0 flex justify-content-center md:col-2 mt-5\">\r\n <div class=\"m-0\">\r\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'isActive',\r\n displayText : 'Is Active ?',\r\n }\">\r\n </check-box>\r\n </div>\r\n <div class=\"ml-4 delete-icon-container\">\r\n <i class=\"pi pi-trash trash-icon-wrapper cursor-pointer\" (click)=\"handleDeleteRecord(i)\"></i>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</form-container>", styles: [".trash-icon-wrapper{font-size:20px;color:var(--red-500)}\n"] }]
|
|
2779
2778
|
}], ctorParameters: () => [{ type: WidgetAdminService }, { type: ValidatorService }, { type: WidgetAdminStore }, { type: WidgetAdminQuery }, { type: i3$4.Router }, { type: i3$4.ActivatedRoute }, { type: BaseStore }, { type: BaseQuery }] });
|
|
2780
2779
|
|
|
2781
2780
|
/**
|
|
@@ -4078,16 +4077,16 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImpor
|
|
|
4078
4077
|
*/
|
|
4079
4078
|
let WidgetStore = class WidgetStore extends BaseStore {
|
|
4080
4079
|
onViewAllDetails$;
|
|
4081
|
-
|
|
4080
|
+
onEventClickDetails$;
|
|
4082
4081
|
onItemClick$;
|
|
4083
4082
|
constructor() {
|
|
4084
4083
|
super();
|
|
4085
4084
|
this.onViewAllDetails$ = new BehaviorSubject(SHARED.EMPTY_STRING);
|
|
4086
|
-
this.
|
|
4085
|
+
this.onEventClickDetails$ = new BehaviorSubject(SHARED.EMPTY);
|
|
4087
4086
|
this.onItemClick$ = new BehaviorSubject({});
|
|
4088
4087
|
}
|
|
4089
|
-
|
|
4090
|
-
this.
|
|
4088
|
+
setEventClickDetails(value) {
|
|
4089
|
+
this.onEventClickDetails$.next(value);
|
|
4091
4090
|
}
|
|
4092
4091
|
setOnViewAllDetails(value) {
|
|
4093
4092
|
this.onViewAllDetails$.next(value);
|
|
@@ -4101,6 +4100,9 @@ let WidgetStore = class WidgetStore extends BaseStore {
|
|
|
4101
4100
|
setWidgetItem(widgetItem) {
|
|
4102
4101
|
this.update({ widgetItem: widgetItem });
|
|
4103
4102
|
}
|
|
4103
|
+
setIsMenu(isMenu) {
|
|
4104
|
+
this.update({ isMenu: isMenu });
|
|
4105
|
+
}
|
|
4104
4106
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetStore, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4105
4107
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetStore, providedIn: 'root' });
|
|
4106
4108
|
};
|
|
@@ -4158,8 +4160,8 @@ class WidgetQuery extends BaseQuery {
|
|
|
4158
4160
|
getOnViewAllDetails() {
|
|
4159
4161
|
return this.widgetStore.onViewAllDetails$.asObservable();
|
|
4160
4162
|
}
|
|
4161
|
-
|
|
4162
|
-
return this.widgetStore.
|
|
4163
|
+
getEventClickDetails() {
|
|
4164
|
+
return this.widgetStore.onEventClickDetails$.asObservable();
|
|
4163
4165
|
}
|
|
4164
4166
|
getOnWidgetItemClick() {
|
|
4165
4167
|
return this.widgetStore.onItemClick$.asObservable();
|
|
@@ -4167,6 +4169,9 @@ class WidgetQuery extends BaseQuery {
|
|
|
4167
4169
|
getWidgetItem() {
|
|
4168
4170
|
return this.select(state => state['widgetItem']);
|
|
4169
4171
|
}
|
|
4172
|
+
getIsMenu() {
|
|
4173
|
+
return this.select(state => state['isMenu']);
|
|
4174
|
+
}
|
|
4170
4175
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetQuery, deps: [{ token: WidgetStore }, { token: WidgetStore }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4171
4176
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetQuery, providedIn: 'root' });
|
|
4172
4177
|
}
|
|
@@ -4175,18 +4180,53 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImpor
|
|
|
4175
4180
|
args: [{ providedIn: 'root' }]
|
|
4176
4181
|
}], ctorParameters: () => [{ type: WidgetStore }, { type: WidgetStore }] });
|
|
4177
4182
|
|
|
4183
|
+
class StyleBuilderService {
|
|
4184
|
+
constructor() { }
|
|
4185
|
+
getStyle(style) {
|
|
4186
|
+
if (!style)
|
|
4187
|
+
return {};
|
|
4188
|
+
return style.split(SHARED.SEMICOLON_STRING).reduce((acc, rule) => {
|
|
4189
|
+
const [prop, value] = rule.split(SHARED.COLON_STRING);
|
|
4190
|
+
if (prop && value)
|
|
4191
|
+
acc[prop.trim()] = value.trim();
|
|
4192
|
+
return acc;
|
|
4193
|
+
}, {});
|
|
4194
|
+
}
|
|
4195
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: StyleBuilderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4196
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: StyleBuilderService, providedIn: 'root' });
|
|
4197
|
+
}
|
|
4198
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: StyleBuilderService, decorators: [{
|
|
4199
|
+
type: Injectable,
|
|
4200
|
+
args: [{
|
|
4201
|
+
providedIn: 'root'
|
|
4202
|
+
}]
|
|
4203
|
+
}], ctorParameters: () => [] });
|
|
4204
|
+
|
|
4178
4205
|
class WidgetHeaderComponent {
|
|
4206
|
+
styleBulderService;
|
|
4179
4207
|
widget;
|
|
4180
|
-
|
|
4181
|
-
|
|
4182
|
-
|
|
4208
|
+
headerStyle = {};
|
|
4209
|
+
subHeaderStyle = {};
|
|
4210
|
+
headerIconStyle = {};
|
|
4211
|
+
headerIconClass;
|
|
4212
|
+
constructor(styleBulderService) {
|
|
4213
|
+
this.styleBulderService = styleBulderService;
|
|
4214
|
+
}
|
|
4215
|
+
ngOnChanges(changes) {
|
|
4216
|
+
if (this.widget && this.widget.style) {
|
|
4217
|
+
this.headerStyle = this.styleBulderService.getStyle(this.widget.style.headerStyle);
|
|
4218
|
+
this.subHeaderStyle = this.styleBulderService.getStyle(this.widget.style.subHeaderStyle);
|
|
4219
|
+
this.headerIconClass = this.widget.style.headerIconClass;
|
|
4220
|
+
this.headerIconStyle = this.styleBulderService.getStyle(this.widget.style.headerIconStyle);
|
|
4221
|
+
}
|
|
4222
|
+
}
|
|
4223
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetHeaderComponent, deps: [{ token: StyleBuilderService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4224
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.4", type: WidgetHeaderComponent, isStandalone: false, selector: "lib-widget-header", inputs: { widget: "widget" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"grid m-0 align-items-center justify-content-between px-3\">\r\n <div class=\"col-10 p-0\">\r\n <div class=\"flex align-items-center\">\r\n <i classs=\"headerIconClass\" [ngStyle]=\"headerIconStyle\"></i>\r\n <h3 [ngStyle]=\"headerStyle\" class=\"mb-0 application-title-wrapper font-bold mr-3\">\r\n {{ (widget.header) }}\r\n </h3>\r\n </div>\r\n <div *ngIf=\"widget?.subHeader\" class=\"flex align-items-center mt-2\">\r\n <span [ngStyle]=\"subHeaderStyle\" class=\"mr-3 font-semibold\">{{ widget.subHeader }}</span>\r\n </div>\r\n </div>\r\n</div>", styles: ["::ng-deep .badge-wrapper .p-button{padding:4px 8px}.application-title-wrapper{font-size:18px;font-weight:700}.chart-container{display:flex;flex-direction:column;align-items:center;justify-content:center}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
4183
4225
|
}
|
|
4184
4226
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetHeaderComponent, decorators: [{
|
|
4185
4227
|
type: Component,
|
|
4186
|
-
args: [{ selector: 'lib-widget-header', standalone: false, template: "<div class=\"grid m-0 align-items-center justify-content-between px-3\">\r\n <div class=\"col-10 p-0\">\r\n <div class=\"flex align-items-center\">\r\n <h3 class=\"mb-0 application-title-wrapper font-bold mr-3\">\r\n {{ (widget.header) }}\r\n </h3>\r\n </div>\r\n <div *ngIf=\"widget?.subHeader\" class=\"flex align-items-center mt-2\">\r\n <span
|
|
4187
|
-
}], propDecorators: { widget: [{
|
|
4188
|
-
type: Input
|
|
4189
|
-
}], progressChartData: [{
|
|
4228
|
+
args: [{ selector: 'lib-widget-header', standalone: false, template: "<div class=\"grid m-0 align-items-center justify-content-between px-3\">\r\n <div class=\"col-10 p-0\">\r\n <div class=\"flex align-items-center\">\r\n <i classs=\"headerIconClass\" [ngStyle]=\"headerIconStyle\"></i>\r\n <h3 [ngStyle]=\"headerStyle\" class=\"mb-0 application-title-wrapper font-bold mr-3\">\r\n {{ (widget.header) }}\r\n </h3>\r\n </div>\r\n <div *ngIf=\"widget?.subHeader\" class=\"flex align-items-center mt-2\">\r\n <span [ngStyle]=\"subHeaderStyle\" class=\"mr-3 font-semibold\">{{ widget.subHeader }}</span>\r\n </div>\r\n </div>\r\n</div>", styles: ["::ng-deep .badge-wrapper .p-button{padding:4px 8px}.application-title-wrapper{font-size:18px;font-weight:700}.chart-container{display:flex;flex-direction:column;align-items:center;justify-content:center}\n"] }]
|
|
4229
|
+
}], ctorParameters: () => [{ type: StyleBuilderService }], propDecorators: { widget: [{
|
|
4190
4230
|
type: Input
|
|
4191
4231
|
}] } });
|
|
4192
4232
|
|
|
@@ -4215,50 +4255,62 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImpor
|
|
|
4215
4255
|
type: Input
|
|
4216
4256
|
}] } });
|
|
4217
4257
|
|
|
4218
|
-
class StyleBuilderService {
|
|
4219
|
-
constructor() { }
|
|
4220
|
-
getStyle(style) {
|
|
4221
|
-
if (!style)
|
|
4222
|
-
return {};
|
|
4223
|
-
return style.split(SHARED.SEMICOLON_STRING).reduce((acc, rule) => {
|
|
4224
|
-
const [prop, value] = rule.split(SHARED.COLON_STRING);
|
|
4225
|
-
if (prop && value)
|
|
4226
|
-
acc[prop.trim()] = value.trim();
|
|
4227
|
-
return acc;
|
|
4228
|
-
}, {});
|
|
4229
|
-
}
|
|
4230
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: StyleBuilderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
4231
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: StyleBuilderService, providedIn: 'root' });
|
|
4232
|
-
}
|
|
4233
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: StyleBuilderService, decorators: [{
|
|
4234
|
-
type: Injectable,
|
|
4235
|
-
args: [{
|
|
4236
|
-
providedIn: 'root'
|
|
4237
|
-
}]
|
|
4238
|
-
}], ctorParameters: () => [] });
|
|
4239
|
-
|
|
4240
4258
|
class WidgetItemComponent {
|
|
4241
4259
|
styleBulderService;
|
|
4242
4260
|
widgetStore;
|
|
4261
|
+
widgetQuery;
|
|
4243
4262
|
widgetItem;
|
|
4244
4263
|
widget;
|
|
4245
4264
|
application;
|
|
4246
|
-
|
|
4265
|
+
fieldKeyStyle = {};
|
|
4266
|
+
fieldValueStyle = {};
|
|
4267
|
+
keyIconClass = SHARED.EMPTY;
|
|
4268
|
+
keyIconStyle = {};
|
|
4269
|
+
valueIconClass = SHARED.EMPTY;
|
|
4270
|
+
valueIconStyle = {};
|
|
4271
|
+
hasSeparator = false;
|
|
4272
|
+
isMenu = false;
|
|
4273
|
+
destroy$ = new Subject();
|
|
4274
|
+
constructor(styleBulderService, widgetStore, widgetQuery) {
|
|
4247
4275
|
this.styleBulderService = styleBulderService;
|
|
4248
4276
|
this.widgetStore = widgetStore;
|
|
4277
|
+
this.widgetQuery = widgetQuery;
|
|
4249
4278
|
}
|
|
4250
|
-
|
|
4251
|
-
|
|
4279
|
+
ngOnInit() {
|
|
4280
|
+
this.handleIsMenu();
|
|
4252
4281
|
}
|
|
4253
|
-
|
|
4254
|
-
this.
|
|
4282
|
+
ngOnChanges() {
|
|
4283
|
+
if (this.widgetItem && this.widgetItem.style) {
|
|
4284
|
+
this.fieldValueStyle = this.styleBulderService.getStyle(this.widgetItem.style.value);
|
|
4285
|
+
this.fieldKeyStyle = this.styleBulderService.getStyle(this.widgetItem.style.key);
|
|
4286
|
+
this.keyIconClass = this.widgetItem.style.keyIconClass;
|
|
4287
|
+
this.keyIconStyle = this.widgetItem.style.keyIconStyle ? this.styleBulderService.getStyle(this.widgetItem.style.keyIconStyle) : {};
|
|
4288
|
+
this.valueIconClass = this.widgetItem.style.valueIconClass;
|
|
4289
|
+
this.valueIconStyle = this.widgetItem.style.valueIconStyle ? this.styleBulderService.getStyle(this.widgetItem.style.valueIconStyle) : {};
|
|
4290
|
+
this.hasSeparator = this.widgetItem.style.hasSeparator;
|
|
4291
|
+
}
|
|
4292
|
+
}
|
|
4293
|
+
handleIsMenu() {
|
|
4294
|
+
this.widgetQuery.getIsMenu()
|
|
4295
|
+
.pipe(takeUntil(this.destroy$))
|
|
4296
|
+
.subscribe((res) => {
|
|
4297
|
+
if (res) {
|
|
4298
|
+
this.isMenu = res;
|
|
4299
|
+
}
|
|
4300
|
+
});
|
|
4301
|
+
}
|
|
4302
|
+
handleDynamicEvent(recordId) {
|
|
4303
|
+
this.widgetStore.setEventClickDetails({ recordId: recordId, isDailogShow: true });
|
|
4255
4304
|
}
|
|
4256
4305
|
ngOnDestroy() {
|
|
4306
|
+
this.destroy$.next();
|
|
4307
|
+
this.destroy$.complete();
|
|
4257
4308
|
this.widgetStore.setOnWidgetItemClick(null);
|
|
4258
|
-
this.widgetStore.
|
|
4309
|
+
this.widgetStore.setEventClickDetails({ recordId: null, isDailogShow: false });
|
|
4259
4310
|
}
|
|
4260
4311
|
handleWidgetItemClick(widgetItem) {
|
|
4261
4312
|
const updatedItem = { ...widgetItem };
|
|
4313
|
+
const applicantId = this.widget.recordId;
|
|
4262
4314
|
switch (updatedItem.route) {
|
|
4263
4315
|
case SHARED.DIRECT_DEBIT:
|
|
4264
4316
|
const directDebit = this.widget.dataItems.filter((val) => val.key === SHARED.DIRECT_DEBITID);
|
|
@@ -4273,23 +4325,24 @@ class WidgetItemComponent {
|
|
|
4273
4325
|
updatedItem.value = product[0].value;
|
|
4274
4326
|
break;
|
|
4275
4327
|
case SHARED.COMMITMENTS:
|
|
4276
|
-
const applicantId = this.widget.recordId;
|
|
4277
4328
|
updatedItem.value = applicantId;
|
|
4278
4329
|
break;
|
|
4279
4330
|
case SHARED.INCOME:
|
|
4280
|
-
|
|
4281
|
-
|
|
4331
|
+
updatedItem.value = applicantId;
|
|
4332
|
+
break;
|
|
4333
|
+
case SHARED.EXPENDITURE:
|
|
4334
|
+
updatedItem.value = applicantId;
|
|
4282
4335
|
break;
|
|
4283
4336
|
}
|
|
4284
4337
|
this.widgetStore.setOnWidgetItemClick(updatedItem);
|
|
4285
4338
|
}
|
|
4286
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetItemComponent, deps: [{ token: StyleBuilderService }, { token: WidgetStore }], target: i0.ɵɵFactoryTarget.Component });
|
|
4287
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.4", type: WidgetItemComponent, isStandalone: false, selector: "lib-widget-item", inputs: { widgetItem: "widgetItem", widget: "widget", application: "application" }, ngImport: i0, template: "<div class=\"widget-container\">\r\n <div class=\"
|
|
4339
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetItemComponent, deps: [{ token: StyleBuilderService }, { token: WidgetStore }, { token: WidgetQuery }], target: i0.ɵɵFactoryTarget.Component });
|
|
4340
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.4", type: WidgetItemComponent, isStandalone: false, selector: "lib-widget-item", inputs: { widgetItem: "widgetItem", widget: "widget", application: "application" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"widget-container\" [class.border-bottom]=\"hasSeparator\">\r\n <div class=\"widget-content\"\r\n [ngClass]=\"{\r\n 'layout-row': widget.layoutType === 'row',\r\n 'layout-tile m-0': widget.layoutType === 'tile'\r\n }\">\r\n <i classs=\"keyIconClass\" [ngStyle]=\"keyIconStyle\"></i>\r\n <p *ngIf=\"!isMenu\" [ngStyle]=\"fieldKeyStyle\" class=\"mb-0 text-color-secondary mr-3 key-field-wrapper w-50\">{{ widgetItem?.key }}</p>\r\n <p *ngIf=\"isMenu\" [ngStyle]=\"fieldKeyStyle\" (click)=\"handleDynamicEvent(widget.recordId)\"\r\n class=\"mb-0 text-color-secondary mr-3 key-field-wrapper w-50\">{{ widgetItem?.key }}</p>\r\n\r\n <div class=\"mb-0 text-color font-semibold text-value-wrapper w-50 flex align-items-center justify-content-end\">\r\n <i classs=\"valueIconClass\" [ngStyle]=\"valueIconStyle\"></i>\r\n <p class=\"key-field-wrapper\">\r\n <ng-container *ngIf=\"widgetItem.isEvent; else notEvent\">\r\n <a\r\n class=\"cursor-pointer\"\r\n [ngStyle]=\"fieldValueStyle\"\r\n (click)=\"handleDynamicEvent(widget.recordId)\"\r\n >\r\n {{ widgetItem.value !== 'null' ? widgetItem.value : '' }}\r\n </a>\r\n </ng-container>\r\n\r\n <ng-template #notEvent>\r\n <ng-container *ngIf=\"widgetItem.isLink; else plainText\">\r\n <a\r\n class=\"cursor-pointer\"\r\n [ngStyle]=\"fieldValueStyle\"\r\n (click)=\"handleWidgetItemClick(widgetItem)\"\r\n >\r\n {{ widgetItem.value !== 'null' ? widgetItem.value : '' }}\r\n </a>\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template #plainText>\r\n <span [ngStyle]=\"fieldValueStyle\">\r\n {{ widgetItem.value !== 'null' ? widgetItem.value : '' }}\r\n </span>\r\n </ng-template>\r\n </p>\r\n </div>\r\n </div>\r\n</div>", styles: [".text-value-wrapper{-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;white-space:normal;max-width:100%}.key-field-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.w-50{width:50%!important}.map-icon-wrapper{font-size:16px;padding:13px;border-radius:30px;border:1px solid rgba(76,98,146,.1);background:#4c62920a}.address-title-wrapper{width:80%;word-break:break-word;margin-top:-12px}.border-bottom{border-bottom:1px solid rgba(76,98,146,.1)}.widget-content.layout-row{display:flex;flex-direction:row;align-items:center;gap:.5rem}.widget-content.layout-tile{display:grid;grid-template-columns:auto 1fr;row-gap:.5rem;align-items:center}\n"], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
|
|
4288
4341
|
}
|
|
4289
4342
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetItemComponent, decorators: [{
|
|
4290
4343
|
type: Component,
|
|
4291
|
-
args: [{ selector: 'lib-widget-item', standalone: false, template: "<div class=\"widget-container\">\r\n <div class=\"
|
|
4292
|
-
}], ctorParameters: () => [{ type: StyleBuilderService }, { type: WidgetStore }], propDecorators: { widgetItem: [{
|
|
4344
|
+
args: [{ selector: 'lib-widget-item', standalone: false, template: "<div class=\"widget-container\" [class.border-bottom]=\"hasSeparator\">\r\n <div class=\"widget-content\"\r\n [ngClass]=\"{\r\n 'layout-row': widget.layoutType === 'row',\r\n 'layout-tile m-0': widget.layoutType === 'tile'\r\n }\">\r\n <i classs=\"keyIconClass\" [ngStyle]=\"keyIconStyle\"></i>\r\n <p *ngIf=\"!isMenu\" [ngStyle]=\"fieldKeyStyle\" class=\"mb-0 text-color-secondary mr-3 key-field-wrapper w-50\">{{ widgetItem?.key }}</p>\r\n <p *ngIf=\"isMenu\" [ngStyle]=\"fieldKeyStyle\" (click)=\"handleDynamicEvent(widget.recordId)\"\r\n class=\"mb-0 text-color-secondary mr-3 key-field-wrapper w-50\">{{ widgetItem?.key }}</p>\r\n\r\n <div class=\"mb-0 text-color font-semibold text-value-wrapper w-50 flex align-items-center justify-content-end\">\r\n <i classs=\"valueIconClass\" [ngStyle]=\"valueIconStyle\"></i>\r\n <p class=\"key-field-wrapper\">\r\n <ng-container *ngIf=\"widgetItem.isEvent; else notEvent\">\r\n <a\r\n class=\"cursor-pointer\"\r\n [ngStyle]=\"fieldValueStyle\"\r\n (click)=\"handleDynamicEvent(widget.recordId)\"\r\n >\r\n {{ widgetItem.value !== 'null' ? widgetItem.value : '' }}\r\n </a>\r\n </ng-container>\r\n\r\n <ng-template #notEvent>\r\n <ng-container *ngIf=\"widgetItem.isLink; else plainText\">\r\n <a\r\n class=\"cursor-pointer\"\r\n [ngStyle]=\"fieldValueStyle\"\r\n (click)=\"handleWidgetItemClick(widgetItem)\"\r\n >\r\n {{ widgetItem.value !== 'null' ? widgetItem.value : '' }}\r\n </a>\r\n </ng-container>\r\n </ng-template>\r\n\r\n <ng-template #plainText>\r\n <span [ngStyle]=\"fieldValueStyle\">\r\n {{ widgetItem.value !== 'null' ? widgetItem.value : '' }}\r\n </span>\r\n </ng-template>\r\n </p>\r\n </div>\r\n </div>\r\n</div>", styles: [".text-value-wrapper{-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;white-space:normal;max-width:100%}.key-field-wrapper{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.w-50{width:50%!important}.map-icon-wrapper{font-size:16px;padding:13px;border-radius:30px;border:1px solid rgba(76,98,146,.1);background:#4c62920a}.address-title-wrapper{width:80%;word-break:break-word;margin-top:-12px}.border-bottom{border-bottom:1px solid rgba(76,98,146,.1)}.widget-content.layout-row{display:flex;flex-direction:row;align-items:center;gap:.5rem}.widget-content.layout-tile{display:grid;grid-template-columns:auto 1fr;row-gap:.5rem;align-items:center}\n"] }]
|
|
4345
|
+
}], ctorParameters: () => [{ type: StyleBuilderService }, { type: WidgetStore }, { type: WidgetQuery }], propDecorators: { widgetItem: [{
|
|
4293
4346
|
type: Input
|
|
4294
4347
|
}], widget: [{
|
|
4295
4348
|
type: Input
|
|
@@ -4309,10 +4362,32 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImpor
|
|
|
4309
4362
|
type: Input
|
|
4310
4363
|
}] } });
|
|
4311
4364
|
|
|
4312
|
-
|
|
4313
|
-
|
|
4314
|
-
|
|
4315
|
-
|
|
4365
|
+
class WidgetMainComponent {
|
|
4366
|
+
styleBulderService;
|
|
4367
|
+
constructor(styleBulderService) {
|
|
4368
|
+
this.styleBulderService = styleBulderService;
|
|
4369
|
+
}
|
|
4370
|
+
widget;
|
|
4371
|
+
index;
|
|
4372
|
+
widgetStyle = {};
|
|
4373
|
+
ngOnChanges() {
|
|
4374
|
+
if (this.widget && this.widget.style) {
|
|
4375
|
+
this.widgetStyle = this.styleBulderService.getStyle(this.widget.style);
|
|
4376
|
+
}
|
|
4377
|
+
}
|
|
4378
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetMainComponent, deps: [{ token: StyleBuilderService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4379
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.4", type: WidgetMainComponent, isStandalone: false, selector: "lib-widget-main", inputs: { widget: "widget", index: "index" }, usesOnChanges: true, ngImport: i0, template: "<div [ngStyle]=\"widgetStyle\" class=\"widget-container-wrapper pl-1\" [ngClass]=\"index !== 0 ? 'mt-4' : ''\">\r\n <div class=\"widget-container-wrapper pl-1\">\r\n <lib-widget-header [widget]=\"widget\"></lib-widget-header>\r\n <div class=\"widget-content-wrapper mt-3 py-3\">\r\n <lib-widget-body [widget]=\"widget\"></lib-widget-body>\r\n <lib-widget-footer [widget]=\"widget\"></lib-widget-footer>\r\n </div>\r\n </div>\r\n</div>", styles: ["::ng-deep .badge-wrapper .p-button{padding:4px 8px}::ng-deep .refresh-btn-wrapper .p-button{padding:0}::ng-deep .valuation-timeline-wrapper .p-timeline-event-opposite{display:none}::ng-deep .rating-badge-wrapper .p-button{display:flex;align-items:center}::ng-deep .widget-block-wrapper{height:100%}::ng-deep .widget-block-wrapper .p-card{height:100%;background:transparent;border-radius:0;box-shadow:none}::ng-deep .widget-block-wrapper .p-card-body{padding:0;height:100%}::ng-deep .widget-block-wrapper .p-card-content{padding:0;height:100%}.application-title-wrapper{font-size:18px;font-weight:400}.application-section-wrapper{background-color:#4c629208;border:1px solid rgba(76,98,146,.1);border-radius:10px}.widget-section-wrapper{height:100%}.custom-scroll{overflow-y:hidden;scrollbar-gutter:stable}.custom-scroll:hover{overflow-y:auto}.widget-content-wrapper{border-top:1px solid rgba(68,72,109,.1)}.widget-menu-container{border-radius:10px}:host ::-webkit-scrollbar{width:6px}:host ::-webkit-scrollbar-track{background:transparent}:host ::-webkit-scrollbar-thumb{background:#d1d5db94;border-radius:20px}\n", ""], dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "component", type: WidgetHeaderComponent, selector: "lib-widget-header", inputs: ["widget"] }, { kind: "component", type: WidgetFooterComponent, selector: "lib-widget-footer", inputs: ["widget"] }, { kind: "component", type: WidgetBodyComponent, selector: "lib-widget-body", inputs: ["widget"] }] });
|
|
4380
|
+
}
|
|
4381
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetMainComponent, decorators: [{
|
|
4382
|
+
type: Component,
|
|
4383
|
+
args: [{ selector: 'lib-widget-main', standalone: false, template: "<div [ngStyle]=\"widgetStyle\" class=\"widget-container-wrapper pl-1\" [ngClass]=\"index !== 0 ? 'mt-4' : ''\">\r\n <div class=\"widget-container-wrapper pl-1\">\r\n <lib-widget-header [widget]=\"widget\"></lib-widget-header>\r\n <div class=\"widget-content-wrapper mt-3 py-3\">\r\n <lib-widget-body [widget]=\"widget\"></lib-widget-body>\r\n <lib-widget-footer [widget]=\"widget\"></lib-widget-footer>\r\n </div>\r\n </div>\r\n</div>", styles: ["::ng-deep .badge-wrapper .p-button{padding:4px 8px}::ng-deep .refresh-btn-wrapper .p-button{padding:0}::ng-deep .valuation-timeline-wrapper .p-timeline-event-opposite{display:none}::ng-deep .rating-badge-wrapper .p-button{display:flex;align-items:center}::ng-deep .widget-block-wrapper{height:100%}::ng-deep .widget-block-wrapper .p-card{height:100%;background:transparent;border-radius:0;box-shadow:none}::ng-deep .widget-block-wrapper .p-card-body{padding:0;height:100%}::ng-deep .widget-block-wrapper .p-card-content{padding:0;height:100%}.application-title-wrapper{font-size:18px;font-weight:400}.application-section-wrapper{background-color:#4c629208;border:1px solid rgba(76,98,146,.1);border-radius:10px}.widget-section-wrapper{height:100%}.custom-scroll{overflow-y:hidden;scrollbar-gutter:stable}.custom-scroll:hover{overflow-y:auto}.widget-content-wrapper{border-top:1px solid rgba(68,72,109,.1)}.widget-menu-container{border-radius:10px}:host ::-webkit-scrollbar{width:6px}:host ::-webkit-scrollbar-track{background:transparent}:host ::-webkit-scrollbar-thumb{background:#d1d5db94;border-radius:20px}\n"] }]
|
|
4384
|
+
}], ctorParameters: () => [{ type: StyleBuilderService }], propDecorators: { widget: [{
|
|
4385
|
+
type: Input
|
|
4386
|
+
}], index: [{
|
|
4387
|
+
type: Input
|
|
4388
|
+
}] } });
|
|
4389
|
+
|
|
4390
|
+
class WidgetMenuComponent {
|
|
4316
4391
|
widgetService;
|
|
4317
4392
|
activatedRoute;
|
|
4318
4393
|
widgetQuery;
|
|
@@ -4330,15 +4405,13 @@ class WidgetContainerComponent {
|
|
|
4330
4405
|
subscriptions = [];
|
|
4331
4406
|
isLoading = true;
|
|
4332
4407
|
onViewAllDetails = new EventEmitter();
|
|
4333
|
-
|
|
4408
|
+
onWidgetEventClick = new EventEmitter();
|
|
4334
4409
|
onWidgetItemClick = new EventEmitter();
|
|
4335
|
-
onDirectDebitClick = new EventEmitter();
|
|
4336
4410
|
isSidebarVisible = SHARED.FALSE;
|
|
4337
4411
|
offerWidgetData;
|
|
4338
4412
|
valuationWidgetData;
|
|
4339
|
-
progressChartData;
|
|
4340
4413
|
ngOnInit() {
|
|
4341
|
-
this.
|
|
4414
|
+
this.handleEventClickDetails();
|
|
4342
4415
|
this.handleOnViewAllDetails();
|
|
4343
4416
|
const queueId = localStorage.getItem(SHARED.selectedQueue);
|
|
4344
4417
|
const recordId = this.activatedRoute.snapshot.params[SHARED.ID];
|
|
@@ -4365,12 +4438,12 @@ class WidgetContainerComponent {
|
|
|
4365
4438
|
console.error('Error in getOnWidgetItemClick subscription:', error);
|
|
4366
4439
|
});
|
|
4367
4440
|
}
|
|
4368
|
-
|
|
4369
|
-
this.widgetQuery.
|
|
4441
|
+
handleEventClickDetails() {
|
|
4442
|
+
this.widgetQuery.getEventClickDetails()
|
|
4370
4443
|
.pipe(takeUntil(this.destroy$))
|
|
4371
4444
|
.subscribe((res) => {
|
|
4372
4445
|
if (res) {
|
|
4373
|
-
this.
|
|
4446
|
+
this.onWidgetEventClick.next(res);
|
|
4374
4447
|
}
|
|
4375
4448
|
});
|
|
4376
4449
|
}
|
|
@@ -4407,7 +4480,7 @@ class WidgetContainerComponent {
|
|
|
4407
4480
|
}
|
|
4408
4481
|
ngOnChanges(changes) {
|
|
4409
4482
|
if (!this.isSidebarVisible) {
|
|
4410
|
-
this.widgetStore.
|
|
4483
|
+
this.widgetStore.setEventClickDetails({ recordId: null, isDailogShow: false });
|
|
4411
4484
|
}
|
|
4412
4485
|
}
|
|
4413
4486
|
ngOnDestroy() {
|
|
@@ -4417,31 +4490,27 @@ class WidgetContainerComponent {
|
|
|
4417
4490
|
this.destroy$.next();
|
|
4418
4491
|
this.destroy$.complete();
|
|
4419
4492
|
}
|
|
4420
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type:
|
|
4421
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.4", type:
|
|
4493
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetMenuComponent, deps: [{ token: WidgetService }, { token: i3$4.ActivatedRoute }, { token: WidgetQuery }, { token: WidgetStore }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
4494
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.4", type: WidgetMenuComponent, isStandalone: false, selector: "lib-widget-menu", inputs: { isSidebarVisible: "isSidebarVisible", offerWidgetData: "offerWidgetData", valuationWidgetData: "valuationWidgetData" }, outputs: { onViewAllDetails: "onViewAllDetails", onWidgetEventClick: "onWidgetEventClick", onWidgetItemClick: "onWidgetItemClick" }, usesOnChanges: true, ngImport: i0, template: "<p-card class=\"widget-block-wrapper block\">\r\n <div class=\"widget-section-wrapper custom-scroll pt-2\">\r\n <!-- Loading state -->\r\n <ng-container *ngIf=\"isLoading; else widgetContent\">\r\n <p class=\"text-color ml-3 font-semibold\">Widget configuration loading...</p>\r\n </ng-container>\r\n\r\n <!-- Content after API call -->\r\n <ng-template #widgetContent>\r\n <ng-container *ngIf=\"(widgets && widgets.length > 0) || (valuationWidgetData || offerWidgetData); else noWidgets\">\r\n <ng-container *ngFor=\"let widget of widgets; let i = index\">\r\n <lib-widget-main [widget]=\"widget\" [index]=\"i\"></lib-widget-main>\r\n </ng-container>\r\n <ng-container *ngIf=\"offerWidgetData\">\r\n <lib-custom-widget [widgetData]=\"offerWidgetData\"></lib-custom-widget>\r\n </ng-container>\r\n <ng-container *ngIf=\"valuationWidgetData\">\r\n <lib-custom-widget [widgetData]=\"valuationWidgetData\"></lib-custom-widget>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- No widget configured state -->\r\n <ng-template #noWidgets>\r\n <p class=\"text-color ml-3 font-semibold\">No Widgets Configured</p>\r\n </ng-template>\r\n </ng-template>\r\n </div>\r\n</p-card>", styles: ["::ng-deep .badge-wrapper .p-button{padding:4px 8px}::ng-deep .refresh-btn-wrapper .p-button{padding:0}::ng-deep .valuation-timeline-wrapper .p-timeline-event-opposite{display:none}::ng-deep .rating-badge-wrapper .p-button{display:flex;align-items:center}::ng-deep .widget-block-wrapper{height:100%}::ng-deep .widget-block-wrapper .p-card{height:100%;background:transparent;border-radius:0;box-shadow:none}::ng-deep .widget-block-wrapper .p-card-body{padding:0;height:100%}::ng-deep .widget-block-wrapper .p-card-content{padding:0;height:100%}.application-title-wrapper{font-size:18px;font-weight:400}.application-section-wrapper{background-color:#4c629208;border:1px solid rgba(76,98,146,.1);border-radius:10px}.widget-section-wrapper{height:100%}.custom-scroll{overflow-y:hidden;scrollbar-gutter:stable}.custom-scroll:hover{overflow-y:auto}.widget-content-wrapper{border-top:1px solid rgba(68,72,109,.1)}.widget-menu-container{border-radius:10px}:host ::-webkit-scrollbar{width:6px}:host ::-webkit-scrollbar-track{background:transparent}:host ::-webkit-scrollbar-thumb{background:#d1d5db94;border-radius:20px}\n", ""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6$1.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "component", type: CustomWidgetComponent, selector: "lib-custom-widget", inputs: ["widgetData"] }, { kind: "component", type: WidgetMainComponent, selector: "lib-widget-main", inputs: ["widget", "index"] }] });
|
|
4422
4495
|
}
|
|
4423
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type:
|
|
4496
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetMenuComponent, decorators: [{
|
|
4424
4497
|
type: Component,
|
|
4425
|
-
args: [{ selector: 'lib-widget-
|
|
4498
|
+
args: [{ selector: 'lib-widget-menu', standalone: false, template: "<p-card class=\"widget-block-wrapper block\">\r\n <div class=\"widget-section-wrapper custom-scroll pt-2\">\r\n <!-- Loading state -->\r\n <ng-container *ngIf=\"isLoading; else widgetContent\">\r\n <p class=\"text-color ml-3 font-semibold\">Widget configuration loading...</p>\r\n </ng-container>\r\n\r\n <!-- Content after API call -->\r\n <ng-template #widgetContent>\r\n <ng-container *ngIf=\"(widgets && widgets.length > 0) || (valuationWidgetData || offerWidgetData); else noWidgets\">\r\n <ng-container *ngFor=\"let widget of widgets; let i = index\">\r\n <lib-widget-main [widget]=\"widget\" [index]=\"i\"></lib-widget-main>\r\n </ng-container>\r\n <ng-container *ngIf=\"offerWidgetData\">\r\n <lib-custom-widget [widgetData]=\"offerWidgetData\"></lib-custom-widget>\r\n </ng-container>\r\n <ng-container *ngIf=\"valuationWidgetData\">\r\n <lib-custom-widget [widgetData]=\"valuationWidgetData\"></lib-custom-widget>\r\n </ng-container>\r\n </ng-container>\r\n\r\n <!-- No widget configured state -->\r\n <ng-template #noWidgets>\r\n <p class=\"text-color ml-3 font-semibold\">No Widgets Configured</p>\r\n </ng-template>\r\n </ng-template>\r\n </div>\r\n</p-card>", styles: ["::ng-deep .badge-wrapper .p-button{padding:4px 8px}::ng-deep .refresh-btn-wrapper .p-button{padding:0}::ng-deep .valuation-timeline-wrapper .p-timeline-event-opposite{display:none}::ng-deep .rating-badge-wrapper .p-button{display:flex;align-items:center}::ng-deep .widget-block-wrapper{height:100%}::ng-deep .widget-block-wrapper .p-card{height:100%;background:transparent;border-radius:0;box-shadow:none}::ng-deep .widget-block-wrapper .p-card-body{padding:0;height:100%}::ng-deep .widget-block-wrapper .p-card-content{padding:0;height:100%}.application-title-wrapper{font-size:18px;font-weight:400}.application-section-wrapper{background-color:#4c629208;border:1px solid rgba(76,98,146,.1);border-radius:10px}.widget-section-wrapper{height:100%}.custom-scroll{overflow-y:hidden;scrollbar-gutter:stable}.custom-scroll:hover{overflow-y:auto}.widget-content-wrapper{border-top:1px solid rgba(68,72,109,.1)}.widget-menu-container{border-radius:10px}:host ::-webkit-scrollbar{width:6px}:host ::-webkit-scrollbar-track{background:transparent}:host ::-webkit-scrollbar-thumb{background:#d1d5db94;border-radius:20px}\n"] }]
|
|
4426
4499
|
}], ctorParameters: () => [{ type: WidgetService }, { type: i3$4.ActivatedRoute }, { type: WidgetQuery }, { type: WidgetStore }, { type: i0.ChangeDetectorRef }], propDecorators: { onViewAllDetails: [{
|
|
4427
4500
|
type: Output
|
|
4428
|
-
}],
|
|
4501
|
+
}], onWidgetEventClick: [{
|
|
4429
4502
|
type: Output
|
|
4430
4503
|
}], onWidgetItemClick: [{
|
|
4431
4504
|
type: Output
|
|
4432
|
-
}], onDirectDebitClick: [{
|
|
4433
|
-
type: Output
|
|
4434
4505
|
}], isSidebarVisible: [{
|
|
4435
4506
|
type: Input
|
|
4436
4507
|
}], offerWidgetData: [{
|
|
4437
4508
|
type: Input
|
|
4438
4509
|
}], valuationWidgetData: [{
|
|
4439
4510
|
type: Input
|
|
4440
|
-
}], progressChartData: [{
|
|
4441
|
-
type: Input
|
|
4442
4511
|
}] } });
|
|
4443
4512
|
|
|
4444
|
-
class
|
|
4513
|
+
class WidgetRowTileComponent {
|
|
4445
4514
|
widgetService;
|
|
4446
4515
|
destroy$ = new Subject();
|
|
4447
4516
|
widgets;
|
|
@@ -4468,28 +4537,77 @@ class WidgetLayoutComponent {
|
|
|
4468
4537
|
this.destroy$.unsubscribe();
|
|
4469
4538
|
this.destroy$.complete();
|
|
4470
4539
|
}
|
|
4471
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type:
|
|
4472
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.4", type:
|
|
4540
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetRowTileComponent, deps: [{ token: WidgetService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4541
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "19.0.4", type: WidgetRowTileComponent, isStandalone: false, selector: "lib-widget-row-tile", inputs: { recordId: "recordId", widgetName: "widgetName" }, ngImport: i0, template: "<p-card class=\"widget-block-wrapper block\">\r\n <div class=\"widget-section-wrapper custom-scroll pt-2\">\r\n <!-- Loading state -->\r\n <ng-container *ngIf=\"isLoading; else widgetContent\">\r\n <p class=\"text-color ml-3 font-semibold\">Widget configuration loading...</p>\r\n </ng-container>\r\n \r\n <!-- Content after API call -->\r\n <ng-template #widgetContent>\r\n <ng-container *ngIf=\"(widgets && widgets.length > 0); else noWidgets\">\r\n <ng-container *ngFor=\"let widget of widgets; let i = index\">\r\n <lib-widget-main [widget]=\"widget\" [index]=\"i\"></lib-widget-main>\r\n </ng-container>\r\n </ng-container>\r\n \r\n <!-- No widget configured state -->\r\n <ng-template #noWidgets>\r\n <p class=\"text-color ml-3 font-semibold\">No Widgets Configured</p>\r\n </ng-template>\r\n </ng-template>\r\n </div>\r\n </p-card>", styles: ["::ng-deep .badge-wrapper .p-button{padding:4px 8px}::ng-deep .refresh-btn-wrapper .p-button{padding:0}::ng-deep .valuation-timeline-wrapper .p-timeline-event-opposite{display:none}::ng-deep .rating-badge-wrapper .p-button{display:flex;align-items:center}::ng-deep .widget-block-wrapper{height:100%}::ng-deep .widget-block-wrapper .p-card{height:100%;background:transparent;border-radius:0;box-shadow:none}::ng-deep .widget-block-wrapper .p-card-body{padding:0;height:100%}::ng-deep .widget-block-wrapper .p-card-content{padding:0;height:100%}.application-title-wrapper{font-size:18px;font-weight:400}.application-section-wrapper{background-color:#4c629208;border:1px solid rgba(76,98,146,.1);border-radius:10px}.widget-section-wrapper{height:100%}.custom-scroll{overflow-y:hidden;scrollbar-gutter:stable}.custom-scroll:hover{overflow-y:auto}.widget-content-wrapper{border-top:1px solid rgba(68,72,109,.1)}.widget-menu-container{border-radius:10px}:host ::-webkit-scrollbar{width:6px}:host ::-webkit-scrollbar-track{background:transparent}:host ::-webkit-scrollbar-thumb{background:#d1d5db94;border-radius:20px}\n", ""], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i6$1.Card, selector: "p-card", inputs: ["header", "subheader", "style", "styleClass"] }, { kind: "component", type: WidgetMainComponent, selector: "lib-widget-main", inputs: ["widget", "index"] }] });
|
|
4473
4542
|
}
|
|
4474
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type:
|
|
4543
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetRowTileComponent, decorators: [{
|
|
4475
4544
|
type: Component,
|
|
4476
|
-
args: [{ selector: 'lib-widget-
|
|
4545
|
+
args: [{ selector: 'lib-widget-row-tile', standalone: false, template: "<p-card class=\"widget-block-wrapper block\">\r\n <div class=\"widget-section-wrapper custom-scroll pt-2\">\r\n <!-- Loading state -->\r\n <ng-container *ngIf=\"isLoading; else widgetContent\">\r\n <p class=\"text-color ml-3 font-semibold\">Widget configuration loading...</p>\r\n </ng-container>\r\n \r\n <!-- Content after API call -->\r\n <ng-template #widgetContent>\r\n <ng-container *ngIf=\"(widgets && widgets.length > 0); else noWidgets\">\r\n <ng-container *ngFor=\"let widget of widgets; let i = index\">\r\n <lib-widget-main [widget]=\"widget\" [index]=\"i\"></lib-widget-main>\r\n </ng-container>\r\n </ng-container>\r\n \r\n <!-- No widget configured state -->\r\n <ng-template #noWidgets>\r\n <p class=\"text-color ml-3 font-semibold\">No Widgets Configured</p>\r\n </ng-template>\r\n </ng-template>\r\n </div>\r\n </p-card>", styles: ["::ng-deep .badge-wrapper .p-button{padding:4px 8px}::ng-deep .refresh-btn-wrapper .p-button{padding:0}::ng-deep .valuation-timeline-wrapper .p-timeline-event-opposite{display:none}::ng-deep .rating-badge-wrapper .p-button{display:flex;align-items:center}::ng-deep .widget-block-wrapper{height:100%}::ng-deep .widget-block-wrapper .p-card{height:100%;background:transparent;border-radius:0;box-shadow:none}::ng-deep .widget-block-wrapper .p-card-body{padding:0;height:100%}::ng-deep .widget-block-wrapper .p-card-content{padding:0;height:100%}.application-title-wrapper{font-size:18px;font-weight:400}.application-section-wrapper{background-color:#4c629208;border:1px solid rgba(76,98,146,.1);border-radius:10px}.widget-section-wrapper{height:100%}.custom-scroll{overflow-y:hidden;scrollbar-gutter:stable}.custom-scroll:hover{overflow-y:auto}.widget-content-wrapper{border-top:1px solid rgba(68,72,109,.1)}.widget-menu-container{border-radius:10px}:host ::-webkit-scrollbar{width:6px}:host ::-webkit-scrollbar-track{background:transparent}:host ::-webkit-scrollbar-thumb{background:#d1d5db94;border-radius:20px}\n"] }]
|
|
4477
4546
|
}], ctorParameters: () => [{ type: WidgetService }], propDecorators: { recordId: [{
|
|
4478
4547
|
type: Input
|
|
4479
4548
|
}], widgetName: [{
|
|
4480
4549
|
type: Input
|
|
4481
4550
|
}] } });
|
|
4482
4551
|
|
|
4552
|
+
/**
|
|
4553
|
+
* Widget Container Component
|
|
4554
|
+
*/
|
|
4555
|
+
class WidgetContainerComponent {
|
|
4556
|
+
widgetStore;
|
|
4557
|
+
constructor(widgetStore) {
|
|
4558
|
+
this.widgetStore = widgetStore;
|
|
4559
|
+
}
|
|
4560
|
+
isMenu = false;
|
|
4561
|
+
offerWidgetData;
|
|
4562
|
+
valuationWidgetData;
|
|
4563
|
+
onViewAllDetails = new EventEmitter();
|
|
4564
|
+
onWidgetEventClick = new EventEmitter();
|
|
4565
|
+
onWidgetItemClick = new EventEmitter();
|
|
4566
|
+
ngOnChanges(changes) {
|
|
4567
|
+
if (changes[SHARED.IS_MENU]) {
|
|
4568
|
+
this.isMenu = changes[SHARED.IS_MENU].currentValue;
|
|
4569
|
+
this.widgetStore.setIsMenu(this.isMenu);
|
|
4570
|
+
}
|
|
4571
|
+
}
|
|
4572
|
+
handleViewAllDetails(event) {
|
|
4573
|
+
this.onViewAllDetails.emit(event);
|
|
4574
|
+
}
|
|
4575
|
+
handleWidgetEventClick(event) {
|
|
4576
|
+
this.onWidgetEventClick.emit(event);
|
|
4577
|
+
}
|
|
4578
|
+
handleWidgetItemClick(event) {
|
|
4579
|
+
this.onWidgetItemClick.emit(event);
|
|
4580
|
+
}
|
|
4581
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetContainerComponent, deps: [{ token: WidgetStore }], target: i0.ɵɵFactoryTarget.Component });
|
|
4582
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.4", type: WidgetContainerComponent, isStandalone: false, selector: "lib-widget-container", inputs: { isMenu: "isMenu", offerWidgetData: "offerWidgetData", valuationWidgetData: "valuationWidgetData" }, outputs: { onViewAllDetails: "onViewAllDetails", onWidgetEventClick: "onWidgetEventClick", onWidgetItemClick: "onWidgetItemClick" }, usesOnChanges: true, ngImport: i0, template: "<div class=\"widget-container-wrapper\">\r\n @if(isMenu) {\r\n <div class=\"bg-white widget-menu-container\">\r\n <lib-widget-menu \r\n [offerWidgetData]=\"offerWidgetData\"\r\n [valuationWidgetData]=\"valuationWidgetData\"\r\n (onViewAllDetails)=\"handleViewAllDetails($event)\"\r\n (onWidgetEventClick)=\"handleWidgetEventClick($event)\"\r\n (onWidgetItemClick)=\"handleWidgetItemClick($event)\"\r\n ></lib-widget-menu>\r\n </div>\r\n } @else {\r\n <lib-widget-row-tile></lib-widget-row-tile>\r\n }\r\n</div>", styles: ["::ng-deep .badge-wrapper .p-button{padding:4px 8px}::ng-deep .refresh-btn-wrapper .p-button{padding:0}::ng-deep .valuation-timeline-wrapper .p-timeline-event-opposite{display:none}::ng-deep .rating-badge-wrapper .p-button{display:flex;align-items:center}::ng-deep .widget-block-wrapper{height:100%}::ng-deep .widget-block-wrapper .p-card{height:100%;background:transparent;border-radius:0;box-shadow:none}::ng-deep .widget-block-wrapper .p-card-body{padding:0;height:100%}::ng-deep .widget-block-wrapper .p-card-content{padding:0;height:100%}.application-title-wrapper{font-size:18px;font-weight:400}.application-section-wrapper{background-color:#4c629208;border:1px solid rgba(76,98,146,.1);border-radius:10px}.widget-section-wrapper{height:100%}.custom-scroll{overflow-y:hidden;scrollbar-gutter:stable}.custom-scroll:hover{overflow-y:auto}.widget-content-wrapper{border-top:1px solid rgba(68,72,109,.1)}.widget-menu-container{border-radius:10px}:host ::-webkit-scrollbar{width:6px}:host ::-webkit-scrollbar-track{background:transparent}:host ::-webkit-scrollbar-thumb{background:#d1d5db94;border-radius:20px}\n"], dependencies: [{ kind: "component", type: WidgetMenuComponent, selector: "lib-widget-menu", inputs: ["isSidebarVisible", "offerWidgetData", "valuationWidgetData"], outputs: ["onViewAllDetails", "onWidgetEventClick", "onWidgetItemClick"] }, { kind: "component", type: WidgetRowTileComponent, selector: "lib-widget-row-tile", inputs: ["recordId", "widgetName"] }] });
|
|
4583
|
+
}
|
|
4584
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetContainerComponent, decorators: [{
|
|
4585
|
+
type: Component,
|
|
4586
|
+
args: [{ selector: 'lib-widget-container', standalone: false, template: "<div class=\"widget-container-wrapper\">\r\n @if(isMenu) {\r\n <div class=\"bg-white widget-menu-container\">\r\n <lib-widget-menu \r\n [offerWidgetData]=\"offerWidgetData\"\r\n [valuationWidgetData]=\"valuationWidgetData\"\r\n (onViewAllDetails)=\"handleViewAllDetails($event)\"\r\n (onWidgetEventClick)=\"handleWidgetEventClick($event)\"\r\n (onWidgetItemClick)=\"handleWidgetItemClick($event)\"\r\n ></lib-widget-menu>\r\n </div>\r\n } @else {\r\n <lib-widget-row-tile></lib-widget-row-tile>\r\n }\r\n</div>", styles: ["::ng-deep .badge-wrapper .p-button{padding:4px 8px}::ng-deep .refresh-btn-wrapper .p-button{padding:0}::ng-deep .valuation-timeline-wrapper .p-timeline-event-opposite{display:none}::ng-deep .rating-badge-wrapper .p-button{display:flex;align-items:center}::ng-deep .widget-block-wrapper{height:100%}::ng-deep .widget-block-wrapper .p-card{height:100%;background:transparent;border-radius:0;box-shadow:none}::ng-deep .widget-block-wrapper .p-card-body{padding:0;height:100%}::ng-deep .widget-block-wrapper .p-card-content{padding:0;height:100%}.application-title-wrapper{font-size:18px;font-weight:400}.application-section-wrapper{background-color:#4c629208;border:1px solid rgba(76,98,146,.1);border-radius:10px}.widget-section-wrapper{height:100%}.custom-scroll{overflow-y:hidden;scrollbar-gutter:stable}.custom-scroll:hover{overflow-y:auto}.widget-content-wrapper{border-top:1px solid rgba(68,72,109,.1)}.widget-menu-container{border-radius:10px}:host ::-webkit-scrollbar{width:6px}:host ::-webkit-scrollbar-track{background:transparent}:host ::-webkit-scrollbar-thumb{background:#d1d5db94;border-radius:20px}\n"] }]
|
|
4587
|
+
}], ctorParameters: () => [{ type: WidgetStore }], propDecorators: { isMenu: [{
|
|
4588
|
+
type: Input
|
|
4589
|
+
}], offerWidgetData: [{
|
|
4590
|
+
type: Input
|
|
4591
|
+
}], valuationWidgetData: [{
|
|
4592
|
+
type: Input
|
|
4593
|
+
}], onViewAllDetails: [{
|
|
4594
|
+
type: Output
|
|
4595
|
+
}], onWidgetEventClick: [{
|
|
4596
|
+
type: Output
|
|
4597
|
+
}], onWidgetItemClick: [{
|
|
4598
|
+
type: Output
|
|
4599
|
+
}] } });
|
|
4600
|
+
|
|
4483
4601
|
class WidgetModule {
|
|
4484
4602
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
4485
|
-
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.4", ngImport: i0, type: WidgetModule, declarations: [WidgetContainerComponent, WidgetHeaderComponent, WidgetFooterComponent, WidgetBodyComponent, WidgetItemComponent,
|
|
4603
|
+
static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "19.0.4", ngImport: i0, type: WidgetModule, declarations: [WidgetContainerComponent, WidgetMenuComponent, WidgetMainComponent, WidgetHeaderComponent, WidgetFooterComponent, WidgetBodyComponent, WidgetItemComponent, WidgetRowTileComponent], imports: [CommonModule,
|
|
4486
4604
|
ButtonModule,
|
|
4487
4605
|
DividerModule,
|
|
4488
4606
|
CardModule,
|
|
4489
4607
|
SharedModule,
|
|
4490
4608
|
SidebarModule,
|
|
4491
4609
|
TimelineModule,
|
|
4492
|
-
ChartModule], exports: [WidgetContainerComponent
|
|
4610
|
+
ChartModule], exports: [WidgetContainerComponent] });
|
|
4493
4611
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetModule, imports: [CommonModule,
|
|
4494
4612
|
ButtonModule,
|
|
4495
4613
|
DividerModule,
|
|
@@ -4502,7 +4620,7 @@ class WidgetModule {
|
|
|
4502
4620
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImport: i0, type: WidgetModule, decorators: [{
|
|
4503
4621
|
type: NgModule,
|
|
4504
4622
|
args: [{
|
|
4505
|
-
declarations: [WidgetContainerComponent, WidgetHeaderComponent, WidgetFooterComponent, WidgetBodyComponent, WidgetItemComponent,
|
|
4623
|
+
declarations: [WidgetContainerComponent, WidgetMenuComponent, WidgetMainComponent, WidgetHeaderComponent, WidgetFooterComponent, WidgetBodyComponent, WidgetItemComponent, WidgetRowTileComponent],
|
|
4506
4624
|
imports: [
|
|
4507
4625
|
CommonModule,
|
|
4508
4626
|
ButtonModule,
|
|
@@ -4513,7 +4631,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImpor
|
|
|
4513
4631
|
TimelineModule,
|
|
4514
4632
|
ChartModule
|
|
4515
4633
|
],
|
|
4516
|
-
exports: [WidgetContainerComponent
|
|
4634
|
+
exports: [WidgetContainerComponent]
|
|
4517
4635
|
}]
|
|
4518
4636
|
}] });
|
|
4519
4637
|
|
|
@@ -4525,5 +4643,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.4", ngImpor
|
|
|
4525
4643
|
* Generated bundle index. Do not edit.
|
|
4526
4644
|
*/
|
|
4527
4645
|
|
|
4528
|
-
export { ActionAdminModule, AdminActionFormComponent, AdminActionListComponent, ApiAdminFormComponent, ApiAdminListComponent, ApiAdminModule, DdAdminFormComponent, DdAdminListComponent, DdAdminModule, FormStateService, QWWidgetAdminModule, QueueAdminFormComponent, QueueAdminListComponent, QueueAdminModule, QueueApplicationListComponent, TemplateAdminFormComponent, TemplateAdminListComponent, TemplateAdminModule, WidgetAdminFormComponent, WidgetAdminListComponent, WidgetContainerComponent,
|
|
4646
|
+
export { ActionAdminModule, AdminActionFormComponent, AdminActionListComponent, ApiAdminFormComponent, ApiAdminListComponent, ApiAdminModule, DdAdminFormComponent, DdAdminListComponent, DdAdminModule, FormStateService, QWWidgetAdminModule, QueueAdminFormComponent, QueueAdminListComponent, QueueAdminModule, QueueApplicationListComponent, TemplateAdminFormComponent, TemplateAdminListComponent, TemplateAdminModule, WidgetAdminFormComponent, WidgetAdminListComponent, WidgetContainerComponent, WidgetModule };
|
|
4529
4647
|
//# sourceMappingURL=cat-qw-lib.mjs.map
|