{ "version": 3, "sources": ["src/app/classes/ContactBE.ts", "src/app/components/pages/contact/contact-summary/contact-summary.component.ts", "src/app/components/pages/contact/contact-summary/contact-summary.component.html", "src/app/util/CaseNumberTypes.ts", "src/app/components/pages/contact/contact-cases/contact-cases.component.ts", "src/app/components/pages/contact/contact-cases/contact-cases.component.html", "src/app/util/GUID.ts", "src/app/components/pages/contact/contact-information/contact-information.component.ts", "src/app/components/pages/contact/contact-information/contact-information.component.html", "src/app/components/pages/contact/contact-contactinfo/contact-contactinfo.component.ts", "src/app/components/pages/contact/contact-contactinfo/contact-contactinfo.component.html", "src/app/services/brreg-search.service.ts", "src/app/components/pages/contact/contact.component.ts", "src/app/components/pages/contact/contact.component.html"], "sourcesContent": ["import { ICaseLimitedBE, IContactAddressBE, IContactBE, IContactConnectionBE, IContactDistributionTypeBE, IContactNotesBE, IContactPaymentTermBE, IContactPhoneBE, ICountryBE, ICurrencyCodeBE, IUserLimitedBE } from \"@datalex-software-as/datalex-client\";\r\nimport { ContactSectorIdEnum } from \"../util/ContactSectorUtil\";\r\n\r\nexport class ContactBE {\r\n private Id: string;\r\n private ContactSectorId: string | null;\r\n private Name: string;\r\n private FirstName: string;\r\n private LastName: string;\r\n private Name2: string | null;\r\n private PseudoName: string | null;\r\n private Number: number | null;\r\n private OrganizationNumber: string | null;\r\n private NationalIdentityNumber: string | null;\r\n private BusinessSectorId: string | null;\r\n private OrganizationalStructureId: string | null;\r\n private Occupation: string | null;\r\n private Gender: boolean | null;\r\n private ShortForm: string | null;\r\n private Title: string | null;\r\n private OurCustomerNumber: string | null;\r\n private ResponsibleUserId: string | null;\r\n private CountryId: string | null;\r\n private BankAccountNumber: string | null;\r\n private CurrencyCodeId: string | null;\r\n private VATTypeId: string | null;\r\n private VatObligated: boolean | null;\r\n private eInvoiceContact: boolean | null;\r\n private eInvoiceId: string | null;\r\n private EmailAddress: string | null;\r\n private WebAddress: string | null;\r\n private PublicCompany: boolean | null;\r\n private IBANBankName: string | null;\r\n private IBANBankAddress: string | null;\r\n private IBANBankCountryId: string | null;\r\n private IBANBankState: string | null;\r\n private IBANAccountNumber: string | null;\r\n private IBANBankPostalAddressId: string | null;\r\n private IBANIsSwift: boolean | null;\r\n private IBANSwiftClearingCode: string | null;\r\n private DateOfBirth: string | null;\r\n private EHFInvoice: boolean | null;\r\n private EHFInvoiceType: string | null;\r\n private Supplier: boolean | null;\r\n private IsUser: boolean | null;\r\n private IsCompany: boolean | null;\r\n private AccountsId: string | null;\r\n private Timestamp: number[] | null;\r\n private Addresses: IContactAddressBE[] | null;\r\n private Phones: IContactPhoneBE[] | null;\r\n private ContactNotes: IContactNotesBE[] | null;\r\n private Cases: ICaseLimitedBE[] | null;\r\n private ContactDistributions: IContactDistributionTypeBE[] | null;\r\n private Connections: IContactConnectionBE[] | null;\r\n private ContactPaymentTerms: IContactPaymentTermBE[] | null;\r\n private ClientResponsible: IUserLimitedBE | null;\r\n private Country: ICountryBE | null;\r\n private CurrencyCode: ICurrencyCodeBE | null;\r\n private EmailAddressInvoice: string | null;\r\n private EmailInvoice: boolean | null;\r\n private InvoiceMerge: boolean | null;\r\n private Digipost: boolean | null;\r\n private DigipostInvoice: boolean | null;\r\n private OriginCode: string | null;\r\n private IsNew: boolean;\r\n private IsDeleted: boolean;\r\n private Origin: IContactBE;\r\n\r\n public isChanged: boolean = false;\r\n\r\n constructor(contact: IContactBE) {\r\n\r\n this.Id = contact.Id;\r\n this.ContactSectorId = contact.ContactSectorId;\r\n this.Name = contact.Name;\r\n this.FirstName = contact.FirstName;\r\n this.LastName = contact.LastName;\r\n this.Name2 = contact.Name2;\r\n this.PseudoName = contact.PseudoName;\r\n this.Number = contact.Number;\r\n this.OrganizationNumber = contact.OrganizationNumber;\r\n this.NationalIdentityNumber = contact.NationalIdentityNumber;\r\n this.BusinessSectorId = contact.BusinessSectorId;\r\n this.OrganizationalStructureId = contact.OrganizationalStructureId;\r\n this.Occupation = contact.Occupation;\r\n this.Gender = contact.Gender;\r\n this.ShortForm = contact.ShortForm;\r\n this.Title = contact.Title;\r\n this.OurCustomerNumber = contact.OurCustomerNumber;\r\n this.ResponsibleUserId = contact.ResponsibleUserId;\r\n this.CountryId = contact.CountryId;\r\n this.BankAccountNumber = contact.BankAccountNumber;\r\n this.CurrencyCodeId = contact.CurrencyCodeId;\r\n this.VATTypeId = contact.VATTypeId;\r\n this.VatObligated = contact.VatObligated;\r\n this.eInvoiceContact = contact.eInvoiceContact;\r\n this.eInvoiceId = contact.eInvoiceId;\r\n this.EmailAddress = contact.EmailAddress;\r\n this.WebAddress = contact.WebAddress;\r\n this.PublicCompany = contact.PublicCompany;\r\n this.IBANBankName = contact.IBANBankName;\r\n this.IBANBankAddress = contact.IBANBankAddress;\r\n this.IBANBankCountryId = contact.IBANBankCountryId;\r\n this.IBANBankState = contact.IBANBankState;\r\n this.IBANAccountNumber = contact.IBANAccountNumber;\r\n this.IBANBankPostalAddressId = contact.IBANBankPostalAddressId;\r\n this.IBANIsSwift = contact.IBANIsSwift;\r\n this.IBANSwiftClearingCode = contact.IBANSwiftClearingCode;\r\n this.DateOfBirth = contact.DateOfBirth;\r\n this.EHFInvoice = contact.EHFInvoice;\r\n this.EHFInvoiceType = contact.EHFInvoiceType;\r\n this.Supplier = contact.Supplier;\r\n this.IsUser = contact.IsUser;\r\n this.IsCompany = contact.IsCompany;\r\n this.AccountsId = contact.AccountsId;\r\n this.Timestamp = contact.Timestamp;\r\n this.Addresses = contact.Addresses;\r\n this.Phones = contact.Phones;\r\n this.ContactNotes = contact.ContactNotes;\r\n this.Cases = contact.Cases;\r\n this.ContactDistributions = contact.ContactDistributions;\r\n this.Connections = contact.Connections;\r\n this.ContactPaymentTerms = contact.ContactPaymentTerms;\r\n this.ClientResponsible = contact.ClientResponsible;\r\n this.Country = contact.Country;\r\n this.CurrencyCode = contact.CurrencyCode;\r\n this.EmailAddressInvoice = contact.EmailAddressInvoice;\r\n this.EmailInvoice = contact.EmailInvoice;\r\n this.InvoiceMerge = contact.InvoiceMerge;\r\n this.Digipost = contact.Digipost;\r\n this.DigipostInvoice = contact.DigipostInvoice;\r\n this.OriginCode = contact.OriginCode;\r\n this.IsNew = contact.IsNew;\r\n this.IsDeleted = contact.IsDeleted;\r\n this.Origin = contact;\r\n }\r\n\r\n public get(identifiers: string[]) {\r\n let items: Record = {};\r\n for (const identifier of identifiers) {\r\n //@ts-ignore\r\n if (this[identifier]) {\r\n //@ts-ignore\r\n items[identifier] = this[identifier];\r\n } else {\r\n //console.error(`field ${identifier} has no value or does not exist on ContactExtended`);\r\n }\r\n\r\n }\r\n return items;\r\n }\r\n\r\n public getId() {\r\n return this.Id;\r\n }\r\n public getContactSectorId() {\r\n return this.ContactSectorId;\r\n }\r\n public getName() {\r\n return this.Name;\r\n }\r\n public getFirstName() {\r\n return this.FirstName;\r\n }\r\n public getLastName() {\r\n return this.LastName;\r\n }\r\n public getName2() {\r\n return this.Name2;\r\n }\r\n public getPseudoName() {\r\n return this.PseudoName;\r\n }\r\n public getNumber() {\r\n return this.Number;\r\n }\r\n public getOrganizationNumber() {\r\n return this.OrganizationNumber;\r\n }\r\n public getNationalIdentityNumber() {\r\n return this.NationalIdentityNumber;\r\n }\r\n public getBusinessSectorId() {\r\n return this.BusinessSectorId;\r\n }\r\n public getOrganizationalStructureId() {\r\n return this.OrganizationalStructureId;\r\n }\r\n public getOccupation() {\r\n return this.Occupation;\r\n }\r\n public getGender() {\r\n return this.Gender;\r\n }\r\n public getShortForm() {\r\n return this.ShortForm;\r\n }\r\n public getTitle() {\r\n return this.Title;\r\n }\r\n public getOurCustomerNumber() {\r\n return this.OurCustomerNumber;\r\n }\r\n public getResponsibleUserId() {\r\n return this.ResponsibleUserId;\r\n }\r\n public getCountryId() {\r\n return this.CountryId;\r\n }\r\n public getBankAccountNumber() {\r\n return this.BankAccountNumber;\r\n }\r\n public getCurrencyCodeId() {\r\n return this.CurrencyCodeId;\r\n }\r\n public getVATTypeId() {\r\n return this.VATTypeId;\r\n }\r\n public getVatObligated() {\r\n return this.VatObligated;\r\n }\r\n public geteInvoiceContact() {\r\n return this.eInvoiceContact;\r\n }\r\n public geteInvoiceId() {\r\n return this.eInvoiceId;\r\n }\r\n public getEmailAddress() {\r\n return this.EmailAddress;\r\n }\r\n public getWebAddress() {\r\n return this.WebAddress;\r\n }\r\n public getPublicCompany() {\r\n return this.PublicCompany;\r\n }\r\n public getIBANBankName() {\r\n return this.IBANBankName;\r\n }\r\n public getIBANBankAddress() {\r\n return this.IBANBankAddress;\r\n }\r\n public getIBANBankCountryId() {\r\n return this.IBANBankCountryId;\r\n }\r\n public getIBANBankState() {\r\n return this.IBANBankState;\r\n }\r\n public getIBANAccountNumber() {\r\n return this.IBANAccountNumber;\r\n }\r\n public getIBANBankPostalAddressId() {\r\n return this.IBANBankPostalAddressId;\r\n }\r\n public getIBANIsSwift() {\r\n return this.IBANIsSwift;\r\n }\r\n public getIBANSwiftClearingCode() {\r\n return this.IBANSwiftClearingCode;\r\n }\r\n public getDateOfBirth() {\r\n return this.DateOfBirth;\r\n }\r\n public getEHFInvoice() {\r\n return this.EHFInvoice;\r\n }\r\n public getEHFInvoiceType() {\r\n return this.EHFInvoiceType;\r\n }\r\n public getSupplier() {\r\n return this.Supplier;\r\n }\r\n public getIsUser() {\r\n return this.IsUser;\r\n }\r\n public getIsCompany() {\r\n return this.IsCompany;\r\n }\r\n public getAccountsId() {\r\n return this.AccountsId;\r\n }\r\n public getTimestamp() {\r\n return this.Timestamp;\r\n }\r\n public getAddresses() {\r\n return this.Addresses;\r\n }\r\n public getPhones() {\r\n return this.Phones;\r\n }\r\n public getContactNotes() {\r\n return this.ContactNotes;\r\n }\r\n public getCases() {\r\n return this.Cases;\r\n }\r\n public getContactDistributions() {\r\n return this.ContactDistributions;\r\n }\r\n public getConnections() {\r\n return this.Connections;\r\n }\r\n public getContactPaymentTerms() {\r\n return this.ContactPaymentTerms;\r\n }\r\n public getClientResponsible() {\r\n return this.ClientResponsible;\r\n }\r\n public getCountry() {\r\n return this.Country;\r\n }\r\n public getCurrencyCode() {\r\n return this.CurrencyCode;\r\n }\r\n public getEmailAddressInvoice() {\r\n return this.EmailAddressInvoice;\r\n }\r\n public getEmailInvoice() {\r\n return this.EmailInvoice;\r\n }\r\n public getInvoiceMerge() {\r\n return this.InvoiceMerge;\r\n }\r\n public getDigipost() {\r\n return this.Digipost;\r\n }\r\n public getDigipostInvoice() {\r\n return this.DigipostInvoice;\r\n }\r\n public getOriginCode() {\r\n return this.OriginCode;\r\n }\r\n public getIsNew() {\r\n return this.IsNew;\r\n }\r\n public getIsDeleted() {\r\n return this.IsDeleted;\r\n }\r\n\r\n public getContact(): IContactBE {\r\n return {\r\n Id: this.Id,\r\n ContactSectorId: this.ContactSectorId ?? null,\r\n Name: this.Name,\r\n FirstName: this.FirstName,\r\n LastName: this.LastName,\r\n Name2: this.Name2 ?? null,\r\n PseudoName: this.PseudoName ?? null,\r\n Number: this.Number ?? null,\r\n OrganizationNumber: this.OrganizationNumber ?? null,\r\n NationalIdentityNumber: this.NationalIdentityNumber ?? null,\r\n BusinessSectorId: this.BusinessSectorId ?? null,\r\n OrganizationalStructureId: this.OrganizationalStructureId ?? null,\r\n Occupation: this.Occupation ?? null,\r\n Gender: this.Gender ?? null,\r\n ShortForm: this.ShortForm ?? null,\r\n Title: this.Title ?? null,\r\n OurCustomerNumber: this.OurCustomerNumber ?? null,\r\n ResponsibleUserId: this.ResponsibleUserId ?? null,\r\n CountryId: this.CountryId ?? null,\r\n BankAccountNumber: this.BankAccountNumber ?? null,\r\n CurrencyCodeId: this.CurrencyCodeId ?? null,\r\n VATTypeId: this.VATTypeId ?? null,\r\n VatObligated: this.VatObligated ?? null,\r\n eInvoiceContact: this.eInvoiceContact ?? null,\r\n eInvoiceId: this.eInvoiceId ?? null,\r\n EmailAddress: this.EmailAddress ?? null,\r\n WebAddress: this.WebAddress ?? null,\r\n PublicCompany: this.PublicCompany ?? null,\r\n IBANBankName: this.IBANBankName ?? null,\r\n IBANBankAddress: this.IBANBankAddress ?? null,\r\n IBANBankCountryId: this.IBANBankCountryId ?? null,\r\n IBANBankState: this.IBANBankState ?? null,\r\n IBANAccountNumber: this.IBANAccountNumber ?? null,\r\n IBANBankPostalAddressId: this.IBANBankPostalAddressId ?? null,\r\n IBANIsSwift: this.IBANIsSwift ?? null,\r\n IBANSwiftClearingCode: this.IBANSwiftClearingCode ?? null,\r\n DateOfBirth: this.DateOfBirth ?? null,\r\n EHFInvoice: this.EHFInvoice ?? null,\r\n EHFInvoiceType: this.EHFInvoiceType ?? null,\r\n Supplier: this.Supplier ?? null,\r\n IsUser: this.IsUser ?? null,\r\n IsCompany: this.IsCompany ?? null,\r\n AccountsId: this.AccountsId ?? null,\r\n Timestamp: this.Timestamp ?? null,\r\n Addresses: this.Addresses ?? null,\r\n Phones: this.Phones ?? null,\r\n ContactNotes: this.ContactNotes ?? null,\r\n Cases: this.Cases ?? null,\r\n ContactDistributions: this.ContactDistributions ?? null,\r\n Connections: this.Connections ?? null,\r\n ContactPaymentTerms: this.ContactPaymentTerms ?? null,\r\n ClientResponsible: this.ClientResponsible ?? null,\r\n Country: this.Country ?? null,\r\n CurrencyCode: this.CurrencyCode ?? null,\r\n EmailAddressInvoice: this.EmailAddressInvoice ?? null,\r\n EmailInvoice: this.EmailInvoice ?? null,\r\n InvoiceMerge: this.InvoiceMerge ?? null,\r\n Digipost: this.Digipost ?? null,\r\n DigipostInvoice: this.DigipostInvoice ?? null,\r\n OriginCode: this.OriginCode ?? null,\r\n IsNew: this.IsNew ?? false,\r\n IsDeleted: this.IsDeleted ?? false,\r\n }\r\n }\r\n\r\n public setContactSectorId(value: string | null) {\r\n this.ContactSectorId = value;\r\n this.setIsCompany(value);\r\n this.isChanged = this.isEqual('ContactSectorId')\r\n }\r\n public setName(value?: string) {\r\n if (value) {\r\n this.Name = value;\r\n this.isChanged = this.isEqual('Name')\r\n } else {\r\n this.Name = `${this.getLastName()} ${this.getFirstName()}`;\r\n }\r\n }\r\n public setFirstName(value: string) {\r\n this.FirstName = value;\r\n this.setName()\r\n this.isChanged = this.isEqual('FirstName')\r\n }\r\n public setLastName(value: string) {\r\n this.LastName = value;\r\n this.setName()\r\n this.isChanged = this.isEqual('LastName')\r\n }\r\n public setName2(value: string | null) {\r\n this.Name2 = value;\r\n this.isChanged = this.isEqual('Name2')\r\n }\r\n public setPseudoName(value: string | null) {\r\n this.PseudoName = value;\r\n this.isChanged = this.isEqual('PseudoName')\r\n }\r\n public setNumber(value: number | null) {\r\n this.Number = value;\r\n this.isChanged = this.isEqual('Number')\r\n }\r\n public setOrganizationNumber(value: string | null) {\r\n this.OrganizationNumber = value;\r\n this.isChanged = this.isEqual('OrganizationNumber')\r\n }\r\n public setNationalIdentityNumber(value: string | null) {\r\n this.NationalIdentityNumber = value;\r\n this.isChanged = this.isEqual('NationalIdentityNumber')\r\n }\r\n public setBusinessSectorId(value: string | null) {\r\n this.BusinessSectorId = value;\r\n this.isChanged = this.isEqual('BusinessSectorId')\r\n }\r\n public setOrganizationalStructureId(value: string | null) {\r\n this.OrganizationalStructureId = value;\r\n this.isChanged = this.isEqual('OrganizationalStructureId')\r\n }\r\n public setOccupation(value: string | null) {\r\n this.Occupation = value;\r\n this.isChanged = this.isEqual('Occupation')\r\n }\r\n public setGender(value: boolean | null) {\r\n this.Gender = value;\r\n this.isChanged = this.isEqual('Gender')\r\n }\r\n public setShortForm(value: string | null) {\r\n this.ShortForm = value;\r\n this.isChanged = this.isEqual('ShortForm')\r\n }\r\n public setTitle(value: string | null) {\r\n this.Title = value;\r\n this.isChanged = this.isEqual('Title')\r\n }\r\n public setOurCustomerNumber(value: string | null) {\r\n this.OurCustomerNumber = value;\r\n this.isChanged = this.isEqual('OurCustomerNumber')\r\n }\r\n public setResponsibleUserId(value: string | null) {\r\n this.ResponsibleUserId = value;\r\n this.isChanged = this.isEqual('ResponsibleUserId')\r\n }\r\n public setCountryId(value: string | null) {\r\n this.CountryId = value;\r\n this.isChanged = this.isEqual('CountryId')\r\n }\r\n public setBankAccountNumber(value: string | null) {\r\n this.BankAccountNumber = value;\r\n this.isChanged = this.isEqual('BankAccountNumber')\r\n }\r\n public setCurrencyCodeId(value: string | null) {\r\n this.CurrencyCodeId = value;\r\n this.isChanged = this.isEqual('CurrencyCodeId')\r\n }\r\n public setVATTypeId(value: string | null) {\r\n this.VATTypeId = value;\r\n this.isChanged = this.isEqual('VATTypeId')\r\n }\r\n public setVatObligated(value: boolean | null) {\r\n this.VatObligated = value;\r\n this.isChanged = this.isEqual('VatObligated')\r\n }\r\n public seteInvoiceContact(value: boolean | null) {\r\n this.eInvoiceContact = value;\r\n this.isChanged = this.isEqual('eInvoiceContact')\r\n }\r\n public seteInvoiceId(value: string | null) {\r\n this.eInvoiceId = value;\r\n this.isChanged = this.isEqual('eInvoiceId')\r\n }\r\n public setEmailAddress(value: string | null) {\r\n this.EmailAddress = value;\r\n this.isChanged = this.isEqual('EmailAddress')\r\n }\r\n public setWebAddress(value: string | null) {\r\n this.WebAddress = value;\r\n this.isChanged = this.isEqual('WebAddress')\r\n }\r\n public setPublicCompany(value: any) {\r\n this.PublicCompany = value;\r\n this.isChanged = this.isEqual('PublicCompany')\r\n }\r\n public setIBANBankName(value: string | null) {\r\n this.IBANBankName = value;\r\n this.isChanged = this.isEqual('IBANBankName')\r\n }\r\n public setIBANBankAddress(value: string | null) {\r\n this.IBANBankAddress = value;\r\n this.isChanged = this.isEqual('IBANBankAddress')\r\n }\r\n public setIBANBankCountryId(value: string | null) {\r\n this.IBANBankCountryId = value;\r\n this.isChanged = this.isEqual('IBANBankCountryId')\r\n }\r\n public setIBANBankState(value: string | null) {\r\n this.IBANBankState = value;\r\n this.isChanged = this.isEqual('IBANBankState')\r\n }\r\n public setIBANAccountNumber(value: string | null) {\r\n this.IBANAccountNumber = value;\r\n this.isChanged = this.isEqual('IBANAccountNumber')\r\n }\r\n public setIBANBankPostalAddressId(value: string | null) {\r\n this.IBANBankPostalAddressId = value;\r\n this.isChanged = this.isEqual('IBANBankPostalAddressId')\r\n }\r\n public setIBANIsSwift(value: boolean | null) {\r\n this.IBANIsSwift = value;\r\n this.isChanged = this.isEqual('IBANIsSwift')\r\n }\r\n public setIBANSwiftClearingCode(value: string | null) {\r\n this.IBANSwiftClearingCode = value;\r\n this.isChanged = this.isEqual('IBANSwiftClearingCode')\r\n }\r\n public setDateOfBirth(value: string | null) {\r\n this.DateOfBirth = value;\r\n this.isChanged = this.isEqual('DateOfBirth')\r\n }\r\n public setEHFInvoice(value: boolean | null) {\r\n this.EHFInvoice = value;\r\n this.isChanged = this.isEqual('EHFInvoice')\r\n }\r\n public setEHFInvoiceType(value: string | null) {\r\n this.EHFInvoiceType = value;\r\n this.isChanged = this.isEqual('EHFInvoiceType')\r\n }\r\n public setSupplier(value: boolean | null) {\r\n this.Supplier = value;\r\n this.isChanged = this.isEqual('Supplier')\r\n }\r\n public setIsUser(value: boolean | null) {\r\n this.IsUser = value;\r\n this.isChanged = this.isEqual('IsUser')\r\n }\r\n public setAccountsId(value: string | null) {\r\n this.AccountsId = value;\r\n this.isChanged = this.isEqual('AccountsId')\r\n }\r\n public setTimestamp(value: number[] | null) {\r\n this.Timestamp = value;\r\n this.isChanged = this.isEqual('Timestamp')\r\n }\r\n public setAddresses(value: IContactAddressBE[] | null) {\r\n this.Addresses = value;\r\n this.isChanged = this.isEqual('Addresses')\r\n }\r\n public setPhones(value: IContactPhoneBE[] | null) {\r\n this.Phones = value;\r\n this.isChanged = this.isEqual('Phones')\r\n }\r\n public setContactNotes(value: IContactNotesBE[] | null) {\r\n this.ContactNotes = value;\r\n this.isChanged = this.isEqual('ContactNotes')\r\n }\r\n public setCases(value: ICaseLimitedBE[] | null) {\r\n this.Cases = value;\r\n this.isChanged = this.isEqual('Cases')\r\n }\r\n public setContactDistributions(value: IContactDistributionTypeBE[] | null) {\r\n this.ContactDistributions = value;\r\n this.isChanged = this.isEqual('ContactDistributions')\r\n }\r\n public setConnections(value: IContactConnectionBE[] | null) {\r\n this.Connections = value;\r\n this.isChanged = this.isEqual('Connections')\r\n }\r\n public setContactPaymentTerms(value: IContactPaymentTermBE[] | null) {\r\n this.ContactPaymentTerms = value;\r\n this.isChanged = this.isEqual('ContactPaymentTerms')\r\n }\r\n public setClientResponsible(value: IUserLimitedBE | null) {\r\n this.ClientResponsible = value;\r\n this.isChanged = this.isEqual('ClientResponsible')\r\n }\r\n public setCountry(value: ICountryBE | null) {\r\n this.Country = value;\r\n this.isChanged = this.isEqual('Country')\r\n }\r\n public setCurrencyCode(value: ICurrencyCodeBE | null) {\r\n this.CurrencyCode = value;\r\n this.isChanged = this.isEqual('CurrencyCode')\r\n }\r\n public setEmailAddressInvoice(value: string | null) {\r\n this.EmailAddressInvoice = value;\r\n this.isChanged = this.isEqual('EmailAddressInvoice')\r\n }\r\n public setEmailInvoice(value: boolean | null) {\r\n this.EmailInvoice = value;\r\n this.isChanged = this.isEqual('EmailInvoice')\r\n }\r\n public setInvoiceMerge(value: boolean | null) {\r\n this.InvoiceMerge = value;\r\n this.isChanged = this.isEqual('InvoiceMerge')\r\n }\r\n public setDigipost(value: boolean | null) {\r\n this.Digipost = value;\r\n this.isChanged = this.isEqual('Digipost')\r\n }\r\n public setDigipostInvoice(value: boolean | null) {\r\n this.DigipostInvoice = value;\r\n this.isChanged = this.isEqual('DigipostInvoice')\r\n }\r\n public setOriginCode(value: string | null) {\r\n this.OriginCode = value;\r\n this.isChanged = this.isEqual('OriginCode')\r\n }\r\n\r\n private setIsCompany(contactSectorId: string | null): void {\r\n switch (contactSectorId) {\r\n case ContactSectorIdEnum.P:\r\n case ContactSectorIdEnum.S:\r\n this.IsCompany = false;\r\n break;\r\n default:\r\n this.IsCompany = true;\r\n break;\r\n }\r\n }\r\n\r\n\r\n private isEqual(key: string) {\r\n //@ts-ignore\r\n const oldValue = this.Origin[key];\r\n //@ts-ignore\r\n const newValue = this[key];\r\n //console.table({ key, oldValue, newValue });\r\n\r\n if (key === \"DateOfBirth\" && newValue.includes(\"NaN\")) {\r\n return false\r\n }\r\n\r\n\r\n if (key === 'Phones' || key === 'Addresses' || key === 'Country') {\r\n const oldBase64 = btoa(JSON.stringify(oldValue));\r\n const newBase64 = btoa(JSON.stringify(newValue));\r\n\r\n return !(oldBase64 === newBase64);\r\n\r\n }\r\n\r\n if (typeof (oldValue) === 'string' && typeof (newValue) === 'string' && key.includes(\"Id\")) {\r\n return !((oldValue as string).toUpperCase() === (newValue as string).toLocaleUpperCase());\r\n }\r\n return !(oldValue === newValue)\r\n }\r\n\r\n}", "import { Component, Input, OnInit } from '@angular/core';\r\nimport { ContactBE } from 'src/app/classes/ContactBE';\r\nimport { IContactAddressBE, IContactExtendedBE, IContactPhoneBE } from '@datalex-software-as/datalex-client';\r\nimport { AddressTypeArray } from 'src/app/util/AddressTypeUtil';\r\nimport { PhoneNumberTypesArray } from 'src/app/util/PhoneNumberTypeUtil';\r\nimport { HeadingComponent } from '../../../UI/heading/heading.component';\r\nimport { NgIf, NgFor } from '@angular/common';\r\nimport { IgxIconModule } from '@infragistics/igniteui-angular';\r\nimport { get } from 'http';\r\n\r\ninterface SummaryValuePair {\r\n name: string,\r\n value: string,\r\n}\r\n\r\n@Component({\r\n selector: 'app-contact-summary',\r\n templateUrl: './contact-summary.component.html',\r\n styleUrls: ['./contact-summary.component.scss'],\r\n standalone: true,\r\n imports: [NgIf, HeadingComponent, NgFor, IgxIconModule]\r\n})\r\nexport class ContactSummaryComponent implements OnInit {\r\n constructor() {\r\n\r\n }\r\n\r\n _data!: ContactBE;\r\n\r\n @Input() set data(val: ContactBE) {\r\n this._data = val;\r\n this.refresh();\r\n }\r\n get data(): ContactBE {\r\n return this._data;\r\n }\r\n @Input() title!: string | null;\r\n @Input() hasEditRights: boolean = false;\r\n phoneNumbers!: SummaryValuePair[] | null;\r\n addresses!: SummaryValuePair[] | null;\r\n emailAddresses!: SummaryValuePair[] | null;\r\n\r\n ngOnInit(): void {\r\n this.refresh();\r\n }\r\n\r\n public refresh() {\r\n let { Phones, Addresses, EmailAddress, EmailAddressInvoice } = this.data.get(['Phones', 'Addresses', 'EmailAddress', 'EmailAddressInvoice']);\r\n this.extractSummary({ Phones, Addresses, EmailAddress, EmailAddressInvoice });\r\n }\r\n\r\n extractSummary({ Phones, Addresses, EmailAddress, EmailAddressInvoice }: any) {\r\n this.phoneNumbers = this.extractPhoneNumbers(Phones);\r\n this.addresses = this.extractAddresses(Addresses);\r\n this.emailAddresses = this.extractEmailAddresses({ EmailAddress, EmailAddressInvoice });\r\n }\r\n\r\n extractPhoneNumbers(phones: IContactPhoneBE[]): SummaryValuePair[] | null {\r\n if (phones.length === 0) return null\r\n return phones.map(phone => {\r\n return { name: PhoneNumberTypesArray.filter(item => item.Id === phone.PhoneTypeId)[0].Name, value: phone.Number }\r\n })\r\n }\r\n\r\n extractEmailAddresses({ EmailAddress, EmailAddressInvoice }: any): SummaryValuePair[] | null {\r\n let emails = [];\r\n if (EmailAddress) emails.push({ name: \"Epost\", value: EmailAddress });\r\n if (EmailAddressInvoice) emails.push({ name: \"Faktura epost\", value: EmailAddressInvoice });\r\n\r\n if (emails.length === 0) return null\r\n return emails\r\n }\r\n extractAddresses(addresses: IContactAddressBE[]): SummaryValuePair[] | null {\r\n if (addresses.length === 0) return null\r\n return addresses.map(address => {\r\n const postalAddress = address.PostalAddress ?? null;\r\n\r\n const postal = postalAddress ? `, ${postalAddress.PostCode} ${postalAddress.PostOffice}` : \"\";\r\n\r\n return {\r\n name: AddressTypeArray.filter(item => item.Id === address.AddressTypeId)[0].Name,\r\n value: address.Address + postal\r\n }\r\n })\r\n }\r\n\r\n copyText(value: string, event: Event) {\r\n const button = event.currentTarget as HTMLElement;\r\n\r\n // Copy the text to the clipboard\r\n navigator.clipboard.writeText(value).then(() => {\r\n // Find the icon and tooltip within the clicked button\r\n const icon = button.querySelector('.copy-icon');\r\n const tooltip = button.querySelector('.tooltip-text');\r\n\r\n if (icon && tooltip) {\r\n // Temporarily change the icon and tooltip text to indicate success\r\n icon.textContent = 'done';\r\n tooltip.textContent = 'kopiert';\r\n\r\n // Reset the icon and tooltip text after 2 seconds\r\n setTimeout(() => {\r\n icon.textContent = 'content_copy';\r\n tooltip.textContent = 'kopiere';\r\n }, 2000);\r\n }\r\n });\r\n }\r\n\r\n\r\n\r\n}\r\n\r\n", "
\r\n \r\n
\r\n
\r\n
\r\n {{phone.name}}:\r\n \r\n {{phone.value}}\r\n \r\n \r\n
\r\n\r\n
\r\n {{email.name}}: \r\n \r\n {{email.value}}\r\n \r\n \r\n
\r\n\r\n
\r\n {{address.name}}: \r\n \r\n {{address.value}}\r\n \r\n \r\n
\r\n
\r\n
\r\n
", "export enum CaseNumberCounterType\r\n{\r\n A = \"21321311-0000-0000-0002-000000000001\",\r\n M = \"21321311-0000-0000-0002-000000000002\",\r\n}", "import { Component, Input, ElementRef, ViewChild, OnDestroy, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { IGridCellEventArgs, IgxDialogComponent, IgxGridComponent, IgxColumnComponent, IgxGridFooterComponent, IgxFilterCellTemplateDirective, IgxDialogTitleDirective, IgxIconComponent, IgxLabelDirective, IgxSimpleComboComponent, IgxInputGroupComponent, IgxInputDirective, IgxDialogActionsDirective, IgxButtonDirective, IgxRippleDirective } from '@infragistics/igniteui-angular';\r\nimport { ContactBE } from 'src/app/classes/ContactBE';\r\nimport { DatalexClient, ICaseBE, ICaseContactBE, ICaseLimitedBE, IContactBE, IRoleTypeBE, IUserBE, IUserLimitedBE } from '@datalex-software-as/datalex-client';\r\nimport { GridMethodsService } from 'src/app/services/grid-methods.service';\r\nimport { ScreenDimensionService } from 'src/app/services/screen-dimension.service';\r\nimport { SystemCacheService } from 'src/app/services/system-cache.service';\r\nimport { CaseNumberCounterType } from 'src/app/util/CaseNumberTypes';\r\nimport { RoleCode } from 'src/app/util/RoleTypeEnum';\r\nimport { ComboSelectFunctionsService } from 'src/app/services/combo-select-functions.service';\r\nimport { Subscription } from 'rxjs';\r\nimport { ScreenSizeService } from 'src/app/services/screen-size.service';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { GridFilterInputComponent } from '../../../UI/grid-filter-input/grid-filter-input.component';\r\nimport { NgIf, NgClass } from '@angular/common';\r\nimport { GridCountDirective } from '../../../../directives/grid-count.directive';\r\nimport { ButtonRowButtonComponent } from '../../../UI/button-row-button/button-row-button.component';\r\nimport { DeviceService } from 'src/app/services/device.service';\r\nimport { UserRightsProviderService } from 'src/app/services/user-rights-provider.service';\r\nimport { UserAreaEnum, UserRightTypeEnum } from 'src/app/util/UserRightUtil';\r\nimport newActivity from 'src/app/classes/Activity/Actvity';\r\nimport { ActivityLogService } from 'src/app/components/UI/activity-log-overlay/activity-log.service';\r\nimport { ExcelExportButtonComponent } from \"../../../UI/excel-export-button/excel-export-button.component\";\r\nimport { ExportToExcelDirective } from 'src/app/directives/export-to-excel.directive';\r\n\r\n\r\n@Component({\r\n selector: 'app-contact-cases',\r\n templateUrl: './contact-cases.component.html',\r\n styleUrls: ['./contact-cases.component.scss'],\r\n standalone: true,\r\n imports: [ButtonRowButtonComponent, IgxGridComponent, GridCountDirective, IgxColumnComponent, NgIf, IgxGridFooterComponent, IgxFilterCellTemplateDirective, GridFilterInputComponent, IgxDialogComponent, IgxDialogTitleDirective, IgxIconComponent, IgxLabelDirective, IgxSimpleComboComponent, FormsModule, IgxInputGroupComponent, IgxInputDirective, IgxDialogActionsDirective, IgxButtonDirective, IgxRippleDirective, NgClass, ExportToExcelDirective]\r\n})\r\nexport class ContactCasesComponent implements OnInit, OnDestroy {\r\n @ViewChild('newCaseTitleInput') newCaseTitleInput!: ElementRef;\r\n @ViewChild('contactCasesGrid') contactCasesGrid!: IgxGridComponent;\r\n\r\n @ViewChild('newCaseDialog') newCaseDialog!: IgxDialogComponent;\r\n\r\n @Input() hasEditRights: boolean = false;\r\n isMobile!: boolean;\r\n isTablet!: boolean;\r\n isDesktop!: boolean;\r\n isDesktopDevice!: boolean;\r\n\r\n private subscriptions = new Subscription();\r\n constructor(\r\n public sys: SystemCacheService,\r\n private router: Router,\r\n private dlxClient: DatalexClient,\r\n public screen: ScreenDimensionService,\r\n public gridMethods: GridMethodsService,\r\n public combo: ComboSelectFunctionsService,\r\n private userRights: UserRightsProviderService,\r\n public screenSize: ScreenSizeService,\r\n public deviceService: DeviceService,\r\n private als: ActivityLogService\r\n ) {\r\n this.subscriptions.add(this.screenSize.isMobile$.subscribe(isMobile => {\r\n this.isMobile = isMobile;\r\n }));\r\n\r\n this.subscriptions.add(this.screenSize.isTablet$.subscribe(isTablet => {\r\n this.isTablet = isTablet;\r\n }));\r\n\r\n this.subscriptions.add(this.screenSize.isDesktop$.subscribe(isDesktop => {\r\n this.isDesktop = isDesktop;\r\n }));\r\n }\r\n\r\n _data!: ContactBE;\r\n @Input() set data(val: ContactBE) {\r\n if (!val) return;\r\n this._data = val;\r\n try {\r\n this.refresh()\r\n } catch {\r\n this.sys.isReady.subscribe(() => {\r\n this.refresh();\r\n })\r\n }\r\n };\r\n\r\n get data() {\r\n return this._data;\r\n }\r\n\r\n userRightTypeEnum = UserRightTypeEnum;\r\n\r\n\r\n newCase: boolean = true;\r\n caseSelected: boolean = false;\r\n allEmployees!: IUserLimitedBE[];\r\n caseSA!: string;\r\n newCaseTitle: string = \"\";\r\n newCaseNumber!: number | null;\r\n manualCaseNumber: boolean = false;\r\n contactName!: string;\r\n selectedCase!: ICaseLimitedBE | null;\r\n caseAccessLevel: UserRightTypeEnum = UserRightTypeEnum.NONE;\r\n\r\n caseHandlerAndResponsibleList: { sa: string, sb: string }[] = [];\r\n\r\n\r\n public getEmployeeInitials(id: string | null) {\r\n if (id === null) return \"\"\r\n const employee = this.sys.allEmployees.filter(emp => {\r\n return emp.Id.toUpperCase() === id.toUpperCase()\r\n });\r\n\r\n return employee[0].Shortform\r\n }\r\n\r\n ngOnInit(): void {\r\n try {\r\n this.caseAccessLevel = this.userRights.checkAccess(UserAreaEnum.CASE_MANAGMENT).accessId;\r\n\r\n\r\n } catch (error) {\r\n this.sys.isReady.subscribe(() => {\r\n this.caseAccessLevel = this.userRights.checkAccess(UserAreaEnum.CASE_MANAGMENT).accessId;\r\n })\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.subscriptions.unsubscribe();\r\n }\r\n contactCasesData: ICaseLimitedBE[] = [];\r\n public refresh() {\r\n if (this === undefined) return;\r\n this.contactCasesData = this.data.getCases() ?? []\r\n // this.newCase = cases === null ? true : false;\r\n this.selectedCase = this.contactCasesData.length === 1 ? this.contactCasesData[0] : null;\r\n this.allEmployees = this.sys.allEmployees;\r\n this.updateCaseSA(null);\r\n if (this.data.getLastName() && this.data.getFirstName()) {\r\n this.contactName = `${this.data.getLastName()} ${this.data.getFirstName()}`;\r\n } else {\r\n this.contactName = this.data.getName();\r\n }\r\n\r\n let phones = this.data.getPhones()?.every(p => {\r\n return p.Number + p.PhoneType + \", \"\r\n })\r\n }\r\n // allowedToCreateNewCase() {\r\n // const accessLevel = this.userRights.checkAccess(UserAreaEnum.CASE_CREATE_NEW).accessId;\r\n // if (accessLevel && accessLevel === UserRightTypeEnum.FULL) return true;\r\n // return false;\r\n // }\r\n\r\n allowedToCreateNewCase() {\r\n const saksbehandlingAccess = this.userRights.checkAccess(UserAreaEnum.CASE_MANAGMENT).accessId;\r\n if (saksbehandlingAccess === UserRightTypeEnum.LOOK) {\r\n return false;\r\n }\r\n\r\n const registrereNySakAccess = this.userRights.checkAccess(UserAreaEnum.CASE_CREATE_NEW).accessId;\r\n if (registrereNySakAccess === UserRightTypeEnum.FULL) {\r\n return true;\r\n }\r\n\r\n return false;\r\n }\r\n\r\n\r\n updateCaseSA(id: string | null) {\r\n this.caseSA = this.setCaseSA(id)\r\n }\r\n\r\n setCaseSA(id: string | null) {\r\n if (id !== null) return id;\r\n if (this.data.getClientResponsible()) return this.data.getClientResponsible()!.Id;\r\n return this.sys.loggedInUser.Id\r\n }\r\n\r\n\r\n // toggleNewCase() {\r\n // this.newCase = !this.newCase;\r\n // }\r\n\r\n onCancle() {\r\n this.newCaseTitle = \"\";\r\n this.newCaseNumber = null;\r\n // this.newCase = false;\r\n }\r\n\r\n resetDialog() {\r\n this.newCaseTitle = '';\r\n this.caseSA = this.setCaseSA(null)\r\n }\r\n\r\n\r\n focusInput() {\r\n this.newCaseTitleInput.nativeElement.focus();\r\n }\r\n\r\n\r\n onDoubleClick(e: IGridCellEventArgs) {\r\n if (!this.selectedCase) return\r\n if (this.userRights.checkAccess(UserAreaEnum.CASE_MANAGMENT).accessId === UserRightTypeEnum.NONE) {\r\n const activity = newActivity({\r\n message: `Ingen tilgang saksbehandling, kontakt din administrator.`,\r\n type: \"failure\",\r\n timestamp: new Date()\r\n })\r\n\r\n this.als.appendActivity(activity)\r\n alert(\"Ingen tilgang saksbehandling, kontakt din administrator.\")\r\n\r\n return\r\n }\r\n\r\n if (this.userRights.checkAccess(UserAreaEnum.CASE_MANAGMENT).accessId === UserRightTypeEnum.OWN_CASES) {\r\n if (this.userRights.checkCaseAccessOwnCases({ sa: this.selectedCase.CaseResponsibleId!, sb: this.selectedCase.CaseHandlerId }, this.sys.loggedinUserContact.Id)) {\r\n this.router.navigate(['/case', e.cell.row.data.Id]);\r\n } else {\r\n const activity = newActivity({\r\n message: `Ingen tilgang, du har kun tilgang til egne saker.`,\r\n type: \"failure\",\r\n timestamp: new Date()\r\n })\r\n\r\n this.als.appendActivity(activity)\r\n alert(\"Du har ikke tilgang til denne saken. Du har kun tilgang til egne saker.\")\r\n return\r\n }\r\n\r\n return\r\n }\r\n this.router.navigate(['/case', e.cell.row.data.Id]);\r\n }\r\n\r\n onRightClick(e: IGridCellEventArgs) {\r\n e.event.preventDefault()\r\n }\r\n\r\n // onSaveNewCaseAndEnter(dialog: IgxDialogComponent) {\r\n // this.getNewCase(true);\r\n // }\r\n\r\n // onSaveNewCase(dialog: IgxDialogComponent) {\r\n // this.getNewCase(false);\r\n // }\r\n\r\n getNewCase(navigateToCase: boolean = false) {\r\n if (this.userRights.checkAccess(UserAreaEnum.CASE_MANAGMENT).accessId === UserRightTypeEnum.NONE) {\r\n const activity = newActivity({\r\n message: `Ingen tilgang saksbehandling, kontakt din administrator.`,\r\n type: \"failure\",\r\n timestamp: new Date()\r\n })\r\n\r\n this.als.appendActivity(activity)\r\n alert(\"Ingen tilgang saksbehandling, kontakt din administrator.\")\r\n\r\n return\r\n }\r\n\r\n const user = this.sys.allEmployees.find(i => i.Id === this.caseSA);\r\n if (!user) {\r\n const activity = newActivity({\r\n message: `Fant ikke medarbeider.`,\r\n type: \"failure\",\r\n timestamp: new Date()\r\n })\r\n\r\n this.als.appendActivity(activity)\r\n return\r\n }\r\n\r\n this.dlxClient.GetUser(user.Id).subscribe({\r\n next: (user) => {\r\n this.createCase({ user, navigateToCase })\r\n }\r\n })\r\n\r\n\r\n }\r\n\r\n\r\n createCase({ user, navigateToCase }: { user: IUserBE, navigateToCase: boolean }) {\r\n if (user.AccountsId === null) {\r\n const activity = newActivity({\r\n message: `Fant ingen regnskap på valgt medarbeider.`,\r\n type: \"failure\",\r\n timestamp: new Date()\r\n })\r\n\r\n this.als.appendActivity(activity)\r\n return\r\n }\r\n\r\n this.dlxClient.NewCase().subscribe({\r\n next: (newCasebe) => {\r\n newCasebe.Title = this.newCaseTitle!;\r\n newCasebe.AccountId = user.AccountsId!;\r\n newCasebe.Number = this.setNewCaseNumber();\r\n this.createCaseRoles(user.ContactId, newCasebe, navigateToCase)\r\n }\r\n })\r\n }\r\n createCaseRoles(contactId: string, casebe: ICaseBE, navigateToCase: boolean = false) {\r\n this.dlxClient.GetContactById(contactId).subscribe({\r\n next: (userContact) => {\r\n const temp_contact = new ContactBE(userContact);\r\n this.dlxClient.NewCaseContact().subscribe({\r\n next: (caseContact) => {\r\n const caseContactTemplateKH = JSON.parse(JSON.stringify(caseContact));\r\n const caseContactTemplateISA = JSON.parse(JSON.stringify(caseContact));\r\n let KH = this.sys.roleTypes!.filter(rt => rt.Id === RoleCode.KH)[0];\r\n let caseContactKH = this.populateNewCaseContact(casebe, caseContactTemplateKH, this.data.getContact(), KH);\r\n let ISA = this.sys.roleTypes!.filter(rt => rt.Id === RoleCode.ISA)[0];\r\n let caseContactISA = this.populateNewCaseContact(casebe, caseContactTemplateISA, temp_contact.getContact(), ISA);\r\n casebe.CaseContacts = [caseContactKH, caseContactISA];\r\n this.saveNewCase(casebe, navigateToCase);\r\n\r\n }\r\n })\r\n }\r\n })\r\n }\r\n\r\n saveNewCase(casebe: ICaseBE, navigateToCase: boolean = false) {\r\n this.dlxClient.SaveCase(casebe).subscribe({\r\n next: (res) => {\r\n if (navigateToCase) {\r\n this.router.navigate(['/case', res.Id])\r\n } else {\r\n this.updateContactCaseGrid(res.Id)\r\n }\r\n }\r\n })\r\n }\r\n\r\n updateContactCaseGrid(caseId: string) {\r\n this.dlxClient.GetCaseLimited(caseId).subscribe({\r\n next: (res) => {\r\n res.CaseRoleName = res.CaseRoleName === \"\" ? \"Klient hovedadressat\" : res.CaseRoleName;\r\n this.contactCasesGrid.addRow(res);\r\n this.newCaseDialog.close();\r\n },\r\n })\r\n }\r\n\r\n goToCase() {\r\n if (!this.selectedCase) return\r\n if (this.userRights.checkAccess(UserAreaEnum.CASE_MANAGMENT).accessName === 'NONE') {\r\n const activity = newActivity({\r\n message: `Ingen tilgang saksbehandling, kontakt din administrator.`,\r\n type: \"failure\",\r\n timestamp: new Date()\r\n })\r\n\r\n this.als.appendActivity(activity)\r\n alert(\"Ingen tilgang saksbehandling, kontakt din administrator.\")\r\n return\r\n }\r\n\r\n if (this.userRights.checkAccess(UserAreaEnum.CASE_MANAGMENT).accessName === 'OWN_CASES') {\r\n if (this.userRights.checkCaseAccessOwnCases({ sa: this.selectedCase.CaseResponsibleId!, sb: this.selectedCase.CaseHandlerId }, this.sys.loggedInUser.ContactId)) {\r\n this.router.navigate(['/case', this.selectedCase.Id]);\r\n } else {\r\n const activity = newActivity({\r\n message: `Ingen tilgang, du har kun tilgang til egne saker.`,\r\n type: \"failure\",\r\n timestamp: new Date()\r\n })\r\n\r\n this.als.appendActivity(activity)\r\n alert(\"Du har ikke tilgang til denne saken. Du har kun tilgang til egne saker.\")\r\n return\r\n }\r\n\r\n return\r\n }\r\n\r\n\r\n this.router.navigate(['/case', this.selectedCase.Id])\r\n }\r\n\r\n\r\n private populateNewCaseContact(casebe: ICaseBE, newCaseContact: ICaseContactBE, contact: IContactBE, roleType: IRoleTypeBE) {\r\n let newContact = newCaseContact;\r\n let phones = contact.Phones?.every(p => {\r\n return p.Number + p.PhoneType + \", \"\r\n })\r\n newContact.AccountsId = contact.AccountsId!;\r\n //newContact.AllPhoneNumbers = contact.AllPhoneNumbers;\r\n newContact.CaseId = casebe.Id;\r\n newContact.ContactId = contact.Id;\r\n newContact.ContactNumber = contact.Number!;\r\n newContact.ContactSectorId = contact.ContactSectorId;\r\n newContact.ContactInitials = contact.ShortForm!;\r\n newContact.ContactName = contact.Name;\r\n newContact.RoleTypeId = roleType.Id;\r\n newContact.RoleTypeName = roleType.Name;\r\n newContact.RoleTypeCategoryId = roleType.RoleTypeCategoryId;\r\n newContact.RoleTypeCode = roleType.Code;\r\n newContact.IsNew = true;\r\n return newContact\r\n }\r\n\r\n onGridRowSelecetion(data: any) {\r\n this.selectedCase = data.newSelection[0];\r\n }\r\n\r\n setNewCaseNumber() {\r\n let caseCounterType = this.sys.loggedInUserAccount.CaseCounterFunctionId?.toLocaleUpperCase();\r\n return caseCounterType === CaseNumberCounterType.A.toLocaleUpperCase() ? 0 : this.newCaseNumber!\r\n }\r\n ChangingValue(e: any) {\r\n\r\n }\r\n onInput(e: any) {\r\n\r\n }\r\n}\r\n", "
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n\r\n \r\n
\r\n
Opprett ny sak på kontakt
\r\n close\r\n
\r\n
\r\n\r\n \r\n\r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n", "/**\r\n * Utility class for working with GUIDs (Globally Unique Identifiers).\r\n */\r\nexport default class GUIDUTIL {\r\n // Regular expression to validate GUID format\r\n private static readonly guidRegex = /^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i;\r\n \r\n /**\r\n * Generates a new GUID.\r\n * @returns {string} A new GUID in the format `xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx`.\r\n */\r\n public static generate(): string {\r\n const s: string[] = [];\r\n const hexDigits = \"0123456789abcdef\";\r\n for (let i = 0; i < 36; i++) {\r\n s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1);\r\n }\r\n s[14] = \"4\"; // bits 12-15 of the time_hi_and_version field to 0010\r\n s[19] = hexDigits.substr((parseInt(s[19], 16) & 0x3) | 0x8, 1); // bits 6-7 of the clock_seq_hi_and_reserved to 01\r\n s[8] = s[13] = s[18] = s[23] = \"-\";\r\n \r\n const uuid = s.join(\"\");\r\n return uuid;\r\n }\r\n \r\n /**\r\n * Validates if a given string is in the correct GUID format.\r\n * @param {string} guid - The GUID to validate.\r\n * @returns {boolean} True if the GUID is valid, false otherwise.\r\n */\r\n public static validate(guid: string | null): boolean {\r\n if(guid === null) {\r\n return false;\r\n }\r\n return this.guidRegex.test(guid);\r\n }\r\n \r\n /**\r\n * Converts a given GUID to uppercase.\r\n * @param {string} guid - The GUID to convert.\r\n * @returns {string} The uppercase version of the GUID.\r\n */\r\n public static toUpperCase(guid: string): string {\r\n return guid.toUpperCase();\r\n }\r\n \r\n /**\r\n * Converts a given GUID to lowercase.\r\n * @param {string} guid - The GUID to convert.\r\n * @returns {string} The lowercase version of the GUID.\r\n */\r\n public static toLowerCase(guid: string): string {\r\n return guid.toLowerCase();\r\n }\r\n \r\n /**\r\n * Formats a given string (assuming it's a valid GUID without hyphens) into the standard GUID format with hyphens.\r\n * @param {string} guid - The GUID to format.\r\n * @returns {string} The formatted GUID with hyphens.\r\n */\r\n public static formatWithHyphens(guid: string): string {\r\n const cleaned = guid.replace(/[^0-9a-f]/gi, '');\r\n return [\r\n cleaned.slice(0, 8),\r\n cleaned.slice(8, 12),\r\n cleaned.slice(12, 16),\r\n cleaned.slice(16, 20),\r\n cleaned.slice(20, 32)\r\n ].join('-');\r\n }\r\n \r\n /**\r\n * Removes hyphens from a given GUID.\r\n * @param {string} guid - The GUID from which to remove hyphens.\r\n * @returns {string} The GUID without hyphens.\r\n */\r\n public static removeHyphens(guid: string): string {\r\n return guid.replace(/-/g, '');\r\n }\r\n }\r\n", "import { Component, EventEmitter, Input, OnInit, Output, ViewChild } from '@angular/core';\r\nimport { ContactBE } from 'src/app/classes/ContactBE';\r\nimport { DatalexClient } from '@datalex-software-as/datalex-client';\r\nimport { SystemCacheService } from 'src/app/services/system-cache.service';\r\nimport { toLocalIsoString } from 'src/app/util/DatalexDateTime';\r\nimport { CompareCode } from 'src/app/util/SortCompare';\r\nimport { ContactDataService } from '../contact-data.service';\r\nimport { ComboSelectFunctionsService } from 'src/app/services/combo-select-functions.service';\r\nimport { NgModel, FormsModule } from '@angular/forms';\r\nimport { IgxDialogComponent, IgxInputGroupComponent, IgxInputDirective, IgxLabelDirective, IgxSimpleComboComponent, IgxDatePickerComponent, IgxInputGroupModule, ISimpleComboSelectionChangingEventArgs } from '@infragistics/igniteui-angular';\r\nimport { BirthDayNumberValidatorDirective } from '../../../../directives/birth-day-number-validator.directive';\r\nimport { HeadingComponent } from '../../../UI/heading/heading.component';\r\nimport { CommonModule, NgIf } from '@angular/common';\r\nimport GUIDUTIL from 'src/app/util/GUID';\r\nimport { UserRightsProviderService } from 'src/app/services/user-rights-provider.service';\r\nimport { UserRightTypeEnum, UserAreaEnum } from 'src/app/util/UserRightUtil';\r\n\r\n@Component({\r\n selector: 'app-contact-information',\r\n templateUrl: './contact-information.component.html',\r\n styleUrls: ['./contact-information.component.scss'],\r\n standalone: true,\r\n imports: [NgIf, CommonModule, HeadingComponent, IgxInputGroupModule, IgxInputGroupComponent, FormsModule, IgxInputDirective, IgxLabelDirective, IgxSimpleComboComponent, IgxDatePickerComponent, BirthDayNumberValidatorDirective]\r\n})\r\nexport class ContactInformationComponent implements OnInit {\r\n @Input() hasEditRights: boolean = false;\r\n\r\n constructor(private sys: SystemCacheService, private dlxClient: DatalexClient, public combo: ComboSelectFunctionsService, public cData: ContactDataService, private userRights: UserRightsProviderService) {\r\n }\r\n\r\n @ViewChild('nationalIdentityNumberCtrl') nationalIdentityNumberCtrl!: NgModel;\r\n @ViewChild('nationalNumberErrorDialog') public nationalNumberErrorDialog!: IgxDialogComponent;\r\n @Output() nationalNumberValidity: EventEmitter = new EventEmitter();\r\n\r\n _data!: ContactBE;\r\n @Input() set data(val: ContactBE) {\r\n this._data = val;\r\n this.initilizeComponent();\r\n }\r\n get data(): ContactBE {\r\n return this._data;\r\n }\r\n @Input() componentTitle!: string | null;\r\n\r\n\r\n isCompany!: boolean | null;\r\n contactSectorId!: string | null;\r\n contactNumber!: number | null;\r\n firstName!: string;\r\n lastName!: string;\r\n contactGender: boolean | null = null\r\n name!: string | null;\r\n name2!: string | null;\r\n pseudoName!: string | null;\r\n occupation!: string | null;\r\n title!: string | null;\r\n shortForm!: string | null;\r\n businessSectorId!: string | null;\r\n nationalIdentityNumber!: string | null;\r\n dateOfBirth!: string | null;\r\n organizationNumber!: string | null;\r\n organizationalStructureId!: string | null;\r\n publicCompany!: boolean | null;\r\n\r\n responsibleUserId!: string | null;\r\n\r\n inputBlurred = false;\r\n\r\n toLocalIsoString = toLocalIsoString;\r\n\r\n genders = [\r\n {\r\n code: \"M\",\r\n label: \"Mann\",\r\n value: true,\r\n id: 'gender_m'\r\n },\r\n {\r\n code: \"K\",\r\n label: \"Kvinne\",\r\n value: false,\r\n id: \"gender_k\"\r\n },\r\n {\r\n code: \"IO\",\r\n label: \"Ikke oppgitt\",\r\n value: null,\r\n id: 'gender_io'\r\n }\r\n ]\r\n\r\n selectedCountryCode!: string | null;\r\n\r\n ngOnInit(): void {\r\n\r\n // this.selectedCountryCode = this.cData.contactCountry;\r\n this.selectedCountryCode = this.data.getCountry()?.Code ?? null;\r\n\r\n this.dlxClient.GetBusinessSectors().subscribe({\r\n next: (res) => { this.cData.businessSectors = res },\r\n });\r\n\r\n\r\n try {\r\n this.cData.allEmployees = this.sys.allEmployees.sort(CompareCode);\r\n } catch (err) {\r\n this.sys.isReady.subscribe((sys) => {\r\n this.cData.allEmployees = sys.allEmployees.sort(CompareCode);\r\n })\r\n }\r\n\r\n\r\n }\r\n\r\n getGenderId(value: boolean | null) {\r\n return this.genders.filter(g => g.value === value)![0].id\r\n }\r\n getGenderValue(id: string) {\r\n return this.genders.filter(g => g.id === id)![0].value\r\n }\r\n\r\n fixNullOutputFromSelect(val: any) {\r\n this.log({ val })\r\n if (val === \"\" || val === null || val === undefined) {\r\n return val.oldSelection;\r\n }\r\n\r\n return val\r\n }\r\n\r\n initilizeComponent() {\r\n\r\n this.isCompany = this.data.getIsCompany();\r\n this.contactSectorId = this.data.getContactSectorId()!.toUpperCase();\r\n this.contactNumber = this.data.getNumber();\r\n this.firstName = this.data.getFirstName();\r\n this.lastName = this.data.getLastName();\r\n this.contactGender = this.data.getGender();\r\n this.name = this.data.getName();\r\n this.name2 = this.data.getName2();\r\n this.pseudoName = this.data.getPseudoName();\r\n this.occupation = this.data.getOccupation();\r\n this.title = this.data.getTitle();\r\n this.shortForm = this.data.getShortForm();\r\n this.businessSectorId = this.data.getBusinessSectorId();\r\n this.nationalIdentityNumber = this.data.getNationalIdentityNumber();\r\n this.dateOfBirth = this.data.getDateOfBirth() !== null ? new Date(this.data.getDateOfBirth()!).toDateString() : null\r\n this.organizationNumber = this.data.getOrganizationNumber();\r\n this.organizationalStructureId = this.data.getOrganizationalStructureId();\r\n this.publicCompany = this.data.getPublicCompany();\r\n\r\n if (this.data.getDateOfBirth()) {\r\n let date = new Date(this.data.getDateOfBirth()!)\r\n this.dateOfBirth = date.getFullYear() + '-' + ('0' + (date.getMonth() + 1)).slice(-2) + '-' + ('0' + date.getDate()).slice(-2);\r\n } else {\r\n this.dateOfBirth = null;\r\n }\r\n this.responsibleUserId = this.data.getResponsibleUserId();\r\n\r\n this.cData.componentInit();\r\n }\r\n\r\n // setCountry(ev: string) {\r\n // const country = this.cData.countries.filter(i => i.CountryCode === ev)[0];\r\n // this.dlxClient.GetCountryByCode(country.CountryCode).subscribe({\r\n // next: (res) => {\r\n // this.data.setCountry(res);\r\n // this.data.setCountryId(res.Id);\r\n // }\r\n // })\r\n // }\r\n\r\n\r\n setCountry(ev: string) {\r\n\r\n const country = this.cData.countries.find(i => i.Code === ev);\r\n if (country) {\r\n this.dlxClient.GetCountryByCode(country.Code).subscribe({\r\n next: (res) => {\r\n\r\n this.data.setCountry(res);\r\n this.data.setCountryId(res.Id);\r\n // this.cData.contactCountry = res.Code;\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n\r\n organizationalStructureChange(id: string | null) {\r\n this.data.setOrganizationalStructureId(id);\r\n }\r\n\r\n businessSectorChange(id: string | null) {\r\n this.data.setBusinessSectorId(id);\r\n }\r\n\r\n log(e: any) {\r\n\r\n }\r\n\r\n public isNationalNumberValid(): boolean | undefined {\r\n if (!this.nationalIdentityNumberCtrl) return undefined;\r\n\r\n return !!this.nationalIdentityNumberCtrl.valid;\r\n }\r\n\r\n\r\n get clientResponsibleAccessHandler(): boolean {\r\n if (this.hasEditRights === false) {\r\n return true;\r\n }\r\n\r\n const validationResult = GUIDUTIL.validate(this.responsibleUserId);\r\n return this.userRights.checkAccess(validationResult ? UserAreaEnum.CONTACT_CHANGE_CLIENTRESPONSIBLE : UserAreaEnum.CONTACT_SET_CLIENTRESPONSIBLE).accessId.toUpperCase() === UserRightTypeEnum.NONE;\r\n }\r\n\r\n\r\n coworkerSectorId = 'b414c24c-ca80-4c32-bfff-47090de59c4d';\r\n\r\n get isCoWorker(): boolean {\r\n return this.data.getContactSectorId()?.toUpperCase() === this.coworkerSectorId.toUpperCase();\r\n }\r\n\r\n\r\n onCountryChange(code: string) {\r\n const country = this.cData.countries.find(i => i.Code === code);\r\n\r\n if (country) {\r\n this.dlxClient.GetCountryByCode(country.Code).subscribe({\r\n next: (res) => {\r\n this.data.setCountry(res);\r\n this.data.setCountryId(res.Id);\r\n this.selectedCountryCode = res.Code;\r\n this.data.isChanged = true;\r\n this.cData.contactCountry = res.Code;\r\n }\r\n });\r\n }\r\n }\r\n\r\n\r\n\r\n onContactSectorChange(e: ISimpleComboSelectionChangingEventArgs): void {\r\n const { newSelection, newValue, oldValue } = e;\r\n const id = newSelection ? newSelection.Id : null;\r\n\r\n if (newValue === undefined) {\r\n this.contactSectorId = oldValue;\r\n e.cancel = true;\r\n return;\r\n }\r\n\r\n if (this.contactSectorId !== id) {\r\n this.contactSectorId = id;\r\n this.data.setContactSectorId(id);\r\n } else {\r\n e.cancel = true;\r\n }\r\n }\r\n}\r\n\r\n", "
\r\n @if(componentTitle){\r\n \r\n }\r\n
\r\n \r\n \r\n \r\n \r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n @if(inputBlurred && nationalIdentityNumberCtrl.errors && nationalIdentityNumberCtrl.touched){\r\n
\r\n * Fødselsnummeret er ugyldig.\r\n
\r\n\r\n }\r\n\r\n
\r\n\r\n \r\n \r\n \r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n\r\n
\r\n
", "import { Component, Input, OnInit, ViewChild } from '@angular/core';\r\nimport { ContactBE } from 'src/app/classes/ContactBE';\r\nimport { DatalexClient, IContactAddressBE, IContactPhoneBE, ICountryBE, IPostalAddressBE } from '@datalex-software-as/datalex-client';\r\nimport { CountryService } from 'src/app/services/country.service';\r\nimport { ScreenDimensionService } from 'src/app/services/screen-dimension.service';\r\nimport { AddressTypeIdEnum, AddressTypes } from 'src/app/util/AddressTypeUtil';\r\nimport { PhoneNumberTypesArray, PhoneNumberTypeIdEnum } from 'src/app/util/PhoneNumberTypeUtil';\r\nimport { ContactDataService } from '../contact-data.service';\r\nimport { ComboSelectFunctionsService } from 'src/app/services/combo-select-functions.service';\r\nimport { EmptyGuid } from 'src/app/util/RandomId';\r\nimport { NgModel, FormsModule } from '@angular/forms';\r\nimport { DlxAddressInputComponent } from '../../../UI/dlx-address-input/dlx-address-input.component';\r\nimport { NgIf } from '@angular/common';\r\nimport { EmailValidatorDirective } from '../../../../directives/emailvalidator.directive';\r\nimport { IgxLabelDirective, IgxSimpleComboComponent, IgxInputGroupComponent, IgxInputDirective, IgxInputGroupModule } from '@infragistics/igniteui-angular';\r\n\r\n@Component({\r\n selector: 'app-contact-contactinfo',\r\n templateUrl: './contact-contactinfo.component.html',\r\n styleUrls: ['./contact-contactinfo.component.scss'],\r\n standalone: true,\r\n imports: [IgxLabelDirective, IgxInputGroupModule, IgxSimpleComboComponent, FormsModule, IgxInputGroupComponent, IgxInputDirective, EmailValidatorDirective, NgIf, DlxAddressInputComponent]\r\n})\r\nexport class ContactContactinfoComponent implements OnInit {\r\n @Input() hasEditRights: boolean = false;\r\n\r\n @ViewChild('emailAddressCtrl') emailAddressCtrl!: NgModel;\r\n @ViewChild('invoiceEmailAddressCtrl') invoiceEmailAddressCtrl!: NgModel;\r\n\r\n\r\n\r\n constructor(public contactData: ContactDataService, public country: CountryService, private dlxClient: DatalexClient, public screen: ScreenDimensionService, public combo: ComboSelectFunctionsService) { }\r\n _data!: ContactBE;\r\n @Input() set data(value: ContactBE) {\r\n this._data = value;\r\n \r\n this.extractAddresses(JSON.parse(JSON.stringify(value.getAddresses())));\r\n this.setPhoneArray()\r\n }\r\n\r\n get data() {\r\n return this._data;\r\n }\r\n\r\n initAttempts = 0;\r\n\r\n inititalized = false;\r\n\r\n emailAddress!: string | null;\r\n invoiceEmailAddress!: string | null;\r\n webAddress!: string | null;\r\n\r\n ehfInvoice!: boolean | null;\r\n vatObligated!: boolean | null;\r\n digipostInvoice!: boolean | null;\r\n emailInvoice!: boolean | null;\r\n digipostInvoiceIndetermined: boolean = true;\r\n emailInvoiceIndetermined = true;\r\n\r\n showEmailErrorMessage: boolean = false;\r\n showInvoiceEmailErrorMessage: boolean = false;\r\n\r\n\r\n ngOnInit(): void {\r\n this.initilizeComponent();\r\n }\r\n\r\n initilizeComponent() {\r\n try {\r\n if (!this.countryBe) {\r\n if (this.data.getCountryId() !== null) {\r\n this.dlxClient.GetCountry(this.data.getCountryId()!).subscribe({\r\n next: (response) => {\r\n this.countryBe = response;\r\n }\r\n })\r\n }\r\n else {\r\n this.dlxClient.GetCountryByCode('NO').subscribe({\r\n next: (response) => {\r\n this.countryBe = response;\r\n }\r\n })\r\n }\r\n\r\n }\r\n\r\n\r\n this.emailAddress = this.data.getEmailAddress();\r\n this.invoiceEmailAddress = this.data.getEmailAddressInvoice();\r\n this.webAddress = this.data.getWebAddress();\r\n this.currentPhoneNumber = this.phonesNumbers.find(el => el.PhoneTypeId === this.currentPhoneTypeId)?.Number || null;\r\n this.ehfInvoice = this.data.getEHFInvoice();\r\n this.vatObligated = this.data.getVatObligated();\r\n this.digipostInvoice = this.data.getDigipostInvoice();\r\n if (this.digipostInvoice !== null) this.digipostInvoiceIndetermined = false;\r\n this.emailInvoice = this.data.getEmailInvoice();\r\n if (this.emailInvoice !== null) this.emailInvoiceIndetermined = false;\r\n this.extractAddresses(JSON.parse(JSON.stringify(this.data.getAddresses())));\r\n\r\n\r\n this.inititalized = true;\r\n\r\n }\r\n catch (error) {\r\n setTimeout(() => {\r\n\r\n this.initilizeComponent();\r\n\r\n }, 100)\r\n\r\n }\r\n }\r\n\r\n setPhoneArray() {\r\n this.phonesNumbers = [];\r\n this.phoneNumberTypes.forEach(type => {\r\n this.phonesNumbers.push({\r\n IsNew: true,\r\n IsDeleted: false,\r\n Id: EmptyGuid,\r\n ContactId: EmptyGuid,\r\n PhoneTypeId: type.Id,\r\n PhoneType: type.Name,\r\n Number: \"\",\r\n CountryCode: \"\",\r\n Extension: null,\r\n Timestamp: []\r\n })\r\n })\r\n\r\n const existingNumbers: IContactPhoneBE[] | null = JSON.parse(JSON.stringify(this.data.getPhones()));\r\n if (existingNumbers === null) return\r\n existingNumbers.forEach(num => {\r\n const index = this.phonesNumbers.findIndex(n => n.PhoneTypeId === num.PhoneTypeId);\r\n if (index === -1) return\r\n this.phonesNumbers[index] = num;\r\n });\r\n }\r\n\r\n\r\n\r\n countryBe!: ICountryBE;\r\n addressTypes = AddressTypes;\r\n phoneNumberTypes = PhoneNumberTypesArray;\r\n phonesNumbers!: IContactPhoneBE[];\r\n currentPhoneTypeId = PhoneNumberTypeIdEnum.Mobile;\r\n currentPhoneNumber!: string | null;\r\n\r\n onPhoneTypeChange(e: string) {\r\n if (!e) return\r\n const existingNumber = this.phonesNumbers.find(el => el.PhoneTypeId === e)!;\r\n this.currentPhoneNumber = existingNumber.Number ?? \"\";\r\n }\r\n\r\n onPhoneInputChange(e: any) {\r\n switch (this.currentPhoneTypeId) {\r\n case PhoneNumberTypeIdEnum.Private:\r\n this.setPhoneNumber(this.phonesNumbers.findIndex(type => type.PhoneTypeId === PhoneNumberTypeIdEnum.Private))\r\n break;\r\n case PhoneNumberTypeIdEnum.Mobile:\r\n this.setPhoneNumber(this.phonesNumbers.findIndex(type => type.PhoneTypeId === PhoneNumberTypeIdEnum.Mobile))\r\n break;\r\n case PhoneNumberTypeIdEnum.Work:\r\n this.setPhoneNumber(this.phonesNumbers.findIndex(type => type.PhoneTypeId === PhoneNumberTypeIdEnum.Work))\r\n break;\r\n case PhoneNumberTypeIdEnum.Div:\r\n this.setPhoneNumber(this.phonesNumbers.findIndex(type => type.PhoneTypeId === PhoneNumberTypeIdEnum.Div))\r\n break;\r\n case PhoneNumberTypeIdEnum.Fax:\r\n this.setPhoneNumber(this.phonesNumbers.findIndex(type => type.PhoneTypeId === PhoneNumberTypeIdEnum.Fax))\r\n break;\r\n case PhoneNumberTypeIdEnum.Vacation:\r\n this.setPhoneNumber(this.phonesNumbers.findIndex(type => type.PhoneTypeId === PhoneNumberTypeIdEnum.Vacation))\r\n break;\r\n default:\r\n throw new Error('Uknown phonenumber type')\r\n }\r\n }\r\n\r\n setPhoneNumber(index: number) {\r\n if (this.currentPhoneNumber) {\r\n this.phonesNumbers[index].Number = this.currentPhoneNumber;\r\n } else {\r\n this.phonesNumbers[index].IsDeleted = true;\r\n }\r\n\r\n this.data.setPhones(this.phonesNumbers.filter(n => n.Number !== \"\" || n.IsDeleted === true));\r\n }\r\n\r\n\r\n addressTypeChange(type: string) {\r\n this._activeType = type;\r\n }\r\n\r\n addressDropdownData = [\r\n {\r\n Id: \"post\",\r\n Name: \"Postadresse\"\r\n },\r\n {\r\n Id: \"visit\",\r\n Name: \"Besøksadresse\"\r\n },\r\n {\r\n Id: \"invoice\",\r\n Name: \"Fakturaadresse\"\r\n },\r\n {\r\n Id: \"registered\",\r\n Name: \"Folkeregisteradresse\"\r\n },\r\n ]\r\n\r\n _activeType = \"post\"\r\n postalAddress!: IPostalAddressBE;\r\n\r\n postAddress!: string;\r\n visitAddress!: string;\r\n registeredAddress!: string;\r\n invoiceAddress!: string;\r\n\r\n postAddressObj!: IContactAddressBE | null;\r\n visitAddressObj!: IContactAddressBE | null;\r\n invoiceAddressObj!: IContactAddressBE | null;\r\n registeredAddressObj!: IContactAddressBE | null;\r\n\r\n adressesToSave() {\r\n return [this.postAddressObj, this.visitAddressObj, this.registeredAddressObj, this.invoiceAddressObj].filter(adr => adr?.Address && adr?.PostalAddress?.PostCode !== \"\" || adr?.IsDeleted)\r\n }\r\n\r\n setAddressObj(obj: IContactAddressBE, name: string) { \r\n if(obj === null || obj.Address === null) return\r\n if (!obj.Address.trim()) {\r\n //@ts-ignore\r\n this[name].IsDeleted = true;\r\n this.data.setAddresses(this.adressesToSave() as IContactAddressBE[])\r\n return\r\n }\r\n //@ts-ignore\r\n this[name] = obj;\r\n //@ts-ignore\r\n this[name].IsDeleted = false;\r\n \r\n this.data.setAddresses(this.adressesToSave() as IContactAddressBE[])\r\n \r\n\r\n }\r\n\r\n checkBoxChange(event: any, target: 'setVatObligated' | 'setEmailInvoice' | 'setDigipostInvoice') {\r\n //@ts-ignore\r\n this.data[target](event.target!.checked);\r\n };\r\n\r\n\r\n extractAddresses(addresses: IContactAddressBE[] | null) {\r\n if (addresses === null) return\r\n const visit = addresses.filter(adr => adr.AddressTypeId === AddressTypeIdEnum.VisitAddress)[0];\r\n const post = addresses.filter(adr => adr.AddressTypeId === AddressTypeIdEnum.PostAddress)[0];\r\n const registered = addresses.filter(adr => adr.AddressTypeId === AddressTypeIdEnum.RegisteredAddress)[0];\r\n const invoice = addresses.filter(adr => adr.AddressTypeId === AddressTypeIdEnum.InvoiceAddress)[0];\r\n\r\n if (visit) {\r\n this.visitAddressObj = visit;\r\n this.visitAddress = this.visitAddressObj.Address\r\n }\r\n if (post) {\r\n this.postAddressObj = post;\r\n this.postAddress = this.postAddressObj.Address\r\n }\r\n if (registered) {\r\n this.registeredAddressObj = registered;\r\n this.registeredAddress = this.registeredAddressObj.Address\r\n }\r\n if (invoice) {\r\n this.invoiceAddressObj = invoice;\r\n this.invoiceAddress = this.invoiceAddressObj.Address\r\n }\r\n }\r\n\r\n hideErrorMessage(inputName: string) {\r\n if (inputName === 'emailAddress') {\r\n this.showEmailErrorMessage = false;\r\n } else if (inputName === 'emailAddressInvoice') {\r\n this.showInvoiceEmailErrorMessage = false;\r\n }\r\n }\r\n\r\n showErrorMessageOnBlur(inputName: string) {\r\n if (inputName === 'emailAddress' && this.emailAddressCtrl.invalid) {\r\n this.showEmailErrorMessage = true;\r\n } else if (inputName === 'emailAddressInvoice' && this.invoiceEmailAddressCtrl.invalid) {\r\n this.showInvoiceEmailErrorMessage = true;\r\n }\r\n }\r\n\r\n}\r\n\r\n\r\n// Define a base type for phone number objects to avoid repetition\r\ntype BasePhoneNumber = {\r\n ContactId: string;\r\n CountryCode: string;\r\n Extension: string | null;\r\n Id: string;\r\n IsDeleted: boolean;\r\n IsNew: boolean;\r\n Number: string;\r\n Timestamp: [];\r\n};\r\n\r\n// Extend the base type for specific phone types\r\ntype WorkPhoneNumber = BasePhoneNumber & { PhoneType: \"Telefon Arbeid\"; PhoneTypeId: PhoneNumberTypeIdEnum.Work };\r\ntype MobilePhoneNumber = BasePhoneNumber & { PhoneType: \"Mobil\"; PhoneTypeId: PhoneNumberTypeIdEnum.Mobile };\r\ntype FaxPhoneNumber = BasePhoneNumber & { PhoneType: \"Faks\"; PhoneTypeId: PhoneNumberTypeIdEnum.Fax };\r\ntype VacationPhoneNumber = BasePhoneNumber & { PhoneType: \"Telefon Ferie\"; PhoneTypeId: PhoneNumberTypeIdEnum.Vacation };\r\ntype DivPhoneNumber = BasePhoneNumber & { PhoneType: \"Telefon diverse\"; PhoneTypeId: PhoneNumberTypeIdEnum.Div };\r\ntype PrivatePhoneNumber = BasePhoneNumber & { PhoneType: \"Telefon privat\"; PhoneTypeId: PhoneNumberTypeIdEnum.Private };\r\n\r\n// Define the TPhoneNumberArray type as a tuple\r\nexport type TPhoneNumberArray = [\r\n WorkPhoneNumber,\r\n MobilePhoneNumber,\r\n FaxPhoneNumber,\r\n VacationPhoneNumber,\r\n DivPhoneNumber,\r\n PrivatePhoneNumber\r\n];", "
\r\n
\r\n Telefon\r\n
\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n E-post og web\r\n\r\n
\r\n \r\n \r\n \r\n \r\n
\r\n * Ugyldig e-postadresse.\r\n
\r\n
\r\n \r\n
\r\n \r\n \r\n \r\n \r\n
\r\n * Ugyldig e-postadresse.\r\n
\r\n
\r\n \r\n\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n Adresser\r\n 550; then addressSelectorButtons; else addressSelectorDropdown\">\r\n @if(countryBe) {\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n }\r\n
\r\n
\r\n Faktura\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n\r\n \r\n\r\n \r\n\r\n \r\n
\r\n
\r\n\r\n
\r\n \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 BrregSearchService {\r\n\r\n private $UNIT_URL = 'https://data.brreg.no/enhetsregisteret/api/enheter/' as const;\r\n\r\n constructor() {\r\n\r\n }\r\n\r\n async getUnitByOrganizationNumber(organizationNumber: string): Promise {\r\n const response = await fetch(`${this.$UNIT_URL}${organizationNumber}`);\r\n return response.json();\r\n }\r\n}\r\n\r\n\r\nexport interface Unit {\r\n organisasjonsnummer: string;\r\n navn: string;\r\n organisasjonsform: {\r\n kode: string;\r\n beskrivelse: string;\r\n utgaatt?: string;\r\n _links?: {\r\n self: {\r\n href: string;\r\n };\r\n };\r\n };\r\n postadresse?: Address;\r\n forretningsadresse?: Address;\r\n registreringsdatoEnhetsregisteret: string;\r\n registrertIMvaregisteret: boolean;\r\n maalform: \"Bokmål\" | \"Nynorsk\" | \"Engelsk\";\r\n naeringskode1?: IndustryCode;\r\n naeringskode2?: IndustryCode;\r\n naeringskode3?: IndustryCode;\r\n hjelpeenhetskode?: IndustryCode;\r\n underAvvikling: boolean;\r\n underAvviklingDato?: string;\r\n konkurs: boolean;\r\n konkursdato?: string;\r\n tvangsavvikletPgaManglendeSlettingDato?: string;\r\n tvangsopplostPgaManglendeDagligLederDato?: string;\r\n tvangsopplostPgaManglendeRevisorDato?: string;\r\n tvangsopplostPgaManglendeRegnskapDato?: string;\r\n tvangsopplostPgaMangelfulltStyreDato?: string;\r\n vedtektsdato?: string;\r\n vedtektsfestetFormaal?: string[];\r\n aktivitet?: string[];\r\n registrertIStiftelsesregisteret: boolean;\r\n registrertIFrivillighetsregisteret: boolean;\r\n stiftelsesdato?: string;\r\n institusjonellSektorkode?: {\r\n kode: string;\r\n beskrivelse: string;\r\n };\r\n registrertIForetaksregisteret: boolean;\r\n hjemmeside?: string;\r\n sisteInnsendteAarsregnskap?: string;\r\n frivilligMvaRegistrertBeskrivelser?: string[];\r\n underTvangsavviklingEllerTvangsopplosning: boolean;\r\n antallAnsatte?: number;\r\n harRegistrertAntallAnsatte: boolean;\r\n overordnetEnhet?: string;\r\n registreringsdatoAntallAnsatteNAVAaregisteret?: string;\r\n registreringsdatoAntallAnsatteEnhetsregisteret?: string;\r\n registreringsdatoMerverdiavgiftsregisteret?: string;\r\n registreringsdatoMerverdiavgiftsregisteretEnhetsregisteret?: string;\r\n registreringsdatoFrivilligMerverdiavgiftsregisteret?: string;\r\n registreringsdatoForetaksregisteret?: string;\r\n registreringsdatoFrivillighetsregisteret?: string;\r\n registrertIPartiregisteret: boolean;\r\n registreringsdatoPartiregisteret?: string;\r\n epostadresse?: string;\r\n telefon?: string;\r\n mobil?: string;\r\n _links?: {\r\n overordnetEnhet?: {\r\n href: string;\r\n };\r\n self: {\r\n href: string;\r\n };\r\n };\r\n}\r\n\r\nexport interface Address {\r\n land: string;\r\n landkode: string;\r\n postnummer: string;\r\n poststed: string;\r\n adresse: string[];\r\n kommune?: string;\r\n kommunenummer?: string;\r\n}\r\n\r\nexport interface IndustryCode {\r\n kode: string;\r\n beskrivelse: string;\r\n}", "import { AfterViewInit, Component, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute } from '@angular/router';\r\nimport { DatalexClient, IContactExtendedBE } from '@datalex-software-as/datalex-client';\r\nimport { ScreenDimensionService } from 'src/app/services/screen-dimension.service';\r\nimport { GetContactSectorById } from 'src/app/util/ContactSectorUtil';\r\nimport { ContactDataService } from './contact-data.service';\r\nimport { ContactBE } from 'src/app/classes/ContactBE';\r\nimport { ContactSummaryComponent } from './contact-summary/contact-summary.component';\r\nimport { ContactCasesComponent } from './contact-cases/contact-cases.component';\r\nimport { SystemCacheService } from 'src/app/services/system-cache.service';\r\nimport { HttpErrorResponse } from '@angular/common/http';\r\nimport { IgxDialogComponent, IgxButtonDirective, IgxRippleDirective, IgxAccordionComponent, IgxExpansionPanelComponent, IgxExpansionPanelHeaderComponent, IgxExpansionPanelTitleDirective, IgxExpansionPanelBodyComponent, IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabHeaderLabelDirective, IgxTabContentComponent, IgxInputGroupModule } from '@infragistics/igniteui-angular';\r\nimport { ContactInformationComponent } from './contact-information/contact-information.component';\r\nimport { HeadingComponent } from '../../UI/heading/heading.component';\r\nimport { TitleComponent } from '../../UI/title/title.component';\r\nimport { ContactContactinfoComponent } from './contact-contactinfo/contact-contactinfo.component';\r\nimport { NgIf } from '@angular/common';\r\nimport { UserAreaEnum, UserRightTypeEnum } from 'src/app/util/UserRightUtil';\r\nimport { UserRightsProviderService } from 'src/app/services/user-rights-provider.service';\r\nimport { BrregSearchService } from 'src/app/services/brreg-search.service';\r\nimport { ActivityLogService } from '../../UI/activity-log-overlay/activity-log.service';\r\nimport newActivity from 'src/app/classes/Activity/Actvity';\r\n\r\n\r\n@Component({\r\n selector: 'app-contact',\r\n templateUrl: './contact.component.html',\r\n styleUrls: ['./contact.component.scss'],\r\n standalone: true,\r\n imports: [NgIf, IgxButtonDirective, IgxRippleDirective, IgxAccordionComponent, IgxExpansionPanelComponent, IgxExpansionPanelHeaderComponent, IgxExpansionPanelTitleDirective, IgxExpansionPanelBodyComponent, ContactSummaryComponent, ContactInformationComponent, IgxTabsComponent, IgxTabItemComponent, IgxTabHeaderComponent, IgxTabHeaderLabelDirective, IgxTabContentComponent, ContactCasesComponent, ContactContactinfoComponent, TitleComponent, HeadingComponent, IgxDialogComponent]\r\n})\r\nexport class ContactComponent implements OnInit, AfterViewInit {\r\n @ViewChild('nationalNumberErrorDialog') public nationalNumberErrorDialog!: IgxDialogComponent;\r\n @ViewChild(ContactInformationComponent) contactInfoComponent!: ContactInformationComponent;\r\n\r\n contactId: string | null;\r\n contact!: IContactExtendedBE;\r\n contactSector: string = \"\";\r\n expanded: boolean = true;\r\n contactChanged: boolean = false;\r\n lastPageOfset: number = 0;\r\n loaded = false;\r\n\r\n locked: boolean = true;\r\n toggleLock() {\r\n this.locked = !this.locked;\r\n }\r\n\r\n contactName!: string;\r\n\r\n contactBe!: ContactBE;\r\n\r\n\r\n hasEditRights: boolean = false;\r\n\r\n getContactSectorById(id: string | null) {\r\n const contactSector = GetContactSectorById(id);\r\n if (!contactSector) return \"\";\r\n if (contactSector.Code === \"S\") return \"Selvstendig næringsdrivende\";\r\n\r\n return contactSector.Name;\r\n }\r\n\r\n constructor(private aRoute: ActivatedRoute, public screen: ScreenDimensionService, private brreg: BrregSearchService, private dlxClient: DatalexClient, public contactData: ContactDataService, private sys: SystemCacheService, private rights: UserRightsProviderService, private als: ActivityLogService) {\r\n this.contactId = this.aRoute.snapshot.paramMap.get('id') as string;\r\n this.contactData.setContact(this.contactId);\r\n\r\n try {\r\n const contactAccess = this.rights.checkAccess(UserAreaEnum.CONTACTS);\r\n this.hasEditRights = contactAccess.accessId.toUpperCase() === UserRightTypeEnum.FULL.toUpperCase();\r\n } catch (error) {\r\n this.sys.isReady.subscribe(() => {\r\n const contactAccess = this.rights.checkAccess(UserAreaEnum.CONTACTS);\r\n this.hasEditRights = contactAccess.accessId.toUpperCase() === UserRightTypeEnum.FULL.toUpperCase();\r\n })\r\n }\r\n\r\n this.locked = false //this.screen.width > 550 ? false : true;\r\n }\r\n\r\n @ViewChild(ContactSummaryComponent) contactSummary!: ContactSummaryComponent;\r\n @ViewChild(ContactCasesComponent) contactCases!: ContactCasesComponent;\r\n\r\n\r\n\r\n ngOnInit(): void {\r\n\r\n\r\n\r\n\r\n this.aRoute.data.subscribe({\r\n next: (data) => {\r\n this.contactBe = new ContactBE(data['contact']);\r\n this.setContactName();\r\n this.initializeComponent();\r\n },\r\n })\r\n\r\n }\r\n\r\n ngAfterViewInit(): void {\r\n\r\n }\r\n\r\n initializeComponent() {\r\n this.loaded = true;\r\n }\r\n\r\n changeExpand() {\r\n this.expanded = !this.expanded;\r\n }\r\n\r\n\r\n collapse() {\r\n this.expanded = false;\r\n }\r\n\r\n onContactInformationChange() {\r\n\r\n\r\n }\r\n\r\n onContactChange() {\r\n }\r\n\r\n onSave() {\r\n this.save();\r\n\r\n }\r\n\r\n\r\n save() {\r\n\r\n if (!this.hasEditRights) {\r\n window.alert('Du har ikke rettigheter til å redigere denne kontakten.');\r\n return;\r\n }\r\n if (this.contactInfoComponent.isNationalNumberValid() !== undefined) {\r\n if (this.contactInfoComponent.isNationalNumberValid() === false) {\r\n this.nationalNumberErrorDialog.open()\r\n return;\r\n }\r\n }\r\n\r\n this.dlxClient.SaveContact(this.contactBe.getContact()).subscribe({\r\n next: (response) => {\r\n this.contactBe = new ContactBE(response);\r\n this.setContactName();\r\n if (this.contactSummary) {\r\n this.contactSummary.refresh();\r\n };\r\n this.contactCases.updateCaseSA(this.contactBe.getResponsibleUserId());\r\n\r\n },\r\n error: (err: HttpErrorResponse) => {\r\n if (err.error === \"Record changed by another session\") {\r\n this.als.appendActivity(newActivity({\r\n message: `Kontakten er endret i en annen sesjon. Vennligst prøv igjen.`,\r\n type: \"warning\",\r\n timestamp: new Date()\r\n }))\r\n // this.loaded = false;\r\n this.dlxClient.GetContactById(this.contactId!).subscribe({\r\n next: (contact) => {\r\n this.contactBe = new ContactBE(contact);\r\n this.setContactName();\r\n this.initializeComponent();\r\n },\r\n })\r\n }\r\n }\r\n })\r\n }\r\n\r\n\r\n setContactName() {\r\n if (this.contactBe.getName() !== null) {\r\n this.contactName = this.contactBe.getName();\r\n }\r\n else {\r\n this.contactName = `${this.contactBe.getLastName()} ${this.contactBe.getFirstName()}`;\r\n }\r\n }\r\n\r\n handleNationalNumberValidity(isValid: boolean) {\r\n if (!isValid) {\r\n this.save();\r\n } else {\r\n this.nationalNumberErrorDialog.open()\r\n }\r\n }\r\n\r\n async checkbrreg() {\r\n const id = this.contactBe.getOrganizationNumber();\r\n if (id === null) return;\r\n const unit = await this.brreg.getUnitByOrganizationNumber(id)\r\n }\r\n\r\n}\r\n", "
\r\n \r\n = 475 && screen.width <= 1024; then tabletTemplate\">\r\n 1024; then desktopTemplate\">\r\n
\r\n\r\n\r\n
\r\n
{{contactName}}
\r\n\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n Kontaktsammendrag\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Kontaktinformasjon\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Saker\r\n folder\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Adresse/Tlf\r\n contact_emergency\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n \r\n \r\n \r\n {{ contactBe.getIsUser() ? 'Medarbeider' : contactBe.getIsCompany() ? 'Bedrift'\r\n : 'Person' }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Kontaktinformasjon\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n skjul\r\n \r\n \r\n \r\n \r\n \r\n\r\n\r\n\r\n \r\n \r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {{ contactBe.getIsUser() ? 'Medarbeider' : contactBe.getIsCompany() ? 'Bedrift'\r\n : 'Person' }}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Kontaktinformasjon\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n
\r\n
\r\n \r\n \r\n \r\n Saker\r\n folder\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Adresse/Tlf\r\n contact_emergency\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n @if (contactBe.isChanged) {\r\n \r\n }\r\n\r\n\r\n \r\n
\r\n
\r\n 550; then show;\">\r\n \r\n\r\n \r\n \r\n \r\n Saker\r\n folder\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n Adresse/Tlf\r\n contact_emergency\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n\r\n\r\n\r\n
\r\n \r\n arrow_circle_up\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n arrow_circle_down\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n\r\n\r\n"], "mappings": "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", "names": ["ContactBE", "constructor", "contact", "isChanged", "Id", "ContactSectorId", "Name", "FirstName", "LastName", "Name2", "PseudoName", "Number", "OrganizationNumber", "NationalIdentityNumber", "BusinessSectorId", "OrganizationalStructureId", "Occupation", "Gender", "ShortForm", "Title", "OurCustomerNumber", "ResponsibleUserId", "CountryId", "BankAccountNumber", "CurrencyCodeId", "VATTypeId", "VatObligated", "eInvoiceContact", "eInvoiceId", "EmailAddress", "WebAddress", "PublicCompany", "IBANBankName", "IBANBankAddress", "IBANBankCountryId", "IBANBankState", "IBANAccountNumber", "IBANBankPostalAddressId", "IBANIsSwift", "IBANSwiftClearingCode", "DateOfBirth", "EHFInvoice", "EHFInvoiceType", "Supplier", "IsUser", "IsCompany", "AccountsId", "Timestamp", "Addresses", "Phones", "ContactNotes", "Cases", "ContactDistributions", "Connections", "ContactPaymentTerms", "ClientResponsible", "Country", "CurrencyCode", "EmailAddressInvoice", "EmailInvoice", "InvoiceMerge", "Digipost", "DigipostInvoice", "OriginCode", "IsNew", "IsDeleted", "Origin", "get", "identifiers", "items", "identifier", "getId", "getContactSectorId", "getName", "getFirstName", "getLastName", "getName2", "getPseudoName", "getNumber", "getOrganizationNumber", "getNationalIdentityNumber", "getBusinessSectorId", "getOrganizationalStructureId", "getOccupation", "getGender", "getShortForm", "getTitle", "getOurCustomerNumber", "getResponsibleUserId", "getCountryId", "getBankAccountNumber", "getCurrencyCodeId", "getVATTypeId", "getVatObligated", "geteInvoiceContact", "geteInvoiceId", "getEmailAddress", "getWebAddress", "getPublicCompany", "getIBANBankName", "getIBANBankAddress", "getIBANBankCountryId", "getIBANBankState", "getIBANAccountNumber", "getIBANBankPostalAddressId", "getIBANIsSwift", "getIBANSwiftClearingCode", "getDateOfBirth", "getEHFInvoice", "getEHFInvoiceType", "getSupplier", "getIsUser", "getIsCompany", "getAccountsId", "getTimestamp", "getAddresses", "getPhones", "getContactNotes", "getCases", "getContactDistributions", "getConnections", "getContactPaymentTerms", "getClientResponsible", "getCountry", "getCurrencyCode", "getEmailAddressInvoice", "getEmailInvoice", "getInvoiceMerge", "getDigipost", "getDigipostInvoice", "getOriginCode", "getIsNew", "getIsDeleted", "getContact", "setContactSectorId", "value", "setIsCompany", "isEqual", "setName", "setFirstName", "setLastName", "setName2", "setPseudoName", "setNumber", "setOrganizationNumber", "setNationalIdentityNumber", "setBusinessSectorId", "setOrganizationalStructureId", "setOccupation", "setGender", "setShortForm", "setTitle", "setOurCustomerNumber", "setResponsibleUserId", "setCountryId", "setBankAccountNumber", "setCurrencyCodeId", "setVATTypeId", "setVatObligated", "seteInvoiceContact", "seteInvoiceId", "setEmailAddress", "setWebAddress", "setPublicCompany", "setIBANBankName", "setIBANBankAddress", "setIBANBankCountryId", "setIBANBankState", "setIBANAccountNumber", "setIBANBankPostalAddressId", "setIBANIsSwift", "setIBANSwiftClearingCode", "setDateOfBirth", "setEHFInvoice", "setEHFInvoiceType", "setSupplier", "setIsUser", "setAccountsId", "setTimestamp", "setAddresses", "setPhones", "setContactNotes", "setCases", "setContactDistributions", "setConnections", "setContactPaymentTerms", "setClientResponsible", "setCountry", "setCurrencyCode", "setEmailAddressInvoice", "setEmailInvoice", "setInvoiceMerge", "setDigipost", "setDigipostInvoice", "setOriginCode", "contactSectorId", "key", "oldValue", "newValue", "includes", "oldBase64", "btoa", "JSON", "stringify", "newBase64", "toUpperCase", "toLocaleUpperCase", "\u0275\u0275element", "\u0275\u0275property", "ctx_r0", "title", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275listener", "$event", "phone_r3", "\u0275\u0275restoreView", "_r2", "$implicit", "\u0275\u0275nextContext", "\u0275\u0275resetView", "copyText", "value", "\u0275\u0275advance", "\u0275\u0275textInterpolate1", "name", "\u0275\u0275sanitizeUrl", "\u0275\u0275textInterpolate", "email_r5", "_r4", "address_r7", "_r6", "ContactSummaryComponent", "constructor", "hasEditRights", "data", "val", "_data", "refresh", "ngOnInit", "Phones", "Addresses", "EmailAddress", "EmailAddressInvoice", "get", "extractSummary", "phoneNumbers", "extractPhoneNumbers", "addresses", "extractAddresses", "emailAddresses", "extractEmailAddresses", "phones", "length", "map", "phone", "PhoneNumberTypesArray", "filter", "item", "Id", "PhoneTypeId", "Name", "Number", "emails", "push", "address", "postalAddress", "PostalAddress", "postal", "PostCode", "PostOffice", "AddressTypeArray", "AddressTypeId", "Address", "event", "button", "currentTarget", "navigator", "clipboard", "writeText", "then", "icon", "querySelector", "tooltip", "textContent", "setTimeout", "selectors", "inputs", "standalone", "features", "\u0275\u0275StandaloneFeature", "decls", "vars", "consts", "template", "rf", "ctx", "\u0275\u0275template", "ContactSummaryComponent_app_heading_1_Template", "ContactSummaryComponent_div_4_Template", "ContactSummaryComponent_div_5_Template", "ContactSummaryComponent_div_6_Template", "NgIf", "HeadingComponent", "NgFor", "IgxIconModule", "styles", "CaseNumberCounterType", "\u0275\u0275element", "\u0275\u0275property", "defaultFilterTemplate_r3", "contactCasesGrid_r5", "column_r4", "\u0275\u0275elementStart", "\u0275\u0275twoWayListener", "$event", "\u0275\u0275restoreView", "_r7", "ctx_r7", "\u0275\u0275nextContext", "i0", "\u0275\u0275twoWayBindingSet", "newCaseNumber", "\u0275\u0275resetView", "\u0275\u0275elementEnd", "\u0275\u0275text", "\u0275\u0275styleProp", "\u0275\u0275advance", "\u0275\u0275twoWayProperty", "defaultFilterTemplate_r10", "contactCasesGrid_r12", "column_r11", "\u0275\u0275listener", "_r9", "onGridRowSelecetion", "onDoubleClick", "onRightClick", "\u0275\u0275template", "ContactCasesComponent_ng_template_54_igx_column_6_Template", "ContactCasesComponent_ng_template_54_igx_column_7_Template", "ContactCasesComponent_ng_template_54_igx_column_8_Template", "ContactCasesComponent_ng_template_54_igx_column_9_Template", "ContactCasesComponent_ng_template_54_ng_template_10_Template", "\u0275\u0275templateRefExtractor", "contactCasesData", "isDesktop", "isMobile", "ContactCasesComponent", "constructor", "sys", "router", "dlxClient", "screen", "gridMethods", "combo", "userRights", "screenSize", "deviceService", "als", "hasEditRights", "subscriptions", "Subscription", "userRightTypeEnum", "UserRightTypeEnum", "newCase", "caseSelected", "newCaseTitle", "manualCaseNumber", "caseAccessLevel", "NONE", "caseHandlerAndResponsibleList", "add", "isMobile$", "subscribe", "isTablet$", "isTablet", "isDesktop$", "data", "val", "_data", "refresh", "isReady", "getEmployeeInitials", "id", "allEmployees", "filter", "emp", "Id", "toUpperCase", "Shortform", "ngOnInit", "checkAccess", "UserAreaEnum", "CASE_MANAGMENT", "accessId", "ngOnDestroy", "unsubscribe", "undefined", "getCases", "selectedCase", "length", "updateCaseSA", "getLastName", "getFirstName", "contactName", "getName", "phones", "getPhones", "every", "p", "Number", "PhoneType", "allowedToCreateNewCase", "LOOK", "CASE_CREATE_NEW", "FULL", "caseSA", "setCaseSA", "getClientResponsible", "loggedInUser", "onCancle", "resetDialog", "focusInput", "newCaseTitleInput", "nativeElement", "focus", "e", "activity", "newActivity", "message", "type", "timestamp", "Date", "appendActivity", "alert", "OWN_CASES", "checkCaseAccessOwnCases", "sa", "CaseResponsibleId", "sb", "CaseHandlerId", "loggedinUserContact", "navigate", "cell", "row", "event", "preventDefault", "getNewCase", "navigateToCase", "user", "find", "i", "GetUser", "next", "createCase", "AccountsId", "NewCase", "newCasebe", "Title", "AccountId", "setNewCaseNumber", "createCaseRoles", "ContactId", "contactId", "casebe", "GetContactById", "userContact", "temp_contact", "ContactBE", "NewCaseContact", "caseContact", "caseContactTemplateKH", "JSON", "parse", "stringify", "caseContactTemplateISA", "KH", "roleTypes", "rt", "RoleCode", "caseContactKH", "populateNewCaseContact", "getContact", "ISA", "caseContactISA", "CaseContacts", "saveNewCase", "SaveCase", "res", "updateContactCaseGrid", "caseId", "GetCaseLimited", "CaseRoleName", "contactCasesGrid", "addRow", "newCaseDialog", "close", "goToCase", "accessName", "newCaseContact", "contact", "roleType", "newContact", "Phones", "CaseId", "ContactNumber", "ContactSectorId", "ContactInitials", "ShortForm", "ContactName", "Name", "RoleTypeId", "RoleTypeName", "RoleTypeCategoryId", "RoleTypeCode", "Code", "IsNew", "newSelection", "loggedInUserAccount", "CaseCounterFunctionId", "toLocaleUpperCase", "CaseNumberCounterType", "A", "ChangingValue", "onInput", "\u0275\u0275directiveInject", "SystemCacheService", "Router", "DatalexClient", "ScreenDimensionService", "GridMethodsService", "ComboSelectFunctionsService", "UserRightsProviderService", "ScreenSizeService", "DeviceService", "ActivityLogService", "selectors", "viewQuery", "rf", "ctx", "_r1", "newCaseDialog_r2", "\u0275\u0275reference", "open", "ContactCasesComponent_igx_column_11_Template", "ContactCasesComponent_igx_column_12_Template", "ContactCasesComponent_igx_column_13_Template", "ContactCasesComponent_igx_column_14_Template", "ContactCasesComponent_ng_template_16_Template", "responsibleLabel_r6", "comboOpening", "comboClosing", "ContactCasesComponent_igx_input_group_34_Template", "ContactCasesComponent_ng_template_52_Template", "ContactCasesComponent_ng_template_54_Template", "ButtonRowButtonComponent", "IgxGridComponent", "GridCountDirective", "IgxColumnComponent", "NgIf", "IgxGridFooterComponent", "IgxFilterCellTemplateDirective", "GridFilterInputComponent", "IgxDialogComponent", "IgxDialogTitleDirective", "IgxLabelDirective", "IgxSimpleComboComponent", "FormsModule", "DefaultValueAccessor", "NumberValueAccessor", "NgControlStatus", "NgModel", "IgxInputGroupComponent", "IgxInputDirective", "IgxDialogActionsDirective", "IgxButtonDirective", "IgxRippleDirective", "NgClass", "ExportToExcelDirective", "styles", "GUIDUTIL", "guidRegex", "generate", "s", "hexDigits", "i", "substr", "Math", "floor", "random", "parseInt", "join", "validate", "guid", "test", "toUpperCase", "toLowerCase", "formatWithHyphens", "cleaned", "replace", "slice", "removeHyphens", "\u0275\u0275element", "\u0275\u0275property", "ctx_r1", "componentTitle", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275twoWayListener", "$event", "\u0275\u0275restoreView", "_r3", "\u0275\u0275nextContext", "i0", "\u0275\u0275twoWayBindingSet", "contactSectorId", "\u0275\u0275resetView", "\u0275\u0275listener", "sectorLabel_r4", "\u0275\u0275reference", "combo", "comboOpening", "comboClosing", "onContactSectorChange", "\u0275\u0275advance", "\u0275\u0275styleProp", "cData", "contactSectors", "\u0275\u0275twoWayProperty", "hasEditRights", "isCoWorker", "\u0275\u0275pureFunction0", "_c2", "_c3", "_r5", "responsibleLabel_r6", "responsibleUserId", "data", "setResponsibleUserId", "allEmployees", "clientResponsibleAccessHandler", "_r7", "firstName", "firstNameInput_r8", "setFirstName", "value", "_r9", "lastName", "lastNameInput_r10", "setLastName", "_r11", "name", "nameInput_r12", "setName", "_r15", "occupation", "occupationInput_r16", "setOccupation", "_r17", "title", "titleInput_r18", "setTitle", "_r19", "shortForm", "initialsInput_r20", "setShortForm", "_r21", "nationalityLabel_r22", "selectedCountryCode", "onCountryChange", "countries", "_r23", "shortFormInput_r24", "_r25", "bizSecInputLabel_r26", "businessSectorId", "bizSecInput_r27", "businessSectorChange", "businessSectors", "_r28", "setGender", "contactGender", "genders", "_r29", "dateOfBirth", "datePicker_r30", "setDateOfBirth", "toLocalIsoString", "open", "_r31", "nationalIdentityNumber", "idnumber_r32", "setNationalIdentityNumber", "inputBlurred", "_r33", "organizationNumber", "orgnumber_r34", "setOrganizationNumber", "_r35", "orgidLabel_r36", "organizationalStructureId", "organizationalStructureChange", "organisationalStructures", "_r37", "orgnumber_r38", "_r39", "setPublicCompany", "publicCompany", "ContactInformationComponent", "constructor", "sys", "dlxClient", "userRights", "nationalNumberValidity", "EventEmitter", "code", "label", "id", "coworkerSectorId", "val", "_data", "initilizeComponent", "ngOnInit", "getCountry", "Code", "GetBusinessSectors", "subscribe", "next", "res", "sort", "CompareCode", "isReady", "getGenderId", "filter", "g", "getGenderValue", "fixNullOutputFromSelect", "log", "undefined", "oldSelection", "isCompany", "getIsCompany", "getContactSectorId", "toUpperCase", "contactNumber", "getNumber", "getFirstName", "getLastName", "getGender", "getName", "name2", "getName2", "pseudoName", "getPseudoName", "getOccupation", "getTitle", "getShortForm", "getBusinessSectorId", "getNationalIdentityNumber", "getDateOfBirth", "Date", "toDateString", "getOrganizationNumber", "getOrganizationalStructureId", "getPublicCompany", "date", "getFullYear", "getMonth", "slice", "getDate", "getResponsibleUserId", "componentInit", "setCountry", "ev", "country", "find", "i", "GetCountryByCode", "setCountryId", "Id", "setOrganizationalStructureId", "setBusinessSectorId", "e", "isNationalNumberValid", "nationalIdentityNumberCtrl", "valid", "validationResult", "GUIDUTIL", "validate", "checkAccess", "UserAreaEnum", "CONTACT_CHANGE_CLIENTRESPONSIBLE", "CONTACT_SET_CLIENTRESPONSIBLE", "accessId", "UserRightTypeEnum", "NONE", "isChanged", "contactCountry", "newSelection", "newValue", "oldValue", "cancel", "setContactSectorId", "\u0275\u0275directiveInject", "SystemCacheService", "DatalexClient", "ComboSelectFunctionsService", "ContactDataService", "UserRightsProviderService", "selectors", "viewQuery", "rf", "ctx", "\u0275\u0275template", "ContactInformationComponent_Conditional_1_Template", "_r1", "ContactInformationComponent_div_7_Template", "ContactInformationComponent_div_8_Template", "ContactInformationComponent_div_9_Template", "ContactInformationComponent_igx_input_group_11_Template", "ContactInformationComponent_igx_input_group_12_Template", "ContactInformationComponent_igx_input_group_13_Template", "name2Input_r13", "setName2", "pseudoNameInput_r14", "setPseudoName", "ContactInformationComponent_igx_input_group_24_Template", "ContactInformationComponent_igx_input_group_25_Template", "ContactInformationComponent_igx_input_group_26_Template", "ContactInformationComponent_div_27_Template", "ContactInformationComponent_igx_input_group_28_Template", "ContactInformationComponent_div_29_Template", "ContactInformationComponent_div_30_Template", "ContactInformationComponent_igx_date_picker_31_Template", "ContactInformationComponent_igx_input_group_33_Template", "ContactInformationComponent_Conditional_34_Template", "ContactInformationComponent_igx_input_group_35_Template", "ContactInformationComponent_div_36_Template", "ContactInformationComponent_div_37_Template", "ContactInformationComponent_div_38_Template", "\u0275\u0275conditional", "errors", "touched", "NgIf", "CommonModule", "NgStyle", "HeadingComponent", "IgxInputGroupModule", "IgxInputGroupComponent", "IgxInputDirective", "IgxLabelDirective", "FormsModule", "DefaultValueAccessor", "NumberValueAccessor", "CheckboxControlValueAccessor", "NgControlStatus", "MinLengthValidator", "MaxLengthValidator", "NgModel", "IgxSimpleComboComponent", "IgxDatePickerComponent", "BirthDayNumberValidatorDirective", "styles", "\u0275\u0275elementStart", "\u0275\u0275text", "\u0275\u0275elementEnd", "\u0275\u0275projection", "\u0275\u0275listener", "$event", "\u0275\u0275restoreView", "_r3", "ctx_r3", "\u0275\u0275nextContext", "\u0275\u0275resetView", "setAddressObj", "\u0275\u0275classProp", "_activeType", "\u0275\u0275advance", "\u0275\u0275property", "postAddressObj", "countryBe", "addressTypes", "PostAddress", "visitAddressObj", "VisitAddress", "invoiceAddressObj", "InvoiceAddress", "registeredAddressObj", "RegisteredAddress", "_r5", "addressTypeChange", "_r6", "addressTypeLabel_r7", "\u0275\u0275reference", "combo", "comboOpening", "comboClosing", "\u0275\u0275twoWayListener", "i0", "\u0275\u0275twoWayBindingSet", "\u0275\u0275styleProp", "addressDropdownData", "\u0275\u0275twoWayProperty", "hasEditRights", "ContactContactinfoComponent", "constructor", "contactData", "country", "dlxClient", "screen", "initAttempts", "inititalized", "digipostInvoiceIndetermined", "emailInvoiceIndetermined", "showEmailErrorMessage", "showInvoiceEmailErrorMessage", "AddressTypes", "phoneNumberTypes", "PhoneNumberTypesArray", "currentPhoneTypeId", "PhoneNumberTypeIdEnum", "Mobile", "Id", "Name", "data", "value", "_data", "extractAddresses", "JSON", "parse", "stringify", "getAddresses", "setPhoneArray", "ngOnInit", "initilizeComponent", "getCountryId", "GetCountry", "subscribe", "next", "response", "GetCountryByCode", "emailAddress", "getEmailAddress", "invoiceEmailAddress", "getEmailAddressInvoice", "webAddress", "getWebAddress", "currentPhoneNumber", "phonesNumbers", "find", "el", "PhoneTypeId", "Number", "ehfInvoice", "getEHFInvoice", "vatObligated", "getVatObligated", "digipostInvoice", "getDigipostInvoice", "emailInvoice", "getEmailInvoice", "setTimeout", "forEach", "type", "push", "IsNew", "IsDeleted", "EmptyGuid", "ContactId", "PhoneType", "CountryCode", "Extension", "Timestamp", "existingNumbers", "getPhones", "num", "index", "findIndex", "n", "onPhoneTypeChange", "e", "existingNumber", "onPhoneInputChange", "Private", "setPhoneNumber", "Work", "Div", "Fax", "Vacation", "Error", "setPhones", "filter", "adressesToSave", "adr", "Address", "PostalAddress", "PostCode", "obj", "name", "trim", "setAddresses", "checkBoxChange", "event", "target", "checked", "addresses", "visit", "AddressTypeId", "AddressTypeIdEnum", "post", "registered", "invoice", "visitAddress", "postAddress", "registeredAddress", "invoiceAddress", "hideErrorMessage", "inputName", "showErrorMessageOnBlur", "emailAddressCtrl", "invalid", "invoiceEmailAddressCtrl", "\u0275\u0275directiveInject", "ContactDataService", "CountryService", "DatalexClient", "ScreenDimensionService", "ComboSelectFunctionsService", "selectors", "viewQuery", "rf", "ctx", "_r1", "tlfTypeLabel_r2", "setEmailAddress", "\u0275\u0275template", "ContactContactinfoComponent_div_23_Template", "setEmailAddressInvoice", "ContactContactinfoComponent_div_30_Template", "setWebAddress", "ContactContactinfoComponent_ng_content_39_Template", "ContactContactinfoComponent_Conditional_40_Template", "ContactContactinfoComponent_ng_template_61_Template", "\u0275\u0275templateRefExtractor", "ContactContactinfoComponent_ng_template_63_Template", "tmp_18_0", "emailAddressCtrl_r8", "errors", "undefined", "tmp_22_0", "invoiceEmailAddressCtrl_r9", "width", "addressSelectorButtons_r10", "addressSelectorDropdown_r11", "\u0275\u0275conditional", "IgxLabelDirective", "IgxInputGroupModule", "IgxInputGroupComponent", "IgxInputDirective", "IgxSimpleComboComponent", "FormsModule", "DefaultValueAccessor", "NumberValueAccessor", "CheckboxControlValueAccessor", "NgControlStatus", "NgModel", "EmailValidatorDirective", "NgIf", "DlxAddressInputComponent", "styles", "BrregSearchService", "constructor", "$UNIT_URL", "getUnitByOrganizationNumber", "organizationNumber", "__async", "fetch", "json", "factory", "\u0275fac", "providedIn", "\u0275\u0275elementContainer", "\u0275\u0275elementStart", "\u0275\u0275template", "ContactComponent_div_0_ng_container_1_Template", "ContactComponent_div_0_ng_container_2_Template", "ContactComponent_div_0_ng_container_3_Template", "\u0275\u0275elementEnd", "\u0275\u0275advance", "\u0275\u0275property", "ctx_r1", "screen", "width", "mobileTemplate_r3", "tabletTemplate_r4", "desktopTemplate_r5", "\u0275\u0275listener", "\u0275\u0275restoreView", "_r6", "\u0275\u0275nextContext", "\u0275\u0275resetView", "onSave", "\u0275\u0275text", "\u0275\u0275styleProp", "hasEditRights", "ContactComponent_ng_template_1_button_4_Template", "\u0275\u0275element", "\u0275\u0275textInterpolate", "contactName", "contactBe", "isChanged", "getIsUser", "getIsCompany", "_r7", "ContactComponent_ng_template_5_button_9_Template", "ContactComponent_ng_template_5_igx_tab_item_26_Template", "expanded", "getContactSectorById", "getContactSectorId", "$event", "_r8", "handleNationalNumberValidity", "_r9", "ContactComponent_ng_template_9_Conditional_5_Template", "ContactComponent_ng_template_9_ng_container_6_Template", "ContactComponent_ng_template_9_ng_container_7_Template", "ContactComponent_ng_template_9_igx_tab_item_9_Template", "\u0275\u0275conditional", "more_r11", "less_r10", "show_r12", "_r13", "changeExpand", "_r14", "ContactComponent", "toggleLock", "locked", "id", "contactSector", "GetContactSectorById", "Code", "Name", "constructor", "aRoute", "brreg", "dlxClient", "contactData", "sys", "rights", "als", "contactChanged", "lastPageOfset", "loaded", "contactId", "snapshot", "paramMap", "get", "setContact", "contactAccess", "checkAccess", "UserAreaEnum", "CONTACTS", "accessId", "toUpperCase", "UserRightTypeEnum", "FULL", "isReady", "subscribe", "ngOnInit", "data", "next", "ContactBE", "setContactName", "initializeComponent", "ngAfterViewInit", "collapse", "onContactInformationChange", "onContactChange", "save", "window", "alert", "contactInfoComponent", "isNationalNumberValid", "undefined", "nationalNumberErrorDialog", "open", "SaveContact", "getContact", "response", "contactSummary", "refresh", "contactCases", "updateCaseSA", "getResponsibleUserId", "error", "err", "appendActivity", "newActivity", "message", "type", "timestamp", "Date", "GetContactById", "contact", "getName", "getLastName", "getFirstName", "isValid", "checkbrreg", "__async", "getOrganizationNumber", "unit", "getUnitByOrganizationNumber", "\u0275\u0275directiveInject", "ActivatedRoute", "ScreenDimensionService", "BrregSearchService", "DatalexClient", "ContactDataService", "SystemCacheService", "UserRightsProviderService", "ActivityLogService", "selectors", "viewQuery", "rf", "ctx", "ContactInformationComponent", "ContactSummaryComponent", "ContactCasesComponent", "ContactComponent_div_0_Template", "ContactComponent_ng_template_1_Template", "\u0275\u0275templateRefExtractor", "ContactComponent_ng_template_3_Template", "ContactComponent_ng_template_5_Template", "ContactComponent_ng_template_7_Template", "ContactComponent_ng_template_9_Template", "ContactComponent_ng_template_11_Template", "ContactComponent_ng_template_13_Template", "ContactComponent_ng_template_15_Template", "_r1", "nationalNumberErrorDialog_r15", "\u0275\u0275reference", "close", "NgIf", "IgxButtonDirective", "IgxRippleDirective", "IgxAccordionComponent", "IgxExpansionPanelComponent", "IgxExpansionPanelHeaderComponent", "IgxExpansionPanelTitleDirective", "IgxExpansionPanelBodyComponent", "IgxTabsComponent", "IgxTabItemComponent", "IgxTabHeaderComponent", "IgxTabHeaderLabelDirective", "IgxTabContentComponent", "ContactContactinfoComponent", "TitleComponent", "HeadingComponent", "IgxDialogComponent", "styles"] }