{"version":3,"sources":["node_modules/@vendasta/reputation/fesm2020/vendasta-reputation.mjs"],"sourcesContent":["import * as i0 from '@angular/core';\nimport { Injectable, inject } from '@angular/core';\nimport { HttpClient, 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 Recommendation = /*#__PURE__*/function (Recommendation) {\n Recommendation[Recommendation[\"RECOMMENDATION_UNSPECIFIED\"] = 0] = \"RECOMMENDATION_UNSPECIFIED\";\n Recommendation[Recommendation[\"RECOMMENDATION_POSITIVE\"] = 1] = \"RECOMMENDATION_POSITIVE\";\n Recommendation[Recommendation[\"RECOMMENDATION_NEGATIVE\"] = 2] = \"RECOMMENDATION_NEGATIVE\";\n return Recommendation;\n}(Recommendation || {});\nvar ReviewActionStatus = /*#__PURE__*/function (ReviewActionStatus) {\n ReviewActionStatus[ReviewActionStatus[\"REVIEW_ACTION_STATUS_ACTION_REQUIRED\"] = 0] = \"REVIEW_ACTION_STATUS_ACTION_REQUIRED\";\n ReviewActionStatus[ReviewActionStatus[\"REVIEW_ACTION_STATUS_NO_ACTION_REQUIRED\"] = 1] = \"REVIEW_ACTION_STATUS_NO_ACTION_REQUIRED\";\n ReviewActionStatus[ReviewActionStatus[\"REVIEW_ACTION_STATUS_OWNER_RESPONDED\"] = 2] = \"REVIEW_ACTION_STATUS_OWNER_RESPONDED\";\n ReviewActionStatus[ReviewActionStatus[\"REVIEW_ACTION_STATUS_RESPONSE_AWAITING_APPROVAL\"] = 3] = \"REVIEW_ACTION_STATUS_RESPONSE_AWAITING_APPROVAL\";\n ReviewActionStatus[ReviewActionStatus[\"REVIEW_ACTION_STATUS_DIGITAL_AGENT_RESPONDED\"] = 4] = \"REVIEW_ACTION_STATUS_DIGITAL_AGENT_RESPONDED\";\n return ReviewActionStatus;\n}(ReviewActionStatus || {});\nvar ReviewDeletedStatus = /*#__PURE__*/function (ReviewDeletedStatus) {\n ReviewDeletedStatus[ReviewDeletedStatus[\"REVIEW_DELETED_STATUS_EMPTY\"] = 0] = \"REVIEW_DELETED_STATUS_EMPTY\";\n ReviewDeletedStatus[ReviewDeletedStatus[\"REVIEW_DELETED_STATUS_USER_REMOVED\"] = 1] = \"REVIEW_DELETED_STATUS_USER_REMOVED\";\n ReviewDeletedStatus[ReviewDeletedStatus[\"REVIEW_DELETED_STATUS_USER_KEPT\"] = 2] = \"REVIEW_DELETED_STATUS_USER_KEPT\";\n ReviewDeletedStatus[ReviewDeletedStatus[\"REVIEW_DELETED_STATUS_UNSPECIFIED\"] = 3] = \"REVIEW_DELETED_STATUS_UNSPECIFIED\";\n return ReviewDeletedStatus;\n}(ReviewDeletedStatus || {});\nvar ThirdPartyPublishedStatus = /*#__PURE__*/function (ThirdPartyPublishedStatus) {\n ThirdPartyPublishedStatus[ThirdPartyPublishedStatus[\"THIRD_PARTY_PUBLISHED_STATUS_EMPTY\"] = 0] = \"THIRD_PARTY_PUBLISHED_STATUS_EMPTY\";\n ThirdPartyPublishedStatus[ThirdPartyPublishedStatus[\"THIRD_PARTY_PUBLISHED_STATUS_TRUE\"] = 1] = \"THIRD_PARTY_PUBLISHED_STATUS_TRUE\";\n ThirdPartyPublishedStatus[ThirdPartyPublishedStatus[\"THIRD_PARTY_PUBLISHED_STATUS_FALSE\"] = 2] = \"THIRD_PARTY_PUBLISHED_STATUS_FALSE\";\n return ThirdPartyPublishedStatus;\n}(ThirdPartyPublishedStatus || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar Channel = /*#__PURE__*/function (Channel) {\n Channel[Channel[\"CHANNEL_UNSPECIFIED\"] = 0] = \"CHANNEL_UNSPECIFIED\";\n Channel[Channel[\"SMS_FALLBACK_TO_EMAIL\"] = 1] = \"SMS_FALLBACK_TO_EMAIL\";\n Channel[Channel[\"SMS_ONLY\"] = 2] = \"SMS_ONLY\";\n Channel[Channel[\"EMAIL_FALLBACK_TO_SMS\"] = 3] = \"EMAIL_FALLBACK_TO_SMS\";\n Channel[Channel[\"EMAIL_ONLY\"] = 4] = \"EMAIL_ONLY\";\n Channel[Channel[\"BOTH_EMAIL_AND_SMS\"] = 5] = \"BOTH_EMAIL_AND_SMS\";\n return Channel;\n}(Channel || {});\nvar DaysOfWeek = /*#__PURE__*/function (DaysOfWeek) {\n DaysOfWeek[DaysOfWeek[\"DAY_OF_WEEK_UNSPECIFIED\"] = 0] = \"DAY_OF_WEEK_UNSPECIFIED\";\n DaysOfWeek[DaysOfWeek[\"MONDAY\"] = 1] = \"MONDAY\";\n DaysOfWeek[DaysOfWeek[\"TUESDAY\"] = 2] = \"TUESDAY\";\n DaysOfWeek[DaysOfWeek[\"WEDNESDAY\"] = 3] = \"WEDNESDAY\";\n DaysOfWeek[DaysOfWeek[\"THURSDAY\"] = 4] = \"THURSDAY\";\n DaysOfWeek[DaysOfWeek[\"FRIDAY\"] = 5] = \"FRIDAY\";\n DaysOfWeek[DaysOfWeek[\"SATURDAY\"] = 6] = \"SATURDAY\";\n DaysOfWeek[DaysOfWeek[\"SUNDAY\"] = 7] = \"SUNDAY\";\n return DaysOfWeek;\n}(DaysOfWeek || {});\nvar Interval = /*#__PURE__*/function (Interval) {\n Interval[Interval[\"INTERVAL_UNSPECIFIED\"] = 0] = \"INTERVAL_UNSPECIFIED\";\n Interval[Interval[\"INTERVAL_MINUTES\"] = 1] = \"INTERVAL_MINUTES\";\n Interval[Interval[\"INTERVAL_HOURS\"] = 2] = \"INTERVAL_HOURS\";\n Interval[Interval[\"INTERVAL_DAYS\"] = 3] = \"INTERVAL_DAYS\";\n Interval[Interval[\"INTERVAL_WEEKS\"] = 4] = \"INTERVAL_WEEKS\";\n Interval[Interval[\"INTERVAL_MONTHS\"] = 5] = \"INTERVAL_MONTHS\";\n return Interval;\n}(Interval || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar SMSState = /*#__PURE__*/function (SMSState) {\n SMSState[SMSState[\"SMS_STATE_UNDEFINED\"] = 0] = \"SMS_STATE_UNDEFINED\";\n SMSState[SMSState[\"SMS_STATE_DISABLED\"] = 1] = \"SMS_STATE_DISABLED\";\n SMSState[SMSState[\"SMS_STATE_ENABLED\"] = 2] = \"SMS_STATE_ENABLED\";\n return SMSState;\n}(SMSState || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar ReviewWidgetLayout = /*#__PURE__*/function (ReviewWidgetLayout) {\n ReviewWidgetLayout[ReviewWidgetLayout[\"LAYOUT_UNSPECIFIED\"] = 0] = \"LAYOUT_UNSPECIFIED\";\n ReviewWidgetLayout[ReviewWidgetLayout[\"LAYOUT_FEED\"] = 1] = \"LAYOUT_FEED\";\n ReviewWidgetLayout[ReviewWidgetLayout[\"LAYOUT_CAROUSEL\"] = 2] = \"LAYOUT_CAROUSEL\";\n ReviewWidgetLayout[ReviewWidgetLayout[\"LAYOUT_BADGE\"] = 3] = \"LAYOUT_BADGE\";\n return ReviewWidgetLayout;\n}(ReviewWidgetLayout || {});\nvar ListWidgetReviewsRequestMinimumRating = /*#__PURE__*/function (ListWidgetReviewsRequestMinimumRating) {\n ListWidgetReviewsRequestMinimumRating[ListWidgetReviewsRequestMinimumRating[\"MINIMUM_RATING_UNSPECIFIED\"] = 0] = \"MINIMUM_RATING_UNSPECIFIED\";\n ListWidgetReviewsRequestMinimumRating[ListWidgetReviewsRequestMinimumRating[\"MINIMUM_RATING_1\"] = 1] = \"MINIMUM_RATING_1\";\n ListWidgetReviewsRequestMinimumRating[ListWidgetReviewsRequestMinimumRating[\"MINIMUM_RATING_2\"] = 2] = \"MINIMUM_RATING_2\";\n ListWidgetReviewsRequestMinimumRating[ListWidgetReviewsRequestMinimumRating[\"MINIMUM_RATING_3\"] = 3] = \"MINIMUM_RATING_3\";\n ListWidgetReviewsRequestMinimumRating[ListWidgetReviewsRequestMinimumRating[\"MINIMUM_RATING_4\"] = 4] = \"MINIMUM_RATING_4\";\n ListWidgetReviewsRequestMinimumRating[ListWidgetReviewsRequestMinimumRating[\"MINIMUM_RATING_5\"] = 5] = \"MINIMUM_RATING_5\";\n ListWidgetReviewsRequestMinimumRating[ListWidgetReviewsRequestMinimumRating[\"MINIMUM_RATING_MANUALLY_PUBLISHED\"] = 6] = \"MINIMUM_RATING_MANUALLY_PUBLISHED\";\n return ListWidgetReviewsRequestMinimumRating;\n}(ListWidgetReviewsRequestMinimumRating || {});\nvar CustomizationsOverallRatingDecimalPlaces = /*#__PURE__*/function (CustomizationsOverallRatingDecimalPlaces) {\n CustomizationsOverallRatingDecimalPlaces[CustomizationsOverallRatingDecimalPlaces[\"OVERALL_RATING_DECIMAL_PLACES_NOT_SET\"] = 0] = \"OVERALL_RATING_DECIMAL_PLACES_NOT_SET\";\n CustomizationsOverallRatingDecimalPlaces[CustomizationsOverallRatingDecimalPlaces[\"OVERALL_RATING_DECIMAL_PLACES_1\"] = 1] = \"OVERALL_RATING_DECIMAL_PLACES_1\";\n CustomizationsOverallRatingDecimalPlaces[CustomizationsOverallRatingDecimalPlaces[\"OVERALL_RATING_DECIMAL_PLACES_2\"] = 2] = \"OVERALL_RATING_DECIMAL_PLACES_2\";\n return CustomizationsOverallRatingDecimalPlaces;\n}(CustomizationsOverallRatingDecimalPlaces || {});\nvar StylingTheme = /*#__PURE__*/function (StylingTheme) {\n StylingTheme[StylingTheme[\"THEME_UNSPECIFIED\"] = 0] = \"THEME_UNSPECIFIED\";\n StylingTheme[StylingTheme[\"THEME_LIGHT\"] = 1] = \"THEME_LIGHT\";\n StylingTheme[StylingTheme[\"THEME_DARK\"] = 2] = \"THEME_DARK\";\n return StylingTheme;\n}(StylingTheme || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar ScoreCategory = /*#__PURE__*/function (ScoreCategory) {\n ScoreCategory[ScoreCategory[\"UNSET\"] = 0] = \"UNSET\";\n ScoreCategory[ScoreCategory[\"DETRACTORS\"] = 1] = \"DETRACTORS\";\n ScoreCategory[ScoreCategory[\"PASSIVES\"] = 2] = \"PASSIVES\";\n ScoreCategory[ScoreCategory[\"PROMOTERS\"] = 3] = \"PROMOTERS\";\n return ScoreCategory;\n}(ScoreCategory || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar LimitType = /*#__PURE__*/function (LimitType) {\n LimitType[LimitType[\"LIMIT_TYPE_UNSPECIFIED\"] = 0] = \"LIMIT_TYPE_UNSPECIFIED\";\n LimitType[LimitType[\"LIMIT_TYPE_MONTHLY_SMS\"] = 1] = \"LIMIT_TYPE_MONTHLY_SMS\";\n return LimitType;\n}(LimitType || {});\nvar ListingMatchQuality = /*#__PURE__*/function (ListingMatchQuality) {\n ListingMatchQuality[ListingMatchQuality[\"LISTING_MATCH_QUALITY_GOOD\"] = 0] = \"LISTING_MATCH_QUALITY_GOOD\";\n ListingMatchQuality[ListingMatchQuality[\"LISTING_MATCH_QUALITY_POOR\"] = 1] = \"LISTING_MATCH_QUALITY_POOR\";\n ListingMatchQuality[ListingMatchQuality[\"LISTING_MATCH_QUALITY_NO_MATCH\"] = 2] = \"LISTING_MATCH_QUALITY_NO_MATCH\";\n return ListingMatchQuality;\n}(ListingMatchQuality || {});\nvar ReviewRequestTemplateType = /*#__PURE__*/function (ReviewRequestTemplateType) {\n ReviewRequestTemplateType[ReviewRequestTemplateType[\"REVIEW_REQUEST_TEMPLATE_TYPE_UNSPECIFIED\"] = 0] = \"REVIEW_REQUEST_TEMPLATE_TYPE_UNSPECIFIED\";\n ReviewRequestTemplateType[ReviewRequestTemplateType[\"REVIEW_REQUEST_TEMPLATE_TYPE_EMAIL\"] = 1] = \"REVIEW_REQUEST_TEMPLATE_TYPE_EMAIL\";\n ReviewRequestTemplateType[ReviewRequestTemplateType[\"REVIEW_REQUEST_TEMPLATE_TYPE_SMS\"] = 2] = \"REVIEW_REQUEST_TEMPLATE_TYPE_SMS\";\n return ReviewRequestTemplateType;\n}(ReviewRequestTemplateType || {});\nvar SortDirection = /*#__PURE__*/function (SortDirection) {\n SortDirection[SortDirection[\"SORT_DIRECTION_NOT_SET\"] = 0] = \"SORT_DIRECTION_NOT_SET\";\n SortDirection[SortDirection[\"SORT_DIRECTION_ASCENDING\"] = 1] = \"SORT_DIRECTION_ASCENDING\";\n SortDirection[SortDirection[\"SORT_DIRECTION_DESCENDING\"] = 2] = \"SORT_DIRECTION_DESCENDING\";\n return SortDirection;\n}(SortDirection || {});\nvar ListReviewRequestEmailTemplatesRequestSortField = /*#__PURE__*/function (ListReviewRequestEmailTemplatesRequestSortField) {\n ListReviewRequestEmailTemplatesRequestSortField[ListReviewRequestEmailTemplatesRequestSortField[\"SORT_FIELD_NOT_SET\"] = 0] = \"SORT_FIELD_NOT_SET\";\n ListReviewRequestEmailTemplatesRequestSortField[ListReviewRequestEmailTemplatesRequestSortField[\"SORT_FIELD_UPDATED\"] = 1] = \"SORT_FIELD_UPDATED\";\n ListReviewRequestEmailTemplatesRequestSortField[ListReviewRequestEmailTemplatesRequestSortField[\"SORT_FIELD_NAME\"] = 2] = \"SORT_FIELD_NAME\";\n return ListReviewRequestEmailTemplatesRequestSortField;\n}(ListReviewRequestEmailTemplatesRequestSortField || {});\nvar TemplateType = /*#__PURE__*/function (TemplateType) {\n TemplateType[TemplateType[\"TEMPLATE_TYPE_UNSPECIFIED\"] = 0] = \"TEMPLATE_TYPE_UNSPECIFIED\";\n TemplateType[TemplateType[\"TEMPLATE_TYPE_REVIEW_REQUEST\"] = 1] = \"TEMPLATE_TYPE_REVIEW_REQUEST\";\n TemplateType[TemplateType[\"TEMPLATE_TYPE_NPS_REQUEST\"] = 2] = \"TEMPLATE_TYPE_NPS_REQUEST\";\n TemplateType[TemplateType[\"TEMPLATE_TYPE_REVIEW_AND_NPS_REQUEST\"] = 3] = \"TEMPLATE_TYPE_REVIEW_AND_NPS_REQUEST\";\n return TemplateType;\n}(TemplateType || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums Index.\n// *********************************\n\nfunction enumStringToValue$a(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$9(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass Review {\n static fromProto(proto) {\n let m = new Review();\n m = Object.assign(m, proto);\n if (proto.reviewId) {\n m.reviewId = ReviewIdentifier.fromProto(proto.reviewId);\n }\n if (proto.sourceId) {\n m.sourceId = parseInt(proto.sourceId, 10);\n }\n if (proto.scaledStars) {\n m.scaledStars = parseInt(proto.scaledStars, 10);\n }\n if (proto.reviewer) {\n m.reviewer = Reviewer.fromProto(proto.reviewer);\n }\n if (proto.published) {\n m.published = new Date(proto.published);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n if (proto.actionStatus) {\n m.actionStatus = enumStringToValue$9(ReviewActionStatus, proto.actionStatus);\n }\n if (proto.comments) {\n m.comments = proto.comments.map(ReviewComment.fromProto);\n }\n if (proto.recommendation) {\n m.recommendation = enumStringToValue$9(Recommendation, proto.recommendation);\n }\n if (proto.lastFailedReviewCommentCreated) {\n m.lastFailedReviewCommentCreated = new Date(proto.lastFailedReviewCommentCreated);\n }\n if (proto.edited) {\n m.edited = new Date(proto.edited);\n }\n if (proto.deletedStatus) {\n m.deletedStatus = enumStringToValue$9(ReviewDeletedStatus, proto.deletedStatus);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n if (proto.thirdPartyPublishedStatus) {\n m.thirdPartyPublishedStatus = enumStringToValue$9(ThirdPartyPublishedStatus, proto.thirdPartyPublishedStatus);\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.reviewId !== 'undefined' && this.reviewId !== null) {\n toReturn['reviewId'] = 'toApiJson' in this.reviewId ? this.reviewId.toApiJson() : this.reviewId;\n }\n if (typeof this.listingId !== 'undefined') {\n toReturn['listingId'] = this.listingId;\n }\n if (typeof this.sourceId !== 'undefined') {\n toReturn['sourceId'] = this.sourceId;\n }\n if (typeof this.externalId !== 'undefined') {\n toReturn['externalId'] = this.externalId;\n }\n if (typeof this.content !== 'undefined') {\n toReturn['content'] = this.content;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.rating !== 'undefined') {\n toReturn['rating'] = this.rating;\n }\n if (typeof this.scaledStars !== 'undefined') {\n toReturn['scaledStars'] = this.scaledStars;\n }\n if (typeof this.originalStars !== 'undefined') {\n toReturn['originalStars'] = this.originalStars;\n }\n if (typeof this.url !== 'undefined') {\n toReturn['url'] = this.url;\n }\n if (typeof this.domain !== 'undefined') {\n toReturn['domain'] = this.domain;\n }\n if (typeof this.reviewer !== 'undefined' && this.reviewer !== null) {\n toReturn['reviewer'] = 'toApiJson' in this.reviewer ? this.reviewer.toApiJson() : this.reviewer;\n }\n if (typeof this.published !== 'undefined' && this.published !== null) {\n toReturn['published'] = 'toApiJson' in this.published ? this.published.toApiJson() : this.published;\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.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n if (typeof this.actionStatus !== 'undefined') {\n toReturn['actionStatus'] = this.actionStatus;\n }\n if (typeof this.isPublished !== 'undefined') {\n toReturn['isPublished'] = this.isPublished;\n }\n if (typeof this.isSharedByReviewer !== 'undefined') {\n toReturn['isSharedByReviewer'] = this.isSharedByReviewer;\n }\n if (typeof this.newComment !== 'undefined') {\n toReturn['newComment'] = this.newComment;\n }\n if (typeof this.comments !== 'undefined' && this.comments !== null) {\n toReturn['comments'] = 'toApiJson' in this.comments ? this.comments.toApiJson() : this.comments;\n }\n if (typeof this.hasAccuratePublished !== 'undefined') {\n toReturn['hasAccuratePublished'] = this.hasAccuratePublished;\n }\n if (typeof this.recommendation !== 'undefined') {\n toReturn['recommendation'] = this.recommendation;\n }\n if (typeof this.lastFailedReviewCommentCreated !== 'undefined' && this.lastFailedReviewCommentCreated !== null) {\n toReturn['lastFailedReviewCommentCreated'] = 'toApiJson' in this.lastFailedReviewCommentCreated ? this.lastFailedReviewCommentCreated.toApiJson() : this.lastFailedReviewCommentCreated;\n }\n if (typeof this.lastFailedReviewCommentReason !== 'undefined') {\n toReturn['lastFailedReviewCommentReason'] = this.lastFailedReviewCommentReason;\n }\n if (typeof this.lastFailedReviewCommentText !== 'undefined') {\n toReturn['lastFailedReviewCommentText'] = this.lastFailedReviewCommentText;\n }\n if (typeof this.edited !== 'undefined' && this.edited !== null) {\n toReturn['edited'] = 'toApiJson' in this.edited ? this.edited.toApiJson() : this.edited;\n }\n if (typeof this.deletedStatus !== 'undefined') {\n toReturn['deletedStatus'] = this.deletedStatus;\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.thirdPartyPublishedStatus !== 'undefined') {\n toReturn['thirdPartyPublishedStatus'] = this.thirdPartyPublishedStatus;\n }\n if (typeof this.sourceName !== 'undefined') {\n toReturn['sourceName'] = this.sourceName;\n }\n return toReturn;\n }\n}\nclass ReviewComment {\n static fromProto(proto) {\n let m = new ReviewComment();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n if (proto.published) {\n m.published = new Date(proto.published);\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.commentId !== 'undefined') {\n toReturn['commentId'] = this.commentId;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.text !== 'undefined') {\n toReturn['text'] = this.text;\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.externalId !== 'undefined') {\n toReturn['externalId'] = this.externalId;\n }\n if (typeof this.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n if (typeof this.published !== 'undefined' && this.published !== null) {\n toReturn['published'] = 'toApiJson' in this.published ? this.published.toApiJson() : this.published;\n }\n if (typeof this.postedByOwner !== 'undefined') {\n toReturn['postedByOwner'] = this.postedByOwner;\n }\n if (typeof this.postedByDigitAgent !== 'undefined') {\n toReturn['postedByDigitAgent'] = this.postedByDigitAgent;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n return toReturn;\n }\n}\nclass ReviewHistory {\n static fromProto(proto) {\n let m = new ReviewHistory();\n m = Object.assign(m, proto);\n if (proto.source) {\n m.source = parseInt(proto.source, 10);\n }\n if (proto.scaledStarRating) {\n m.scaledStarRating = parseInt(proto.scaledStarRating, 10);\n }\n if (proto.published) {\n m.published = new Date(proto.published);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.reviewLastEdited) {\n m.reviewLastEdited = new Date(proto.reviewLastEdited);\n }\n if (proto.isRecommendation) {\n m.isRecommendation = enumStringToValue$9(Recommendation, proto.isRecommendation);\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.reviewHistoryId !== 'undefined') {\n toReturn['reviewHistoryId'] = this.reviewHistoryId;\n }\n if (typeof this.listingId !== 'undefined') {\n toReturn['listingId'] = this.listingId;\n }\n if (typeof this.source !== 'undefined') {\n toReturn['source'] = this.source;\n }\n if (typeof this.externalId !== 'undefined') {\n toReturn['externalId'] = this.externalId;\n }\n if (typeof this.content !== 'undefined') {\n toReturn['content'] = this.content;\n }\n if (typeof this.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.scaledStarRating !== 'undefined') {\n toReturn['scaledStarRating'] = this.scaledStarRating;\n }\n if (typeof this.reviewerName !== 'undefined') {\n toReturn['reviewerName'] = this.reviewerName;\n }\n if (typeof this.published !== 'undefined' && this.published !== null) {\n toReturn['published'] = 'toApiJson' in this.published ? this.published.toApiJson() : this.published;\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.reviewLastEdited !== 'undefined' && this.reviewLastEdited !== null) {\n toReturn['reviewLastEdited'] = 'toApiJson' in this.reviewLastEdited ? this.reviewLastEdited.toApiJson() : this.reviewLastEdited;\n }\n if (typeof this.isRecommendation !== 'undefined') {\n toReturn['isRecommendation'] = this.isRecommendation;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n return toReturn;\n }\n}\nclass ReviewIdentifier {\n static fromProto(proto) {\n let m = new ReviewIdentifier();\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.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n return toReturn;\n }\n}\nclass Reviewer {\n static fromProto(proto) {\n let m = new Reviewer();\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.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.url !== 'undefined') {\n toReturn['url'] = this.url;\n }\n return toReturn;\n }\n}\nclass ThirdPartyReviewPublishSettings {\n static fromProto(proto) {\n let m = new ThirdPartyReviewPublishSettings();\n m = Object.assign(m, proto);\n if (proto.minimumPublishRating) {\n m.minimumPublishRating = parseInt(proto.minimumPublishRating, 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.widgetAllReviewsEnabled !== 'undefined') {\n toReturn['widgetAllReviewsEnabled'] = this.widgetAllReviewsEnabled;\n }\n if (typeof this.minimumPublishRating !== 'undefined') {\n toReturn['minimumPublishRating'] = this.minimumPublishRating;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$8(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass GetLeaveReviewURLsRequest {\n static fromProto(proto) {\n let m = new GetLeaveReviewURLsRequest();\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.sourceIds !== 'undefined') {\n toReturn['sourceIds'] = this.sourceIds;\n }\n return toReturn;\n }\n}\nclass GetLeaveReviewURLsResponse {\n static fromProto(proto) {\n let m = new GetLeaveReviewURLsResponse();\n m = Object.assign(m, proto);\n if (proto.urls) {\n m.urls = Object.keys(proto.urls).reduce((obj, k) => {\n obj[k] = proto.urls[k];\n return obj;\n }, {});\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.urls !== 'undefined' && this.urls !== null) {\n toReturn['urls'] = 'toApiJson' in this.urls ? this.urls.toApiJson() : this.urls;\n }\n return toReturn;\n }\n}\nclass PeriodDelay {\n static fromProto(proto) {\n let m = new PeriodDelay();\n m = Object.assign(m, proto);\n if (proto.delayPeriod) {\n m.delayPeriod = enumStringToValue$8(Interval, proto.delayPeriod);\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.delayPeriod !== 'undefined') {\n toReturn['delayPeriod'] = this.delayPeriod;\n }\n if (typeof this.numberOfPeriods !== 'undefined') {\n toReturn['numberOfPeriods'] = this.numberOfPeriods;\n }\n return toReturn;\n }\n}\nclass ReviewRequestTemplate {\n static fromProto(proto) {\n let m = new ReviewRequestTemplate();\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.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n if (typeof this.externalTemplateId !== 'undefined') {\n toReturn['externalTemplateId'] = this.externalTemplateId;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.isDefault !== 'undefined') {\n toReturn['isDefault'] = this.isDefault;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\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 return toReturn;\n }\n}\nclass ScheduleReviewRequestRequestScheduleConditions {\n static fromProto(proto) {\n let m = new ScheduleReviewRequestRequestScheduleConditions();\n m = Object.assign(m, proto);\n if (proto.daysOfWeek) {\n m.daysOfWeek = proto.daysOfWeek.map(v => enumStringToValue$8(DaysOfWeek, v));\n }\n if (proto.initialDelay) {\n m.initialDelay = PeriodDelay.fromProto(proto.initialDelay);\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.daysOfWeek !== 'undefined') {\n toReturn['daysOfWeek'] = this.daysOfWeek;\n }\n if (typeof this.initialDelay !== 'undefined' && this.initialDelay !== null) {\n toReturn['initialDelay'] = 'toApiJson' in this.initialDelay ? this.initialDelay.toApiJson() : this.initialDelay;\n }\n if (typeof this.timeRangeStartHour !== 'undefined') {\n toReturn['timeRangeStartHour'] = this.timeRangeStartHour;\n }\n if (typeof this.timeRangeStartMinute !== 'undefined') {\n toReturn['timeRangeStartMinute'] = this.timeRangeStartMinute;\n }\n if (typeof this.timeRangeEndHour !== 'undefined') {\n toReturn['timeRangeEndHour'] = this.timeRangeEndHour;\n }\n if (typeof this.timeRangeEndMinute !== 'undefined') {\n toReturn['timeRangeEndMinute'] = this.timeRangeEndMinute;\n }\n if (typeof this.daysUntilNextRequest !== 'undefined') {\n toReturn['daysUntilNextRequest'] = this.daysUntilNextRequest;\n }\n return toReturn;\n }\n}\nclass ScheduleReviewRequestRequest {\n static fromProto(proto) {\n let m = new ScheduleReviewRequestRequest();\n m = Object.assign(m, proto);\n if (proto.channel) {\n m.channel = enumStringToValue$8(Channel, proto.channel);\n }\n if (proto.scheduleConditions) {\n m.scheduleConditions = ScheduleReviewRequestRequestScheduleConditions.fromProto(proto.scheduleConditions);\n }\n if (proto.followUps) {\n m.followUps = proto.followUps.map(PeriodDelay.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.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.contactIds !== 'undefined') {\n toReturn['contactIds'] = this.contactIds;\n }\n if (typeof this.channel !== 'undefined') {\n toReturn['channel'] = this.channel;\n }\n if (typeof this.sendNow !== 'undefined') {\n toReturn['sendNow'] = this.sendNow;\n }\n if (typeof this.scheduleConditions !== 'undefined' && this.scheduleConditions !== null) {\n toReturn['scheduleConditions'] = 'toApiJson' in this.scheduleConditions ? this.scheduleConditions.toApiJson() : this.scheduleConditions;\n }\n if (typeof this.followUps !== 'undefined' && this.followUps !== null) {\n toReturn['followUps'] = 'toApiJson' in this.followUps ? this.followUps.toApiJson() : this.followUps;\n }\n return toReturn;\n }\n}\nclass GetLeaveReviewURLsResponseUrlsEntry {\n static fromProto(proto) {\n let m = new GetLeaveReviewURLsResponseUrlsEntry();\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.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.value !== 'undefined') {\n toReturn['value'] = this.value;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$7(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass ConciergeReviewResponse {\n static fromProto(proto) {\n let m = new ConciergeReviewResponse();\n m = Object.assign(m, proto);\n if (proto.feedbackDate) {\n m.feedbackDate = new Date(proto.feedbackDate);\n }\n if (proto.approvalRequestedDate) {\n m.approvalRequestedDate = new Date(proto.approvalRequestedDate);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\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.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.taskId !== 'undefined') {\n toReturn['taskId'] = this.taskId;\n }\n if (typeof this.response !== 'undefined') {\n toReturn['response'] = this.response;\n }\n if (typeof this.agentName !== 'undefined') {\n toReturn['agentName'] = this.agentName;\n }\n if (typeof this.body !== 'undefined') {\n toReturn['body'] = this.body;\n }\n if (typeof this.replyToEmail !== 'undefined') {\n toReturn['replyToEmail'] = this.replyToEmail;\n }\n if (typeof this.feedback !== 'undefined') {\n toReturn['feedback'] = this.feedback;\n }\n if (typeof this.feedbackProvider !== 'undefined') {\n toReturn['feedbackProvider'] = this.feedbackProvider;\n }\n if (typeof this.commentId !== 'undefined') {\n toReturn['commentId'] = this.commentId;\n }\n if (typeof this.feedbackDate !== 'undefined' && this.feedbackDate !== null) {\n toReturn['feedbackDate'] = 'toApiJson' in this.feedbackDate ? this.feedbackDate.toApiJson() : this.feedbackDate;\n }\n if (typeof this.approvalRequestedDate !== 'undefined' && this.approvalRequestedDate !== null) {\n toReturn['approvalRequestedDate'] = 'toApiJson' in this.approvalRequestedDate ? this.approvalRequestedDate.toApiJson() : this.approvalRequestedDate;\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.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n if (typeof this.partnerName !== 'undefined') {\n toReturn['partnerName'] = this.partnerName;\n }\n if (typeof this.faviconUrl !== 'undefined') {\n toReturn['faviconUrl'] = this.faviconUrl;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$6(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass GetSMSEnabledRequest {\n static fromProto(proto) {\n let m = new GetSMSEnabledRequest();\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 GetSMSEnabledResponse {\n static fromProto(proto) {\n let m = new GetSMSEnabledResponse();\n m = Object.assign(m, proto);\n if (proto.smsState) {\n m.smsState = enumStringToValue$6(SMSState, proto.smsState);\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.smsState !== 'undefined') {\n toReturn['smsState'] = this.smsState;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$5(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass CreateReviewRequest {\n static fromProto(proto) {\n let m = new CreateReviewRequest();\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.starRating !== 'undefined') {\n toReturn['starRating'] = this.starRating;\n }\n if (typeof this.reviewerName !== 'undefined') {\n toReturn['reviewerName'] = this.reviewerName;\n }\n if (typeof this.reviewerEmail !== 'undefined') {\n toReturn['reviewerEmail'] = this.reviewerEmail;\n }\n if (typeof this.reviewTitle !== 'undefined') {\n toReturn['reviewTitle'] = this.reviewTitle;\n }\n if (typeof this.reviewContent !== 'undefined') {\n toReturn['reviewContent'] = this.reviewContent;\n }\n return toReturn;\n }\n}\nclass CreateReviewResponse {\n static fromProto(proto) {\n let m = new CreateReviewResponse();\n m = Object.assign(m, proto);\n if (proto.review) {\n m.review = Review.fromProto(proto.review);\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.review !== 'undefined' && this.review !== null) {\n toReturn['review'] = 'toApiJson' in this.review ? this.review.toApiJson() : this.review;\n }\n return toReturn;\n }\n}\nclass CreateReviewWidgetRequest {\n static fromProto(proto) {\n let m = new CreateReviewWidgetRequest();\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 CreateReviewWidgetResponse {\n static fromProto(proto) {\n let m = new CreateReviewWidgetResponse();\n m = Object.assign(m, proto);\n if (proto.reviewWidget) {\n m.reviewWidget = ReviewWidget.fromProto(proto.reviewWidget);\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.reviewWidget !== 'undefined' && this.reviewWidget !== null) {\n toReturn['reviewWidget'] = 'toApiJson' in this.reviewWidget ? this.reviewWidget.toApiJson() : this.reviewWidget;\n }\n return toReturn;\n }\n}\nclass Customizations {\n static fromProto(proto) {\n let m = new Customizations();\n m = Object.assign(m, proto);\n if (proto.overallRatingDecimalPlaces) {\n m.overallRatingDecimalPlaces = enumStringToValue$5(CustomizationsOverallRatingDecimalPlaces, proto.overallRatingDecimalPlaces);\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.overallRatingDecimalPlaces !== 'undefined') {\n toReturn['overallRatingDecimalPlaces'] = this.overallRatingDecimalPlaces;\n }\n if (typeof this.headerText !== 'undefined') {\n toReturn['headerText'] = this.headerText;\n }\n return toReturn;\n }\n}\nclass GetReviewWidgetByIDRequest {\n static fromProto(proto) {\n let m = new GetReviewWidgetByIDRequest();\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.widgetId !== 'undefined') {\n toReturn['widgetId'] = this.widgetId;\n }\n return toReturn;\n }\n}\nclass GetReviewWidgetByIDResponse {\n static fromProto(proto) {\n let m = new GetReviewWidgetByIDResponse();\n m = Object.assign(m, proto);\n if (proto.reviewWidget) {\n m.reviewWidget = ReviewWidget.fromProto(proto.reviewWidget);\n }\n if (proto.reviewStats) {\n m.reviewStats = ReviewStats.fromProto(proto.reviewStats);\n }\n if (proto.leaveReviewUrls) {\n m.leaveReviewUrls = Object.keys(proto.leaveReviewUrls).reduce((obj, k) => {\n obj[k] = proto.leaveReviewUrls[k];\n return obj;\n }, {});\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.reviewWidget !== 'undefined' && this.reviewWidget !== null) {\n toReturn['reviewWidget'] = 'toApiJson' in this.reviewWidget ? this.reviewWidget.toApiJson() : this.reviewWidget;\n }\n if (typeof this.reviewStats !== 'undefined' && this.reviewStats !== null) {\n toReturn['reviewStats'] = 'toApiJson' in this.reviewStats ? this.reviewStats.toApiJson() : this.reviewStats;\n }\n if (typeof this.leaveReviewUrls !== 'undefined' && this.leaveReviewUrls !== null) {\n toReturn['leaveReviewUrls'] = 'toApiJson' in this.leaveReviewUrls ? this.leaveReviewUrls.toApiJson() : this.leaveReviewUrls;\n }\n return toReturn;\n }\n}\nclass GetReviewWidgetRequest {\n static fromProto(proto) {\n let m = new GetReviewWidgetRequest();\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 GetReviewWidgetResponse {\n static fromProto(proto) {\n let m = new GetReviewWidgetResponse();\n m = Object.assign(m, proto);\n if (proto.reviewWidget) {\n m.reviewWidget = ReviewWidget.fromProto(proto.reviewWidget);\n }\n if (proto.reviewStats) {\n m.reviewStats = ReviewStats.fromProto(proto.reviewStats);\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.reviewWidget !== 'undefined' && this.reviewWidget !== null) {\n toReturn['reviewWidget'] = 'toApiJson' in this.reviewWidget ? this.reviewWidget.toApiJson() : this.reviewWidget;\n }\n if (typeof this.reviewStats !== 'undefined' && this.reviewStats !== null) {\n toReturn['reviewStats'] = 'toApiJson' in this.reviewStats ? this.reviewStats.toApiJson() : this.reviewStats;\n }\n return toReturn;\n }\n}\nclass GetReviewWidgetByIDResponseLeaveReviewUrlsEntry {\n static fromProto(proto) {\n let m = new GetReviewWidgetByIDResponseLeaveReviewUrlsEntry();\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.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.value !== 'undefined') {\n toReturn['value'] = this.value;\n }\n return toReturn;\n }\n}\nclass ListWidgetReviewsRequest {\n static fromProto(proto) {\n let m = new ListWidgetReviewsRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n if (proto.minimumRating) {\n m.minimumRating = enumStringToValue$5(ListWidgetReviewsRequestMinimumRating, proto.minimumRating);\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.sourceIds !== 'undefined') {\n toReturn['sourceIds'] = this.sourceIds;\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.minimumRating !== 'undefined') {\n toReturn['minimumRating'] = this.minimumRating;\n }\n return toReturn;\n }\n}\nclass ListWidgetReviewsResponse {\n static fromProto(proto) {\n let m = new ListWidgetReviewsResponse();\n m = Object.assign(m, proto);\n if (proto.reviews) {\n m.reviews = proto.reviews.map(Review.fromProto);\n }\n if (proto.totalHits) {\n m.totalHits = parseInt(proto.totalHits, 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.reviews !== 'undefined' && this.reviews !== null) {\n toReturn['reviews'] = 'toApiJson' in this.reviews ? this.reviews.toApiJson() : this.reviews;\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.totalHits !== 'undefined') {\n toReturn['totalHits'] = this.totalHits;\n }\n return toReturn;\n }\n}\nclass ReviewStats {\n static fromProto(proto) {\n let m = new ReviewStats();\n m = Object.assign(m, proto);\n if (proto.totalCount) {\n m.totalCount = parseInt(proto.totalCount, 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.averageRating !== 'undefined') {\n toReturn['averageRating'] = this.averageRating;\n }\n if (typeof this.totalCount !== 'undefined') {\n toReturn['totalCount'] = this.totalCount;\n }\n return toReturn;\n }\n}\nclass ReviewWidget {\n static fromProto(proto) {\n let m = new ReviewWidget();\n m = Object.assign(m, proto);\n if (proto.layout) {\n m.layout = enumStringToValue$5(ReviewWidgetLayout, proto.layout);\n }\n if (proto.customizations) {\n m.customizations = Customizations.fromProto(proto.customizations);\n }\n if (proto.toggles) {\n m.toggles = Toggles.fromProto(proto.toggles);\n }\n if (proto.styling) {\n m.styling = Styling.fromProto(proto.styling);\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.widgetId !== 'undefined') {\n toReturn['widgetId'] = this.widgetId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.leaveReviewDestination !== 'undefined') {\n toReturn['leaveReviewDestination'] = this.leaveReviewDestination;\n }\n if (typeof this.layout !== 'undefined') {\n toReturn['layout'] = this.layout;\n }\n if (typeof this.reviewDisplaySourceIds !== 'undefined') {\n toReturn['reviewDisplaySourceIds'] = this.reviewDisplaySourceIds;\n }\n if (typeof this.customizations !== 'undefined' && this.customizations !== null) {\n toReturn['customizations'] = 'toApiJson' in this.customizations ? this.customizations.toApiJson() : this.customizations;\n }\n if (typeof this.toggles !== 'undefined' && this.toggles !== null) {\n toReturn['toggles'] = 'toApiJson' in this.toggles ? this.toggles.toApiJson() : this.toggles;\n }\n if (typeof this.styling !== 'undefined' && this.styling !== null) {\n toReturn['styling'] = 'toApiJson' in this.styling ? this.styling.toApiJson() : this.styling;\n }\n return toReturn;\n }\n}\nclass Styling {\n static fromProto(proto) {\n let m = new Styling();\n m = Object.assign(m, proto);\n if (proto.theme) {\n m.theme = enumStringToValue$5(StylingTheme, proto.theme);\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.theme !== 'undefined') {\n toReturn['theme'] = this.theme;\n }\n if (typeof this.accentColour !== 'undefined') {\n toReturn['accentColour'] = this.accentColour;\n }\n return toReturn;\n }\n}\nclass Toggles {\n static fromProto(proto) {\n let m = new Toggles();\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.showOverallRatingTitle !== 'undefined') {\n toReturn['showOverallRatingTitle'] = this.showOverallRatingTitle;\n }\n if (typeof this.showOverallRatingCard !== 'undefined') {\n toReturn['showOverallRatingCard'] = this.showOverallRatingCard;\n }\n if (typeof this.showReviewCount !== 'undefined') {\n toReturn['showReviewCount'] = this.showReviewCount;\n }\n if (typeof this.showLeaveAReviewButton !== 'undefined') {\n toReturn['showLeaveAReviewButton'] = this.showLeaveAReviewButton;\n }\n if (typeof this.showHeader !== 'undefined') {\n toReturn['showHeader'] = this.showHeader;\n }\n if (typeof this.showStarRatingSummary !== 'undefined') {\n toReturn['showStarRatingSummary'] = this.showStarRatingSummary;\n }\n if (typeof this.showReviewSource !== 'undefined') {\n toReturn['showReviewSource'] = this.showReviewSource;\n }\n if (typeof this.showReviewStarRating !== 'undefined') {\n toReturn['showReviewStarRating'] = this.showReviewStarRating;\n }\n if (typeof this.showReviewPublishedDate !== 'undefined') {\n toReturn['showReviewPublishedDate'] = this.showReviewPublishedDate;\n }\n return toReturn;\n }\n}\nclass UpdateReviewWidgetRequest {\n static fromProto(proto) {\n let m = new UpdateReviewWidgetRequest();\n m = Object.assign(m, proto);\n if (proto.reviewWidget) {\n m.reviewWidget = ReviewWidget.fromProto(proto.reviewWidget);\n }\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.reviewWidget !== 'undefined' && this.reviewWidget !== null) {\n toReturn['reviewWidget'] = 'toApiJson' in this.reviewWidget ? this.reviewWidget.toApiJson() : this.reviewWidget;\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}\nfunction enumStringToValue$4(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass Access {\n static fromProto(proto) {\n let m = new Access();\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.scope !== 'undefined') {\n toReturn['scope'] = this.scope;\n }\n if (typeof this.public !== 'undefined') {\n toReturn['public'] = this.public;\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 MethodMetadata {\n static fromProto(proto) {\n let m = new MethodMetadata();\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.isPublic !== 'undefined') {\n toReturn['isPublic'] = this.isPublic;\n }\n if (typeof this.scopes !== 'undefined') {\n toReturn['scopes'] = this.scopes;\n }\n return toReturn;\n }\n}\nclass SDKMetadata {\n static fromProto(proto) {\n let m = new SDKMetadata();\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.sdkName !== 'undefined') {\n toReturn['sdkName'] = this.sdkName;\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 CheckReviewWidgetUsageRequest {\n static fromProto(proto) {\n let m = new CheckReviewWidgetUsageRequest();\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.widgetId !== 'undefined') {\n toReturn['widgetId'] = this.widgetId;\n }\n return toReturn;\n }\n}\nclass CheckReviewWidgetUsageResponse {\n static fromProto(proto) {\n let m = new CheckReviewWidgetUsageResponse();\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.isUsed !== 'undefined') {\n toReturn['isUsed'] = this.isUsed;\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 ListNetPromoterScoresRequestFilters {\n static fromProto(proto) {\n let m = new ListNetPromoterScoresRequestFilters();\n m = Object.assign(m, proto);\n if (proto.fromDate) {\n m.fromDate = new Date(proto.fromDate);\n }\n if (proto.toDate) {\n m.toDate = new Date(proto.toDate);\n }\n if (proto.scoreCategory) {\n m.scoreCategory = proto.scoreCategory.map(v => enumStringToValue$1(ScoreCategory, 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.fromDate !== 'undefined' && this.fromDate !== null) {\n toReturn['fromDate'] = 'toApiJson' in this.fromDate ? this.fromDate.toApiJson() : this.fromDate;\n }\n if (typeof this.toDate !== 'undefined' && this.toDate !== null) {\n toReturn['toDate'] = 'toApiJson' in this.toDate ? this.toDate.toApiJson() : this.toDate;\n }\n if (typeof this.scoreCategory !== 'undefined') {\n toReturn['scoreCategory'] = this.scoreCategory;\n }\n return toReturn;\n }\n}\nclass GetMultiNPSRequest {\n static fromProto(proto) {\n let m = new GetMultiNPSRequest();\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.netPromoterScoreIds !== 'undefined') {\n toReturn['netPromoterScoreIds'] = this.netPromoterScoreIds;\n }\n return toReturn;\n }\n}\nclass GetMultiNPSResponse {\n static fromProto(proto) {\n let m = new GetMultiNPSResponse();\n m = Object.assign(m, proto);\n if (proto.netPromoterScore) {\n m.netPromoterScore = proto.netPromoterScore.map(NetPromoterScore.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.netPromoterScore !== 'undefined' && this.netPromoterScore !== null) {\n toReturn['netPromoterScore'] = 'toApiJson' in this.netPromoterScore ? this.netPromoterScore.toApiJson() : this.netPromoterScore;\n }\n return toReturn;\n }\n}\nclass ImportNPSRequest {\n static fromProto(proto) {\n let m = new ImportNPSRequest();\n m = Object.assign(m, proto);\n if (proto.score) {\n m.score = parseInt(proto.score, 10);\n }\n if (proto.scoreLeft) {\n m.scoreLeft = new Date(proto.scoreLeft);\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.crmContactId !== 'undefined') {\n toReturn['crmContactId'] = this.crmContactId;\n }\n if (typeof this.score !== 'undefined') {\n toReturn['score'] = this.score;\n }\n if (typeof this.comment !== 'undefined') {\n toReturn['comment'] = this.comment;\n }\n if (typeof this.scoreLeft !== 'undefined' && this.scoreLeft !== null) {\n toReturn['scoreLeft'] = 'toApiJson' in this.scoreLeft ? this.scoreLeft.toApiJson() : this.scoreLeft;\n }\n if (typeof this.attributes !== 'undefined') {\n toReturn['attributes'] = this.attributes;\n }\n return toReturn;\n }\n}\nclass ImportNPSResponse {\n static fromProto(proto) {\n let m = new ImportNPSResponse();\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.netPromoterScoreId !== 'undefined') {\n toReturn['netPromoterScoreId'] = this.netPromoterScoreId;\n }\n return toReturn;\n }\n}\nclass LeaveNetPromoterScoreRequest {\n static fromProto(proto) {\n let m = new LeaveNetPromoterScoreRequest();\n m = Object.assign(m, proto);\n if (proto.score) {\n m.score = parseInt(proto.score, 10);\n }\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.netPromoterScoreId !== 'undefined') {\n toReturn['netPromoterScoreId'] = this.netPromoterScoreId;\n }\n if (typeof this.score !== 'undefined') {\n toReturn['score'] = this.score;\n }\n if (typeof this.comment !== 'undefined') {\n toReturn['comment'] = this.comment;\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 ListNetPromoterScoresRequest {\n static fromProto(proto) {\n let m = new ListNetPromoterScoresRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {\n m.filters = ListNetPromoterScoresRequestFilters.fromProto(proto.filters);\n }\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.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\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.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 ListNetPromoterScoresResponse {\n static fromProto(proto) {\n let m = new ListNetPromoterScoresResponse();\n m = Object.assign(m, proto);\n if (proto.netPromoterScore) {\n m.netPromoterScore = proto.netPromoterScore.map(NetPromoterScore.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.netPromoterScore !== 'undefined' && this.netPromoterScore !== null) {\n toReturn['netPromoterScore'] = 'toApiJson' in this.netPromoterScore ? this.netPromoterScore.toApiJson() : this.netPromoterScore;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\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 NetPromoterScore {\n static fromProto(proto) {\n let m = new NetPromoterScore();\n m = Object.assign(m, proto);\n if (proto.score) {\n m.score = parseInt(proto.score, 10);\n }\n if (proto.attributes) {\n m.attributes = proto.attributes.map(NetPromoterScoreAttribute.fromProto);\n }\n if (proto.scoreLeftTime) {\n m.scoreLeftTime = new Date(proto.scoreLeftTime);\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.netPromoterScoreId !== 'undefined') {\n toReturn['netPromoterScoreId'] = this.netPromoterScoreId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.score !== 'undefined') {\n toReturn['score'] = this.score;\n }\n if (typeof this.comment !== 'undefined') {\n toReturn['comment'] = this.comment;\n }\n if (typeof this.attributes !== 'undefined' && this.attributes !== null) {\n toReturn['attributes'] = 'toApiJson' in this.attributes ? this.attributes.toApiJson() : this.attributes;\n }\n if (typeof this.scoreLeftTime !== 'undefined' && this.scoreLeftTime !== null) {\n toReturn['scoreLeftTime'] = 'toApiJson' in this.scoreLeftTime ? this.scoreLeftTime.toApiJson() : this.scoreLeftTime;\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 return toReturn;\n }\n}\nclass NetPromoterScoreAttribute {\n static fromProto(proto) {\n let m = new NetPromoterScoreAttribute();\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.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.value !== 'undefined') {\n toReturn['value'] = this.value;\n }\n return toReturn;\n }\n}\nclass ResendReviewRequest {\n static fromProto(proto) {\n let m = new ResendReviewRequest();\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.netPromoterScoreId !== 'undefined') {\n toReturn['netPromoterScoreId'] = this.netPromoterScoreId;\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 ApproveReviewResponseRequest {\n static fromProto(proto) {\n let m = new ApproveReviewResponseRequest();\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.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass SourceAttributeScope {\n static fromProto(proto) {\n let m = new SourceAttributeScope();\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.whitelist !== 'undefined') {\n toReturn['whitelist'] = this.whitelist;\n }\n if (typeof this.blacklist !== 'undefined') {\n toReturn['blacklist'] = this.blacklist;\n }\n if (typeof this.isWhitelistedByDefault !== 'undefined') {\n toReturn['isWhitelistedByDefault'] = this.isWhitelistedByDefault;\n }\n return toReturn;\n }\n}\nclass BingMapsLocation {\n static fromProto(proto) {\n let m = new BingMapsLocation();\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.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.url !== 'undefined') {\n toReturn['url'] = this.url;\n }\n return toReturn;\n }\n}\nclass CanRespondToReviewRequest {\n static fromProto(proto) {\n let m = new CanRespondToReviewRequest();\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.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n return toReturn;\n }\n}\nclass CanRespondToReviewResponse {\n static fromProto(proto) {\n let m = new CanRespondToReviewResponse();\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.canRespond !== 'undefined') {\n toReturn['canRespond'] = this.canRespond;\n }\n if (typeof this.unsupportedReason !== 'undefined') {\n toReturn['unsupportedReason'] = this.unsupportedReason;\n }\n return toReturn;\n }\n}\nclass CreateBrandReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new CreateBrandReviewResponseTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = ReviewResponseTemplate.fromProto(proto.template);\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.brandId !== 'undefined') {\n toReturn['brandId'] = this.brandId;\n }\n if (typeof this.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n return toReturn;\n }\n}\nclass CreateBusinessReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new CreateBusinessReviewResponseTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = ReviewResponseTemplate.fromProto(proto.template);\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.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n return toReturn;\n }\n}\nclass CreateDefaultReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new CreateDefaultReviewResponseTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = ReviewResponseTemplate.fromProto(proto.template);\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.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n return toReturn;\n }\n}\nclass CreateDigitalAgentReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new CreateDigitalAgentReviewResponseTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = ReviewResponseTemplate.fromProto(proto.template);\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.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n return toReturn;\n }\n}\nclass CreatePartnerMarketReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new CreatePartnerMarketReviewResponseTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = ReviewResponseTemplate.fromProto(proto.template);\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.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n return toReturn;\n }\n}\nclass CreateReviewCommentRequest {\n static fromProto(proto) {\n let m = new CreateReviewCommentRequest();\n m = Object.assign(m, proto);\n if (proto.reviewId) {\n m.reviewId = ReviewIdentifier.fromProto(proto.reviewId);\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.reviewId !== 'undefined' && this.reviewId !== null) {\n toReturn['reviewId'] = 'toApiJson' in this.reviewId ? this.reviewId.toApiJson() : this.reviewId;\n }\n if (typeof this.commentText !== 'undefined') {\n toReturn['commentText'] = this.commentText;\n }\n if (typeof this.commenterEmail !== 'undefined') {\n toReturn['commenterEmail'] = this.commenterEmail;\n }\n if (typeof this.commenterName !== 'undefined') {\n toReturn['commenterName'] = this.commenterName;\n }\n if (typeof this.postedByOwner !== 'undefined') {\n toReturn['postedByOwner'] = this.postedByOwner;\n }\n if (typeof this.shouldPublish !== 'undefined') {\n toReturn['shouldPublish'] = this.shouldPublish;\n }\n if (typeof this.postedByDigitalAgent !== 'undefined') {\n toReturn['postedByDigitalAgent'] = this.postedByDigitalAgent;\n }\n return toReturn;\n }\n}\nclass CreateReviewCommentResponse {\n static fromProto(proto) {\n let m = new CreateReviewCommentResponse();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.published) {\n m.published = new Date(proto.published);\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.commentId !== 'undefined') {\n toReturn['commentId'] = this.commentId;\n }\n if (typeof this.commentText !== 'undefined') {\n toReturn['commentText'] = this.commentText;\n }\n if (typeof this.commenterName !== 'undefined') {\n toReturn['commenterName'] = this.commenterName;\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.published !== 'undefined' && this.published !== null) {\n toReturn['published'] = 'toApiJson' in this.published ? this.published.toApiJson() : this.published;\n }\n if (typeof this.postedByOwner !== 'undefined') {\n toReturn['postedByOwner'] = this.postedByOwner;\n }\n return toReturn;\n }\n}\nclass CreateReviewRequestEmailTemplateRequest {\n static fromProto(proto) {\n let m = new CreateReviewRequestEmailTemplateRequest();\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.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.externalId !== 'undefined') {\n toReturn['externalId'] = this.externalId;\n }\n return toReturn;\n }\n}\nclass CreateReviewRequestEmailTemplateResponse {\n static fromProto(proto) {\n let m = new CreateReviewRequestEmailTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = ReviewRequestTemplate.fromProto(proto.template);\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.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n return toReturn;\n }\n}\nclass CreateReviewRequestSMSTemplateRequest {\n static fromProto(proto) {\n let m = new CreateReviewRequestSMSTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.templateType) {\n m.templateType = enumStringToValue(TemplateType, proto.templateType);\n }\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.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.content !== 'undefined') {\n toReturn['content'] = this.content;\n }\n if (typeof this.templateType !== 'undefined') {\n toReturn['templateType'] = this.templateType;\n }\n if (typeof this.npsRedirectReviewSource !== 'undefined') {\n toReturn['npsRedirectReviewSource'] = this.npsRedirectReviewSource;\n }\n if (typeof this.reviewSourceId !== 'undefined') {\n toReturn['reviewSourceId'] = this.reviewSourceId;\n }\n if (typeof this.businessLogoUrl !== 'undefined') {\n toReturn['businessLogoUrl'] = this.businessLogoUrl;\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.includeBusinessLogo !== 'undefined') {\n toReturn['includeBusinessLogo'] = this.includeBusinessLogo;\n }\n return toReturn;\n }\n}\nclass CreateReviewRequestSMSTemplateResponse {\n static fromProto(proto) {\n let m = new CreateReviewRequestSMSTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.templateType) {\n m.templateType = enumStringToValue(TemplateType, proto.templateType);\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.externalTemplateId !== 'undefined') {\n toReturn['externalTemplateId'] = this.externalTemplateId;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.templateType !== 'undefined') {\n toReturn['templateType'] = this.templateType;\n }\n return toReturn;\n }\n}\nclass CreateReviewResponseTemplateResponse {\n static fromProto(proto) {\n let m = new CreateReviewResponseTemplateResponse();\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.responseTemplateId !== 'undefined') {\n toReturn['responseTemplateId'] = this.responseTemplateId;\n }\n return toReturn;\n }\n}\nclass DeleteBrandReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new DeleteBrandReviewResponseTemplateRequest();\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.brandId !== 'undefined') {\n toReturn['brandId'] = this.brandId;\n }\n if (typeof this.responseTemplateId !== 'undefined') {\n toReturn['responseTemplateId'] = this.responseTemplateId;\n }\n if (typeof this.owner !== 'undefined') {\n toReturn['owner'] = this.owner;\n }\n return toReturn;\n }\n}\nclass DeleteBusinessReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new DeleteBusinessReviewResponseTemplateRequest();\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.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.responseTemplateId !== 'undefined') {\n toReturn['responseTemplateId'] = this.responseTemplateId;\n }\n if (typeof this.owner !== 'undefined') {\n toReturn['owner'] = this.owner;\n }\n return toReturn;\n }\n}\nclass DeleteDefaultReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new DeleteDefaultReviewResponseTemplateRequest();\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.responseTemplateId !== 'undefined') {\n toReturn['responseTemplateId'] = this.responseTemplateId;\n }\n return toReturn;\n }\n}\nclass DeleteDigitalAgentReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new DeleteDigitalAgentReviewResponseTemplateRequest();\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.responseTemplateId !== 'undefined') {\n toReturn['responseTemplateId'] = this.responseTemplateId;\n }\n return toReturn;\n }\n}\nclass DeletePartnerMarketReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new DeletePartnerMarketReviewResponseTemplateRequest();\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.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.responseTemplateId !== 'undefined') {\n toReturn['responseTemplateId'] = this.responseTemplateId;\n }\n if (typeof this.owner !== 'undefined') {\n toReturn['owner'] = this.owner;\n }\n return toReturn;\n }\n}\nclass DeleteReviewRequestTemplateRequest {\n static fromProto(proto) {\n let m = new DeleteReviewRequestTemplateRequest();\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.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n return toReturn;\n }\n}\nclass EmailTemplateData {\n static fromProto(proto) {\n let m = new EmailTemplateData();\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.emailTemplateSubject !== 'undefined') {\n toReturn['emailTemplateSubject'] = this.emailTemplateSubject;\n }\n if (typeof this.emailTemplateHtml !== 'undefined') {\n toReturn['emailTemplateHtml'] = this.emailTemplateHtml;\n }\n return toReturn;\n }\n}\nclass ForceRefreshListingRequest {\n static fromProto(proto) {\n let m = new ForceRefreshListingRequest();\n m = Object.assign(m, proto);\n if (proto.sourceId) {\n m.sourceId = parseInt(proto.sourceId, 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.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.listingId !== 'undefined') {\n toReturn['listingId'] = this.listingId;\n }\n if (typeof this.listingUrl !== 'undefined') {\n toReturn['listingUrl'] = this.listingUrl;\n }\n if (typeof this.sourceId !== 'undefined') {\n toReturn['sourceId'] = this.sourceId;\n }\n return toReturn;\n }\n}\nclass GetBusinessSourcesRequest {\n static fromProto(proto) {\n let m = new GetBusinessSourcesRequest();\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.accountGroupIds !== 'undefined') {\n toReturn['accountGroupIds'] = this.accountGroupIds;\n }\n return toReturn;\n }\n}\nclass GetBusinessSourcesResponse {\n static fromProto(proto) {\n let m = new GetBusinessSourcesResponse();\n m = Object.assign(m, proto);\n if (proto.sourceDetails) {\n m.sourceDetails = proto.sourceDetails.map(SourceDetails.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.sourceDetails !== 'undefined' && this.sourceDetails !== null) {\n toReturn['sourceDetails'] = 'toApiJson' in this.sourceDetails ? this.sourceDetails.toApiJson() : this.sourceDetails;\n }\n return toReturn;\n }\n}\nclass GetLimitRequest {\n static fromProto(proto) {\n let m = new GetLimitRequest();\n m = Object.assign(m, proto);\n if (proto.limitType) {\n m.limitType = enumStringToValue(LimitType, proto.limitType);\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.limitType !== 'undefined') {\n toReturn['limitType'] = this.limitType;\n }\n return toReturn;\n }\n}\nclass GetLimitResponse {\n static fromProto(proto) {\n let m = new GetLimitResponse();\n m = Object.assign(m, proto);\n if (proto.limit) {\n m.limit = parseInt(proto.limit, 10);\n }\n if (proto.usage) {\n m.usage = parseInt(proto.usage, 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.limit !== 'undefined') {\n toReturn['limit'] = this.limit;\n }\n if (typeof this.usage !== 'undefined') {\n toReturn['usage'] = this.usage;\n }\n return toReturn;\n }\n}\nclass GetListingsRequest {\n static fromProto(proto) {\n let m = new GetListingsRequest();\n m = Object.assign(m, proto);\n if (proto.listingIds) {\n m.listingIds = proto.listingIds.map(ListingIdentifier.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.listingIds !== 'undefined' && this.listingIds !== null) {\n toReturn['listingIds'] = 'toApiJson' in this.listingIds ? this.listingIds.toApiJson() : this.listingIds;\n }\n return toReturn;\n }\n}\nclass GetListingsResponse {\n static fromProto(proto) {\n let m = new GetListingsResponse();\n m = Object.assign(m, proto);\n if (proto.listings) {\n m.listings = proto.listings.map(Listing.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.listings !== 'undefined' && this.listings !== null) {\n toReturn['listings'] = 'toApiJson' in this.listings ? this.listings.toApiJson() : this.listings;\n }\n return toReturn;\n }\n}\nclass GetMultiThirdPartyReviewPublishSettingsRequest {\n static fromProto(proto) {\n let m = new GetMultiThirdPartyReviewPublishSettingsRequest();\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.accountGroupIds !== 'undefined') {\n toReturn['accountGroupIds'] = this.accountGroupIds;\n }\n return toReturn;\n }\n}\nclass GetMultiThirdPartyReviewPublishSettingsResponse {\n static fromProto(proto) {\n let m = new GetMultiThirdPartyReviewPublishSettingsResponse();\n m = Object.assign(m, proto);\n if (proto.thirdPartyReviewPublishSettings) {\n m.thirdPartyReviewPublishSettings = Object.keys(proto.thirdPartyReviewPublishSettings).reduce((obj, k) => {\n obj[k] = ThirdPartyReviewPublishSettings.fromProto(proto.thirdPartyReviewPublishSettings[k]);\n return obj;\n }, {});\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.thirdPartyReviewPublishSettings !== 'undefined' && this.thirdPartyReviewPublishSettings !== null) {\n toReturn['thirdPartyReviewPublishSettings'] = 'toApiJson' in this.thirdPartyReviewPublishSettings ? this.thirdPartyReviewPublishSettings.toApiJson() : this.thirdPartyReviewPublishSettings;\n }\n return toReturn;\n }\n}\nclass GetPartnerWhiteLabelDomainRequest {\n static fromProto(proto) {\n let m = new GetPartnerWhiteLabelDomainRequest();\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 return toReturn;\n }\n}\nclass GetPartnerWhiteLabelDomainResponse {\n static fromProto(proto) {\n let m = new GetPartnerWhiteLabelDomainResponse();\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.whiteLabelDomain !== 'undefined') {\n toReturn['whiteLabelDomain'] = this.whiteLabelDomain;\n }\n return toReturn;\n }\n}\nclass GetReviewRequestEmailTemplateRequest {\n static fromProto(proto) {\n let m = new GetReviewRequestEmailTemplateRequest();\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.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n return toReturn;\n }\n}\nclass GetReviewRequestEmailTemplateResponse {\n static fromProto(proto) {\n let m = new GetReviewRequestEmailTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = ReviewRequestTemplate.fromProto(proto.template);\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.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n return toReturn;\n }\n}\nclass GetReviewRequestSMSTemplateRequest {\n static fromProto(proto) {\n let m = new GetReviewRequestSMSTemplateRequest();\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.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n return toReturn;\n }\n}\nclass GetReviewRequestSMSTemplateResponse {\n static fromProto(proto) {\n let m = new GetReviewRequestSMSTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.templateType) {\n m.templateType = enumStringToValue(TemplateType, proto.templateType);\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.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n if (typeof this.externalTemplateId !== 'undefined') {\n toReturn['externalTemplateId'] = this.externalTemplateId;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.content !== 'undefined') {\n toReturn['content'] = this.content;\n }\n if (typeof this.templateType !== 'undefined') {\n toReturn['templateType'] = this.templateType;\n }\n if (typeof this.npsRedirectReviewSource !== 'undefined') {\n toReturn['npsRedirectReviewSource'] = this.npsRedirectReviewSource;\n }\n if (typeof this.reviewSourceId !== 'undefined') {\n toReturn['reviewSourceId'] = this.reviewSourceId;\n }\n if (typeof this.imageUrl !== 'undefined') {\n toReturn['imageUrl'] = this.imageUrl;\n }\n if (typeof this.includeBusinessLogo !== 'undefined') {\n toReturn['includeBusinessLogo'] = this.includeBusinessLogo;\n }\n return toReturn;\n }\n}\nclass GetReviewResponseRequest {\n static fromProto(proto) {\n let m = new GetReviewResponseRequest();\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.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass GetReviewResponseResponse {\n static fromProto(proto) {\n let m = new GetReviewResponseResponse();\n m = Object.assign(m, proto);\n if (proto.reviewResponse) {\n m.reviewResponse = ConciergeReviewResponse.fromProto(proto.reviewResponse);\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.reviewResponse !== 'undefined' && this.reviewResponse !== null) {\n toReturn['reviewResponse'] = 'toApiJson' in this.reviewResponse ? this.reviewResponse.toApiJson() : this.reviewResponse;\n }\n return toReturn;\n }\n}\nclass GetReviewSourceInfoRequest {\n static fromProto(proto) {\n let m = new GetReviewSourceInfoRequest();\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.sourceIds !== 'undefined') {\n toReturn['sourceIds'] = this.sourceIds;\n }\n return toReturn;\n }\n}\nclass GetReviewSourceInfoResponse {\n static fromProto(proto) {\n let m = new GetReviewSourceInfoResponse();\n m = Object.assign(m, proto);\n if (proto.sourceInfo) {\n m.sourceInfo = proto.sourceInfo.map(ReviewSourceInfo.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.sourceInfo !== 'undefined' && this.sourceInfo !== null) {\n toReturn['sourceInfo'] = 'toApiJson' in this.sourceInfo ? this.sourceInfo.toApiJson() : this.sourceInfo;\n }\n return toReturn;\n }\n}\nclass GetReviewsRequest {\n static fromProto(proto) {\n let m = new GetReviewsRequest();\n m = Object.assign(m, proto);\n if (proto.reviewIds) {\n m.reviewIds = proto.reviewIds.map(ReviewIdentifier.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.reviewIds !== 'undefined' && this.reviewIds !== null) {\n toReturn['reviewIds'] = 'toApiJson' in this.reviewIds ? this.reviewIds.toApiJson() : this.reviewIds;\n }\n if (typeof this.includeComments !== 'undefined') {\n toReturn['includeComments'] = this.includeComments;\n }\n return toReturn;\n }\n}\nclass GetReviewsResponse {\n static fromProto(proto) {\n let m = new GetReviewsResponse();\n m = Object.assign(m, proto);\n if (proto.reviews) {\n m.reviews = proto.reviews.map(Review.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.reviews !== 'undefined' && this.reviews !== null) {\n toReturn['reviews'] = 'toApiJson' in this.reviews ? this.reviews.toApiJson() : this.reviews;\n }\n return toReturn;\n }\n}\nclass GetSourceDetailsRequest {\n static fromProto(proto) {\n let m = new GetSourceDetailsRequest();\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.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.location !== 'undefined') {\n toReturn['location'] = this.location;\n }\n if (typeof this.taxIds !== 'undefined') {\n toReturn['taxIds'] = this.taxIds;\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 GetSourceDetailsResponse {\n static fromProto(proto) {\n let m = new GetSourceDetailsResponse();\n m = Object.assign(m, proto);\n if (proto.sources) {\n m.sources = proto.sources.map(Source.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.sources !== 'undefined' && this.sources !== null) {\n toReturn['sources'] = 'toApiJson' in this.sources ? this.sources.toApiJson() : this.sources;\n }\n return toReturn;\n }\n}\nclass SourceHTML {\n static fromProto(proto) {\n let m = new SourceHTML();\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.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.claimListing !== 'undefined') {\n toReturn['claimListing'] = this.claimListing;\n }\n if (typeof this.editListing !== 'undefined') {\n toReturn['editListing'] = this.editListing;\n }\n if (typeof this.createListing !== 'undefined') {\n toReturn['createListing'] = this.createListing;\n }\n return toReturn;\n }\n}\nclass SourceIcon {\n static fromProto(proto) {\n let m = new SourceIcon();\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.url16px !== 'undefined') {\n toReturn['url16px'] = this.url16px;\n }\n if (typeof this.url32px !== 'undefined') {\n toReturn['url32px'] = this.url32px;\n }\n if (typeof this.url50px !== 'undefined') {\n toReturn['url50px'] = this.url50px;\n }\n return toReturn;\n }\n}\nclass ListBusinessReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new ListBusinessReviewResponseTemplateRequest();\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.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.brandId !== 'undefined') {\n toReturn['brandId'] = this.brandId;\n }\n if (typeof this.isDigitalAgent !== 'undefined') {\n toReturn['isDigitalAgent'] = this.isDigitalAgent;\n }\n return toReturn;\n }\n}\nclass ListBusinessReviewResponseTemplateResponse {\n static fromProto(proto) {\n let m = new ListBusinessReviewResponseTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.templates) {\n m.templates = proto.templates.map(ReviewResponseTemplate.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.templates !== 'undefined' && this.templates !== null) {\n toReturn['templates'] = 'toApiJson' in this.templates ? this.templates.toApiJson() : this.templates;\n }\n return toReturn;\n }\n}\nclass ListReviewRequestEmailTemplatesRequest {\n static fromProto(proto) {\n let m = new ListReviewRequestEmailTemplatesRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n if (proto.searchOptions) {\n m.searchOptions = ListReviewRequestEmailTemplatesRequestSearchOptions.fromProto(proto.searchOptions);\n }\n if (proto.sortOptions) {\n m.sortOptions = ListReviewRequestEmailTemplatesRequestSortOptions.fromProto(proto.sortOptions);\n }\n if (proto.templateType) {\n m.templateType = enumStringToValue(ReviewRequestTemplateType, proto.templateType);\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.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.searchOptions !== 'undefined' && this.searchOptions !== null) {\n toReturn['searchOptions'] = 'toApiJson' in this.searchOptions ? this.searchOptions.toApiJson() : this.searchOptions;\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.templateType !== 'undefined') {\n toReturn['templateType'] = this.templateType;\n }\n return toReturn;\n }\n}\nclass ListReviewRequestEmailTemplatesResponse {\n static fromProto(proto) {\n let m = new ListReviewRequestEmailTemplatesResponse();\n m = Object.assign(m, proto);\n if (proto.templates) {\n m.templates = proto.templates.map(ReviewRequestTemplate.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.templates !== 'undefined' && this.templates !== null) {\n toReturn['templates'] = 'toApiJson' in this.templates ? this.templates.toApiJson() : this.templates;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\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 Listing {\n static fromProto(proto) {\n let m = new Listing();\n m = Object.assign(m, proto);\n if (proto.listingIdentifier) {\n m.listingIdentifier = ListingIdentifier.fromProto(proto.listingIdentifier);\n }\n if (proto.sourceId) {\n m.sourceId = parseInt(proto.sourceId, 10);\n }\n if (proto.nap) {\n m.nap = NAP.fromProto(proto.nap);\n }\n if (proto.matchQuality) {\n m.matchQuality = enumStringToValue(ListingMatchQuality, proto.matchQuality);\n }\n if (proto.score) {\n m.score = parseInt(proto.score, 10);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.modified) {\n m.modified = new Date(proto.modified);\n }\n if (proto.lastScraped) {\n m.lastScraped = new Date(proto.lastScraped);\n }\n if (proto.lastUserRefresh) {\n m.lastUserRefresh = new Date(proto.lastUserRefresh);\n }\n if (proto.missingOn) {\n m.missingOn = new Date(proto.missingOn);\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.listingIdentifier !== 'undefined' && this.listingIdentifier !== null) {\n toReturn['listingIdentifier'] = 'toApiJson' in this.listingIdentifier ? this.listingIdentifier.toApiJson() : this.listingIdentifier;\n }\n if (typeof this.sourceId !== 'undefined') {\n toReturn['sourceId'] = this.sourceId;\n }\n if (typeof this.nap !== 'undefined' && this.nap !== null) {\n toReturn['nap'] = 'toApiJson' in this.nap ? this.nap.toApiJson() : this.nap;\n }\n if (typeof this.url !== 'undefined') {\n toReturn['url'] = this.url;\n }\n if (typeof this.domain !== 'undefined') {\n toReturn['domain'] = this.domain;\n }\n if (typeof this.matchQuality !== 'undefined') {\n toReturn['matchQuality'] = this.matchQuality;\n }\n if (typeof this.score !== 'undefined') {\n toReturn['score'] = this.score;\n }\n if (typeof this.userSubmitted !== 'undefined') {\n toReturn['userSubmitted'] = this.userSubmitted;\n }\n if (typeof this.verified !== 'undefined') {\n toReturn['verified'] = this.verified;\n }\n if (typeof this.missing !== 'undefined') {\n toReturn['missing'] = this.missing;\n }\n if (typeof this.matches !== 'undefined') {\n toReturn['matches'] = this.matches;\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.modified !== 'undefined' && this.modified !== null) {\n toReturn['modified'] = 'toApiJson' in this.modified ? this.modified.toApiJson() : this.modified;\n }\n if (typeof this.lastScraped !== 'undefined' && this.lastScraped !== null) {\n toReturn['lastScraped'] = 'toApiJson' in this.lastScraped ? this.lastScraped.toApiJson() : this.lastScraped;\n }\n if (typeof this.lastUserRefresh !== 'undefined' && this.lastUserRefresh !== null) {\n toReturn['lastUserRefresh'] = 'toApiJson' in this.lastUserRefresh ? this.lastUserRefresh.toApiJson() : this.lastUserRefresh;\n }\n if (typeof this.missingOn !== 'undefined' && this.missingOn !== null) {\n toReturn['missingOn'] = 'toApiJson' in this.missingOn ? this.missingOn.toApiJson() : this.missingOn;\n }\n if (typeof this.externalId !== 'undefined') {\n toReturn['externalId'] = this.externalId;\n }\n return toReturn;\n }\n}\nclass ListingIdentifier {\n static fromProto(proto) {\n let m = new ListingIdentifier();\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.listingId !== 'undefined') {\n toReturn['listingId'] = this.listingId;\n }\n return toReturn;\n }\n}\nclass SourceListingInteractionHTML {\n static fromProto(proto) {\n let m = new SourceListingInteractionHTML();\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.descriptionHtml !== 'undefined') {\n toReturn['descriptionHtml'] = this.descriptionHtml;\n }\n if (typeof this.claimListingHtml !== 'undefined') {\n toReturn['claimListingHtml'] = this.claimListingHtml;\n }\n if (typeof this.editListingHtml !== 'undefined') {\n toReturn['editListingHtml'] = this.editListingHtml;\n }\n if (typeof this.createListingHtml !== 'undefined') {\n toReturn['createListingHtml'] = this.createListingHtml;\n }\n return toReturn;\n }\n}\nclass LookupListingsRequest {\n static fromProto(proto) {\n let m = new LookupListingsRequest();\n m = Object.assign(m, proto);\n if (proto.sourceIds) {\n m.sourceIds = proto.sourceIds.map(i => parseInt(i, 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.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.sourceIds !== 'undefined') {\n toReturn['sourceIds'] = this.sourceIds;\n }\n if (typeof this.includeAnchorDataMatches !== 'undefined') {\n toReturn['includeAnchorDataMatches'] = this.includeAnchorDataMatches;\n }\n if (typeof this.includeGoodListings !== 'undefined') {\n toReturn['includeGoodListings'] = this.includeGoodListings;\n }\n if (typeof this.includeInternetProviderListings !== 'undefined') {\n toReturn['includeInternetProviderListings'] = this.includeInternetProviderListings;\n }\n if (typeof this.includeNotDoneListings !== 'undefined') {\n toReturn['includeNotDoneListings'] = this.includeNotDoneListings;\n }\n if (typeof this.includePoorListings !== 'undefined') {\n toReturn['includePoorListings'] = this.includePoorListings;\n }\n return toReturn;\n }\n}\nclass LookupListingsResponse {\n static fromProto(proto) {\n let m = new LookupListingsResponse();\n m = Object.assign(m, proto);\n if (proto.listingsBySource) {\n m.listingsBySource = proto.listingsBySource.map(LookupResponseForSource.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.listingsBySource !== 'undefined' && this.listingsBySource !== null) {\n toReturn['listingsBySource'] = 'toApiJson' in this.listingsBySource ? this.listingsBySource.toApiJson() : this.listingsBySource;\n }\n return toReturn;\n }\n}\nclass LookupResponseForSource {\n static fromProto(proto) {\n let m = new LookupResponseForSource();\n m = Object.assign(m, proto);\n if (proto.sourceId) {\n m.sourceId = parseInt(proto.sourceId, 10);\n }\n if (proto.poorListings) {\n m.poorListings = proto.poorListings.map(Listing.fromProto);\n }\n if (proto.goodListings) {\n m.goodListings = proto.goodListings.map(Listing.fromProto);\n }\n if (proto.notDoneListings) {\n m.notDoneListings = proto.notDoneListings.map(Listing.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.sourceId !== 'undefined') {\n toReturn['sourceId'] = this.sourceId;\n }\n if (typeof this.sourceName !== 'undefined') {\n toReturn['sourceName'] = this.sourceName;\n }\n if (typeof this.userFriendlySourceName !== 'undefined') {\n toReturn['userFriendlySourceName'] = this.userFriendlySourceName;\n }\n if (typeof this.poorListings !== 'undefined' && this.poorListings !== null) {\n toReturn['poorListings'] = 'toApiJson' in this.poorListings ? this.poorListings.toApiJson() : this.poorListings;\n }\n if (typeof this.goodListings !== 'undefined' && this.goodListings !== null) {\n toReturn['goodListings'] = 'toApiJson' in this.goodListings ? this.goodListings.toApiJson() : this.goodListings;\n }\n if (typeof this.notDoneListings !== 'undefined' && this.notDoneListings !== null) {\n toReturn['notDoneListings'] = 'toApiJson' in this.notDoneListings ? this.notDoneListings.toApiJson() : this.notDoneListings;\n }\n return toReturn;\n }\n}\nclass NAP {\n static fromProto(proto) {\n let m = new NAP();\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.companyName !== 'undefined') {\n toReturn['companyName'] = this.companyName;\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.zip !== 'undefined') {\n toReturn['zip'] = this.zip;\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.website !== 'undefined') {\n toReturn['website'] = this.website;\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 ProvideFeedbackToReviewResponseRequest {\n static fromProto(proto) {\n let m = new ProvideFeedbackToReviewResponseRequest();\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.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.feedback !== 'undefined') {\n toReturn['feedback'] = this.feedback;\n }\n return toReturn;\n }\n}\nclass RefreshBusisinessSourceRequest {\n static fromProto(proto) {\n let m = new RefreshBusisinessSourceRequest();\n m = Object.assign(m, proto);\n if (proto.sourceId) {\n m.sourceId = parseInt(proto.sourceId, 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.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.sourceId !== 'undefined') {\n toReturn['sourceId'] = this.sourceId;\n }\n if (typeof this.listingId !== 'undefined') {\n toReturn['listingId'] = this.listingId;\n }\n return toReturn;\n }\n}\nclass ReviewHistoryRequest {\n static fromProto(proto) {\n let m = new ReviewHistoryRequest();\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.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n return toReturn;\n }\n}\nclass ReviewHistoryResponse {\n static fromProto(proto) {\n let m = new ReviewHistoryResponse();\n m = Object.assign(m, proto);\n if (proto.reviewHistory) {\n m.reviewHistory = proto.reviewHistory.map(ReviewHistory.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.reviewHistory !== 'undefined' && this.reviewHistory !== null) {\n toReturn['reviewHistory'] = 'toApiJson' in this.reviewHistory ? this.reviewHistory.toApiJson() : this.reviewHistory;\n }\n return toReturn;\n }\n}\nclass ReviewResponseTemplate {\n static fromProto(proto) {\n let m = new ReviewResponseTemplate();\n m = Object.assign(m, proto);\n if (proto.ratings) {\n m.ratings = proto.ratings.map(i => parseInt(i, 10));\n }\n if (proto.created) {\n m.created = new Date(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.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.categories !== 'undefined') {\n toReturn['categories'] = this.categories;\n }\n if (typeof this.ratings !== 'undefined') {\n toReturn['ratings'] = this.ratings;\n }\n if (typeof this.content !== 'undefined') {\n toReturn['content'] = this.content;\n }\n if (typeof this.responseTemplateId !== 'undefined') {\n toReturn['responseTemplateId'] = this.responseTemplateId;\n }\n if (typeof this.externalTemplateId !== 'undefined') {\n toReturn['externalTemplateId'] = this.externalTemplateId;\n }\n if (typeof this.createdBy !== 'undefined') {\n toReturn['createdBy'] = this.createdBy;\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.owner !== 'undefined') {\n toReturn['owner'] = this.owner;\n }\n return toReturn;\n }\n}\nclass ReviewSourceInfo {\n static fromProto(proto) {\n let m = new ReviewSourceInfo();\n m = Object.assign(m, proto);\n if (proto.sourceId) {\n m.sourceId = parseInt(proto.sourceId, 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.sourceId !== 'undefined') {\n toReturn['sourceId'] = this.sourceId;\n }\n if (typeof this.displayName !== 'undefined') {\n toReturn['displayName'] = this.displayName;\n }\n if (typeof this.leaveReviewUrl !== 'undefined') {\n toReturn['leaveReviewUrl'] = this.leaveReviewUrl;\n }\n return toReturn;\n }\n}\nclass SMSTemplateData {\n static fromProto(proto) {\n let m = new SMSTemplateData();\n m = Object.assign(m, proto);\n if (proto.templateType) {\n m.templateType = enumStringToValue(TemplateType, proto.templateType);\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.templateType !== 'undefined') {\n toReturn['templateType'] = this.templateType;\n }\n if (typeof this.npsRedirectReviewSource !== 'undefined') {\n toReturn['npsRedirectReviewSource'] = this.npsRedirectReviewSource;\n }\n if (typeof this.reviewSourceId !== 'undefined') {\n toReturn['reviewSourceId'] = this.reviewSourceId;\n }\n if (typeof this.businessLogoUrl !== 'undefined') {\n toReturn['businessLogoUrl'] = this.businessLogoUrl;\n }\n if (typeof this.includeBusinessLogo !== 'undefined') {\n toReturn['includeBusinessLogo'] = this.includeBusinessLogo;\n }\n return toReturn;\n }\n}\nclass SearchBingMapsRequest {\n static fromProto(proto) {\n let m = new SearchBingMapsRequest();\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.companyName !== 'undefined') {\n toReturn['companyName'] = this.companyName;\n }\n return toReturn;\n }\n}\nclass SearchBingMapsResponse {\n static fromProto(proto) {\n let m = new SearchBingMapsResponse();\n m = Object.assign(m, proto);\n if (proto.locations) {\n m.locations = proto.locations.map(BingMapsLocation.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.locations !== 'undefined' && this.locations !== null) {\n toReturn['locations'] = 'toApiJson' in this.locations ? this.locations.toApiJson() : this.locations;\n }\n return toReturn;\n }\n}\nclass ListReviewRequestEmailTemplatesRequestSearchOptions {\n static fromProto(proto) {\n let m = new ListReviewRequestEmailTemplatesRequestSearchOptions();\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.searchTerm !== 'undefined') {\n toReturn['searchTerm'] = this.searchTerm;\n }\n if (typeof this.exactMatch !== 'undefined') {\n toReturn['exactMatch'] = this.exactMatch;\n }\n return toReturn;\n }\n}\nclass SendPreviewEmailRequest {\n static fromProto(proto) {\n let m = new SendPreviewEmailRequest();\n m = Object.assign(m, proto);\n if (proto.emailTemplateData) {\n m.emailTemplateData = EmailTemplateData.fromProto(proto.emailTemplateData);\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.emailTemplateData !== 'undefined' && this.emailTemplateData !== null) {\n toReturn['emailTemplateData'] = 'toApiJson' in this.emailTemplateData ? this.emailTemplateData.toApiJson() : this.emailTemplateData;\n }\n if (typeof this.recipientUserId !== 'undefined') {\n toReturn['recipientUserId'] = this.recipientUserId;\n }\n return toReturn;\n }\n}\nclass SendReviewRequestEmailRequest {\n static fromProto(proto) {\n let m = new SendReviewRequestEmailRequest();\n m = Object.assign(m, proto);\n if (proto.emailTemplateData) {\n m.emailTemplateData = EmailTemplateData.fromProto(proto.emailTemplateData);\n }\n if (proto.templateType) {\n m.templateType = enumStringToValue(ReviewRequestTemplateType, proto.templateType);\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.recipientsEmails !== 'undefined') {\n toReturn['recipientsEmails'] = this.recipientsEmails;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.emailTemplateData !== 'undefined' && this.emailTemplateData !== null) {\n toReturn['emailTemplateData'] = 'toApiJson' in this.emailTemplateData ? this.emailTemplateData.toApiJson() : this.emailTemplateData;\n }\n if (typeof this.contactIds !== 'undefined') {\n toReturn['contactIds'] = this.contactIds;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.templateType !== 'undefined') {\n toReturn['templateType'] = this.templateType;\n }\n if (typeof this.isMultiChannel !== 'undefined') {\n toReturn['isMultiChannel'] = this.isMultiChannel;\n }\n return toReturn;\n }\n}\nclass SendReviewRequestRequest {\n static fromProto(proto) {\n let m = new SendReviewRequestRequest();\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 return toReturn;\n }\n}\nclass SendReviewRequestSmsRequest {\n static fromProto(proto) {\n let m = new SendReviewRequestSmsRequest();\n m = Object.assign(m, proto);\n if (proto.smsTemplateData) {\n m.smsTemplateData = SMSTemplateData.fromProto(proto.smsTemplateData);\n }\n if (proto.templateType) {\n m.templateType = enumStringToValue(ReviewRequestTemplateType, proto.templateType);\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.contactIds !== 'undefined') {\n toReturn['contactIds'] = this.contactIds;\n }\n if (typeof this.messageText !== 'undefined') {\n toReturn['messageText'] = this.messageText;\n }\n if (typeof this.smsTemplateData !== 'undefined' && this.smsTemplateData !== null) {\n toReturn['smsTemplateData'] = 'toApiJson' in this.smsTemplateData ? this.smsTemplateData.toApiJson() : this.smsTemplateData;\n }\n if (typeof this.templateType !== 'undefined') {\n toReturn['templateType'] = this.templateType;\n }\n if (typeof this.isMultiChannel !== 'undefined') {\n toReturn['isMultiChannel'] = this.isMultiChannel;\n }\n return toReturn;\n }\n}\nclass SetDefaultReviewRequestTemplateRequest {\n static fromProto(proto) {\n let m = new SetDefaultReviewRequestTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.templateType) {\n m.templateType = enumStringToValue(ReviewRequestTemplateType, proto.templateType);\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.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n if (typeof this.templateType !== 'undefined') {\n toReturn['templateType'] = this.templateType;\n }\n return toReturn;\n }\n}\nclass ListReviewRequestEmailTemplatesRequestSortOptions {\n static fromProto(proto) {\n let m = new ListReviewRequestEmailTemplatesRequestSortOptions();\n m = Object.assign(m, proto);\n if (proto.sortDirection) {\n m.sortDirection = enumStringToValue(SortDirection, proto.sortDirection);\n }\n if (proto.sortField) {\n m.sortField = enumStringToValue(ListReviewRequestEmailTemplatesRequestSortField, proto.sortField);\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.sortDirection !== 'undefined') {\n toReturn['sortDirection'] = this.sortDirection;\n }\n if (typeof this.sortField !== 'undefined') {\n toReturn['sortField'] = this.sortField;\n }\n return toReturn;\n }\n}\nclass Source {\n static fromProto(proto) {\n let m = new Source();\n m = Object.assign(m, proto);\n if (proto.sourceId) {\n m.sourceId = parseInt(proto.sourceId, 10);\n }\n if (proto.icon) {\n m.icon = SourceIcon.fromProto(proto.icon);\n }\n if (proto.partner) {\n m.partner = SourceAttributeScope.fromProto(proto.partner);\n }\n if (proto.location) {\n m.location = SourceAttributeScope.fromProto(proto.location);\n }\n if (proto.taxonomy) {\n m.taxonomy = SourceAttributeScope.fromProto(proto.taxonomy);\n }\n if (proto.submitListingData) {\n m.submitListingData = SourceSubmitListing.fromProto(proto.submitListingData);\n }\n if (proto.listingInteractionHtml) {\n m.listingInteractionHtml = SourceListingInteractionHTML.fromProto(proto.listingInteractionHtml);\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.sourceId !== 'undefined') {\n toReturn['sourceId'] = this.sourceId;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.sourceTypeName !== 'undefined') {\n toReturn['sourceTypeName'] = this.sourceTypeName;\n }\n if (typeof this.sourceTypeId !== 'undefined') {\n toReturn['sourceTypeId'] = this.sourceTypeId;\n }\n if (typeof this.icon !== 'undefined' && this.icon !== null) {\n toReturn['icon'] = 'toApiJson' in this.icon ? this.icon.toApiJson() : this.icon;\n }\n if (typeof this.enabled !== 'undefined') {\n toReturn['enabled'] = this.enabled;\n }\n if (typeof this.hasReviews !== 'undefined') {\n toReturn['hasReviews'] = this.hasReviews;\n }\n if (typeof this.hasNoRatingsReviews !== 'undefined') {\n toReturn['hasNoRatingsReviews'] = this.hasNoRatingsReviews;\n }\n if (typeof this.hasListings !== 'undefined') {\n toReturn['hasListings'] = this.hasListings;\n }\n if (typeof this.adminNotes !== 'undefined') {\n toReturn['adminNotes'] = this.adminNotes;\n }\n if (typeof this.supportsSubmittingListings !== 'undefined') {\n toReturn['supportsSubmittingListings'] = this.supportsSubmittingListings;\n }\n if (typeof this.ignoredAnchorDataMatches !== 'undefined') {\n toReturn['ignoredAnchorDataMatches'] = this.ignoredAnchorDataMatches;\n }\n if (typeof this.partner !== 'undefined' && this.partner !== null) {\n toReturn['partner'] = 'toApiJson' in this.partner ? this.partner.toApiJson() : this.partner;\n }\n if (typeof this.location !== 'undefined' && this.location !== null) {\n toReturn['location'] = 'toApiJson' in this.location ? this.location.toApiJson() : this.location;\n }\n if (typeof this.taxonomy !== 'undefined' && this.taxonomy !== null) {\n toReturn['taxonomy'] = 'toApiJson' in this.taxonomy ? this.taxonomy.toApiJson() : this.taxonomy;\n }\n if (typeof this.submitListingData !== 'undefined' && this.submitListingData !== null) {\n toReturn['submitListingData'] = 'toApiJson' in this.submitListingData ? this.submitListingData.toApiJson() : this.submitListingData;\n }\n if (typeof this.listingInteractionHtml !== 'undefined' && this.listingInteractionHtml !== null) {\n toReturn['listingInteractionHtml'] = 'toApiJson' in this.listingInteractionHtml ? this.listingInteractionHtml.toApiJson() : this.listingInteractionHtml;\n }\n return toReturn;\n }\n}\nclass SourceDetails {\n static fromProto(proto) {\n let m = new SourceDetails();\n m = Object.assign(m, proto);\n if (proto.sources) {\n m.sources = proto.sources.map(i => parseInt(i, 10));\n }\n if (proto.ignoredSources) {\n m.ignoredSources = proto.ignoredSources.map(i => parseInt(i, 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.sources !== 'undefined') {\n toReturn['sources'] = this.sources;\n }\n if (typeof this.ignoredSources !== 'undefined') {\n toReturn['ignoredSources'] = this.ignoredSources;\n }\n return toReturn;\n }\n}\nclass SourceSubmitListing {\n static fromProto(proto) {\n let m = new SourceSubmitListing();\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.validationRegex !== 'undefined') {\n toReturn['validationRegex'] = this.validationRegex;\n }\n if (typeof this.helpText !== 'undefined') {\n toReturn['helpText'] = this.helpText;\n }\n if (typeof this.editListingUrl !== 'undefined') {\n toReturn['editListingUrl'] = this.editListingUrl;\n }\n if (typeof this.createListingUrl !== 'undefined') {\n toReturn['createListingUrl'] = this.createListingUrl;\n }\n return toReturn;\n }\n}\nclass SubmitListingRequest {\n static fromProto(proto) {\n let m = new SubmitListingRequest();\n m = Object.assign(m, proto);\n if (proto.sourceId) {\n m.sourceId = parseInt(proto.sourceId, 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.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.listingUrl !== 'undefined') {\n toReturn['listingUrl'] = this.listingUrl;\n }\n if (typeof this.sourceId !== 'undefined') {\n toReturn['sourceId'] = this.sourceId;\n }\n return toReturn;\n }\n}\nclass SubmitListingResponse {\n static fromProto(proto) {\n let m = new SubmitListingResponse();\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.listingId !== 'undefined') {\n toReturn['listingId'] = this.listingId;\n }\n return toReturn;\n }\n}\nclass SuggestReviewResponseRequest {\n static fromProto(proto) {\n let m = new SuggestReviewResponseRequest();\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.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.inSameLanguage !== 'undefined') {\n toReturn['inSameLanguage'] = this.inSameLanguage;\n }\n return toReturn;\n }\n}\nclass SuggestReviewResponseResponse {\n static fromProto(proto) {\n let m = new SuggestReviewResponseResponse();\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.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n return toReturn;\n }\n}\nclass GetMultiThirdPartyReviewPublishSettingsResponseThirdPartyReviewPublishSettingsEntry {\n static fromProto(proto) {\n let m = new GetMultiThirdPartyReviewPublishSettingsResponseThirdPartyReviewPublishSettingsEntry();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = ThirdPartyReviewPublishSettings.fromProto(proto.value);\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.key !== 'undefined') {\n toReturn['key'] = this.key;\n }\n if (typeof this.value !== 'undefined' && this.value !== null) {\n toReturn['value'] = 'toApiJson' in this.value ? this.value.toApiJson() : this.value;\n }\n return toReturn;\n }\n}\nclass UpdateBrandReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new UpdateBrandReviewResponseTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = ReviewResponseTemplate.fromProto(proto.template);\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.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.brandId !== 'undefined') {\n toReturn['brandId'] = this.brandId;\n }\n return toReturn;\n }\n}\nclass UpdateBusinessReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new UpdateBusinessReviewResponseTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = ReviewResponseTemplate.fromProto(proto.template);\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.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass UpdateDigitalAgentReviewResponseTemplateRequest {\n static fromProto(proto) {\n let m = new UpdateDigitalAgentReviewResponseTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = ReviewResponseTemplate.fromProto(proto.template);\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.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass UpdateListingRequest {\n static fromProto(proto) {\n let m = new UpdateListingRequest();\n m = Object.assign(m, proto);\n if (proto.listingId) {\n m.listingId = ListingIdentifier.fromProto(proto.listingId);\n }\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.listingId !== 'undefined' && this.listingId !== null) {\n toReturn['listingId'] = 'toApiJson' in this.listingId ? this.listingId.toApiJson() : this.listingId;\n }\n if (typeof this.isMine !== 'undefined') {\n toReturn['isMine'] = this.isMine;\n }\n if (typeof this.isVerified !== 'undefined') {\n toReturn['isVerified'] = this.isVerified;\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 UpdateReviewCommentRequest {\n static fromProto(proto) {\n let m = new UpdateReviewCommentRequest();\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.reviewCommentId !== 'undefined') {\n toReturn['reviewCommentId'] = this.reviewCommentId;\n }\n if (typeof this.reviewCommentContent !== 'undefined') {\n toReturn['reviewCommentContent'] = this.reviewCommentContent;\n }\n return toReturn;\n }\n}\nclass UpdateReviewCommentResponse {\n static fromProto(proto) {\n let m = new UpdateReviewCommentResponse();\n m = Object.assign(m, proto);\n if (proto.reviewComment) {\n m.reviewComment = ReviewComment.fromProto(proto.reviewComment);\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.reviewComment !== 'undefined' && this.reviewComment !== null) {\n toReturn['reviewComment'] = 'toApiJson' in this.reviewComment ? this.reviewComment.toApiJson() : this.reviewComment;\n }\n return toReturn;\n }\n}\nclass UpdateReviewRequest {\n static fromProto(proto) {\n let m = new UpdateReviewRequest();\n m = Object.assign(m, proto);\n if (proto.reviewId) {\n m.reviewId = ReviewIdentifier.fromProto(proto.reviewId);\n }\n if (proto.actionStatus) {\n m.actionStatus = enumStringToValue(ReviewActionStatus, proto.actionStatus);\n }\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.reviewId !== 'undefined' && this.reviewId !== null) {\n toReturn['reviewId'] = 'toApiJson' in this.reviewId ? this.reviewId.toApiJson() : this.reviewId;\n }\n if (typeof this.actionStatus !== 'undefined') {\n toReturn['actionStatus'] = this.actionStatus;\n }\n if (typeof this.isPublished !== 'undefined') {\n toReturn['isPublished'] = this.isPublished;\n }\n if (typeof this.isPublishedThirdPartyReview !== 'undefined') {\n toReturn['isPublishedThirdPartyReview'] = this.isPublishedThirdPartyReview;\n }\n if (typeof this.isSharedByReviewer !== 'undefined') {\n toReturn['isSharedByReviewer'] = this.isSharedByReviewer;\n }\n if (typeof this.newComment !== 'undefined') {\n toReturn['newComment'] = this.newComment;\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 UpdateReviewRequestEmailTemplateRequest {\n static fromProto(proto) {\n let m = new UpdateReviewRequestEmailTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {\n m.template = ReviewRequestTemplate.fromProto(proto.template);\n }\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.template !== 'undefined' && this.template !== null) {\n toReturn['template'] = 'toApiJson' in this.template ? this.template.toApiJson() : this.template;\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 UpdateReviewRequestSMSTemplateRequest {\n static fromProto(proto) {\n let m = new UpdateReviewRequestSMSTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.templateType) {\n m.templateType = enumStringToValue(TemplateType, proto.templateType);\n }\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.templateId !== 'undefined') {\n toReturn['templateId'] = this.templateId;\n }\n if (typeof this.externalTemplateId !== 'undefined') {\n toReturn['externalTemplateId'] = this.externalTemplateId;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.accountGroupId !== 'undefined') {\n toReturn['accountGroupId'] = this.accountGroupId;\n }\n if (typeof this.content !== 'undefined') {\n toReturn['content'] = this.content;\n }\n if (typeof this.templateType !== 'undefined') {\n toReturn['templateType'] = this.templateType;\n }\n if (typeof this.npsRedirectReviewSource !== 'undefined') {\n toReturn['npsRedirectReviewSource'] = this.npsRedirectReviewSource;\n }\n if (typeof this.reviewSourceId !== 'undefined') {\n toReturn['reviewSourceId'] = this.reviewSourceId;\n }\n if (typeof this.businessLogoUrl !== 'undefined') {\n toReturn['businessLogoUrl'] = this.businessLogoUrl;\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.includeBusinessLogo !== 'undefined') {\n toReturn['includeBusinessLogo'] = this.includeBusinessLogo;\n }\n return toReturn;\n }\n}\nclass UpdateReviewResponse {\n static fromProto(proto) {\n let m = new UpdateReviewResponse();\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.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n return toReturn;\n }\n}\nclass UpdateReviewUserDeletedInfoRequest {\n static fromProto(proto) {\n let m = new UpdateReviewUserDeletedInfoRequest();\n m = Object.assign(m, proto);\n if (proto.deletedStatus) {\n m.deletedStatus = enumStringToValue(ReviewDeletedStatus, proto.deletedStatus);\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.reviewId !== 'undefined') {\n toReturn['reviewId'] = this.reviewId;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.deletedStatus !== 'undefined') {\n toReturn['deletedStatus'] = this.deletedStatus;\n }\n return toReturn;\n }\n}\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects Index.\n// *********************************\n\nconst environment = (window ? window['environment'] : 'prod') ?? 'prod';\nconst hostMap = {\n 'local': 'reputation-api.vendasta-local.com',\n 'test': '',\n 'demo': 'reputation-api-demo.apigateway.co',\n 'prod': 'reputation-api-prod.apigateway.co',\n 'production': 'reputation-api-prod.apigateway.co'\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(__ngFactoryType__) {\n return new (__ngFactoryType__ || 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 AccountApiService = /*#__PURE__*/(() => {\n class AccountApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 getSmsEnabled(r) {\n const request = r.toApiJson ? r : new GetSMSEnabledRequest(r);\n return this.http.post(this._host + \"/reputation.v1.AccountService/GetSMSEnabled\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetSMSEnabledResponse.fromProto(resp)));\n }\n }\n AccountApiService.ɵfac = function AccountApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || AccountApiService)();\n };\n AccountApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: AccountApiService,\n factory: AccountApiService.ɵfac,\n providedIn: 'root'\n });\n return AccountApiService;\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 ConciergeReviewResponseApiService = /*#__PURE__*/(() => {\n class ConciergeReviewResponseApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 getReviewResponse(r) {\n const request = r.toApiJson ? r : new GetReviewResponseRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ConciergeReviewResponseService/GetReviewResponse\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetReviewResponseResponse.fromProto(resp)));\n }\n approveReviewResponse(r) {\n const request = r.toApiJson ? r : new ApproveReviewResponseRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ConciergeReviewResponseService/ApproveReviewResponse\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n provideFeedbackToReviewResponse(r) {\n const request = r.toApiJson ? r : new ProvideFeedbackToReviewResponseRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ConciergeReviewResponseService/ProvideFeedbackToReviewResponse\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n ConciergeReviewResponseApiService.ɵfac = function ConciergeReviewResponseApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || ConciergeReviewResponseApiService)();\n };\n ConciergeReviewResponseApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ConciergeReviewResponseApiService,\n factory: ConciergeReviewResponseApiService.ɵfac,\n providedIn: 'root'\n });\n return ConciergeReviewResponseApiService;\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 LimitApiService = /*#__PURE__*/(() => {\n class LimitApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 getLimit(r) {\n const request = r.toApiJson ? r : new GetLimitRequest(r);\n return this.http.post(this._host + \"/reputation.v1.LimitService/GetLimit\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetLimitResponse.fromProto(resp)));\n }\n }\n LimitApiService.ɵfac = function LimitApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || LimitApiService)();\n };\n LimitApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: LimitApiService,\n factory: LimitApiService.ɵfac,\n providedIn: 'root'\n });\n return LimitApiService;\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 ListingApiService = /*#__PURE__*/(() => {\n class ListingApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 getListings(r) {\n const request = r.toApiJson ? r : new GetListingsRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ListingService/GetListings\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetListingsResponse.fromProto(resp)));\n }\n lookupListings(r) {\n const request = r.toApiJson ? r : new LookupListingsRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ListingService/LookupListings\", request.toApiJson(), this.apiOptions()).pipe(map(resp => LookupListingsResponse.fromProto(resp)));\n }\n updateListing(r) {\n const request = r.toApiJson ? r : new UpdateListingRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ListingService/UpdateListing\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n submitListing(r) {\n const request = r.toApiJson ? r : new SubmitListingRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ListingService/SubmitListing\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SubmitListingResponse.fromProto(resp)));\n }\n forceRefreshListing(r) {\n const request = r.toApiJson ? r : new ForceRefreshListingRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ListingService/ForceRefreshListing\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n searchBingMaps(r) {\n const request = r.toApiJson ? r : new SearchBingMapsRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ListingService/SearchBingMaps\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SearchBingMapsResponse.fromProto(resp)));\n }\n }\n ListingApiService.ɵfac = function ListingApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || ListingApiService)();\n };\n ListingApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ListingApiService,\n factory: ListingApiService.ɵfac,\n providedIn: 'root'\n });\n return ListingApiService;\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 NetPromoterScoreApiService = /*#__PURE__*/(() => {\n class NetPromoterScoreApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 leaveNetPromoterScore(r) {\n const request = r.toApiJson ? r : new LeaveNetPromoterScoreRequest(r);\n return this.http.post(this._host + \"/reputation.v1.NetPromoterScoreService/LeaveNetPromoterScore\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n listNetPromoterScores(r) {\n const request = r.toApiJson ? r : new ListNetPromoterScoresRequest(r);\n return this.http.post(this._host + \"/reputation.v1.NetPromoterScoreService/ListNetPromoterScores\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListNetPromoterScoresResponse.fromProto(resp)));\n }\n importNps(r) {\n const request = r.toApiJson ? r : new ImportNPSRequest(r);\n return this.http.post(this._host + \"/reputation.v1.NetPromoterScoreService/ImportNPS\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ImportNPSResponse.fromProto(resp)));\n }\n getMulti(r) {\n const request = r.toApiJson ? r : new GetMultiNPSRequest(r);\n return this.http.post(this._host + \"/reputation.v1.NetPromoterScoreService/GetMulti\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiNPSResponse.fromProto(resp)));\n }\n }\n NetPromoterScoreApiService.ɵfac = function NetPromoterScoreApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || NetPromoterScoreApiService)();\n };\n NetPromoterScoreApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: NetPromoterScoreApiService,\n factory: NetPromoterScoreApiService.ɵfac,\n providedIn: 'root'\n });\n return NetPromoterScoreApiService;\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 ReviewRequestApiService = /*#__PURE__*/(() => {\n class ReviewRequestApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 sendReviewRequestEmail(r) {\n const request = r.toApiJson ? r : new SendReviewRequestEmailRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/SendReviewRequestEmail\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n sendReviewRequestSms(r) {\n const request = r.toApiJson ? r : new SendReviewRequestSmsRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/SendReviewRequestSms\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n createReviewRequestEmailTemplate(r) {\n const request = r.toApiJson ? r : new CreateReviewRequestEmailTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/CreateReviewRequestEmailTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateReviewRequestEmailTemplateResponse.fromProto(resp)));\n }\n getReviewRequestEmailTemplate(r) {\n const request = r.toApiJson ? r : new GetReviewRequestEmailTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/GetReviewRequestEmailTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetReviewRequestEmailTemplateResponse.fromProto(resp)));\n }\n listReviewRequestEmailTemplates(r) {\n const request = r.toApiJson ? r : new ListReviewRequestEmailTemplatesRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/ListReviewRequestEmailTemplates\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListReviewRequestEmailTemplatesResponse.fromProto(resp)));\n }\n setDefaultReviewRequestTemplate(r) {\n const request = r.toApiJson ? r : new SetDefaultReviewRequestTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/SetDefaultReviewRequestTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n updateReviewRequestEmailTemplate(r) {\n const request = r.toApiJson ? r : new UpdateReviewRequestEmailTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/UpdateReviewRequestEmailTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deleteReviewRequestEmailTemplate(r) {\n const request = r.toApiJson ? r : new DeleteReviewRequestTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/DeleteReviewRequestEmailTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n sendReviewRequest(r) {\n const request = r.toApiJson ? r : new SendReviewRequestRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/SendReviewRequest\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n scheduleReviewRequest(r) {\n const request = r.toApiJson ? r : new ScheduleReviewRequestRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/ScheduleReviewRequest\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getLeaveReviewUrLs(r) {\n const request = r.toApiJson ? r : new GetLeaveReviewURLsRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/GetLeaveReviewURLs\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetLeaveReviewURLsResponse.fromProto(resp)));\n }\n createReviewRequestSmsTemplate(r) {\n const request = r.toApiJson ? r : new CreateReviewRequestSMSTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/CreateReviewRequestSMSTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateReviewRequestSMSTemplateResponse.fromProto(resp)));\n }\n sendPreviewEmail(r) {\n const request = r.toApiJson ? r : new SendPreviewEmailRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/SendPreviewEmail\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getReviewRequestSmsTemplate(r) {\n const request = r.toApiJson ? r : new GetReviewRequestSMSTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/GetReviewRequestSMSTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetReviewRequestSMSTemplateResponse.fromProto(resp)));\n }\n updateReviewRequestSmsTemplate(r) {\n const request = r.toApiJson ? r : new UpdateReviewRequestSMSTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/UpdateReviewRequestSMSTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n resendReview(r) {\n const request = r.toApiJson ? r : new ResendReviewRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewRequestService/ResendReview\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n ReviewRequestApiService.ɵfac = function ReviewRequestApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || ReviewRequestApiService)();\n };\n ReviewRequestApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ReviewRequestApiService,\n factory: ReviewRequestApiService.ɵfac,\n providedIn: 'root'\n });\n return ReviewRequestApiService;\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 ReviewResponseTemplateApiService = /*#__PURE__*/(() => {\n class ReviewResponseTemplateApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 createBusinessReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new CreateBusinessReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/CreateBusinessReviewResponseTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateReviewResponseTemplateResponse.fromProto(resp)));\n }\n createPartnerMarketReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new CreatePartnerMarketReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/CreatePartnerMarketReviewResponseTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateReviewResponseTemplateResponse.fromProto(resp)));\n }\n createBrandReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new CreateBrandReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/CreateBrandReviewResponseTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateReviewResponseTemplateResponse.fromProto(resp)));\n }\n createDigitalAgentReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new CreateDigitalAgentReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/CreateDigitalAgentReviewResponseTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateReviewResponseTemplateResponse.fromProto(resp)));\n }\n createDefaultReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new CreateDefaultReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/CreateDefaultReviewResponseTemplate\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateReviewResponseTemplateResponse.fromProto(resp)));\n }\n updateBusinessReviewResponseTemplates(r) {\n const request = r.toApiJson ? r : new UpdateBusinessReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/UpdateBusinessReviewResponseTemplates\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n updateBrandReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new UpdateBrandReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/UpdateBrandReviewResponseTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n updateDigitalAgentReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new UpdateDigitalAgentReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/UpdateDigitalAgentReviewResponseTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deleteBusinessReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new DeleteBusinessReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/DeleteBusinessReviewResponseTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deletePartnerMarketReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new DeletePartnerMarketReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/DeletePartnerMarketReviewResponseTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deleteBrandReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new DeleteBrandReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/DeleteBrandReviewResponseTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deleteDigitalAgentReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new DeleteDigitalAgentReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/DeleteDigitalAgentReviewResponseTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deleteDefaultReviewResponseTemplate(r) {\n const request = r.toApiJson ? r : new DeleteDefaultReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/DeleteDefaultReviewResponseTemplate\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n listBusinessReviewResponseTemplates(r) {\n const request = r.toApiJson ? r : new ListBusinessReviewResponseTemplateRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewResponseTemplateService/ListBusinessReviewResponseTemplates\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListBusinessReviewResponseTemplateResponse.fromProto(resp)));\n }\n }\n ReviewResponseTemplateApiService.ɵfac = function ReviewResponseTemplateApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || ReviewResponseTemplateApiService)();\n };\n ReviewResponseTemplateApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ReviewResponseTemplateApiService,\n factory: ReviewResponseTemplateApiService.ɵfac,\n providedIn: 'root'\n });\n return ReviewResponseTemplateApiService;\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 ReviewApiService = /*#__PURE__*/(() => {\n class ReviewApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 getReviews(r) {\n const request = r.toApiJson ? r : new GetReviewsRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewService/GetReviews\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetReviewsResponse.fromProto(resp)));\n }\n updateReview(r) {\n const request = r.toApiJson ? r : new UpdateReviewRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewService/UpdateReview\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpdateReviewResponse.fromProto(resp)));\n }\n createReviewComment(r) {\n const request = r.toApiJson ? r : new CreateReviewCommentRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewService/CreateReviewComment\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateReviewCommentResponse.fromProto(resp)));\n }\n updateReviewComment(r) {\n const request = r.toApiJson ? r : new UpdateReviewCommentRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewService/UpdateReviewComment\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpdateReviewCommentResponse.fromProto(resp)));\n }\n canRespondToReview(r) {\n const request = r.toApiJson ? r : new CanRespondToReviewRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewService/CanRespondToReview\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CanRespondToReviewResponse.fromProto(resp)));\n }\n updateReviewUserDeletedInfo(r) {\n const request = r.toApiJson ? r : new UpdateReviewUserDeletedInfoRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewService/UpdateReviewUserDeletedInfo\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getMultiThirdPartyReviewPublishSettings(r) {\n const request = r.toApiJson ? r : new GetMultiThirdPartyReviewPublishSettingsRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewService/GetMultiThirdPartyReviewPublishSettings\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiThirdPartyReviewPublishSettingsResponse.fromProto(resp)));\n }\n suggestReviewResponse(r) {\n const request = r.toApiJson ? r : new SuggestReviewResponseRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewService/SuggestReviewResponse\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SuggestReviewResponseResponse.fromProto(resp)));\n }\n getReviewHistory(r) {\n const request = r.toApiJson ? r : new ReviewHistoryRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewService/GetReviewHistory\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ReviewHistoryResponse.fromProto(resp)));\n }\n }\n ReviewApiService.ɵfac = function ReviewApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || ReviewApiService)();\n };\n ReviewApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ReviewApiService,\n factory: ReviewApiService.ɵfac,\n providedIn: 'root'\n });\n return ReviewApiService;\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 ReviewWidgetApiService = /*#__PURE__*/(() => {\n class ReviewWidgetApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 listWidgetReviews(r) {\n const request = r.toApiJson ? r : new ListWidgetReviewsRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewWidgetService/ListWidgetReviews\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListWidgetReviewsResponse.fromProto(resp)));\n }\n createReviewWidget(r) {\n const request = r.toApiJson ? r : new CreateReviewWidgetRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewWidgetService/CreateReviewWidget\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateReviewWidgetResponse.fromProto(resp)));\n }\n updateReviewWidget(r) {\n const request = r.toApiJson ? r : new UpdateReviewWidgetRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewWidgetService/UpdateReviewWidget\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getReviewWidget(r) {\n const request = r.toApiJson ? r : new GetReviewWidgetRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewWidgetService/GetReviewWidget\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetReviewWidgetResponse.fromProto(resp)));\n }\n getReviewWidgetById(r) {\n const request = r.toApiJson ? r : new GetReviewWidgetByIDRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewWidgetService/GetReviewWidgetByID\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetReviewWidgetByIDResponse.fromProto(resp)));\n }\n createReview(r) {\n const request = r.toApiJson ? r : new CreateReviewRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewWidgetService/CreateReview\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateReviewResponse.fromProto(resp)));\n }\n }\n ReviewWidgetApiService.ɵfac = function ReviewWidgetApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || ReviewWidgetApiService)();\n };\n ReviewWidgetApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ReviewWidgetApiService,\n factory: ReviewWidgetApiService.ɵfac,\n providedIn: 'root'\n });\n return ReviewWidgetApiService;\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 ReviewWidgetUsageApiService = /*#__PURE__*/(() => {\n class ReviewWidgetUsageApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 checkReviewWidgetUsage(r) {\n const request = r.toApiJson ? r : new CheckReviewWidgetUsageRequest(r);\n return this.http.post(this._host + \"/reputation.v1.ReviewWidgetUsageService/CheckReviewWidgetUsage\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CheckReviewWidgetUsageResponse.fromProto(resp)));\n }\n }\n ReviewWidgetUsageApiService.ɵfac = function ReviewWidgetUsageApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || ReviewWidgetUsageApiService)();\n };\n ReviewWidgetUsageApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: ReviewWidgetUsageApiService,\n factory: ReviewWidgetUsageApiService.ɵfac,\n providedIn: 'root'\n });\n return ReviewWidgetUsageApiService;\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 SourceApiService = /*#__PURE__*/(() => {\n class SourceApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 getBusinessSources(r) {\n const request = r.toApiJson ? r : new GetBusinessSourcesRequest(r);\n return this.http.post(this._host + \"/reputation.v1.SourceService/GetBusinessSources\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetBusinessSourcesResponse.fromProto(resp)));\n }\n getSourceDetails(r) {\n const request = r.toApiJson ? r : new GetSourceDetailsRequest(r);\n return this.http.post(this._host + \"/reputation.v1.SourceService/GetSourceDetails\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetSourceDetailsResponse.fromProto(resp)));\n }\n refreshBusinessSource(r) {\n const request = r.toApiJson ? r : new RefreshBusisinessSourceRequest(r);\n return this.http.post(this._host + \"/reputation.v1.SourceService/RefreshBusinessSource\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getReviewSourceInfo(r) {\n const request = r.toApiJson ? r : new GetReviewSourceInfoRequest(r);\n return this.http.post(this._host + \"/reputation.v1.SourceService/GetReviewSourceInfo\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetReviewSourceInfoResponse.fromProto(resp)));\n }\n getReviewSourceInfoInternal(r) {\n const request = r.toApiJson ? r : new GetReviewSourceInfoRequest(r);\n return this.http.post(this._host + \"/reputation.v1.SourceService/GetReviewSourceInfoInternal\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetReviewSourceInfoResponse.fromProto(resp)));\n }\n }\n SourceApiService.ɵfac = function SourceApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || SourceApiService)();\n };\n SourceApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: SourceApiService,\n factory: SourceApiService.ɵfac,\n providedIn: 'root'\n });\n return SourceApiService;\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 WhiteLabelDomainApiService = /*#__PURE__*/(() => {\n class WhiteLabelDomainApiService {\n constructor() {\n this.hostService = inject(HostService);\n this.http = inject(HttpClient);\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 getPartnerWhiteLabelDomain(r) {\n const request = r.toApiJson ? r : new GetPartnerWhiteLabelDomainRequest(r);\n return this.http.post(this._host + \"/reputation.v1.WhiteLabelDomainService/GetPartnerWhiteLabelDomain\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetPartnerWhiteLabelDomainResponse.fromProto(resp)));\n }\n }\n WhiteLabelDomainApiService.ɵfac = function WhiteLabelDomainApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || WhiteLabelDomainApiService)();\n };\n WhiteLabelDomainApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: WhiteLabelDomainApiService,\n factory: WhiteLabelDomainApiService.ɵfac,\n providedIn: 'root'\n });\n return WhiteLabelDomainApiService;\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// *********************************\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { Access, AccountApiService, ApproveReviewResponseRequest, BingMapsLocation, CanRespondToReviewRequest, CanRespondToReviewResponse, Channel, CheckReviewWidgetUsageRequest, CheckReviewWidgetUsageResponse, ConciergeReviewResponse, ConciergeReviewResponseApiService, CreateBrandReviewResponseTemplateRequest, CreateBusinessReviewResponseTemplateRequest, CreateDefaultReviewResponseTemplateRequest, CreateDigitalAgentReviewResponseTemplateRequest, CreatePartnerMarketReviewResponseTemplateRequest, CreateReviewCommentRequest, CreateReviewCommentResponse, CreateReviewRequest, CreateReviewRequestEmailTemplateRequest, CreateReviewRequestEmailTemplateResponse, CreateReviewRequestSMSTemplateRequest, CreateReviewRequestSMSTemplateResponse, CreateReviewResponse, CreateReviewResponseTemplateResponse, CreateReviewWidgetRequest, CreateReviewWidgetResponse, Customizations, CustomizationsOverallRatingDecimalPlaces, DaysOfWeek, DeleteBrandReviewResponseTemplateRequest, DeleteBusinessReviewResponseTemplateRequest, DeleteDefaultReviewResponseTemplateRequest, DeleteDigitalAgentReviewResponseTemplateRequest, DeletePartnerMarketReviewResponseTemplateRequest, DeleteReviewRequestTemplateRequest, EmailTemplateData, FieldMask, ForceRefreshListingRequest, GetBusinessSourcesRequest, GetBusinessSourcesResponse, GetLeaveReviewURLsRequest, GetLeaveReviewURLsResponse, GetLeaveReviewURLsResponseUrlsEntry, GetLimitRequest, GetLimitResponse, GetListingsRequest, GetListingsResponse, GetMultiNPSRequest, GetMultiNPSResponse, GetMultiThirdPartyReviewPublishSettingsRequest, GetMultiThirdPartyReviewPublishSettingsResponse, GetMultiThirdPartyReviewPublishSettingsResponseThirdPartyReviewPublishSettingsEntry, GetPartnerWhiteLabelDomainRequest, GetPartnerWhiteLabelDomainResponse, GetReviewRequestEmailTemplateRequest, GetReviewRequestEmailTemplateResponse, GetReviewRequestSMSTemplateRequest, GetReviewRequestSMSTemplateResponse, GetReviewResponseRequest, GetReviewResponseResponse, GetReviewSourceInfoRequest, GetReviewSourceInfoResponse, GetReviewWidgetByIDRequest, GetReviewWidgetByIDResponse, GetReviewWidgetByIDResponseLeaveReviewUrlsEntry, GetReviewWidgetRequest, GetReviewWidgetResponse, GetReviewsRequest, GetReviewsResponse, GetSMSEnabledRequest, GetSMSEnabledResponse, GetSourceDetailsRequest, GetSourceDetailsResponse, HostService, ImportNPSRequest, ImportNPSResponse, Interval, LeaveNetPromoterScoreRequest, LimitApiService, LimitType, ListBusinessReviewResponseTemplateRequest, ListBusinessReviewResponseTemplateResponse, ListNetPromoterScoresRequest, ListNetPromoterScoresRequestFilters, ListNetPromoterScoresResponse, ListReviewRequestEmailTemplatesRequest, ListReviewRequestEmailTemplatesRequestSearchOptions, ListReviewRequestEmailTemplatesRequestSortField, ListReviewRequestEmailTemplatesRequestSortOptions, ListReviewRequestEmailTemplatesResponse, ListWidgetReviewsRequest, ListWidgetReviewsRequestMinimumRating, ListWidgetReviewsResponse, Listing, ListingApiService, ListingIdentifier, ListingMatchQuality, LookupListingsRequest, LookupListingsResponse, LookupResponseForSource, MethodMetadata, NAP, NetPromoterScore, NetPromoterScoreApiService, NetPromoterScoreAttribute, PagedRequestOptions, PeriodDelay, ProvideFeedbackToReviewResponseRequest, Recommendation, RefreshBusisinessSourceRequest, ResendReviewRequest, Review, ReviewActionStatus, ReviewApiService, ReviewComment, ReviewDeletedStatus, ReviewHistory, ReviewHistoryRequest, ReviewHistoryResponse, ReviewIdentifier, ReviewRequestApiService, ReviewRequestTemplate, ReviewRequestTemplateType, ReviewResponseTemplate, ReviewResponseTemplateApiService, ReviewSourceInfo, ReviewStats, ReviewWidget, ReviewWidgetApiService, ReviewWidgetLayout, ReviewWidgetUsageApiService, Reviewer, SDKMetadata, SMSState, SMSTemplateData, ScheduleReviewRequestRequest, ScheduleReviewRequestRequestScheduleConditions, ScoreCategory, SearchBingMapsRequest, SearchBingMapsResponse, SendPreviewEmailRequest, SendReviewRequestEmailRequest, SendReviewRequestRequest, SendReviewRequestSmsRequest, SetDefaultReviewRequestTemplateRequest, SortDirection, Source, SourceApiService, SourceAttributeScope, SourceDetails, SourceHTML, SourceIcon, SourceListingInteractionHTML, SourceSubmitListing, Styling, StylingTheme, SubmitListingRequest, SubmitListingResponse, SuggestReviewResponseRequest, SuggestReviewResponseResponse, TemplateType, ThirdPartyPublishedStatus, ThirdPartyReviewPublishSettings, Toggles, UpdateBrandReviewResponseTemplateRequest, UpdateBusinessReviewResponseTemplateRequest, UpdateDigitalAgentReviewResponseTemplateRequest, UpdateListingRequest, UpdateReviewCommentRequest, UpdateReviewCommentResponse, UpdateReviewRequest, UpdateReviewRequestEmailTemplateRequest, UpdateReviewRequestSMSTemplateRequest, UpdateReviewResponse, UpdateReviewUserDeletedInfoRequest, UpdateReviewWidgetRequest, WhiteLabelDomainApiService };\n"],"mappings":"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","names":["enumStringToValue$9","enumRef","value","enumStringToValue$8","enumStringToValue$1","enumStringToValue","Recommendation","ReviewActionStatus","ReviewDeletedStatus","ThirdPartyPublishedStatus","Channel","DaysOfWeek","Interval","ScoreCategory","ListingMatchQuality","ReviewRequestTemplateType","SortDirection","ListReviewRequestEmailTemplatesRequestSortField","TemplateType","FieldMask","Review","ReviewComment","ReviewHistory","ReviewIdentifier","Reviewer","ThirdPartyReviewPublishSettings","GetLeaveReviewURLsRequest","GetLeaveReviewURLsResponse","PeriodDelay","ReviewRequestTemplate","ScheduleReviewRequestRequestScheduleConditions","ScheduleReviewRequestRequest","ConciergeReviewResponse","ListNetPromoterScoresRequestFilters","GetMultiNPSRequest","GetMultiNPSResponse","ImportNPSRequest","ImportNPSResponse","LeaveNetPromoterScoreRequest","ListNetPromoterScoresRequest","ListNetPromoterScoresResponse","NetPromoterScore","NetPromoterScoreAttribute","ResendReviewRequest","ApproveReviewResponseRequest","SourceAttributeScope","BingMapsLocation","CanRespondToReviewRequest","CanRespondToReviewResponse","CreateBrandReviewResponseTemplateRequest","CreateBusinessReviewResponseTemplateRequest","CreateDefaultReviewResponseTemplateRequest","CreateDigitalAgentReviewResponseTemplateRequest","CreatePartnerMarketReviewResponseTemplateRequest","CreateReviewCommentRequest","CreateReviewCommentResponse","CreateReviewRequestEmailTemplateRequest","CreateReviewRequestEmailTemplateResponse","CreateReviewRequestSMSTemplateRequest","CreateReviewRequestSMSTemplateResponse","CreateReviewResponseTemplateResponse","DeleteBrandReviewResponseTemplateRequest","DeleteBusinessReviewResponseTemplateRequest","DeleteDefaultReviewResponseTemplateRequest","DeleteDigitalAgentReviewResponseTemplateRequest","DeletePartnerMarketReviewResponseTemplateRequest","DeleteReviewRequestTemplateRequest","EmailTemplateData","ForceRefreshListingRequest","GetBusinessSourcesRequest","GetBusinessSourcesResponse","GetListingsRequest","GetListingsResponse","GetMultiThirdPartyReviewPublishSettingsRequest","GetMultiThirdPartyReviewPublishSettingsResponse","GetReviewRequestEmailTemplateRequest","GetReviewRequestEmailTemplateResponse","GetReviewRequestSMSTemplateRequest","GetReviewRequestSMSTemplateResponse","GetReviewResponseRequest","GetReviewResponseResponse","GetReviewSourceInfoRequest","GetReviewSourceInfoResponse","GetReviewsRequest","GetReviewsResponse","GetSourceDetailsRequest","GetSourceDetailsResponse","SourceIcon","ListBusinessReviewResponseTemplateRequest","ListBusinessReviewResponseTemplateResponse","ListReviewRequestEmailTemplatesRequest","ListReviewRequestEmailTemplatesResponse","Listing","ListingIdentifier","SourceListingInteractionHTML","LookupListingsRequest","LookupListingsResponse","LookupResponseForSource","NAP","PagedRequestOptions","ProvideFeedbackToReviewResponseRequest","RefreshBusisinessSourceRequest","ReviewHistoryRequest","ReviewHistoryResponse","ReviewResponseTemplate","ReviewSourceInfo","SMSTemplateData","SearchBingMapsRequest","SearchBingMapsResponse","ListReviewRequestEmailTemplatesRequestSearchOptions","SendPreviewEmailRequest","SendReviewRequestEmailRequest","SendReviewRequestRequest","SendReviewRequestSmsRequest","SetDefaultReviewRequestTemplateRequest","ListReviewRequestEmailTemplatesRequestSortOptions","Source","SourceDetails","SourceSubmitListing","SubmitListingRequest","SubmitListingResponse","SuggestReviewResponseRequest","SuggestReviewResponseResponse","UpdateBrandReviewResponseTemplateRequest","UpdateBusinessReviewResponseTemplateRequest","UpdateDigitalAgentReviewResponseTemplateRequest","UpdateListingRequest","UpdateReviewCommentRequest","UpdateReviewCommentResponse","UpdateReviewRequest","UpdateReviewRequestEmailTemplateRequest","UpdateReviewRequestSMSTemplateRequest","UpdateReviewResponse","UpdateReviewUserDeletedInfoRequest","environment","hostMap","HostService","ConciergeReviewResponseApiService","ListingApiService","NetPromoterScoreApiService","ReviewRequestApiService","ReviewResponseTemplateApiService","ReviewApiService","SourceApiService","init_vendasta_reputation","__esmMin","init_core","init_http","init_operators","_FieldMask","proto","m","kwargs","toReturn","_Review","_ReviewComment","_ReviewHistory","_ReviewIdentifier","_Reviewer","_ThirdPartyReviewPublishSettings","_GetLeaveReviewURLsRequest","_GetLeaveReviewURLsResponse","obj","k","_PeriodDelay","_ReviewRequestTemplate","_ScheduleReviewRequestRequestScheduleConditions","v","_ScheduleReviewRequestRequest","_ConciergeReviewResponse","_ListNetPromoterScoresRequestFilters","_GetMultiNPSRequest","_GetMultiNPSResponse","_ImportNPSRequest","_ImportNPSResponse","_LeaveNetPromoterScoreRequest","_ListNetPromoterScoresRequest","_ListNetPromoterScoresResponse","_NetPromoterScore","_NetPromoterScoreAttribute","_ResendReviewRequest","_ApproveReviewResponseRequest","_SourceAttributeScope","_BingMapsLocation","_CanRespondToReviewRequest","_CanRespondToReviewResponse","_CreateBrandReviewResponseTemplateRequest","_CreateBusinessReviewResponseTemplateRequest","_CreateDefaultReviewResponseTemplateRequest","_CreateDigitalAgentReviewResponseTemplateRequest","_CreatePartnerMarketReviewResponseTemplateRequest","_CreateReviewCommentRequest","_CreateReviewCommentResponse","_CreateReviewRequestEmailTemplateRequest","_CreateReviewRequestEmailTemplateResponse","_CreateReviewRequestSMSTemplateRequest","_CreateReviewRequestSMSTemplateResponse","_CreateReviewResponseTemplateResponse","_DeleteBrandReviewResponseTemplateRequest","_DeleteBusinessReviewResponseTemplateRequest","_DeleteDefaultReviewResponseTemplateRequest","_DeleteDigitalAgentReviewResponseTemplateRequest","_DeletePartnerMarketReviewResponseTemplateRequest","_DeleteReviewRequestTemplateRequest","_EmailTemplateData","_ForceRefreshListingRequest","_GetBusinessSourcesRequest","_GetBusinessSourcesResponse","_GetListingsRequest","_GetListingsResponse","_GetMultiThirdPartyReviewPublishSettingsRequest","_GetMultiThirdPartyReviewPublishSettingsResponse","_GetReviewRequestEmailTemplateRequest","_GetReviewRequestEmailTemplateResponse","_GetReviewRequestSMSTemplateRequest","_GetReviewRequestSMSTemplateResponse","_GetReviewResponseRequest","_GetReviewResponseResponse","_GetReviewSourceInfoRequest","_GetReviewSourceInfoResponse","_GetReviewsRequest","_GetReviewsResponse","_GetSourceDetailsRequest","_GetSourceDetailsResponse","_SourceIcon","_ListBusinessReviewResponseTemplateRequest","_ListBusinessReviewResponseTemplateResponse","_ListReviewRequestEmailTemplatesRequest","_ListReviewRequestEmailTemplatesResponse","_Listing","_ListingIdentifier","_SourceListingInteractionHTML","_LookupListingsRequest","i","_LookupListingsResponse","_LookupResponseForSource","_NAP","_PagedRequestOptions","_ProvideFeedbackToReviewResponseRequest","_RefreshBusisinessSourceRequest","_ReviewHistoryRequest","_ReviewHistoryResponse","_ReviewResponseTemplate","_ReviewSourceInfo","_SMSTemplateData","_SearchBingMapsRequest","_SearchBingMapsResponse","_ListReviewRequestEmailTemplatesRequestSearchOptions","_SendPreviewEmailRequest","_SendReviewRequestEmailRequest","_SendReviewRequestRequest","_SendReviewRequestSmsRequest","_SetDefaultReviewRequestTemplateRequest","_ListReviewRequestEmailTemplatesRequestSortOptions","_Source","_SourceDetails","_SourceSubmitListing","_SubmitListingRequest","_SubmitListingResponse","_SuggestReviewResponseRequest","_SuggestReviewResponseResponse","_UpdateBrandReviewResponseTemplateRequest","_UpdateBusinessReviewResponseTemplateRequest","_UpdateDigitalAgentReviewResponseTemplateRequest","_UpdateListingRequest","_UpdateReviewCommentRequest","_UpdateReviewCommentResponse","_UpdateReviewRequest","_UpdateReviewRequestEmailTemplateRequest","_UpdateReviewRequestSMSTemplateRequest","_UpdateReviewResponse","_UpdateReviewUserDeletedInfoRequest","__ngFactoryType__","ɵɵdefineInjectable","inject","HttpClient","HttpHeaders","r","request","map","resp","__spreadProps","__spreadValues"],"x_google_ignoreList":[0]}