{"version":3,"sources":["libs/work-order/src/lib/assets/i18n/en_devel.json","node_modules/@vendasta/order-fulfillment/fesm2020/vendasta-order-fulfillment.mjs","libs/work-order/src/lib/work-order-landing-page/interfaces.ts","libs/work-order/src/lib/utils.ts","libs/work-order/src/lib/status-badge/status-badge.component.ts","libs/work-order/src/lib/status-badge/status-badge.component.html","libs/work-order/src/lib/work-order-sales-order-summary/work-order-sales-order-summary.component.ts","libs/work-order/src/lib/work-order-sales-order-summary/work-order-sales-order-summary.component.html","libs/work-order/src/lib/work-order-landing-page/pipes/account-city.pipe.ts","libs/work-order/src/lib/work-order-landing-page/pipes/account-phone.pipe.ts","libs/work-order/src/lib/work-order-landing-page/pipes/digital-agent-name.pipe.ts","libs/work-order/src/lib/work-order-landing-page/pipes/get-account-info.pipe.ts","libs/work-order/src/lib/work-order-landing-page/pipes/get-product-info.pipe.ts","libs/work-order/src/lib/work-order-landing-page/constants.ts","libs/work-order/src/lib/work-order-landing-page/pipes/project-status-option.pipe.ts","libs/work-order/src/lib/work-order-landing-page/pipes/display-fulfillment-order-status.pipe.ts","libs/work-order/src/lib/work-order-landing-page/pipes/fulfillment-order-pipes.module.ts","libs/work-order/src/lib/work-order-landing-page/pending-approvals/pending-approval-approve/pending-activation-approval-dialogue.component.ts","libs/work-order/src/lib/work-order-landing-page/pending-approvals/pending-approval-approve/pending-activation-approval-dialogue.component.html","libs/work-order/src/lib/work-order-landing-page/pending-approvals/pending-approval-decline/pending-approval-decline.component.ts","libs/work-order/src/lib/work-order-landing-page/pending-approvals/pending-approval-decline/pending-approval-decline.component.html","libs/work-order/src/lib/work-order-landing-page/pending-approvals/pending-approvals.interface.ts","libs/work-order/src/lib/work-order-landing-page/pending-approvals/pending-approvals-card/is-activation-pending.pipe.ts","libs/work-order/src/lib/work-order-landing-page/pending-approvals/pending-approvals-card/pending-approvals-card.component.ts","libs/work-order/src/lib/work-order-landing-page/pending-approvals/pending-approvals-card/pending-approvals-card.component.html","libs/work-order/src/lib/work-order-form/form-conflict-dialog/form-conflict-dialog.component.ts","libs/work-order/src/lib/work-order-form/form-conflict-dialog/form-conflict-dialog.component.html","libs/work-order/src/lib/work-order-form/form-error-dialog/form-error-dialog.component.ts","libs/work-order/src/lib/work-order-form/form-error-dialog/form-error-dialog.component.html","libs/work-order/src/lib/work-order-form/form-confirm-dialog/form-confirm-dialog.component.ts","libs/work-order/src/lib/work-order-form/form-confirm-dialog/form-confirm-dialog.component.html","libs/users/src/lib/users-service-interface.ts","libs/users/src/lib/components/create-user/create-user-form.component.ts","libs/users/src/lib/components/create-user/create-user-form.component.html","libs/users/src/lib/user-full-name.pipe.ts","libs/users/src/lib/components/add-user/add-user-dialog.component.ts","libs/users/src/lib/components/add-user/add-user-dialog.component.html","libs/users/src/lib/assets/en_devel.json","libs/users/src/lib/users.module.ts","libs/users/src/lib/index.ts","libs/users/src/index.ts","libs/work-order/src/lib/send-email-dialog/send-email-dialog.component.ts","libs/work-order/src/lib/send-email-dialog/send-email-dialog.component.html","libs/work-order/src/lib/work-order.module.ts","libs/work-order/src/lib/external-form-products.ts","libs/work-order/src/lib/work-order-form-config.service.ts","libs/work-order/src/lib/work-order-form/work-order-form.service.ts","libs/work-order/src/lib/work-order-form/work-order-form.component.ts","libs/work-order/src/lib/work-order-form/work-order-form.component.html","libs/work-order/src/lib/work-order-details/work-orders-unsaved-changes.guard.ts","libs/work-order/src/lib/work-order-checklist/work-order-checklist.component.ts","libs/work-order/src/lib/work-order-checklist/work-order-checklist.component.html","libs/work-order/src/lib/work-order-context/work-order-context.component.ts","libs/work-order/src/lib/work-order-context/work-order-context.component.html","libs/work-order/src/lib/work-order-details/work-order-unsaved-changes-dialog/work-order-unsaved-changes-dialog.component.ts","libs/work-order/src/lib/work-order-details/work-order-unsaved-changes-dialog/work-order-unsaved-changes-dialog.component.html","libs/work-order/src/lib/work-order-details/work-order-details.component.ts","libs/work-order/src/lib/work-order-details/work-order-details.component.html","libs/work-order/src/lib/work-order-sales-order-summary/work-order-sales-order-summary.service.ts","libs/work-order/src/lib/index.ts","libs/work-order/src/index.ts"],"sourcesContent":["{\n \"WORK_ORDER\": {\n \"TITLE\": \"Work Order Form\",\n \"PROJECT\": \"Project\",\n \"SHARE\": \"Share\",\n \"ORDER_FORM\": {\n \"SUBMIT\": \"Send for review\",\n \"SUBMIT_SUCCESS\": \"Successfully updated the answers\",\n \"SUBMIT_ERROR\": \"Error updating the answers\",\n \"ADDITIONAL_INFORMATION\": \"Additional information\",\n \"GET_SUBMISSION_ERROR\": \"There was an error loading latest form submission\",\n \"UNSAVED_CHANGES\": \"You have unsaved changes\",\n \"UNSAVED_WARNING\": \"The changes you've made won't be saved if you leave this page\",\n \"LEAVE\": \"Leave without saving\",\n \"STAY\": \"Continue editing\"\n },\n \"COMMENTS\": {\n \"SUBMIT_SUCCESS\": \"Comment submitted.\",\n \"SUBMIT_ERROR\": \"Error adding comment, please try again later.\"\n }\n },\n \"SALES_ORDER_SUMMARY\": {\n \"TITLE\": \"Work orders\",\n \"TITLE_NON_VENDOR\": \"Fulfillment\",\n \"THERMOMETER_SUFFIX\": \"{{completed}}/{{total}} complete\"\n },\n \"DISPLAYED_STATUS_VALUES\": {\n \"PENDING\": \"Pending\",\n \"ON_HOLD\": \"On hold\",\n \"IN_PROGRESS\": \"In progress\",\n \"IN_REVIEW\": \"In review\",\n \"VENDOR_REVIEW\": \"Vendor review\",\n \"FULFILLED\": \"Fulfilled\",\n \"CANCELED\": \"Canceled\",\n \"DETAILS_NEEDED\": \"Details needed\",\n \"COMPLETED\": \"Completed\"\n },\n \"PERSONA_STATUS_VALUES\": {\n \"PENDING\": {\n \"CP\": \"Action required\",\n \"VENDOR\": \"Waiting on customer\",\n \"SMB\": \"Action required\",\n \"SALES\": \"Action required\"\n },\n \"ACTION_REQUIRED\": {\n \"CP\": \"Pending\",\n \"VENDOR\": \"Action required\",\n \"SMB\": \"Pending\",\n \"SALES\": \"Pending\"\n },\n \"IN_REVIEW\": {\n \"CP\": \"Under review\",\n \"VENDOR\": \"Under review\",\n \"SMB\": \"Under review\",\n \"SALES\": \"Under review\"\n },\n \"IN_PROGRESS\": {\n \"CP\": \"In progress\",\n \"VENDOR\": \"In progress\",\n \"SMB\": \"In progress\",\n \"SALES\": \"In progress\"\n },\n \"FULFILLED\": {\n \"CP\": \"Completed\",\n \"VENDOR\": \"Completed\",\n \"SMB\": \"Completed\",\n \"SALES\": \"Completed\"\n },\n \"CANCELED\": {\n \"CP\": \"Canceled\",\n \"VENDOR\": \"Canceled\",\n \"SMB\": \"Canceled\",\n \"SALES\": \"Canceled\"\n },\n \"ON_HOLD\": {\n \"CP\": \"On hold\",\n \"VENDOR\": \"On hold\",\n \"SMB\": \"On hold\",\n \"SALES\": \"On hold\"\n },\n \"DECLINED\": {\n \"CP\": \"Declined\",\n \"VENDOR\": \"Declined\",\n \"SMB\": \"Declined\",\n \"SALES\": \"Declined\"\n }\n },\n \"CONTEXT\": {\n \"ACCOUNT_DELETED\": \"Account deleted\",\n \"TITLE\": \"Customer\",\n \"PHONE\": \"Phone number\"\n },\n \"LANDING_PAGE\": {\n \"DATE_CARD\": {\n \"TITLE\": \"Dates\",\n \"SUBMITTED\": \"Submitted\",\n \"UPDATED\": \"Updated\"\n },\n \"ORDER_INFO_CARD\": {\n \"TITLE\": \"Order details\",\n \"TITLE_NON_VENDOR\": \"Item details\",\n \"SUBMITTED_BY\": \"Submitted by\",\n \"CANCELLED\": \"Order canceled\",\n \"ACCOUNT\": \"Account\",\n \"PRODUCT\": \"Product\",\n \"PRICING\": \"Pricing\",\n \"FREE\": \"Free\",\n \"SALES_ORDER_ID\": \"Sales Order ID\",\n \"SALES_ORDER_ID_NON_VENDOR\": \"Order ID\",\n \"PRODUCT_STATUS\": \"Product status\",\n \"LOWERCASE_ITEM\": \"item\",\n \"LOWERCASE_ITEMS\": \"items\",\n \"QUANTITY\": \"(Qty {{quantity}})\",\n \"REASON\": \"Reason\",\n \"CANCELED_TEXT\": \"Product had a cancellation request sent on {{day}} at {{time}} by {{sourceIdentifier}}\",\n \"DEACTIVATED_TEXT\": \"Product was deactivated on {{day}} at {{time}} by {{sourceIdentifier}}\",\n \"REJECTED_TEXT\": \"Product activation was rejected.\"\n },\n \"PRODUCT_STATUSES\": {\n \"PENDING_ACTIVATION\": \"Pending Activation\",\n \"ACTIVE\": \"Active\",\n \"REJECTED\": \"Rejected\",\n \"CANCELED\": \"Canceled\",\n \"DEACTIVATED\": \"Deactivated\"\n },\n \"COMMUNICATION_DETAILS\": {\n \"CONTACT\": \"Contact (Customer)\",\n \"SALESPERSON\": \"Salesperson\",\n \"COMMUNICATION_DETAILS\": \"Communication details\"\n },\n \"BANNER\": {\n \"TITLE\": \"Action required\",\n \"SUBTITLE\": \"Fulfillment form responses needed\",\n \"VIEW\": \"View\"\n },\n \"UNDER_REVIEW_BANNER\": {\n \"TITLE\": \"Under review\",\n \"SUBTITLE_MAIN_PAGE\": \"You will be notified if any more details are needed\",\n \"SUBTITLE_FULFILLMENT_PAGE\": \"You wll be notified if any more details are needed before we can start fulfillment\"\n },\n \"FORM_SUBMITTED_BANNER\": {\n \"TITLE\": \"Submitted\",\n \"SUBTITLE\": \"Your responses have been submitted and wil be reviewed shortly\"\n }\n },\n \"FULFILLMENT\": {\n \"TITLE\": \"Fulfillment\"\n },\n \"CHECKLIST\": {\n \"TITLE\": \"Checklist\",\n \"TOOLTIP_TEXT\": \"Click on any of the fields in the checklist to automatically scroll to the corresponding form\"\n },\n \"FORM_V2\": {\n \"SUBMIT_FORM\": \"Submit form\",\n \"SAVE_PROGRESS\": \"Save progress\",\n \"SAVE_CHANGES\": \"Save changes\",\n \"SUBMIT_SUCCESS\": \"Successfully submitted the form. It may take a few minutes for the changes to reflect in the system.\",\n \"SUBMIT_ERROR\": \"There was an error submitting the form\",\n \"SAVE_PROGRESS_SUCCESS\": \"Successfully saved progress\",\n \"SAVE_PROGRESS_ERROR\": \"There was an error saving progress\",\n \"SAVE_PROGRESS_ERROR_INVALID\": \"Cannot save progress as the fields you have entered are invalid.\",\n \"EMPTY_STATE_MESSAGE\": \"There is no fulfillment form associated with this work order\",\n \"RESTORE_ANSWERS\": \"Restore answers\",\n \"CONFLICT_DIALOG\": {\n \"TITLE\": \"Form submission conflicts\",\n \"MESSAGE\": \"Another user has made changes to the form. You must refresh the page before you can submit updates.\",\n \"SUB_MESSAGE\": \"You will have the option to restore your previous answers.\",\n \"CLOSE\": \"Close\",\n \"REFRESH\": \"Refresh\"\n },\n \"SUBMISSION_ERROR_DIALOG\": {\n \"TITLE\": \"Missing Information\",\n \"CONTENT\": \"Some required questions still need responses before you can submit this form.\",\n \"OK\": \"OK\"\n },\n \"SUBMISSION_CONFIRM_DIALOG\": {\n \"TITLE\": \"Submit form?\",\n \"CONTENT\": \"The fulfillment team will be notified once you submit your form.\",\n \"SUBMIT\": \"Submit\",\n \"CANCEL\": \"Cancel\"\n },\n \"LAST_UPDATED\": \"Last updated at {{timestamp}}\"\n },\n \"SLIDING_NOTIFIER\": {\n \"TITLE\": \"Action required on your order\",\n \"CONTENT\": \"order needs more information before fulfillment can begin on\",\n \"ITEMS\": \"items\",\n \"ITEM\": \"item\",\n \"DISMISS\": \"Dismiss\",\n \"VIEW_ORDER\": \"View order\"\n },\n \"PENDING_APPROVALS_CARD\": {\n \"TITLE\": \"Pending approvals\",\n \"DECLINE\": \"Decline\",\n \"APPROVE\": \"Approve\",\n \"CANCEL\": \"Cancel\",\n \"APPROVE_ORDER_DIALOG\": {\n \"TITLE\": \"Approve order\",\n \"CONTENT\": \"This will approve all recurring billing for this product going forward and allow fulfillment to proceed\"\n },\n \"DECLINE_ORDER_DIALOG\": {\n \"TITLE\": \"Decline order\",\n \"CONTENT\": \"This will cancel the order and immediately refund the reseller the initial payment for this product\",\n \"PROVIDE_A_REJECTION_REASON\": \"Provide a rejection reason\"\n },\n \"APPROVE_SUCCESS\": \"Successfully approved pending activation\",\n \"APPROVE_ERROR\": \"There was an error approving the pending activation\",\n \"DECLINE_SUCCESS\": \"Successfully declined pending activation\",\n \"DECLINE_ERROR\": \"There was an error declining the pending activation\"\n },\n \"SHARE\": {\n \"NO_USERS_TOOLTIP\": \"To share fulfillment form, create a user on the account\",\n \"SHARE_FORM\": \"Share form\",\n \"ADD_OR_SELECT_USERS\": \"Add or select users\",\n \"EMAIL_ADDRESSES\": \"Email addresses\",\n \"ADD_USERS\": \"Add users to account\",\n \"CANCEL\": \"Cancel\",\n \"SHARE\": \"Share\",\n \"PERSONALIZE\": \"Personalize the email with a brief message\",\n \"ADD_USER\": \"Add user\"\n }\n}\n","import * as i0 from '@angular/core';\nimport { Injectable } from '@angular/core';\nimport * as i1 from '@angular/common/http';\nimport { HttpHeaders } from '@angular/common/http';\nimport { map } from 'rxjs/operators';\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar BlameSource = /*#__PURE__*/function (BlameSource) {\n BlameSource[BlameSource[\"BLAME_SOURCE_SYSTEM\"] = 0] = \"BLAME_SOURCE_SYSTEM\";\n BlameSource[BlameSource[\"BLAME_SOURCE_USER\"] = 1] = \"BLAME_SOURCE_USER\";\n return BlameSource;\n}(BlameSource || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar ValidationErrorCodes = /*#__PURE__*/function (ValidationErrorCodes) {\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_UNKNOWN\"] = 0] = \"VALIDATION_ERROR_CODES_UNKNOWN\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_APP_NOT_FOUND\"] = 1] = \"VALIDATION_ERROR_CODES_APP_NOT_FOUND\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_NO_ORDER_FORM_SUBMISSION_ID\"] = 2] = \"VALIDATION_ERROR_CODES_NO_ORDER_FORM_SUBMISSION_ID\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_ORDER_FORM_NOT_FOUND\"] = 3] = \"VALIDATION_ERROR_CODES_ORDER_FORM_NOT_FOUND\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_ORDER_FORM_ALREADY_USED\"] = 4] = \"VALIDATION_ERROR_CODES_ORDER_FORM_ALREADY_USED\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_ORDER_FORM_NOT_SUPPORTED\"] = 5] = \"VALIDATION_ERROR_CODES_ORDER_FORM_NOT_SUPPORTED\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_INVALID_ENTRY_URL\"] = 6] = \"VALIDATION_ERROR_CODES_INVALID_ENTRY_URL\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_ENTRY_URL_NOT_PROVIDED\"] = 7] = \"VALIDATION_ERROR_CODES_ENTRY_URL_NOT_PROVIDED\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_INVALID_DEPENDENCY\"] = 8] = \"VALIDATION_ERROR_CODES_INVALID_DEPENDENCY\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_ALREADY_ACTIVE\"] = 9] = \"VALIDATION_ERROR_CODES_ALREADY_ACTIVE\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_EDITION_NOT_PROVIDED\"] = 10] = \"VALIDATION_ERROR_CODES_EDITION_NOT_PROVIDED\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_EDITIONS_NOT_SUPPORTED\"] = 11] = \"VALIDATION_ERROR_CODES_EDITIONS_NOT_SUPPORTED\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_INVALID_EDITION\"] = 12] = \"VALIDATION_ERROR_CODES_INVALID_EDITION\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_TRIAL_NOT_SUPPORTED\"] = 13] = \"VALIDATION_ERROR_CODES_TRIAL_NOT_SUPPORTED\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_ACCOUNT_GROUP_NOT_FOUND\"] = 14] = \"VALIDATION_ERROR_CODES_ACCOUNT_GROUP_NOT_FOUND\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_NO_COUNTRY_INFORMATION\"] = 15] = \"VALIDATION_ERROR_CODES_NO_COUNTRY_INFORMATION\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_UNSUPPORTED_COUNTRY\"] = 16] = \"VALIDATION_ERROR_CODES_UNSUPPORTED_COUNTRY\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_CANNOT_CHANGE_EDITION_OF_TRIAL\"] = 17] = \"VALIDATION_ERROR_CODES_CANNOT_CHANGE_EDITION_OF_TRIAL\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_APP_NOT_ACTIVE\"] = 18] = \"VALIDATION_ERROR_CODES_APP_NOT_ACTIVE\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_FEATURE_NOT_ENABLED\"] = 19] = \"VALIDATION_ERROR_CODES_FEATURE_NOT_ENABLED\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_APP_IS_SUSPENDED\"] = 20] = \"VALIDATION_ERROR_CODES_APP_IS_SUSPENDED\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_PACKAGE_NOT_FOUND\"] = 21] = \"VALIDATION_ERROR_CODES_PACKAGE_NOT_FOUND\";\n ValidationErrorCodes[ValidationErrorCodes[\"VALIDATION_ERROR_CODES_PARTNER_NOT_OWNER_OF_PACKAGE\"] = 22] = \"VALIDATION_ERROR_CODES_PARTNER_NOT_OWNER_OF_PACKAGE\";\n return ValidationErrorCodes;\n}(ValidationErrorCodes || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar Frequency = /*#__PURE__*/function (Frequency) {\n Frequency[Frequency[\"FREQUENCY_INVALID\"] = 0] = \"FREQUENCY_INVALID\";\n Frequency[Frequency[\"FREQUENCY_MONTHLY\"] = 1] = \"FREQUENCY_MONTHLY\";\n Frequency[Frequency[\"FREQUENCY_YEARLY\"] = 2] = \"FREQUENCY_YEARLY\";\n Frequency[Frequency[\"FREQUENCY_ONE_TIME\"] = 3] = \"FREQUENCY_ONE_TIME\";\n return Frequency;\n}(Frequency || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar Consumer = /*#__PURE__*/function (Consumer) {\n Consumer[Consumer[\"CONSUMER_UNSET\"] = 0] = \"CONSUMER_UNSET\";\n Consumer[Consumer[\"CONSUMER_WHOLESALE\"] = 1] = \"CONSUMER_WHOLESALE\";\n Consumer[Consumer[\"CONSUMER_RETAIL\"] = 2] = \"CONSUMER_RETAIL\";\n return Consumer;\n}(Consumer || {});\nvar OrderItemStatus = /*#__PURE__*/function (OrderItemStatus) {\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_INVALID\"] = 0] = \"ORDER_ITEM_STATUS_INVALID\";\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_CREATED\"] = 1] = \"ORDER_ITEM_STATUS_CREATED\";\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_VALIDATION_FAILED\"] = 2] = \"ORDER_ITEM_STATUS_VALIDATION_FAILED\";\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_CHARGED\"] = 3] = \"ORDER_ITEM_STATUS_CHARGED\";\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_CHARGE_SUCCESSFUL\"] = 4] = \"ORDER_ITEM_STATUS_CHARGE_SUCCESSFUL\";\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_CHARGE_FAILED\"] = 5] = \"ORDER_ITEM_STATUS_CHARGE_FAILED\";\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_PENDING_ACTIVATION\"] = 6] = \"ORDER_ITEM_STATUS_PENDING_ACTIVATION\";\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_ACTIVATION_FAILED\"] = 7] = \"ORDER_ITEM_STATUS_ACTIVATION_FAILED\";\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_ACTIVATION_SUCCESSFUL\"] = 8] = \"ORDER_ITEM_STATUS_ACTIVATION_SUCCESSFUL\";\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_CANCELED\"] = 9] = \"ORDER_ITEM_STATUS_CANCELED\";\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_WAITING_FOR_CONSUMER_INFORMATION\"] = 10] = \"ORDER_ITEM_STATUS_WAITING_FOR_CONSUMER_INFORMATION\";\n OrderItemStatus[OrderItemStatus[\"ORDER_ITEM_STATUS_ACTIVATION_SCHEDULED\"] = 11] = \"ORDER_ITEM_STATUS_ACTIVATION_SCHEDULED\";\n return OrderItemStatus;\n}(OrderItemStatus || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar OrderStatus = /*#__PURE__*/function (OrderStatus) {\n OrderStatus[OrderStatus[\"ORDER_STATUS_UNKNOWN\"] = 0] = \"ORDER_STATUS_UNKNOWN\";\n OrderStatus[OrderStatus[\"ORDER_STATUS_CREATED\"] = 1] = \"ORDER_STATUS_CREATED\";\n OrderStatus[OrderStatus[\"ORDER_STATUS_PROCESSING\"] = 2] = \"ORDER_STATUS_PROCESSING\";\n OrderStatus[OrderStatus[\"ORDER_STATUS_CHARGED\"] = 3] = \"ORDER_STATUS_CHARGED\";\n return OrderStatus;\n}(OrderStatus || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar BillingFrequency = /*#__PURE__*/function (BillingFrequency) {\n BillingFrequency[BillingFrequency[\"BILLING_FREQUENCY_INVALID\"] = 0] = \"BILLING_FREQUENCY_INVALID\";\n BillingFrequency[BillingFrequency[\"BILLING_FREQUENCY_MONTHLY\"] = 1] = \"BILLING_FREQUENCY_MONTHLY\";\n BillingFrequency[BillingFrequency[\"BILLING_FREQUENCY_YEARLY\"] = 2] = \"BILLING_FREQUENCY_YEARLY\";\n BillingFrequency[BillingFrequency[\"BILLING_FREQUENCY_ONE_TIME\"] = 3] = \"BILLING_FREQUENCY_ONE_TIME\";\n return BillingFrequency;\n}(BillingFrequency || {});\nvar ChangeSpendRequestStatus = /*#__PURE__*/function (ChangeSpendRequestStatus) {\n ChangeSpendRequestStatus[ChangeSpendRequestStatus[\"CHANGE_SPEND_REQUEST_STATUS_INVALID\"] = 0] = \"CHANGE_SPEND_REQUEST_STATUS_INVALID\";\n ChangeSpendRequestStatus[ChangeSpendRequestStatus[\"CHANGE_SPEND_REQUEST_STATUS_CREATED\"] = 1] = \"CHANGE_SPEND_REQUEST_STATUS_CREATED\";\n ChangeSpendRequestStatus[ChangeSpendRequestStatus[\"CHANGE_SPEND_REQUEST_STATUS_APPROVED\"] = 2] = \"CHANGE_SPEND_REQUEST_STATUS_APPROVED\";\n ChangeSpendRequestStatus[ChangeSpendRequestStatus[\"CHANGE_SPEND_REQUEST_STATUS_REJECTED\"] = 3] = \"CHANGE_SPEND_REQUEST_STATUS_REJECTED\";\n ChangeSpendRequestStatus[ChangeSpendRequestStatus[\"CHANGE_SPEND_REQUEST_STATUS_OVERRIDDEN\"] = 4] = \"CHANGE_SPEND_REQUEST_STATUS_OVERRIDDEN\";\n return ChangeSpendRequestStatus;\n}(ChangeSpendRequestStatus || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar FailureReason = /*#__PURE__*/function (FailureReason) {\n FailureReason[FailureReason[\"FAILURE_REASON_UNKNOWN_ERROR\"] = 0] = \"FAILURE_REASON_UNKNOWN_ERROR\";\n FailureReason[FailureReason[\"FAILURE_REASON_VALIDATION_ERROR\"] = 1] = \"FAILURE_REASON_VALIDATION_ERROR\";\n FailureReason[FailureReason[\"FAILURE_REASON_CHARGE_ERROR\"] = 2] = \"FAILURE_REASON_CHARGE_ERROR\";\n FailureReason[FailureReason[\"FAILURE_REASON_VENDOR_REJECTED_ERROR\"] = 3] = \"FAILURE_REASON_VENDOR_REJECTED_ERROR\";\n FailureReason[FailureReason[\"FAILURE_REASON_ACTIVATION_ERROR\"] = 4] = \"FAILURE_REASON_ACTIVATION_ERROR\";\n return FailureReason;\n}(FailureReason || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar FieldType = /*#__PURE__*/function (FieldType) {\n FieldType[FieldType[\"FIELD_TYPE_NOT_SPECIFIED\"] = 0] = \"FIELD_TYPE_NOT_SPECIFIED\";\n FieldType[FieldType[\"FIELD_TYPE_TEXT\"] = 1] = \"FIELD_TYPE_TEXT\";\n FieldType[FieldType[\"FIELD_TYPE_TEXT_AREA\"] = 2] = \"FIELD_TYPE_TEXT_AREA\";\n FieldType[FieldType[\"FIELD_TYPE_DROPDOWN\"] = 3] = \"FIELD_TYPE_DROPDOWN\";\n FieldType[FieldType[\"FIELD_TYPE_CHECKBOX\"] = 4] = \"FIELD_TYPE_CHECKBOX\";\n FieldType[FieldType[\"FIELD_TYPE_FILE\"] = 5] = \"FIELD_TYPE_FILE\";\n FieldType[FieldType[\"FIELD_TYPE_VBCUSER\"] = 6] = \"FIELD_TYPE_VBCUSER\";\n return FieldType;\n}(FieldType || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\nvar FulfillmentOrderStatus = /*#__PURE__*/function (FulfillmentOrderStatus) {\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_ORDER_STATUS_UNSET\"] = 0] = \"FULFILLMENT_ORDER_STATUS_UNSET\";\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED\"] = 1] = \"FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED\";\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_ORDER_STATUS_IN_REVIEW\"] = 2] = \"FULFILLMENT_ORDER_STATUS_IN_REVIEW\";\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_ORDER_STATUS_IN_PROGRESS\"] = 3] = \"FULFILLMENT_ORDER_STATUS_IN_PROGRESS\";\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_ORDER_STATUS_COMPLETED\"] = 4] = \"FULFILLMENT_ORDER_STATUS_COMPLETED\";\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_ORDER_STATUS_CANCELLED\"] = 5] = \"FULFILLMENT_ORDER_STATUS_CANCELLED\";\n FulfillmentOrderStatus[FulfillmentOrderStatus[\"FULFILLMENT_ORDER_STATUS_ON_HOLD\"] = 6] = \"FULFILLMENT_ORDER_STATUS_ON_HOLD\";\n return FulfillmentOrderStatus;\n}(FulfillmentOrderStatus || {});\nvar PendingActivationStatus = /*#__PURE__*/function (PendingActivationStatus) {\n PendingActivationStatus[PendingActivationStatus[\"PENDING_ACTIVATION_STATUS_NOT_SPECIFIED\"] = 0] = \"PENDING_ACTIVATION_STATUS_NOT_SPECIFIED\";\n PendingActivationStatus[PendingActivationStatus[\"PENDING_ACTIVATION_STATUS_PENDING\"] = 1] = \"PENDING_ACTIVATION_STATUS_PENDING\";\n PendingActivationStatus[PendingActivationStatus[\"PENDING_ACTIVATION_STATUS_APPROVED\"] = 2] = \"PENDING_ACTIVATION_STATUS_APPROVED\";\n PendingActivationStatus[PendingActivationStatus[\"PENDING_ACTIVATION_STATUS_REJECTED\"] = 3] = \"PENDING_ACTIVATION_STATUS_REJECTED\";\n return PendingActivationStatus;\n}(PendingActivationStatus || {});\nvar SortDirection = /*#__PURE__*/function (SortDirection) {\n SortDirection[SortDirection[\"SORT_DIRECTION_UNSET\"] = 0] = \"SORT_DIRECTION_UNSET\";\n SortDirection[SortDirection[\"SORT_DIRECTION_ASCENDING\"] = 1] = \"SORT_DIRECTION_ASCENDING\";\n SortDirection[SortDirection[\"SORT_DIRECTION_DESCENDING\"] = 2] = \"SORT_DIRECTION_DESCENDING\";\n return SortDirection;\n}(SortDirection || {});\nvar TimeField = /*#__PURE__*/function (TimeField) {\n TimeField[TimeField[\"TIME_FIELD_UNSET\"] = 0] = \"TIME_FIELD_UNSET\";\n TimeField[TimeField[\"TIME_FIELD_CREATED\"] = 1] = \"TIME_FIELD_CREATED\";\n TimeField[TimeField[\"TIME_FIELD_UPDATED\"] = 2] = \"TIME_FIELD_UPDATED\";\n TimeField[TimeField[\"TIME_FIELD_DELETED\"] = 3] = \"TIME_FIELD_DELETED\";\n return TimeField;\n}(TimeField || {});\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums Index.\n// *********************************\n\nfunction enumStringToValue$8(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass Blame {\n static fromProto(proto) {\n let m = new Blame();\n m = Object.assign(m, proto);\n if (proto.source) {\n m.source = enumStringToValue$8(BlameSource, proto.source);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.source !== 'undefined') {\n toReturn['source'] = this.source;\n }\n if (typeof this.sourceIdentifier !== 'undefined') {\n toReturn['sourceIdentifier'] = this.sourceIdentifier;\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 EditionChangeInformation {\n static fromProto(proto) {\n let m = new EditionChangeInformation();\n m = Object.assign(m, proto);\n if (proto.editionChangeReasons) {\n m.editionChangeReasons = Reasons.fromProto(proto.editionChangeReasons);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.currentActivationId !== 'undefined') {\n toReturn['currentActivationId'] = this.currentActivationId;\n }\n if (typeof this.editionChangeReasons !== 'undefined' && this.editionChangeReasons !== null) {\n toReturn['editionChangeReasons'] = 'toApiJson' in this.editionChangeReasons ? this.editionChangeReasons.toApiJson() : this.editionChangeReasons;\n }\n return toReturn;\n }\n}\nclass OrderItem {\n static fromProto(proto) {\n let m = new OrderItem();\n m = Object.assign(m, proto);\n if (proto.status) {\n m.status = enumStringToValue$7(OrderItemStatus, proto.status);\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.validationErrorCodes) {\n m.validationErrorCodes = proto.validationErrorCodes.map(v => enumStringToValue$7(ValidationErrorCodes, v));\n }\n if (proto.productActivationInformation) {\n m.productActivationInformation = ProductActivationInformation.fromProto(proto.productActivationInformation);\n }\n if (proto.editionChangeInformation) {\n m.editionChangeInformation = EditionChangeInformation.fromProto(proto.editionChangeInformation);\n }\n if (proto.customPrice) {\n m.customPrice = parseInt(proto.customPrice, 10);\n }\n if (proto.retailAmount) {\n m.retailAmount = parseInt(proto.retailAmount, 10);\n }\n if (proto.retailFrequency) {\n m.retailFrequency = enumStringToValue$7(Frequency, proto.retailFrequency);\n }\n if (proto.consumer) {\n m.consumer = enumStringToValue$7(Consumer, proto.consumer);\n }\n return m;\n }\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.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n if (typeof this.orderItemId !== 'undefined') {\n toReturn['orderItemId'] = this.orderItemId;\n }\n if (typeof this.orderFormSubmissionId !== 'undefined') {\n toReturn['orderFormSubmissionId'] = this.orderFormSubmissionId;\n }\n if (typeof this.editionId !== 'undefined') {\n toReturn['editionId'] = this.editionId;\n }\n if (typeof this.isTrial !== 'undefined') {\n toReturn['isTrial'] = this.isTrial;\n }\n if (typeof this.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\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.updated !== 'undefined' && this.updated !== null) {\n toReturn['updated'] = 'toApiJson' in this.updated ? this.updated.toApiJson() : this.updated;\n }\n if (typeof this.validationErrorCodes !== 'undefined') {\n toReturn['validationErrorCodes'] = this.validationErrorCodes;\n }\n if (typeof this.productActivationInformation !== 'undefined' && this.productActivationInformation !== null) {\n toReturn['productActivationInformation'] = 'toApiJson' in this.productActivationInformation ? this.productActivationInformation.toApiJson() : this.productActivationInformation;\n }\n if (typeof this.editionChangeInformation !== 'undefined' && this.editionChangeInformation !== null) {\n toReturn['editionChangeInformation'] = 'toApiJson' in this.editionChangeInformation ? this.editionChangeInformation.toApiJson() : this.editionChangeInformation;\n }\n if (typeof this.packageId !== 'undefined') {\n toReturn['packageId'] = this.packageId;\n }\n if (typeof this.chargeFailureCode !== 'undefined') {\n toReturn['chargeFailureCode'] = this.chargeFailureCode;\n }\n if (typeof this.packageInstanceId !== 'undefined') {\n toReturn['packageInstanceId'] = this.packageInstanceId;\n }\n if (typeof this.customPrice !== 'undefined') {\n toReturn['customPrice'] = this.customPrice;\n }\n if (typeof this.retailAmount !== 'undefined') {\n toReturn['retailAmount'] = this.retailAmount;\n }\n if (typeof this.retailFrequency !== 'undefined') {\n toReturn['retailFrequency'] = this.retailFrequency;\n }\n if (typeof this.subscriptionId !== 'undefined') {\n toReturn['subscriptionId'] = this.subscriptionId;\n }\n if (typeof this.consumer !== 'undefined') {\n toReturn['consumer'] = this.consumer;\n }\n return toReturn;\n }\n}\nclass ProductActivationInformation {\n static fromProto(proto) {\n let m = new ProductActivationInformation();\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 return toReturn;\n }\n}\nclass Reasons {\n static fromProto(proto) {\n let m = new Reasons();\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.choices !== 'undefined') {\n toReturn['choices'] = this.choices;\n }\n if (typeof this.comments !== 'undefined') {\n toReturn['comments'] = this.comments;\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 Order {\n static fromProto(proto) {\n let m = new Order();\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.status) {\n m.status = enumStringToValue$6(OrderStatus, proto.status);\n }\n if (proto.orderSource) {\n m.orderSource = Blame.fromProto(proto.orderSource);\n }\n return m;\n }\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.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.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.orderSource !== 'undefined' && this.orderSource !== null) {\n toReturn['orderSource'] = 'toApiJson' in this.orderSource ? this.orderSource.toApiJson() : this.orderSource;\n }\n if (typeof this.idempotencyKey !== 'undefined') {\n toReturn['idempotencyKey'] = this.idempotencyKey;\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 ChangeRequestEventExternalData {\n static fromProto(proto) {\n let m = new ChangeRequestEventExternalData();\n m = Object.assign(m, proto);\n if (proto.requestedSpendAmount) {\n m.requestedSpendAmount = parseInt(proto.requestedSpendAmount, 10);\n }\n if (proto.renewalDate) {\n m.renewalDate = new Date(proto.renewalDate);\n }\n if (proto.currentSubscriptionCost) {\n m.currentSubscriptionCost = parseInt(proto.currentSubscriptionCost, 10);\n }\n if (proto.billingFrequency) {\n m.billingFrequency = enumStringToValue$5(BillingFrequency, proto.billingFrequency);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.note !== 'undefined') {\n toReturn['note'] = this.note;\n }\n if (typeof this.requestedSpendAmount !== 'undefined') {\n toReturn['requestedSpendAmount'] = this.requestedSpendAmount;\n }\n if (typeof this.businessName !== 'undefined') {\n toReturn['businessName'] = this.businessName;\n }\n if (typeof this.resellerName !== 'undefined') {\n toReturn['resellerName'] = this.resellerName;\n }\n if (typeof this.itemName !== 'undefined') {\n toReturn['itemName'] = this.itemName;\n }\n if (typeof this.renewalDate !== 'undefined' && this.renewalDate !== null) {\n toReturn['renewalDate'] = 'toApiJson' in this.renewalDate ? this.renewalDate.toApiJson() : this.renewalDate;\n }\n if (typeof this.currentSubscriptionCost !== 'undefined') {\n toReturn['currentSubscriptionCost'] = this.currentSubscriptionCost;\n }\n if (typeof this.billingFrequency !== 'undefined') {\n toReturn['billingFrequency'] = this.billingFrequency;\n }\n if (typeof this.resellerId !== 'undefined') {\n toReturn['resellerId'] = this.resellerId;\n }\n if (typeof this.resellerCurrency !== 'undefined') {\n toReturn['resellerCurrency'] = this.resellerCurrency;\n }\n return toReturn;\n }\n}\nclass ChangeSpendRequest {\n static fromProto(proto) {\n let m = new ChangeSpendRequest();\n m = Object.assign(m, proto);\n if (proto.requestedSpendAmount) {\n m.requestedSpendAmount = parseInt(proto.requestedSpendAmount, 10);\n }\n if (proto.status) {\n m.status = enumStringToValue$5(ChangeSpendRequestStatus, proto.status);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.externalData) {\n m.externalData = ChangeSpendRequestExternalData.fromProto(proto.externalData);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.changeRequestId !== 'undefined') {\n toReturn['changeRequestId'] = this.changeRequestId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n if (typeof this.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n if (typeof this.requestedSpendAmount !== 'undefined') {\n toReturn['requestedSpendAmount'] = this.requestedSpendAmount;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.requesterNote !== 'undefined') {\n toReturn['requesterNote'] = this.requesterNote;\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.requestingUser !== 'undefined') {\n toReturn['requestingUser'] = this.requestingUser;\n }\n if (typeof this.billingOrderId !== 'undefined') {\n toReturn['billingOrderId'] = this.billingOrderId;\n }\n if (typeof this.externalData !== 'undefined' && this.externalData !== null) {\n toReturn['externalData'] = 'toApiJson' in this.externalData ? this.externalData.toApiJson() : this.externalData;\n }\n return toReturn;\n }\n}\nclass ChangeSpendRequestExternalData {\n static fromProto(proto) {\n let m = new ChangeSpendRequestExternalData();\n m = Object.assign(m, proto);\n if (proto.renewalDate) {\n m.renewalDate = new Date(proto.renewalDate);\n }\n if (proto.currentSubscriptionCost) {\n m.currentSubscriptionCost = parseInt(proto.currentSubscriptionCost, 10);\n }\n if (proto.billingFrequency) {\n m.billingFrequency = enumStringToValue$5(BillingFrequency, proto.billingFrequency);\n }\n return m;\n }\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.resellerName !== 'undefined') {\n toReturn['resellerName'] = this.resellerName;\n }\n if (typeof this.itemName !== 'undefined') {\n toReturn['itemName'] = this.itemName;\n }\n if (typeof this.renewalDate !== 'undefined' && this.renewalDate !== null) {\n toReturn['renewalDate'] = 'toApiJson' in this.renewalDate ? this.renewalDate.toApiJson() : this.renewalDate;\n }\n if (typeof this.currentSubscriptionCost !== 'undefined') {\n toReturn['currentSubscriptionCost'] = this.currentSubscriptionCost;\n }\n if (typeof this.billingFrequency !== 'undefined') {\n toReturn['billingFrequency'] = this.billingFrequency;\n }\n if (typeof this.resellerId !== 'undefined') {\n toReturn['resellerId'] = this.resellerId;\n }\n if (typeof this.resellerCurrency !== 'undefined') {\n toReturn['resellerCurrency'] = this.resellerCurrency;\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 FieldMask {\n static fromProto(proto) {\n let m = new FieldMask();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.paths !== 'undefined') {\n toReturn['paths'] = this.paths;\n }\n return toReturn;\n }\n}\nfunction enumStringToValue$3(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass ActivationDateIdentifiers {\n static fromProto(proto) {\n let m = new ActivationDateIdentifiers();\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.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n if (typeof this.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n return toReturn;\n }\n}\nclass ActivationDates {\n static fromProto(proto) {\n let m = new ActivationDates();\n m = Object.assign(m, proto);\n if (proto.activationDate) {\n m.activationDate = new Date(proto.activationDate);\n }\n if (proto.renewalDate) {\n m.renewalDate = new Date(proto.renewalDate);\n }\n if (proto.commitmentDate) {\n m.commitmentDate = new Date(proto.commitmentDate);\n }\n if (proto.earliestValidScheduledDeactivationDate) {\n m.earliestValidScheduledDeactivationDate = new Date(proto.earliestValidScheduledDeactivationDate);\n }\n if (proto.endOfCommitmentPeriod) {\n m.endOfCommitmentPeriod = new Date(proto.endOfCommitmentPeriod);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.activationDate !== 'undefined' && this.activationDate !== null) {\n toReturn['activationDate'] = 'toApiJson' in this.activationDate ? this.activationDate.toApiJson() : this.activationDate;\n }\n if (typeof this.renewalDate !== 'undefined' && this.renewalDate !== null) {\n toReturn['renewalDate'] = 'toApiJson' in this.renewalDate ? this.renewalDate.toApiJson() : this.renewalDate;\n }\n if (typeof this.commitmentDate !== 'undefined' && this.commitmentDate !== null) {\n toReturn['commitmentDate'] = 'toApiJson' in this.commitmentDate ? this.commitmentDate.toApiJson() : this.commitmentDate;\n }\n if (typeof this.earliestValidScheduledDeactivationDate !== 'undefined' && this.earliestValidScheduledDeactivationDate !== null) {\n toReturn['earliestValidScheduledDeactivationDate'] = 'toApiJson' in this.earliestValidScheduledDeactivationDate ? this.earliestValidScheduledDeactivationDate.toApiJson() : this.earliestValidScheduledDeactivationDate;\n }\n if (typeof this.endOfCommitmentPeriod !== 'undefined' && this.endOfCommitmentPeriod !== null) {\n toReturn['endOfCommitmentPeriod'] = 'toApiJson' in this.endOfCommitmentPeriod ? this.endOfCommitmentPeriod.toApiJson() : this.endOfCommitmentPeriod;\n }\n return toReturn;\n }\n}\nclass ActivationFailureDetails {\n static fromProto(proto) {\n let m = new ActivationFailureDetails();\n m = Object.assign(m, proto);\n if (proto.failureReason) {\n m.failureReason = enumStringToValue$3(FailureReason, proto.failureReason);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.orderItemId !== 'undefined') {\n toReturn['orderItemId'] = this.orderItemId;\n }\n if (typeof this.failureReason !== 'undefined') {\n toReturn['failureReason'] = this.failureReason;\n }\n if (typeof this.details !== 'undefined') {\n toReturn['details'] = this.details;\n }\n return toReturn;\n }\n}\nclass CancelEditionChangeRequest {\n static fromProto(proto) {\n let m = new CancelEditionChangeRequest();\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.orderItemId !== 'undefined') {\n toReturn['orderItemId'] = this.orderItemId;\n }\n return toReturn;\n }\n}\nclass CancelOrderItemWaitingForConsumerInformationRequest {\n static fromProto(proto) {\n let m = new CancelOrderItemWaitingForConsumerInformationRequest();\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.orderItemId !== 'undefined') {\n toReturn['orderItemId'] = this.orderItemId;\n }\n return toReturn;\n }\n}\nclass ListChangeSpendRequestHistoryResponseChangeSpendRequestEvents {\n static fromProto(proto) {\n let m = new ListChangeSpendRequestHistoryResponseChangeSpendRequestEvents();\n m = Object.assign(m, proto);\n if (proto.eventTime) {\n m.eventTime = new Date(proto.eventTime);\n }\n if (proto.status) {\n m.status = enumStringToValue$3(ChangeSpendRequestStatus, proto.status);\n }\n if (proto.externalData) {\n m.externalData = ChangeRequestEventExternalData.fromProto(proto.externalData);\n }\n if (proto.effectiveDate) {\n m.effectiveDate = new Date(proto.effectiveDate);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.changeRequestId !== 'undefined') {\n toReturn['changeRequestId'] = this.changeRequestId;\n }\n if (typeof this.eventTime !== 'undefined' && this.eventTime !== null) {\n toReturn['eventTime'] = 'toApiJson' in this.eventTime ? this.eventTime.toApiJson() : this.eventTime;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.externalData !== 'undefined' && this.externalData !== null) {\n toReturn['externalData'] = 'toApiJson' in this.externalData ? this.externalData.toApiJson() : this.externalData;\n }\n if (typeof this.requestingUser !== 'undefined') {\n toReturn['requestingUser'] = this.requestingUser;\n }\n if (typeof this.resolvedBy !== 'undefined') {\n toReturn['resolvedBy'] = this.resolvedBy;\n }\n if (typeof this.effectiveDate !== 'undefined' && this.effectiveDate !== null) {\n toReturn['effectiveDate'] = 'toApiJson' in this.effectiveDate ? this.effectiveDate.toApiJson() : this.effectiveDate;\n }\n return toReturn;\n }\n}\nclass ChangeSpendRequestRequest {\n static fromProto(proto) {\n let m = new ChangeSpendRequestRequest();\n m = Object.assign(m, proto);\n if (proto.requestedSpendAmount) {\n m.requestedSpendAmount = parseInt(proto.requestedSpendAmount, 10);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n if (typeof this.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n if (typeof this.requestedSpendAmount !== 'undefined') {\n toReturn['requestedSpendAmount'] = this.requestedSpendAmount;\n }\n if (typeof this.requesterNote !== 'undefined') {\n toReturn['requesterNote'] = this.requesterNote;\n }\n return toReturn;\n }\n}\nclass CreateOrderRequest {\n static fromProto(proto) {\n let m = new CreateOrderRequest();\n m = Object.assign(m, proto);\n if (proto.orderItems) {\n m.orderItems = proto.orderItems.map(OrderItemParameters.fromProto);\n }\n if (proto.orderSource) {\n m.orderSource = Blame.fromProto(proto.orderSource);\n }\n return m;\n }\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.orderItems !== 'undefined' && this.orderItems !== null) {\n toReturn['orderItems'] = 'toApiJson' in this.orderItems ? this.orderItems.toApiJson() : this.orderItems;\n }\n if (typeof this.orderSource !== 'undefined' && this.orderSource !== null) {\n toReturn['orderSource'] = 'toApiJson' in this.orderSource ? this.orderSource.toApiJson() : this.orderSource;\n }\n if (typeof this.idempotencyKey !== 'undefined') {\n toReturn['idempotencyKey'] = this.idempotencyKey;\n }\n return toReturn;\n }\n}\nclass CreateOrderResponse {\n static fromProto(proto) {\n let m = new CreateOrderResponse();\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 DeactivateImmediatelyRequest {\n static fromProto(proto) {\n let m = new DeactivateImmediatelyRequest();\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.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n return toReturn;\n }\n}\nclass DismissFailedOrderItemRequest {\n static fromProto(proto) {\n let m = new DismissFailedOrderItemRequest();\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.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n if (typeof this.orderItemId !== 'undefined') {\n toReturn['orderItemId'] = this.orderItemId;\n }\n return toReturn;\n }\n}\nclass GetCurrentSpendRequest {\n static fromProto(proto) {\n let m = new GetCurrentSpendRequest();\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.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n if (typeof this.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n return toReturn;\n }\n}\nclass GetCurrentSpendResponse {\n static fromProto(proto) {\n let m = new GetCurrentSpendResponse();\n m = Object.assign(m, proto);\n if (proto.spendAmount) {\n m.spendAmount = parseInt(proto.spendAmount, 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.spendAmount !== 'undefined') {\n toReturn['spendAmount'] = this.spendAmount;\n }\n return toReturn;\n }\n}\nclass GetMultiActivationDatesRequest {\n static fromProto(proto) {\n let m = new GetMultiActivationDatesRequest();\n m = Object.assign(m, proto);\n if (proto.activationDateIdentifiers) {\n m.activationDateIdentifiers = proto.activationDateIdentifiers.map(ActivationDateIdentifiers.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.activationDateIdentifiers !== 'undefined' && this.activationDateIdentifiers !== null) {\n toReturn['activationDateIdentifiers'] = 'toApiJson' in this.activationDateIdentifiers ? this.activationDateIdentifiers.toApiJson() : this.activationDateIdentifiers;\n }\n if (typeof this.partnerId !== 'undefined') {\n toReturn['partnerId'] = this.partnerId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass GetMultiActivationDatesResponse {\n static fromProto(proto) {\n let m = new GetMultiActivationDatesResponse();\n m = Object.assign(m, proto);\n if (proto.activationDates) {\n m.activationDates = proto.activationDates.map(ActivationDates.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.activationDates !== 'undefined' && this.activationDates !== null) {\n toReturn['activationDates'] = 'toApiJson' in this.activationDates ? this.activationDates.toApiJson() : this.activationDates;\n }\n return toReturn;\n }\n}\nclass GetMultiActivationErrorsForOrderItemsRequest {\n static fromProto(proto) {\n let m = new GetMultiActivationErrorsForOrderItemsRequest();\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.orderItemIds !== 'undefined') {\n toReturn['orderItemIds'] = this.orderItemIds;\n }\n return toReturn;\n }\n}\nclass GetMultiActivationErrorsForOrderItemsResponse {\n static fromProto(proto) {\n let m = new GetMultiActivationErrorsForOrderItemsResponse();\n m = Object.assign(m, proto);\n if (proto.failureDetails) {\n m.failureDetails = proto.failureDetails.map(ActivationFailureDetails.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.failureDetails !== 'undefined' && this.failureDetails !== null) {\n toReturn['failureDetails'] = 'toApiJson' in this.failureDetails ? this.failureDetails.toApiJson() : this.failureDetails;\n }\n return toReturn;\n }\n}\nclass GetMultiScheduledDeactivationsForBusinessRequest {\n static fromProto(proto) {\n let m = new GetMultiScheduledDeactivationsForBusinessRequest();\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.activationIds !== 'undefined') {\n toReturn['activationIds'] = this.activationIds;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass GetMultiScheduledDeactivationsForBusinessResponse {\n static fromProto(proto) {\n let m = new GetMultiScheduledDeactivationsForBusinessResponse();\n m = Object.assign(m, proto);\n if (proto.scheduledDeactivations) {\n m.scheduledDeactivations = proto.scheduledDeactivations.map(ScheduledProvisioningTask.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.scheduledDeactivations !== 'undefined' && this.scheduledDeactivations !== null) {\n toReturn['scheduledDeactivations'] = 'toApiJson' in this.scheduledDeactivations ? this.scheduledDeactivations.toApiJson() : this.scheduledDeactivations;\n }\n return toReturn;\n }\n}\nclass GetOrderByIdempotencyKeyRequest {\n static fromProto(proto) {\n let m = new GetOrderByIdempotencyKeyRequest();\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 GetOrderByIdempotencyKeyResponse {\n static fromProto(proto) {\n let m = new GetOrderByIdempotencyKeyResponse();\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 ListChangeSpendRequestHistoryRequest {\n static fromProto(proto) {\n let m = new ListChangeSpendRequestHistoryRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n if (proto.filterOptions) {\n m.filterOptions = ListChangeSpendRequestHistoryRequestListChangeSpendRequestsHistoryFilterOptions.fromProto(proto.filterOptions);\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.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.filterOptions !== 'undefined' && this.filterOptions !== null) {\n toReturn['filterOptions'] = 'toApiJson' in this.filterOptions ? this.filterOptions.toApiJson() : this.filterOptions;\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 ListChangeSpendRequestHistoryResponse {\n static fromProto(proto) {\n let m = new ListChangeSpendRequestHistoryResponse();\n m = Object.assign(m, proto);\n if (proto.changeSpendRequestEvents) {\n m.changeSpendRequestEvents = proto.changeSpendRequestEvents.map(ListChangeSpendRequestHistoryResponseChangeSpendRequestEvents.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.nextCursor !== 'undefined') {\n toReturn['nextCursor'] = this.nextCursor;\n }\n if (typeof this.hasMore !== 'undefined') {\n toReturn['hasMore'] = this.hasMore;\n }\n if (typeof this.changeSpendRequestEvents !== 'undefined' && this.changeSpendRequestEvents !== null) {\n toReturn['changeSpendRequestEvents'] = 'toApiJson' in this.changeSpendRequestEvents ? this.changeSpendRequestEvents.toApiJson() : this.changeSpendRequestEvents;\n }\n return toReturn;\n }\n}\nclass ListChangeSpendRequestsRequestListChangeSpendRequestsFilterOptions {\n static fromProto(proto) {\n let m = new ListChangeSpendRequestsRequestListChangeSpendRequestsFilterOptions();\n m = Object.assign(m, proto);\n if (proto.statuses) {\n m.statuses = proto.statuses.map(v => enumStringToValue$3(ChangeSpendRequestStatus, 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.itemIds !== 'undefined') {\n toReturn['itemIds'] = this.itemIds;\n }\n if (typeof this.businessIds !== 'undefined') {\n toReturn['businessIds'] = this.businessIds;\n }\n if (typeof this.statuses !== 'undefined') {\n toReturn['statuses'] = this.statuses;\n }\n return toReturn;\n }\n}\nclass ListChangeSpendRequestHistoryRequestListChangeSpendRequestsHistoryFilterOptions {\n static fromProto(proto) {\n let m = new ListChangeSpendRequestHistoryRequestListChangeSpendRequestsHistoryFilterOptions();\n m = Object.assign(m, proto);\n if (proto.statuses) {\n m.statuses = proto.statuses.map(v => enumStringToValue$3(ChangeSpendRequestStatus, 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.itemIds !== 'undefined') {\n toReturn['itemIds'] = this.itemIds;\n }\n if (typeof this.businessIds !== 'undefined') {\n toReturn['businessIds'] = this.businessIds;\n }\n if (typeof this.changeRequestIds !== 'undefined') {\n toReturn['changeRequestIds'] = this.changeRequestIds;\n }\n if (typeof this.statuses !== 'undefined') {\n toReturn['statuses'] = this.statuses;\n }\n return toReturn;\n }\n}\nclass ListChangeSpendRequestsRequest {\n static fromProto(proto) {\n let m = new ListChangeSpendRequestsRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n if (proto.filterOptions) {\n m.filterOptions = ListChangeSpendRequestsRequestListChangeSpendRequestsFilterOptions.fromProto(proto.filterOptions);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.filterOptions !== 'undefined' && this.filterOptions !== null) {\n toReturn['filterOptions'] = 'toApiJson' in this.filterOptions ? this.filterOptions.toApiJson() : this.filterOptions;\n }\n return toReturn;\n }\n}\nclass ListChangeSpendRequestsResponse {\n static fromProto(proto) {\n let m = new ListChangeSpendRequestsResponse();\n m = Object.assign(m, proto);\n if (proto.changeSpendRequests) {\n m.changeSpendRequests = proto.changeSpendRequests.map(ChangeSpendRequest.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.changeSpendRequests !== 'undefined' && this.changeSpendRequests !== null) {\n toReturn['changeSpendRequests'] = 'toApiJson' in this.changeSpendRequests ? this.changeSpendRequests.toApiJson() : this.changeSpendRequests;\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 return toReturn;\n }\n}\nclass ListOrderItemsForBusinessRequest {\n static fromProto(proto) {\n let m = new ListOrderItemsForBusinessRequest();\n m = Object.assign(m, proto);\n if (proto.filterByStatuses) {\n m.filterByStatuses = proto.filterByStatuses.map(v => enumStringToValue$3(OrderItemStatus, v));\n }\n if (proto.fieldMask) {\n m.fieldMask = FieldMask.fromProto(proto.fieldMask);\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.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.filterByStatuses !== 'undefined') {\n toReturn['filterByStatuses'] = this.filterByStatuses;\n }\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {\n toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? this.fieldMask.toApiJson() : this.fieldMask;\n }\n if (typeof this.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 ListOrderItemsForOrderRequest {\n static fromProto(proto) {\n let m = new ListOrderItemsForOrderRequest();\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.orderId !== 'undefined') {\n toReturn['orderId'] = this.orderId;\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 ListOrderItemsResponse {\n static fromProto(proto) {\n let m = new ListOrderItemsResponse();\n m = Object.assign(m, proto);\n if (proto.orderItems) {\n m.orderItems = proto.orderItems.map(OrderItem.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.orderItems !== 'undefined' && this.orderItems !== null) {\n toReturn['orderItems'] = 'toApiJson' in this.orderItems ? this.orderItems.toApiJson() : this.orderItems;\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 return toReturn;\n }\n}\nclass ListScheduledActivationsForBusinessRequest {\n static fromProto(proto) {\n let m = new ListScheduledActivationsForBusinessRequest();\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.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\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 ListScheduledActivationsForBusinessResponse {\n static fromProto(proto) {\n let m = new ListScheduledActivationsForBusinessResponse();\n m = Object.assign(m, proto);\n if (proto.scheduledActivations) {\n m.scheduledActivations = proto.scheduledActivations.map(ScheduledProvisioningTask.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.scheduledActivations !== 'undefined' && this.scheduledActivations !== null) {\n toReturn['scheduledActivations'] = 'toApiJson' in this.scheduledActivations ? this.scheduledActivations.toApiJson() : this.scheduledActivations;\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 return toReturn;\n }\n}\nclass OrderItemParameters {\n static fromProto(proto) {\n let m = new OrderItemParameters();\n m = Object.assign(m, proto);\n if (proto.productActivationInformation) {\n m.productActivationInformation = ProductActivationInformation.fromProto(proto.productActivationInformation);\n }\n if (proto.editionChangeInformation) {\n m.editionChangeInformation = EditionChangeInformation.fromProto(proto.editionChangeInformation);\n }\n if (proto.customPrice) {\n m.customPrice = parseInt(proto.customPrice, 10);\n }\n if (proto.retailAmount) {\n m.retailAmount = parseInt(proto.retailAmount, 10);\n }\n if (proto.retailFrequency) {\n m.retailFrequency = enumStringToValue$3(Frequency, proto.retailFrequency);\n }\n if (proto.consumer) {\n m.consumer = enumStringToValue$3(Consumer, proto.consumer);\n }\n if (proto.scheduledDeactivationDate) {\n m.scheduledDeactivationDate = new Date(proto.scheduledDeactivationDate);\n }\n if (proto.scheduledActivationDate) {\n m.scheduledActivationDate = new Date(proto.scheduledActivationDate);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n if (typeof this.orderFormSubmissionId !== 'undefined') {\n toReturn['orderFormSubmissionId'] = this.orderFormSubmissionId;\n }\n if (typeof this.editionId !== 'undefined') {\n toReturn['editionId'] = this.editionId;\n }\n if (typeof this.isTrial !== 'undefined') {\n toReturn['isTrial'] = this.isTrial;\n }\n if (typeof this.productActivationInformation !== 'undefined' && this.productActivationInformation !== null) {\n toReturn['productActivationInformation'] = 'toApiJson' in this.productActivationInformation ? this.productActivationInformation.toApiJson() : this.productActivationInformation;\n }\n if (typeof this.editionChangeInformation !== 'undefined' && this.editionChangeInformation !== null) {\n toReturn['editionChangeInformation'] = 'toApiJson' in this.editionChangeInformation ? this.editionChangeInformation.toApiJson() : this.editionChangeInformation;\n }\n if (typeof this.packageId !== 'undefined') {\n toReturn['packageId'] = this.packageId;\n }\n if (typeof this.customPrice !== 'undefined') {\n toReturn['customPrice'] = this.customPrice;\n }\n if (typeof this.packageInstanceId !== 'undefined') {\n toReturn['packageInstanceId'] = this.packageInstanceId;\n }\n if (typeof this.retailAmount !== 'undefined') {\n toReturn['retailAmount'] = this.retailAmount;\n }\n if (typeof this.retailFrequency !== 'undefined') {\n toReturn['retailFrequency'] = this.retailFrequency;\n }\n if (typeof this.subscriptionId !== 'undefined') {\n toReturn['subscriptionId'] = this.subscriptionId;\n }\n if (typeof this.consumer !== 'undefined') {\n toReturn['consumer'] = this.consumer;\n }\n if (typeof this.scheduledDeactivationDate !== 'undefined' && this.scheduledDeactivationDate !== null) {\n toReturn['scheduledDeactivationDate'] = 'toApiJson' in this.scheduledDeactivationDate ? this.scheduledDeactivationDate.toApiJson() : this.scheduledDeactivationDate;\n }\n if (typeof this.scheduledActivationDate !== 'undefined' && this.scheduledActivationDate !== null) {\n toReturn['scheduledActivationDate'] = 'toApiJson' in this.scheduledActivationDate ? this.scheduledActivationDate.toApiJson() : this.scheduledActivationDate;\n }\n return toReturn;\n }\n}\nclass RecordOrderFormSubmissionAndActivateOrderItemRequest {\n static fromProto(proto) {\n let m = new RecordOrderFormSubmissionAndActivateOrderItemRequest();\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.orderItemId !== 'undefined') {\n toReturn['orderItemId'] = this.orderItemId;\n }\n if (typeof this.orderFormSubmissionId !== 'undefined') {\n toReturn['orderFormSubmissionId'] = this.orderFormSubmissionId;\n }\n return toReturn;\n }\n}\nclass ResolveChangeSpendRequestRequest {\n static fromProto(proto) {\n let m = new ResolveChangeSpendRequestRequest();\n m = Object.assign(m, proto);\n if (proto.status) {\n m.status = enumStringToValue$3(ChangeSpendRequestStatus, proto.status);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.changeRequestId !== 'undefined') {\n toReturn['changeRequestId'] = this.changeRequestId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n if (typeof this.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\n }\n if (typeof this.statusUpdateNote !== 'undefined') {\n toReturn['statusUpdateNote'] = this.statusUpdateNote;\n }\n return toReturn;\n }\n}\nclass ResolvePendingActivationRequest {\n static fromProto(proto) {\n let m = new ResolvePendingActivationRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.productId !== 'undefined') {\n toReturn['productId'] = this.productId;\n }\n if (typeof this.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n if (typeof this.approved !== 'undefined') {\n toReturn['approved'] = this.approved;\n }\n if (typeof this.rejectedReason !== 'undefined') {\n toReturn['rejectedReason'] = this.rejectedReason;\n }\n if (typeof this.accountId !== 'undefined') {\n toReturn['accountId'] = this.accountId;\n }\n if (typeof this.activationDescriptor !== 'undefined') {\n toReturn['activationDescriptor'] = this.activationDescriptor;\n }\n if (typeof this.force !== 'undefined') {\n toReturn['force'] = this.force;\n }\n return toReturn;\n }\n}\nclass ScheduleDeactivationRequest {\n static fromProto(proto) {\n let m = new ScheduleDeactivationRequest();\n m = Object.assign(m, proto);\n if (proto.scheduledFor) {\n m.scheduledFor = new Date(proto.scheduledFor);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n if (typeof this.scheduledFor !== 'undefined' && this.scheduledFor !== null) {\n toReturn['scheduledFor'] = 'toApiJson' in this.scheduledFor ? this.scheduledFor.toApiJson() : this.scheduledFor;\n }\n return toReturn;\n }\n}\nclass ScheduledProvisioningTask {\n static fromProto(proto) {\n let m = new ScheduledProvisioningTask();\n m = Object.assign(m, proto);\n if (proto.scheduledFor) {\n m.scheduledFor = new Date(proto.scheduledFor);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.itemId !== 'undefined') {\n toReturn['itemId'] = this.itemId;\n }\n if (typeof this.scheduledProvisioningTaskStatus !== 'undefined') {\n toReturn['scheduledProvisioningTaskStatus'] = this.scheduledProvisioningTaskStatus;\n }\n if (typeof this.scheduledFor !== 'undefined' && this.scheduledFor !== null) {\n toReturn['scheduledFor'] = 'toApiJson' in this.scheduledFor ? this.scheduledFor.toApiJson() : this.scheduledFor;\n }\n if (typeof this.editionId !== 'undefined') {\n toReturn['editionId'] = this.editionId;\n }\n return toReturn;\n }\n}\nclass UnscheduleActivationRequest {\n static fromProto(proto) {\n let m = new UnscheduleActivationRequest();\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.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\n }\n return toReturn;\n }\n}\nclass UnscheduleDeactivationRequest {\n static fromProto(proto) {\n let m = new UnscheduleDeactivationRequest();\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.activationId !== 'undefined') {\n toReturn['activationId'] = this.activationId;\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 FulfillmentFormConfig {\n static fromProto(proto) {\n let m = new FulfillmentFormConfig();\n m = Object.assign(m, proto);\n if (proto.orderForm) {\n m.orderForm = proto.orderForm.map(FulfillmentFormField.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.orderForm !== 'undefined' && this.orderForm !== null) {\n toReturn['orderForm'] = 'toApiJson' in this.orderForm ? this.orderForm.toApiJson() : this.orderForm;\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.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 FulfillmentFormField {\n static fromProto(proto) {\n let m = new FulfillmentFormField();\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(FulfillmentFormFieldOption.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.description !== 'undefined') {\n toReturn['description'] = this.description;\n }\n if (typeof this.required !== 'undefined') {\n toReturn['required'] = this.required;\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}\nclass FulfillmentFormFieldOption {\n static fromProto(proto) {\n let m = new FulfillmentFormFieldOption();\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}\nfunction enumStringToValue$1(enumRef, value) {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\nclass CustomFields {\n static fromProto(proto) {\n let m = new CustomFields();\n m = Object.assign(m, proto);\n if (proto.fields) {\n m.fields = proto.fields.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.fields !== 'undefined' && this.fields !== null) {\n toReturn['fields'] = 'toApiJson' in this.fields ? this.fields.toApiJson() : this.fields;\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$1(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 FormAnswers {\n static fromProto(proto) {\n let m = new FormAnswers();\n m = Object.assign(m, proto);\n if (proto.customFields) {\n m.customFields = proto.customFields.map(CustomFields.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.formId !== 'undefined') {\n toReturn['formId'] = this.formId;\n }\n if (typeof this.customFields !== 'undefined' && this.customFields !== null) {\n toReturn['customFields'] = 'toApiJson' in this.customFields ? this.customFields.toApiJson() : this.customFields;\n }\n return toReturn;\n }\n}\nclass FulfillmentFormSubmission {\n static fromProto(proto) {\n let m = new FulfillmentFormSubmission();\n m = Object.assign(m, proto);\n if (proto.quantity) {\n m.quantity = parseInt(proto.quantity, 10);\n }\n if (proto.formAnswers) {\n m.formAnswers = proto.formAnswers.map(FormAnswers.fromProto);\n }\n if (proto.formConfig) {\n m.formConfig = FulfillmentFormConfig.fromProto(proto.formConfig);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.updated) {\n m.updated = new Date(proto.updated);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fulfillmentOrderId !== 'undefined') {\n toReturn['fulfillmentOrderId'] = this.fulfillmentOrderId;\n }\n if (typeof this.salesOrderId !== 'undefined') {\n toReturn['salesOrderId'] = this.salesOrderId;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n if (typeof this.version !== 'undefined') {\n toReturn['version'] = this.version;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.quantity !== 'undefined') {\n toReturn['quantity'] = this.quantity;\n }\n if (typeof this.formAnswers !== 'undefined' && this.formAnswers !== null) {\n toReturn['formAnswers'] = 'toApiJson' in this.formAnswers ? this.formAnswers.toApiJson() : this.formAnswers;\n }\n if (typeof this.formConfig !== 'undefined' && this.formConfig !== null) {\n toReturn['formConfig'] = 'toApiJson' in this.formConfig ? this.formConfig.toApiJson() : this.formConfig;\n }\n if (typeof this.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n if (typeof this.updated !== 'undefined' && this.updated !== null) {\n toReturn['updated'] = 'toApiJson' in this.updated ? this.updated.toApiJson() : this.updated;\n }\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {\n toReturn['deleted'] = 'toApiJson' in this.deleted ? this.deleted.toApiJson() : this.deleted;\n }\n return toReturn;\n }\n}\nclass GetLatestFulfillmentFormSubmissionRequest {\n static fromProto(proto) {\n let m = new GetLatestFulfillmentFormSubmissionRequest();\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.salesOrderId !== 'undefined') {\n toReturn['salesOrderId'] = this.salesOrderId;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass GetLatestFulfillmentFormSubmissionResponse {\n static fromProto(proto) {\n let m = new GetLatestFulfillmentFormSubmissionResponse();\n m = Object.assign(m, proto);\n if (proto.fulfillmentFormSubmission) {\n m.fulfillmentFormSubmission = FulfillmentFormSubmission.fromProto(proto.fulfillmentFormSubmission);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fulfillmentFormSubmission !== 'undefined' && this.fulfillmentFormSubmission !== null) {\n toReturn['fulfillmentFormSubmission'] = 'toApiJson' in this.fulfillmentFormSubmission ? this.fulfillmentFormSubmission.toApiJson() : this.fulfillmentFormSubmission;\n }\n return toReturn;\n }\n}\nclass UpsertFulfillmentFormSubmissionRequest {\n static fromProto(proto) {\n let m = new UpsertFulfillmentFormSubmissionRequest();\n m = Object.assign(m, proto);\n if (proto.formAnswers) {\n m.formAnswers = proto.formAnswers.map(FormAnswers.fromProto);\n }\n if (proto.quantity) {\n m.quantity = parseInt(proto.quantity, 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.salesOrderId !== 'undefined') {\n toReturn['salesOrderId'] = this.salesOrderId;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.formAnswers !== 'undefined' && this.formAnswers !== null) {\n toReturn['formAnswers'] = 'toApiJson' in this.formAnswers ? this.formAnswers.toApiJson() : this.formAnswers;\n }\n if (typeof this.lastViewedTimestamp !== 'undefined') {\n toReturn['lastViewedTimestamp'] = this.lastViewedTimestamp;\n }\n if (typeof this.quantity !== 'undefined') {\n toReturn['quantity'] = this.quantity;\n }\n return toReturn;\n }\n}\nclass UpsertFulfillmentFormSubmissionResponse {\n static fromProto(proto) {\n let m = new UpsertFulfillmentFormSubmissionResponse();\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.version !== 'undefined') {\n toReturn['version'] = this.version;\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 PendingActivationInfoActivationStatusesEntry {\n static fromProto(proto) {\n let m = new PendingActivationInfoActivationStatusesEntry();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = enumStringToValue(PendingActivationStatus, 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') {\n toReturn['value'] = this.value;\n }\n return toReturn;\n }\n}\nclass AppInfo {\n static fromProto(proto) {\n let m = new AppInfo();\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.appName !== 'undefined') {\n toReturn['appName'] = this.appName;\n }\n return toReturn;\n }\n}\nclass BusinessInfo {\n static fromProto(proto) {\n let m = new BusinessInfo();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n if (typeof this.address !== 'undefined') {\n toReturn['address'] = this.address;\n }\n if (typeof this.city !== 'undefined') {\n toReturn['city'] = this.city;\n }\n if (typeof this.state !== 'undefined') {\n toReturn['state'] = this.state;\n }\n if (typeof this.country !== 'undefined') {\n toReturn['country'] = this.country;\n }\n if (typeof this.marketId !== 'undefined') {\n toReturn['marketId'] = this.marketId;\n }\n if (typeof this.partnerLogoUrl !== 'undefined') {\n toReturn['partnerLogoUrl'] = this.partnerLogoUrl;\n }\n if (typeof this.marketName !== 'undefined') {\n toReturn['marketName'] = this.marketName;\n }\n return toReturn;\n }\n}\nclass SalesInfoCost {\n static fromProto(proto) {\n let m = new SalesInfoCost();\n m = Object.assign(m, proto);\n if (proto.price) {\n m.price = parseInt(proto.price, 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.billingFrequency !== 'undefined') {\n toReturn['billingFrequency'] = this.billingFrequency;\n }\n if (typeof this.currency !== 'undefined') {\n toReturn['currency'] = this.currency;\n }\n if (typeof this.price !== 'undefined') {\n toReturn['price'] = this.price;\n }\n return toReturn;\n }\n}\nclass CreateFulfillmentOrderRequest {\n static fromProto(proto) {\n let m = new CreateFulfillmentOrderRequest();\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.salesOrderId !== 'undefined') {\n toReturn['salesOrderId'] = this.salesOrderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.resellerPartnerId !== 'undefined') {\n toReturn['resellerPartnerId'] = this.resellerPartnerId;\n }\n if (typeof this.vendorPartnerId !== 'undefined') {\n toReturn['vendorPartnerId'] = this.vendorPartnerId;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\n }\n return toReturn;\n }\n}\nclass CreateFulfillmentOrderResponse {\n static fromProto(proto) {\n let m = new CreateFulfillmentOrderResponse();\n m = Object.assign(m, proto);\n if (proto.fulfillmentOrder) {\n m.fulfillmentOrder = FulfillmentOrder.fromProto(proto.fulfillmentOrder);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fulfillmentOrder !== 'undefined' && this.fulfillmentOrder !== null) {\n toReturn['fulfillmentOrder'] = 'toApiJson' in this.fulfillmentOrder ? this.fulfillmentOrder.toApiJson() : this.fulfillmentOrder;\n }\n return toReturn;\n }\n}\nclass DeleteFulfillmentOrderRequest {\n static fromProto(proto) {\n let m = new DeleteFulfillmentOrderRequest();\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.fulfillmentOrderId !== 'undefined') {\n toReturn['fulfillmentOrderId'] = this.fulfillmentOrderId;\n }\n return toReturn;\n }\n}\nclass FulfillmentFormInfo {\n static fromProto(proto) {\n let m = new FulfillmentFormInfo();\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.hasForm !== 'undefined') {\n toReturn['hasForm'] = this.hasForm;\n }\n return toReturn;\n }\n}\nclass FulfillmentOrder {\n static fromProto(proto) {\n let m = new FulfillmentOrder();\n m = Object.assign(m, proto);\n if (proto.status) {\n m.status = enumStringToValue(FulfillmentOrderStatus, proto.status);\n }\n if (proto.created) {\n m.created = new Date(proto.created);\n }\n if (proto.updated) {\n m.updated = new Date(proto.updated);\n }\n if (proto.deleted) {\n m.deleted = new Date(proto.deleted);\n }\n if (proto.businessInfo) {\n m.businessInfo = BusinessInfo.fromProto(proto.businessInfo);\n }\n if (proto.resellerPartnerInfo) {\n m.resellerPartnerInfo = ResellerPartnerInfo.fromProto(proto.resellerPartnerInfo);\n }\n if (proto.appInfo) {\n m.appInfo = AppInfo.fromProto(proto.appInfo);\n }\n if (proto.salesInfo) {\n m.salesInfo = SalesInfo.fromProto(proto.salesInfo);\n }\n if (proto.pendingActivationInfo) {\n m.pendingActivationInfo = PendingActivationInfo.fromProto(proto.pendingActivationInfo);\n }\n if (proto.fulfillmentFormInfo) {\n m.fulfillmentFormInfo = FulfillmentFormInfo.fromProto(proto.fulfillmentFormInfo);\n }\n if (proto.associatedProjects) {\n m.associatedProjects = proto.associatedProjects.map(FulfillmentOrderProjects.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.fulfillmentOrderId !== 'undefined') {\n toReturn['fulfillmentOrderId'] = this.fulfillmentOrderId;\n }\n if (typeof this.salesOrderId !== 'undefined') {\n toReturn['salesOrderId'] = this.salesOrderId;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.resellerPartnerId !== 'undefined') {\n toReturn['resellerPartnerId'] = this.resellerPartnerId;\n }\n if (typeof this.vendorPartnerId !== 'undefined') {\n toReturn['vendorPartnerId'] = this.vendorPartnerId;\n }\n if (typeof this.appId !== 'undefined') {\n toReturn['appId'] = this.appId;\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.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.businessInfo !== 'undefined' && this.businessInfo !== null) {\n toReturn['businessInfo'] = 'toApiJson' in this.businessInfo ? this.businessInfo.toApiJson() : this.businessInfo;\n }\n if (typeof this.resellerPartnerInfo !== 'undefined' && this.resellerPartnerInfo !== null) {\n toReturn['resellerPartnerInfo'] = 'toApiJson' in this.resellerPartnerInfo ? this.resellerPartnerInfo.toApiJson() : this.resellerPartnerInfo;\n }\n if (typeof this.appInfo !== 'undefined' && this.appInfo !== null) {\n toReturn['appInfo'] = 'toApiJson' in this.appInfo ? this.appInfo.toApiJson() : this.appInfo;\n }\n if (typeof this.salesInfo !== 'undefined' && this.salesInfo !== null) {\n toReturn['salesInfo'] = 'toApiJson' in this.salesInfo ? this.salesInfo.toApiJson() : this.salesInfo;\n }\n if (typeof this.pendingActivationInfo !== 'undefined' && this.pendingActivationInfo !== null) {\n toReturn['pendingActivationInfo'] = 'toApiJson' in this.pendingActivationInfo ? this.pendingActivationInfo.toApiJson() : this.pendingActivationInfo;\n }\n if (typeof this.pendingActivationIds !== 'undefined') {\n toReturn['pendingActivationIds'] = this.pendingActivationIds;\n }\n if (typeof this.fulfillmentFormInfo !== 'undefined' && this.fulfillmentFormInfo !== null) {\n toReturn['fulfillmentFormInfo'] = 'toApiJson' in this.fulfillmentFormInfo ? this.fulfillmentFormInfo.toApiJson() : this.fulfillmentFormInfo;\n }\n if (typeof this.associatedProjects !== 'undefined' && this.associatedProjects !== null) {\n toReturn['associatedProjects'] = 'toApiJson' in this.associatedProjects ? this.associatedProjects.toApiJson() : this.associatedProjects;\n }\n return toReturn;\n }\n}\nclass FulfillmentOrderProjectionFilter {\n static fromProto(proto) {\n let m = new FulfillmentOrderProjectionFilter();\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.includeBusinessInfo !== 'undefined') {\n toReturn['includeBusinessInfo'] = this.includeBusinessInfo;\n }\n if (typeof this.includeResellerPartnerInfo !== 'undefined') {\n toReturn['includeResellerPartnerInfo'] = this.includeResellerPartnerInfo;\n }\n if (typeof this.includeAppInfo !== 'undefined') {\n toReturn['includeAppInfo'] = this.includeAppInfo;\n }\n if (typeof this.includeSalesInfo !== 'undefined') {\n toReturn['includeSalesInfo'] = this.includeSalesInfo;\n }\n if (typeof this.includePendingActivationInfo !== 'undefined') {\n toReturn['includePendingActivationInfo'] = this.includePendingActivationInfo;\n }\n if (typeof this.includeFulfillmentFormInfo !== 'undefined') {\n toReturn['includeFulfillmentFormInfo'] = this.includeFulfillmentFormInfo;\n }\n if (typeof this.includeProjects !== 'undefined') {\n toReturn['includeProjects'] = this.includeProjects;\n }\n return toReturn;\n }\n}\nclass FulfillmentOrderProjects {\n static fromProto(proto) {\n let m = new FulfillmentOrderProjects();\n m = Object.assign(m, proto);\n if (proto.projectDueDate) {\n m.projectDueDate = new Date(proto.projectDueDate);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\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 if (typeof this.projectStatus !== 'undefined') {\n toReturn['projectStatus'] = this.projectStatus;\n }\n if (typeof this.projectAssigneeName !== 'undefined') {\n toReturn['projectAssigneeName'] = this.projectAssigneeName;\n }\n if (typeof this.projectDueDate !== 'undefined' && this.projectDueDate !== null) {\n toReturn['projectDueDate'] = 'toApiJson' in this.projectDueDate ? this.projectDueDate.toApiJson() : this.projectDueDate;\n }\n return toReturn;\n }\n}\nclass FulfillmentOrders {\n static fromProto(proto) {\n let m = new FulfillmentOrders();\n m = Object.assign(m, proto);\n if (proto.fulfillmentOrders) {\n m.fulfillmentOrders = proto.fulfillmentOrders.map(FulfillmentOrder.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.fulfillmentOrders !== 'undefined' && this.fulfillmentOrders !== null) {\n toReturn['fulfillmentOrders'] = 'toApiJson' in this.fulfillmentOrders ? this.fulfillmentOrders.toApiJson() : this.fulfillmentOrders;\n }\n return toReturn;\n }\n}\nclass GetMultiBySalesOrderIdsResponseFulfillmentOrdersMapEntry {\n static fromProto(proto) {\n let m = new GetMultiBySalesOrderIdsResponseFulfillmentOrdersMapEntry();\n m = Object.assign(m, proto);\n if (proto.value) {\n m.value = FulfillmentOrders.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 GetFulfillmentOrderRequest {\n static fromProto(proto) {\n let m = new GetFulfillmentOrderRequest();\n m = Object.assign(m, proto);\n if (proto.projectionFilter) {\n m.projectionFilter = FulfillmentOrderProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fulfillmentOrderId !== 'undefined') {\n toReturn['fulfillmentOrderId'] = this.fulfillmentOrderId;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n return toReturn;\n }\n}\nclass GetFulfillmentOrderResponse {\n static fromProto(proto) {\n let m = new GetFulfillmentOrderResponse();\n m = Object.assign(m, proto);\n if (proto.fulfillmentOrder) {\n m.fulfillmentOrder = FulfillmentOrder.fromProto(proto.fulfillmentOrder);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.fulfillmentOrder !== 'undefined' && this.fulfillmentOrder !== null) {\n toReturn['fulfillmentOrder'] = 'toApiJson' in this.fulfillmentOrder ? this.fulfillmentOrder.toApiJson() : this.fulfillmentOrder;\n }\n return toReturn;\n }\n}\nclass GetFulfillmentOrdersForSalesOrderRequest {\n static fromProto(proto) {\n let m = new GetFulfillmentOrdersForSalesOrderRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n if (proto.projectionFilter) {\n m.projectionFilter = FulfillmentOrderProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.salesOrderId !== 'undefined') {\n toReturn['salesOrderId'] = this.salesOrderId;\n }\n if (typeof this.cursor !== 'undefined') {\n toReturn['cursor'] = this.cursor;\n }\n if (typeof this.pageSize !== 'undefined') {\n toReturn['pageSize'] = this.pageSize;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n return toReturn;\n }\n}\nclass GetFulfillmentOrdersForSalesOrderResponse {\n static fromProto(proto) {\n let m = new GetFulfillmentOrdersForSalesOrderResponse();\n m = Object.assign(m, proto);\n if (proto.fulfillmentOrders) {\n m.fulfillmentOrders = proto.fulfillmentOrders.map(FulfillmentOrder.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.fulfillmentOrders !== 'undefined' && this.fulfillmentOrders !== null) {\n toReturn['fulfillmentOrders'] = 'toApiJson' in this.fulfillmentOrders ? this.fulfillmentOrders.toApiJson() : this.fulfillmentOrders;\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 GetMultiBySalesOrderIdsRequest {\n static fromProto(proto) {\n let m = new GetMultiBySalesOrderIdsRequest();\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.salesOrderIds !== 'undefined') {\n toReturn['salesOrderIds'] = this.salesOrderIds;\n }\n return toReturn;\n }\n}\nclass GetMultiBySalesOrderIdsResponse {\n static fromProto(proto) {\n let m = new GetMultiBySalesOrderIdsResponse();\n m = Object.assign(m, proto);\n if (proto.fulfillmentOrdersMap) {\n m.fulfillmentOrdersMap = Object.keys(proto.fulfillmentOrdersMap).reduce((obj, k) => {\n obj[k] = FulfillmentOrders.fromProto(proto.fulfillmentOrdersMap[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.fulfillmentOrdersMap !== 'undefined' && this.fulfillmentOrdersMap !== null) {\n toReturn['fulfillmentOrdersMap'] = 'toApiJson' in this.fulfillmentOrdersMap ? this.fulfillmentOrdersMap.toApiJson() : this.fulfillmentOrdersMap;\n }\n return toReturn;\n }\n}\nclass SalesInfoOrderFormSubmission {\n static fromProto(proto) {\n let m = new SalesInfoOrderFormSubmission();\n m = Object.assign(m, proto);\n if (proto.commonFields) {\n m.commonFields = proto.commonFields.map(Field.fromProto);\n }\n if (proto.customFields) {\n m.customFields = proto.customFields.map(Field.fromProto);\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.commonFields !== 'undefined' && this.commonFields !== null) {\n toReturn['commonFields'] = 'toApiJson' in this.commonFields ? this.commonFields.toApiJson() : this.commonFields;\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.created !== 'undefined' && this.created !== null) {\n toReturn['created'] = 'toApiJson' in this.created ? this.created.toApiJson() : this.created;\n }\n return toReturn;\n }\n}\nclass PendingActivationInfo {\n static fromProto(proto) {\n let m = new PendingActivationInfo();\n m = Object.assign(m, proto);\n if (proto.activationStatuses) {\n m.activationStatuses = Object.keys(proto.activationStatuses).reduce((obj, k) => {\n obj[k] = enumStringToValue(PendingActivationStatus, proto.activationStatuses[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.activationStatuses !== 'undefined' && this.activationStatuses !== null) {\n toReturn['activationStatuses'] = 'toApiJson' in this.activationStatuses ? this.activationStatuses.toApiJson() : this.activationStatuses;\n }\n return toReturn;\n }\n}\nclass ResellerPartnerInfo {\n static fromProto(proto) {\n let m = new ResellerPartnerInfo();\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.name !== 'undefined') {\n toReturn['name'] = this.name;\n }\n return toReturn;\n }\n}\nclass SalesInfo {\n static fromProto(proto) {\n let m = new SalesInfo();\n m = Object.assign(m, proto);\n if (proto.cost) {\n m.cost = SalesInfoCost.fromProto(proto.cost);\n }\n if (proto.orderForm) {\n m.orderForm = SalesInfoOrderFormSubmission.fromProto(proto.orderForm);\n }\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\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.submittedBy !== 'undefined') {\n toReturn['submittedBy'] = this.submittedBy;\n }\n if (typeof this.orderForm !== 'undefined' && this.orderForm !== null) {\n toReturn['orderForm'] = 'toApiJson' in this.orderForm ? this.orderForm.toApiJson() : this.orderForm;\n }\n return toReturn;\n }\n}\nclass SearchFulfillmentOrderRequest {\n static fromProto(proto) {\n let m = new SearchFulfillmentOrderRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {\n m.pageSize = parseInt(proto.pageSize, 10);\n }\n if (proto.statuses) {\n m.statuses = proto.statuses.map(v => enumStringToValue(FulfillmentOrderStatus, v));\n }\n if (proto.timeOptions) {\n m.timeOptions = SearchFulfillmentOrderTimeOptions.fromProto(proto.timeOptions);\n }\n if (proto.sortDirection) {\n m.sortDirection = enumStringToValue(SortDirection, proto.sortDirection);\n }\n if (proto.projectionFilter) {\n m.projectionFilter = FulfillmentOrderProjectionFilter.fromProto(proto.projectionFilter);\n }\n return m;\n }\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 if (typeof this.salesOrderIds !== 'undefined') {\n toReturn['salesOrderIds'] = this.salesOrderIds;\n }\n if (typeof this.businessIds !== 'undefined') {\n toReturn['businessIds'] = this.businessIds;\n }\n if (typeof this.resellerPartnerIds !== 'undefined') {\n toReturn['resellerPartnerIds'] = this.resellerPartnerIds;\n }\n if (typeof this.vendorPartnerIds !== 'undefined') {\n toReturn['vendorPartnerIds'] = this.vendorPartnerIds;\n }\n if (typeof this.appIds !== 'undefined') {\n toReturn['appIds'] = this.appIds;\n }\n if (typeof this.statuses !== 'undefined') {\n toReturn['statuses'] = this.statuses;\n }\n if (typeof this.timeOptions !== 'undefined' && this.timeOptions !== null) {\n toReturn['timeOptions'] = 'toApiJson' in this.timeOptions ? this.timeOptions.toApiJson() : this.timeOptions;\n }\n if (typeof this.sortField !== 'undefined') {\n toReturn['sortField'] = this.sortField;\n }\n if (typeof this.sortDirection !== 'undefined') {\n toReturn['sortDirection'] = this.sortDirection;\n }\n if (typeof this.projectionFilter !== 'undefined' && this.projectionFilter !== null) {\n toReturn['projectionFilter'] = 'toApiJson' in this.projectionFilter ? this.projectionFilter.toApiJson() : this.projectionFilter;\n }\n if (typeof this.activationIds !== 'undefined') {\n toReturn['activationIds'] = this.activationIds;\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 if (typeof this.hasForm !== 'undefined') {\n toReturn['hasForm'] = this.hasForm;\n }\n if (typeof this.fulfillmentOrderIds !== 'undefined') {\n toReturn['fulfillmentOrderIds'] = this.fulfillmentOrderIds;\n }\n return toReturn;\n }\n}\nclass SearchFulfillmentOrderResponse {\n static fromProto(proto) {\n let m = new SearchFulfillmentOrderResponse();\n m = Object.assign(m, proto);\n if (proto.fulfillmentOrders) {\n m.fulfillmentOrders = proto.fulfillmentOrders.map(FulfillmentOrder.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.fulfillmentOrders !== 'undefined' && this.fulfillmentOrders !== null) {\n toReturn['fulfillmentOrders'] = 'toApiJson' in this.fulfillmentOrders ? this.fulfillmentOrders.toApiJson() : this.fulfillmentOrders;\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 SearchFulfillmentOrderTimeOptions {\n static fromProto(proto) {\n let m = new SearchFulfillmentOrderTimeOptions();\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 if (proto.timeField) {\n m.timeField = enumStringToValue(TimeField, proto.timeField);\n }\n return m;\n }\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 if (typeof this.timeField !== 'undefined') {\n toReturn['timeField'] = this.timeField;\n }\n return toReturn;\n }\n}\nclass SendFulfillmentOrderRequest {\n static fromProto(proto) {\n let m = new SendFulfillmentOrderRequest();\n m = Object.assign(m, proto);\n return m;\n }\n constructor(kwargs) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n toApiJson() {\n const toReturn = {};\n if (typeof this.businessId !== 'undefined') {\n toReturn['businessId'] = this.businessId;\n }\n if (typeof this.salesOrderId !== 'undefined') {\n toReturn['salesOrderId'] = this.salesOrderId;\n }\n if (typeof this.userId !== 'undefined') {\n toReturn['userId'] = this.userId;\n }\n if (typeof this.itemNames !== 'undefined') {\n toReturn['itemNames'] = this.itemNames;\n }\n if (typeof this.message !== 'undefined') {\n toReturn['message'] = this.message;\n }\n return toReturn;\n }\n}\nclass UpdateFulfillmentOrderRequest {\n static fromProto(proto) {\n let m = new UpdateFulfillmentOrderRequest();\n m = Object.assign(m, proto);\n if (proto.status) {\n m.status = enumStringToValue(FulfillmentOrderStatus, proto.status);\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.fulfillmentOrderId !== 'undefined') {\n toReturn['fulfillmentOrderId'] = this.fulfillmentOrderId;\n }\n if (typeof this.status !== 'undefined') {\n toReturn['status'] = this.status;\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}\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': 'order-fulfillment-api.vendasta-local.com',\n 'test': '',\n 'demo': 'order-fulfillment-api-demo.apigateway.co',\n 'prod': 'order-fulfillment-api-prod.apigateway.co',\n 'production': 'order-fulfillment-api-prod.apigateway.co'\n};\nlet HostService = /*#__PURE__*/(() => {\n class HostService {\n get host() {\n return hostMap[environment.toLowerCase()];\n }\n get hostWithScheme() {\n return 'https://' + this.host;\n }\n }\n HostService.ɵfac = function HostService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || HostService)();\n };\n HostService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: HostService,\n factory: HostService.ɵfac,\n providedIn: 'root'\n });\n return HostService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nlet OrderFulfillmentApiService = /*#__PURE__*/(() => {\n class OrderFulfillmentApiService {\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 createOrder(r) {\n const request = r.toApiJson ? r : new CreateOrderRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/CreateOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateOrderResponse.fromProto(resp)));\n }\n listOrderItemsForBusiness(r) {\n const request = r.toApiJson ? r : new ListOrderItemsForBusinessRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/ListOrderItemsForBusiness\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListOrderItemsResponse.fromProto(resp)));\n }\n getOrderByIdempotencyKey(r) {\n const request = r.toApiJson ? r : new GetOrderByIdempotencyKeyRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/GetOrderByIdempotencyKey\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetOrderByIdempotencyKeyResponse.fromProto(resp)));\n }\n listOrderItemsForOrder(r) {\n const request = r.toApiJson ? r : new ListOrderItemsForOrderRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/ListOrderItemsForOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListOrderItemsResponse.fromProto(resp)));\n }\n dismissFailedOrderItem(r) {\n const request = r.toApiJson ? r : new DismissFailedOrderItemRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/DismissFailedOrderItem\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n resolvePendingActivation(r) {\n const request = r.toApiJson ? r : new ResolvePendingActivationRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/ResolvePendingActivation\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n cancelEditionChange(r) {\n const request = r.toApiJson ? r : new CancelEditionChangeRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/CancelEditionChange\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n cancelOrderItemWaitingForConsumerInformation(r) {\n const request = r.toApiJson ? r : new CancelOrderItemWaitingForConsumerInformationRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/CancelOrderItemWaitingForConsumerInformation\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n recordOrderFormSubmissionAndActivateOrderItem(r) {\n const request = r.toApiJson ? r : new RecordOrderFormSubmissionAndActivateOrderItemRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/RecordOrderFormSubmissionAndActivateOrderItem\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getMultiActivationErrorsForOrderItems(r) {\n const request = r.toApiJson ? r : new GetMultiActivationErrorsForOrderItemsRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/GetMultiActivationErrorsForOrderItems\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiActivationErrorsForOrderItemsResponse.fromProto(resp)));\n }\n requestSpendAmountChange(r) {\n const request = r.toApiJson ? r : new ChangeSpendRequestRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/RequestSpendAmountChange\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n listChangeSpendRequests(r) {\n const request = r.toApiJson ? r : new ListChangeSpendRequestsRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/ListChangeSpendRequests\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListChangeSpendRequestsResponse.fromProto(resp)));\n }\n resolveChangeSpendRequest(r) {\n const request = r.toApiJson ? r : new ResolveChangeSpendRequestRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/ResolveChangeSpendRequest\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n listChangeSpendRequestHistory(r) {\n const request = r.toApiJson ? r : new ListChangeSpendRequestHistoryRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/ListChangeSpendRequestHistory\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListChangeSpendRequestHistoryResponse.fromProto(resp)));\n }\n getCurrentSpend(r) {\n const request = r.toApiJson ? r : new GetCurrentSpendRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/GetCurrentSpend\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetCurrentSpendResponse.fromProto(resp)));\n }\n scheduleDeactivation(r) {\n const request = r.toApiJson ? r : new ScheduleDeactivationRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/ScheduleDeactivation\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getMultiScheduledDeactivationsForBusiness(r) {\n const request = r.toApiJson ? r : new GetMultiScheduledDeactivationsForBusinessRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/GetMultiScheduledDeactivationsForBusiness\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiScheduledDeactivationsForBusinessResponse.fromProto(resp)));\n }\n listScheduledActivationsForBusiness(r) {\n const request = r.toApiJson ? r : new ListScheduledActivationsForBusinessRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/ListScheduledActivationsForBusiness\", request.toApiJson(), this.apiOptions()).pipe(map(resp => ListScheduledActivationsForBusinessResponse.fromProto(resp)));\n }\n unscheduleDeactivation(r) {\n const request = r.toApiJson ? r : new UnscheduleDeactivationRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/UnscheduleDeactivation\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deactivateImmediately(r) {\n const request = r.toApiJson ? r : new DeactivateImmediatelyRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/DeactivateImmediately\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n getMultiActivationDates(r) {\n const request = r.toApiJson ? r : new GetMultiActivationDatesRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/GetMultiActivationDates\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiActivationDatesResponse.fromProto(resp)));\n }\n unscheduleActivation(r) {\n const request = r.toApiJson ? r : new UnscheduleActivationRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.OrderFulfillmentService/UnscheduleActivation\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n OrderFulfillmentApiService.ɵfac = function OrderFulfillmentApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || OrderFulfillmentApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n OrderFulfillmentApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: OrderFulfillmentApiService,\n factory: OrderFulfillmentApiService.ɵfac,\n providedIn: 'root'\n });\n return OrderFulfillmentApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\nlet OrderFulfillmentService = /*#__PURE__*/(() => {\n class OrderFulfillmentService {\n constructor(_api) {\n this._api = _api;\n }\n createOrder(partnerId, orderParams, orderSources) {\n return this._api.createOrder({\n partnerId,\n orderItems: orderParams,\n orderSource: orderSources\n }).pipe(map(resp => {\n return resp.orderId;\n }));\n }\n listOrderItemsForBusiness(businessId, cursor, pageSize, filterByStatuses, fieldMask) {\n return this._api.listOrderItemsForBusiness({\n businessId,\n filterByStatuses,\n fieldMask,\n cursor,\n pageSize\n });\n }\n getOrderByIdempotencyKey(idempotencyKey) {\n return this._api.getOrderByIdempotencyKey({\n idempotencyKey: idempotencyKey\n }).pipe(map(resp => {\n return resp.order;\n }));\n }\n listOrderItemsForOrder(orderId, cursor, pageSize) {\n return this._api.listOrderItemsForOrder({\n orderId,\n cursor,\n pageSize\n });\n }\n dismissFailedOrderItem(orderId, businessId, itemId, orderItemId) {\n return this._api.dismissFailedOrderItem({\n orderId,\n businessId,\n itemId,\n orderItemId\n });\n }\n cancelEditionChange(orderItemId) {\n return this._api.cancelEditionChange({\n orderItemId\n });\n }\n getMultiActivationErrorsForOrderItems(orderItemIds) {\n return this._api.getMultiActivationErrorsForOrderItems({\n orderItemIds: orderItemIds\n }).pipe(map(resp => {\n return resp.failureDetails;\n }));\n }\n changeSpendRequest(businessId, itemId, activationId, requestedSpendAmount, requesterNote) {\n return this._api.requestSpendAmountChange({\n businessId,\n itemId,\n activationId,\n requestedSpendAmount,\n requesterNote\n });\n }\n listChangeSpendRequests(pageSize, cursor, appIds, businessIds, requestsStatuses) {\n return this._api.listChangeSpendRequests({\n pageSize: pageSize,\n cursor: cursor,\n filterOptions: {\n itemIds: appIds,\n businessIds: businessIds,\n statuses: requestsStatuses\n }\n });\n }\n listChangeSpendRequestHistory(pageSize, cursor, appIds, businessIds, changeRequestIds, requestsStatuses, fieldMasks) {\n return this._api.listChangeSpendRequestHistory({\n pageSize: pageSize,\n cursor: cursor,\n filterOptions: {\n itemIds: appIds,\n businessIds: businessIds,\n changeRequestIds: changeRequestIds,\n statuses: requestsStatuses\n },\n fieldMask: {\n paths: fieldMasks\n }\n });\n }\n resolveChangeSpendRequest(changeRequestId, businessId, appOrAddonId, activationId, status, statusUpdateNote) {\n return this._api.resolveChangeSpendRequest({\n changeRequestId: changeRequestId,\n itemId: appOrAddonId,\n activationId: activationId,\n status: status,\n statusUpdateNote: statusUpdateNote,\n businessId: businessId\n });\n }\n GetCurrentSpend(partnerId, businessId, appOrAddonId, activationId) {\n return this._api.getCurrentSpend({\n partnerId: partnerId,\n businessId: businessId,\n itemId: appOrAddonId,\n activationId: activationId\n });\n }\n ScheduleDeactivation(activationId, businessId, itemId, scheduledFor) {\n return this._api.scheduleDeactivation({\n activationId: activationId,\n businessId: businessId,\n itemId: itemId,\n scheduledFor: scheduledFor\n });\n }\n GetMultiScheduledDeactivationsForBusiness(activationIds, businessId) {\n return this._api.getMultiScheduledDeactivationsForBusiness({\n activationIds: activationIds,\n businessId: businessId\n });\n }\n ListScheduledActivationsForBusiness(businessId, cursor, pageSize) {\n return this._api.listScheduledActivationsForBusiness({\n businessId: businessId,\n cursor: cursor,\n pageSize: pageSize\n });\n }\n UnscheduleDeactivation(activationId) {\n return this._api.unscheduleDeactivation({\n activationId: activationId\n });\n }\n DeactivateImmediately(activationId, businessId, itemId) {\n return this._api.deactivateImmediately({\n activationId: activationId,\n businessId: businessId,\n itemId: itemId\n });\n }\n UnscheduleActivation(activationId) {\n return this._api.unscheduleActivation({\n activationId: activationId\n });\n }\n }\n OrderFulfillmentService.ɵfac = function OrderFulfillmentService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || OrderFulfillmentService)(i0.ɵɵinject(OrderFulfillmentApiService));\n };\n OrderFulfillmentService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: OrderFulfillmentService,\n factory: OrderFulfillmentService.ɵfac,\n providedIn: 'root'\n });\n return OrderFulfillmentService;\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 FulfillmentFormSubmissionApiService = /*#__PURE__*/(() => {\n class FulfillmentFormSubmissionApiService {\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 getLatestFulfillmentFormSubmission(r) {\n const request = r.toApiJson ? r : new GetLatestFulfillmentFormSubmissionRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.FulfillmentFormSubmissionService/GetLatestFulfillmentFormSubmission\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetLatestFulfillmentFormSubmissionResponse.fromProto(resp)));\n }\n upsertFulfillmentFormSubmission(r) {\n const request = r.toApiJson ? r : new UpsertFulfillmentFormSubmissionRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.FulfillmentFormSubmissionService/UpsertFulfillmentFormSubmission\", request.toApiJson(), this.apiOptions()).pipe(map(resp => UpsertFulfillmentFormSubmissionResponse.fromProto(resp)));\n }\n }\n FulfillmentFormSubmissionApiService.ɵfac = function FulfillmentFormSubmissionApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || FulfillmentFormSubmissionApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n FulfillmentFormSubmissionApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: FulfillmentFormSubmissionApiService,\n factory: FulfillmentFormSubmissionApiService.ɵfac,\n providedIn: 'root'\n });\n return FulfillmentFormSubmissionApiService;\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 FulfillmentOrderApiService = /*#__PURE__*/(() => {\n class FulfillmentOrderApiService {\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 createFulfillmentOrder(r) {\n const request = r.toApiJson ? r : new CreateFulfillmentOrderRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.FulfillmentOrderService/CreateFulfillmentOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => CreateFulfillmentOrderResponse.fromProto(resp)));\n }\n getFulfillmentOrder(r) {\n const request = r.toApiJson ? r : new GetFulfillmentOrderRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.FulfillmentOrderService/GetFulfillmentOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetFulfillmentOrderResponse.fromProto(resp)));\n }\n updateFulfillmentOrder(r) {\n const request = r.toApiJson ? r : new UpdateFulfillmentOrderRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.FulfillmentOrderService/UpdateFulfillmentOrder\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n deleteFulfillmentOrder(r) {\n const request = r.toApiJson ? r : new DeleteFulfillmentOrderRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.FulfillmentOrderService/DeleteFulfillmentOrder\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n searchFulfillmentOrder(r) {\n const request = r.toApiJson ? r : new SearchFulfillmentOrderRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.FulfillmentOrderService/SearchFulfillmentOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => SearchFulfillmentOrderResponse.fromProto(resp)));\n }\n getFulfillmentOrdersForSalesOrder(r) {\n const request = r.toApiJson ? r : new GetFulfillmentOrdersForSalesOrderRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.FulfillmentOrderService/GetFulfillmentOrdersForSalesOrder\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetFulfillmentOrdersForSalesOrderResponse.fromProto(resp)));\n }\n getMultiBySalesOrderIds(r) {\n const request = r.toApiJson ? r : new GetMultiBySalesOrderIdsRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.FulfillmentOrderService/GetMultiBySalesOrderIds\", request.toApiJson(), this.apiOptions()).pipe(map(resp => GetMultiBySalesOrderIdsResponse.fromProto(resp)));\n }\n sendFulfillmentOrder(r) {\n const request = r.toApiJson ? r : new SendFulfillmentOrderRequest(r);\n return this.http.post(this._host + \"/orderfulfillment.v1.FulfillmentOrderService/SendFulfillmentOrder\", request.toApiJson(), {\n ...this.apiOptions(),\n observe: 'response'\n });\n }\n }\n FulfillmentOrderApiService.ɵfac = function FulfillmentOrderApiService_Factory(__ngFactoryType__) {\n return new (__ngFactoryType__ || FulfillmentOrderApiService)(i0.ɵɵinject(i1.HttpClient), i0.ɵɵinject(HostService));\n };\n FulfillmentOrderApiService.ɵprov = /* @__PURE__ */i0.ɵɵdefineInjectable({\n token: FulfillmentOrderApiService,\n factory: FulfillmentOrderApiService.ɵfac,\n providedIn: 'root'\n });\n return FulfillmentOrderApiService;\n})();\n(() => {\n (typeof ngDevMode === \"undefined\" || ngDevMode) && void 0;\n})();\n\n// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Index.\n// *********************************\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { ActivationDateIdentifiers, ActivationDates, ActivationFailureDetails, AppInfo, BillingFrequency, Blame, BlameSource, BusinessInfo, CancelEditionChangeRequest, CancelOrderItemWaitingForConsumerInformationRequest, ChangeRequestEventExternalData, ChangeSpendRequest, ChangeSpendRequestExternalData, ChangeSpendRequestRequest, ChangeSpendRequestStatus, Consumer, CreateFulfillmentOrderRequest, CreateFulfillmentOrderResponse, CreateOrderRequest, CreateOrderResponse, CustomFields, DeactivateImmediatelyRequest, DeleteFulfillmentOrderRequest, DismissFailedOrderItemRequest, EditionChangeInformation, FailureReason, Field, FieldMask, FieldType, FormAnswers, Frequency, FulfillmentFormConfig, FulfillmentFormField, FulfillmentFormFieldOption, FulfillmentFormInfo, FulfillmentFormSubmission, FulfillmentFormSubmissionApiService, FulfillmentOrder, FulfillmentOrderApiService, FulfillmentOrderProjectionFilter, FulfillmentOrderProjects, FulfillmentOrderStatus, FulfillmentOrders, GetCurrentSpendRequest, GetCurrentSpendResponse, GetFulfillmentOrderRequest, GetFulfillmentOrderResponse, GetFulfillmentOrdersForSalesOrderRequest, GetFulfillmentOrdersForSalesOrderResponse, GetLatestFulfillmentFormSubmissionRequest, GetLatestFulfillmentFormSubmissionResponse, GetMultiActivationDatesRequest, GetMultiActivationDatesResponse, GetMultiActivationErrorsForOrderItemsRequest, GetMultiActivationErrorsForOrderItemsResponse, GetMultiBySalesOrderIdsRequest, GetMultiBySalesOrderIdsResponse, GetMultiBySalesOrderIdsResponseFulfillmentOrdersMapEntry, GetMultiScheduledDeactivationsForBusinessRequest, GetMultiScheduledDeactivationsForBusinessResponse, GetOrderByIdempotencyKeyRequest, GetOrderByIdempotencyKeyResponse, HostService, ListChangeSpendRequestHistoryRequest, ListChangeSpendRequestHistoryRequestListChangeSpendRequestsHistoryFilterOptions, ListChangeSpendRequestHistoryResponse, ListChangeSpendRequestHistoryResponseChangeSpendRequestEvents, ListChangeSpendRequestsRequest, ListChangeSpendRequestsRequestListChangeSpendRequestsFilterOptions, ListChangeSpendRequestsResponse, ListOrderItemsForBusinessRequest, ListOrderItemsForOrderRequest, ListOrderItemsResponse, ListScheduledActivationsForBusinessRequest, ListScheduledActivationsForBusinessResponse, Order, OrderFulfillmentApiService, OrderFulfillmentService, OrderItem, OrderItemParameters, OrderItemStatus, OrderStatus, PendingActivationInfo, PendingActivationInfoActivationStatusesEntry, PendingActivationStatus, ProductActivationInformation, Reasons, RecordOrderFormSubmissionAndActivateOrderItemRequest, ResellerPartnerInfo, ResolveChangeSpendRequestRequest, ResolvePendingActivationRequest, SalesInfo, SalesInfoCost, SalesInfoOrderFormSubmission, ScheduleDeactivationRequest, ScheduledProvisioningTask, SearchFulfillmentOrderRequest, SearchFulfillmentOrderResponse, SearchFulfillmentOrderTimeOptions, SendFulfillmentOrderRequest, SortDirection, TimeField, UnscheduleActivationRequest, UnscheduleDeactivationRequest, UpdateFulfillmentOrderRequest, UpsertFulfillmentFormSubmissionRequest, UpsertFulfillmentFormSubmissionResponse, ValidationErrorCodes };\n","export interface StatusOption {\n name: string;\n color: string;\n}\n\nexport enum WorkOrderPersona {\n VENDOR = 'Vendor',\n CP = 'Channel Partner',\n SMB = 'SMB',\n SALES = 'Sales',\n}\n","import { UntypedFormGroup } from '@angular/forms';\nimport { BadgeColor } from '@vendasta/galaxy/badge';\nimport { FulfillmentFormConfigInterface, FulfillmentOrderStatus } from '@vendasta/order-fulfillment';\nimport { buildTemporaryStorageKey } from '@vendasta/store';\nimport { WorkOrderPersona } from './work-order-landing-page/interfaces';\n\nconst vendorStatusColorMap = new Map([\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED, 'purple'],\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_IN_REVIEW, 'yellow'],\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_IN_PROGRESS, 'blue'],\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_COMPLETED, 'green'],\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_CANCELLED, 'red'],\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_UNSET, undefined],\n]);\n\nconst nonVendorStatusColorMap = new Map([\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED, 'yellow'],\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_IN_REVIEW, 'purple'],\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_IN_PROGRESS, 'blue'],\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_COMPLETED, 'green'],\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_CANCELLED, 'red'],\n [FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_UNSET, undefined],\n]);\n\nexport const statusColorMap = new Map>([\n [WorkOrderPersona.VENDOR, vendorStatusColorMap],\n [WorkOrderPersona.CP, nonVendorStatusColorMap],\n [WorkOrderPersona.SALES, nonVendorStatusColorMap],\n [WorkOrderPersona.SMB, nonVendorStatusColorMap],\n]);\n\nexport enum DisplayedStatusValuesEnum {\n UNSET = '',\n DETAILS_NEEDED = 'DISPLAYED_STATUS_VALUES.DETAILS_NEEDED',\n IN_REVIEW = 'DISPLAYED_STATUS_VALUES.IN_REVIEW',\n VENDOR_REVIEW = 'DISPLAYED_STATUS_VALUES.VENDOR_REVIEW',\n IN_PROGRESS = 'DISPLAYED_STATUS_VALUES.IN_PROGRESS',\n COMPLETED = 'DISPLAYED_STATUS_VALUES.COMPLETED',\n CANCELED = 'DISPLAYED_STATUS_VALUES.CANCELED',\n ON_HOLD = 'DISPLAYED_STATUS_VALUES.ON_HOLD',\n}\n\n// Persona's that should see \"Vendor review\" as the in review status\nconst VENDOR_REVIEW_PERSONAS = [WorkOrderPersona.CP, WorkOrderPersona.SALES];\n\nexport const fulfillmentOrderStatusToString = (\n status: FulfillmentOrderStatus,\n persona?: WorkOrderPersona,\n): DisplayedStatusValuesEnum => {\n switch (status) {\n case FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED:\n return DisplayedStatusValuesEnum.DETAILS_NEEDED;\n case FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_IN_PROGRESS:\n return DisplayedStatusValuesEnum.IN_PROGRESS;\n case FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_COMPLETED:\n return DisplayedStatusValuesEnum.COMPLETED;\n case FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_CANCELLED:\n return DisplayedStatusValuesEnum.CANCELED;\n case FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_ON_HOLD:\n return DisplayedStatusValuesEnum.ON_HOLD;\n case FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_IN_REVIEW:\n return VENDOR_REVIEW_PERSONAS.includes(persona)\n ? DisplayedStatusValuesEnum.VENDOR_REVIEW\n : DisplayedStatusValuesEnum.IN_REVIEW;\n default:\n return DisplayedStatusValuesEnum.UNSET;\n }\n};\n\nexport const displayedStatusToFulfillmentOrderStatus = (\n displayStatus: DisplayedStatusValuesEnum,\n): FulfillmentOrderStatus => {\n switch (displayStatus) {\n case DisplayedStatusValuesEnum.DETAILS_NEEDED:\n return FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED;\n case DisplayedStatusValuesEnum.IN_REVIEW:\n return FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_IN_REVIEW;\n case DisplayedStatusValuesEnum.VENDOR_REVIEW:\n return FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_IN_REVIEW;\n case DisplayedStatusValuesEnum.IN_PROGRESS:\n return FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_IN_PROGRESS;\n case DisplayedStatusValuesEnum.COMPLETED:\n return FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_COMPLETED;\n case DisplayedStatusValuesEnum.CANCELED:\n return FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_CANCELLED;\n case DisplayedStatusValuesEnum.ON_HOLD:\n return FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_ON_HOLD;\n default:\n return FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_UNSET;\n }\n};\n\nexport function hasFulfillmentForm(formConfig: FulfillmentFormConfigInterface): boolean {\n return formConfig?.orderForm?.length > 0;\n}\nexport function getTemporaryStorageKey(businessId: string, appId: string): string {\n return buildTemporaryStorageKey({\n businessId: businessId,\n id: appId,\n index: appId.startsWith('A-') ? 0 : undefined,\n });\n}\n\n/**\n * check to see if changes for work order form are saved in session storage\n * @param formGroup - form group to check\n * @returns boolean\n */\nexport function doesWorkOrderFormHaveUnsavedChanges(formGroup: UntypedFormGroup): boolean {\n const keysToCheck: string[] = Object.keys(formGroup.controls || {});\n return keysToCheck?.reduce((prev, currentKey) => {\n const cachedFormValue = sessionStorage.getItem(currentKey);\n if (cachedFormValue) {\n return true;\n }\n return prev;\n }, false);\n}\n\n/**\n * clear unsaved changes for a form group from session storage\n * @param form\n */\nexport function clearUnsavedChangesFromSessionStorage(formGroup: UntypedFormGroup): void {\n const keysToCheck: string[] = Object.keys(formGroup.controls || {});\n keysToCheck.forEach((key) => {\n sessionStorage.removeItem(key);\n });\n}\n","import { Component, Input, Signal, WritableSignal, computed, signal } from '@angular/core';\nimport { MatIconModule } from '@angular/material/icon';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { BadgeColor, GalaxyBadgeModule } from '@vendasta/galaxy/badge';\nimport { FulfillmentOrderStatus } from '@vendasta/order-fulfillment';\nimport { DisplayedStatusValuesEnum, fulfillmentOrderStatusToString, statusColorMap } from '../utils';\nimport { WorkOrderPersona } from '../work-order-landing-page/interfaces';\n\n@Component({\n selector: 'work-order-status-badge',\n templateUrl: './status-badge.component.html',\n styleUrls: ['./status-badge.component.scss'],\n imports: [GalaxyBadgeModule, MatIconModule, TranslateModule],\n})\nexport class StatusBadgeComponent {\n @Input() set persona(persona: WorkOrderPersona) {\n this._persona.set(persona);\n }\n @Input() set value(value: FulfillmentOrderStatus) {\n this._foStatus.set(value);\n }\n @Input() clickableMenu = false;\n\n private _persona: WritableSignal = signal(WorkOrderPersona.VENDOR);\n private _foStatus: WritableSignal = signal(\n FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_UNSET,\n );\n displayedColor: Signal = computed(\n () => statusColorMap?.get(this._persona())?.get(this._foStatus()) || undefined,\n );\n displayedValue: Signal = computed(() =>\n fulfillmentOrderStatusToString(this._foStatus(), this._persona()),\n );\n}\n","@if (displayedValue()) {\n \n {{ displayedValue() | translate }}\n @if (clickableMenu) {\n arrow_drop_down\n }\n \n}\n","import { BreakpointObserver, Breakpoints } from '@angular/cdk/layout';\nimport { Component, Input, OnInit } from '@angular/core';\nimport { ActivatedRoute, Router } from '@angular/router';\nimport { TranslateService } from '@ngx-translate/core';\nimport { FulfillmentOrderStatus } from '@vendasta/order-fulfillment';\nimport { Observable } from 'rxjs';\nimport { map } from 'rxjs/operators';\nimport { WorkOrderPersona } from '../work-order-landing-page/interfaces';\n\nexport interface WorkOrderSalesOrderSummaryInfo {\n appName: string;\n appIconUrl?: string;\n workOrderId: string;\n workOrderStatus: FulfillmentOrderStatus;\n workOrderLandingPageUrl?: string;\n workOrderLandingPageRouterLinkUrl?: string;\n hasForm?: boolean;\n}\n\n/**\n * Provides a summary of work orders related to a specific sales order.\n * Shows different information based on viewing Persona\n */\n@Component({\n selector: 'work-order-sales-order-summary',\n templateUrl: './work-order-sales-order-summary.component.html',\n styleUrls: ['./work-order-sales-order-summary.component.scss'],\n standalone: false,\n})\nexport class WorkOrderSalesOrderSummaryComponent implements OnInit {\n @Input() workOrders: WorkOrderSalesOrderSummaryInfo[] = [];\n @Input() includeThermometer = false;\n @Input() persona: WorkOrderPersona = WorkOrderPersona.VENDOR;\n thermometerProgress = 0;\n thermometerSuffix: string;\n isMobile$: Observable;\n isVendor: boolean;\n\n constructor(\n private translateService: TranslateService,\n private breakpointObserver: BreakpointObserver,\n private router: Router,\n private route: ActivatedRoute,\n ) {}\n\n ngOnInit(): void {\n this.isVendor = this.persona === WorkOrderPersona.VENDOR;\n this.isMobile$ = this.breakpointObserver\n .observe([Breakpoints.XSmall, Breakpoints.Small])\n .pipe(map((bp) => bp.matches));\n if (this.includeThermometer) {\n const completed = this.workOrders.reduce(\n (prev, curr) =>\n curr.workOrderStatus === FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_COMPLETED ? prev + 1 : prev,\n 0,\n );\n const total = this.workOrders.length;\n this.thermometerProgress = 100 * (completed / total);\n this.thermometerSuffix = this.translateService.instant('SALES_ORDER_SUMMARY.THERMOMETER_SUFFIX', {\n completed,\n total,\n });\n }\n }\n\n handleChevronClick(wo: WorkOrderSalesOrderSummaryInfo): void {\n if (wo?.workOrderLandingPageRouterLinkUrl) {\n this.router.navigate([wo.workOrderLandingPageRouterLinkUrl], {\n relativeTo: this.route,\n fragment: wo.workOrderId,\n });\n } else if (wo?.workOrderLandingPageUrl) {\n window.open(wo.workOrderLandingPageUrl, '_blank', 'noopener');\n }\n }\n}\n","
0\">\n \n \n \n \n {{ 'SALES_ORDER_SUMMARY.TITLE' | translate }}\n \n \n {{ 'SALES_ORDER_SUMMARY.TITLE_NON_VENDOR' | translate }}\n \n \n \n \n \n
\n {{ thermometerSuffix }}\n
\n
\n 0\">\n \n \n \n
\n \n {{ wo.appName }}\n {{ wo.workOrderId }}\n \n \n \n \n \n \n
\n
\n \n
\n
\n
\n
\n
\n
\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { AccountGroupLocation } from '@galaxy/account-group';\n\n@Pipe({\n name: 'accountCity',\n standalone: false,\n})\nexport class AccountCityPipe implements PipeTransform {\n transform(account?: AccountGroupLocation): string {\n return [account?.city, account?.state, account?.zip].filter(Boolean).join(', ');\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { AccountGroupLocation } from '@galaxy/account-group';\n\n@Pipe({\n name: 'accountPhone',\n standalone: false,\n})\nexport class AccountPhonePipe implements PipeTransform {\n transform(account?: AccountGroupLocation): string {\n return account?.workNumber?.[0];\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { DigitalAgentInterface } from '@vendasta/task-manager';\n\n@Pipe({\n name: 'digitalAgentName',\n standalone: false,\n})\nexport class DigitalAgentNamePipe implements PipeTransform {\n transform(digitalAgent?: DigitalAgentInterface): string {\n return [digitalAgent?.firstName, digitalAgent?.lastName].filter(Boolean).join(' ');\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { AccountGroupLocation, AccountGroupService, ProjectionFilter } from '@galaxy/account-group';\nimport { map, tap } from 'rxjs/operators';\nimport { Observable, of } from 'rxjs';\n\n@Pipe({\n name: 'getAccountInfo',\n standalone: false,\n})\nexport class GetAccountInfoPipe implements PipeTransform {\n #accountInfoCache: Map = new Map();\n\n constructor(private accountGroupService: AccountGroupService) {}\n\n transform(accountGroupId?: string): Observable {\n if (!accountGroupId) {\n return of(null);\n }\n const accountGroupFromCache: AccountGroupLocation = this.#accountInfoCache.get(accountGroupId);\n if (accountGroupFromCache) {\n return of(accountGroupFromCache);\n }\n return this.accountGroupService.get(accountGroupId, new ProjectionFilter({ napData: true })).pipe(\n map((accountGroup) => accountGroup?.napData),\n tap((accountInfo) => this.#accountInfoCache.set(accountGroupId, accountInfo)),\n );\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { map, tap } from 'rxjs/operators';\nimport { MarketplacePackagesApiService, Product } from '@vendasta/marketplace-packages';\nimport { FulfillmentOrder } from '@vendasta/order-fulfillment';\nimport { Observable, of } from 'rxjs';\n\n@Pipe({\n name: 'getProductInfo',\n standalone: false,\n})\nexport class GetProductInfoPipe implements PipeTransform {\n #productInfoCache: Map = new Map();\n\n constructor(private marketplacePackagesApiService: MarketplacePackagesApiService) {}\n\n transform(fulfillmentOrder?: FulfillmentOrder): Observable {\n if (!fulfillmentOrder) {\n return of(null);\n }\n const productFromCache: Product = this.#productInfoCache.get(fulfillmentOrder.appId);\n if (productFromCache) {\n return of(productFromCache);\n }\n return this.marketplacePackagesApiService\n .getMultiProducts({\n partnerId: fulfillmentOrder.resellerPartnerId,\n productIds: [fulfillmentOrder.appId],\n })\n .pipe(\n map((products) => products?.products[0]?.product),\n tap((product) => this.#productInfoCache.set(fulfillmentOrder.appId, product)),\n );\n }\n}\n","import { Status } from '@vendasta/task-manager';\nimport { StatusOption } from './interfaces';\n\nexport enum RouteParamKeys {\n Partner = 'FulfillmentOrderPartner',\n FulfillmentOrderId = 'FulfillmentOrderId',\n}\n\nexport const ProjectStatusMap = new Map([\n [Status.Open, { name: Status.Open, color: 'grey' }],\n [Status.InProgress, { name: Status.InProgress, color: 'yellow' }],\n [Status.WaitingOnCustomer, { name: Status.WaitingOnCustomer, color: 'red' }],\n [Status.Completed, { name: Status.Completed, color: 'green' }],\n]);\n\nexport const METADATA_KEYS = {\n FulfillmentOrderId: 'fulfillmentOrderId',\n FulfillingPartnerId: 'FulfillingPartnerId',\n};\n\nexport const TASK_TYPES = {\n Project: 'Project',\n};\n\nexport type OrderDetailSection = 'submittedBy' | 'account' | 'salesOrderId' | 'product' | 'pricing';\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { ProjectStatusMap } from '../constants';\nimport { StatusOption } from '../interfaces';\n\n@Pipe({\n name: 'projectStatusOption',\n standalone: false,\n})\nexport class ProjectStatusOptionPipe implements PipeTransform {\n transform(status?: string): StatusOption {\n return ProjectStatusMap.get(status);\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { TranslateService } from '@ngx-translate/core';\nimport { DisplayedStatusValuesEnum } from '../../utils';\n\n@Pipe({\n name: 'DisplayFulfillmentOrderStatus',\n standalone: false,\n})\nexport class DisplayFulfillmentOrderStatusPipe implements PipeTransform {\n constructor(private translateService: TranslateService) {}\n\n transform(value: DisplayedStatusValuesEnum): string {\n return this.translateService.instant(value);\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { NgModule } from '@angular/core';\nimport { AccountCityPipe } from './account-city.pipe';\nimport { AccountPhonePipe } from './account-phone.pipe';\nimport { DigitalAgentNamePipe } from './digital-agent-name.pipe';\nimport { GetAccountInfoPipe } from './get-account-info.pipe';\nimport { GetProductInfoPipe } from './get-product-info.pipe';\nimport { ProjectStatusOptionPipe } from './project-status-option.pipe';\nimport { DisplayFulfillmentOrderStatusPipe } from './display-fulfillment-order-status.pipe';\n\nconst pipes = [\n AccountCityPipe,\n AccountPhonePipe,\n DigitalAgentNamePipe,\n GetAccountInfoPipe,\n GetProductInfoPipe,\n ProjectStatusOptionPipe,\n DisplayFulfillmentOrderStatusPipe,\n];\n\n@NgModule({\n declarations: pipes,\n imports: [CommonModule],\n exports: pipes,\n providers: pipes,\n})\nexport class FulfillmentOrderPipesModule {}\n","import { CommonModule } from '@angular/common';\nimport { Component } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatDialogModule, MatDialogRef } from '@angular/material/dialog';\nimport { MatInputModule } from '@angular/material/input';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { GalaxyFormFieldModule } from '@vendasta/galaxy/form-field';\n\n@Component({\n imports: [CommonModule, MatDialogModule, MatButtonModule, GalaxyFormFieldModule, MatInputModule, TranslateModule],\n templateUrl: './pending-activation-approval-dialogue.component.html',\n styleUrls: ['./pending-activation-approval-dialogue.component.scss'],\n})\nexport class PendingActivationApprovalDialogueComponent {\n constructor(private dialogue: MatDialogRef) {}\n\n handleClick() {\n this.dialogue.close(true);\n }\n}\n","

{{ 'PENDING_APPROVALS_CARD.APPROVE_ORDER_DIALOG.TITLE' | translate }}

\n\n

{{ 'PENDING_APPROVALS_CARD.APPROVE_ORDER_DIALOG.CONTENT' | translate }}

\n
\n\n \n\n \n\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatDialogModule, MatDialogRef } from '@angular/material/dialog';\nimport { GalaxyFormFieldModule } from '@vendasta/galaxy/form-field';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatInputModule } from '@angular/material/input';\nimport { TranslateModule } from '@ngx-translate/core';\n\n@Component({\n selector: 'work-order-pending-approval-decline',\n imports: [CommonModule, GalaxyFormFieldModule, MatButtonModule, MatDialogModule, MatInputModule, TranslateModule],\n templateUrl: './pending-approval-decline.component.html',\n styleUrls: ['./pending-approval-decline.component.scss'],\n})\nexport class PendingApprovalDeclineComponent {\n constructor(private dialogue: MatDialogRef) {}\n\n handleClick(rejectionReason: string) {\n this.dialogue.close(rejectionReason);\n }\n}\n","

{{ 'PENDING_APPROVALS_CARD.DECLINE_ORDER_DIALOG.TITLE' | translate }}

\n\n

{{ 'PENDING_APPROVALS_CARD.DECLINE_ORDER_DIALOG.CONTENT' | translate }}

\n \n \n \n
\n\n \n \n\n","import { InjectionToken } from '@angular/core';\nimport { Observable } from 'rxjs';\n\nexport interface PendingApprovalServiceInterface {\n resolvePendingActivation(\n activationID: string,\n appID: string,\n businessID: string,\n approved: boolean,\n addonID?: string,\n accountID?: string,\n rejectionReason?: string,\n ): Observable;\n}\n\nexport const PendingApprovalServiceInterfaceToken: InjectionToken =\n new InjectionToken('PendingApprovalServiceInterface');\n","import { Pipe, PipeTransform } from '@angular/core';\nimport { PendingActivationStatus } from '@vendasta/order-fulfillment';\n\n@Pipe({\n name: 'isActivationPending',\n standalone: true,\n})\nexport class IsActivationPendingPipe implements PipeTransform {\n transform(status: string | PendingActivationStatus | undefined): boolean {\n return (\n status === PendingActivationStatus.PENDING_ACTIVATION_STATUS_PENDING ||\n status === 'PENDING_ACTIVATION_STATUS_PENDING'\n );\n }\n}\n","import { CommonModule } from '@angular/common';\nimport { Component, EventEmitter, Inject, Input, Output } from '@angular/core';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCardModule } from '@angular/material/card';\nimport { MatDialog } from '@angular/material/dialog';\nimport { MarketplaceAppService } from '@galaxy/marketplace-apps/v1';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { GalaxyAvatarModule } from '@vendasta/galaxy/avatar';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { FulfillmentOrder, PendingActivationStatus } from '@vendasta/order-fulfillment';\nimport { EMPTY } from 'rxjs';\nimport { switchMap } from 'rxjs/operators';\nimport { FulfillmentOrderPipesModule } from '../../pipes/fulfillment-order-pipes.module';\nimport { PendingActivationApprovalDialogueComponent } from '../pending-approval-approve/pending-activation-approval-dialogue.component';\nimport { PendingApprovalDeclineComponent } from '../pending-approval-decline/pending-approval-decline.component';\nimport { PendingApprovalServiceInterface, PendingApprovalServiceInterfaceToken } from '../pending-approvals.interface';\nimport { IsActivationPendingPipe } from './is-activation-pending.pipe';\n\n@Component({\n selector: 'work-order-pending-approvals-card',\n imports: [\n CommonModule,\n MatCardModule,\n MatButtonModule,\n GalaxyAvatarModule,\n IsActivationPendingPipe,\n FulfillmentOrderPipesModule,\n TranslateModule,\n ],\n templateUrl: './pending-approvals-card.component.html',\n styleUrls: ['./pending-approvals-card.component.scss'],\n})\nexport class PendingApprovalsCardComponent {\n @Input() fulfillmentOrder: FulfillmentOrder;\n @Output() pendingActivationChange = new EventEmitter();\n\n PendingActivationStatus = PendingActivationStatus;\n\n constructor(\n private dialog: MatDialog,\n @Inject(PendingApprovalServiceInterfaceToken) private pendingApprovalService: PendingApprovalServiceInterface,\n private snackbarService: SnackbarService,\n private appsService: MarketplaceAppService,\n ) {}\n\n approve(pendingActivation: string) {\n this.dialog\n .open(PendingActivationApprovalDialogueComponent)\n .afterClosed()\n .pipe(\n switchMap((result) => {\n if (result) {\n return this.pendingApprovalService.resolvePendingActivation(\n pendingActivation,\n this.fulfillmentOrder.appId,\n this.fulfillmentOrder.businessId,\n true,\n );\n }\n return EMPTY;\n }),\n )\n .subscribe(\n () => {\n this.snackbarService.openSuccessSnack('PENDING_APPROVALS_CARD.APPROVE_SUCCESS');\n this.fulfillmentOrder.pendingActivationIds = this.fulfillmentOrder.pendingActivationIds.filter(\n (id) => id !== pendingActivation,\n );\n this.pendingActivationChange.emit(pendingActivation);\n },\n () => {\n this.snackbarService.openErrorSnack('PENDING_APPROVALS_CARD.APPROVE_ERROR');\n },\n );\n }\n\n decline(pendingActivation: string) {\n this.dialog\n .open(PendingApprovalDeclineComponent)\n .afterClosed()\n .pipe(\n switchMap((rejectionReason) => {\n if (rejectionReason) {\n return this.appsService.getApp(this.fulfillmentOrder.appId).pipe(\n switchMap((app) => {\n // if it's an addon, we need to get the parent app id. Otherwise fallback to the appID stored on the FO\n const appId: string =\n app?.restrictions?.appRequirement?.rules?.[0]?.appIds?.[0] || this.fulfillmentOrder.appId;\n const addonId: string = this.fulfillmentOrder.appId;\n\n return this.pendingApprovalService.resolvePendingActivation(\n pendingActivation,\n appId,\n this.fulfillmentOrder.businessId,\n false,\n appId !== addonId ? addonId : '',\n null, // accountId,\n rejectionReason,\n );\n }),\n );\n }\n return EMPTY;\n }),\n )\n .subscribe(\n () => {\n this.snackbarService.openSuccessSnack('PENDING_APPROVALS_CARD.DECLINE_SUCCESS');\n this.fulfillmentOrder.pendingActivationIds = this.fulfillmentOrder.pendingActivationIds.filter(\n (id) => id !== pendingActivation,\n );\n this.pendingActivationChange.emit(pendingActivation);\n },\n () => {\n this.snackbarService.openErrorSnack('PENDING_APPROVALS_CARD.DECLINE_ERROR');\n },\n );\n }\n}\n","
\n \n \n {{ 'PENDING_APPROVALS_CARD.TITLE' | translate }}\n \n \n \n \n
\n \n {{ fulfillmentOrder?.appInfo?.appName || '' }}\n
\n
\n \n \n
\n
\n \n \n \n\n","import { Component, Inject } from '@angular/core';\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\nimport { DialogData } from '@vendasta/store';\n\n@Component({\n selector: 'work-order-form-conflict-dialog',\n templateUrl: './form-conflict-dialog.component.html',\n styleUrls: ['./form-conflict-dialog.component.scss'],\n standalone: false,\n})\nexport class FormConflictDialogComponent {\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: DialogData,\n ) {}\n\n handleRefreshPage(): void {\n window.location.reload();\n }\n}\n","

{{ 'FORM_V2.CONFLICT_DIALOG.TITLE' | translate }}

\n\n

{{ 'FORM_V2.CONFLICT_DIALOG.MESSAGE' | translate }}

\n
\n\n \n \n\n","import { Component } from '@angular/core';\n\n@Component({\n selector: 'work-order-form-error-dialog',\n templateUrl: './form-error-dialog.component.html',\n styleUrls: ['./form-error-dialog.component.scss'],\n standalone: false,\n})\nexport class FormErrorDialogComponent {}\n","

{{ 'FORM_V2.SUBMISSION_ERROR_DIALOG.TITLE' | translate }}

\n\n

{{ 'FORM_V2.SUBMISSION_ERROR_DIALOG.CONTENT' | translate }}

\n
\n\n \n\n","import { Component } from '@angular/core';\nimport { MatDialogRef } from '@angular/material/dialog';\n\n@Component({\n selector: 'work-order-form-confirm-dialog',\n templateUrl: './form-confirm-dialog.component.html',\n styleUrls: ['./form-confirm-dialog.component.scss'],\n standalone: false,\n})\nexport class FormConfirmDialogComponent {\n constructor(private dialogRef: MatDialogRef) {}\n\n handleSubmitClick(): void {\n this.dialogRef.close(true);\n }\n}\n","

{{ 'FORM_V2.SUBMISSION_CONFIRM_DIALOG.TITLE' | translate }}

\n\n

{{ 'FORM_V2.SUBMISSION_CONFIRM_DIALOG.CONTENT' | translate }}

\n
\n\n \n \n\n","import { Observable } from 'rxjs';\nimport { InjectionToken } from '@angular/core';\n\nexport const UsersServiceInterfaceToken: InjectionToken =\n new InjectionToken('UsersServiceInterface');\n\nexport interface UserOptions {\n greetingName?: string;\n sendWelcomeEmail: boolean;\n locale?: string;\n phone?: string;\n welcomeMessage?: string;\n accountGroupId: string;\n partnerId: string;\n}\n\nexport interface User {\n email: string;\n // This is in the format UID-XXXX\n userId: string;\n // This is in the format U-XXXX\n unifiedId: string;\n phone?: string;\n firstName?: string;\n lastName?: string;\n fullName?: string;\n}\n\nexport interface UsersServiceInterface {\n users$: Observable;\n hasMoreResults$: Observable;\n createSMBUser(user: User, userOptions: UserOptions): Observable;\n search(query: string): void;\n loadMore(): void;\n addUsersToAccount(partnerId: string, accountGroupId: string, userIds: string[]): Observable;\n}\n","import { ChangeDetectionStrategy, Component, EventEmitter, Inject, Input, Output } from '@angular/core';\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\nimport { emailValidator } from '@vendasta/forms';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { BehaviorSubject, Observable, take } from 'rxjs';\nimport { UsersServiceInterface, User, UserOptions, UsersServiceInterfaceToken } from '../../users-service-interface';\nimport { catchError } from 'rxjs/operators';\n\n@Component({\n selector: 'users-create-user-form',\n templateUrl: './create-user-form.component.html',\n styleUrls: ['./create-user-form.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n standalone: false,\n})\nexport class CreateUserFormComponent {\n @Input() accountGroupId = '';\n @Input() partnerId = '';\n @Output() userCreated: EventEmitter = new EventEmitter();\n\n private isCreatingUser$$: BehaviorSubject = new BehaviorSubject(false);\n private isCreatingUser$: Observable = this.isCreatingUser$$.asObservable();\n\n readonly form = new FormGroup({\n first_name: new FormControl(''),\n last_name: new FormControl(''),\n user_email: new FormControl('', [Validators.required, emailValidator]),\n phone: new FormControl(''),\n });\n\n constructor(\n private snackbarService: SnackbarService,\n @Inject(UsersServiceInterfaceToken) private userService: UsersServiceInterface,\n ) {}\n\n public isCreatingUser(): Observable {\n return this.isCreatingUser$;\n }\n\n createUser(): void {\n if (this.form.invalid) {\n this.form.markAsDirty();\n this.snackbarService.openErrorSnack('CREATE_USER.INVALID_FORM');\n return;\n }\n\n this.isCreatingUser$$.next(true);\n\n const user = {\n email: this.form.value.user_email,\n firstName: this.form.value.first_name || '',\n lastName: this.form.value.last_name || '',\n } as User;\n\n const userOptions = {\n partnerId: this.partnerId,\n accountGroupId: this.accountGroupId,\n sendWelcomeEmail: false,\n phone: this.form.value.phone,\n } as UserOptions;\n\n this.userService\n .createSMBUser(user, userOptions)\n .pipe(\n take(1),\n catchError((err) => {\n let errTranslationId = 'CREATE_USER.ERROR_SNACK';\n if (err?.data?.message?.includes('LimitError:')) {\n errTranslationId = 'CREATE_USER.RATE_LIMIT_SNACK';\n }\n this.snackbarService.openErrorSnack(errTranslationId);\n this.isCreatingUser$$.next(false);\n throw err;\n }),\n )\n .subscribe((responseUser) => {\n this.userCreated.emit(responseUser);\n this.snackbarService.openSuccessSnack('CREATE_USER.CREATE_USER_SUCCESS');\n this.isCreatingUser$$.next(false);\n });\n }\n}\n","
\n \n \n {{ 'CREATE_USER.FIRST_NAME' | translate }}\n \n \n \n\n \n \n {{ 'CREATE_USER.LAST_NAME' | translate }}\n \n \n \n\n \n\n \n \n {{ 'CREATE_USER.EMAIL' | translate }}\n \n \n \n
\n","import { Pipe, PipeTransform } from '@angular/core';\n\n/**\n * A pipe to conditionally display a User's full or partial name.\n */\n@Pipe({ standalone: true, name: 'fullName' })\nexport class UserFullNamePipe implements PipeTransform {\n transform(firstName: string, lastName: string): string {\n if (!firstName && !lastName) {\n return '';\n }\n\n if (firstName) {\n const name = firstName;\n return lastName ? name + ' ' + lastName : name;\n } else {\n //in this case, lastName must be a valid string.\n return lastName;\n }\n }\n}\n","import { AfterViewInit, Component, Inject, OnDestroy, OnInit, ViewChild } from '@angular/core';\nimport { MatCheckboxChange } from '@angular/material/checkbox';\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\nimport { MatTabChangeEvent } from '@angular/material/tabs';\nimport {\n BehaviorSubject,\n Observable,\n ReplaySubject,\n Subject,\n Subscription,\n debounceTime,\n take,\n takeUntil,\n tap,\n} from 'rxjs';\nimport { CreateUserFormComponent } from '../create-user/create-user-form.component';\nimport { User, UsersServiceInterface, UsersServiceInterfaceToken } from '../../users-service-interface';\n\nexport enum UserAction {\n ADD = 'add',\n CREATE = 'create',\n}\nexport interface AddUserResponse {\n action: UserAction;\n users: User[];\n}\nexport interface SendEmailDialogData {\n showCreateTab: boolean;\n partnerId: string;\n businessId: string;\n existingUsers: User[];\n}\n\n@Component({\n styleUrls: ['add-user-dialog.component.scss'],\n templateUrl: './add-user-dialog.component.html',\n standalone: false,\n})\nexport class AddUserDialogComponent implements OnInit, AfterViewInit, OnDestroy {\n subscriptions: Subscription[] = [];\n accountGroupId = '';\n partnerId = '';\n showCreateTab = false;\n\n @ViewChild('createForm')\n createFormComponent!: CreateUserFormComponent;\n\n term$ = new Subject();\n hasMoreResults$!: Observable;\n users$!: Observable;\n loading$$: BehaviorSubject = new BehaviorSubject(true);\n loading$ = this.loading$$.asObservable();\n\n existingUsers: User[] = [];\n selectedUsers: User[] = [];\n addedUsers: User[] = [];\n\n private isLoading$$: BehaviorSubject = new BehaviorSubject(false);\n isLoading$ = this.isLoading$$.asObservable();\n\n private tab$$: ReplaySubject = new ReplaySubject(1);\n tab$ = this.tab$$.asObservable();\n\n private _destroy$$ = new Subject();\n UserAction = UserAction;\n\n constructor(\n public dialogRef: MatDialogRef,\n @Inject(MAT_DIALOG_DATA) public data: SendEmailDialogData,\n @Inject(UsersServiceInterfaceToken) private userService: UsersServiceInterface,\n ) {\n this.showCreateTab = data?.showCreateTab;\n this.partnerId = data?.partnerId;\n this.accountGroupId = data?.businessId;\n this.existingUsers = data?.existingUsers;\n }\n\n ngOnInit(): void {\n this.tab$$.next(this.showCreateTab ? UserAction.CREATE : UserAction.ADD);\n //Set up initial search.\n this.userService.search('');\n this.subscriptions.push(\n this.term$.pipe(debounceTime(200)).subscribe((x) => {\n this.loading$$.next(true);\n this.userService.search(x);\n }),\n );\n\n this.hasMoreResults$ = this.userService.hasMoreResults$;\n this.users$ = this.userService.users$.pipe(tap(() => this.loading$$.next(false)));\n }\n\n ngAfterViewInit(): void {\n if (this.showCreateTab) {\n this.createFormComponent\n .isCreatingUser()\n .pipe(takeUntil(this._destroy$$))\n .subscribe((isLoading) => this.isLoading$$.next(isLoading));\n }\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach((sub) => sub.unsubscribe());\n this._destroy$$.next();\n this._destroy$$.complete();\n }\n\n addSelectedUsers(): void {\n this.isLoading$$.next(true);\n const usersToAdd: User[] = [];\n for (const user of this.selectedUsers) {\n if (!this.doesUserExist(user)) {\n usersToAdd.push(user);\n }\n }\n if (usersToAdd.length > 0) {\n this.addedUsers.push(...usersToAdd);\n this.userService\n .addUsersToAccount(\n this.partnerId,\n this.accountGroupId,\n usersToAdd.map((x) => x.userId),\n )\n .subscribe({\n next: () => this.dialogRef.close({ action: UserAction.ADD, users: this.addedUsers }),\n error: () => this.dialogRef.close(),\n complete: () => this.isLoading$$.next(false),\n });\n }\n }\n\n addUserToSelected(event: MatCheckboxChange, user: User): void {\n if (event.checked) {\n this.selectedUsers.push(user);\n } else {\n const index = this.selectedUsers.indexOf(user, 0);\n if (index > -1) {\n this.selectedUsers.splice(index, 1);\n }\n }\n }\n\n doesUserExist(user: User): boolean {\n if (!this.existingUsers) {\n return false;\n }\n return (\n [...this.addedUsers, ...this.existingUsers].filter((existingUser) => existingUser.email === user.email).length > 0\n );\n }\n\n userCreated(user: User): void {\n this.dialogRef.close({ action: UserAction.CREATE, users: [user] });\n }\n\n tabChanged(event: MatTabChangeEvent): void {\n this.tab$$.next(event.index === 0 ? UserAction.CREATE : UserAction.ADD);\n }\n\n createUser(): void {\n this.createFormComponent.createUser();\n }\n\n onSubmit(): void {\n this.tab$.pipe(take(1)).subscribe((tab) => (tab === UserAction.ADD ? this.addSelectedUsers() : this.createUser()));\n }\n\n loadMore(): void {\n this.userService.loadMore();\n }\n}\n","\n \n
\n
\n
\n
\n
\n {{ user.firstName || '' | fullName : user.lastName || '' }}\n
\n
{{ user.email }}
\n
\n \n
\n
\n
\n \n
\n
\n {{ 'ADD_USER_DIALOG_LIBRARY.NONE_FOUND' | translate }}\n
\n
\n
\n
\n \n
\n
\n\n\n

{{ 'ADD_USER_DIALOG_LIBRARY.ADD_USERS_TO_ACCOUNT' | translate }}

\n
\n \n \n \n
\n \n
\n
\n \n
\n \n
\n
\n
\n
\n
\n
\n\n\n \n
\n \n {{ 'ADD_USER_DIALOG.CREATE_USER' | translate }}\n \n
\n
\n\n
\n \n\n \n \n \n {{ 'ADD_USER_DIALOG_LIBRARY.ADD_USERS' | translate }}\n \n \n {{ 'ADD_USER_DIALOG_LIBRARY.CREATE_USER' | translate }}\n \n \n \n
\n
\n","{\n \"CREATE_USER\": {\n \"FIRST_NAME\": \"First name\",\n \"LAST_NAME\": \"Last name\",\n \"EMAIL\": \"Email\",\n \"ERROR_SNACK\": \"Error creating user\",\n \"RATE_LIMIT_SNACK\": \"Limit has been reached for business users\",\n \"CREATE_USER_SUCCESS\": \"User successfully created\",\n \"INVALID_FORM\": \"Invalid user form. Verify the information provided\"\n },\n \"ADD_USER_DIALOG_LIBRARY\": {\n \"ADD_USERS_TO_ACCOUNT\": \"Add users to account\",\n \"ADD_USER_TO_BRAND\": \"Add user to group\",\n \"ENTIRE_BRAND\": \"Entire group\",\n \"SELECT_SUBGROUPS\": \"Select sub-groups\",\n \"NONE_FOUND\": \"None found\",\n \"CREATE_NEW_USER\": \"Create New User\",\n \"CREATE_USER\": \"Create user\",\n \"ADD_USERS\": \"Add users\",\n \"ADD_EXISTING_USER\": \"Add existing user\",\n \"CANCEL\": \"Cancel\",\n \"CLOSE\": \"Close\"\n }\n}\n","import { NgModule } from '@angular/core';\nimport { LexiconModule } from '@galaxy/lexicon';\nimport baseTranslation from './assets/en_devel.json';\nimport { CreateUserFormComponent } from './components/create-user/create-user-form.component';\nimport { AddUserDialogComponent } from './components/add-user/add-user-dialog.component';\nimport { CommonModule } from '@angular/common';\nimport { UserFullNamePipe } from './user-full-name.pipe';\nimport { GalaxyButtonLoadingIndicatorModule } from '@vendasta/galaxy/button-loading-indicator';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { MatTabsModule } from '@angular/material/tabs';\nimport { VaFilterModule } from '@vendasta/uikit';\nimport { MatInputModule } from '@angular/material/input';\nimport { GalaxyInputModule } from '@vendasta/galaxy/input';\nimport { ReactiveFormsModule } from '@angular/forms';\nimport { TranslateModule } from '@ngx-translate/core';\n\n@NgModule({\n declarations: [AddUserDialogComponent, CreateUserFormComponent],\n imports: [\n CommonModule,\n TranslateModule,\n ReactiveFormsModule,\n UserFullNamePipe,\n GalaxyButtonLoadingIndicatorModule,\n MatButtonModule,\n MatCheckboxModule,\n MatDialogModule,\n MatIconModule,\n MatProgressSpinnerModule,\n MatTabsModule,\n VaFilterModule,\n LexiconModule.forChild({\n componentName: 'common/users',\n baseTranslation: baseTranslation,\n }),\n MatInputModule,\n GalaxyInputModule,\n ],\n providers: [],\n exports: [AddUserDialogComponent, CreateUserFormComponent],\n})\nexport class UsersModule {}\n","export { AddUserDialogComponent, UserAction } from './components/add-user/add-user-dialog.component';\nexport { CreateUserFormComponent } from './components/create-user/create-user-form.component';\nexport { UsersServiceInterface, UserOptions, User, UsersServiceInterfaceToken } from './users-service-interface';\nexport { UsersModule } from './users.module';\n","export * from './lib';\n","import { COMMA, ENTER, SEMICOLON, SPACE, TAB } from '@angular/cdk/keycodes';\nimport { Component, ElementRef, Inject, OnDestroy, OnInit, Pipe, PipeTransform, ViewChild } from '@angular/core';\nimport { UntypedFormControl } from '@angular/forms';\nimport { MatAutocomplete, MatAutocompleteSelectedEvent } from '@angular/material/autocomplete';\nimport { MatChipGrid, MatChipInputEvent } from '@angular/material/chips';\nimport { MAT_DIALOG_DATA, MatDialog, MatDialogRef } from '@angular/material/dialog';\nimport { AddUserDialogComponent, User, UserAction } from '@vendasta/users';\nimport { BehaviorSubject, Observable, Subject, Subscription } from 'rxjs';\nimport { map, startWith } from 'rxjs/operators';\n\nexport interface SendEmailDialogData {\n allUsers: User[];\n partnerId: string;\n businessId: string;\n allowUserManagement: boolean;\n}\n\nexport interface SendEmailDialogResp {\n userIds: string[];\n}\n\n@Component({\n templateUrl: './send-email-dialog.component.html',\n styleUrls: ['./send-email-dialog.component.scss'],\n standalone: false,\n})\nexport class SendEmailDialogComponent implements OnInit, OnDestroy {\n subscriptions: Subscription[] = [];\n allUsers: User[];\n separatorKeysCodes: number[] = [ENTER, COMMA, SPACE, SEMICOLON, TAB];\n selectedUsers: User[];\n emailControl: UntypedFormControl;\n filteredUsers$$: BehaviorSubject = new BehaviorSubject([]);\n filteredUsers$: Observable = this.filteredUsers$$.asObservable();\n errorMessage$$: Subject = new Subject();\n childDialogRef: MatDialogRef;\n\n partnerId: string;\n businessId: string;\n allowUserManagement: boolean;\n\n @ViewChild('emailInput') emailInput: ElementRef;\n @ViewChild('autoEmail') matAutocomplete: MatAutocomplete;\n @ViewChild('emailList') emailChipList: MatChipGrid;\n\n constructor(\n public dialogRef: MatDialogRef,\n public dialog: MatDialog,\n @Inject(MAT_DIALOG_DATA) public data: SendEmailDialogData,\n ) {\n this.allUsers = data?.allUsers || [];\n this.partnerId = data?.partnerId;\n this.businessId = data?.businessId;\n this.allowUserManagement = data?.allowUserManagement;\n this.selectedUsers = [];\n }\n\n ngOnInit(): void {\n this.emailControl = new UntypedFormControl(null);\n this.subscriptions.push(\n this.emailControl.valueChanges\n .pipe(\n startWith(null),\n map((value: string | null) => (value ? this._filter(value) : this.allUsers.slice())),\n )\n .subscribe((users) => {\n this.filteredUsers$$.next(users);\n }),\n );\n }\n\n add(event: MatChipInputEvent): void {\n const value = (event.value || '').trim();\n\n if (value) {\n const user = this.allUsers.find((u) => u.userId === value);\n if (user) {\n this._pushUser(user);\n }\n }\n }\n\n selected(event: MatAutocompleteSelectedEvent): void {\n const user = this.allUsers.find((u) => u.userId === event.option.value);\n if (user) {\n this._pushUser(user);\n }\n this.emailInput.nativeElement.value = null;\n this.emailControl.setValue(null);\n }\n\n preventBlur(e: Event): void {\n e.stopPropagation();\n e.preventDefault();\n }\n\n remove(userId: string): void {\n const index = this.selectedUsers.indexOf(this.selectedUsers.find((u) => u.userId === userId));\n if (index >= 0) {\n this.selectedUsers.splice(index, 1);\n this._updateErrorState();\n }\n }\n\n private _pushUser(user: User): void {\n this.selectedUsers.push(user);\n this._updateErrorState();\n }\n\n // conventional error handling on a form control do not work with MatChipLists, this function handles the error state manually\n private _updateErrorState(): void {\n if (this.selectedUsers.length === 0) {\n this.errorMessage$$.next('At least one user is required');\n this.emailChipList.errorState = true;\n return;\n }\n\n this.errorMessage$$.next('');\n this.emailChipList.errorState = false;\n return;\n }\n\n close(save: boolean): void {\n const userIds = this.selectedUsers.map((u) => u.unifiedId);\n save ? this.dialogRef.close({ userIds: userIds }) : this.dialogRef.close();\n }\n\n presentAddUserDialog(): void {\n this.childDialogRef = this.dialog.open(AddUserDialogComponent, {\n width: '620px',\n data: {\n showCreateTab: true,\n showAddTab: false,\n partnerId: this.partnerId,\n businessId: this.businessId,\n existingUsers: this.allUsers,\n },\n });\n this.subscriptions.push(\n this.childDialogRef.afterClosed().subscribe((result) => {\n const users = this.filteredUsers$$.getValue();\n\n if (result?.users.length && result?.users.length > 0 && result?.action === UserAction.ADD) {\n users.push(...result.users);\n this.filteredUsers$$.next(users);\n this.allUsers.push(...result.users);\n this.selectedUsers.push(...result.users);\n } else if (result?.users.length && result?.users.length > 0 && result?.action === UserAction.CREATE) {\n users.push(result.users[0]);\n this.filteredUsers$$.next(users);\n this.allUsers.push(result.users[0]);\n this.selectedUsers.push(result.users[0]);\n }\n }),\n );\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach((s) => s.unsubscribe());\n }\n\n private _filter(value: string): User[] {\n const filterValue = value.toLowerCase();\n return this.allUsers.filter((u) => u.email.toLowerCase().indexOf(filterValue) === 0);\n }\n\n // formatUser returns a User formatted as: jsmith47@example.ca (John Smith)\n static formatUser(user: User): string {\n let formattedUser = '';\n if (user?.email) {\n formattedUser = user.email;\n }\n\n const names: string[] = [];\n if (user.firstName) {\n names.push(user.firstName);\n }\n if (user.lastName) {\n names.push(user.lastName);\n }\n if (names.length > 0) {\n formattedUser = `${formattedUser} (${names.join(' ')})`;\n }\n return formattedUser;\n }\n}\n\n@Pipe({\n name: 'formatUser',\n standalone: true,\n})\nexport class FormatUserPipe implements PipeTransform {\n transform(user: User): string {\n return SendEmailDialogComponent.formatUser(user);\n }\n}\n","

\n {{ 'SHARE.SHARE_FORM' | translate }}\n

\n\n \n {{ 'SHARE.ADD_OR_SELECT_USERS' | translate }}\n \n \n {{ e.email }}\n cancel\n \n \n \n {{ errorMessage$$ | async }}\n \n \n \n {{ u | formatUser }}\n \n \n add\n {{ 'SHARE.ADD_USER' | translate }}\n \n \n \n \n\n\n \n \n {{ 'SHARE.SHARE' | translate }}\n \n\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { VaOrderFormModule } from '@vendasta/store';\nimport { MatCardModule } from '@angular/material/card';\nimport { VaIconModule } from '@vendasta/uikit';\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { GalaxySnackbarModule } from '@vendasta/galaxy/snackbar-service';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { LexiconModule } from '@galaxy/lexicon';\nimport baseTranslation from './assets/i18n/en_devel.json';\nimport { MatDividerModule } from '@angular/material/divider';\nimport { MatIconModule } from '@angular/material/icon';\nimport { MatBadgeModule } from '@angular/material/badge';\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\nimport { OverlayModule } from '@angular/cdk/overlay';\nimport { ProjectTrackerModule } from '@vendasta/project-tracker';\nimport { WorkOrderSalesOrderSummaryComponent } from './work-order-sales-order-summary/work-order-sales-order-summary.component';\nimport { GalaxyAvatarModule } from '@vendasta/galaxy/avatar';\nimport { StatusBadgeComponent } from './status-badge/status-badge.component';\nimport { GalaxyBadgeModule } from '@vendasta/galaxy/badge';\nimport { MatProgressBarModule } from '@angular/material/progress-bar';\nimport { WorkOrderLandingPageComponent } from './work-order-landing-page/work-order-landing-page.component';\nimport { WorkOrdersPageCardComponent } from './work-order-landing-page/card/card.component';\nimport { WorkOrdersPageDateInfoComponent } from './work-order-landing-page/date-info/date-info.component';\nimport { WorkOrderPageOrderInfoComponent } from './work-order-landing-page/order-info/order-info.component';\nimport { FulfillmentOrderPipesModule } from './work-order-landing-page/pipes/fulfillment-order-pipes.module';\nimport { RouterModule } from '@angular/router';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { WorkOrderCommunicationDetailsComponent } from './work-order-landing-page/communication-details/communication-details.component';\nimport { FormConflictDialogComponent } from './work-order-form/form-conflict-dialog/form-conflict-dialog.component';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { GalaxyAlertModule } from '@vendasta/galaxy/alert';\nimport { FormErrorDialogComponent } from './work-order-form/form-error-dialog/form-error-dialog.component';\nimport { FormConfirmDialogComponent } from './work-order-form/form-confirm-dialog/form-confirm-dialog.component';\nimport { WorkOrderActionBannerComponent } from './work-order-landing-page/action-banner/action-banner.component';\nimport { MatListModule } from '@angular/material/list';\nimport { FormatUserPipe, SendEmailDialogComponent } from './send-email-dialog/send-email-dialog.component';\nimport { PendingApprovalsCardComponent } from './work-order-landing-page/pending-approvals/pending-approvals-card/pending-approvals-card.component';\nimport { GalaxyFormFieldModule } from '@vendasta/galaxy/form-field';\nimport { MatChipsModule } from '@angular/material/chips';\nimport { MatAutocompleteModule } from '@angular/material/autocomplete';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\nimport { UsersModule } from '@vendasta/users';\n\n@NgModule({\n imports: [\n CommonModule,\n ReactiveFormsModule,\n TranslateModule,\n LexiconModule.forChild({\n componentName: 'common/work-order',\n baseTranslation: baseTranslation,\n }),\n MatBadgeModule,\n MatButtonModule,\n MatCardModule,\n MatDividerModule,\n MatIconModule,\n MatProgressSpinnerModule,\n OverlayModule,\n VaIconModule,\n VaOrderFormModule,\n GalaxySnackbarModule,\n ProjectTrackerModule,\n GalaxyAvatarModule,\n GalaxyBadgeModule,\n MatProgressBarModule,\n FulfillmentOrderPipesModule,\n RouterModule,\n MatExpansionModule,\n ProjectTrackerModule,\n MatDialogModule,\n GalaxyAlertModule,\n MatListModule,\n PendingApprovalsCardComponent,\n GalaxyFormFieldModule,\n MatChipsModule,\n MatAutocompleteModule,\n MatFormFieldModule,\n MatInputModule,\n FormsModule,\n FormatUserPipe,\n UsersModule,\n StatusBadgeComponent,\n ],\n declarations: [\n WorkOrderSalesOrderSummaryComponent,\n SendEmailDialogComponent,\n WorkOrderLandingPageComponent,\n WorkOrdersPageCardComponent,\n WorkOrdersPageDateInfoComponent,\n WorkOrderPageOrderInfoComponent,\n WorkOrderCommunicationDetailsComponent,\n WorkOrderActionBannerComponent,\n FormConflictDialogComponent,\n FormErrorDialogComponent,\n FormConfirmDialogComponent,\n ],\n exports: [\n WorkOrderSalesOrderSummaryComponent,\n WorkOrderLandingPageComponent,\n SendEmailDialogComponent,\n WorkOrderCommunicationDetailsComponent,\n FormConflictDialogComponent,\n WorkOrderActionBannerComponent,\n ],\n})\nexport class WorkOrderModule {}\n","const DYNAMIC_WORK_ORDER_PRODUCTS = [\n 'MP-B32SRNPRQ2JGX2CKWX2KNN2Q8PBMQ7LC', // T41P Demo test product\n 'MP-QHW8S8F6CKRB8VF7FHVXQ8PWXL55TNC6', // T41P Prod test product\n 'MP-B7PHXSW5JMK7R2DRC6TVJFR2X3V52NWL', // Self-service MatchCraft Ads (dev)\n 'MP-WVXC6XCWLKWSF56SBD7CFL8HJ3ZJVFP3', // Self-service MatchCraft Ads (test)\n 'MP-2W3LXN5GMHMZ5QLZSKNW8QDSZTJWKG2Z', //(Search Beta) Digital Ads: Campaign\n 'MP-8MS2CFPW6TM2WW4RZK3D4JZGKM6LF6MZ', // MatchCraft Awareness Digital Ads Campaign\n];\n\nexport function productUsesDynamicWorkOrder(productId: string): boolean {\n return DYNAMIC_WORK_ORDER_PRODUCTS.includes(productId);\n}\n","import { Injectable } from '@angular/core';\nimport {\n FulfillmentFormConfigInterface,\n FulfillmentFormSubmissionApiService,\n FulfillmentFormSubmissionInterface,\n GetLatestFulfillmentFormSubmissionRequest,\n GetLatestFulfillmentFormSubmissionResponseInterface,\n} from '@vendasta/order-fulfillment';\nimport {\n FulfillmentOrderConfigApiService,\n ReleaseType,\n GetFulfillmentOrderConfigRequest,\n} from '@vendasta/marketplace-apps';\nimport { Observable, of } from 'rxjs';\nimport { catchError, map } from 'rxjs/operators';\nimport { SSOService } from '@vendasta/sso';\nimport { productUsesDynamicWorkOrder } from './external-form-products';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class WorkOrderFormConfigService {\n constructor(\n private formSubmissionService: FulfillmentFormSubmissionApiService,\n private formConfigService: FulfillmentOrderConfigApiService,\n private ssoService: SSOService,\n ) {}\n getFormConfig(salesOrderId: string, appId: string, businessId: string): Observable {\n return this.formSubmissionService\n .getLatestFulfillmentFormSubmission(\n new GetLatestFulfillmentFormSubmissionRequest({\n salesOrderId: salesOrderId,\n appId: appId,\n businessId: businessId,\n }),\n )\n .pipe(\n map((response) => response.fulfillmentFormSubmission.formConfig),\n catchError((err) => {\n if (err.status === 404) {\n return this.formConfigService\n .getFulfillmentOrderConfig(\n new GetFulfillmentOrderConfigRequest({\n appId: appId,\n release: ReleaseType.RELEASE_TYPE_PUBLISHED,\n projectionFilter: { includeFormConfig: true },\n }),\n )\n .pipe(map((response) => response.config?.fulfillmentForm as FulfillmentFormConfigInterface));\n } else {\n throw err;\n }\n }),\n map((config) => this.injectSSOUrl(appId, businessId, config)),\n );\n }\n\n getLatestSubmission(\n salesOrderId: string,\n appId: string,\n businessId: string,\n ): Observable {\n return this.formSubmissionService\n .getLatestFulfillmentFormSubmission(\n new GetLatestFulfillmentFormSubmissionRequest({\n salesOrderId: salesOrderId,\n appId: appId,\n businessId: businessId,\n }),\n )\n .pipe(\n catchError(() => of({} as GetLatestFulfillmentFormSubmissionResponseInterface)),\n map((resp) => resp?.fulfillmentFormSubmission || {}),\n );\n }\n\n // QOF-2072: Custom work to redirect to Matchcraft order form by linking to SSO urls in a fulfillment form\n private injectSSOUrl(\n appId: string,\n businessId: string,\n config: FulfillmentFormConfigInterface,\n ): FulfillmentFormConfigInterface {\n if (\n productUsesDynamicWorkOrder(appId) &&\n config?.orderForm?.length === 1 &&\n config?.orderForm[0].type === 'checkbox'\n ) {\n const ssoUrl = this.ssoService.getServiceGatewayURLForAccount(appId, businessId);\n config.orderForm[0].label = `I have completed the external order form for this product`;\n return config;\n }\n return config;\n }\n}\n","import { Injectable } from '@angular/core';\nimport {\n App,\n AppType,\n FulfillmentOrderConfigApiService,\n GetFulfillmentOrderConfigRequest,\n GetMultiAppRequest,\n PartnerApiService,\n ReleaseType,\n} from '@vendasta/marketplace-apps';\nimport { MarketplaceAppsApiService } from '@vendasta/marketplace-apps/v1';\nimport {\n FulfillmentFormSubmissionApiService,\n FulfillmentOrder,\n FulfillmentOrderApiService,\n GetFulfillmentOrdersForSalesOrderRequest,\n UpsertFulfillmentFormSubmissionRequest,\n} from '@vendasta/order-fulfillment';\nimport { CustomerSalesOrdersService, SalesOrdersService } from '@vendasta/sales-orders';\nimport { ProductInfoInterface } from '@vendasta/store';\nimport { Observable, combineLatest } from 'rxjs';\nimport { map, switchMap, take } from 'rxjs/operators';\nimport { WorkOrderPersona } from '../work-order-landing-page/interfaces';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class WorkOrderFormService {\n constructor(\n private fulfillmentFormSubmissionApiService: FulfillmentFormSubmissionApiService,\n private fulfillmentOrderService: FulfillmentOrderApiService,\n private formConfigService: FulfillmentOrderConfigApiService,\n private marketplaceAppsService: MarketplaceAppsApiService,\n private partnerApiService: PartnerApiService,\n private salesOrderService: SalesOrdersService,\n private customerSalesOrderService: CustomerSalesOrdersService,\n ) {}\n\n getProductInfo(\n appId: string,\n resellerPartnerId: string,\n marketId: string,\n persona: WorkOrderPersona,\n ): Observable {\n if (persona === WorkOrderPersona.VENDOR) {\n return this.marketplaceAppsService\n .getApp({\n appId: appId,\n fieldMask: {\n paths: ['name', 'icon', 'tagLine'],\n },\n })\n .pipe(\n map((resp) => resp?.app),\n map((product) => {\n return {\n productId: appId,\n name: product?.name,\n tagline: product?.tagline,\n icon: product?.icon,\n } as ProductInfoInterface;\n }),\n );\n }\n\n return this.partnerApiService\n .getMultiApp(\n new GetMultiAppRequest({\n appKeys: [\n {\n appId: appId,\n },\n ],\n partnerId: resellerPartnerId,\n marketId: marketId,\n }),\n )\n .pipe(\n take(1),\n map((response) => response?.apps[0] || ({} as App)),\n map((app) => {\n if (app.appType === AppType.APP_TYPE_APP) {\n return {\n productId: appId,\n name: app?.sharedMarketingInformation?.name,\n tagline: app?.sharedMarketingInformation?.tagline,\n icon: app?.sharedMarketingInformation?.iconUrl,\n } as ProductInfoInterface;\n } else {\n return {\n productId: app?.parentRequirements?.parentDetails?.key?.appId,\n name: app?.sharedMarketingInformation?.name,\n tagline: app?.sharedMarketingInformation?.tagline,\n icon: app?.sharedMarketingInformation?.iconUrl,\n addonInfo: [\n {\n addonId: appId,\n name: app?.sharedMarketingInformation?.name,\n },\n ],\n } as ProductInfoInterface;\n }\n }),\n );\n }\n\n updateFormSubmission(request: UpsertFulfillmentFormSubmissionRequest): Observable {\n return this.fulfillmentFormSubmissionApiService\n .upsertFulfillmentFormSubmission(request)\n .pipe(map((resp) => resp?.version));\n }\n\n /**\n * Looks up config for a given product and returns if it has forms enabled\n * @param workOrder\n */\n doesWorkOrderHaveForm(appId: string): Observable {\n return this.formConfigService\n .getFulfillmentOrderConfig(\n new GetFulfillmentOrderConfigRequest({\n appId,\n projectionFilter: {\n includeFormConfig: true,\n },\n }),\n )\n .pipe(\n map((resp) => {\n return Boolean(resp?.config?.usesFulfillmentForm);\n }),\n );\n }\n\n private getPreviewOrderActivationProductIds(\n salesOrderId: string,\n businessId: string,\n isSMB: boolean,\n ): Observable {\n const activations$ = isSMB\n ? this.customerSalesOrderService.previewOrderActivations(salesOrderId, businessId)\n : this.salesOrderService.previewOrderActivations(salesOrderId, businessId);\n\n return activations$.pipe(\n map((activations) => {\n const productIds = activations?.map((activation) => activation.productId) || [];\n return productIds.filter((productId, index) => productIds.indexOf(productId) === index);\n }),\n switchMap((productIds) => {\n const configs$ = productIds.map((productId) =>\n this.formConfigService.getFulfillmentOrderConfig(\n new GetFulfillmentOrderConfigRequest({\n appId: productId,\n release: ReleaseType.RELEASE_TYPE_PUBLISHED,\n }),\n ),\n );\n return combineLatest(configs$);\n }),\n map((responses) => {\n const resp = responses\n ?.filter((response) => response?.config?.isEnabled && response?.config?.usesFulfillmentForm)\n .map((response) => response?.config?.appId);\n return resp;\n }),\n );\n }\n\n getOrdersToRenderFormsFor(\n salesOrderId: string,\n businessId: string,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n isSMB = false,\n includeSalesInfo = false,\n ): Observable {\n return this.fulfillmentOrderService\n .getFulfillmentOrdersForSalesOrder(\n new GetFulfillmentOrdersForSalesOrderRequest({\n salesOrderId,\n businessId: businessId,\n cursor: '',\n pageSize: 100,\n projectionFilter: {\n includeSalesInfo: includeSalesInfo,\n includeAppInfo: true,\n includeBusinessInfo: true,\n },\n }),\n )\n .pipe(map((resp) => resp?.fulfillmentOrders || ([] as FulfillmentOrder[])));\n }\n}\n","import { CommonModule } from '@angular/common';\nimport {\n AfterViewInit,\n ChangeDetectionStrategy,\n Component,\n EventEmitter,\n Input,\n OnDestroy,\n OnInit,\n Output,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { FormsModule, ReactiveFormsModule, UntypedFormGroup } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatDialog } from '@angular/material/dialog';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { ActivatedRoute } from '@angular/router';\nimport { EnvironmentService } from '@galaxy/core';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { GalaxyButtonLoadingIndicatorModule } from '@vendasta/galaxy/button-loading-indicator';\nimport { GalaxyEmptyStateModule } from '@vendasta/galaxy/empty-state';\nimport { GalaxyLoadingSpinnerModule } from '@vendasta/galaxy/loading-spinner';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { OrderForm } from '@vendasta/marketplace-apps';\nimport {\n CustomFieldsInterface,\n FieldInterface,\n FieldType,\n FormAnswersInterface,\n FulfillmentFormConfigInterface,\n FulfillmentFormSubmissionInterface,\n FulfillmentOrderStatus,\n UpsertFulfillmentFormSubmissionRequest,\n UpsertFulfillmentFormSubmissionRequestInterface,\n} from '@vendasta/order-fulfillment';\nimport { ProductAnalyticsService } from '@vendasta/product-analytics';\nimport { FieldType as SalesOrdersFieldType } from '@vendasta/sales-orders';\nimport {\n CustomFieldsAnswer,\n CustomFieldsAnswers,\n OrderFormComponent,\n OrderFormFieldOptionsType,\n OrderFormInterface,\n ProductInfoInterface,\n User,\n VaOrderFormModule,\n} from '@vendasta/store';\nimport { BehaviorSubject, EMPTY, Observable, ReplaySubject, Subscription, combineLatest, of } from 'rxjs';\nimport { catchError, filter, finalize, map, shareReplay, switchMap, take, tap, withLatestFrom } from 'rxjs/operators';\nimport { getTemporaryStorageKey } from '../utils';\nimport { WorkOrderFormConfigService } from '../work-order-form-config.service';\nimport { WorkOrderPersona } from '../work-order-landing-page/interfaces';\nimport { WorkOrderModule } from '../work-order.module';\nimport { FormConfirmDialogComponent } from './form-confirm-dialog/form-confirm-dialog.component';\nimport { FormConflictDialogComponent } from './form-conflict-dialog/form-conflict-dialog.component';\nimport { FormErrorDialogComponent } from './form-error-dialog/form-error-dialog.component';\nimport { WorkOrderFormService } from './work-order-form.service';\n\n@Component({\n selector: 'work-order-form',\n templateUrl: './work-order-form.component.html',\n styleUrls: ['./work-order-form.component.scss'],\n imports: [\n CommonModule,\n FormsModule,\n ReactiveFormsModule,\n VaOrderFormModule,\n MatButtonModule,\n GalaxyLoadingSpinnerModule,\n TranslateModule,\n GalaxyButtonLoadingIndicatorModule,\n GalaxyEmptyStateModule,\n WorkOrderModule,\n MatCheckboxModule,\n MatExpansionModule,\n ],\n providers: [WorkOrderFormService],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class WorkOrderFormComponent implements OnInit, OnDestroy, AfterViewInit {\n // A list of users that will be displayed for VBC User fields on the forms. Not Required\n @Input() users: User[] = [];\n\n // The persona this user is using to access\n @Input() set persona(persona: WorkOrderPersona) {\n this.persona$$.next(persona);\n }\n\n // ID of the sales order the work order belongs to\n @Input() salesOrderId: string;\n\n // ID of the app the current form is form\n @Input() appId: string;\n\n // ID of the account group this work order belongs to.\n @Input() accountGroupId: string;\n\n // marketId of the account\n @Input() marketId: string;\n\n // status of the work order\n @Input() status: FulfillmentOrderStatus;\n\n // id of the work order\n @Input() fulfillmentOrderId: string;\n\n // Boolean to determine if officeEditableOnly and forOfficeUseOnly fields are shown to users\n @Input() showOfficeUseQuestions = false;\n\n // Fulfillment Order Form, as stored on the Fulfillment Order.\n // This will contain the configuration of the form at the time the FulfillmentOrder was created.\n // Required.\n @Input() fulfillmentOrderForm: OrderForm = new OrderForm();\n\n // A template with any extra content to be included in the header\n @Input() extraHeaderContent: TemplateRef;\n\n // A template with any extra buttons to be included in the bottomActionsContent\n @Input() extraActionButtons: TemplateRef;\n\n // the partner id of the reseller (if any)\n @Input() resellerPartnerId: string;\n\n // Boolean to determine if the form is in a read only state\n @Input() readOnly: boolean;\n\n // This event will be thrown when the change on the form forces an update on the fulfillment order status\n @Output() fulfillmentOrderStatusChanged = new EventEmitter();\n\n // This event will be emitted when the form is submitted\n @Output() submitClicked: EventEmitter = new EventEmitter();\n\n @Output() doneLoading: EventEmitter = new EventEmitter();\n\n form: UntypedFormGroup = new UntypedFormGroup({});\n productInfo$$: ReplaySubject = new ReplaySubject(1);\n orderForm$$: ReplaySubject = new ReplaySubject(1);\n fileUploadUrl: string;\n @ViewChild('fulfillmentForm') public orderFormComponent: OrderFormComponent;\n answers$: Observable;\n submitLoading$$: BehaviorSubject = new BehaviorSubject(false);\n saveProgressLoading$$: BehaviorSubject = new BehaviorSubject(false);\n hasForm$: Observable;\n submittedSubject$$: BehaviorSubject = new BehaviorSubject(false);\n formSubmitted$$: BehaviorSubject = new BehaviorSubject(false);\n foStatus$$: ReplaySubject = new ReplaySubject(1);\n persona$$: BehaviorSubject = new BehaviorSubject(WorkOrderPersona.CP);\n underReview$$: BehaviorSubject = new BehaviorSubject(false);\n subscriptions: Subscription[] = [];\n latestSubmission$: Observable;\n private lastViewedTimestamp$$: BehaviorSubject = new BehaviorSubject('0');\n private config$: Observable;\n WorkOrderPersona = WorkOrderPersona;\n\n constructor(\n private workOrderFormV2Service: WorkOrderFormService,\n private snackbarService: SnackbarService,\n private environmentService: EnvironmentService,\n private dialog: MatDialog,\n private workOrderFormConfigService: WorkOrderFormConfigService,\n private productAnalyticsService: ProductAnalyticsService,\n private route: ActivatedRoute,\n ) {}\n\n ngOnInit(): void {\n this.fileUploadUrl = `https://order-fulfillment-api-${this.environmentService.getEnvironmentString()}.apigateway.co/fulfillment-form/attachments/upload`;\n this.config$ = this.workOrderFormConfigService\n .getFormConfig(this.salesOrderId, this.appId, this.accountGroupId)\n .pipe(\n tap(() => {\n this.foStatus$$.next(this.status);\n }),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n this.hasForm$ = this.config$.pipe(map((config) => config?.orderForm?.length > 0));\n\n this.latestSubmission$ = this.workOrderFormConfigService\n .getLatestSubmission(this.salesOrderId, this.appId, this.accountGroupId)\n .pipe(\n take(1),\n tap((latestSubmission) => {\n if (latestSubmission) {\n this.lastViewedTimestamp$$.next(latestSubmission?.version || '0');\n }\n }),\n shareReplay({ bufferSize: 1, refCount: true }),\n );\n\n this.subscriptions.push(\n this.persona$$\n .pipe(\n switchMap((persona) =>\n this.workOrderFormV2Service.getProductInfo(this.appId, this.resellerPartnerId, this.marketId, persona),\n ),\n map((productInfo) => [productInfo]),\n shareReplay({ refCount: true, bufferSize: 1 }),\n )\n .subscribe(this.productInfo$$),\n );\n\n this.answers$ = combineLatest([this.latestSubmission$, this.productInfo$$]).pipe(\n filter(([submission, productInfo]) => !!submission && !!productInfo),\n map(([submission, productInfo]) =>\n this.getCustomFieldsAnswersFromFulfillmentFormSubmission(submission, productInfo?.[0]),\n ),\n tap(() => (this.form = new UntypedFormGroup({}))),\n shareReplay({ refCount: true, bufferSize: 1 }),\n );\n\n this.subscriptions.push(\n this.config$\n .pipe(\n withLatestFrom(this.productInfo$$),\n map(([config, productInfo]) => {\n const info = productInfo?.[0];\n return [\n {\n appId: info?.productId,\n ...config,\n addonId: info?.addonInfo?.[0]?.addonId,\n customFields: config?.orderForm?.map((cf) => {\n const res: OrderFormFieldOptionsType = {\n ...cf,\n options: cf?.optionsWithLabels,\n } as OrderFormFieldOptionsType;\n return res;\n }),\n },\n ];\n }),\n shareReplay({ refCount: true, bufferSize: 1 }),\n )\n .subscribe(this.orderForm$$),\n );\n\n this.subscriptions.push(\n combineLatest([this.foStatus$$, this.persona$$]).subscribe(([foStatus, persona]) => {\n this.underReview$$.next(\n foStatus === FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_IN_REVIEW && persona === WorkOrderPersona.VENDOR,\n );\n }),\n this.persona$$.subscribe((persona) => {\n this.formSubmitted$$.next(\n Boolean(\n this.status &&\n this.status !== FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED &&\n persona !== WorkOrderPersona.VENDOR,\n ),\n );\n }),\n );\n combineLatest([this.orderForm$$, this.productInfo$$])\n .pipe(take(1))\n .subscribe(() => this.doneLoading.emit());\n }\n\n ngAfterViewInit(): void {\n // Get the fragment from the url when fragment$ fires and scroll to the appropriate section\n const fragment$: Observable = this.route.fragment;\n this.subscriptions.push(\n fragment$.subscribe((fragment) => {\n if (fragment) {\n const element = document.getElementById(fragment);\n if (element) {\n element.scrollIntoView();\n }\n }\n }),\n );\n }\n\n private getCustomFieldsAnswersFromFulfillmentFormSubmission(\n submission: FulfillmentFormSubmissionInterface,\n productInfo: ProductInfoInterface,\n ): CustomFieldsAnswers[] {\n const answers: CustomFieldsAnswers[] = [];\n submission?.formAnswers?.forEach((formAnswer: FormAnswersInterface) => {\n const cfAnswers: CustomFieldsAnswer[] = [];\n formAnswer?.customFields?.forEach((cf) => {\n cf?.fields?.forEach((f) => {\n cfAnswers.push({\n answer: f.answer,\n fieldId: f.fieldId,\n });\n });\n });\n let customFieldsAnswersToAdd: CustomFieldsAnswers;\n if (productInfo?.addonInfo) {\n customFieldsAnswersToAdd = {\n productID: productInfo.productId,\n customFieldsAnswers: cfAnswers,\n addonKey: {\n appId: productInfo.productId,\n addonId: productInfo?.addonInfo?.[0]?.addonId,\n },\n };\n } else {\n customFieldsAnswersToAdd = {\n productID: submission.appId,\n customFieldsAnswers: cfAnswers,\n };\n }\n // if formId matches, then it should be first so UI will render it's answers\n formAnswer.formId === this.appId\n ? answers.unshift(customFieldsAnswersToAdd)\n : answers.push(customFieldsAnswersToAdd);\n });\n return answers;\n }\n\n salesOrderFieldTypeToFieldType(salesOrderFieldType: SalesOrdersFieldType): FieldType {\n switch (salesOrderFieldType) {\n case SalesOrdersFieldType.CHECKBOX:\n return FieldType.FIELD_TYPE_CHECKBOX;\n case SalesOrdersFieldType.DROPDOWN:\n return FieldType.FIELD_TYPE_DROPDOWN;\n case SalesOrdersFieldType.FILE:\n return FieldType.FIELD_TYPE_FILE;\n case SalesOrdersFieldType.TEXT:\n return FieldType.FIELD_TYPE_TEXT;\n case SalesOrdersFieldType.TEXTAREA:\n return FieldType.FIELD_TYPE_TEXT_AREA;\n case SalesOrdersFieldType.VBCUSER:\n return FieldType.FIELD_TYPE_VBCUSER;\n }\n return FieldType.FIELD_TYPE_NOT_SPECIFIED;\n }\n\n getCustomFieldValues(): CustomFieldsInterface[] {\n const customFields: CustomFieldsInterface[] = this.orderFormComponent.getCustomFormData().map((cf) => {\n return {\n fields: cf.fields.map((field) => {\n return {\n ...field,\n fieldType: this.salesOrderFieldTypeToFieldType(field.fieldType),\n } as FieldInterface;\n }),\n } as CustomFieldsInterface;\n });\n return customFields;\n }\n\n handleSubmitClicked(): void {\n this.submitClicked.emit();\n this.submitLoading$$.next(true);\n const customFields = this.getCustomFieldValues().filter((cf) => cf?.fields?.length > 0);\n let req: UpsertFulfillmentFormSubmissionRequestInterface;\n\n if (this.form.valid) {\n this.dialog\n .open(FormConfirmDialogComponent, {})\n .afterClosed()\n .pipe(\n switchMap((result) => {\n if (result) {\n req = {\n salesOrderId: this.salesOrderId,\n appId: this.appId,\n businessId: this.accountGroupId,\n lastViewedTimestamp: this.lastViewedTimestamp$$.getValue(),\n formAnswers: [\n {\n customFields: customFields,\n formId: this.appId,\n },\n ],\n };\n return this.workOrderFormV2Service\n .updateFormSubmission(new UpsertFulfillmentFormSubmissionRequest(req))\n .pipe(\n tap(() =>\n this.fulfillmentOrderStatusChanged.emit(FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_IN_REVIEW),\n ),\n take(1),\n catchError((err) => {\n if (err.status === 409) {\n const tempStorageKey = getTemporaryStorageKey(this.accountGroupId, this.appId);\n if (tempStorageKey) {\n sessionStorage.removeItem(tempStorageKey);\n }\n this.dialog.open(FormConflictDialogComponent, {\n width: '660px',\n });\n return EMPTY;\n }\n throw err;\n }),\n finalize(() => this.submitLoading$$.next(false)),\n );\n }\n this.submitLoading$$.next(false);\n return EMPTY;\n }),\n switchMap((version) => {\n return of(version);\n }),\n )\n .subscribe(\n (version) => {\n this.snackbarService.openSuccessSnack('FORM_V2.SUBMIT_SUCCESS');\n this.lastViewedTimestamp$$.next(version);\n\n this.submittedSubject$$.next(true);\n this.formSubmitted$$.next(this.persona$$.getValue() !== WorkOrderPersona.VENDOR);\n\n // clear the form data from cache\n const tempStorageKey = getTemporaryStorageKey(this.accountGroupId, this.appId);\n if (tempStorageKey) {\n sessionStorage.removeItem(tempStorageKey);\n }\n },\n () => this.snackbarService.openErrorSnack('FORM_V2.SUBMIT_ERROR'),\n );\n } else {\n // mark all as touched to highlight missing required fields\n this.form.markAllAsTouched();\n this.submitLoading$$.next(false);\n this.dialog.open(FormErrorDialogComponent, {});\n }\n }\n\n private areTouchedFormControlsValid(): boolean {\n const touchedControls: UntypedFormGroup = new UntypedFormGroup({});\n const controls = this.form.controls;\n for (const key in controls) {\n const control = controls[key];\n for (const k in control?.['controls']) {\n const innerControl = control['controls'][k];\n if (innerControl.touched) {\n touchedControls.addControl(k, innerControl);\n }\n }\n }\n return touchedControls.valid;\n }\n\n handleSaveProgressClicked(): void {\n if (!this.areTouchedFormControlsValid()) {\n this.snackbarService.openErrorSnack('FORM_V2.SAVE_PROGRESS_ERROR_INVALID');\n return;\n }\n\n this.saveProgressLoading$$.next(true);\n const customFields = this.getCustomFieldValues().filter((cf) => cf?.fields?.length > 0);\n\n const req: UpsertFulfillmentFormSubmissionRequestInterface = {\n salesOrderId: this.salesOrderId,\n appId: this.appId,\n businessId: this.accountGroupId,\n lastViewedTimestamp: this.lastViewedTimestamp$$.getValue(),\n formAnswers: customFields.map((cf, i) => {\n return {\n customFields: [cf],\n formId: i.toString(),\n } as FormAnswersInterface;\n }),\n };\n this.workOrderFormV2Service\n .updateFormSubmission(new UpsertFulfillmentFormSubmissionRequest(req))\n .pipe(\n take(1),\n finalize(() => this.saveProgressLoading$$.next(false)),\n )\n .subscribe(\n (version) => {\n this.snackbarService.openSuccessSnack('FORM_V2.SAVE_PROGRESS_SUCCESS');\n this.lastViewedTimestamp$$.next(version);\n\n // clear the form data from cache\n const tempStorageKey = getTemporaryStorageKey(this.accountGroupId, this.appId);\n if (tempStorageKey) {\n sessionStorage.removeItem(tempStorageKey);\n }\n },\n () => this.snackbarService.openErrorSnack('FORM_V2.SAVE_PROGRESS_ERROR'),\n );\n }\n\n handleSaveChangesClicked = (): void => {\n this.handleSaveProgressClicked();\n this.productAnalyticsService.trackEvent(\n 'save-progress-fulfillment-form-button-clicked',\n 'work-order',\n 'button-clicked',\n );\n };\n\n ngOnDestroy(): void {\n this.subscriptions.forEach((sub) => {\n sub.unsubscribe();\n });\n }\n}\n","\n
\n \n \n \n
\n \n \n \n {{ 'FORM_V2.SUBMIT_FORM' | translate }}\n \n \n\n \n \n {{ 'FORM_V2.SAVE_PROGRESS' | translate }}\n \n \n\n \n \n\n \n
\n \n \n {{ 'FORM_V2.SAVE_CHANGES' | translate }}\n \n \n\n \n\n
\n {{ 'FORM_V2.LAST_UPDATED' | translate: { timestamp } }}\n
\n
\n
\n
\n
\n","import { CanDeactivate } from '@angular/router';\nimport { Component, HostListener, Injectable } from '@angular/core';\nimport { Observable } from 'rxjs';\n\n@Injectable({ providedIn: 'root' })\nexport class WorkOrderFormUnsavedChangesGuard implements CanDeactivate {\n canDeactivate(component?: WorkOrderFormUnsavedChangesInterface): boolean | Observable {\n const workOrderUnsavedChangesComponent: WorkOrderUnsavedChangesComponent =\n component?.getWorkOrderDetailsComponent();\n if (\n workOrderUnsavedChangesComponent?.canDeactivate instanceof Function &&\n workOrderUnsavedChangesComponent?.pendingChangesDialog instanceof Function\n ) {\n if (workOrderUnsavedChangesComponent.canDeactivate()) {\n return true;\n }\n return workOrderUnsavedChangesComponent.pendingChangesDialog();\n } else {\n return true;\n }\n }\n}\n\n@Injectable({ providedIn: 'root' })\nexport class PublicWorkOrderFormUnsavedChangesGuard implements CanDeactivate {\n canDeactivate(component?: WorkOrderUnsavedChangesComponent): boolean | Observable {\n if (component?.canDeactivate instanceof Function && component?.pendingChangesDialog instanceof Function) {\n if (component.canDeactivate()) {\n return true;\n }\n return component.pendingChangesDialog();\n } else {\n return true;\n }\n }\n}\n\nexport interface WorkOrderFormUnsavedChangesInterface {\n getWorkOrderDetailsComponent: () => WorkOrderUnsavedChangesComponent;\n}\n\nexport interface WorkOrderUnsavedChangesComponentInterface {\n canDeactivate(): boolean;\n pendingChangesDialog(): boolean | Observable;\n}\n\n@Component({\n template: '',\n standalone: false,\n})\nexport abstract class WorkOrderUnsavedChangesComponent implements WorkOrderUnsavedChangesComponentInterface {\n abstract canDeactivate(): boolean;\n abstract pendingChangesDialog(): boolean | Observable;\n\n @HostListener('window:beforeunload', ['$event'])\n protected beforeUnloadEvent($event: BeforeUnloadEvent): void {\n if (!this.canDeactivate()) {\n $event.returnValue = true;\n }\n }\n}\n","import { ConnectedPosition } from '@angular/cdk/overlay';\nimport { CommonModule } from '@angular/common';\nimport { Component, Input } from '@angular/core';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { MatIconModule } from '@angular/material/icon';\nimport { Router } from '@angular/router';\nimport { TranslateModule, TranslateService } from '@ngx-translate/core';\nimport { PopoverPositions } from '@vendasta/galaxy/popover';\nimport { GalaxyTooltipModule } from '@vendasta/galaxy/tooltip';\nimport { FulfillmentOrder, FulfillmentOrderStatus } from '@vendasta/order-fulfillment';\n\n@Component({\n selector: 'work-order-checklist',\n imports: [CommonModule, MatExpansionModule, GalaxyTooltipModule, TranslateModule, MatIconModule],\n templateUrl: './work-order-checklist.component.html',\n styleUrls: ['./work-order-checklist.component.scss'],\n})\nexport class WorkOrderChecklistComponent {\n @Input() workOrders: FulfillmentOrder[] = [];\n\n public FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED = FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED;\n\n constructor(\n private translateService: TranslateService,\n private router: Router,\n ) {}\n\n checklistTooltipText = this.translateService.instant('CHECKLIST.TOOLTIP_TEXT');\n positions: ConnectedPosition[] = [{ ...PopoverPositions.BottomLeft }];\n\n handleChecklistClick(appId: string): void {\n this.router.navigate([], { fragment: appId });\n }\n}\n","\n \n \n \n info_outline\n \n {{ 'CHECKLIST.TITLE' | translate }}\n \n \n \n\n","import { CommonModule } from '@angular/common';\nimport { Component, Input, OnInit } from '@angular/core';\nimport { MatExpansionModule } from '@angular/material/expansion';\nimport { AccountGroupService, ProjectionFilter } from '@galaxy/account-group';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { Observable, map } from 'rxjs';\n\ninterface AccountGroupContext {\n companyName: string;\n address: string;\n address2: string;\n workNumber: string[];\n}\n@Component({\n selector: 'work-order-context',\n imports: [CommonModule, MatExpansionModule, TranslateModule],\n templateUrl: './work-order-context.component.html',\n styleUrls: ['./work-order-context.component.scss'],\n})\nexport class WorkOrderContextComponent implements OnInit {\n @Input() accountGroupId: string;\n accountGroup$: Observable;\n\n constructor(private accountGroupService: AccountGroupService) {}\n\n ngOnInit(): void {\n this.accountGroup$ = this.accountGroupService\n .get(this.accountGroupId, new ProjectionFilter({ napData: true }))\n .pipe(\n map((business) => {\n return {\n companyName: business?.napData?.companyName,\n address: [business?.napData?.address, business?.napData?.city, business?.napData?.state]\n .filter(Boolean)\n ?.join(', '),\n address2: [business?.napData?.zip, business?.napData?.country].filter(Boolean)?.join(', '),\n workNumber: business?.napData?.workNumber,\n };\n }),\n );\n }\n}\n","@if (accountGroup$ | async; as accountGroup) {\n \n \n \n {{ 'CONTEXT.TITLE' | translate }}\n \n \n\n @if (accountGroup.companyName) {\n

{{ accountGroup.companyName }}

\n } @else {\n \n }\n\n

\n {{ accountGroup.address }}\n

\n

\n {{ accountGroup.address2 }}\n

\n\n @if (accountGroup.workNumber) {\n
\n

\n {{ 'CONTEXT.PHONE' | translate }}\n

\n

{{ accountGroup.workNumber }}

\n
\n }\n
\n}\n","import { Component } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MatDialogModule, MatDialogRef } from '@angular/material/dialog';\nimport { MatButtonModule } from '@angular/material/button';\nimport { TranslateModule } from '@ngx-translate/core';\n\nexport enum WorkOrderUnsavedChangesDialogResult {\n NONE,\n CONTINUE_EDITING,\n DISCARD_CHANGES,\n}\n\n@Component({\n selector: 'work-order-unsaved-changes-dialog',\n imports: [CommonModule, MatDialogModule, MatButtonModule, TranslateModule],\n templateUrl: './work-order-unsaved-changes-dialog.component.html',\n styleUrls: ['./work-order-unsaved-changes-dialog.component.scss'],\n})\nexport class WorkOrderUnsavedChangesDialogComponent {\n WorkOrderUnsavedChangesDialogResult = WorkOrderUnsavedChangesDialogResult;\n\n constructor(public dialogRef: MatDialogRef) {}\n\n continueEditing() {\n this.dialogRef.close(WorkOrderUnsavedChangesDialogResult.CONTINUE_EDITING);\n }\n}\n","

{{ 'WORK_ORDER.ORDER_FORM.UNSAVED_CHANGES' | translate }}

\n\n {{ 'WORK_ORDER.ORDER_FORM.UNSAVED_WARNING' | translate }}\n\n\n \n \n\n","import { CommonModule } from '@angular/common';\nimport { AfterViewInit, Component, DestroyRef, Input, OnDestroy, OnInit, QueryList, ViewChildren } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { UntypedFormGroup } from '@angular/forms';\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatDialog, MatDialogModule } from '@angular/material/dialog';\nimport { MatIconModule } from '@angular/material/icon';\nimport { ActivatedRoute } from '@angular/router';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { GalaxyPageModule } from '@vendasta/galaxy/page';\nimport { GalaxyPopoverModule, PopoverPositions } from '@vendasta/galaxy/popover';\nimport { SnackbarService } from '@vendasta/galaxy/snackbar-service';\nimport { FulfillmentOrderConfig, FulfillmentOrderConfigApiService } from '@vendasta/marketplace-apps';\nimport { FulfillmentOrder, FulfillmentOrderApiService, FulfillmentOrderStatus } from '@vendasta/order-fulfillment';\nimport { User as LibUser } from '@vendasta/users';\nimport {\n BehaviorSubject,\n Observable,\n Subscription,\n combineLatest,\n forkJoin,\n from,\n map,\n mergeMap,\n of,\n switchMap,\n take,\n tap,\n toArray,\n} from 'rxjs';\nimport { SendEmailDialogComponent, SendEmailDialogResp } from '../send-email-dialog/send-email-dialog.component';\nimport { StatusBadgeComponent } from '../status-badge/status-badge.component';\nimport { User } from '../user';\nimport {\n clearUnsavedChangesFromSessionStorage,\n doesWorkOrderFormHaveUnsavedChanges,\n getTemporaryStorageKey,\n} from '../utils';\nimport { WorkOrderChecklistComponent } from '../work-order-checklist/work-order-checklist.component';\nimport { WorkOrderContextComponent } from '../work-order-context/work-order-context.component';\nimport { WorkOrderFormComponent } from '../work-order-form/work-order-form.component';\nimport { WorkOrderFormService } from '../work-order-form/work-order-form.service';\nimport { WorkOrderPersona } from '../work-order-landing-page/interfaces';\nimport { WorkOrderModule } from '../work-order.module';\nimport {\n WorkOrderUnsavedChangesDialogComponent,\n WorkOrderUnsavedChangesDialogResult,\n} from './work-order-unsaved-changes-dialog/work-order-unsaved-changes-dialog.component';\nimport { WorkOrderUnsavedChangesComponent } from './work-orders-unsaved-changes.guard';\n\n@Component({\n selector: 'work-order-details',\n imports: [\n CommonModule,\n WorkOrderModule,\n WorkOrderFormComponent,\n GalaxyPageModule,\n TranslateModule,\n MatIconModule,\n MatButtonModule,\n MatDialogModule,\n GalaxyPopoverModule,\n WorkOrderChecklistComponent,\n WorkOrderContextComponent,\n StatusBadgeComponent,\n ],\n templateUrl: './work-order-details.component.html',\n styleUrls: ['./work-order-details.component.scss'],\n})\nexport class WorkOrderDetailsComponent\n extends WorkOrderUnsavedChangesComponent\n implements AfterViewInit, OnInit, OnDestroy\n{\n @Input() partnerId: string;\n @Input() marketId: string;\n @Input() businessId: string;\n @Input() salesOrderId: string;\n @Input() persona: WorkOrderPersona = WorkOrderPersona.CP;\n @Input() set users(users: User[]) {\n this.allUsers = users?.map((user) => this.convertToLibUser(user)) || [];\n }\n @Input() showOfficeUseQuestions = true;\n @Input() previousPageUrl: string;\n @Input() hidePageWrapper = false;\n @Input() allowUserManagement = false;\n\n private workOrders$$ = new BehaviorSubject([]);\n readonly workOrders$ = this.workOrders$$.asObservable();\n readonly detailsNeeded$ = this.workOrders$$.pipe(\n map((workOrders) => {\n if (!workOrders?.length) {\n return false;\n }\n return workOrders.some((wo) => wo.status === FulfillmentOrderStatus.FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED);\n }),\n );\n private refreshWorkOrders$$ = new BehaviorSubject(null);\n allUsers: LibUser[];\n WorkOrderPersona = WorkOrderPersona;\n\n subscriptions: Subscription[] = [];\n\n @ViewChildren(StatusBadgeComponent) statusBadges!: QueryList;\n @ViewChildren(WorkOrderFormComponent) workOrderForms: QueryList;\n combinedFormGroup: UntypedFormGroup = new UntypedFormGroup({});\n\n popoverPosition = [PopoverPositions.BottomRight];\n private woFormDoneLoadingMap$$: BehaviorSubject> = new BehaviorSubject(\n new Map(),\n );\n woFormDoneLoading$: Observable;\n\n constructor(\n private route: ActivatedRoute,\n private workOrderFormService: WorkOrderFormService,\n public dialog: MatDialog,\n private snackbarService: SnackbarService,\n private fulfillmentOrderService: FulfillmentOrderApiService,\n private fulfillmentOrderConfigApiService: FulfillmentOrderConfigApiService,\n private destroyRef: DestroyRef,\n ) {\n super();\n }\n\n ngOnInit(): void {\n this.refreshWorkOrders$$\n .pipe(\n switchMap(() =>\n this.workOrderFormService.getOrdersToRenderFormsFor(\n this.salesOrderId,\n this.businessId,\n this.persona === WorkOrderPersona.SMB,\n ),\n ),\n switchMap((workOrders) => {\n return this.filterOrdersWithForms(workOrders);\n }),\n takeUntilDestroyed(this.destroyRef),\n )\n .subscribe((workOrders) => this.workOrders$$.next(workOrders));\n\n this.workOrders$.pipe(take(1)).subscribe((workOrders) => {\n workOrders.forEach((_, i) => {\n const loadingMap: Map = this.woFormDoneLoadingMap$$.getValue();\n loadingMap.set(i, false);\n this.woFormDoneLoadingMap$$.next(loadingMap);\n });\n });\n\n this.woFormDoneLoading$ = this.woFormDoneLoadingMap$$.pipe(\n map((woLoadingMap) => {\n const loadingValues: boolean[] = Array.from(woLoadingMap.values());\n return loadingValues?.length > 0 && loadingValues.every((value) => value);\n }),\n );\n }\n\n ngAfterViewInit(): void {\n const fragment$: Observable = this.route.fragment;\n const statusBadges$: Observable = this.statusBadges.changes;\n this.subscriptions.push(\n combineLatest([fragment$, statusBadges$])\n .pipe()\n .subscribe(([fragment, statusBadges]: [string, QueryList]) => {\n const fragmentBadge = statusBadges.find((sb) => sb?.['fulfillmentOrderId'] === fragment);\n if (fragmentBadge) {\n // page is done loading and found the correct fragment\n document.getElementById(fragment)?.scrollIntoView();\n }\n }),\n );\n this.workOrderForms.changes.pipe(map((a) => a.toArray())).subscribe((workOrderForms) => {\n workOrderForms.forEach((woFormComp) => {\n const key: string = getTemporaryStorageKey(woFormComp.accountGroupId, woFormComp.appId);\n if (!this.combinedFormGroup.contains(key)) {\n this.combinedFormGroup.setControl(key, woFormComp.form);\n }\n });\n });\n }\n\n ngOnDestroy(): void {\n this.subscriptions.forEach((sub) => {\n sub.unsubscribe();\n });\n }\n\n refreshWorkOrders(): void {\n this.refreshWorkOrders$$.next(null);\n }\n\n statusChanged(newStatus: FulfillmentOrderStatus, wo: FulfillmentOrder): void {\n const actualWorkOrders: FulfillmentOrder[] = this.workOrders$$.getValue();\n const index: number = actualWorkOrders.findIndex((w) => w.fulfillmentOrderId === wo.fulfillmentOrderId);\n if (index > -1) {\n actualWorkOrders[index].status = newStatus;\n this.workOrders$$.next(actualWorkOrders);\n }\n }\n\n openSendEmailDialog(): void {\n const afterClosed$: Observable = this.dialog\n .open(SendEmailDialogComponent, {\n width: '600px',\n data: {\n allUsers: this.allUsers,\n partnerId: this.partnerId,\n businessId: this.businessId,\n allowUserManagement: this.allowUserManagement,\n },\n })\n .afterClosed();\n\n combineLatest([this.workOrders$$, afterClosed$])\n .pipe(\n take(1),\n switchMap(([workOrders, resp]) => {\n if (!resp?.userIds || resp?.userIds?.length === 0) {\n return of(undefined);\n }\n\n const itemNames = workOrders.map((wo) => wo.appInfo.appName);\n return from(resp.userIds).pipe(\n mergeMap((userId) =>\n this.fulfillmentOrderService.sendFulfillmentOrder({\n businessId: this.businessId,\n salesOrderId: this.salesOrderId,\n userId: userId,\n itemNames: itemNames,\n }),\n ),\n toArray(),\n );\n }),\n )\n .subscribe({\n next: (resp) => {\n if (resp) {\n this.snackbarService.openSuccessSnack('Successfully sent email');\n }\n },\n error: () => this.snackbarService.openErrorSnack('Failed to send email'),\n });\n }\n\n filterOrdersWithForms(orders: FulfillmentOrder[]): Observable {\n if (orders.length === 0) {\n return of([]);\n }\n\n const apiCalls: Observable[] = orders.map((order) => {\n return this.fulfillmentOrderConfigApiService\n .getFulfillmentOrderConfig({\n appId: order.appId,\n })\n .pipe(map((response) => response.config));\n });\n\n return forkJoin(apiCalls).pipe(\n map((configs) =>\n orders.filter((order) => configs.find((config) => config.appId === order.appId)?.usesFulfillmentForm),\n ),\n );\n }\n\n canDeactivate(): boolean {\n return !doesWorkOrderFormHaveUnsavedChanges(this.combinedFormGroup);\n }\n\n pendingChangesDialog(): boolean | Observable {\n this.dialog.closeAll();\n return this.dialog\n .open(WorkOrderUnsavedChangesDialogComponent)\n .afterClosed()\n .pipe(\n map((result: WorkOrderUnsavedChangesDialogResult) => {\n return result === WorkOrderUnsavedChangesDialogResult.CONTINUE_EDITING ? false : !!result;\n }),\n tap((result: boolean) => {\n if (result) {\n clearUnsavedChangesFromSessionStorage(this.combinedFormGroup);\n }\n }),\n );\n }\n\n handleDoneLoading(index: number): void {\n const loadingMap: Map = this.woFormDoneLoadingMap$$.getValue();\n loadingMap.set(index, true);\n this.woFormDoneLoadingMap$$.next(loadingMap);\n }\n\n public convertToLibUser(user: User): LibUser {\n return {\n userId: user.userId,\n unifiedId: user.unifiedUserId,\n email: user.email,\n firstName: user.firstName,\n lastName: user.lastName,\n phoneNumber: user.phoneNumber,\n } as LibUser;\n }\n}\n","\n \n {{ 'FULFILLMENT.FULFILLMENT_FORMS' | translate }}\n \n \n \n \n \n \n \n \n \n \n\n\n\n \n
\n
\n
\n \n
\n \n
\n
\n
\n \n
\n
\n
\n
\n\n
\n
\n \n 1\" [workOrders]=\"workOrders\">\n
\n
\n
\n
\n
\n\n\n 0 || allowUserManagement)\"\n (click)=\"openSendEmailDialog()\"\n data-action=\"work-order-form-share-button\"\n >\n person_add\n {{ 'FULFILLMENT.SHARE' | translate }}\n \n \n \n \n \n {{ 'SHARE.NO_USERS_TOOLTIP' | translate }}\n \n\n","import { Injectable } from '@angular/core';\nimport {\n FulfillmentOrder,\n FulfillmentOrderApiService,\n FulfillmentOrderProjectionFilter,\n GetFulfillmentOrdersForSalesOrderRequest,\n GetFulfillmentOrdersForSalesOrderResponse,\n} from '@vendasta/order-fulfillment';\nimport { BehaviorSubject, EMPTY, Observable } from 'rxjs';\nimport { catchError, expand, publishReplay, refCount, scan, take, tap } from 'rxjs/operators';\n\nconst PAGE_SIZE = 200;\n\n@Injectable({\n providedIn: 'root',\n})\nexport class WorkOrderSalesOrderSummaryService {\n private loadingWorkOrders$$: BehaviorSubject = new BehaviorSubject(false);\n public readonly loadingWorkOrders$: Observable = this.loadingWorkOrders$$.asObservable();\n\n constructor(private fulfillmentOrderApiService: FulfillmentOrderApiService) {}\n\n getWorkOrdersForSalesOrder(\n salesOrderId: string,\n businessId: string,\n shouldIncludeFulfillmentFormInfo?: boolean,\n ): Observable {\n this.loadingWorkOrders$$.next(true);\n\n const req = new GetFulfillmentOrdersForSalesOrderRequest({\n salesOrderId,\n businessId,\n pageSize: PAGE_SIZE,\n });\n if (shouldIncludeFulfillmentFormInfo) {\n req.projectionFilter = {\n includeFulfillmentFormInfo: true,\n };\n }\n\n return this.fulfillmentOrderApiService.getFulfillmentOrdersForSalesOrder(req).pipe(\n take(1),\n expand((resp: GetFulfillmentOrdersForSalesOrderResponse) => {\n if (resp?.hasMore) {\n req.cursor = resp?.nextCursor;\n this.fulfillmentOrderApiService.getFulfillmentOrdersForSalesOrder(req);\n } else {\n return EMPTY;\n }\n }),\n scan((prev: FulfillmentOrder[], curr: GetFulfillmentOrdersForSalesOrderResponse) => {\n if (curr?.fulfillmentOrders?.length > 0) {\n prev.push(...curr.fulfillmentOrders);\n }\n return prev;\n }, []),\n catchError((err) => {\n this.loadingWorkOrders$$.next(false);\n throw err;\n }),\n publishReplay(1),\n refCount(),\n tap(() => this.loadingWorkOrders$$.next(false)),\n );\n }\n}\n","export { WorkOrderModule } from './work-order.module';\nexport { User } from './user';\nexport { WorkOrderSalesOrderSummaryComponent } from './work-order-sales-order-summary/work-order-sales-order-summary.component';\nexport { WorkOrderSalesOrderSummaryService } from './work-order-sales-order-summary/work-order-sales-order-summary.service';\nexport { WorkOrderSalesOrderSummaryInfo } from './work-order-sales-order-summary/work-order-sales-order-summary.component';\nexport {\n displayedStatusToFulfillmentOrderStatus,\n fulfillmentOrderStatusToString,\n DisplayedStatusValuesEnum,\n hasFulfillmentForm,\n statusColorMap,\n doesWorkOrderFormHaveUnsavedChanges,\n getTemporaryStorageKey,\n clearUnsavedChangesFromSessionStorage,\n} from './utils';\nexport { OrderDetailSection } from './work-order-landing-page/constants';\nexport { WorkOrderPersona } from './work-order-landing-page/interfaces';\nexport { WorkOrderFormComponent } from './work-order-form/work-order-form.component';\nexport { FulfillmentOrderPipesModule } from './work-order-landing-page/pipes/fulfillment-order-pipes.module';\nexport { DisplayFulfillmentOrderStatusPipe } from './work-order-landing-page/pipes/display-fulfillment-order-status.pipe';\nexport { WorkOrderSlidingNotifierService } from './work-order-sliding-notifier/work-order-sliding-notifier.service';\nexport { StatusBadgeComponent } from './status-badge/status-badge.component';\nexport { WorkOrderFormConfigService } from './work-order-form-config.service';\nexport { WorkOrderFormService } from './work-order-form/work-order-form.service';\nexport * from './work-order-landing-page/pending-approvals/pending-approvals.interface';\nexport { SendEmailDialogComponent, SendEmailDialogResp } from './send-email-dialog/send-email-dialog.component';\nexport { WorkOrderDetailsComponent } from './work-order-details/work-order-details.component';\nexport {\n WorkOrderUnsavedChangesComponent,\n WorkOrderFormUnsavedChangesGuard,\n WorkOrderFormUnsavedChangesInterface,\n PublicWorkOrderFormUnsavedChangesGuard,\n} from './work-order-details/work-orders-unsaved-changes.guard';\nexport {\n WorkOrderUnsavedChangesDialogComponent,\n WorkOrderUnsavedChangesDialogResult,\n} from './work-order-details/work-order-unsaved-changes-dialog/work-order-unsaved-changes-dialog.component';\n","export * from './lib';\n"],"mappings":"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","names":["en_devel_default","init_en_devel","__esmMin","enumStringToValue$8","enumRef","value","enumStringToValue$7","enumStringToValue$6","enumStringToValue$5","enumStringToValue$3","enumStringToValue$1","enumStringToValue","BlameSource","ValidationErrorCodes","Frequency","Consumer","OrderItemStatus","OrderStatus","BillingFrequency","ChangeSpendRequestStatus","FailureReason","FieldType","FulfillmentOrderStatus","PendingActivationStatus","SortDirection","TimeField","Blame","EditionChangeInformation","OrderItem","ProductActivationInformation","Reasons","Order","ChangeRequestEventExternalData","ChangeSpendRequest","ChangeSpendRequestExternalData","FieldMask","ActivationDateIdentifiers","ActivationDates","ActivationFailureDetails","CancelEditionChangeRequest","CancelOrderItemWaitingForConsumerInformationRequest","ListChangeSpendRequestHistoryResponseChangeSpendRequestEvents","ChangeSpendRequestRequest","CreateOrderRequest","CreateOrderResponse","DeactivateImmediatelyRequest","DismissFailedOrderItemRequest","GetCurrentSpendRequest","GetCurrentSpendResponse","GetMultiActivationDatesRequest","GetMultiActivationDatesResponse","GetMultiActivationErrorsForOrderItemsRequest","GetMultiActivationErrorsForOrderItemsResponse","GetMultiScheduledDeactivationsForBusinessRequest","GetMultiScheduledDeactivationsForBusinessResponse","GetOrderByIdempotencyKeyRequest","GetOrderByIdempotencyKeyResponse","ListChangeSpendRequestHistoryRequest","ListChangeSpendRequestHistoryResponse","ListChangeSpendRequestsRequestListChangeSpendRequestsFilterOptions","ListChangeSpendRequestHistoryRequestListChangeSpendRequestsHistoryFilterOptions","ListChangeSpendRequestsRequest","ListChangeSpendRequestsResponse","ListOrderItemsForBusinessRequest","ListOrderItemsForOrderRequest","ListOrderItemsResponse","ListScheduledActivationsForBusinessRequest","ListScheduledActivationsForBusinessResponse","OrderItemParameters","RecordOrderFormSubmissionAndActivateOrderItemRequest","ResolveChangeSpendRequestRequest","ResolvePendingActivationRequest","ScheduleDeactivationRequest","ScheduledProvisioningTask","UnscheduleActivationRequest","UnscheduleDeactivationRequest","FulfillmentFormConfig","FulfillmentFormField","FulfillmentFormFieldOption","CustomFields","Field","FormAnswers","FulfillmentFormSubmission","GetLatestFulfillmentFormSubmissionRequest","GetLatestFulfillmentFormSubmissionResponse","UpsertFulfillmentFormSubmissionRequest","UpsertFulfillmentFormSubmissionResponse","AppInfo","BusinessInfo","SalesInfoCost","CreateFulfillmentOrderRequest","CreateFulfillmentOrderResponse","DeleteFulfillmentOrderRequest","FulfillmentFormInfo","FulfillmentOrder","FulfillmentOrderProjectionFilter","FulfillmentOrderProjects","FulfillmentOrders","GetFulfillmentOrderRequest","GetFulfillmentOrderResponse","GetFulfillmentOrdersForSalesOrderRequest","GetFulfillmentOrdersForSalesOrderResponse","GetMultiBySalesOrderIdsRequest","GetMultiBySalesOrderIdsResponse","SalesInfoOrderFormSubmission","PendingActivationInfo","ResellerPartnerInfo","SalesInfo","SearchFulfillmentOrderRequest","SearchFulfillmentOrderResponse","SearchFulfillmentOrderTimeOptions","SendFulfillmentOrderRequest","UpdateFulfillmentOrderRequest","environment","hostMap","HostService","OrderFulfillmentApiService","OrderFulfillmentService","FulfillmentFormSubmissionApiService","FulfillmentOrderApiService","init_vendasta_order_fulfillment","__esmMin","init_core","init_http","init_operators","_Blame","proto","m","kwargs","toReturn","_EditionChangeInformation","_OrderItem","v","_ProductActivationInformation","_Reasons","_Order","_ChangeRequestEventExternalData","_ChangeSpendRequest","_ChangeSpendRequestExternalData","_FieldMask","_ActivationDateIdentifiers","_ActivationDates","_ActivationFailureDetails","_CancelEditionChangeRequest","_CancelOrderItemWaitingForConsumerInformationRequest","_ListChangeSpendRequestHistoryResponseChangeSpendRequestEvents","_ChangeSpendRequestRequest","_CreateOrderRequest","_CreateOrderResponse","_DeactivateImmediatelyRequest","_DismissFailedOrderItemRequest","_GetCurrentSpendRequest","_GetCurrentSpendResponse","_GetMultiActivationDatesRequest","_GetMultiActivationDatesResponse","_GetMultiActivationErrorsForOrderItemsRequest","_GetMultiActivationErrorsForOrderItemsResponse","_GetMultiScheduledDeactivationsForBusinessRequest","_GetMultiScheduledDeactivationsForBusinessResponse","_GetOrderByIdempotencyKeyRequest","_GetOrderByIdempotencyKeyResponse","_ListChangeSpendRequestHistoryRequest","_ListChangeSpendRequestHistoryResponse","_ListChangeSpendRequestsRequestListChangeSpendRequestsFilterOptions","_ListChangeSpendRequestHistoryRequestListChangeSpendRequestsHistoryFilterOptions","_ListChangeSpendRequestsRequest","_ListChangeSpendRequestsResponse","_ListOrderItemsForBusinessRequest","_ListOrderItemsForOrderRequest","_ListOrderItemsResponse","_ListScheduledActivationsForBusinessRequest","_ListScheduledActivationsForBusinessResponse","_OrderItemParameters","_RecordOrderFormSubmissionAndActivateOrderItemRequest","_ResolveChangeSpendRequestRequest","_ResolvePendingActivationRequest","_ScheduleDeactivationRequest","_ScheduledProvisioningTask","_UnscheduleActivationRequest","_UnscheduleDeactivationRequest","_FulfillmentFormConfig","_FulfillmentFormField","_FulfillmentFormFieldOption","_CustomFields","_Field","_FormAnswers","_FulfillmentFormSubmission","_GetLatestFulfillmentFormSubmissionRequest","_GetLatestFulfillmentFormSubmissionResponse","_UpsertFulfillmentFormSubmissionRequest","_UpsertFulfillmentFormSubmissionResponse","_AppInfo","_BusinessInfo","_SalesInfoCost","_CreateFulfillmentOrderRequest","_CreateFulfillmentOrderResponse","_DeleteFulfillmentOrderRequest","_FulfillmentFormInfo","_FulfillmentOrder","_FulfillmentOrderProjectionFilter","_FulfillmentOrderProjects","_FulfillmentOrders","_GetFulfillmentOrderRequest","_GetFulfillmentOrderResponse","_GetFulfillmentOrdersForSalesOrderRequest","_GetFulfillmentOrdersForSalesOrderResponse","_GetMultiBySalesOrderIdsRequest","_GetMultiBySalesOrderIdsResponse","obj","k","_SalesInfoOrderFormSubmission","_PendingActivationInfo","_ResellerPartnerInfo","_SalesInfo","_SearchFulfillmentOrderRequest","_SearchFulfillmentOrderResponse","_SearchFulfillmentOrderTimeOptions","_SendFulfillmentOrderRequest","_UpdateFulfillmentOrderRequest","__ngFactoryType__","ɵɵdefineInjectable","http","hostService","HttpHeaders","r","request","map","resp","__spreadProps","__spreadValues","ɵɵinject","HttpClient","_api","partnerId","orderParams","orderSources","businessId","cursor","pageSize","filterByStatuses","fieldMask","idempotencyKey","orderId","itemId","orderItemId","orderItemIds","activationId","requestedSpendAmount","requesterNote","appIds","businessIds","requestsStatuses","changeRequestIds","fieldMasks","changeRequestId","appOrAddonId","status","statusUpdateNote","scheduledFor","activationIds","WorkOrderPersona","init_interfaces","__esmMin","getTemporaryStorageKey","businessId","appId","buildTemporaryStorageKey","id","index","startsWith","undefined","doesWorkOrderFormHaveUnsavedChanges","formGroup","Object","keys","controls","reduce","prev","currentKey","sessionStorage","getItem","clearUnsavedChangesFromSessionStorage","forEach","key","removeItem","vendorStatusColorMap","nonVendorStatusColorMap","statusColorMap","DisplayedStatusValuesEnum","VENDOR_REVIEW_PERSONAS","fulfillmentOrderStatusToString","init_utils","__esmMin","init_vendasta_order_fulfillment","init_src","init_interfaces","Map","FulfillmentOrderStatus","FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED","FULFILLMENT_ORDER_STATUS_IN_REVIEW","FULFILLMENT_ORDER_STATUS_IN_PROGRESS","FULFILLMENT_ORDER_STATUS_COMPLETED","FULFILLMENT_ORDER_STATUS_CANCELLED","FULFILLMENT_ORDER_STATUS_UNSET","WorkOrderPersona","VENDOR","CP","SALES","SMB","status","persona","DETAILS_NEEDED","IN_PROGRESS","COMPLETED","CANCELED","FULFILLMENT_ORDER_STATUS_ON_HOLD","ON_HOLD","includes","VENDOR_REVIEW","IN_REVIEW","UNSET","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵtemplate","StatusBadgeComponent_Conditional_0_Conditional_3_Template","ɵɵclassProp","ctx_r0","clickableMenu","ɵɵproperty","displayedColor","ɵɵadvance","ɵɵtextInterpolate1","ɵɵpipeBind1","displayedValue","ɵɵconditional","StatusBadgeComponent","init_status_badge_component","__esmMin","init_core","init_icon","init_ngx_translate_core","init_badge","init_vendasta_order_fulfillment","init_utils","init_interfaces","constructor","_persona","signal","WorkOrderPersona","VENDOR","_foStatus","FulfillmentOrderStatus","FULFILLMENT_ORDER_STATUS_UNSET","computed","statusColorMap","get","undefined","fulfillmentOrderStatusToString","persona","set","value","selectors","inputs","decls","vars","consts","template","rf","ctx","StatusBadgeComponent_Conditional_0_Template","GalaxyBadgeModule","BadgeComponent","MatIconModule","MatIcon","TranslateModule","TranslatePipe","styles","ɵɵelementContainerStart","ɵɵtext","ɵɵadvance","ɵɵtextInterpolate1","ɵɵpipeBind1","ɵɵelementStart","ɵɵelement","ɵɵelementEnd","ɵɵproperty","ctx_r0","thermometerProgress","thermometerSuffix","ɵɵtextInterpolate","wo_r2","workOrderId","ɵɵtemplate","WorkOrderSalesOrderSummaryComponent_div_0_mat_list_8_ng_container_1_mat_list_item_1_ng_template_3_span_2_Template","appName","isMobile$","isVendor","ɵɵelementContainer","ɵɵlistener","ɵɵrestoreView","_r3","ɵɵnextContext","$implicit","ɵɵresetView","handleChevronClick","WorkOrderSalesOrderSummaryComponent_div_0_mat_list_8_ng_container_1_mat_list_item_1_a_6_ng_container_1_Template","appName_r4","WorkOrderSalesOrderSummaryComponent_div_0_mat_list_8_ng_container_1_mat_list_item_1_ng_template_3_Template","ɵɵtemplateRefExtractor","WorkOrderSalesOrderSummaryComponent_div_0_mat_list_8_ng_container_1_mat_list_item_1_a_6_Template","appIconUrl","workOrderLandingPageUrl","workOrderLandingPageRouterLinkUrl","workOrderStatus","persona","WorkOrderSalesOrderSummaryComponent_div_0_mat_list_8_ng_container_1_mat_list_item_1_Template","hasForm","WorkOrderSalesOrderSummaryComponent_div_0_mat_list_8_ng_container_1_Template","workOrders","WorkOrderSalesOrderSummaryComponent_div_0_ng_container_4_Template","WorkOrderSalesOrderSummaryComponent_div_0_ng_template_5_Template","WorkOrderSalesOrderSummaryComponent_div_0_mat_card_content_7_Template","WorkOrderSalesOrderSummaryComponent_div_0_mat_list_8_Template","notVendor_r5","includeThermometer","length","WorkOrderSalesOrderSummaryComponent","init_work_order_sales_order_summary_component","__esmMin","init_layout","init_vendasta_order_fulfillment","init_operators","init_interfaces","constructor","translateService","breakpointObserver","router","route","WorkOrderPersona","VENDOR","ngOnInit","observe","Breakpoints","XSmall","Small","pipe","map","bp","matches","completed","reduce","prev","curr","FulfillmentOrderStatus","FULFILLMENT_ORDER_STATUS_COMPLETED","total","instant","wo","navigate","relativeTo","fragment","window","open","ɵɵdirectiveInject","TranslateService","BreakpointObserver","Router","ActivatedRoute","selectors","inputs","standalone","decls","vars","consts","template","rf","ctx","WorkOrderSalesOrderSummaryComponent_div_0_Template","AccountCityPipe","init_account_city_pipe","__esmMin","transform","account","city","state","zip","filter","Boolean","join","pure","standalone","AccountPhonePipe","init_account_phone_pipe","__esmMin","transform","account","workNumber","pure","standalone","DigitalAgentNamePipe","init_digital_agent_name_pipe","__esmMin","transform","digitalAgent","firstName","lastName","filter","Boolean","join","pure","standalone","GetAccountInfoPipe","init_get_account_info_pipe","__esmMin","init_src","init_operators","init_esm","#accountInfoCache","Map","constructor","accountGroupService","transform","accountGroupId","of","accountGroupFromCache","get","ProjectionFilter","napData","pipe","map","accountGroup","tap","accountInfo","set","ɵɵdirectiveInject","AccountGroupService","pure","standalone","GetProductInfoPipe","init_get_product_info_pipe","__esmMin","init_operators","init_esm","#productInfoCache","Map","constructor","marketplacePackagesApiService","transform","fulfillmentOrder","of","productFromCache","get","appId","getMultiProducts","partnerId","resellerPartnerId","productIds","pipe","map","products","product","tap","set","ɵɵdirectiveInject","MarketplacePackagesApiService","pure","standalone","ProjectStatusMap","init_constants","__esmMin","init_vendasta_task_manager","Map","Status","Open","name","color","InProgress","WaitingOnCustomer","Completed","ProjectStatusOptionPipe","init_project_status_option_pipe","__esmMin","init_constants","transform","status","ProjectStatusMap","get","pure","standalone","DisplayFulfillmentOrderStatusPipe","init_display_fulfillment_order_status_pipe","__esmMin","constructor","translateService","transform","value","instant","ɵɵdirectiveInject","TranslateService","pure","standalone","pipes","FulfillmentOrderPipesModule","init_fulfillment_order_pipes_module","__esmMin","init_common","init_account_city_pipe","init_account_phone_pipe","init_digital_agent_name_pipe","init_get_account_info_pipe","init_get_product_info_pipe","init_project_status_option_pipe","init_display_fulfillment_order_status_pipe","AccountCityPipe","AccountPhonePipe","DigitalAgentNamePipe","GetAccountInfoPipe","GetProductInfoPipe","ProjectStatusOptionPipe","DisplayFulfillmentOrderStatusPipe","imports","CommonModule","PendingActivationApprovalDialogueComponent","init_pending_activation_approval_dialogue_component","__esmMin","init_common","init_button","init_dialog","init_input","init_ngx_translate_core","init_form_field","constructor","dialogue","handleClick","close","ɵɵdirectiveInject","MatDialogRef","selectors","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵlistener","ɵɵadvance","ɵɵtextInterpolate","ɵɵpipeBind1","ɵɵtextInterpolate1","CommonModule","MatDialogModule","MatDialogClose","MatDialogTitle","MatDialogActions","MatDialogContent","MatButtonModule","MatButton","GalaxyFormFieldModule","MatInputModule","TranslateModule","TranslatePipe","styles","PendingApprovalDeclineComponent","init_pending_approval_decline_component","__esmMin","init_common","init_dialog","init_form_field","init_button","init_input","init_ngx_translate_core","constructor","dialogue","handleClick","rejectionReason","close","ɵɵdirectiveInject","MatDialogRef","selectors","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵelement","ɵɵlistener","ɵɵrestoreView","_r1","rejectionReason_r2","ɵɵreference","ɵɵresetView","value","ɵɵadvance","ɵɵtextInterpolate","ɵɵpipeBind1","ɵɵpropertyInterpolate","ɵɵproperty","ɵɵtextInterpolate1","CommonModule","GalaxyFormFieldModule","FormFieldComponent","MatButtonModule","MatButton","MatDialogModule","MatDialogClose","MatDialogTitle","MatDialogActions","MatDialogContent","MatInputModule","MatInput","TranslateModule","TranslatePipe","styles","PendingApprovalServiceInterfaceToken","init_pending_approvals_interface","__esmMin","init_core","InjectionToken","IsActivationPendingPipe","init_is_activation_pending_pipe","__esmMin","init_vendasta_order_fulfillment","transform","status","PendingActivationStatus","PENDING_ACTIVATION_STATUS_PENDING","pure","ɵɵelementStart","ɵɵelement","ɵɵtext","ɵɵelementEnd","ɵɵlistener","ɵɵrestoreView","_r1","pendingActivation_r2","ɵɵnextContext","$implicit","ctx_r2","ɵɵresetView","decline","approve","ɵɵadvance","ɵɵproperty","tmp_4_0","ɵɵpipeBind1","fulfillmentOrder","iconUrl","appInfo","appName","ɵɵtextInterpolate","ɵɵtextInterpolate1","ɵɵelementContainerStart","ɵɵtemplate","PendingApprovalsCardComponent_div_0_ng_container_7_div_1_Template","pendingActivationInfo","activationStatuses","PendingApprovalsCardComponent_div_0_ng_container_7_Template","pendingActivationIds","PendingApprovalsCardComponent","init_pending_approvals_card_component","__esmMin","init_common","init_core","init_button","init_card","init_ngx_translate_core","init_avatar","init_vendasta_order_fulfillment","init_esm","init_operators","init_fulfillment_order_pipes_module","init_pending_activation_approval_dialogue_component","init_pending_approval_decline_component","init_pending_approvals_interface","init_is_activation_pending_pipe","constructor","dialog","pendingApprovalService","snackbarService","appsService","pendingActivationChange","EventEmitter","PendingActivationStatus","pendingActivation","open","PendingActivationApprovalDialogueComponent","afterClosed","pipe","switchMap","result","resolvePendingActivation","appId","businessId","EMPTY","subscribe","openSuccessSnack","filter","id","emit","openErrorSnack","PendingApprovalDeclineComponent","rejectionReason","getApp","app","restrictions","appRequirement","rules","appIds","addonId","ɵɵdirectiveInject","MatDialog","PendingApprovalServiceInterfaceToken","SnackbarService","MarketplaceAppService","selectors","inputs","outputs","decls","vars","consts","template","rf","ctx","PendingApprovalsCardComponent_div_0_Template","CommonModule","NgForOf","NgIf","AsyncPipe","MatCardModule","MatCard","MatCardContent","MatCardHeader","MatCardTitle","MatButtonModule","MatButton","GalaxyAvatarModule","AvatarComponent","IsActivationPendingPipe","FulfillmentOrderPipesModule","GetProductInfoPipe","TranslateModule","TranslatePipe","styles","FormConflictDialogComponent","init_form_conflict_dialog_component","__esmMin","init_dialog","constructor","dialogRef","data","handleRefreshPage","window","location","reload","ɵɵdirectiveInject","MatDialogRef","MAT_DIALOG_DATA","selectors","standalone","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵlistener","ɵɵadvance","ɵɵtextInterpolate","ɵɵpipeBind1","ɵɵtextInterpolate1","FormErrorDialogComponent","init_form_error_dialog_component","__esmMin","selectors","standalone","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵadvance","ɵɵtextInterpolate","ɵɵpipeBind1","ɵɵtextInterpolate1","FormConfirmDialogComponent","init_form_confirm_dialog_component","__esmMin","constructor","dialogRef","handleSubmitClick","close","ɵɵdirectiveInject","MatDialogRef","selectors","standalone","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵlistener","ɵɵadvance","ɵɵtextInterpolate","ɵɵpipeBind1","ɵɵtextInterpolate1","UsersServiceInterfaceToken","init_users_service_interface","__esmMin","init_core","InjectionToken","CreateUserFormComponent","init_create_user_form_component","__esmMin","init_core","init_forms","init_src","init_esm","init_users_service_interface","init_operators","constructor","snackbarService","userService","accountGroupId","partnerId","userCreated","EventEmitter","isCreatingUser$$","BehaviorSubject","isCreatingUser$","asObservable","form","FormGroup","first_name","FormControl","last_name","user_email","Validators","required","emailValidator","phone","isCreatingUser","createUser","invalid","markAsDirty","openErrorSnack","next","user","email","value","firstName","lastName","userOptions","sendWelcomeEmail","createSMBUser","pipe","take","catchError","err","errTranslationId","data","message","includes","subscribe","responseUser","emit","openSuccessSnack","ɵɵdirectiveInject","SnackbarService","UsersServiceInterfaceToken","selectors","inputs","outputs","standalone","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵelement","ɵɵproperty","ɵɵadvance","ɵɵtextInterpolate1","ɵɵpipeBind1","controls","UserFullNamePipe","init_user_full_name_pipe","__esmMin","transform","firstName","lastName","name","pure","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵadvance","ɵɵtextInterpolate1","ɵɵpipeBind2","user_r5","firstName","lastName","ɵɵtemplate","AddUserDialogComponent_ng_template_0_div_2_div_3_Template","ɵɵlistener","$event","ɵɵrestoreView","_r4","$implicit","ctx_r2","ɵɵnextContext","ɵɵresetView","addUserToSelected","ɵɵproperty","ɵɵtextInterpolate","email","doesUserExist","ɵɵelement","ɵɵpipeBind1","_r6","loadMore","_r2","term$","next","AddUserDialogComponent_ng_template_0_div_2_Template","AddUserDialogComponent_ng_template_0_div_4_Template","AddUserDialogComponent_ng_template_0_div_6_Template","AddUserDialogComponent_ng_template_0_button_10_Template","users$","loading$","tmp_6_0","length","hasMoreResults$","ɵɵelementContainer","ɵɵelementContainerStart","_r7","tabChanged","userCreated","AddUserDialogComponent_ng_container_7_ng_container_10_Template","ɵɵpropertyInterpolate","accountGroupId","partnerId","addForm_r8","_r9","dialogRef","close","isLoading$","UserAction","AddUserDialogComponent","init_add_user_dialog_component","__esmMin","init_dialog","init_esm","init_users_service_interface","constructor","data","userService","subscriptions","showCreateTab","Subject","loading$$","BehaviorSubject","asObservable","existingUsers","selectedUsers","addedUsers","isLoading$$","tab$$","ReplaySubject","tab$","_destroy$$","businessId","ngOnInit","CREATE","ADD","search","push","pipe","debounceTime","subscribe","x","tap","ngAfterViewInit","createFormComponent","isCreatingUser","takeUntil","isLoading","ngOnDestroy","forEach","sub","unsubscribe","complete","addSelectedUsers","usersToAdd","user","addUsersToAccount","map","userId","action","users","error","event","checked","index","indexOf","splice","filter","existingUser","createUser","onSubmit","take","tab","ɵɵdirectiveInject","MatDialogRef","MAT_DIALOG_DATA","UsersServiceInterfaceToken","selectors","viewQuery","rf","ctx","AddUserDialogComponent_ng_template_0_Template","ɵɵtemplateRefExtractor","AddUserDialogComponent_ng_container_7_Template","AddUserDialogComponent_ng_container_9_Template","i0","_r1","AddUserDialogComponent_ng_container_20_Template","AddUserDialogComponent_ng_template_22_Template","ɵɵpureFunction1","_c1","createButtonText_r10","en_devel_default","init_en_devel","__esmMin","UsersModule","init_users_module","__esmMin","init_src","init_en_devel","init_common","init_button_loading_indicator","init_button","init_checkbox","init_dialog","init_icon","init_progress_spinner","init_tabs","init_input","init_forms","init_ngx_translate_core","CommonModule","TranslateModule","ReactiveFormsModule","GalaxyButtonLoadingIndicatorModule","MatButtonModule","MatCheckboxModule","MatDialogModule","MatIconModule","MatProgressSpinnerModule","MatTabsModule","VaFilterModule","LexiconModule","forChild","componentName","baseTranslation","MatInputModule","GalaxyInputModule","init_lib","__esmMin","init_add_user_dialog_component","init_users_module","init_src","__esmMin","init_lib","ɵɵelementStart","ɵɵlistener","e_r3","ɵɵrestoreView","_r2","$implicit","ctx_r3","ɵɵnextContext","ɵɵresetView","remove","userId","ɵɵtext","ɵɵelementEnd","ɵɵadvance","ɵɵtextInterpolate1","email","$event","_r5","preventBlur","ɵɵproperty","u_r6","ɵɵpipeBind1","_r7","presentAddUserDialog","ɵɵelementContainerStart","ɵɵtemplate","SendEmailDialogComponent_ng_container_20_mat_option_1_Template","SendEmailDialogComponent_ng_container_20_mat_option_2_Template","users_r8","allowUserManagement","SendEmailDialogComponent","FormatUserPipe","init_send_email_dialog_component","__esmMin","init_forms","init_dialog","init_src","init_esm","init_operators","constructor","dialogRef","dialog","data","subscriptions","separatorKeysCodes","ENTER","COMMA","SPACE","SEMICOLON","TAB","filteredUsers$$","BehaviorSubject","filteredUsers$","asObservable","errorMessage$$","Subject","allUsers","partnerId","businessId","selectedUsers","ngOnInit","emailControl","UntypedFormControl","push","valueChanges","pipe","startWith","map","value","_filter","slice","subscribe","users","next","add","event","trim","user","find","u","_pushUser","selected","option","emailInput","nativeElement","setValue","e","stopPropagation","preventDefault","index","indexOf","splice","_updateErrorState","length","emailChipList","errorState","close","save","userIds","unifiedId","childDialogRef","open","AddUserDialogComponent","width","showCreateTab","showAddTab","existingUsers","afterClosed","result","getValue","action","UserAction","ADD","CREATE","ngOnDestroy","forEach","s","unsubscribe","filterValue","toLowerCase","filter","formatUser","formattedUser","names","firstName","lastName","join","ɵɵdirectiveInject","MatDialogRef","MatDialog","MAT_DIALOG_DATA","selectors","viewQuery","rf","ctx","SendEmailDialogComponent_mat_chip_row_11_Template","ɵɵelement","i0","_r1","SendEmailDialogComponent_ng_container_20_Template","ɵɵtextInterpolate","autoEmail_r10","emailList_r9","styles","transform","pure","WorkOrderModule","init_work_order_module","__esmMin","init_common","init_src","init_card","init_forms","init_button","init_snackbar_service","init_ngx_translate_core","init_en_devel","init_divider","init_icon","init_badge","init_progress_spinner","init_overlay","init_avatar","init_status_badge_component","init_progress_bar","init_fulfillment_order_pipes_module","init_router","init_expansion","init_dialog","init_alert","init_list","init_pending_approvals_card_component","init_form_field","init_chips","init_autocomplete","init_input","CommonModule","ReactiveFormsModule","TranslateModule","LexiconModule","forChild","componentName","baseTranslation","MatBadgeModule","MatButtonModule","MatCardModule","MatDividerModule","MatIconModule","MatProgressSpinnerModule","OverlayModule","VaIconModule","VaOrderFormModule","GalaxySnackbarModule","ProjectTrackerModule","GalaxyAvatarModule","GalaxyBadgeModule","MatProgressBarModule","FulfillmentOrderPipesModule","RouterModule","MatExpansionModule","MatDialogModule","GalaxyAlertModule","MatListModule","PendingApprovalsCardComponent","GalaxyFormFieldModule","MatChipsModule","MatAutocompleteModule","MatFormFieldModule","MatInputModule","FormsModule","UsersModule","StatusBadgeComponent","productUsesDynamicWorkOrder","productId","DYNAMIC_WORK_ORDER_PRODUCTS","includes","init_external_form_products","__esmMin","WorkOrderFormConfigService","init_work_order_form_config_service","__esmMin","init_vendasta_order_fulfillment","init_vendasta_marketplace_apps","init_esm","init_operators","init_external_form_products","constructor","formSubmissionService","formConfigService","ssoService","getFormConfig","salesOrderId","appId","businessId","getLatestFulfillmentFormSubmission","GetLatestFulfillmentFormSubmissionRequest","pipe","map","response","fulfillmentFormSubmission","formConfig","catchError","err","status","getFulfillmentOrderConfig","GetFulfillmentOrderConfigRequest","release","ReleaseType","RELEASE_TYPE_PUBLISHED","projectionFilter","includeFormConfig","config","fulfillmentForm","injectSSOUrl","getLatestSubmission","of","resp","productUsesDynamicWorkOrder","orderForm","length","type","ssoUrl","getServiceGatewayURLForAccount","label","ɵɵinject","FulfillmentFormSubmissionApiService","FulfillmentOrderConfigApiService","SSOService","factory","ɵfac","providedIn","WorkOrderFormService","init_work_order_form_service","__esmMin","init_vendasta_marketplace_apps","init_vendasta_order_fulfillment","init_esm","init_operators","init_interfaces","constructor","fulfillmentFormSubmissionApiService","fulfillmentOrderService","formConfigService","marketplaceAppsService","partnerApiService","salesOrderService","customerSalesOrderService","getProductInfo","appId","resellerPartnerId","marketId","persona","WorkOrderPersona","VENDOR","getApp","fieldMask","paths","pipe","map","resp","app","product","productId","name","tagline","icon","getMultiApp","GetMultiAppRequest","appKeys","partnerId","take","response","apps","appType","AppType","APP_TYPE_APP","sharedMarketingInformation","iconUrl","parentRequirements","parentDetails","key","addonInfo","addonId","updateFormSubmission","request","upsertFulfillmentFormSubmission","version","doesWorkOrderHaveForm","getFulfillmentOrderConfig","GetFulfillmentOrderConfigRequest","projectionFilter","includeFormConfig","Boolean","config","usesFulfillmentForm","getPreviewOrderActivationProductIds","salesOrderId","businessId","isSMB","previewOrderActivations","activations","productIds","activation","filter","index","indexOf","switchMap","configs$","release","ReleaseType","RELEASE_TYPE_PUBLISHED","combineLatest","responses","isEnabled","getOrdersToRenderFormsFor","includeSalesInfo","getFulfillmentOrdersForSalesOrder","GetFulfillmentOrdersForSalesOrderRequest","cursor","pageSize","includeAppInfo","includeBusinessInfo","fulfillmentOrders","ɵɵinject","FulfillmentFormSubmissionApiService","FulfillmentOrderApiService","FulfillmentOrderConfigApiService","MarketplaceAppsApiService","PartnerApiService","SalesOrdersService","CustomerSalesOrdersService","factory","ɵfac","providedIn","ɵɵelementContainer","ɵɵproperty","ctx_r1","extraActionButtons","ɵɵelementContainerStart","ɵɵelementStart","ɵɵlistener","ɵɵrestoreView","_r1","ɵɵnextContext","ɵɵresetView","handleSubmitClicked","ɵɵtext","ɵɵelementEnd","handleSaveProgressClicked","ɵɵtemplate","WorkOrderFormComponent_ng_container_0_ng_template_7_div_0_ng_container_1_ng_container_11_Template","ɵɵadvance","ɵɵpipeBind1","submitLoading$$","ɵɵtextInterpolate1","saveProgressLoading$$","ɵɵpipeBind2","ɵɵpureFunction1","_c4","timestamp_r4","_r3","handleSaveChangesClicked","WorkOrderFormComponent_ng_container_0_ng_template_7_div_0_div_3_ng_container_6_Template","WorkOrderFormComponent_ng_container_0_ng_template_7_div_0_div_3_div_7_Template","tmp_9_0","latestSubmission$","updated","WorkOrderFormComponent_ng_container_0_ng_template_7_div_0_ng_container_1_Template","WorkOrderFormComponent_ng_container_0_ng_template_7_div_0_div_3_Template","formSubmitted$$","WorkOrderFormComponent_ng_container_0_ng_template_7_div_0_Template","readOnly","ɵɵelement","WorkOrderFormComponent_ng_container_0_ng_template_7_Template","ɵɵtemplateRefExtractor","form","orderForm$$","fileUploadUrl","ɵɵpureFunction0","_c1","productInfo$$","answers$","_c2","ɵɵpureFunction2","_c3","showOfficeUseQuestions","users","accountGroupId","extraHeaderContent","bottomActionsContent_r5","WorkOrderFormComponent","init_work_order_form_component","__esmMin","init_common","init_core","init_forms","init_button","init_checkbox","init_expansion","init_ngx_translate_core","init_button_loading_indicator","init_empty_state","init_loading_spinner","init_vendasta_marketplace_apps","init_vendasta_order_fulfillment","init_vendasta_sales_orders","init_src","init_esm","init_operators","init_utils","init_interfaces","init_work_order_module","init_form_confirm_dialog_component","init_form_conflict_dialog_component","init_form_error_dialog_component","init_work_order_form_service","persona","persona$$","next","constructor","workOrderFormV2Service","snackbarService","environmentService","dialog","workOrderFormConfigService","productAnalyticsService","route","fulfillmentOrderForm","OrderForm","fulfillmentOrderStatusChanged","EventEmitter","submitClicked","doneLoading","UntypedFormGroup","ReplaySubject","BehaviorSubject","submittedSubject$$","foStatus$$","WorkOrderPersona","CP","underReview$$","subscriptions","lastViewedTimestamp$$","trackEvent","ngOnInit","getEnvironmentString","config$","getFormConfig","salesOrderId","appId","pipe","tap","status","shareReplay","refCount","bufferSize","hasForm$","map","config","orderForm","length","getLatestSubmission","take","latestSubmission","version","push","switchMap","getProductInfo","resellerPartnerId","marketId","productInfo","subscribe","combineLatest","filter","submission","getCustomFieldsAnswersFromFulfillmentFormSubmission","withLatestFrom","info","__spreadProps","__spreadValues","productId","addonId","addonInfo","customFields","cf","options","optionsWithLabels","foStatus","FulfillmentOrderStatus","FULFILLMENT_ORDER_STATUS_IN_REVIEW","VENDOR","Boolean","FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED","emit","ngAfterViewInit","fragment$","fragment","element","document","getElementById","scrollIntoView","answers","formAnswers","forEach","formAnswer","cfAnswers","fields","f","answer","fieldId","customFieldsAnswersToAdd","productID","customFieldsAnswers","addonKey","formId","unshift","salesOrderFieldTypeToFieldType","salesOrderFieldType","SalesOrdersFieldType","CHECKBOX","FieldType","FIELD_TYPE_CHECKBOX","DROPDOWN","FIELD_TYPE_DROPDOWN","FILE","FIELD_TYPE_FILE","TEXT","FIELD_TYPE_TEXT","TEXTAREA","FIELD_TYPE_TEXT_AREA","VBCUSER","FIELD_TYPE_VBCUSER","FIELD_TYPE_NOT_SPECIFIED","getCustomFieldValues","orderFormComponent","getCustomFormData","field","fieldType","req","valid","open","FormConfirmDialogComponent","afterClosed","result","businessId","lastViewedTimestamp","getValue","updateFormSubmission","UpsertFulfillmentFormSubmissionRequest","catchError","err","tempStorageKey","getTemporaryStorageKey","sessionStorage","removeItem","FormConflictDialogComponent","width","EMPTY","finalize","of","openSuccessSnack","openErrorSnack","markAllAsTouched","FormErrorDialogComponent","areTouchedFormControlsValid","touchedControls","controls","key","control","k","innerControl","touched","addControl","i","toString","ngOnDestroy","sub","unsubscribe","ɵɵdirectiveInject","WorkOrderFormService","SnackbarService","EnvironmentService","MatDialog","WorkOrderFormConfigService","ProductAnalyticsService","ActivatedRoute","selectors","viewQuery","rf","ctx","decls","vars","consts","template","WorkOrderFormComponent_ng_container_0_Template","CommonModule","NgIf","NgTemplateOutlet","AsyncPipe","DatePipe","FormsModule","ɵNgNoValidate","NgControlStatusGroup","ReactiveFormsModule","FormGroupDirective","VaOrderFormModule","OrderFormComponent","MatButtonModule","MatButton","GalaxyLoadingSpinnerModule","TranslateModule","TranslatePipe","GalaxyButtonLoadingIndicatorModule","ButtonLoadingIndicatorComponent","GalaxyEmptyStateModule","WorkOrderModule","MatCheckboxModule","MatExpansionModule","styles","changeDetection","WorkOrderFormUnsavedChangesGuard","PublicWorkOrderFormUnsavedChangesGuard","WorkOrderUnsavedChangesComponent","init_work_orders_unsaved_changes_guard","__esmMin","canDeactivate","component","workOrderUnsavedChangesComponent","getWorkOrderDetailsComponent","Function","pendingChangesDialog","factory","ɵfac","providedIn","beforeUnloadEvent","$event","returnValue","selectors","hostBindings","rf","ctx","ɵɵlistener","ɵɵresolveWindow","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵtemplate","WorkOrderChecklistComponent_li_8_mat_icon_1_Template","WorkOrderChecklistComponent_li_8_ng_template_2_Template","ɵɵtemplateRefExtractor","ɵɵlistener","wo_r2","ɵɵrestoreView","_r1","$implicit","ctx_r2","ɵɵnextContext","ɵɵresetView","handleChecklistClick","appId","ɵɵadvance","ɵɵproperty","status","FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED","checkedIcon_r4","ɵɵtextInterpolate1","ɵɵpipeBind1","appInfo","appName","WorkOrderChecklistComponent","init_work_order_checklist_component","__esmMin","init_common","init_expansion","init_icon","init_ngx_translate_core","init_popover","init_tooltip","init_vendasta_order_fulfillment","constructor","translateService","router","workOrders","FulfillmentOrderStatus","checklistTooltipText","instant","positions","__spreadValues","PopoverPositions","BottomLeft","navigate","fragment","ɵɵdirectiveInject","TranslateService","Router","selectors","inputs","decls","vars","consts","template","rf","ctx","WorkOrderChecklistComponent_li_8_Template","CommonModule","NgForOf","NgIf","MatExpansionModule","MatExpansionPanel","MatExpansionPanelHeader","MatExpansionPanelTitle","GalaxyTooltipModule","GalaxyTooltipDirective","TranslateModule","TranslatePipe","MatIconModule","MatIcon","styles","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵadvance","ɵɵtextInterpolate","accountGroup_r1","companyName","ɵɵpipeBind1","ɵɵtextInterpolate1","address","address2","workNumber","ɵɵtemplate","WorkOrderContextComponent_Conditional_0_Conditional_9_p_4_Template","ɵɵproperty","WorkOrderContextComponent_Conditional_0_Conditional_5_Template","WorkOrderContextComponent_Conditional_0_Conditional_6_Template","WorkOrderContextComponent_Conditional_0_p_7_Template","WorkOrderContextComponent_Conditional_0_p_8_Template","WorkOrderContextComponent_Conditional_0_Conditional_9_Template","ɵɵconditional","WorkOrderContextComponent","init_work_order_context_component","__esmMin","init_common","init_expansion","init_src","init_ngx_translate_core","init_esm","constructor","accountGroupService","ngOnInit","accountGroup$","get","accountGroupId","ProjectionFilter","napData","pipe","map","business","city","state","filter","Boolean","join","zip","country","ɵɵdirectiveInject","AccountGroupService","selectors","inputs","decls","vars","consts","template","rf","ctx","WorkOrderContextComponent_Conditional_0_Template","tmp_0_0","CommonModule","NgIf","AsyncPipe","MatExpansionModule","MatExpansionPanel","MatExpansionPanelHeader","MatExpansionPanelTitle","TranslateModule","TranslatePipe","styles","WorkOrderUnsavedChangesDialogResult","WorkOrderUnsavedChangesDialogComponent","init_work_order_unsaved_changes_dialog_component","__esmMin","init_common","init_dialog","init_button","init_ngx_translate_core","constructor","dialogRef","continueEditing","close","CONTINUE_EDITING","ɵɵdirectiveInject","MatDialogRef","selectors","decls","vars","consts","template","rf","ctx","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵlistener","DISCARD_CHANGES","ɵɵadvance","ɵɵtextInterpolate","ɵɵpipeBind1","ɵɵtextInterpolate1","CommonModule","MatDialogModule","MatDialogTitle","MatDialogActions","MatDialogContent","MatButtonModule","MatButton","TranslateModule","TranslatePipe","styles","ɵɵelementStart","ɵɵtext","ɵɵelementEnd","ɵɵelement","ɵɵelementContainer","ɵɵadvance","ɵɵtextInterpolate","ɵɵpipeBind1","ɵɵproperty","ctx_r0","previousPageUrl","shareButton_r3","woForms_r2","wo_r5","status","persona","ɵɵtemplate","WorkOrderDetailsComponent_ng_template_1_ng_container_0_div_3_ng_template_1_Template","ɵɵtemplateRefExtractor","ɵɵlistener","$event","ɵɵrestoreView","_r4","$implicit","ɵɵnextContext","ɵɵresetView","statusChanged","i_r6","index","handleDoneLoading","salesOrderId","appId","businessId","marketId","resellerPartnerId","fulfillmentOrderId","extraHeaderContent_r7","showOfficeUseQuestions","allUsers","hidePageWrapper","workOrders_r8","WorkOrderDetailsComponent_ng_template_1_ng_container_0_div_6_work_order_checklist_3_Template","length","ɵɵelementContainerStart","WorkOrderDetailsComponent_ng_template_1_ng_container_0_div_3_Template","WorkOrderDetailsComponent_ng_template_1_ng_container_0_div_4_Template","WorkOrderDetailsComponent_ng_template_1_ng_container_0_div_6_Template","woFormDoneLoading$","WorkOrderDetailsComponent_ng_template_1_ng_container_0_Template","workOrders$","_r9","openSendEmailDialog","ɵɵtextInterpolate1","_r10","popover_r11","ɵɵreference","open","close","WorkOrderDetailsComponent_ng_template_3_button_0_Template","WorkOrderDetailsComponent_ng_template_3_div_1_Template","WorkOrderPersona","SMB","users","allowUserManagement","popoverPosition","WorkOrderDetailsComponent","init_work_order_details_component","__esmMin","init_common","init_rxjs_interop","init_forms","init_button","init_dialog","init_icon","init_ngx_translate_core","init_page","init_popover","init_vendasta_order_fulfillment","init_esm","init_send_email_dialog_component","init_status_badge_component","init_utils","init_work_order_checklist_component","init_work_order_context_component","init_work_order_form_component","init_interfaces","init_work_order_module","init_work_order_unsaved_changes_dialog_component","init_work_orders_unsaved_changes_guard","WorkOrderUnsavedChangesComponent","map","user","convertToLibUser","constructor","route","workOrderFormService","dialog","snackbarService","fulfillmentOrderService","fulfillmentOrderConfigApiService","destroyRef","CP","workOrders$$","BehaviorSubject","asObservable","detailsNeeded$","pipe","workOrders","some","wo","FulfillmentOrderStatus","FULFILLMENT_ORDER_STATUS_DETAILS_NEEDED","refreshWorkOrders$$","subscriptions","combinedFormGroup","UntypedFormGroup","PopoverPositions","BottomRight","woFormDoneLoadingMap$$","Map","ngOnInit","switchMap","getOrdersToRenderFormsFor","filterOrdersWithForms","takeUntilDestroyed","subscribe","next","take","forEach","_","i","loadingMap","getValue","set","woLoadingMap","loadingValues","Array","from","values","every","value","ngAfterViewInit","fragment$","fragment","statusBadges$","statusBadges","changes","push","combineLatest","find","sb","document","getElementById","scrollIntoView","workOrderForms","a","toArray","woFormComp","key","getTemporaryStorageKey","accountGroupId","contains","setControl","form","ngOnDestroy","sub","unsubscribe","refreshWorkOrders","newStatus","actualWorkOrders","findIndex","w","afterClosed$","SendEmailDialogComponent","width","data","partnerId","afterClosed","resp","userIds","of","undefined","itemNames","appInfo","appName","mergeMap","userId","sendFulfillmentOrder","openSuccessSnack","error","openErrorSnack","orders","apiCalls","order","getFulfillmentOrderConfig","response","config","forkJoin","configs","filter","usesFulfillmentForm","canDeactivate","doesWorkOrderFormHaveUnsavedChanges","pendingChangesDialog","closeAll","WorkOrderUnsavedChangesDialogComponent","result","WorkOrderUnsavedChangesDialogResult","CONTINUE_EDITING","tap","clearUnsavedChangesFromSessionStorage","unifiedId","unifiedUserId","email","firstName","lastName","phoneNumber","ɵɵdirectiveInject","ActivatedRoute","WorkOrderFormService","MatDialog","SnackbarService","FulfillmentOrderApiService","FulfillmentOrderConfigApiService","DestroyRef","selectors","viewQuery","rf","ctx","StatusBadgeComponent","WorkOrderFormComponent","WorkOrderDetailsComponent_glxy_page_0_Template","WorkOrderDetailsComponent_ng_template_1_Template","WorkOrderDetailsComponent_ng_template_3_Template","CommonModule","NgForOf","NgIf","NgTemplateOutlet","AsyncPipe","WorkOrderModule","GalaxyPageModule","PageComponent","PageToolbarComponent","PageTitleDirective","PageNavDirective","PageNavButtonComponent","PageActionsDirective","PageWrapperDirective","TranslateModule","TranslatePipe","MatIconModule","MatIcon","MatButtonModule","MatButton","MatDialogModule","GalaxyPopoverModule","PopoverComponent","PopoverTitleDirective","GalaxyPopoverDirective","WorkOrderChecklistComponent","WorkOrderContextComponent","styles","PAGE_SIZE","WorkOrderSalesOrderSummaryService","init_work_order_sales_order_summary_service","__esmMin","init_vendasta_order_fulfillment","init_esm","init_operators","constructor","fulfillmentOrderApiService","loadingWorkOrders$$","BehaviorSubject","loadingWorkOrders$","asObservable","getWorkOrdersForSalesOrder","salesOrderId","businessId","shouldIncludeFulfillmentFormInfo","next","req","GetFulfillmentOrdersForSalesOrderRequest","pageSize","projectionFilter","includeFulfillmentFormInfo","getFulfillmentOrdersForSalesOrder","pipe","take","expand","resp","hasMore","cursor","nextCursor","EMPTY","scan","prev","curr","fulfillmentOrders","length","push","catchError","err","publishReplay","refCount","tap","ɵɵinject","FulfillmentOrderApiService","factory","ɵfac","providedIn","init_lib","__esmMin","init_work_order_module","init_work_order_sales_order_summary_service","init_utils","init_interfaces","init_work_order_form_component","init_status_badge_component","init_work_order_form_config_service","init_work_order_form_service","init_pending_approvals_interface","init_work_order_details_component","init_work_orders_unsaved_changes_guard","init_work_order_unsaved_changes_dialog_component","init_src","__esmMin","init_lib"],"x_google_ignoreList":[1]}