{"version":3,"file":"app-5d7ddb5d.174698fc8a852bf1.bundle.js","mappings":"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","sources":["webpack://client-app/./src/app/project/dashboard/models-overview/models-overview.scss","webpack://client-app/./src/app/project/dashboard/pending-members/pending-members.scss","webpack://client-app/./src/app/project/dashboard/project-members/project-members.scss","webpack://client-app/./src/app/project/dashboard/routes/dashboard-routes.scss","webpack://client-app/./src/app/project/dashboard/models-overview/models-overview.html","webpack://client-app/./src/app/project/dashboard/pending-members/pending-members.html","webpack://client-app/./src/app/project/dashboard/project-members/project-members.html","webpack://client-app/./src/app/project/dashboard/routes/dashboard-routes.html","webpack://client-app/./src/app/project/dashboard/models-overview/models-overview.ts","webpack://client-app/./src/app/project/dashboard/pending-members/pending-members.ts","webpack://client-app/./src/app/project/dashboard/project-members/project-members.ts","webpack://client-app/./src/app/project/dashboard/routes/dashboard-routes.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, `.models-overview-container{height:100%;width:100%}.models-overview-container-top-area{height:30px;width:100%}.models-overview-container-top-area-left{float:left}.models-overview-container-top-area-right{float:right}.models-overview-container-top-area-right h5:hover{cursor:pointer}.models-overview-container-uploaded,.models-overview-container-connected{margin-top:5px}.models-overview-container .model-item{display:grid;grid-template-columns:25px auto 70px;align-items:center;border-radius:5px;padding:5px;background-color:#e6e6e6;border-bottom:1px solid #a9a9a9}.models-overview-container .model-item div{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.models-overview-container .model-item .checkbox-with-theme{padding-left:0}.models-overview-container .model-item .checkbox-with-theme input{margin-left:4px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/app/project/dashboard/models-overview/models-overview.scss\"],\"names\":[],\"mappings\":\"AAAA,2BACI,WAAA,CACA,UAAA,CACA,oCACI,WAAA,CACA,UAAA,CACA,yCACI,UAAA,CAEJ,0CACI,WAAA,CACA,mDACI,cAAA,CAIZ,yEACI,cAAA,CAGJ,uCACI,YAAA,CACA,oCAAA,CACA,kBAAA,CACA,iBAAA,CACA,WAAA,CACA,wBAAA,CACA,+BAAA,CACA,2CACI,eAAA,CACA,sBAAA,CACA,kBAAA,CAEJ,4DACI,cAAA,CACA,kEACI,eAAA\",\"sourcesContent\":[\".models-overview-container {\\r\\n height:100%;\\r\\n width: 100%;\\r\\n &-top-area {\\r\\n height:30px;\\r\\n width: 100%;\\r\\n &-left {\\r\\n float: left; \\r\\n }\\r\\n &-right {\\r\\n float: right; \\r\\n h5:hover {\\r\\n cursor: pointer;\\r\\n }\\r\\n }\\r\\n }\\r\\n &-uploaded, &-connected {\\r\\n margin-top: 5px;\\r\\n }\\r\\n\\r\\n .model-item {\\r\\n display: grid;\\r\\n grid-template-columns: 25px auto 70px;\\r\\n align-items: center;\\r\\n border-radius: 5px;\\r\\n padding: 5px;\\r\\n background-color: rgb(230, 230, 230);\\r\\n border-bottom: 1px solid darkgray;\\r\\n div {\\r\\n overflow: hidden;\\r\\n text-overflow: ellipsis;\\r\\n white-space: nowrap;\\r\\n }\\r\\n .checkbox-with-theme {\\r\\n padding-left:0;\\r\\n input {\\r\\n margin-left:4px;\\r\\n }\\r\\n }\\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, `.pending-members-container{width:100%;height:100%}.pending-members-container-top-area{margin-bottom:10px;height:30px}.pending-members-container-list{width:100%}.pending-members-container-list .pending-member-item{padding-left:5px;padding-right:5px;width:100%;height:3.5em;line-height:3em;background-color:#e1e1e1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;border-radius:5px;margin-bottom:10px}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/app/project/dashboard/pending-members/pending-members.scss\"],\"names\":[],\"mappings\":\"AAAA,2BACI,UAAA,CACA,WAAA,CACA,oCACI,kBAAA,CACA,WAAA,CAEJ,gCACI,UAAA,CACA,qDACI,gBAAA,CACA,iBAAA,CACA,UAAA,CACA,YAAA,CACA,eAAA,CACA,wBAAA,CACA,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,iBAAA,CACA,kBAAA\",\"sourcesContent\":[\".pending-members-container {\\r\\n width: 100%;\\r\\n height: 100%;\\r\\n &-top-area {\\r\\n margin-bottom: 10px;\\r\\n height: 30px;\\r\\n }\\r\\n &-list {\\r\\n width: 100%;\\r\\n .pending-member-item {\\r\\n padding-left:5px;\\r\\n padding-right:5px;\\r\\n width: 100%;\\r\\n height: 3.5em;\\r\\n line-height: 3em;\\r\\n background-color: rgb(225, 225, 225);\\r\\n overflow: hidden;\\r\\n text-overflow: ellipsis;\\r\\n white-space: nowrap;\\r\\n border-radius: 5px;\\r\\n margin-bottom: 10px;\\r\\n }\\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, `.project-members-container{height:100%;width:100%}.project-members-container-top-area{height:30px;width:100%;margin-bottom:10px;display:inline-block}.project-members-container-list{height:calc(100% - 30px);overflow:hidden}.project-members-container-list-member{display:inline-block;position:relative;background-color:#828282;width:35px;height:35px;border-radius:5px;margin-bottom:3px}.project-members-container-list-member p{position:absolute;color:#fff;margin-bottom:0;top:50%;left:50%;transform:translate(-50%, -50%)}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/app/project/dashboard/project-members/project-members.scss\"],\"names\":[],\"mappings\":\"AACA,2BACI,WAAA,CACA,UAAA,CACA,oCACI,WAAA,CACA,UAAA,CACA,kBAAA,CACA,oBAAA,CAEJ,gCACI,wBAAA,CACA,eAAA,CACA,uCACI,oBAAA,CACA,iBAAA,CACA,wBAAA,CACA,UAAA,CACA,WAAA,CACA,iBAAA,CACA,iBAAA,CACA,yCACI,iBAAA,CACA,UAAA,CACA,eAAA,CACA,OAAA,CACA,QAAA,CACA,+BAAA\",\"sourcesContent\":[\"$right: 60px;\\r\\n.project-members-container {\\r\\n height:100%;\\r\\n width: 100%;\\r\\n &-top-area {\\r\\n height:30px;\\r\\n width: 100%;\\r\\n margin-bottom: 10px;\\r\\n display: inline-block;\\r\\n }\\r\\n &-list {\\r\\n height: calc(100% - 30px);\\r\\n overflow: hidden;\\r\\n &-member {\\r\\n display: inline-block;\\r\\n position: relative;\\r\\n background-color: rgb(130, 130, 130);\\r\\n width:35px;\\r\\n height:35px;\\r\\n border-radius: 5px;\\r\\n margin-bottom: 3px;\\r\\n p {\\r\\n position: absolute;\\r\\n color: white;\\r\\n margin-bottom: 0;\\r\\n top:50%;\\r\\n left:50%;\\r\\n transform: translate(-50%, -50%);\\r\\n }\\r\\n }\\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, `.dashboard-container-routes{width:100%;height:100%;display:grid;grid-template-columns:calc(33.3333333333% - 10px) calc(33.3333333333% - 10px) calc(33.3333333333% - 10px);grid-template-rows:100%;justify-content:space-between}.dashboard-container-routes .route-button{display:grid;justify-content:space-around;align-content:space-around}.dashboard-container-routes .route-button h4{margin-bottom:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/app/project/dashboard/routes/dashboard-routes.scss\"],\"names\":[],\"mappings\":\"AAAA,4BACI,UAAA,CACA,WAAA,CACA,YAAA,CACA,yGAAA,CACA,uBAAA,CACA,6BAAA,CACA,0CACI,YAAA,CACA,4BAAA,CACA,0BAAA,CAKA,6CACI,eAAA,CACA,eAAA,CACA,sBAAA,CACA,kBAAA\",\"sourcesContent\":[\".dashboard-container-routes {\\r\\n width: 100%;\\r\\n height:100%;\\r\\n display: grid;\\r\\n grid-template-columns: calc((100% / 3) - 10px) calc((100% / 3) - 10px) calc((100% / 3) - 10px);//A way to get 15 margin between the columns.\\r\\n grid-template-rows: 100%;\\r\\n justify-content:space-between;\\r\\n .route-button {\\r\\n display: grid;\\r\\n justify-content:space-around;\\r\\n align-content: space-around;\\r\\n // background-color:rgb(67, 74, 85);\\r\\n // color: white;\\r\\n // border-radius: 5px;\\r\\n // transition: 0.3s;\\r\\n h4 {\\r\\n margin-bottom: 0;\\r\\n overflow: hidden;\\r\\n text-overflow: ellipsis;\\r\\n white-space: nowrap;\\r\\n }\\r\\n }\\r\\n // .route-button:hover {\\r\\n // cursor: pointer;\\r\\n // background-color:rgb(46, 51, 58);\\r\\n // }\\r\\n}\"],\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","module.exports = \"\\r\\n\";","module.exports = \"\";","module.exports = \"\";","module.exports = \"\";","import { BimViewerFileDto } from 'app/models/viewer-dtos/Dtos/bimviewer-dtos';\r\nimport { ApiClient } from 'app/services/api-client';\r\nimport { AppContextService } from 'app/services/app-context-service';\r\nimport { DateTimeFormatter } from 'app/services/date-time-formatter';\r\nimport { UserService } from 'app/services/user-service';\r\nimport { bindable } from 'aurelia-framework';\r\nimport { autoinject } from 'aurelia-framework';\r\nimport { Router } from 'aurelia-router';\r\n\r\n@autoinject\r\nexport class ModelsOverview {\r\n @bindable private projectId: string | undefined;\r\n public uploadedModelList: BimViewerFileDto[] = [];\r\n private connectedModel: BimViewerFileDto | undefined;\r\n private connectedModelName: string | undefined;\r\n private checkedModels: number = 0;\r\n constructor(private router: Router, private apiClient: ApiClient,private userService: UserService, private appContext: AppContextService) { }\r\n\r\n async bind(): Promise {\r\n console.log(\"models-overview:bind\", this.projectId);\r\n this.setupModels();//Should not be awaited.\r\n \r\n }\r\n\r\n async projectIdChanged(): Promise {\r\n this.setupModels();\r\n }\r\n \r\n async setupModels() {\r\n if (this.projectId) {\r\n this.uploadedModelList = await this.apiClient.project(this.projectId).get('BimViewer/GetFilesFromProjectForDashboard').jsonResultNoLoadingIcon();\r\n console.log(\"this.modelList \" , this.uploadedModelList);\r\n this.uploadedModelList = await this.userService.fillUsernames(this.uploadedModelList,'MO-setupModels');\r\n if (this.uploadedModelList.length > 0) {\r\n this.connectedModel = this.uploadedModelList.filter(m => m.pluginUpload)[0]; \r\n this.connectedModelName = this.appContext.getSelectedProject()?.name;\r\n console.log(\"this.connectedModel \" , this.connectedModel); \r\n }\r\n this.getFirstThreeUploadedModels();\r\n } \r\n }\r\n\r\n getFirstThreeUploadedModels(): void {\r\n this.uploadedModelList = this.uploadedModelList.filter(m => !m.pluginUpload);\r\n this.uploadedModelList.sort((a: BimViewerFileDto, b: BimViewerFileDto) => {\r\n if (a.newestRevisionDate == null && b.newestRevisionDate == null) {\r\n return +new Date(b.created) - +new Date(a.created);\r\n }\r\n if (a.newestRevisionDate == null) {\r\n return 1;\r\n }\r\n if (b.newestRevisionDate == null ) {\r\n return -1;\r\n }\r\n return +new Date(b.newestRevisionDate) - +new Date(a.newestRevisionDate); //The + is to let Date being treated as a number.\r\n });\r\n this.uploadedModelList = this.uploadedModelList.slice(0, 3);\r\n console.log(\"Uploaded modelList sorted\" , this.uploadedModelList);\r\n }\r\n\r\n goToModels(): void {\r\n this.router.navigateToRoute('project/model-revision',{projectId: this.projectId});\r\n }\r\n\r\n private formatDate(date: string): string {\r\n\t\treturn DateTimeFormatter.formatDate(date);\r\n\t}\r\n\r\n toggle(isChecked: boolean): boolean {\r\n if (!isChecked) {\r\n this.checkedModels += 1;\r\n } else {\r\n this.checkedModels -= 1;\r\n }\r\n return true;\r\n }\r\n\r\n open2DViewerModel(model: BimViewerFileDto): void {\r\n let modelId: string[] = [model.id];\r\n this.router.navigateToRoute('project/work-area', {projectId: this.appContext.getSelectedProject()?.id, modelId, is2d: true}, {replace: true});\r\n }\r\n\r\n open3DViewerModel(model: BimViewerFileDto): void { // in models-overview.ts\r\n\t\tconsole.log('models-overview.ts, open3DViewerModel');\r\n let modelId: string[] = [model.id];\r\n this.router.navigateToRoute('project/work-area', {projectId: this.appContext.getSelectedProject()?.id, modelId, is2d: false}, {replace: true});\r\n }\r\n \r\n openMultipleModels(): void {\r\n let modelId: string[] = [];\r\n this.uploadedModelList.forEach((model: BimViewerFileDto) => {\r\n if (model.isChecked) {\r\n modelId.push(model.id);\r\n }\r\n });\r\n if (this.connectedModel?.isChecked == true) {\r\n modelId.push(this.connectedModel.id)\r\n }\r\n this.router.navigateToRoute('project/work-area', {projectId: this.appContext.getSelectedProject()?.id, modelId, is2d: false}, {replace: true});\r\n }\r\n}\r\n","import { ProjectDto, ProjectInvitation } from 'app/models/project-dto';\r\nimport { ProjectInvitationDto } from 'app/models/project-invitation-dto';\r\nimport { AppContextService } from 'app/services/app-context-service';\r\nimport { bindable } from 'aurelia-framework';\r\nimport { autoinject } from 'aurelia-framework';\r\n\r\n@autoinject\r\nexport class PendingMembers {\r\n @bindable private projectId: string | undefined\r\n private pendingMembers: string[] = []\r\n\r\n constructor(private appContext: AppContextService) { }\r\n\r\n async bind(): Promise {\r\n console.log(\"pending-members:bind\", this.projectId);\r\n let currentProject: ProjectDto | undefined = this.appContext.getSelectedProject();\r\n if (currentProject) {\r\n this.pendingMembers = currentProject.projectInvitations.map((inv: ProjectInvitation) => inv.email);\r\n }\r\n }\r\n\r\n async projectIdChanged(): Promise {\r\n let currentProject: ProjectDto | undefined = this.appContext.getSelectedProject();\r\n if (currentProject) {\r\n this.pendingMembers = currentProject.projectInvitations.map((inv: ProjectInvitation) => inv.email);\r\n }\r\n }\r\n}","import { Member } from 'app/models/project-dto';\r\nimport { AppContextService } from 'app/services/app-context-service';\r\nimport { bindable } from 'aurelia-framework';\r\nimport { autoinject } from 'aurelia-framework';\r\nimport { Router } from 'aurelia-router';\r\n\r\n@autoinject\r\nexport class ProjectMembers {\r\n @bindable private projectId: string | undefined\r\n private projectMembers: Member[] | undefined;\r\n constructor(private appContext: AppContextService, private router: Router) { }\r\n\r\n async bind(): Promise {\r\n console.log(\"project-members:bind\", this.projectId);\r\n this.projectMembers = this.appContext.getSelectedProject()?.members;\r\n console.log(\"projectMembers \" , this.projectMembers);\r\n }\r\n\r\n async projectIdChanged(): Promise {\r\n this.projectMembers = this.appContext.getSelectedProject()?.members;\r\n }\r\n\r\n getInitials(name: string): string {\r\n let names = name.split(' '),\r\n initials = names[0].substring(0, 1).toUpperCase();\r\n \r\n if (names.length > 1) {\r\n initials += names[names.length - 1].substring(0, 1).toUpperCase();\r\n }\r\n return initials;\r\n };\r\n}","import { bindable } from 'aurelia-framework';\r\nimport { autoinject } from 'aurelia-framework';\r\nimport { Router } from 'aurelia-router';\r\n\r\n@autoinject\r\nexport class DashboardRoutes {\r\n @bindable private projectId: string | undefined;\r\n constructor(private router: Router) {}\r\n\r\n async bind(): Promise {\r\n console.log(\"dashboard-routes:bind\", this.projectId);\r\n }\r\n\r\n goToRoute(route:string): void {\r\n\t\tconsole.log('dashboard-routes.goToRoute', route, this.projectId);\r\n\t\ttry {\r\n\t\t\tthis.router.navigateToRoute(route,{projectId: this.projectId});\r\n\t\t} catch (e) {\r\n\t\t\tconsole.trace('.err in dashboard-routes.goToRoute:', e);\r\n\t\t}\r\n }\r\n}\r\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","exports","ModelsOverview","constructor","router","apiClient","userService","appContext","uploadedModelList","checkedModels","bind","console","log","this","projectId","setupModels","projectIdChanged","project","get","jsonResultNoLoadingIcon","fillUsernames","length","connectedModel","filter","m","pluginUpload","connectedModelName","getSelectedProject","name","getFirstThreeUploadedModels","sort","a","b","newestRevisionDate","Date","created","slice","goToModels","navigateToRoute","formatDate","date","toggle","isChecked","open2DViewerModel","model","modelId","is2d","replace","open3DViewerModel","openMultipleModels","forEach","bindable","autoinject","PendingMembers","pendingMembers","currentProject","projectInvitations","map","inv","email","ProjectMembers","projectMembers","members","getInitials","names","split","initials","substring","toUpperCase","DashboardRoutes","goToRoute","route","e","trace"],"sourceRoot":""}