{"version":3,"sources":["node_modules/@vendasta/sales-orders/fesm2020/vendasta-sales-orders.mjs"],"sourcesContent":["import * as i0 from '@angular/core';\nimport { Injectable } from '@angular/core';\nimport { map } from 'rxjs/operators';\nimport * as i1 from '@angular/common/http';\nimport { HttpHeaders } from '@angular/common/http';\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar Currency = /*#__PURE__*/function (Currency) {\n Currency[Currency[\"USD\"] = 0] = \"USD\";\n Currency[Currency[\"CAD\"] = 1] = \"CAD\";\n Currency[Currency[\"EUR\"] = 2] = \"EUR\";\n Currency[Currency[\"AUD\"] = 3] = \"AUD\";\n Currency[Currency[\"GBP\"] = 4] = \"GBP\";\n Currency[Currency[\"NZD\"] = 5] = \"NZD\";\n Currency[Currency[\"ZAR\"] = 6] = \"ZAR\";\n return Currency;\n}(Currency || {});\nvar DurationPeriod = /*#__PURE__*/function (DurationPeriod) {\n DurationPeriod[DurationPeriod[\"UNSPECIFIED\"] = 0] = \"UNSPECIFIED\";\n DurationPeriod[DurationPeriod[\"MONTH\"] = 1] = \"MONTH\";\n DurationPeriod[DurationPeriod[\"YEAR\"] = 2] = \"YEAR\";\n DurationPeriod[DurationPeriod[\"DAY\"] = 3] = \"DAY\";\n DurationPeriod[DurationPeriod[\"WEEK\"] = 4] = \"WEEK\";\n return DurationPeriod;\n}(DurationPeriod || {});\nvar RevenuePeriod = /*#__PURE__*/function (RevenuePeriod) {\n RevenuePeriod[RevenuePeriod[\"ONETIME\"] = 0] = \"ONETIME\";\n RevenuePeriod[RevenuePeriod[\"DAILY\"] = 1] = \"DAILY\";\n RevenuePeriod[RevenuePeriod[\"WEEKLY\"] = 2] = \"WEEKLY\";\n RevenuePeriod[RevenuePeriod[\"BIWEEKLY\"] = 3] = \"BIWEEKLY\";\n RevenuePeriod[RevenuePeriod[\"MONTHLY\"] = 4] = \"MONTHLY\";\n RevenuePeriod[RevenuePeriod[\"YEARLY\"] = 5] = \"YEARLY\";\n return RevenuePeriod;\n}(RevenuePeriod || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar ActivationStatus = /*#__PURE__*/function (ActivationStatus) {\n ActivationStatus[ActivationStatus[\"PENDING\"] = 0] = \"PENDING\";\n ActivationStatus[ActivationStatus[\"ACTIVATED\"] = 1] = \"ACTIVATED\";\n ActivationStatus[ActivationStatus[\"ERRORED\"] = 2] = \"ERRORED\";\n ActivationStatus[ActivationStatus[\"ALREADY_ACTIVATED\"] = 3] = \"ALREADY_ACTIVATED\";\n ActivationStatus[ActivationStatus[\"IGNORED_ERRORS\"] = 4] = \"IGNORED_ERRORS\";\n ActivationStatus[ActivationStatus[\"CANCELED\"] = 5] = \"CANCELED\";\n ActivationStatus[ActivationStatus[\"DEACTIVATED\"] = 6] = \"DEACTIVATED\";\n ActivationStatus[ActivationStatus[\"UNKNOWN\"] = 7] = \"UNKNOWN\";\n return ActivationStatus;\n}(ActivationStatus || {});\nvar FieldType = /*#__PURE__*/function (FieldType) {\n FieldType[FieldType[\"NOT_SPECIFIED\"] = 0] = \"NOT_SPECIFIED\";\n FieldType[FieldType[\"TEXT\"] = 1] = \"TEXT\";\n FieldType[FieldType[\"TEXTAREA\"] = 2] = \"TEXTAREA\";\n FieldType[FieldType[\"DROPDOWN\"] = 3] = \"DROPDOWN\";\n FieldType[FieldType[\"CHECKBOX\"] = 4] = \"CHECKBOX\";\n FieldType[FieldType[\"FILE\"] = 5] = \"FILE\";\n FieldType[FieldType[\"VBCUSER\"] = 6] = \"VBCUSER\";\n return FieldType;\n}(FieldType || {});\nvar FulfillmentOrderStatus = /*#__PURE__*/function (FulfillmentOrderStatus) {\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_STATUS_UNSET\"] = 0] = \"FULFILLMENT_STATUS_UNSET\";\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_STATUS_DETAILS_NEEDED\"] = 1] = \"FULFILLMENT_STATUS_DETAILS_NEEDED\";\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_STATUS_IN_REVIEW\"] = 2] = \"FULFILLMENT_STATUS_IN_REVIEW\";\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_STATUS_IN_PROGRESS\"] = 3] = \"FULFILLMENT_STATUS_IN_PROGRESS\";\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_STATUS_COMPLETED\"] = 4] = \"FULFILLMENT_STATUS_COMPLETED\";\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_STATUS_CANCELLED\"] = 5] = \"FULFILLMENT_STATUS_CANCELLED\";\n return FulfillmentOrderStatus;\n}(FulfillmentOrderStatus || {});\nvar Origin = /*#__PURE__*/function (Origin) {\n Origin[Origin[\"SSC\"] = 0] = \"SSC\";\n Origin[Origin[\"VBC\"] = 1] = \"VBC\";\n Origin[Origin[\"PC\"] = 2] = \"PC\";\n Origin[Origin[\"IMPORT\"] = 3] = \"IMPORT\";\n return Origin;\n}(Origin || {});\nvar Status = /*#__PURE__*/function (Status) {\n Status[Status[\"SUBMITTED\"] = 0] = \"SUBMITTED\";\n Status[Status[\"APPROVED\"] = 1] = \"APPROVED\";\n Status[Status[\"DECLINED\"] = 2] = \"DECLINED\";\n Status[Status[\"DRAFTED\"] = 3] = \"DRAFTED\";\n Status[Status[\"FULFILLED\"] = 4] = \"FULFILLED\";\n Status[Status[\"PROCESSING\"] = 5] = \"PROCESSING\";\n Status[Status[\"ACTIVATION_ERRORS\"] = 6] = \"ACTIVATION_ERRORS\";\n Status[Status[\"ARCHIVED\"] = 7] = \"ARCHIVED\";\n Status[Status[\"SUBMITTED_FOR_CUSTOMER_APPROVAL\"] = 8] = \"SUBMITTED_FOR_CUSTOMER_APPROVAL\";\n Status[Status[\"CANCELLATION_REQUESTED\"] = 9] = \"CANCELLATION_REQUESTED\";\n Status[Status[\"CANCELLED\"] = 10] = \"CANCELLED\";\n Status[Status[\"SCHEDULED_ACTIVATION\"] = 11] = \"SCHEDULED_ACTIVATION\";\n Status[Status[\"AWAITING_PAYMENT\"] = 12] = \"AWAITING_PAYMENT\";\n Status[Status[\"PROCESSING_PAYMENT\"] = 13] = \"PROCESSING_PAYMENT\";\n Status[Status[\"RESUBMITTED\"] = 14] = \"RESUBMITTED\";\n return Status;\n}(Status || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar SubscriptionLocation = /*#__PURE__*/function (SubscriptionLocation) {\n SubscriptionLocation[SubscriptionLocation[\"SUBSCRIPTION_LOCATION_NOT_USED\"] = 0] = \"SUBSCRIPTION_LOCATION_NOT_USED\";\n SubscriptionLocation[SubscriptionLocation[\"SUBSCRIPTION_LOCATION_PARTNER_CENTER\"] = 1] = \"SUBSCRIPTION_LOCATION_PARTNER_CENTER\";\n SubscriptionLocation[SubscriptionLocation[\"SUBSCRIPTION_LOCATION_SALES_CENTER\"] = 2] = \"SUBSCRIPTION_LOCATION_SALES_CENTER\";\n SubscriptionLocation[SubscriptionLocation[\"SUBSCRIPTION_LOCATION_BUSINESS_CENTER\"] = 3] = \"SUBSCRIPTION_LOCATION_BUSINESS_CENTER\";\n return SubscriptionLocation;\n}(SubscriptionLocation || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar AuxiliaryDataFieldType = /*#__PURE__*/function (AuxiliaryDataFieldType) {\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_INVALID\"] = 0] = \"AUXILIARY_DATA_FIELD_TYPE_INVALID\";\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_STRING\"] = 1] = \"AUXILIARY_DATA_FIELD_TYPE_STRING\";\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_INTEGER\"] = 2] = \"AUXILIARY_DATA_FIELD_TYPE_INTEGER\";\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_DATE\"] = 3] = \"AUXILIARY_DATA_FIELD_TYPE_DATE\";\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_DROPDOWN\"] = 4] = \"AUXILIARY_DATA_FIELD_TYPE_DROPDOWN\";\n AuxiliaryDataFieldType[AuxiliaryDataFieldType[\"AUXILIARY_DATA_FIELD_TYPE_CURRENCY\"] = 5] = \"AUXILIARY_DATA_FIELD_TYPE_CURRENCY\";\n return AuxiliaryDataFieldType;\n}(AuxiliaryDataFieldType || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar InitiateOrderExportRequestDataFormatOption = /*#__PURE__*/function (InitiateOrderExportRequestDataFormatOption) {\n InitiateOrderExportRequestDataFormatOption[InitiateOrderExportRequestDataFormatOption[\"ORDERS_PER_ROW\"] = 0] = \"ORDERS_PER_ROW\";\n InitiateOrderExportRequestDataFormatOption[InitiateOrderExportRequestDataFormatOption[\"PRODUCTS_PER_ROW\"] = 1] = \"PRODUCTS_PER_ROW\";\n InitiateOrderExportRequestDataFormatOption[InitiateOrderExportRequestDataFormatOption[\"ORDERS_PER_ROW_SALES\"] = 2] = \"ORDERS_PER_ROW_SALES\";\n InitiateOrderExportRequestDataFormatOption[InitiateOrderExportRequestDataFormatOption[\"PRODUCTS_PER_ROW_SALES\"] = 3] = \"PRODUCTS_PER_ROW_SALES\";\n InitiateOrderExportRequestDataFormatOption[InitiateOrderExportRequestDataFormatOption[\"ORDERS_PER_ROW_BUYER\"] = 4] = \"ORDERS_PER_ROW_BUYER\";\n InitiateOrderExportRequestDataFormatOption[InitiateOrderExportRequestDataFormatOption[\"PRODUCTS_PER_ROW_BUYER\"] = 5] = \"PRODUCTS_PER_ROW_BUYER\";\n return InitiateOrderExportRequestDataFormatOption;\n}(InitiateOrderExportRequestDataFormatOption || {});\nvar ListSalesOrderRequestSortDirection = /*#__PURE__*/function (ListSalesOrderRequestSortDirection) {\n ListSalesOrderRequestSortDirection[ListSalesOrderRequestSortDirection[\"ASCENDING\"] = 0] = \"ASCENDING\";\n ListSalesOrderRequestSortDirection[ListSalesOrderRequestSortDirection[\"DESCENDING\"] = 1] = \"DESCENDING\";\n return ListSalesOrderRequestSortDirection;\n}(ListSalesOrderRequestSortDirection || {});\nvar ListCustomerSalesOrderRequestSortDirection = /*#__PURE__*/function (ListCustomerSalesOrderRequestSortDirection) {\n ListCustomerSalesOrderRequestSortDirection[ListCustomerSalesOrderRequestSortDirection[\"ASCENDING\"] = 0] = \"ASCENDING\";\n ListCustomerSalesOrderRequestSortDirection[ListCustomerSalesOrderRequestSortDirection[\"DESCENDING\"] = 1] = \"DESCENDING\";\n return ListCustomerSalesOrderRequestSortDirection;\n}(ListCustomerSalesOrderRequestSortDirection || {});\nvar InitiateOrderExportRequestSortDirection = /*#__PURE__*/function (InitiateOrderExportRequestSortDirection) {\n InitiateOrderExportRequestSortDirection[InitiateOrderExportRequestSortDirection[\"ASCENDING\"] = 0] = \"ASCENDING\";\n InitiateOrderExportRequestSortDirection[InitiateOrderExportRequestSortDirection[\"DESCENDING\"] = 1] = \"DESCENDING\";\n return InitiateOrderExportRequestSortDirection;\n}(InitiateOrderExportRequestSortDirection || {});\nvar ListCustomerSalesOrderRequestSortField = /*#__PURE__*/function (ListCustomerSalesOrderRequestSortField) {\n ListCustomerSalesOrderRequestSortField[ListCustomerSalesOrderRequestSortField[\"REQUESTED_ACTIVATION\"] = 0] = \"REQUESTED_ACTIVATION\";\n ListCustomerSalesOrderRequestSortField[ListCustomerSalesOrderRequestSortField[\"CREATED\"] = 1] = \"CREATED\";\n ListCustomerSalesOrderRequestSortField[ListCustomerSalesOrderRequestSortField[\"STATUS\"] = 2] = \"STATUS\";\n ListCustomerSalesOrderRequestSortField[ListCustomerSalesOrderRequestSortField[\"EXPIRY_DATE\"] = 3] = \"EXPIRY_DATE\";\n return ListCustomerSalesOrderRequestSortField;\n}(ListCustomerSalesOrderRequestSortField || {});\nvar InitiateOrderExportRequestSortField = /*#__PURE__*/function (InitiateOrderExportRequestSortField) {\n InitiateOrderExportRequestSortField[InitiateOrderExportRequestSortField[\"REQUESTED_ACTIVATION\"] = 0] = \"REQUESTED_ACTIVATION\";\n InitiateOrderExportRequestSortField[InitiateOrderExportRequestSortField[\"CREATED\"] = 1] = \"CREATED\";\n InitiateOrderExportRequestSortField[InitiateOrderExportRequestSortField[\"STATUS\"] = 2] = \"STATUS\";\n InitiateOrderExportRequestSortField[InitiateOrderExportRequestSortField[\"EXPIRY_DATE\"] = 3] = \"EXPIRY_DATE\";\n return InitiateOrderExportRequestSortField;\n}(InitiateOrderExportRequestSortField || {});\nvar ListSalesOrderRequestSortField = /*#__PURE__*/function (ListSalesOrderRequestSortField) {\n ListSalesOrderRequestSortField[ListSalesOrderRequestSortField[\"REQUESTED_ACTIVATION\"] = 0] = \"REQUESTED_ACTIVATION\";\n ListSalesOrderRequestSortField[ListSalesOrderRequestSortField[\"CREATED\"] = 1] = \"CREATED\";\n ListSalesOrderRequestSortField[ListSalesOrderRequestSortField[\"STATUS\"] = 2] = \"STATUS\";\n ListSalesOrderRequestSortField[ListSalesOrderRequestSortField[\"EXPIRY_DATE\"] = 3] = \"EXPIRY_DATE\";\n return ListSalesOrderRequestSortField;\n}(ListSalesOrderRequestSortField || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar ContentType = /*#__PURE__*/function (ContentType) {\n ContentType[ContentType[\"CONTENT_TYPE_TEXT_PLAIN\"] = 0] = \"CONTENT_TYPE_TEXT_PLAIN\";\n ContentType[ContentType[\"CONTENT_TYPE_TEXT_HTML\"] = 1] = \"CONTENT_TYPE_TEXT_HTML\";\n return ContentType;\n}(ContentType || {});\nvar DocumentEventType = /*#__PURE__*/function (DocumentEventType) {\n DocumentEventType[DocumentEventType[\"DOCUMENT_EVENT_TYPE_INVALID\"] = 0] = \"DOCUMENT_EVENT_TYPE_INVALID\";\n DocumentEventType[DocumentEventType[\"DOCUMENT_EVENT_TYPE_SENT_BY_EMAIL\"] = 1] = \"DOCUMENT_EVENT_TYPE_SENT_BY_EMAIL\";\n DocumentEventType[DocumentEventType[\"DOCUMENT_EVENT_TYPE_VIEWED_BY_RECIPIENT\"] = 2] = \"DOCUMENT_EVENT_TYPE_VIEWED_BY_RECIPIENT\";\n DocumentEventType[DocumentEventType[\"DOCUMENT_EVENT_TYPE_FEEDBACK_FROM_RECIPIENT\"] = 3] = \"DOCUMENT_EVENT_TYPE_FEEDBACK_FROM_RECIPIENT\";\n DocumentEventType[DocumentEventType[\"DOCUMENT_EVENT_TYPE_APPROVED_BY_RECIPIENT\"] = 4] = \"DOCUMENT_EVENT_TYPE_APPROVED_BY_RECIPIENT\";\n DocumentEventType[DocumentEventType[\"DOCUMENT_EVENT_TYPE_INTERNAL_REVIEW_REQUESTED\"] = 5] = \"DOCUMENT_EVENT_TYPE_INTERNAL_REVIEW_REQUESTED\";\n DocumentEventType[DocumentEventType[\"DOCUMENT_EVENT_TYPE_COMMENT_FROM_INTERNAL_USER\"] = 6] = \"DOCUMENT_EVENT_TYPE_COMMENT_FROM_INTERNAL_USER\";\n DocumentEventType[DocumentEventType[\"DOCUMENT_EVENT_TYPE_REVIEWED_BY_INTERNAL_USER\"] = 7] = \"DOCUMENT_EVENT_TYPE_REVIEWED_BY_INTERNAL_USER\";\n DocumentEventType[DocumentEventType[\"DOCUMENT_EVENT_TYPE_UNLOCK_DOCUMENT\"] = 8] = \"DOCUMENT_EVENT_TYPE_UNLOCK_DOCUMENT\";\n return DocumentEventType;\n}(DocumentEventType || {});\nvar DocumentShareType = /*#__PURE__*/function (DocumentShareType) {\n DocumentShareType[DocumentShareType[\"DOCUMENT_SHARE_TYPE_INVALID\"] = 0] = \"DOCUMENT_SHARE_TYPE_INVALID\";\n DocumentShareType[DocumentShareType[\"DOCUMENT_SHARE_TYPE_GLOBAL\"] = 1] = \"DOCUMENT_SHARE_TYPE_GLOBAL\";\n DocumentShareType[DocumentShareType[\"DOCUMENT_SHARE_TYPE_ORGANIZATION\"] = 2] = \"DOCUMENT_SHARE_TYPE_ORGANIZATION\";\n return DocumentShareType;\n}(DocumentShareType || {});\nvar DocumentStatus = /*#__PURE__*/function (DocumentStatus) {\n DocumentStatus[DocumentStatus[\"DOCUMENT_STATUS_INVALID\"] = 0] = \"DOCUMENT_STATUS_INVALID\";\n DocumentStatus[DocumentStatus[\"DOCUMENT_STATUS_SENT\"] = 1] = \"DOCUMENT_STATUS_SENT\";\n DocumentStatus[DocumentStatus[\"DOCUMENT_STATUS_VIEWED_BY_RECIPIENT\"] = 2] = \"DOCUMENT_STATUS_VIEWED_BY_RECIPIENT\";\n DocumentStatus[DocumentStatus[\"DOCUMENT_STATUS_FEEDBACK_FROM_RECIPIENT\"] = 3] = \"DOCUMENT_STATUS_FEEDBACK_FROM_RECIPIENT\";\n DocumentStatus[DocumentStatus[\"DOCUMENT_STATUS_APPROVED_BY_RECIPIENT\"] = 4] = \"DOCUMENT_STATUS_APPROVED_BY_RECIPIENT\";\n DocumentStatus[DocumentStatus[\"DOCUMENT_STATUS_ARCHIVED\"] = 5] = \"DOCUMENT_STATUS_ARCHIVED\";\n DocumentStatus[DocumentStatus[\"DOCUMENT_STATUS_DELETED\"] = 6] = \"DOCUMENT_STATUS_DELETED\";\n DocumentStatus[DocumentStatus[\"DOCUMENT_STATUS_PENDING_REVIEW\"] = 7] = \"DOCUMENT_STATUS_PENDING_REVIEW\";\n DocumentStatus[DocumentStatus[\"DOCUMENT_STATUS_REVIEWED\"] = 8] = \"DOCUMENT_STATUS_REVIEWED\";\n DocumentStatus[DocumentStatus[\"DOCUMENT_STATUS_DRAFT\"] = 50] = \"DOCUMENT_STATUS_DRAFT\";\n return DocumentStatus;\n}(DocumentStatus || {});\nvar DocumentType = /*#__PURE__*/function (DocumentType) {\n DocumentType[DocumentType[\"DOCUMENT_TYPE_INVALID\"] = 0] = \"DOCUMENT_TYPE_INVALID\";\n DocumentType[DocumentType[\"DOCUMENT_TYPE_PROPOSAL\"] = 1] = \"DOCUMENT_TYPE_PROPOSAL\";\n DocumentType[DocumentType[\"DOCUMENT_TYPE_PROPOSAL_TEMPLATE\"] = 2] = \"DOCUMENT_TYPE_PROPOSAL_TEMPLATE\";\n DocumentType[DocumentType[\"DOCUMENT_TYPE_PAGE_TEMPLATE\"] = 3] = \"DOCUMENT_TYPE_PAGE_TEMPLATE\";\n DocumentType[DocumentType[\"DOCUMENT_TYPE_WIDGET_TEMPLATE\"] = 4] = \"DOCUMENT_TYPE_WIDGET_TEMPLATE\";\n return DocumentType;\n}(DocumentType || {});\nvar OrganizationType = /*#__PURE__*/function (OrganizationType) {\n OrganizationType[OrganizationType[\"ORGANIZATION_TYPE_INVALID\"] = 0] = \"ORGANIZATION_TYPE_INVALID\";\n OrganizationType[OrganizationType[\"ORGANIZATION_TYPE_PARTNER\"] = 1] = \"ORGANIZATION_TYPE_PARTNER\";\n OrganizationType[OrganizationType[\"ORGANIZATION_TYPE_SMB\"] = 2] = \"ORGANIZATION_TYPE_SMB\";\n return OrganizationType;\n}(OrganizationType || {});\nvar Orientation = /*#__PURE__*/function (Orientation) {\n Orientation[Orientation[\"ORIENTATION_PORTRAIT\"] = 0] = \"ORIENTATION_PORTRAIT\";\n Orientation[Orientation[\"ORIENTATION_LANDSCAPE\"] = 1] = \"ORIENTATION_LANDSCAPE\";\n return Orientation;\n}(Orientation || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums Index.\n// *********************************\n\nfunction enumStringToValue$d(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass LineItemAppKey {\n static fromProto(proto) {\n let m = new LineItemAppKey();\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.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n if (typeof this.editionId !== 'undefined') {\n toReturn['editionId'] = this.editionId;\n }\n if (typeof this.packageId !== 'undefined') {\n toReturn['packageId'] = this.packageId;\n }\n if (typeof this.packageInstanceId !== 'undefined') {\n toReturn['packageInstanceId'] = this.packageInstanceId;\n }\n return toReturn;\n }\n}\nclass BillingPeriod {\n static fromProto(proto) {\n let m = new BillingPeriod();\n m = Object.assign(m, proto);\n if (proto.startDate) {\n m.startDate = new Date(proto.startDate);\n }\n if (proto.endDate) {\n m.endDate = new Date(proto.endDate);\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.startDate !== 'undefined' && this.startDate !== null) {\n toReturn['startDate'] = 'toApiJson' in this.startDate ? this.startDate.toApiJson() : this.startDate;\n }\n if (typeof this.endDate !== 'undefined' && this.endDate !== null) {\n toReturn['endDate'] = 'toApiJson' in this.endDate ? this.endDate.toApiJson() : this.endDate;\n }\n return toReturn;\n }\n}\nclass Cost {\n static fromProto(proto) {\n let m = new Cost();\n m = Object.assign(m, proto);\n if (proto.customPrice) {\n m.customPrice = parseInt(proto.customPrice, 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.customPrice !== 'undefined') {\n toReturn['customPrice'] = this.customPrice;\n }\n return toReturn;\n }\n}\nclass CustomPriceMapping {\n static fromProto(proto) {\n let m = new CustomPriceMapping();\n m = Object.assign(m, proto);\n if (proto.customPrice) {\n m.customPrice = parseInt(proto.customPrice, 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.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.customPrice !== 'undefined') {\n toReturn['customPrice'] = this.customPrice;\n }\n return toReturn;\n }\n}\nclass Duration {\n static fromProto(proto) {\n let m = new Duration();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = parseInt(proto.value, 10);\n }\n if (proto.duration) {\n m.duration = enumStringToValue$d(DurationPeriod, proto.duration);\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.value !== 'undefined') {\n toReturn['value'] = this.value;\n }\n if (typeof this.duration !== 'undefined') {\n toReturn['duration'] = this.duration;\n }\n return toReturn;\n }\n}\nclass LineItem {\n static fromProto(proto) {\n let m = new LineItem();\n m = Object.assign(m, proto);\n if (proto.appKey) {\n m.appKey = LineItemAppKey.fromProto(proto.appKey);\n }\n if (proto.currency) {\n m.currency = enumStringToValue$d(Currency, proto.currency);\n }\n if (proto.initialRevenue) {\n m.initialRevenue = Revenue.fromProto(proto.initialRevenue);\n }\n if (proto.currentRevenue) {\n m.currentRevenue = Revenue.fromProto(proto.currentRevenue);\n }\n if (proto.quantity) {\n m.quantity = parseInt(proto.quantity, 10);\n }\n if (proto.cost) {\n m.cost = Cost.fromProto(proto.cost);\n }\n if (proto.customPrices) {\n m.customPrices = proto.customPrices.map(CustomPriceMapping.fromProto);\n }\n if (proto.billingPeriod) {\n m.billingPeriod = BillingPeriod.fromProto(proto.billingPeriod);\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.appKey !== 'undefined' && this.appKey !== null) {\n toReturn['appKey'] = 'toApiJson' in this.appKey ? this.appKey.toApiJson() : this.appKey;\n }\n if (typeof this.packageId !== 'undefined') {\n toReturn['packageId'] = this.packageId;\n }\n if (typeof this.currency !== 'undefined') {\n toReturn['currency'] = this.currency;\n }\n if (typeof this.initialRevenue !== 'undefined' && this.initialRevenue !== null) {\n toReturn['initialRevenue'] = 'toApiJson' in this.initialRevenue ? this.initialRevenue.toApiJson() : this.initialRevenue;\n }\n if (typeof this.currentRevenue !== 'undefined' && this.currentRevenue !== null) {\n toReturn['currentRevenue'] = 'toApiJson' in this.currentRevenue ? this.currentRevenue.toApiJson() : this.currentRevenue;\n }\n if (typeof this.quantity !== 'undefined') {\n toReturn['quantity'] = this.quantity;\n }\n if (typeof this.isTrial !== 'undefined') {\n toReturn['isTrial'] = this.isTrial;\n }\n if (typeof this.currencyCode !== 'undefined') {\n toReturn['currencyCode'] = this.currencyCode;\n }\n if (typeof this.cost !== 'undefined' && this.cost !== null) {\n toReturn['cost'] = 'toApiJson' in this.cost ? this.cost.toApiJson() : this.cost;\n }\n if (typeof this.customPrices !== 'undefined' && this.customPrices !== null) {\n toReturn['customPrices'] = 'toApiJson' in this.customPrices ? this.customPrices.toApiJson() : this.customPrices;\n }\n if (typeof this.billingPeriod !== 'undefined' && this.billingPeriod !== null) {\n toReturn['billingPeriod'] = 'toApiJson' in this.billingPeriod ? this.billingPeriod.toApiJson() : this.billingPeriod;\n }\n if (typeof this.autoBillable !== 'undefined') {\n toReturn['autoBillable'] = this.autoBillable;\n }\n if (typeof this.nonBillable !== 'undefined') {\n toReturn['nonBillable'] = this.nonBillable;\n }\n return toReturn;\n }\n}\nclass Revenue {\n static fromProto(proto) {\n let m = new Revenue();\n m = Object.assign(m, proto);\n if (proto.revenueComponents) {\n m.revenueComponents = proto.revenueComponents.map(RevenueComponent.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.revenueComponents !== 'undefined' && this.revenueComponents !== null) {\n toReturn['revenueComponents'] = 'toApiJson' in this.revenueComponents ? this.revenueComponents.toApiJson() : this.revenueComponents;\n }\n return toReturn;\n }\n}\nclass RevenueComponent {\n static fromProto(proto) {\n let m = new RevenueComponent();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = parseInt(proto.value, 10);\n }\n if (proto.period) {\n m.period = enumStringToValue$d(RevenuePeriod, proto.period);\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.value !== 'undefined') {\n toReturn['value'] = this.value;\n }\n if (typeof this.period !== 'undefined') {\n toReturn['period'] = this.period;\n }\n if (typeof this.isStartingRevenue !== 'undefined') {\n toReturn['isStartingRevenue'] = this.isStartingRevenue;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$c(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass TaxOptions {\n static fromProto(proto) {\n let m = new TaxOptions();\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.label !== 'undefined') {\n toReturn['label'] = this.label;\n }\n if (typeof this.percentageMultiplier !== 'undefined') {\n toReturn['percentageMultiplier'] = this.percentageMultiplier;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$b(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass AddonActivation {\n static fromProto(proto) {\n let m = new AddonActivation();\n m = Object.assign(m, proto);\n if (proto.activationStatus) {\n m.activationStatus = enumStringToValue$b(ActivationStatus, proto.activationStatus);\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.addonId !== 'undefined') {\n toReturn['addonId'] = this.addonId;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n if (typeof this.activationStatus !== 'undefined') {\n toReturn['activationStatus'] = this.activationStatus;\n }\n return toReturn;\n }\n}\nclass AddonKey {\n static fromProto(proto) {\n let m = new AddonKey();\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.addonId !== 'undefined') {\n toReturn['addonId'] = this.addonId;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n return toReturn;\n }\n}\nclass Agreement {\n static fromProto(proto) {\n let m = new Agreement();\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.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.term !== 'undefined') {\n toReturn['term'] = this.term;\n }\n if (typeof this.agreed !== 'undefined') {\n toReturn['agreed'] = this.agreed;\n }\n return toReturn;\n }\n}\nclass Attachment {\n static fromProto(proto) {\n let m = new Attachment();\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.url !== 'undefined') {\n toReturn['url'] = this.url;\n }\n return toReturn;\n }\n}\nclass Business {\n static fromProto(proto) {\n let m = new Business();\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.address2 !== 'undefined') {\n toReturn['address2'] = this.address2;\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.website !== 'undefined') {\n toReturn['website'] = this.website;\n }\n if (typeof this.phoneNumber !== 'undefined') {\n toReturn['phoneNumber'] = this.phoneNumber;\n }\n if (typeof this.deleted !== 'undefined') {\n toReturn['deleted'] = this.deleted;\n }\n return toReturn;\n }\n}\nclass CommonField {\n static fromProto(proto) {\n let m = new CommonField();\n m = Object.assign(m, proto);\n if (proto.field) {\n m.field = Field.fromProto(proto.field);\n }\n if (proto.addonKeys) {\n m.addonKeys = proto.addonKeys.map(AddonKey.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.field !== 'undefined' && this.field !== null) {\n toReturn['field'] = 'toApiJson' in this.field ? this.field.toApiJson() : this.field;\n }\n if (typeof this.productIds !== 'undefined') {\n toReturn['productIds'] = this.productIds;\n }\n if (typeof this.addonKeys !== 'undefined' && this.addonKeys !== null) {\n toReturn['addonKeys'] = 'toApiJson' in this.addonKeys ? this.addonKeys.toApiJson() : this.addonKeys;\n }\n return toReturn;\n }\n}\nclass CustomField {\n static fromProto(proto) {\n let m = new CustomField();\n m = Object.assign(m, proto);\n if (proto.fields) {\n m.fields = proto.fields.map(Field.fromProto);\n }\n if (proto.addonKey) {\n m.addonKey = AddonKey.fromProto(proto.addonKey);\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.fields !== 'undefined' && this.fields !== null) {\n toReturn['fields'] = 'toApiJson' in this.fields ? this.fields.toApiJson() : this.fields;\n }\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.addonKey !== 'undefined' && this.addonKey !== null) {\n toReturn['addonKey'] = 'toApiJson' in this.addonKey ? this.addonKey.toApiJson() : this.addonKey;\n }\n return toReturn;\n }\n}\nclass DeclinedReason {\n static fromProto(proto) {\n let m = new DeclinedReason();\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.archived) {\n m.archived = new Date(proto.archived);\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.id !== 'undefined') {\n toReturn['id'] = this.id;\n }\n if (typeof this.reason !== 'undefined') {\n toReturn['reason'] = this.reason;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\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.archived !== 'undefined' && this.archived !== null) {\n toReturn['archived'] = 'toApiJson' in this.archived ? this.archived.toApiJson() : this.archived;\n }\n return toReturn;\n }\n}\nclass Field {\n static fromProto(proto) {\n let m = new Field();\n m = Object.assign(m, proto);\n if (proto.fieldType) {\n m.fieldType = enumStringToValue$b(FieldType, proto.fieldType);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fieldId !== 'undefined') {\n toReturn['fieldId'] = this.fieldId;\n }\n if (typeof this.answer !== 'undefined') {\n toReturn['answer'] = this.answer;\n }\n if (typeof this.fieldType !== 'undefined') {\n toReturn['fieldType'] = this.fieldType;\n }\n if (typeof this.label !== 'undefined') {\n toReturn['label'] = this.label;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.prefix !== 'undefined') {\n toReturn['prefix'] = this.prefix;\n }\n if (typeof this.suffix !== 'undefined') {\n toReturn['suffix'] = this.suffix;\n }\n if (typeof this.regexValidator !== 'undefined') {\n toReturn['regexValidator'] = this.regexValidator;\n }\n if (typeof this.regexErrorMessage !== 'undefined') {\n toReturn['regexErrorMessage'] = this.regexErrorMessage;\n }\n return toReturn;\n }\n}\nclass GetOrderRecipientDetailsRequest {\n static fromProto(proto) {\n let m = new GetOrderRecipientDetailsRequest();\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.token !== 'undefined') {\n toReturn['token'] = this.token;\n }\n return toReturn;\n }\n}\nclass GetOrderRecipientDetailsResponse {\n static fromProto(proto) {\n let m = new GetOrderRecipientDetailsResponse();\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.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n return toReturn;\n }\n}\nclass Order {\n static fromProto(proto) {\n let m = new Order();\n m = Object.assign(m, proto);\n if (proto.status) {\n m.status = enumStringToValue$b(Status, proto.status);\n }\n if (proto.requestedActivation) {\n m.requestedActivation = new Date(proto.requestedActivation);\n }\n if (proto.packages) {\n m.packages = proto.packages.map(Package.fromProto);\n }\n if (proto.customFields) {\n m.customFields = proto.customFields.map(CustomField.fromProto);\n }\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(CommonField.fromProto);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.productActivations) {\n m.productActivations = proto.productActivations.map(ProductActivation.fromProto);\n }\n if (proto.addonActivations) {\n m.addonActivations = proto.addonActivations.map(AddonActivation.fromProto);\n }\n if (proto.statusHistory) {\n m.statusHistory = proto.statusHistory.map(StatusHistoryItem.fromProto);\n }\n if (proto.products) {\n m.products = proto.products.map(Product.fromProto);\n }\n if (proto.origin) {\n m.origin = enumStringToValue$b(Origin, proto.origin);\n }\n if (proto.attachments) {\n m.attachments = proto.attachments.map(Attachment.fromProto);\n }\n if (proto.extraFields) {\n m.extraFields = proto.extraFields.map(Field.fromProto);\n }\n if (proto.lineItems) {\n m.lineItems = proto.lineItems.map(LineItem.fromProto);\n }\n if (proto.contractDuration) {\n m.contractDuration = Duration.fromProto(proto.contractDuration);\n }\n if (proto.taxOptions) {\n m.taxOptions = proto.taxOptions.map(TaxOptions.fromProto);\n }\n if (proto.agreements) {\n m.agreements = proto.agreements.map(Agreement.fromProto);\n }\n if (proto.expiryDate) {\n m.expiryDate = new Date(proto.expiryDate);\n }\n if (proto.offerExpiry) {\n m.offerExpiry = new Date(proto.offerExpiry);\n }\n if (proto.business) {\n m.business = Business.fromProto(proto.business);\n }\n if (proto.salesperson) {\n m.salesperson = Salesperson.fromProto(proto.salesperson);\n }\n if (proto.leasedToAutomations) {\n m.leasedToAutomations = new Date(proto.leasedToAutomations);\n }\n if (proto.fulfillmentStatus) {\n m.fulfillmentStatus = enumStringToValue$b(FulfillmentOrderStatus, proto.fulfillmentStatus);\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.salespersonId !== 'undefined') {\n toReturn['salespersonId'] = this.salespersonId;\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.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.opportunityIds !== 'undefined') {\n toReturn['opportunityIds'] = this.opportunityIds;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.requestedActivation !== 'undefined' && this.requestedActivation !== null) {\n toReturn['requestedActivation'] = 'toApiJson' in this.requestedActivation ? this.requestedActivation.toApiJson() : this.requestedActivation;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n if (typeof this.packages !== 'undefined' && this.packages !== null) {\n toReturn['packages'] = 'toApiJson' in this.packages ? this.packages.toApiJson() : this.packages;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n if (typeof this.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\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.productActivations !== 'undefined' && this.productActivations !== null) {\n toReturn['productActivations'] = 'toApiJson' in this.productActivations ? this.productActivations.toApiJson() : this.productActivations;\n }\n if (typeof this.addonActivations !== 'undefined' && this.addonActivations !== null) {\n toReturn['addonActivations'] = 'toApiJson' in this.addonActivations ? this.addonActivations.toApiJson() : this.addonActivations;\n }\n if (typeof this.statusHistory !== 'undefined' && this.statusHistory !== null) {\n toReturn['statusHistory'] = 'toApiJson' in this.statusHistory ? this.statusHistory.toApiJson() : this.statusHistory;\n }\n if (typeof this.declinedReason !== 'undefined') {\n toReturn['declinedReason'] = this.declinedReason;\n }\n if (typeof this.products !== 'undefined' && this.products !== null) {\n toReturn['products'] = 'toApiJson' in this.products ? this.products.toApiJson() : this.products;\n }\n if (typeof this.origin !== 'undefined') {\n toReturn['origin'] = this.origin;\n }\n if (typeof this.attachments !== 'undefined' && this.attachments !== null) {\n toReturn['attachments'] = 'toApiJson' in this.attachments ? this.attachments.toApiJson() : this.attachments;\n }\n if (typeof this.extraFields !== 'undefined' && this.extraFields !== null) {\n toReturn['extraFields'] = 'toApiJson' in this.extraFields ? this.extraFields.toApiJson() : this.extraFields;\n }\n if (typeof this.lineItems !== 'undefined' && this.lineItems !== null) {\n toReturn['lineItems'] = 'toApiJson' in this.lineItems ? this.lineItems.toApiJson() : this.lineItems;\n }\n if (typeof this.contractDuration !== 'undefined' && this.contractDuration !== null) {\n toReturn['contractDuration'] = 'toApiJson' in this.contractDuration ? this.contractDuration.toApiJson() : this.contractDuration;\n }\n if (typeof this.taxOptions !== 'undefined' && this.taxOptions !== null) {\n toReturn['taxOptions'] = 'toApiJson' in this.taxOptions ? this.taxOptions.toApiJson() : this.taxOptions;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.agreements !== 'undefined' && this.agreements !== null) {\n toReturn['agreements'] = 'toApiJson' in this.agreements ? this.agreements.toApiJson() : this.agreements;\n }\n if (typeof this.expiryDate !== 'undefined' && this.expiryDate !== null) {\n toReturn['expiryDate'] = 'toApiJson' in this.expiryDate ? this.expiryDate.toApiJson() : this.expiryDate;\n }\n if (typeof this.paymentMethodToken !== 'undefined') {\n toReturn['paymentMethodToken'] = this.paymentMethodToken;\n }\n if (typeof this.customerNotes !== 'undefined') {\n toReturn['customerNotes'] = this.customerNotes;\n }\n if (typeof this.offerExpiry !== 'undefined' && this.offerExpiry !== null) {\n toReturn['offerExpiry'] = 'toApiJson' in this.offerExpiry ? this.offerExpiry.toApiJson() : this.offerExpiry;\n }\n if (typeof this.quoteId !== 'undefined') {\n toReturn['quoteId'] = this.quoteId;\n }\n if (typeof this.business !== 'undefined' && this.business !== null) {\n toReturn['business'] = 'toApiJson' in this.business ? this.business.toApiJson() : this.business;\n }\n if (typeof this.salesperson !== 'undefined' && this.salesperson !== null) {\n toReturn['salesperson'] = 'toApiJson' in this.salesperson ? this.salesperson.toApiJson() : this.salesperson;\n }\n if (typeof this.idempotencyKey !== 'undefined') {\n toReturn['idempotencyKey'] = this.idempotencyKey;\n }\n if (typeof this.leasedToAutomations !== 'undefined' && this.leasedToAutomations !== null) {\n toReturn['leasedToAutomations'] = 'toApiJson' in this.leasedToAutomations ? this.leasedToAutomations.toApiJson() : this.leasedToAutomations;\n }\n if (typeof this.fulfillmentStatus !== 'undefined') {\n toReturn['fulfillmentStatus'] = this.fulfillmentStatus;\n }\n if (typeof this.hasFulfillment !== 'undefined') {\n toReturn['hasFulfillment'] = this.hasFulfillment;\n }\n if (typeof this.orderIsSmbPayable !== 'undefined') {\n toReturn['orderIsSmbPayable'] = this.orderIsSmbPayable;\n }\n return toReturn;\n }\n}\nclass Package {\n static fromProto(proto) {\n let m = new Package();\n m = Object.assign(m, proto);\n if (proto.currency) {\n m.currency = enumStringToValue$b(Currency, proto.currency);\n }\n if (proto.revenue) {\n m.revenue = Revenue.fromProto(proto.revenue);\n }\n if (proto.quantity) {\n m.quantity = parseInt(proto.quantity, 10);\n }\n if (proto.addonKeys) {\n m.addonKeys = proto.addonKeys.map(AddonKey.fromProto);\n }\n if (proto.customPrices) {\n m.customPrices = proto.customPrices.map(CustomPriceMapping.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.packageId !== 'undefined') {\n toReturn['packageId'] = this.packageId;\n }\n if (typeof this.currency !== 'undefined') {\n toReturn['currency'] = this.currency;\n }\n if (typeof this.revenue !== 'undefined' && this.revenue !== null) {\n toReturn['revenue'] = 'toApiJson' in this.revenue ? this.revenue.toApiJson() : this.revenue;\n }\n if (typeof this.quantity !== 'undefined') {\n toReturn['quantity'] = this.quantity;\n }\n if (typeof this.productIds !== 'undefined') {\n toReturn['productIds'] = this.productIds;\n }\n if (typeof this.addonKeys !== 'undefined' && this.addonKeys !== null) {\n toReturn['addonKeys'] = 'toApiJson' in this.addonKeys ? this.addonKeys.toApiJson() : this.addonKeys;\n }\n if (typeof this.customPrices !== 'undefined' && this.customPrices !== null) {\n toReturn['customPrices'] = 'toApiJson' in this.customPrices ? this.customPrices.toApiJson() : this.customPrices;\n }\n return toReturn;\n }\n}\nclass Product {\n static fromProto(proto) {\n let m = new Product();\n m = Object.assign(m, proto);\n if (proto.currency) {\n m.currency = enumStringToValue$b(Currency, proto.currency);\n }\n if (proto.revenue) {\n m.revenue = Revenue.fromProto(proto.revenue);\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.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.currency !== 'undefined') {\n toReturn['currency'] = this.currency;\n }\n if (typeof this.revenue !== 'undefined' && this.revenue !== null) {\n toReturn['revenue'] = 'toApiJson' in this.revenue ? this.revenue.toApiJson() : this.revenue;\n }\n if (typeof this.editionId !== 'undefined') {\n toReturn['editionId'] = this.editionId;\n }\n if (typeof this.parentProductId !== 'undefined') {\n toReturn['parentProductId'] = this.parentProductId;\n }\n return toReturn;\n }\n}\nclass ProductActivation {\n static fromProto(proto) {\n let m = new ProductActivation();\n m = Object.assign(m, proto);\n if (proto.activationStatus) {\n m.activationStatus = enumStringToValue$b(ActivationStatus, proto.activationStatus);\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.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.editionId !== 'undefined') {\n toReturn['editionId'] = this.editionId;\n }\n if (typeof this.activationStatus !== 'undefined') {\n toReturn['activationStatus'] = this.activationStatus;\n }\n if (typeof this.uniqueId !== 'undefined') {\n toReturn['uniqueId'] = this.uniqueId;\n }\n if (typeof this.previousEditionId !== 'undefined') {\n toReturn['previousEditionId'] = this.previousEditionId;\n }\n if (typeof this.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n if (typeof this.isEditionChange !== 'undefined') {\n toReturn['isEditionChange'] = this.isEditionChange;\n }\n return toReturn;\n }\n}\nclass Salesperson {\n static fromProto(proto) {\n let m = new Salesperson();\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.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.phoneNumber !== 'undefined') {\n toReturn['phoneNumber'] = this.phoneNumber;\n }\n return toReturn;\n }\n}\nclass StatusHistoryItem {\n static fromProto(proto) {\n let m = new StatusHistoryItem();\n m = Object.assign(m, proto);\n if (proto.status) {\n m.status = enumStringToValue$b(Status, proto.status);\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.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\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.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.metadata !== 'undefined') {\n toReturn['metadata'] = this.metadata;\n }\n return toReturn;\n }\n}\nclass User {\n static fromProto(proto) {\n let m = new User();\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.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.firstName !== 'undefined') {\n toReturn['firstName'] = this.firstName;\n }\n if (typeof this.lastName !== 'undefined') {\n toReturn['lastName'] = this.lastName;\n }\n if (typeof this.email !== 'undefined') {\n toReturn['email'] = this.email;\n }\n if (typeof this.phoneNumber !== 'undefined') {\n toReturn['phoneNumber'] = this.phoneNumber;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$a(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass IncludedCommonFormFields {\n static fromProto(proto) {\n let m = new IncludedCommonFormFields();\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.businessName !== 'undefined') {\n toReturn['businessName'] = this.businessName;\n }\n if (typeof this.businessAddress !== 'undefined') {\n toReturn['businessAddress'] = this.businessAddress;\n }\n if (typeof this.businessPhoneNumber !== 'undefined') {\n toReturn['businessPhoneNumber'] = this.businessPhoneNumber;\n }\n if (typeof this.businessAccountGroupId !== 'undefined') {\n toReturn['businessAccountGroupId'] = this.businessAccountGroupId;\n }\n if (typeof this.salespersonName !== 'undefined') {\n toReturn['salespersonName'] = this.salespersonName;\n }\n if (typeof this.salespersonPhoneNumber !== 'undefined') {\n toReturn['salespersonPhoneNumber'] = this.salespersonPhoneNumber;\n }\n if (typeof this.salespersonEmail !== 'undefined') {\n toReturn['salespersonEmail'] = this.salespersonEmail;\n }\n if (typeof this.contactName !== 'undefined') {\n toReturn['contactName'] = this.contactName;\n }\n if (typeof this.contactPhoneNumber !== 'undefined') {\n toReturn['contactPhoneNumber'] = this.contactPhoneNumber;\n }\n if (typeof this.contactEmail !== 'undefined') {\n toReturn['contactEmail'] = this.contactEmail;\n }\n if (typeof this.businessWebsite !== 'undefined') {\n toReturn['businessWebsite'] = this.businessWebsite;\n }\n return toReturn;\n }\n}\nclass OrderFormFieldOption {\n static fromProto(proto) {\n let m = new OrderFormFieldOption();\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.label !== 'undefined') {\n toReturn['label'] = this.label;\n }\n if (typeof this.value !== 'undefined') {\n toReturn['value'] = this.value;\n }\n return toReturn;\n }\n}\nclass OrderForm {\n static fromProto(proto) {\n let m = new OrderForm();\n m = Object.assign(m, proto);\n if (proto.orderForm) {\n m.orderForm = proto.orderForm.map(OrderFormField.fromProto);\n }\n if (proto.commonForm) {\n m.commonForm = IncludedCommonFormFields.fromProto(proto.commonForm);\n }\n if (proto.commonFormRequiredFields) {\n m.commonFormRequiredFields = IncludedCommonFormFields.fromProto(proto.commonFormRequiredFields);\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.orderForm !== 'undefined' && this.orderForm !== null) {\n toReturn['orderForm'] = 'toApiJson' in this.orderForm ? this.orderForm.toApiJson() : this.orderForm;\n }\n if (typeof this.commonForm !== 'undefined' && this.commonForm !== null) {\n toReturn['commonForm'] = 'toApiJson' in this.commonForm ? this.commonForm.toApiJson() : this.commonForm;\n }\n if (typeof this.activationMessage !== 'undefined') {\n toReturn['activationMessage'] = this.activationMessage;\n }\n if (typeof this.separateOrderForms !== 'undefined') {\n toReturn['separateOrderForms'] = this.separateOrderForms;\n }\n if (typeof this.commonFormRequiredFields !== 'undefined' && this.commonFormRequiredFields !== null) {\n toReturn['commonFormRequiredFields'] = 'toApiJson' in this.commonFormRequiredFields ? this.commonFormRequiredFields.toApiJson() : this.commonFormRequiredFields;\n }\n if (typeof this.usesPostBillingOrderForm !== 'undefined') {\n toReturn['usesPostBillingOrderForm'] = this.usesPostBillingOrderForm;\n }\n if (typeof this.footerText !== 'undefined') {\n toReturn['footerText'] = this.footerText;\n }\n return toReturn;\n }\n}\nclass OrderFormField {\n static fromProto(proto) {\n let m = new OrderFormField();\n m = Object.assign(m, proto);\n if (proto.maxChoices) {\n m.maxChoices = parseInt(proto.maxChoices, 10);\n }\n if (proto.optionsWithLabels) {\n m.optionsWithLabels = proto.optionsWithLabels.map(OrderFormFieldOption.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.label !== 'undefined') {\n toReturn['label'] = this.label;\n }\n if (typeof this.id !== 'undefined') {\n toReturn['id'] = this.id;\n }\n if (typeof this.type !== 'undefined') {\n toReturn['type'] = this.type;\n }\n if (typeof this.options !== 'undefined') {\n toReturn['options'] = this.options;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.required !== 'undefined') {\n toReturn['required'] = this.required;\n }\n if (typeof this.uploadUrl !== 'undefined') {\n toReturn['uploadUrl'] = this.uploadUrl;\n }\n if (typeof this.prefix !== 'undefined') {\n toReturn['prefix'] = this.prefix;\n }\n if (typeof this.suffix !== 'undefined') {\n toReturn['suffix'] = this.suffix;\n }\n if (typeof this.regexValidator !== 'undefined') {\n toReturn['regexValidator'] = this.regexValidator;\n }\n if (typeof this.regexErrorMessage !== 'undefined') {\n toReturn['regexErrorMessage'] = this.regexErrorMessage;\n }\n if (typeof this.useWebhookValidator !== 'undefined') {\n toReturn['useWebhookValidator'] = this.useWebhookValidator;\n }\n if (typeof this.allowMultiples !== 'undefined') {\n toReturn['allowMultiples'] = this.allowMultiples;\n }\n if (typeof this.allowDuplicates !== 'undefined') {\n toReturn['allowDuplicates'] = this.allowDuplicates;\n }\n if (typeof this.maxChoices !== 'undefined') {\n toReturn['maxChoices'] = this.maxChoices;\n }\n if (typeof this.forOfficeUseOnly !== 'undefined') {\n toReturn['forOfficeUseOnly'] = this.forOfficeUseOnly;\n }\n if (typeof this.optionsWithLabels !== 'undefined' && this.optionsWithLabels !== null) {\n toReturn['optionsWithLabels'] = 'toApiJson' in this.optionsWithLabels ? this.optionsWithLabels.toApiJson() : this.optionsWithLabels;\n }\n if (typeof this.officeEditableOnly !== 'undefined') {\n toReturn['officeEditableOnly'] = this.officeEditableOnly;\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 Config {\n static fromProto(proto) {\n let m = new Config();\n m = Object.assign(m, proto);\n if (proto.extraFields) {\n m.extraFields = proto.extraFields.map(OrderFormField.fromProto);\n }\n if (proto.workflowStepOptions) {\n m.workflowStepOptions = WorkflowStepOptions.fromProto(proto.workflowStepOptions);\n }\n if (proto.salespersonOptions) {\n m.salespersonOptions = SalespersonOptions.fromProto(proto.salespersonOptions);\n }\n if (proto.taxOptions) {\n m.taxOptions = proto.taxOptions.map(TaxOptions.fromProto);\n }\n if (proto.customerTermsOfServiceOptions) {\n m.customerTermsOfServiceOptions = TermsOfServiceOptions.fromProto(proto.customerTermsOfServiceOptions);\n }\n if (proto.customerOptions) {\n m.customerOptions = CustomerOptions.fromProto(proto.customerOptions);\n }\n if (proto.emailOptions) {\n m.emailOptions = EmailOptions.fromProto(proto.emailOptions);\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.defaultNotesContent !== 'undefined') {\n toReturn['defaultNotesContent'] = this.defaultNotesContent;\n }\n if (typeof this.extraFields !== 'undefined' && this.extraFields !== null) {\n toReturn['extraFields'] = 'toApiJson' in this.extraFields ? this.extraFields.toApiJson() : this.extraFields;\n }\n if (typeof this.termsOfServiceUrl !== 'undefined') {\n toReturn['termsOfServiceUrl'] = this.termsOfServiceUrl;\n }\n if (typeof this.workflowStepOptions !== 'undefined' && this.workflowStepOptions !== null) {\n toReturn['workflowStepOptions'] = 'toApiJson' in this.workflowStepOptions ? this.workflowStepOptions.toApiJson() : this.workflowStepOptions;\n }\n if (typeof this.salespersonOptions !== 'undefined' && this.salespersonOptions !== null) {\n toReturn['salespersonOptions'] = 'toApiJson' in this.salespersonOptions ? this.salespersonOptions.toApiJson() : this.salespersonOptions;\n }\n if (typeof this.taxOptions !== 'undefined' && this.taxOptions !== null) {\n toReturn['taxOptions'] = 'toApiJson' in this.taxOptions ? this.taxOptions.toApiJson() : this.taxOptions;\n }\n if (typeof this.customerTermsOfServiceOptions !== 'undefined' && this.customerTermsOfServiceOptions !== null) {\n toReturn['customerTermsOfServiceOptions'] = 'toApiJson' in this.customerTermsOfServiceOptions ? this.customerTermsOfServiceOptions.toApiJson() : this.customerTermsOfServiceOptions;\n }\n if (typeof this.customerOptions !== 'undefined' && this.customerOptions !== null) {\n toReturn['customerOptions'] = 'toApiJson' in this.customerOptions ? this.customerOptions.toApiJson() : this.customerOptions;\n }\n if (typeof this.emailOptions !== 'undefined' && this.emailOptions !== null) {\n toReturn['emailOptions'] = 'toApiJson' in this.emailOptions ? this.emailOptions.toApiJson() : this.emailOptions;\n }\n return toReturn;\n }\n}\nclass CustomSalespersonAction {\n static fromProto(proto) {\n let m = new CustomSalespersonAction();\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.label !== 'undefined') {\n toReturn['label'] = this.label;\n }\n if (typeof this.automationId !== 'undefined') {\n toReturn['automationId'] = this.automationId;\n }\n return toReturn;\n }\n}\nclass CustomerOptions {\n static fromProto(proto) {\n let m = new CustomerOptions();\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.allowCustomerInitiatedOrders !== 'undefined') {\n toReturn['allowCustomerInitiatedOrders'] = this.allowCustomerInitiatedOrders;\n }\n return toReturn;\n }\n}\nclass EmailContent {\n static fromProto(proto) {\n let m = new EmailContent();\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.subject !== 'undefined') {\n toReturn['subject'] = this.subject;\n }\n if (typeof this.heading !== 'undefined') {\n toReturn['heading'] = this.heading;\n }\n if (typeof this.body !== 'undefined') {\n toReturn['body'] = this.body;\n }\n if (typeof this.button !== 'undefined') {\n toReturn['button'] = this.button;\n }\n return toReturn;\n }\n}\nclass EmailCustomContent {\n static fromProto(proto) {\n let m = new EmailCustomContent();\n m = Object.assign(m, proto);\n if (proto.contractAwaitingApproval) {\n m.contractAwaitingApproval = EmailContent.fromProto(proto.contractAwaitingApproval);\n }\n if (proto.orderProcessed) {\n m.orderProcessed = EmailContent.fromProto(proto.orderProcessed);\n }\n if (proto.orderDeclined) {\n m.orderDeclined = EmailContent.fromProto(proto.orderDeclined);\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.contractAwaitingApproval !== 'undefined' && this.contractAwaitingApproval !== null) {\n toReturn['contractAwaitingApproval'] = 'toApiJson' in this.contractAwaitingApproval ? this.contractAwaitingApproval.toApiJson() : this.contractAwaitingApproval;\n }\n if (typeof this.orderProcessed !== 'undefined' && this.orderProcessed !== null) {\n toReturn['orderProcessed'] = 'toApiJson' in this.orderProcessed ? this.orderProcessed.toApiJson() : this.orderProcessed;\n }\n if (typeof this.orderDeclined !== 'undefined' && this.orderDeclined !== null) {\n toReturn['orderDeclined'] = 'toApiJson' in this.orderDeclined ? this.orderDeclined.toApiJson() : this.orderDeclined;\n }\n return toReturn;\n }\n}\nclass EmailOptions {\n static fromProto(proto) {\n let m = new EmailOptions();\n m = Object.assign(m, proto);\n if (proto.emailCustomContent) {\n m.emailCustomContent = EmailCustomContent.fromProto(proto.emailCustomContent);\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.emailCustomContent !== 'undefined' && this.emailCustomContent !== null) {\n toReturn['emailCustomContent'] = 'toApiJson' in this.emailCustomContent ? this.emailCustomContent.toApiJson() : this.emailCustomContent;\n }\n return toReturn;\n }\n}\nclass SalespersonOptions {\n static fromProto(proto) {\n let m = new SalespersonOptions();\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.validateRequiredFields !== 'undefined') {\n toReturn['validateRequiredFields'] = this.validateRequiredFields;\n }\n if (typeof this.disableSellingStandaloneProducts !== 'undefined') {\n toReturn['disableSellingStandaloneProducts'] = this.disableSellingStandaloneProducts;\n }\n if (typeof this.disableTagging !== 'undefined') {\n toReturn['disableTagging'] = this.disableTagging;\n }\n return toReturn;\n }\n}\nclass TermsOfService {\n static fromProto(proto) {\n let m = new TermsOfService();\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.text !== 'undefined') {\n toReturn['text'] = this.text;\n }\n if (typeof this.termsOfServiceUrl !== 'undefined') {\n toReturn['termsOfServiceUrl'] = this.termsOfServiceUrl;\n }\n if (typeof this.linkTitle !== 'undefined') {\n toReturn['linkTitle'] = this.linkTitle;\n }\n if (typeof this.required !== 'undefined') {\n toReturn['required'] = this.required;\n }\n return toReturn;\n }\n}\nclass TermsOfServiceOptions {\n static fromProto(proto) {\n let m = new TermsOfServiceOptions();\n m = Object.assign(m, proto);\n if (proto.termsOfService) {\n m.termsOfService = proto.termsOfService.map(TermsOfService.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.hideDefaultTermsOfService !== 'undefined') {\n toReturn['hideDefaultTermsOfService'] = this.hideDefaultTermsOfService;\n }\n if (typeof this.termsOfService !== 'undefined' && this.termsOfService !== null) {\n toReturn['termsOfService'] = 'toApiJson' in this.termsOfService ? this.termsOfService.toApiJson() : this.termsOfService;\n }\n return toReturn;\n }\n}\nclass WorkflowStepOptions {\n static fromProto(proto) {\n let m = new WorkflowStepOptions();\n m = Object.assign(m, proto);\n if (proto.customSalespersonActions) {\n m.customSalespersonActions = proto.customSalespersonActions.map(CustomSalespersonAction.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.allowSendDirectToAdmin !== 'undefined') {\n toReturn['allowSendDirectToAdmin'] = this.allowSendDirectToAdmin;\n }\n if (typeof this.allowSendToCustomer !== 'undefined') {\n toReturn['allowSendToCustomer'] = this.allowSendToCustomer;\n }\n if (typeof this.maintainTermsAndConditionsAgreement !== 'undefined') {\n toReturn['maintainTermsAndConditionsAgreement'] = this.maintainTermsAndConditionsAgreement;\n }\n if (typeof this.customSalespersonActions !== 'undefined' && this.customSalespersonActions !== null) {\n toReturn['customSalespersonActions'] = 'toApiJson' in this.customSalespersonActions ? this.customSalespersonActions.toApiJson() : this.customSalespersonActions;\n }\n if (typeof this.allowOrderFormEditing !== 'undefined') {\n toReturn['allowOrderFormEditing'] = this.allowOrderFormEditing;\n }\n if (typeof this.allowCollectPaymentFromCustomer !== 'undefined') {\n toReturn['allowCollectPaymentFromCustomer'] = this.allowCollectPaymentFromCustomer;\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 ApproveRequest {\n static fromProto(proto) {\n let m = new ApproveRequest();\n m = Object.assign(m, proto);\n if (proto.agreements) {\n m.agreements = proto.agreements.map(Agreement.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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.agreements !== 'undefined' && this.agreements !== null) {\n toReturn['agreements'] = 'toApiJson' in this.agreements ? this.agreements.toApiJson() : this.agreements;\n }\n return toReturn;\n }\n}\nclass ApproveResponse {\n static fromProto(proto) {\n let m = new ApproveResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass DeclineRequest {\n static fromProto(proto) {\n let m = new DeclineRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.declinedReason !== 'undefined') {\n toReturn['declinedReason'] = this.declinedReason;\n }\n return toReturn;\n }\n}\nclass DeclineResponse {\n static fromProto(proto) {\n let m = new DeclineResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass GetConfigurationRequest {\n static fromProto(proto) {\n let m = new GetConfigurationRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass GetConfigurationResponse {\n static fromProto(proto) {\n let m = new GetConfigurationResponse();\n m = Object.assign(m, proto);\n if (proto.configuration) {\n m.configuration = Config.fromProto(proto.configuration);\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.configuration !== 'undefined' && this.configuration !== null) {\n toReturn['configuration'] = 'toApiJson' in this.configuration ? this.configuration.toApiJson() : this.configuration;\n }\n return toReturn;\n }\n}\nclass GetOrderRecipientSessionRequest {\n static fromProto(proto) {\n let m = new GetOrderRecipientSessionRequest();\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.token !== 'undefined') {\n toReturn['token'] = this.token;\n }\n return toReturn;\n }\n}\nclass GetOrderRecipientSessionResponse {\n static fromProto(proto) {\n let m = new GetOrderRecipientSessionResponse();\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.session !== 'undefined') {\n toReturn['session'] = this.session;\n }\n return toReturn;\n }\n}\nclass GetRequest {\n static fromProto(proto) {\n let m = new GetRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass GetResponse {\n static fromProto(proto) {\n let m = new GetResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass UpdateOrderFormAnswersRequest {\n static fromProto(proto) {\n let m = new UpdateOrderFormAnswersRequest();\n m = Object.assign(m, proto);\n if (proto.customFields) {\n m.customFields = proto.customFields.map(CustomField.fromProto);\n }\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(CommonField.fromProto);\n }\n if (proto.extraFields) {\n m.extraFields = proto.extraFields.map(Field.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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n if (typeof this.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\n }\n if (typeof this.extraFields !== 'undefined' && this.extraFields !== null) {\n toReturn['extraFields'] = 'toApiJson' in this.extraFields ? this.extraFields.toApiJson() : this.extraFields;\n }\n return toReturn;\n }\n}\nclass UpdateOrderFormAnswersResponse {\n static fromProto(proto) {\n let m = new UpdateOrderFormAnswersResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\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 Subscriber {\n static fromProto(proto) {\n let m = new Subscriber();\n m = Object.assign(m, proto);\n if (proto.location) {\n m.location = enumStringToValue$7(SubscriptionLocation, proto.location);\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.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.location !== 'undefined') {\n toReturn['location'] = this.location;\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 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$5(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass PagedRequestOptions {\n static fromProto(proto) {\n let m = new PagedRequestOptions();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n return toReturn;\n }\n}\nclass PagedResponseMetadata {\n static fromProto(proto) {\n let m = new PagedResponseMetadata();\n m = Object.assign(m, proto);\n if (proto.totalResults) {\n m.totalResults = parseInt(proto.totalResults, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.nextCursor !== 'undefined') {\n toReturn['nextCursor'] = this.nextCursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n if (typeof this.totalResults !== 'undefined') {\n toReturn['totalResults'] = this.totalResults;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$4(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass ArchiveAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new ArchiveAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.identifier) {\n m.identifier = FieldSchemaIdentifier.fromProto(proto.identifier);\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.identifier !== 'undefined' && this.identifier !== null) {\n toReturn['identifier'] = 'toApiJson' in this.identifier ? this.identifier.toApiJson() : this.identifier;\n }\n return toReturn;\n }\n}\nclass AuxiliaryDataFieldSchema {\n static fromProto(proto) {\n let m = new AuxiliaryDataFieldSchema();\n m = Object.assign(m, proto);\n if (proto.fieldType) {\n m.fieldType = enumStringToValue$4(AuxiliaryDataFieldType, proto.fieldType);\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.dropdownOptions) {\n m.dropdownOptions = proto.dropdownOptions.map(DropdownOption.fromProto);\n }\n if (proto.archived) {\n m.archived = new Date(proto.archived);\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.fieldId !== 'undefined') {\n toReturn['fieldId'] = this.fieldId;\n }\n if (typeof this.fieldType !== 'undefined') {\n toReturn['fieldType'] = this.fieldType;\n }\n if (typeof this.fieldName !== 'undefined') {\n toReturn['fieldName'] = this.fieldName;\n }\n if (typeof this.fieldDescription !== 'undefined') {\n toReturn['fieldDescription'] = this.fieldDescription;\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.dropdownOptions !== 'undefined' && this.dropdownOptions !== null) {\n toReturn['dropdownOptions'] = 'toApiJson' in this.dropdownOptions ? this.dropdownOptions.toApiJson() : this.dropdownOptions;\n }\n if (typeof this.currencyCode !== 'undefined') {\n toReturn['currencyCode'] = this.currencyCode;\n }\n if (typeof this.archived !== 'undefined' && this.archived !== null) {\n toReturn['archived'] = 'toApiJson' in this.archived ? this.archived.toApiJson() : this.archived;\n }\n if (typeof this.externalId !== 'undefined') {\n toReturn['externalId'] = this.externalId;\n }\n return toReturn;\n }\n}\nclass AuxiliaryDataObjectID {\n static fromProto(proto) {\n let m = new AuxiliaryDataObjectID();\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.objectId !== 'undefined') {\n toReturn['objectId'] = this.objectId;\n }\n return toReturn;\n }\n}\nclass CreateAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new CreateAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.fieldSchema) {\n m.fieldSchema = AuxiliaryDataFieldSchema.fromProto(proto.fieldSchema);\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.fieldSchema !== 'undefined' && this.fieldSchema !== null) {\n toReturn['fieldSchema'] = 'toApiJson' in this.fieldSchema ? this.fieldSchema.toApiJson() : this.fieldSchema;\n }\n return toReturn;\n }\n}\nclass DropdownOption {\n static fromProto(proto) {\n let m = new DropdownOption();\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.label !== 'undefined') {\n toReturn['label'] = this.label;\n }\n if (typeof this.value !== 'undefined') {\n toReturn['value'] = this.value;\n }\n return toReturn;\n }\n}\nclass FieldDataUpsertOperation {\n static fromProto(proto) {\n let m = new FieldDataUpsertOperation();\n m = Object.assign(m, proto);\n if (proto.integer) {\n m.integer = parseInt(proto.integer, 10);\n }\n if (proto.date) {\n m.date = new Date(proto.date);\n }\n if (proto.currencyValue) {\n m.currencyValue = parseInt(proto.currencyValue, 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.fieldDataId !== 'undefined') {\n toReturn['fieldDataId'] = this.fieldDataId;\n }\n if (typeof this.externalId !== 'undefined') {\n toReturn['externalId'] = this.externalId;\n }\n if (typeof this.integer !== 'undefined') {\n toReturn['integer'] = this.integer;\n }\n if (typeof this.string !== 'undefined') {\n toReturn['string'] = this.string;\n }\n if (typeof this.date !== 'undefined' && this.date !== null) {\n toReturn['date'] = 'toApiJson' in this.date ? this.date.toApiJson() : this.date;\n }\n if (typeof this.dropdownValue !== 'undefined') {\n toReturn['dropdownValue'] = this.dropdownValue;\n }\n if (typeof this.currencyValue !== 'undefined') {\n toReturn['currencyValue'] = this.currencyValue;\n }\n if (typeof this.deleteValue !== 'undefined') {\n toReturn['deleteValue'] = this.deleteValue;\n }\n return toReturn;\n }\n}\nclass FieldSchemaIdentifier {\n static fromProto(proto) {\n let m = new FieldSchemaIdentifier();\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.fieldId !== 'undefined') {\n toReturn['fieldId'] = this.fieldId;\n }\n if (typeof this.externalId !== 'undefined') {\n toReturn['externalId'] = this.externalId;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass ListAuxiliaryDataFieldSchemaRequestFilters {\n static fromProto(proto) {\n let m = new ListAuxiliaryDataFieldSchemaRequestFilters();\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.onlyArchived !== 'undefined') {\n toReturn['onlyArchived'] = this.onlyArchived;\n }\n return toReturn;\n }\n}\nclass GetAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new GetAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.identifier) {\n m.identifier = FieldSchemaIdentifier.fromProto(proto.identifier);\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.identifier !== 'undefined' && this.identifier !== null) {\n toReturn['identifier'] = 'toApiJson' in this.identifier ? this.identifier.toApiJson() : this.identifier;\n }\n return toReturn;\n }\n}\nclass GetAuxiliaryDataFieldSchemaResponse {\n static fromProto(proto) {\n let m = new GetAuxiliaryDataFieldSchemaResponse();\n m = Object.assign(m, proto);\n if (proto.fieldSchema) {\n m.fieldSchema = AuxiliaryDataFieldSchema.fromProto(proto.fieldSchema);\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.fieldSchema !== 'undefined' && this.fieldSchema !== null) {\n toReturn['fieldSchema'] = 'toApiJson' in this.fieldSchema ? this.fieldSchema.toApiJson() : this.fieldSchema;\n }\n return toReturn;\n }\n}\nclass GetMultiAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new GetMultiAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.identifiers) {\n m.identifiers = proto.identifiers.map(FieldSchemaIdentifier.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.identifiers !== 'undefined' && this.identifiers !== null) {\n toReturn['identifiers'] = 'toApiJson' in this.identifiers ? this.identifiers.toApiJson() : this.identifiers;\n }\n return toReturn;\n }\n}\nclass GetMultiAuxiliaryDataFieldSchemaResponse {\n static fromProto(proto) {\n let m = new GetMultiAuxiliaryDataFieldSchemaResponse();\n m = Object.assign(m, proto);\n if (proto.fieldSchemas) {\n m.fieldSchemas = proto.fieldSchemas.map(AuxiliaryDataFieldSchema.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.fieldSchemas !== 'undefined' && this.fieldSchemas !== null) {\n toReturn['fieldSchemas'] = 'toApiJson' in this.fieldSchemas ? this.fieldSchemas.toApiJson() : this.fieldSchemas;\n }\n return toReturn;\n }\n}\nclass ListAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new ListAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n if (proto.filters) {\n m.filters = ListAuxiliaryDataFieldSchemaRequestFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n return toReturn;\n }\n}\nclass ListAuxiliaryDataFieldSchemaResponse {\n static fromProto(proto) {\n let m = new ListAuxiliaryDataFieldSchemaResponse();\n m = Object.assign(m, proto);\n if (proto.fieldSchemas) {\n m.fieldSchemas = proto.fieldSchemas.map(AuxiliaryDataFieldSchema.fromProto);\n }\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fieldSchemas !== 'undefined' && this.fieldSchemas !== null) {\n toReturn['fieldSchemas'] = 'toApiJson' in this.fieldSchemas ? this.fieldSchemas.toApiJson() : this.fieldSchemas;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass ListAuxiliaryDataRequest {\n static fromProto(proto) {\n let m = new ListAuxiliaryDataRequest();\n m = Object.assign(m, proto);\n if (proto.auxiliaryDataObjectId) {\n m.auxiliaryDataObjectId = AuxiliaryDataObjectID.fromProto(proto.auxiliaryDataObjectId);\n }\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.auxiliaryDataObjectId !== 'undefined' && this.auxiliaryDataObjectId !== null) {\n toReturn['auxiliaryDataObjectId'] = 'toApiJson' in this.auxiliaryDataObjectId ? this.auxiliaryDataObjectId.toApiJson() : this.auxiliaryDataObjectId;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n return toReturn;\n }\n}\nclass ListAuxiliaryDataResponse {\n static fromProto(proto) {\n let m = new ListAuxiliaryDataResponse();\n m = Object.assign(m, proto);\n if (proto.pagingMetadata) {\n m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.jsonSchema !== 'undefined') {\n toReturn['jsonSchema'] = this.jsonSchema;\n }\n if (typeof this.jsonData !== 'undefined') {\n toReturn['jsonData'] = this.jsonData;\n }\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {\n toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? this.pagingMetadata.toApiJson() : this.pagingMetadata;\n }\n return toReturn;\n }\n}\nclass UnarchiveAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new UnarchiveAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.identifier) {\n m.identifier = FieldSchemaIdentifier.fromProto(proto.identifier);\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.identifier !== 'undefined' && this.identifier !== null) {\n toReturn['identifier'] = 'toApiJson' in this.identifier ? this.identifier.toApiJson() : this.identifier;\n }\n return toReturn;\n }\n}\nclass UpdateAuxiliaryDataFieldSchemaRequest {\n static fromProto(proto) {\n let m = new UpdateAuxiliaryDataFieldSchemaRequest();\n m = Object.assign(m, proto);\n if (proto.fieldSchema) {\n m.fieldSchema = AuxiliaryDataFieldSchema.fromProto(proto.fieldSchema);\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.fieldSchema !== 'undefined' && this.fieldSchema !== null) {\n toReturn['fieldSchema'] = 'toApiJson' in this.fieldSchema ? this.fieldSchema.toApiJson() : this.fieldSchema;\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 UpsertAuxiliaryDataRequest {\n static fromProto(proto) {\n let m = new UpsertAuxiliaryDataRequest();\n m = Object.assign(m, proto);\n if (proto.auxiliaryDataObjectId) {\n m.auxiliaryDataObjectId = AuxiliaryDataObjectID.fromProto(proto.auxiliaryDataObjectId);\n }\n if (proto.fieldDataUpsertOperations) {\n m.fieldDataUpsertOperations = proto.fieldDataUpsertOperations.map(FieldDataUpsertOperation.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.auxiliaryDataObjectId !== 'undefined' && this.auxiliaryDataObjectId !== null) {\n toReturn['auxiliaryDataObjectId'] = 'toApiJson' in this.auxiliaryDataObjectId ? this.auxiliaryDataObjectId.toApiJson() : this.auxiliaryDataObjectId;\n }\n if (typeof this.fieldDataUpsertOperations !== 'undefined' && this.fieldDataUpsertOperations !== null) {\n toReturn['fieldDataUpsertOperations'] = 'toApiJson' in this.fieldDataUpsertOperations ? this.fieldDataUpsertOperations.toApiJson() : this.fieldDataUpsertOperations;\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 ListSalesOderAuxiliaryDataRequest {\n static fromProto(proto) {\n let m = new ListSalesOderAuxiliaryDataRequest();\n m = Object.assign(m, proto);\n if (proto.salesOrderAuxiliaryDataObjectId) {\n m.salesOrderAuxiliaryDataObjectId = SalesOrderAuxiliaryDataObjectID.fromProto(proto.salesOrderAuxiliaryDataObjectId);\n }\n if (proto.pagingOptions) {\n m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.salesOrderAuxiliaryDataObjectId !== 'undefined' && this.salesOrderAuxiliaryDataObjectId !== null) {\n toReturn['salesOrderAuxiliaryDataObjectId'] = 'toApiJson' in this.salesOrderAuxiliaryDataObjectId ? this.salesOrderAuxiliaryDataObjectId.toApiJson() : this.salesOrderAuxiliaryDataObjectId;\n }\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {\n toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? this.pagingOptions.toApiJson() : this.pagingOptions;\n }\n return toReturn;\n }\n}\nclass SalesOrderAuxiliaryDataObjectID {\n static fromProto(proto) {\n let m = new SalesOrderAuxiliaryDataObjectID();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass UpsertSalesOrderAuxiliaryDataRequest {\n static fromProto(proto) {\n let m = new UpsertSalesOrderAuxiliaryDataRequest();\n m = Object.assign(m, proto);\n if (proto.salesOrderAuxiliaryDataObjectId) {\n m.salesOrderAuxiliaryDataObjectId = SalesOrderAuxiliaryDataObjectID.fromProto(proto.salesOrderAuxiliaryDataObjectId);\n }\n if (proto.fieldDataUpsertOperations) {\n m.fieldDataUpsertOperations = proto.fieldDataUpsertOperations.map(FieldDataUpsertOperation.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.salesOrderAuxiliaryDataObjectId !== 'undefined' && this.salesOrderAuxiliaryDataObjectId !== null) {\n toReturn['salesOrderAuxiliaryDataObjectId'] = 'toApiJson' in this.salesOrderAuxiliaryDataObjectId ? this.salesOrderAuxiliaryDataObjectId.toApiJson() : this.salesOrderAuxiliaryDataObjectId;\n }\n if (typeof this.fieldDataUpsertOperations !== 'undefined' && this.fieldDataUpsertOperations !== null) {\n toReturn['fieldDataUpsertOperations'] = 'toApiJson' in this.fieldDataUpsertOperations ? this.fieldDataUpsertOperations.toApiJson() : this.fieldDataUpsertOperations;\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 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$1(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass ActivateProductsRequest {\n static fromProto(proto) {\n let m = new ActivateProductsRequest();\n m = Object.assign(m, proto);\n if (proto.customFields) {\n m.customFields = proto.customFields.map(CustomField.fromProto);\n }\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(CommonField.fromProto);\n }\n if (proto.extraFields) {\n m.extraFields = proto.extraFields.map(Field.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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n if (typeof this.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\n }\n if (typeof this.extraFields !== 'undefined' && this.extraFields !== null) {\n toReturn['extraFields'] = 'toApiJson' in this.extraFields ? this.extraFields.toApiJson() : this.extraFields;\n }\n return toReturn;\n }\n}\nclass ActivateProductsResponse {\n static fromProto(proto) {\n let m = new ActivateProductsResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass ApproveCancellationRequest {\n static fromProto(proto) {\n let m = new ApproveCancellationRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass ApproveSalesOrderRequest {\n static fromProto(proto) {\n let m = new ApproveSalesOrderRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass ApproveSalesOrderResponse {\n static fromProto(proto) {\n let m = new ApproveSalesOrderResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass ArchiveReasonRequest {\n static fromProto(proto) {\n let m = new ArchiveReasonRequest();\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.id !== 'undefined') {\n toReturn['id'] = this.id;\n }\n return toReturn;\n }\n}\nclass ArchiveSalesOrderRequest {\n static fromProto(proto) {\n let m = new ArchiveSalesOrderRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass ArchiveSalesOrderResponse {\n static fromProto(proto) {\n let m = new ArchiveSalesOrderResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass CheckSalesOrderExistsRequest {\n static fromProto(proto) {\n let m = new CheckSalesOrderExistsRequest();\n m = Object.assign(m, proto);\n if (proto.statuses) {\n m.statuses = proto.statuses.map(v => enumStringToValue$1(Status, 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.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.productEditionId !== 'undefined') {\n toReturn['productEditionId'] = this.productEditionId;\n }\n if (typeof this.statuses !== 'undefined') {\n toReturn['statuses'] = this.statuses;\n }\n return toReturn;\n }\n}\nclass CheckSalesOrderExistsResponse {\n static fromProto(proto) {\n let m = new CheckSalesOrderExistsResponse();\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.exists !== 'undefined') {\n toReturn['exists'] = this.exists;\n }\n return toReturn;\n }\n}\nclass ConvertToDraftRequest {\n static fromProto(proto) {\n let m = new ConvertToDraftRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass GetStatusCountsResponseCountsEntry {\n static fromProto(proto) {\n let m = new GetStatusCountsResponseCountsEntry();\n m = Object.assign(m, proto);\n if (proto.key) {\n m.key = parseInt(proto.key, 10);\n }\n if (proto.value) {\n m.value = parseInt(proto.value, 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.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 CreateAndActivateOrderRequest {\n static fromProto(proto) {\n let m = new CreateAndActivateOrderRequest();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n if (typeof this.useCustomerPrice !== 'undefined') {\n toReturn['useCustomerPrice'] = this.useCustomerPrice;\n }\n return toReturn;\n }\n}\nclass CreateAndActivateOrderResponse {\n static fromProto(proto) {\n let m = new CreateAndActivateOrderResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass CreateArchivedOrderRequest {\n static fromProto(proto) {\n let m = new CreateArchivedOrderRequest();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass CreateArchivedOrderResponse {\n static fromProto(proto) {\n let m = new CreateArchivedOrderResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass CreateDraftSalesOrderRequest {\n static fromProto(proto) {\n let m = new CreateDraftSalesOrderRequest();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n if (typeof this.useCustomerPrice !== 'undefined') {\n toReturn['useCustomerPrice'] = this.useCustomerPrice;\n }\n return toReturn;\n }\n}\nclass CreateDraftSalesOrderResponse {\n static fromProto(proto) {\n let m = new CreateDraftSalesOrderResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass CreateForPartnerApprovalRequest {\n static fromProto(proto) {\n let m = new CreateForPartnerApprovalRequest();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass CreateForPartnerApprovalResponse {\n static fromProto(proto) {\n let m = new CreateForPartnerApprovalResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass CreateInvoiceRequest {\n static fromProto(proto) {\n let m = new CreateInvoiceRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass CreateInvoiceResponse {\n static fromProto(proto) {\n let m = new CreateInvoiceResponse();\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.invoiceId !== 'undefined') {\n toReturn['invoiceId'] = this.invoiceId;\n }\n return toReturn;\n }\n}\nclass CreateLeasedToAutomationsSalesOrderRequest {\n static fromProto(proto) {\n let m = new CreateLeasedToAutomationsSalesOrderRequest();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n if (typeof this.useCustomerPrice !== 'undefined') {\n toReturn['useCustomerPrice'] = this.useCustomerPrice;\n }\n return toReturn;\n }\n}\nclass CreateLeasedToAutomationsSalesOrderResponse {\n static fromProto(proto) {\n let m = new CreateLeasedToAutomationsSalesOrderResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass CreateReasonRequest {\n static fromProto(proto) {\n let m = new CreateReasonRequest();\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.reason !== 'undefined') {\n toReturn['reason'] = this.reason;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n return toReturn;\n }\n}\nclass CreateReasonResponse {\n static fromProto(proto) {\n let m = new CreateReasonResponse();\n m = Object.assign(m, proto);\n if (proto.declinedReason) {\n m.declinedReason = DeclinedReason.fromProto(proto.declinedReason);\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.declinedReason !== 'undefined' && this.declinedReason !== null) {\n toReturn['declinedReason'] = 'toApiJson' in this.declinedReason ? this.declinedReason.toApiJson() : this.declinedReason;\n }\n return toReturn;\n }\n}\nclass CreateSalesOrderRequest {\n static fromProto(proto) {\n let m = new CreateSalesOrderRequest();\n m = Object.assign(m, proto);\n if (proto.requestedActivation) {\n m.requestedActivation = new Date(proto.requestedActivation);\n }\n if (proto.packages) {\n m.packages = proto.packages.map(Package.fromProto);\n }\n if (proto.customFields) {\n m.customFields = proto.customFields.map(CustomField.fromProto);\n }\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(CommonField.fromProto);\n }\n if (proto.products) {\n m.products = proto.products.map(Product.fromProto);\n }\n if (proto.origin) {\n m.origin = enumStringToValue$1(Origin, proto.origin);\n }\n if (proto.attachments) {\n m.attachments = proto.attachments.map(Attachment.fromProto);\n }\n if (proto.extraFields) {\n m.extraFields = proto.extraFields.map(Field.fromProto);\n }\n if (proto.lineItems) {\n m.lineItems = proto.lineItems.map(LineItem.fromProto);\n }\n if (proto.contractDuration) {\n m.contractDuration = Duration.fromProto(proto.contractDuration);\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.salespersonId !== 'undefined') {\n toReturn['salespersonId'] = this.salespersonId;\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.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.opportunityIds !== 'undefined') {\n toReturn['opportunityIds'] = this.opportunityIds;\n }\n if (typeof this.requestedActivation !== 'undefined' && this.requestedActivation !== null) {\n toReturn['requestedActivation'] = 'toApiJson' in this.requestedActivation ? this.requestedActivation.toApiJson() : this.requestedActivation;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n if (typeof this.packages !== 'undefined' && this.packages !== null) {\n toReturn['packages'] = 'toApiJson' in this.packages ? this.packages.toApiJson() : this.packages;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n if (typeof this.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\n }\n if (typeof this.products !== 'undefined' && this.products !== null) {\n toReturn['products'] = 'toApiJson' in this.products ? this.products.toApiJson() : this.products;\n }\n if (typeof this.origin !== 'undefined') {\n toReturn['origin'] = this.origin;\n }\n if (typeof this.attachments !== 'undefined' && this.attachments !== null) {\n toReturn['attachments'] = 'toApiJson' in this.attachments ? this.attachments.toApiJson() : this.attachments;\n }\n if (typeof this.extraFields !== 'undefined' && this.extraFields !== null) {\n toReturn['extraFields'] = 'toApiJson' in this.extraFields ? this.extraFields.toApiJson() : this.extraFields;\n }\n if (typeof this.lineItems !== 'undefined' && this.lineItems !== null) {\n toReturn['lineItems'] = 'toApiJson' in this.lineItems ? this.lineItems.toApiJson() : this.lineItems;\n }\n if (typeof this.contractDuration !== 'undefined' && this.contractDuration !== null) {\n toReturn['contractDuration'] = 'toApiJson' in this.contractDuration ? this.contractDuration.toApiJson() : this.contractDuration;\n }\n if (typeof this.customerNotes !== 'undefined') {\n toReturn['customerNotes'] = this.customerNotes;\n }\n if (typeof this.quoteId !== 'undefined') {\n toReturn['quoteId'] = this.quoteId;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.idempotencyKey !== 'undefined') {\n toReturn['idempotencyKey'] = this.idempotencyKey;\n }\n if (typeof this.useCustomerPrice !== 'undefined') {\n toReturn['useCustomerPrice'] = this.useCustomerPrice;\n }\n if (typeof this.orderIsSmbPayable !== 'undefined') {\n toReturn['orderIsSmbPayable'] = this.orderIsSmbPayable;\n }\n return toReturn;\n }\n}\nclass CreateSalesOrderResponse {\n static fromProto(proto) {\n let m = new CreateSalesOrderResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass CreateWithPaymentIntentRequest {\n static fromProto(proto) {\n let m = new CreateWithPaymentIntentRequest();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass CreateWithPaymentIntentResponse {\n static fromProto(proto) {\n let m = new CreateWithPaymentIntentResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass CustomerApproveSalesOrderRequest {\n static fromProto(proto) {\n let m = new CustomerApproveSalesOrderRequest();\n m = Object.assign(m, proto);\n if (proto.agreements) {\n m.agreements = proto.agreements.map(Agreement.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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.agreements !== 'undefined' && this.agreements !== null) {\n toReturn['agreements'] = 'toApiJson' in this.agreements ? this.agreements.toApiJson() : this.agreements;\n }\n if (typeof this.paymentMethodToken !== 'undefined') {\n toReturn['paymentMethodToken'] = this.paymentMethodToken;\n }\n return toReturn;\n }\n}\nclass CustomerApproveSalesOrderResponse {\n static fromProto(proto) {\n let m = new CustomerApproveSalesOrderResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass CustomerCreateSalesOrderRequest {\n static fromProto(proto) {\n let m = new CustomerCreateSalesOrderRequest();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass CustomerCreateSalesOrderResponse {\n static fromProto(proto) {\n let m = new CustomerCreateSalesOrderResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass CustomerGetConfigurationRequest {\n static fromProto(proto) {\n let m = new CustomerGetConfigurationRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass ListSalesOrderRequestDateRangeFilter {\n static fromProto(proto) {\n let m = new ListSalesOrderRequestDateRangeFilter();\n m = Object.assign(m, proto);\n if (proto.beginRange) {\n m.beginRange = new Date(proto.beginRange);\n }\n if (proto.endRange) {\n m.endRange = new Date(proto.endRange);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.beginRange !== 'undefined' && this.beginRange !== null) {\n toReturn['beginRange'] = 'toApiJson' in this.beginRange ? this.beginRange.toApiJson() : this.beginRange;\n }\n if (typeof this.endRange !== 'undefined' && this.endRange !== null) {\n toReturn['endRange'] = 'toApiJson' in this.endRange ? this.endRange.toApiJson() : this.endRange;\n }\n return toReturn;\n }\n}\nclass ListCustomerSalesOrderRequestDateRangeFilter {\n static fromProto(proto) {\n let m = new ListCustomerSalesOrderRequestDateRangeFilter();\n m = Object.assign(m, proto);\n if (proto.beginRange) {\n m.beginRange = new Date(proto.beginRange);\n }\n if (proto.endRange) {\n m.endRange = new Date(proto.endRange);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.beginRange !== 'undefined' && this.beginRange !== null) {\n toReturn['beginRange'] = 'toApiJson' in this.beginRange ? this.beginRange.toApiJson() : this.beginRange;\n }\n if (typeof this.endRange !== 'undefined' && this.endRange !== null) {\n toReturn['endRange'] = 'toApiJson' in this.endRange ? this.endRange.toApiJson() : this.endRange;\n }\n return toReturn;\n }\n}\nclass InitiateOrderExportRequestDateRangeFilter {\n static fromProto(proto) {\n let m = new InitiateOrderExportRequestDateRangeFilter();\n m = Object.assign(m, proto);\n if (proto.beginRange) {\n m.beginRange = new Date(proto.beginRange);\n }\n if (proto.endRange) {\n m.endRange = new Date(proto.endRange);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.beginRange !== 'undefined' && this.beginRange !== null) {\n toReturn['beginRange'] = 'toApiJson' in this.beginRange ? this.beginRange.toApiJson() : this.beginRange;\n }\n if (typeof this.endRange !== 'undefined' && this.endRange !== null) {\n toReturn['endRange'] = 'toApiJson' in this.endRange ? this.endRange.toApiJson() : this.endRange;\n }\n return toReturn;\n }\n}\nclass ListOrdersRequestDateRangeFilter {\n static fromProto(proto) {\n let m = new ListOrdersRequestDateRangeFilter();\n m = Object.assign(m, proto);\n if (proto.beginRange) {\n m.beginRange = new Date(proto.beginRange);\n }\n if (proto.endRange) {\n m.endRange = new Date(proto.endRange);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.beginRange !== 'undefined' && this.beginRange !== null) {\n toReturn['beginRange'] = 'toApiJson' in this.beginRange ? this.beginRange.toApiJson() : this.beginRange;\n }\n if (typeof this.endRange !== 'undefined' && this.endRange !== null) {\n toReturn['endRange'] = 'toApiJson' in this.endRange ? this.endRange.toApiJson() : this.endRange;\n }\n return toReturn;\n }\n}\nclass DeclineCancellationRequest {\n static fromProto(proto) {\n let m = new DeclineCancellationRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n return toReturn;\n }\n}\nclass DeclineSalesOrderRequest {\n static fromProto(proto) {\n let m = new DeclineSalesOrderRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.declinedReason !== 'undefined') {\n toReturn['declinedReason'] = this.declinedReason;\n }\n if (typeof this.declinedReasonIds !== 'undefined') {\n toReturn['declinedReasonIds'] = this.declinedReasonIds;\n }\n return toReturn;\n }\n}\nclass DeclineSalesOrderResponse {\n static fromProto(proto) {\n let m = new DeclineSalesOrderResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass DeleteConfigRequest {\n static fromProto(proto) {\n let m = new DeleteConfigRequest();\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 return toReturn;\n }\n}\nclass DeleteSalesOrderRequest {\n static fromProto(proto) {\n let m = new DeleteSalesOrderRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass DuplicateSalesOrderRequest {\n static fromProto(proto) {\n let m = new DuplicateSalesOrderRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass DuplicateSalesOrderResponse {\n static fromProto(proto) {\n let m = new DuplicateSalesOrderResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass GetStatusCountsRequestFilters {\n static fromProto(proto) {\n let m = new GetStatusCountsRequestFilters();\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.marketIds !== 'undefined') {\n toReturn['marketIds'] = this.marketIds;\n }\n if (typeof this.salespersonId !== 'undefined') {\n toReturn['salespersonId'] = this.salespersonId;\n }\n return toReturn;\n }\n}\nclass ListSalesOrderRequestFilters {\n static fromProto(proto) {\n let m = new ListSalesOrderRequestFilters();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = ListSalesOrderRequestDateRangeFilter.fromProto(proto.created);\n }\n if (proto.requestedActivation) {\n m.requestedActivation = ListSalesOrderRequestDateRangeFilter.fromProto(proto.requestedActivation);\n }\n if (proto.statuses) {\n m.statuses = proto.statuses.map(v => enumStringToValue$1(Status, v));\n }\n if (proto.expiryDate) {\n m.expiryDate = ListSalesOrderRequestDateRangeFilter.fromProto(proto.expiryDate);\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.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.salespersonId !== 'undefined') {\n toReturn['salespersonId'] = this.salespersonId;\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.requestedActivation !== 'undefined' && this.requestedActivation !== null) {\n toReturn['requestedActivation'] = 'toApiJson' in this.requestedActivation ? this.requestedActivation.toApiJson() : this.requestedActivation;\n }\n if (typeof this.statuses !== 'undefined') {\n toReturn['statuses'] = this.statuses;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.productEditionId !== 'undefined') {\n toReturn['productEditionId'] = this.productEditionId;\n }\n if (typeof this.marketIds !== 'undefined') {\n toReturn['marketIds'] = this.marketIds;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.untagged !== 'undefined') {\n toReturn['untagged'] = this.untagged;\n }\n if (typeof this.packageId !== 'undefined') {\n toReturn['packageId'] = this.packageId;\n }\n if (typeof this.expiryDate !== 'undefined' && this.expiryDate !== null) {\n toReturn['expiryDate'] = 'toApiJson' in this.expiryDate ? this.expiryDate.toApiJson() : this.expiryDate;\n }\n if (typeof this.salespersonIds !== 'undefined') {\n toReturn['salespersonIds'] = this.salespersonIds;\n }\n if (typeof this.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.orderIds !== 'undefined') {\n toReturn['orderIds'] = this.orderIds;\n }\n if (typeof this.includeArchivedOrders !== 'undefined') {\n toReturn['includeArchivedOrders'] = this.includeArchivedOrders;\n }\n return toReturn;\n }\n}\nclass ListOrdersRequestFilters {\n static fromProto(proto) {\n let m = new ListOrdersRequestFilters();\n m = Object.assign(m, proto);\n if (proto.activationStatuses) {\n m.activationStatuses = proto.activationStatuses.map(v => enumStringToValue$1(ActivationStatus, v));\n }\n if (proto.created) {\n m.created = ListOrdersRequestDateRangeFilter.fromProto(proto.created);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.resellerIds !== 'undefined') {\n toReturn['resellerIds'] = this.resellerIds;\n }\n if (typeof this.activationStatuses !== 'undefined') {\n toReturn['activationStatuses'] = this.activationStatuses;\n }\n if (typeof this.fulfillmentStatuses !== 'undefined') {\n toReturn['fulfillmentStatuses'] = this.fulfillmentStatuses;\n }\n if (typeof this.appIds !== 'undefined') {\n toReturn['appIds'] = this.appIds;\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.searchTerm !== 'undefined') {\n toReturn['searchTerm'] = this.searchTerm;\n }\n if (typeof this.excludeChildren !== 'undefined') {\n toReturn['excludeChildren'] = this.excludeChildren;\n }\n if (typeof this.excludeAppIds !== 'undefined') {\n toReturn['excludeAppIds'] = this.excludeAppIds;\n }\n if (typeof this.excludeResellerIds !== 'undefined') {\n toReturn['excludeResellerIds'] = this.excludeResellerIds;\n }\n return toReturn;\n }\n}\nclass InitiateOrderExportRequestFilters {\n static fromProto(proto) {\n let m = new InitiateOrderExportRequestFilters();\n m = Object.assign(m, proto);\n if (proto.created) {\n m.created = InitiateOrderExportRequestDateRangeFilter.fromProto(proto.created);\n }\n if (proto.requestedActivation) {\n m.requestedActivation = InitiateOrderExportRequestDateRangeFilter.fromProto(proto.requestedActivation);\n }\n if (proto.expiryDate) {\n m.expiryDate = InitiateOrderExportRequestDateRangeFilter.fromProto(proto.expiryDate);\n }\n if (proto.statuses) {\n m.statuses = proto.statuses.map(v => enumStringToValue$1(Status, 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.marketIds !== 'undefined') {\n toReturn['marketIds'] = this.marketIds;\n }\n if (typeof this.salespersonIds !== 'undefined') {\n toReturn['salespersonIds'] = this.salespersonIds;\n }\n if (typeof this.salesTeamIds !== 'undefined') {\n toReturn['salesTeamIds'] = this.salesTeamIds;\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.requestedActivation !== 'undefined' && this.requestedActivation !== null) {\n toReturn['requestedActivation'] = 'toApiJson' in this.requestedActivation ? this.requestedActivation.toApiJson() : this.requestedActivation;\n }\n if (typeof this.expiryDate !== 'undefined' && this.expiryDate !== null) {\n toReturn['expiryDate'] = 'toApiJson' in this.expiryDate ? this.expiryDate.toApiJson() : this.expiryDate;\n }\n if (typeof this.statuses !== 'undefined') {\n toReturn['statuses'] = this.statuses;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.untagged !== 'undefined') {\n toReturn['untagged'] = this.untagged;\n }\n if (typeof this.packageIds !== 'undefined') {\n toReturn['packageIds'] = this.packageIds;\n }\n if (typeof this.businessIds !== 'undefined') {\n toReturn['businessIds'] = this.businessIds;\n }\n if (typeof this.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass ListCustomerSalesOrderRequestFilters {\n static fromProto(proto) {\n let m = new ListCustomerSalesOrderRequestFilters();\n m = Object.assign(m, proto);\n if (proto.statuses) {\n m.statuses = proto.statuses.map(v => enumStringToValue$1(Status, v));\n }\n if (proto.created) {\n m.created = ListCustomerSalesOrderRequestDateRangeFilter.fromProto(proto.created);\n }\n if (proto.requestedActivation) {\n m.requestedActivation = ListCustomerSalesOrderRequestDateRangeFilter.fromProto(proto.requestedActivation);\n }\n if (proto.expiryDate) {\n m.expiryDate = ListCustomerSalesOrderRequestDateRangeFilter.fromProto(proto.expiryDate);\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.statuses !== 'undefined') {\n toReturn['statuses'] = this.statuses;\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.requestedActivation !== 'undefined' && this.requestedActivation !== null) {\n toReturn['requestedActivation'] = 'toApiJson' in this.requestedActivation ? this.requestedActivation.toApiJson() : this.requestedActivation;\n }\n if (typeof this.expiryDate !== 'undefined' && this.expiryDate !== null) {\n toReturn['expiryDate'] = 'toApiJson' in this.expiryDate ? this.expiryDate.toApiJson() : this.expiryDate;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass ListReasonsRequestFilters {\n static fromProto(proto) {\n let m = new ListReasonsRequestFilters();\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.includeArchived !== 'undefined') {\n toReturn['includeArchived'] = this.includeArchived;\n }\n return toReturn;\n }\n}\nclass ListTagsRequestFilters {\n static fromProto(proto) {\n let m = new ListTagsRequestFilters();\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.marketIds !== 'undefined') {\n toReturn['marketIds'] = this.marketIds;\n }\n return toReturn;\n }\n}\nclass FulfillmentStatus {\n static fromProto(proto) {\n let m = new FulfillmentStatus();\n m = Object.assign(m, proto);\n if (proto.dueDate) {\n m.dueDate = new Date(proto.dueDate);\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.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.dueDate !== 'undefined' && this.dueDate !== null) {\n toReturn['dueDate'] = 'toApiJson' in this.dueDate ? this.dueDate.toApiJson() : this.dueDate;\n }\n if (typeof this.assignee !== 'undefined') {\n toReturn['assignee'] = this.assignee;\n }\n if (typeof this.projectId !== 'undefined') {\n toReturn['projectId'] = this.projectId;\n }\n if (typeof this.projectName !== 'undefined') {\n toReturn['projectName'] = this.projectName;\n }\n return toReturn;\n }\n}\nclass GetConfigRequest {\n static fromProto(proto) {\n let m = new GetConfigRequest();\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 return toReturn;\n }\n}\nclass GetConfigResponse {\n static fromProto(proto) {\n let m = new GetConfigResponse();\n m = Object.assign(m, proto);\n if (proto.config) {\n m.config = Config.fromProto(proto.config);\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.config !== 'undefined' && this.config !== null) {\n toReturn['config'] = 'toApiJson' in this.config ? this.config.toApiJson() : this.config;\n }\n return toReturn;\n }\n}\nclass GetMultiSalesOrderRequest {\n static fromProto(proto) {\n let m = new GetMultiSalesOrderRequest();\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.orderIds !== 'undefined') {\n toReturn['orderIds'] = this.orderIds;\n }\n return toReturn;\n }\n}\nclass GetMultiSalesOrderResponse {\n static fromProto(proto) {\n let m = new GetMultiSalesOrderResponse();\n m = Object.assign(m, proto);\n if (proto.orders) {\n m.orders = proto.orders.map(Order.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.orders !== 'undefined' && this.orders !== null) {\n toReturn['orders'] = 'toApiJson' in this.orders ? this.orders.toApiJson() : this.orders;\n }\n return toReturn;\n }\n}\nclass GetReasonRequest {\n static fromProto(proto) {\n let m = new GetReasonRequest();\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.id !== 'undefined') {\n toReturn['id'] = this.id;\n }\n return toReturn;\n }\n}\nclass GetReasonResponse {\n static fromProto(proto) {\n let m = new GetReasonResponse();\n m = Object.assign(m, proto);\n if (proto.declinedReason) {\n m.declinedReason = DeclinedReason.fromProto(proto.declinedReason);\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.declinedReason !== 'undefined' && this.declinedReason !== null) {\n toReturn['declinedReason'] = 'toApiJson' in this.declinedReason ? this.declinedReason.toApiJson() : this.declinedReason;\n }\n return toReturn;\n }\n}\nclass GetSalesOrderByIdempotencyKeyRequest {\n static fromProto(proto) {\n let m = new GetSalesOrderByIdempotencyKeyRequest();\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.idempotencyKey !== 'undefined') {\n toReturn['idempotencyKey'] = this.idempotencyKey;\n }\n return toReturn;\n }\n}\nclass GetSalesOrderRequest {\n static fromProto(proto) {\n let m = new GetSalesOrderRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass GetSalesOrderResponse {\n static fromProto(proto) {\n let m = new GetSalesOrderResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass GetStatusCountsRequest {\n static fromProto(proto) {\n let m = new GetStatusCountsRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {\n m.filters = GetStatusCountsRequestFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n return toReturn;\n }\n}\nclass GetStatusCountsResponse {\n static fromProto(proto) {\n let m = new GetStatusCountsResponse();\n m = Object.assign(m, proto);\n if (proto.counts) {\n m.counts = Object.keys(proto.counts).reduce((obj, k) => {\n obj[k] = parseInt(proto.counts[k], 10);\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.counts !== 'undefined' && this.counts !== null) {\n toReturn['counts'] = 'toApiJson' in this.counts ? this.counts.toApiJson() : this.counts;\n }\n return toReturn;\n }\n}\nclass GetSubscribedLocationsRequest {\n static fromProto(proto) {\n let m = new GetSubscribedLocationsRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass GetSubscribedLocationsResponse {\n static fromProto(proto) {\n let m = new GetSubscribedLocationsResponse();\n m = Object.assign(m, proto);\n if (proto.locations) {\n m.locations = proto.locations.map(v => enumStringToValue$1(SubscriptionLocation, 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.locations !== 'undefined') {\n toReturn['locations'] = this.locations;\n }\n return toReturn;\n }\n}\nclass GetSubscribersRequest {\n static fromProto(proto) {\n let m = new GetSubscribersRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass GetSubscribersResponse {\n static fromProto(proto) {\n let m = new GetSubscribersResponse();\n m = Object.assign(m, proto);\n if (proto.subscribers) {\n m.subscribers = proto.subscribers.map(Subscriber.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.subscribers !== 'undefined' && this.subscribers !== null) {\n toReturn['subscribers'] = 'toApiJson' in this.subscribers ? this.subscribers.toApiJson() : this.subscribers;\n }\n return toReturn;\n }\n}\nclass GetUsersRequest {\n static fromProto(proto) {\n let m = new GetUsersRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass GetUsersResponse {\n static fromProto(proto) {\n let m = new GetUsersResponse();\n m = Object.assign(m, proto);\n if (proto.users) {\n m.users = Object.keys(proto.users).reduce((obj, k) => {\n obj[k] = User.fromProto(proto.users[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.users !== 'undefined' && this.users !== null) {\n toReturn['users'] = 'toApiJson' in this.users ? this.users.toApiJson() : this.users;\n }\n return toReturn;\n }\n}\nclass IgnoreAllProductActivationErrorsRequest {\n static fromProto(proto) {\n let m = new IgnoreAllProductActivationErrorsRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass IgnoreProductActivationErrorRequest {\n static fromProto(proto) {\n let m = new IgnoreProductActivationErrorRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.productActivationUniqueId !== 'undefined') {\n toReturn['productActivationUniqueId'] = this.productActivationUniqueId;\n }\n return toReturn;\n }\n}\nclass InitiateOrderExportRequest {\n static fromProto(proto) {\n let m = new InitiateOrderExportRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {\n m.filters = InitiateOrderExportRequestFilters.fromProto(proto.filters);\n }\n if (proto.sortOption) {\n m.sortOption = InitiateOrderExportRequestSortOption.fromProto(proto.sortOption);\n }\n if (proto.selectedDataFormat) {\n m.selectedDataFormat = enumStringToValue$1(InitiateOrderExportRequestDataFormatOption, proto.selectedDataFormat);\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.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n if (typeof this.sortOption !== 'undefined' && this.sortOption !== null) {\n toReturn['sortOption'] = 'toApiJson' in this.sortOption ? this.sortOption.toApiJson() : this.sortOption;\n }\n if (typeof this.tryAgainUrl !== 'undefined') {\n toReturn['tryAgainUrl'] = this.tryAgainUrl;\n }\n if (typeof this.selectedDataFormat !== 'undefined') {\n toReturn['selectedDataFormat'] = this.selectedDataFormat;\n }\n return toReturn;\n }\n}\nclass InitiateOrderExportResponse {\n static fromProto(proto) {\n let m = new InitiateOrderExportResponse();\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.exportId !== 'undefined') {\n toReturn['exportId'] = this.exportId;\n }\n return toReturn;\n }\n}\nclass LeaseData {\n static fromProto(proto) {\n let m = new LeaseData();\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.actionType !== 'undefined') {\n toReturn['actionType'] = this.actionType;\n }\n if (typeof this.declinedReason !== 'undefined') {\n toReturn['declinedReason'] = this.declinedReason;\n }\n if (typeof this.declinedReasonIds !== 'undefined') {\n toReturn['declinedReasonIds'] = this.declinedReasonIds;\n }\n return toReturn;\n }\n}\nclass LeaseSalesOrderToAutomationsRequest {\n static fromProto(proto) {\n let m = new LeaseSalesOrderToAutomationsRequest();\n m = Object.assign(m, proto);\n if (proto.customFields) {\n m.customFields = proto.customFields.map(CustomField.fromProto);\n }\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(CommonField.fromProto);\n }\n if (proto.extraFields) {\n m.extraFields = proto.extraFields.map(Field.fromProto);\n }\n if (proto.leaseData) {\n m.leaseData = LeaseData.fromProto(proto.leaseData);\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n if (typeof this.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\n }\n if (typeof this.extraFields !== 'undefined' && this.extraFields !== null) {\n toReturn['extraFields'] = 'toApiJson' in this.extraFields ? this.extraFields.toApiJson() : this.extraFields;\n }\n if (typeof this.leaseData !== 'undefined' && this.leaseData !== null) {\n toReturn['leaseData'] = 'toApiJson' in this.leaseData ? this.leaseData.toApiJson() : this.leaseData;\n }\n return toReturn;\n }\n}\nclass LeaseSalesOrderToAutomationsResponse {\n static fromProto(proto) {\n let m = new LeaseSalesOrderToAutomationsResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass ListCustomerSalesOrderRequest {\n static fromProto(proto) {\n let m = new ListCustomerSalesOrderRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {\n m.filters = ListCustomerSalesOrderRequestFilters.fromProto(proto.filters);\n }\n if (proto.sortOption) {\n m.sortOption = ListCustomerSalesOrderRequestSortOption.fromProto(proto.sortOption);\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.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\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.sortOption !== 'undefined' && this.sortOption !== null) {\n toReturn['sortOption'] = 'toApiJson' in this.sortOption ? this.sortOption.toApiJson() : this.sortOption;\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 ListOrdersRequest {\n static fromProto(proto) {\n let m = new ListOrdersRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {\n m.filters = ListOrdersRequestFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n return toReturn;\n }\n}\nclass ListOrdersResponse {\n static fromProto(proto) {\n let m = new ListOrdersResponse();\n m = Object.assign(m, proto);\n if (proto.orders) {\n m.orders = proto.orders.map(VendorOrder.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.orders !== 'undefined' && this.orders !== null) {\n toReturn['orders'] = 'toApiJson' in this.orders ? this.orders.toApiJson() : this.orders;\n }\n if (typeof this.nextCursor !== 'undefined') {\n toReturn['nextCursor'] = this.nextCursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n if (typeof this.totalResults !== 'undefined') {\n toReturn['totalResults'] = this.totalResults;\n }\n return toReturn;\n }\n}\nclass ListReasonsRequest {\n static fromProto(proto) {\n let m = new ListReasonsRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {\n m.filters = ListReasonsRequestFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n return toReturn;\n }\n}\nclass ListReasonsResponse {\n static fromProto(proto) {\n let m = new ListReasonsResponse();\n m = Object.assign(m, proto);\n if (proto.declinedReasons) {\n m.declinedReasons = proto.declinedReasons.map(DeclinedReason.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.declinedReasons !== 'undefined' && this.declinedReasons !== null) {\n toReturn['declinedReasons'] = 'toApiJson' in this.declinedReasons ? this.declinedReasons.toApiJson() : this.declinedReasons;\n }\n return toReturn;\n }\n}\nclass ListSalesOrderRequest {\n static fromProto(proto) {\n let m = new ListSalesOrderRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {\n m.filters = ListSalesOrderRequestFilters.fromProto(proto.filters);\n }\n if (proto.sortOption) {\n m.sortOption = ListSalesOrderRequestSortOption.fromProto(proto.sortOption);\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.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\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.sortOption !== 'undefined' && this.sortOption !== null) {\n toReturn['sortOption'] = 'toApiJson' in this.sortOption ? this.sortOption.toApiJson() : this.sortOption;\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 ListSalesOrderResponse {\n static fromProto(proto) {\n let m = new ListSalesOrderResponse();\n m = Object.assign(m, proto);\n if (proto.orders) {\n m.orders = proto.orders.map(Order.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.orders !== 'undefined' && this.orders !== null) {\n toReturn['orders'] = 'toApiJson' in this.orders ? this.orders.toApiJson() : this.orders;\n }\n if (typeof this.nextCursor !== 'undefined') {\n toReturn['nextCursor'] = this.nextCursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n if (typeof this.totalResults !== 'undefined') {\n toReturn['totalResults'] = this.totalResults;\n }\n return toReturn;\n }\n}\nclass ListTagsRequest {\n static fromProto(proto) {\n let m = new ListTagsRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {\n m.filters = ListTagsRequestFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n return toReturn;\n }\n}\nclass ListTagsResponse {\n static fromProto(proto) {\n let m = new ListTagsResponse();\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.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n return toReturn;\n }\n}\nclass PreviewOrderActivationsRequest {\n static fromProto(proto) {\n let m = new PreviewOrderActivationsRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass PreviewOrderActivationsResponse {\n static fromProto(proto) {\n let m = new PreviewOrderActivationsResponse();\n m = Object.assign(m, proto);\n if (proto.productActivations) {\n m.productActivations = proto.productActivations.map(ProductActivation.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.productActivations !== 'undefined' && this.productActivations !== null) {\n toReturn['productActivations'] = 'toApiJson' in this.productActivations ? this.productActivations.toApiJson() : this.productActivations;\n }\n return toReturn;\n }\n}\nclass Pricing {\n static fromProto(proto) {\n let m = new Pricing();\n m = Object.assign(m, proto);\n if (proto.amount) {\n m.amount = parseInt(proto.amount, 10);\n }\n if (proto.setupFee) {\n m.setupFee = parseInt(proto.setupFee, 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.amount !== 'undefined') {\n toReturn['amount'] = this.amount;\n }\n if (typeof this.setupFee !== 'undefined') {\n toReturn['setupFee'] = this.setupFee;\n }\n if (typeof this.currencyCode !== 'undefined') {\n toReturn['currencyCode'] = this.currencyCode;\n }\n if (typeof this.frequency !== 'undefined') {\n toReturn['frequency'] = this.frequency;\n }\n return toReturn;\n }\n}\nclass RequestCancellationRequest {\n static fromProto(proto) {\n let m = new RequestCancellationRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n return toReturn;\n }\n}\nclass ScheduleActivationRequest {\n static fromProto(proto) {\n let m = new ScheduleActivationRequest();\n m = Object.assign(m, proto);\n if (proto.customFields) {\n m.customFields = proto.customFields.map(CustomField.fromProto);\n }\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(CommonField.fromProto);\n }\n if (proto.extraFields) {\n m.extraFields = proto.extraFields.map(Field.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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n if (typeof this.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\n }\n if (typeof this.extraFields !== 'undefined' && this.extraFields !== null) {\n toReturn['extraFields'] = 'toApiJson' in this.extraFields ? this.extraFields.toApiJson() : this.extraFields;\n }\n return toReturn;\n }\n}\nclass SendExistingOrderToCustomerForApprovalRequest {\n static fromProto(proto) {\n let m = new SendExistingOrderToCustomerForApprovalRequest();\n m = Object.assign(m, proto);\n if (proto.offerExpiry) {\n m.offerExpiry = new Date(proto.offerExpiry);\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.offerExpiry !== 'undefined' && this.offerExpiry !== null) {\n toReturn['offerExpiry'] = 'toApiJson' in this.offerExpiry ? this.offerExpiry.toApiJson() : this.offerExpiry;\n }\n if (typeof this.orderIsSmbPayable !== 'undefined') {\n toReturn['orderIsSmbPayable'] = this.orderIsSmbPayable;\n }\n return toReturn;\n }\n}\nclass SendForCustomerApprovalRequest {\n static fromProto(proto) {\n let m = new SendForCustomerApprovalRequest();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\n }\n if (proto.offerExpiry) {\n m.offerExpiry = new Date(proto.offerExpiry);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.offerExpiry !== 'undefined' && this.offerExpiry !== null) {\n toReturn['offerExpiry'] = 'toApiJson' in this.offerExpiry ? this.offerExpiry.toApiJson() : this.offerExpiry;\n }\n if (typeof this.useCustomerPrice !== 'undefined') {\n toReturn['useCustomerPrice'] = this.useCustomerPrice;\n }\n return toReturn;\n }\n}\nclass SendForCustomerApprovalResponse {\n static fromProto(proto) {\n let m = new SendForCustomerApprovalResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass ListSalesOrderRequestSortOption {\n static fromProto(proto) {\n let m = new ListSalesOrderRequestSortOption();\n m = Object.assign(m, proto);\n if (proto.direction) {\n m.direction = enumStringToValue$1(ListSalesOrderRequestSortDirection, proto.direction);\n }\n if (proto.field) {\n m.field = enumStringToValue$1(ListSalesOrderRequestSortField, proto.field);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.direction !== 'undefined') {\n toReturn['direction'] = this.direction;\n }\n if (typeof this.field !== 'undefined') {\n toReturn['field'] = this.field;\n }\n return toReturn;\n }\n}\nclass ListCustomerSalesOrderRequestSortOption {\n static fromProto(proto) {\n let m = new ListCustomerSalesOrderRequestSortOption();\n m = Object.assign(m, proto);\n if (proto.direction) {\n m.direction = enumStringToValue$1(ListCustomerSalesOrderRequestSortDirection, proto.direction);\n }\n if (proto.field) {\n m.field = enumStringToValue$1(ListCustomerSalesOrderRequestSortField, proto.field);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.direction !== 'undefined') {\n toReturn['direction'] = this.direction;\n }\n if (typeof this.field !== 'undefined') {\n toReturn['field'] = this.field;\n }\n return toReturn;\n }\n}\nclass InitiateOrderExportRequestSortOption {\n static fromProto(proto) {\n let m = new InitiateOrderExportRequestSortOption();\n m = Object.assign(m, proto);\n if (proto.direction) {\n m.direction = enumStringToValue$1(InitiateOrderExportRequestSortDirection, proto.direction);\n }\n if (proto.field) {\n m.field = enumStringToValue$1(InitiateOrderExportRequestSortField, proto.field);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.direction !== 'undefined') {\n toReturn['direction'] = this.direction;\n }\n if (typeof this.field !== 'undefined') {\n toReturn['field'] = this.field;\n }\n return toReturn;\n }\n}\nclass SubmitDraftForApprovalRequest {\n static fromProto(proto) {\n let m = new SubmitDraftForApprovalRequest();\n m = Object.assign(m, proto);\n if (proto.customFields) {\n m.customFields = proto.customFields.map(CustomField.fromProto);\n }\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(CommonField.fromProto);\n }\n if (proto.extraFields) {\n m.extraFields = proto.extraFields.map(Field.fromProto);\n }\n if (proto.offerExpiry) {\n m.offerExpiry = new Date(proto.offerExpiry);\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n if (typeof this.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\n }\n if (typeof this.extraFields !== 'undefined' && this.extraFields !== null) {\n toReturn['extraFields'] = 'toApiJson' in this.extraFields ? this.extraFields.toApiJson() : this.extraFields;\n }\n if (typeof this.offerExpiry !== 'undefined' && this.offerExpiry !== null) {\n toReturn['offerExpiry'] = 'toApiJson' in this.offerExpiry ? this.offerExpiry.toApiJson() : this.offerExpiry;\n }\n return toReturn;\n }\n}\nclass SubmitDraftForApprovalResponse {\n static fromProto(proto) {\n let m = new SubmitDraftForApprovalResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass SubmitDraftRequest {\n static fromProto(proto) {\n let m = new SubmitDraftRequest();\n m = Object.assign(m, proto);\n if (proto.customFields) {\n m.customFields = proto.customFields.map(CustomField.fromProto);\n }\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(CommonField.fromProto);\n }\n if (proto.extraFields) {\n m.extraFields = proto.extraFields.map(Field.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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n if (typeof this.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\n }\n if (typeof this.extraFields !== 'undefined' && this.extraFields !== null) {\n toReturn['extraFields'] = 'toApiJson' in this.extraFields ? this.extraFields.toApiJson() : this.extraFields;\n }\n return toReturn;\n }\n}\nclass SubmitDraftResponse {\n static fromProto(proto) {\n let m = new SubmitDraftResponse();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n return toReturn;\n }\n}\nclass SubscribeRequest {\n static fromProto(proto) {\n let m = new SubscribeRequest();\n m = Object.assign(m, proto);\n if (proto.location) {\n m.location = enumStringToValue$1(SubscriptionLocation, proto.location);\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.location !== 'undefined') {\n toReturn['location'] = this.location;\n }\n return toReturn;\n }\n}\nclass UnsubscribeRequest {\n static fromProto(proto) {\n let m = new UnsubscribeRequest();\n m = Object.assign(m, proto);\n if (proto.location) {\n m.location = enumStringToValue$1(SubscriptionLocation, proto.location);\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.location !== 'undefined') {\n toReturn['location'] = this.location;\n }\n return toReturn;\n }\n}\nclass UpdateAnswersRequest {\n static fromProto(proto) {\n let m = new UpdateAnswersRequest();\n m = Object.assign(m, proto);\n if (proto.customFields) {\n m.customFields = proto.customFields.map(CustomField.fromProto);\n }\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(CommonField.fromProto);\n }\n if (proto.extraFields) {\n m.extraFields = proto.extraFields.map(Field.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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n if (typeof this.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\n }\n if (typeof this.extraFields !== 'undefined' && this.extraFields !== null) {\n toReturn['extraFields'] = 'toApiJson' in this.extraFields ? this.extraFields.toApiJson() : this.extraFields;\n }\n return toReturn;\n }\n}\nclass UpdateAnswersResponse {\n static fromProto(proto) {\n let m = new UpdateAnswersResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass UpdateAttachmentsRequest {\n static fromProto(proto) {\n let m = new UpdateAttachmentsRequest();\n m = Object.assign(m, proto);\n if (proto.attachments) {\n m.attachments = proto.attachments.map(Attachment.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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.attachments !== 'undefined' && this.attachments !== null) {\n toReturn['attachments'] = 'toApiJson' in this.attachments ? this.attachments.toApiJson() : this.attachments;\n }\n return toReturn;\n }\n}\nclass UpdateConfigRequest {\n static fromProto(proto) {\n let m = new UpdateConfigRequest();\n m = Object.assign(m, proto);\n if (proto.config) {\n m.config = Config.fromProto(proto.config);\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.config !== 'undefined' && this.config !== null) {\n toReturn['config'] = 'toApiJson' in this.config ? this.config.toApiJson() : this.config;\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 UpdateContractDurationRequest {\n static fromProto(proto) {\n let m = new UpdateContractDurationRequest();\n m = Object.assign(m, proto);\n if (proto.contractDuration) {\n m.contractDuration = Duration.fromProto(proto.contractDuration);\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.contractDuration !== 'undefined' && this.contractDuration !== null) {\n toReturn['contractDuration'] = 'toApiJson' in this.contractDuration ? this.contractDuration.toApiJson() : this.contractDuration;\n }\n return toReturn;\n }\n}\nclass UpdateCurrentRevenueRequest {\n static fromProto(proto) {\n let m = new UpdateCurrentRevenueRequest();\n m = Object.assign(m, proto);\n if (proto.lineItems) {\n m.lineItems = proto.lineItems.map(LineItem.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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.lineItems !== 'undefined' && this.lineItems !== null) {\n toReturn['lineItems'] = 'toApiJson' in this.lineItems ? this.lineItems.toApiJson() : this.lineItems;\n }\n return toReturn;\n }\n}\nclass UpdateCustomerNotesRequest {\n static fromProto(proto) {\n let m = new UpdateCustomerNotesRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.customerNotes !== 'undefined') {\n toReturn['customerNotes'] = this.customerNotes;\n }\n return toReturn;\n }\n}\nclass UpdateLineItemsRequest {\n static fromProto(proto) {\n let m = new UpdateLineItemsRequest();\n m = Object.assign(m, proto);\n if (proto.lineItems) {\n m.lineItems = proto.lineItems.map(LineItem.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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.lineItems !== 'undefined' && this.lineItems !== null) {\n toReturn['lineItems'] = 'toApiJson' in this.lineItems ? this.lineItems.toApiJson() : this.lineItems;\n }\n return toReturn;\n }\n}\nclass UpdateNotesRequest {\n static fromProto(proto) {\n let m = new UpdateNotesRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.notes !== 'undefined') {\n toReturn['notes'] = this.notes;\n }\n return toReturn;\n }\n}\nclass UpdateReasonRequest {\n static fromProto(proto) {\n let m = new UpdateReasonRequest();\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.id !== 'undefined') {\n toReturn['id'] = this.id;\n }\n if (typeof this.reason !== 'undefined') {\n toReturn['reason'] = this.reason;\n }\n return toReturn;\n }\n}\nclass UpdateReasonResponse {\n static fromProto(proto) {\n let m = new UpdateReasonResponse();\n m = Object.assign(m, proto);\n if (proto.declinedReason) {\n m.declinedReason = DeclinedReason.fromProto(proto.declinedReason);\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.declinedReason !== 'undefined' && this.declinedReason !== null) {\n toReturn['declinedReason'] = 'toApiJson' in this.declinedReason ? this.declinedReason.toApiJson() : this.declinedReason;\n }\n return toReturn;\n }\n}\nclass UpdateRequestedActivationRequest {\n static fromProto(proto) {\n let m = new UpdateRequestedActivationRequest();\n m = Object.assign(m, proto);\n if (proto.requestedActivation) {\n m.requestedActivation = new Date(proto.requestedActivation);\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.requestedActivation !== 'undefined' && this.requestedActivation !== null) {\n toReturn['requestedActivation'] = 'toApiJson' in this.requestedActivation ? this.requestedActivation.toApiJson() : this.requestedActivation;\n }\n return toReturn;\n }\n}\nclass UpdateSalesOrderMarketRequest {\n static fromProto(proto) {\n let m = new UpdateSalesOrderMarketRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n return toReturn;\n }\n}\nclass UpdateSalespersonRequest {\n static fromProto(proto) {\n let m = new UpdateSalespersonRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.salespersonId !== 'undefined') {\n toReturn['salespersonId'] = this.salespersonId;\n }\n return toReturn;\n }\n}\nclass UpdateSalespersonResponse {\n static fromProto(proto) {\n let m = new UpdateSalespersonResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass UpdateTagsRequest {\n static fromProto(proto) {\n let m = new UpdateTagsRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n return toReturn;\n }\n}\nclass UpdateTagsResponse {\n static fromProto(proto) {\n let m = new UpdateTagsResponse();\n m = Object.assign(m, proto);\n if (proto.order) {\n m.order = Order.fromProto(proto.order);\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.order !== 'undefined' && this.order !== null) {\n toReturn['order'] = 'toApiJson' in this.order ? this.order.toApiJson() : this.order;\n }\n return toReturn;\n }\n}\nclass GetUsersResponseUsersEntry {\n static fromProto(proto) {\n let m = new GetUsersResponseUsersEntry();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = User.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 VendorOrder {\n static fromProto(proto) {\n let m = new VendorOrder();\n m = Object.assign(m, proto);\n if (proto.business) {\n m.business = Business.fromProto(proto.business);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.pricing) {\n m.pricing = Pricing.fromProto(proto.pricing);\n }\n if (proto.activationStatus) {\n m.activationStatus = enumStringToValue$1(ActivationStatus, proto.activationStatus);\n }\n if (proto.fulfillmentStatus) {\n m.fulfillmentStatus = FulfillmentStatus.fromProto(proto.fulfillmentStatus);\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.orderFormSubmissionId !== 'undefined') {\n toReturn['orderFormSubmissionId'] = this.orderFormSubmissionId;\n }\n if (typeof this.resellerId !== 'undefined') {\n toReturn['resellerId'] = this.resellerId;\n }\n if (typeof this.resellerName !== 'undefined') {\n toReturn['resellerName'] = this.resellerName;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n if (typeof this.appName !== 'undefined') {\n toReturn['appName'] = this.appName;\n }\n if (typeof this.business !== 'undefined' && this.business !== null) {\n toReturn['business'] = 'toApiJson' in this.business ? this.business.toApiJson() : this.business;\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.pricing !== 'undefined' && this.pricing !== null) {\n toReturn['pricing'] = 'toApiJson' in this.pricing ? this.pricing.toApiJson() : this.pricing;\n }\n if (typeof this.activationStatus !== 'undefined') {\n toReturn['activationStatus'] = this.activationStatus;\n }\n if (typeof this.fulfillmentStatus !== 'undefined' && this.fulfillmentStatus !== null) {\n toReturn['fulfillmentStatus'] = 'toApiJson' in this.fulfillmentStatus ? this.fulfillmentStatus.toApiJson() : this.fulfillmentStatus;\n }\n if (typeof this.rejectedReason !== 'undefined') {\n toReturn['rejectedReason'] = this.rejectedReason;\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 ArchiveDocumentRequest {\n static fromProto(proto) {\n let m = new ArchiveDocumentRequest();\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n return toReturn;\n }\n}\nclass Content {\n static fromProto(proto) {\n let m = new Content();\n m = Object.assign(m, proto);\n if (proto.type) {\n m.type = enumStringToValue(ContentType, proto.type);\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.type !== 'undefined') {\n toReturn['type'] = this.type;\n }\n if (typeof this.value !== 'undefined') {\n toReturn['value'] = this.value;\n }\n return toReturn;\n }\n}\nclass CreateDocumentRequest {\n static fromProto(proto) {\n let m = new CreateDocumentRequest();\n m = Object.assign(m, proto);\n if (proto.document) {\n m.document = Document.fromProto(proto.document);\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.document !== 'undefined' && this.document !== null) {\n toReturn['document'] = 'toApiJson' in this.document ? this.document.toApiJson() : this.document;\n }\n return toReturn;\n }\n}\nclass CreateDocumentResponse {\n static fromProto(proto) {\n let m = new CreateDocumentResponse();\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n return toReturn;\n }\n}\nclass DeleteDocumentRequest {\n static fromProto(proto) {\n let m = new DeleteDocumentRequest();\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n return toReturn;\n }\n}\nclass Document {\n static fromProto(proto) {\n let m = new Document();\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 if (proto.pageCount) {\n m.pageCount = parseInt(proto.pageCount, 10);\n }\n if (proto.type) {\n m.type = enumStringToValue(DocumentType, proto.type);\n }\n if (proto.shareType) {\n m.shareType = enumStringToValue(DocumentShareType, proto.shareType);\n }\n if (proto.organizationType) {\n m.organizationType = enumStringToValue(OrganizationType, proto.organizationType);\n }\n if (proto.recipientOrganizationType) {\n m.recipientOrganizationType = enumStringToValue(OrganizationType, proto.recipientOrganizationType);\n }\n if (proto.status) {\n m.status = enumStringToValue(DocumentStatus, proto.status);\n }\n if (proto.archived) {\n m.archived = new Date(proto.archived);\n }\n if (proto.viewCount) {\n m.viewCount = parseInt(proto.viewCount, 10);\n }\n if (proto.format) {\n m.format = Format.fromProto(proto.format);\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n if (typeof this.title !== 'undefined') {\n toReturn['title'] = this.title;\n }\n if (typeof this.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.updated !== 'undefined' && this.updated !== null) {\n toReturn['updated'] = 'toApiJson' in this.updated ? this.updated.toApiJson() : this.updated;\n }\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {\n toReturn['deleted'] = 'toApiJson' in this.deleted ? this.deleted.toApiJson() : this.deleted;\n }\n if (typeof this.pageCount !== 'undefined') {\n toReturn['pageCount'] = this.pageCount;\n }\n if (typeof this.jsonContent !== 'undefined') {\n toReturn['jsonContent'] = this.jsonContent;\n }\n if (typeof this.type !== 'undefined') {\n toReturn['type'] = this.type;\n }\n if (typeof this.shareType !== 'undefined') {\n toReturn['shareType'] = this.shareType;\n }\n if (typeof this.organizationId !== 'undefined') {\n toReturn['organizationId'] = this.organizationId;\n }\n if (typeof this.organizationType !== 'undefined') {\n toReturn['organizationType'] = this.organizationType;\n }\n if (typeof this.creatorUserId !== 'undefined') {\n toReturn['creatorUserId'] = this.creatorUserId;\n }\n if (typeof this.recipientOrganizationId !== 'undefined') {\n toReturn['recipientOrganizationId'] = this.recipientOrganizationId;\n }\n if (typeof this.recipientOrganizationType !== 'undefined') {\n toReturn['recipientOrganizationType'] = this.recipientOrganizationType;\n }\n if (typeof this.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.tags !== 'undefined') {\n toReturn['tags'] = this.tags;\n }\n if (typeof this.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.archived !== 'undefined' && this.archived !== null) {\n toReturn['archived'] = 'toApiJson' in this.archived ? this.archived.toApiJson() : this.archived;\n }\n if (typeof this.viewCount !== 'undefined') {\n toReturn['viewCount'] = this.viewCount;\n }\n if (typeof this.thumbnailPath !== 'undefined') {\n toReturn['thumbnailPath'] = this.thumbnailPath;\n }\n if (typeof this.pdfPath !== 'undefined') {\n toReturn['pdfPath'] = this.pdfPath;\n }\n if (typeof this.snapshotId !== 'undefined') {\n toReturn['snapshotId'] = this.snapshotId;\n }\n if (typeof this.currencyCode !== 'undefined') {\n toReturn['currencyCode'] = this.currencyCode;\n }\n if (typeof this.recipientContactId !== 'undefined') {\n toReturn['recipientContactId'] = this.recipientContactId;\n }\n if (typeof this.format !== 'undefined' && this.format !== null) {\n toReturn['format'] = 'toApiJson' in this.format ? this.format.toApiJson() : this.format;\n }\n return toReturn;\n }\n}\nclass DocumentEmailRecipient {\n static fromProto(proto) {\n let m = new DocumentEmailRecipient();\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.emailAddress !== 'undefined') {\n toReturn['emailAddress'] = this.emailAddress;\n }\n return toReturn;\n }\n}\nclass DocumentEvent {\n static fromProto(proto) {\n let m = new DocumentEvent();\n m = Object.assign(m, proto);\n if (proto.occurred) {\n m.occurred = new Date(proto.occurred);\n }\n if (proto.eventType) {\n m.eventType = enumStringToValue(DocumentEventType, proto.eventType);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n if (proto.context) {\n m.context = DocumentEventContext.fromProto(proto.context);\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n if (typeof this.occurred !== 'undefined' && this.occurred !== null) {\n toReturn['occurred'] = 'toApiJson' in this.occurred ? this.occurred.toApiJson() : this.occurred;\n }\n if (typeof this.performedBy !== 'undefined') {\n toReturn['performedBy'] = this.performedBy;\n }\n if (typeof this.eventType !== 'undefined') {\n toReturn['eventType'] = this.eventType;\n }\n if (typeof this.eventContext !== 'undefined') {\n toReturn['eventContext'] = this.eventContext;\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.context !== 'undefined' && this.context !== null) {\n toReturn['context'] = 'toApiJson' in this.context ? this.context.toApiJson() : this.context;\n }\n return toReturn;\n }\n}\nclass DocumentEventContext {\n static fromProto(proto) {\n let m = new DocumentEventContext();\n m = Object.assign(m, proto);\n if (proto.sentByEmailContext) {\n m.sentByEmailContext = DocumentEventContextSentByEmail.fromProto(proto.sentByEmailContext);\n }\n if (proto.viewedByRecipientContext) {\n m.viewedByRecipientContext = DocumentEventContextViewedByRecipient.fromProto(proto.viewedByRecipientContext);\n }\n if (proto.approvedByRecipientContext) {\n m.approvedByRecipientContext = DocumentEventContextApprovedByRecipient.fromProto(proto.approvedByRecipientContext);\n }\n if (proto.feedbackFromRecipientContext) {\n m.feedbackFromRecipientContext = DocumentEventContextFeedbackFromRecipient.fromProto(proto.feedbackFromRecipientContext);\n }\n if (proto.commentFromInternalUserContext) {\n m.commentFromInternalUserContext = DocumentEventContextCommentFromInternalUser.fromProto(proto.commentFromInternalUserContext);\n }\n if (proto.sendForInternalReviewContext) {\n m.sendForInternalReviewContext = DocumentEventContextSendForInternalReview.fromProto(proto.sendForInternalReviewContext);\n }\n if (proto.reviewedByInternalUserContext) {\n m.reviewedByInternalUserContext = DocumentEventContextReviewedByInternalUser.fromProto(proto.reviewedByInternalUserContext);\n }\n if (proto.unlockedDocumentContext) {\n m.unlockedDocumentContext = DocumentEventContextUnlockDocument.fromProto(proto.unlockedDocumentContext);\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.sentByEmailContext !== 'undefined' && this.sentByEmailContext !== null) {\n toReturn['sentByEmailContext'] = 'toApiJson' in this.sentByEmailContext ? this.sentByEmailContext.toApiJson() : this.sentByEmailContext;\n }\n if (typeof this.viewedByRecipientContext !== 'undefined' && this.viewedByRecipientContext !== null) {\n toReturn['viewedByRecipientContext'] = 'toApiJson' in this.viewedByRecipientContext ? this.viewedByRecipientContext.toApiJson() : this.viewedByRecipientContext;\n }\n if (typeof this.approvedByRecipientContext !== 'undefined' && this.approvedByRecipientContext !== null) {\n toReturn['approvedByRecipientContext'] = 'toApiJson' in this.approvedByRecipientContext ? this.approvedByRecipientContext.toApiJson() : this.approvedByRecipientContext;\n }\n if (typeof this.feedbackFromRecipientContext !== 'undefined' && this.feedbackFromRecipientContext !== null) {\n toReturn['feedbackFromRecipientContext'] = 'toApiJson' in this.feedbackFromRecipientContext ? this.feedbackFromRecipientContext.toApiJson() : this.feedbackFromRecipientContext;\n }\n if (typeof this.commentFromInternalUserContext !== 'undefined' && this.commentFromInternalUserContext !== null) {\n toReturn['commentFromInternalUserContext'] = 'toApiJson' in this.commentFromInternalUserContext ? this.commentFromInternalUserContext.toApiJson() : this.commentFromInternalUserContext;\n }\n if (typeof this.sendForInternalReviewContext !== 'undefined' && this.sendForInternalReviewContext !== null) {\n toReturn['sendForInternalReviewContext'] = 'toApiJson' in this.sendForInternalReviewContext ? this.sendForInternalReviewContext.toApiJson() : this.sendForInternalReviewContext;\n }\n if (typeof this.reviewedByInternalUserContext !== 'undefined' && this.reviewedByInternalUserContext !== null) {\n toReturn['reviewedByInternalUserContext'] = 'toApiJson' in this.reviewedByInternalUserContext ? this.reviewedByInternalUserContext.toApiJson() : this.reviewedByInternalUserContext;\n }\n if (typeof this.unlockedDocumentContext !== 'undefined' && this.unlockedDocumentContext !== null) {\n toReturn['unlockedDocumentContext'] = 'toApiJson' in this.unlockedDocumentContext ? this.unlockedDocumentContext.toApiJson() : this.unlockedDocumentContext;\n }\n return toReturn;\n }\n}\nclass DocumentEventContextApprovedByRecipient {\n static fromProto(proto) {\n let m = new DocumentEventContextApprovedByRecipient();\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 return toReturn;\n }\n}\nclass DocumentEventContextCommentFromInternalUser {\n static fromProto(proto) {\n let m = new DocumentEventContextCommentFromInternalUser();\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.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.conversationOriginLocationExternalId !== 'undefined') {\n toReturn['conversationOriginLocationExternalId'] = this.conversationOriginLocationExternalId;\n }\n return toReturn;\n }\n}\nclass DocumentEventContextFeedbackFromRecipient {\n static fromProto(proto) {\n let m = new DocumentEventContextFeedbackFromRecipient();\n m = Object.assign(m, proto);\n if (proto.recipientOrganizationType) {\n m.recipientOrganizationType = enumStringToValue(OrganizationType, proto.recipientOrganizationType);\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.recipientOrganizationId !== 'undefined') {\n toReturn['recipientOrganizationId'] = this.recipientOrganizationId;\n }\n if (typeof this.recipientOrganizationType !== 'undefined') {\n toReturn['recipientOrganizationType'] = this.recipientOrganizationType;\n }\n if (typeof this.recipientEmail !== 'undefined') {\n toReturn['recipientEmail'] = this.recipientEmail;\n }\n if (typeof this.recipientName !== 'undefined') {\n toReturn['recipientName'] = this.recipientName;\n }\n return toReturn;\n }\n}\nclass DocumentEventContextReviewedByInternalUser {\n static fromProto(proto) {\n let m = new DocumentEventContextReviewedByInternalUser();\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.reviewerUserId !== 'undefined') {\n toReturn['reviewerUserId'] = this.reviewerUserId;\n }\n if (typeof this.comment !== 'undefined') {\n toReturn['comment'] = this.comment;\n }\n return toReturn;\n }\n}\nclass DocumentEventContextSendForInternalReview {\n static fromProto(proto) {\n let m = new DocumentEventContextSendForInternalReview();\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.requesterUserId !== 'undefined') {\n toReturn['requesterUserId'] = this.requesterUserId;\n }\n if (typeof this.reviewerUserId !== 'undefined') {\n toReturn['reviewerUserId'] = this.reviewerUserId;\n }\n if (typeof this.comment !== 'undefined') {\n toReturn['comment'] = this.comment;\n }\n return toReturn;\n }\n}\nclass DocumentEventContextSentByEmail {\n static fromProto(proto) {\n let m = new DocumentEventContextSentByEmail();\n m = Object.assign(m, proto);\n if (proto.sentEmails) {\n m.sentEmails = proto.sentEmails.map(SentDocumentEmail.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.sentEmails !== 'undefined' && this.sentEmails !== null) {\n toReturn['sentEmails'] = 'toApiJson' in this.sentEmails ? this.sentEmails.toApiJson() : this.sentEmails;\n }\n return toReturn;\n }\n}\nclass DocumentEventContextUnlockDocument {\n static fromProto(proto) {\n let m = new DocumentEventContextUnlockDocument();\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.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n return toReturn;\n }\n}\nclass DocumentEventContextViewedByRecipient {\n static fromProto(proto) {\n let m = new DocumentEventContextViewedByRecipient();\n m = Object.assign(m, proto);\n if (proto.recipientOrganizationType) {\n m.recipientOrganizationType = enumStringToValue(OrganizationType, proto.recipientOrganizationType);\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\n }\n if (typeof this.recipientOrganizationId !== 'undefined') {\n toReturn['recipientOrganizationId'] = this.recipientOrganizationId;\n }\n if (typeof this.recipientOrganizationType !== 'undefined') {\n toReturn['recipientOrganizationType'] = this.recipientOrganizationType;\n }\n if (typeof this.recipientEmail !== 'undefined') {\n toReturn['recipientEmail'] = this.recipientEmail;\n }\n if (typeof this.recipientName !== 'undefined') {\n toReturn['recipientName'] = this.recipientName;\n }\n return toReturn;\n }\n}\nclass ListDocumentsRequestFilters {\n static fromProto(proto) {\n let m = new ListDocumentsRequestFilters();\n m = Object.assign(m, proto);\n if (proto.types) {\n m.types = proto.types.map(v => enumStringToValue(DocumentType, v));\n }\n if (proto.statuses) {\n m.statuses = proto.statuses.map(v => enumStringToValue(DocumentStatus, 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.types !== 'undefined') {\n toReturn['types'] = this.types;\n }\n if (typeof this.organizationId !== 'undefined') {\n toReturn['organizationId'] = this.organizationId;\n }\n if (typeof this.recipientOrganizationId !== 'undefined') {\n toReturn['recipientOrganizationId'] = this.recipientOrganizationId;\n }\n if (typeof this.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.statuses !== 'undefined') {\n toReturn['statuses'] = this.statuses;\n }\n return toReturn;\n }\n}\nclass ListDocumentEventsRequestFilters {\n static fromProto(proto) {\n let m = new ListDocumentEventsRequestFilters();\n m = Object.assign(m, proto);\n if (proto.eventTypes) {\n m.eventTypes = proto.eventTypes.map(v => enumStringToValue(DocumentEventType, 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.eventTypes !== 'undefined') {\n toReturn['eventTypes'] = this.eventTypes;\n }\n return toReturn;\n }\n}\nclass SearchDocumentsRequestFilters {\n static fromProto(proto) {\n let m = new SearchDocumentsRequestFilters();\n m = Object.assign(m, proto);\n if (proto.types) {\n m.types = proto.types.map(v => enumStringToValue(DocumentType, v));\n }\n if (proto.statuses) {\n m.statuses = proto.statuses.map(v => enumStringToValue(DocumentStatus, 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.types !== 'undefined') {\n toReturn['types'] = this.types;\n }\n if (typeof this.statuses !== 'undefined') {\n toReturn['statuses'] = this.statuses;\n }\n if (typeof this.organizationId !== 'undefined') {\n toReturn['organizationId'] = this.organizationId;\n }\n if (typeof this.recipientOrganizationId !== 'undefined') {\n toReturn['recipientOrganizationId'] = this.recipientOrganizationId;\n }\n if (typeof this.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.organizationUserIds !== 'undefined') {\n toReturn['organizationUserIds'] = this.organizationUserIds;\n }\n return toReturn;\n }\n}\nclass Format {\n static fromProto(proto) {\n let m = new Format();\n m = Object.assign(m, proto);\n if (proto.orientation) {\n m.orientation = enumStringToValue(Orientation, proto.orientation);\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.orientation !== 'undefined') {\n toReturn['orientation'] = this.orientation;\n }\n return toReturn;\n }\n}\nclass GenerateDocumentPDFRequest {\n static fromProto(proto) {\n let m = new GenerateDocumentPDFRequest();\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n return toReturn;\n }\n}\nclass GetDocumentLineItemsRequest {\n static fromProto(proto) {\n let m = new GetDocumentLineItemsRequest();\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n return toReturn;\n }\n}\nclass GetDocumentLineItemsResponse {\n static fromProto(proto) {\n let m = new GetDocumentLineItemsResponse();\n m = Object.assign(m, proto);\n if (proto.lineItems) {\n m.lineItems = proto.lineItems.map(LineItem.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.lineItems !== 'undefined' && this.lineItems !== null) {\n toReturn['lineItems'] = 'toApiJson' in this.lineItems ? this.lineItems.toApiJson() : this.lineItems;\n }\n return toReturn;\n }\n}\nclass GetDocumentRequest {\n static fromProto(proto) {\n let m = new GetDocumentRequest();\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n return toReturn;\n }\n}\nclass GetDocumentResponse {\n static fromProto(proto) {\n let m = new GetDocumentResponse();\n m = Object.assign(m, proto);\n if (proto.document) {\n m.document = Document.fromProto(proto.document);\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.document !== 'undefined' && this.document !== null) {\n toReturn['document'] = 'toApiJson' in this.document ? this.document.toApiJson() : this.document;\n }\n return toReturn;\n }\n}\nclass GetMultiDocumentsRequest {\n static fromProto(proto) {\n let m = new GetMultiDocumentsRequest();\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.documentIds !== 'undefined') {\n toReturn['documentIds'] = this.documentIds;\n }\n return toReturn;\n }\n}\nclass GetMultiDocumentsResponse {\n static fromProto(proto) {\n let m = new GetMultiDocumentsResponse();\n m = Object.assign(m, proto);\n if (proto.documents) {\n m.documents = proto.documents.map(Document.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.documents !== 'undefined' && this.documents !== null) {\n toReturn['documents'] = 'toApiJson' in this.documents ? this.documents.toApiJson() : this.documents;\n }\n return toReturn;\n }\n}\nclass GetProposalEmailPreviewRequest {\n static fromProto(proto) {\n let m = new GetProposalEmailPreviewRequest();\n m = Object.assign(m, proto);\n if (proto.proposalEmailDetails) {\n m.proposalEmailDetails = ProposalEmailDetails.fromProto(proto.proposalEmailDetails);\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n if (typeof this.proposalEmailDetails !== 'undefined' && this.proposalEmailDetails !== null) {\n toReturn['proposalEmailDetails'] = 'toApiJson' in this.proposalEmailDetails ? this.proposalEmailDetails.toApiJson() : this.proposalEmailDetails;\n }\n if (typeof this.senderUserId !== 'undefined') {\n toReturn['senderUserId'] = this.senderUserId;\n }\n return toReturn;\n }\n}\nclass GetProposalEmailPreviewResponse {\n static fromProto(proto) {\n let m = new GetProposalEmailPreviewResponse();\n m = Object.assign(m, proto);\n if (proto.emailPreviewContent) {\n m.emailPreviewContent = Content.fromProto(proto.emailPreviewContent);\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.emailPreviewContent !== 'undefined' && this.emailPreviewContent !== null) {\n toReturn['emailPreviewContent'] = 'toApiJson' in this.emailPreviewContent ? this.emailPreviewContent.toApiJson() : this.emailPreviewContent;\n }\n return toReturn;\n }\n}\nclass ListDocumentEventsRequest {\n static fromProto(proto) {\n let m = new ListDocumentEventsRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {\n m.filters = ListDocumentEventsRequestFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n return toReturn;\n }\n}\nclass ListDocumentEventsResponse {\n static fromProto(proto) {\n let m = new ListDocumentEventsResponse();\n m = Object.assign(m, proto);\n if (proto.events) {\n m.events = proto.events.map(DocumentEvent.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.events !== 'undefined' && this.events !== null) {\n toReturn['events'] = 'toApiJson' in this.events ? this.events.toApiJson() : this.events;\n }\n return toReturn;\n }\n}\nclass ListDocumentsRequest {\n static fromProto(proto) {\n let m = new ListDocumentsRequest();\n m = Object.assign(m, proto);\n if (proto.paging) {\n m.paging = PagedRequestOptions.fromProto(proto.paging);\n }\n if (proto.filters) {\n m.filters = ListDocumentsRequestFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.paging !== 'undefined' && this.paging !== null) {\n toReturn['paging'] = 'toApiJson' in this.paging ? this.paging.toApiJson() : this.paging;\n }\n if (typeof this.filters !== 'undefined' && this.filters !== null) {\n toReturn['filters'] = 'toApiJson' in this.filters ? this.filters.toApiJson() : this.filters;\n }\n return toReturn;\n }\n}\nclass ListDocumentsResponse {\n static fromProto(proto) {\n let m = new ListDocumentsResponse();\n m = Object.assign(m, proto);\n if (proto.documents) {\n m.documents = proto.documents.map(Document.fromProto);\n }\n if (proto.paging) {\n m.paging = PagedResponseMetadata.fromProto(proto.paging);\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.documents !== 'undefined' && this.documents !== null) {\n toReturn['documents'] = 'toApiJson' in this.documents ? this.documents.toApiJson() : this.documents;\n }\n if (typeof this.paging !== 'undefined' && this.paging !== null) {\n toReturn['paging'] = 'toApiJson' in this.paging ? this.paging.toApiJson() : this.paging;\n }\n return toReturn;\n }\n}\nclass MarkDocumentAsReviewedRequest {\n static fromProto(proto) {\n let m = new MarkDocumentAsReviewedRequest();\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n if (typeof this.reviewerUserId !== 'undefined') {\n toReturn['reviewerUserId'] = this.reviewerUserId;\n }\n if (typeof this.comment !== 'undefined') {\n toReturn['comment'] = this.comment;\n }\n return toReturn;\n }\n}\nclass MarkDocumentAsViewedRequest {\n static fromProto(proto) {\n let m = new MarkDocumentAsViewedRequest();\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n if (typeof this.orderToken !== 'undefined') {\n toReturn['orderToken'] = this.orderToken;\n }\n return toReturn;\n }\n}\nclass ProposalEmailDetails {\n static fromProto(proto) {\n let m = new ProposalEmailDetails();\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.subject !== 'undefined') {\n toReturn['subject'] = this.subject;\n }\n if (typeof this.emailText !== 'undefined') {\n toReturn['emailText'] = this.emailText;\n }\n if (typeof this.proposalLinkText !== 'undefined') {\n toReturn['proposalLinkText'] = this.proposalLinkText;\n }\n if (typeof this.closingText !== 'undefined') {\n toReturn['closingText'] = this.closingText;\n }\n return toReturn;\n }\n}\nclass ProposalEmailMessage {\n static fromProto(proto) {\n let m = new ProposalEmailMessage();\n m = Object.assign(m, proto);\n if (proto.to) {\n m.to = proto.to.map(Recipient.fromProto);\n }\n if (proto.replyTo) {\n m.replyTo = Recipient.fromProto(proto.replyTo);\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.to !== 'undefined' && this.to !== null) {\n toReturn['to'] = 'toApiJson' in this.to ? this.to.toApiJson() : this.to;\n }\n if (typeof this.replyTo !== 'undefined' && this.replyTo !== null) {\n toReturn['replyTo'] = 'toApiJson' in this.replyTo ? this.replyTo.toApiJson() : this.replyTo;\n }\n return toReturn;\n }\n}\nclass Recipient {\n static fromProto(proto) {\n let m = new Recipient();\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.emailAddress !== 'undefined') {\n toReturn['emailAddress'] = this.emailAddress;\n }\n return toReturn;\n }\n}\nclass SearchDocumentsRequest {\n static fromProto(proto) {\n let m = new SearchDocumentsRequest();\n m = Object.assign(m, proto);\n if (proto.paging) {\n m.paging = PagedRequestOptions.fromProto(proto.paging);\n }\n if (proto.filters) {\n m.filters = SearchDocumentsRequestFilters.fromProto(proto.filters);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.paging !== 'undefined' && this.paging !== null) {\n toReturn['paging'] = 'toApiJson' in this.paging ? this.paging.toApiJson() : this.paging;\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.searchTerm !== 'undefined') {\n toReturn['searchTerm'] = this.searchTerm;\n }\n return toReturn;\n }\n}\nclass SearchDocumentsResponse {\n static fromProto(proto) {\n let m = new SearchDocumentsResponse();\n m = Object.assign(m, proto);\n if (proto.documents) {\n m.documents = proto.documents.map(Document.fromProto);\n }\n if (proto.paging) {\n m.paging = PagedResponseMetadata.fromProto(proto.paging);\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.documents !== 'undefined' && this.documents !== null) {\n toReturn['documents'] = 'toApiJson' in this.documents ? this.documents.toApiJson() : this.documents;\n }\n if (typeof this.paging !== 'undefined' && this.paging !== null) {\n toReturn['paging'] = 'toApiJson' in this.paging ? this.paging.toApiJson() : this.paging;\n }\n return toReturn;\n }\n}\nclass SendDocumentForInternalReviewRequest {\n static fromProto(proto) {\n let m = new SendDocumentForInternalReviewRequest();\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n if (typeof this.requesterUserId !== 'undefined') {\n toReturn['requesterUserId'] = this.requesterUserId;\n }\n if (typeof this.reviewerUserId !== 'undefined') {\n toReturn['reviewerUserId'] = this.reviewerUserId;\n }\n if (typeof this.comment !== 'undefined') {\n toReturn['comment'] = this.comment;\n }\n return toReturn;\n }\n}\nclass SendProposalRecipientEmailRequest {\n static fromProto(proto) {\n let m = new SendProposalRecipientEmailRequest();\n m = Object.assign(m, proto);\n if (proto.proposalEmailMessage) {\n m.proposalEmailMessage = ProposalEmailMessage.fromProto(proto.proposalEmailMessage);\n }\n if (proto.proposalEmailDetails) {\n m.proposalEmailDetails = ProposalEmailDetails.fromProto(proto.proposalEmailDetails);\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.proposalEmailMessage !== 'undefined' && this.proposalEmailMessage !== null) {\n toReturn['proposalEmailMessage'] = 'toApiJson' in this.proposalEmailMessage ? this.proposalEmailMessage.toApiJson() : this.proposalEmailMessage;\n }\n if (typeof this.senderUserId !== 'undefined') {\n toReturn['senderUserId'] = this.senderUserId;\n }\n if (typeof this.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n if (typeof this.idempotencyKey !== 'undefined') {\n toReturn['idempotencyKey'] = this.idempotencyKey;\n }\n if (typeof this.organizationId !== 'undefined') {\n toReturn['organizationId'] = this.organizationId;\n }\n if (typeof this.proposalEmailDetails !== 'undefined' && this.proposalEmailDetails !== null) {\n toReturn['proposalEmailDetails'] = 'toApiJson' in this.proposalEmailDetails ? this.proposalEmailDetails.toApiJson() : this.proposalEmailDetails;\n }\n return toReturn;\n }\n}\nclass SentDocumentEmail {\n static fromProto(proto) {\n let m = new SentDocumentEmail();\n m = Object.assign(m, proto);\n if (proto.recipient) {\n m.recipient = DocumentEmailRecipient.fromProto(proto.recipient);\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.emailId !== 'undefined') {\n toReturn['emailId'] = this.emailId;\n }\n if (typeof this.recipient !== 'undefined' && this.recipient !== null) {\n toReturn['recipient'] = 'toApiJson' in this.recipient ? this.recipient.toApiJson() : this.recipient;\n }\n return toReturn;\n }\n}\nclass UnarchiveDocumentRequest {\n static fromProto(proto) {\n let m = new UnarchiveDocumentRequest();\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n return toReturn;\n }\n}\nclass UnlockDocumentRequest {\n static fromProto(proto) {\n let m = new UnlockDocumentRequest();\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n return toReturn;\n }\n}\nclass UpdateDocumentRequest {\n static fromProto(proto) {\n let m = new UpdateDocumentRequest();\n m = Object.assign(m, proto);\n if (proto.document) {\n m.document = Document.fromProto(proto.document);\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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n if (typeof this.document !== 'undefined' && this.document !== null) {\n toReturn['document'] = 'toApiJson' in this.document ? this.document.toApiJson() : this.document;\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 UpsertDocumentLineItemsRequest {\n static fromProto(proto) {\n let m = new UpsertDocumentLineItemsRequest();\n m = Object.assign(m, proto);\n if (proto.lineItems) {\n m.lineItems = proto.lineItems.map(LineItem.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.documentId !== 'undefined') {\n toReturn['documentId'] = this.documentId;\n }\n if (typeof this.lineItems !== 'undefined' && this.lineItems !== null) {\n toReturn['lineItems'] = 'toApiJson' in this.lineItems ? this.lineItems.toApiJson() : this.lineItems;\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': 'sales-orders-api.vendasta-local.com',\n 'test': '',\n 'demo': 'sales-orders-demo.apigateway.co',\n 'prod': 'sales-orders-prod.apigateway.co',\n 'production': 'sales-orders-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(t) {\n return new (t || HostService)();\n };\n HostService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: HostService,\n factory: HostService.ɵfac,\n providedIn: 'root'\n });\n return HostService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet CustomerSalesOrdersApiService = /*#__PURE__*/(() => {\n class CustomerSalesOrdersApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n createSalesOrder(r) {\n const request = r.toApiJson ? r : new CustomerCreateSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/CreateSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CustomerCreateSalesOrderResponse.fromProto(resp)));\n }\n approveSalesOrder(r) {\n const request = r.toApiJson ? r : new CustomerApproveSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/ApproveSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CustomerApproveSalesOrderResponse.fromProto(resp)));\n }\n updateAnswers(r) {\n const request = r.toApiJson ? r : new UpdateAnswersRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/UpdateAnswers\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpdateAnswersResponse.fromProto(resp)));\n }\n getSalesOrder(r) {\n const request = r.toApiJson ? r : new GetSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/GetSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetSalesOrderResponse.fromProto(resp)));\n }\n listSalesOrder(r) {\n const request = r.toApiJson ? r : new ListCustomerSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/ListSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListSalesOrderResponse.fromProto(resp)));\n }\n getUsers(r) {\n const request = r.toApiJson ? r : new GetUsersRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/GetUsers\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetUsersResponse.fromProto(resp)));\n }\n declineSalesOrder(r) {\n const request = r.toApiJson ? r : new DeclineSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/DeclineSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => DeclineResponse.fromProto(resp)));\n }\n getConfig(r) {\n const request = r.toApiJson ? r : new CustomerGetConfigurationRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/GetConfig\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetConfigurationResponse.fromProto(resp)));\n }\n initiateOrderExport(r) {\n const request = r.toApiJson ? r : new InitiateOrderExportRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/InitiateOrderExport\", request.toApiJson(), this.apiOptions()).pipe(map(resp => InitiateOrderExportResponse.fromProto(resp)));\n }\n createForPartnerApproval(r) {\n const request = r.toApiJson ? r : new CreateForPartnerApprovalRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/CreateForPartnerApproval\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateForPartnerApprovalResponse.fromProto(resp)));\n }\n createWithPaymentIntent(r) {\n const request = r.toApiJson ? r : new CreateWithPaymentIntentRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/CreateWithPaymentIntent\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateWithPaymentIntentResponse.fromProto(resp)));\n }\n previewOrderActivations(r) {\n const request = r.toApiJson ? r : new PreviewOrderActivationsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.CustomerSalesOrders/PreviewOrderActivations\", request.toApiJson(), this.apiOptions()).pipe(map(resp => PreviewOrderActivationsResponse.fromProto(resp)));\n }\n }\n CustomerSalesOrdersApiService.ɵfac = function CustomerSalesOrdersApiService_Factory(t) {\n return new (t || CustomerSalesOrdersApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n CustomerSalesOrdersApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: CustomerSalesOrdersApiService,\n factory: CustomerSalesOrdersApiService.ɵfac,\n providedIn: 'root'\n });\n return CustomerSalesOrdersApiService;\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 SalesOrdersApiService = /*#__PURE__*/(() => {\n class SalesOrdersApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n createSalesOrder(r) {\n const request = r.toApiJson ? r : new CreateSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/CreateSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateSalesOrderResponse.fromProto(resp)));\n }\n customerCreateSalesOrder(r) {\n const request = r.toApiJson ? r : new CustomerCreateSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/CustomerCreateSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CustomerCreateSalesOrderResponse.fromProto(resp)));\n }\n duplicateSalesOrder(r) {\n const request = r.toApiJson ? r : new DuplicateSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/DuplicateSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => DuplicateSalesOrderResponse.fromProto(resp)));\n }\n updateSalesOrderMarket(r) {\n const request = r.toApiJson ? r : new UpdateSalesOrderMarketRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateSalesOrderMarket\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getSalesOrder(r) {\n const request = r.toApiJson ? r : new GetSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/GetSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetSalesOrderResponse.fromProto(resp)));\n }\n getMultiSalesOrder(r) {\n const request = r.toApiJson ? r : new GetMultiSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/GetMultiSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiSalesOrderResponse.fromProto(resp)));\n }\n getSalesOrderByIdempotencyKey(r) {\n const request = r.toApiJson ? r : new GetSalesOrderByIdempotencyKeyRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/GetSalesOrderByIdempotencyKey\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetSalesOrderResponse.fromProto(resp)));\n }\n listSalesOrder(r) {\n const request = r.toApiJson ? r : new ListSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/ListSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListSalesOrderResponse.fromProto(resp)));\n }\n approveSalesOrder(r) {\n const request = r.toApiJson ? r : new ApproveSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/ApproveSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ApproveSalesOrderResponse.fromProto(resp)));\n }\n customerApproveSalesOrder(r) {\n const request = r.toApiJson ? r : new CustomerApproveSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/CustomerApproveSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CustomerApproveSalesOrderResponse.fromProto(resp)));\n }\n declineSalesOrder(r) {\n const request = r.toApiJson ? r : new DeclineSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/DeclineSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => DeclineSalesOrderResponse.fromProto(resp)));\n }\n activateProducts(r) {\n const request = r.toApiJson ? r : new ActivateProductsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/ActivateProducts\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ActivateProductsResponse.fromProto(resp)));\n }\n scheduleActivation(r) {\n const request = r.toApiJson ? r : new ScheduleActivationRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/ScheduleActivation\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n archiveSalesOrder(r) {\n const request = r.toApiJson ? r : new ArchiveSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/ArchiveSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ArchiveSalesOrderResponse.fromProto(resp)));\n }\n deleteSalesOrder(r) {\n const request = r.toApiJson ? r : new DeleteSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/DeleteSalesOrder\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n checkSalesOrderExists(r) {\n const request = r.toApiJson ? r : new CheckSalesOrderExistsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/CheckSalesOrderExists\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CheckSalesOrderExistsResponse.fromProto(resp)));\n }\n sendForCustomerApproval(r) {\n const request = r.toApiJson ? r : new SendForCustomerApprovalRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/SendForCustomerApproval\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SendForCustomerApprovalResponse.fromProto(resp)));\n }\n sendExistingOrderToCustomerForApproval(r) {\n const request = r.toApiJson ? r : new SendExistingOrderToCustomerForApprovalRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/SendExistingOrderToCustomerForApproval\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getUsers(r) {\n const request = r.toApiJson ? r : new GetUsersRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/GetUsers\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetUsersResponse.fromProto(resp)));\n }\n getConfig(r) {\n const request = r.toApiJson ? r : new GetConfigRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/GetConfig\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetConfigResponse.fromProto(resp)));\n }\n updateConfig(r) {\n const request = r.toApiJson ? r : new UpdateConfigRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateConfig\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deleteConfig(r) {\n const request = r.toApiJson ? r : new DeleteConfigRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/DeleteConfig\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n updateAnswers(r) {\n const request = r.toApiJson ? r : new UpdateAnswersRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateAnswers\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpdateAnswersResponse.fromProto(resp)));\n }\n updateTags(r) {\n const request = r.toApiJson ? r : new UpdateTagsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateTags\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpdateTagsResponse.fromProto(resp)));\n }\n updateSalesperson(r) {\n const request = r.toApiJson ? r : new UpdateSalespersonRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateSalesperson\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpdateSalespersonResponse.fromProto(resp)));\n }\n updateNotes(r) {\n const request = r.toApiJson ? r : new UpdateNotesRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateNotes\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n updateRequestedActivation(r) {\n const request = r.toApiJson ? r : new UpdateRequestedActivationRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateRequestedActivation\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n updateContractDuration(r) {\n const request = r.toApiJson ? r : new UpdateContractDurationRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateContractDuration\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n updateCurrentRevenue(r) {\n const request = r.toApiJson ? r : new UpdateCurrentRevenueRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateCurrentRevenue\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n updateLineItems(r) {\n const request = r.toApiJson ? r : new UpdateLineItemsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateLineItems\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n listTags(r) {\n const request = r.toApiJson ? r : new ListTagsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/ListTags\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListTagsResponse.fromProto(resp)));\n }\n createDraftSalesOrder(r) {\n const request = r.toApiJson ? r : new CreateDraftSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/CreateDraftSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateDraftSalesOrderResponse.fromProto(resp)));\n }\n submitDraftSalesOrder(r) {\n const request = r.toApiJson ? r : new SubmitDraftRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/SubmitDraftSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SubmitDraftResponse.fromProto(resp)));\n }\n submitDraftForCustomerApproval(r) {\n const request = r.toApiJson ? r : new SubmitDraftForApprovalRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/SubmitDraftForCustomerApproval\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SubmitDraftForApprovalResponse.fromProto(resp)));\n }\n ignoreProductActivationError(r) {\n const request = r.toApiJson ? r : new IgnoreProductActivationErrorRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/IgnoreProductActivationError\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n ignoreAllProductActivationErrors(r) {\n const request = r.toApiJson ? r : new IgnoreAllProductActivationErrorsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/IgnoreAllProductActivationErrors\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n requestCancellation(r) {\n const request = r.toApiJson ? r : new RequestCancellationRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/RequestCancellation\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n declineCancellation(r) {\n const request = r.toApiJson ? r : new DeclineCancellationRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/DeclineCancellation\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n previewOrderActivations(r) {\n const request = r.toApiJson ? r : new PreviewOrderActivationsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/PreviewOrderActivations\", request.toApiJson(), this.apiOptions()).pipe(map(resp => PreviewOrderActivationsResponse.fromProto(resp)));\n }\n approveCancellation(r) {\n const request = r.toApiJson ? r : new ApproveCancellationRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/ApproveCancellation\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n convertToDraft(r) {\n const request = r.toApiJson ? r : new ConvertToDraftRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/ConvertToDraft\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getStatusCounts(r) {\n const request = r.toApiJson ? r : new GetStatusCountsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/GetStatusCounts\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetStatusCountsResponse.fromProto(resp)));\n }\n createInvoice(r) {\n const request = r.toApiJson ? r : new CreateInvoiceRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/CreateInvoice\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateInvoiceResponse.fromProto(resp)));\n }\n createAndActivateOrder(r) {\n const request = r.toApiJson ? r : new CreateAndActivateOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/CreateAndActivateOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateAndActivateOrderResponse.fromProto(resp)));\n }\n updateCustomerNotes(r) {\n const request = r.toApiJson ? r : new UpdateCustomerNotesRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateCustomerNotes\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n updateAttachments(r) {\n const request = r.toApiJson ? r : new UpdateAttachmentsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/UpdateAttachments\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n leaseSalesOrderToAutomations(r) {\n const request = r.toApiJson ? r : new LeaseSalesOrderToAutomationsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/LeaseSalesOrderToAutomations\", request.toApiJson(), this.apiOptions()).pipe(map(resp => LeaseSalesOrderToAutomationsResponse.fromProto(resp)));\n }\n createLeasedToAutomationsSalesOrder(r) {\n const request = r.toApiJson ? r : new CreateLeasedToAutomationsSalesOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/CreateLeasedToAutomationsSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateLeasedToAutomationsSalesOrderResponse.fromProto(resp)));\n }\n getOrderRecipientDetails(r) {\n const request = r.toApiJson ? r : new GetOrderRecipientDetailsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrders/GetOrderRecipientDetails\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetOrderRecipientDetailsResponse.fromProto(resp)));\n }\n }\n SalesOrdersApiService.ɵfac = function SalesOrdersApiService_Factory(t) {\n return new (t || SalesOrdersApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n SalesOrdersApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: SalesOrdersApiService,\n factory: SalesOrdersApiService.ɵfac,\n providedIn: 'root'\n });\n return SalesOrdersApiService;\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 DeclinedReasonsApiService = /*#__PURE__*/(() => {\n class DeclinedReasonsApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n createReason(r) {\n const request = r.toApiJson ? r : new CreateReasonRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.DeclinedReasons/CreateReason\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateReasonResponse.fromProto(resp)));\n }\n updateReason(r) {\n const request = r.toApiJson ? r : new UpdateReasonRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.DeclinedReasons/UpdateReason\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpdateReasonResponse.fromProto(resp)));\n }\n archiveReason(r) {\n const request = r.toApiJson ? r : new ArchiveReasonRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.DeclinedReasons/ArchiveReason\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n listReasons(r) {\n const request = r.toApiJson ? r : new ListReasonsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.DeclinedReasons/ListReasons\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListReasonsResponse.fromProto(resp)));\n }\n getReason(r) {\n const request = r.toApiJson ? r : new GetReasonRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.DeclinedReasons/GetReason\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetReasonResponse.fromProto(resp)));\n }\n }\n DeclinedReasonsApiService.ɵfac = function DeclinedReasonsApiService_Factory(t) {\n return new (t || DeclinedReasonsApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n DeclinedReasonsApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: DeclinedReasonsApiService,\n factory: DeclinedReasonsApiService.ɵfac,\n providedIn: 'root'\n });\n return DeclinedReasonsApiService;\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 DocumentsApiService = /*#__PURE__*/(() => {\n class DocumentsApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n createDocument(r) {\n const request = r.toApiJson ? r : new CreateDocumentRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/CreateDocument\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateDocumentResponse.fromProto(resp)));\n }\n updateDocument(r) {\n const request = r.toApiJson ? r : new UpdateDocumentRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/UpdateDocument\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getDocument(r) {\n const request = r.toApiJson ? r : new GetDocumentRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/GetDocument\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetDocumentResponse.fromProto(resp)));\n }\n getMultiDocuments(r) {\n const request = r.toApiJson ? r : new GetMultiDocumentsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/GetMultiDocuments\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiDocumentsResponse.fromProto(resp)));\n }\n listDocuments(r) {\n const request = r.toApiJson ? r : new ListDocumentsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/ListDocuments\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListDocumentsResponse.fromProto(resp)));\n }\n deleteDocument(r) {\n const request = r.toApiJson ? r : new DeleteDocumentRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/DeleteDocument\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getDocumentLineItems(r) {\n const request = r.toApiJson ? r : new GetDocumentLineItemsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/GetDocumentLineItems\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetDocumentLineItemsResponse.fromProto(resp)));\n }\n upsertDocumentLineItems(r) {\n const request = r.toApiJson ? r : new UpsertDocumentLineItemsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/UpsertDocumentLineItems\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n sendProposalRecipientEmail(r) {\n const request = r.toApiJson ? r : new SendProposalRecipientEmailRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/SendProposalRecipientEmail\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getProposalEmailPreview(r) {\n const request = r.toApiJson ? r : new GetProposalEmailPreviewRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/GetProposalEmailPreview\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetProposalEmailPreviewResponse.fromProto(resp)));\n }\n archiveDocument(r) {\n const request = r.toApiJson ? r : new ArchiveDocumentRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/ArchiveDocument\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n markDocumentAsViewed(r) {\n const request = r.toApiJson ? r : new MarkDocumentAsViewedRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/MarkDocumentAsViewed\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n listDocumentEvents(r) {\n const request = r.toApiJson ? r : new ListDocumentEventsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/ListDocumentEvents\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListDocumentEventsResponse.fromProto(resp)));\n }\n sendDocumentForInternalReview(r) {\n const request = r.toApiJson ? r : new SendDocumentForInternalReviewRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/SendDocumentForInternalReview\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n markDocumentAsReviewed(r) {\n const request = r.toApiJson ? r : new MarkDocumentAsReviewedRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/MarkDocumentAsReviewed\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n unlockDocument(r) {\n const request = r.toApiJson ? r : new UnlockDocumentRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/UnlockDocument\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n unarchiveDocument(r) {\n const request = r.toApiJson ? r : new UnarchiveDocumentRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/UnarchiveDocument\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n searchDocuments(r) {\n const request = r.toApiJson ? r : new SearchDocumentsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/SearchDocuments\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SearchDocumentsResponse.fromProto(resp)));\n }\n generateDocumentPdf(r) {\n const request = r.toApiJson ? r : new GenerateDocumentPDFRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Documents/GenerateDocumentPDF\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n DocumentsApiService.ɵfac = function DocumentsApiService_Factory(t) {\n return new (t || DocumentsApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n DocumentsApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: DocumentsApiService,\n factory: DocumentsApiService.ɵfac,\n providedIn: 'root'\n });\n return DocumentsApiService;\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 NotificationsApiService = /*#__PURE__*/(() => {\n class NotificationsApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n subscribe(r) {\n const request = r.toApiJson ? r : new SubscribeRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Notifications/Subscribe\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n unsubscribe(r) {\n const request = r.toApiJson ? r : new UnsubscribeRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Notifications/Unsubscribe\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getSubscribedLocations(r) {\n const request = r.toApiJson ? r : new GetSubscribedLocationsRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Notifications/GetSubscribedLocations\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetSubscribedLocationsResponse.fromProto(resp)));\n }\n getSubscribers(r) {\n const request = r.toApiJson ? r : new GetSubscribersRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Notifications/GetSubscribers\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetSubscribersResponse.fromProto(resp)));\n }\n }\n NotificationsApiService.ɵfac = function NotificationsApiService_Factory(t) {\n return new (t || NotificationsApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n NotificationsApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: NotificationsApiService,\n factory: NotificationsApiService.ɵfac,\n providedIn: 'root'\n });\n return NotificationsApiService;\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 PublicApiService = /*#__PURE__*/(() => {\n class PublicApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n approveSalesOrder(r) {\n const request = r.toApiJson ? r : new ApproveRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Public/ApproveSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ApproveResponse.fromProto(resp)));\n }\n declineSalesOrder(r) {\n const request = r.toApiJson ? r : new DeclineRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Public/DeclineSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => DeclineResponse.fromProto(resp)));\n }\n getSalesOrder(r) {\n const request = r.toApiJson ? r : new GetRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Public/GetSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetResponse.fromProto(resp)));\n }\n updateOrderFormAnswers(r) {\n const request = r.toApiJson ? r : new UpdateOrderFormAnswersRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Public/UpdateOrderFormAnswers\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpdateOrderFormAnswersResponse.fromProto(resp)));\n }\n getConfig(r) {\n const request = r.toApiJson ? r : new GetConfigurationRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Public/GetConfig\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetConfigurationResponse.fromProto(resp)));\n }\n getOrderRecipientSession(r) {\n const request = r.toApiJson ? r : new GetOrderRecipientSessionRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.Public/GetOrderRecipientSession\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetOrderRecipientSessionResponse.fromProto(resp)));\n }\n }\n PublicApiService.ɵfac = function PublicApiService_Factory(t) {\n return new (t || PublicApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n PublicApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: PublicApiService,\n factory: PublicApiService.ɵfac,\n providedIn: 'root'\n });\n return PublicApiService;\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 SalesOrdersAuxiliaryFieldDataApiService = /*#__PURE__*/(() => {\n class SalesOrdersAuxiliaryFieldDataApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n listAuxiliaryData(r) {\n const request = r.toApiJson ? r : new ListSalesOderAuxiliaryDataRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrdersAuxiliaryFieldData/ListAuxiliaryData\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListAuxiliaryDataResponse.fromProto(resp)));\n }\n upsertAuxiliaryData(r) {\n const request = r.toApiJson ? r : new UpsertSalesOrderAuxiliaryDataRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrdersAuxiliaryFieldData/UpsertAuxiliaryData\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n SalesOrdersAuxiliaryFieldDataApiService.ɵfac = function SalesOrdersAuxiliaryFieldDataApiService_Factory(t) {\n return new (t || SalesOrdersAuxiliaryFieldDataApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n SalesOrdersAuxiliaryFieldDataApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: SalesOrdersAuxiliaryFieldDataApiService,\n factory: SalesOrdersAuxiliaryFieldDataApiService.ɵfac,\n providedIn: 'root'\n });\n return SalesOrdersAuxiliaryFieldDataApiService;\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 SalesOrdersAuxiliaryFieldSchemaApiService = /*#__PURE__*/(() => {\n class SalesOrdersAuxiliaryFieldSchemaApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n createAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new CreateAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrdersAuxiliaryFieldSchema/CreateAuxiliaryDataFieldSchema\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new GetAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrdersAuxiliaryFieldSchema/GetAuxiliaryDataFieldSchema\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetAuxiliaryDataFieldSchemaResponse.fromProto(resp)));\n }\n listAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new ListAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrdersAuxiliaryFieldSchema/ListAuxiliaryDataFieldSchema\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListAuxiliaryDataFieldSchemaResponse.fromProto(resp)));\n }\n updateAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new UpdateAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrdersAuxiliaryFieldSchema/UpdateAuxiliaryDataFieldSchema\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n archiveAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new ArchiveAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrdersAuxiliaryFieldSchema/ArchiveAuxiliaryDataFieldSchema\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n unarchiveAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new UnarchiveAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrdersAuxiliaryFieldSchema/UnarchiveAuxiliaryDataFieldSchema\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getMultiAuxiliaryDataFieldSchema(r) {\n const request = r.toApiJson ? r : new GetMultiAuxiliaryDataFieldSchemaRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrdersAuxiliaryFieldSchema/GetMultiAuxiliaryDataFieldSchema\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiAuxiliaryDataFieldSchemaResponse.fromProto(resp)));\n }\n }\n SalesOrdersAuxiliaryFieldSchemaApiService.ɵfac = function SalesOrdersAuxiliaryFieldSchemaApiService_Factory(t) {\n return new (t || SalesOrdersAuxiliaryFieldSchemaApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n SalesOrdersAuxiliaryFieldSchemaApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: SalesOrdersAuxiliaryFieldSchemaApiService,\n factory: SalesOrdersAuxiliaryFieldSchemaApiService.ɵfac,\n providedIn: 'root'\n });\n return SalesOrdersAuxiliaryFieldSchemaApiService;\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 SalesOrdersDevelopmentApiService = /*#__PURE__*/(() => {\n class SalesOrdersDevelopmentApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n createArchivedOrder(r) {\n const request = r.toApiJson ? r : new CreateArchivedOrderRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.SalesOrdersDevelopment/CreateArchivedOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateArchivedOrderResponse.fromProto(resp)));\n }\n }\n SalesOrdersDevelopmentApiService.ɵfac = function SalesOrdersDevelopmentApiService_Factory(t) {\n return new (t || SalesOrdersDevelopmentApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n SalesOrdersDevelopmentApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: SalesOrdersDevelopmentApiService,\n factory: SalesOrdersDevelopmentApiService.ɵfac,\n providedIn: 'root'\n });\n return SalesOrdersDevelopmentApiService;\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 VendorOrdersApiService = /*#__PURE__*/(() => {\n class VendorOrdersApiService {\n constructor(http, hostService) {\n this.http = http;\n this.hostService = hostService;\n this._host = this.hostService.hostWithScheme;\n }\n apiOptions() {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n listOrders(r) {\n const request = r.toApiJson ? r : new ListOrdersRequest(r);\n return this.http.post(this._host + \"/salesorders.v1.VendorOrders/ListOrders\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListOrdersResponse.fromProto(resp)));\n }\n }\n VendorOrdersApiService.ɵfac = function VendorOrdersApiService_Factory(t) {\n return new (t || VendorOrdersApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n VendorOrdersApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: VendorOrdersApiService,\n factory: VendorOrdersApiService.ɵfac,\n providedIn: 'root'\n });\n return VendorOrdersApiService;\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\nfunction fillOutEmptyValues(order) {\n if (!order.statusHistory) {\n order.statusHistory = [];\n }\n if (!order.lineItems) {\n order.lineItems = [];\n }\n if (!order.origin) {\n order.origin = 0;\n }\n return order;\n}\nfunction getOfferExpiry(order) {\n if (order.status !== Status.SUBMITTED_FOR_CUSTOMER_APPROVAL) {\n return null;\n }\n return order.offerExpiry;\n}\nclass PagedResponse {\n constructor(results, nextCursor, hasMore, totalResults) {\n this.results = results;\n this.nextCursor = nextCursor;\n this.hasMore = hasMore;\n this.totalResults = totalResults;\n }\n}\nlet SalesOrdersService = /*#__PURE__*/(() => {\n class SalesOrdersService {\n constructor(api, hostService) {\n this.api = api;\n this.hostService = hostService;\n }\n /*\n NOTE:\n @deprecated: createOrder instead\n */\n create(salespersonId, partnerId, businessId, marketId, opportunityIds, requestedActivation, notes, packages, products, customFields, commonFields, origin = Origin.SSC, attachments, extraFields, duration, quoteId, tags) {\n const req = new CreateSalesOrderRequest({\n salespersonId: salespersonId,\n partnerId: partnerId,\n businessId: businessId,\n marketId: marketId,\n opportunityIds: opportunityIds,\n requestedActivation: requestedActivation,\n notes: notes,\n packages: packages,\n products: products,\n customFields: customFields,\n commonFields: commonFields,\n origin: origin,\n attachments: attachments,\n extraFields: extraFields,\n contractDuration: duration,\n quoteId: quoteId,\n tags: tags // NOTE: this method is deprecated, see method docstring\n });\n return this.api.createSalesOrder(req).pipe(map(resp => resp.orderId));\n }\n createOrder(o) {\n const req = new CreateSalesOrderRequest({\n salespersonId: o.salespersonId,\n partnerId: o.partnerId,\n businessId: o.businessId,\n marketId: o.marketId,\n opportunityIds: o.opportunityIds,\n requestedActivation: o.requestedActivation,\n notes: o.notes,\n packages: o.packages,\n products: o.products,\n customFields: o.customFields,\n commonFields: o.commonFields,\n origin: o.origin,\n attachments: o.attachments,\n extraFields: o.extraFields,\n lineItems: ensureLineItemValuesAreOneOf$1(o.lineItems),\n contractDuration: o.contractDuration,\n quoteId: o.quoteId,\n tags: o.tags,\n customerNotes: o.customerNotes\n });\n return this.api.createSalesOrder(req).pipe(map(resp => resp.orderId));\n }\n get(orderId, businessId) {\n const req = new GetSalesOrderRequest({\n businessId: businessId,\n orderId: orderId\n });\n return this.api.getSalesOrder(req).pipe(map(resp => fillOutEmptyValues(resp.order)));\n }\n duplicate(orderId, businessId) {\n const req = new DuplicateSalesOrderRequest({\n businessId: businessId,\n orderId: orderId\n });\n return this.api.duplicateSalesOrder(req).pipe(map(resp => resp.orderId));\n }\n list(partnerId, filters, sortOption, cursor, pageSize) {\n const req = new ListSalesOrderRequest({\n partnerId: partnerId,\n filters: filters,\n sortOption: sortOption,\n cursor: cursor,\n pageSize: pageSize\n });\n return this.api.listSalesOrder(req).pipe(map(resp => {\n const results = resp.totalResults || 0;\n return new PagedResponse(resp.orders, resp.nextCursor, resp.hasMore, results);\n }));\n }\n approve(businessId, orderId) {\n const req = new ApproveSalesOrderRequest({\n businessId: businessId,\n orderId: orderId\n });\n return this.api.approveSalesOrder(req).pipe(map(resp => resp.order));\n }\n decline(businessId, orderId, declinedReason, declinedReasonIds) {\n const req = new DeclineSalesOrderRequest({\n businessId: businessId,\n orderId: orderId,\n declinedReason: declinedReason,\n declinedReasonIds: declinedReasonIds\n });\n return this.api.declineSalesOrder(req).pipe(map(resp => resp.order));\n }\n archive(businessId, orderId) {\n const req = new ArchiveSalesOrderRequest({\n businessId: businessId,\n orderId: orderId\n });\n return this.api.archiveSalesOrder(req).pipe(map(resp => resp.order));\n }\n activate(orderId, businessId, customFields, commonFields, extraFields) {\n const req = {\n orderId: orderId,\n businessId: businessId,\n customFields: customFields,\n commonFields: commonFields,\n extraFields: extraFields\n };\n return this.api.activateProducts(req).pipe(map(resp => resp.order));\n }\n check(partnerId, businessId, productId, editionId, statuses) {\n const req = new CheckSalesOrderExistsRequest({\n partnerId: partnerId,\n businessId: businessId,\n productId: productId,\n productEditionId: editionId,\n statuses: statuses || []\n });\n return this.api.checkSalesOrderExists(req).pipe(map(resp => resp.exists));\n }\n getConfig(partnerId, marketId) {\n return this.api.getConfig({\n partnerId: partnerId,\n marketId: marketId\n }).pipe(map(resp => resp.config));\n }\n updateConfig(config) {\n return this.api.updateConfig({\n config: config,\n fieldMask: buildFieldMask(config)\n }).pipe(map(() => true));\n }\n deleteConfig(partnerId, marketId) {\n return this.api.deleteConfig({\n partnerId,\n marketId\n }).pipe(map(() => true));\n }\n createAndSendToCustomer(order, userID, offerExpiry) {\n order.lineItems = ensureLineItemValuesAreOneOf$1(order.lineItems);\n return this.api.sendForCustomerApproval({\n order: order,\n userId: userID,\n offerExpiry: offerExpiry\n }).pipe(map(resp => resp.orderId));\n }\n /*\n @deprecated: Use the CustomerSalesOrderService instead\n */\n customerCreate(order) {\n order.lineItems = ensureLineItemValuesAreOneOf$1(order.lineItems);\n return this.api.customerCreateSalesOrder({\n order: order\n }).pipe(map(resp => resp.orderId));\n }\n createDraft(order) {\n order.lineItems = ensureLineItemValuesAreOneOf$1(order.lineItems);\n return this.api.createDraftSalesOrder({\n order: order\n }).pipe(map(resp => resp.orderId));\n }\n /*\n @deprecated: Use the CustomerSalesOrderService instead\n */\n customerApproveSalesOrder(orderId, businessId, agreements) {\n return this.api.customerApproveSalesOrder({\n orderId: orderId,\n businessId: businessId,\n agreements: agreements\n }).pipe(map(resp => resp.order.orderId));\n }\n getUsers(orderId, businessId) {\n return this.api.getUsers({\n orderId: orderId,\n businessId: businessId\n }).pipe(map(resp => resp.users !== undefined ? resp.users : {}));\n }\n updateAnswers(orderId, businessId, customFields, commonFields, extraFields) {\n return this.api.updateAnswers({\n orderId: orderId,\n businessId: businessId,\n customFields: customFields,\n commonFields: commonFields,\n extraFields: extraFields\n }).pipe(map(resp => resp.order));\n }\n updateTags(orderId, businessId, tags) {\n return this.api.updateTags({\n orderId,\n businessId,\n tags\n }).pipe(map(resp => resp.order));\n }\n updateSalesperson(orderId, businessId, salespersonId) {\n return this.api.updateSalesperson({\n orderId,\n businessId,\n salespersonId\n }).pipe(map(resp => resp.order));\n }\n updateNotes(orderId, businessId, notes) {\n return this.api.updateNotes({\n orderId,\n businessId,\n notes\n }).pipe(map(() => true));\n }\n updateRequestedActivation(orderId, businessId, requestedActivation) {\n return this.api.updateRequestedActivation({\n orderId,\n businessId,\n requestedActivation\n }).pipe(map(() => true));\n }\n updateContractDuration(orderId, businessId, contractDuration) {\n return this.api.updateContractDuration({\n orderId,\n businessId,\n contractDuration\n }).pipe(map(() => true));\n }\n updateCurrentRevenue(orderId, businessId, lineItems) {\n return this.api.updateCurrentRevenue({\n orderId,\n businessId,\n lineItems\n }).pipe(map(() => true));\n }\n updateLineItems(orderId, businessId, lineItems) {\n return this.api.updateLineItems({\n orderId,\n businessId,\n lineItems\n }).pipe(map(() => true));\n }\n listTags(partnerId, filters) {\n return this.api.listTags({\n partnerId: partnerId,\n filters: filters\n }).pipe(map(resp => resp));\n }\n submitDraftSalesOrder(orderId, businessId, customFields, commonFields, extraFields) {\n return this.api.submitDraftSalesOrder({\n orderId: orderId,\n businessId: businessId,\n customFields: customFields,\n commonFields: commonFields,\n extraFields: extraFields\n }).pipe(map(resp => resp.orderId));\n }\n submitDraftForCustomerApproval(orderId, businessId, userId, customFields, commonFields, extraFields, offerExpiry) {\n return this.api.submitDraftForCustomerApproval({\n orderId: orderId,\n businessId: businessId,\n userId: userId,\n customFields: customFields,\n commonFields: commonFields,\n extraFields: extraFields,\n offerExpiry: offerExpiry\n }).pipe(map(resp => resp.orderId));\n }\n sendExistingOrderToCustomerForApproval(orderId, businessId, userId, offerExpiry, orderIsSmbPayable) {\n return this.api.sendExistingOrderToCustomerForApproval({\n orderId: orderId,\n businessId: businessId,\n userId: userId,\n offerExpiry: offerExpiry,\n orderIsSmbPayable: orderIsSmbPayable\n }).pipe(map(() => true));\n }\n ignoreProductActivationError(orderId, businessId, productActivationUniqueId) {\n return this.api.ignoreProductActivationError({\n businessId: businessId,\n orderId: orderId,\n productActivationUniqueId: productActivationUniqueId\n }).pipe(map(resp => true));\n }\n ignoreAllProductActivationErrors(orderId, businessId) {\n return this.api.ignoreAllProductActivationErrors({\n businessId: businessId,\n orderId: orderId\n }).pipe(map(resp => true));\n }\n requestCancellation(orderId, businessId, notes) {\n return this.api.requestCancellation({\n businessId: businessId,\n orderId: orderId,\n notes: notes\n }).pipe(map(resp => true));\n }\n approveCancellation(orderId, businessId) {\n return this.api.approveCancellation({\n businessId: businessId,\n orderId: orderId\n }).pipe(map(resp => true));\n }\n declineCancellation(orderId, businessId, notes) {\n return this.api.declineCancellation({\n businessId: businessId,\n orderId: orderId,\n notes: notes\n }).pipe(map(resp => true));\n }\n previewOrderActivations(orderId, businessId) {\n return this.api.previewOrderActivations({\n businessId,\n orderId\n }).pipe(map(resp => resp.productActivations));\n }\n scheduleActivation(orderId, businessId, customFields, commonFields, extraFields) {\n return this.api.scheduleActivation({\n businessId,\n orderId,\n customFields,\n commonFields,\n extraFields\n }).pipe(map(() => true));\n }\n convertToDraft(orderId, businessId) {\n return this.api.convertToDraft({\n businessId,\n orderId\n }).pipe(map(() => true));\n }\n getStatusCounts(partnerId, filters) {\n return this.api.getStatusCounts({\n partnerId: partnerId,\n filters: filters\n }).pipe(map(resp => resp.counts));\n }\n createInvoice(orderId, businessId) {\n return this.api.createInvoice({\n orderId: orderId,\n businessId: businessId\n }).pipe(map(resp => resp.invoiceId));\n }\n createAndActivateOrder(order) {\n order.lineItems = ensureLineItemValuesAreOneOf$1(order.lineItems);\n return this.api.createAndActivateOrder({\n order: order\n }).pipe(map(resp => resp.orderId));\n }\n updateCustomerNotes(orderId, businessId, customerNotes) {\n return this.api.updateCustomerNotes({\n orderId,\n businessId,\n customerNotes\n }).pipe(map(() => true));\n }\n updateAttachments(orderId, businessId, attachments) {\n return this.api.updateAttachments({\n orderId,\n businessId,\n attachments\n }).pipe(map(() => true));\n }\n getUploadFileUrl() {\n return `${this.hostService.hostWithScheme}/file/upload`;\n }\n leaseToAutomations(businessId, orderId, customFields, commonFields, extraFields, actionType, declinedReason, declinedReasonIds) {\n const leaseData = {\n actionType: actionType,\n declinedReason: declinedReason,\n declinedReasonIds: declinedReasonIds\n };\n const req = new LeaseSalesOrderToAutomationsRequest({\n businessId: businessId,\n orderId: orderId,\n customFields: customFields,\n commonFields: commonFields,\n extraFields: extraFields,\n leaseData: leaseData\n });\n return this.api.leaseSalesOrderToAutomations(req).pipe(map(resp => resp.order));\n }\n createLeasedToAutomationsSalesOrder(order) {\n order.lineItems = ensureLineItemValuesAreOneOf$1(order.lineItems);\n return this.api.createLeasedToAutomationsSalesOrder({\n order: order\n }).pipe(map(resp => resp.orderId));\n }\n getOrderRecipientDetails(orderToken) {\n return this.api.getOrderRecipientDetails({\n token: orderToken\n });\n }\n }\n SalesOrdersService.ɵfac = function SalesOrdersService_Factory(t) {\n return new (t || SalesOrdersService)(i0.ɵɵinject(SalesOrdersApiService), i0.ɵɵinject(HostService));\n };\n SalesOrdersService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: SalesOrdersService,\n factory: SalesOrdersService.ɵfac,\n providedIn: 'root'\n });\n return SalesOrdersService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nfunction buildFieldMask(obj) {\n const fieldMaskPaths = [];\n for (const x in obj) {\n if (obj.hasOwnProperty(x) && obj[x] !== undefined) {\n fieldMaskPaths.push(x);\n }\n }\n return new FieldMask({\n paths: fieldMaskPaths\n });\n}\nfunction ensureLineItemValuesAreOneOf$1(lineItems) {\n return (lineItems || []).map(li => {\n if (!!li.appKey) {\n delete li.packageId;\n } else {\n delete li.appKey;\n }\n return li;\n });\n}\nlet CustomerSalesOrdersService = /*#__PURE__*/(() => {\n class CustomerSalesOrdersService {\n constructor(api) {\n this.api = api;\n }\n create(order) {\n order.lineItems = ensureLineItemValuesAreOneOf(order.lineItems);\n return this.api.createSalesOrder({\n order: order\n }).pipe(map(resp => resp.orderId));\n }\n createForPartnerApproval(order) {\n order.lineItems = ensureLineItemValuesAreOneOf(order.lineItems);\n return this.api.createForPartnerApproval({\n order\n }).pipe(map(resp => resp.orderId));\n }\n approveSalesOrder(orderId, businessId, agreements, paymentMethodToken) {\n return this.api.approveSalesOrder({\n orderId: orderId,\n businessId: businessId,\n agreements: agreements,\n paymentMethodToken\n }).pipe(map(resp => resp.order.orderId));\n }\n updateAnswers(orderId, businessId, customFields, commonFields, extraFields) {\n return this.api.updateAnswers({\n orderId,\n businessId,\n customFields,\n commonFields,\n extraFields\n }).pipe(map(resp => resp.order.orderId));\n }\n get(orderId, businessId) {\n return this.api.getSalesOrder({\n businessId: businessId,\n orderId: orderId\n }).pipe(map(resp => fillOutEmptyValues(resp.order)));\n }\n list(partnerId, filters, sortOption, cursor, pageSize) {\n const req = new ListCustomerSalesOrderRequest({\n partnerId: partnerId,\n filters: filters,\n sortOption: sortOption,\n cursor: cursor,\n pageSize: pageSize\n });\n return this.api.listSalesOrder(req).pipe(map(resp => {\n const results = resp.totalResults || 0;\n return new PagedResponse(resp.orders, resp.nextCursor, resp.hasMore, results);\n }));\n }\n getUsers(orderId, businessId) {\n return this.api.getUsers({\n orderId: orderId,\n businessId: businessId\n }).pipe(map(resp => resp.users !== undefined ? resp.users : {}));\n }\n initiateOrderExport(exportOrderRequest) {\n return this.api.initiateOrderExport(exportOrderRequest);\n }\n createWithPaymentIntent(order) {\n order.lineItems = ensureLineItemValuesAreOneOf(order.lineItems);\n return this.api.createWithPaymentIntent({\n order: order\n }).pipe(map(resp => resp.orderId));\n }\n declineSalesOrder(businessId, orderId, declinedReason) {\n const req = new DeclineSalesOrderRequest({\n businessId: businessId,\n orderId: orderId,\n declinedReason: declinedReason\n });\n return this.api.declineSalesOrder(req).pipe(map(resp => resp.order));\n }\n getConfig(businessId, orderId) {\n const req = new CustomerGetConfigurationRequest({\n businessId: businessId,\n orderId: orderId\n });\n return this.api.getConfig(req).pipe(map(resp => resp.configuration));\n }\n previewOrderActivations(orderId, businessId) {\n return this.api.previewOrderActivations({\n businessId,\n orderId\n }).pipe(map(resp => resp.productActivations));\n }\n }\n CustomerSalesOrdersService.ɵfac = function CustomerSalesOrdersService_Factory(t) {\n return new (t || CustomerSalesOrdersService)(i0.ɵɵinject(CustomerSalesOrdersApiService));\n };\n CustomerSalesOrdersService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: CustomerSalesOrdersService,\n factory: CustomerSalesOrdersService.ɵfac,\n providedIn: 'root'\n });\n return CustomerSalesOrdersService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nfunction ensureLineItemValuesAreOneOf(lineItems) {\n return (lineItems || []).map(li => {\n if (!!li.appKey) {\n delete li.packageId;\n } else {\n delete li.appKey;\n }\n return li;\n });\n}\nlet VendorOrdersService = /*#__PURE__*/(() => {\n class VendorOrdersService {\n constructor(api) {\n this.api = api;\n }\n list(partnerId, cursor, filters) {\n const request = new ListOrdersRequest({\n partnerId: partnerId,\n cursor: cursor\n });\n if (filters) {\n request.filters = filters;\n }\n return this.api.listOrders(request).pipe(map(resp => {\n return new PagedResponse(resp.orders, resp.nextCursor, resp.hasMore, resp.totalResults);\n }));\n }\n }\n VendorOrdersService.ɵfac = function VendorOrdersService_Factory(t) {\n return new (t || VendorOrdersService)(i0.ɵɵinject(VendorOrdersApiService));\n };\n VendorOrdersService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: VendorOrdersService,\n factory: VendorOrdersService.ɵfac,\n providedIn: 'root'\n });\n return VendorOrdersService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet SalesOrdersPublicService = /*#__PURE__*/(() => {\n class SalesOrdersPublicService {\n constructor(api) {\n this.api = api;\n }\n approveSalesOrder(orderId, agreements) {\n const req = new ApproveRequest({\n orderId: orderId,\n agreements: agreements\n });\n return this.api.approveSalesOrder(req).pipe(map(resp => resp.order.orderId));\n }\n get(orderId) {\n const req = new GetRequest({\n orderId: orderId\n });\n return this.api.getSalesOrder(req).pipe(map(resp => fillOutEmptyValues(resp.order)));\n }\n updateAnswers(orderId, customFields, commonFields, extraFields) {\n const req = new UpdateOrderFormAnswersRequest({\n orderId: orderId,\n customFields: customFields,\n commonFields: commonFields,\n extraFields: extraFields\n });\n return this.api.updateOrderFormAnswers(req).pipe(map(resp => resp.order.orderId));\n }\n decline(orderId, declinedReason) {\n const req = new DeclineRequest({\n orderId: orderId,\n declinedReason: declinedReason\n });\n return this.api.declineSalesOrder(req).pipe(map(resp => resp.order));\n }\n getConfig(orderId) {\n const req = new GetConfigurationRequest({\n orderId: orderId\n });\n return this.api.getConfig(req).pipe(map(resp => resp.configuration));\n }\n getOrderRecipientSession(token) {\n return this.api.getOrderRecipientSession(new GetOrderRecipientSessionRequest({\n token\n })).pipe(map(resp => resp.session));\n }\n }\n SalesOrdersPublicService.ɵfac = function SalesOrdersPublicService_Factory(t) {\n return new (t || SalesOrdersPublicService)(i0.ɵɵinject(PublicApiService));\n };\n SalesOrdersPublicService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: SalesOrdersPublicService,\n factory: SalesOrdersPublicService.ɵfac,\n providedIn: 'root'\n });\n return SalesOrdersPublicService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet NotificationsService = /*#__PURE__*/(() => {\n class NotificationsService {\n constructor(api) {\n this.api = api;\n }\n subscribe(businessId, orderId, location) {\n return this.api.subscribe({\n businessId: businessId,\n orderId: orderId,\n location: location\n }).pipe(map(() => true));\n }\n unsubscribe(businessId, orderId, location) {\n return this.api.unsubscribe({\n businessId: businessId,\n orderId: orderId,\n location: location\n }).pipe(map(() => true));\n }\n getSubscribedLocations(businessId, orderId) {\n return this.api.getSubscribedLocations({\n businessId: businessId,\n orderId: orderId\n }).pipe(map(resp => resp.locations));\n }\n getSubscribers(businessId, orderId) {\n return this.api.getSubscribers({\n businessId: businessId,\n orderId: orderId\n }).pipe(map(resp => resp.subscribers));\n }\n }\n NotificationsService.ɵfac = function NotificationsService_Factory(t) {\n return new (t || NotificationsService)(i0.ɵɵinject(NotificationsApiService));\n };\n NotificationsService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: NotificationsService,\n factory: NotificationsService.ɵfac,\n providedIn: 'root'\n });\n return NotificationsService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nfunction declinedReasonFromApi(r) {\n const zeroDate = new Date('0001-01-01T00:00:00Z').valueOf();\n return {\n id: r.id || '',\n reason: r.reason || '',\n partnerId: r.partnerId || '',\n created: !!r.created && r.created.valueOf() !== zeroDate ? new Date(r.created) : null,\n updated: !!r.updated && r.updated.valueOf() !== zeroDate ? new Date(r.updated) : null,\n archived: !!r.archived && r.archived.valueOf() !== zeroDate ? new Date(r.archived) : null\n };\n}\nlet DeclinedReasonService = /*#__PURE__*/(() => {\n class DeclinedReasonService {\n constructor(apiService) {\n this.apiService = apiService;\n }\n create(partnerId, fields) {\n const request = new CreateReasonRequest({\n partnerId,\n reason: fields.reason\n });\n return this.apiService.createReason(request).pipe(map(resp => declinedReasonFromApi(resp.declinedReason)));\n }\n get(id) {\n const request = new GetReasonRequest({\n id\n });\n return this.apiService.getReason(request).pipe(map(resp => declinedReasonFromApi(resp.declinedReason)));\n }\n update(id, fields) {\n const request = new UpdateReasonRequest({\n id,\n reason: fields.reason\n });\n return this.apiService.updateReason(request).pipe(map(resp => declinedReasonFromApi(resp.declinedReason)));\n }\n archive(id) {\n const request = new ArchiveReasonRequest({\n id\n });\n return this.apiService.archiveReason(request);\n }\n list(partnerId, filters) {\n const req = new ListReasonsRequest({\n partnerId,\n filters\n });\n return this.apiService.listReasons(req).pipe(map(resp => (resp.declinedReasons || []).map(item => declinedReasonFromApi(item))));\n }\n }\n DeclinedReasonService.ɵfac = function DeclinedReasonService_Factory(t) {\n return new (t || DeclinedReasonService)(i0.ɵɵinject(DeclinedReasonsApiService));\n };\n DeclinedReasonService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: DeclinedReasonService,\n factory: DeclinedReasonService.ɵfac,\n providedIn: 'root'\n });\n return DeclinedReasonService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nconst CustomerApprovalEventSending = 'sending';\nconst CustomerApprovalEventProcessing = 'processing';\nconst CustomerApprovalEventDelivered = 'delivered';\nconst CustomerApprovalEventBounced = 'bounced';\nconst CustomerApprovalEventDropped = 'dropped';\nconst CustomerApprovalEventUnsubscribed = 'unsubscribed';\nconst CustomerApprovalEventDeferred = 'deferred';\nconst CustomerApprovalEventSpamReport = 'spam-report';\nconst CustomerApprovalEventOpened = 'opened';\nconst CustomerApprovalEventClicked = 'clicked';\nconst CustomerApprovalEventUpdatedAnswers = 'updated-answers';\nconst RequestCancellationEvent = 'cancellation-requested';\nconst DeclineCancellationEvent = 'cancellation-declined';\nconst UpdatedTagsEvent = 'updated-tags';\nconst UpdatedNotesEvent = 'updated-notes';\nconst UpdatedCustomerNotesEvent = 'updated-customer-notes';\nconst UpdatedRequestedActivationEvent = 'updated-requested-activation';\nconst UpdateContractDurationEvent = 'updated-contract-duration';\nconst UpdatedDraftEvent = 'updated-draft';\nconst UpdatedLineItemsEvent = 'updated-line-items';\nconst DeclinedEvent = 'order-declined';\nconst UpdatedSalespersonEvent = 'updated-salesperson';\nclass StatusHistoryEvent {\n constructor(id, name) {\n this.id = id;\n this.name = name;\n }\n}\nclass SubmittedForCustomerApprovalSendingMetadataData {}\nclass SubmittedForCustomerApprovalMetadata {\n constructor(userId, event) {\n this.userId = userId;\n this.event = event;\n }\n}\nclass SubmittedForCustomerApprovalSendingMetadata extends SubmittedForCustomerApprovalMetadata {\n constructor(userId, event, metadata) {\n super(userId, event);\n this.offerExpiry = metadata ? metadata.offerExpiry : undefined;\n }\n}\nclass UpdatedDraftMetadata {\n constructor(userId, event) {\n this.userId = userId;\n this.event = event;\n }\n}\n/*\n @deprecated: UpdatedLineItemsMetadata instead\n*/\nclass UpdatedPricingMetadata {\n constructor(userId, event) {\n this.userId = userId;\n this.event = event;\n }\n}\nclass UpdatedLineItemsMetadata {\n constructor(userId, event) {\n this.userId = userId;\n this.event = event;\n }\n}\nclass UpdatedTagsMetadata {\n constructor(userId, event, data) {\n this.userId = userId;\n this.event = event;\n this.tags = data.tags;\n }\n}\nclass UpdatedSalespersonMetadata {\n constructor(userId, event, data) {\n this.userId = userId;\n this.event = event;\n }\n}\nclass UpdatedRequestedActivationMetadata {\n constructor(userId, event, data) {\n this.userId = userId;\n this.event = event;\n this.previous = data.previous;\n this.current = data.current;\n }\n}\nclass UpdateContractDurationMetadata {\n constructor(userId, event, data) {\n this.userId = userId;\n this.event = event;\n this.previous = data.previous;\n this.current = data.current;\n }\n}\n/*\n @deprecated: NotesMetadata instead\n*/\nclass RequestCancellationMetadata {\n constructor(userId, event, data) {\n this.userId = userId;\n this.event = event;\n this.previous = data.previous;\n this.current = data.current;\n }\n}\nclass NotesMetadata {\n constructor(userId, event, data) {\n this.userId = userId;\n this.event = event;\n this.previous = data.previous;\n this.current = data.current;\n }\n}\nclass CustomerNotesMetadata extends NotesMetadata {\n constructor(userId, event, data) {\n super(userId, event, data);\n }\n}\nclass DeclinedOrderMetadata {\n constructor(userId, event, data) {\n this.userId = userId;\n this.event = event;\n this.previous = '';\n this.current = data.current;\n this.declinedReasons = data.declined_reasons || [];\n }\n}\nfunction customerApprovalEventFromKey(k) {\n switch (k) {\n case CustomerApprovalEventSending:\n return new StatusHistoryEvent(CustomerApprovalEventSending, 'Sending');\n case CustomerApprovalEventProcessing:\n return new StatusHistoryEvent(CustomerApprovalEventProcessing, 'Processing');\n case CustomerApprovalEventDelivered:\n return new StatusHistoryEvent(CustomerApprovalEventDelivered, 'Delivered');\n case CustomerApprovalEventBounced:\n return new StatusHistoryEvent(CustomerApprovalEventBounced, 'Bounced');\n case CustomerApprovalEventDropped:\n return new StatusHistoryEvent(CustomerApprovalEventDropped, 'Dropped');\n case CustomerApprovalEventUnsubscribed:\n return new StatusHistoryEvent(CustomerApprovalEventUnsubscribed, 'Unsubscribed');\n case CustomerApprovalEventDeferred:\n return new StatusHistoryEvent(CustomerApprovalEventDeferred, 'Deferred');\n case CustomerApprovalEventSpamReport:\n return new StatusHistoryEvent(CustomerApprovalEventSpamReport, 'Spam report');\n case CustomerApprovalEventOpened:\n return new StatusHistoryEvent(CustomerApprovalEventOpened, 'Email Opened');\n case CustomerApprovalEventClicked:\n return new StatusHistoryEvent(CustomerApprovalEventClicked, 'Email Clicked');\n case CustomerApprovalEventUpdatedAnswers:\n return new StatusHistoryEvent(CustomerApprovalEventUpdatedAnswers, 'Updated Answers');\n default:\n return new StatusHistoryEvent('', 'Unknown');\n }\n}\nfunction getMetadataFromStatusHistoryItem(h) {\n if (!h.metadata) {\n return null;\n }\n let metadata;\n try {\n metadata = JSON.parse(h.metadata);\n } catch {\n return null;\n }\n if (metadata.event === UpdatedTagsEvent) {\n const event = new StatusHistoryEvent(UpdatedTagsEvent, 'Updated Tags');\n return new UpdatedTagsMetadata(metadata.user_id, event, metadata.data);\n }\n if (metadata.event === UpdatedSalespersonEvent) {\n const event = new StatusHistoryEvent(UpdatedSalespersonEvent, 'Updated Salesperson');\n return new UpdatedSalespersonMetadata(metadata.user_id, event, metadata.data);\n }\n if (metadata.event === UpdatedRequestedActivationEvent) {\n const event = new StatusHistoryEvent(UpdatedRequestedActivationEvent, 'Updated Contract Start');\n return new UpdatedRequestedActivationMetadata(metadata.user_id, event, metadata.data);\n }\n if (metadata.event === UpdateContractDurationEvent) {\n const event = new StatusHistoryEvent(UpdateContractDurationEvent, 'Updated Contract Length');\n return new UpdateContractDurationMetadata(metadata.user_id, event, metadata.data);\n }\n if (metadata.event === RequestCancellationEvent) {\n const event = new StatusHistoryEvent(RequestCancellationEvent, 'Cancellation Requested');\n return new NotesMetadata(metadata.user_id, event, metadata.data);\n }\n if (metadata.event === DeclineCancellationEvent) {\n const event = new StatusHistoryEvent(DeclineCancellationEvent, 'Cancellation Declined');\n return new NotesMetadata(metadata.user_id, event, metadata.data);\n }\n if (metadata.event === UpdatedNotesEvent) {\n const event = new StatusHistoryEvent(UpdatedNotesEvent, 'Updated Admin Notes');\n return new NotesMetadata(metadata.user_id, event, metadata.data);\n }\n if (metadata.event === UpdatedCustomerNotesEvent) {\n const event = new StatusHistoryEvent(UpdatedCustomerNotesEvent, 'Updated Customer Notes');\n return new CustomerNotesMetadata(metadata.user_id, event, metadata.data);\n }\n if (metadata.event === UpdatedDraftEvent) {\n const event = new StatusHistoryEvent(UpdatedDraftEvent, 'Updated Draft');\n return new UpdatedDraftMetadata(metadata.user_id, event);\n }\n if (metadata.event === UpdatedLineItemsEvent) {\n const event = new StatusHistoryEvent(UpdatedLineItemsEvent, 'Updated Contents');\n return new UpdatedLineItemsMetadata(metadata.user_id, event);\n }\n if (metadata.event === DeclinedEvent) {\n const event = new StatusHistoryEvent(DeclinedEvent, 'Declined');\n return new DeclinedOrderMetadata(metadata.user_id, event, metadata.data);\n }\n if (h.status !== Status.SUBMITTED_FOR_CUSTOMER_APPROVAL) {\n return null;\n }\n if (metadata.event === CustomerApprovalEventSending) {\n const event = customerApprovalEventFromKey(metadata.event);\n return new SubmittedForCustomerApprovalSendingMetadata(metadata.user_id, event, metadata.data);\n }\n return new SubmittedForCustomerApprovalMetadata(metadata.user_id, customerApprovalEventFromKey(metadata.event));\n}\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ActivateProductsResponse, ActivationStatus, AddonActivation, AddonKey, ArchiveDocumentRequest, Attachment, AuxiliaryDataFieldType, BillingPeriod, CommonField, Content, ContentType, Cost, CreateDocumentRequest, CreateDocumentResponse, CreateSalesOrderRequest, Currency, CustomField, CustomPriceMapping, CustomerApprovalEventBounced, CustomerApprovalEventClicked, CustomerApprovalEventDeferred, CustomerApprovalEventDelivered, CustomerApprovalEventDropped, CustomerApprovalEventOpened, CustomerApprovalEventProcessing, CustomerApprovalEventSending, CustomerApprovalEventSpamReport, CustomerApprovalEventUnsubscribed, CustomerApprovalEventUpdatedAnswers, CustomerNotesMetadata, CustomerSalesOrdersService, DeclineCancellationEvent, DeclinedOrderMetadata, DeclinedReasonService, DeleteDocumentRequest, Document, DocumentEmailRecipient, DocumentEvent, DocumentEventContext, DocumentEventContextApprovedByRecipient, DocumentEventContextCommentFromInternalUser, DocumentEventContextFeedbackFromRecipient, DocumentEventContextReviewedByInternalUser, DocumentEventContextSendForInternalReview, DocumentEventContextSentByEmail, DocumentEventContextUnlockDocument, DocumentEventContextViewedByRecipient, DocumentEventType, DocumentShareType, DocumentStatus, DocumentType, DocumentsApiService, DropdownOption, DurationPeriod, Field, FieldType, Format, FulfillmentOrderStatus, GenerateDocumentPDFRequest, GetDocumentLineItemsRequest, GetDocumentLineItemsResponse, GetDocumentRequest, GetDocumentResponse, GetMultiDocumentsRequest, GetMultiDocumentsResponse, GetProposalEmailPreviewRequest, GetProposalEmailPreviewResponse, GetStatusCountsResponse, InitiateOrderExportRequest, InitiateOrderExportRequestDataFormatOption, InitiateOrderExportRequestFilters, InitiateOrderExportRequestSortDirection, InitiateOrderExportRequestSortField, InitiateOrderExportRequestSortOption, LineItem, LineItemAppKey, ListAuxiliaryDataResponse, ListCustomerSalesOrderRequestDateRangeFilter, ListCustomerSalesOrderRequestFilters, ListCustomerSalesOrderRequestSortDirection, ListCustomerSalesOrderRequestSortField, ListCustomerSalesOrderRequestSortOption, ListDocumentEventsRequest, ListDocumentEventsRequestFilters, ListDocumentEventsResponse, ListDocumentsRequest, ListDocumentsRequestFilters, ListDocumentsResponse, ListOrdersRequestFilters, ListSalesOrderRequestDateRangeFilter, ListSalesOrderRequestFilters, ListSalesOrderRequestSortDirection, ListSalesOrderRequestSortField, ListSalesOrderRequestSortOption, ListTagsResponse, MarkDocumentAsReviewedRequest, MarkDocumentAsViewedRequest, NotesMetadata, NotificationsService, Order, OrganizationType, Orientation, Origin, Package, PagedResponse, ProductActivation, ProposalEmailDetails, ProposalEmailMessage, Recipient, RequestCancellationEvent, RequestCancellationMetadata, Revenue, RevenueComponent, RevenuePeriod, SalesOrderAuxiliaryDataObjectID, SalesOrdersAuxiliaryFieldDataApiService, SalesOrdersAuxiliaryFieldSchemaApiService, SalesOrdersPublicService, SalesOrdersService, SearchDocumentsRequest, SearchDocumentsRequestFilters, SearchDocumentsResponse, SendDocumentForInternalReviewRequest, SendProposalRecipientEmailRequest, SentDocumentEmail, Status, StatusHistoryItem, SubmittedForCustomerApprovalMetadata, SubmittedForCustomerApprovalSendingMetadata, SubscriptionLocation, UnarchiveDocumentRequest, UnlockDocumentRequest, UpdateContractDurationEvent, UpdateContractDurationMetadata, UpdateDocumentRequest, UpdatedCustomerNotesEvent, UpdatedDraftEvent, UpdatedLineItemsEvent, UpdatedLineItemsMetadata, UpdatedNotesEvent, UpdatedPricingMetadata, UpdatedRequestedActivationEvent, UpdatedRequestedActivationMetadata, UpdatedSalespersonEvent, UpdatedSalespersonMetadata, UpdatedTagsEvent, UpdatedTagsMetadata, UpsertDocumentLineItemsRequest, VendorOrder, VendorOrdersService, enumStringToValue, getMetadataFromStatusHistoryItem, getOfferExpiry };\n"],"mappings":"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","names":["Currency","DurationPeriod","RevenuePeriod","ActivationStatus","FieldType","FulfillmentOrderStatus","Origin","Status","AuxiliaryDataFieldType","InitiateOrderExportRequestDataFormatOption","ListSalesOrderRequestSortDirection","ListCustomerSalesOrderRequestSortDirection","InitiateOrderExportRequestSortDirection","ListCustomerSalesOrderRequestSortField","InitiateOrderExportRequestSortField","ListSalesOrderRequestSortField","enumStringToValue$d","enumRef","value","LineItemAppKey","_LineItemAppKey","proto","m","kwargs","toReturn","BillingPeriod","_BillingPeriod","Cost","_Cost","CustomPriceMapping","_CustomPriceMapping","Duration","_Duration","DurationPeriod","LineItem","_LineItem","Currency","Revenue","_Revenue","RevenueComponent","_RevenueComponent","RevenuePeriod","TaxOptions","_TaxOptions","proto","m","kwargs","toReturn","enumStringToValue$b","enumRef","value","AddonActivation","_AddonActivation","ActivationStatus","AddonKey","_AddonKey","Agreement","_Agreement","Attachment","_Attachment","Business","_Business","CommonField","_CommonField","Field","CustomField","_CustomField","Field","_Field","proto","m","enumStringToValue$b","FieldType","kwargs","toReturn","GetOrderRecipientDetailsRequest","_GetOrderRecipientDetailsRequest","GetOrderRecipientDetailsResponse","_GetOrderRecipientDetailsResponse","Order","_Order","Status","Package","CustomField","CommonField","ProductActivation","AddonActivation","StatusHistoryItem","Product","Origin","Attachment","LineItem","Duration","TaxOptions","Agreement","Business","Salesperson","FulfillmentOrderStatus","_Package","Currency","Revenue","AddonKey","CustomPriceMapping","_Product","_ProductActivation","ActivationStatus","_Salesperson","_StatusHistoryItem","User","_User","OrderFormFieldOption","_OrderFormFieldOption","proto","m","kwargs","toReturn","OrderFormField","_OrderFormField","proto","m","OrderFormFieldOption","kwargs","toReturn","Config","_Config","proto","m","OrderFormField","WorkflowStepOptions","SalespersonOptions","TaxOptions","TermsOfServiceOptions","CustomerOptions","EmailOptions","kwargs","toReturn","CustomSalespersonAction","_CustomSalespersonAction","_CustomerOptions","EmailContent","_EmailContent","EmailCustomContent","_EmailCustomContent","_EmailOptions","_SalespersonOptions","TermsOfService","_TermsOfService","_TermsOfServiceOptions","_WorkflowStepOptions","DeclineResponse","_DeclineResponse","proto","m","Order","kwargs","toReturn","GetConfigurationResponse","_GetConfigurationResponse","proto","m","Config","kwargs","toReturn","FieldMask","_FieldMask","proto","m","kwargs","toReturn","PagedRequestOptions","_PagedRequestOptions","proto","m","kwargs","toReturn","PagedResponseMetadata","_PagedResponseMetadata","enumStringToValue$4","enumRef","value","ArchiveAuxiliaryDataFieldSchemaRequest","_ArchiveAuxiliaryDataFieldSchemaRequest","FieldSchemaIdentifier","AuxiliaryDataFieldSchema","_AuxiliaryDataFieldSchema","AuxiliaryDataFieldType","DropdownOption","CreateAuxiliaryDataFieldSchemaRequest","_CreateAuxiliaryDataFieldSchemaRequest","proto","m","AuxiliaryDataFieldSchema","kwargs","toReturn","DropdownOption","_DropdownOption","FieldDataUpsertOperation","_FieldDataUpsertOperation","FieldSchemaIdentifier","_FieldSchemaIdentifier","ListAuxiliaryDataFieldSchemaRequestFilters","_ListAuxiliaryDataFieldSchemaRequestFilters","GetAuxiliaryDataFieldSchemaRequest","_GetAuxiliaryDataFieldSchemaRequest","GetAuxiliaryDataFieldSchemaResponse","_GetAuxiliaryDataFieldSchemaResponse","GetMultiAuxiliaryDataFieldSchemaRequest","_GetMultiAuxiliaryDataFieldSchemaRequest","GetMultiAuxiliaryDataFieldSchemaResponse","_GetMultiAuxiliaryDataFieldSchemaResponse","ListAuxiliaryDataFieldSchemaRequest","_ListAuxiliaryDataFieldSchemaRequest","PagedRequestOptions","ListAuxiliaryDataFieldSchemaResponse","_ListAuxiliaryDataFieldSchemaResponse","PagedResponseMetadata","ListAuxiliaryDataResponse","_ListAuxiliaryDataResponse","proto","m","PagedResponseMetadata","kwargs","toReturn","UnarchiveAuxiliaryDataFieldSchemaRequest","_UnarchiveAuxiliaryDataFieldSchemaRequest","FieldSchemaIdentifier","UpdateAuxiliaryDataFieldSchemaRequest","_UpdateAuxiliaryDataFieldSchemaRequest","AuxiliaryDataFieldSchema","FieldMask","ListSalesOderAuxiliaryDataRequest","_ListSalesOderAuxiliaryDataRequest","proto","m","SalesOrderAuxiliaryDataObjectID","PagedRequestOptions","kwargs","toReturn","_SalesOrderAuxiliaryDataObjectID","UpsertSalesOrderAuxiliaryDataRequest","_UpsertSalesOrderAuxiliaryDataRequest","FieldDataUpsertOperation","enumStringToValue$1","enumRef","value","ActivateProductsRequest","_ActivateProductsRequest","proto","m","CustomField","CommonField","Field","kwargs","toReturn","ActivateProductsResponse","_ActivateProductsResponse","Order","ApproveCancellationRequest","_ApproveCancellationRequest","ApproveSalesOrderRequest","_ApproveSalesOrderRequest","ApproveSalesOrderResponse","_ApproveSalesOrderResponse","ArchiveSalesOrderRequest","_ArchiveSalesOrderRequest","proto","m","kwargs","toReturn","ArchiveSalesOrderResponse","_ArchiveSalesOrderResponse","Order","CheckSalesOrderExistsRequest","_CheckSalesOrderExistsRequest","v","enumStringToValue$1","Status","CheckSalesOrderExistsResponse","_CheckSalesOrderExistsResponse","ConvertToDraftRequest","_ConvertToDraftRequest","CreateAndActivateOrderRequest","_CreateAndActivateOrderRequest","proto","m","Order","kwargs","toReturn","CreateAndActivateOrderResponse","_CreateAndActivateOrderResponse","CreateDraftSalesOrderRequest","_CreateDraftSalesOrderRequest","proto","m","Order","kwargs","toReturn","CreateDraftSalesOrderResponse","_CreateDraftSalesOrderResponse","CreateForPartnerApprovalRequest","_CreateForPartnerApprovalRequest","CreateForPartnerApprovalResponse","_CreateForPartnerApprovalResponse","CreateInvoiceRequest","_CreateInvoiceRequest","CreateInvoiceResponse","_CreateInvoiceResponse","CreateLeasedToAutomationsSalesOrderRequest","_CreateLeasedToAutomationsSalesOrderRequest","CreateLeasedToAutomationsSalesOrderResponse","_CreateLeasedToAutomationsSalesOrderResponse","CreateSalesOrderRequest","_CreateSalesOrderRequest","proto","m","Package","CustomField","CommonField","Product","enumStringToValue$1","Origin","Attachment","Field","LineItem","Duration","kwargs","toReturn","CreateSalesOrderResponse","_CreateSalesOrderResponse","CreateWithPaymentIntentRequest","_CreateWithPaymentIntentRequest","Order","CreateWithPaymentIntentResponse","_CreateWithPaymentIntentResponse","CustomerApproveSalesOrderRequest","_CustomerApproveSalesOrderRequest","Agreement","CustomerApproveSalesOrderResponse","_CustomerApproveSalesOrderResponse","CustomerCreateSalesOrderRequest","_CustomerCreateSalesOrderRequest","CustomerCreateSalesOrderResponse","_CustomerCreateSalesOrderResponse","CustomerGetConfigurationRequest","_CustomerGetConfigurationRequest","ListSalesOrderRequestDateRangeFilter","_ListSalesOrderRequestDateRangeFilter","ListCustomerSalesOrderRequestDateRangeFilter","_ListCustomerSalesOrderRequestDateRangeFilter","InitiateOrderExportRequestDateRangeFilter","_InitiateOrderExportRequestDateRangeFilter","ListOrdersRequestDateRangeFilter","_ListOrdersRequestDateRangeFilter","DeclineCancellationRequest","_DeclineCancellationRequest","DeclineSalesOrderRequest","_DeclineSalesOrderRequest","DeclineSalesOrderResponse","_DeclineSalesOrderResponse","DeleteConfigRequest","_DeleteConfigRequest","DeleteSalesOrderRequest","_DeleteSalesOrderRequest","DuplicateSalesOrderRequest","_DuplicateSalesOrderRequest","DuplicateSalesOrderResponse","_DuplicateSalesOrderResponse","GetStatusCountsRequestFilters","_GetStatusCountsRequestFilters","ListSalesOrderRequestFilters","_ListSalesOrderRequestFilters","v","Status","ListOrdersRequestFilters","_ListOrdersRequestFilters","ActivationStatus","InitiateOrderExportRequestFilters","_InitiateOrderExportRequestFilters","ListCustomerSalesOrderRequestFilters","_ListCustomerSalesOrderRequestFilters","ListTagsRequestFilters","_ListTagsRequestFilters","proto","m","kwargs","toReturn","FulfillmentStatus","_FulfillmentStatus","GetConfigRequest","_GetConfigRequest","GetConfigResponse","_GetConfigResponse","Config","GetMultiSalesOrderRequest","_GetMultiSalesOrderRequest","GetMultiSalesOrderResponse","_GetMultiSalesOrderResponse","Order","GetSalesOrderByIdempotencyKeyRequest","_GetSalesOrderByIdempotencyKeyRequest","proto","m","kwargs","toReturn","GetSalesOrderRequest","_GetSalesOrderRequest","GetSalesOrderResponse","_GetSalesOrderResponse","Order","GetStatusCountsRequest","_GetStatusCountsRequest","GetStatusCountsRequestFilters","GetStatusCountsResponse","_GetStatusCountsResponse","obj","k","GetUsersRequest","_GetUsersRequest","proto","m","kwargs","toReturn","GetUsersResponse","_GetUsersResponse","obj","k","User","IgnoreAllProductActivationErrorsRequest","_IgnoreAllProductActivationErrorsRequest","IgnoreProductActivationErrorRequest","_IgnoreProductActivationErrorRequest","InitiateOrderExportRequest","_InitiateOrderExportRequest","InitiateOrderExportRequestFilters","InitiateOrderExportRequestSortOption","enumStringToValue$1","InitiateOrderExportRequestDataFormatOption","InitiateOrderExportResponse","_InitiateOrderExportResponse","LeaseData","_LeaseData","LeaseSalesOrderToAutomationsRequest","_LeaseSalesOrderToAutomationsRequest","CustomField","CommonField","Field","LeaseSalesOrderToAutomationsResponse","_LeaseSalesOrderToAutomationsResponse","Order","ListCustomerSalesOrderRequest","_ListCustomerSalesOrderRequest","ListCustomerSalesOrderRequestFilters","ListCustomerSalesOrderRequestSortOption","ListOrdersRequest","_ListOrdersRequest","ListOrdersRequestFilters","ListOrdersResponse","_ListOrdersResponse","VendorOrder","ListSalesOrderRequest","_ListSalesOrderRequest","proto","m","ListSalesOrderRequestFilters","ListSalesOrderRequestSortOption","kwargs","toReturn","ListSalesOrderResponse","_ListSalesOrderResponse","Order","ListTagsRequest","_ListTagsRequest","ListTagsRequestFilters","ListTagsResponse","_ListTagsResponse","PreviewOrderActivationsRequest","_PreviewOrderActivationsRequest","PreviewOrderActivationsResponse","_PreviewOrderActivationsResponse","ProductActivation","Pricing","_Pricing","RequestCancellationRequest","_RequestCancellationRequest","ScheduleActivationRequest","_ScheduleActivationRequest","CustomField","CommonField","Field","SendExistingOrderToCustomerForApprovalRequest","_SendExistingOrderToCustomerForApprovalRequest","SendForCustomerApprovalRequest","_SendForCustomerApprovalRequest","SendForCustomerApprovalResponse","_SendForCustomerApprovalResponse","_ListSalesOrderRequestSortOption","enumStringToValue$1","ListSalesOrderRequestSortDirection","ListSalesOrderRequestSortField","ListCustomerSalesOrderRequestSortOption","_ListCustomerSalesOrderRequestSortOption","ListCustomerSalesOrderRequestSortDirection","ListCustomerSalesOrderRequestSortField","InitiateOrderExportRequestSortOption","_InitiateOrderExportRequestSortOption","InitiateOrderExportRequestSortDirection","InitiateOrderExportRequestSortField","SubmitDraftForApprovalRequest","_SubmitDraftForApprovalRequest","SubmitDraftForApprovalResponse","_SubmitDraftForApprovalResponse","SubmitDraftRequest","_SubmitDraftRequest","SubmitDraftResponse","_SubmitDraftResponse","UpdateAnswersRequest","_UpdateAnswersRequest","proto","m","CustomField","CommonField","Field","kwargs","toReturn","UpdateAnswersResponse","_UpdateAnswersResponse","Order","UpdateAttachmentsRequest","_UpdateAttachmentsRequest","Attachment","UpdateConfigRequest","_UpdateConfigRequest","Config","FieldMask","UpdateContractDurationRequest","_UpdateContractDurationRequest","Duration","UpdateCurrentRevenueRequest","_UpdateCurrentRevenueRequest","LineItem","UpdateCustomerNotesRequest","_UpdateCustomerNotesRequest","UpdateLineItemsRequest","_UpdateLineItemsRequest","UpdateNotesRequest","_UpdateNotesRequest","UpdateRequestedActivationRequest","_UpdateRequestedActivationRequest","proto","m","kwargs","toReturn","UpdateSalesOrderMarketRequest","_UpdateSalesOrderMarketRequest","UpdateSalespersonRequest","_UpdateSalespersonRequest","UpdateSalespersonResponse","_UpdateSalespersonResponse","Order","UpdateTagsRequest","_UpdateTagsRequest","UpdateTagsResponse","_UpdateTagsResponse","VendorOrder","_VendorOrder","proto","m","Business","Pricing","enumStringToValue$1","ActivationStatus","FulfillmentStatus","kwargs","toReturn","environment","hostMap","HostService","t","ɵɵdefineInjectable","CustomerSalesOrdersApiService","http","hostService","HttpHeaders","r","request","CustomerCreateSalesOrderRequest","map","resp","CustomerCreateSalesOrderResponse","CustomerApproveSalesOrderRequest","CustomerApproveSalesOrderResponse","UpdateAnswersRequest","UpdateAnswersResponse","GetSalesOrderRequest","GetSalesOrderResponse","ListCustomerSalesOrderRequest","ListSalesOrderResponse","GetUsersRequest","GetUsersResponse","DeclineSalesOrderRequest","DeclineResponse","CustomerGetConfigurationRequest","GetConfigurationResponse","InitiateOrderExportRequest","InitiateOrderExportResponse","CreateForPartnerApprovalRequest","CreateForPartnerApprovalResponse","CreateWithPaymentIntentRequest","CreateWithPaymentIntentResponse","PreviewOrderActivationsRequest","PreviewOrderActivationsResponse","ɵɵinject","HttpClient","SalesOrdersApiService","CreateSalesOrderRequest","CreateSalesOrderResponse","DuplicateSalesOrderRequest","DuplicateSalesOrderResponse","UpdateSalesOrderMarketRequest","__spreadProps","__spreadValues","GetMultiSalesOrderRequest","GetMultiSalesOrderResponse","GetSalesOrderByIdempotencyKeyRequest","ListSalesOrderRequest","ApproveSalesOrderRequest","ApproveSalesOrderResponse","DeclineSalesOrderResponse","ActivateProductsRequest","ActivateProductsResponse","ScheduleActivationRequest","ArchiveSalesOrderRequest","ArchiveSalesOrderResponse","DeleteSalesOrderRequest","CheckSalesOrderExistsRequest","CheckSalesOrderExistsResponse","SendForCustomerApprovalRequest","SendForCustomerApprovalResponse","SendExistingOrderToCustomerForApprovalRequest","GetConfigRequest","GetConfigResponse","UpdateConfigRequest","DeleteConfigRequest","UpdateTagsRequest","UpdateTagsResponse","UpdateSalespersonRequest","UpdateSalespersonResponse","UpdateNotesRequest","UpdateRequestedActivationRequest","UpdateContractDurationRequest","UpdateCurrentRevenueRequest","UpdateLineItemsRequest","ListTagsRequest","ListTagsResponse","CreateDraftSalesOrderRequest","CreateDraftSalesOrderResponse","SubmitDraftRequest","SubmitDraftResponse","SubmitDraftForApprovalRequest","SubmitDraftForApprovalResponse","IgnoreProductActivationErrorRequest","IgnoreAllProductActivationErrorsRequest","RequestCancellationRequest","DeclineCancellationRequest","ApproveCancellationRequest","ConvertToDraftRequest","GetStatusCountsRequest","GetStatusCountsResponse","CreateInvoiceRequest","CreateInvoiceResponse","CreateAndActivateOrderRequest","CreateAndActivateOrderResponse","UpdateCustomerNotesRequest","UpdateAttachmentsRequest","LeaseSalesOrderToAutomationsRequest","LeaseSalesOrderToAutomationsResponse","CreateLeasedToAutomationsSalesOrderRequest","CreateLeasedToAutomationsSalesOrderResponse","GetOrderRecipientDetailsRequest","GetOrderRecipientDetailsResponse","SalesOrdersAuxiliaryFieldDataApiService","http","hostService","HttpHeaders","r","request","ListSalesOderAuxiliaryDataRequest","map","resp","ListAuxiliaryDataResponse","UpsertSalesOrderAuxiliaryDataRequest","__spreadProps","__spreadValues","t","ɵɵinject","HttpClient","HostService","ɵɵdefineInjectable","SalesOrdersAuxiliaryFieldSchemaApiService","CreateAuxiliaryDataFieldSchemaRequest","GetAuxiliaryDataFieldSchemaRequest","GetAuxiliaryDataFieldSchemaResponse","ListAuxiliaryDataFieldSchemaRequest","ListAuxiliaryDataFieldSchemaResponse","UpdateAuxiliaryDataFieldSchemaRequest","ArchiveAuxiliaryDataFieldSchemaRequest","UnarchiveAuxiliaryDataFieldSchemaRequest","GetMultiAuxiliaryDataFieldSchemaRequest","GetMultiAuxiliaryDataFieldSchemaResponse","VendorOrdersApiService","http","hostService","HttpHeaders","r","request","ListOrdersRequest","map","resp","ListOrdersResponse","t","ɵɵinject","HttpClient","HostService","ɵɵdefineInjectable","fillOutEmptyValues","order","PagedResponse","results","nextCursor","hasMore","totalResults","SalesOrdersService","api","hostService","salespersonId","partnerId","businessId","marketId","opportunityIds","requestedActivation","notes","packages","products","customFields","commonFields","origin","Origin","attachments","extraFields","duration","quoteId","tags","req","CreateSalesOrderRequest","map","resp","o","ensureLineItemValuesAreOneOf$1","orderId","GetSalesOrderRequest","fillOutEmptyValues","DuplicateSalesOrderRequest","filters","sortOption","cursor","pageSize","ListSalesOrderRequest","ApproveSalesOrderRequest","declinedReason","declinedReasonIds","DeclineSalesOrderRequest","ArchiveSalesOrderRequest","productId","editionId","statuses","CheckSalesOrderExistsRequest","config","buildFieldMask","order","userID","offerExpiry","agreements","contractDuration","lineItems","userId","orderIsSmbPayable","productActivationUniqueId","customerNotes","actionType","leaseData","LeaseSalesOrderToAutomationsRequest","orderToken","t","ɵɵinject","SalesOrdersApiService","HostService","ɵɵdefineInjectable","obj","fieldMaskPaths","x","FieldMask","li","CustomerSalesOrdersService","ensureLineItemValuesAreOneOf","paymentMethodToken","ListCustomerSalesOrderRequest","exportOrderRequest","CustomerGetConfigurationRequest","CustomerSalesOrdersApiService","VendorOrdersService","request","ListOrdersRequest","VendorOrdersApiService"],"x_google_ignoreList":[0]}