cat-qw-lib 0.4.0 → 0.4.2

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.
@@ -1 +1 @@
1
- {"version":3,"file":"cat-qw-lib.mjs","sources":["../../../projects/cat-qw-lib/src/lib/shared/constant/SHARED.ts","../../../projects/cat-qw-lib/src/lib/shared/components/sidebar/sidebar.component.ts","../../../projects/cat-qw-lib/src/lib/shared/components/sidebar/sidebar.component.html","../../../projects/cat-qw-lib/src/lib/shared/state/base.store.ts","../../../projects/cat-qw-lib/src/lib/shared/state/base.query.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-control/base-control.component.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-control/base-control.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/check-box/check-box.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/check-box/check-box.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/button/button.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/button/button.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/text-box/text-box.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/text-box/text-box.component.html","../../../projects/cat-qw-lib/src/lib/shared/components/form-container/form-container.component.ts","../../../projects/cat-qw-lib/src/lib/shared/components/form-container/form-container.component.html","../../../projects/cat-qw-lib/src/lib/shared/constant/URLS.ts","../../../projects/cat-qw-lib/src/lib/shared/services/app-config.service.ts","../../../projects/cat-qw-lib/src/lib/shared/models/list.model.ts","../../../projects/cat-qw-lib/src/lib/shared/services/list.service.ts","../../../projects/cat-qw-lib/src/lib/shared/state/base.service.ts","../../../projects/cat-qw-lib/src/lib/shared/table-primary/models/table-primary.model.ts","../../../projects/cat-qw-lib/src/lib/shared/table-primary/models/table-primary-header.model.ts","../../../projects/cat-qw-lib/src/lib/shared/services/table.builder.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-list/base-list.component.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-list/base-list.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/dropdown/dropdown.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/dropdown/dropdown.component.html","../../../projects/cat-qw-lib/src/lib/shared/services/date-parser.service.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/date/date.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/date/date.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/file-upload/file-upload.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/file-upload/file-upload.component.html","../../../projects/cat-qw-lib/src/lib/shared/pipe/capitalize-words.pipe.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/text-area/text-area.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/text-area/text-area.component.html","../../../projects/cat-qw-lib/src/lib/shared/shared.module.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/ROUTES.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/DATASOURCES.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/HEADERS.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/username/username.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/username/username.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/password/password.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/password/password.component.html","../../../projects/cat-qw-lib/src/lib/shared/constant/CSS.ts","../../../projects/cat-qw-lib/src/lib/shared/models/attribute.model.ts","../../../projects/cat-qw-lib/src/lib/shared/models/base.model.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/ERROR.ts","../../../projects/cat-qw-lib/src/lib/shared/services/session.service.ts","../../../projects/cat-qw-lib/src/lib/shared/services/auth/auth.guard.ts","../../../projects/cat-qw-lib/src/lib/shared/services/validator.service.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-form/base-form.component.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-form/base-form.component.html","../../../projects/cat-qw-lib/src/lib/shared/constant/LOOKUPS.ts","../../../projects/cat-qw-lib/src/lib/shared/table-primary/components/table-primary.component.ts","../../../projects/cat-qw-lib/src/lib/shared/table-primary/components/table-primary.component.html","../../../projects/cat-qw-lib/src/lib/admin/api-admin/models/credentials.model.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/MESSAGES.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/LIST-CONFIG.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/state/api-admin.store.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/state/api-admin.service.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-credential-form/api-credential-form.component.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-credential-form/api-credential-form.component.html","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-admin-form/api-admin-form.component.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-admin-form/api-admin-form.component.html","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-admin-list/api-admin-list.component.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-admin-list/api-admin-list.component.html","../../../projects/cat-qw-lib/src/lib/admin/api-admin/api-admin.module.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/state/widget-admin.store.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/state/widget-admin.service.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/components/widget-admin-list/widget-admin-list.component.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/components/widget-admin-list/widget-admin-list.component.html","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/models/widget.model.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/state/widget-admin.query.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/components/widget-admin-form/widget-admin-form.component.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/components/widget-admin-form/widget-admin-form.component.html","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/widget-admin.module.ts","../../../projects/cat-qw-lib/src/lib/admin/action-admin/state/admin-action.store.ts","../../../projects/cat-qw-lib/src/lib/admin/action-admin/state/admin-action.service.ts","../../../projects/cat-qw-lib/src/lib/admin/action-admin/components/admin-action-list/admin-action-list.component.ts","../../../projects/cat-qw-lib/src/lib/admin/action-admin/components/admin-action-list/admin-action-list.component.html","../../../projects/cat-qw-lib/src/lib/admin/action-admin/components/admin-action-form/admin-action-form.component.ts","../../../projects/cat-qw-lib/src/lib/admin/action-admin/components/admin-action-form/admin-action-form.component.html","../../../projects/cat-qw-lib/src/lib/admin/action-admin/action-admin.module.ts","../../../projects/cat-qw-lib/src/lib/admin/dd-admin/dd-admin.module.ts","../../../projects/cat-qw-lib/src/lib/admin/dd-admin/components/dd-admin-form/dd-admin-form.component.ts","../../../projects/cat-qw-lib/src/lib/admin/dd-admin/components/dd-admin-form/dd-admin-form.component.html","../../../projects/cat-qw-lib/src/lib/admin/dd-admin/components/dd-admin-list/dd-admin-list.component.ts","../../../projects/cat-qw-lib/src/lib/admin/dd-admin/components/dd-admin-list/dd-admin-list.component.html","../../../projects/cat-qw-lib/src/public-api.ts","../../../projects/cat-qw-lib/src/cat-qw-lib.ts"],"sourcesContent":["export class SHARED {\n static EMPTY = \"\";\n static REQUIRED_ERROR = \"Field Required\";\n static EMPTYARRAY = [];\n static NULL = \"NULL\";\n static HIPHEN = \"-\";\n static SLASH = \"/\";\n static USERROLE = \"role\"\n static SESSIONKEY = \"userData\";\n static SUCCESS = \"success\";\n static ERROR = \"error\";\n static ERROR_MESSAGE = \"Success Message\";\n static SUCCESS_MESSAGE = \"Success Message\";\n static DICTIONARY = \"Dictionary\";\n static TITLE = 'title';\n static DICTIONARY_ITEM = 'dictionaryItem';\n static DICTIONARY_ITEM_MAPPER = 'dictionaryItemMapper';\n static SIDEBAR_MASK = '.p-sidebar-mask';\n static CUSTOMSIDEBAROVERLAY = 'custom-sidebar-overlay';\n static ID = 'id';\n static _ID = '_id';\n static DATE_FORMAT = \"DD/MM/YYYY\";\n static DATE_FORMAT_TYPE2 = \"DD-MM-YYYY\";\n static DATE_FORMAT_TYPE3 = \"YY-MM-DD\";\n static DATE_FORMAT_TYPE4 = \"YYYY-MM-DD\";\n static INVALIDDATE = \"Invalid Date\";\n static __V = '__v';\n static CREATEDAT = 'createdAt';\n static UPDATEDAT = 'updatedAt';\n static CREDENTIALS = 'credentials';\n static ZERO = 0\n static TYPE_OBJECT = 'object'\n static DICTIONARYITEMS = 'dictionaryItems';\n static GET_DATA_MESSAGE = [{ severity: 'info', detail: 'Data has been fetched successfully.', life:1000 }]\n static PRIMARY = 'primary';\n static mappingInfo = 'mappingInfo';\n static YES = 'Yes';\n static NO = 'No';\n static selectedQueue = 'selectedQueue';\n static DASH = \"-\"\n static selectedApplication = 'selectedApplication';\n static selectedApplicationNumber = 'selectedApplicationNumber';\n static GREEN = \"green\"\n static RED = \"red\"\n static FROM_EMAIL = \"neeraj.kumar@catura.co.uk\";\n static to_EMAIL = \"shubham.prajapati@dynamatix.com\";\n static EMAIL = 'email';\n static token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjYxOTI2ZjcyN2RkZWI0MDAxMWE2ZDZmNyIsIm5hbWUiOiJKb2huIERvZSIsInJvbGUiOiJ1c2VyIiwiaWF0IjoxNjQyNzQ5MzYyLCJleHAiOjE2NDI4MzU3NjJ9.4fBQqP2_6z0H4Ow7J-R27XEdIgl2MrMoIXCgD_qZFlA';\n static null = 'null';\n static undefined = 'undefined';\n static rationale = 'rationale';\n static accepted = 'Accepted';\n static application = 'Application';\n static INVALID_API_PATH = 'Please enter the API path.';\n static WIDTH_AUTO = 'w-auto';\n static TRUE = true;\n static FALSE = false;\n}\n\nexport const delimiters = ['|', '/', '-'];\n\nexport const dictionaryItemList = [];\n\nexport const dictionaryItemMapperList = [];\n\nexport const dictionaryApiFieldList = {\n title: 'Property data',\n data: [ { name: 'First name' },\n { name: 'Last name' },\n { name: 'Email' },\n { name: 'Address' },\n { name: 'Gender' },\n { name: 'Dob' }\n ]\n}\n\nexport const FolderPanel = [\n {\n _id: 'folder1',\n fileCount: 10,\n text: 'Documents',\n missingFiles: 3,\n pendingFiles: 2\n },\n {\n _id: 'folder2',\n fileCount: 5,\n text: 'Images',\n missingFiles: 0,\n pendingFiles: 1\n },\n {\n _id: 'folder3',\n fileCount: 20,\n text: 'Reports',\n missingFiles: 5,\n pendingFiles: 0\n },\n {\n _id: 'folder4',\n fileCount: 8,\n text: 'Videos',\n missingFiles: 0,\n pendingFiles: 0\n },\n {\n _id: 'folder5',\n fileCount: 15,\n text: 'Archives',\n missingFiles: 1,\n pendingFiles: 3\n }\n];\n\nexport const DocumentList = [\n {\n id: 1,\n fileName: 'Document 1',\n status: 'pending',\n documentUrl: 'https://vadimdez.github.io/ng2-pdf-viewer/assets/pdf-test.pdf',\n },\n {\n id: 2,\n fileName: 'Document 2',\n status: 'verified',\n documentUrl: 'https://vadimdez.github.io/ng2-pdf-viewer/assets/pdf-test.pdf',\n },\n {\n id: 3,\n fileName: 'Document 3',\n status: 'sentReminder',\n documentUrl: 'https://vadimdez.github.io/ng2-pdf-viewer/assets/pdf-test.pdf',\n },\n {\n id: 4,\n fileName: 'Document 4',\n status: 'pending',\n documentUrl: 'https://vadimdez.github.io/ng2-pdf-viewer/assets/pdf-test.pdf',\n },\n];\n\n\nexport const widgetLinkList = [\n { name: 'https://dummy-url.com/NY', code: 'NY' },\n { name: 'https://dummy-url.com/RM', code: 'RM' },\n { name: 'https://dummy-url.com/LDN', code: 'LDN' },\n { name: 'https://dummy-url.com/IST', code: 'IST' },\n { name: 'https://dummy-url.com/PRS', code: 'PRS' }\n];\n\nexport const dictionaryList = [\n {\"id\": 1 ,\"Name\": \"John Doe\", \"API\": \"Dynamatix.com/getfinance\" },\n {\"id\": 2 ,\"Name\": \"Jane Smith\", \"API\": \"Dynamatix.com/getfinance\" },\n {\"id\": 3 ,\"Name\": \"David Lee\", \"API\": \"Dynamatix.com/getfinance\" },\n {\"id\": 4 ,\"Name\": \"Emma Wilson\", \"API\": \"Dynamatix.com/getfinance\" },\n {\"id\": 5 ,\"Name\": \"Michael Brown\", \"API\": \"Dynamatix.com/getfinance\" }\n]\n\nexport const SEQUENTIAL_MESSAGE = [\n \"Your case is under review.\",\n \"We have received your application.\",\n \"A new update is available for your case.\",\n \"Please verify your contact details.\",\n \"Your case is pending further action.\",\n \"We are processing your request.\",\n \"Your case has been escalated.\",\n \"Thank you for reaching out.\",\n \"Your documents have been received.\",\n \"Our team will contact you shortly.\"\n];\n\nexport const apiHiddenHeaderList = ['credentials','createdAt','updatedAt','__v','properties', '_id', 'createdByUserID', 'updatedByUserID']\n\nexport const dictionaryHiddenHeaderList = ['queues','attributes','createdByUserID','updatedByUserID','createdAt', 'updatedAt', '__v', '_id']\n\nexport const widgetHiddenHeaderList = ['predefinedName','dataItems','timestamp','createdAt','updatedAt','__v','order']\n\nexport const hiddenHeaderList = ['status','actions']\n\nexport const expectedRoutes = ['apiManagement','queue', 'dictionary', 'widget']\n\nexport const mileList = [\n { name: '0.5 Mile', value: 0.5 },\n { name: '1 Mile', value: 1 }\n];\n\nexport const messageType = [\n { name: 'Email', icon: 'pi pi-envelope' },\n { name: 'WhatsApp', icon: 'pi pi-whatsapp' },\n { name: 'SMS', icon: 'pi pi-comment' },\n]\n\nexport const propertyDataList = [\n {\n key: '0',\n label: 'Documents',\n data: 'Documents Folder',\n icon: 'pi pi-fw pi-inbox',\n children: [\n {\n key: '0-0',\n label: 'Work',\n data: 'Work Folder',\n icon: 'pi pi-fw pi-cog',\n children: [\n { key: '0-0-0', label: 'Expenses.doc', icon: 'pi pi-fw pi-file', data: 'Expenses Document' },\n { key: '0-0-1', label: 'Resume.doc', icon: 'pi pi-fw pi-file', data: 'Resume Document' }\n ]\n },\n {\n key: '0-1',\n label: 'Home',\n data: 'Home Folder',\n icon: 'pi pi-fw pi-home',\n children: [{ key: '0-1-0', label: 'Invoices.txt', icon: 'pi pi-fw pi-file', data: 'Invoices for this month' }]\n }\n ]\n },\n{\n key: '1',\n label: 'Events',\n data: 'Events Folder',\n icon: 'pi pi-fw pi-calendar',\n children: [\n { key: '1-0', label: 'Meeting', icon: 'pi pi-fw pi-calendar-plus', data: 'Meeting' },\n { key: '1-1', label: 'Product Launch', icon: 'pi pi-fw pi-calendar-plus', data: 'Product Launch' },\n { key: '1-2', label: 'Report Review', icon: 'pi pi-fw pi-calendar-plus', data: 'Report Review' }\n ]\n},\n{\n key: '2',\n label: 'Movies',\n data: 'Movies Folder',\n icon: 'pi pi-fw pi-star-fill',\n children: [\n {\n key: '2-0',\n icon: 'pi pi-fw pi-star-fill',\n label: 'Al Pacino',\n data: 'Pacino Movies',\n children: [\n { key: '2-0-0', label: 'Scarface', icon: 'pi pi-fw pi-video', data: 'Scarface Movie' },\n { key: '2-0-1', label: 'Serpico', icon: 'pi pi-fw pi-video', data: 'Serpico Movie' }\n ]\n },\n {\n key: '2-1',\n label: 'Robert De Niro',\n icon: 'pi pi-fw pi-star-fill',\n data: 'De Niro Movies',\n children: [\n { key: '2-1-0', label: 'Goodfellas', icon: 'pi pi-fw pi-video', data: 'Goodfellas Movie' },\n { key: '2-1-1', label: 'Untouchables', icon: 'pi pi-fw pi-video', data: 'Untouchables Movie', selectable: false }\n ]\n }\n ]\n}\n];\n\nexport const actionHiddenHeaderList = ['apiEndPoint'];\n\nexport const actionList = [\n { action: 'Valuation Fee', \n prompt: `The following conversation includes references to various addresses. Based on the selected form \"Valuation Fee\",\n identify and extract the most recent address provided (in descending order of appearance in the text) and map it to the following schema::\n {\n \"Line1\": string,\n \"Line2\": string,\n \"town\": string,\n \"postcode\": string\n }.\n \n Respond **only** with a valid JSON object matching this schema. Do not include any explanation, additional text, or comments.\n \n Data:`, queueId: '674f1c645dafa6a66511c8fb', apiEndPoint: 'http://qa-gb.api.dynamatix.com:3100/api/applications', status: 'Enable'\n },\n { action: 'UK Resident', \n prompt: `\n The following conversation involves information related to UK residency. Based on the selected form \"UK Resident\",\n extract the most recent address mentioned (in descending order of appearance in the text) and map it to the following schema::\n {\n \"Line1\": string,\n \"Line2\": string,\n \"town\": string,\n \"postcode\": string\n }.\n \n Respond **only** with a valid JSON object matching this schema. Do not include any explanation, additional text, or comments.\n \n Data:`, queueId: '676e4b27ee779eafc72b11b9', apiEndPoint: 'http://qa-gb.api.dynamatix.com:3100/api/applications', status: 'Disable'\n },\n { action: 'Address Update', \n prompt: `\n The following conversation contains updates related to address changes. Based on the selected form \"Address Update\",\n identify and extract the most recent address mentioned (in descending order of appearance in the text) and map it to the following schema::\n {\n \"Line1\": string,\n \"Line2\": string,\n \"town\": string,\n \"postcode\": string\n }.\n \n Respond **only** with a valid JSON object matching this schema. Do not include any explanation, additional text, or comments.\n \n Data:`, queueId: '67332cf2f9439e97c47a3c43', apiEndPoint: 'http://qa-gb.api.dynamatix.com:3100/api/applications', status: 'Enable'\n }\n]\n\nexport const actionTableColumnWidthList = {action: 'w-3', prompt: 'w-4', queueId: 'w-3', status: 'w-2'}","import { Component, EventEmitter, Input, Output, Renderer2 } from '@angular/core';\nimport { SHARED } from '../../constant/SHARED';\n@Component({\n selector: 'sidebar',\n templateUrl: './sidebar.component.html',\n styleUrl: './sidebar.component.scss',\n standalone : false\n})\nexport class SidebarComponent {\n @Input() isSidebarVisible!: boolean;\n @Input() title!: string;\n @Output() onClose = new EventEmitter<any>();\n\n constructor(private renderer: Renderer2) {}\n\n onSidebarShow() {\n const overlay = document.querySelector(SHARED.SIDEBAR_MASK);\n if (overlay) {\n this.renderer.addClass(overlay, SHARED.CUSTOMSIDEBAROVERLAY);\n }\n }\n\n handleSidebarClose() {\n this.onClose.emit(false);\n }\n}\n","<div *ngIf=\"isSidebarVisible\" class=\"backdrop-shadow\" (click)=\"handleSidebarClose()\"></div>\n<div>\n<p-sidebar class=\"sidebar-panel-wrapper\" [(visible)]=\"isSidebarVisible\" (onShow)=\"onSidebarShow()\" (onHide)=\"handleSidebarClose()\" [position]=\"'right'\">\n <ng-template pTemplate=\"header\">\n <div class=\"flex align-items-center\">\n <h2 class=\"sidebar-title-wrapper text-color mb-0\">\n {{title}}\n </h2>\n </div>\n </ng-template>\n <p-divider class=\"sidebar-devider\"></p-divider>\n <ng-content></ng-content>\n</p-sidebar>","import { Injectable } from '@angular/core';\nimport { EntityState, EntityStore, StoreConfig } from '@datorama/akita';\nimport { BaseState } from './base.state';\nimport { BehaviorSubject } from 'rxjs';\nimport { BaseModel } from '../models/base.model';\nexport interface BaseEntityState<T> extends BaseState, EntityState<T> {\n \n}\n\n\n/**\n * BaseStore is a generic class that extends EntityStore from Akita.\n */\n@StoreConfig({ name: 'base' })\n@Injectable({ providedIn: 'root' })\nexport class BaseStore<T extends BaseModel> extends EntityStore<BaseEntityState<T>, T> {\n static storeName = 'base';\n public recordChange$: BehaviorSubject<any>;\n public onDocumentAccept$: BehaviorSubject<any>;\n public onDailogClose$: BehaviorSubject<any>;\n public openDocument$: BehaviorSubject<any>;\n public alertMessage$: BehaviorSubject<any>;\n\n constructor() {\n super({ records: [], lists: [] }, { name: BaseStore.storeName }); \n this.recordChange$ = new BehaviorSubject<any>([]);\n this.onDocumentAccept$ = new BehaviorSubject<any>({});\n this.onDailogClose$ = new BehaviorSubject<boolean>(false);\n this.openDocument$ = new BehaviorSubject<any>({});\n this.alertMessage$ = new BehaviorSubject<string>('');\n }\n\n setList(data: T[]) {\n this.update({ lists: data });\n }\n\n setRecordChange(value: any) {\n this.recordChange$.next(value);\n }\n\n setOnDocumentAccept(value: any) {\n this.onDocumentAccept$.next(value);\n }\n\n setOnDailogClose(value: any) {\n this.onDailogClose$.next(value);\n }\n\n setOpenDocument(value: any) {\n this.openDocument$.next(value);\n }\n\n setAlertMessage(value: any) {\n this.alertMessage$.next(value);\n }\n \n}\n","\nimport { QueryEntity } from '@datorama/akita';\nimport { BaseEntityState, BaseStore } from './base.store';\nimport { Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\nimport { BaseModel } from '../models/base.model';\n\n/**\n * BaseQuery is a generic class that extends QueryEntity from Akita.\n * It provides methods to interact with the state of entities managed by the BaseStore.\n */\n@Injectable({ providedIn: 'root' })\nexport class BaseQuery<T extends BaseModel> extends QueryEntity<BaseEntityState<T>, T> {\n constructor(protected override store: BaseStore<T>) {\n super(store);\n }\n\n selectAllEntities() {\n return this.selectAll();\n }\n\n selectEntityById(id: string) {\n return this.selectEntity(id);\n }\n\n getLists(): Observable<any> {\n return this.select(state => state.lists);\n }\n\n getRecordChange() {\n return this.store.recordChange$.asObservable();\n }\n\n getOnDocumentAccept() {\n return this.store.onDocumentAccept$.asObservable();\n }\n\n getonDailogClose() {\n return this.store.onDailogClose$.asObservable();\n }\n\n getOpenDocument() {\n return this.store.openDocument$.asObservable();\n }\n\n getAlertMessage() {\n return this.store.alertMessage$.asObservable();\n }\n\n \n\n \n}\n","import { Component, EventEmitter, Input, OnChanges, Output } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AttributeModel } from '../../models/attribute.model';\nimport { SHARED } from '../../constant/SHARED';\nimport { BaseQuery } from '../../state/base.query';\nimport { BaseStore } from '../../state/base.store';\n\n@Component({\n selector: 'app-base-control',\n standalone: true,\n imports: [CommonModule],\n templateUrl: './base-control.component.html',\n styleUrl: './base-control.component.scss',\n providers : [BaseStore]\n})\nexport class BaseControlComponent implements OnChanges {\n constructor() {}\n @Input() store !: BaseStore<any> | null;\n @Input() record: any;\n @Input() attributeModel! : AttributeModel;\n @Input() error : string = \"\"\n @Output() onInput = new EventEmitter();\n @Output() onEnterKeydown = new EventEmitter();\n @Output() onBtnClick = new EventEmitter();\n\n query !: BaseQuery<any>\n ngOnChanges(){\n if(this.store) {\n this.query = new BaseQuery(this.store)\n }\n }\n handleModelChange(event:any, valid: boolean|null, val?:any) { \n if (this.attributeModel?.name) {\n this.record[this.attributeModel?.name] = event;\n this.onInput.emit(event);\n }\n }\n\n // handleEnterKey(event:any, valid: boolean|null) {\n // if (this.attributeModel?.name) {\n // this.record[this.attributeModel?.name] = event;\n // this.onEnterKeydown.emit(event);\n // this.record[this.attributeModel?.name] = SHARED.EMPTY;\n // }\n // }\n\n handleButtonClick(event:MouseEvent){\n this.onBtnClick.emit(event);\n }\n\n getValue() : string | null | undefined {\n return this.record[this.attributeModel.name]\n }\n \n}\n","<p>base-control works!</p>\n","import { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { CheckboxModule } from 'primeng/checkbox';\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\n\n@Component({\n selector: 'check-box',\n templateUrl: './check-box.component.html',\n styleUrl: './check-box.component.scss',\n standalone : true,\n imports : [CommonModule,FormsModule, CheckboxModule]\n})\nexport class CheckBoxComponent extends BaseControlComponent {\n \n}\n","<div class=\"checkBoxContainer\">\n \n <div class=\"checkBox\">\n <p-checkbox\n [disabled]=\"attributeModel.readonly ?? false\"\n [binary]=\"true\"\n inputId=\"binary\"\n [label]=\"attributeModel.displayText ?? ''\"\n class=\"dynamic-checkbox\"\n #checkBox=\"ngModel\"\n [ngModel]=\"this.record[this.attributeModel.name]\"\n [style]=\"{\n '--checkbox-size': attributeModel.customColumnWidth || '20px',\n '--checkbox-height': attributeModel.customHeight || '20px'\n }\"\n [required]=\"attributeModel.isRequired ?? false\" \n (ngModelChange)=\"handleModelChange($event, checkBox.valid)\"\n >\n </p-checkbox>\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\n </div>\n</div>","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { FormsModule } from '@angular/forms';\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\nimport { ButtonModule } from 'primeng/button';\n\n@Component({\n selector: 'lib-button',\n standalone: true,\n imports : [CommonModule,InputTextModule, FormsModule, ButtonModule],\n templateUrl: './button.component.html',\n styleUrl: './button.component.scss',\n})\nexport class ButtonComponent extends BaseControlComponent{}\n","<ng-container>\n <div class=\"btn-control\">\n <p-button\n type=\"button\"\n [label]=\"attributeModel.buttonLabel ?? 'Click Me'\"\n [disabled]=\"attributeModel.isDisabled ?? false\"\n [style]=\"{\n width: attributeModel.customButtonWidth\n ? attributeModel.customButtonWidth\n : 'auto',\n padding: attributeModel.customPadding\n ? attributeModel.customPadding\n : '0.5rem' \n }\"\n [icon]=\"attributeModel.icon ? attributeModel.icon : ''\"\n [iconPos]=\"attributeModel.iconPosition ?? 'left'\" \n [ngClass]=\"{\n 'p-button-primary': attributeModel.isPrimary ?? true,\n 'p-button-secondary': !attributeModel.isPrimary\n }\"\n (onClick)=\"handleButtonClick($event)\"\n></p-button>\n\n </div>\n </ng-container>","\nimport { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\nimport { TooltipModule } from 'primeng/tooltip';\n\n@Component({\n selector: 'text-box',\n templateUrl: './text-box.component.html',\n styleUrl: './text-box.component.scss',\n standalone : true,\n imports : [CommonModule,InputTextModule, FormsModule, TooltipModule]\n})\nexport class TextBoxComponent extends BaseControlComponent {\n override getValue() {\n if(this.record[this.attributeModel.name] == false){\n return typeof this.record[this.attributeModel.name] == \"string\" ? \"\" : \"No\"\n }else if( this.record[this.attributeModel.name] == true){\n return \"Yes\"\n }else{\n return this.record[this.attributeModel.name] ?? \"-\"\n }\n }\n}\n","<ng-container >\n <div class=\"\">\n\n <div *ngIf=\"attributeModel.displayText\" class=\"mb-2\">\n <label>{{ attributeModel.displayText }}</label>\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\n </div>\n @if (attributeModel.readonly) {\n <div class=\"mb-2\" [ngStyle]=\"{'font-size':'14px', 'color':'#0F1729', 'font-weight':'600' }\">\n <label [for]=\"attributeModel.name ?? 'textBox'\" class=\"text-value-wrapper\" [ngStyle]=\"{color: attributeModel.textColorOnReadonly}\">{{ getValue() }}</label>\n </div>\n } @else {\n <div class=\"inputTextBox\">\n\n <input\n pInputText\n type=\"text\"\n autocomplete=\"off\"\n [placeholder]=\"attributeModel.placeholder ?? ''\"\n class=\"block p-inputtext w-full\"\n [pTooltip]=\"attributeModel.tooltip ?? ''\"\n [tooltipPosition]=\"attributeModel.toolTipPosition ?? '' \"\n [ngModel]=\"record?.[attributeModel.name] ?? ''\"\n [disabled]=\"attributeModel?.readonly ?? false\" \n [name]=\"attributeModel.name ?? 'textBox'\"\n [id]=\"attributeModel.name ?? 'textBox'\"\n [required]=\"attributeModel.isRequired ?? false\" \n [ngStyle]=\"{\n width: attributeModel.customColumnWidth\n ? attributeModel.customColumnWidth\n : '',\n padding: attributeModel.customPadding ? attributeModel.customPadding : ''\n }\"\n #textboxField=\"ngModel\"\n (ngModelChange)=\"handleModelChange($event, textboxField.valid)\"\n [ngClass]=\"{\n 'ng-dirty ng-invalid':\n (!textboxField.valid && error)\n }\"\n />\n </div>\n }\n </div>\n \n</ng-container>\n","import { Component, EventEmitter, input, Input, Output, ViewEncapsulation } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ButtonModule } from 'primeng/button';\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\nimport { ToastModule } from 'primeng/toast';\nimport { ConfirmationService, Message, MessageService } from 'primeng/api';\nimport { MessageModule } from 'primeng/message';\nimport { MessagesModule } from 'primeng/messages';\nimport { ButtonComponent } from '../../controls/button/button.component';\nimport { TextBoxComponent } from '../../controls/text-box/text-box.component';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { SHARED } from '../../constant/SHARED';\n@Component({\n selector: 'form-container',\n standalone: true,\n imports: [CommonModule, ButtonModule,ConfirmDialogModule,ToastModule, MessagesModule, ButtonComponent, TextBoxComponent],\n templateUrl: './form-container.component.html',\n styleUrl: './form-container.component.scss',\n providers : [MessageService, ConfirmationService],\n encapsulation: ViewEncapsulation.None\n})\nexport class FormContainerComponent {\n @Input() isDisable:boolean = SHARED.TRUE\n @Input() messages: Message[] = [];\n @Input() record: any\n @Input() headerText: string | undefined;\n @Input() showSave:boolean = SHARED.FALSE\n @Input() disableButton:boolean = SHARED.FALSE\n @Input() disableSubmitButton:boolean = SHARED.FALSE\n @Input() disableSaveButton:boolean = SHARED.FALSE\n @Output() onSave = new EventEmitter();\n @Output() onCancel = new EventEmitter();\n @Input() overrideNavigate: boolean = SHARED.FALSE;\n \n\n constructor( private router: Router,\n private route: ActivatedRoute,){}\n \n handleSaveClick(){\n this.onSave.emit()\n }\n handleCancelClick(){\n this.onCancel.emit()\n }\n\n handleCreateBtnClick() {\n\n }\n}\n","<div class=\"form-container\">\n <div class=\"text-900 font-bold text-xl form-header mt-2\">\n <div class=\"form-header-container w-full mr-0\">\n <div class=\"form-header-title\"[innerHTML]=\"this.headerText\">\n </div>\n <div class=\"form-header-messege w-full\">\n <p-messages class=\"message-wrapper\" [(value)]=\"messages\" [enableService]=\"false\" />\n </div>\n </div>\n\n <div class=\"btn-wrapper\">\n <ng-content select=\"[headerButtons]\"></ng-content>\n @if(showSave){\n <button\n pButton\n pRipple\n label=\"Cancel\"\n (click)=\"handleCancelClick()\"\n class=\"p-button-outlined mr-2\"\n ></button>\n\n <button\n pButton\n class=\"p-button-success\"\n label=\"Save\"\n [disabled]=\"disableSaveButton\"\n type=\"button\"\n tooltipPosition=\"bottom\"\n (click)=\"handleSaveClick()\"\n ></button>\n }\n <ng-content select=\"[headerButtons]\"></ng-content>\n </div>\n </div>\n \n \n <p-toast></p-toast>\n\n <div>\n <p-confirmDialog>\n <ng-template pTemplate=\"message\" let-message>\n <div class=\"flex flex-column align-items-center w-full gap-3 border-bottom-1 surface-border\">\n <i class=\"pi pi-exclamation-circle text-6xl text-primary-500\"></i>\n <p>{{ message.message }}</p>\n </div>\n </ng-template>\n </p-confirmDialog>\n </div> \n <div class=\"grid mt-3\">\n <div class=\"col-12\">\n <ng-content></ng-content>\n </div>\n </div>\n </div>\n ","\n/**\n * URLS\n */\nexport class URLS{\n static CONFIGFILEURL = \"assets/config/api.config.json\"\n}","import { HttpClient } from '@angular/common/http';\nimport { Injectable } from '@angular/core';\nimport { firstValueFrom } from 'rxjs';\nimport { URLS } from '../constant/URLS';\n\n/**\n * This service is used to get the app configuration from the config file.\n */\n@Injectable({\n providedIn: 'root'\n})\nexport class AppConfigService {\n\n private appConfig: any;\n\n constructor(private http: HttpClient) {}\n async loadAppConfig() {\n this.appConfig = await firstValueFrom(this.http.get(URLS.CONFIGFILEURL));\n }\n\n get apiBaseUrl() {\n return this.appConfig?.catQwUrl;\n }\n\n get visibilityOptions(){\n return this.appConfig?.visibilityOption\n }\n \n}\n","import { SelectItem } from \"primeng/api\";\n\nexport class List {\n dataSource?: string;\n records: any[];\n label: string;\n value: string;\n forProperty!: string;\n items: SelectItem[];\n allItems: SelectItem[];\n\n constructor(dataSource: string, records: any[] = [], label: string, value: string, forProperty?: string) {\n this.dataSource = dataSource\n this.records = records;\n this.label = label;\n this.value = value;\n this.dataSource = dataSource;\n this.forProperty = forProperty ?? \"\"\n this.items = records?.map((i) => {\n return { label: i[this?.label] ? i[this?.label] : 'No label', value: i[this?.value] };\n });\n this.allItems = this.records?.map((i) => {\n return { label: i[this?.label] ? i[this?.label] : 'No label', value: i[this?.value] };\n });\n }\n\n}\n","import { firstValueFrom } from \"rxjs\";\nimport { List } from \"../models/list.model\";\nimport { Injectable } from \"@angular/core\";\nimport { HttpClient } from \"@angular/common/http\";\nimport { AppConfigService } from \"./app-config.service\";\n\n@Injectable({\n providedIn: 'root',\n})\nexport class ListService {\n constructor(public http: HttpClient, public configService: AppConfigService) {}\n\n async getLists(models: any[]) {\n const lists: List[] = [];\n\n for (const model of models) {\n if (model.dataSource) {\n try {\n const response = await firstValueFrom(\n this.getbyPathName(model.dataSource)\n );\n const list = new List(\n model.dataSource,\n response as any[],\n model.listLabelProperty as string,\n model.listValueProperty as string,\n model.dataSource\n );\n list.forProperty = model.name;\n lists.push(list);\n } catch (error) {\n console.error(`Error fetching data from ${model.dataSource}:`, error);\n }\n } \n else if (model.options) {\n const list = new List(\n model.dataSource,\n model.options as any[],\n model.listLabelProperty as string,\n model.listValueProperty as string,\n undefined\n );\n list.forProperty = model.name;\n lists.push(list);\n }\n }\n return lists;\n }\n\n getbyPathName(data: string) {\n return this.http.get(this.configService.apiBaseUrl + data);\n }\n}\n","import { Injectable, Injector } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable } from 'rxjs';\nimport { map, tap } from 'rxjs/operators';\nimport { BaseStore } from './base.store';\nimport { SHARED } from '../constant/SHARED';\nimport { BaseModel } from '../models/base.model';\nimport { AppConfigService } from '../services/app-config.service';\nimport { ListService } from '../services/list.service';\n\n@Injectable({providedIn:'root'})\nexport class BaseService<T extends BaseModel> {\n public _pathName: string = SHARED.EMPTY;\n protected lists!:string[];\n protected http: HttpClient;\n protected list!:[]\n constructor(http: HttpClient, private store: BaseStore<T>, private appConfigService: AppConfigService, protected listService : ListService) {\n \n this.http = http;\n }\n \n\n get apiUrl(): string {\n return this.appConfigService.apiBaseUrl;\n }\n\n set pathName(value: string) {\n this._pathName = value;\n }\n\n async initList() {\n let response = await this.listService.getLists(this.list)\n if (response && response.length > 0) {\n this.store.setList(response as any)\n }\n \n } \n\n create(entity: T): Observable<T> {\n return this.http.post<T>(this.apiUrl + this._pathName, entity).pipe(\n tap((newEntity: T) => this.store.add(newEntity))\n );\n }\n\n getAll(): Observable<T[]> {\n return this.http.get<T[]>(this.apiUrl + this._pathName).pipe(\n tap((entities: T[]) => this.store.set(entities))\n );\n }\n\n getById(id: string): Observable<T> {\n return this.http.get<T>(`${this.apiUrl}${this._pathName}/${id}`).pipe(\n tap((entity: T) => this.store.upsert(id, entity))\n );\n }\n\n update(id: string, entity: T): Observable<T> {\n return this.http.put<T>(`${this.apiUrl}${this._pathName}/${id}`, entity).pipe(\n tap((updatedEntity: T) => this.store.update(id, updatedEntity))\n );\n }\n\n delete(id: string): Observable<void> {\n return this.http.delete<void>(`${this.apiUrl}${this._pathName}/${id}`).pipe(\n tap(() => this.store.remove(id))\n );\n }\n \n}\n","\nexport class TablePrimaryModel{\n name!: string;\n headers!: any[];\n records!: any[];\n}","import { AttributeModel } from \"../../models/attribute.model\";\n\nexport class TablePrimaryHeaderModel{\n name!: string;\n attributes!: AttributeModel;\n width!: string;\n}","import { Injectable } from \"@angular/core\";\nimport { TablePrimaryModel } from \"../table-primary/models/table-primary.model\";\nimport { SHARED } from \"../constant/SHARED\";\nimport { TablePrimaryHeaderModel } from \"../table-primary/models/table-primary-header.model\";\n\n\n/**\n * TableBuilder\n */\n@Injectable({\n providedIn:'root'\n})\nexport class TableBuilder{\n\n public hiddenHeaders: string[] = [];\n buildTable(records: any[], headerWidths?: { [key: string]: string }): TablePrimaryModel {\n const table = new TablePrimaryModel();\n table.records = records;\n if (records && records.length > 0) {\n table.headers = this.buildHeaders(Object.keys(records[0]),headerWidths);\n } else {\n table.headers = [];\n }\n return table;\n }\n \n private buildHeaders(keys: string[], headerWidths: { [key: string]: string } | undefined): TablePrimaryHeaderModel[] {\n \n const headers: TablePrimaryHeaderModel[] = [];\n const filteredKeys = keys.filter(\n key => key !== SHARED.ID && !this.hiddenHeaders.includes(key) // hide headers\n );\n for (const key of filteredKeys) {\n const header = new TablePrimaryHeaderModel();\n header.name = key;\n if(headerWidths) header.width = headerWidths[key] || SHARED.WIDTH_AUTO;\n headers.push(header);\n }\n return headers;\n }\n}","import { Component, OnInit } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BaseModel } from '../../models/base.model';\nimport { TableBuilder } from '../../services/table.builder';\nimport { BaseService } from '../../state/base.service';\nimport { TablePrimaryModel } from '../../table-primary/models/table-primary.model';\n\n/**\n * BaseListComponent is a generic class that provides a base implementation for a list component.\n */\n@Component({\n selector: 'lib-base-list',\n templateUrl: './base-list.component.html',\n styleUrl: './base-list.component.scss',\n})\nexport class BaseListComponent<T extends BaseModel> {\n\n table!: TablePrimaryModel;\n\n constructor(protected service: BaseService<T>, protected builder: TableBuilder){}\n\n init(){\n this.service.getAll().subscribe((res:any)=>{\n this.table = this.builder.buildTable(res);\n this.afterTableBuild()\n });\n }\n\n afterTableBuild(){\n\n }\n}\n","<p>base-list works!</p>\n","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { DropdownModule } from 'primeng/dropdown';\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\nimport { FormsModule } from '@angular/forms';\nimport { SelectItem } from 'primeng/api';\nimport { ListService } from '../../services/list.service';\nimport { List } from '../../models/list.model';\nimport { BaseQuery } from '../../state/base.query';\n\n/**\n * DropdownComponent\n */\n@Component({\n selector: 'dropdown',\n standalone: true,\n imports: [CommonModule, DropdownModule, FormsModule],\n templateUrl: './dropdown.component.html',\n styleUrls: ['./dropdown.component.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class DropdownComponent extends BaseControlComponent{\n options: SelectItem[] | undefined = [];\n list!: List | undefined;\n childListRecords: any[] = [];\n @Input() isStaticDropdown = false;\n\n constructor(public listService: ListService) {\n super();\n }\n\n override ngOnChanges() {\n if(this.store) {\n this.query = new BaseQuery(this.store);\n }\n if (this.attributeModel.options) {\n this.options = this.attributeModel.options;\n }\n if (!this.isStaticDropdown) {\n this.handleGetAndSetList();\n }else{\n this.options = this.attributeModel.options?.map((x: any) => {\n return { label: x[this.attributeModel?.listLabelProperty || 0], value: x[this.attributeModel?.listValueProperty || 0] };\n });\n }\n }\n\n handleGetAndSetList() {\n try {\n this.query.getLists().subscribe((response: List[]) => {\n if (response) {\n this.mapResponseToOptions(response);\n }\n });\n } catch (error) {\n console.error('Error fetching data:', error);\n }\n }\n\n private mapResponseToOptions(lists: List[]): SelectItem[] {\n if (lists && lists.length > 0) {\n const clonedLists = JSON.parse(JSON.stringify(lists));\n this.list = clonedLists.find((x: any) => x.forProperty === this.attributeModel.name);\n if (this.list) {\n this.options = this.list?.items ?? [];\n }\n }\n if (!this.options || this.options.length === 0) {\n this.options = this.attributeModel.options ?? [];\n }\n return this.options;\n }\n\n\n override handleModelChange(event: any, valid: boolean | null, val?: any): void {\n super.handleModelChange(event, valid);\n }\n}\n","<ng-container>\n <div class=\"mb-2\">\n <label>{{ attributeModel.displayText }}</label>\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\n </div>\n <div class=\"dropdownbox\">\n\n <p-dropdown \n \n [options]=\"options\" \n [disabled]=\"attributeModel.readonly ?? false\"\n [showClear]=\"true\"\n [name]=\"attributeModel.name ?? 'testSingleSelect'\" \n [ngModel]=\"record[attributeModel.name]\" \n [placeholder]=\"attributeModel.placeholder ?? ''\" \n [required]=\"attributeModel.isRequired ?? false\"\n filterBy=\"label\" \n class=\"dropdownFeild\"\n #dropdown=\"ngModel\"\n (ngModelChange)=\"handleModelChange($event, dropdown.valid)\" \n [ngClass]=\"!dropdown.valid && error == attributeModel.name ? 'ng-dirty ng-invalid':''\" \n appendTo=\"body\" \n optionLabel=\"label\" \n optionValue=\"value\">\n</p-dropdown>\n</div>\n\n</ng-container>\n","import { Injectable } from '@angular/core';\nimport moment from 'moment';\nimport { SHARED } from '../constant/SHARED';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class DateParserService {\n\n constructor() { }\n\n parseDate(date:any) {\n\n\t\tif (\n\t\t\tmoment(date, SHARED.DATE_FORMAT_TYPE2, true).isValid()\n\t\t) {\n\t\t\tconst date1 = date.toString().split(SHARED.HIPHEN)[0];\n\t\t\tconst month = date.toString().split(SHARED.HIPHEN)[1];\n\t\t\tconst year = date.toString().split(SHARED.HIPHEN)[2];\n\t\t\treturn moment.utc(`${year}-${month}-${date1}`).toDate();\n\t\t}\n\t\telse if (\n\t\t\tmoment(date, SHARED.DATE_FORMAT, true).isValid()\n\t\t) {\n\t\t\tconst date1 = date.toString().split(SHARED.SLASH)[0];\n\t\t\tconst month = date.toString().split(SHARED.SLASH)[1];\n\t\t\tconst year = date.toString().split(SHARED.SLASH)[2];\n\t\t\treturn moment.utc(`${year}-${month}-${date1}`).toDate();\n\t\t}\n\t\telse if (moment(date, SHARED.DATE_FORMAT_TYPE3, true).isValid()) {\n\t\t\tconst dateParts = date.toString().split(SHARED.HIPHEN);\n\t\t\tconst year = dateParts[0];\n\t\t\tconst month = dateParts[1];\n\t\t\tconst day = dateParts[2];\n\t\t\treturn moment.utc(`${year}-${month}-${day}`).toDate();\n\t\t}\n else if (\n \n\t\t\tdate instanceof Date ||\n\t\t\tnew Date(date).toString() != SHARED.INVALIDDATE\n\t\t) {\n\n\t\t\tconst result = new Date(date);\n\t\t\tresult.setHours(0, 0, 0, 0);\n\t\t\treturn moment.utc(`${result.getFullYear()}-${result.getMonth()+1}-${result.getDate()}`).toDate();\n\t\t}\n\t\telse {\n\t\t\tthrow new Error(SHARED.INVALIDDATE);\n\t\t}\n\n\t\treturn SHARED.INVALIDDATE\n\t}\n\n}\n","import { Component, OnChanges } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\nimport { DateParserService } from '../../services/date-parser.service';\nimport { CalendarModule } from 'primeng/calendar';\nimport { FormsModule } from '@angular/forms';\nimport { SHARED } from '../../constant/SHARED';\nimport moment from 'moment';\n\n@Component({\n selector: 'date',\n standalone: true,\n imports: [CommonModule, CalendarModule, FormsModule],\n templateUrl: './date.component.html',\n styleUrl: './date.component.scss',\n})\nexport class DateComponent extends BaseControlComponent implements OnChanges{\n constructor(public dateService : DateParserService){\n super()\n }\n override ngOnChanges(): void {\n if(this.attributeModel.readonly){\n this.getValue()\n }else{\n\n this.record[this.attributeModel.name] = this.dateService.parseDate(this.record[this.attributeModel?.name]) ??\n new Date();\n }\n }\n override getValue() {\n if (this.record[this.attributeModel.name]) {\n const formattedDate = moment(this.record[this.attributeModel.name]).format('DD/MM/YYYY');\n if(formattedDate == \"Invalid date\"){\n return SHARED.HIPHEN\n }else{\n return formattedDate\n }\n }\n return SHARED.EMPTY\n }\n \n}\n","@if (attributeModel && record) {\n<div class=\"\">\n <div class=\"mb-2\">\n <label>{{\n attributeModel?.displayText\n ? attributeModel?.displayText\n : attributeModel?.name\n }}</label>\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\n </div>\n @if (attributeModel.readonly) {\n <div class=\"mb-2\" [ngStyle]=\"{ 'font-size': '14px', color: '#0F1729', 'font-weight':'600' }\">\n <label>{{ getValue() }}</label>\n </div>\n } @else {\n <div>\n <p-calendar\n [showIcon]=\"attributeModel.showCalenderIcon ?? true\"\n inputId=\"icon\"\n [disabled]=\"attributeModel?.readonly ?? false\"\n [required]=\"attributeModel?.isRequired ?? false\"\n [name]=\"attributeModel?.name ? attributeModel?.name : 'testDatePicker'\"\n [placeholder]=\"\n attributeModel.placeholder ? attributeModel.placeholder : ''\n \"\n [yearRange]=\"attributeModel.yearRange ?? '1950 : 2050'\"\n [title]=\"attributeModel.title ? attributeModel.title : ''\"\n [(ngModel)]=\"record[attributeModel?.name]\"\n #dateField=\"ngModel\"\n [dateFormat]=\"'dd/mm/yy'\"\n appendTo=\"body\"\n (ngModelChange)=\"handleModelChange($event, dateField.valid)\"\n [ngClass]=\"{\n 'ng-dirty ng-invalid': !dateField.valid && error == attributeModel?.name\n }\"\n [hourFormat]=\"attributeModel?.hourFormat ? '24' : ''\"\n >\n </p-calendar>\n </div>\n }\n</div>\n\n}\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\nimport { FormsModule } from '@angular/forms';\nimport { FileUploadModule } from 'primeng/fileupload';\n\n@Component({\n selector: 'file-upload',\n standalone: true,\n imports: [CommonModule, FormsModule, FileUploadModule],\n templateUrl: './file-upload.component.html',\n styleUrl: './file-upload.component.scss',\n})\nexport class FileUploadComponent extends BaseControlComponent {\n\n handleSingleUpload(event:any){\n console.log(event)\n }\n}\n","<ng-container class=\"documentContainer\">\n @if(!attributeModel.hideLabelOnForm){\n <div class=\"mb-2\">\n <label class=\"form-header-label\">{{ attributeModel?.displayText }}</label>\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\n </div>\n }\n<div class=\"card flex justify-content-center\">\n <p-fileUpload \n mode=\"basic\" \n [chooseLabel]=\"record[attributeModel.name] ? attributeModel.displayText : 'No Files'\"\n chooseIcon=\"pi pi-plus\"\n [name]=\"attributeModel?.name\"\n accept=\"image/*,application/pdf\" \n [maxFileSize]=\"209715200\" class=\"fileUploader\"\n (onSelect)=\"handleSingleUpload($event)\" />\n</div>\n</ng-container>","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'capitalizeWords',\n standalone: true,\n})\nexport class CapitalizeWordsPipe implements PipeTransform {\n transform(value: string): string {\n if (!value) return value;\n return value\n .split(' ')\n .map(word => \n word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()\n )\n .join(' ');\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { InputTextareaModule } from 'primeng/inputtextarea';\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\n\n@Component({\n selector: 'text-area',\n templateUrl: './text-area.component.html',\n styleUrl: './text-area.component.scss',\n standalone : true,\n imports : [CommonModule ,InputTextareaModule, FormsModule]\n})\nexport class TextAreaComponent extends BaseControlComponent {\n @Input() rowspan : number = 0\n override getValue() {\n if(this.record[this.attributeModel.name] == false){\n return typeof this.record[this.attributeModel.name] == \"string\" ? \"\" : \"No\"\n }else if( this.record[this.attributeModel.name] == true){\n return \"Yes\"\n }else{\n return this.record[this.attributeModel.name] ?? \"-\"\n }\n}\n}\n","<ng-container class=\"textAreaContainer\">\n <div *ngIf=\"attributeModel.displayText\" class=\"mb-2\">\n <label>{{ attributeModel.displayText }}</label>\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\n </div>\n @if (attributeModel.readonly) {\n <div class=\"mb-2\" [ngStyle]=\"{'font-size':'14px', 'color':'#0F1729', 'font-weight':'600' }\">\n <label class=\"text-value-wrapper\" [ngStyle]=\"{color: attributeModel.textColorOnReadonly}\">{{ getValue() }}</label>\n </div>\n } @else {\n <div class=\"textAreaControl\">\n <textarea\n pInputTextarea\n [rows]=\"rowspan ?? 3\"\n cols=\"30\"\n [disabled]=\"attributeModel?.readonly ?? false\"\n [ngModel]=\"record[attributeModel.name]\"\n [name]=\"attributeModel.name ?? 'textArea'\"\n [required]=\"attributeModel?.isRequired ?? false\"\n [ngStyle]=\"{\n width: attributeModel.customColumnWidth\n ? attributeModel.customColumnWidth\n : ''\n }\"\n #textArea=\"ngModel\"\n (ngModelChange)=\"handleModelChange($event, textArea.valid)\"\n [ngClass]=\"{\n 'ng-dirty ng-invalid':\n (!textArea.valid && error == attributeModel?.name)\n \n }\"\n ></textarea>\n \n </div>\n }\n</ng-container>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { DropdownModule } from 'primeng/dropdown';\nimport { InputGroupModule } from 'primeng/inputgroup';\nimport { ButtonModule } from 'primeng/button';\nimport { CardModule } from 'primeng/card';\nimport { SidebarModule } from 'primeng/sidebar';\nimport { SidebarComponent } from './components/sidebar/sidebar.component';\nimport { CheckBoxComponent } from './controls/check-box/check-box.component';\nimport { DragDropModule } from 'primeng/dragdrop';\nimport { FormContainerComponent } from './components/form-container/form-container.component';\nimport { BaseListComponent } from './_base/base-list/base-list.component';\nimport { DropdownComponent } from './controls/dropdown/dropdown.component'\nimport { BaseFormComponent } from './_base/base-form/base-form.component';\nimport { TextBoxComponent } from './controls/text-box/text-box.component';\nimport { InputTextareaModule } from 'primeng/inputtextarea';\nimport { DividerModule } from 'primeng/divider';\nimport { DateComponent } from './controls/date/date.component';\nimport { DialogModule } from 'primeng/dialog';\nimport { TimelineModule } from 'primeng/timeline';\nimport { ListboxModule } from 'primeng/listbox';\nimport { CheckboxModule } from 'primeng/checkbox';\nimport { FileUploadComponent } from './controls/file-upload/file-upload.component';\nimport { FileUploadModule } from 'primeng/fileupload';\nimport { CapitalizeWordsPipe } from './pipe/capitalize-words.pipe';\nimport { TextAreaComponent } from './controls/text-area/text-area.component';\n@NgModule({\n \n declarations: [ SidebarComponent],\n imports: [\n CommonModule,\n FormsModule,\n InputTextModule,\n ButtonModule,\n DropdownModule,\n InputGroupModule,\n CardModule,\n SidebarModule,\n CheckBoxComponent,\n DragDropModule,\n FormContainerComponent,\n BaseListComponent,\n DropdownComponent,\n BaseListComponent,\n TextBoxComponent,\n InputTextareaModule,\n DividerModule,\n DateComponent,\n DialogModule,\n TimelineModule,\n ListboxModule,\n CheckboxModule,\n FileUploadComponent,\n FileUploadModule,\n CapitalizeWordsPipe,\n TextAreaComponent\n ],\n exports: [ CapitalizeWordsPipe,TextBoxComponent,FormsModule,ListboxModule,DialogModule, CheckboxModule,DropdownComponent,FormContainerComponent, BaseListComponent, SidebarComponent, DividerModule, CardModule]\n})\nexport class SharedModule { }\n","export class ROUTES {\n static QUEUE_FORM = \"/queue/\";\n static DICTIONARY_CREATE_FORM = '/dictionary/create';\n static DICTIONARY = '/dictionary/';\n static APIMANAGEMENT = '/apiManagement/';\n static APICONFIG = 'apiConfig';\n static VALIDATEAPI = 'api-configurations/validateApi';\n static APPLICATION = \"application/\";\n static APIPROPERTIES = \"apiConfig/parentAndChildProps\";\n static APPLICATION_WIDGET = \"widgets/dataItems/\";\n static DOCUMENTALERT = \"alerts/documentId\";\n}","\n/**\n * This class is used to store the API Paths for the application\n */\nexport class DATASOURCES{\n static QUEUES = \"queues\"\n static DICTIONARY = \"data-dictionaries\"\n static ACTIONS = \"actions\"\n static WIDGET = \"widgets\"\n static APIMANAGEMENT = \"api-configurations\"\n static APPLICATION = \"applications\"\n static DOCUMETS = \"documents\"\n static RATIONALE = \"rationale\"\n}","export class HEADERS{\n static API_MANAGEMENT = \"Api Management\";\n static DICTIONARY_FORM = \"Dictionary Form\";\n}","import { Component, Input } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\nimport { InputTextModule } from 'primeng/inputtext';\n\n@Component({\n selector: 'username',\n standalone: true,\n imports: [CommonModule, InputTextModule,FormsModule],\n templateUrl: './username.component.html',\n styleUrls: ['./username.component.scss'],\n})\nexport class UsernameComponent extends BaseControlComponent {\n\n \n}\n","<ng-container>\n <div class=\"username-control\">\n <span class=\"p-input-icon-left\">\n <i class=\"pi pi-envelope\"></i>\n <input pInputText type=\"text\"\n autocomplete=\"off\"\n [placeholder]=\"attributeModel.placeholder ?? ''\" \n [ngModel]=\"record[attributeModel.name]\"\n [required]=\"attributeModel.isRequired ?? false\" \n [disabled]=\"attributeModel.readonly ?? false\"\n #usernameField=\"ngModel\"\n (ngModelChange)=\"handleModelChange($event, usernameField.valid)\" \n />\n </span>\n </div>\n </ng-container>","import { Component , OnInit} from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\nimport { FormsModule } from '@angular/forms';\n\n@Component({\n selector: 'password',\n standalone: true,\n imports: [CommonModule, FormsModule],\n templateUrl: './password.component.html',\n styleUrl: './password.component.scss',\n})\nexport class PasswordComponent extends BaseControlComponent {\n invalidPasswordErrorMsg: string | undefined\n \n constructor(){\n super()\n }\n\n ngOninit():void{\n this.invalidPasswordErrorMsg = \"Invalid Password\";\n }\n\n}\n","<ng-container>\n\n <div class=\"password-control\">\n <span class=\"p-input-icon-left\">\n <i class=\"pi pi-key\"></i>\n <input type=\"password\" autocomplete=\"off\" pInputText [placeholder]=\"attributeModel.placeholder ?? ''\"\n [ngModel]=\"record[attributeModel.name]\" [required]=\"attributeModel.isRequired ?? false\" #passwordField=\"ngModel\"\n (ngModelChange)=\"handleModelChange($event, passwordField.valid)\" [ngClass]=\"{\n 'ng-dirty ng-invalid': !passwordField.valid && error == attributeModel.name\n }\" class=\"block p-inputtext\" />\n\n </span>\n </div>\n @if (!passwordField.valid && passwordField.dirty) {\n <div>\n <small id=\"password-help\" class=\"p-error\">{{\n invalidPasswordErrorMsg\n }}</small>\n </div>\n }\n\n</ng-container>","export class CSS {\n static DIALOGUE_BREAKPOINTS = {\n '960px': '75vw',\n '640px': '90vw'\n }\n static DIALOGUE_OVERFLOW = { overflow: 'auto' }\n static DIALOGUE_WIDTH = '100vw'\n static DIALOGUE_HIGHT = '100vh'\n}","import { SelectItem } from \"primeng/api\";\n\nexport class AttributeModel {\n displayText ?: string;\n readonly ?: boolean;\n name ?: any;\n isRequired?: boolean;\n placeholder?: string;\n maxLength?: number;\n infoText?: string;\n buttonLabel?: string;\n isDisabled?: boolean;\n customButtonWidth?: string;\n isPrimary?: number;\n title?: string;\n customColumnWidth?: string;\n customHeight?: string;\n icon?: string;\n iconPosition?: 'left' | 'right';\n customPadding?: string;\n dataSource?: string;\n listValueProperty?: string;\n listLabelProperty?: string;\n options?: SelectItem[];\n childListName?: any;\n childListKey?:any;\n inputId?:string;\n allowFraction?:string = 'Y'\n numberMode?:string;\n currency?:string;\n locale ?: 'en-GB';\n tooltip?:string;\n toolTipPosition?:string\n hourFormat?:string\n yearRange?:string\n showCalenderIcon ?: boolean\n additionalFilterList?:string\n additionalFilterKey?:string\n lookupName?:any\n textColorOnReadonly ?: any\n hideLabelOnForm?:boolean = false\n}","export class BaseModel{\n _id ?: any\n}","export class ERROR{\n static ERROR = \"Error\";\n static VALIDATE_API_FAILED = \"API validation failed. Please review the input and try again.\"\n}","import { Injectable } from '@angular/core';\nimport { Router } from '@angular/router';\nimport { SHARED } from '../constant/SHARED';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class SessionService {\n\n constructor(public router : Router) {\n\n }\n\n getUserRole() {\n const role = sessionStorage.getItem('role');\n return role;\n }\n\n setUserSession(data: any): void {\n sessionStorage.setItem(SHARED.SESSIONKEY, JSON.stringify(data));\n }\n\n getUserSession(): any {\n const sessionData = sessionStorage.getItem(SHARED.SESSIONKEY);\n return sessionData ? JSON.parse(sessionData) : null;\n }\n\n\n getSessionID(){\n return 1;\n }\n\n clearSession(): void {\n sessionStorage.clear();\n localStorage.clear();\n }\n}\n","import { Injectable } from '@angular/core';\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, Router } from '@angular/router';\nimport { SessionService } from '../session.service';\nimport { map, Observable, of, tap } from 'rxjs';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class AuthGuard implements CanActivate {\n constructor(public _sessionService : SessionService,private _router: Router) {}\n\n canActivate(\n next: ActivatedRouteSnapshot,\n state: RouterStateSnapshot\n ): Observable<boolean> {\n return of(this._sessionService.getSessionID()).pipe(\n tap((sessionID) => {\n if (!sessionID) {\n this._router.navigateByUrl(\"auth/login\" + \"?returnUrl=\" + state.url);\n }\n }),\n map((sessionID) => !!sessionID)\n );\n }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n providedIn: 'root'\n})\nexport class ValidatorService {\n\n constructor() { }\n\n handleValidateRecords(record:any){\n return true\n }\n}\n","import { Component, EventEmitter, Output } from '@angular/core';\nimport { BehaviorSubject, Subscription } from 'rxjs';\nimport { ValidatorService } from '../../services/validator.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { SHARED } from '../../constant/SHARED';\nimport { AttributeModel } from '../../models/attribute.model';\nimport { BaseModel } from '../../models/base.model';\nimport { BaseStore } from '../../state/base.store';\nimport { BaseService } from '../../state/base.service';\n\n/**\n * BaseFormComponent \n */\n@Component({\n selector: 'base-form',\n templateUrl: './base-form.component.html',\n styleUrls: ['./base-form.component.scss'],\n providers : [ValidatorService]\n})\nexport class BaseFormComponent<T extends BaseModel> {\n protected subscriptions: Subscription[];\n record!: T;\n public recordChange = new BehaviorSubject<any>({});\n @Output() onSave = new EventEmitter<any>();\n @Output() onCancel = new EventEmitter<any>();\n\n\n constructor(protected service: BaseService<T>, protected validatorService?:ValidatorService, protected router?: Router, protected activatedRoute?: ActivatedRoute, protected baseStore?: BaseStore<T>\n ) {\n this.subscriptions = [];\n this.record = {} as T;\n }\n\n message:any[] = []\n attributeMode!:AttributeModel;\n\n init(): void {\n this.service.initList();\n this.baseStore?.setRecordChange(SHARED.EMPTY);\n let id = '677fab064fcbea6b1687404c';\n if((id !== SHARED.ZERO.toString()) && id) {\n this.service.getById(id).subscribe((res:any) => {\n this.record = res;\n this.baseStore?.setRecordChange(res);\n this.recordChange.next(res);\n })\n }\n }\n\n handleSubmit() {\n let validateRecords = this.validatorService ? this.validatorService.handleValidateRecords(this.record) : true\n if (validateRecords) {\n if(this.record._id){\n this.handleAddRecord();\n } else {\n this.handleUdateRecord();\n }\n }\n }\n\n handleAddRecord(){\n this.service.update(this.record._id, this.record).subscribe({\n next: (response: T) => {\n console.log('Record created:', response);\n this.onSave.emit();\n },\n error: (error) => {\n console.error('Error creating record:', error);\n }\n })\n }\n\n handleUdateRecord(){\n this.service.create(this.record).subscribe({\n next: (response: T) => {\n console.log('Record created:', response);\n this.onSave.emit();\n },\n error: (error) => {\n console.error('Error creating record:', error);\n }\n })\n }\n\n handleCancel(){\n this.onCancel.emit();\n }\n \n}\n","<p>base-form works!</p>\n","export class LOOKUPS{\n static DOCUMENTTYPE = 'DocumentType'\n}","import { Component, Input, OnInit } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TableModule } from 'primeng/table';\nimport { TablePrimaryModel } from '../models/table-primary.model';\nimport { ButtonModule } from 'primeng/button';\nimport { ToggleButtonModule } from 'primeng/togglebutton';\nimport { FormsModule } from '@angular/forms';\nimport { InputSwitchModule } from 'primeng/inputswitch';\nimport { InputTextModule } from 'primeng/inputtext';\nimport { TooltipModule } from 'primeng/tooltip';\nimport { Router } from '@angular/router';\nimport { SHARED } from '../../constant/SHARED';\n\n@Component({\n selector: 'lib-table-primary',\n standalone: true,\n imports: [CommonModule, TableModule, ButtonModule, ToggleButtonModule, FormsModule, InputSwitchModule, InputTextModule, TooltipModule],\n templateUrl: './table-primary.component.html',\n styleUrl: './table-primary.component.scss',\n})\nexport class TablePrimaryComponent implements OnInit {\n @Input() table!: TablePrimaryModel;\n @Input() title!: string;\n \n @Input() showStatus = true;\n @Input() showActions = true;\n @Input() showSearchBar = true;\n @Input() showNewRecordButton = true;\n @Input() showRefreshButton = true;\n\n globalFilter: string = SHARED.EMPTY;\n\n constructor(private _router: Router) {}\n\nngOnInit(): void {\n // Ensure that table headers are not empty\n if (this.table.headers.length === 0) {\n console.error('Table headers are missing.');\n }\n}\n\n clearSearch(table: any) {\n this.globalFilter = SHARED.EMPTY;\n table.clear(); \n }\n\n refreshTable() {\n }\n\n handleCreate() {\n const currentRouteURL = this._router.url;\n this._router.navigate([currentRouteURL + SHARED.SLASH + SHARED.ZERO])\n }\n\n handleEditClick(id: number) {\n const currentRouteURL = this._router.url;\n this._router.navigate([currentRouteURL + SHARED.SLASH + id])\n }\n\n editRow(rowData: any) {\n console.log('Edit Row:', rowData);\n }\n\n deleteRow(rowData: any) {\n console.log('Delete Row:', rowData);\n }\n\n viewRow(rowData: any) {\n console.log('Delete Row:', rowData);\n }\n}\n","<p-table #dt2 [columns]=\"table.headers\" class=\"table-primary-container\" [value]=\"table.records\">\n <ng-template pTemplate=\"caption\">\n <div class=\"table-header-wrapper flex align-items-center justify-content-between\">\n <h3 class=\"text-color table-title-wrapper text-color m-0\">{{title}}</h3>\n <div class=\"flex align-items-center justify-content-between w-full\">\n <div class=\"flex justify-content-end w-full\" *ngIf=\"showSearchBar\">\n <input pInputText type=\"text\" [(ngModel)]=\"globalFilter\" (input)=\"dt2.filterGlobal($event, 'contains')\"\n [placeholder]=\"'Search ...'\" class=\"search-input-wrapper w-4\" />\n <p-button icon=\"pi pi-cog\" class=\"setting-icon-wrapper ml-3\"></p-button>\n </div>\n </div>\n </div>\n </ng-template>\n\n <!-- Header Template -->\n <ng-template pTemplate=\"header\" let-columns>\n <tr *ngIf=\"table.headers.length > 0\">\n <th *ngFor=\"let col of table.headers\" class=\"p-4\" [pSortableColumn]=\"col.name\" [ngClass]=\"col.width ? col.width : 'w-full'\">\n <h4 class=\"flex align-items-center table-header-title capitalize text-color font-semibold m-0\">\n {{ col.name }}\n <p-sortIcon [field]=\"col.name\" />\n </h4>\n </th>\n <th *ngIf=\"showActions\" class=\"table-action-title p-4\" [ngClass]=\"table.headers[0]?.width ? 'w-2' : 'w-full'\">\n <h4 class=\"text-color font-semibold table-header-title capitalize m-0\">Actions</h4></th>\n </tr>\n </ng-template>\n\n <!-- Table Body -->\n <ng-template pTemplate=\"body\" let-rowData>\n <tr *ngIf=\"table.headers.length > 0\" class=\"table-row-wrapper relative table-group-wrapper\">\n <td class=\"text-left p-4\" *ngFor=\"let col of table.headers\">\n <div class=\"table-text-wrapper p-0\" \n [ngClass]=\"{\n 'enable-badge-wrapper': col.name.toLowerCase() === 'status' && rowData[col.name] === 'Enable',\n 'disable-badge-wrapper': col.name.toLowerCase() === 'status' && rowData[col.name] === 'Disable',\n 'w-8': col.name.toLowerCase() === 'status',\n 'text-primary font-semibold': col.name.toLowerCase() === 'action' || col.name.toLowerCase() === 'name'\n }\"\n >\n {{ rowData[col.name] }}\n <p *ngIf=\"col.name.toLowerCase() === 'action'\" class=\"text-color font-normal\">{{rowData['apiEndPoint']}}</p>\n </div>\n </td>\n\n <!-- Actions -->\n <td *ngIf=\"showActions\" class=\"action-data-wrapper text-left p-4\">\n <div class=\"flex align-items-center\">\n <p-button icon=\"pi pi-pencil\" (click)=\"handleEditClick(rowData._id)\" class=\"edit-icon-wrapper mr-3\"></p-button>\n <p-button icon=\"pi pi-trash\" (click)=\"deleteRow(rowData)\" class=\"delete-icon-wrapper mr-3\"></p-button>\n </div>\n </td>\n <p-button icon=\"pi pi-eye\" (click)=\"viewRow(rowData)\" class=\"view-icon-wrapper icon-position-wrapper table-group-wrapper-hover:visible\"></p-button>\n </tr>\n </ng-template>\n</p-table>","export class Credentials {\n email?:string;\n password?:string;\n}","export class MESSAGE {\n static VALIDATE_SUCCESS_MESSAGE = \"API validation completed successfully! Your API is now ready for use.\"\n}","export class LISTCONFIG{\n static APICONFIG = [\n {\n name:\"parentApiConfigID\",\n dataSource : \"api-configurations\",\n listValueProperty: \"_id\",\n listLabelProperty: \"name\"\n }\n ]\n}","import { Injectable } from '@angular/core';\nimport { StoreConfig } from '@datorama/akita';\nimport { BaseStore } from '../../../shared';\nimport { ApiConfigModel } from '../models/api-config.model';\n\n@Injectable({ providedIn: 'root' })\n@StoreConfig({ name: 'apiManagementStore' })\n\nexport class ApiAdminStore extends BaseStore<ApiConfigModel> {\n constructor() {\n super();\n }\n}\n","\nimport { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { ApiAdminStore } from './api-admin.store';\nimport { Observable, tap } from 'rxjs';\nimport { AppConfigService, BaseService, DATASOURCES } from '../../../shared';\nimport { ListService } from '../../../shared/services/list.service';\nimport { ApiConfigModel } from '../models/api-config.model';\nimport { LISTCONFIG } from '../../../shared/constant/LIST-CONFIG';\n\n/**\n * Service for managing API configurations.\n */\n@Injectable({ providedIn: 'root' })\nexport class ApiAdminService extends BaseService<ApiConfigModel> {\n\n constructor(\n http: HttpClient,\n protected apiManagementStore: ApiAdminStore,\n private configService: AppConfigService,\n listService: ListService\n ) {\n super(http, apiManagementStore, configService, listService);\n this._pathName = DATASOURCES.APIMANAGEMENT;\n }\n\n protected override list : any= LISTCONFIG.APICONFIG\n\n checkApiByPathName(name:string, record:any): Observable<ApiConfigModel[]> {\n return this.http.post<ApiConfigModel[]>(this.apiUrl+name, record).pipe(\n tap((entities: ApiConfigModel[]) => this.apiManagementStore.set(entities))\n );\n }\n}\n","import { Component, Input, OnChanges } from '@angular/core';\nimport { Credentials } from '../../models/credentials.model';\nimport { ApiAdminStore } from '../../state/api-admin.store';\nimport { ApiConfigModel } from '../../models/api-config.model';\n\n@Component({\n selector: 'api-credential-form',\n templateUrl: './api-credential-form.component.html',\n styleUrl: './api-credential-form.component.scss',\n standalone : false\n})\nexport class ApiCredentialFormComponent implements OnChanges {\n\n @Input() record!: ApiConfigModel;\n\n credentials!: Credentials;\n\n constructor(public apiAdminStore: ApiAdminStore) {\n this.credentials = new Credentials();\n }\n\n ngOnChanges(): void {\n this.credentials = this.record.credentials || new Credentials();\n }\n}\n"," <div class=\"col-12 flex md:col-12\">\n\n <div class=\"col-12 md:col-6\">\n <username\n [store]=\"apiAdminStore\"\n [record]=\"credentials\"\n [attributeModel]=\"{\n readonly: false,\n name: 'email',\n isRequired: true,\n displayText: 'Email',\n placeholder: 'Enter Email'\n }\"\n ></username>\n </div>\n <div class=\"col-12 md:col-6\">\n <password\n [store]=\"apiAdminStore\"\n [record]=\"credentials\"\n [attributeModel]=\"{\n readonly: false,\n name: 'password',\n isRequired: true,\n displayText: 'password',\n placeholder: 'Enter Password'\n }\"\n ></password>\n </div>\n </div>\n","import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';\nimport { Router, ActivatedRoute } from '@angular/router';\nimport { Message, SelectItem } from 'primeng/api';\nimport { BaseFormComponent, ERROR, SHARED } from '../../../../shared';\nimport { ValidatorService } from '../../../../shared/services/validator.service';\nimport { Credentials } from '../../models/credentials.model';\nimport { ROUTES } from '../../../../shared/constant/ROUTES';\nimport { ApiAdminService } from '../../state/api-admin.service';\nimport { ApiAdminStore } from '../../state/api-admin.store';\nimport { ApiConfigModel } from '../../models/api-config.model';\nimport { Subscription } from 'rxjs';\nimport { MESSAGE } from '../../../../shared/constant/MESSAGES';\n\n\n/**\n * Form component for creating and updating API configurations.\n */\n@Component({\n selector: 'lib-api-admin-form',\n templateUrl: './api-admin-form.component.html',\n styleUrl: './api-admin-form.component.scss',\n standalone: false,\n encapsulation:ViewEncapsulation.None\n})\nexport class ApiAdminFormComponent extends BaseFormComponent<ApiConfigModel> implements OnInit , OnDestroy{\n isDisable:boolean = SHARED.TRUE;\n messages: Message[] = SHARED.EMPTYARRAY;\n name: string = SHARED.EMPTY;\n selectedParentId!: string;\n filteredRecords: string[] = SHARED.EMPTYARRAY;\n dropdownOptions: any[] = SHARED.EMPTYARRAY;\n apiPropertyList!: SelectItem[];\n private recordChangeSubscription: Subscription | null = null;\n\n\n constructor(public apiAdminService: ApiAdminService, override validatorService: ValidatorService, override router: Router, override activatedRoute: ActivatedRoute, public apiAdminStore: ApiAdminStore) {\n super(apiAdminService, validatorService, router, activatedRoute)\n this.record.credentials = new Credentials();\n this.record.isActive = true;\n }\n\n ngOnInit() {\n this.init()\n }\n\n hanldeValidateApi() {\n const payload = {\n path: this.record.path,\n credentials: {\n email : this.record.credentials.email,\n password : this.record.credentials.password\n },\n getByIDPath : this.record.getByIDPath,\n idProperty : this.record.idProperty\n }\n if (this.record.path) {\n this.apiAdminService.checkApiByPathName(ROUTES.VALIDATEAPI, payload).subscribe({\n next: (res: any) => {\n if (res && res.isValid) {\n this.isDisable = SHARED.FALSE\n this.messages = [{ severity: SHARED.SUCCESS, detail: MESSAGE.VALIDATE_SUCCESS_MESSAGE }];\n setTimeout(() => {\n this.messages = SHARED.EMPTYARRAY\n }, 3000);\n }\n },\n error: (error: any) => {\n this.messages = [{ severity: SHARED.ERROR, detail: ERROR.VALIDATE_API_FAILED }];\n setTimeout(() => {\n this.messages = SHARED.EMPTYARRAY;\n }, 3000);\n },\n });\n } else {\n this.messages = [{ severity: SHARED.ERROR, detail: SHARED.INVALID_API_PATH }];\n }\n }\n\n handleModelChange(event: string) {\n if (event) {\n this.apiAdminService.getById(event).subscribe((res: any) => {\n this.apiPropertyList = res.properties.map((property: string) => ({\n label: property,\n value: property\n }));\n })\n } else {\n this.record.parentKey = SHARED.EMPTY;\n this.apiPropertyList = SHARED.EMPTYARRAY;\n }\n }\n\n ngOnDestroy(): void {\n if (this.recordChangeSubscription) {\n this.recordChangeSubscription.unsubscribe();\n }\n }\n}\n\n","<form-container\n [headerText]=\"'Api Management Form'\"\n [messages]=\"messages\"\n (onSave)=\"handleSubmit()\"\n [showSave]=\"true\"\n [disableSaveButton]=\"isDisable\"\n (onCancel)=\"handleCancel()\"\n>\n <div class=\"card p-fluid p-formgrid grid \">\n <h4 class=\"font-bold col-12 md:col-12\">Api Management Form</h4>\n <div class=\"col-12 md:col-6\">\n <text-box\n [store]=\"apiAdminStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n readonly: false,\n name: 'name',\n isRequired: true,\n displayText: 'Name',\n placeholder: 'Enter Name'\n }\"\n ></text-box>\n </div>\n <div class=\"col-12 md:col-6\">\n <text-box\n [store]=\"apiAdminStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n readonly: false,\n name: 'path',\n isRequired: true,\n displayText: 'Path',\n placeholder: 'Enter Path'\n }\"\n ></text-box>\n </div>\n <div class=\"col-12 md:col-6\">\n <text-box\n [store]=\"apiAdminStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n readonly: false,\n name: 'getByIDPath',\n isRequired: true,\n displayText: 'Get By ID Path',\n placeholder: 'Enter getByID Path'\n }\"\n ></text-box>\n </div>\n <div class=\"col-12 md:col-6\">\n <text-box\n [store]=\"apiAdminStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n readonly: false,\n name: 'idProperty',\n isRequired: true,\n displayText: 'Id Property',\n placeholder: 'Enter Id Property'\n }\"\n ></text-box>\n </div>\n\n <div class=\"col-12 md:col-2\">\n <button\n pButton\n pRipple\n type=\"button\"\n label=\"Validate\"\n (click)=\"hanldeValidateApi()\"\n class=\"p-button-raised\"\n ></button>\n </div>\n </div>\n <div class=\"card p-fluid p-formgrid grid \">\n <h4 class=\"font-bold\">Other Details</h4>\n <div class=\"col-12 md:col-12 p-0 m-0\">\n <api-credential-form [record]=\"record\"></api-credential-form>\n </div>\n <div class=\"col-12 md:col-6\">\n <dropdown\n [store]=\"apiAdminStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n name: 'parentApiConfigID',\n dataSource: 'api-configurations',\n listLabelProperty: 'name',\n listValueProperty: '_id', \n displayText: 'Select Parent',\n placeholder: 'Select Parent API',\n childListName: 'parentKey',\n childListKey: 'name'\n }\"\n (onInput)=\"handleModelChange($event)\"\n ></dropdown>\n\n </div>\n <div class=\"col-12 md:col-6\">\n <dropdown\n [store]=\"apiAdminStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n name:'parentKey',\n displayText : 'Property',\n placeholder: 'Select Property',\n options: apiPropertyList\n }\"></dropdown>\n </div>\n\n <div class=\"col-12 md:col-12\">\n <text-area\n [store]=\"apiAdminStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n readonly: false,\n name: 'description',\n isRequired: false,\n displayText: 'Description',\n placeholder: 'Enter Description'\n }\"\n ></text-area>\n </div>\n </div>\n</form-container>","import { Component, OnInit } from '@angular/core';\nimport { BaseListComponent, TableBuilder, apiHiddenHeaderList } from '../../../../shared';\nimport { ApiConfigModel } from '../../models/api-config.model';\nimport { ApiAdminService } from '../../state/api-admin.service';\n\n/**\n * ApiAdminListComponent\n */\n@Component({\n selector: 'lib-api-admin-list',\n templateUrl: './api-admin-list.component.html',\n styleUrl: './api-admin-list.component.scss',\n standalone : false\n})\nexport class ApiAdminListComponent extends BaseListComponent<ApiConfigModel> implements OnInit {\n constructor(apiAdminService : ApiAdminService, private tableBuilder : TableBuilder ){\n super(apiAdminService, tableBuilder)\n this.tableBuilder.hiddenHeaders = apiHiddenHeaderList;\n }\n ngOnInit() {\n this.init()\n }\n}","\n@if(table){\n <lib-table-primary [table]=\"table\">\n \n </lib-table-primary>\n}","import { APP_INITIALIZER, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ApiAdminFormComponent } from './components/api-admin-form/api-admin-form.component';\nimport { ApiAdminListComponent } from './components/api-admin-list/api-admin-list.component';\nimport { FormsModule } from '@angular/forms';\nimport { AppConfigService, PasswordComponent, SharedModule, TablePrimaryComponent, UsernameComponent } from '../../shared';\nimport { HttpClientModule } from '@angular/common/http';\nimport { ButtonModule } from 'primeng/button';\nimport { ApiCredentialFormComponent } from './components/api-credential-form/api-credential-form.component';\nimport { TextAreaComponent } from '../../shared/controls/text-area/text-area.component';\n\n\n@NgModule({\n declarations: [ApiAdminFormComponent,ApiCredentialFormComponent ,ApiAdminListComponent],\n imports: [\n CommonModule,\n FormsModule,\n SharedModule,\n HttpClientModule,\n ButtonModule,\n UsernameComponent,\n PasswordComponent,\n TextAreaComponent,\n TablePrimaryComponent\n \n\n ],\n exports : [ApiAdminFormComponent, ApiAdminListComponent],\n providers: [\n {\n provide: APP_INITIALIZER,\n useFactory: (configService: AppConfigService) => () =>\n configService.loadAppConfig(),\n deps: [AppConfigService],\n multi: true,\n },\n ],\n})\nexport class ApiAdminModule { }\n","import { Injectable } from '@angular/core';\nimport { StoreConfig } from '@datorama/akita';\nimport { BaseStore } from '../../../shared';\nimport { WidgetModel } from '../models/widget.model';\n\n/**\n * Widget Admin Store\n */\n@Injectable({ providedIn: 'root' })\n@StoreConfig({ name: 'widgetStore' })\nexport class WidgetAdminStore extends BaseStore<WidgetModel> {\n constructor() {\n super();\n }\n}\n","\nimport { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { Observable, tap } from 'rxjs';\nimport { AppConfigService, BaseService, DATASOURCES } from '../../../shared';\nimport { ListService } from '../../../shared/services/list.service';\nimport { LISTCONFIG } from '../../../shared/constant/LIST-CONFIG';\nimport { WidgetAdminStore } from './widget-admin.store';\nimport { WidgetModel } from '../models/widget.model';\n\n/**\n * Service for managing widget configurations.\n */\n@Injectable({ providedIn: 'root' })\nexport class WidgetAdminService extends BaseService<WidgetModel> {\n\n constructor(\n http: HttpClient,\n protected apiManagementStore: WidgetAdminStore,\n private configService: AppConfigService,\n listService: ListService\n ) {\n super(http, apiManagementStore, configService, listService);\n this._pathName = DATASOURCES.WIDGET;\n }\n\n protected override list: any = [\n {\n name: \"queueID\",\n dataSource: DATASOURCES.QUEUES,\n listValueProperty: \"_id\",\n listLabelProperty: \"name\",\n },\n {\n name: \"dictionaryID\",\n dataSource: DATASOURCES.DICTIONARY,\n listValueProperty: \"_id\",\n listLabelProperty: \"name\",\n },\n {\n name: \"dictionaryItemID\",\n dataSource: \"data-dictionaries/attributes\",\n listValueProperty: \"_id\",\n listLabelProperty: \"key\",\n },\n {\n name: \"linkedWidgetID\",\n dataSource: DATASOURCES.WIDGET,\n listValueProperty: \"_id\",\n listLabelProperty: \"widgetName\",\n },\n\n ]\n\n}\n","import { Component } from '@angular/core';\nimport { BaseListComponent, TableBuilder, widgetHiddenHeaderList } from '../../../../shared';\nimport { WidgetModel } from '../../models/widget.model';\nimport { WidgetAdminService } from '../../state/widget-admin.service';\n\n/**\n * Widget Admin List Component\n */\n@Component({\n selector: 'lib-widget-admin-list',\n standalone: false,\n templateUrl: './widget-admin-list.component.html',\n styleUrl: './widget-admin-list.component.scss'\n})\nexport class WidgetAdminListComponent extends BaseListComponent<WidgetModel> {\n constructor(widgetAdminService: WidgetAdminService, private tableBuilder: TableBuilder) {\n super(widgetAdminService, tableBuilder);\n this.tableBuilder.hiddenHeaders = widgetHiddenHeaderList;\n }\n\n ngOnInit() {\n this.init()\n }\n}","@if(table){\n<lib-table-primary [table]=\"table\">\n\n</lib-table-primary>\n}","import { BaseModel } from \"../../../shared\";\n\n/**\n * WidgetModel class represents the model of a widget.\n */\nexport class WidgetModel extends BaseModel {\n name!: string;\n queueID!: string;\n dataItems: WidgetItemModel[] = [];\n order?: number;\n headerDictionaryID!: string;\n subHeaderDictionaryID!: string;\n headerDictionaryItemID!: string;\n subHeaderDictionaryItemID!: string;\n isActive!: boolean;\n}\n\n/**\n * WidgetItemModel class represents the model of a widget item.\n */\nexport class WidgetItemModel extends BaseModel{\n name!: string;\n dictionaryItemID!: string;\n dictionaryID!: string;\n isMain!:boolean;\n isEditable!:boolean;\n linkedWidgetID!: string;\n}","import { Injectable } from '@angular/core';\nimport { BaseQuery } from '../../../shared';\nimport { WidgetModel } from '../models/widget.model';\nimport { WidgetAdminStore } from './widget-admin.store';\n\n\n/**\n * Widget Admin Query\n */\n@Injectable({ providedIn: 'root' })\nexport class WidgetAdminQuery extends BaseQuery<WidgetModel> {\n\n constructor(protected override store: WidgetAdminStore) {\n super(store);\n }\n\n}\n","\nimport { ChangeDetectorRef, Component, OnInit } from '@angular/core';\nimport { WidgetItemModel, WidgetModel } from '../../models/widget.model';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { BaseFormComponent, SHARED } from '../../../../shared';\nimport { WidgetAdminService } from '../../state/widget-admin.service';\nimport { WidgetAdminQuery } from '../../state/widget-admin.query';\nimport { WidgetAdminStore } from '../../state/widget-admin.store';\nimport { ValidatorService } from '../../../../shared/services/validator.service';\nimport { List } from '../../../../shared/models/list.model';\nimport { SelectItem } from 'primeng/api';\n\n/**\n * WidgetAdminFormComponent\n */\n@Component({\n selector: 'lib-widget-admin-form',\n standalone: false,\n templateUrl: './widget-admin-form.component.html',\n styleUrl: './widget-admin-form.component.scss',\n})\nexport class WidgetAdminFormComponent extends BaseFormComponent<WidgetModel> implements OnInit {\n\n widgetItem!: WidgetItemModel;\n widgetItems: WidgetItemModel[] = [];\n dictionaries: any[] = [];\n headerDictionaryItems: any[]=[];\n subHeaderDictionaryItems: any[] = [];\n dictionaryItemArray: any[][] = [];\n widgetOptionsArray: SelectItem[] = [];\n\n constructor(\n override service: WidgetAdminService,\n override validatorService: ValidatorService,\n public widgetStore: WidgetAdminStore,\n private query: WidgetAdminQuery,\n override router: Router,\n override activatedRoute: ActivatedRoute\n ) {\n super(service, validatorService, router, activatedRoute);\n this.record = new WidgetModel();\n this.widgetItem = new WidgetItemModel();\n }\n\n ngOnInit(): void {\n super.init();\n this.recordChange.asObservable().subscribe((record) => {\n this.handleQueueChange(record.queueID);\n this.handleHeaderDictionarySelect(record.headerDictionaryID);\n this.handleSubHeaderDictionarySelect(record.subHeaderDictionaryID);\n record.dataItems.forEach((item:WidgetItemModel, index:number) => {\n this.handleWidgetItemDictionarySelect(item.dictionaryID, index);\n });\n });\n }\n\n handleWidgetItemAddBtnClick() {\n this.record.dataItems = [...this.record.dataItems, new WidgetItemModel()];\n }\n\n handleQueueChange(event:any){\n this.query.getLists().subscribe((allLists: List[]) => {\n const allDictionaryRecords = allLists.find((list) => list.forProperty === 'dictionaryID')?.records;\n this.dictionaries = allDictionaryRecords?.filter((item) => item.queueID === event) || [];\n });\n }\n\n handleHeaderDictionarySelect(dictionaryId:string){\n this.query.getLists().subscribe((allLists: List[]) => {\n const allDictionaryItemRecords = allLists.find((list) => list.forProperty === 'dictionaryItemID')?.records;\n this.headerDictionaryItems = allDictionaryItemRecords?.filter((item) => item.dictionaryID === dictionaryId) || [];\n });\n }\n\n handleSubHeaderDictionarySelect(dictionaryId: any) {\n this.query.getLists().subscribe((allLists: List[]) => {\n const allDictionaryItemRecords = allLists.find((list) => list.forProperty === 'dictionaryItemID')?.records;\n this.subHeaderDictionaryItems = allDictionaryItemRecords?.filter((item) => item.dictionaryID === dictionaryId) || [];\n });\n }\n\n handleWidgetItemDictionarySelect(dictionaryId: any, index: number) {\n this.query.getLists().subscribe((allLists: List[]) => {\n const allDictionaryItemRecords = allLists.find((list) => list.forProperty === 'dictionaryItemID')?.records;\n this.dictionaryItemArray[index] = allDictionaryItemRecords?.filter((item) => item.dictionaryID === dictionaryId) || [];\n });\n }\n\n}","<div class=\"grid\">\n <div class=\"col-12\">\n <div class=\"card\">\n <form-container [record]=\"record\" (onSave)=\"handleSubmit()\" (onCancel)=\"handleCancel()\" [messages]=\"message\"\n [showSave]=\"true\">\n\n <div class=\"col-12 md:col-12 mt-2 mb-2 flex\">\n <div class=\"col-5 md:col-5 mt-2 mb-2\">\n <text-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\n readonly: false,\n name: 'name',\n isRequired: true,\n displayText: 'Name',\n placeholder: 'Enter Widget Name'\n }\"></text-box>\n </div>\n\n <div class=\"col-5 md:col-5 mt-2 mb-2\">\n <dropdown [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\n name:'queueID',\n displayText : 'Select Queue 2',\n isRequired:true,\n }\" (onInput)=\"handleQueueChange($event)\">\n </dropdown>\n </div>\n <div class=\"col-2 md:col-2 mt-5\">\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\n name:'isActive',\n displayText : 'Active',\n }\">\n </check-box>\n </div>\n </div>\n <div class=\"flex\">\n <div class=\"col-6 md:col-6 mt-2 mb-2 flex\">\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\"\n [attributeModel]=\"{\n name:'headerDictionaryID',\n listLabelProperty:'name',\n listValueProperty:'_id',\n displayText : 'Select Dictionary',\n options: dictionaries\n }\" (onInput)=\"handleHeaderDictionarySelect($event)\">\n </dropdown>\n </div>\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\"\n [attributeModel]=\"{\n name:'headerDictionaryItemID',\n listLabelProperty:'key',\n listValueProperty:'_id',\n displayText : 'Select Header Item',\n options: headerDictionaryItems\n }\">\n </dropdown>\n </div>\n </div>\n <div class=\"col-6 md:col-6 mt-2 mb-2 flex\">\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\"\n [attributeModel]=\"{\n name:'subHeaderDictionaryID',\n listLabelProperty:'name',\n listValueProperty:'_id',\n displayText : 'Select Dictionary',\n options: dictionaries\n }\" (onInput)=\"handleSubHeaderDictionarySelect($event)\">\n </dropdown>\n </div>\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\"\n [attributeModel]=\"{\n name:'subHeaderDictionaryItemID',\n listLabelProperty:'key',\n listValueProperty:'_id',\n displayText : 'Select SubHeader Item',\n options: subHeaderDictionaryItems\n }\">\n </dropdown>\n </div>\n </div>\n </div>\n\n <div class=\"field p-0 pr-2 col-12 md:col-2\">\n <div class=\"card m-0 p-0 mb-2\">\n <div class=\"mt-3 w-full flex\">\n <button pButton pRipple label=\"Add Field\" routerLinkActive=\"router-link-active\"\n icon=\"pi pi-plus font-semibold\"\n class=\"py-3 justify-content-center font-semibold w-full border-round\"\n (click)=\"handleWidgetItemAddBtnClick()\">Add Widget Item</button>\n </div>\n\n </div>\n </div>\n\n <!-- Widget Items -->\n <div class=\"feild-card col-12 md:col-12 flex\"\n *ngFor=\"let widgetItem of record.dataItems; let i = index;\">\n <div class=\"field col-2 col-sm-6\">\n <text-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\n name : 'name',\n readonly : false,\n displayText : 'Item Label',\n isRequired : true,\n }\"></text-box>\n </div>\n <div class=\"field col-2 col-sm-6\">\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\"\n [attributeModel]=\"{\n name:'dictionaryID',\n listLabelProperty:'name',\n listValueProperty:'_id',\n displayText : 'Select Dictionary',\n isRequired:true,\n options: dictionaries\n }\" (onInput)=\"handleWidgetItemDictionarySelect($event, i)\">\n </dropdown>\n </div>\n <div class=\"field col-2 col-sm-6\">\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\"\n [attributeModel]=\"{\n name:'dictionaryItemID',\n listLabelProperty:'key',\n listValueProperty:'_id',\n displayText : 'Select Properties',\n isRequired:true,\n options: dictionaryItemArray[i]\n }\">\n </dropdown>\n </div>\n <div class=\"field col-3 col-sm-6\">\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\"\n [attributeModel]=\"{\n name:'linkedWidgetID',\n listLabelProperty:'widgetName',\n listValueProperty:'_id',\n displayText : 'Select Linked Widget',\n }\">\n </dropdown>\n </div>\n <div class=\"field col-3 m-0 flex justify-content-around md:col-3 mt-4\">\n <div class=\"m-0\">\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\n name:'isMain',\n displayText : 'Add to Main ?',\n }\">\n </check-box>\n </div>\n <div class=\"m-0\">\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\n name:'isEditable',\n displayText : 'Is Editable ?',\n }\">\n </check-box>\n </div>\n </div>\n </div>\n </form-container>\n </div>\n </div>\n</div>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ButtonComponent, CheckBoxComponent, SharedModule, TablePrimaryComponent, TextBoxComponent } from '../../shared';\nimport { DropdownComponent } from '../../shared/controls/dropdown/dropdown.component';\nimport { WidgetAdminListComponent } from './components/widget-admin-list/widget-admin-list.component';\nimport { WidgetAdminFormComponent } from './components/widget-admin-form/widget-admin-form.component';\nimport { FormsModule } from '@angular/forms';\n\n\n\n/**\n * Module for managing widgets.\n */\n@NgModule({\n declarations: [WidgetAdminListComponent, WidgetAdminFormComponent],\n imports: [\n CommonModule,\n FormsModule,\n SharedModule,\n TablePrimaryComponent,\n DropdownComponent,\n CheckBoxComponent,\n ButtonComponent,\n TextBoxComponent\n ],\n exports: [WidgetAdminListComponent, WidgetAdminFormComponent]\n})\nexport class QWWidgetAdminModule { }\n","import { Injectable } from '@angular/core';\nimport { StoreConfig } from '@datorama/akita';\nimport { BaseStore } from '../../../shared/state/base.store';\nimport { AdminActionModel } from '../models/admin-action.model';\n\n@Injectable({ providedIn: 'root' })\n@StoreConfig({ name: 'action' })\nexport class AdminActionStore extends BaseStore<AdminActionModel> {\n\n constructor() {\n super();\n }\n\n}","\nimport { Injectable } from '@angular/core';\nimport { HttpClient } from '@angular/common/http';\nimport { AdminActionModel } from '../models/admin-action.model';\nimport { AdminActionStore } from './admin-action.store';\nimport { DATASOURCES } from '../../../shared/constant/DATASOURCES';\nimport { BaseService } from '../../../shared/state/base.service';\nimport { AppConfigService } from '../../../shared/services/app-config.service';\nimport { ListService } from '../../../shared/services/list.service';\n\n@Injectable({ providedIn: 'root' })\nexport class AdminActionService extends BaseService<AdminActionModel> {\n\n constructor(public actionStore: AdminActionStore, http: HttpClient, appConfigService : AppConfigService, listService:ListService) {\n super(http, actionStore, appConfigService,listService);\n this._pathName = DATASOURCES.ACTIONS;\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { BaseListComponent } from '../../../../shared/_base/base-list/base-list.component';\nimport { AdminActionModel } from '../../models/admin-action.model';\nimport { TableBuilder } from '../../../../shared/services/table.builder';\nimport { AdminActionService } from '../../state/admin-action.service';\nimport { actionHiddenHeaderList, actionList, actionTableColumnWidthList } from '../../../../shared/constant/SHARED';\n\n/**\n * Admin Action List Component\n */\n@Component({\n selector: 'lib-admin-action-list',\n standalone : false,\n templateUrl: './admin-action-list.component.html',\n styleUrl: './admin-action-list.component.scss'\n})\nexport class AdminActionListComponent extends BaseListComponent<AdminActionModel>{\n constructor(service: AdminActionService, private tableBuilder: TableBuilder){\n super(service, tableBuilder)\n this.tableBuilder.hiddenHeaders = actionHiddenHeaderList;\n } \n\n ngOnInit() {\n const actionTableColumnWidths = actionTableColumnWidthList;\n this.table = this.tableBuilder.buildTable(actionList, actionTableColumnWidths);\n }\n}","<div class=\"dicitonary-list-wrapper\">\n @if(table){\n <lib-table-primary [title]=\"'Actions'\" [table]=\"table\"></lib-table-primary>\n }\n</div>","import { Component, OnInit } from '@angular/core';\nimport { BaseFormComponent } from '../../../../shared/_base/base-form/base-form.component';\nimport { AdminActionModel } from '../../models/admin-action.model';\nimport { Message } from 'primeng/api';\nimport { SHARED } from '../../../../shared/constant/SHARED';\nimport { AdminActionService } from '../../state/admin-action.service';\nimport { ValidatorService } from '../../../../shared/services/validator.service';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { AdminActionStore } from '../../state/admin-action.store';\n\n@Component({\n selector: 'lib-admin-action-form',\n standalone : false,\n templateUrl: './admin-action-form.component.html',\n styleUrl: './admin-action-form.component.scss'\n})\nexport class AdminActionFormComponent extends BaseFormComponent<AdminActionModel> {\n messages: Message[] = SHARED.EMPTYARRAY;\n apiConfigList: any[] = [];\n queueList: any[] = [];\n\n constructor(public adminActionService: AdminActionService, override validatorService: ValidatorService, override router: Router, override activatedRoute: ActivatedRoute, public adminActionStore: AdminActionStore) {\n super(adminActionService, validatorService, router, activatedRoute)\n }\n}\n","<form-container\n [headerText]=\"'Actions / Actions Form'\"\n [messages]=\"messages\"\n (onSave)=\"handleSubmit()\"\n [showSave]=\"true\"\n>\n <div class=\"card p-fluid p-formgrid grid \">\n <h4 class=\"font-bold col-12 md:col-12\">Actions Form</h4>\n <div class=\"col-12 md:col-6\">\n <text-box\n [store]=\"adminActionStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n readonly: false,\n name: 'actionName',\n isRequired: true,\n displayText: 'Action Name',\n placeholder: 'Enter Action Name'\n }\"\n ></text-box>\n </div>\n \n <div class=\"col-12 md:col-6\">\n <dropdown\n [store]=\"adminActionStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n name:'apiEndPoint',\n isRequired: true,\n displayText : 'End Point',\n placeholder: 'Select End Point',\n options: apiConfigList\n }\"></dropdown>\n </div>\n\n <div class=\"col-12 md:col-12\">\n <text-area\n [store]=\"adminActionStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n readonly: false,\n name: 'prompt',\n isRequired: true,\n displayText: 'Prompt',\n placeholder: 'Enter prompt'\n }\"\n ></text-area>\n </div>\n\n <div class=\"col-12 md:col-6\">\n <dropdown\n [store]=\"adminActionStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n name:'queue',\n isRequired: true,\n displayText : 'Queue',\n placeholder: 'Select Queue',\n options: queueList\n }\"></dropdown>\n </div>\n\n <div class=\"col-12 md:col-2 flex align-items-end justify-content-end validate-btn-wrapper\">\n <button\n pButton\n pRipple\n type=\"button\"\n label=\"Validate\"\n class=\"p-button-raised\"\n ></button>\n </div>\n\n <div class=\"col-12 md:col-12\">\n <text-area\n [store]=\"adminActionStore\"\n [record]=\"record\"\n [attributeModel]=\"{\n readonly: false,\n name: 'formConfiguration',\n isRequired: true,\n displayText: 'Form Configuration',\n placeholder: 'Enter form configuration'\n }\"\n ></text-area>\n </div>\n </div>\n \n</form-container>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AdminActionListComponent } from './components/admin-action-list/admin-action-list.component';\nimport { SharedModule, TablePrimaryComponent } from '../../shared';\nimport { AdminActionFormComponent } from './components/admin-action-form/admin-action-form.component';\nimport { FormsModule } from '@angular/forms';\nimport { TextAreaComponent } from '../../shared/controls/text-area/text-area.component';\nimport { ButtonModule } from 'primeng/button';\n\n\n\n@NgModule({\n declarations: [AdminActionListComponent, AdminActionFormComponent],\n imports: [\n CommonModule,\n FormsModule,\n SharedModule,\n TablePrimaryComponent,\n TextAreaComponent,\n ButtonModule\n ],\n exports: [AdminActionListComponent, AdminActionFormComponent]\n})\nexport class ActionAdminModule { }\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n\n\n@NgModule({\n declarations: [],\n imports: [\n CommonModule\n ]\n})\nexport class DdAdminModule { }\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'lib-dd-admin-form',\n imports: [],\n templateUrl: './dd-admin-form.component.html',\n styleUrl: './dd-admin-form.component.css'\n})\nexport class DdAdminFormComponent {\n\n}\n","<p>dd-admin-form works!</p>\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'lib-dd-admin-list',\n imports: [],\n templateUrl: './dd-admin-list.component.html',\n styleUrl: './dd-admin-list.component.css'\n})\nexport class DdAdminListComponent {\n\n}\n","<p>dd-admin-list works!</p>\n","/*\n * Public API Surface of cat-qw-lib\n */\n\nexport * from './lib/admin/api-admin/api-admin.module';\nexport * from './lib/admin/widget-admin/widget-admin.module';\nexport * from './lib/admin/api-admin/components/api-admin-form/api-admin-form.component';\nexport * from './lib/admin/api-admin/components/api-admin-list/api-admin-list.component';\nexport * from './lib/admin/widget-admin/components/widget-admin-form/widget-admin-form.component';\nexport * from './lib/admin/widget-admin/components/widget-admin-list/widget-admin-list.component';\n\nexport * from './lib/admin/action-admin/action-admin.module';\nexport * from './lib/admin/action-admin/components/admin-action-list/admin-action-list.component';\nexport * from './lib/admin/action-admin/components/admin-action-form/admin-action-form.component';\nexport * from './lib/admin/dd-admin/dd-admin.module'\nexport * from './lib/admin/dd-admin/components/dd-admin-form/dd-admin-form.component'\nexport * from './lib/admin/dd-admin/components/dd-admin-list/dd-admin-list.component'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.BaseStore","i3","i2","i4","i1","i2.AppConfigService","i2.BaseStore","i3.AppConfigService","i4.ListService","i1.BaseService","i2.TableBuilder","i1.ListService","i1.DateParserService","tap","i1.SessionService","i2.ValidatorService","i4.BaseStore","i5","i6","i2.ApiAdminStore","i1.ApiAdminStore","i2.UsernameComponent","i3.PasswordComponent","i1.ApiAdminService","i4.ApiAdminStore","i5.TextBoxComponent","i6.DropdownComponent","i7.FormContainerComponent","i8","i9.TextAreaComponent","i10.ApiCredentialFormComponent","i3.TablePrimaryComponent","i2.WidgetAdminStore","i1.WidgetAdminService","i1.WidgetAdminStore","i3.WidgetAdminStore","i4.WidgetAdminQuery","i7.TextBoxComponent","i8.DropdownComponent","i9.FormContainerComponent","i10.CheckBoxComponent","i1.AdminActionStore","i1.AdminActionService","i4.AdminActionStore","i8.TextAreaComponent","i9"],"mappings":"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"}
1
+ {"version":3,"file":"cat-qw-lib.mjs","sources":["../../../projects/cat-qw-lib/src/lib/shared/constant/SHARED.ts","../../../projects/cat-qw-lib/src/lib/shared/components/sidebar/sidebar.component.ts","../../../projects/cat-qw-lib/src/lib/shared/components/sidebar/sidebar.component.html","../../../projects/cat-qw-lib/src/lib/shared/state/base.store.ts","../../../projects/cat-qw-lib/src/lib/shared/state/base.query.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-control/base-control.component.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-control/base-control.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/check-box/check-box.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/check-box/check-box.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/button/button.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/button/button.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/text-box/text-box.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/text-box/text-box.component.html","../../../projects/cat-qw-lib/src/lib/shared/components/form-container/form-container.component.ts","../../../projects/cat-qw-lib/src/lib/shared/components/form-container/form-container.component.html","../../../projects/cat-qw-lib/src/lib/shared/constant/URLS.ts","../../../projects/cat-qw-lib/src/lib/shared/services/app-config.service.ts","../../../projects/cat-qw-lib/src/lib/shared/models/list.model.ts","../../../projects/cat-qw-lib/src/lib/shared/services/list.service.ts","../../../projects/cat-qw-lib/src/lib/shared/state/base.service.ts","../../../projects/cat-qw-lib/src/lib/shared/table-primary/models/table-primary.model.ts","../../../projects/cat-qw-lib/src/lib/shared/table-primary/models/table-primary-header.model.ts","../../../projects/cat-qw-lib/src/lib/shared/services/table.builder.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-list/base-list.component.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-list/base-list.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/dropdown/dropdown.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/dropdown/dropdown.component.html","../../../projects/cat-qw-lib/src/lib/shared/services/date-parser.service.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/date/date.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/date/date.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/file-upload/file-upload.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/file-upload/file-upload.component.html","../../../projects/cat-qw-lib/src/lib/shared/pipe/capitalize-words.pipe.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/text-area/text-area.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/text-area/text-area.component.html","../../../projects/cat-qw-lib/src/lib/shared/shared.module.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/ROUTES.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/DATASOURCES.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/HEADERS.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/username/username.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/username/username.component.html","../../../projects/cat-qw-lib/src/lib/shared/controls/password/password.component.ts","../../../projects/cat-qw-lib/src/lib/shared/controls/password/password.component.html","../../../projects/cat-qw-lib/src/lib/shared/constant/CSS.ts","../../../projects/cat-qw-lib/src/lib/shared/models/attribute.model.ts","../../../projects/cat-qw-lib/src/lib/shared/models/base.model.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/ERROR.ts","../../../projects/cat-qw-lib/src/lib/shared/services/session.service.ts","../../../projects/cat-qw-lib/src/lib/shared/services/auth/auth.guard.ts","../../../projects/cat-qw-lib/src/lib/shared/services/validator.service.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-form/base-form.component.ts","../../../projects/cat-qw-lib/src/lib/shared/_base/base-form/base-form.component.html","../../../projects/cat-qw-lib/src/lib/shared/constant/LOOKUPS.ts","../../../projects/cat-qw-lib/src/lib/shared/table-primary/components/table-primary.component.ts","../../../projects/cat-qw-lib/src/lib/shared/table-primary/components/table-primary.component.html","../../../projects/cat-qw-lib/src/lib/admin/api-admin/models/credentials.model.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/MESSAGES.ts","../../../projects/cat-qw-lib/src/lib/shared/constant/LIST-CONFIG.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/state/api-admin.store.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/state/api-admin.service.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-credential-form/api-credential-form.component.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-credential-form/api-credential-form.component.html","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-admin-form/api-admin-form.component.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-admin-form/api-admin-form.component.html","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-admin-list/api-admin-list.component.ts","../../../projects/cat-qw-lib/src/lib/admin/api-admin/components/api-admin-list/api-admin-list.component.html","../../../projects/cat-qw-lib/src/lib/admin/api-admin/api-admin.module.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/state/widget-admin.store.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/state/widget-admin.service.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/components/widget-admin-list/widget-admin-list.component.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/components/widget-admin-list/widget-admin-list.component.html","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/models/widget.model.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/state/widget-admin.query.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/components/widget-admin-form/widget-admin-form.component.ts","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/components/widget-admin-form/widget-admin-form.component.html","../../../projects/cat-qw-lib/src/lib/admin/widget-admin/widget-admin.module.ts","../../../projects/cat-qw-lib/src/lib/admin/action-admin/state/admin-action.store.ts","../../../projects/cat-qw-lib/src/lib/admin/action-admin/state/admin-action.service.ts","../../../projects/cat-qw-lib/src/lib/admin/action-admin/components/admin-action-list/admin-action-list.component.ts","../../../projects/cat-qw-lib/src/lib/admin/action-admin/components/admin-action-list/admin-action-list.component.html","../../../projects/cat-qw-lib/src/lib/admin/action-admin/components/admin-action-form/admin-action-form.component.ts","../../../projects/cat-qw-lib/src/lib/admin/action-admin/components/admin-action-form/admin-action-form.component.html","../../../projects/cat-qw-lib/src/lib/admin/action-admin/action-admin.module.ts","../../../projects/cat-qw-lib/src/lib/admin/dd-admin/dd-admin.module.ts","../../../projects/cat-qw-lib/src/lib/admin/dd-admin/components/dd-admin-form/dd-admin-form.component.ts","../../../projects/cat-qw-lib/src/lib/admin/dd-admin/components/dd-admin-form/dd-admin-form.component.html","../../../projects/cat-qw-lib/src/lib/admin/dd-admin/components/dd-admin-list/dd-admin-list.component.ts","../../../projects/cat-qw-lib/src/lib/admin/dd-admin/components/dd-admin-list/dd-admin-list.component.html","../../../projects/cat-qw-lib/src/public-api.ts","../../../projects/cat-qw-lib/src/cat-qw-lib.ts"],"sourcesContent":["export class SHARED {\r\n static EMPTY = \"\";\r\n static REQUIRED_ERROR = \"Field Required\";\r\n static EMPTYARRAY = [];\r\n static NULL = \"NULL\";\r\n static HIPHEN = \"-\";\r\n static SLASH = \"/\";\r\n static USERROLE = \"role\"\r\n static SESSIONKEY = \"userData\";\r\n static SUCCESS = \"success\";\r\n static ERROR = \"error\";\r\n static ERROR_MESSAGE = \"Success Message\";\r\n static SUCCESS_MESSAGE = \"Success Message\";\r\n static DICTIONARY = \"Dictionary\";\r\n static TITLE = 'title';\r\n static DICTIONARY_ITEM = 'dictionaryItem';\r\n static DICTIONARY_ITEM_MAPPER = 'dictionaryItemMapper';\r\n static SIDEBAR_MASK = '.p-sidebar-mask';\r\n static CUSTOMSIDEBAROVERLAY = 'custom-sidebar-overlay';\r\n static ID = 'id';\r\n static _ID = '_id';\r\n static DATE_FORMAT = \"DD/MM/YYYY\";\r\n static DATE_FORMAT_TYPE2 = \"DD-MM-YYYY\";\r\n static DATE_FORMAT_TYPE3 = \"YY-MM-DD\";\r\n static DATE_FORMAT_TYPE4 = \"YYYY-MM-DD\";\r\n static INVALIDDATE = \"Invalid Date\";\r\n static __V = '__v';\r\n static CREATEDAT = 'createdAt';\r\n static UPDATEDAT = 'updatedAt';\r\n static CREDENTIALS = 'credentials';\r\n static ZERO = 0\r\n static TYPE_OBJECT = 'object'\r\n static DICTIONARYITEMS = 'dictionaryItems';\r\n static GET_DATA_MESSAGE = [{ severity: 'info', detail: 'Data has been fetched successfully.', life:1000 }]\r\n static PRIMARY = 'primary';\r\n static mappingInfo = 'mappingInfo';\r\n static YES = 'Yes';\r\n static NO = 'No';\r\n static selectedQueue = 'selectedQueue';\r\n static DASH = \"-\"\r\n static selectedApplication = 'selectedApplication';\r\n static selectedApplicationNumber = 'selectedApplicationNumber';\r\n static GREEN = \"green\"\r\n static RED = \"red\"\r\n static FROM_EMAIL = \"neeraj.kumar@catura.co.uk\";\r\n static to_EMAIL = \"shubham.prajapati@dynamatix.com\";\r\n static EMAIL = 'email';\r\n static token = 'eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpZCI6IjYxOTI2ZjcyN2RkZWI0MDAxMWE2ZDZmNyIsIm5hbWUiOiJKb2huIERvZSIsInJvbGUiOiJ1c2VyIiwiaWF0IjoxNjQyNzQ5MzYyLCJleHAiOjE2NDI4MzU3NjJ9.4fBQqP2_6z0H4Ow7J-R27XEdIgl2MrMoIXCgD_qZFlA';\r\n static null = 'null';\r\n static undefined = 'undefined';\r\n static rationale = 'rationale';\r\n static accepted = 'Accepted';\r\n static application = 'Application';\r\n static INVALID_API_PATH = 'Please enter the API path.';\r\n static WIDTH_AUTO = 'w-auto';\r\n static TRUE = true;\r\n static FALSE = false;\r\n}\r\n\r\nexport const delimiters = ['|', '/', '-'];\r\n\r\nexport const dictionaryItemList = [];\r\n\r\nexport const dictionaryItemMapperList = [];\r\n\r\nexport const dictionaryApiFieldList = {\r\n title: 'Property data',\r\n data: [ { name: 'First name' },\r\n { name: 'Last name' },\r\n { name: 'Email' },\r\n { name: 'Address' },\r\n { name: 'Gender' },\r\n { name: 'Dob' }\r\n ]\r\n}\r\n\r\nexport const FolderPanel = [\r\n {\r\n _id: 'folder1',\r\n fileCount: 10,\r\n text: 'Documents',\r\n missingFiles: 3,\r\n pendingFiles: 2\r\n },\r\n {\r\n _id: 'folder2',\r\n fileCount: 5,\r\n text: 'Images',\r\n missingFiles: 0,\r\n pendingFiles: 1\r\n },\r\n {\r\n _id: 'folder3',\r\n fileCount: 20,\r\n text: 'Reports',\r\n missingFiles: 5,\r\n pendingFiles: 0\r\n },\r\n {\r\n _id: 'folder4',\r\n fileCount: 8,\r\n text: 'Videos',\r\n missingFiles: 0,\r\n pendingFiles: 0\r\n },\r\n {\r\n _id: 'folder5',\r\n fileCount: 15,\r\n text: 'Archives',\r\n missingFiles: 1,\r\n pendingFiles: 3\r\n }\r\n];\r\n\r\nexport const DocumentList = [\r\n {\r\n id: 1,\r\n fileName: 'Document 1',\r\n status: 'pending',\r\n documentUrl: 'https://vadimdez.github.io/ng2-pdf-viewer/assets/pdf-test.pdf',\r\n },\r\n {\r\n id: 2,\r\n fileName: 'Document 2',\r\n status: 'verified',\r\n documentUrl: 'https://vadimdez.github.io/ng2-pdf-viewer/assets/pdf-test.pdf',\r\n },\r\n {\r\n id: 3,\r\n fileName: 'Document 3',\r\n status: 'sentReminder',\r\n documentUrl: 'https://vadimdez.github.io/ng2-pdf-viewer/assets/pdf-test.pdf',\r\n },\r\n {\r\n id: 4,\r\n fileName: 'Document 4',\r\n status: 'pending',\r\n documentUrl: 'https://vadimdez.github.io/ng2-pdf-viewer/assets/pdf-test.pdf',\r\n },\r\n];\r\n\r\n\r\nexport const widgetLinkList = [\r\n { name: 'https://dummy-url.com/NY', code: 'NY' },\r\n { name: 'https://dummy-url.com/RM', code: 'RM' },\r\n { name: 'https://dummy-url.com/LDN', code: 'LDN' },\r\n { name: 'https://dummy-url.com/IST', code: 'IST' },\r\n { name: 'https://dummy-url.com/PRS', code: 'PRS' }\r\n];\r\n\r\nexport const dictionaryList = [\r\n {\"id\": 1 ,\"Name\": \"John Doe\", \"API\": \"Dynamatix.com/getfinance\" },\r\n {\"id\": 2 ,\"Name\": \"Jane Smith\", \"API\": \"Dynamatix.com/getfinance\" },\r\n {\"id\": 3 ,\"Name\": \"David Lee\", \"API\": \"Dynamatix.com/getfinance\" },\r\n {\"id\": 4 ,\"Name\": \"Emma Wilson\", \"API\": \"Dynamatix.com/getfinance\" },\r\n {\"id\": 5 ,\"Name\": \"Michael Brown\", \"API\": \"Dynamatix.com/getfinance\" }\r\n]\r\n\r\nexport const SEQUENTIAL_MESSAGE = [\r\n \"Your case is under review.\",\r\n \"We have received your application.\",\r\n \"A new update is available for your case.\",\r\n \"Please verify your contact details.\",\r\n \"Your case is pending further action.\",\r\n \"We are processing your request.\",\r\n \"Your case has been escalated.\",\r\n \"Thank you for reaching out.\",\r\n \"Your documents have been received.\",\r\n \"Our team will contact you shortly.\"\r\n];\r\n\r\nexport const apiHiddenHeaderList = ['credentials','createdAt','updatedAt','__v','properties', '_id', 'createdByUserID', 'updatedByUserID']\r\n\r\nexport const dictionaryHiddenHeaderList = ['queues','attributes','createdByUserID','updatedByUserID','createdAt', 'updatedAt', '__v', '_id']\r\n\r\nexport const widgetHiddenHeaderList = ['_id','dataItems','timestamp','createdAt','updatedAt','__v','order']\r\n\r\nexport const hiddenHeaderList = ['status','actions']\r\n\r\nexport const expectedRoutes = ['apiManagement','queue', 'dictionary', 'widget']\r\n\r\nexport const mileList = [\r\n { name: '0.5 Mile', value: 0.5 },\r\n { name: '1 Mile', value: 1 }\r\n];\r\n\r\nexport const messageType = [\r\n { name: 'Email', icon: 'pi pi-envelope' },\r\n { name: 'WhatsApp', icon: 'pi pi-whatsapp' },\r\n { name: 'SMS', icon: 'pi pi-comment' },\r\n]\r\n\r\nexport const propertyDataList = [\r\n {\r\n key: '0',\r\n label: 'Documents',\r\n data: 'Documents Folder',\r\n icon: 'pi pi-fw pi-inbox',\r\n children: [\r\n {\r\n key: '0-0',\r\n label: 'Work',\r\n data: 'Work Folder',\r\n icon: 'pi pi-fw pi-cog',\r\n children: [\r\n { key: '0-0-0', label: 'Expenses.doc', icon: 'pi pi-fw pi-file', data: 'Expenses Document' },\r\n { key: '0-0-1', label: 'Resume.doc', icon: 'pi pi-fw pi-file', data: 'Resume Document' }\r\n ]\r\n },\r\n {\r\n key: '0-1',\r\n label: 'Home',\r\n data: 'Home Folder',\r\n icon: 'pi pi-fw pi-home',\r\n children: [{ key: '0-1-0', label: 'Invoices.txt', icon: 'pi pi-fw pi-file', data: 'Invoices for this month' }]\r\n }\r\n ]\r\n },\r\n{\r\n key: '1',\r\n label: 'Events',\r\n data: 'Events Folder',\r\n icon: 'pi pi-fw pi-calendar',\r\n children: [\r\n { key: '1-0', label: 'Meeting', icon: 'pi pi-fw pi-calendar-plus', data: 'Meeting' },\r\n { key: '1-1', label: 'Product Launch', icon: 'pi pi-fw pi-calendar-plus', data: 'Product Launch' },\r\n { key: '1-2', label: 'Report Review', icon: 'pi pi-fw pi-calendar-plus', data: 'Report Review' }\r\n ]\r\n},\r\n{\r\n key: '2',\r\n label: 'Movies',\r\n data: 'Movies Folder',\r\n icon: 'pi pi-fw pi-star-fill',\r\n children: [\r\n {\r\n key: '2-0',\r\n icon: 'pi pi-fw pi-star-fill',\r\n label: 'Al Pacino',\r\n data: 'Pacino Movies',\r\n children: [\r\n { key: '2-0-0', label: 'Scarface', icon: 'pi pi-fw pi-video', data: 'Scarface Movie' },\r\n { key: '2-0-1', label: 'Serpico', icon: 'pi pi-fw pi-video', data: 'Serpico Movie' }\r\n ]\r\n },\r\n {\r\n key: '2-1',\r\n label: 'Robert De Niro',\r\n icon: 'pi pi-fw pi-star-fill',\r\n data: 'De Niro Movies',\r\n children: [\r\n { key: '2-1-0', label: 'Goodfellas', icon: 'pi pi-fw pi-video', data: 'Goodfellas Movie' },\r\n { key: '2-1-1', label: 'Untouchables', icon: 'pi pi-fw pi-video', data: 'Untouchables Movie', selectable: false }\r\n ]\r\n }\r\n ]\r\n}\r\n];\r\n\r\nexport const widgets = [\r\n {\r\n outOfTheBoxName: 'Application',\r\n title: 'Application Details',\r\n subtitle: {\r\n label: 'Risk Rating:',\r\n value: 'High',\r\n color: 'danger'\r\n },\r\n percentage: '80%',\r\n fields: [\r\n { label: 'Application ID | Submission Date', value: '00160750 | 04-10-2024' },\r\n { label: 'No of Applicants', value: '2' },\r\n { label: 'Application Type', value: 'International' },\r\n { label: 'Product', value: 'HPP 5 years', isPrimary: true },\r\n { label: 'Property Value', value: '£500,000' },\r\n { label: 'Gross Finance Amount', value: '£325,000' },\r\n { label: 'LTV %', value: '95%', highlight: true, alert: true },\r\n { label: 'Purchase', value: 'View', link: true },\r\n { label: 'Overall Affordability', value: '£2,716', alert: true },\r\n { label: 'Monthly Repayment', value: '£3,771.85', alert: true, icon: 'pi pi-exclamation-triangle', inLabel: false },\r\n { label: 'Broker', value: 'Kishar Wallace-Cronin', isPrimary: true, rating: '5.0', icon: 'rating', isRating: true },\r\n { label: 'Direct Debit', value: 'Anthony. J. Cooper/ 404784/70872490', isPrimary: true },\r\n { label: 'Portfolio (#, Val,FTV)', value: '2, $420,000, 69.29%', isPrimary: true },\r\n { label: 'Solicitor', value: 'Kirkland & Ellis', isPrimary: true }\r\n ],\r\n viewAll: 'View All Details'\r\n },\r\n {\r\n title: 'Generic Widget Details',\r\n subtitle: {\r\n label: 'Status:',\r\n value: 'Pending',\r\n color: 'warning'\r\n },\r\n percentage: '50%',\r\n fields: [\r\n { label: 'Task ID', value: '00012345' },\r\n { label: 'Assigned To', value: 'John Doe' },\r\n { label: 'Task Type', value: 'Internal' },\r\n { label: 'Deadline', value: '20-10-2024' },\r\n { label: 'Priority', value: 'High', highlight: true },\r\n { label: 'Status', value: 'In Progress', alert: true },\r\n { label: 'Comments', value: 'Requires further review' },\r\n { label: 'Owner', value: 'Jane Smith' },\r\n { label: 'Approver', value: 'Alan Turing' }\r\n ],\r\n viewAll: 'View All Tasks'\r\n }\r\n];\r\n\r\nexport const applicationWidgetList = [\r\n {\r\n title: 'Application Details',\r\n subtitle: {\r\n label: 'Risk Rating:',\r\n value: 'High',\r\n color: 'danger'\r\n },\r\n percentage: '80%',\r\n fields: [\r\n { label: 'Application ID | Submission Date', value: '00160750 | 04-10-2024' },\r\n { label: 'No of Applicants', value: '2' },\r\n { label: 'Application Type', value: 'International' },\r\n { label: 'Product', value: 'HPP 5 years', isPrimary: true },\r\n { label: 'Property Value', value: '£500,000' },\r\n { label: 'Gross Finance Amount', value: '£325,000' },\r\n { label: 'LTV %', value: '95%', highlight: true, alert: true },\r\n { label: 'Purchase', value: 'View', link: true },\r\n { label: 'Overall Affordability', value: '£2,716', alert: true },\r\n { label: 'Monthly Repayment', value: '£3,771.85', alert: true, icon: 'pi pi-exclamation-triangle', inLabel: false },\r\n { label: 'Broker', value: ' Kishar Wallace-Cronin', isPrimary: true, rating: '5.0', icon: 'rating', isRating: true },\r\n { label: 'Direct Debit', value: 'Anthony. J. Cooper/ 404784/70872490', isPrimary: true },\r\n { label: 'Portfolio (#, Val,FTV)', value: '2, $420,000,69.29%', isPrimary: true },\r\n { label: 'Solicitor', value: 'Kirkland & Ellis', isPrimary: true }\r\n ],\r\n viewAll: 'View All Details'\r\n }\r\n];\r\n\r\nexport const applicantWidgetList = [\r\n {\r\n title: 'Applicant (Anthony J Cooper)',\r\n badge: 'Pending',\r\n badgeIcon: 'pi pi-clock',\r\n percentage: '80%',\r\n subtitle: {\r\n label: 'Risk Rating:',\r\n value: 'Medium',\r\n color: 'warning'\r\n },\r\n fields: [\r\n { label: 'Nationality | Residence', value: 'British | United Kingdom' },\r\n { label: 'Income', value: '£6,633', alert: true, isUnderline: true },\r\n { label: 'Affordability', value: '£2,133', alert: true, isUnderline: true },\r\n { label: 'Credit Score', value: '3| 350', icon: 'pi pi-exclamation-triangle', alert: true, isUnderline: true },\r\n { label: 'Dependents', value: '3' },\r\n { label: 'Portfolio | FTV', value: '£220,000 | 69.29%', link: true },\r\n { label: 'Employment Type | Industry', value: 'Full Time | Information Techno..' },\r\n { label: 'Documents', value: '4/6', alert: true, isUnderline: true },\r\n ],\r\n viewAll: 'View All Details'\r\n },\r\n {\r\n title: 'Applicant (Bella Henderson)',\r\n badge: 'Pending',\r\n badgeIcon: 'pi pi-clock',\r\n percentage: '80%',\r\n subtitle: {\r\n label: 'Risk Rating:',\r\n value: 'Low',\r\n color: 'success'\r\n },\r\n fields: [\r\n { label: 'Nationality | Residence', value: 'British | United Kingdom' },\r\n { label: 'Income', value: '£4,633', isUnderline: true, link: true },\r\n { label: 'Affordability', value: '£2,133', isUnderline: true },\r\n { label: 'Credit Score', value: '750', isUnderline: true },\r\n { label: 'Dependents', value: '3' },\r\n { label: 'Portfolio | FTV', value: '£200,000 | 69.29%', link: true },\r\n { label: 'Employment Type | Industry', value: 'Full Time | Information Techno..' },\r\n { label: 'Documents', value: '6/6', isUnderline: true },\r\n ],\r\n viewAll: 'View All Details'\r\n }\r\n];\r\n\r\nexport const companyWidget = [\r\n {\r\n title: 'Property Info',\r\n badge: 'Pending',\r\n badgeIcon: 'pi pi-clock',\r\n percentage: '80%',\r\n riskRating: 'Medium',\r\n subtitle: {\r\n label: 'Risk Rating:',\r\n value: 'Medium',\r\n color: 'warning'\r\n },\r\n dataItems: [\r\n { key: 'Name', value: 'Prime Property Holdings Ltd', style:\"font-size: 14px; color: #0F1729; font-weight: 600;\" },\r\n { key: 'SIC Code', value: '64929', style:\"font-size: 14px; color: #0F1729; font-weight: 600;\" },\r\n { key: 'Registration Number', value: '09876543', style:\"font-size: 14px; color: #0F1729; font-weight: 600;\" },\r\n { key: 'Address', value: '123 Baker Street, London, W1U 6RQ', style:\"font-size: 14px; color: #0F1729; font-weight: 600;\" },\r\n { key: 'Date of Incorporation', value: '15th March 2018', style:\"font-size: 14px; color: #0F1729; font-weight: 600;\" },\r\n { key: 'Existing Mortgage', value: '2', alert: true, style:\"font-size: 14px; color: #0F1729; font-weight: 600;\" }\r\n ],\r\n viewAll: 'View All Details'\r\n },\r\n];\r\n\r\nexport const propertyDetailsWidgetList = [\r\n {\r\n title: 'Property Details',\r\n badge: 'Verified',\r\n badgeIcon: 'pi pi-verified',\r\n percentage: '100%',\r\n subtitle: {\r\n label: 'Risk Rating:',\r\n value: 'Medium',\r\n color: 'warning',\r\n verified: true\r\n },\r\n fields: [\r\n { label: 'Type', value: 'Detached House' },\r\n { label: 'EPC', value: 'B (Rating: 83)' },\r\n { label: 'Tenure', value: 'Freehold' },\r\n { label: 'New Build', value: 'No' },\r\n { label: 'Address'},\r\n { label: '14 Wilimin Grove, Loughton, Milton Keynes MK5 8EU', isLabelLink: true, icon: 'pi pi-map-marker map-icon' },\r\n ],\r\n viewAll: 'View All Details'\r\n }\r\n];\r\n\r\nexport const offerWidgetList = [\r\n {\r\n title: 'Offer',\r\n badge: 'Pending',\r\n badgeIcon: 'pi pi-clock',\r\n statusList: [\r\n { description: 'Application(HS) Condition was added on 10th Sep 2023', status: 'active' },\r\n { description: 'Property Condition was added on 10th Sep 2023', status: 'active' },\r\n { description: 'Mandate Approval Requested on 14th Sep 2024', status: 'pending' },\r\n { title: 'Waiting for Mandate Approval', description: 'Existing Mandate: 100,000', status: 'pending', textColor: '#FB392D' },\r\n { description: 'Generate Offer', status: 'pending' }\r\n ],\r\n viewAll: 'View All Details'\r\n }\r\n]\r\n\r\nexport const valuationWidgetList = [\r\n {\r\n title: 'Valuation',\r\n badge: 'Pending',\r\n badgeIcon: 'pi pi-clock',\r\n statusList: [\r\n { description: 'Valuation Requested on 10th October 2024', status: 'active' },\r\n { description: 'Fees Paid £400 on 10th October 2024', status: 'active' },\r\n { description: 'Valuation Scheduled on 10th October 2024', status: 'active' },\r\n { title: 'Report Received on 13th October 2024', description: 'Value: £450,000.<br>Bedroom mismatch (3 vs. 2)<br>Valuation mismatch<br>(£450,000 vs. £500,000)', status: 'active', textColor: '#FB392D' },\r\n { description: 'PVQ Raised on 14th October 2024', status: 'active' },\r\n { description: 'PVQ Response received on 14th October 2024', status: 'active' },\r\n { description: 'Waiting for Valuation Report to be accepted', status: 'pending' }\r\n ]\r\n }\r\n];\r\n\r\nexport const stageTimelineList = [\r\n { title: 'Application Review', description: 'Underwriter request identity documents from Applicant (Bella)', footerText: '14th Oct 2024 10:00 AM', isLast: false },\r\n { title: 'Underwriter Assigned', description: 'Valuation report received on 13th Oct 2024', footerText: '13th Oct 2024 10:00 AM', isLast: false },\r\n { title: 'Underwriter Assigned', description: 'Missing documents provided by Broker on 12th Oct 2024', footerText: '12th Oct 2024 10:00 AM', isLast: false },\r\n { title: 'Application Submitted', description: 'Application was Submitted on 10th Oct 2024 By Kishar Wallace-Cronin. Failed 6 out of 18 checks', footerText: '10th Oct 2024 10:00 AM', isLast: true },\r\n];\r\n\r\nexport const saleHistoryTimelineList = [\r\n {floorArea: '196 sq m', propertyType: 'Detached , Freehold'},\r\n {floorArea: '136 sq m', propertyType: 'Detached , Freehold'},\r\n {floorArea: '136 sq m', propertyType: 'Detached , Freehold'}\r\n];\r\n\r\nexport const navigationTimelineList = [\r\n { title: 'Alerts', status: 'active', textColor: '#FB392D' },\r\n { title: 'Information', status: 'pending' },\r\n \r\n]\r\n\r\nexport const notesPanelList = [\r\n { title: 'Paul', date: '13-10-2024 03:00 PM', description: 'The lease, originally set for 75 years, has recently been extended to a 150-year term, pending confirmation from the legal team' },\r\n { title: 'System', date: '11-10-2024 03:00 PM', description: 'Additional Information was request' },\r\n { title: 'System', date: '10-10-2024 03:00 PM', description: 'Additional Document type Selfie was request' },\r\n { title: 'Paul', date: '10-10-2024 03:00 PM', description: 'Looks like valuation document is incorrect' }\r\n];\r\n\r\nexport const rationalItems = [\r\n { title: 'Applicant (AC) Rationale', isOpen: true, status: 'Rejected' },\r\n { title: 'Affordability Rational', isOpen: true, status: 'Accepted' },\r\n { title: 'Finance', isOpen: false, status: 'Rejected' },\r\n { title: 'Income Source', isOpen: false, status: 'Accepted' },\r\n { title: 'Credit Conduct', isOpen: false, status: 'Rejected' },\r\n { title: 'Fraud Checks', isOpen: false, status: 'Accepted' }\r\n];\r\n\r\nexport const rationalListItems = [\r\n { title: 'Applicant Rationale', isOpen: true, data: '', status: 'Rejected', width: 'w-11' },\r\n { title: 'Fraud Checks...', isOpen: true, data: '', status: 'Accepted', width: 'w-11' },\r\n { title: 'Credit Conduct', isOpen: true, data: '', status: 'Rejected', width: 'w-11' },\r\n { title: 'Finance Rationale', isOpen: true, data: '', status: 'Accepted', width: 'w-11' },\r\n { title: 'Income Source', isOpen: true, data: '', status: 'Rejected', width: 'w-11' },\r\n { title: 'Affordability Source', isOpen: true, data: '', status: 'Accepted', width: 'w-11' }\r\n];\r\n\r\nexport const alertList = [\r\n \"Payslip doesn't match with Bank statement\",\r\n \"Valuation Report shows value less than Property Value\"\r\n];\r\n\r\nexport const applicantAlertList = [\r\n \"Payslip doesn't match with Bank statement\",\r\n \"Credit Score is low\",\r\n \"Valuation Report shows value less than Property Value\"\r\n]\r\n\r\nexport const applicationAlertList = [\r\n \"LTV% exceeds maximum threshold of 95%\",\r\n \"Monthly Repayment of £3,771.85 exceeds affordability criteria\",\r\n \"Overall Affordability calculation shows £2,716 is beyond acceptable limits\",\r\n \"Income of £6,633 is insufficient for the requested loan amount\",\r\n \"Affordability of £2,133 is too low for loan approval\",\r\n \"Credit Score of 3|350 is below the minimum required score\",\r\n \"Valuation Report indicates property value of £450,000 which is less than the requested loan amount.\",\r\n \"Required documents not submitted: Pay slip, Tax Credits.\"\r\n];\r\nexport const I2RAlert = [\r\n \"Driver name and policy holder doesn't match.\"\r\n];\r\n\r\nexport const commitments = [\r\n \"Please provide details of your obligations/commitments.\",\r\n \"Here you can add and manage all finance details.\",\r\n \"If a residential finance/purchase plan has shared responsibility between more than 1 applicant, please only add once against a single applicant and provide details of the shared responsibility in the text box provided.\"\r\n];\r\nexport const incomeDetailAlert = [\r\n 'If you receive income (excluding BTL portfolio income) that has not already been declared, please provide details below. ',\r\n \"If you do not receive any other income, please do not complete any of the fields below and continue on to the next form.\",\r\n];\r\n\r\nexport const checkListStaticData=[\r\n { list: 'Pay slip', type: 'Applicant', date: '12/10/2024 15:53:43', status: '✔ Verified' },\r\n { list: 'Rational', type: 'Applicant', date: '12/10/2024 15:53:43', status: '✔ Verified' },\r\n { list: 'Document', type: 'Applicant', date: '12/10/2024 15:53:43', status: '✔ Verified' },\r\n { list: 'Rational', type: 'Applicant', date: '12/10/2024 15:53:43', status: '✔ Verified' },\r\n { list: 'Valuation', type: 'Property', date: '12/10/2024 15:53:43', status: '✔ Verified' },\r\n { list: 'Tax Credits', type: 'Applicant', date: '12/10/2024 15:53:43', status: '✔ Verified' },\r\n];\r\n\r\nexport const actionHiddenHeaderList = ['apiEndPoint'];\r\n\r\nexport const actionList = [\r\n { action: 'Valuation Fee', \r\n prompt: `The following conversation includes references to various addresses. Based on the selected form \"Valuation Fee\",\r\n identify and extract the most recent address provided (in descending order of appearance in the text) and map it to the following schema::\r\n {\r\n \"Line1\": string,\r\n \"Line2\": string,\r\n \"town\": string,\r\n \"postcode\": string\r\n }.\r\n \r\n Respond **only** with a valid JSON object matching this schema. Do not include any explanation, additional text, or comments.\r\n \r\n Data:`, queueId: '674f1c645dafa6a66511c8fb', apiEndPoint: 'http://qa-gb.api.dynamatix.com:3100/api/applications', status: 'Enable'\r\n },\r\n { action: 'UK Resident', \r\n prompt: `\r\n The following conversation involves information related to UK residency. Based on the selected form \"UK Resident\",\r\n extract the most recent address mentioned (in descending order of appearance in the text) and map it to the following schema::\r\n {\r\n \"Line1\": string,\r\n \"Line2\": string,\r\n \"town\": string,\r\n \"postcode\": string\r\n }.\r\n \r\n Respond **only** with a valid JSON object matching this schema. Do not include any explanation, additional text, or comments.\r\n \r\n Data:`, queueId: '676e4b27ee779eafc72b11b9', apiEndPoint: 'http://qa-gb.api.dynamatix.com:3100/api/applications', status: 'Disable'\r\n },\r\n { action: 'Address Update', \r\n prompt: `\r\n The following conversation contains updates related to address changes. Based on the selected form \"Address Update\",\r\n identify and extract the most recent address mentioned (in descending order of appearance in the text) and map it to the following schema::\r\n {\r\n \"Line1\": string,\r\n \"Line2\": string,\r\n \"town\": string,\r\n \"postcode\": string\r\n }.\r\n \r\n Respond **only** with a valid JSON object matching this schema. Do not include any explanation, additional text, or comments.\r\n \r\n Data:`, queueId: '67332cf2f9439e97c47a3c43', apiEndPoint: 'http://qa-gb.api.dynamatix.com:3100/api/applications', status: 'Enable'\r\n }\r\n]\r\n\r\nexport const actionTableColumnWidthList = {action: 'w-3', prompt: 'w-4', queueId: 'w-3', status: 'w-2'}","import { Component, EventEmitter, Input, Output, Renderer2 } from '@angular/core';\r\nimport { SHARED } from '../../constant/SHARED';\r\n@Component({\r\n selector: 'sidebar',\r\n templateUrl: './sidebar.component.html',\r\n styleUrl: './sidebar.component.scss',\r\n standalone : false\r\n})\r\nexport class SidebarComponent {\r\n @Input() isSidebarVisible!: boolean;\r\n @Input() title!: string;\r\n @Output() onClose = new EventEmitter<any>();\r\n\r\n constructor(private renderer: Renderer2) {}\r\n\r\n onSidebarShow() {\r\n const overlay = document.querySelector(SHARED.SIDEBAR_MASK);\r\n if (overlay) {\r\n this.renderer.addClass(overlay, SHARED.CUSTOMSIDEBAROVERLAY);\r\n }\r\n }\r\n\r\n handleSidebarClose() {\r\n this.onClose.emit(false);\r\n }\r\n}\r\n","<div *ngIf=\"isSidebarVisible\" class=\"backdrop-shadow\" (click)=\"handleSidebarClose()\"></div>\r\n<div>\r\n<p-sidebar class=\"sidebar-panel-wrapper\" [(visible)]=\"isSidebarVisible\" (onShow)=\"onSidebarShow()\" (onHide)=\"handleSidebarClose()\" [position]=\"'right'\">\r\n <ng-template pTemplate=\"header\">\r\n <div class=\"flex align-items-center\">\r\n <h2 class=\"sidebar-title-wrapper text-color mb-0\">\r\n {{title}}\r\n </h2>\r\n </div>\r\n </ng-template>\r\n <p-divider class=\"sidebar-devider\"></p-divider>\r\n <ng-content></ng-content>\r\n</p-sidebar>","import { Injectable } from '@angular/core';\r\nimport { EntityState, EntityStore, StoreConfig } from '@datorama/akita';\r\nimport { BaseState } from './base.state';\r\nimport { BehaviorSubject } from 'rxjs';\r\nimport { BaseModel } from '../models/base.model';\r\nexport interface BaseEntityState<T> extends BaseState, EntityState<T> {\r\n \r\n}\r\n\r\n\r\n/**\r\n * BaseStore is a generic class that extends EntityStore from Akita.\r\n */\r\n@StoreConfig({ name: 'base' })\r\n@Injectable({ providedIn: 'root' })\r\nexport class BaseStore<T extends BaseModel> extends EntityStore<BaseEntityState<T>, T> {\r\n static storeName = 'base';\r\n public recordChange$: BehaviorSubject<any>;\r\n public onDocumentAccept$: BehaviorSubject<any>;\r\n public onDailogClose$: BehaviorSubject<any>;\r\n public openDocument$: BehaviorSubject<any>;\r\n public alertMessage$: BehaviorSubject<any>;\r\n\r\n constructor() {\r\n super({ records: [], lists: [] }, { name: BaseStore.storeName }); \r\n this.recordChange$ = new BehaviorSubject<any>([]);\r\n this.onDocumentAccept$ = new BehaviorSubject<any>({});\r\n this.onDailogClose$ = new BehaviorSubject<boolean>(false);\r\n this.openDocument$ = new BehaviorSubject<any>({});\r\n this.alertMessage$ = new BehaviorSubject<string>('');\r\n }\r\n\r\n setList(data: T[]) {\r\n this.update({ lists: data });\r\n }\r\n\r\n setRecordChange(value: any) {\r\n this.recordChange$.next(value);\r\n }\r\n\r\n setOnDocumentAccept(value: any) {\r\n this.onDocumentAccept$.next(value);\r\n }\r\n\r\n setOnDailogClose(value: any) {\r\n this.onDailogClose$.next(value);\r\n }\r\n\r\n setOpenDocument(value: any) {\r\n this.openDocument$.next(value);\r\n }\r\n\r\n setAlertMessage(value: any) {\r\n this.alertMessage$.next(value);\r\n }\r\n \r\n}\r\n","\r\nimport { QueryEntity } from '@datorama/akita';\r\nimport { BaseEntityState, BaseStore } from './base.store';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { BaseModel } from '../models/base.model';\r\n\r\n/**\r\n * BaseQuery is a generic class that extends QueryEntity from Akita.\r\n * It provides methods to interact with the state of entities managed by the BaseStore.\r\n */\r\n@Injectable({ providedIn: 'root' })\r\nexport class BaseQuery<T extends BaseModel> extends QueryEntity<BaseEntityState<T>, T> {\r\n constructor(protected override store: BaseStore<T>) {\r\n super(store);\r\n }\r\n\r\n selectAllEntities() {\r\n return this.selectAll();\r\n }\r\n\r\n selectEntityById(id: string) {\r\n return this.selectEntity(id);\r\n }\r\n\r\n getLists(): Observable<any> {\r\n return this.select(state => state.lists);\r\n }\r\n\r\n getRecordChange() {\r\n return this.store.recordChange$.asObservable();\r\n }\r\n\r\n getOnDocumentAccept() {\r\n return this.store.onDocumentAccept$.asObservable();\r\n }\r\n\r\n getonDailogClose() {\r\n return this.store.onDailogClose$.asObservable();\r\n }\r\n\r\n getOpenDocument() {\r\n return this.store.openDocument$.asObservable();\r\n }\r\n\r\n getAlertMessage() {\r\n return this.store.alertMessage$.asObservable();\r\n }\r\n\r\n \r\n\r\n \r\n}\r\n","import { Component, EventEmitter, Input, OnChanges, Output } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AttributeModel } from '../../models/attribute.model';\r\nimport { SHARED } from '../../constant/SHARED';\r\nimport { BaseQuery } from '../../state/base.query';\r\nimport { BaseStore } from '../../state/base.store';\r\n\r\n@Component({\r\n selector: 'app-base-control',\r\n standalone: true,\r\n imports: [CommonModule],\r\n templateUrl: './base-control.component.html',\r\n styleUrl: './base-control.component.scss',\r\n providers : [BaseStore]\r\n})\r\nexport class BaseControlComponent implements OnChanges {\r\n constructor() {}\r\n @Input() store !: BaseStore<any> | null;\r\n @Input() record: any;\r\n @Input() attributeModel! : AttributeModel;\r\n @Input() error : string = \"\"\r\n @Output() onInput = new EventEmitter();\r\n @Output() onEnterKeydown = new EventEmitter();\r\n @Output() onBtnClick = new EventEmitter();\r\n\r\n query !: BaseQuery<any>\r\n ngOnChanges(){\r\n if(this.store) {\r\n this.query = new BaseQuery(this.store)\r\n }\r\n }\r\n handleModelChange(event:any, valid: boolean|null, val?:any) { \r\n if (this.attributeModel?.name) {\r\n this.record[this.attributeModel?.name] = event;\r\n this.onInput.emit(event);\r\n }\r\n }\r\n\r\n // handleEnterKey(event:any, valid: boolean|null) {\r\n // if (this.attributeModel?.name) {\r\n // this.record[this.attributeModel?.name] = event;\r\n // this.onEnterKeydown.emit(event);\r\n // this.record[this.attributeModel?.name] = SHARED.EMPTY;\r\n // }\r\n // }\r\n\r\n handleButtonClick(event:MouseEvent){\r\n this.onBtnClick.emit(event);\r\n }\r\n\r\n getValue() : string | null | undefined {\r\n return this.record[this.attributeModel.name]\r\n }\r\n \r\n}\r\n","<p>base-control works!</p>\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { CheckboxModule } from 'primeng/checkbox';\r\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\r\n\r\n@Component({\r\n selector: 'check-box',\r\n templateUrl: './check-box.component.html',\r\n styleUrl: './check-box.component.scss',\r\n standalone : true,\r\n imports : [CommonModule,FormsModule, CheckboxModule]\r\n})\r\nexport class CheckBoxComponent extends BaseControlComponent {\r\n \r\n}\r\n","<div class=\"checkBoxContainer\">\r\n \r\n <div class=\"checkBox\">\r\n <p-checkbox\r\n [disabled]=\"attributeModel.readonly ?? false\"\r\n [binary]=\"true\"\r\n inputId=\"binary\"\r\n [label]=\"attributeModel.displayText ?? ''\"\r\n class=\"dynamic-checkbox\"\r\n #checkBox=\"ngModel\"\r\n [ngModel]=\"this.record[this.attributeModel.name]\"\r\n [style]=\"{\r\n '--checkbox-size': attributeModel.customColumnWidth || '20px',\r\n '--checkbox-height': attributeModel.customHeight || '20px'\r\n }\"\r\n [required]=\"attributeModel.isRequired ?? false\" \r\n (ngModelChange)=\"handleModelChange($event, checkBox.valid)\"\r\n >\r\n </p-checkbox>\r\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\r\n </div>\r\n</div>","import { Component } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\r\nimport { ButtonModule } from 'primeng/button';\r\n\r\n@Component({\r\n selector: 'lib-button',\r\n standalone: true,\r\n imports : [CommonModule,InputTextModule, FormsModule, ButtonModule],\r\n templateUrl: './button.component.html',\r\n styleUrl: './button.component.scss',\r\n})\r\nexport class ButtonComponent extends BaseControlComponent{}\r\n","<ng-container>\r\n <div class=\"btn-control\">\r\n <p-button\r\n type=\"button\"\r\n [label]=\"attributeModel.buttonLabel ?? 'Click Me'\"\r\n [disabled]=\"attributeModel.isDisabled ?? false\"\r\n [style]=\"{\r\n width: attributeModel.customButtonWidth\r\n ? attributeModel.customButtonWidth\r\n : 'auto',\r\n padding: attributeModel.customPadding\r\n ? attributeModel.customPadding\r\n : '0.5rem' \r\n }\"\r\n [icon]=\"attributeModel.icon ? attributeModel.icon : ''\"\r\n [iconPos]=\"attributeModel.iconPosition ?? 'left'\" \r\n [ngClass]=\"{\r\n 'p-button-primary': attributeModel.isPrimary ?? true,\r\n 'p-button-secondary': !attributeModel.isPrimary\r\n }\"\r\n (onClick)=\"handleButtonClick($event)\"\r\n></p-button>\r\n\r\n </div>\r\n </ng-container>","\r\nimport { CommonModule } from '@angular/common';\r\nimport { Component } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\n\r\n@Component({\r\n selector: 'text-box',\r\n templateUrl: './text-box.component.html',\r\n styleUrl: './text-box.component.scss',\r\n standalone : true,\r\n imports : [CommonModule,InputTextModule, FormsModule, TooltipModule]\r\n})\r\nexport class TextBoxComponent extends BaseControlComponent {\r\n override getValue() {\r\n if(this.record[this.attributeModel.name] == false){\r\n return typeof this.record[this.attributeModel.name] == \"string\" ? \"\" : \"No\"\r\n }else if( this.record[this.attributeModel.name] == true){\r\n return \"Yes\"\r\n }else{\r\n return this.record[this.attributeModel.name] ?? \"-\"\r\n }\r\n }\r\n}\r\n","<ng-container >\r\n <div class=\"\">\r\n\r\n <div *ngIf=\"attributeModel.displayText\" class=\"mb-2\">\r\n <label>{{ attributeModel.displayText }}</label>\r\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\r\n </div>\r\n @if (attributeModel.readonly) {\r\n <div class=\"mb-2\" [ngStyle]=\"{'font-size':'14px', 'color':'#0F1729', 'font-weight':'600' }\">\r\n <label [for]=\"attributeModel.name ?? 'textBox'\" class=\"text-value-wrapper\" [ngStyle]=\"{color: attributeModel.textColorOnReadonly}\">{{ getValue() }}</label>\r\n </div>\r\n } @else {\r\n <div class=\"inputTextBox\">\r\n\r\n <input\r\n pInputText\r\n type=\"text\"\r\n autocomplete=\"off\"\r\n [placeholder]=\"attributeModel.placeholder ?? ''\"\r\n class=\"block p-inputtext w-full\"\r\n [pTooltip]=\"attributeModel.tooltip ?? ''\"\r\n [tooltipPosition]=\"attributeModel.toolTipPosition ?? '' \"\r\n [ngModel]=\"record?.[attributeModel.name] ?? ''\"\r\n [disabled]=\"attributeModel?.readonly ?? false\" \r\n [name]=\"attributeModel.name ?? 'textBox'\"\r\n [id]=\"attributeModel.name ?? 'textBox'\"\r\n [required]=\"attributeModel.isRequired ?? false\" \r\n [ngStyle]=\"{\r\n width: attributeModel.customColumnWidth\r\n ? attributeModel.customColumnWidth\r\n : '',\r\n padding: attributeModel.customPadding ? attributeModel.customPadding : ''\r\n }\"\r\n #textboxField=\"ngModel\"\r\n (ngModelChange)=\"handleModelChange($event, textboxField.valid)\"\r\n [ngClass]=\"{\r\n 'ng-dirty ng-invalid':\r\n (!textboxField.valid && error)\r\n }\"\r\n />\r\n </div>\r\n }\r\n </div>\r\n \r\n</ng-container>\r\n","import { Component, EventEmitter, input, Input, Output, ViewEncapsulation } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { ConfirmDialogModule } from 'primeng/confirmdialog';\r\nimport { ToastModule } from 'primeng/toast';\r\nimport { ConfirmationService, Message, MessageService } from 'primeng/api';\r\nimport { MessageModule } from 'primeng/message';\r\nimport { MessagesModule } from 'primeng/messages';\r\nimport { ButtonComponent } from '../../controls/button/button.component';\r\nimport { TextBoxComponent } from '../../controls/text-box/text-box.component';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { SHARED } from '../../constant/SHARED';\r\n@Component({\r\n selector: 'form-container',\r\n standalone: true,\r\n imports: [CommonModule, ButtonModule,ConfirmDialogModule,ToastModule, MessagesModule, ButtonComponent, TextBoxComponent],\r\n templateUrl: './form-container.component.html',\r\n styleUrl: './form-container.component.scss',\r\n providers : [MessageService, ConfirmationService],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class FormContainerComponent {\r\n @Input() isDisable:boolean = SHARED.TRUE\r\n @Input() messages: Message[] = [];\r\n @Input() record: any\r\n @Input() headerText: string | undefined;\r\n @Input() showSave:boolean = SHARED.FALSE\r\n @Input() disableButton:boolean = SHARED.FALSE\r\n @Input() disableSubmitButton:boolean = SHARED.FALSE\r\n @Input() disableSaveButton:boolean = SHARED.FALSE\r\n @Output() onSave = new EventEmitter();\r\n @Output() onCancel = new EventEmitter();\r\n @Input() overrideNavigate: boolean = SHARED.FALSE;\r\n \r\n\r\n constructor( private router: Router,\r\n private route: ActivatedRoute,){}\r\n \r\n handleSaveClick(){\r\n this.onSave.emit()\r\n }\r\n handleCancelClick(){\r\n this.onCancel.emit()\r\n }\r\n\r\n handleCreateBtnClick() {\r\n\r\n }\r\n}\r\n","<div class=\"form-container\">\r\n <div class=\"text-900 font-bold text-xl form-header mt-2\">\r\n <div class=\"form-header-container w-full mr-0\">\r\n <div class=\"form-header-title\"[innerHTML]=\"this.headerText\">\r\n </div>\r\n <div class=\"form-header-messege w-full\">\r\n <p-messages class=\"message-wrapper\" [(value)]=\"messages\" [enableService]=\"false\" />\r\n </div>\r\n </div>\r\n\r\n <div class=\"btn-wrapper\">\r\n <ng-content select=\"[headerButtons]\"></ng-content>\r\n @if(showSave){\r\n <button\r\n pButton\r\n pRipple\r\n label=\"Cancel\"\r\n (click)=\"handleCancelClick()\"\r\n class=\"p-button-outlined mr-2\"\r\n ></button>\r\n\r\n <button\r\n pButton\r\n class=\"p-button-success\"\r\n label=\"Save\"\r\n [disabled]=\"disableSaveButton\"\r\n type=\"button\"\r\n tooltipPosition=\"bottom\"\r\n (click)=\"handleSaveClick()\"\r\n ></button>\r\n }\r\n <ng-content select=\"[headerButtons]\"></ng-content>\r\n </div>\r\n </div>\r\n \r\n \r\n <p-toast></p-toast>\r\n\r\n <div>\r\n <p-confirmDialog>\r\n <ng-template pTemplate=\"message\" let-message>\r\n <div class=\"flex flex-column align-items-center w-full gap-3 border-bottom-1 surface-border\">\r\n <i class=\"pi pi-exclamation-circle text-6xl text-primary-500\"></i>\r\n <p>{{ message.message }}</p>\r\n </div>\r\n </ng-template>\r\n </p-confirmDialog>\r\n </div> \r\n <div class=\"grid mt-3\">\r\n <div class=\"col-12\">\r\n <ng-content></ng-content>\r\n </div>\r\n </div>\r\n </div>\r\n ","\r\n/**\r\n * URLS\r\n */\r\nexport class URLS{\r\n static CONFIGFILEURL = \"assets/config/api.config.json\"\r\n}","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { firstValueFrom } from 'rxjs';\r\nimport { URLS } from '../constant/URLS';\r\n\r\n/**\r\n * This service is used to get the app configuration from the config file.\r\n */\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AppConfigService {\r\n\r\n private appConfig: any;\r\n\r\n constructor(private http: HttpClient) {}\r\n async loadAppConfig() {\r\n this.appConfig = await firstValueFrom(this.http.get(URLS.CONFIGFILEURL));\r\n }\r\n\r\n get apiBaseUrl() {\r\n return this.appConfig?.catQwUrl;\r\n }\r\n\r\n get visibilityOptions(){\r\n return this.appConfig?.visibilityOption\r\n }\r\n \r\n}\r\n","import { SelectItem } from \"primeng/api\";\r\n\r\nexport class List {\r\n dataSource?: string;\r\n records: any[];\r\n label: string;\r\n value: string;\r\n forProperty!: string;\r\n items: SelectItem[];\r\n allItems: SelectItem[];\r\n\r\n constructor(dataSource: string, records: any[] = [], label: string, value: string, forProperty?: string) {\r\n this.dataSource = dataSource\r\n this.records = records;\r\n this.label = label;\r\n this.value = value;\r\n this.dataSource = dataSource;\r\n this.forProperty = forProperty ?? \"\"\r\n this.items = records?.map((i) => {\r\n return { label: i[this?.label] ? i[this?.label] : 'No label', value: i[this?.value] };\r\n });\r\n this.allItems = this.records?.map((i) => {\r\n return { label: i[this?.label] ? i[this?.label] : 'No label', value: i[this?.value] };\r\n });\r\n }\r\n\r\n}\r\n","import { firstValueFrom } from \"rxjs\";\r\nimport { List } from \"../models/list.model\";\r\nimport { Injectable } from \"@angular/core\";\r\nimport { HttpClient } from \"@angular/common/http\";\r\nimport { AppConfigService } from \"./app-config.service\";\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class ListService {\r\n constructor(public http: HttpClient, public configService: AppConfigService) {}\r\n\r\n async getLists(models: any[]) {\r\n const lists: List[] = [];\r\n\r\n for (const model of models) {\r\n if (model.dataSource) {\r\n try {\r\n const response = await firstValueFrom(\r\n this.getbyPathName(model.dataSource)\r\n );\r\n const list = new List(\r\n model.dataSource,\r\n response as any[],\r\n model.listLabelProperty as string,\r\n model.listValueProperty as string,\r\n model.dataSource\r\n );\r\n list.forProperty = model.name;\r\n lists.push(list);\r\n } catch (error) {\r\n console.error(`Error fetching data from ${model.dataSource}:`, error);\r\n }\r\n } \r\n else if (model.options) {\r\n const list = new List(\r\n model.dataSource,\r\n model.options as any[],\r\n model.listLabelProperty as string,\r\n model.listValueProperty as string,\r\n undefined\r\n );\r\n list.forProperty = model.name;\r\n lists.push(list);\r\n }\r\n }\r\n return lists;\r\n }\r\n\r\n getbyPathName(data: string) {\r\n return this.http.get(this.configService.apiBaseUrl + data);\r\n }\r\n}\r\n","import { Injectable, Injector } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { map, tap } from 'rxjs/operators';\r\nimport { BaseStore } from './base.store';\r\nimport { SHARED } from '../constant/SHARED';\r\nimport { BaseModel } from '../models/base.model';\r\nimport { AppConfigService } from '../services/app-config.service';\r\nimport { ListService } from '../services/list.service';\r\n\r\n@Injectable({providedIn:'root'})\r\nexport class BaseService<T extends BaseModel> {\r\n public _pathName: string = SHARED.EMPTY;\r\n protected lists!:string[];\r\n protected http: HttpClient;\r\n protected list!:[]\r\n constructor(http: HttpClient, private store: BaseStore<T>, private appConfigService: AppConfigService, protected listService : ListService) {\r\n \r\n this.http = http;\r\n }\r\n \r\n\r\n get apiUrl(): string {\r\n return this.appConfigService.apiBaseUrl;\r\n }\r\n\r\n set pathName(value: string) {\r\n this._pathName = value;\r\n }\r\n\r\n async initList() {\r\n let response = await this.listService.getLists(this.list)\r\n if (response && response.length > 0) {\r\n this.store.setList(response as any)\r\n }\r\n \r\n } \r\n\r\n create(entity: T): Observable<T> {\r\n return this.http.post<T>(this.apiUrl + this._pathName, entity).pipe(\r\n tap((newEntity: T) => this.store.add(newEntity))\r\n );\r\n }\r\n\r\n getAll(): Observable<T[]> {\r\n return this.http.get<T[]>(this.apiUrl + this._pathName).pipe(\r\n tap((entities: T[]) => this.store.set(entities))\r\n );\r\n }\r\n\r\n getById(id: string): Observable<T> {\r\n return this.http.get<T>(`${this.apiUrl}${this._pathName}/${id}`).pipe(\r\n tap((entity: T) => this.store.upsert(id, entity))\r\n );\r\n }\r\n\r\n update(id: string, entity: T): Observable<T> {\r\n return this.http.put<T>(`${this.apiUrl}${this._pathName}/${id}`, entity).pipe(\r\n tap((updatedEntity: T) => this.store.update(id, updatedEntity))\r\n );\r\n }\r\n\r\n delete(id: string): Observable<void> {\r\n return this.http.delete<void>(`${this.apiUrl}${this._pathName}/${id}`).pipe(\r\n tap(() => this.store.remove(id))\r\n );\r\n }\r\n \r\n}\r\n","\r\nexport class TablePrimaryModel{\r\n name!: string;\r\n headers!: any[];\r\n records!: any[];\r\n}","import { AttributeModel } from \"../../models/attribute.model\";\r\n\r\nexport class TablePrimaryHeaderModel{\r\n name!: string;\r\n attributes!: AttributeModel;\r\n width!: string;\r\n}","import { Injectable } from \"@angular/core\";\r\nimport { TablePrimaryModel } from \"../table-primary/models/table-primary.model\";\r\nimport { SHARED } from \"../constant/SHARED\";\r\nimport { TablePrimaryHeaderModel } from \"../table-primary/models/table-primary-header.model\";\r\n\r\n\r\n/**\r\n * TableBuilder\r\n */\r\n@Injectable({\r\n providedIn:'root'\r\n})\r\nexport class TableBuilder{\r\n\r\n public hiddenHeaders: string[] = [];\r\n buildTable(records: any[], headerWidths?: { [key: string]: string }): TablePrimaryModel {\r\n const table = new TablePrimaryModel();\r\n table.records = records;\r\n if (records && records.length > 0) {\r\n table.headers = this.buildHeaders(Object.keys(records[0]),headerWidths);\r\n } else {\r\n table.headers = [];\r\n }\r\n return table;\r\n }\r\n \r\n private buildHeaders(keys: string[], headerWidths: { [key: string]: string } | undefined): TablePrimaryHeaderModel[] {\r\n \r\n const headers: TablePrimaryHeaderModel[] = [];\r\n const filteredKeys = keys.filter(\r\n key => key !== SHARED.ID && !this.hiddenHeaders.includes(key) // hide headers\r\n );\r\n for (const key of filteredKeys) {\r\n const header = new TablePrimaryHeaderModel();\r\n header.name = key;\r\n if(headerWidths) header.width = headerWidths[key] || SHARED.WIDTH_AUTO;\r\n headers.push(header);\r\n }\r\n return headers;\r\n }\r\n}","import { Component, Input, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BaseModel } from '../../models/base.model';\r\nimport { TableBuilder } from '../../services/table.builder';\r\nimport { BaseService } from '../../state/base.service';\r\nimport { TablePrimaryModel } from '../../table-primary/models/table-primary.model';\r\n\r\n/**\r\n * BaseListComponent is a generic class that provides a base implementation for a list component.\r\n */\r\n@Component({\r\n selector: 'lib-base-list',\r\n templateUrl: './base-list.component.html',\r\n styleUrl: './base-list.component.scss',\r\n})\r\nexport class BaseListComponent<T extends BaseModel> implements OnChanges {\r\n @Input() refreshTable : boolean = false;\r\n table!: TablePrimaryModel;\r\n\r\n constructor(protected service: BaseService<T>, protected builder: TableBuilder){}\r\n\r\n ngOnChanges(){\r\n this.handleRefreshTable()\r\n }\r\n init(){\r\n this.service.getAll().subscribe((res:any)=>{\r\n this.table = this.builder.buildTable(res);\r\n this.afterTableBuild()\r\n });\r\n }\r\n\r\n afterTableBuild(){\r\n\r\n }\r\n\r\n handleRefreshTable(){\r\n this.init()\r\n }\r\n}\r\n","<p>base-list works!</p>\r\n","import { Component, Input, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { SelectItem } from 'primeng/api';\r\nimport { ListService } from '../../services/list.service';\r\nimport { List } from '../../models/list.model';\r\nimport { BaseQuery } from '../../state/base.query';\r\n\r\n/**\r\n * DropdownComponent\r\n */\r\n@Component({\r\n selector: 'dropdown',\r\n standalone: true,\r\n imports: [CommonModule, DropdownModule, FormsModule],\r\n templateUrl: './dropdown.component.html',\r\n styleUrls: ['./dropdown.component.scss'],\r\n encapsulation: ViewEncapsulation.None\r\n})\r\nexport class DropdownComponent extends BaseControlComponent{\r\n options: SelectItem[] | undefined = [];\r\n list!: List | undefined;\r\n childListRecords: any[] = [];\r\n @Input() isStaticDropdown = false;\r\n\r\n constructor(public listService: ListService) {\r\n super();\r\n }\r\n\r\n override ngOnChanges() {\r\n if(this.store) {\r\n this.query = new BaseQuery(this.store);\r\n }\r\n if (this.attributeModel.options) {\r\n this.options = this.attributeModel.options;\r\n }\r\n if (!this.isStaticDropdown) {\r\n this.handleGetAndSetList();\r\n }else{\r\n this.options = this.attributeModel.options?.map((x: any) => {\r\n return { label: x[this.attributeModel?.listLabelProperty || 0], value: x[this.attributeModel?.listValueProperty || 0] };\r\n });\r\n }\r\n }\r\n\r\n handleGetAndSetList() {\r\n try {\r\n this.query.getLists().subscribe((response: List[]) => {\r\n if (response) {\r\n this.mapResponseToOptions(response);\r\n }\r\n });\r\n } catch (error) {\r\n console.error('Error fetching data:', error);\r\n }\r\n }\r\n\r\n private mapResponseToOptions(lists: List[]): SelectItem[] {\r\n if (lists && lists.length > 0) {\r\n const clonedLists = JSON.parse(JSON.stringify(lists));\r\n this.list = clonedLists.find((x: any) => x.forProperty === this.attributeModel.name);\r\n if (this.list) {\r\n this.options = this.list?.items ?? [];\r\n }\r\n }\r\n if (!this.options || this.options.length === 0) {\r\n this.options = this.attributeModel.options ?? [];\r\n }\r\n return this.options;\r\n }\r\n\r\n\r\n override handleModelChange(event: any, valid: boolean | null, val?: any): void {\r\n super.handleModelChange(event, valid);\r\n }\r\n}\r\n","<ng-container>\r\n <div class=\"mb-2\">\r\n <label>{{ attributeModel.displayText }}</label>\r\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\r\n </div>\r\n <div class=\"dropdownbox\">\r\n\r\n <p-dropdown \r\n \r\n [options]=\"options\" \r\n [disabled]=\"attributeModel.readonly ?? false\"\r\n [showClear]=\"true\"\r\n [name]=\"attributeModel.name ?? 'testSingleSelect'\" \r\n [ngModel]=\"record[attributeModel.name]\" \r\n [placeholder]=\"attributeModel.placeholder ?? ''\" \r\n [required]=\"attributeModel.isRequired ?? false\"\r\n filterBy=\"label\" \r\n class=\"dropdownFeild\"\r\n #dropdown=\"ngModel\"\r\n (ngModelChange)=\"handleModelChange($event, dropdown.valid)\" \r\n [ngClass]=\"!dropdown.valid && error == attributeModel.name ? 'ng-dirty ng-invalid':''\" \r\n appendTo=\"body\" \r\n optionLabel=\"label\" \r\n optionValue=\"value\">\r\n</p-dropdown>\r\n</div>\r\n\r\n</ng-container>\r\n","import { Injectable } from '@angular/core';\r\nimport moment from 'moment';\r\nimport { SHARED } from '../constant/SHARED';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class DateParserService {\r\n\r\n constructor() { }\r\n\r\n parseDate(date:any) {\r\n\r\n\t\tif (\r\n\t\t\tmoment(date, SHARED.DATE_FORMAT_TYPE2, true).isValid()\r\n\t\t) {\r\n\t\t\tconst date1 = date.toString().split(SHARED.HIPHEN)[0];\r\n\t\t\tconst month = date.toString().split(SHARED.HIPHEN)[1];\r\n\t\t\tconst year = date.toString().split(SHARED.HIPHEN)[2];\r\n\t\t\treturn moment.utc(`${year}-${month}-${date1}`).toDate();\r\n\t\t}\r\n\t\telse if (\r\n\t\t\tmoment(date, SHARED.DATE_FORMAT, true).isValid()\r\n\t\t) {\r\n\t\t\tconst date1 = date.toString().split(SHARED.SLASH)[0];\r\n\t\t\tconst month = date.toString().split(SHARED.SLASH)[1];\r\n\t\t\tconst year = date.toString().split(SHARED.SLASH)[2];\r\n\t\t\treturn moment.utc(`${year}-${month}-${date1}`).toDate();\r\n\t\t}\r\n\t\telse if (moment(date, SHARED.DATE_FORMAT_TYPE3, true).isValid()) {\r\n\t\t\tconst dateParts = date.toString().split(SHARED.HIPHEN);\r\n\t\t\tconst year = dateParts[0];\r\n\t\t\tconst month = dateParts[1];\r\n\t\t\tconst day = dateParts[2];\r\n\t\t\treturn moment.utc(`${year}-${month}-${day}`).toDate();\r\n\t\t}\r\n else if (\r\n \r\n\t\t\tdate instanceof Date ||\r\n\t\t\tnew Date(date).toString() != SHARED.INVALIDDATE\r\n\t\t) {\r\n\r\n\t\t\tconst result = new Date(date);\r\n\t\t\tresult.setHours(0, 0, 0, 0);\r\n\t\t\treturn moment.utc(`${result.getFullYear()}-${result.getMonth()+1}-${result.getDate()}`).toDate();\r\n\t\t}\r\n\t\telse {\r\n\t\t\tthrow new Error(SHARED.INVALIDDATE);\r\n\t\t}\r\n\r\n\t\treturn SHARED.INVALIDDATE\r\n\t}\r\n\r\n}\r\n","import { Component, OnChanges } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\r\nimport { DateParserService } from '../../services/date-parser.service';\r\nimport { CalendarModule } from 'primeng/calendar';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { SHARED } from '../../constant/SHARED';\r\nimport moment from 'moment';\r\n\r\n@Component({\r\n selector: 'date',\r\n standalone: true,\r\n imports: [CommonModule, CalendarModule, FormsModule],\r\n templateUrl: './date.component.html',\r\n styleUrl: './date.component.scss',\r\n})\r\nexport class DateComponent extends BaseControlComponent implements OnChanges{\r\n constructor(public dateService : DateParserService){\r\n super()\r\n }\r\n override ngOnChanges(): void {\r\n if(this.attributeModel.readonly){\r\n this.getValue()\r\n }else{\r\n\r\n this.record[this.attributeModel.name] = this.dateService.parseDate(this.record[this.attributeModel?.name]) ??\r\n new Date();\r\n }\r\n }\r\n override getValue() {\r\n if (this.record[this.attributeModel.name]) {\r\n const formattedDate = moment(this.record[this.attributeModel.name]).format('DD/MM/YYYY');\r\n if(formattedDate == \"Invalid date\"){\r\n return SHARED.HIPHEN\r\n }else{\r\n return formattedDate\r\n }\r\n }\r\n return SHARED.EMPTY\r\n }\r\n \r\n}\r\n","@if (attributeModel && record) {\r\n<div class=\"\">\r\n <div class=\"mb-2\">\r\n <label>{{\r\n attributeModel?.displayText\r\n ? attributeModel?.displayText\r\n : attributeModel?.name\r\n }}</label>\r\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\r\n </div>\r\n @if (attributeModel.readonly) {\r\n <div class=\"mb-2\" [ngStyle]=\"{ 'font-size': '14px', color: '#0F1729', 'font-weight':'600' }\">\r\n <label>{{ getValue() }}</label>\r\n </div>\r\n } @else {\r\n <div>\r\n <p-calendar\r\n [showIcon]=\"attributeModel.showCalenderIcon ?? true\"\r\n inputId=\"icon\"\r\n [disabled]=\"attributeModel?.readonly ?? false\"\r\n [required]=\"attributeModel?.isRequired ?? false\"\r\n [name]=\"attributeModel?.name ? attributeModel?.name : 'testDatePicker'\"\r\n [placeholder]=\"\r\n attributeModel.placeholder ? attributeModel.placeholder : ''\r\n \"\r\n [yearRange]=\"attributeModel.yearRange ?? '1950 : 2050'\"\r\n [title]=\"attributeModel.title ? attributeModel.title : ''\"\r\n [(ngModel)]=\"record[attributeModel?.name]\"\r\n #dateField=\"ngModel\"\r\n [dateFormat]=\"'dd/mm/yy'\"\r\n appendTo=\"body\"\r\n (ngModelChange)=\"handleModelChange($event, dateField.valid)\"\r\n [ngClass]=\"{\r\n 'ng-dirty ng-invalid': !dateField.valid && error == attributeModel?.name\r\n }\"\r\n [hourFormat]=\"attributeModel?.hourFormat ? '24' : ''\"\r\n >\r\n </p-calendar>\r\n </div>\r\n }\r\n</div>\r\n\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { FileUploadModule } from 'primeng/fileupload';\r\n\r\n@Component({\r\n selector: 'file-upload',\r\n standalone: true,\r\n imports: [CommonModule, FormsModule, FileUploadModule],\r\n templateUrl: './file-upload.component.html',\r\n styleUrl: './file-upload.component.scss',\r\n})\r\nexport class FileUploadComponent extends BaseControlComponent {\r\n\r\n handleSingleUpload(event:any){\r\n console.log(event)\r\n }\r\n}\r\n","<ng-container class=\"documentContainer\">\r\n @if(!attributeModel.hideLabelOnForm){\r\n <div class=\"mb-2\">\r\n <label class=\"form-header-label\">{{ attributeModel?.displayText }}</label>\r\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\r\n </div>\r\n }\r\n<div class=\"card flex justify-content-center\">\r\n <p-fileUpload \r\n mode=\"basic\" \r\n [chooseLabel]=\"record[attributeModel.name] ? attributeModel.displayText : 'No Files'\"\r\n chooseIcon=\"pi pi-plus\"\r\n [name]=\"attributeModel?.name\"\r\n accept=\"image/*,application/pdf\" \r\n [maxFileSize]=\"209715200\" class=\"fileUploader\"\r\n (onSelect)=\"handleSingleUpload($event)\" />\r\n</div>\r\n</ng-container>","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({\r\n name: 'capitalizeWords',\r\n standalone: true,\r\n})\r\nexport class CapitalizeWordsPipe implements PipeTransform {\r\n transform(value: string): string {\r\n if (!value) return value;\r\n return value\r\n .split(' ')\r\n .map(word => \r\n word.charAt(0).toUpperCase() + word.slice(1).toLowerCase()\r\n )\r\n .join(' ');\r\n }\r\n}\r\n","import { CommonModule } from '@angular/common';\r\nimport { Component, Input } from '@angular/core';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\r\n\r\n@Component({\r\n selector: 'text-area',\r\n templateUrl: './text-area.component.html',\r\n styleUrl: './text-area.component.scss',\r\n standalone : true,\r\n imports : [CommonModule ,InputTextareaModule, FormsModule]\r\n})\r\nexport class TextAreaComponent extends BaseControlComponent {\r\n @Input() rowspan : number = 0\r\n override getValue() {\r\n if(this.record[this.attributeModel.name] == false){\r\n return typeof this.record[this.attributeModel.name] == \"string\" ? \"\" : \"No\"\r\n }else if( this.record[this.attributeModel.name] == true){\r\n return \"Yes\"\r\n }else{\r\n return this.record[this.attributeModel.name] ?? \"-\"\r\n }\r\n}\r\n}\r\n","<ng-container class=\"textAreaContainer\">\r\n <div *ngIf=\"attributeModel.displayText\" class=\"mb-2\">\r\n <label>{{ attributeModel.displayText }}</label>\r\n <span class=\"asterisk ml-1\" *ngIf=\"attributeModel.isRequired\">*</span>\r\n </div>\r\n @if (attributeModel.readonly) {\r\n <div class=\"mb-2\" [ngStyle]=\"{'font-size':'14px', 'color':'#0F1729', 'font-weight':'600' }\">\r\n <label class=\"text-value-wrapper\" [ngStyle]=\"{color: attributeModel.textColorOnReadonly}\">{{ getValue() }}</label>\r\n </div>\r\n } @else {\r\n <div class=\"textAreaControl\">\r\n <textarea\r\n pInputTextarea\r\n [rows]=\"rowspan ?? 3\"\r\n cols=\"30\"\r\n [disabled]=\"attributeModel?.readonly ?? false\"\r\n [ngModel]=\"record[attributeModel.name]\"\r\n [name]=\"attributeModel.name ?? 'textArea'\"\r\n [required]=\"attributeModel?.isRequired ?? false\"\r\n [ngStyle]=\"{\r\n width: attributeModel.customColumnWidth\r\n ? attributeModel.customColumnWidth\r\n : ''\r\n }\"\r\n #textArea=\"ngModel\"\r\n (ngModelChange)=\"handleModelChange($event, textArea.valid)\"\r\n [ngClass]=\"{\r\n 'ng-dirty ng-invalid':\r\n (!textArea.valid && error == attributeModel?.name)\r\n \r\n }\"\r\n ></textarea>\r\n \r\n </div>\r\n }\r\n</ng-container>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { DropdownModule } from 'primeng/dropdown';\r\nimport { InputGroupModule } from 'primeng/inputgroup';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { CardModule } from 'primeng/card';\r\nimport { SidebarModule } from 'primeng/sidebar';\r\nimport { SidebarComponent } from './components/sidebar/sidebar.component';\r\nimport { CheckBoxComponent } from './controls/check-box/check-box.component';\r\nimport { DragDropModule } from 'primeng/dragdrop';\r\nimport { FormContainerComponent } from './components/form-container/form-container.component';\r\nimport { BaseListComponent } from './_base/base-list/base-list.component';\r\nimport { DropdownComponent } from './controls/dropdown/dropdown.component'\r\nimport { BaseFormComponent } from './_base/base-form/base-form.component';\r\nimport { TextBoxComponent } from './controls/text-box/text-box.component';\r\nimport { InputTextareaModule } from 'primeng/inputtextarea';\r\nimport { DividerModule } from 'primeng/divider';\r\nimport { DateComponent } from './controls/date/date.component';\r\nimport { DialogModule } from 'primeng/dialog';\r\nimport { TimelineModule } from 'primeng/timeline';\r\nimport { ListboxModule } from 'primeng/listbox';\r\nimport { CheckboxModule } from 'primeng/checkbox';\r\nimport { FileUploadComponent } from './controls/file-upload/file-upload.component';\r\nimport { FileUploadModule } from 'primeng/fileupload';\r\nimport { CapitalizeWordsPipe } from './pipe/capitalize-words.pipe';\r\nimport { TextAreaComponent } from './controls/text-area/text-area.component';\r\n@NgModule({\r\n \r\n declarations: [ SidebarComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n InputTextModule,\r\n ButtonModule,\r\n DropdownModule,\r\n InputGroupModule,\r\n CardModule,\r\n SidebarModule,\r\n CheckBoxComponent,\r\n DragDropModule,\r\n FormContainerComponent,\r\n BaseListComponent,\r\n DropdownComponent,\r\n BaseListComponent,\r\n TextBoxComponent,\r\n InputTextareaModule,\r\n DividerModule,\r\n DateComponent,\r\n DialogModule,\r\n TimelineModule,\r\n ListboxModule,\r\n CheckboxModule,\r\n FileUploadComponent,\r\n FileUploadModule,\r\n CapitalizeWordsPipe,\r\n TextAreaComponent\r\n ],\r\n exports: [ CapitalizeWordsPipe,TextBoxComponent,FormsModule,ListboxModule,DialogModule, CheckboxModule,DropdownComponent,FormContainerComponent, BaseListComponent, SidebarComponent, DividerModule, CardModule]\r\n})\r\nexport class SharedModule { }\r\n","export class ROUTES {\r\n static QUEUE_FORM = \"/queue/\";\r\n static DICTIONARY_CREATE_FORM = '/dictionary/create';\r\n static DICTIONARY = '/dictionary/';\r\n static APIMANAGEMENT = '/apiManagement/';\r\n static APICONFIG = 'apiConfig';\r\n static VALIDATEAPI = 'api-configurations/validateApi';\r\n static APPLICATION = \"application/\";\r\n static APIPROPERTIES = \"apiConfig/parentAndChildProps\";\r\n static APPLICATION_WIDGET = \"widgets/dataItems/\";\r\n static DOCUMENTALERT = \"alerts/documentId\";\r\n}","\r\n/**\r\n * This class is used to store the API Paths for the application\r\n */\r\nexport class DATASOURCES{\r\n static QUEUES = \"queues\"\r\n static DICTIONARY = \"data-dictionaries\"\r\n static ACTIONS = \"actions\"\r\n static WIDGET = \"widgets\"\r\n static APIMANAGEMENT = \"api-configurations\"\r\n static APPLICATION = \"applications\"\r\n static DOCUMETS = \"documents\"\r\n static RATIONALE = \"rationale\"\r\n}","export class HEADERS{\r\n static API_MANAGEMENT = \"Api Management\";\r\n static DICTIONARY_FORM = \"Dictionary Form\";\r\n}","import { Component, Input } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\n\r\n@Component({\r\n selector: 'username',\r\n standalone: true,\r\n imports: [CommonModule, InputTextModule,FormsModule],\r\n templateUrl: './username.component.html',\r\n styleUrls: ['./username.component.scss'],\r\n})\r\nexport class UsernameComponent extends BaseControlComponent {\r\n\r\n \r\n}\r\n","<ng-container>\r\n <div class=\"username-control\">\r\n <span class=\"p-input-icon-left\">\r\n <i class=\"pi pi-envelope\"></i>\r\n <input pInputText type=\"text\"\r\n autocomplete=\"off\"\r\n [placeholder]=\"attributeModel.placeholder ?? ''\" \r\n [ngModel]=\"record[attributeModel.name]\"\r\n [required]=\"attributeModel.isRequired ?? false\" \r\n [disabled]=\"attributeModel.readonly ?? false\"\r\n #usernameField=\"ngModel\"\r\n (ngModelChange)=\"handleModelChange($event, usernameField.valid)\" \r\n />\r\n </span>\r\n </div>\r\n </ng-container>","import { Component , OnInit} from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BaseControlComponent } from '../../_base/base-control/base-control.component';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n@Component({\r\n selector: 'password',\r\n standalone: true,\r\n imports: [CommonModule, FormsModule],\r\n templateUrl: './password.component.html',\r\n styleUrl: './password.component.scss',\r\n})\r\nexport class PasswordComponent extends BaseControlComponent {\r\n invalidPasswordErrorMsg: string | undefined\r\n \r\n constructor(){\r\n super()\r\n }\r\n\r\n ngOninit():void{\r\n this.invalidPasswordErrorMsg = \"Invalid Password\";\r\n }\r\n\r\n}\r\n","<ng-container>\r\n\r\n <div class=\"password-control\">\r\n <span class=\"p-input-icon-left\">\r\n <i class=\"pi pi-key\"></i>\r\n <input type=\"password\" autocomplete=\"off\" pInputText [placeholder]=\"attributeModel.placeholder ?? ''\"\r\n [ngModel]=\"record[attributeModel.name]\" [required]=\"attributeModel.isRequired ?? false\" #passwordField=\"ngModel\"\r\n (ngModelChange)=\"handleModelChange($event, passwordField.valid)\" [ngClass]=\"{\r\n 'ng-dirty ng-invalid': !passwordField.valid && error == attributeModel.name\r\n }\" class=\"block p-inputtext\" />\r\n\r\n </span>\r\n </div>\r\n @if (!passwordField.valid && passwordField.dirty) {\r\n <div>\r\n <small id=\"password-help\" class=\"p-error\">{{\r\n invalidPasswordErrorMsg\r\n }}</small>\r\n </div>\r\n }\r\n\r\n</ng-container>","export class CSS {\r\n static DIALOGUE_BREAKPOINTS = {\r\n '960px': '75vw',\r\n '640px': '90vw'\r\n }\r\n static DIALOGUE_OVERFLOW = { overflow: 'auto' }\r\n static DIALOGUE_WIDTH = '100vw'\r\n static DIALOGUE_HIGHT = '100vh'\r\n}","import { SelectItem } from \"primeng/api\";\r\n\r\nexport class AttributeModel {\r\n displayText ?: string;\r\n readonly ?: boolean;\r\n name ?: any;\r\n isRequired?: boolean;\r\n placeholder?: string;\r\n maxLength?: number;\r\n infoText?: string;\r\n buttonLabel?: string;\r\n isDisabled?: boolean;\r\n customButtonWidth?: string;\r\n isPrimary?: number;\r\n title?: string;\r\n customColumnWidth?: string;\r\n customHeight?: string;\r\n icon?: string;\r\n iconPosition?: 'left' | 'right';\r\n customPadding?: string;\r\n dataSource?: string;\r\n listValueProperty?: string;\r\n listLabelProperty?: string;\r\n options?: SelectItem[];\r\n childListName?: any;\r\n childListKey?:any;\r\n inputId?:string;\r\n allowFraction?:string = 'Y'\r\n numberMode?:string;\r\n currency?:string;\r\n locale ?: 'en-GB';\r\n tooltip?:string;\r\n toolTipPosition?:string\r\n hourFormat?:string\r\n yearRange?:string\r\n showCalenderIcon ?: boolean\r\n additionalFilterList?:string\r\n additionalFilterKey?:string\r\n lookupName?:any\r\n textColorOnReadonly ?: any\r\n hideLabelOnForm?:boolean = false\r\n}","export class BaseModel{\r\n _id ?: any\r\n}","export class ERROR{\r\n static ERROR = \"Error\";\r\n static VALIDATE_API_FAILED = \"API validation failed. Please review the input and try again.\"\r\n}","import { Injectable } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { SHARED } from '../constant/SHARED';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class SessionService {\r\n\r\n constructor(public router : Router) {\r\n\r\n }\r\n\r\n getUserRole() {\r\n const role = sessionStorage.getItem('role');\r\n return role;\r\n }\r\n\r\n setUserSession(data: any): void {\r\n sessionStorage.setItem(SHARED.SESSIONKEY, JSON.stringify(data));\r\n }\r\n\r\n getUserSession(): any {\r\n const sessionData = sessionStorage.getItem(SHARED.SESSIONKEY);\r\n return sessionData ? JSON.parse(sessionData) : null;\r\n }\r\n\r\n\r\n getSessionID(){\r\n return 1;\r\n }\r\n\r\n clearSession(): void {\r\n sessionStorage.clear();\r\n localStorage.clear();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { CanActivate, ActivatedRouteSnapshot, RouterStateSnapshot, Router } from '@angular/router';\r\nimport { SessionService } from '../session.service';\r\nimport { map, Observable, of, tap } from 'rxjs';\r\n\r\n@Injectable({\r\n providedIn: 'root',\r\n})\r\nexport class AuthGuard implements CanActivate {\r\n constructor(public _sessionService : SessionService,private _router: Router) {}\r\n\r\n canActivate(\r\n next: ActivatedRouteSnapshot,\r\n state: RouterStateSnapshot\r\n ): Observable<boolean> {\r\n return of(this._sessionService.getSessionID()).pipe(\r\n tap((sessionID) => {\r\n if (!sessionID) {\r\n this._router.navigateByUrl(\"auth/login\" + \"?returnUrl=\" + state.url);\r\n }\r\n }),\r\n map((sessionID) => !!sessionID)\r\n );\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class ValidatorService {\r\n\r\n constructor() { }\r\n\r\n handleValidateRecords(record:any){\r\n return true\r\n }\r\n}\r\n","import { Component, EventEmitter, Output } from '@angular/core';\r\nimport { BehaviorSubject, Subscription } from 'rxjs';\r\nimport { ValidatorService } from '../../services/validator.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { SHARED } from '../../constant/SHARED';\r\nimport { AttributeModel } from '../../models/attribute.model';\r\nimport { BaseModel } from '../../models/base.model';\r\nimport { BaseStore } from '../../state/base.store';\r\nimport { BaseService } from '../../state/base.service';\r\n\r\n/**\r\n * BaseFormComponent \r\n */\r\n@Component({\r\n selector: 'base-form',\r\n templateUrl: './base-form.component.html',\r\n styleUrls: ['./base-form.component.scss'],\r\n providers : [ValidatorService]\r\n})\r\nexport class BaseFormComponent<T extends BaseModel> {\r\n protected subscriptions: Subscription[];\r\n record!: T;\r\n public recordChange = new BehaviorSubject<any>({});\r\n @Output() onSave = new EventEmitter<any>();\r\n @Output() onCancel = new EventEmitter<any>();\r\n\r\n\r\n constructor(protected service: BaseService<T>, protected validatorService?:ValidatorService, protected router?: Router, protected activatedRoute?: ActivatedRoute, protected baseStore?: BaseStore<T>\r\n ) {\r\n this.subscriptions = [];\r\n this.record = {} as T;\r\n }\r\n\r\n message:any[] = []\r\n attributeMode!:AttributeModel;\r\n\r\n init(): void {\r\n this.service.initList();\r\n this.baseStore?.setRecordChange(SHARED.EMPTY);\r\n let id = this.activatedRoute ? this.activatedRoute.snapshot.params[SHARED.ID] : '';\r\n if((id !== SHARED.ZERO.toString()) && id) {\r\n this.service.getById(id).subscribe((res:any) => {\r\n this.record = res;\r\n this.baseStore?.setRecordChange(res);\r\n this.recordChange.next(res);\r\n })\r\n }\r\n }\r\n\r\n handleSubmit() {\r\n let validateRecords = this.validatorService ? this.validatorService.handleValidateRecords(this.record) : true\r\n if (validateRecords) {\r\n if(this.record._id){\r\n this.handleAddRecord();\r\n } else {\r\n this.handleUdateRecord();\r\n }\r\n }\r\n }\r\n\r\n handleAddRecord(){\r\n this.service.update(this.record._id, this.record).subscribe({\r\n next: (response: T) => {\r\n console.log('Record created:', response);\r\n this.onSave.emit();\r\n },\r\n error: (error) => {\r\n console.error('Error creating record:', error);\r\n }\r\n })\r\n }\r\n\r\n handleUdateRecord(){\r\n this.service.create(this.record).subscribe({\r\n next: (response: T) => {\r\n console.log('Record created:', response);\r\n this.onSave.emit();\r\n },\r\n error: (error) => {\r\n console.error('Error creating record:', error);\r\n }\r\n })\r\n }\r\n\r\n handleCancel(){\r\n this.onCancel.emit();\r\n }\r\n \r\n}\r\n","<p>base-form works!</p>\r\n","export class LOOKUPS{\r\n static DOCUMENTTYPE = 'DocumentType'\r\n}","import { Component, Input, OnInit } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TableModule } from 'primeng/table';\r\nimport { TablePrimaryModel } from '../models/table-primary.model';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { ToggleButtonModule } from 'primeng/togglebutton';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { InputSwitchModule } from 'primeng/inputswitch';\r\nimport { InputTextModule } from 'primeng/inputtext';\r\nimport { TooltipModule } from 'primeng/tooltip';\r\nimport { Router } from '@angular/router';\r\nimport { SHARED } from '../../constant/SHARED';\r\n\r\n@Component({\r\n selector: 'lib-table-primary',\r\n standalone: true,\r\n imports: [CommonModule, TableModule, ButtonModule, ToggleButtonModule, FormsModule, InputSwitchModule, InputTextModule, TooltipModule],\r\n templateUrl: './table-primary.component.html',\r\n styleUrl: './table-primary.component.scss',\r\n})\r\nexport class TablePrimaryComponent implements OnInit {\r\n @Input() table!: TablePrimaryModel;\r\n @Input() title!: string;\r\n \r\n @Input() showStatus = true;\r\n @Input() showActions = true;\r\n @Input() showSearchBar = true;\r\n @Input() showNewRecordButton = true;\r\n @Input() showRefreshButton = true;\r\n\r\n globalFilter: string = SHARED.EMPTY;\r\n\r\n constructor(private _router: Router) {}\r\n\r\nngOnInit(): void {\r\n // Ensure that table headers are not empty\r\n if (this.table.headers.length === 0) {\r\n console.error('Table headers are missing.');\r\n }\r\n}\r\n\r\n clearSearch(table: any) {\r\n this.globalFilter = SHARED.EMPTY;\r\n table.clear(); \r\n }\r\n\r\n refreshTable() {\r\n }\r\n\r\n handleCreate() {\r\n const currentRouteURL = this._router.url;\r\n this._router.navigate([currentRouteURL + SHARED.SLASH + SHARED.ZERO])\r\n }\r\n\r\n handleEditClick(id: number) {\r\n const currentRouteURL = this._router.url;\r\n this._router.navigate([currentRouteURL + SHARED.SLASH + id])\r\n }\r\n\r\n editRow(rowData: any) {\r\n console.log('Edit Row:', rowData);\r\n }\r\n\r\n deleteRow(rowData: any) {\r\n console.log('Delete Row:', rowData);\r\n }\r\n\r\n viewRow(rowData: any) {\r\n console.log('Delete Row:', rowData);\r\n }\r\n}\r\n","<p-table #dt2 [columns]=\"table.headers\" class=\"table-primary-container\" [value]=\"table.records\">\r\n <ng-template pTemplate=\"caption\">\r\n <div class=\"table-header-wrapper flex align-items-center justify-content-between\">\r\n <h3 class=\"text-color table-title-wrapper text-color m-0\">{{title}}</h3>\r\n <div class=\"flex align-items-center justify-content-between w-full\">\r\n <div class=\"flex justify-content-end w-full\" *ngIf=\"showSearchBar\">\r\n <input pInputText type=\"text\" [(ngModel)]=\"globalFilter\" (input)=\"dt2.filterGlobal($event, 'contains')\"\r\n [placeholder]=\"'Search ' + title + '...'\" class=\"search-input-wrapper w-4\" />\r\n <p-button icon=\"pi pi-cog\" class=\"setting-icon-wrapper ml-3\"></p-button>\r\n </div>\r\n </div>\r\n </div>\r\n </ng-template>\r\n\r\n <!-- Header Template -->\r\n <ng-template pTemplate=\"header\" let-columns>\r\n <tr *ngIf=\"table.headers.length > 0\">\r\n <th *ngFor=\"let col of table.headers\" class=\"p-4\" [pSortableColumn]=\"col.name\" [ngClass]=\"col.width ? col.width : 'w-full'\">\r\n <h4 class=\"flex align-items-center table-header-title capitalize text-color font-semibold m-0\">\r\n {{ col.name }}\r\n <p-sortIcon [field]=\"col.name\" />\r\n </h4>\r\n </th>\r\n <th *ngIf=\"showActions\" class=\"table-action-title p-4\" [ngClass]=\"table.headers[0]?.width ? 'w-2' : 'w-full'\">\r\n <h4 class=\"text-color font-semibold table-header-title capitalize m-0\">Actions</h4></th>\r\n </tr>\r\n </ng-template>\r\n\r\n <!-- Table Body -->\r\n <ng-template pTemplate=\"body\" let-rowData>\r\n <tr *ngIf=\"table.headers.length > 0\" class=\"table-row-wrapper relative table-group-wrapper\">\r\n <td class=\"text-left p-4\" *ngFor=\"let col of table.headers\">\r\n <div class=\"table-text-wrapper p-0\" \r\n [ngClass]=\"{\r\n 'enable-badge-wrapper': col.name.toLowerCase() === 'status' && rowData[col.name] === 'Enable',\r\n 'disable-badge-wrapper': col.name.toLowerCase() === 'status' && rowData[col.name] === 'Disable',\r\n 'w-8': col.name.toLowerCase() === 'status',\r\n 'text-primary font-semibold': col.name.toLowerCase() === 'action' || col.name.toLowerCase() === 'name'\r\n }\"\r\n >\r\n {{ rowData[col.name] }}\r\n <p *ngIf=\"col.name.toLowerCase() === 'action'\" class=\"text-color font-normal\">{{rowData['apiEndPoint']}}</p>\r\n </div>\r\n </td>\r\n\r\n <!-- Actions -->\r\n <td *ngIf=\"showActions\" class=\"action-data-wrapper text-left p-4\">\r\n <div class=\"flex align-items-center\">\r\n <p-button icon=\"pi pi-pencil\" (click)=\"handleEditClick(rowData._id)\" class=\"edit-icon-wrapper mr-3\"></p-button>\r\n <p-button icon=\"pi pi-trash\" (click)=\"deleteRow(rowData)\" class=\"delete-icon-wrapper mr-3\"></p-button>\r\n </div>\r\n </td>\r\n <p-button icon=\"pi pi-eye\" (click)=\"viewRow(rowData)\" class=\"view-icon-wrapper icon-position-wrapper table-group-wrapper-hover:visible\"></p-button>\r\n </tr>\r\n </ng-template>\r\n</p-table>","export class Credentials {\r\n email?:string;\r\n password?:string;\r\n}","export class MESSAGE {\r\n static VALIDATE_SUCCESS_MESSAGE = \"API validation completed successfully! Your API is now ready for use.\"\r\n}","export class LISTCONFIG{\r\n static APICONFIG = [\r\n {\r\n name:\"parentApiConfigID\",\r\n dataSource : \"api-configurations\",\r\n listValueProperty: \"_id\",\r\n listLabelProperty: \"name\"\r\n }\r\n ]\r\n}","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../../../shared';\r\nimport { ApiConfigModel } from '../models/api-config.model';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig({ name: 'apiManagementStore' })\r\n\r\nexport class ApiAdminStore extends BaseStore<ApiConfigModel> {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { ApiAdminStore } from './api-admin.store';\r\nimport { Observable, tap } from 'rxjs';\r\nimport { AppConfigService, BaseService, DATASOURCES } from '../../../shared';\r\nimport { ListService } from '../../../shared/services/list.service';\r\nimport { ApiConfigModel } from '../models/api-config.model';\r\nimport { LISTCONFIG } from '../../../shared/constant/LIST-CONFIG';\r\n\r\n/**\r\n * Service for managing API configurations.\r\n */\r\n@Injectable({ providedIn: 'root' })\r\nexport class ApiAdminService extends BaseService<ApiConfigModel> {\r\n\r\n constructor(\r\n http: HttpClient,\r\n protected apiManagementStore: ApiAdminStore,\r\n private configService: AppConfigService,\r\n listService: ListService\r\n ) {\r\n super(http, apiManagementStore, configService, listService);\r\n this._pathName = DATASOURCES.APIMANAGEMENT;\r\n }\r\n\r\n protected override list : any= LISTCONFIG.APICONFIG\r\n\r\n checkApiByPathName(name:string, record:any): Observable<ApiConfigModel[]> {\r\n return this.http.post<ApiConfigModel[]>(this.apiUrl+name, record).pipe(\r\n tap((entities: ApiConfigModel[]) => this.apiManagementStore.set(entities))\r\n );\r\n }\r\n}\r\n","import { Component, Input, OnChanges } from '@angular/core';\r\nimport { Credentials } from '../../models/credentials.model';\r\nimport { ApiAdminStore } from '../../state/api-admin.store';\r\nimport { ApiConfigModel } from '../../models/api-config.model';\r\n\r\n@Component({\r\n selector: 'api-credential-form',\r\n templateUrl: './api-credential-form.component.html',\r\n styleUrl: './api-credential-form.component.scss',\r\n standalone : false\r\n})\r\nexport class ApiCredentialFormComponent implements OnChanges {\r\n\r\n @Input() record!: ApiConfigModel;\r\n\r\n credentials!: Credentials;\r\n\r\n constructor(public apiAdminStore: ApiAdminStore) {\r\n this.credentials = new Credentials();\r\n }\r\n\r\n ngOnChanges(): void {\r\n this.credentials = this.record.credentials || new Credentials();\r\n }\r\n}\r\n"," <div class=\"col-12 flex md:col-12\">\r\n\r\n <div class=\"col-12 md:col-6\">\r\n <username\r\n [store]=\"apiAdminStore\"\r\n [record]=\"credentials\"\r\n [attributeModel]=\"{\r\n readonly: false,\r\n name: 'email',\r\n isRequired: true,\r\n displayText: 'Email',\r\n placeholder: 'Enter Email'\r\n }\"\r\n ></username>\r\n </div>\r\n <div class=\"col-12 md:col-6\">\r\n <password\r\n [store]=\"apiAdminStore\"\r\n [record]=\"credentials\"\r\n [attributeModel]=\"{\r\n readonly: false,\r\n name: 'password',\r\n isRequired: true,\r\n displayText: 'password',\r\n placeholder: 'Enter Password'\r\n }\"\r\n ></password>\r\n </div>\r\n </div>\r\n","import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { Message, SelectItem } from 'primeng/api';\r\nimport { BaseFormComponent, ERROR, SHARED } from '../../../../shared';\r\nimport { ValidatorService } from '../../../../shared/services/validator.service';\r\nimport { Credentials } from '../../models/credentials.model';\r\nimport { ROUTES } from '../../../../shared/constant/ROUTES';\r\nimport { ApiAdminService } from '../../state/api-admin.service';\r\nimport { ApiAdminStore } from '../../state/api-admin.store';\r\nimport { ApiConfigModel } from '../../models/api-config.model';\r\nimport { Subscription } from 'rxjs';\r\nimport { MESSAGE } from '../../../../shared/constant/MESSAGES';\r\n\r\n\r\n/**\r\n * Form component for creating and updating API configurations.\r\n */\r\n@Component({\r\n selector: 'lib-api-admin-form',\r\n templateUrl: './api-admin-form.component.html',\r\n styleUrl: './api-admin-form.component.scss',\r\n standalone: false,\r\n encapsulation:ViewEncapsulation.None\r\n})\r\nexport class ApiAdminFormComponent extends BaseFormComponent<ApiConfigModel> implements OnInit , OnDestroy{\r\n isDisable:boolean = SHARED.TRUE;\r\n messages: Message[] = SHARED.EMPTYARRAY;\r\n name: string = SHARED.EMPTY;\r\n selectedParentId!: string;\r\n filteredRecords: string[] = SHARED.EMPTYARRAY;\r\n dropdownOptions: any[] = SHARED.EMPTYARRAY;\r\n apiPropertyList!: SelectItem[];\r\n private recordChangeSubscription: Subscription | null = null;\r\n\r\n\r\n constructor(public apiAdminService: ApiAdminService, override validatorService: ValidatorService, override router: Router, override activatedRoute: ActivatedRoute, public apiAdminStore: ApiAdminStore) {\r\n super(apiAdminService, validatorService, router, activatedRoute)\r\n this.record.credentials = new Credentials();\r\n this.record.isActive = true;\r\n }\r\n\r\n ngOnInit() {\r\n this.init()\r\n }\r\n\r\n hanldeValidateApi() {\r\n const payload = {\r\n path: this.record.path,\r\n credentials: {\r\n email : this.record.credentials.email,\r\n password : this.record.credentials.password\r\n },\r\n getByIDPath : this.record.getByIDPath,\r\n idProperty : this.record.idProperty\r\n }\r\n if (this.record.path) {\r\n this.apiAdminService.checkApiByPathName(ROUTES.VALIDATEAPI, payload).subscribe({\r\n next: (res: any) => {\r\n if (res && res.isValid) {\r\n this.isDisable = SHARED.FALSE\r\n this.messages = [{ severity: SHARED.SUCCESS, detail: MESSAGE.VALIDATE_SUCCESS_MESSAGE }];\r\n setTimeout(() => {\r\n this.messages = SHARED.EMPTYARRAY\r\n }, 3000);\r\n }\r\n },\r\n error: (error: any) => {\r\n this.messages = [{ severity: SHARED.ERROR, detail: ERROR.VALIDATE_API_FAILED }];\r\n setTimeout(() => {\r\n this.messages = SHARED.EMPTYARRAY;\r\n }, 3000);\r\n },\r\n });\r\n } else {\r\n this.messages = [{ severity: SHARED.ERROR, detail: SHARED.INVALID_API_PATH }];\r\n }\r\n }\r\n\r\n handleModelChange(event: string) {\r\n if (event) {\r\n this.apiAdminService.getById(event).subscribe((res: any) => {\r\n this.apiPropertyList = res.properties.map((property: string) => ({\r\n label: property,\r\n value: property\r\n }));\r\n })\r\n } else {\r\n this.record.parentKey = SHARED.EMPTY;\r\n this.apiPropertyList = SHARED.EMPTYARRAY;\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n if (this.recordChangeSubscription) {\r\n this.recordChangeSubscription.unsubscribe();\r\n }\r\n }\r\n}\r\n\r\n","<form-container\r\n [headerText]=\"'Api Management Form'\"\r\n [messages]=\"messages\"\r\n (onSave)=\"handleSubmit()\"\r\n [showSave]=\"true\"\r\n [disableSaveButton]=\"isDisable\"\r\n (onCancel)=\"handleCancel()\"\r\n>\r\n <div class=\"card p-fluid p-formgrid grid \">\r\n <h4 class=\"font-bold col-12 md:col-12\">Api Management Form</h4>\r\n <div class=\"col-12 md:col-6\">\r\n <text-box\r\n [store]=\"apiAdminStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n readonly: false,\r\n name: 'name',\r\n isRequired: true,\r\n displayText: 'Name',\r\n placeholder: 'Enter Name'\r\n }\"\r\n ></text-box>\r\n </div>\r\n <div class=\"col-12 md:col-6\">\r\n <text-box\r\n [store]=\"apiAdminStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n readonly: false,\r\n name: 'path',\r\n isRequired: true,\r\n displayText: 'Path',\r\n placeholder: 'Enter Path'\r\n }\"\r\n ></text-box>\r\n </div>\r\n <div class=\"col-12 md:col-6\">\r\n <text-box\r\n [store]=\"apiAdminStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n readonly: false,\r\n name: 'getByIDPath',\r\n isRequired: true,\r\n displayText: 'Get By ID Path',\r\n placeholder: 'Enter getByID Path'\r\n }\"\r\n ></text-box>\r\n </div>\r\n <div class=\"col-12 md:col-6\">\r\n <text-box\r\n [store]=\"apiAdminStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n readonly: false,\r\n name: 'idProperty',\r\n isRequired: true,\r\n displayText: 'Id Property',\r\n placeholder: 'Enter Id Property'\r\n }\"\r\n ></text-box>\r\n </div>\r\n\r\n <div class=\"col-12 md:col-2\">\r\n <button\r\n pButton\r\n pRipple\r\n type=\"button\"\r\n label=\"Validate\"\r\n (click)=\"hanldeValidateApi()\"\r\n class=\"p-button-raised\"\r\n ></button>\r\n </div>\r\n </div>\r\n <div class=\"card p-fluid p-formgrid grid \">\r\n <h4 class=\"font-bold\">Other Details</h4>\r\n <div class=\"col-12 md:col-12 p-0 m-0\">\r\n <api-credential-form [record]=\"record\"></api-credential-form>\r\n </div>\r\n <div class=\"col-12 md:col-6\">\r\n <dropdown\r\n [store]=\"apiAdminStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n name: 'parentApiConfigID',\r\n dataSource: 'api-configurations',\r\n listLabelProperty: 'name',\r\n listValueProperty: '_id', \r\n displayText: 'Select Parent',\r\n placeholder: 'Select Parent API',\r\n childListName: 'parentKey',\r\n childListKey: 'name'\r\n }\"\r\n (onInput)=\"handleModelChange($event)\"\r\n ></dropdown>\r\n\r\n </div>\r\n <div class=\"col-12 md:col-6\">\r\n <dropdown\r\n [store]=\"apiAdminStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n name:'parentKey',\r\n displayText : 'Property',\r\n placeholder: 'Select Property',\r\n options: apiPropertyList\r\n }\"></dropdown>\r\n </div>\r\n\r\n <div class=\"col-12 md:col-12\">\r\n <text-area\r\n [store]=\"apiAdminStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n readonly: false,\r\n name: 'description',\r\n isRequired: false,\r\n displayText: 'Description',\r\n placeholder: 'Enter Description'\r\n }\"\r\n ></text-area>\r\n </div>\r\n </div>\r\n</form-container>","import { Component, OnInit } from '@angular/core';\r\nimport { BaseListComponent, TableBuilder, apiHiddenHeaderList } from '../../../../shared';\r\nimport { ApiConfigModel } from '../../models/api-config.model';\r\nimport { ApiAdminService } from '../../state/api-admin.service';\r\n\r\n/**\r\n * ApiAdminListComponent\r\n */\r\n@Component({\r\n selector: 'lib-api-admin-list',\r\n templateUrl: './api-admin-list.component.html',\r\n styleUrl: './api-admin-list.component.scss',\r\n standalone : false\r\n})\r\nexport class ApiAdminListComponent extends BaseListComponent<ApiConfigModel> implements OnInit {\r\n constructor(apiAdminService : ApiAdminService, private tableBuilder : TableBuilder ){\r\n super(apiAdminService, tableBuilder)\r\n this.tableBuilder.hiddenHeaders = apiHiddenHeaderList;\r\n }\r\n ngOnInit() {\r\n this.init()\r\n }\r\n}","\r\n@if(table){\r\n <lib-table-primary [table]=\"table\">\r\n \r\n </lib-table-primary>\r\n}","import { APP_INITIALIZER, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ApiAdminFormComponent } from './components/api-admin-form/api-admin-form.component';\r\nimport { ApiAdminListComponent } from './components/api-admin-list/api-admin-list.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { AppConfigService, PasswordComponent, SharedModule, TablePrimaryComponent, UsernameComponent } from '../../shared';\r\nimport { HttpClientModule } from '@angular/common/http';\r\nimport { ButtonModule } from 'primeng/button';\r\nimport { ApiCredentialFormComponent } from './components/api-credential-form/api-credential-form.component';\r\nimport { TextAreaComponent } from '../../shared/controls/text-area/text-area.component';\r\n\r\n\r\n@NgModule({\r\n declarations: [ApiAdminFormComponent,ApiCredentialFormComponent ,ApiAdminListComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n SharedModule,\r\n HttpClientModule,\r\n ButtonModule,\r\n UsernameComponent,\r\n PasswordComponent,\r\n TextAreaComponent,\r\n TablePrimaryComponent\r\n \r\n\r\n ],\r\n exports : [ApiAdminFormComponent, ApiAdminListComponent],\r\n providers: [\r\n {\r\n provide: APP_INITIALIZER,\r\n useFactory: (configService: AppConfigService) => () =>\r\n configService.loadAppConfig(),\r\n deps: [AppConfigService],\r\n multi: true,\r\n },\r\n ],\r\n})\r\nexport class ApiAdminModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../../../shared';\r\nimport { WidgetModel } from '../models/widget.model';\r\n\r\n/**\r\n * Widget Admin Store\r\n */\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig({ name: 'widgetStore' })\r\nexport class WidgetAdminStore extends BaseStore<WidgetModel> {\r\n constructor() {\r\n super();\r\n }\r\n}\r\n","\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable, tap } from 'rxjs';\r\nimport { AppConfigService, BaseService, DATASOURCES } from '../../../shared';\r\nimport { ListService } from '../../../shared/services/list.service';\r\nimport { LISTCONFIG } from '../../../shared/constant/LIST-CONFIG';\r\nimport { WidgetAdminStore } from './widget-admin.store';\r\nimport { WidgetModel } from '../models/widget.model';\r\n\r\n/**\r\n * Service for managing widget configurations.\r\n */\r\n@Injectable({ providedIn: 'root' })\r\nexport class WidgetAdminService extends BaseService<WidgetModel> {\r\n\r\n constructor(\r\n http: HttpClient,\r\n protected apiManagementStore: WidgetAdminStore,\r\n private configService: AppConfigService,\r\n listService: ListService\r\n ) {\r\n super(http, apiManagementStore, configService, listService);\r\n this._pathName = DATASOURCES.WIDGET;\r\n }\r\n\r\n protected override list: any = [\r\n {\r\n name: \"queueID\",\r\n dataSource: DATASOURCES.QUEUES,\r\n listValueProperty: \"_id\",\r\n listLabelProperty: \"name\",\r\n },\r\n {\r\n name: \"dictionaryID\",\r\n dataSource: DATASOURCES.DICTIONARY,\r\n listValueProperty: \"_id\",\r\n listLabelProperty: \"name\",\r\n },\r\n {\r\n name: \"dictionaryItemID\",\r\n dataSource: \"data-dictionaries/attributes\",\r\n listValueProperty: \"_id\",\r\n listLabelProperty: \"key\",\r\n },\r\n {\r\n name: \"linkedWidgetID\",\r\n dataSource: DATASOURCES.WIDGET,\r\n listValueProperty: \"_id\",\r\n listLabelProperty: \"widgetName\",\r\n },\r\n\r\n ]\r\n\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { BaseListComponent, TableBuilder } from '../../../../shared';\r\nimport { WidgetModel } from '../../models/widget.model';\r\nimport { WidgetAdminService } from '../../state/widget-admin.service';\r\n\r\n/**\r\n * Widget Admin List Component\r\n */\r\n@Component({\r\n selector: 'lib-widget-admin-list',\r\n standalone: false,\r\n templateUrl: './widget-admin-list.component.html',\r\n styleUrl: './widget-admin-list.component.scss'\r\n})\r\nexport class WidgetAdminListComponent extends BaseListComponent<WidgetModel> {\r\n constructor(widgetAdminService: WidgetAdminService, private tableBuilder: TableBuilder) {\r\n super(widgetAdminService, tableBuilder)\r\n }\r\n\r\n ngOnInit() {\r\n this.init()\r\n }\r\n}","@if(table){\r\n<lib-table-primary [table]=\"table\">\r\n\r\n</lib-table-primary>\r\n}","import { BaseModel } from \"../../../shared\";\r\n\r\n/**\r\n * WidgetModel class represents the model of a widget.\r\n */\r\nexport class WidgetModel extends BaseModel {\r\n name!: string;\r\n queueID!: string;\r\n dataItems: WidgetItemModel[] = [];\r\n order?: number;\r\n headerDictionaryID!: string;\r\n subHeaderDictionaryID!: string;\r\n headerDictionaryItemID!: string;\r\n subHeaderDictionaryItemID!: string;\r\n isActive!: boolean;\r\n}\r\n\r\n/**\r\n * WidgetItemModel class represents the model of a widget item.\r\n */\r\nexport class WidgetItemModel extends BaseModel{\r\n name!: string;\r\n dictionaryItemID!: string;\r\n dictionaryID!: string;\r\n isMain!:boolean;\r\n isEditable!:boolean;\r\n linkedWidgetID!: string;\r\n}","import { Injectable } from '@angular/core';\r\nimport { BaseQuery } from '../../../shared';\r\nimport { WidgetModel } from '../models/widget.model';\r\nimport { WidgetAdminStore } from './widget-admin.store';\r\n\r\n\r\n/**\r\n * Widget Admin Query\r\n */\r\n@Injectable({ providedIn: 'root' })\r\nexport class WidgetAdminQuery extends BaseQuery<WidgetModel> {\r\n\r\n constructor(protected override store: WidgetAdminStore) {\r\n super(store);\r\n }\r\n\r\n}\r\n","\r\nimport { ChangeDetectorRef, Component, OnInit } from '@angular/core';\r\nimport { WidgetItemModel, WidgetModel } from '../../models/widget.model';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { BaseFormComponent, SHARED } from '../../../../shared';\r\nimport { WidgetAdminService } from '../../state/widget-admin.service';\r\nimport { WidgetAdminQuery } from '../../state/widget-admin.query';\r\nimport { WidgetAdminStore } from '../../state/widget-admin.store';\r\nimport { ValidatorService } from '../../../../shared/services/validator.service';\r\nimport { List } from '../../../../shared/models/list.model';\r\nimport { SelectItem } from 'primeng/api';\r\n\r\n/**\r\n * WidgetAdminFormComponent\r\n */\r\n@Component({\r\n selector: 'lib-widget-admin-form',\r\n standalone: false,\r\n templateUrl: './widget-admin-form.component.html',\r\n styleUrl: './widget-admin-form.component.scss',\r\n})\r\nexport class WidgetAdminFormComponent extends BaseFormComponent<WidgetModel> implements OnInit {\r\n\r\n widgetItem!: WidgetItemModel;\r\n widgetItems: WidgetItemModel[] = [];\r\n dictionaries: any[] = [];\r\n headerDictionaryItems: any[]=[];\r\n subHeaderDictionaryItems: any[] = [];\r\n dictionaryItemArray: any[][] = [];\r\n widgetOptionsArray: SelectItem[] = [];\r\n\r\n constructor(\r\n override service: WidgetAdminService,\r\n override validatorService: ValidatorService,\r\n public widgetStore: WidgetAdminStore,\r\n private query: WidgetAdminQuery,\r\n override router: Router,\r\n override activatedRoute: ActivatedRoute\r\n ) {\r\n super(service, validatorService, router, activatedRoute);\r\n this.record = new WidgetModel();\r\n this.widgetItem = new WidgetItemModel();\r\n }\r\n\r\n ngOnInit(): void {\r\n super.init();\r\n this.recordChange.asObservable().subscribe((record) => {\r\n this.handleQueueChange(record.queueID);\r\n this.handleHeaderDictionarySelect(record.headerDictionaryID);\r\n this.handleSubHeaderDictionarySelect(record.subHeaderDictionaryID);\r\n record.dataItems.forEach((item:WidgetItemModel, index:number) => {\r\n this.handleWidgetItemDictionarySelect(item.dictionaryID, index);\r\n });\r\n });\r\n }\r\n\r\n handleWidgetItemAddBtnClick() {\r\n this.record.dataItems = [...this.record.dataItems, new WidgetItemModel()];\r\n }\r\n\r\n handleQueueChange(event:any){\r\n this.query.getLists().subscribe((allLists: List[]) => {\r\n const allDictionaryRecords = allLists.find((list) => list.forProperty === 'dictionaryID')?.records;\r\n this.dictionaries = allDictionaryRecords?.filter((item) => item.queueID === event) || [];\r\n });\r\n }\r\n\r\n handleHeaderDictionarySelect(dictionaryId:string){\r\n this.query.getLists().subscribe((allLists: List[]) => {\r\n const allDictionaryItemRecords = allLists.find((list) => list.forProperty === 'dictionaryItemID')?.records;\r\n this.headerDictionaryItems = allDictionaryItemRecords?.filter((item) => item.dictionaryID === dictionaryId) || [];\r\n });\r\n }\r\n\r\n handleSubHeaderDictionarySelect(dictionaryId: any) {\r\n this.query.getLists().subscribe((allLists: List[]) => {\r\n const allDictionaryItemRecords = allLists.find((list) => list.forProperty === 'dictionaryItemID')?.records;\r\n this.subHeaderDictionaryItems = allDictionaryItemRecords?.filter((item) => item.dictionaryID === dictionaryId) || [];\r\n });\r\n }\r\n\r\n handleWidgetItemDictionarySelect(dictionaryId: any, index: number) {\r\n this.query.getLists().subscribe((allLists: List[]) => {\r\n const allDictionaryItemRecords = allLists.find((list) => list.forProperty === 'dictionaryItemID')?.records;\r\n this.dictionaryItemArray[index] = allDictionaryItemRecords?.filter((item) => item.dictionaryID === dictionaryId) || [];\r\n });\r\n }\r\n\r\n}","<div class=\"grid\">\r\n <div class=\"col-12\">\r\n <div class=\"card\">\r\n <form-container [record]=\"record\" (onSave)=\"handleSubmit()\" (onCancel)=\"handleCancel()\" [messages]=\"message\"\r\n [showSave]=\"true\">\r\n\r\n <div class=\"col-12 md:col-12 mt-2 mb-2 flex\">\r\n <div class=\"col-5 md:col-5 mt-2 mb-2\">\r\n <text-box [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n readonly: false,\r\n name: 'name',\r\n isRequired: true,\r\n displayText: 'Name',\r\n placeholder: 'Enter Widget Name'\r\n }\"></text-box>\r\n </div>\r\n\r\n <div class=\"col-5 md:col-5 mt-2 mb-2\">\r\n <dropdown [store]=\"widgetStore\" [record]=\"record\" [attributeModel]=\"{\r\n name:'queueID',\r\n displayText : 'Select Queue 2',\r\n isRequired:true,\r\n }\" (onInput)=\"handleQueueChange($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"col-2 md:col-2 mt-5\">\r\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'isActive',\r\n displayText : 'Active',\r\n }\">\r\n </check-box>\r\n </div>\r\n </div>\r\n <div class=\"flex\">\r\n <div class=\"col-6 md:col-6 mt-2 mb-2 flex\">\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\"\r\n [attributeModel]=\"{\r\n name:'headerDictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n options: dictionaries\r\n }\" (onInput)=\"handleHeaderDictionarySelect($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\"\r\n [attributeModel]=\"{\r\n name:'headerDictionaryItemID',\r\n listLabelProperty:'key',\r\n listValueProperty:'_id',\r\n displayText : 'Select Header Item',\r\n options: headerDictionaryItems\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n <div class=\"col-6 md:col-6 mt-2 mb-2 flex\">\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\"\r\n [attributeModel]=\"{\r\n name:'subHeaderDictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n options: dictionaries\r\n }\" (onInput)=\"handleSubHeaderDictionarySelect($event)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-6 pl-2 pb-0 mb-2 md:mr-2 md:col-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"record\"\r\n [attributeModel]=\"{\r\n name:'subHeaderDictionaryItemID',\r\n listLabelProperty:'key',\r\n listValueProperty:'_id',\r\n displayText : 'Select SubHeader Item',\r\n options: subHeaderDictionaryItems\r\n }\">\r\n </dropdown>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"field p-0 pr-2 col-12 md:col-2\">\r\n <div class=\"card m-0 p-0 mb-2\">\r\n <div class=\"mt-3 w-full flex\">\r\n <button pButton pRipple label=\"Add Field\" routerLinkActive=\"router-link-active\"\r\n icon=\"pi pi-plus font-semibold\"\r\n class=\"py-3 justify-content-center font-semibold w-full border-round\"\r\n (click)=\"handleWidgetItemAddBtnClick()\">Add Widget Item</button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n\r\n <!-- Widget Items -->\r\n <div class=\"feild-card col-12 md:col-12 flex\"\r\n *ngFor=\"let widgetItem of record.dataItems; let i = index;\">\r\n <div class=\"field col-2 col-sm-6\">\r\n <text-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name : 'name',\r\n readonly : false,\r\n displayText : 'Item Label',\r\n isRequired : true,\r\n }\"></text-box>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\"\r\n [attributeModel]=\"{\r\n name:'dictionaryID',\r\n listLabelProperty:'name',\r\n listValueProperty:'_id',\r\n displayText : 'Select Dictionary',\r\n isRequired:true,\r\n options: dictionaries\r\n }\" (onInput)=\"handleWidgetItemDictionarySelect($event, i)\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-2 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\"\r\n [attributeModel]=\"{\r\n name:'dictionaryItemID',\r\n listLabelProperty:'key',\r\n listValueProperty:'_id',\r\n displayText : 'Select Properties',\r\n isRequired:true,\r\n options: dictionaryItemArray[i]\r\n }\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-3 col-sm-6\">\r\n <dropdown [store]=\"widgetStore\" [isStaticDropdown]=\"true\" [record]=\"widgetItem\"\r\n [attributeModel]=\"{\r\n name:'linkedWidgetID',\r\n listLabelProperty:'widgetName',\r\n listValueProperty:'_id',\r\n displayText : 'Select Linked Widget',\r\n }\">\r\n </dropdown>\r\n </div>\r\n <div class=\"field col-3 m-0 flex justify-content-around md:col-3 mt-4\">\r\n <div class=\"m-0\">\r\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'isMain',\r\n displayText : 'Add to Main ?',\r\n }\">\r\n </check-box>\r\n </div>\r\n <div class=\"m-0\">\r\n <check-box [store]=\"widgetStore\" [record]=\"widgetItem\" [attributeModel]=\"{\r\n name:'isEditable',\r\n displayText : 'Is Editable ?',\r\n }\">\r\n </check-box>\r\n </div>\r\n </div>\r\n </div>\r\n </form-container>\r\n </div>\r\n </div>\r\n</div>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ButtonComponent, CheckBoxComponent, SharedModule, TablePrimaryComponent, TextBoxComponent } from '../../shared';\r\nimport { DropdownComponent } from '../../shared/controls/dropdown/dropdown.component';\r\nimport { WidgetAdminListComponent } from './components/widget-admin-list/widget-admin-list.component';\r\nimport { WidgetAdminFormComponent } from './components/widget-admin-form/widget-admin-form.component';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\n\r\n\r\n/**\r\n * Module for managing widgets.\r\n */\r\n@NgModule({\r\n declarations: [WidgetAdminListComponent, WidgetAdminFormComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n SharedModule,\r\n TablePrimaryComponent,\r\n DropdownComponent,\r\n CheckBoxComponent,\r\n ButtonComponent,\r\n TextBoxComponent\r\n ],\r\n exports: [WidgetAdminListComponent, WidgetAdminFormComponent]\r\n})\r\nexport class QWWidgetAdminModule { }\r\n","import { Injectable } from '@angular/core';\r\nimport { StoreConfig } from '@datorama/akita';\r\nimport { BaseStore } from '../../../shared/state/base.store';\r\nimport { AdminActionModel } from '../models/admin-action.model';\r\n\r\n@Injectable({ providedIn: 'root' })\r\n@StoreConfig({ name: 'action' })\r\nexport class AdminActionStore extends BaseStore<AdminActionModel> {\r\n\r\n constructor() {\r\n super();\r\n }\r\n\r\n}","\r\nimport { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { AdminActionModel } from '../models/admin-action.model';\r\nimport { AdminActionStore } from './admin-action.store';\r\nimport { DATASOURCES } from '../../../shared/constant/DATASOURCES';\r\nimport { BaseService } from '../../../shared/state/base.service';\r\nimport { AppConfigService } from '../../../shared/services/app-config.service';\r\nimport { ListService } from '../../../shared/services/list.service';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class AdminActionService extends BaseService<AdminActionModel> {\r\n\r\n constructor(public actionStore: AdminActionStore, http: HttpClient, appConfigService : AppConfigService, listService:ListService) {\r\n super(http, actionStore, appConfigService,listService);\r\n this._pathName = DATASOURCES.ACTIONS;\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\r\nimport { BaseListComponent } from '../../../../shared/_base/base-list/base-list.component';\r\nimport { AdminActionModel } from '../../models/admin-action.model';\r\nimport { TableBuilder } from '../../../../shared/services/table.builder';\r\nimport { AdminActionService } from '../../state/admin-action.service';\r\nimport { actionHiddenHeaderList, actionList, actionTableColumnWidthList } from '../../../../shared/constant/SHARED';\r\n\r\n@Component({\r\n selector: 'lib-admin-action-list',\r\n standalone : false,\r\n templateUrl: './admin-action-list.component.html',\r\n styleUrl: './admin-action-list.component.scss'\r\n})\r\nexport class AdminActionListComponent extends BaseListComponent<AdminActionModel>{\r\n constructor(service: AdminActionService, private tableBuilder: TableBuilder){\r\n super(service, tableBuilder)\r\n this.tableBuilder.hiddenHeaders = actionHiddenHeaderList;\r\n } \r\n\r\n ngOnInit() {\r\n const actionTableColumnWidths = actionTableColumnWidthList;\r\n this.table = this.tableBuilder.buildTable(actionList, actionTableColumnWidths);\r\n }\r\n}","<div class=\"dicitonary-list-wrapper\">\r\n @if(table){\r\n <lib-table-primary [title]=\"'Actions'\" [table]=\"table\"></lib-table-primary>\r\n }\r\n</div>","import { Component, OnInit } from '@angular/core';\r\nimport { BaseFormComponent } from '../../../../shared/_base/base-form/base-form.component';\r\nimport { AdminActionModel } from '../../models/admin-action.model';\r\nimport { Message } from 'primeng/api';\r\nimport { SHARED } from '../../../../shared/constant/SHARED';\r\nimport { AdminActionService } from '../../state/admin-action.service';\r\nimport { ValidatorService } from '../../../../shared/services/validator.service';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { AdminActionStore } from '../../state/admin-action.store';\r\n\r\n@Component({\r\n selector: 'lib-admin-action-form',\r\n standalone : false,\r\n templateUrl: './admin-action-form.component.html',\r\n styleUrl: './admin-action-form.component.scss'\r\n})\r\nexport class AdminActionFormComponent extends BaseFormComponent<AdminActionModel> {\r\n messages: Message[] = SHARED.EMPTYARRAY;\r\n apiConfigList: any[] = [];\r\n queueList: any[] = [];\r\n\r\n constructor(public adminActionService: AdminActionService, override validatorService: ValidatorService, override router: Router, override activatedRoute: ActivatedRoute, public adminActionStore: AdminActionStore) {\r\n super(adminActionService, validatorService, router, activatedRoute)\r\n }\r\n}\r\n","<form-container\r\n [headerText]=\"'Actions / Actions Form'\"\r\n [messages]=\"messages\"\r\n (onSave)=\"handleSubmit()\"\r\n [showSave]=\"true\"\r\n>\r\n <div class=\"card p-fluid p-formgrid grid \">\r\n <h4 class=\"font-bold col-12 md:col-12\">Actions Form</h4>\r\n <div class=\"col-12 md:col-6\">\r\n <text-box\r\n [store]=\"adminActionStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n readonly: false,\r\n name: 'actionName',\r\n isRequired: true,\r\n displayText: 'Action Name',\r\n placeholder: 'Enter Action Name'\r\n }\"\r\n ></text-box>\r\n </div>\r\n \r\n <div class=\"col-12 md:col-6\">\r\n <dropdown\r\n [store]=\"adminActionStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n name:'apiEndPoint',\r\n isRequired: true,\r\n displayText : 'End Point',\r\n placeholder: 'Select End Point',\r\n options: apiConfigList\r\n }\"></dropdown>\r\n </div>\r\n\r\n <div class=\"col-12 md:col-12\">\r\n <text-area\r\n [store]=\"adminActionStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n readonly: false,\r\n name: 'prompt',\r\n isRequired: true,\r\n displayText: 'Prompt',\r\n placeholder: 'Enter prompt'\r\n }\"\r\n ></text-area>\r\n </div>\r\n\r\n <div class=\"col-12 md:col-6\">\r\n <dropdown\r\n [store]=\"adminActionStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n name:'queue',\r\n isRequired: true,\r\n displayText : 'Queue',\r\n placeholder: 'Select Queue',\r\n options: queueList\r\n }\"></dropdown>\r\n </div>\r\n\r\n <div class=\"col-12 md:col-2 flex align-items-end justify-content-end validate-btn-wrapper\">\r\n <button\r\n pButton\r\n pRipple\r\n type=\"button\"\r\n label=\"Validate\"\r\n class=\"p-button-raised\"\r\n ></button>\r\n </div>\r\n\r\n <div class=\"col-12 md:col-12\">\r\n <text-area\r\n [store]=\"adminActionStore\"\r\n [record]=\"record\"\r\n [attributeModel]=\"{\r\n readonly: false,\r\n name: 'formConfiguration',\r\n isRequired: true,\r\n displayText: 'Form Configuration',\r\n placeholder: 'Enter form configuration'\r\n }\"\r\n ></text-area>\r\n </div>\r\n </div>\r\n \r\n</form-container>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AdminActionListComponent } from './components/admin-action-list/admin-action-list.component';\r\nimport { SharedModule, TablePrimaryComponent } from '../../shared';\r\nimport { AdminActionFormComponent } from './components/admin-action-form/admin-action-form.component';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { TextAreaComponent } from '../../shared/controls/text-area/text-area.component';\r\nimport { ButtonModule } from 'primeng/button';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [AdminActionListComponent, AdminActionFormComponent],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n SharedModule,\r\n TablePrimaryComponent,\r\n TextAreaComponent,\r\n ButtonModule\r\n ],\r\n exports: [AdminActionListComponent, AdminActionFormComponent]\r\n})\r\nexport class ActionAdminModule { }\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class DdAdminModule { }\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-dd-admin-form',\r\n imports: [],\r\n templateUrl: './dd-admin-form.component.html',\r\n styleUrl: './dd-admin-form.component.css'\r\n})\r\nexport class DdAdminFormComponent {\r\n\r\n}\r\n","<p>dd-admin-form works!</p>\r\n","import { Component } from '@angular/core';\r\n\r\n@Component({\r\n selector: 'lib-dd-admin-list',\r\n imports: [],\r\n templateUrl: './dd-admin-list.component.html',\r\n styleUrl: './dd-admin-list.component.css'\r\n})\r\nexport class DdAdminListComponent {\r\n\r\n}\r\n","<p>dd-admin-list works!</p>\r\n","/*\r\n * Public API Surface of cat-qw-lib\r\n */\r\n\r\nexport * from './lib/admin/api-admin/api-admin.module';\r\nexport * from './lib/admin/widget-admin/widget-admin.module';\r\nexport * from './lib/admin/api-admin/components/api-admin-form/api-admin-form.component';\r\nexport * from './lib/admin/api-admin/components/api-admin-list/api-admin-list.component';\r\nexport * from './lib/admin/widget-admin/components/widget-admin-form/widget-admin-form.component';\r\nexport * from './lib/admin/widget-admin/components/widget-admin-list/widget-admin-list.component';\r\n\r\nexport * from './lib/admin/action-admin/action-admin.module';\r\nexport * from './lib/admin/action-admin/components/admin-action-list/admin-action-list.component';\r\nexport * from './lib/admin/action-admin/components/admin-action-form/admin-action-form.component';\r\nexport * from './lib/admin/dd-admin/dd-admin.module'\r\nexport * from './lib/admin/dd-admin/components/dd-admin-form/dd-admin-form.component'\r\nexport * from './lib/admin/dd-admin/components/dd-admin-list/dd-admin-list.component'\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.BaseStore","i3","i2","i4","i1","i2.AppConfigService","i2.BaseStore","i3.AppConfigService","i4.ListService","i1.BaseService","i2.TableBuilder","i1.ListService","i1.DateParserService","tap","i1.SessionService","i2.ValidatorService","i4.BaseStore","i5","i6","i2.ApiAdminStore","i1.ApiAdminStore","i2.UsernameComponent","i3.PasswordComponent","i1.ApiAdminService","i4.ApiAdminStore","i5.TextBoxComponent","i6.DropdownComponent","i7.FormContainerComponent","i8","i9.TextAreaComponent","i10.ApiCredentialFormComponent","i3.TablePrimaryComponent","i2.WidgetAdminStore","i1.WidgetAdminService","i1.WidgetAdminStore","i3.WidgetAdminStore","i4.WidgetAdminQuery","i7.TextBoxComponent","i8.DropdownComponent","i9.FormContainerComponent","i10.CheckBoxComponent","i1.AdminActionStore","i1.AdminActionService","i4.AdminActionStore","i8.TextAreaComponent","i9"],"mappings":"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"}