{"__symbolic":"module","version":4,"metadata":{"NgxWrapperModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":11,"character":1},"arguments":[{"declarations":[],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":14,"character":4},{"__symbolic":"reference","name":"NgxWrapperSharedModule"},{"__symbolic":"reference","name":"NgxManageLayoutModule"}],"exports":[{"__symbolic":"reference","name":"NgxWrapperSharedModule"},{"__symbolic":"reference","name":"NgxManageLayoutModule"}]}]}],"members":{}},"BaseComponent":{"__symbolic":"class","members":{"currentUser":[{"__symbolic":"method"}],"dispose":[{"__symbolic":"method"}]}},"DialogBaseComponent":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"BaseComponent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":10,"character":36}]}],"close":[{"__symbolic":"method"}]}},"DynamicFormBaseComponent":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"FormBaseComponent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":12,"character":37}]}],"prepareForm":[{"__symbolic":"method"}],"loadRemoteJsonForm":[{"__symbolic":"method"}]}},"FormBaseComponent":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"BaseComponent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":14,"character":30}]}],"getValue":[{"__symbolic":"method"}],"setValue":[{"__symbolic":"method"}],"patchValue":[{"__symbolic":"method"}],"getControl":[{"__symbolic":"method"}],"getFormValue":[{"__symbolic":"method"}],"setFormValue":[{"__symbolic":"method"}],"getFormControl":[{"__symbolic":"method"}],"cloneFormGroup":[{"__symbolic":"method"}],"fireFormControlValidation":[{"__symbolic":"method"}],"fireFormGroupValidation":[{"__symbolic":"method"}],"fireFormArrayValidation":[{"__symbolic":"method"}]}},"DialogFormBaseComponent":{"__symbolic":"class","arity":2,"extends":{"__symbolic":"reference","name":"DynamicFormBaseComponent"},"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":10,"character":36}]}],"closeDialog":[{"__symbolic":"method"}]}},"INgxResult":{"__symbolic":"interface"},"INgxFilter":{"__symbolic":"interface"},"NgxUtility":{"__symbolic":"class","members":{},"statics":{"clone":{"__symbolic":"function","parameters":["obj"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"JSON"},"member":"parse"},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"JSON"},"member":"stringify"},"arguments":[{"__symbolic":"reference","name":"obj"}]}]}},"hasProperty":{"__symbolic":"function","parameters":["obj","property"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"reference","name":"obj"},"right":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"obj"},"member":"hasOwnProperty"},"arguments":[{"__symbolic":"reference","name":"property"}]}}},"hasPropertyValue":{"__symbolic":"function","parameters":["obj","property"],"value":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"binop","operator":"&&","left":{"__symbolic":"reference","name":"obj"},"right":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"obj"},"member":"hasOwnProperty"},"arguments":[{"__symbolic":"reference","name":"property"}]}},"right":{"__symbolic":"index","expression":{"__symbolic":"reference","name":"obj"},"index":{"__symbolic":"reference","name":"property"}}}},"toFloatExact":{"__symbolic":"function","parameters":["value"],"value":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"NgxUtility"},"member":"toFloat"},"arguments":[{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"value"},"member":"toFixed"},"arguments":[10]}]}},"getUniqueString":{"__symbolic":"function","parameters":[],"value":{"__symbolic":"binop","operator":"+","left":{"__symbolic":"binop","operator":"+","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"new","expression":{"__symbolic":"reference","name":"Date"}},"member":"getTime"}},"right":"_"},"right":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Math"},"member":"floor"},"arguments":[{"__symbolic":"binop","operator":"+","left":{"__symbolic":"binop","operator":"*","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"Math"},"member":"random"}},"right":9999999},"right":1}]}}},"dialogContentStyle":{"__symbolic":"function","parameters":["maxHeight"],"defaults":["80vh"],"value":{"max-height":{"__symbolic":"reference","name":"maxHeight"},"overflow-y":"auto","overflow-x":"hidden","$quoted$":["max-height","overflow-y","overflow-x"]}},"isSuccessResult":{"__symbolic":"function","parameters":["result"],"value":{"__symbolic":"if","condition":{"__symbolic":"binop","operator":"===","left":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","name":"NgxUtility"},"member":"toInt"},"arguments":[{"__symbolic":"select","expression":{"__symbolic":"reference","name":"result"},"member":"status"}]},"right":1},"thenExpression":true,"elseExpression":false}}}},"NgxLambdaUtility":{"__symbolic":"class","members":{}},"NgxManageLayoutModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":13,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"NgxManageLayoutComponent"},{"__symbolic":"reference","name":"NgxManageActionLayoutComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":16,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":17,"character":4},{"__symbolic":"reference","module":"primeng/confirmdialog","name":"ConfirmDialogModule","line":18,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":19,"character":4},{"__symbolic":"reference","module":"ngx-primeng-form","name":"NgxPrimengFormModule","line":20,"character":4},{"__symbolic":"reference","module":"ngx-primeng-grid","name":"NgxPrimengGridModule","line":21,"character":4},{"__symbolic":"reference","name":"NgxWrapperSharedModule"},{"__symbolic":"reference","module":"primeng/button","name":"ButtonModule","line":23,"character":4},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":24,"character":4}],"exports":[{"__symbolic":"reference","name":"NgxManageLayoutComponent"},{"__symbolic":"reference","name":"NgxManageActionLayoutComponent"}]}]}],"members":{}},"INgxManageLayoutAction":{"__symbolic":"interface"},"INgxManageLayoutApi":{"__symbolic":"interface"},"INgxManageLayoutSetting":{"__symbolic":"interface"},"INgxManageLayoutSettingAddOption":{"__symbolic":"interface"},"INgxManageLayout":{"__symbolic":"interface"},"INgxManageLayoutDialogData":{"__symbolic":"interface"},"INgxManageLayoutForm":{"__symbolic":"interface"},"INgxManageLayoutActionButton":{"__symbolic":"interface"},"INgxManageLayoutConfirmation":{"__symbolic":"interface"},"NgxManageLayoutService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"process":[{"__symbolic":"method"}],"processColumn":[{"__symbolic":"method"}],"processSetting":[{"__symbolic":"method"}],"getAddOption":[{"__symbolic":"method"}],"processForm":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"NgxManageLayoutComponent":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"BaseComponent"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":8,"character":1},"arguments":[{"selector":"ngx-manage-layout","template":"<!-- Header -->\r\n<ngx-header [header]=\"_layout?.setting?.pageTitle\" [breadcrumbs]=\"breadcrumbs\">\r\n    <div actionContent>\r\n        <!--Add action-->\r\n        <ng-container *ngIf=\"_layout?.setting?.addOption?.enable\">\r\n            <button type=\"button\" pButton pRipple class=\"p-button-sm p-button-outlined\" (click)=\"handleAdd()\"\r\n                [label]=\"_layout?.setting?.addOption?.label\"></button>\r\n        </ng-container>\r\n        <!--action content-->\r\n        <ng-content select=\"[headerActionContent]\"></ng-content>\r\n    </div>\r\n    <!--Header Main Content-->\r\n    <ng-content select=\"[headerMainContent]\"></ng-content>\r\n</ngx-header>\r\n\r\n<!-- Content -->\r\n<div>\r\n    <!--For top content-->\r\n    <ng-content></ng-content>\r\n    <!--Main Content-->\r\n    <div class=\"row\">\r\n        <div class=\"col-12\">\r\n            <!-- Header -->\r\n            <div class=\"card shadow\">\r\n                <!--Search-->\r\n                <ng-container *ngIf=\"_layout?.setting?.enableSearch\">\r\n                    <ngx-search (onSearch)=\"handleSearch($event)\">\r\n                        <ng-content select=\"[searchContent]\"></ng-content>\r\n                    </ngx-search>\r\n                </ng-container>\r\n\r\n                <!--Ngx Table-->\r\n                <ngx-primeng-basic-grid [key]=\"_layout?.setting?.pk\" [columns]=\"_layout?.columns\" [result]=\"result\"\r\n                    [filter]=\"filter\" (onFilterChanged)=\"handleFilterChanged($event)\" (action)=\"handleAction($event)\"\r\n                    (rowChecked)=\"handleOnRowSelected($event)\" [loading]=\"loading\">\r\n\r\n                    <!--Custom column-->\r\n                    <ng-template gridTemplate=\"custom\" let-row=\"row\" let-column=\"column\">\r\n                        <ng-container *ngTemplateOutlet=\"customColumnTemplate;context:{row:row,column:column}\">\r\n                        </ng-container>\r\n                    </ng-template>\r\n\r\n                </ngx-primeng-basic-grid>\r\n            </div>\r\n        </div>\r\n    </div>\r\n    <!--Footer content-->\r\n    <ng-content select=[footer]></ng-content>\r\n</div>","styles":[""]}]}],"members":{"templates":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":16,"character":3},"arguments":[{"__symbolic":"reference","module":"ngx-primeng-grid","name":"GridCustomTemplate","line":16,"character":19}]}]}],"result":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"filter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":22,"character":3}}]}],"loading":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":24,"character":3}}]}],"layout":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":26,"character":3}}]}],"onAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":34,"character":3}}]}],"onFilter":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":36,"character":3}}]}],"onSearch":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":38,"character":3}}]}],"breadcrumbs":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":40,"character":3}}]}],"onRowSelected":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":42,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/router","name":"Router","line":47,"character":30}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterContentInit":[{"__symbolic":"method"}],"handleAdd":[{"__symbolic":"method"}],"handleAction":[{"__symbolic":"method"}],"handleFilterChanged":[{"__symbolic":"method"}],"handleSearch":[{"__symbolic":"method"}],"handleOnRowSelected":[{"__symbolic":"method"}]}},"NgxManageActionLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"ngx-manage-action-layout","template":"<form [formGroup]=\"form\" autocomplete=\"off\">\r\n    <!--Content-->\r\n    <div>\r\n        <ng-content></ng-content>\r\n    </div>\r\n    <!--Action-->\r\n    <div class=\"d-flex justify-content-end\">\r\n        <hr class=\"m-2\" />\r\n        <button *ngFor=\"let item of actions\" type=\"button\" pButton pRipple class=\"{{item.styleClass}}\"\r\n            (click)=\"handleAction(item)\" [label]=\"item.name\"></button>\r\n    </div>\r\n</form>\r\n<!--Confirm dialog-->\r\n<p-confirmDialog appendTo=\"body\" [key]=\"dialogKey\"></p-confirmDialog>","styles":[""]}]}],"members":{"actions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":15,"character":3}}]}],"confirmations":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":17,"character":3}}]}],"form":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":19,"character":3}}]}],"onAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":21,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"NgxValidationService"},{"__symbolic":"reference","module":"primeng/api","name":"ConfirmationService","line":26,"character":27}]}],"ngOnInit":[{"__symbolic":"method"}],"handleAction":[{"__symbolic":"method"}],"checkConfirmation":[{"__symbolic":"method"}]}},"NgxManageLayoutBaseComponent":{"__symbolic":"class","arity":2,"extends":{"__symbolic":"reference","name":"FormBaseComponent"},"members":{"getSearchService":[{"__symbolic":"method"}],"getDeleteService":[{"__symbolic":"method"}],"getChangeStatusService":[{"__symbolic":"method"}],"getManageDialogComponent":[{"__symbolic":"method"}],"handleRowAction":[{"__symbolic":"method"}],"getExtraDialogData":[{"__symbolic":"method"}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":47,"character":32}]}],"prepareLayoutFromRouter":[{"__symbolic":"method"}],"prepareLayoutFromService":[{"__symbolic":"method"}],"prepareLayout":[{"__symbolic":"method"}],"handleOnAction":[{"__symbolic":"method"}],"handleOnFilter":[{"__symbolic":"method"}],"initFilter":[{"__symbolic":"method"}],"handleOnSearch":[{"__symbolic":"method"}],"handleOnRowSelected":[{"__symbolic":"method"}],"handleTableAction":[{"__symbolic":"method"}],"openManageDialog":[{"__symbolic":"method"}],"handleDelete":[{"__symbolic":"method"}],"handleStatusChange":[{"__symbolic":"method"}],"doSearch":[{"__symbolic":"method"}],"overrideLayout":[{"__symbolic":"method"}],"overrideFilter":[{"__symbolic":"method"}],"overrideAction":[{"__symbolic":"method"}],"overrideHttpCallPreAction":[{"__symbolic":"method"}],"overrideHttpCallPostAction":[{"__symbolic":"method"}]}},"NgxManageLayoutDialogBaseComponent":{"__symbolic":"class","arity":1,"extends":{"__symbolic":"reference","name":"DialogFormBaseComponent"},"members":{"handleOnAction":[{"__symbolic":"method"}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":16,"character":37}]}],"loadForm":[{"__symbolic":"method"}],"processData":[{"__symbolic":"method"}],"handleAction":[{"__symbolic":"method"}],"getActionFormValue":[{"__symbolic":"method"}],"overrideSetFormDataPreAction":[{"__symbolic":"method"}],"overrideSetFormDataPostAction":[{"__symbolic":"method"}]}},"NgxWrapperSharedModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":22,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"NgxInlineLoaderComponent"},{"__symbolic":"reference","name":"NgxSearchComponent"},{"__symbolic":"reference","name":"NgxHeaderComponent"},{"__symbolic":"reference","name":"NgxCardLayoutComponent"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"NgxListDataViewComponent"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":25,"character":8},{"__symbolic":"reference","module":"primeng/button","name":"ButtonModule","line":26,"character":8},{"__symbolic":"reference","module":"primeng/progressspinner","name":"ProgressSpinnerModule","line":27,"character":8},{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":28,"character":8}],"exports":[{"__symbolic":"reference","name":"NgxInlineLoaderComponent"},{"__symbolic":"reference","name":"NgxSearchComponent"},{"__symbolic":"reference","name":"NgxHeaderComponent"},{"__symbolic":"reference","name":"NgxCardLayoutComponent"},{"__symbolic":"reference","name":"ɵa"},{"__symbolic":"reference","name":"NgxListDataViewComponent"}]}]}],"members":{}},"NgxSearchComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"ngx-search","template":"<div class=\"card-header\">\r\n    <!-- Form -->\r\n    <div class=\"row align-items-center\">\r\n        <div class=\"col\">\r\n            <div class=\"input-group input-group-flush input-group-merge\">\r\n                <!-- Input -->\r\n                <input type=\"search\" class=\"form-control form-control-prepended list-search\" [placeholder]=\"placeholder\"\r\n                    autocomplete=\"off\" (input)=\"handleSearch($event.target.value)\">\r\n                <!-- Prepend -->\r\n                <div class=\"input-group-prepend\">\r\n                    <div class=\"input-group-text\">\r\n                        <span class=\"pi pi-search\"></span>\r\n                    </div>\r\n                </div>\r\n            </div>\r\n        </div>\r\n        <!--Content-->\r\n        <ng-content></ng-content>\r\n    </div>\r\n\r\n</div>","styles":[""]}]}],"members":{"placeholder":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":3}}]}],"onSearch":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":14,"character":3}}]}],"ngOnInit":[{"__symbolic":"method"}],"handleSearch":[{"__symbolic":"method"}]}},"NgxInlineLoaderComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"ngx-inline-loader","template":"<div class=\"text-center\">\r\n    <div>\r\n        <p-progressSpinner></p-progressSpinner>\r\n    </div>\r\n    <strong class=\"d-block\">{{label}}</strong>\r\n</div>","styles":[""]}]}],"members":{"label":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"NgxHeaderComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"ngx-header","template":"<div class=\"header\">\r\n    <div class=\"header-body\">\r\n        <div class=\"row align-items-center\">\r\n            <div class=\"col\">\r\n                <h6 class=\"header-pretitle\" *ngIf=\"breadcrumbs && breadcrumbs.length>0\">\r\n                    <ng-container *ngFor=\"let item of breadcrumbs\">\r\n                        <ng-container *ngIf=\"item.path\">\r\n                            <a [routerLink]=\"item.path\">{{item.name}}</a> / \r\n                        </ng-container>\r\n                        <ng-container *ngIf=\"!item.path\">{{item.name}}</ng-container>\r\n                    </ng-container>\r\n                </h6>\r\n                <h1 class=\"header-title\">{{header}}</h1>\r\n            </div>\r\n            <div class=\"col-auto\">\r\n                <ng-content select=\"[actionContent]\"></ng-content>\r\n            </div>\r\n        </div>\r\n        <!--Content-->\r\n        <ng-content></ng-content>\r\n    </div>\r\n</div>","styles":[""]}]}],"members":{"header":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":3}}]}],"breadcrumbs":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":13,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"NgxCardLayoutComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"ngx-card-layout","template":"<div class=\"card shadow\">\r\n    <div class=\"card-header\">\r\n        <div class=\"row align-items-center\">\r\n            <div class=\"col\">\r\n                <!-- Title -->\r\n                <h4 class=\"card-header-title\"><i class=\"{{headerIcon}}\"></i>{{header}}</h4>\r\n            </div>\r\n            <div class=\"col-auto\">\r\n                <!--Right Content-->\r\n                <ng-content select=\"[rightContent]\"></ng-content>\r\n            </div>\r\n        </div>\r\n    </div>\r\n    <!--content-->\r\n    <ng-content></ng-content>\r\n</div>","styles":[""]}]}],"members":{"header":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"headerIcon":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"NgxListDataViewComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":3,"character":1},"arguments":[{"selector":"ngx-list-data-view","template":"<div class=\"list-group list-group-flush\">\n    <!--Display Basic Info-->\n    <div class=\"list-group-item\" *ngFor=\"let item of items\">\n        <div class=\"row align-items-center\">\n            <div class=\"col\"><small>{{item.label}}</small></div>\n            <div class=\"col-auto\">\n                <ng-container [ngSwitch]=\"item.type\">\n                    <small class=\"text-muted\"\n                        *ngSwitchCase=\"_fieldType.dateUtc\">{{item.value|date:'mediumDate':'UTC'}}</small>\n                    <small class=\"text-muted\" *ngSwitchCase=\"_fieldType.date\">{{item.value|date:'mediumDate'}}</small>\n                    <small class=\"text-muted\" *ngSwitchDefault>{{item.value}}</small>\n                </ng-container>\n            </div>\n        </div>\n    </div>\n</div>","styles":[""]}]}],"members":{"items":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"IBreadcrumb":{"__symbolic":"interface"},"IListDataView":{"__symbolic":"interface"},"ListViewDataType":{"text":"text","number":"number","date":"date","dateUtc":"date_utc","dateTicks":"date_ticks","dateUtcTicks":"date_utc_ticks"},"NgxCrudLayoutModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":15,"character":1},"arguments":[{"declarations":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"ɵe"}],"entryComponents":[{"__symbolic":"reference","name":"ɵc"}],"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":24,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"FormsModule","line":25,"character":4},{"__symbolic":"reference","module":"@angular/forms","name":"ReactiveFormsModule","line":26,"character":4},{"__symbolic":"reference","module":"ngx-primeng-grid","name":"NgxPrimengGridModule","line":27,"character":4},{"__symbolic":"reference","name":"NgxWrapperSharedModule"},{"__symbolic":"reference","module":"primeng/button","name":"ButtonModule","line":29,"character":4},{"__symbolic":"reference","module":"ngx-primeng-form","name":"NgxPrimengFormModule","line":30,"character":4},{"__symbolic":"reference","module":"primeng/dynamicdialog","name":"DynamicDialogModule","line":31,"character":4},{"__symbolic":"reference","module":"primeng/confirmdialog","name":"ConfirmDialogModule","line":32,"character":4}],"providers":[{"__symbolic":"reference","module":"primeng/dynamicdialog","name":"DialogService","line":35,"character":4},{"__symbolic":"reference","module":"primeng/api","name":"ConfirmationService","line":36,"character":4}],"exports":[{"__symbolic":"reference","name":"ɵe"},{"__symbolic":"reference","name":"ɵd"},{"__symbolic":"reference","name":"ɵb"}]}]}],"members":{}},"INgxCrudRouteConfig":{"__symbolic":"interface"},"INgxCrudLayout":{"__symbolic":"interface"},"INgxCrudLayoutApiConfig":{"__symbolic":"interface"},"NgxCrudLayoutSetting_ManageConfig_Mode":{"modal":"modal","custom":"custom"},"INgxCrudLayoutSettingManageActionConfig":{"__symbolic":"interface"},"INgxCrudLayoutSettingConfig":{"__symbolic":"interface"},"INgxCrudLayoutFormConfig":{"__symbolic":"interface"},"INgxCrudAction":{"__symbolic":"interface"},"INgxCrudActionCallback":{"__symbolic":"interface"},"INgxCrudLayoutDialogData":{"__symbolic":"interface"},"NgxCrudService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":9,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"prepareLayout":[{"__symbolic":"method"}],"prepareFormRoute":[{"__symbolic":"method"}],"prepareApiConfig":[{"__symbolic":"method"}],"prepareSettingConfig":[{"__symbolic":"method"}],"prepareManageConfigSetting":[{"__symbolic":"method"}],"prepareGridConfigSetting":[{"__symbolic":"method"}],"prepareFormConfig":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"NgxValidationService":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Injectable","line":3,"character":1},"arguments":[{"providedIn":"root"}]}],"members":{"__ctor__":[{"__symbolic":"constructor"}],"fireFormControlValidation":[{"__symbolic":"method"}],"fireFormGroupValidation":[{"__symbolic":"method"}],"fireFormArrayValidation":[{"__symbolic":"method"}]},"statics":{"ɵprov":{}}},"ɵa":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":2,"character":1},"arguments":[{"selector":"ngx-fullpage-loader","template":"<div class=\"full-page-loader\">\n    <div class=\"loader-area\">\n        <ngx-inline-loader [label]=\"label\"></ngx-inline-loader>\n    </div>\n</div>\n","styles":[".full-page-loader{height:90vh}.full-page-loader .loader-area{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}"]}]}],"members":{"label":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":9,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor"}],"ngOnInit":[{"__symbolic":"method"}]}},"ɵb":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"DynamicFormBaseComponent"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":9,"character":1},"arguments":[{"selector":"ngx-crud-manage","template":"<ngx-crud-manage-layout [form]=\"form\" (onAction)=\"handleOnAction($event)\" [actions]=\"layout?.form?.actions\">\n    <ngx-primeng-form [form]=\"form\" [items]=\"_formItems\"></ngx-primeng-form>\n</ngx-crud-manage-layout>","styles":[""]}]}],"members":{"layout":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":20,"character":3}}]}],"onAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":22,"character":3}}]}],"data":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":25,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":27,"character":24},{"__symbolic":"reference","module":"@angular/forms","name":"FormBuilder","line":28,"character":25}]}],"ngOnInit":[{"__symbolic":"method"}],"loadForm":[{"__symbolic":"method"}],"handleOnAction":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"DialogFormBaseComponent"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":7,"character":1},"arguments":[{"selector":"ngx-crud-manage-dialog","template":"<ngx-crud-manage [layout]=\"_layout\" (onAction)=\"handleOnAction($event)\" [data]=\"_data\"></ngx-crud-manage>","styles":[""]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":19,"character":24}]}],"ngOnInit":[{"__symbolic":"method"}],"handleOnAction":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"FormBaseComponent"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":6,"character":1},"arguments":[{"selector":"ngx-crud-manage-layout","template":"<form [formGroup]=\"form\" autocomplete=\"off\">\n    <!--Content-->\n    <div>\n        <ng-content></ng-content>\n    </div>\n    <!--Action-->\n    <hr class=\"m-3\" />\n    <div class=\"d-flex justify-content-end\">\n        <button *ngFor=\"let item of actions\" type=\"button\" pButton pRipple class=\"{{item.styleClass}}\"\n            (click)=\"handleAction(item)\" [label]=\"item.name\"></button>\n    </div>\n</form>\n<!--Confirm dialog-->\n<p-confirmDialog appendTo=\"body\" [key]=\"_dialogKey\"></p-confirmDialog>","styles":[""]}]}],"members":{"actions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":14,"character":3}}]}],"form":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":16,"character":3}}]}],"onAction":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":18,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":23,"character":24},{"__symbolic":"reference","module":"primeng/api","name":"ConfirmationService","line":24,"character":27}]}],"ngOnInit":[{"__symbolic":"method"}],"prepareDefaultActions":[{"__symbolic":"method"}],"handleAction":[{"__symbolic":"method"}],"checkConfirmation":[{"__symbolic":"method"}]}},"ɵe":{"__symbolic":"class","extends":{"__symbolic":"reference","name":"BaseComponent"},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":13,"character":1},"arguments":[{"selector":"ngx-crud-grid","template":"<!-- Header -->\n<ngx-header [header]=\"_layout?.setting?.pageTitle\" [breadcrumbs]=\"_layout?.setting?.gridConfig?.breadcrumbs\">\n    <div actionContent>\n        <!--manage action-->\n        <ng-container *ngFor=\"let action of _layout?.setting?.actionConfig?.actions\">\n            <button type=\"button\" pButton pRipple [class]=\"action?.styleClass\" (click)=\"handleActionClick(action)\"\n                [label]=\"action?.label\" [icon]=\"action?.icon\"></button>\n        </ng-container>\n        <!--action content-->\n        <ng-content select=\"[headerActionContent]\"></ng-content>\n    </div>\n    <!--Header Main Content-->\n    <ng-content select=\"[headerMainContent]\"></ng-content>\n</ngx-header>\n\n<!-- Content -->\n<div>\n    <!--For top content-->\n    <ng-content></ng-content>\n    <!--Main Content-->\n    <div class=\"row\">\n        <div class=\"col-12\">\n            <!-- Header -->\n            <div class=\"card shadow\">\n                <!--Search-->\n                <ng-container *ngIf=\"_layout?.setting?.gridConfig?.enableSearch\">\n                    <ngx-search (onSearch)=\"handleSearch($event)\">\n                        <ng-content select=\"[searchContent]\"></ng-content>\n                    </ngx-search>\n                </ng-container>\n\n                <!--Ngx Table-->\n                <ngx-primeng-basic-grid [key]=\"_layout?.setting?.gridConfig?.pk\" [columns]=\"_layout?.columns\"\n                    [result]=\"_result\" [filter]=\"_filter\" (onFilterChanged)=\"handleFilterChanged($event)\"\n                    [loading]=\"_loading\">\n\n                    <!--Custom column-->\n                    <ng-template gridTemplate=\"custom\" let-row=\"row\" let-column=\"column\">\n                        <!--Custom column-->\n                        <ng-container *ngTemplateOutlet=\"_customColumnTemplate;context:{row:row,column:column}\">\n                        </ng-container>\n\n                        <!--For action column-->\n                        <ng-container *ngIf=\"column.key=='action'\">\n                            <!--Edit-->\n                            <button pButton pRipple type=\"button\" icon=\"pi pi-pencil\"\n                                class=\"p-button-rounded p-button-text p-button-sm mr-2\" *ngIf=\"row?.action?.edit\"\n                                (click)=\"onActionEdit(row)\"></button>\n                            <!--Delete-->\n                            <button pButton pRipple type=\"button\" icon=\"pi pi-trash\"\n                                class=\"p-button-rounded p-button-text p-button-sm p-button-danger\"\n                                *ngIf=\"row?.action?.delete\" (click)=\"onActionDelete(row)\"></button>\n                        </ng-container>\n\n                    </ng-template>\n\n                </ngx-primeng-basic-grid>\n            </div>\n        </div>\n    </div>\n    <!--Footer content-->\n    <ng-content select=[footer]></ng-content>\n</div>\n\n<!--Confirm dialog-->\n<p-confirmDialog appendTo=\"body\" [key]=\"_dialogKey\"></p-confirmDialog>","styles":[""]}]}],"members":{"templates":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":21,"character":3},"arguments":[{"__symbolic":"reference","module":"ngx-primeng-grid","name":"GridCustomTemplate","line":21,"character":19}]}]}],"layout":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":27,"character":3}}]}],"breadcrumbs":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":34,"character":3}}]}],"onReady":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":36,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"primeng/dynamicdialog","name":"DialogService","line":46,"character":30},{"__symbolic":"reference","module":"primeng/api","name":"ConfirmationService","line":47,"character":27}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterContentInit":[{"__symbolic":"method"}],"handleActionClick":[{"__symbolic":"method"}],"getModalActionAction":[{"__symbolic":"method"}],"openManageDialog":[{"__symbolic":"method"}],"handleFilterChanged":[{"__symbolic":"method"}],"handleSearch":[{"__symbolic":"method"}],"onActionEdit":[{"__symbolic":"method"}],"onActionDelete":[{"__symbolic":"method"}],"invokeGridAction":[{"__symbolic":"method"}],"initFilter":[{"__symbolic":"method"}],"lodResult":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}]}}},"origins":{"NgxWrapperModule":"./lib/ngx-wrapper.module","BaseComponent":"./lib/core/_base/base","DialogBaseComponent":"./lib/core/_base/dialog.base","DynamicFormBaseComponent":"./lib/core/_base/dynamic-form.base","FormBaseComponent":"./lib/core/_base/form.base","DialogFormBaseComponent":"./lib/core/_base/dialog-form.base","INgxResult":"./lib/core/_interfaces/iresult","INgxFilter":"./lib/core/_interfaces/iresult","NgxUtility":"./lib/core/_utility/utility","NgxLambdaUtility":"./lib/core/_utility/lambda-utility","NgxManageLayoutModule":"./lib/ngx-manage-layout/ngx-manage-layout.module","INgxManageLayoutAction":"./lib/ngx-manage-layout/models/ngx-manage-layout.model","INgxManageLayoutApi":"./lib/ngx-manage-layout/models/ngx-manage-layout.model","INgxManageLayoutSetting":"./lib/ngx-manage-layout/models/ngx-manage-layout.model","INgxManageLayoutSettingAddOption":"./lib/ngx-manage-layout/models/ngx-manage-layout.model","INgxManageLayout":"./lib/ngx-manage-layout/models/ngx-manage-layout.model","INgxManageLayoutDialogData":"./lib/ngx-manage-layout/models/ngx-manage-layout.model","INgxManageLayoutForm":"./lib/ngx-manage-layout/models/ngx-manage-layout.model","INgxManageLayoutActionButton":"./lib/ngx-manage-layout/models/ngx-manage-layout.model","INgxManageLayoutConfirmation":"./lib/ngx-manage-layout/models/ngx-manage-layout.model","NgxManageLayoutService":"./lib/ngx-manage-layout/services/ngx-manage-layout.service","NgxManageLayoutComponent":"./lib/ngx-manage-layout/views/ngx-manage-layout/ngx-manage-layout.component","NgxManageActionLayoutComponent":"./lib/ngx-manage-layout/views/ngx-manage-action-layout/ngx-manage-action-layout.component","NgxManageLayoutBaseComponent":"./lib/ngx-manage-layout/wrapper/ngx-manage-layout.base","NgxManageLayoutDialogBaseComponent":"./lib/ngx-manage-layout/wrapper/ngx-manage-layout-dialog.base","NgxWrapperSharedModule":"./lib/ngx-wrapper-shared/ngx-wrapper.shared.module","NgxSearchComponent":"./lib/ngx-wrapper-shared/ngx-search/ngx-search.component","NgxInlineLoaderComponent":"./lib/ngx-wrapper-shared/ngx-inline-loader/ngx-inline-loader.component","NgxHeaderComponent":"./lib/ngx-wrapper-shared/ngx-header/ngx-header.component","NgxCardLayoutComponent":"./lib/ngx-wrapper-shared/ngx-card-layout/ngx-card-layout.component","NgxListDataViewComponent":"./lib/ngx-wrapper-shared/ngx-list-data-view/ngx-list-data-view.component","IBreadcrumb":"./lib/ngx-wrapper-shared/models/breadcrumb","IListDataView":"./lib/ngx-wrapper-shared/models/list-data-view","ListViewDataType":"./lib/ngx-wrapper-shared/models/list-data-view","NgxCrudLayoutModule":"./lib/ngx-crud-layout/ngx-crud-layout.module","INgxCrudRouteConfig":"./lib/ngx-crud-layout/_models/_crud-config","INgxCrudLayout":"./lib/ngx-crud-layout/_models/_crud-layout","INgxCrudLayoutApiConfig":"./lib/ngx-crud-layout/_models/_crud-layout","NgxCrudLayoutSetting_ManageConfig_Mode":"./lib/ngx-crud-layout/_models/_crud-layout","INgxCrudLayoutSettingManageActionConfig":"./lib/ngx-crud-layout/_models/_crud-layout","INgxCrudLayoutSettingConfig":"./lib/ngx-crud-layout/_models/_crud-layout","INgxCrudLayoutFormConfig":"./lib/ngx-crud-layout/_models/_crud-layout","INgxCrudAction":"./lib/ngx-crud-layout/_models/_crud-manage","INgxCrudActionCallback":"./lib/ngx-crud-layout/_models/_crud-manage","INgxCrudLayoutDialogData":"./lib/ngx-crud-layout/_models/_crud-manage","NgxCrudService":"./lib/ngx-crud-layout/_services/ngx-crud.service","NgxValidationService":"./lib/services/ngx-validation.service","ɵa":"./lib/ngx-wrapper-shared/ngx-fullpage-loader/ngx-fullpage-loader.component","ɵb":"./lib/ngx-crud-layout/components/ngx-crud-manage/ngx-crud-manage.component","ɵc":"./lib/ngx-crud-layout/components/ngx-crud-manage-dialog/ngx-crud-manage-dialog.component","ɵd":"./lib/ngx-crud-layout/components/ngx-crud-manage-layout/ngx-crud-manage-layout.component","ɵe":"./lib/ngx-crud-layout/components/ngx-crud-grid/ngx-crud-grid.component"},"importAs":"ngx-wrapper"}