{"version":3,"file":"app-d817a860.8d09d76dffbd8cfa.bundle.js","mappings":"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","sources":["webpack://client-app/./src/app/administration/projects/manage/transfer-project-standards.scss","webpack://client-app/./src/app/administration/projects/manage/unit-settings.scss","webpack://client-app/./src/app/administration/projects/manage/transfer-project-standards.html","webpack://client-app/./src/app/administration/projects/manage/unit-settings.html","webpack://client-app/./src/app/administration/projects/manage/transfer-project-standards.ts","webpack://client-app/./src/app/administration/projects/manage/unit-settings.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, `top-bar [slot=slot-right] .top-bar-select{max-width:250px}top-bar .target-project{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:150px}.parameters-list-transfer .headers{grid-template-columns:calc(16px + 15px*2) minmax(280px, 1fr) repeat(7, minmax(200px, 1fr)) minmax(400px, 1fr)}.parameters-list-transfer .main .element{grid-template-columns:calc(16px + 15px*2) minmax(200px, 1fr);cursor:auto !important}.parameters-list-transfer .main .element .category{margin-right:calc(15px/2);padding:calc(15px/2) calc(15px/1.5);user-select:none}.parameters-list-transfer .cell-wrapper{display:grid;grid-template-columns:minmax(280px, 1fr) repeat(7, minmax(200px, 1fr)) minmax(400px, 1fr)}.parameters-list-transfer-result .headers{grid-template-columns:minmax(280px, 1fr) repeat(4, minmax(200px, 1fr)) minmax(400px, 1fr)}.parameters-list-transfer-result .main .element{grid-template-columns:minmax(280px, 1fr) repeat(4, minmax(200px, 1fr)) minmax(400px, 1fr);cursor:auto !important}.parameters-list-transfer-result .main .element .category{margin-right:calc(15px/2);padding:calc(15px/2) calc(15px/1.5);user-select:none}.parameters-list-transfer-result .main .element.new-parameter .cell{background:#90ca4b}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/app/administration/projects/manage/transfer-project-standards.scss\",\"webpack://./src/resources/color-admin/_variables.scss\"],\"names\":[],\"mappings\":\"AAYE,0CACC,eAAA,CAGF,wBACC,eAAA,CACA,sBAAA,CACA,kBAAA,CACA,eAAA,CAKD,mCACC,6GApB8B,CAwB9B,yCACC,4DAxB8B,CAyB9B,sBAAA,CAEA,mDACC,yBAAA,CACA,mCAAA,CACA,gBAAA,CAMF,wCACC,YAAA,CACA,yFAxCqB,CAmDvB,0CACC,yFALsC,CAStC,gDACC,yFAVqC,CAWrC,sBAAA,CAEA,0DACC,yBAAA,CACA,mCAAA,CACA,gBAAA,CAIA,oEACC,kBC/BS\",\"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, `unit-settings{display:grid;row-gap:15px}unit-settings .headline{background:#f0f3f4;font-weight:600;padding:calc(15px/2) calc(15px/1.5)}unit-settings .value{padding:calc(15px/2) calc(15px/1.5)}unit-settings .section{border:1px solid rgba(0,0,0,.175)}unit-settings .unit{display:grid;grid-template-columns:1fr 1fr 3em;column-gap:15px;padding:calc(15px/2) calc(15px/1.5)}unit-settings .unit__name,unit-settings .unit__value{display:grid;align-items:center}unit-settings .unit__name .text,unit-settings .unit__value .text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}unit-settings .no-units{display:grid;padding:calc(15px/2) calc(15px/1.5)}unit-settings .no-units__name{display:grid;align-items:center}unit-settings .no-units__name .text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}`, \"\",{\"version\":3,\"sources\":[\"webpack://./src/app/administration/projects/manage/unit-settings.scss\",\"webpack://./src/resources/customized-styles/variables.scss\"],\"names\":[],\"mappings\":\"AAEA,cACC,YAAA,CACA,YCaQ,CDXR,wBACC,kBCIa,CDHb,eAAA,CACA,mCAAA,CAGD,qBACC,mCAAA,CAGD,uBACC,iCAAA,CAGD,oBACC,YAAA,CACA,iCAAA,CACA,eCNO,CDOP,mCAAA,CAEA,qDACC,YAAA,CACA,kBAAA,CAEA,iEACC,eAAA,CACA,sBAAA,CACA,kBAAA,CAKH,wBACC,YAAA,CACA,mCAAA,CAEA,8BACC,YAAA,CACA,kBAAA,CAEA,oCACC,eAAA,CACA,sBAAA,CACA,kBAAA\",\"sourceRoot\":\"\"}]);\n// Exports\nexport default ___CSS_LOADER_EXPORT___;\n","// Module\nvar code = ` Parameters in \\${targetProject.name} after transfer Source project: Choose \\${project.name} Target project: Choose \\${project.name} \\${targetProject.name} Transfer Name \"> Status \"> Sync direction \"> Data type \"> Scope \"> Value list \"> Create in Revit \"> Copy with value list \"> Categories No content... 0\"> \\${parameter.name} \\${statusTexts[parameter.triage]} Revit AC Revit AC Revit AC AC only \\${parameter.dataType} \\${scopeTexts[parameter.scope]} \\${parameter.valueList} \\${category} Name \"> Sync direction \"> Data type \"> Scope \"> Value list \"> Categories No content... 0\"> \\${parameter.name} Revit AC Revit AC Revit AC AC only \\${parameter.dataType} \\${scopeTexts[parameter.scope]} \\${parameter.valueList} \\${category} `;\n// Exports\nexport default code;","// Module\nvar code = ` Project defined units No units available \\${unit.unitTypeName} Choose... \\${dut.unitShort} : \\${dut.unitString} Default units No units available \\${unit.unitTypeName} \\${unit.unitShort} : \\${unit.unitString} 0\"> Save `;\n// Exports\nexport default code;","import { ListService, SelectResult } from 'app/services/list-service';\r\nimport { AppContextService } from 'app/services/app-context-service';\r\nimport { autoinject, observable } from 'aurelia-framework';\r\nimport { ProjectDto } from 'app/models/project-dto';\r\nimport { ApiClient } from 'app/services/api-client';\r\nimport { ParameterDefinitionTransferModel, Triage } from 'app/models/parameter-definition-transfer-model';\r\nimport { ModalService } from 'app/services/modal-service';\r\nimport { Router } from 'aurelia-router';\r\nimport { RequestErrorHandling } from 'app/services/RequestErrorHandling';\r\n\r\n\r\n@autoinject\r\nexport class TransferProjectStandards {\r\n\temptyGuid: string = '00000000-0000-0000-0000-000000000000';\r\n\tpublic selectedParameters: ParameterDefinitionTransferModel[] = [];\r\n\tpublic allSelected: boolean = false;\r\n\tpublic column: string = \"name\";\r\n\tpublic displayState: { icon: string, direction: string } | undefined;\r\n\tpublic searchTerm: string = \"\";\r\n\t@observable sourceProject: ProjectDto | undefined;\r\n\t@observable targetProject: ProjectDto | undefined;\r\n\tprivate sourceParameters: ParameterDefinitionTransferModel[] = [];\r\n\tprivate targetParameters: ParameterDefinitionTransferModel[] = [];\r\n\tprivate initiatedWithProjectId: boolean = false;\r\n\tprivate statusTexts: string[] = [\"Not in project\",\"\",\"Already in project\"];\r\n\tprivate scopeTexts: string[] = [\"Type\", \"Instance\", \"Project\", \"Material\"];\r\n\tprivate newParameterIds: string[] = [];\r\n\tprivate showResult: boolean = false;\r\n\tprivate projectList: ProjectDto[] = [];\r\n\r\n\tconstructor (private apiClient: ApiClient, private appContext: AppContextService, private listService: ListService, private modal: ModalService, private router: Router) {\r\n\t}\r\n\t\r\n\tasync activate(params: any) {\r\n\t\tthis.projectList = await this.apiClient.system.get(\"Project/GetUserRelevantProjects\").jsonResult();\r\n\t\tthis.initiatedWithProjectId = Boolean(params.projectId);\r\n\t\tconsole.log('init with projectId', params.projectId);\r\n\t\tthis.setTargetProject(params.projectId);\r\n\t\tthis.displayState = { icon: \"fa-sort-up\", direction: \"ascending\" };\r\n\r\n\t}\r\n\r\n\tprivate setTargetProject(id: string = this.emptyGuid) {\r\n\t\tif (id !== this.emptyGuid) {\r\n\t\t\tlet target = this.projectList.find(element => element.id === id);\r\n\t\t\tconsole.log('setTargetProject, found target?', id, target);\r\n\t\t\tthis.targetProject = target;\r\n\t\t} else {\r\n\t\t\tconsole.log('setTargetProject, no chosen target project id.');\r\n\t\t}\r\n\t}\r\n\t\r\n\tasync sourceProjectChanged(newValue: ProjectDto, oldValue: ProjectDto): Promise {\r\n\t\tif (!Boolean(newValue)) { return; }\r\n\r\n\t\tconst params = await this.getDetailedProjectParameterDefinitions(newValue.id);\r\n\t\tif (!params) { throw 'sourceProjectChanged: got bad params from getDetailedProjectParameterDefinitions'; }\r\n\r\n\t\tthis.sourceParameters = params;\r\n\t\tthis.sourceParameters.forEach(value => this.determineState(value));\r\n\t\tthis.sourceParameters.forEach(value => value.copyWithValueList = value.valueList_Id != '00000000-0000-0000-0000-000000000000');\r\n\t}\r\n\r\n\tresetTransferStandards(): void {\r\n\t\tthis.selectedParameters = [];\r\n\t\tthis.allSelected = false;\r\n\t\tthis.column = \"name\";\r\n\t\tthis.displayState = { icon: \"fa-sort-up\", direction: \"ascending\" };\r\n\t\tthis.sourceProject = undefined;\r\n\t\tthis.sourceParameters = [];\r\n\t\tthis.targetParameters = [];\r\n\t\tif (!this.initiatedWithProjectId) {\r\n\t\t\tthis.targetProject = undefined;\r\n\t\t}\r\n\t\t\r\n\t\tthis.showResult = false;\r\n\t}\r\n\r\n\tbackToProjects(): void {\r\n\t\tthis.router.navigateBack();\r\n\t}\r\n\r\n\tasync targetProjectChanged(newValue: ProjectDto, oldValue: ProjectDto | null): Promise {\r\n\t\tconsole.log('targetProjectChanged', newValue, this.targetProject);\r\n\t\tif (!Boolean(newValue)) { return; }\r\n\r\n\t\t// I hope this still 'fails as cleanly' as it did before, when I wrote it with old-style async structure.)\r\n\t\tlet params:ParameterDefinitionTransferModel[] = \r\n\t\t await this.getDetailedProjectParameterDefinitions(newValue.id);\r\n\t\tif (!params) {\r\n\t\t\tlet err:string = 'targetProjectChanged, got bad ParameterDefinitionTransferModel[]:';\r\n\t\t\tconsole.warn(err, params);\r\n\t\t\tthrow err;\r\n\t\t}\r\n\r\n\t\tthis.targetParameters = params; // don't EVER do this, if params contains garbage..\r\n\t\tthis.sourceParameters.forEach(value => this.determineState(value));\r\n\t}\r\n\r\n\tpublic async getDetailedProjectParameterDefinitions(projectId: string): Promise {\r\n\t\tconsole.log('TPS.GetDetailedProjectParameterDefinitions',projectId);\r\n\r\n\t\tconst currentUser_OrgId = this.appContext.currentUserOrgId(); \r\n\r\n\t\t//let r_ = await this.apiClient.project(projectId).get(\"parameterDefinitions/GetDetailedProjectParameterDefinitions\").jsonResult();\r\n\t\tlet r = await this.apiClient.orgByToken(currentUser_OrgId)\r\n\t\t .get(`project/GetDetailedProjectParameterDefinitions_Org?projectId=${projectId}`).jsonResult();\t\t \r\n\t\tconsole.log('r:',r);\r\n\t\tif (!r) { throw 'bad response from GetDetailedProjectParameterDefinitions_Org in getDetailedProjectParameterDefinitions'; }\r\n\t\treturn r;\r\n\t}\r\n\r\n\tdetermineState(parameter: ParameterDefinitionTransferModel) {\r\n\t\tfor (let i = 0; i < this.targetParameters.length; i++) {\r\n\t\t\tif (this.parameterEqual(parameter, this.targetParameters[i])) {\r\n\t\t\t\tparameter.triage = Triage.InPrj;\r\n\t\t\t\treturn;\r\n\t\t\t}\r\n\t\t}\r\n\r\n\t\tparameter.triage = Triage.NotInPrj;\r\n\t}\r\n\r\n\tparameterEqual(p1: ParameterDefinitionTransferModel, p2: ParameterDefinitionTransferModel) : boolean {\r\n\t\treturn p1.builtInParameter == p2.builtInParameter\r\n\t\t\t&& p1.name == p2.name\r\n\t\t\t&& p1.group == p2.group\r\n\t\t\t&& p1.parameterType == p2.parameterType\r\n\t\t\t&& p1.sharedParamId == p2.sharedParamId\r\n\t\t\t&& p1.scope == p2.scope;\r\n\t}\r\n\t\r\n\tasync transferStandards() {\r\n\t\tlet parametersToTransfer = this.selectedParameters\r\n\t\t\t.map(value => {\r\n\t\t\t\treturn {\r\n\t\t\t\t\tId: value.id,\r\n\t\t\t\t\tCreateInRevit: value.createInRevit == undefined ? false : value.createInRevit,\r\n\t\t\t\t\tCopyWithValueList: value.copyWithValueList == undefined ? false : value.copyWithValueList\r\n\t\t\t\t}\r\n\t\t\t});\r\n\r\n\t\tif (!this.targetProject || !this.targetProject.id) {\r\n\t\t\talert('No target project id?');\r\n\t\t\treturn;\r\n\t\t}\r\n\t\t// her kan den blive sur, komme i en mode, hvor this.targetProject.id ikke er udfyldt?\r\n\t\tconsole.log('sourceProjectId',this.sourceProject?.id);\r\n\t\tconsole.log('targetProjectId',this.targetProject.id);\r\n\t\tconsole.log('TPS, will call Project/TransferStandards..');\r\n\r\n\t\tconst currentUser_OrgId = this.appContext.currentUserOrgId(); // this.api.appContext.currentUser?.organization.id;\r\n\r\n\t\ttry {\r\n\t\t\t//let REH:RequestErrorHandling = this.apiClient.project(this.targetProject.id)\r\n\t\t\t//.postJson(`Project/TransferStandards?sourceProjectId=${this.sourceProject?.id}&targetProjectId=${this.targetProject.id}`, parametersToTransfer);\r\n\r\n\t\t\tlet REH:RequestErrorHandling = this.apiClient.orgByToken(currentUser_OrgId)\r\n\t\t\t.postJson(`Project/TransferStandards_Org?sourceProjectId=${this.sourceProject?.id}&targetProjectId=${this.targetProject.id}`, parametersToTransfer);\r\n\r\n\t\t\tlet parameterIds:string[] = await REH\r\n\t\t\t.handleError(\"Standards not transferred\", \"The standards could not be transferred.\") // this is shit - with error, we want our error back!\r\n\t\t\t.jsonResult(); // ingen catch - lad os bare faa evt. fejl.\r\n\r\n\t\t\tconsole.log('TransferStandards_Org said:', parameterIds);\r\n\r\n\t\t\tthis.newParameterIds = parameterIds;\r\n\t\t\tthis.modal.OpenMessage(\"Standards transferred\", \"The standards were transferred successfully.\");\r\n\t\t} finally {\r\n\t\t\tif (this.targetProject) { this.targetProjectChanged(this.targetProject, null); }\r\n\t\t\tthis.showResult = true;\r\n\t\t}\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 toggleParameter() {\r\n\t\tawait this.listService.toggleElement(this.sourceParameters).then(result => {\r\n\t\t\tthis.selectedParameters = 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.sourceParameters).then((result: SelectResult | undefined) => {\r\n\t\t\tif (result) {\r\n\t\t\t\tthis.selectedParameters = 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 { EventAggregator } from 'aurelia-event-aggregator';\r\nimport {bindable, observable, autoinject} from \"aurelia-framework\";\r\nimport {ApiClient} from \"../../../services/api-client\";\r\nimport {AppContextService} from \"../../../services/app-context-service\";\r\nimport {I18N} from \"aurelia-i18n\";\r\n\r\n\r\n@autoinject\r\nexport class UnitSettings {\r\n\t\r\n\t@bindable projectId:string = \"\"; \r\n\tpublic projectDefinedUnits: PrjUnit[] = [];\r\n\tpublic defaultUnits: PrjUnit[] = [];\r\n\tprivate anyChanges:boolean = false;\r\n\t\r\n\t\r\n\tconstructor(private events: EventAggregator, private api:ApiClient, private i18n: I18N, private appContext: AppContextService) {\r\n\t\t\r\n\t}\r\n\t\r\n\tasync attached(){\r\n\t\tconst currentUser_OrgId = this.appContext.currentUserOrgId(); // this.apiClient.appContext.currentUser?.organization.id;\r\n\t\tconsole.log('UnitSettings.attached', this.projectId);\t\t\r\n\t\tconst REH = this.projectId === undefined \r\n\t\t\t? this.api.system.get(\"Project/GetProjectUnits\")//UnitSettings.attached\r\n\t\t\t: this.api.orgByToken(currentUser_OrgId).get(`Project/GetProjectUnits_Org/${this.projectId}`);\r\n\t\t\t//: this.api.project(this.projectId).get(\"Project/GetProjectUnits\"); //2UnitSettings.attached\r\n\r\n\t\tlet projectDisplayUnits = await REH\r\n\t\t.handleError(this.i18n.tr('Error_Title_Generic'), \"Could not retrieve project display units.\")\r\n\t\t.jsonResult();\r\n\r\n\t\tlet prjUnits = projectDisplayUnits;\r\n\t\tprjUnits.forEach(\r\n\t\t\tpu => {\r\n\t\t\t\tpu.dut = this.findDut(pu);\r\n\t\t\t\tpu.origDisplayUnit_Id = pu.displayUnit_Id;\r\n\t\t\t}\r\n\t\t);\r\n\t\tthis.projectDefinedUnits = prjUnits.filter(x => x.selected);\r\n\t\tthis.defaultUnits = prjUnits.filter(x => !x.selected);\r\n\t}\r\n\r\n\tfindDut(ut: PrjUnit): Dut {\r\n\t\tfor (let d of ut.duts) {\r\n\t\t\tif (d.displayUnit_Id == ut.displayUnit_Id) { return d; }\r\n\t\t}\r\n\r\n\t\tlet defDut: Dut = {\r\n\t\t\tdisplayUnit_Id: ut.displayUnit_Id,\r\n\t\t\tunitString: ut.unitString,\r\n\t\t\tunitShort: ut.unitShort,\r\n\t\t\tunitType_Id: ut.unitType_Id,\r\n\t\t\trate: ut.rate,\r\n\t\t\tsRate: ut.sRate,\r\n\t\t\tdisplayUnitEnum: ut.displayUnitEnum\r\n\t\t}\r\n\t\tut.duts.push(defDut);\r\n\t\treturn defDut;\r\n\t}\r\n\t\r\n\tasync save():Promise{\t// this one is currently broken I believe.\r\n\t\tconsole.log('unit-settings.save');\r\n\t\tif (!this.projectDefinedUnits) { return await Promise.resolve(); }\r\n\r\n\t\tthis.projectDefinedUnits.forEach(x => {\r\n\t\t\tif (x.origDisplayUnit_Id !== x.dut.displayUnit_Id) { this.anyChanges = true; }\r\n\t\t});\r\n\r\n\t\tif (this.anyChanges === false) { return await Promise.resolve(); }\t\t\r\n\r\n\t\tlet projectUnits = this.projectDefinedUnits.map(x => { return { unitDisplayTypeId: x.dut.displayUnit_Id, unitTypeId : x.unitType_Id }});\t\r\n\t\tlet r = await this.api.project(this.projectId).postJson(\"Project/SetProjectUnitDisplays\", projectUnits).stringResult(); // noResponse();\r\n\t\tconsole.log('save-SetProjectUnitDisplays said:', r);\r\n\t}\r\n\r\n\tasync saveByOrg(projectId: string):Promise{\t\r\n\t\tconsole.log('saveByOrg');\r\n\t\tif (!this.projectDefinedUnits) { return await Promise.resolve(); }\r\n\r\n\t\tthis.projectDefinedUnits.forEach(x => {\r\n\t\t\tif (x.origDisplayUnit_Id !== x.dut.displayUnit_Id) { this.anyChanges = true; }\r\n\t\t});\r\n\r\n\t\tif (this.anyChanges === false) { return await Promise.resolve(); }\t\t\r\n\r\n\t\tlet projectUnits = this.projectDefinedUnits.map(x => { return { unitDisplayTypeId: x.dut.displayUnit_Id, unitTypeId : x.unitType_Id }});\t\t\r\n\r\n\t\tconst currentUser_OrgId = this.appContext.currentUserOrgId(); \r\n\t\t// fixme: if currentUser_OrgId is bad, we should probably catch that and handle/circumvent that.\r\n\t\t// In particular, we should verify that projectOrg and current_userOrg matches!\r\n\t\t// I hope SetProjectUnitDisplays catches/checks that!\r\n\t\tlet r = await this.api.orgByToken(currentUser_OrgId).postJson(`Project/SetProjectUnitDisplays_Org?projectId=${projectId}`, projectUnits).stringResult(); \r\n\t\tconsole.log('saveByOrg.SetProjectUnitDisplays said:', r);\r\n\t}\r\n\r\n\tpublic add(unit: PrjUnit, index: number) {\r\n\t\tthis.defaultUnits.splice(index, 1);\r\n\t\tunit.selected = true;\r\n\t\tthis.projectDefinedUnits.push(unit);\r\n\t\tthis.anyChanges = true;\r\n\t}\r\n\r\n\tpublic remove(unit: PrjUnit, index: number) {\r\n\t\tthis.projectDefinedUnits.splice(index, 1);\r\n\t\tunit.selected = false;\r\n\t\tthis.defaultUnits.push(unit);\r\n\t\tthis.anyChanges = true;\r\n\t}\r\n}\r\n\r\nexport interface PrjUnit {\r\n\tid: string;\r\n\tdisplayUnit_Id: number;\r\n\tunitType_Id: number;\r\n\tunitTypeName: string;\r\n\tdisplayUnitEnum: string;\r\n\tunitString: string;\r\n\tunitShort: string;\r\n\trate: number;\r\n\tsRate: string;\r\n\tduts: Dut[];\r\n\tdut: Dut;\r\n\tselected:boolean;\r\n\torigDisplayUnit_Id: number;\r\n}\r\n\r\nexport interface Dut {\r\n\tdisplayUnit_Id: number;\r\n\tunitString: string;\r\n\tunitShort: string;\r\n\tunitType_Id: number;\r\n\trate: number;\r\n\tsRate: string;\r\n\tdisplayUnitEnum: string;\r\n}\r\n"],"names":["___CSS_LOADER_EXPORT___","push","module","id","TransferProjectStandards","constructor","apiClient","appContext","listService","modal","router","emptyGuid","selectedParameters","allSelected","column","searchTerm","sourceParameters","targetParameters","initiatedWithProjectId","statusTexts","scopeTexts","newParameterIds","showResult","projectList","activate","params","this","system","get","jsonResult","Boolean","projectId","console","log","setTargetProject","displayState","icon","direction","target","find","element","targetProject","sourceProjectChanged","newValue","oldValue","getDetailedProjectParameterDefinitions","forEach","value","determineState","copyWithValueList","valueList_Id","resetTransferStandards","sourceProject","undefined","backToProjects","navigateBack","targetProjectChanged","err","warn","currentUser_OrgId","currentUserOrgId","r","orgByToken","parameter","i","length","parameterEqual","triage","T","InPrj","NotInPrj","p1","p2","builtInParameter","name","group","parameterType","sharedParamId","scope","transferStandards","parametersToTransfer","map","Id","CreateInRevit","createInRevit","CopyWithValueList","alert","REH","postJson","parameterIds","handleError","OpenMessage","sortBy","columnName","then","result","toggleParameter","toggleElement","selected","toggleAll","observable","autoinject","UnitSettings","events","api","i18n","projectDefinedUnits","defaultUnits","anyChanges","attached","prjUnits","tr","pu","dut","findDut","origDisplayUnit_Id","displayUnit_Id","filter","x","ut","d","duts","defDut","unitString","unitShort","unitType_Id","rate","sRate","displayUnitEnum","save","Promise","resolve","projectUnits","unitDisplayTypeId","unitTypeId","project","stringResult","saveByOrg","add","unit","index","splice","remove","bindable","EventAggregator","I18N"],"sourceRoot":""}