{"version":3,"sources":["node_modules/@vendasta/contacts/fesm2020/vendasta-contacts.mjs"],"sourcesContent":["import * as i0 from '@angular/core';\nimport { Injectable } from '@angular/core';\nimport * as i1 from '@angular/common/http';\nimport { HttpHeaders } from '@angular/common/http';\nimport { map } from 'rxjs/operators';\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar ReviewRequestStatus = /*#__PURE__*/function (ReviewRequestStatus) {\n ReviewRequestStatus[ReviewRequestStatus[\"LEFT_REVIEW\"] = 0] = \"LEFT_REVIEW\";\n ReviewRequestStatus[ReviewRequestStatus[\"DELIVERED\"] = 1] = \"DELIVERED\";\n ReviewRequestStatus[ReviewRequestStatus[\"BOUNCED\"] = 2] = \"BOUNCED\";\n ReviewRequestStatus[ReviewRequestStatus[\"OPENED\"] = 3] = \"OPENED\";\n ReviewRequestStatus[ReviewRequestStatus[\"CLICKED\"] = 4] = \"CLICKED\";\n ReviewRequestStatus[ReviewRequestStatus[\"CLICKED_POSITIVE\"] = 5] = \"CLICKED_POSITIVE\";\n ReviewRequestStatus[ReviewRequestStatus[\"CLICKED_NEGATIVE\"] = 6] = \"CLICKED_NEGATIVE\";\n ReviewRequestStatus[ReviewRequestStatus[\"UNSUBSCRIBE\"] = 7] = \"UNSUBSCRIBE\";\n ReviewRequestStatus[ReviewRequestStatus[\"SPAM_REPORT\"] = 8] = \"SPAM_REPORT\";\n ReviewRequestStatus[ReviewRequestStatus[\"SENDING\"] = 9] = \"SENDING\";\n ReviewRequestStatus[ReviewRequestStatus[\"DROPPED\"] = 10] = \"DROPPED\";\n return ReviewRequestStatus;\n}(ReviewRequestStatus || {});\nvar SortDirection = /*#__PURE__*/function (SortDirection) {\n SortDirection[SortDirection[\"Ascending\"] = 0] = \"Ascending\";\n SortDirection[SortDirection[\"Descending\"] = 1] = \"Descending\";\n return SortDirection;\n}(SortDirection || {});\nvar SortField = /*#__PURE__*/function (SortField) {\n SortField[SortField[\"Name\"] = 0] = \"Name\";\n SortField[SortField[\"Created\"] = 1] = \"Created\";\n return SortField;\n}(SortField || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar CustomerFieldType = /*#__PURE__*/function (CustomerFieldType) {\n CustomerFieldType[CustomerFieldType[\"CUSTOMER_FIELD_TYPE_NONE\"] = 0] = \"CUSTOMER_FIELD_TYPE_NONE\";\n CustomerFieldType[CustomerFieldType[\"CUSTOMER_FIELD_TYPE_EMAIL\"] = 1] = \"CUSTOMER_FIELD_TYPE_EMAIL\";\n CustomerFieldType[CustomerFieldType[\"CUSTOMER_FIELD_TYPE_PHONE\"] = 2] = \"CUSTOMER_FIELD_TYPE_PHONE\";\n return CustomerFieldType;\n}(CustomerFieldType || {});\nvar CustomerSortDirection = /*#__PURE__*/function (CustomerSortDirection) {\n CustomerSortDirection[CustomerSortDirection[\"CUSTOMER_SORT_DIRECTION_ASCENDING\"] = 0] = \"CUSTOMER_SORT_DIRECTION_ASCENDING\";\n CustomerSortDirection[CustomerSortDirection[\"CUSTOMER_SORT_DIRECTION_DESCENDING\"] = 1] = \"CUSTOMER_SORT_DIRECTION_DESCENDING\";\n return CustomerSortDirection;\n}(CustomerSortDirection || {});\nvar CustomerSortField = /*#__PURE__*/function (CustomerSortField) {\n CustomerSortField[CustomerSortField[\"CUSTOMER_SORT_FIELD_FIRST_NAME\"] = 0] = \"CUSTOMER_SORT_FIELD_FIRST_NAME\";\n CustomerSortField[CustomerSortField[\"CUSTOMER_SORT_FIELD_LAST_NAME\"] = 1] = \"CUSTOMER_SORT_FIELD_LAST_NAME\";\n CustomerSortField[CustomerSortField[\"CUSTOMER_SORT_FIELD_CREATED\"] = 2] = \"CUSTOMER_SORT_FIELD_CREATED\";\n return CustomerSortField;\n}(CustomerSortField || {});\nvar CustomerValidationError = /*#__PURE__*/function (CustomerValidationError) {\n CustomerValidationError[CustomerValidationError[\"CUSTOMER_VALIDATION_ERROR_NO_ERRORS\"] = 0] = \"CUSTOMER_VALIDATION_ERROR_NO_ERRORS\";\n CustomerValidationError[CustomerValidationError[\"CUSTOMER_VALIDATION_ERROR_EMAIL_OR_PHONE_REQUIRED\"] = 1] = \"CUSTOMER_VALIDATION_ERROR_EMAIL_OR_PHONE_REQUIRED\";\n CustomerValidationError[CustomerValidationError[\"CUSTOMER_VALIDATION_ERROR_INVALID_EMAIL\"] = 2] = \"CUSTOMER_VALIDATION_ERROR_INVALID_EMAIL\";\n CustomerValidationError[CustomerValidationError[\"CUSTOMER_VALIDATION_ERROR_INVALID_PHONE\"] = 3] = \"CUSTOMER_VALIDATION_ERROR_INVALID_PHONE\";\n CustomerValidationError[CustomerValidationError[\"CUSTOMER_VALIDATION_ERROR_INVALID_FIRST_NAME\"] = 4] = \"CUSTOMER_VALIDATION_ERROR_INVALID_FIRST_NAME\";\n CustomerValidationError[CustomerValidationError[\"CUSTOMER_VALIDATION_ERROR_INVALID_LAST_NAME\"] = 5] = \"CUSTOMER_VALIDATION_ERROR_INVALID_LAST_NAME\";\n return CustomerValidationError;\n}(CustomerValidationError || {});\nvar EntityType = /*#__PURE__*/function (EntityType) {\n EntityType[EntityType[\"ENTITY_TYPE_UNKNOWN\"] = 0] = \"ENTITY_TYPE_UNKNOWN\";\n EntityType[EntityType[\"ENTITY_TYPE_CUSTOMER\"] = 1] = \"ENTITY_TYPE_CUSTOMER\";\n EntityType[EntityType[\"ENTITY_TYPE_CONFLICT\"] = 2] = \"ENTITY_TYPE_CONFLICT\";\n return EntityType;\n}(EntityType || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar CustomerType = /*#__PURE__*/function (CustomerType) {\n CustomerType[CustomerType[\"CUSTOMER_TYPE_UNKNOWN\"] = 0] = \"CUSTOMER_TYPE_UNKNOWN\";\n CustomerType[CustomerType[\"CUSTOMER_TYPE_CUSTOMER\"] = 1] = \"CUSTOMER_TYPE_CUSTOMER\";\n CustomerType[CustomerType[\"CUSTOMER_TYPE_CONFLICT\"] = 2] = \"CUSTOMER_TYPE_CONFLICT\";\n return CustomerType;\n}(CustomerType || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums Index.\n// *********************************\n\nfunction enumStringToValue$4(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass FieldMask {\n static fromProto(proto) {\n let m = new FieldMask();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.paths !== 'undefined') {\n toReturn['paths'] = this.paths;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$3(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass AddUsersToListRequest {\n static fromProto(proto) {\n let m = new AddUsersToListRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.listId !== 'undefined') {\n toReturn['listId'] = this.listId;\n }\n if (typeof this.userIds !== 'undefined') {\n toReturn['userIds'] = this.userIds;\n }\n return toReturn;\n }\n}\nclass AssociateIDRequest {\n static fromProto(proto) {\n let m = new AssociateIDRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.contactId !== 'undefined') {\n toReturn['contactId'] = this.contactId;\n }\n if (typeof this.vendorContactId !== 'undefined') {\n toReturn['vendorContactId'] = this.vendorContactId;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n return toReturn;\n }\n}\nclass BulkCreateContactRequest {\n static fromProto(proto) {\n let m = new BulkCreateContactRequest();\n m = Object.assign(m, proto);\n if (proto.mapping) {\n m.mapping = HeaderMapping.fromProto(proto.mapping);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.filePath !== 'undefined') {\n toReturn['filePath'] = this.filePath;\n }\n if (typeof this.mapping !== 'undefined' && this.mapping !== null) {\n toReturn['mapping'] = 'toApiJson' in this.mapping ? this.mapping.toApiJson() : this.mapping;\n }\n if (typeof this.syncedAppIds !== 'undefined') {\n toReturn['syncedAppIds'] = this.syncedAppIds;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n return toReturn;\n }\n}\nclass BulkUpdateContactRequest {\n static fromProto(proto) {\n let m = new BulkUpdateContactRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.contactIds !== 'undefined') {\n toReturn['contactIds'] = this.contactIds;\n }\n if (typeof this.syncedAppIdsToAdd !== 'undefined') {\n toReturn['syncedAppIdsToAdd'] = this.syncedAppIdsToAdd;\n }\n if (typeof this.syncedAppIdsToRemove !== 'undefined') {\n toReturn['syncedAppIdsToRemove'] = this.syncedAppIdsToRemove;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n return toReturn;\n }\n}\nclass Contact {\n static fromProto(proto) {\n let m = new Contact();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.updated) {\n m.updated = new Date(proto.updated);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.contactId !== 'undefined') {\n toReturn['contactId'] = this.contactId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.phone !== 'undefined') {\n toReturn['phone'] = this.phone;\n }\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.updated !== 'undefined' && this.updated !== null) {\n toReturn['updated'] = 'toApiJson' in this.updated ? this.updated.toApiJson() : this.updated;\n }\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {\n toReturn['deleted'] = 'toApiJson' in this.deleted ? this.deleted.toApiJson() : this.deleted;\n }\n if (typeof this.origin !== 'undefined') {\n toReturn['origin'] = this.origin;\n }\n if (typeof this.originalId !== 'undefined') {\n toReturn['originalId'] = this.originalId;\n }\n if (typeof this.syncedAppIds !== 'undefined') {\n toReturn['syncedAppIds'] = this.syncedAppIds;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n return toReturn;\n }\n}\nclass CreateContactRequest {\n static fromProto(proto) {\n let m = new CreateContactRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.phone !== 'undefined') {\n toReturn['phone'] = this.phone;\n }\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.origin !== 'undefined') {\n toReturn['origin'] = this.origin;\n }\n if (typeof this.originalId !== 'undefined') {\n toReturn['originalId'] = this.originalId;\n }\n if (typeof this.syncedAppIds !== 'undefined') {\n toReturn['syncedAppIds'] = this.syncedAppIds;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n return toReturn;\n }\n}\nclass CreateContactResponse {\n static fromProto(proto) {\n let m = new CreateContactResponse();\n m = Object.assign(m, proto);\n if (proto.contact) {\n m.contact = Contact.fromProto(proto.contact);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.contact !== 'undefined' && this.contact !== null) {\n toReturn['contact'] = 'toApiJson' in this.contact ? this.contact.toApiJson() : this.contact;\n }\n return toReturn;\n }\n}\nclass CreateUserListRequest {\n static fromProto(proto) {\n let m = new CreateUserListRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.listId !== 'undefined') {\n toReturn['listId'] = this.listId;\n }\n if (typeof this.listName !== 'undefined') {\n toReturn['listName'] = this.listName;\n }\n return toReturn;\n }\n}\nclass DeleteContactRequest {\n static fromProto(proto) {\n let m = new DeleteContactRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.contactId !== 'undefined') {\n toReturn['contactId'] = this.contactId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.author !== 'undefined') {\n toReturn['author'] = this.author;\n }\n return toReturn;\n }\n}\nclass DeleteUserFromListRequest {\n static fromProto(proto) {\n let m = new DeleteUserFromListRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.listId !== 'undefined') {\n toReturn['listId'] = this.listId;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n return toReturn;\n }\n}\nclass Filters {\n static fromProto(proto) {\n let m = new Filters();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.source !== 'undefined') {\n toReturn['source'] = this.source;\n }\n if (typeof this.syncedAppIds !== 'undefined') {\n toReturn['syncedAppIds'] = this.syncedAppIds;\n }\n return toReturn;\n }\n}\nclass GetUserListRequest {\n static fromProto(proto) {\n let m = new GetUserListRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.listId !== 'undefined') {\n toReturn['listId'] = this.listId;\n }\n return toReturn;\n }\n}\nclass GetUserListResponse {\n static fromProto(proto) {\n let m = new GetUserListResponse();\n m = Object.assign(m, proto);\n if (proto.userList) {\n m.userList = UserListItem.fromProto(proto.userList);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.userList !== 'undefined' && this.userList !== null) {\n toReturn['userList'] = 'toApiJson' in this.userList ? this.userList.toApiJson() : this.userList;\n }\n return toReturn;\n }\n}\nclass HeaderMapping {\n static fromProto(proto) {\n let m = new HeaderMapping();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.emails !== 'undefined') {\n toReturn['emails'] = this.emails;\n }\n if (typeof this.phones !== 'undefined') {\n toReturn['phones'] = this.phones;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n return toReturn;\n }\n}\nclass ListContactsRequest {\n static fromProto(proto) {\n let m = new ListContactsRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n if (proto.sortOptions) {\n m.sortOptions = SortOptions.fromProto(proto.sortOptions);\n }\n if (proto.filters) {\n m.filters = Filters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n if (typeof this.searchTerm !== 'undefined') {\n toReturn['searchTerm'] = this.searchTerm;\n }\n if (typeof this.sortOptions !== 'undefined' && this.sortOptions !== null) {\n toReturn['sortOptions'] = 'toApiJson' in this.sortOptions ? this.sortOptions.toApiJson() : this.sortOptions;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n return toReturn;\n }\n}\nclass ListContactsResponse {\n static fromProto(proto) {\n let m = new ListContactsResponse();\n m = Object.assign(m, proto);\n if (proto.contacts) {\n m.contacts = proto.contacts.map(Contact.fromProto);\n }\n if (proto.totalResults) {\n m.totalResults = parseInt(proto.totalResults, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.contacts !== 'undefined' && this.contacts !== null) {\n toReturn['contacts'] = 'toApiJson' in this.contacts ? this.contacts.toApiJson() : this.contacts;\n }\n if (typeof this.nextCursor !== 'undefined') {\n toReturn['nextCursor'] = this.nextCursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n if (typeof this.totalResults !== 'undefined') {\n toReturn['totalResults'] = this.totalResults;\n }\n return toReturn;\n }\n}\nclass ListOriginsRequest {\n static fromProto(proto) {\n let m = new ListOriginsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n return toReturn;\n }\n}\nclass ListOriginsResponse {\n static fromProto(proto) {\n let m = new ListOriginsResponse();\n m = Object.assign(m, proto);\n if (proto.whiteLabeledOrigins) {\n m.whiteLabeledOrigins = proto.whiteLabeledOrigins.map(WhiteLabeledOrigin.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.whiteLabeledOrigins !== 'undefined' && this.whiteLabeledOrigins !== null) {\n toReturn['whiteLabeledOrigins'] = 'toApiJson' in this.whiteLabeledOrigins ? this.whiteLabeledOrigins.toApiJson() : this.whiteLabeledOrigins;\n }\n return toReturn;\n }\n}\nclass ListUserListsRequest {\n static fromProto(proto) {\n let m = new ListUserListsRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n return toReturn;\n }\n}\nclass ListUserListsResponse {\n static fromProto(proto) {\n let m = new ListUserListsResponse();\n m = Object.assign(m, proto);\n if (proto.userLists) {\n m.userLists = proto.userLists.map(UserListItem.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.userLists !== 'undefined' && this.userLists !== null) {\n toReturn['userLists'] = 'toApiJson' in this.userLists ? this.userLists.toApiJson() : this.userLists;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass ListUsersFromListRequest {\n static fromProto(proto) {\n let m = new ListUsersFromListRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.listId !== 'undefined') {\n toReturn['listId'] = this.listId;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n return toReturn;\n }\n}\nclass ListUsersFromListResponse {\n static fromProto(proto) {\n let m = new ListUsersFromListResponse();\n m = Object.assign(m, proto);\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.userIds !== 'undefined') {\n toReturn['userIds'] = this.userIds;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass PagedRequestOptions {\n static fromProto(proto) {\n let m = new PagedRequestOptions();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n return toReturn;\n }\n}\nclass PagedResponseMetadata {\n static fromProto(proto) {\n let m = new PagedResponseMetadata();\n m = Object.assign(m, proto);\n if (proto.totalResults) {\n m.totalResults = parseInt(proto.totalResults, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.nextCursor !== 'undefined') {\n toReturn['nextCursor'] = this.nextCursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n if (typeof this.totalResults !== 'undefined') {\n toReturn['totalResults'] = this.totalResults;\n }\n return toReturn;\n }\n}\nclass SortOptions {\n static fromProto(proto) {\n let m = new SortOptions();\n m = Object.assign(m, proto);\n if (proto.direction) {\n m.direction = enumStringToValue$3(SortDirection, proto.direction);\n }\n if (proto.field) {\n m.field = enumStringToValue$3(SortField, proto.field);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.direction !== 'undefined') {\n toReturn['direction'] = this.direction;\n }\n if (typeof this.field !== 'undefined') {\n toReturn['field'] = this.field;\n }\n return toReturn;\n }\n}\nclass TriggerSyncRequest {\n static fromProto(proto) {\n let m = new TriggerSyncRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n return toReturn;\n }\n}\nclass UpdateContactRequest {\n static fromProto(proto) {\n let m = new UpdateContactRequest();\n m = Object.assign(m, proto);\n if (proto.fieldMask) {\n m.fieldMask = FieldMask.fromProto(proto.fieldMask);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.phone !== 'undefined') {\n toReturn['phone'] = this.phone;\n }\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.contactId !== 'undefined') {\n toReturn['contactId'] = this.contactId;\n }\n if (typeof this.author !== 'undefined') {\n toReturn['author'] = this.author;\n }\n if (typeof this.syncedAppIds !== 'undefined') {\n toReturn['syncedAppIds'] = this.syncedAppIds;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {\n toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? this.fieldMask.toApiJson() : this.fieldMask;\n }\n return toReturn;\n }\n}\nclass UpdateContactResponse {\n static fromProto(proto) {\n let m = new UpdateContactResponse();\n m = Object.assign(m, proto);\n if (proto.contact) {\n m.contact = Contact.fromProto(proto.contact);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.contact !== 'undefined' && this.contact !== null) {\n toReturn['contact'] = 'toApiJson' in this.contact ? this.contact.toApiJson() : this.contact;\n }\n return toReturn;\n }\n}\nclass UserListItem {\n static fromProto(proto) {\n let m = new UserListItem();\n m = Object.assign(m, proto);\n if (proto.updated) {\n m.updated = new Date(proto.updated);\n }\n if (proto.itemCount) {\n m.itemCount = parseInt(proto.itemCount, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.listId !== 'undefined') {\n toReturn['listId'] = this.listId;\n }\n if (typeof this.listName !== 'undefined') {\n toReturn['listName'] = this.listName;\n }\n if (typeof this.updated !== 'undefined' && this.updated !== null) {\n toReturn['updated'] = 'toApiJson' in this.updated ? this.updated.toApiJson() : this.updated;\n }\n if (typeof this.itemCount !== 'undefined') {\n toReturn['itemCount'] = this.itemCount;\n }\n return toReturn;\n }\n}\nclass WhiteLabeledOrigin {\n static fromProto(proto) {\n let m = new WhiteLabeledOrigin();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.origin !== 'undefined') {\n toReturn['origin'] = this.origin;\n }\n if (typeof this.whiteLabeledName !== 'undefined') {\n toReturn['whiteLabeledName'] = this.whiteLabeledName;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$2(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass ContactMessageRequest {\n static fromProto(proto) {\n let m = new ContactMessageRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.contactIds !== 'undefined') {\n toReturn['contactIds'] = this.contactIds;\n }\n if (typeof this.subject !== 'undefined') {\n toReturn['subject'] = this.subject;\n }\n if (typeof this.template !== 'undefined') {\n toReturn['template'] = this.template;\n }\n if (typeof this.ccAddress !== 'undefined') {\n toReturn['ccAddress'] = this.ccAddress;\n }\n if (typeof this.bccAddress !== 'undefined') {\n toReturn['bccAddress'] = this.bccAddress;\n }\n if (typeof this.replyAddress !== 'undefined') {\n toReturn['replyAddress'] = this.replyAddress;\n }\n return toReturn;\n }\n}\nclass ContactMessageResponse {\n static fromProto(proto) {\n let m = new ContactMessageResponse();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.responseMessage !== 'undefined') {\n toReturn['responseMessage'] = this.responseMessage;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$1(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass BulkCreateCustomerRequest {\n static fromProto(proto) {\n let m = new BulkCreateCustomerRequest();\n m = Object.assign(m, proto);\n if (proto.mapping) {\n m.mapping = CustomerHeaderMapping.fromProto(proto.mapping);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.filePath !== 'undefined') {\n toReturn['filePath'] = this.filePath;\n }\n if (typeof this.mapping !== 'undefined' && this.mapping !== null) {\n toReturn['mapping'] = 'toApiJson' in this.mapping ? this.mapping.toApiJson() : this.mapping;\n }\n return toReturn;\n }\n}\nclass BulkCreateCustomerResponse {\n static fromProto(proto) {\n let m = new BulkCreateCustomerResponse();\n m = Object.assign(m, proto);\n if (proto.errors) {\n m.errors = proto.errors.map(BulkCreateCustomerValidationError.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.errors !== 'undefined' && this.errors !== null) {\n toReturn['errors'] = 'toApiJson' in this.errors ? this.errors.toApiJson() : this.errors;\n }\n return toReturn;\n }\n}\nclass BulkCreateCustomerValidationError {\n static fromProto(proto) {\n let m = new BulkCreateCustomerValidationError();\n m = Object.assign(m, proto);\n if (proto.index) {\n m.index = parseInt(proto.index, 10);\n }\n if (proto.errors) {\n m.errors = proto.errors.map(v => enumStringToValue$1(CustomerValidationError, v));\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.index !== 'undefined') {\n toReturn['index'] = this.index;\n }\n if (typeof this.errors !== 'undefined') {\n toReturn['errors'] = this.errors;\n }\n return toReturn;\n }\n}\nclass BulkUpdateCustomersRequest {\n static fromProto(proto) {\n let m = new BulkUpdateCustomersRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.customerIds !== 'undefined') {\n toReturn['customerIds'] = this.customerIds;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n return toReturn;\n }\n}\nclass BulkUpdateCustomersResponse {\n static fromProto(proto) {\n let m = new BulkUpdateCustomersResponse();\n m = Object.assign(m, proto);\n if (proto.customers) {\n m.customers = proto.customers.map(Customer.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customers !== 'undefined' && this.customers !== null) {\n toReturn['customers'] = 'toApiJson' in this.customers ? this.customers.toApiJson() : this.customers;\n }\n return toReturn;\n }\n}\nclass Conflict {\n static fromProto(proto) {\n let m = new Conflict();\n m = Object.assign(m, proto);\n if (proto.permissionToContact) {\n m.permissionToContact = new Date(proto.permissionToContact);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.updated) {\n m.updated = new Date(proto.updated);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.conflictId !== 'undefined') {\n toReturn['conflictId'] = this.conflictId;\n }\n if (typeof this.customerId !== 'undefined') {\n toReturn['customerId'] = this.customerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.phoneNumbers !== 'undefined') {\n toReturn['phoneNumbers'] = this.phoneNumbers;\n }\n if (typeof this.emailAddresses !== 'undefined') {\n toReturn['emailAddresses'] = this.emailAddresses;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.origins !== 'undefined') {\n toReturn['origins'] = this.origins;\n }\n if (typeof this.permissionToContact !== 'undefined' && this.permissionToContact !== null) {\n toReturn['permissionToContact'] = 'toApiJson' in this.permissionToContact ? this.permissionToContact.toApiJson() : this.permissionToContact;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.updated !== 'undefined' && this.updated !== null) {\n toReturn['updated'] = 'toApiJson' in this.updated ? this.updated.toApiJson() : this.updated;\n }\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {\n toReturn['deleted'] = 'toApiJson' in this.deleted ? this.deleted.toApiJson() : this.deleted;\n }\n if (typeof this.assignedRepFirstName !== 'undefined') {\n toReturn['assignedRepFirstName'] = this.assignedRepFirstName;\n }\n if (typeof this.assignedRepLastName !== 'undefined') {\n toReturn['assignedRepLastName'] = this.assignedRepLastName;\n }\n return toReturn;\n }\n}\nclass ConflictingField {\n static fromProto(proto) {\n let m = new ConflictingField();\n m = Object.assign(m, proto);\n if (proto.fieldType) {\n m.fieldType = enumStringToValue$1(CustomerFieldType, proto.fieldType);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customerId !== 'undefined') {\n toReturn['customerId'] = this.customerId;\n }\n if (typeof this.fieldType !== 'undefined') {\n toReturn['fieldType'] = this.fieldType;\n }\n if (typeof this.fieldValue !== 'undefined') {\n toReturn['fieldValue'] = this.fieldValue;\n }\n return toReturn;\n }\n}\nclass CreateCustomerRequest {\n static fromProto(proto) {\n let m = new CreateCustomerRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.phoneNumbers !== 'undefined') {\n toReturn['phoneNumbers'] = this.phoneNumbers;\n }\n if (typeof this.emailAddresses !== 'undefined') {\n toReturn['emailAddresses'] = this.emailAddresses;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.origins !== 'undefined') {\n toReturn['origins'] = this.origins;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n if (typeof this.assignedRepFirstName !== 'undefined') {\n toReturn['assignedRepFirstName'] = this.assignedRepFirstName;\n }\n if (typeof this.assignedRepLastName !== 'undefined') {\n toReturn['assignedRepLastName'] = this.assignedRepLastName;\n }\n return toReturn;\n }\n}\nclass CreateCustomerResponse {\n static fromProto(proto) {\n let m = new CreateCustomerResponse();\n m = Object.assign(m, proto);\n if (proto.customer) {\n m.customer = Customer.fromProto(proto.customer);\n }\n if (proto.conflict) {\n m.conflict = Conflict.fromProto(proto.conflict);\n }\n if (proto.entityType) {\n m.entityType = enumStringToValue$1(EntityType, proto.entityType);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customer !== 'undefined' && this.customer !== null) {\n toReturn['customer'] = 'toApiJson' in this.customer ? this.customer.toApiJson() : this.customer;\n }\n if (typeof this.conflict !== 'undefined' && this.conflict !== null) {\n toReturn['conflict'] = 'toApiJson' in this.conflict ? this.conflict.toApiJson() : this.conflict;\n }\n if (typeof this.entityType !== 'undefined') {\n toReturn['entityType'] = this.entityType;\n }\n return toReturn;\n }\n}\nclass CreateWithoutConflictRequest {\n static fromProto(proto) {\n let m = new CreateWithoutConflictRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.phoneNumbers !== 'undefined') {\n toReturn['phoneNumbers'] = this.phoneNumbers;\n }\n if (typeof this.emailAddresses !== 'undefined') {\n toReturn['emailAddresses'] = this.emailAddresses;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.origins !== 'undefined') {\n toReturn['origins'] = this.origins;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n if (typeof this.assignedRepFirstName !== 'undefined') {\n toReturn['assignedRepFirstName'] = this.assignedRepFirstName;\n }\n if (typeof this.assignedRepLastName !== 'undefined') {\n toReturn['assignedRepLastName'] = this.assignedRepLastName;\n }\n return toReturn;\n }\n}\nclass CreateWithoutConflictResponse {\n static fromProto(proto) {\n let m = new CreateWithoutConflictResponse();\n m = Object.assign(m, proto);\n if (proto.customer) {\n m.customer = Customer.fromProto(proto.customer);\n }\n if (proto.conflictingFields) {\n m.conflictingFields = proto.conflictingFields.map(ConflictingField.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customer !== 'undefined' && this.customer !== null) {\n toReturn['customer'] = 'toApiJson' in this.customer ? this.customer.toApiJson() : this.customer;\n }\n if (typeof this.conflictingFields !== 'undefined' && this.conflictingFields !== null) {\n toReturn['conflictingFields'] = 'toApiJson' in this.conflictingFields ? this.conflictingFields.toApiJson() : this.conflictingFields;\n }\n return toReturn;\n }\n}\nclass Customer {\n static fromProto(proto) {\n let m = new Customer();\n m = Object.assign(m, proto);\n if (proto.permissionToContact) {\n m.permissionToContact = new Date(proto.permissionToContact);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.updated) {\n m.updated = new Date(proto.updated);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customerId !== 'undefined') {\n toReturn['customerId'] = this.customerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.phoneNumbers !== 'undefined') {\n toReturn['phoneNumbers'] = this.phoneNumbers;\n }\n if (typeof this.emailAddresses !== 'undefined') {\n toReturn['emailAddresses'] = this.emailAddresses;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.origins !== 'undefined') {\n toReturn['origins'] = this.origins;\n }\n if (typeof this.permissionToContact !== 'undefined' && this.permissionToContact !== null) {\n toReturn['permissionToContact'] = 'toApiJson' in this.permissionToContact ? this.permissionToContact.toApiJson() : this.permissionToContact;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.updated !== 'undefined' && this.updated !== null) {\n toReturn['updated'] = 'toApiJson' in this.updated ? this.updated.toApiJson() : this.updated;\n }\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {\n toReturn['deleted'] = 'toApiJson' in this.deleted ? this.deleted.toApiJson() : this.deleted;\n }\n if (typeof this.vendorCustomerId !== 'undefined') {\n toReturn['vendorCustomerId'] = this.vendorCustomerId;\n }\n if (typeof this.assignedRepFirstName !== 'undefined') {\n toReturn['assignedRepFirstName'] = this.assignedRepFirstName;\n }\n if (typeof this.assignedRepLastName !== 'undefined') {\n toReturn['assignedRepLastName'] = this.assignedRepLastName;\n }\n return toReturn;\n }\n}\nclass CustomerFilters {\n static fromProto(proto) {\n let m = new CustomerFilters();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = DateRangeFilter.fromProto(proto.created);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.tag !== 'undefined') {\n toReturn['tag'] = this.tag;\n }\n if (typeof this.origin !== 'undefined') {\n toReturn['origin'] = this.origin;\n }\n if (typeof this.negateTags !== 'undefined') {\n toReturn['negateTags'] = this.negateTags;\n }\n return toReturn;\n }\n}\nclass CustomerHeaderMapping {\n static fromProto(proto) {\n let m = new CustomerHeaderMapping();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.emails !== 'undefined') {\n toReturn['emails'] = this.emails;\n }\n if (typeof this.phones !== 'undefined') {\n toReturn['phones'] = this.phones;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n return toReturn;\n }\n}\nclass GetMultiCustomersRequestCustomerIdentifiers {\n static fromProto(proto) {\n let m = new GetMultiCustomersRequestCustomerIdentifiers();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.customerId !== 'undefined') {\n toReturn['customerId'] = this.customerId;\n }\n return toReturn;\n }\n}\nclass CustomerOrigin {\n static fromProto(proto) {\n let m = new CustomerOrigin();\n m = Object.assign(m, proto);\n if (proto.count) {\n m.count = parseInt(proto.count, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.origin !== 'undefined') {\n toReturn['origin'] = this.origin;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.count !== 'undefined') {\n toReturn['count'] = this.count;\n }\n return toReturn;\n }\n}\nclass CustomerSortOptions {\n static fromProto(proto) {\n let m = new CustomerSortOptions();\n m = Object.assign(m, proto);\n if (proto.direction) {\n m.direction = enumStringToValue$1(CustomerSortDirection, proto.direction);\n }\n if (proto.field) {\n m.field = enumStringToValue$1(CustomerSortField, proto.field);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.direction !== 'undefined') {\n toReturn['direction'] = this.direction;\n }\n if (typeof this.field !== 'undefined') {\n toReturn['field'] = this.field;\n }\n return toReturn;\n }\n}\nclass DateRangeFilter {\n static fromProto(proto) {\n let m = new DateRangeFilter();\n m = Object.assign(m, proto);\n if (proto.beginRange) {\n m.beginRange = new Date(proto.beginRange);\n }\n if (proto.endRange) {\n m.endRange = new Date(proto.endRange);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.beginRange !== 'undefined' && this.beginRange !== null) {\n toReturn['beginRange'] = 'toApiJson' in this.beginRange ? this.beginRange.toApiJson() : this.beginRange;\n }\n if (typeof this.endRange !== 'undefined' && this.endRange !== null) {\n toReturn['endRange'] = 'toApiJson' in this.endRange ? this.endRange.toApiJson() : this.endRange;\n }\n return toReturn;\n }\n}\nclass DeleteCustomerRequest {\n static fromProto(proto) {\n let m = new DeleteCustomerRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customerId !== 'undefined') {\n toReturn['customerId'] = this.customerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n return toReturn;\n }\n}\nclass DesyncCustomersRequest {\n static fromProto(proto) {\n let m = new DesyncCustomersRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.customerIds !== 'undefined') {\n toReturn['customerIds'] = this.customerIds;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n return toReturn;\n }\n}\nclass GetCustomerRequest {\n static fromProto(proto) {\n let m = new GetCustomerRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.customerId !== 'undefined') {\n toReturn['customerId'] = this.customerId;\n }\n return toReturn;\n }\n}\nclass GetCustomerResponse {\n static fromProto(proto) {\n let m = new GetCustomerResponse();\n m = Object.assign(m, proto);\n if (proto.customer) {\n m.customer = Customer.fromProto(proto.customer);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customer !== 'undefined' && this.customer !== null) {\n toReturn['customer'] = 'toApiJson' in this.customer ? this.customer.toApiJson() : this.customer;\n }\n return toReturn;\n }\n}\nclass GetMultiCustomersRequest {\n static fromProto(proto) {\n let m = new GetMultiCustomersRequest();\n m = Object.assign(m, proto);\n if (proto.customerIdentifiers) {\n m.customerIdentifiers = proto.customerIdentifiers.map(GetMultiCustomersRequestCustomerIdentifiers.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customerIdentifiers !== 'undefined' && this.customerIdentifiers !== null) {\n toReturn['customerIdentifiers'] = 'toApiJson' in this.customerIdentifiers ? this.customerIdentifiers.toApiJson() : this.customerIdentifiers;\n }\n return toReturn;\n }\n}\nclass GetMultiCustomersResponse {\n static fromProto(proto) {\n let m = new GetMultiCustomersResponse();\n m = Object.assign(m, proto);\n if (proto.customers) {\n m.customers = proto.customers.map(Customer.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customers !== 'undefined' && this.customers !== null) {\n toReturn['customers'] = 'toApiJson' in this.customers ? this.customers.toApiJson() : this.customers;\n }\n return toReturn;\n }\n}\nclass ListCustomerOriginsRequest {\n static fromProto(proto) {\n let m = new ListCustomerOriginsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n return toReturn;\n }\n}\nclass ListCustomerOriginsResponse {\n static fromProto(proto) {\n let m = new ListCustomerOriginsResponse();\n m = Object.assign(m, proto);\n if (proto.origins) {\n m.origins = proto.origins.map(CustomerOrigin.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.origins !== 'undefined' && this.origins !== null) {\n toReturn['origins'] = 'toApiJson' in this.origins ? this.origins.toApiJson() : this.origins;\n }\n return toReturn;\n }\n}\nclass ListCustomersRequest {\n static fromProto(proto) {\n let m = new ListCustomersRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n if (proto.sortOptions) {\n m.sortOptions = CustomerSortOptions.fromProto(proto.sortOptions);\n }\n if (proto.filters) {\n m.filters = CustomerFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n if (typeof this.searchTerm !== 'undefined') {\n toReturn['searchTerm'] = this.searchTerm;\n }\n if (typeof this.sortOptions !== 'undefined' && this.sortOptions !== null) {\n toReturn['sortOptions'] = 'toApiJson' in this.sortOptions ? this.sortOptions.toApiJson() : this.sortOptions;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n return toReturn;\n }\n}\nclass ListCustomersResponse {\n static fromProto(proto) {\n let m = new ListCustomersResponse();\n m = Object.assign(m, proto);\n if (proto.customers) {\n m.customers = proto.customers.map(Customer.fromProto);\n }\n if (proto.totalResults) {\n m.totalResults = parseInt(proto.totalResults, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customers !== 'undefined' && this.customers !== null) {\n toReturn['customers'] = 'toApiJson' in this.customers ? this.customers.toApiJson() : this.customers;\n }\n if (typeof this.nextCursor !== 'undefined') {\n toReturn['nextCursor'] = this.nextCursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n if (typeof this.totalResults !== 'undefined') {\n toReturn['totalResults'] = this.totalResults;\n }\n return toReturn;\n }\n}\nclass SyncCustomersRequest {\n static fromProto(proto) {\n let m = new SyncCustomersRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.customerIds !== 'undefined') {\n toReturn['customerIds'] = this.customerIds;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n return toReturn;\n }\n}\nclass UpdateCustomerRequest {\n static fromProto(proto) {\n let m = new UpdateCustomerRequest();\n m = Object.assign(m, proto);\n if (proto.fieldMask) {\n m.fieldMask = FieldMask.fromProto(proto.fieldMask);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.customerId !== 'undefined') {\n toReturn['customerId'] = this.customerId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.phoneNumbers !== 'undefined') {\n toReturn['phoneNumbers'] = this.phoneNumbers;\n }\n if (typeof this.emailAddresses !== 'undefined') {\n toReturn['emailAddresses'] = this.emailAddresses;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.origin !== 'undefined') {\n toReturn['origin'] = this.origin;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {\n toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? this.fieldMask.toApiJson() : this.fieldMask;\n }\n if (typeof this.assignedRepFirstName !== 'undefined') {\n toReturn['assignedRepFirstName'] = this.assignedRepFirstName;\n }\n if (typeof this.assignedRepLastName !== 'undefined') {\n toReturn['assignedRepLastName'] = this.assignedRepLastName;\n }\n return toReturn;\n }\n}\nclass UpdateCustomerResponse {\n static fromProto(proto) {\n let m = new UpdateCustomerResponse();\n m = Object.assign(m, proto);\n if (proto.customer) {\n m.customer = Customer.fromProto(proto.customer);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customer !== 'undefined' && this.customer !== null) {\n toReturn['customer'] = 'toApiJson' in this.customer ? this.customer.toApiJson() : this.customer;\n }\n return toReturn;\n }\n}\nclass VendorAssociateCustomerIDRequest {\n static fromProto(proto) {\n let m = new VendorAssociateCustomerIDRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customerId !== 'undefined') {\n toReturn['customerId'] = this.customerId;\n }\n if (typeof this.vendorCustomerId !== 'undefined') {\n toReturn['vendorCustomerId'] = this.vendorCustomerId;\n }\n if (typeof this.vendorAppId !== 'undefined') {\n toReturn['vendorAppId'] = this.vendorAppId;\n }\n return toReturn;\n }\n}\nclass VendorCreateCustomerRequest {\n static fromProto(proto) {\n let m = new VendorCreateCustomerRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.vendorCustomerId !== 'undefined') {\n toReturn['vendorCustomerId'] = this.vendorCustomerId;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.phoneNumbers !== 'undefined') {\n toReturn['phoneNumbers'] = this.phoneNumbers;\n }\n if (typeof this.emailAddresses !== 'undefined') {\n toReturn['emailAddresses'] = this.emailAddresses;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.origin !== 'undefined') {\n toReturn['origin'] = this.origin;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n if (typeof this.assignedRepFirstName !== 'undefined') {\n toReturn['assignedRepFirstName'] = this.assignedRepFirstName;\n }\n if (typeof this.assignedRepLastName !== 'undefined') {\n toReturn['assignedRepLastName'] = this.assignedRepLastName;\n }\n return toReturn;\n }\n}\nclass VendorCreateCustomerResponse {\n static fromProto(proto) {\n let m = new VendorCreateCustomerResponse();\n m = Object.assign(m, proto);\n if (proto.customer) {\n m.customer = Customer.fromProto(proto.customer);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customer !== 'undefined' && this.customer !== null) {\n toReturn['customer'] = 'toApiJson' in this.customer ? this.customer.toApiJson() : this.customer;\n }\n if (typeof this.conflictingCustomerId !== 'undefined') {\n toReturn['conflictingCustomerId'] = this.conflictingCustomerId;\n }\n return toReturn;\n }\n}\nclass VendorDeleteCustomerRequest {\n static fromProto(proto) {\n let m = new VendorDeleteCustomerRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.vendorCustomerId !== 'undefined') {\n toReturn['vendorCustomerId'] = this.vendorCustomerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.vendorAppId !== 'undefined') {\n toReturn['vendorAppId'] = this.vendorAppId;\n }\n return toReturn;\n }\n}\nclass VendorGetCustomerRequest {\n static fromProto(proto) {\n let m = new VendorGetCustomerRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.vendorCustomerId !== 'undefined') {\n toReturn['vendorCustomerId'] = this.vendorCustomerId;\n }\n if (typeof this.vendorAppId !== 'undefined') {\n toReturn['vendorAppId'] = this.vendorAppId;\n }\n return toReturn;\n }\n}\nclass VendorGetCustomerResponse {\n static fromProto(proto) {\n let m = new VendorGetCustomerResponse();\n m = Object.assign(m, proto);\n if (proto.customer) {\n m.customer = Customer.fromProto(proto.customer);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customer !== 'undefined' && this.customer !== null) {\n toReturn['customer'] = 'toApiJson' in this.customer ? this.customer.toApiJson() : this.customer;\n }\n if (typeof this.conflictingCustomerId !== 'undefined') {\n toReturn['conflictingCustomerId'] = this.conflictingCustomerId;\n }\n return toReturn;\n }\n}\nclass VendorListCustomerOriginsRequest {\n static fromProto(proto) {\n let m = new VendorListCustomerOriginsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n return toReturn;\n }\n}\nclass VendorListCustomerOriginsResponse {\n static fromProto(proto) {\n let m = new VendorListCustomerOriginsResponse();\n m = Object.assign(m, proto);\n if (proto.origins) {\n m.origins = proto.origins.map(CustomerOrigin.fromProto);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.origins !== 'undefined' && this.origins !== null) {\n toReturn['origins'] = 'toApiJson' in this.origins ? this.origins.toApiJson() : this.origins;\n }\n return toReturn;\n }\n}\nclass VendorListCustomersRequest {\n static fromProto(proto) {\n let m = new VendorListCustomersRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n if (proto.sortOptions) {\n m.sortOptions = CustomerSortOptions.fromProto(proto.sortOptions);\n }\n if (proto.filters) {\n m.filters = CustomerFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.vendorAppId !== 'undefined') {\n toReturn['vendorAppId'] = this.vendorAppId;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n if (typeof this.searchTerm !== 'undefined') {\n toReturn['searchTerm'] = this.searchTerm;\n }\n if (typeof this.sortOptions !== 'undefined' && this.sortOptions !== null) {\n toReturn['sortOptions'] = 'toApiJson' in this.sortOptions ? this.sortOptions.toApiJson() : this.sortOptions;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n return toReturn;\n }\n}\nclass VendorListCustomersResponse {\n static fromProto(proto) {\n let m = new VendorListCustomersResponse();\n m = Object.assign(m, proto);\n if (proto.customers) {\n m.customers = proto.customers.map(Customer.fromProto);\n }\n if (proto.totalResults) {\n m.totalResults = parseInt(proto.totalResults, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customers !== 'undefined' && this.customers !== null) {\n toReturn['customers'] = 'toApiJson' in this.customers ? this.customers.toApiJson() : this.customers;\n }\n if (typeof this.nextCursor !== 'undefined') {\n toReturn['nextCursor'] = this.nextCursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n if (typeof this.totalResults !== 'undefined') {\n toReturn['totalResults'] = this.totalResults;\n }\n return toReturn;\n }\n}\nclass VendorSyncAllCustomersRequest {\n static fromProto(proto) {\n let m = new VendorSyncAllCustomersRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.vendorAppId !== 'undefined') {\n toReturn['vendorAppId'] = this.vendorAppId;\n }\n return toReturn;\n }\n}\nclass VendorUpdateCustomerRequest {\n static fromProto(proto) {\n let m = new VendorUpdateCustomerRequest();\n m = Object.assign(m, proto);\n if (proto.fieldMask) {\n m.fieldMask = FieldMask.fromProto(proto.fieldMask);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.vendorCustomerId !== 'undefined') {\n toReturn['vendorCustomerId'] = this.vendorCustomerId;\n }\n if (typeof this.vendorAppId !== 'undefined') {\n toReturn['vendorAppId'] = this.vendorAppId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.phoneNumbers !== 'undefined') {\n toReturn['phoneNumbers'] = this.phoneNumbers;\n }\n if (typeof this.emailAddresses !== 'undefined') {\n toReturn['emailAddresses'] = this.emailAddresses;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.origin !== 'undefined') {\n toReturn['origin'] = this.origin;\n }\n if (typeof this.permissionToContact !== 'undefined') {\n toReturn['permissionToContact'] = this.permissionToContact;\n }\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {\n toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? this.fieldMask.toApiJson() : this.fieldMask;\n }\n if (typeof this.assignedRepFirstName !== 'undefined') {\n toReturn['assignedRepFirstName'] = this.assignedRepFirstName;\n }\n if (typeof this.assignedRepLastName !== 'undefined') {\n toReturn['assignedRepLastName'] = this.assignedRepLastName;\n }\n return toReturn;\n }\n}\nclass VendorUpdateCustomerResponse {\n static fromProto(proto) {\n let m = new VendorUpdateCustomerResponse();\n m = Object.assign(m, proto);\n if (proto.customer) {\n m.customer = Customer.fromProto(proto.customer);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customer !== 'undefined' && this.customer !== null) {\n toReturn['customer'] = 'toApiJson' in this.customer ? this.customer.toApiJson() : this.customer;\n }\n if (typeof this.conflictingCustomerId !== 'undefined') {\n toReturn['conflictingCustomerId'] = this.conflictingCustomerId;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass CustomerIdMapping {\n static fromProto(proto) {\n let m = new CustomerIdMapping();\n m = Object.assign(m, proto);\n if (proto.customerType) {\n m.customerType = enumStringToValue(CustomerType, proto.customerType);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.updated) {\n m.updated = new Date(proto.updated);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customerId !== 'undefined') {\n toReturn['customerId'] = this.customerId;\n }\n if (typeof this.vendorAppId !== 'undefined') {\n toReturn['vendorAppId'] = this.vendorAppId;\n }\n if (typeof this.vendorCustomerId !== 'undefined') {\n toReturn['vendorCustomerId'] = this.vendorCustomerId;\n }\n if (typeof this.customerType !== 'undefined') {\n toReturn['customerType'] = this.customerType;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.updated !== 'undefined' && this.updated !== null) {\n toReturn['updated'] = 'toApiJson' in this.updated ? this.updated.toApiJson() : this.updated;\n }\n return toReturn;\n }\n}\nclass GetCustomerIdMappingRequest {\n static fromProto(proto) {\n let m = new GetCustomerIdMappingRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.customerId !== 'undefined') {\n toReturn['customerId'] = this.customerId;\n }\n if (typeof this.vendorAppId !== 'undefined') {\n toReturn['vendorAppId'] = this.vendorAppId;\n }\n return toReturn;\n }\n}\nclass GetCustomerIdMappingResponse {\n static fromProto(proto) {\n let m = new GetCustomerIdMappingResponse();\n m = Object.assign(m, proto);\n if (proto.customerIdMapping) {\n m.customerIdMapping = CustomerIdMapping.fromProto(proto.customerIdMapping);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.customerIdMapping !== 'undefined' && this.customerIdMapping !== null) {\n toReturn['customerIdMapping'] = 'toApiJson' in this.customerIdMapping ? this.customerIdMapping.toApiJson() : this.customerIdMapping;\n }\n return toReturn;\n }\n}\nconst environment = (window ? window['environment'] : 'prod') ?? 'prod';\nconst hostMap = {\n 'local': 'contacts-api.vendasta-local.com',\n 'test': '',\n 'demo': 'contacts-api-demo.vendasta-internal.com',\n 'prod': 'contacts-api-prod.vendasta-internal.com',\n 'production': 'contacts-api-prod.vendasta-internal.com'\n};\nlet HostService = /*#__PURE__*/(() => {\n class HostService {\n get host() {\n return hostMap[environment.toLowerCase()];\n }\n get hostWithScheme() {\n return 'https://' + this.host;\n }\n }\n HostService.ɵfac = function HostService_Factory(t) {\n return new (t || HostService)();\n };\n HostService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: HostService,\n factory: HostService.ɵfac,\n providedIn: 'root'\n });\n return HostService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet ContactEmailApiService = /*#__PURE__*/(() => {\n class ContactEmailApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n createContactMessage(r) {\n const request = r.toApiJson ? r : new ContactMessageRequest(r);\n return this.http.post(this._host + \"/contacts.v1.ContactEmailService/CreateContactMessage\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ContactMessageResponse.fromProto(resp)));\n }\n }\n ContactEmailApiService.ɵfac = function ContactEmailApiService_Factory(t) {\n return new (t || ContactEmailApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n ContactEmailApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ContactEmailApiService,\n factory: ContactEmailApiService.ɵfac,\n providedIn: 'root'\n });\n return ContactEmailApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet ContactsApiService = /*#__PURE__*/(() => {\n class ContactsApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n create(r) {\n const request = r.toApiJson ? r : new CreateContactRequest(r);\n return this.http.post(this._host + \"/contacts.v1.Contacts/Create\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateContactResponse.fromProto(resp)));\n }\n delete(r) {\n const request = r.toApiJson ? r : new DeleteContactRequest(r);\n return this.http.post(this._host + \"/contacts.v1.Contacts/Delete\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n update(r) {\n const request = r.toApiJson ? r : new UpdateContactRequest(r);\n return this.http.post(this._host + \"/contacts.v1.Contacts/Update\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpdateContactResponse.fromProto(resp)));\n }\n list(r) {\n const request = r.toApiJson ? r : new ListContactsRequest(r);\n return this.http.post(this._host + \"/contacts.v1.Contacts/List\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListContactsResponse.fromProto(resp)));\n }\n listOrigins(r) {\n const request = r.toApiJson ? r : new ListOriginsRequest(r);\n return this.http.post(this._host + \"/contacts.v1.Contacts/ListOrigins\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListOriginsResponse.fromProto(resp)));\n }\n associateId(r) {\n const request = r.toApiJson ? r : new AssociateIDRequest(r);\n return this.http.post(this._host + \"/contacts.v1.Contacts/AssociateID\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n bulkCreate(r) {\n const request = r.toApiJson ? r : new BulkCreateContactRequest(r);\n return this.http.post(this._host + \"/contacts.v1.Contacts/BulkCreate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n bulkUpdate(r) {\n const request = r.toApiJson ? r : new BulkUpdateContactRequest(r);\n return this.http.post(this._host + \"/contacts.v1.Contacts/BulkUpdate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n triggerSync(r) {\n const request = r.toApiJson ? r : new TriggerSyncRequest(r);\n return this.http.post(this._host + \"/contacts.v1.Contacts/TriggerSync\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n ContactsApiService.ɵfac = function ContactsApiService_Factory(t) {\n return new (t || ContactsApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n ContactsApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ContactsApiService,\n factory: ContactsApiService.ɵfac,\n providedIn: 'root'\n });\n return ContactsApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet CustomerIdMappingApiService = /*#__PURE__*/(() => {\n class CustomerIdMappingApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n get(r) {\n const request = r.toApiJson ? r : new GetCustomerIdMappingRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerIdMappingService/Get\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetCustomerIdMappingResponse.fromProto(resp)));\n }\n }\n CustomerIdMappingApiService.ɵfac = function CustomerIdMappingApiService_Factory(t) {\n return new (t || CustomerIdMappingApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n CustomerIdMappingApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: CustomerIdMappingApiService,\n factory: CustomerIdMappingApiService.ɵfac,\n providedIn: 'root'\n });\n return CustomerIdMappingApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet CustomerApiService = /*#__PURE__*/(() => {\n class CustomerApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n create(r) {\n const request = r.toApiJson ? r : new CreateCustomerRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/Create\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateCustomerResponse.fromProto(resp)));\n }\n delete(r) {\n const request = r.toApiJson ? r : new DeleteCustomerRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/Delete\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n update(r) {\n const request = r.toApiJson ? r : new UpdateCustomerRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/Update\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpdateCustomerResponse.fromProto(resp)));\n }\n get(r) {\n const request = r.toApiJson ? r : new GetCustomerRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/Get\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetCustomerResponse.fromProto(resp)));\n }\n getMultiCustomers(r) {\n const request = r.toApiJson ? r : new GetMultiCustomersRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/GetMultiCustomers\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiCustomersResponse.fromProto(resp)));\n }\n list(r) {\n const request = r.toApiJson ? r : new ListCustomersRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/List\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListCustomersResponse.fromProto(resp)));\n }\n bulkCreate(r) {\n const request = r.toApiJson ? r : new BulkCreateCustomerRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/BulkCreate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => BulkCreateCustomerResponse.fromProto(resp)));\n }\n listCustomerOrigins(r) {\n const request = r.toApiJson ? r : new ListCustomerOriginsRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/ListCustomerOrigins\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListCustomerOriginsResponse.fromProto(resp)));\n }\n syncCustomers(r) {\n const request = r.toApiJson ? r : new SyncCustomersRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/SyncCustomers\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n desyncCustomers(r) {\n const request = r.toApiJson ? r : new DesyncCustomersRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/DesyncCustomers\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n bulkUpdate(r) {\n const request = r.toApiJson ? r : new BulkUpdateCustomersRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/BulkUpdate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => BulkUpdateCustomersResponse.fromProto(resp)));\n }\n createWithoutConflict(r) {\n const request = r.toApiJson ? r : new CreateWithoutConflictRequest(r);\n return this.http.post(this._host + \"/contacts.v1.CustomerService/CreateWithoutConflict\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateWithoutConflictResponse.fromProto(resp)));\n }\n }\n CustomerApiService.ɵfac = function CustomerApiService_Factory(t) {\n return new (t || CustomerApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n CustomerApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: CustomerApiService,\n factory: CustomerApiService.ɵfac,\n providedIn: 'root'\n });\n return CustomerApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet UserListApiService = /*#__PURE__*/(() => {\n class UserListApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n createUserList(r) {\n const request = r.toApiJson ? r : new CreateUserListRequest(r);\n return this.http.post(this._host + \"/contacts.v1.UserList/CreateUserList\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n addUsersToList(r) {\n const request = r.toApiJson ? r : new AddUsersToListRequest(r);\n return this.http.post(this._host + \"/contacts.v1.UserList/AddUsersToList\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n listUsersFromList(r) {\n const request = r.toApiJson ? r : new ListUsersFromListRequest(r);\n return this.http.post(this._host + \"/contacts.v1.UserList/ListUsersFromList\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListUsersFromListResponse.fromProto(resp)));\n }\n listUserLists(r) {\n const request = r.toApiJson ? r : new ListUserListsRequest(r);\n return this.http.post(this._host + \"/contacts.v1.UserList/ListUserLists\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListUserListsResponse.fromProto(resp)));\n }\n getUserList(r) {\n const request = r.toApiJson ? r : new GetUserListRequest(r);\n return this.http.post(this._host + \"/contacts.v1.UserList/GetUserList\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetUserListResponse.fromProto(resp)));\n }\n deleteUserFromList(r) {\n const request = r.toApiJson ? r : new DeleteUserFromListRequest(r);\n return this.http.post(this._host + \"/contacts.v1.UserList/DeleteUserFromList\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n UserListApiService.ɵfac = function UserListApiService_Factory(t) {\n return new (t || UserListApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n UserListApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: UserListApiService,\n factory: UserListApiService.ɵfac,\n providedIn: 'root'\n });\n return UserListApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet VendorCustomerApiService = /*#__PURE__*/(() => {\n class VendorCustomerApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n vendorCreate(r) {\n const request = r.toApiJson ? r : new VendorCreateCustomerRequest(r);\n return this.http.post(this._host + \"/contacts.v1.VendorCustomerService/VendorCreate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => VendorCreateCustomerResponse.fromProto(resp)));\n }\n vendorAssociateCustomerId(r) {\n const request = r.toApiJson ? r : new VendorAssociateCustomerIDRequest(r);\n return this.http.post(this._host + \"/contacts.v1.VendorCustomerService/VendorAssociateCustomerID\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n vendorUpdate(r) {\n const request = r.toApiJson ? r : new VendorUpdateCustomerRequest(r);\n return this.http.post(this._host + \"/contacts.v1.VendorCustomerService/VendorUpdate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => VendorUpdateCustomerResponse.fromProto(resp)));\n }\n vendorDelete(r) {\n const request = r.toApiJson ? r : new VendorDeleteCustomerRequest(r);\n return this.http.post(this._host + \"/contacts.v1.VendorCustomerService/VendorDelete\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n vendorGet(r) {\n const request = r.toApiJson ? r : new VendorGetCustomerRequest(r);\n return this.http.post(this._host + \"/contacts.v1.VendorCustomerService/VendorGet\", request.toApiJson(), this.apiOptions()).pipe(map(resp => VendorGetCustomerResponse.fromProto(resp)));\n }\n vendorList(r) {\n const request = r.toApiJson ? r : new VendorListCustomersRequest(r);\n return this.http.post(this._host + \"/contacts.v1.VendorCustomerService/VendorList\", request.toApiJson(), this.apiOptions()).pipe(map(resp => VendorListCustomersResponse.fromProto(resp)));\n }\n vendorListCustomerOrigins(r) {\n const request = r.toApiJson ? r : new VendorListCustomerOriginsRequest(r);\n return this.http.post(this._host + \"/contacts.v1.VendorCustomerService/VendorListCustomerOrigins\", request.toApiJson(), this.apiOptions()).pipe(map(resp => VendorListCustomerOriginsResponse.fromProto(resp)));\n }\n vendorSyncAllCustomers(r) {\n const request = r.toApiJson ? r : new VendorSyncAllCustomersRequest(r);\n return this.http.post(this._host + \"/contacts.v1.VendorCustomerService/VendorSyncAllCustomers\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n VendorCustomerApiService.ɵfac = function VendorCustomerApiService_Factory(t) {\n return new (t || VendorCustomerApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n VendorCustomerApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: VendorCustomerApiService,\n factory: VendorCustomerApiService.ɵfac,\n providedIn: 'root'\n });\n return VendorCustomerApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Index.\n// *********************************\nlet CustomerService = /*#__PURE__*/(() => {\n class CustomerService {\n constructor(customerAPI) {\n this.customerAPI = customerAPI;\n }\n createCustomer(accountGroupId, partnerId, firstName, lastName, address, city, state, country, phoneNumbers, emailAddresses, tags, origins, permissionToContact) {\n return this.customerAPI.create({\n accountGroupId: accountGroupId,\n partnerId: partnerId,\n firstName: firstName,\n lastName: lastName,\n address: address,\n city: city,\n state: state,\n country: country,\n phoneNumbers: phoneNumbers,\n emailAddresses: emailAddresses,\n tags: tags,\n origins: origins,\n permissionToContact: permissionToContact\n });\n }\n updateCustomer(accountGroupId, customerId, firstName, lastName, address, city, state, country, phoneNumbers, emailAddresses, tags, origin, permissionToContact, fieldMask, assignedRepFirstName, assignedRepLastName) {\n return this.customerAPI.update({\n accountGroupId: accountGroupId,\n customerId: customerId,\n firstName: firstName,\n lastName: lastName,\n address: address,\n city: city,\n state: state,\n country: country,\n phoneNumbers: phoneNumbers,\n emailAddresses: emailAddresses,\n tags: tags,\n origin: origin,\n permissionToContact: permissionToContact,\n fieldMask: fieldMask,\n assignedRepFirstName: assignedRepFirstName,\n assignedRepLastName: assignedRepLastName\n });\n }\n bulkUpdateCustomers(accountGroupId, customerIds, permissionToContact) {\n return this.customerAPI.bulkUpdate({\n accountGroupId,\n customerIds,\n permissionToContact\n });\n }\n deleteCustomer(accountGroupId, customerId) {\n return this.customerAPI.delete({\n accountGroupId: accountGroupId,\n customerId: customerId\n });\n }\n getCustomer(accountGroupId, customerId) {\n return this.customerAPI.get({\n accountGroupId: accountGroupId,\n customerId: customerId\n });\n }\n getMultiCustomers(customerIdentifiers) {\n return this.customerAPI.getMultiCustomers({\n customerIdentifiers: customerIdentifiers\n });\n }\n listCustomers(accountGroupId, cursor, pageSize, searchTerm, filters, sortOptions) {\n return this.customerAPI.list({\n accountGroupId: accountGroupId,\n cursor: cursor,\n pageSize: pageSize,\n searchTerm: searchTerm,\n filters: filters,\n sortOptions: sortOptions\n });\n }\n bulkCreateCustomers(accountGroupId, partnerId, filePath, mapping) {\n return this.customerAPI.bulkCreate({\n partnerId: partnerId,\n accountGroupId: accountGroupId,\n filePath: filePath,\n mapping: mapping\n });\n }\n listCustomerOrigins(accountGroupId) {\n return this.customerAPI.listCustomerOrigins({\n accountGroupId: accountGroupId\n });\n }\n syncCustomers(accountGroupId, appId, customerIds) {\n return this.customerAPI.syncCustomers({\n accountGroupId,\n appId,\n customerIds\n });\n }\n desyncCustomers(accountGroupId, appId, customerIds) {\n return this.customerAPI.desyncCustomers({\n accountGroupId,\n appId,\n customerIds\n });\n }\n }\n CustomerService.ɵfac = function CustomerService_Factory(t) {\n return new (t || CustomerService)(i0.ɵɵinject(CustomerApiService));\n };\n CustomerService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: CustomerService,\n factory: CustomerService.ɵfac,\n providedIn: 'root'\n });\n return CustomerService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet UserListSdkService = /*#__PURE__*/(() => {\n class UserListSdkService {\n constructor(delegate) {\n this.delegate = delegate;\n }\n createUserList(partnerId, listName, listId) {\n const req = {\n partnerId: partnerId,\n listName: listName,\n listId: listId\n };\n return this.delegate.createUserList(req).pipe(map(resp => resp.status === 200));\n }\n addUsersToList(listId, userIds) {\n const req = {\n listId: listId,\n userIds: userIds\n };\n return this.delegate.addUsersToList(req).pipe(map(resp => resp.status === 200));\n }\n listUsersFromList(listId, cursor, pageSize) {\n const req = {\n listId: listId,\n pagingOptions: {\n cursor: cursor,\n pageSize: pageSize\n }\n };\n return this.delegate.listUsersFromList(req);\n }\n listUserLists(partnerId, cursor, pageSize) {\n const req = {\n partnerId: partnerId,\n pagingOptions: {\n cursor: cursor,\n pageSize: pageSize\n }\n };\n return this.delegate.listUserLists(req);\n }\n getUserList(listId) {\n const req = {\n listId: listId\n };\n return this.delegate.getUserList(req).pipe(map(r => r.userList));\n }\n deleteUserFromList(listId, userId) {\n const req = {\n listId: listId,\n userId: userId\n };\n return this.delegate.deleteUserFromList(req).pipe(map(resp => resp.status === 200));\n }\n }\n UserListSdkService.ɵfac = function UserListSdkService_Factory(t) {\n return new (t || UserListSdkService)(i0.ɵɵinject(UserListApiService));\n };\n UserListSdkService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: UserListSdkService,\n factory: UserListSdkService.ɵfac,\n providedIn: 'root'\n });\n return UserListSdkService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet ContactEmailService = /*#__PURE__*/(() => {\n class ContactEmailService {\n constructor(delegate) {\n this.delegate = delegate;\n }\n createContactMessage(accountGroupId, contactIds, subject, template, ccAddress, bccAddress, replyAddress) {\n const req = {\n accountGroupId: accountGroupId,\n contactIds: contactIds,\n subject: subject,\n template: template,\n ccAddress: ccAddress,\n bccAddress: bccAddress,\n replyAddress: replyAddress\n };\n return this.delegate.createContactMessage(req).pipe(map(resp => {\n return resp.responseMessage;\n }));\n }\n }\n ContactEmailService.ɵfac = function ContactEmailService_Factory(t) {\n return new (t || ContactEmailService)(i0.ɵɵinject(ContactEmailApiService));\n };\n ContactEmailService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ContactEmailService,\n factory: ContactEmailService.ɵfac,\n providedIn: 'root'\n });\n return ContactEmailService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { AddUsersToListRequest, AssociateIDRequest, BulkCreateContactRequest, BulkCreateCustomerRequest, BulkCreateCustomerResponse, BulkCreateCustomerValidationError, BulkUpdateContactRequest, BulkUpdateCustomersRequest, BulkUpdateCustomersResponse, Conflict, ConflictingField, Contact, ContactEmailApiService, ContactEmailService, ContactMessageRequest, ContactMessageResponse, ContactsApiService, CreateContactRequest, CreateContactResponse, CreateCustomerRequest, CreateCustomerResponse, CreateUserListRequest, CreateWithoutConflictRequest, CreateWithoutConflictResponse, Customer, CustomerApiService, CustomerFieldType, CustomerFilters, CustomerHeaderMapping, CustomerIdMapping, CustomerIdMappingApiService, CustomerOrigin, CustomerService, CustomerSortDirection, CustomerSortField, CustomerSortOptions, CustomerType, CustomerValidationError, DateRangeFilter, DeleteContactRequest, DeleteCustomerRequest, DeleteUserFromListRequest, DesyncCustomersRequest, EntityType, FieldMask, Filters, GetCustomerIdMappingRequest, GetCustomerIdMappingResponse, GetCustomerRequest, GetCustomerResponse, GetMultiCustomersRequest, GetMultiCustomersRequestCustomerIdentifiers, GetMultiCustomersResponse, GetUserListRequest, GetUserListResponse, HeaderMapping, HostService, ListContactsRequest, ListContactsResponse, ListCustomerOriginsRequest, ListCustomerOriginsResponse, ListCustomersRequest, ListCustomersResponse, ListOriginsRequest, ListOriginsResponse, ListUserListsRequest, ListUserListsResponse, ListUsersFromListRequest, ListUsersFromListResponse, PagedRequestOptions, PagedResponseMetadata, ReviewRequestStatus, SortDirection, SortField, SortOptions, SyncCustomersRequest, TriggerSyncRequest, UpdateContactRequest, UpdateContactResponse, UpdateCustomerRequest, UpdateCustomerResponse, UserListApiService, UserListItem, UserListSdkService, VendorAssociateCustomerIDRequest, VendorCreateCustomerRequest, VendorCreateCustomerResponse, VendorCustomerApiService, VendorDeleteCustomerRequest, VendorGetCustomerRequest, VendorGetCustomerResponse, VendorListCustomerOriginsRequest, VendorListCustomerOriginsResponse, VendorListCustomersRequest, VendorListCustomersResponse, VendorSyncAllCustomersRequest, VendorUpdateCustomerRequest, VendorUpdateCustomerResponse, WhiteLabeledOrigin };\n"],"mappings":"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","names":["CustomerFieldType","CustomerSortDirection","CustomerSortField","CustomerValidationError","EntityType","FieldMask","_FieldMask","proto","m","kwargs","toReturn","AddUsersToListRequest","_AddUsersToListRequest","proto","m","kwargs","toReturn","CreateUserListRequest","_CreateUserListRequest","proto","m","kwargs","toReturn","DeleteUserFromListRequest","_DeleteUserFromListRequest","proto","m","kwargs","toReturn","GetUserListRequest","_GetUserListRequest","proto","m","kwargs","toReturn","GetUserListResponse","_GetUserListResponse","UserListItem","ListUserListsRequest","_ListUserListsRequest","proto","m","PagedRequestOptions","kwargs","toReturn","ListUserListsResponse","_ListUserListsResponse","UserListItem","PagedResponseMetadata","ListUsersFromListRequest","_ListUsersFromListRequest","ListUsersFromListResponse","_ListUsersFromListResponse","_PagedRequestOptions","_PagedResponseMetadata","UserListItem","_UserListItem","proto","m","kwargs","toReturn","enumStringToValue$1","enumRef","value","BulkCreateCustomerRequest","_BulkCreateCustomerRequest","proto","m","CustomerHeaderMapping","kwargs","toReturn","BulkCreateCustomerResponse","_BulkCreateCustomerResponse","BulkCreateCustomerValidationError","_BulkCreateCustomerValidationError","v","CustomerValidationError","BulkUpdateCustomersRequest","_BulkUpdateCustomersRequest","BulkUpdateCustomersResponse","_BulkUpdateCustomersResponse","Customer","Conflict","_Conflict","ConflictingField","_ConflictingField","CustomerFieldType","CreateCustomerRequest","_CreateCustomerRequest","CreateCustomerResponse","_CreateCustomerResponse","EntityType","CreateWithoutConflictRequest","_CreateWithoutConflictRequest","CreateWithoutConflictResponse","_CreateWithoutConflictResponse","_Customer","CustomerFilters","_CustomerFilters","DateRangeFilter","_CustomerHeaderMapping","GetMultiCustomersRequestCustomerIdentifiers","_GetMultiCustomersRequestCustomerIdentifiers","CustomerOrigin","_CustomerOrigin","CustomerSortOptions","_CustomerSortOptions","CustomerSortDirection","CustomerSortField","_DateRangeFilter","DeleteCustomerRequest","_DeleteCustomerRequest","DesyncCustomersRequest","_DesyncCustomersRequest","GetCustomerRequest","_GetCustomerRequest","GetCustomerResponse","_GetCustomerResponse","GetMultiCustomersRequest","_GetMultiCustomersRequest","GetMultiCustomersResponse","_GetMultiCustomersResponse","ListCustomerOriginsRequest","_ListCustomerOriginsRequest","ListCustomerOriginsResponse","_ListCustomerOriginsResponse","ListCustomersRequest","_ListCustomersRequest","ListCustomersResponse","_ListCustomersResponse","SyncCustomersRequest","_SyncCustomersRequest","UpdateCustomerRequest","_UpdateCustomerRequest","FieldMask","UpdateCustomerResponse","_UpdateCustomerResponse","environment","hostMap","HostService","t","ɵɵdefineInjectable","CustomerApiService","http","hostService","HttpHeaders","r","request","CreateCustomerRequest","map","resp","CreateCustomerResponse","DeleteCustomerRequest","__spreadProps","__spreadValues","UpdateCustomerRequest","UpdateCustomerResponse","GetCustomerRequest","GetCustomerResponse","GetMultiCustomersRequest","GetMultiCustomersResponse","ListCustomersRequest","ListCustomersResponse","BulkCreateCustomerRequest","BulkCreateCustomerResponse","ListCustomerOriginsRequest","ListCustomerOriginsResponse","SyncCustomersRequest","DesyncCustomersRequest","BulkUpdateCustomersRequest","BulkUpdateCustomersResponse","CreateWithoutConflictRequest","CreateWithoutConflictResponse","t","ɵɵinject","HttpClient","HostService","ɵɵdefineInjectable","UserListApiService","CreateUserListRequest","AddUsersToListRequest","ListUsersFromListRequest","ListUsersFromListResponse","ListUserListsRequest","ListUserListsResponse","GetUserListRequest","GetUserListResponse","DeleteUserFromListRequest","CustomerService","customerAPI","accountGroupId","partnerId","firstName","lastName","address","city","state","country","phoneNumbers","emailAddresses","tags","origins","permissionToContact","customerId","origin","fieldMask","assignedRepFirstName","assignedRepLastName","customerIds","customerIdentifiers","cursor","pageSize","searchTerm","filters","sortOptions","filePath","mapping","appId","t","ɵɵinject","CustomerApiService","ɵɵdefineInjectable","UserListSdkService","delegate","listName","listId","req","map","resp","userIds","r","userId","UserListApiService"],"x_google_ignoreList":[0]}