{"version":3,"file":"app-58331396.9d7fd22a8c4a5bd9.bundle.js","mappings":"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","sources":["webpack://client-app/./src/app/project/manual-entries/manual-entries-list.scss","webpack://client-app/./src/app/project/materials/materials-list.scss","webpack://client-app/./src/app/project/manual-entries/manual-entries-list.html","webpack://client-app/./src/app/project/materials/materials-list.html","webpack://client-app/./src/app/project/manual-entries/manual-entries-list.ts","webpack://client-app/./src/app/project/materials/materials-list.ts"],"sourcesContent":["// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".manual-entries-list .headers{grid-template-columns:calc(16px + 15px * 2) minmax(400px, 1fr) repeat(4, minmax(200px, 1fr))}.manual-entries-list .main .element{grid-template-columns:calc(16px + 15px * 2) minmax(200px, 1fr)}.manual-entries-list .cell-wrapper{display:grid;grid-template-columns:minmax(400px, 1fr) repeat(4, minmax(200px, 1fr))}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/app/project/manual-entries/manual-entries-list.scss\"],\"names\":[],\"mappings\":\"AAQC,8BACC,4FAP8B,CAW9B,oCACC,8DAX8B,CAgB/B,mCACC,YAAA,CACA,sEAjBqC\",\"sourcesContent\":[\"@import \\\"src/resources/customized-styles/variables\\\";\\r\\n\\r\\n$grid-template-columns--header: calc(16px + #{$gutter} * 2) minmax(min(400px), 1fr) repeat(4, minmax(200px, 1fr));\\r\\n$grid-template-columns--element: calc(16px + #{$gutter} * 2) minmax(200px, 1fr);\\r\\n$grid-template-columns--element-values: minmax(min(400px), 1fr) repeat(4, minmax(200px, 1fr));\\r\\n\\r\\n.manual-entries-list {\\r\\n\\r\\n\\t.headers {\\r\\n\\t\\tgrid-template-columns: $grid-template-columns--header;\\r\\n\\t}\\r\\n\\r\\n\\t.main {\\r\\n\\t\\t.element {\\r\\n\\t\\t\\tgrid-template-columns: $grid-template-columns--element;\\r\\n\\t\\t}\\r\\n\\t}\\r\\n\\r\\n\\t.cell {\\r\\n\\t\\t&-wrapper {\\r\\n\\t\\t\\tdisplay: grid;\\r\\n\\t\\t\\tgrid-template-columns: $grid-template-columns--element-values;\\r\\n\\t\\t}\\r\\n\\t}\\r\\n}\\r\\n\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Imports\nimport ___CSS_LOADER_API_SOURCEMAP_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/sourceMaps.js\";\nimport ___CSS_LOADER_API_IMPORT___ from \"../../../../node_modules/css-loader/dist/runtime/api.js\";\nvar ___CSS_LOADER_EXPORT___ = ___CSS_LOADER_API_IMPORT___(___CSS_LOADER_API_SOURCEMAP_IMPORT___);\n// Module\n___CSS_LOADER_EXPORT___.push([module.id, \".materials-headline{padding-left:20px;padding-bottom:5px}#materials_div{height:92vh;width:100%;overflow:auto}#materials_table{table-layout:fixed;white-space:nowrap;border-collapse:collapse}#materials_table td,#materials_table th{overflow:hidden;padding-left:10px}\", \"\",{\"version\":3,\"sources\":[\"webpack://./src/app/project/materials/materials-list.scss\"],\"names\":[],\"mappings\":\"AAAA,oBAAA,iBAAA,CAAA,kBAAA,CAEA,eACI,WAAA,CACA,UAAA,CACA,aAAA,CAGJ,iBAEI,kBAAA,CACA,kBAAA,CACA,wBAAA,CAGJ,wCACI,eAAA,CACA,iBAAA\",\"sourcesContent\":[\".materials-headline { padding-left: 20px; padding-bottom: 5px;}\\r\\n\\r\\n#materials_div { \\r\\n height: 92vh; \\r\\n width: 100%;\\r\\n overflow: auto;\\r\\n }\\r\\n\\r\\n#materials_table { \\r\\n // width: 100%; /*Must be set for fixed to WORK.*/ /*Not sure why it was written*/\\r\\n table-layout: fixed;\\r\\n white-space: nowrap;\\r\\n border-collapse: collapse; \\r\\n}\\r\\n\\r\\n#materials_table td,#materials_table th { \\r\\n overflow: hidden;\\r\\n padding-left: 10px; \\r\\n // zborder-width: 1px;\\r\\n // zborder-style: dotted; \\r\\n}\\r\\n\\r\\n \"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","module.exports = \"\\r\\n\";","module.exports = \"\\r\\n\";","import { EventAggregator, Subscription } from 'aurelia-event-aggregator';\r\nimport { EntryTypes, ManualEntryDto } from './../../models/manual-entry-dto';\r\nimport { ManualEntryEditor } from './../../components/modals/manual-entry-editor/manual-entry-editor';\r\n\r\nimport { AppContextService } from 'app/services/app-context-service';\r\nimport { ModalService } from 'app/services/modal-service';\r\nimport { autoinject } from 'aurelia-framework';\r\nimport { ApiClient } from 'app/services/api-client';\r\nimport { ListService } from 'app/services/list-service';\r\nimport { PrjUnit } from 'app/administration/projects/manage/unit-settings';\r\nimport { DialogCloseResult } from 'aurelia-dialog';\r\n\r\n@autoinject\r\nexport class ManualEntriesList {\r\n\tpublic column: string = \"name\";\r\n\tprivate columnsToSearch: string[] = ['name', 'entryType', 'quantity', 'quantityUnit.unitString', 'weighting'];\r\n\tpublic searchTerm: string = \"\";\r\n\tpublic viewContext: string;\r\n\tprivate subscriptions: Subscription[] = [];\r\n\tpublic displayState: { icon: string, direction: string } | undefined;\r\n public manualEntries: ManualEntryDto[] = [];\r\n public selectedManualEntries: ManualEntryDto[] = [];\r\n public unitTypes: PrjUnit[] = [];\r\n private allSelected: boolean = false;\r\n\tpublic entryTypes: EntryTypes[] = [EntryTypes.Main, EntryTypes.Option, EntryTypes.Regulation];\r\n\r\n\tconstructor(private apiClient: ApiClient, private modal: ModalService, private appContext: AppContextService, private listService: ListService, private events: EventAggregator) {\r\n\t\tthis.viewContext = \"TopBar\";\r\n\t}\r\n\r\n\tasync activate(params: any, routeConfig: any, navigationInstruction: any) {\r\n\t\tif (params.projectId) {\r\n\t\t\tthis.appContext.setProject(params.projectId);//in-activate.\r\n\t\t\tawait this.getManualEntries();\r\n\t\t\tthis.unitTypes = await this.apiClient.project(params.projectId).get(\"Project/GetProjectUnits\").jsonResult();\r\n\t\t}\r\n\t\tthis.displayState = this.listService.displayState;\r\n\t\t\r\n\t\tconst searchHandler = (data: any) => this.handleSearchEvent(data);\r\n\t\tthis.subscriptions = [\r\n\t\t\tthis.events.subscribe(this.viewContext + \":SearchTermChanged\", searchHandler)\r\n\t\t];\r\n\t}\r\n\r\n\tdetached() {\r\n\t\tthis.subscriptions.forEach(subscription => (\r\n\t\t\tsubscription.dispose()\r\n\t\t));\r\n\t}\r\n\r\n\tprivate handleSearchEvent(data: string) {\r\n\t\tthis.searchTerm = data;\r\n\t}\r\n\r\n\taddManualEntry() {\r\n\t\tthis.modal.OpenModal(ManualEntryEditor).whenClosed(async (newME:DialogCloseResult) => {\r\n\t\t\tconsole.log('DialogCloseResult(whenClosed):',newME);\r\n\t\t\tif (!newME.wasCancelled && Boolean(newME.output)) {\r\n\t\t\t\tlet o: ManualEntryDto = newME.output;\r\n\t\t\t\tconsole.log('addManualEntry, ManualEntryDto:', o.quantityPrecise, o.quantity, o.quantity_UnitType, o.selected); //quantityUnit\r\n\r\n\t\t\t\tawait this.apiClient.project(this.appContext.projectId)\r\n\t\t\t\t\t.postJson(\"ManualEntry/CreateManualEntryV2\", newME.output)\r\n\t\t\t\t\t.handleError(\"Manual entry could not be created\", \"Please contact Ajour Support\")\r\n\t\t\t\t\t.noResponse();\r\n\r\n\t\t\t\tconsole.log('after CreateManualEntryV2');\r\n\t\t\t}\r\n\t\t}).finally(async () => this.getManualEntries());\r\n\t}\r\n\r\n\teditManualEntry(manualEntry: ManualEntryDto) {\r\n\t\tthis.modal.OpenModal(ManualEntryEditor, manualEntry).whenClosed(async (exME:DialogCloseResult) => {\r\n\t\t\tif (!exME.wasCancelled) {\r\n\t\t\t\tlet outputManualEntry:ManualEntryDto = exME.output;\r\n\t\t\t\tlet prjApiClient = this.apiClient.project(this.appContext.projectId); \r\n\t\t\t\tawait prjApiClient.postJson(\"ManualEntry/UpdateManualEntry\", outputManualEntry)\r\n\t\t\t\t.handleError(\"Manual entry could not be updated\", \"Please contact Ajour Support\")\r\n\t\t\t\t.noResponse();\r\n\t\t\t}\r\n\t\t}).finally(async () => this.getManualEntries());\r\n\t}\r\n\r\n\tpublic async delete(){\r\n\t\tlet ids: string[] = this.selectedManualEntries.map(x => x.id);\r\n\t\tawait this.apiClient.project(this.appContext.projectId)\r\n\t\t\t.postJson('ManualEntry/DeleteManualEntries', ids)\r\n\t\t\t.handleErrorUsingReason('Could not delete manual entries')\r\n\t\t\t.jsonResult()\r\n\t\t\t//.then(result =>{\r\n\t\t\t//\tthis.apiClient.project(this.appContext.projectId).postJson('ParameterDefinitions/Delete', result).handleErrorUsingReason('Parameter definition could not be deleted').noResponse();\r\n\t\t\t//})\r\n\t\t\t.finally(() => {\r\n\t\t\t\tconsole.log('DeleteManualEntries finally');\r\n this.getManualEntries().finally(() => {\r\n this.selectedManualEntries = [];\r\n this.allSelected = false;\r\n });\r\n });\r\n\t}\r\n\r\n\tprivate async getManualEntries() {\r\n\t\tthis.manualEntries = await this.apiClient.project(this.appContext.projectId).get(\"ManualEntry/Get\").handleErrorUsingReason('Could not get manual entries').jsonResult();\r\n\t}\r\n\r\n\tpublic async sortBy(columnName: string) {\r\n\t\tawait this.listService.sortBy(columnName).then(result => {\r\n\t\t\tthis.column = result.column;\r\n\t\t\tthis.displayState = result.displayState;\r\n\t\t});\r\n\t}\r\n\r\n \tpublic async toggleManualEntry() {\r\n\t\tawait this.listService.toggleElement(this.manualEntries).then(result => {\r\n\t\t\tthis.selectedManualEntries = result.selected;\r\n\t\t\tthis.allSelected = result.allSelected;\r\n\t\t});\r\n\t}\r\n\r\n\tpublic async toggleAll() {\r\n\t\tawait this.listService.toggleAll(this.manualEntries, this.searchTerm, this.columnsToSearch).then(result => {\r\n\t\t\tif (result) {\r\n\t\t\t\tthis.selectedManualEntries = result.selected;\r\n\t\t\t\tthis.allSelected = result.allSelected;\r\n\t\t\t}\r\n\t\t});\r\n\t}\r\n}\r\n","import { ApiClient, RequestMethod } from \"app/services/api-client\";\r\nimport { AppContextService } from \"app/services/app-context-service\";\r\nimport { autoinject } from 'aurelia-framework';\r\n\r\n@autoinject\r\nexport class MaterialsList {\r\n materials:PrjMaterial[] = []; \r\n //public api:RequestMethod; \r\n\r\n constructor(public apiClient: ApiClient, public appContext:AppContextService){}\r\n \r\n\tasync activate(params: any, routeConfig: any, navigationInstruction: any) {\r\n console.log('MatList-activate, params-prj:', params.projectId, params);\r\n\t\tif (params.projectId) { this.appContext.setProject(params.projectId); }//in-activate.\r\n\r\n this.initMats(); //await this.initMats();\r\n }\r\n\r\n async initMats() { \r\n let prj = this.appContext.projectId;\r\n console.log('initMats, prj:', prj);\r\n let api = this.apiClient.project(prj);\r\n // do we risk a cache-effect by using get instead of post?\r\n this.materials = await api.get('Materials/GetMatTypes').jsonResult(); \r\n //console.log(this.materials);\r\n }\r\n}\r\n\r\ninterface PrjMaterial {\r\n id:string;\r\n name:string;\r\n project_Id:string;\r\n created:Date; //string;\r\n structuralAsset_Id:string;\r\n thermalAsset_Id:string;\r\n materialCategory:string;\r\n materialClass:string;\r\n\r\n typeCount:number;\r\n typeId:string; \r\n typeName:string;\r\n familyId:string; \r\n familyName:string;\r\n}\r\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","exports","ManualEntriesList","constructor","apiClient","modal","appContext","listService","events","column","columnsToSearch","searchTerm","subscriptions","manualEntries","selectedManualEntries","unitTypes","allSelected","entryTypes","this","viewContext","async","params","routeConfig","navigationInstruction","projectId","setProject","getManualEntries","project","get","jsonResult","displayState","subscribe","data","handleSearchEvent","detached","forEach","subscription","dispose","addManualEntry","OpenModal","whenClosed","newME","console","log","wasCancelled","Boolean","output","o","quantityPrecise","quantity","quantity_UnitType","selected","postJson","handleError","noResponse","finally","editManualEntry","manualEntry","exME","outputManualEntry","prjApiClient","ids","map","x","handleErrorUsingReason","columnName","sortBy","then","result","toggleElement","toggleAll","autoinject","MaterialsList","materials","initMats","prj","api"],"sourceRoot":""}