@pepperi-addons/ngx-composite-lib 0.0.13-beta.4 → 0.0.13-beta.8

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.
Files changed (27) hide show
  1. package/bundles/pepperi-addons-ngx-composite-lib-generic-form.umd.js +722 -0
  2. package/bundles/pepperi-addons-ngx-composite-lib-generic-form.umd.js.map +1 -0
  3. package/bundles/pepperi-addons-ngx-composite-lib-generic-list.umd.js +0 -1
  4. package/bundles/pepperi-addons-ngx-composite-lib-generic-list.umd.js.map +1 -1
  5. package/bundles/pepperi-addons-ngx-composite-lib.umd.js.map +1 -1
  6. package/esm2015/core/common/directives/reset-configuration-field.directive.js +4 -4
  7. package/esm2015/generic-form/generic-form.component.js +94 -0
  8. package/esm2015/generic-form/generic-form.model.js +2 -0
  9. package/esm2015/generic-form/generic-form.module.js +74 -0
  10. package/esm2015/generic-form/generic-form.service.js +165 -0
  11. package/esm2015/generic-form/pepperi-addons-ngx-composite-lib-generic-form.js +5 -0
  12. package/esm2015/generic-form/public-api.js +8 -0
  13. package/esm2015/generic-list/generic-list.service.js +1 -2
  14. package/fesm2015/pepperi-addons-ngx-composite-lib-generic-form.js +331 -0
  15. package/fesm2015/pepperi-addons-ngx-composite-lib-generic-form.js.map +1 -0
  16. package/fesm2015/pepperi-addons-ngx-composite-lib-generic-list.js +0 -1
  17. package/fesm2015/pepperi-addons-ngx-composite-lib-generic-list.js.map +1 -1
  18. package/fesm2015/pepperi-addons-ngx-composite-lib.js +3 -3
  19. package/fesm2015/pepperi-addons-ngx-composite-lib.js.map +1 -1
  20. package/generic-form/generic-form.component.d.ts +28 -0
  21. package/generic-form/generic-form.model.d.ts +35 -0
  22. package/generic-form/generic-form.module.d.ts +13 -0
  23. package/generic-form/generic-form.service.d.ts +44 -0
  24. package/generic-form/package.json +10 -0
  25. package/generic-form/pepperi-addons-ngx-composite-lib-generic-form.d.ts +5 -0
  26. package/generic-form/public-api.d.ts +4 -0
  27. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"pepperi-addons-ngx-composite-lib-generic-list.js","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, ViewContainerRef } from '@angular/core';\nimport { PepListComponent } from '@pepperi-addons/ngx-lib/list';\nimport { BehaviorSubject } from 'rxjs';\n//test\n@Injectable({\n providedIn: 'root'\n})\nexport class PepGenericListService { \n private _refresh$ = new BehaviorSubject<boolean>(false);\n \n private _pepList: any; \n\n public refresh$ = this._refresh$.asObservable();\n \n constructor() {\n //\n }\n\n set pepList(val: any) {\n this._pepList = val;\n }\n\n get pepList() {\n return this._pepList;\n }\n \n getItemById(id: string) {\n if (this._pepList) {\n return this._pepList.getItemDataByID(id);\n } else { \n return null;\n } \n }\n\n getSelectedItems() {\n if (this._pepList) {\n return this._pepList.getSelectedItemsData();\n } else { \n return null;\n } \n }\n\n /*\n refreshTable() {\n this._refresh$.next(true);\n } */\n\n\n}","import {\n Component,\n OnInit,\n ViewChild,\n Input,\n Output,\n EventEmitter,\n ViewContainerRef,\n ComponentFactoryResolver\n} from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n PepDataConvertorService,\n PepLayoutService,\n PepRowData,\n ObjectsDataRow,\n PepGuid,\n UIControl,\n} from '@pepperi-addons/ngx-lib';\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} 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 } from '@pepperi-addons/ngx-lib/search';\n\nimport { GridDataViewField, DataViewFieldTypes, GridDataView } from '@pepperi-addons/papi-sdk/dist/entities/data-view';\nimport {\n IPepGenericListInitData,\n IPepGenericListDataSource,\n IPepGenericListPager,\n IPepGenericListActions,\n IPepGenericListTableInputs,\n} from './generic-list.model';\nimport { DataViewConverter } from '@pepperi-addons/data-views';\nimport { Subscription } from 'rxjs';\nimport { PepGenericListService } from './generic-list.service';\n\n\n@Component({\n selector: 'pep-generic-list',\n templateUrl: './generic-list.component.html',\n styleUrls: ['./generic-list.component.scss']\n})\nexport class GenericListComponent implements OnInit {\n private _pepListContainer: ViewContainerRef | undefined;\n @ViewChild('pepListContainer', { read: ViewContainerRef })\n set pepListContainer(val: ViewContainerRef) {\n this._pepListContainer = val;\n }\n\n _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.searchString = '';\n this._sorting = undefined;\n this.initTable();\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 addPadding = false;\n\n @Input()\n title = '';\n\n @Input()\n inline = false;\n\n @Input()\n showSearch = false;\n\n @Input()\n set noDataFoundMsg(val: string) {\n this._tableInputs.noDataFoundMsg = val;\n }\n\n @Input()\n set selectionType(val: PepListSelectionType) {\n this._tableInputs.selectionType = val;\n }\n\n @Input()\n set supportSorting(val: boolean) {\n this._tableInputs.supportSorting = val;\n }\n\n @Input()\n set pager(val: IPepGenericListPager) {\n this._tableInputs.pager = val;\n }\n\n @Input()\n showTopBar = false;\n\n @Input()\n breadCrumbsItems: PepBreadCrumbItem[] = new Array<PepBreadCrumbItem>();\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 set pepList(val: PepListComponent) {\n this._genericListService.pepList = val;\n }\n\n get pepList() {\n return this._genericListService.pepList;\n }\n\n private _resize$: Subscription = new Subscription();\n\n private _dataView: GridDataView = {\n Type: 'Grid'\n };\n private _tableInputs: IPepGenericListTableInputs = {\n supportSorting: false,\n selectionType: 'single',\n pager: {\n type: 'scroll'\n },\n noDataFoundMsg: ''\n };\n totalRowCount = -1;\n searchString = '';\n private _sorting: IPepListSortingChangeEvent | undefined = undefined;\n\n menuHandlers: { [key: string]: (obj: any) => Promise<void> } = {};\n menuActions: Array<PepMenuItem> = [];\n\n constructor(\n private _resolver: ComponentFactoryResolver,\n private _genericListService: PepGenericListService,\n private _dataConvertorService: PepDataConvertorService,\n private _layoutService: PepLayoutService,\n private _translate: TranslateService\n ) {\n this._resize$ = this._layoutService.onResize$.pipe().subscribe((size) => {\n // \n });\n }\n\n ngOnInit() {\n //\n }\n\n private async initTable() {\n setTimeout(async () => {\n if (this._dataSource &&\n this._pepListContainer) {\n\n if (this._pepListContainer.length > 0) {\n this._pepListContainer.remove();\n }\n const factory = this._resolver.resolveComponentFactory(PepListComponent);\n const componentRef = this._pepListContainer.createComponent(factory);\n this.pepList = componentRef.instance;\n\n //merge selector inputs with callback inputs\n const tableInputs = await this.loadTableInputs();\n\n const fromIndex = 0;\n let toIndex = 0;\n\n if (tableInputs.pager?.type === 'pages') {\n toIndex = fromIndex + (tableInputs.pager?.size || DEFAULT_PAGE_SIZE) - 1;\n } else {\n toIndex = 100;//TO DO - get reesult from - this.customList.getTopItems()\n }\n\n const data = await this.loadData(fromIndex, toIndex);\n this.totalRowCount = data?.totalCount || 0;\n\n componentRef.instance.viewType = 'table';\n componentRef.instance.supportSorting = tableInputs.supportSorting;\n componentRef.instance.selectionTypeForActions = tableInputs.selectionType;\n componentRef.instance.pagerType = tableInputs.pager.type;\n if (tableInputs.pager.type === 'pages') {\n componentRef.instance.pageSize = tableInputs.pager?.size || DEFAULT_PAGE_SIZE;\n componentRef.instance.pageIndex = tableInputs.pager?.index || 0;\n }\n componentRef.instance.noDataFoundMsg = tableInputs.noDataFoundMsg;\n\n componentRef.instance.fieldClick.subscribe(($event) => {\n this.onCustomizeFieldClick($event);\n });\n\n componentRef.instance.selectedItemsChange.subscribe(($event) => {\n this.onSelectedItemsChanged($event);\n })\n\n componentRef.instance.loadItems.subscribe(($event) => {\n this.onLoadItems($event);\n });\n\n componentRef.instance.loadPage.subscribe(($event) => {\n this.onLoadPage($event);\n });\n\n componentRef.instance.valueChange.subscribe(($event) => {\n this.onValueChanged($event)\n });\n\n componentRef.instance.sortingChange.subscribe(($event) => {\n this.onSortingChange($event);\n });\n\n let convertedList: ObjectsDataRow[] = [];\n if (data) {\n if (data?.items?.length > 0) {\n convertedList = this._dataConvertorService.convertListData(data.items);\n }\n const uiControl = this.getUiControl(DataViewConverter.toUIControlData(data.dataView));\n componentRef.instance.initListData(uiControl, data.totalCount, convertedList);\n }\n }\n }, 0);\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 private hasProperty(obj: any, prop: string) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n }\n\n /**\n * loads callback inputs in case they are provided and merge with selector inputs\n * @returns merged pep-list inputs\n */\n private async loadTableInputs() {\n const tableInputs: any = { ...this._tableInputs };\n\n if (this._dataSource.inputs) {\n const inputs: IPepGenericListTableInputs = await this._dataSource.inputs();\n if (inputs) {\n Object.entries(inputs).forEach((item: any) => {\n if (this.hasProperty(tableInputs, item[0])) {\n tableInputs[item[0]] = item[1];\n }\n });\n }\n }\n\n return tableInputs;\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.convertToUiControlField(field));\n }\n\n return uiControl;\n }\n\n private loadMenuItems(): void {\n if (this._tableInputs.selectionType !== 'none') {\n this.getMenuActions().then(\n x => this.menuActions = x\n );\n }\n }\n\n private convertToPepRowData(object: any, dataView: GridDataView) {\n const row = new PepRowData();\n row.UUID = object[this.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 GridDataViewField\n row.Fields.push({\n ApiName: field.FieldID,\n Title: this._translate.instant(field.Title),\n XAlignment: 1,\n FormattedValue: (object[field.FieldID] || '').toString(),\n Value: (object[field.FieldID] || '').toString(),\n ColumnWidth: dataView.Columns[index].Width,\n AdditionalValue: '',\n OptionalValues: [],\n FieldType: DataViewFieldTypes[field.Type],\n ReadOnly: field.ReadOnly,\n Enabled: !field.ReadOnly\n })\n }\n }\n return row;\n }\n\n private 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 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 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.initTable();\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.initTable();\n }\n\n private async loadData(fromIndex: number, toIndex: number): Promise<IPepGenericListInitData> {\n const data: IPepGenericListInitData = await this._dataSource.init({\n searchString: this.searchString || undefined,\n sorting: this._sorting || undefined,\n fromIndex: fromIndex,\n toIndex: toIndex\n });\n\n if (data) {\n this._dataView = data.dataView;\n\n if (data.items?.length > 0) {\n data.items = data.items.map(item => this.convertToPepRowData(item, data.dataView));\n }\n }\n\n return data;\n }\n\n\n private async updateDataList(fromIndex: number, toIndex: number, pageIndex: number | undefined = undefined) {\n if (this._dataSource.update) {\n const dataList = await this._dataSource.update({\n searchString: this.searchString || undefined,\n sorting: this._sorting || undefined,\n fromIndex: fromIndex,\n toIndex: toIndex,\n pageIndex: pageIndex\n });\n\n if (dataList?.length > 0) {\n return dataList.map(item => this.convertToPepRowData(item, this._dataView));\n } else {\n return [];\n }\n } else {\n return [];\n }\n }\n\n /**\n * loads virtual scroll items from api\n */\n async onLoadItems(event: IPepListLoadItemsEvent) {\n const list = await this.updateDataList(event.fromIndex, event.toIndex);\n const convertedList = this._dataConvertorService.convertListData(list);\n this.pepList.updateItems(convertedList, event);\n }\n\n /**\n * loads paging bulk from api\n */\n 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 this.pepList.updatePage(convertedList, event);\n }\n\n ngOnDestroy() {\n if (this._resize$) {\n this._resize$.unsubscribe();\n }\n }\n\n}\n","<div *ngIf=\"inline\" class=\"inline-container\" [ngClass]=\"{ 'add-padding': addPadding }\">\n <div>\n <div *ngIf=\"showTopBar\" class=\"inline-top-bar-container\">\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </div>\n <ng-container *ngIf=\"breadCrumbsItems.length > 0\">\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n </div>\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n</div>\n\n<pep-page-layout *ngIf=\"!inline\" [addPadding]=\"addPadding\">\n <ng-container *ngIf=\"showTopBar\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length > 0\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n <div 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\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\n <pep-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 #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 class=\"list-container\">\n <ng-container #pepListContainer></ng-container>\n </div>\n</ng-template>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { GenericListComponent } from './generic-list.component';\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 { PepSearchModule } from '@pepperi-addons/ngx-lib/search';\nimport { PepBreadCrumbsModule } from '@pepperi-addons/ngx-lib/bread-crumbs';\n\nimport { PepGenericListService } from './generic-list.service';\n\n@NgModule({\n declarations: [\n GenericListComponent\n ],\n imports: [\n CommonModule,\n PepNgxLibModule,\n PepListModule,\n PepFormModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTopBarModule,\n PepSearchModule,\n PepBreadCrumbsModule\n ],\n exports: [\n GenericListComponent\n ],\n providers: [\n PepGenericListService\n ]\n})\nexport class PepGenericListModule { }\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":[],"mappings":"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"}
1
+ {"version":3,"file":"pepperi-addons-ngx-composite-lib-generic-list.js","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, ViewContainerRef } from '@angular/core';\nimport { PepListComponent } from '@pepperi-addons/ngx-lib/list';\nimport { BehaviorSubject } from 'rxjs';\n\n\n@Injectable({\n providedIn: 'root'\n})\nexport class PepGenericListService { \n private _refresh$ = new BehaviorSubject<boolean>(false);\n \n private _pepList: any; \n\n public refresh$ = this._refresh$.asObservable();\n \n constructor() {\n //\n }\n\n set pepList(val: any) {\n this._pepList = val;\n }\n\n get pepList() {\n return this._pepList;\n }\n \n getItemById(id: string) {\n if (this._pepList) {\n return this._pepList.getItemDataByID(id);\n } else { \n return null;\n } \n }\n\n getSelectedItems() {\n if (this._pepList) {\n return this._pepList.getSelectedItemsData();\n } else { \n return null;\n } \n }\n\n /*\n refreshTable() {\n this._refresh$.next(true);\n } */\n\n\n}","import {\n Component,\n OnInit,\n ViewChild,\n Input,\n Output,\n EventEmitter,\n ViewContainerRef,\n ComponentFactoryResolver\n} from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport {\n PepDataConvertorService,\n PepLayoutService,\n PepRowData,\n ObjectsDataRow,\n PepGuid,\n UIControl,\n} from '@pepperi-addons/ngx-lib';\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} 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 } from '@pepperi-addons/ngx-lib/search';\n\nimport { GridDataViewField, DataViewFieldTypes, GridDataView } from '@pepperi-addons/papi-sdk/dist/entities/data-view';\nimport {\n IPepGenericListInitData,\n IPepGenericListDataSource,\n IPepGenericListPager,\n IPepGenericListActions,\n IPepGenericListTableInputs,\n} from './generic-list.model';\nimport { DataViewConverter } from '@pepperi-addons/data-views';\nimport { Subscription } from 'rxjs';\nimport { PepGenericListService } from './generic-list.service';\n\n\n@Component({\n selector: 'pep-generic-list',\n templateUrl: './generic-list.component.html',\n styleUrls: ['./generic-list.component.scss']\n})\nexport class GenericListComponent implements OnInit {\n private _pepListContainer: ViewContainerRef | undefined;\n @ViewChild('pepListContainer', { read: ViewContainerRef })\n set pepListContainer(val: ViewContainerRef) {\n this._pepListContainer = val;\n }\n\n _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.searchString = '';\n this._sorting = undefined;\n this.initTable();\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 addPadding = false;\n\n @Input()\n title = '';\n\n @Input()\n inline = false;\n\n @Input()\n showSearch = false;\n\n @Input()\n set noDataFoundMsg(val: string) {\n this._tableInputs.noDataFoundMsg = val;\n }\n\n @Input()\n set selectionType(val: PepListSelectionType) {\n this._tableInputs.selectionType = val;\n }\n\n @Input()\n set supportSorting(val: boolean) {\n this._tableInputs.supportSorting = val;\n }\n\n @Input()\n set pager(val: IPepGenericListPager) {\n this._tableInputs.pager = val;\n }\n\n @Input()\n showTopBar = false;\n\n @Input()\n breadCrumbsItems: PepBreadCrumbItem[] = new Array<PepBreadCrumbItem>();\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 set pepList(val: PepListComponent) {\n this._genericListService.pepList = val;\n }\n\n get pepList() {\n return this._genericListService.pepList;\n }\n\n private _resize$: Subscription = new Subscription();\n\n private _dataView: GridDataView = {\n Type: 'Grid'\n };\n private _tableInputs: IPepGenericListTableInputs = {\n supportSorting: false,\n selectionType: 'single',\n pager: {\n type: 'scroll'\n },\n noDataFoundMsg: ''\n };\n totalRowCount = -1;\n searchString = '';\n private _sorting: IPepListSortingChangeEvent | undefined = undefined;\n\n menuHandlers: { [key: string]: (obj: any) => Promise<void> } = {};\n menuActions: Array<PepMenuItem> = [];\n\n constructor(\n private _resolver: ComponentFactoryResolver,\n private _genericListService: PepGenericListService,\n private _dataConvertorService: PepDataConvertorService,\n private _layoutService: PepLayoutService,\n private _translate: TranslateService\n ) {\n this._resize$ = this._layoutService.onResize$.pipe().subscribe((size) => {\n // \n });\n }\n\n ngOnInit() {\n //\n }\n\n private async initTable() {\n setTimeout(async () => {\n if (this._dataSource &&\n this._pepListContainer) {\n\n if (this._pepListContainer.length > 0) {\n this._pepListContainer.remove();\n }\n const factory = this._resolver.resolveComponentFactory(PepListComponent);\n const componentRef = this._pepListContainer.createComponent(factory);\n this.pepList = componentRef.instance;\n\n //merge selector inputs with callback inputs\n const tableInputs = await this.loadTableInputs();\n\n const fromIndex = 0;\n let toIndex = 0;\n\n if (tableInputs.pager?.type === 'pages') {\n toIndex = fromIndex + (tableInputs.pager?.size || DEFAULT_PAGE_SIZE) - 1;\n } else {\n toIndex = 100;//TO DO - get reesult from - this.customList.getTopItems()\n }\n\n const data = await this.loadData(fromIndex, toIndex);\n this.totalRowCount = data?.totalCount || 0;\n\n componentRef.instance.viewType = 'table';\n componentRef.instance.supportSorting = tableInputs.supportSorting;\n componentRef.instance.selectionTypeForActions = tableInputs.selectionType;\n componentRef.instance.pagerType = tableInputs.pager.type;\n if (tableInputs.pager.type === 'pages') {\n componentRef.instance.pageSize = tableInputs.pager?.size || DEFAULT_PAGE_SIZE;\n componentRef.instance.pageIndex = tableInputs.pager?.index || 0;\n }\n componentRef.instance.noDataFoundMsg = tableInputs.noDataFoundMsg;\n\n componentRef.instance.fieldClick.subscribe(($event) => {\n this.onCustomizeFieldClick($event);\n });\n\n componentRef.instance.selectedItemsChange.subscribe(($event) => {\n this.onSelectedItemsChanged($event);\n })\n\n componentRef.instance.loadItems.subscribe(($event) => {\n this.onLoadItems($event);\n });\n\n componentRef.instance.loadPage.subscribe(($event) => {\n this.onLoadPage($event);\n });\n\n componentRef.instance.valueChange.subscribe(($event) => {\n this.onValueChanged($event)\n });\n\n componentRef.instance.sortingChange.subscribe(($event) => {\n this.onSortingChange($event);\n });\n\n let convertedList: ObjectsDataRow[] = [];\n if (data) {\n if (data?.items?.length > 0) {\n convertedList = this._dataConvertorService.convertListData(data.items);\n }\n const uiControl = this.getUiControl(DataViewConverter.toUIControlData(data.dataView));\n componentRef.instance.initListData(uiControl, data.totalCount, convertedList);\n }\n }\n }, 0);\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 private hasProperty(obj: any, prop: string) {\n return Object.prototype.hasOwnProperty.call(obj, prop);\n }\n\n /**\n * loads callback inputs in case they are provided and merge with selector inputs\n * @returns merged pep-list inputs\n */\n private async loadTableInputs() {\n const tableInputs: any = { ...this._tableInputs };\n\n if (this._dataSource.inputs) {\n const inputs: IPepGenericListTableInputs = await this._dataSource.inputs();\n if (inputs) {\n Object.entries(inputs).forEach((item: any) => {\n if (this.hasProperty(tableInputs, item[0])) {\n tableInputs[item[0]] = item[1];\n }\n });\n }\n }\n\n return tableInputs;\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.convertToUiControlField(field));\n }\n\n return uiControl;\n }\n\n private loadMenuItems(): void {\n if (this._tableInputs.selectionType !== 'none') {\n this.getMenuActions().then(\n x => this.menuActions = x\n );\n }\n }\n\n private convertToPepRowData(object: any, dataView: GridDataView) {\n const row = new PepRowData();\n row.UUID = object[this.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 GridDataViewField\n row.Fields.push({\n ApiName: field.FieldID,\n Title: this._translate.instant(field.Title),\n XAlignment: 1,\n FormattedValue: (object[field.FieldID] || '').toString(),\n Value: (object[field.FieldID] || '').toString(),\n ColumnWidth: dataView.Columns[index].Width,\n AdditionalValue: '',\n OptionalValues: [],\n FieldType: DataViewFieldTypes[field.Type],\n ReadOnly: field.ReadOnly,\n Enabled: !field.ReadOnly\n })\n }\n }\n return row;\n }\n\n private 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 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 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.initTable();\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.initTable();\n }\n\n private async loadData(fromIndex: number, toIndex: number): Promise<IPepGenericListInitData> {\n const data: IPepGenericListInitData = await this._dataSource.init({\n searchString: this.searchString || undefined,\n sorting: this._sorting || undefined,\n fromIndex: fromIndex,\n toIndex: toIndex\n });\n\n if (data) {\n this._dataView = data.dataView;\n\n if (data.items?.length > 0) {\n data.items = data.items.map(item => this.convertToPepRowData(item, data.dataView));\n }\n }\n\n return data;\n }\n\n\n private async updateDataList(fromIndex: number, toIndex: number, pageIndex: number | undefined = undefined) {\n if (this._dataSource.update) {\n const dataList = await this._dataSource.update({\n searchString: this.searchString || undefined,\n sorting: this._sorting || undefined,\n fromIndex: fromIndex,\n toIndex: toIndex,\n pageIndex: pageIndex\n });\n\n if (dataList?.length > 0) {\n return dataList.map(item => this.convertToPepRowData(item, this._dataView));\n } else {\n return [];\n }\n } else {\n return [];\n }\n }\n\n /**\n * loads virtual scroll items from api\n */\n async onLoadItems(event: IPepListLoadItemsEvent) {\n const list = await this.updateDataList(event.fromIndex, event.toIndex);\n const convertedList = this._dataConvertorService.convertListData(list);\n this.pepList.updateItems(convertedList, event);\n }\n\n /**\n * loads paging bulk from api\n */\n 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 this.pepList.updatePage(convertedList, event);\n }\n\n ngOnDestroy() {\n if (this._resize$) {\n this._resize$.unsubscribe();\n }\n }\n\n}\n","<div *ngIf=\"inline\" class=\"inline-container\" [ngClass]=\"{ 'add-padding': addPadding }\">\n <div>\n <div *ngIf=\"showTopBar\" class=\"inline-top-bar-container\">\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </div>\n <ng-container *ngIf=\"breadCrumbsItems.length > 0\">\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n </div>\n <ng-container *ngTemplateOutlet=\"listTemplate\"></ng-container>\n</div>\n\n<pep-page-layout *ngIf=\"!inline\" [addPadding]=\"addPadding\">\n <ng-container *ngIf=\"showTopBar\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"topBarTemplate\"></ng-container>\n </ng-container>\n <ng-container *ngIf=\"breadCrumbsItems.length > 0\" pep-top-area>\n <ng-container *ngTemplateOutlet=\"breadCrumbsTemplate\"></ng-container>\n </ng-container>\n <div 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\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\n <pep-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 #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 class=\"list-container\">\n <ng-container #pepListContainer></ng-container>\n </div>\n</ng-template>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { GenericListComponent } from './generic-list.component';\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 { PepSearchModule } from '@pepperi-addons/ngx-lib/search';\nimport { PepBreadCrumbsModule } from '@pepperi-addons/ngx-lib/bread-crumbs';\n\nimport { PepGenericListService } from './generic-list.service';\n\n@NgModule({\n declarations: [\n GenericListComponent\n ],\n imports: [\n CommonModule,\n PepNgxLibModule,\n PepListModule,\n PepFormModule,\n PepMenuModule,\n PepPageLayoutModule,\n PepTopBarModule,\n PepSearchModule,\n PepBreadCrumbsModule\n ],\n exports: [\n GenericListComponent\n ],\n providers: [\n PepGenericListService\n ]\n})\nexport class PepGenericListModule { }\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":[],"mappings":"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"}
@@ -54,7 +54,7 @@ class PepResetConfigurationFieldDirective {
54
54
  return this.dir === 'rtl' ? 'left' : 'right';
55
55
  }
56
56
  setButtonContainerStyle() {
57
- let css = `
57
+ const css = `
58
58
  display: flex;
59
59
  justify-content: flex-end;
60
60
  float: ${this.getFloat()};
@@ -63,7 +63,7 @@ class PepResetConfigurationFieldDirective {
63
63
  this.buttonContainer.setAttribute("style", css);
64
64
  }
65
65
  setButtonStyle(button) {
66
- let css = `
66
+ const css = `
67
67
  display: flex !important;
68
68
  align-items: center !important;
69
69
  height: 1rem !important;
@@ -76,7 +76,7 @@ class PepResetConfigurationFieldDirective {
76
76
  button.setAttribute("style", css);
77
77
  }
78
78
  setSvgStyle(svg) {
79
- let css = `
79
+ const css = `
80
80
  transform: rotate(270deg);
81
81
  width: 0.75rem;
82
82
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"pepperi-addons-ngx-composite-lib.js","sources":["../../../projects/ngx-composite-lib/src/core/common/directives/reset-configuration-field.directive.ts","../../../projects/ngx-composite-lib/src/ngx-composite-lib.module.ts","../../../projects/ngx-composite-lib/src/core/common/services/utilities.service.ts","../../../projects/ngx-composite-lib/src/core/common/services/public-api.ts","../../../projects/ngx-composite-lib/src/core/common/services/index.ts","../../../projects/ngx-composite-lib/src/core/common/directives/public-api.ts","../../../projects/ngx-composite-lib/src/core/common/directives/index.ts","../../../projects/ngx-composite-lib/src/core/common/public-api.ts","../../../projects/ngx-composite-lib/src/core/common/index.ts","../../../projects/ngx-composite-lib/src/core/public-api.ts","../../../projects/ngx-composite-lib/src/core/index.ts","../../../projects/ngx-composite-lib/src/public-api.ts","../../../projects/ngx-composite-lib/src/pepperi-addons-ngx-composite-lib.ts"],"sourcesContent":["import { Directive, HostListener, ElementRef, AfterViewInit, TemplateRef, ViewContainerRef, Renderer2, Output, EventEmitter, Input, OnDestroy } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { PepSizeType, PepStyleStateType, PepStyleType } from '@pepperi-addons/ngx-lib';\r\nimport { PepIconService, pepIconDeviceResponsive } from '@pepperi-addons/ngx-lib/icon';\r\n\r\n\r\n@Directive({\r\n selector: '[pepResetConfigurationField]',\r\n})\r\nexport class PepResetConfigurationFieldDirective implements AfterViewInit, OnDestroy {\r\n @Input('pepResetConfigurationField') resetFieldKey = '';\r\n @Input() resetHostEvents: EventEmitter<any> = new EventEmitter();\r\n \r\n private _disabled = false;\r\n @Input() \r\n set disabled(value: boolean) {\r\n this._disabled = value;\r\n this.renderer.setStyle(this.buttonContainer, 'visibility', this.getVisibility());\r\n }\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n\r\n private _hideReset = false;\r\n @Input() \r\n set hideReset(value: boolean) {\r\n this._hideReset = value;\r\n this.renderer.setStyle(this.buttonContainer, 'visibility', this.getVisibility());\r\n }\r\n get hideReset(): boolean {\r\n return this._hideReset;\r\n }\r\n\r\n private _dir: 'rtl' | 'ltr' = 'ltr';\r\n @Input() \r\n set dir(value: 'rtl' | 'ltr') {\r\n this._dir = value;\r\n this.renderer.setStyle(this.buttonContainer, 'float', this.getFloat());\r\n }\r\n get dir(): 'rtl' | 'ltr' {\r\n return this._dir;\r\n }\r\n\r\n // styleType: PepStyleType = 'weak';\r\n // styleStateType: PepStyleStateType = 'system';\r\n sizeType: PepSizeType = 'sm';\r\n resetPosition = 'bottom-end';\r\n \r\n private unlistener: (() => void) | undefined;\r\n private buttonContainer!: HTMLDivElement;\r\n\r\n constructor(\r\n private renderer:Renderer2,\r\n private element: ElementRef,\r\n private pepIconService: PepIconService,\r\n private translate: TranslateService) {\r\n // Create the buton container.\r\n this.buttonContainer = this.renderer.createElement('div');\r\n\r\n this.translate.get('GENERAL.RESET_HINT').toPromise().then(hint => {\r\n this.renderer.setAttribute(this.buttonContainer, 'title', hint);\r\n });\r\n }\r\n\r\n private getVisibility() {\r\n return this.disabled || this.hideReset ? 'hidden' : 'visible';\r\n }\r\n\r\n private getFloat() {\r\n return this.dir === 'rtl' ? 'left' : 'right';\r\n }\r\n\r\n private setButtonContainerStyle() {\r\n let css = `\r\n display: flex;\r\n justify-content: flex-end;\r\n float: ${this.getFloat()};\r\n margin-bottom: 1rem;\r\n `;\r\n\r\n this.buttonContainer.setAttribute(\"style\", css);\r\n }\r\n\r\n private setButtonStyle(button: HTMLButtonElement) {\r\n let css = `\r\n display: flex !important;\r\n align-items: center !important;\r\n height: 1rem !important;\r\n line-height: unset !important;\r\n padding: unset !important;\r\n background: unset !important;\r\n font-size: var(--pep-button-2xs-font-size) !important;\r\n visibility: ${this.getVisibility()};\r\n `;\r\n\r\n button.setAttribute(\"style\", css);\r\n }\r\n\r\n private setSvgStyle(svg: SVGElement) {\r\n let css = `\r\n transform: rotate(270deg);\r\n width: 0.75rem;\r\n `;\r\n svg.setAttribute('style', css);\r\n }\r\n\r\n private async getResetElement(): Promise<HTMLElement> {\r\n this.setButtonContainerStyle();\r\n this.renderer.addClass(this.buttonContainer, 'pep-reset-configuration-field-container');\r\n\r\n // Append button\r\n const button: HTMLButtonElement = this.renderer.createElement('button');\r\n await this.translate.get('ACTIONS.RESET').toPromise().then(resetText => {\r\n const buttonText = this.renderer.createText(resetText);\r\n this.renderer.appendChild(button, buttonText);\r\n });\r\n \r\n this.renderer.addClass(button, 'pep-button');\r\n // this.renderer.addClass(button, this.styleType);\r\n // this.renderer.addClass(button, this.styleStateType);\r\n this.renderer.addClass(button, 'color-link');\r\n this.renderer.addClass(button, this.sizeType);\r\n this.setButtonStyle(button);\r\n // this.renderer.addClass(button, 'reset-configuration-field-button');\r\n \r\n this.unlistener = this.renderer.listen(button, 'click', () => this.onResetClicked());\r\n \r\n this.renderer.appendChild(this.buttonContainer, button);\r\n\r\n // Append svg\r\n const svgIcon = this.pepIconService.getSvgIcon(pepIconDeviceResponsive.name);\r\n this.setSvgStyle(svgIcon);\r\n this.renderer.appendChild(this.buttonContainer, svgIcon);\r\n\r\n\r\n return this.buttonContainer;\r\n }\r\n\r\n \r\n ngAfterViewInit(): void {\r\n this.getResetElement().then(element => {\r\n if (this.resetPosition === 'top-end' && this.element.nativeElement.children?.length > 0) {\r\n this.renderer.insertBefore(this.element.nativeElement, element, this.element.nativeElement.children[0]);\r\n } else {\r\n this.renderer.appendChild(this.element.nativeElement, element);\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.unlistener) {\r\n this.unlistener();\r\n }\r\n }\r\n\r\n onResetClicked() {\r\n this.resetHostEvents.emit({\r\n action: 'set-configuration-field',\r\n key: this.resetFieldKey,\r\n value: undefined\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\n// import { TranslateModule } from '@ngx-translate/core';\n// import { CommonModule } from '@angular/common';\n// import { HttpClientModule } from '@angular/common/http';\n// import { ReactiveFormsModule } from '@angular/forms';\nimport { PepResetConfigurationFieldDirective } from './core/common/directives/reset-configuration-field.directive';\n\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconDeviceResponsive,\n} from '@pepperi-addons/ngx-lib/icon';\n \n\nconst utilitiesList = [\n PepResetConfigurationFieldDirective\n];\n\n@NgModule({\n declarations: [\n utilitiesList\n ],\n imports: [\n // CommonModule, HttpClientModule, ReactiveFormsModule\n PepIconModule,\n ],\n exports: [\n utilitiesList\n // TranslateModule\n ]\n})\nexport class PepNgxCompositeLibModule {\n constructor(\n private pepIconRegistry: PepIconRegistry\n ) {\n this.pepIconRegistry.registerIcons([\n pepIconDeviceResponsive\n ]);\n }\n}\n","import { Injectable } from '@angular/core';\r\n\r\n/*\r\n This service is for utillity usege.\r\n*/\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PepCompositeLibUtilitiesService {\r\n constructor(\r\n // private sessionService: PepSessionService,\r\n // private httpService: PepHttpService,\r\n // private loaderService: PepLoaderService\r\n ) {\r\n //\r\n }\r\n}\r\n","/*\n * Public API Surface of ngx-composite-lib/core/common/services\n */\nexport * from './utilities.service';\n","/*\n * export from ngx-composite-lib/core/common/services\n */\nexport * from './public-api';\n","/*\n * Public API Surface of ngx-composite-lib/core/common/directives\n */\nexport * from '../directives/reset-configuration-field.directive';\n","/*\n * export from ngx-composite-lib/core/common/directives\n */\nexport * from './public-api';\n","/*\n * Public API Surface of ngx-composite-lib/core/common\n */\nexport * from './services/index';\nexport * from './directives/index';\n","/*\n * export from ngx-composite-lib/core/common\n */\nexport * from './public-api';\n","/*\n * Public API Surface of ngx-composite-lib/core\n */\nexport * from './common/index';","/*\n * export from ngx-composite-lib/core\n */\nexport * from './public-api';\n","/*\n * Public API Surface of ngx-composite-lib\n */\nexport * from './ngx-composite-lib.module';\nexport * from './core/index';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pepperi-addons-ngx-composite-lib.js","sources":["../../../projects/ngx-composite-lib/src/core/common/directives/reset-configuration-field.directive.ts","../../../projects/ngx-composite-lib/src/ngx-composite-lib.module.ts","../../../projects/ngx-composite-lib/src/core/common/services/utilities.service.ts","../../../projects/ngx-composite-lib/src/core/common/services/public-api.ts","../../../projects/ngx-composite-lib/src/core/common/services/index.ts","../../../projects/ngx-composite-lib/src/core/common/directives/public-api.ts","../../../projects/ngx-composite-lib/src/core/common/directives/index.ts","../../../projects/ngx-composite-lib/src/core/common/public-api.ts","../../../projects/ngx-composite-lib/src/core/common/index.ts","../../../projects/ngx-composite-lib/src/core/public-api.ts","../../../projects/ngx-composite-lib/src/core/index.ts","../../../projects/ngx-composite-lib/src/public-api.ts","../../../projects/ngx-composite-lib/src/pepperi-addons-ngx-composite-lib.ts"],"sourcesContent":["import { Directive, HostListener, ElementRef, AfterViewInit, TemplateRef, ViewContainerRef, Renderer2, Output, EventEmitter, Input, OnDestroy } from '@angular/core';\r\nimport { TranslateService } from '@ngx-translate/core';\r\nimport { PepSizeType, PepStyleStateType, PepStyleType } from '@pepperi-addons/ngx-lib';\r\nimport { PepIconService, pepIconDeviceResponsive } from '@pepperi-addons/ngx-lib/icon';\r\n\r\n\r\n@Directive({\r\n selector: '[pepResetConfigurationField]',\r\n})\r\nexport class PepResetConfigurationFieldDirective implements AfterViewInit, OnDestroy {\r\n @Input('pepResetConfigurationField') resetFieldKey = '';\r\n @Input() resetHostEvents: EventEmitter<any> = new EventEmitter();\r\n \r\n private _disabled = false;\r\n @Input() \r\n set disabled(value: boolean) {\r\n this._disabled = value;\r\n this.renderer.setStyle(this.buttonContainer, 'visibility', this.getVisibility());\r\n }\r\n get disabled(): boolean {\r\n return this._disabled;\r\n }\r\n\r\n private _hideReset = false;\r\n @Input() \r\n set hideReset(value: boolean) {\r\n this._hideReset = value;\r\n this.renderer.setStyle(this.buttonContainer, 'visibility', this.getVisibility());\r\n }\r\n get hideReset(): boolean {\r\n return this._hideReset;\r\n }\r\n\r\n private _dir: 'rtl' | 'ltr' = 'ltr';\r\n @Input() \r\n set dir(value: 'rtl' | 'ltr') {\r\n this._dir = value;\r\n this.renderer.setStyle(this.buttonContainer, 'float', this.getFloat());\r\n }\r\n get dir(): 'rtl' | 'ltr' {\r\n return this._dir;\r\n }\r\n\r\n // styleType: PepStyleType = 'weak';\r\n // styleStateType: PepStyleStateType = 'system';\r\n sizeType: PepSizeType = 'sm';\r\n resetPosition = 'bottom-end';\r\n \r\n private unlistener: (() => void) | undefined;\r\n private buttonContainer!: HTMLDivElement;\r\n\r\n constructor(\r\n private renderer:Renderer2,\r\n private element: ElementRef,\r\n private pepIconService: PepIconService,\r\n private translate: TranslateService) {\r\n // Create the buton container.\r\n this.buttonContainer = this.renderer.createElement('div');\r\n\r\n this.translate.get('GENERAL.RESET_HINT').toPromise().then(hint => {\r\n this.renderer.setAttribute(this.buttonContainer, 'title', hint);\r\n });\r\n }\r\n\r\n private getVisibility() {\r\n return this.disabled || this.hideReset ? 'hidden' : 'visible';\r\n }\r\n\r\n private getFloat() {\r\n return this.dir === 'rtl' ? 'left' : 'right';\r\n }\r\n\r\n private setButtonContainerStyle() {\r\n const css = `\r\n display: flex;\r\n justify-content: flex-end;\r\n float: ${this.getFloat()};\r\n margin-bottom: 1rem;\r\n `;\r\n\r\n this.buttonContainer.setAttribute(\"style\", css);\r\n }\r\n\r\n private setButtonStyle(button: HTMLButtonElement) {\r\n const css = `\r\n display: flex !important;\r\n align-items: center !important;\r\n height: 1rem !important;\r\n line-height: unset !important;\r\n padding: unset !important;\r\n background: unset !important;\r\n font-size: var(--pep-button-2xs-font-size) !important;\r\n visibility: ${this.getVisibility()};\r\n `;\r\n\r\n button.setAttribute(\"style\", css);\r\n }\r\n\r\n private setSvgStyle(svg: SVGElement) {\r\n const css = `\r\n transform: rotate(270deg);\r\n width: 0.75rem;\r\n `;\r\n svg.setAttribute('style', css);\r\n }\r\n\r\n private async getResetElement(): Promise<HTMLElement> {\r\n this.setButtonContainerStyle();\r\n this.renderer.addClass(this.buttonContainer, 'pep-reset-configuration-field-container');\r\n\r\n // Append button\r\n const button: HTMLButtonElement = this.renderer.createElement('button');\r\n await this.translate.get('ACTIONS.RESET').toPromise().then(resetText => {\r\n const buttonText = this.renderer.createText(resetText);\r\n this.renderer.appendChild(button, buttonText);\r\n });\r\n \r\n this.renderer.addClass(button, 'pep-button');\r\n // this.renderer.addClass(button, this.styleType);\r\n // this.renderer.addClass(button, this.styleStateType);\r\n this.renderer.addClass(button, 'color-link');\r\n this.renderer.addClass(button, this.sizeType);\r\n this.setButtonStyle(button);\r\n // this.renderer.addClass(button, 'reset-configuration-field-button');\r\n \r\n this.unlistener = this.renderer.listen(button, 'click', () => this.onResetClicked());\r\n \r\n this.renderer.appendChild(this.buttonContainer, button);\r\n\r\n // Append svg\r\n const svgIcon = this.pepIconService.getSvgIcon(pepIconDeviceResponsive.name);\r\n this.setSvgStyle(svgIcon);\r\n this.renderer.appendChild(this.buttonContainer, svgIcon);\r\n\r\n\r\n return this.buttonContainer;\r\n }\r\n\r\n \r\n ngAfterViewInit(): void {\r\n this.getResetElement().then(element => {\r\n if (this.resetPosition === 'top-end' && this.element.nativeElement.children?.length > 0) {\r\n this.renderer.insertBefore(this.element.nativeElement, element, this.element.nativeElement.children[0]);\r\n } else {\r\n this.renderer.appendChild(this.element.nativeElement, element);\r\n }\r\n });\r\n }\r\n\r\n ngOnDestroy() {\r\n if (this.unlistener) {\r\n this.unlistener();\r\n }\r\n }\r\n\r\n onResetClicked() {\r\n this.resetHostEvents.emit({\r\n action: 'set-configuration-field',\r\n key: this.resetFieldKey,\r\n value: undefined\r\n });\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\n// import { TranslateModule } from '@ngx-translate/core';\n// import { CommonModule } from '@angular/common';\n// import { HttpClientModule } from '@angular/common/http';\n// import { ReactiveFormsModule } from '@angular/forms';\nimport { PepResetConfigurationFieldDirective } from './core/common/directives/reset-configuration-field.directive';\n\nimport {\n PepIconModule,\n PepIconRegistry,\n pepIconDeviceResponsive,\n} from '@pepperi-addons/ngx-lib/icon';\n \n\nconst utilitiesList = [\n PepResetConfigurationFieldDirective\n];\n\n@NgModule({\n declarations: [\n utilitiesList\n ],\n imports: [\n // CommonModule, HttpClientModule, ReactiveFormsModule\n PepIconModule,\n ],\n exports: [\n utilitiesList\n // TranslateModule\n ]\n})\nexport class PepNgxCompositeLibModule {\n constructor(\n private pepIconRegistry: PepIconRegistry\n ) {\n this.pepIconRegistry.registerIcons([\n pepIconDeviceResponsive\n ]);\n }\n}\n","import { Injectable } from '@angular/core';\r\n\r\n/*\r\n This service is for utillity usege.\r\n*/\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class PepCompositeLibUtilitiesService {\r\n constructor(\r\n // private sessionService: PepSessionService,\r\n // private httpService: PepHttpService,\r\n // private loaderService: PepLoaderService\r\n ) {\r\n //\r\n }\r\n}\r\n","/*\n * Public API Surface of ngx-composite-lib/core/common/services\n */\nexport * from './utilities.service';\n","/*\n * export from ngx-composite-lib/core/common/services\n */\nexport * from './public-api';\n","/*\n * Public API Surface of ngx-composite-lib/core/common/directives\n */\nexport * from '../directives/reset-configuration-field.directive';\n","/*\n * export from ngx-composite-lib/core/common/directives\n */\nexport * from './public-api';\n","/*\n * Public API Surface of ngx-composite-lib/core/common\n */\nexport * from './services/index';\nexport * from './directives/index';\n","/*\n * export from ngx-composite-lib/core/common\n */\nexport * from './public-api';\n","/*\n * Public API Surface of ngx-composite-lib/core\n */\nexport * from './common/index';","/*\n * export from ngx-composite-lib/core\n */\nexport * from './public-api';\n","/*\n * Public API Surface of ngx-composite-lib\n */\nexport * from './ngx-composite-lib.module';\nexport * from './core/index';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;MASa,mCAAmC;IA0C5C,YACY,QAAkB,EAClB,OAAmB,EACnB,cAA8B,EAC9B,SAA2B;QAH3B,aAAQ,GAAR,QAAQ,CAAU;QAClB,YAAO,GAAP,OAAO,CAAY;QACnB,mBAAc,GAAd,cAAc,CAAgB;QAC9B,cAAS,GAAT,SAAS,CAAkB;QA7CF,kBAAa,GAAG,EAAE,CAAC;QAC/C,oBAAe,GAAsB,IAAI,YAAY,EAAE,CAAC;QAEzD,cAAS,GAAG,KAAK,CAAC;QAUlB,eAAU,GAAG,KAAK,CAAC;QAUnB,SAAI,GAAkB,KAAK,CAAC;;;QAYpC,aAAQ,GAAgB,IAAI,CAAC;QAC7B,kBAAa,GAAG,YAAY,CAAC;;QAWzB,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;QAE1D,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,oBAAoB,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,IAAI;YAC1D,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;SACnE,CAAC,CAAC;KACN;IAhDD,IACI,QAAQ,CAAC,KAAc;QACvB,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,YAAY,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;KACpF;IACD,IAAI,QAAQ;QACR,OAAO,IAAI,CAAC,SAAS,CAAC;KACzB;IAGD,IACI,SAAS,CAAC,KAAc;QACxB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,YAAY,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;KACpF;IACD,IAAI,SAAS;QACT,OAAO,IAAI,CAAC,UAAU,CAAC;KAC1B;IAGD,IACI,GAAG,CAAC,KAAoB;QACxB,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;QAClB,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;KAC1E;IACD,IAAI,GAAG;QACH,OAAO,IAAI,CAAC,IAAI,CAAC;KACpB;IAuBO,aAAa;QACjB,OAAO,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,SAAS,GAAG,QAAQ,GAAG,SAAS,CAAC;KACjE;IAEO,QAAQ;QACZ,OAAO,IAAI,CAAC,GAAG,KAAK,KAAK,GAAG,MAAM,GAAG,OAAO,CAAC;KAChD;IAEO,uBAAuB;QAC3B,MAAM,GAAG,GAAG;;;qBAGC,IAAI,CAAC,QAAQ,EAAE;;SAE3B,CAAC;QAEF,IAAI,CAAC,eAAe,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;KACnD;IAEO,cAAc,CAAC,MAAyB;QAC5C,MAAM,GAAG,GAAG;;;;;;;;0BAQM,IAAI,CAAC,aAAa,EAAE;SACrC,CAAC;QAEF,MAAM,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;KACrC;IAEO,WAAW,CAAC,GAAe;QAC/B,MAAM,GAAG,GAAG;;;SAGX,CAAC;QACF,GAAG,CAAC,YAAY,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;KAClC;IAEa,eAAe;;YACzB,IAAI,CAAC,uBAAuB,EAAE,CAAC;YAC/B,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,yCAAyC,CAAC,CAAC;;YAGxF,MAAM,MAAM,GAAsB,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC;YACxE,MAAM,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,SAAS,EAAE,CAAC,IAAI,CAAC,SAAS;gBAChE,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;gBACvD,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;aACjD,CAAC,CAAC;YAEH,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;;;YAG7C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YAC7C,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC9C,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;;YAG5B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC;YAErF,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,EAAE,MAAM,CAAC,CAAC;;YAGxD,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,UAAU,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC;YAC7E,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;YAC1B,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;YAGzD,OAAO,IAAI,CAAC,eAAe,CAAC;SAC/B;KAAA;IAGD,eAAe;QACX,IAAI,CAAC,eAAe,EAAE,CAAC,IAAI,CAAC,OAAO;;YAC/B,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,IAAI,CAAA,MAAA,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,0CAAE,MAAM,IAAG,CAAC,EAAE;gBACrF,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aAC3G;iBAAM;gBACH,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;aAClE;SACJ,CAAC,CAAC;KACN;IAED,WAAW;QACP,IAAI,IAAI,CAAC,UAAU,EAAE;YACjB,IAAI,CAAC,UAAU,EAAE,CAAC;SACrB;KACJ;IAED,cAAc;QACV,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC;YACtB,MAAM,EAAE,yBAAyB;YACjC,GAAG,EAAE,IAAI,CAAC,aAAa;YACvB,KAAK,EAAE,SAAS;SACnB,CAAC,CAAC;KACN;;gIAxJQ,mCAAmC;oHAAnC,mCAAmC;2FAAnC,mCAAmC;kBAH/C,SAAS;mBAAC;oBACP,QAAQ,EAAE,8BAA8B;iBAC3C;qLAEwC,aAAa;sBAAjD,KAAK;uBAAC,4BAA4B;gBAC1B,eAAe;sBAAvB,KAAK;gBAIF,QAAQ;sBADX,KAAK;gBAWF,SAAS;sBADZ,KAAK;gBAWF,GAAG;sBADN,KAAK;;;ACpBV,MAAM,aAAa,GAAG;IAClB,mCAAmC;CACtC,CAAC;MAeW,wBAAwB;IACjC,YACY,eAAgC;QAAhC,oBAAe,GAAf,eAAe,CAAiB;QAExC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC;YAC/B,uBAAuB;SAC1B,CAAC,CAAC;KACN;;qHAPQ,wBAAwB;sHAAxB,wBAAwB,iBAhBjC,mCAAmC;;QAS/B,aAAa,aATjB,mCAAmC;sHAgB1B,wBAAwB,YATxB;;YAEL,aAAa;SAChB;2FAMQ,wBAAwB;kBAbpC,QAAQ;mBAAC;oBACN,YAAY,EAAE;wBACV,aAAa;qBAChB;oBACD,OAAO,EAAE;;wBAEL,aAAa;qBAChB;oBACD,OAAO,EAAE;wBACL,aAAa;;qBAEhB;iBACJ;;;AC5BD;;;MAMa,+BAA+B;IACxC;;KAMC;;4HAPQ,+BAA+B;gIAA/B,+BAA+B,cAF5B,MAAM;2FAET,+BAA+B;kBAH3C,UAAU;mBAAC;oBACR,UAAU,EAAE,MAAM;iBACrB;;;ACPD;;;;ACAA;;;;ACAA;;;;ACAA;;;;ACAA;;;;ACAA;;;;ACAA;;;;ACAA;;;;ACAA;;;;ACAA;;;;;;"}
@@ -0,0 +1,28 @@
1
+ import { OnInit, EventEmitter } from '@angular/core';
2
+ import { PepLayoutService } from '@pepperi-addons/ngx-lib';
3
+ import { IPepGenericFormDataView, IPepGenericFormValueChange } from './generic-form.model';
4
+ import { PepGenericFormService } from './generic-form.service';
5
+ import * as i0 from "@angular/core";
6
+ export declare class GenericFormComponent implements OnInit {
7
+ private layoutService;
8
+ _genericFormService: PepGenericFormService;
9
+ set dataSource(val: any);
10
+ set dataView(val: IPepGenericFormDataView);
11
+ set isLocked(val: boolean);
12
+ get isLocked(): boolean;
13
+ inline: boolean;
14
+ showTopBar: boolean;
15
+ addPadding: boolean;
16
+ valueChange: EventEmitter<IPepGenericFormValueChange>;
17
+ fieldClick: EventEmitter<IPepGenericFormValueChange>;
18
+ formValidationChange: EventEmitter<boolean>;
19
+ get uiControl(): import("@pepperi-addons/ngx-lib").UIControl;
20
+ get data(): import("@pepperi-addons/ngx-lib").ObjectsDataRow;
21
+ constructor(layoutService: PepLayoutService, _genericFormService: PepGenericFormService);
22
+ ngOnInit(): void;
23
+ onValueChanged(event: any): void;
24
+ onfieldClicked(event: any): void;
25
+ onFormValidationChanged(event: any): void;
26
+ static ɵfac: i0.ɵɵFactoryDeclaration<GenericFormComponent, never>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<GenericFormComponent, "pep-generic-form", never, { "dataSource": "dataSource"; "dataView": "dataView"; "isLocked": "isLocked"; "inline": "inline"; "showTopBar": "showTopBar"; "addPadding": "addPadding"; }, { "valueChange": "valueChange"; "fieldClick": "fieldClick"; "formValidationChange": "formValidationChange"; }, never, ["[left-buttons]", "[right-buttons]"]>;
28
+ }
@@ -0,0 +1,35 @@
1
+ import { KeyValuePair } from '@pepperi-addons/ngx-lib';
2
+ import { FormDataView } from '@pepperi-addons/papi-sdk/dist/entities/data-view';
3
+ /**
4
+ * Interface representing the form data
5
+ */
6
+ export interface IPepGenericFormDataSource {
7
+ Values: Array<KeyValuePair<any>>;
8
+ }
9
+ /**
10
+ * Interface represending the form data view
11
+ */
12
+ export interface IPepGenericFormDataView extends FormDataView {
13
+ UID?: string;
14
+ }
15
+ /**
16
+ * Interface containing form data and data view
17
+ */
18
+ export interface IPepGenericFormData {
19
+ data: IPepGenericFormDataSource;
20
+ dataView: IPepGenericFormDataView;
21
+ }
22
+ export interface IPepGenericFormValueChange {
23
+ uid: string;
24
+ apiName: string;
25
+ value: any;
26
+ }
27
+ export interface IPepGenericFormFieldUpdate {
28
+ FieldId: string;
29
+ Params: IPepGenericFormDataParams;
30
+ }
31
+ export interface IPepGenericFormDataParams {
32
+ Visible?: boolean;
33
+ Enabled?: boolean;
34
+ OptionalValues?: [];
35
+ }
@@ -0,0 +1,13 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./generic-form.component";
3
+ import * as i2 from "@angular/common";
4
+ import * as i3 from "@pepperi-addons/ngx-lib";
5
+ import * as i4 from "@pepperi-addons/ngx-lib/form";
6
+ import * as i5 from "@pepperi-addons/ngx-lib/menu";
7
+ import * as i6 from "@pepperi-addons/ngx-lib/page-layout";
8
+ import * as i7 from "@pepperi-addons/ngx-lib/top-bar";
9
+ export declare class PepGenericFormModule {
10
+ static ɵfac: i0.ɵɵFactoryDeclaration<PepGenericFormModule, never>;
11
+ static ɵmod: i0.ɵɵNgModuleDeclaration<PepGenericFormModule, [typeof i1.GenericFormComponent], [typeof i2.CommonModule, typeof i3.PepNgxLibModule, typeof i4.PepFormModule, typeof i5.PepMenuModule, typeof i6.PepPageLayoutModule, typeof i7.PepTopBarModule], [typeof i1.GenericFormComponent]>;
12
+ static ɵinj: i0.ɵɵInjectorDeclaration<PepGenericFormModule>;
13
+ }
@@ -0,0 +1,44 @@
1
+ import { UIControl, ObjectsDataRow } from '@pepperi-addons/ngx-lib';
2
+ import { IPepGenericFormDataSource, IPepGenericFormDataView, IPepGenericFormValueChange, IPepGenericFormFieldUpdate } from './generic-form.model';
3
+ import * as i0 from "@angular/core";
4
+ export declare class PepGenericFormService {
5
+ private _uiControl;
6
+ private _data;
7
+ private _formData;
8
+ private _optionalValues;
9
+ private _isLocked;
10
+ get uiControl(): UIControl;
11
+ get data(): ObjectsDataRow;
12
+ constructor();
13
+ get isLocked(): boolean;
14
+ set isLocked(val: boolean);
15
+ setDataSource(data: IPepGenericFormDataSource): void;
16
+ setUiControl(view: IPepGenericFormDataView): void;
17
+ createFormFields(): void;
18
+ getData(): {
19
+ UID: any;
20
+ Values: any;
21
+ };
22
+ /**
23
+ * updates form field(s) params
24
+ * @param fields
25
+ */
26
+ updateFields(fields: Array<IPepGenericFormFieldUpdate>): void;
27
+ /**
28
+ * updates form field's value
29
+ * @param field object containing the data of the required update
30
+ */
31
+ updateFieldValue(fieldChanged: IPepGenericFormValueChange): void;
32
+ /**
33
+ * checks if the object contains property
34
+ * @param obj object
35
+ * @param prop property name
36
+ * @returns true if contains, false otherwise
37
+ */
38
+ private hasProperty;
39
+ private createFormField;
40
+ private getOptionalValues;
41
+ private convertToUiControlField;
42
+ static ɵfac: i0.ɵɵFactoryDeclaration<PepGenericFormService, never>;
43
+ static ɵprov: i0.ɵɵInjectableDeclaration<PepGenericFormService>;
44
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "main": "../bundles/pepperi-addons-ngx-composite-lib-generic-form.umd.js",
3
+ "module": "../fesm2015/pepperi-addons-ngx-composite-lib-generic-form.js",
4
+ "es2015": "../fesm2015/pepperi-addons-ngx-composite-lib-generic-form.js",
5
+ "esm2015": "../esm2015/generic-form/pepperi-addons-ngx-composite-lib-generic-form.js",
6
+ "fesm2015": "../fesm2015/pepperi-addons-ngx-composite-lib-generic-form.js",
7
+ "typings": "pepperi-addons-ngx-composite-lib-generic-form.d.ts",
8
+ "sideEffects": false,
9
+ "name": "@pepperi-addons/ngx-composite-lib/generic-form"
10
+ }
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@pepperi-addons/ngx-composite-lib/generic-form" />
5
+ export * from './public-api';
@@ -0,0 +1,4 @@
1
+ export * from './generic-form.module';
2
+ export * from './generic-form.component';
3
+ export * from './generic-form.model';
4
+ export * from './generic-form.service';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@pepperi-addons/ngx-composite-lib",
3
- "version": "0.0.13-beta.4",
3
+ "version": "0.0.13-beta.8",
4
4
  "peerDependencies": {
5
5
  "@angular/animations": ">= 12.0.0",
6
6
  "@angular/cdk": ">= 12.0.0",
@@ -13,7 +13,7 @@
13
13
  "@angular/platform-browser-dynamic": ">= 12.0.0",
14
14
  "@ngx-translate/core": "^13.0.0",
15
15
  "@ngx-translate/http-loader": "^6.0.0",
16
- "@pepperi-addons/ngx-lib": "^0.3.10",
16
+ "@pepperi-addons/ngx-lib": "^0.3.11-beta.8",
17
17
  "ngx-translate-multi-http-loader": "^3.0.0",
18
18
  "moment": ">= 2.26.0",
19
19
  "ngx-signaturepad": ">= 0.0.9",