@pepperi-addons/ngx-composite-lib 0.4.2-beta.58 → 0.4.2-beta.59
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/esm2020/generic-list/generic-list.component.mjs +7 -2
- package/esm2020/manage-parameters/manage-parameters.component.mjs +1 -1
- package/esm2020/rich-text/rich-text.component.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-generic-list.mjs +6 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-generic-list.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-manage-parameters.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-manage-parameters.mjs.map +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-rich-text.mjs +1 -1
- package/fesm2015/pepperi-addons-ngx-composite-lib-rich-text.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-generic-list.mjs +6 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-generic-list.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-manage-parameters.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-manage-parameters.mjs.map +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-rich-text.mjs +1 -1
- package/fesm2020/pepperi-addons-ngx-composite-lib-rich-text.mjs.map +1 -1
- package/generic-list/generic-list.component.d.ts +2 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-composite-lib-rich-text.mjs","sources":["../../../projects/ngx-composite-lib/rich-text/rich-text.service.ts","../../../projects/ngx-composite-lib/rich-text/rich-text.component.ts","../../../projects/ngx-composite-lib/rich-text/rich-text.component.html","../../../projects/ngx-composite-lib/rich-text/rich-text.module.ts","../../../projects/ngx-composite-lib/rich-text/public-api.ts","../../../projects/ngx-composite-lib/rich-text/pepperi-addons-ngx-composite-lib-rich-text.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\nimport { PepHttpService, PepSessionService } from '@pepperi-addons/ngx-lib';\nimport { lastValueFrom } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RichTextService {\n \n constructor(\n private httpService: PepHttpService\n ) {\n }\n \n async searchFlows(flowKey: string): Promise<any> {\n return lastValueFrom(await this.httpService.postPapiApiCall('/user_defined_flows/search', { KeyList: [flowKey], Fields: ['Key', 'Name']}));\n }\n}","import { AfterViewInit, Component, EventEmitter, Input, OnInit, Output, ViewContainerRef } from '@angular/core';\nimport { PepAddonBlockLoaderService } from '@pepperi-addons/ngx-lib/remote-loader';\nimport { RichTextService } from './rich-text.service';\nimport { DEFAULT_HORIZONTAL_ALIGNMENT, PepHorizontalAlignment, PepLayoutType } from '@pepperi-addons/ngx-lib';\nimport { FormGroup } from '@angular/forms';\nimport { IPepRichHtmlTextareaToolbarOptions } from '@pepperi-addons/ngx-lib/rich-html-textarea';\nimport Quill from 'quill';\n\n@Component({\n selector: 'pep-rich-text',\n templateUrl: './rich-text.component.html',\n styleUrls: ['./rich-text.component.scss']\n})\nexport class RichTextComponent implements OnInit {\n\n @Input() key = '';\n @Input() value = '';\n @Input() label = '';\n @Input() mandatory = false;\n @Input() disabled = false;\n @Input() readonly = false;\n @Input() maxFieldCharacters = 300;\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n @Input() sanitize = true;\n @Input() rowSpan = 1;\n @Input() visible = true;\n @Input() isActive = false;\n @Input() showTitle = true;\n @Input() renderTitle = true;\n @Input() renderEnlargeButton = true;\n @Input() layoutType: PepLayoutType = 'form';\n @Input() inlineMode = false;\n @Input() useAssetsForImages = true;\n \n private quillEditor: any;\n protected _toolbarOptions: IPepRichHtmlTextareaToolbarOptions = this.getDefaultToolbarOptions();\n @Input()\n get toolbarOptions(): IPepRichHtmlTextareaToolbarOptions {\n return this._toolbarOptions;\n }\n set toolbarOptions(options: IPepRichHtmlTextareaToolbarOptions) {\n if (options) {\n this._toolbarOptions = options;\n }\n }\n\n @Output()\n valueChange: EventEmitter<any> = new EventEmitter<any>();\n\n constructor(\n private viewContainerRef: ViewContainerRef,\n private addonBlockLoaderService: PepAddonBlockLoaderService, \n private RichTextService: RichTextService) { \n this.toolbarOptions = this.getDefaultToolbarOptions();\n }\n\n ngOnInit() {\n // Do nothing.\n \n }\n\n\n getDefaultToolbarOptions(): IPepRichHtmlTextareaToolbarOptions {\n return {\n font: false,\n size: false,\n header: true,\n bold: true,\n italic: true,\n underline: true,\n strike: false,\n link: true,\n image: { useAssetsABI : true },\n ordered: true,\n bullet: true,\n color: true,\n background: false,\n align: true\n };\n }\n\n onEditorOpen(editor: any){\n this.quillEditor = editor;\n\n if(this.useAssetsForImages){\n const imageButton = document.querySelector('.ql-image');\n const newButton = document.querySelector('.quill-editor-image-btn')?.cloneNode(true);\n \n if(imageButton && newButton){\n newButton.addEventListener(\"click\", () => { this.openAssetsPickerDialog();});\n //newButton.addEventListener(\"click\", () => { this.insertAssets('https://pfs.pepperi.com/50d42a3f-f21d-40fa-8c24-a1359b04dbb7/ad909780-0c23-401e-8e8e-f514cc4f6aa2/Assets/logo.jpg');});\n imageButton.parentNode?.appendChild(newButton);\n imageButton.setAttribute('style','display:none'); \n }\n }\n }\n \n openAssetsPickerDialog() {\n const dialogRef = this.addonBlockLoaderService.loadAddonBlockInDialog({\n container: this.viewContainerRef,\n name: 'AssetPicker',\n hostObject: {\n selectionType: 'single',\n allowedAssetsTypes: 'images',\n inDialog: true\n },\n size: 'full-screen',\n hostEventsCallback: async (event) => {\n if (event?.action === 'on-save') {\n if(event.url){\n this.insertAssets(event.url);\n }\n dialogRef?.close();\n } else if (event.action === 'on-cancel') {\n dialogRef?.close();\n }\n }\n });\n }\n\n insertAssets(assetUrl: string){\n const range = this.quillEditor.getSelection() || { index: 0, length: 0};\n this.quillEditor.insertEmbed(range.index, 'image', assetUrl);\n }\n\n valueChanged(event: any){\n this.valueChange.emit(event);\n }\n}\n","<pep-rich-html-textarea [key]=\"key\" \n [value]=\"value\"\n [label]=\"label\" \n [mandatory]=\"mandatory\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [maxFieldCharacters]=\"maxFieldCharacters\" \n [xAlignment]=\"xAlignment\" \n [toolbarOptions]=\"toolbarOptions\"\n [rowSpan]=\"rowSpan\" \n [visible]=\"visible\"\n \n [isActive]=\"isActive\"\n [showTitle]=\"showTitle\"\n [renderTitle]=\"renderTitle\"\n [renderEnlargeButton]=\"renderEnlargeButton\"\n [layoutType]=\"layoutType\"\n [inlineMode]=\"inlineMode\"\n (editorCreated)=\"onEditorOpen($event)\"\n (valueChange)=\"valueChanged($event)\">\n</pep-rich-html-textarea>\n<pep-button [sizeType]=\"'sm'\" [classNames]=\"'pep-spacing-element quill-editor-image-btn'\" \n [iconName]=\"'system_image'\" (buttonClick)=\"openAssetsPickerDialog()\">\n</pep-button>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepRichHtmlTextareaModule } from '@pepperi-addons/ngx-lib/rich-html-textarea';\nimport { PepRemoteLoaderModule } from '@pepperi-addons/ngx-lib/remote-loader';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { RichTextComponent } from './rich-text.component';\nimport { RichTextService } from './rich-text.service';\nimport { \n PepIconModule,\n PepIconRegistry,\n pepIconSystemImage\n} from '@pepperi-addons/ngx-lib/icon';\n\nconst pepIcons = [\n pepIconSystemImage\n];\n\n@NgModule({\n declarations: [\n RichTextComponent\n ],\n imports: [\n CommonModule,\n PepNgxLibModule,\n PepIconModule,\n PepButtonModule,\n PepRichHtmlTextareaModule,\n PepRemoteLoaderModule\n ],\n providers: [RichTextService],\n exports: [RichTextComponent],\n})\nexport class PepRichTextModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/flow-picker-button\n */\nexport * from './rich-text.module';\nexport * from './rich-text.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2.RichTextService"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-composite-lib-rich-text.mjs","sources":["../../../projects/ngx-composite-lib/rich-text/rich-text.service.ts","../../../projects/ngx-composite-lib/rich-text/rich-text.component.ts","../../../projects/ngx-composite-lib/rich-text/rich-text.component.html","../../../projects/ngx-composite-lib/rich-text/rich-text.module.ts","../../../projects/ngx-composite-lib/rich-text/public-api.ts","../../../projects/ngx-composite-lib/rich-text/pepperi-addons-ngx-composite-lib-rich-text.ts"],"sourcesContent":["import { Injectable } from \"@angular/core\";\nimport { PepHttpService, PepSessionService } from '@pepperi-addons/ngx-lib';\nimport { lastValueFrom } from \"rxjs\";\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RichTextService {\n \n constructor(\n private httpService: PepHttpService\n ) {\n }\n \n async searchFlows(flowKey: string): Promise<any> {\n return lastValueFrom(await this.httpService.postPapiApiCall('/user_defined_flows/search', { KeyList: [flowKey], Fields: ['Key', 'Name']}));\n }\n}","import { AfterViewInit, Component, EventEmitter, Input, OnInit, Output, ViewContainerRef } from '@angular/core';\nimport { PepAddonBlockLoaderService } from '@pepperi-addons/ngx-lib/remote-loader';\nimport { RichTextService } from './rich-text.service';\nimport { DEFAULT_HORIZONTAL_ALIGNMENT, PepHorizontalAlignment, PepLayoutType } from '@pepperi-addons/ngx-lib';\nimport { FormGroup } from '@angular/forms';\nimport { IPepRichHtmlTextareaToolbarOptions } from '@pepperi-addons/ngx-lib/rich-html-textarea';\nimport Quill from 'quill';\n\n@Component({\n selector: 'pep-rich-text',\n templateUrl: './rich-text.component.html',\n styleUrls: ['./rich-text.component.scss']\n})\nexport class RichTextComponent implements OnInit {\n\n @Input() key = '';\n @Input() value = '';\n @Input() label = '';\n @Input() mandatory = false;\n @Input() disabled = false;\n @Input() readonly = false;\n @Input() maxFieldCharacters = 300;\n @Input() xAlignment: PepHorizontalAlignment = DEFAULT_HORIZONTAL_ALIGNMENT;\n @Input() sanitize = true;\n @Input() rowSpan = 1;\n @Input() visible = true;\n @Input() isActive = false;\n @Input() showTitle = true;\n @Input() renderTitle = true;\n @Input() renderEnlargeButton = true;\n @Input() layoutType: PepLayoutType = 'form';\n @Input() inlineMode = false;\n @Input() useAssetsForImages = true;\n \n private quillEditor: any;\n protected _toolbarOptions: IPepRichHtmlTextareaToolbarOptions = this.getDefaultToolbarOptions();\n @Input()\n get toolbarOptions(): IPepRichHtmlTextareaToolbarOptions {\n return this._toolbarOptions;\n }\n set toolbarOptions(options: IPepRichHtmlTextareaToolbarOptions) {\n if (options) {\n this._toolbarOptions = options;\n }\n }\n\n @Output()\n valueChange: EventEmitter<any> = new EventEmitter<any>();\n\n constructor(\n private viewContainerRef: ViewContainerRef,\n private addonBlockLoaderService: PepAddonBlockLoaderService, \n private RichTextService: RichTextService) { \n this.toolbarOptions = this.getDefaultToolbarOptions();\n }\n\n ngOnInit() {\n // Do nothing.\n \n }\n\n\n getDefaultToolbarOptions(): IPepRichHtmlTextareaToolbarOptions {\n return {\n font: false,\n size: false,\n header: true,\n bold: true,\n italic: true,\n underline: true,\n strike: false,\n link: true,\n image: { useAssetsABI : true },\n ordered: true,\n bullet: true,\n color: true,\n background: false,\n align: true\n };\n }\n\n onEditorOpen(editor: any){\n this.quillEditor = editor;\n\n if(this.useAssetsForImages){\n const imageButton = document.querySelector('.ql-image');\n const newButton = document.querySelector('.quill-editor-image-btn')?.cloneNode(true);\n \n if(imageButton && newButton){\n newButton.addEventListener(\"click\", () => { this.openAssetsPickerDialog();});\n //newButton.addEventListener(\"click\", () => { this.insertAssets('https://pfs.pepperi.com/50d42a3f-f21d-40fa-8c24-a1359b04dbb7/ad909780-0c23-401e-8e8e-f514cc4f6aa2/Assets/logo.jpg');});\n imageButton.parentNode?.appendChild(newButton);\n imageButton.setAttribute('style','display:none'); \n }\n }\n }\n \n openAssetsPickerDialog() {\n const dialogRef = this.addonBlockLoaderService.loadAddonBlockInDialog({\n container: this.viewContainerRef,\n name: 'AssetPicker',\n hostObject: {\n selectionType: 'single',\n allowedAssetsTypes: 'images',\n inDialog: true\n },\n size: 'full-screen',\n hostEventsCallback: async (event) => {\n if (event?.action === 'on-save') {\n if(event.url){\n this.insertAssets(event.url);\n }\n dialogRef?.close();\n } else if (event.action === 'on-cancel') {\n dialogRef?.close();\n }\n }\n });\n }\n\n insertAssets(assetUrl: string){\n const range = this.quillEditor.getSelection() || { index: 0, length: 0};\n this.quillEditor.insertEmbed(range.index, 'image', assetUrl);\n }\n\n valueChanged(event: any){\n this.valueChange.emit(event);\n }\n}\n","<pep-rich-html-textarea [key]=\"key\" \n [value]=\"value\"\n [label]=\"label\" \n [mandatory]=\"mandatory\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [maxFieldCharacters]=\"maxFieldCharacters\" \n [xAlignment]=\"xAlignment\" \n [toolbarOptions]=\"toolbarOptions\"\n [rowSpan]=\"rowSpan\" \n [visible]=\"visible\"\n \n [isActive]=\"isActive\"\n [showTitle]=\"showTitle\"\n [renderTitle]=\"renderTitle\"\n [renderEnlargeButton]=\"renderEnlargeButton\"\n [layoutType]=\"layoutType\"\n [inlineMode]=\"inlineMode\"\n (editorCreated)=\"onEditorOpen($event)\"\n (valueChange)=\"valueChanged($event)\">\n</pep-rich-html-textarea>\n<pep-button [sizeType]=\"'sm'\" [classNames]=\"'pep-spacing-element quill-editor-image-btn'\" \n [iconName]=\"'system_image'\" (buttonClick)=\"openAssetsPickerDialog()\">\n</pep-button>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepRichHtmlTextareaModule } from '@pepperi-addons/ngx-lib/rich-html-textarea';\nimport { PepRemoteLoaderModule } from '@pepperi-addons/ngx-lib/remote-loader';\nimport { PepButtonModule } from '@pepperi-addons/ngx-lib/button';\nimport { RichTextComponent } from './rich-text.component';\nimport { RichTextService } from './rich-text.service';\nimport { \n PepIconModule,\n PepIconRegistry,\n pepIconSystemImage\n} from '@pepperi-addons/ngx-lib/icon';\n\nconst pepIcons = [\n pepIconSystemImage\n];\n\n@NgModule({\n declarations: [\n RichTextComponent\n ],\n imports: [\n CommonModule,\n PepNgxLibModule,\n PepIconModule,\n PepButtonModule,\n PepRichHtmlTextareaModule,\n PepRemoteLoaderModule\n ],\n providers: [RichTextService],\n exports: [RichTextComponent],\n})\nexport class PepRichTextModule {\n constructor(private pepIconRegistry: PepIconRegistry) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/flow-picker-button\n */\nexport * from './rich-text.module';\nexport * from './rich-text.component';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2.RichTextService"],"mappings":"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"}
|
|
@@ -203,6 +203,7 @@ class GenericListComponent {
|
|
|
203
203
|
this.noDataFoundMsg = '';
|
|
204
204
|
this.selectionType = 'multi';
|
|
205
205
|
this.supportSorting = false;
|
|
206
|
+
this.supportSortingFields = undefined;
|
|
206
207
|
this.cacheSize = -1;
|
|
207
208
|
this.hideSelectAll = false;
|
|
208
209
|
this.pager = {
|
|
@@ -319,6 +320,7 @@ class GenericListComponent {
|
|
|
319
320
|
componentRef.instance.lockItemInnerEvents = true;
|
|
320
321
|
}
|
|
321
322
|
componentRef.instance.supportSorting = this.listInputs.supportSorting;
|
|
323
|
+
componentRef.instance.supportSortingFields = this.listInputs.supportSortingFields;
|
|
322
324
|
componentRef.instance.sorting = this.listInputs.sorting;
|
|
323
325
|
componentRef.instance.cacheSize = this.listInputs.cacheSize;
|
|
324
326
|
componentRef.instance.selectionTypeForActions = this.listInputs.selectionType;
|
|
@@ -383,6 +385,7 @@ class GenericListComponent {
|
|
|
383
385
|
loadTableInputs() {
|
|
384
386
|
this.listInputs = {
|
|
385
387
|
supportSorting: this.supportSorting,
|
|
388
|
+
supportSortingFields: this.supportSortingFields,
|
|
386
389
|
sorting: this.sorting,
|
|
387
390
|
cacheSize: this.cacheSize,
|
|
388
391
|
hideSelectAll: this.hideSelectAll,
|
|
@@ -594,7 +597,7 @@ class GenericListComponent {
|
|
|
594
597
|
}
|
|
595
598
|
}
|
|
596
599
|
GenericListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: GenericListComponent, deps: [{ token: i1$1.PepDataConvertorService }, { token: i1$1.PepLayoutService }, { token: i1$1.PepLoaderService }, { token: i1.TranslateService }, { token: PepGenericListService }, { token: i1$1.PepSessionService }], target: i0.ɵɵFactoryTarget.Component });
|
|
597
|
-
GenericListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: GenericListComponent, selector: "pep-generic-list", inputs: { dataSource: "dataSource", actions: "actions", uuidMapping: "uuidMapping", disabled: "disabled", addPadding: "addPadding", title: "title", description: "description", inline: "inline", showSearch: "showSearch", noDataFoundMsg: "noDataFoundMsg", emptyState: "emptyState", selectionType: "selectionType", supportSorting: "supportSorting", sorting: "sorting", cacheSize: "cacheSize", hideSelectAll: "hideSelectAll", pager: "pager", tableViewType: "tableViewType", zebraStripes: "zebraStripes", smartFilter: "smartFilter", showTopBar: "showTopBar", breadCrumbsItems: "breadCrumbsItems", selectAll: "selectAll", scrollPosition: "scrollPosition" }, outputs: { fieldClick: "fieldClick", valueChange: "valueChange", breadCrumbItemClick: "breadCrumbItemClick", startIndexChange: "startIndexChange", listLoad: "listLoad" }, providers: [PepGenericListService], viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true }, { propertyName: "smartFiltersComponent", first: true, predicate: ["smartFiltersComponent"], descendants: true }, { propertyName: "pepListContainer", first: true, predicate: ["pepListContainer"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div *ngIf=\"inline\" class=\"inline-container\" [ngClass]=\"{ 'add-padding': addPadding, 'with-smart-filters': showSmartFilter }\">\n <div class=\"header-area\" >\n <div *ngIf=\"showTopBar\" class=\"inline-top-bar-container\">\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </div>\n <ng-container *ngIf=\"description\">\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\">\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n </div>\n <ng-container *ngIf=\"showSmartFilter\">\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!onLoad\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </ng-container>\n</div>\n<pep-page-layout *ngIf=\"!inline\" class=\"none-inline\" [addPadding]=\"addPadding\" [showShadow]=\"showSmartFilter\">\n <ng-container *ngIf=\"showSmartFilter\" pep-side-area>\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"showTopBar\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"description\" pep-top-area>\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n <div *ngIf=\"!onLoad\" pep-main-area class=\"main-area-container\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </div>\n</pep-page-layout>\n\n<ng-template #topBarTemplate>\n <pep-top-bar [title]=\"title\" [inline]=\"inline\">\n <div header-start-content>\n <ng-content select=\"[left-buttons]\"></ng-content>\n </div>\n <div header-end-content>\n <ng-content select=\"[right-buttons]\"></ng-content>\n </div>\n <!-- <div footer-start-content>\n <ng-content select=\"[left-bottom-area]\"></ng-content> \n </div>\n <div footer-end-content>\n <ng-content select=\"[right-bottom-area]\"></ng-content> \n </div> -->\n <pep-list-actions *ngIf=\"menuActions.length > 0\" [sizeType]=\"inline ? 'sm' : 'md'\" [actions]=\"menuActions\"\n (actionClick)=\"onActionItemClicked($event)\"></pep-list-actions>\n <pep-list-total [sizeType]=\"inline ? 'sm' : 'md'\" [totalRows]=\"totalRowCount\">\n </pep-list-total>\n <pep-search #search *ngIf=\"showSearch\" [value]=\"searchString\" [sizeType]=\"inline ? 'sm' : 'md'\"\n (search)=\"onSearchChanged($event)\">\n </pep-search>\n </pep-top-bar>\n</ng-template>\n\n<ng-template #smartFilterTemplate> \n <pep-side-bar #sideNav [ngClass]=\"{'smart-filter-area': inline}\"> \n <pep-smart-filters #smartFiltersComponent [title]=\"smartFilters.title\" [fields]=\"smartFilters.fields\"\n [filters]=\"smartFilters.data\" (filtersChange)=\"onFiltersChange($event)\">\n </pep-smart-filters>\n </pep-side-bar>\n</ng-template>\n\n<ng-template #breadCrumbsTemplate>\n <pep-bread-crumbs class=\"bread-crumbs\" [items]=\"breadCrumbsItems\" [addSpacing]=\"true\" [displayType]=\"'items'\"\n (itemClick)=\"onBreadCrumbItemClick($event)\"></pep-bread-crumbs>\n</ng-template>\n\n<ng-template #listTemplate>\n <div *ngIf=\"showEmptyState\" class=\"list-empty-state\">\n <div class=\"list-empty-title\">{{ listInputs.emptyState.title }}</div>\n <div class=\"list-empty-descr\">{{ listInputs.emptyState.description }}</div>\n <pep-icon name=\"leaf_skiny\" class=\"leaf-skiny\"></pep-icon>\n <pep-icon name=\"leaf_round\" class=\"leaf-round\"></pep-icon>\n <!-- <mat-icon class=\"leaf-skiny\">\n <pep-icon name=\"leaf_skiny\"></pep-icon>\n </mat-icon> -->\n <!-- <mat-icon class=\"leaf-round\">\n <pep-icon name=\"leaf_round\"></pep-icon>\n </mat-icon> -->\n </div>\n <div *ngIf=\"!showEmptyState\" class=\"list-container\">\n <ng-container #pepListContainer></ng-container>\n </div>\n</ng-template>", styles: [":host{height:inherit;display:block}.main-area-container{display:grid;height:inherit}.list-container{height:100%}.list-empty-state{padding-top:var(--pep-spacing-lg, 1rem);height:calc(100% - var(--pep-spacing-lg, 1rem));background:rgb(247,247,247);border-radius:var(--pep-border-radius-md, .25rem);position:relative;overflow:hidden;display:inline-flex!important;align-items:center;justify-content:center;flex-direction:column}.list-empty-state .leaf-skiny{z-index:1;height:52rem;position:absolute;left:-10rem;top:-2rem;pointer-events:none;transform:scale(1.4)}.list-empty-state .leaf-round{z-index:1;height:45rem;position:absolute;right:-13rem;top:-7rem;pointer-events:none;transform:rotate(45deg) scale(1)}.list-empty-state .list-empty-title{font-family:var(--pep-font-family-title, Nexa),-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Oxygen-Sans,Ubuntu,Cantarell,\"Helvetica Neue\",sans-serif!important;font-weight:var(--pep-font-weight-bold, 600)!important;font-size:var(--pep-font-size-2xl, 1.5rem)!important;line-height:var(--pep-line-height-2xl, 1.875rem)!important;z-index:50;padding-inline:var(--pep-spacing-lg, 1rem)}.list-empty-state .list-empty-descr{font-family:var(--pep-font-family-body, Inter),-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Oxygen-Sans,Ubuntu,Cantarell,\"Helvetica Neue\",sans-serif!important;font-weight:var(--pep-font-weight-normal, 400);font-size:var(--pep-font-size-md, 1rem)!important;line-height:var(--pep-line-height-md, 1.25rem)!important;z-index:50;padding-inline:var(--pep-spacing-lg, 1rem)}@media (max-width: 1279px){.list-empty-state .leaf-skiny{top:-5rem;left:-11rem;transform:scale(1.1)}.list-empty-state .leaf-round{right:-12rem;top:-7rem;transform:rotate(45deg) scale(.9)}}@media (max-width: 959px){.list-empty-state .leaf-round{display:none}.list-empty-state .list-empty-title,.list-empty-state .list-empty-descr{padding-inline:var(--pep-spacing-md, .75rem)}}.inline-container{height:inherit;display:grid;grid-template-rows:auto 1fr}.inline-container:not(.with-smart-filters) .header-area{grid-row:1/2}.inline-container:not(.with-smart-filters) .list-container{grid-row:2/3}.inline-container.with-smart-filters{grid-template-columns:auto 1fr}.inline-container.with-smart-filters .header-area{grid-column:2/3;grid-row:1/2}.inline-container.with-smart-filters .smart-filter-area{grid-column:1/2;grid-row:1/3}.inline-container.with-smart-filters .list-container{grid-column:2/3;grid-row:2/3}.inline-container.add-padding{padding-inline:var(--pep-spacing-lg, 1rem)}.inline-container .list-description{font-size:var(--pep-font-size-xs, .75rem);max-width:640px;padding:var(--pep-spacing-sm, .5rem) 0}.inline-container .bread-crumbs{padding:var(--pep-spacing-md, .75rem) 0 var(--pep-spacing-sm, .5rem) 0}.none-inline .list-description{font-size:var(--pep-font-size-sm, .875rem);max-width:720px;padding:var(--pep-spacing-sm, .5rem) var(--pep-spacing-xs, .25rem)}.none-inline .bread-crumbs{padding:var(--pep-spacing-md, .75rem) var(--pep-spacing-xs, .25rem) var(--pep-spacing-sm, .5rem) var(--pep-spacing-xs, .25rem)}.noDataFoundMsg{margin:1rem 0;height:calc(100% - 2rem);width:100%;background:hsla(0deg,0%,10%,.12);display:flex;justify-content:center;align-items:center}\n", ".list-empty-state ::ng-deep .svg-icon{fill:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.04)}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i5.PepListActionsComponent, selector: "pep-list-actions", inputs: ["actions", "sizeType", "xPosition", "hidden"], outputs: ["actionClick", "stateChange", "menuClick"] }, { kind: "component", type: i5.PepListTotalComponent, selector: "pep-list-total", inputs: ["totalRows", "totalAmount", "isMapView", "sizeType"] }, { kind: "component", type: i6.PepPageLayoutComponent, selector: "pep-page-layout", inputs: ["addPadding", "showShadow"] }, { kind: "component", type: i7.PepTopBarComponent, selector: "pep-top-bar", inputs: ["inline", "title"], outputs: ["footerStateChange"] }, { kind: "component", type: i8.PepSideBarComponent, selector: "pep-side-bar", inputs: ["position", "ignoreResize", "showHeader", "showFooter", "showToggle", "useAsWebComponent"], outputs: ["stateChange"] }, { kind: "component", type: i9.PepSearchComponent, selector: "pep-search", inputs: ["triggerOn", "autoCompleteTop", "autoCompleteValues", "shrink", "value", "searchControl", "useAsWebComponent", "sizeType"], outputs: ["search", "autocompleteChange", "stateChange"] }, { kind: "component", type: i10.PepBreadCrumbsComponent, selector: "pep-bread-crumbs", inputs: ["items", "displayType", "addSpacing"], outputs: ["itemClick"] }, { kind: "component", type: i1$2.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i12.PepSmartFiltersComponent, selector: "pep-smart-filters", inputs: ["title", "filters", "fields", "useAsWebComponent"], outputs: ["filtersChange", "fieldToggleChange"] }] });
|
|
600
|
+
GenericListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: GenericListComponent, selector: "pep-generic-list", inputs: { dataSource: "dataSource", actions: "actions", uuidMapping: "uuidMapping", disabled: "disabled", addPadding: "addPadding", title: "title", description: "description", inline: "inline", showSearch: "showSearch", noDataFoundMsg: "noDataFoundMsg", emptyState: "emptyState", selectionType: "selectionType", supportSorting: "supportSorting", supportSortingFields: "supportSortingFields", sorting: "sorting", cacheSize: "cacheSize", hideSelectAll: "hideSelectAll", pager: "pager", tableViewType: "tableViewType", zebraStripes: "zebraStripes", smartFilter: "smartFilter", showTopBar: "showTopBar", breadCrumbsItems: "breadCrumbsItems", selectAll: "selectAll", scrollPosition: "scrollPosition" }, outputs: { fieldClick: "fieldClick", valueChange: "valueChange", breadCrumbItemClick: "breadCrumbItemClick", startIndexChange: "startIndexChange", listLoad: "listLoad" }, providers: [PepGenericListService], viewQueries: [{ propertyName: "search", first: true, predicate: ["search"], descendants: true }, { propertyName: "smartFiltersComponent", first: true, predicate: ["smartFiltersComponent"], descendants: true }, { propertyName: "pepListContainer", first: true, predicate: ["pepListContainer"], descendants: true, read: ViewContainerRef }], ngImport: i0, template: "<div *ngIf=\"inline\" class=\"inline-container\" [ngClass]=\"{ 'add-padding': addPadding, 'with-smart-filters': showSmartFilter }\">\n <div class=\"header-area\" >\n <div *ngIf=\"showTopBar\" class=\"inline-top-bar-container\">\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </div>\n <ng-container *ngIf=\"description\">\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\">\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n </div>\n <ng-container *ngIf=\"showSmartFilter\">\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!onLoad\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </ng-container>\n</div>\n<pep-page-layout *ngIf=\"!inline\" class=\"none-inline\" [addPadding]=\"addPadding\" [showShadow]=\"showSmartFilter\">\n <ng-container *ngIf=\"showSmartFilter\" pep-side-area>\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"showTopBar\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"description\" pep-top-area>\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n <div *ngIf=\"!onLoad\" pep-main-area class=\"main-area-container\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </div>\n</pep-page-layout>\n\n<ng-template #topBarTemplate>\n <pep-top-bar [title]=\"title\" [inline]=\"inline\">\n <div header-start-content>\n <ng-content select=\"[left-buttons]\"></ng-content>\n </div>\n <div header-end-content>\n <ng-content select=\"[right-buttons]\"></ng-content>\n </div>\n <!-- <div footer-start-content>\n <ng-content select=\"[left-bottom-area]\"></ng-content> \n </div>\n <div footer-end-content>\n <ng-content select=\"[right-bottom-area]\"></ng-content> \n </div> -->\n <pep-list-actions *ngIf=\"menuActions.length > 0\" [sizeType]=\"inline ? 'sm' : 'md'\" [actions]=\"menuActions\"\n (actionClick)=\"onActionItemClicked($event)\"></pep-list-actions>\n <pep-list-total [sizeType]=\"inline ? 'sm' : 'md'\" [totalRows]=\"totalRowCount\">\n </pep-list-total>\n <pep-search #search *ngIf=\"showSearch\" [value]=\"searchString\" [sizeType]=\"inline ? 'sm' : 'md'\"\n (search)=\"onSearchChanged($event)\">\n </pep-search>\n </pep-top-bar>\n</ng-template>\n\n<ng-template #smartFilterTemplate> \n <pep-side-bar #sideNav [ngClass]=\"{'smart-filter-area': inline}\"> \n <pep-smart-filters #smartFiltersComponent [title]=\"smartFilters.title\" [fields]=\"smartFilters.fields\"\n [filters]=\"smartFilters.data\" (filtersChange)=\"onFiltersChange($event)\">\n </pep-smart-filters>\n </pep-side-bar>\n</ng-template>\n\n<ng-template #breadCrumbsTemplate>\n <pep-bread-crumbs class=\"bread-crumbs\" [items]=\"breadCrumbsItems\" [addSpacing]=\"true\" [displayType]=\"'items'\"\n (itemClick)=\"onBreadCrumbItemClick($event)\"></pep-bread-crumbs>\n</ng-template>\n\n<ng-template #listTemplate>\n <div *ngIf=\"showEmptyState\" class=\"list-empty-state\">\n <div class=\"list-empty-title\">{{ listInputs.emptyState.title }}</div>\n <div class=\"list-empty-descr\">{{ listInputs.emptyState.description }}</div>\n <pep-icon name=\"leaf_skiny\" class=\"leaf-skiny\"></pep-icon>\n <pep-icon name=\"leaf_round\" class=\"leaf-round\"></pep-icon>\n <!-- <mat-icon class=\"leaf-skiny\">\n <pep-icon name=\"leaf_skiny\"></pep-icon>\n </mat-icon> -->\n <!-- <mat-icon class=\"leaf-round\">\n <pep-icon name=\"leaf_round\"></pep-icon>\n </mat-icon> -->\n </div>\n <div *ngIf=\"!showEmptyState\" class=\"list-container\">\n <ng-container #pepListContainer></ng-container>\n </div>\n</ng-template>", styles: [":host{height:inherit;display:block}.main-area-container{display:grid;height:inherit}.list-container{height:100%}.list-empty-state{padding-top:var(--pep-spacing-lg, 1rem);height:calc(100% - var(--pep-spacing-lg, 1rem));background:rgb(247,247,247);border-radius:var(--pep-border-radius-md, .25rem);position:relative;overflow:hidden;display:inline-flex!important;align-items:center;justify-content:center;flex-direction:column}.list-empty-state .leaf-skiny{z-index:1;height:52rem;position:absolute;left:-10rem;top:-2rem;pointer-events:none;transform:scale(1.4)}.list-empty-state .leaf-round{z-index:1;height:45rem;position:absolute;right:-13rem;top:-7rem;pointer-events:none;transform:rotate(45deg) scale(1)}.list-empty-state .list-empty-title{font-family:var(--pep-font-family-title, Nexa),-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Oxygen-Sans,Ubuntu,Cantarell,\"Helvetica Neue\",sans-serif!important;font-weight:var(--pep-font-weight-bold, 600)!important;font-size:var(--pep-font-size-2xl, 1.5rem)!important;line-height:var(--pep-line-height-2xl, 1.875rem)!important;z-index:50;padding-inline:var(--pep-spacing-lg, 1rem)}.list-empty-state .list-empty-descr{font-family:var(--pep-font-family-body, Inter),-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Oxygen-Sans,Ubuntu,Cantarell,\"Helvetica Neue\",sans-serif!important;font-weight:var(--pep-font-weight-normal, 400);font-size:var(--pep-font-size-md, 1rem)!important;line-height:var(--pep-line-height-md, 1.25rem)!important;z-index:50;padding-inline:var(--pep-spacing-lg, 1rem)}@media (max-width: 1279px){.list-empty-state .leaf-skiny{top:-5rem;left:-11rem;transform:scale(1.1)}.list-empty-state .leaf-round{right:-12rem;top:-7rem;transform:rotate(45deg) scale(.9)}}@media (max-width: 959px){.list-empty-state .leaf-round{display:none}.list-empty-state .list-empty-title,.list-empty-state .list-empty-descr{padding-inline:var(--pep-spacing-md, .75rem)}}.inline-container{height:inherit;display:grid;grid-template-rows:auto 1fr}.inline-container:not(.with-smart-filters) .header-area{grid-row:1/2}.inline-container:not(.with-smart-filters) .list-container{grid-row:2/3}.inline-container.with-smart-filters{grid-template-columns:auto 1fr}.inline-container.with-smart-filters .header-area{grid-column:2/3;grid-row:1/2}.inline-container.with-smart-filters .smart-filter-area{grid-column:1/2;grid-row:1/3}.inline-container.with-smart-filters .list-container{grid-column:2/3;grid-row:2/3}.inline-container.add-padding{padding-inline:var(--pep-spacing-lg, 1rem)}.inline-container .list-description{font-size:var(--pep-font-size-xs, .75rem);max-width:640px;padding:var(--pep-spacing-sm, .5rem) 0}.inline-container .bread-crumbs{padding:var(--pep-spacing-md, .75rem) 0 var(--pep-spacing-sm, .5rem) 0}.none-inline .list-description{font-size:var(--pep-font-size-sm, .875rem);max-width:720px;padding:var(--pep-spacing-sm, .5rem) var(--pep-spacing-xs, .25rem)}.none-inline .bread-crumbs{padding:var(--pep-spacing-md, .75rem) var(--pep-spacing-xs, .25rem) var(--pep-spacing-sm, .5rem) var(--pep-spacing-xs, .25rem)}.noDataFoundMsg{margin:1rem 0;height:calc(100% - 2rem);width:100%;background:hsla(0deg,0%,10%,.12);display:flex;justify-content:center;align-items:center}\n", ".list-empty-state ::ng-deep .svg-icon{fill:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.04)}\n"], dependencies: [{ kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i4.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i5.PepListActionsComponent, selector: "pep-list-actions", inputs: ["actions", "sizeType", "xPosition", "hidden"], outputs: ["actionClick", "stateChange", "menuClick"] }, { kind: "component", type: i5.PepListTotalComponent, selector: "pep-list-total", inputs: ["totalRows", "totalAmount", "isMapView", "sizeType"] }, { kind: "component", type: i6.PepPageLayoutComponent, selector: "pep-page-layout", inputs: ["addPadding", "showShadow"] }, { kind: "component", type: i7.PepTopBarComponent, selector: "pep-top-bar", inputs: ["inline", "title"], outputs: ["footerStateChange"] }, { kind: "component", type: i8.PepSideBarComponent, selector: "pep-side-bar", inputs: ["position", "ignoreResize", "showHeader", "showFooter", "showToggle", "useAsWebComponent"], outputs: ["stateChange"] }, { kind: "component", type: i9.PepSearchComponent, selector: "pep-search", inputs: ["triggerOn", "autoCompleteTop", "autoCompleteValues", "shrink", "value", "searchControl", "useAsWebComponent", "sizeType"], outputs: ["search", "autocompleteChange", "stateChange"] }, { kind: "component", type: i10.PepBreadCrumbsComponent, selector: "pep-bread-crumbs", inputs: ["items", "displayType", "addSpacing"], outputs: ["itemClick"] }, { kind: "component", type: i1$2.PepIconComponent, selector: "pep-icon", inputs: ["spin", "name", "fill"] }, { kind: "component", type: i12.PepSmartFiltersComponent, selector: "pep-smart-filters", inputs: ["title", "filters", "fields", "useAsWebComponent"], outputs: ["filtersChange", "fieldToggleChange"] }] });
|
|
598
601
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: GenericListComponent, decorators: [{
|
|
599
602
|
type: Component,
|
|
600
603
|
args: [{ selector: 'pep-generic-list', providers: [PepGenericListService], template: "<div *ngIf=\"inline\" class=\"inline-container\" [ngClass]=\"{ 'add-padding': addPadding, 'with-smart-filters': showSmartFilter }\">\n <div class=\"header-area\" >\n <div *ngIf=\"showTopBar\" class=\"inline-top-bar-container\">\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </div>\n <ng-container *ngIf=\"description\">\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\">\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n </div>\n <ng-container *ngIf=\"showSmartFilter\">\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!onLoad\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </ng-container>\n</div>\n<pep-page-layout *ngIf=\"!inline\" class=\"none-inline\" [addPadding]=\"addPadding\" [showShadow]=\"showSmartFilter\">\n <ng-container *ngIf=\"showSmartFilter\" pep-side-area>\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"showTopBar\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"description\" pep-top-area>\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n <div *ngIf=\"!onLoad\" pep-main-area class=\"main-area-container\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </div>\n</pep-page-layout>\n\n<ng-template #topBarTemplate>\n <pep-top-bar [title]=\"title\" [inline]=\"inline\">\n <div header-start-content>\n <ng-content select=\"[left-buttons]\"></ng-content>\n </div>\n <div header-end-content>\n <ng-content select=\"[right-buttons]\"></ng-content>\n </div>\n <!-- <div footer-start-content>\n <ng-content select=\"[left-bottom-area]\"></ng-content> \n </div>\n <div footer-end-content>\n <ng-content select=\"[right-bottom-area]\"></ng-content> \n </div> -->\n <pep-list-actions *ngIf=\"menuActions.length > 0\" [sizeType]=\"inline ? 'sm' : 'md'\" [actions]=\"menuActions\"\n (actionClick)=\"onActionItemClicked($event)\"></pep-list-actions>\n <pep-list-total [sizeType]=\"inline ? 'sm' : 'md'\" [totalRows]=\"totalRowCount\">\n </pep-list-total>\n <pep-search #search *ngIf=\"showSearch\" [value]=\"searchString\" [sizeType]=\"inline ? 'sm' : 'md'\"\n (search)=\"onSearchChanged($event)\">\n </pep-search>\n </pep-top-bar>\n</ng-template>\n\n<ng-template #smartFilterTemplate> \n <pep-side-bar #sideNav [ngClass]=\"{'smart-filter-area': inline}\"> \n <pep-smart-filters #smartFiltersComponent [title]=\"smartFilters.title\" [fields]=\"smartFilters.fields\"\n [filters]=\"smartFilters.data\" (filtersChange)=\"onFiltersChange($event)\">\n </pep-smart-filters>\n </pep-side-bar>\n</ng-template>\n\n<ng-template #breadCrumbsTemplate>\n <pep-bread-crumbs class=\"bread-crumbs\" [items]=\"breadCrumbsItems\" [addSpacing]=\"true\" [displayType]=\"'items'\"\n (itemClick)=\"onBreadCrumbItemClick($event)\"></pep-bread-crumbs>\n</ng-template>\n\n<ng-template #listTemplate>\n <div *ngIf=\"showEmptyState\" class=\"list-empty-state\">\n <div class=\"list-empty-title\">{{ listInputs.emptyState.title }}</div>\n <div class=\"list-empty-descr\">{{ listInputs.emptyState.description }}</div>\n <pep-icon name=\"leaf_skiny\" class=\"leaf-skiny\"></pep-icon>\n <pep-icon name=\"leaf_round\" class=\"leaf-round\"></pep-icon>\n <!-- <mat-icon class=\"leaf-skiny\">\n <pep-icon name=\"leaf_skiny\"></pep-icon>\n </mat-icon> -->\n <!-- <mat-icon class=\"leaf-round\">\n <pep-icon name=\"leaf_round\"></pep-icon>\n </mat-icon> -->\n </div>\n <div *ngIf=\"!showEmptyState\" class=\"list-container\">\n <ng-container #pepListContainer></ng-container>\n </div>\n</ng-template>", styles: [":host{height:inherit;display:block}.main-area-container{display:grid;height:inherit}.list-container{height:100%}.list-empty-state{padding-top:var(--pep-spacing-lg, 1rem);height:calc(100% - var(--pep-spacing-lg, 1rem));background:rgb(247,247,247);border-radius:var(--pep-border-radius-md, .25rem);position:relative;overflow:hidden;display:inline-flex!important;align-items:center;justify-content:center;flex-direction:column}.list-empty-state .leaf-skiny{z-index:1;height:52rem;position:absolute;left:-10rem;top:-2rem;pointer-events:none;transform:scale(1.4)}.list-empty-state .leaf-round{z-index:1;height:45rem;position:absolute;right:-13rem;top:-7rem;pointer-events:none;transform:rotate(45deg) scale(1)}.list-empty-state .list-empty-title{font-family:var(--pep-font-family-title, Nexa),-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Oxygen-Sans,Ubuntu,Cantarell,\"Helvetica Neue\",sans-serif!important;font-weight:var(--pep-font-weight-bold, 600)!important;font-size:var(--pep-font-size-2xl, 1.5rem)!important;line-height:var(--pep-line-height-2xl, 1.875rem)!important;z-index:50;padding-inline:var(--pep-spacing-lg, 1rem)}.list-empty-state .list-empty-descr{font-family:var(--pep-font-family-body, Inter),-apple-system,BlinkMacSystemFont,\"Segoe UI\",Roboto,Oxygen-Sans,Ubuntu,Cantarell,\"Helvetica Neue\",sans-serif!important;font-weight:var(--pep-font-weight-normal, 400);font-size:var(--pep-font-size-md, 1rem)!important;line-height:var(--pep-line-height-md, 1.25rem)!important;z-index:50;padding-inline:var(--pep-spacing-lg, 1rem)}@media (max-width: 1279px){.list-empty-state .leaf-skiny{top:-5rem;left:-11rem;transform:scale(1.1)}.list-empty-state .leaf-round{right:-12rem;top:-7rem;transform:rotate(45deg) scale(.9)}}@media (max-width: 959px){.list-empty-state .leaf-round{display:none}.list-empty-state .list-empty-title,.list-empty-state .list-empty-descr{padding-inline:var(--pep-spacing-md, .75rem)}}.inline-container{height:inherit;display:grid;grid-template-rows:auto 1fr}.inline-container:not(.with-smart-filters) .header-area{grid-row:1/2}.inline-container:not(.with-smart-filters) .list-container{grid-row:2/3}.inline-container.with-smart-filters{grid-template-columns:auto 1fr}.inline-container.with-smart-filters .header-area{grid-column:2/3;grid-row:1/2}.inline-container.with-smart-filters .smart-filter-area{grid-column:1/2;grid-row:1/3}.inline-container.with-smart-filters .list-container{grid-column:2/3;grid-row:2/3}.inline-container.add-padding{padding-inline:var(--pep-spacing-lg, 1rem)}.inline-container .list-description{font-size:var(--pep-font-size-xs, .75rem);max-width:640px;padding:var(--pep-spacing-sm, .5rem) 0}.inline-container .bread-crumbs{padding:var(--pep-spacing-md, .75rem) 0 var(--pep-spacing-sm, .5rem) 0}.none-inline .list-description{font-size:var(--pep-font-size-sm, .875rem);max-width:720px;padding:var(--pep-spacing-sm, .5rem) var(--pep-spacing-xs, .25rem)}.none-inline .bread-crumbs{padding:var(--pep-spacing-md, .75rem) var(--pep-spacing-xs, .25rem) var(--pep-spacing-sm, .5rem) var(--pep-spacing-xs, .25rem)}.noDataFoundMsg{margin:1rem 0;height:calc(100% - 2rem);width:100%;background:hsla(0deg,0%,10%,.12);display:flex;justify-content:center;align-items:center}\n", ".list-empty-state ::ng-deep .svg-icon{fill:hsla(var(--pep-color-system-primary-h, 0),var(--pep-color-system-primary-s, 0%),var(--pep-color-system-primary-l, 10%),.04)}\n"] }]
|
|
@@ -633,6 +636,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImpor
|
|
|
633
636
|
type: Input
|
|
634
637
|
}], supportSorting: [{
|
|
635
638
|
type: Input
|
|
639
|
+
}], supportSortingFields: [{
|
|
640
|
+
type: Input
|
|
636
641
|
}], sorting: [{
|
|
637
642
|
type: Input
|
|
638
643
|
}], cacheSize: [{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pepperi-addons-ngx-composite-lib-generic-list.mjs","sources":["../../../projects/ngx-composite-lib/generic-list/generic-list.service.ts","../../../projects/ngx-composite-lib/generic-list/generic-list.component.ts","../../../projects/ngx-composite-lib/generic-list/generic-list.component.html","../../../projects/ngx-composite-lib/generic-list/generic-list.module.ts","../../../projects/ngx-composite-lib/generic-list/public-api.ts","../../../projects/ngx-composite-lib/generic-list/pepperi-addons-ngx-composite-lib-generic-list.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n IPepGenericListSmartFilter,\n IPepGenericListDataViewField,\n IPepSmartFilters\n} from './generic-list.model';\nimport {\n PepSmartFilterBaseField,\n IPepSmartFilterData,\n} from '@pepperi-addons/ngx-lib/smart-filters';\nimport { PepQueryBuilderService, IPepQueryBuilderField } from '@pepperi-addons/ngx-lib/query-builder';\nimport {\n PepRowData,\n ObjectsDataRow\n} from '@pepperi-addons/ngx-lib';\nimport { GridDataViewField, DataViewFieldTypes } from '@pepperi-addons/papi-sdk/dist/entities/data-view';\n\n@Injectable() \nexport class PepGenericListService {\n\n constructor(\n private _translate: TranslateService,\n private _queryBuilderService: PepQueryBuilderService\n ) {\n //\n }\n\n /**\n * checks if the object contains property\n * @param obj object\n * @param prop property name\n * @returns true if contains, false otherwise\n */\n hasProperty(obj: any, prop: string) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n }\n\n getListViewType(dataViewType: string) {\n switch (dataViewType) {\n case 'Grid':\n return 'table';\n case 'Card':\n return 'cards';\n case 'Line':\n return 'lines';\n default:\n return 'table';\n }\n }\n\n convertToPepRowData(item: any, dataView: any, uuidMapping: string) {\n const row = new PepRowData();\n let itemFields: any;\n\n if (this.hasProperty(item, 'fields') && typeof item.fields === 'object') {\n itemFields = item.fields;\n if (item.isEditable === false) {\n row.IsEditable = false;\n }\n if (item.isSelectableForActions === false) {\n row.IsSelectableForActions = false;\n }\n if (item.isEditable && item.isSelectableForActions && item.isSelected) {\n row.IsSelected = true;\n }\n } else {\n itemFields = item;\n }\n\n row.UUID = itemFields[uuidMapping] || undefined;\n row.Fields = [];\n\n if (dataView?.Fields && dataView.Columns) {\n for (let index = 0; index < dataView.Fields.length; index++) {\n const field = dataView.Fields[index] as IPepGenericListDataViewField;\n row.Fields.push({\n ApiName: field.FieldID,\n Title: field.Title ? this._translate.instant(field.Title) : '',\n XAlignment: 1,\n FormattedValue: (itemFields[field.FieldID] || '').toString(),\n Value: (itemFields[field.FieldID] || '').toString(),\n ColumnWidth: dataView.Columns[index]?.Width || undefined,\n AdditionalValue: '',\n OptionalValues: field.OptionalValues || [],\n FieldType: DataViewFieldTypes[field.Type],\n ReadOnly: field.ReadOnly,\n Enabled: !field.ReadOnly\n })\n }\n }\n return row;\n }\n\n convertToUiControlField(field: any) {\n return {\n ApiName: field.ApiName,\n FieldType: field.FieldType,\n Title: field.Title,\n ReadOnly: field.ReadOnlyField,\n ColumnWidth: field.ColumnWidth,\n ColumnWidthType: 1,\n Layout: {\n X: field.Layout.X,\n Y: field.Layout.Y,\n Width: field.Layout.Width,\n Height: field.Layout.Field_Height,\n XAlignment: field.Layout.xAlignment,\n YAlignment: field.Layout.yAlignment,\n }\n }\n }\n\n convertToSmartFilter(input: IPepGenericListSmartFilter) { \n const smartFilters: IPepSmartFilters = {\n fields: [],\n data: [],\n title: 'Filters'\n }\n\n if (input) {\n if (input.dataView) {\n smartFilters.fields = this.createSmartFilterFields(input.dataView);\n if (input.data?.length) {\n smartFilters.data = input.data;\n }\n }\n if (input.title) {\n smartFilters.title = input.title;\n }\n }\n\n return smartFilters; \n }\n\n createSmartFilterFields(dataView: any) {\n let smartFields: PepSmartFilterBaseField[] = [];\n\n const fields = dataView.Fields.map((field: any) => {\n return {\n FieldID: field.FieldID,\n FieldType: field.Type,\n Title: field.Title,\n OptionalValues: field.OptionalValues\n } as IPepQueryBuilderField\n });\n const smartFilterfields = this._queryBuilderService.convertToSmartFilterFields(fields);\n if (smartFilterfields?.length) {\n smartFields = smartFilterfields.map((field => field.smart));\n }\n\n return smartFields;\n }\n\n // TODO: This func is copy from ngx-lib write it in one place.\n private getUniqItemId(itemId: string, itemType = ''): string {\n return itemId + ',' + itemType;\n }\n\n getSelectedItems(items: ObjectsDataRow[]) {\n const selectedItems = [];\n\n for (let i = 0; i < items.length; i++) {\n if (items[i].IsSelected) {\n selectedItems.push(this.getUniqItemId(items[i].UID, items[i].Type?.toString()));\n }\n }\n\n return selectedItems;\n }\n\n\n}","import {\n Component,\n OnInit,\n ViewChild,\n Input,\n Output,\n EventEmitter,\n ViewContainerRef\n} from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n PepDataConvertorService,\n PepLayoutService,\n ObjectsDataRow,\n PepGuid,\n UIControl,\n PepLoaderService,\n PepRowData,\n PepSessionService\n} from '@pepperi-addons/ngx-lib';\nimport { Subscription } from 'rxjs';\nimport { IPepFormFieldClickEvent } from '@pepperi-addons/ngx-lib/form';\nimport {\n PepListComponent,\n PepSelectionData,\n IPepListLoadPageEvent,\n PepListSelectionType,\n IPepListSortingChangeEvent,\n DEFAULT_PAGE_SIZE,\n IPepListLoadItemsEvent,\n PepListTableViewType,\n IPepListSortingData,\n IPepListStartIndexChangeEvent\n} from '@pepperi-addons/ngx-lib/list';\nimport {\n PepMenuItem,\n IPepMenuItemClickEvent,\n} from '@pepperi-addons/ngx-lib/menu';\nimport { IPepFormFieldValueChangeEvent } from '@pepperi-addons/ngx-lib/form';\nimport {\n PepBreadCrumbItem,\n IPepBreadCrumbItemClickEvent\n} from '@pepperi-addons/ngx-lib/bread-crumbs';\nimport { IPepSearchClickEvent, PepSearchComponent } from '@pepperi-addons/ngx-lib/search';\n\nimport {\n DataView,\n GridDataView\n} from '@pepperi-addons/papi-sdk/dist/entities/data-view';\nimport {\n IPepGenericListInitData,\n IPepGenericListDataSource,\n IPepGenericListPager,\n IPepGenericListActions,\n IPepGenericListSmartFilter,\n IPepSmartFilters,\n IPepGenericListEmptyState\n} from './generic-list.model';\nimport { PepGenericListService } from './generic-list.service';\nimport { DataViewConverter } from '@pepperi-addons/data-views';\nimport {\n IPepSmartFilterData,\n PepSmartFilterBaseField,\n PepSmartFiltersComponent\n} from '@pepperi-addons/ngx-lib/smart-filters';\n\n\n@Component({\n selector: 'pep-generic-list',\n templateUrl: './generic-list.component.html',\n styleUrls: ['./generic-list.component.scss', './generic-list.component.theme.scss'],\n providers: [PepGenericListService]\n})\nexport class GenericListComponent implements OnInit {\n @ViewChild('search') search: PepSearchComponent | undefined;\n @ViewChild('smartFiltersComponent') smartFiltersComponent: PepSmartFiltersComponent | undefined;\n\n private _pepListContainer: ViewContainerRef | undefined;\n @ViewChild('pepListContainer', { read: ViewContainerRef })\n set pepListContainer(val: ViewContainerRef) {\n this._pepListContainer = val;\n }\n\n private _dataSource: IPepGenericListDataSource = {\n init: async (params: any) => {\n return {\n dataView: {\n Type: 'Grid'\n },\n totalCount: -1,\n items: []\n }\n }\n }\n @Input()\n set dataSource(val: IPepGenericListDataSource) {\n this._dataSource = val;\n this._sorting = undefined;\n this.initSearch();\n this.initSmartSearch();\n this.initList();\n }\n\n @Input()\n actions: IPepGenericListActions = {\n get: async (data: any) => {\n return []\n }\n };\n\n @Input()\n uuidMapping = 'key';\n\n @Input()\n disabled = false;\n\n @Input()\n addPadding = false;\n\n @Input()\n title = '';\n\n @Input()\n description = '';\n\n @Input()\n inline = false;\n\n @Input()\n showSearch = false;\n\n @Input()\n noDataFoundMsg = '';\n\n @Input()\n emptyState: IPepGenericListEmptyState | undefined;\n\n @Input()\n selectionType: PepListSelectionType = 'multi';\n\n @Input()\n supportSorting = false;\n\n @Input()\n sorting: IPepListSortingData | undefined;\n\n @Input()\n cacheSize = -1;\n\n @Input()\n hideSelectAll = false;\n \n @Input()\n pager: IPepGenericListPager = {\n type: 'scroll'\n }\n\n @Input()\n tableViewType: PepListTableViewType = 'regular';\n\n @Input()\n zebraStripes = false;\n\n @Input()\n set smartFilter(val: IPepGenericListSmartFilter) {\n this.smartFilters = this._genericListService.convertToSmartFilter(val);\n this._appliedFilters = this.smartFilters.data || [];\n this.showSmartFilter = this.smartFilters.fields.length > 0; \n }\n\n @Input()\n showTopBar = false;\n\n @Input()\n breadCrumbsItems: PepBreadCrumbItem[] = new Array<PepBreadCrumbItem>();\n\n @Input()\n selectAll = false\n\n @Input()\n scrollPosition = 0\n\n @Output()\n fieldClick = new EventEmitter<IPepFormFieldClickEvent>();\n\n @Output()\n valueChange = new EventEmitter<IPepFormFieldValueChangeEvent>();\n\n @Output()\n breadCrumbItemClick = new EventEmitter<IPepBreadCrumbItemClickEvent>();\n\n @Output()\n startIndexChange = new EventEmitter<IPepListStartIndexChangeEvent>()\n\n @Output()\n listLoad: EventEmitter<void> = new EventEmitter<void>();\n\n set pepList(val: PepListComponent) {\n this._pepList = val;\n }\n\n get pepList() {\n return this._pepList;\n }\n\n private _resize$: Subscription = new Subscription();\n private _loader$: Subscription = new Subscription();\n\n private _dataView: DataView = {\n Type: 'Grid'\n };\n private _pepList: any;\n onLoad = true;\n listInputs: any;\n totalRowCount = -1;\n searchString = '';\n showSmartFilter = false;\n showEmptyState = false;\n smartFilters: IPepSmartFilters = {\n fields: [],\n data: [],\n title: 'Filters'\n };\n private _appliedFilters: IPepSmartFilterData[] = [];\n private _sorting: IPepListSortingChangeEvent | undefined = undefined;\n\n menuHandlers: { [key: string]: (obj: any) => Promise<void> } = {};\n menuActions: Array<PepMenuItem> = [];\n\n constructor(\n private _dataConvertorService: PepDataConvertorService,\n private _layoutService: PepLayoutService,\n private _loaderService: PepLoaderService,\n private _translate: TranslateService,\n private _genericListService: PepGenericListService,\n private _sessionService: PepSessionService\n ) {\n this._resize$ = this._layoutService.onResize$.pipe().subscribe((size) => { \n // \n });\n this._loader$ = this._loaderService.onChanged$.subscribe((status: boolean) => {\n //\n });\n }\n\n ngOnInit() {\n //\n }\n\n private async initList() {\n this.onLoad = true;\n setTimeout(async () => { //making sure all input data is available\n if (this._dataSource) {\n //merge selector inputs with callback inputs\n this.loadTableInputs();\n\n let fromIndex = 0;\n let toIndex = 0;\n\n if (this.listInputs.pager.type === 'pages') {\n fromIndex = this.listInputs.pager.size * this.listInputs.pager.index;\n toIndex = fromIndex + (this.listInputs.pager.size || DEFAULT_PAGE_SIZE) - 1;\n } else {\n toIndex = 100;//TO DO - get value from - this.customList.getTopItems()\n }\n\n const data = await this.loadData(fromIndex, toIndex);\n \n if (this.listInputs?.emptyState?.show === true) {\n this.setEmptyState();\n }\n this.onLoad = false;\n //show empty state\n if (this.showEmptyState) {\n if (!this.listInputs.emptyState.title) { \n this._translate.get('GENERIC_LIST.EMPTY_STATE.TITLE').subscribe(text => { \n this.listInputs.emptyState.title = text;\n });\n }\n if (!this.listInputs.emptyState.description) { \n this._translate.get('GENERIC_LIST.EMPTY_STATE.DESCRIPTION').subscribe(text => { \n this.listInputs.emptyState.description = text;\n });\n }\n return;\n }\n setTimeout(async () => {\n if (this._pepListContainer) {\n if (this._pepListContainer.length > 0) {\n this._pepListContainer.remove();\n }\n const { PepListComponent } = await import('@pepperi-addons/ngx-lib/list');\n const componentRef = this._pepListContainer.createComponent(PepListComponent);\n\n this.pepList = componentRef.instance;\n \n componentRef.instance.viewType = this._genericListService.getListViewType(this._dataView.Type);\n componentRef.instance.tableViewType = this.listInputs.tableViewType;\n componentRef.instance.zebraStripes = this.listInputs.zebraStripes;\n if (this.disabled) {\n componentRef.instance.disabled = true;\n componentRef.instance.lockItemInnerEvents = true;\n }\n componentRef.instance.supportSorting = this.listInputs.supportSorting;\n componentRef.instance.sorting = this.listInputs.sorting;\n componentRef.instance.cacheSize = this.listInputs.cacheSize;\n\n componentRef.instance.selectionTypeForActions = this.listInputs.selectionType;\n componentRef.instance.hideAllSelectionInMulti = this.listInputs.hideSelectAll;\n\n componentRef.instance.showCardSelection = this.listInputs.selectionType !== 'none';\n componentRef.instance.pagerType = this.listInputs.pager.type;\n if (this.listInputs.pager.type === 'pages') {\n componentRef.instance.pageSize = this.listInputs.pager?.size || DEFAULT_PAGE_SIZE;\n componentRef.instance.pageIndex = this.listInputs.pager?.index || 0;\n }\n if(this.selectionType == \"multi\" && this.selectAll){\n this._sessionService.setObject('AllSelected', true)\n }\n componentRef.instance.noDataFoundMsg = this.listInputs.noDataFoundMsg;\n componentRef.instance.startIndexChange.subscribe($event => {\n this.startIndexChange.emit($event)\n })\n componentRef.instance.fieldClick.subscribe(($event) => {\n this.onCustomizeFieldClick($event);\n });\n componentRef.instance.selectedItemsChange.subscribe(($event) => {\n this.onSelectedItemsChanged($event);\n });\n componentRef.instance.loadItems.subscribe(($event) => {\n this.onLoadItems($event);\n });\n componentRef.instance.loadPage.subscribe(($event) => {\n this.onLoadPage($event);\n });\n componentRef.instance.valueChange.subscribe(($event) => {\n this.onValueChanged($event);\n });\n componentRef.instance.sortingChange.subscribe(($event) => {\n this.onSortingChange($event);\n });\n componentRef.instance.listLoad.subscribe(($event) => {\n this.onSelectedItemsChanged(this._pepList.selectedItems.length);\n this.onListLoad();\n });\n let convertedList: ObjectsDataRow[] = [];\n if (data) {\n if (data?.length) {\n convertedList = this._dataConvertorService.convertListData(data);\n }\n const uiControl = this.getUiControl(DataViewConverter.toUIControlData(this._dataView));\n const selectedItems = this._genericListService.getSelectedItems(convertedList);\n if (selectedItems?.length) {\n componentRef.instance.setSelectedIds(selectedItems);\n } \n \n componentRef.instance.initListData(uiControl, this.totalRowCount, convertedList);\n }\n componentRef.instance.scrollToIndex(this.scrollPosition)\n }\n }, 0);\n }\n }, 0);\n }\n\n /**\n * loads inputs in case they are provided and merge with selector inputs\n * @returns merged pep-list inputs\n */\n private loadTableInputs() {\n this.listInputs = {\n supportSorting: this.supportSorting,\n sorting: this.sorting,\n cacheSize: this.cacheSize,\n hideSelectAll: this.hideSelectAll,\n selectionType: this.selectionType,\n pager: this.pager,\n noDataFoundMsg: this.noDataFoundMsg,\n tableViewType: this.tableViewType,\n zebraStripes: this.zebraStripes,\n emptyState: this.emptyState,\n selectAll: this.selectAll\n };\n if (this._dataSource.inputs) {\n Object.entries(this._dataSource.inputs).forEach((item: any) => {\n if (this._genericListService.hasProperty(this.listInputs, item[0])) {\n this.listInputs[item[0]] = item[1];\n }\n });\n }\n }\n\n /**\n * detemines whether empty state is to be displayed\n */\n private setEmptyState() {\n this.showEmptyState = this.totalRowCount === 0 &&\n this.searchString === '' &&\n this._appliedFilters.length === 0;\n }\n\n private getUiControl(data: any): UIControl {\n const uiControl = new UIControl();\n uiControl.ControlFields = [];\n\n if (data?.ControlFields) {\n uiControl.ControlFields = data.ControlFields.map((field: any) => this._genericListService.convertToUiControlField(field));\n }\n\n return uiControl;\n }\n\n private loadMenuItems(): void { //TODO\n if (this.listInputs.selectionType !== 'none') {\n this.getMenuActions().then(\n x => this.menuActions = x\n );\n }\n }\n\n private async getMenuActions(): Promise<PepMenuItem[]> {\n const res: PepMenuItem[] = [];\n const result = this.getMenuObjects();\n if (result.success) {\n const actions = await this.actions.get(result.data);\n this.menuHandlers = {};\n actions?.forEach(item => {\n const uuid = PepGuid.newGuid();\n this.menuHandlers[uuid] = item.handler;\n res.push({\n key: uuid,\n text: item.title\n })\n })\n }\n\n return res;\n }\n\n private getMenuObjects() {\n const menuObjects: any = {\n success: false,\n data: new PepSelectionData()\n };\n\n if (this.pepList) {\n menuObjects.success = true;\n menuObjects.data = this.pepList.getSelectedItemsData();\n }\n\n return menuObjects;\n }\n\n private initSearch() {\n this.searchString = '';\n this.search?.initSearch();\n }\n\n private initSmartSearch() {\n this._appliedFilters = [];\n this.smartFiltersComponent?.clearFilters();\n }\n\n private async loadData(fromIndex: number, toIndex: number): Promise<PepRowData[]> {\n this._loaderService.show();\n let converedData: PepRowData[] = [];\n const data: IPepGenericListInitData = await this._dataSource.init({\n searchString: this.searchString || undefined,\n filters: this._appliedFilters.length ? this._appliedFilters : undefined,\n sorting: this._sorting || undefined,\n fromIndex: fromIndex,\n toIndex: toIndex\n }); \n this._loaderService.hide();\n\n // Set the total count\n this.totalRowCount = data?.totalCount || 0;\n this.setEmptyState();\n\n if (data) {\n this._dataView = data.dataView;\n\n if (data.items?.length > 0 && !data.isPepRowData) { \n converedData = data.items.map(item => this._genericListService.convertToPepRowData(item, data.dataView, this.uuidMapping));\n }\n }\n\n return converedData;\n }\n\n\n private async updateDataList(fromIndex: number, toIndex: number, pageIndex: number | undefined = undefined): Promise<PepRowData[]> {\n if (this._dataSource.update) {\n this._loaderService.show();\n let converedData: PepRowData[] = [];\n const dataList = await this._dataSource.update({\n searchString: this.searchString || undefined,\n filters: this._appliedFilters.length ? this._appliedFilters : undefined,\n sorting: this._sorting || undefined,\n fromIndex: fromIndex,\n toIndex: toIndex,\n pageIndex: pageIndex\n });\n this._loaderService.hide();\n\n if (dataList?.length > 0) {\n converedData = dataList.map(item => this._genericListService.convertToPepRowData(item, this._dataView, this.uuidMapping));\n } \n return converedData;\n } else {\n return [];\n }\n }\n\n /**\n * loads virtual scroll items from api\n */\n private async onLoadItems(event: IPepListLoadItemsEvent) {\n const list = await this.updateDataList(event.fromIndex, event.toIndex);\n const convertedList = this._dataConvertorService.convertListData(list);\n const selectedItems = this._genericListService.getSelectedItems(convertedList);\n if (selectedItems?.length) {\n this.pepList.setSelectedIds(selectedItems);\n }\n this.pepList.updateItems(convertedList, event);\n }\n\n /**\n * loads paging bulk from api\n */\n private async onLoadPage(event: IPepListLoadPageEvent) {\n const fromIndex = event.pageIndex * event.pageSize;\n const toIndex = Math.min(fromIndex + event.pageSize - 1, this.totalRowCount - 1);\n const list = await this.updateDataList(fromIndex, toIndex, event.pageIndex);\n const convertedList = this._dataConvertorService.convertListData(list);\n const selectedItems = this._genericListService.getSelectedItems(convertedList);\n if (selectedItems?.length) {\n this.pepList.setSelectedIds(selectedItems);\n }\n this.pepList.updatePage(convertedList, event);\n }\n\n getItemById(id: string): ObjectsDataRow | null {\n if (this.pepList) {\n return this._pepList.getItemDataByID(id);\n } else {\n return null;\n }\n }\n\n getSelectedItems(): PepSelectionData | null {\n if (this.pepList) {\n return this._pepList.getSelectedItemsData();\n } else {\n return null;\n }\n }\n\n getPageIndex() {\n return this.pepList.pageIndex;\n }\n\n onActionItemClicked(action: IPepMenuItemClickEvent): void {\n const result = this.getMenuObjects();\n if (result.success) {\n this.menuHandlers[action.source.key](result.data);\n }\n }\n\n onSearchChanged(event: IPepSearchClickEvent) {\n this.searchString = event.value;\n this.initList();\n }\n\n onSelectedItemsChanged(selectedRowsCount: number) {\n //loading menu items after pep-list selected items are updated\n setTimeout(() => {\n this.loadMenuItems();\n }, 0);\n }\n\n onCustomizeFieldClick(fieldClickEvent: IPepFormFieldClickEvent) {\n this.fieldClick.emit(fieldClickEvent);\n }\n\n onBreadCrumbItemClick(event: IPepBreadCrumbItemClickEvent) {\n this.breadCrumbItemClick.emit(event);\n }\n\n onValueChanged(event: IPepFormFieldValueChangeEvent) {\n this.valueChange.emit(event);\n }\n\n onSortingChange(event: IPepListSortingChangeEvent) {\n this._sorting = event;\n this.initList();\n }\n\n onFiltersChange(filters: IPepSmartFilterData[]) {\n this._appliedFilters = filters;\n this.initList();\n }\n\n onListLoad(): void {\n this.listLoad.emit();\n }\n\n ngOnDestroy() {\n if (this._resize$) {\n this._resize$.unsubscribe();\n }\n if (this._loader$) {\n this._loader$.unsubscribe();\n }\n }\n\n}\n","<div *ngIf=\"inline\" class=\"inline-container\" [ngClass]=\"{ 'add-padding': addPadding, 'with-smart-filters': showSmartFilter }\">\n <div class=\"header-area\" >\n <div *ngIf=\"showTopBar\" class=\"inline-top-bar-container\">\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </div>\n <ng-container *ngIf=\"description\">\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\">\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n </div>\n <ng-container *ngIf=\"showSmartFilter\">\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!onLoad\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </ng-container>\n</div>\n<pep-page-layout *ngIf=\"!inline\" class=\"none-inline\" [addPadding]=\"addPadding\" [showShadow]=\"showSmartFilter\">\n <ng-container *ngIf=\"showSmartFilter\" pep-side-area>\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"showTopBar\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"description\" pep-top-area>\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n <div *ngIf=\"!onLoad\" pep-main-area class=\"main-area-container\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </div>\n</pep-page-layout>\n\n<ng-template #topBarTemplate>\n <pep-top-bar [title]=\"title\" [inline]=\"inline\">\n <div header-start-content>\n <ng-content select=\"[left-buttons]\"></ng-content>\n </div>\n <div header-end-content>\n <ng-content select=\"[right-buttons]\"></ng-content>\n </div>\n <!-- <div footer-start-content>\n <ng-content select=\"[left-bottom-area]\"></ng-content> \n </div>\n <div footer-end-content>\n <ng-content select=\"[right-bottom-area]\"></ng-content> \n </div> -->\n <pep-list-actions *ngIf=\"menuActions.length > 0\" [sizeType]=\"inline ? 'sm' : 'md'\" [actions]=\"menuActions\"\n (actionClick)=\"onActionItemClicked($event)\"></pep-list-actions>\n <pep-list-total [sizeType]=\"inline ? 'sm' : 'md'\" [totalRows]=\"totalRowCount\">\n </pep-list-total>\n <pep-search #search *ngIf=\"showSearch\" [value]=\"searchString\" [sizeType]=\"inline ? 'sm' : 'md'\"\n (search)=\"onSearchChanged($event)\">\n </pep-search>\n </pep-top-bar>\n</ng-template>\n\n<ng-template #smartFilterTemplate> \n <pep-side-bar #sideNav [ngClass]=\"{'smart-filter-area': inline}\"> \n <pep-smart-filters #smartFiltersComponent [title]=\"smartFilters.title\" [fields]=\"smartFilters.fields\"\n [filters]=\"smartFilters.data\" (filtersChange)=\"onFiltersChange($event)\">\n </pep-smart-filters>\n </pep-side-bar>\n</ng-template>\n\n<ng-template #breadCrumbsTemplate>\n <pep-bread-crumbs class=\"bread-crumbs\" [items]=\"breadCrumbsItems\" [addSpacing]=\"true\" [displayType]=\"'items'\"\n (itemClick)=\"onBreadCrumbItemClick($event)\"></pep-bread-crumbs>\n</ng-template>\n\n<ng-template #listTemplate>\n <div *ngIf=\"showEmptyState\" class=\"list-empty-state\">\n <div class=\"list-empty-title\">{{ listInputs.emptyState.title }}</div>\n <div class=\"list-empty-descr\">{{ listInputs.emptyState.description }}</div>\n <pep-icon name=\"leaf_skiny\" class=\"leaf-skiny\"></pep-icon>\n <pep-icon name=\"leaf_round\" class=\"leaf-round\"></pep-icon>\n <!-- <mat-icon class=\"leaf-skiny\">\n <pep-icon name=\"leaf_skiny\"></pep-icon>\n </mat-icon> -->\n <!-- <mat-icon class=\"leaf-round\">\n <pep-icon name=\"leaf_round\"></pep-icon>\n </mat-icon> -->\n </div>\n <div *ngIf=\"!showEmptyState\" class=\"list-container\">\n <ng-container #pepListContainer></ng-container>\n </div>\n</ng-template>","import { NgModule, APP_INITIALIZER } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateService } from '@ngx-translate/core';\nimport { GenericListComponent } from './generic-list.component';\nimport { MatIconModule } from '@angular/material/icon';\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepListModule } from '@pepperi-addons/ngx-lib/list';\nimport { PepFormModule } from '@pepperi-addons/ngx-lib/form';\nimport { PepMenuModule } from '@pepperi-addons/ngx-lib/menu';\nimport { PepPageLayoutModule } from '@pepperi-addons/ngx-lib/page-layout';\nimport { PepTopBarModule } from '@pepperi-addons/ngx-lib/top-bar';\nimport { PepSideBarModule } from '@pepperi-addons/ngx-lib/side-bar';\nimport { PepSearchModule } from '@pepperi-addons/ngx-lib/search';\nimport { PepBreadCrumbsModule } from '@pepperi-addons/ngx-lib/bread-crumbs';\nimport { PepSmartFiltersModule } from '@pepperi-addons/ngx-lib/smart-filters';\nimport { PepIconModule, PepIconRegistry, pepIconLeafRound, pepIconLeafSkiny, pepIconSystemView } from '@pepperi-addons/ngx-lib/icon';\nimport { PepGenericListService } from './generic-list.service';\nimport { firstValueFrom } from 'rxjs';\n\nconst pepIcons = [\n pepIconLeafRound,\n pepIconLeafSkiny, pepIconSystemView\n]\n\n/*\nexport function appInitializerFactory(translate: TranslateService) {\n return () => {\n translate.setDefaultLang('en');\n return firstValueFrom(translate.use('en'));\n }\n}*/\n\n@NgModule({\n declarations: [\n GenericListComponent\n ],\n imports: [\n CommonModule,\n PepNgxLibModule,\n MatIconModule,\n PepListModule,\n PepFormModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTopBarModule,\n PepSideBarModule,\n PepSearchModule,\n PepBreadCrumbsModule,\n PepIconModule,\n PepSmartFiltersModule\n ],\n exports: [\n GenericListComponent \n ],\n providers: [\n PepGenericListService,\n /*{\n provide: APP_INITIALIZER,\n useFactory: appInitializerFactory,\n deps: [TranslateService],\n multi: true\n } */\n ]\n})\nexport class PepGenericListModule { \n constructor(\n private pepIconRegistry: PepIconRegistry\n ) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/generic-list\n */\nexport * from './generic-list.module';\nexport * from './generic-list.component';\nexport * from './generic-list.model';\nexport * from './generic-list.service';\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3.PepGenericListService","i11"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"pepperi-addons-ngx-composite-lib-generic-list.mjs","sources":["../../../projects/ngx-composite-lib/generic-list/generic-list.service.ts","../../../projects/ngx-composite-lib/generic-list/generic-list.component.ts","../../../projects/ngx-composite-lib/generic-list/generic-list.component.html","../../../projects/ngx-composite-lib/generic-list/generic-list.module.ts","../../../projects/ngx-composite-lib/generic-list/public-api.ts","../../../projects/ngx-composite-lib/generic-list/pepperi-addons-ngx-composite-lib-generic-list.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n IPepGenericListSmartFilter,\n IPepGenericListDataViewField,\n IPepSmartFilters\n} from './generic-list.model';\nimport {\n PepSmartFilterBaseField,\n IPepSmartFilterData,\n} from '@pepperi-addons/ngx-lib/smart-filters';\nimport { PepQueryBuilderService, IPepQueryBuilderField } from '@pepperi-addons/ngx-lib/query-builder';\nimport {\n PepRowData,\n ObjectsDataRow\n} from '@pepperi-addons/ngx-lib';\nimport { GridDataViewField, DataViewFieldTypes } from '@pepperi-addons/papi-sdk/dist/entities/data-view';\n\n@Injectable() \nexport class PepGenericListService {\n\n constructor(\n private _translate: TranslateService,\n private _queryBuilderService: PepQueryBuilderService\n ) {\n //\n }\n\n /**\n * checks if the object contains property\n * @param obj object\n * @param prop property name\n * @returns true if contains, false otherwise\n */\n hasProperty(obj: any, prop: string) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n }\n\n getListViewType(dataViewType: string) {\n switch (dataViewType) {\n case 'Grid':\n return 'table';\n case 'Card':\n return 'cards';\n case 'Line':\n return 'lines';\n default:\n return 'table';\n }\n }\n\n convertToPepRowData(item: any, dataView: any, uuidMapping: string) {\n const row = new PepRowData();\n let itemFields: any;\n\n if (this.hasProperty(item, 'fields') && typeof item.fields === 'object') {\n itemFields = item.fields;\n if (item.isEditable === false) {\n row.IsEditable = false;\n }\n if (item.isSelectableForActions === false) {\n row.IsSelectableForActions = false;\n }\n if (item.isEditable && item.isSelectableForActions && item.isSelected) {\n row.IsSelected = true;\n }\n } else {\n itemFields = item;\n }\n\n row.UUID = itemFields[uuidMapping] || undefined;\n row.Fields = [];\n\n if (dataView?.Fields && dataView.Columns) {\n for (let index = 0; index < dataView.Fields.length; index++) {\n const field = dataView.Fields[index] as IPepGenericListDataViewField;\n row.Fields.push({\n ApiName: field.FieldID,\n Title: field.Title ? this._translate.instant(field.Title) : '',\n XAlignment: 1,\n FormattedValue: (itemFields[field.FieldID] || '').toString(),\n Value: (itemFields[field.FieldID] || '').toString(),\n ColumnWidth: dataView.Columns[index]?.Width || undefined,\n AdditionalValue: '',\n OptionalValues: field.OptionalValues || [],\n FieldType: DataViewFieldTypes[field.Type],\n ReadOnly: field.ReadOnly,\n Enabled: !field.ReadOnly\n })\n }\n }\n return row;\n }\n\n convertToUiControlField(field: any) {\n return {\n ApiName: field.ApiName,\n FieldType: field.FieldType,\n Title: field.Title,\n ReadOnly: field.ReadOnlyField,\n ColumnWidth: field.ColumnWidth,\n ColumnWidthType: 1,\n Layout: {\n X: field.Layout.X,\n Y: field.Layout.Y,\n Width: field.Layout.Width,\n Height: field.Layout.Field_Height,\n XAlignment: field.Layout.xAlignment,\n YAlignment: field.Layout.yAlignment,\n }\n }\n }\n\n convertToSmartFilter(input: IPepGenericListSmartFilter) { \n const smartFilters: IPepSmartFilters = {\n fields: [],\n data: [],\n title: 'Filters'\n }\n\n if (input) {\n if (input.dataView) {\n smartFilters.fields = this.createSmartFilterFields(input.dataView);\n if (input.data?.length) {\n smartFilters.data = input.data;\n }\n }\n if (input.title) {\n smartFilters.title = input.title;\n }\n }\n\n return smartFilters; \n }\n\n createSmartFilterFields(dataView: any) {\n let smartFields: PepSmartFilterBaseField[] = [];\n\n const fields = dataView.Fields.map((field: any) => {\n return {\n FieldID: field.FieldID,\n FieldType: field.Type,\n Title: field.Title,\n OptionalValues: field.OptionalValues\n } as IPepQueryBuilderField\n });\n const smartFilterfields = this._queryBuilderService.convertToSmartFilterFields(fields);\n if (smartFilterfields?.length) {\n smartFields = smartFilterfields.map((field => field.smart));\n }\n\n return smartFields;\n }\n\n // TODO: This func is copy from ngx-lib write it in one place.\n private getUniqItemId(itemId: string, itemType = ''): string {\n return itemId + ',' + itemType;\n }\n\n getSelectedItems(items: ObjectsDataRow[]) {\n const selectedItems = [];\n\n for (let i = 0; i < items.length; i++) {\n if (items[i].IsSelected) {\n selectedItems.push(this.getUniqItemId(items[i].UID, items[i].Type?.toString()));\n }\n }\n\n return selectedItems;\n }\n\n\n}","import {\n Component,\n OnInit,\n ViewChild,\n Input,\n Output,\n EventEmitter,\n ViewContainerRef\n} from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n PepDataConvertorService,\n PepLayoutService,\n ObjectsDataRow,\n PepGuid,\n UIControl,\n PepLoaderService,\n PepRowData,\n PepSessionService\n} from '@pepperi-addons/ngx-lib';\nimport { Subscription } from 'rxjs';\nimport { IPepFormFieldClickEvent } from '@pepperi-addons/ngx-lib/form';\nimport {\n PepListComponent,\n PepSelectionData,\n IPepListLoadPageEvent,\n PepListSelectionType,\n IPepListSortingChangeEvent,\n DEFAULT_PAGE_SIZE,\n IPepListLoadItemsEvent,\n PepListTableViewType,\n IPepListSortingData,\n IPepListStartIndexChangeEvent\n} from '@pepperi-addons/ngx-lib/list';\nimport {\n PepMenuItem,\n IPepMenuItemClickEvent,\n} from '@pepperi-addons/ngx-lib/menu';\nimport { IPepFormFieldValueChangeEvent } from '@pepperi-addons/ngx-lib/form';\nimport {\n PepBreadCrumbItem,\n IPepBreadCrumbItemClickEvent\n} from '@pepperi-addons/ngx-lib/bread-crumbs';\nimport { IPepSearchClickEvent, PepSearchComponent } from '@pepperi-addons/ngx-lib/search';\n\nimport {\n DataView,\n GridDataView\n} from '@pepperi-addons/papi-sdk/dist/entities/data-view';\nimport {\n IPepGenericListInitData,\n IPepGenericListDataSource,\n IPepGenericListPager,\n IPepGenericListActions,\n IPepGenericListSmartFilter,\n IPepSmartFilters,\n IPepGenericListEmptyState\n} from './generic-list.model';\nimport { PepGenericListService } from './generic-list.service';\nimport { DataViewConverter } from '@pepperi-addons/data-views';\nimport {\n IPepSmartFilterData,\n PepSmartFilterBaseField,\n PepSmartFiltersComponent\n} from '@pepperi-addons/ngx-lib/smart-filters';\n\n\n@Component({\n selector: 'pep-generic-list',\n templateUrl: './generic-list.component.html',\n styleUrls: ['./generic-list.component.scss', './generic-list.component.theme.scss'],\n providers: [PepGenericListService]\n})\nexport class GenericListComponent implements OnInit {\n @ViewChild('search') search: PepSearchComponent | undefined;\n @ViewChild('smartFiltersComponent') smartFiltersComponent: PepSmartFiltersComponent | undefined;\n\n private _pepListContainer: ViewContainerRef | undefined;\n @ViewChild('pepListContainer', { read: ViewContainerRef })\n set pepListContainer(val: ViewContainerRef) {\n this._pepListContainer = val;\n }\n\n private _dataSource: IPepGenericListDataSource = {\n init: async (params: any) => {\n return {\n dataView: {\n Type: 'Grid'\n },\n totalCount: -1,\n items: []\n }\n }\n }\n @Input()\n set dataSource(val: IPepGenericListDataSource) {\n this._dataSource = val;\n this._sorting = undefined;\n this.initSearch();\n this.initSmartSearch();\n this.initList();\n }\n\n @Input()\n actions: IPepGenericListActions = {\n get: async (data: any) => {\n return []\n }\n };\n\n @Input()\n uuidMapping = 'key';\n\n @Input()\n disabled = false;\n\n @Input()\n addPadding = false;\n\n @Input()\n title = '';\n\n @Input()\n description = '';\n\n @Input()\n inline = false;\n\n @Input()\n showSearch = false;\n\n @Input()\n noDataFoundMsg = '';\n\n @Input()\n emptyState: IPepGenericListEmptyState | undefined;\n\n @Input()\n selectionType: PepListSelectionType = 'multi';\n\n @Input()\n supportSorting = false;\n\n @Input()\n supportSortingFields: string[] | undefined = undefined;\n\n @Input()\n sorting: IPepListSortingData | undefined;\n\n @Input()\n cacheSize = -1;\n\n @Input()\n hideSelectAll = false;\n \n @Input()\n pager: IPepGenericListPager = {\n type: 'scroll'\n }\n\n @Input()\n tableViewType: PepListTableViewType = 'regular';\n\n @Input()\n zebraStripes = false;\n\n @Input()\n set smartFilter(val: IPepGenericListSmartFilter) {\n this.smartFilters = this._genericListService.convertToSmartFilter(val);\n this._appliedFilters = this.smartFilters.data || [];\n this.showSmartFilter = this.smartFilters.fields.length > 0; \n }\n\n @Input()\n showTopBar = false;\n\n @Input()\n breadCrumbsItems: PepBreadCrumbItem[] = new Array<PepBreadCrumbItem>();\n\n @Input()\n selectAll = false\n\n @Input()\n scrollPosition = 0\n\n @Output()\n fieldClick = new EventEmitter<IPepFormFieldClickEvent>();\n\n @Output()\n valueChange = new EventEmitter<IPepFormFieldValueChangeEvent>();\n\n @Output()\n breadCrumbItemClick = new EventEmitter<IPepBreadCrumbItemClickEvent>();\n\n @Output()\n startIndexChange = new EventEmitter<IPepListStartIndexChangeEvent>()\n\n @Output()\n listLoad: EventEmitter<void> = new EventEmitter<void>();\n\n set pepList(val: PepListComponent) {\n this._pepList = val;\n }\n\n get pepList() {\n return this._pepList;\n }\n\n private _resize$: Subscription = new Subscription();\n private _loader$: Subscription = new Subscription();\n\n private _dataView: DataView = {\n Type: 'Grid'\n };\n private _pepList: any;\n onLoad = true;\n listInputs: any;\n totalRowCount = -1;\n searchString = '';\n showSmartFilter = false;\n showEmptyState = false;\n smartFilters: IPepSmartFilters = {\n fields: [],\n data: [],\n title: 'Filters'\n };\n private _appliedFilters: IPepSmartFilterData[] = [];\n private _sorting: IPepListSortingChangeEvent | undefined = undefined;\n\n menuHandlers: { [key: string]: (obj: any) => Promise<void> } = {};\n menuActions: Array<PepMenuItem> = [];\n\n constructor(\n private _dataConvertorService: PepDataConvertorService,\n private _layoutService: PepLayoutService,\n private _loaderService: PepLoaderService,\n private _translate: TranslateService,\n private _genericListService: PepGenericListService,\n private _sessionService: PepSessionService\n ) {\n this._resize$ = this._layoutService.onResize$.pipe().subscribe((size) => { \n // \n });\n this._loader$ = this._loaderService.onChanged$.subscribe((status: boolean) => {\n //\n });\n }\n\n ngOnInit() {\n //\n }\n\n private async initList() {\n this.onLoad = true;\n setTimeout(async () => { //making sure all input data is available\n if (this._dataSource) {\n //merge selector inputs with callback inputs\n this.loadTableInputs();\n\n let fromIndex = 0;\n let toIndex = 0;\n\n if (this.listInputs.pager.type === 'pages') {\n fromIndex = this.listInputs.pager.size * this.listInputs.pager.index;\n toIndex = fromIndex + (this.listInputs.pager.size || DEFAULT_PAGE_SIZE) - 1;\n } else {\n toIndex = 100;//TO DO - get value from - this.customList.getTopItems()\n }\n\n const data = await this.loadData(fromIndex, toIndex);\n \n if (this.listInputs?.emptyState?.show === true) {\n this.setEmptyState();\n }\n this.onLoad = false;\n //show empty state\n if (this.showEmptyState) {\n if (!this.listInputs.emptyState.title) { \n this._translate.get('GENERIC_LIST.EMPTY_STATE.TITLE').subscribe(text => { \n this.listInputs.emptyState.title = text;\n });\n }\n if (!this.listInputs.emptyState.description) { \n this._translate.get('GENERIC_LIST.EMPTY_STATE.DESCRIPTION').subscribe(text => { \n this.listInputs.emptyState.description = text;\n });\n }\n return;\n }\n setTimeout(async () => {\n if (this._pepListContainer) {\n if (this._pepListContainer.length > 0) {\n this._pepListContainer.remove();\n }\n const { PepListComponent } = await import('@pepperi-addons/ngx-lib/list');\n const componentRef = this._pepListContainer.createComponent(PepListComponent);\n\n this.pepList = componentRef.instance;\n \n componentRef.instance.viewType = this._genericListService.getListViewType(this._dataView.Type);\n componentRef.instance.tableViewType = this.listInputs.tableViewType;\n componentRef.instance.zebraStripes = this.listInputs.zebraStripes;\n if (this.disabled) {\n componentRef.instance.disabled = true;\n componentRef.instance.lockItemInnerEvents = true;\n }\n componentRef.instance.supportSorting = this.listInputs.supportSorting;\n componentRef.instance.supportSortingFields = this.listInputs.supportSortingFields;\n componentRef.instance.sorting = this.listInputs.sorting;\n componentRef.instance.cacheSize = this.listInputs.cacheSize;\n\n componentRef.instance.selectionTypeForActions = this.listInputs.selectionType;\n componentRef.instance.hideAllSelectionInMulti = this.listInputs.hideSelectAll;\n\n componentRef.instance.showCardSelection = this.listInputs.selectionType !== 'none';\n componentRef.instance.pagerType = this.listInputs.pager.type;\n if (this.listInputs.pager.type === 'pages') {\n componentRef.instance.pageSize = this.listInputs.pager?.size || DEFAULT_PAGE_SIZE;\n componentRef.instance.pageIndex = this.listInputs.pager?.index || 0;\n }\n if(this.selectionType == \"multi\" && this.selectAll){\n this._sessionService.setObject('AllSelected', true)\n }\n componentRef.instance.noDataFoundMsg = this.listInputs.noDataFoundMsg;\n componentRef.instance.startIndexChange.subscribe($event => {\n this.startIndexChange.emit($event)\n })\n componentRef.instance.fieldClick.subscribe(($event) => {\n this.onCustomizeFieldClick($event);\n });\n componentRef.instance.selectedItemsChange.subscribe(($event) => {\n this.onSelectedItemsChanged($event);\n });\n componentRef.instance.loadItems.subscribe(($event) => {\n this.onLoadItems($event);\n });\n componentRef.instance.loadPage.subscribe(($event) => {\n this.onLoadPage($event);\n });\n componentRef.instance.valueChange.subscribe(($event) => {\n this.onValueChanged($event);\n });\n componentRef.instance.sortingChange.subscribe(($event) => {\n this.onSortingChange($event);\n });\n componentRef.instance.listLoad.subscribe(($event) => {\n this.onSelectedItemsChanged(this._pepList.selectedItems.length);\n this.onListLoad();\n });\n let convertedList: ObjectsDataRow[] = [];\n if (data) {\n if (data?.length) {\n convertedList = this._dataConvertorService.convertListData(data);\n }\n const uiControl = this.getUiControl(DataViewConverter.toUIControlData(this._dataView));\n const selectedItems = this._genericListService.getSelectedItems(convertedList);\n if (selectedItems?.length) {\n componentRef.instance.setSelectedIds(selectedItems);\n } \n \n componentRef.instance.initListData(uiControl, this.totalRowCount, convertedList);\n }\n componentRef.instance.scrollToIndex(this.scrollPosition)\n }\n }, 0);\n }\n }, 0);\n }\n\n /**\n * loads inputs in case they are provided and merge with selector inputs\n * @returns merged pep-list inputs\n */\n private loadTableInputs() {\n this.listInputs = {\n supportSorting: this.supportSorting,\n supportSortingFields: this.supportSortingFields,\n sorting: this.sorting,\n cacheSize: this.cacheSize,\n hideSelectAll: this.hideSelectAll,\n selectionType: this.selectionType,\n pager: this.pager,\n noDataFoundMsg: this.noDataFoundMsg,\n tableViewType: this.tableViewType,\n zebraStripes: this.zebraStripes,\n emptyState: this.emptyState,\n selectAll: this.selectAll\n };\n if (this._dataSource.inputs) {\n Object.entries(this._dataSource.inputs).forEach((item: any) => {\n if (this._genericListService.hasProperty(this.listInputs, item[0])) {\n this.listInputs[item[0]] = item[1];\n }\n });\n }\n }\n\n /**\n * detemines whether empty state is to be displayed\n */\n private setEmptyState() {\n this.showEmptyState = this.totalRowCount === 0 &&\n this.searchString === '' &&\n this._appliedFilters.length === 0;\n }\n\n private getUiControl(data: any): UIControl {\n const uiControl = new UIControl();\n uiControl.ControlFields = [];\n\n if (data?.ControlFields) {\n uiControl.ControlFields = data.ControlFields.map((field: any) => this._genericListService.convertToUiControlField(field));\n }\n\n return uiControl;\n }\n\n private loadMenuItems(): void { //TODO\n if (this.listInputs.selectionType !== 'none') {\n this.getMenuActions().then(\n x => this.menuActions = x\n );\n }\n }\n\n private async getMenuActions(): Promise<PepMenuItem[]> {\n const res: PepMenuItem[] = [];\n const result = this.getMenuObjects();\n if (result.success) {\n const actions = await this.actions.get(result.data);\n this.menuHandlers = {};\n actions?.forEach(item => {\n const uuid = PepGuid.newGuid();\n this.menuHandlers[uuid] = item.handler;\n res.push({\n key: uuid,\n text: item.title\n })\n })\n }\n\n return res;\n }\n\n private getMenuObjects() {\n const menuObjects: any = {\n success: false,\n data: new PepSelectionData()\n };\n\n if (this.pepList) {\n menuObjects.success = true;\n menuObjects.data = this.pepList.getSelectedItemsData();\n }\n\n return menuObjects;\n }\n\n private initSearch() {\n this.searchString = '';\n this.search?.initSearch();\n }\n\n private initSmartSearch() {\n this._appliedFilters = [];\n this.smartFiltersComponent?.clearFilters();\n }\n\n private async loadData(fromIndex: number, toIndex: number): Promise<PepRowData[]> {\n this._loaderService.show();\n let converedData: PepRowData[] = [];\n const data: IPepGenericListInitData = await this._dataSource.init({\n searchString: this.searchString || undefined,\n filters: this._appliedFilters.length ? this._appliedFilters : undefined,\n sorting: this._sorting || undefined,\n fromIndex: fromIndex,\n toIndex: toIndex\n }); \n this._loaderService.hide();\n\n // Set the total count\n this.totalRowCount = data?.totalCount || 0;\n this.setEmptyState();\n\n if (data) {\n this._dataView = data.dataView;\n\n if (data.items?.length > 0 && !data.isPepRowData) { \n converedData = data.items.map(item => this._genericListService.convertToPepRowData(item, data.dataView, this.uuidMapping));\n }\n }\n\n return converedData;\n }\n\n\n private async updateDataList(fromIndex: number, toIndex: number, pageIndex: number | undefined = undefined): Promise<PepRowData[]> {\n if (this._dataSource.update) {\n this._loaderService.show();\n let converedData: PepRowData[] = [];\n const dataList = await this._dataSource.update({\n searchString: this.searchString || undefined,\n filters: this._appliedFilters.length ? this._appliedFilters : undefined,\n sorting: this._sorting || undefined,\n fromIndex: fromIndex,\n toIndex: toIndex,\n pageIndex: pageIndex\n });\n this._loaderService.hide();\n\n if (dataList?.length > 0) {\n converedData = dataList.map(item => this._genericListService.convertToPepRowData(item, this._dataView, this.uuidMapping));\n } \n return converedData;\n } else {\n return [];\n }\n }\n\n /**\n * loads virtual scroll items from api\n */\n private async onLoadItems(event: IPepListLoadItemsEvent) {\n const list = await this.updateDataList(event.fromIndex, event.toIndex);\n const convertedList = this._dataConvertorService.convertListData(list);\n const selectedItems = this._genericListService.getSelectedItems(convertedList);\n if (selectedItems?.length) {\n this.pepList.setSelectedIds(selectedItems);\n }\n this.pepList.updateItems(convertedList, event);\n }\n\n /**\n * loads paging bulk from api\n */\n private async onLoadPage(event: IPepListLoadPageEvent) {\n const fromIndex = event.pageIndex * event.pageSize;\n const toIndex = Math.min(fromIndex + event.pageSize - 1, this.totalRowCount - 1);\n const list = await this.updateDataList(fromIndex, toIndex, event.pageIndex);\n const convertedList = this._dataConvertorService.convertListData(list);\n const selectedItems = this._genericListService.getSelectedItems(convertedList);\n if (selectedItems?.length) {\n this.pepList.setSelectedIds(selectedItems);\n }\n this.pepList.updatePage(convertedList, event);\n }\n\n getItemById(id: string): ObjectsDataRow | null {\n if (this.pepList) {\n return this._pepList.getItemDataByID(id);\n } else {\n return null;\n }\n }\n\n getSelectedItems(): PepSelectionData | null {\n if (this.pepList) {\n return this._pepList.getSelectedItemsData();\n } else {\n return null;\n }\n }\n\n getPageIndex() {\n return this.pepList.pageIndex;\n }\n\n onActionItemClicked(action: IPepMenuItemClickEvent): void {\n const result = this.getMenuObjects();\n if (result.success) {\n this.menuHandlers[action.source.key](result.data);\n }\n }\n\n onSearchChanged(event: IPepSearchClickEvent) {\n this.searchString = event.value;\n this.initList();\n }\n\n onSelectedItemsChanged(selectedRowsCount: number) {\n //loading menu items after pep-list selected items are updated\n setTimeout(() => {\n this.loadMenuItems();\n }, 0);\n }\n\n onCustomizeFieldClick(fieldClickEvent: IPepFormFieldClickEvent) {\n this.fieldClick.emit(fieldClickEvent);\n }\n\n onBreadCrumbItemClick(event: IPepBreadCrumbItemClickEvent) {\n this.breadCrumbItemClick.emit(event);\n }\n\n onValueChanged(event: IPepFormFieldValueChangeEvent) {\n this.valueChange.emit(event);\n }\n\n onSortingChange(event: IPepListSortingChangeEvent) {\n this._sorting = event;\n this.initList();\n }\n\n onFiltersChange(filters: IPepSmartFilterData[]) {\n this._appliedFilters = filters;\n this.initList();\n }\n\n onListLoad(): void {\n this.listLoad.emit();\n }\n\n ngOnDestroy() {\n if (this._resize$) {\n this._resize$.unsubscribe();\n }\n if (this._loader$) {\n this._loader$.unsubscribe();\n }\n }\n\n}\n","<div *ngIf=\"inline\" class=\"inline-container\" [ngClass]=\"{ 'add-padding': addPadding, 'with-smart-filters': showSmartFilter }\">\n <div class=\"header-area\" >\n <div *ngIf=\"showTopBar\" class=\"inline-top-bar-container\">\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </div>\n <ng-container *ngIf=\"description\">\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\">\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n </div>\n <ng-container *ngIf=\"showSmartFilter\">\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"!onLoad\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </ng-container>\n</div>\n<pep-page-layout *ngIf=\"!inline\" class=\"none-inline\" [addPadding]=\"addPadding\" [showShadow]=\"showSmartFilter\">\n <ng-container *ngIf=\"showSmartFilter\" pep-side-area>\n <ng-container *ngTemplateOutlet=\"smartFilterTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"showTopBar\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"description\" pep-top-area>\n <div class=\"list-description\">{{description}}</div>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n <div *ngIf=\"!onLoad\" pep-main-area class=\"main-area-container\">\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n </div>\n</pep-page-layout>\n\n<ng-template #topBarTemplate>\n <pep-top-bar [title]=\"title\" [inline]=\"inline\">\n <div header-start-content>\n <ng-content select=\"[left-buttons]\"></ng-content>\n </div>\n <div header-end-content>\n <ng-content select=\"[right-buttons]\"></ng-content>\n </div>\n <!-- <div footer-start-content>\n <ng-content select=\"[left-bottom-area]\"></ng-content> \n </div>\n <div footer-end-content>\n <ng-content select=\"[right-bottom-area]\"></ng-content> \n </div> -->\n <pep-list-actions *ngIf=\"menuActions.length > 0\" [sizeType]=\"inline ? 'sm' : 'md'\" [actions]=\"menuActions\"\n (actionClick)=\"onActionItemClicked($event)\"></pep-list-actions>\n <pep-list-total [sizeType]=\"inline ? 'sm' : 'md'\" [totalRows]=\"totalRowCount\">\n </pep-list-total>\n <pep-search #search *ngIf=\"showSearch\" [value]=\"searchString\" [sizeType]=\"inline ? 'sm' : 'md'\"\n (search)=\"onSearchChanged($event)\">\n </pep-search>\n </pep-top-bar>\n</ng-template>\n\n<ng-template #smartFilterTemplate> \n <pep-side-bar #sideNav [ngClass]=\"{'smart-filter-area': inline}\"> \n <pep-smart-filters #smartFiltersComponent [title]=\"smartFilters.title\" [fields]=\"smartFilters.fields\"\n [filters]=\"smartFilters.data\" (filtersChange)=\"onFiltersChange($event)\">\n </pep-smart-filters>\n </pep-side-bar>\n</ng-template>\n\n<ng-template #breadCrumbsTemplate>\n <pep-bread-crumbs class=\"bread-crumbs\" [items]=\"breadCrumbsItems\" [addSpacing]=\"true\" [displayType]=\"'items'\"\n (itemClick)=\"onBreadCrumbItemClick($event)\"></pep-bread-crumbs>\n</ng-template>\n\n<ng-template #listTemplate>\n <div *ngIf=\"showEmptyState\" class=\"list-empty-state\">\n <div class=\"list-empty-title\">{{ listInputs.emptyState.title }}</div>\n <div class=\"list-empty-descr\">{{ listInputs.emptyState.description }}</div>\n <pep-icon name=\"leaf_skiny\" class=\"leaf-skiny\"></pep-icon>\n <pep-icon name=\"leaf_round\" class=\"leaf-round\"></pep-icon>\n <!-- <mat-icon class=\"leaf-skiny\">\n <pep-icon name=\"leaf_skiny\"></pep-icon>\n </mat-icon> -->\n <!-- <mat-icon class=\"leaf-round\">\n <pep-icon name=\"leaf_round\"></pep-icon>\n </mat-icon> -->\n </div>\n <div *ngIf=\"!showEmptyState\" class=\"list-container\">\n <ng-container #pepListContainer></ng-container>\n </div>\n</ng-template>","import { NgModule, APP_INITIALIZER } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TranslateService } from '@ngx-translate/core';\nimport { GenericListComponent } from './generic-list.component';\nimport { MatIconModule } from '@angular/material/icon';\nimport { PepNgxLibModule } from '@pepperi-addons/ngx-lib';\nimport { PepListModule } from '@pepperi-addons/ngx-lib/list';\nimport { PepFormModule } from '@pepperi-addons/ngx-lib/form';\nimport { PepMenuModule } from '@pepperi-addons/ngx-lib/menu';\nimport { PepPageLayoutModule } from '@pepperi-addons/ngx-lib/page-layout';\nimport { PepTopBarModule } from '@pepperi-addons/ngx-lib/top-bar';\nimport { PepSideBarModule } from '@pepperi-addons/ngx-lib/side-bar';\nimport { PepSearchModule } from '@pepperi-addons/ngx-lib/search';\nimport { PepBreadCrumbsModule } from '@pepperi-addons/ngx-lib/bread-crumbs';\nimport { PepSmartFiltersModule } from '@pepperi-addons/ngx-lib/smart-filters';\nimport { PepIconModule, PepIconRegistry, pepIconLeafRound, pepIconLeafSkiny, pepIconSystemView } from '@pepperi-addons/ngx-lib/icon';\nimport { PepGenericListService } from './generic-list.service';\nimport { firstValueFrom } from 'rxjs';\n\nconst pepIcons = [\n pepIconLeafRound,\n pepIconLeafSkiny, pepIconSystemView\n]\n\n/*\nexport function appInitializerFactory(translate: TranslateService) {\n return () => {\n translate.setDefaultLang('en');\n return firstValueFrom(translate.use('en'));\n }\n}*/\n\n@NgModule({\n declarations: [\n GenericListComponent\n ],\n imports: [\n CommonModule,\n PepNgxLibModule,\n MatIconModule,\n PepListModule,\n PepFormModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTopBarModule,\n PepSideBarModule,\n PepSearchModule,\n PepBreadCrumbsModule,\n PepIconModule,\n PepSmartFiltersModule\n ],\n exports: [\n GenericListComponent \n ],\n providers: [\n PepGenericListService,\n /*{\n provide: APP_INITIALIZER,\n useFactory: appInitializerFactory,\n deps: [TranslateService],\n multi: true\n } */\n ]\n})\nexport class PepGenericListModule { \n constructor(\n private pepIconRegistry: PepIconRegistry\n ) {\n this.pepIconRegistry.registerIcons(pepIcons);\n }\n}\n","/*\n * Public API Surface of ngx-composite-lib/generic-list\n */\nexport * from './generic-list.module';\nexport * from './generic-list.component';\nexport * from './generic-list.model';\nexport * from './generic-list.service';\n\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3.PepGenericListService","i11"],"mappings":"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"}
|
|
@@ -352,7 +352,7 @@ class ManageParametersComponent {
|
|
|
352
352
|
}
|
|
353
353
|
}
|
|
354
354
|
ManageParametersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ManageParametersComponent, deps: [{ token: i1.TranslateService }, { token: ManageParametersService }, { token: i3.PepDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
355
|
-
ManageParametersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: ManageParametersComponent, selector: "pep-manage-parameters", inputs: { showType: "showType", showAccessibility: "showAccessibility", parametersColumns: "parametersColumns", parameters: "parameters", parametersTitle: "parametersTitle" }, outputs: { parametersChange: "parametersChange" }, ngImport: i0, template: "<pep-generic-list class=\"generic-list\"\n [title]=\"parametersTitle || ('MANAGE_PARAMETERS.TITLE' | translate)\"\n [showTopBar]=\"true\" \n [dataSource]=\"dataSource\" \n [inline]=\"true\"\n [actions]=\"actions\"\n [addPadding]=\"false\"\n [uuidMapping]=\"'Key'\"\n (fieldClick)=\"onFieldClick($event)\"\n >\n <ng-container right-buttons>\n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'sm'\" \n [value]=\"'MANAGE_PARAMETERS.ADD_BUTTON_TITLE' | translate\"\n [styleType]=\"'strong'\" \n (buttonClick)=\"openCreateParamForm('add', '')\"\n ></pep-button>\n </ng-container>\n</pep-generic-list>", styles: [":host .generic-list{height:100%}\n"], dependencies: [{ kind: "component", type: i5.PepButtonComponent, selector: "pep-button", inputs: ["key", "value", "styleType", "styleStateType", "sizeType", "classNames", "disabled", "iconName", "iconPosition", "visible"], outputs: ["buttonClick"] }, { kind: "component", type: i5$1.GenericListComponent, selector: "pep-generic-list", inputs: ["dataSource", "actions", "uuidMapping", "disabled", "addPadding", "title", "description", "inline", "showSearch", "noDataFoundMsg", "emptyState", "selectionType", "supportSorting", "sorting", "cacheSize", "hideSelectAll", "pager", "tableViewType", "zebraStripes", "smartFilter", "showTopBar", "breadCrumbsItems", "selectAll", "scrollPosition"], outputs: ["fieldClick", "valueChange", "breadCrumbItemClick", "startIndexChange", "listLoad"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
355
|
+
ManageParametersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.0.2", type: ManageParametersComponent, selector: "pep-manage-parameters", inputs: { showType: "showType", showAccessibility: "showAccessibility", parametersColumns: "parametersColumns", parameters: "parameters", parametersTitle: "parametersTitle" }, outputs: { parametersChange: "parametersChange" }, ngImport: i0, template: "<pep-generic-list class=\"generic-list\"\n [title]=\"parametersTitle || ('MANAGE_PARAMETERS.TITLE' | translate)\"\n [showTopBar]=\"true\" \n [dataSource]=\"dataSource\" \n [inline]=\"true\"\n [actions]=\"actions\"\n [addPadding]=\"false\"\n [uuidMapping]=\"'Key'\"\n (fieldClick)=\"onFieldClick($event)\"\n >\n <ng-container right-buttons>\n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'sm'\" \n [value]=\"'MANAGE_PARAMETERS.ADD_BUTTON_TITLE' | translate\"\n [styleType]=\"'strong'\" \n (buttonClick)=\"openCreateParamForm('add', '')\"\n ></pep-button>\n </ng-container>\n</pep-generic-list>", styles: [":host .generic-list{height:100%}\n"], dependencies: [{ kind: "component", type: i5.PepButtonComponent, selector: "pep-button", inputs: ["key", "value", "styleType", "styleStateType", "sizeType", "classNames", "disabled", "iconName", "iconPosition", "visible"], outputs: ["buttonClick"] }, { kind: "component", type: i5$1.GenericListComponent, selector: "pep-generic-list", inputs: ["dataSource", "actions", "uuidMapping", "disabled", "addPadding", "title", "description", "inline", "showSearch", "noDataFoundMsg", "emptyState", "selectionType", "supportSorting", "supportSortingFields", "sorting", "cacheSize", "hideSelectAll", "pager", "tableViewType", "zebraStripes", "smartFilter", "showTopBar", "breadCrumbsItems", "selectAll", "scrollPosition"], outputs: ["fieldClick", "valueChange", "breadCrumbItemClick", "startIndexChange", "listLoad"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] });
|
|
356
356
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.0.2", ngImport: i0, type: ManageParametersComponent, decorators: [{
|
|
357
357
|
type: Component,
|
|
358
358
|
args: [{ selector: 'pep-manage-parameters', template: "<pep-generic-list class=\"generic-list\"\n [title]=\"parametersTitle || ('MANAGE_PARAMETERS.TITLE' | translate)\"\n [showTopBar]=\"true\" \n [dataSource]=\"dataSource\" \n [inline]=\"true\"\n [actions]=\"actions\"\n [addPadding]=\"false\"\n [uuidMapping]=\"'Key'\"\n (fieldClick)=\"onFieldClick($event)\"\n >\n <ng-container right-buttons>\n <pep-button \n class=\"pep-spacing-element\"\n [sizeType]=\"'sm'\" \n [value]=\"'MANAGE_PARAMETERS.ADD_BUTTON_TITLE' | translate\"\n [styleType]=\"'strong'\" \n (buttonClick)=\"openCreateParamForm('add', '')\"\n ></pep-button>\n </ng-container>\n</pep-generic-list>", styles: [":host .generic-list{height:100%}\n"] }]
|