merchi_cart 0.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +99 -0
- package/lib/Cart.js +62 -0
- package/lib/CartAlert.js +43 -0
- package/lib/CartHeader.js +28 -0
- package/lib/CartProvider.js +304 -0
- package/lib/CartTotals.js +99 -0
- package/lib/MerchiSDK/constants/auto_assign_production_on_actions.js +8 -0
- package/lib/MerchiSDK/constants/call_to_actions.js +16 -0
- package/lib/MerchiSDK/constants/call_to_actions.test.js +5 -0
- package/lib/MerchiSDK/constants/discount_types.js +5 -0
- package/lib/MerchiSDK/constants/discount_types.test.js +5 -0
- package/lib/MerchiSDK/constants/domain_types.js +14 -0
- package/lib/MerchiSDK/constants/domain_types.test.js +5 -0
- package/lib/MerchiSDK/constants/errors.js +33 -0
- package/lib/MerchiSDK/constants/event_types.js +7 -0
- package/lib/MerchiSDK/constants/event_types.test.js +5 -0
- package/lib/MerchiSDK/constants/field_types.js +15 -0
- package/lib/MerchiSDK/constants/field_types.test.js +5 -0
- package/lib/MerchiSDK/constants/input_types.js +15 -0
- package/lib/MerchiSDK/constants/input_types.test.js +5 -0
- package/lib/MerchiSDK/constants/inventory_status.test.js +5 -0
- package/lib/MerchiSDK/constants/inventory_statuses.js +8 -0
- package/lib/MerchiSDK/constants/invoice_types.js +7 -0
- package/lib/MerchiSDK/constants/invoice_types.test.js +5 -0
- package/lib/MerchiSDK/constants/item_types.js +7 -0
- package/lib/MerchiSDK/constants/item_types.test.js +5 -0
- package/lib/MerchiSDK/constants/job/drafting_status.js +9 -0
- package/lib/MerchiSDK/constants/job/drafting_status.test.js +5 -0
- package/lib/MerchiSDK/constants/job/payment_status.js +9 -0
- package/lib/MerchiSDK/constants/job/payment_status.test.js +5 -0
- package/lib/MerchiSDK/constants/job/production_status.js +14 -0
- package/lib/MerchiSDK/constants/job/production_status.test.js +5 -0
- package/lib/MerchiSDK/constants/job/shipment_status.js +13 -0
- package/lib/MerchiSDK/constants/job/shipment_status.test.js +5 -0
- package/lib/MerchiSDK/constants/job/supply_chain_request_status.js +8 -0
- package/lib/MerchiSDK/constants/job/supply_chain_request_status.test.js +5 -0
- package/lib/MerchiSDK/constants/job_priorities.js +8 -0
- package/lib/MerchiSDK/constants/job_priorities.test.js +5 -0
- package/lib/MerchiSDK/constants/job_status.js +51 -0
- package/lib/MerchiSDK/constants/job_status.test.js +5 -0
- package/lib/MerchiSDK/constants/job_types.js +17 -0
- package/lib/MerchiSDK/constants/job_types.test.js +5 -0
- package/lib/MerchiSDK/constants/notification_sections.js +15 -0
- package/lib/MerchiSDK/constants/notification_sections.test.js +5 -0
- package/lib/MerchiSDK/constants/notification_types.js +99 -0
- package/lib/MerchiSDK/constants/notification_types.test.js +5 -0
- package/lib/MerchiSDK/constants/notification_urgencies.js +8 -0
- package/lib/MerchiSDK/constants/notification_urgencies.test.js +5 -0
- package/lib/MerchiSDK/constants/payment_types.js +12 -0
- package/lib/MerchiSDK/constants/payment_types.test.js +5 -0
- package/lib/MerchiSDK/constants/platform.js +6 -0
- package/lib/MerchiSDK/constants/platform.test.js +9 -0
- package/lib/MerchiSDK/constants/product_types.js +27 -0
- package/lib/MerchiSDK/constants/product_types.test.js +5 -0
- package/lib/MerchiSDK/constants/rights.js +7 -0
- package/lib/MerchiSDK/constants/rights.test.js +5 -0
- package/lib/MerchiSDK/constants/robots_meta_directives.js +2 -0
- package/lib/MerchiSDK/constants/robots_meta_directives.test.js +5 -0
- package/lib/MerchiSDK/constants/roles.js +26 -0
- package/lib/MerchiSDK/constants/roles.test.js +5 -0
- package/lib/MerchiSDK/constants/shipment_companies.js +20 -0
- package/lib/MerchiSDK/constants/shipment_companies.test.js +5 -0
- package/lib/MerchiSDK/constants/shipment_services.js +5 -0
- package/lib/MerchiSDK/constants/shipment_services.test.js +5 -0
- package/lib/MerchiSDK/constants/system_roles.js +5 -0
- package/lib/MerchiSDK/constants/system_roles.test.js +5 -0
- package/lib/MerchiSDK/constants/theme_foundations.js +8 -0
- package/lib/MerchiSDK/constants/theme_foundations.test.js +5 -0
- package/lib/MerchiSDK/constants/theme_status.js +7 -0
- package/lib/MerchiSDK/constants/theme_status.test.js +5 -0
- package/lib/MerchiSDK/constants/user_types.js +19 -0
- package/lib/MerchiSDK/constants/user_types.test.js +5 -0
- package/lib/MerchiSDK/constants/white_label_accessibilities.js +7 -0
- package/lib/MerchiSDK/constants/white_label_accessibilities.test.js +5 -0
- package/lib/MerchiSDK/cookie.js +17 -0
- package/lib/MerchiSDK/cookie.test.js +13 -0
- package/lib/MerchiSDK/entities/address.js +166 -0
- package/lib/MerchiSDK/entities/address.test.js +7 -0
- package/lib/MerchiSDK/entities/assignment.js +185 -0
- package/lib/MerchiSDK/entities/assignment.test.js +39 -0
- package/lib/MerchiSDK/entities/automatic_payment_relationship.js +77 -0
- package/lib/MerchiSDK/entities/automatic_payment_relationship.test.js +7 -0
- package/lib/MerchiSDK/entities/backup.js +44 -0
- package/lib/MerchiSDK/entities/backup.test.js +7 -0
- package/lib/MerchiSDK/entities/bank.js +116 -0
- package/lib/MerchiSDK/entities/bank.test.js +7 -0
- package/lib/MerchiSDK/entities/cart.js +203 -0
- package/lib/MerchiSDK/entities/cart.test.js +53 -0
- package/lib/MerchiSDK/entities/cart_item.js +153 -0
- package/lib/MerchiSDK/entities/cart_item.test.js +35 -0
- package/lib/MerchiSDK/entities/cart_shipment_group.js +62 -0
- package/lib/MerchiSDK/entities/cart_shipment_quote.js +85 -0
- package/lib/MerchiSDK/entities/category.js +92 -0
- package/lib/MerchiSDK/entities/category.test.js +53 -0
- package/lib/MerchiSDK/entities/company.js +648 -0
- package/lib/MerchiSDK/entities/company.test.js +7 -0
- package/lib/MerchiSDK/entities/company_invitation.js +82 -0
- package/lib/MerchiSDK/entities/company_invitation.test.js +7 -0
- package/lib/MerchiSDK/entities/component.js +209 -0
- package/lib/MerchiSDK/entities/component.test.js +13 -0
- package/lib/MerchiSDK/entities/component_tag.js +50 -0
- package/lib/MerchiSDK/entities/component_tag.test.js +7 -0
- package/lib/MerchiSDK/entities/component_version.js +80 -0
- package/lib/MerchiSDK/entities/component_version.test.js +7 -0
- package/lib/MerchiSDK/entities/country_tax.js +110 -0
- package/lib/MerchiSDK/entities/country_tax.test.js +12 -0
- package/lib/MerchiSDK/entities/discount.js +77 -0
- package/lib/MerchiSDK/entities/discount.test.js +21 -0
- package/lib/MerchiSDK/entities/discount_group.js +74 -0
- package/lib/MerchiSDK/entities/discount_group.test.js +7 -0
- package/lib/MerchiSDK/entities/domain.js +535 -0
- package/lib/MerchiSDK/entities/domain.test.js +76 -0
- package/lib/MerchiSDK/entities/domain_invitation.js +90 -0
- package/lib/MerchiSDK/entities/domain_invitation.test.js +7 -0
- package/lib/MerchiSDK/entities/domain_tag.js +100 -0
- package/lib/MerchiSDK/entities/domain_tag.test.js +7 -0
- package/lib/MerchiSDK/entities/draft.js +180 -0
- package/lib/MerchiSDK/entities/draft.test.js +40 -0
- package/lib/MerchiSDK/entities/draft_comment.js +132 -0
- package/lib/MerchiSDK/entities/draft_comment.test.js +7 -0
- package/lib/MerchiSDK/entities/draft_template.js +105 -0
- package/lib/MerchiSDK/entities/draft_template.test.js +7 -0
- package/lib/MerchiSDK/entities/email_address.js +68 -0
- package/lib/MerchiSDK/entities/email_address.test.js +7 -0
- package/lib/MerchiSDK/entities/email_counter.js +56 -0
- package/lib/MerchiSDK/entities/email_counter.test.js +7 -0
- package/lib/MerchiSDK/entities/enrolled_domain.js +85 -0
- package/lib/MerchiSDK/entities/enrolled_domain.test.js +7 -0
- package/lib/MerchiSDK/entities/exchange_rate.js +62 -0
- package/lib/MerchiSDK/entities/exchange_rate.test.js +7 -0
- package/lib/MerchiSDK/entities/file.js +384 -0
- package/lib/MerchiSDK/entities/file.test.js +39 -0
- package/lib/MerchiSDK/entities/internal_tag.js +120 -0
- package/lib/MerchiSDK/entities/internal_tag.test.js +7 -0
- package/lib/MerchiSDK/entities/inventory.js +120 -0
- package/lib/MerchiSDK/entities/inventory.test.js +27 -0
- package/lib/MerchiSDK/entities/inventory_unit_variation.js +64 -0
- package/lib/MerchiSDK/entities/inventory_unit_variation.test.js +7 -0
- package/lib/MerchiSDK/entities/invoice.js +420 -0
- package/lib/MerchiSDK/entities/invoice.test.js +40 -0
- package/lib/MerchiSDK/entities/item.js +102 -0
- package/lib/MerchiSDK/entities/item.test.js +18 -0
- package/lib/MerchiSDK/entities/job.js +744 -0
- package/lib/MerchiSDK/entities/job.test.js +104 -0
- package/lib/MerchiSDK/entities/job_comment.js +120 -0
- package/lib/MerchiSDK/entities/job_comment.test.js +7 -0
- package/lib/MerchiSDK/entities/matching_inventory.js +77 -0
- package/lib/MerchiSDK/entities/menu.js +78 -0
- package/lib/MerchiSDK/entities/menu.test.js +7 -0
- package/lib/MerchiSDK/entities/menu_item.js +76 -0
- package/lib/MerchiSDK/entities/menu_item.test.js +7 -0
- package/lib/MerchiSDK/entities/notification.js +234 -0
- package/lib/MerchiSDK/entities/notification.test.js +7 -0
- package/lib/MerchiSDK/entities/page.js +84 -0
- package/lib/MerchiSDK/entities/page.test.js +7 -0
- package/lib/MerchiSDK/entities/payment.js +141 -0
- package/lib/MerchiSDK/entities/payment.test.js +19 -0
- package/lib/MerchiSDK/entities/payment_device.js +87 -0
- package/lib/MerchiSDK/entities/payment_device.test.js +7 -0
- package/lib/MerchiSDK/entities/phone_number.js +98 -0
- package/lib/MerchiSDK/entities/phone_number.test.js +7 -0
- package/lib/MerchiSDK/entities/product.js +806 -0
- package/lib/MerchiSDK/entities/product.test.js +812 -0
- package/lib/MerchiSDK/entities/production_comment.js +120 -0
- package/lib/MerchiSDK/entities/production_comment.test.js +7 -0
- package/lib/MerchiSDK/entities/quote.js +208 -0
- package/lib/MerchiSDK/entities/quote.test.js +108 -0
- package/lib/MerchiSDK/entities/quote_item.js +121 -0
- package/lib/MerchiSDK/entities/quote_item.test.js +57 -0
- package/lib/MerchiSDK/entities/seo_domain_page.js +82 -0
- package/lib/MerchiSDK/entities/seo_domain_page.test.js +7 -0
- package/lib/MerchiSDK/entities/session.js +77 -0
- package/lib/MerchiSDK/entities/session.test.js +7 -0
- package/lib/MerchiSDK/entities/shipment.js +401 -0
- package/lib/MerchiSDK/entities/shipment.test.js +29 -0
- package/lib/MerchiSDK/entities/shipment_item.js +49 -0
- package/lib/MerchiSDK/entities/shipment_item.test.js +7 -0
- package/lib/MerchiSDK/entities/shipment_item_fulfillment.js +48 -0
- package/lib/MerchiSDK/entities/shipment_item_fulfillment.test.js +7 -0
- package/lib/MerchiSDK/entities/shipment_method.js +146 -0
- package/lib/MerchiSDK/entities/shipment_method.test.js +7 -0
- package/lib/MerchiSDK/entities/shipment_method_variation.js +104 -0
- package/lib/MerchiSDK/entities/shipment_method_variation.test.js +7 -0
- package/lib/MerchiSDK/entities/short_url.js +95 -0
- package/lib/MerchiSDK/entities/short_url.test.js +7 -0
- package/lib/MerchiSDK/entities/subscription_plan.js +172 -0
- package/lib/MerchiSDK/entities/subscription_plan.test.js +7 -0
- package/lib/MerchiSDK/entities/supply_domain.js +73 -0
- package/lib/MerchiSDK/entities/supply_domain.test.js +7 -0
- package/lib/MerchiSDK/entities/system_role.js +50 -0
- package/lib/MerchiSDK/entities/system_role.test.js +7 -0
- package/lib/MerchiSDK/entities/theme.js +614 -0
- package/lib/MerchiSDK/entities/theme.test.js +40 -0
- package/lib/MerchiSDK/entities/theme_css_setting.js +67 -0
- package/lib/MerchiSDK/entities/theme_css_setting.test.js +7 -0
- package/lib/MerchiSDK/entities/user.js +749 -0
- package/lib/MerchiSDK/entities/user.test.js +158 -0
- package/lib/MerchiSDK/entities/user_company.js +78 -0
- package/lib/MerchiSDK/entities/user_company.test.js +7 -0
- package/lib/MerchiSDK/entities/variation.js +147 -0
- package/lib/MerchiSDK/entities/variation.test.js +7 -0
- package/lib/MerchiSDK/entities/variation_field.js +313 -0
- package/lib/MerchiSDK/entities/variation_field.test.js +70 -0
- package/lib/MerchiSDK/entities/variation_fields_option.js +190 -0
- package/lib/MerchiSDK/entities/variation_fields_option.test.js +48 -0
- package/lib/MerchiSDK/entities/variation_option.js +129 -0
- package/lib/MerchiSDK/entities/variation_option.test.js +7 -0
- package/lib/MerchiSDK/entities/variations_group.js +111 -0
- package/lib/MerchiSDK/entities/variations_group.test.js +7 -0
- package/lib/MerchiSDK/entity.js +896 -0
- package/lib/MerchiSDK/merchi.js +332 -0
- package/lib/MerchiSDK/merchi.test.js +36 -0
- package/lib/MerchiSDK/request.js +137 -0
- package/lib/MerchiSDK/request.test.js +47 -0
- package/lib/MerchiSDK/test_util.js +20 -0
- package/lib/MerchiSDK/toasts.js +28 -0
- package/lib/MerchiSDK/toasts.test.js +47 -0
- package/lib/MerchiSDK/util/float.js +25 -0
- package/lib/MerchiSDK/util/query_string.js +12 -0
- package/lib/MerchiSDK/util/query_string.test.js +7 -0
- package/lib/MerchiSDK/util/validation.js +4 -0
- package/lib/MerchiSDK/util/validation.test.js +13 -0
- package/lib/MerchiSDK/uuid.js +9 -0
- package/lib/MerchiSDK/uuid.test.js +14 -0
- package/lib/assets/merchi-swipe-outline.png +0 -0
- package/lib/assets/product-not-found.png +0 -0
- package/lib/buttons/Button.js +24 -0
- package/lib/buttons/ButtonBack.js +38 -0
- package/lib/buttons/ButtonClearCart.js +19 -0
- package/lib/buttons/ButtonInvoiceDownload.js +96 -0
- package/lib/buttons/ButtonNext.js +45 -0
- package/lib/buttons/ButtonNextDynamic.js +23 -0
- package/lib/buttons/ButtonPay.js +28 -0
- package/lib/buttons/ButtonShipmentTabNext.js +33 -0
- package/lib/buttons/index.js +8 -0
- package/lib/components/Alert.js +27 -0
- package/lib/components/CartBody.js +15 -0
- package/lib/components/CartClient.js +52 -0
- package/lib/components/CartFooter.js +13 -0
- package/lib/components/CartItemRow.js +133 -0
- package/lib/components/CartPaymentSettingsInvalid.js +15 -0
- package/lib/components/CartShipment.js +57 -0
- package/lib/components/CartTabContent.js +13 -0
- package/lib/components/CartTabPanel.js +26 -0
- package/lib/components/CartTableContainer.js +13 -0
- package/lib/components/Collapse.js +33 -0
- package/lib/components/LoadingTemplate.js +25 -0
- package/lib/components/NoCartItems.js +18 -0
- package/lib/components/ShipmentGroupCard.js +132 -0
- package/lib/components/Table.js +12 -0
- package/lib/components/Title.js +28 -0
- package/lib/components/containers.js +32 -0
- package/lib/components/index.js +15 -0
- package/lib/forms/FormNewCustomer.js +157 -0
- package/lib/forms/FormReturningCustomer.js +93 -0
- package/lib/forms/FormShipmentAddressAndNotes.js +118 -0
- package/lib/forms/FormSquarePayment.js +17 -0
- package/lib/forms/FormStripePayment.js +17 -0
- package/lib/forms/InputAcceptUserTermsAndConditions.js +38 -0
- package/lib/forms/InputError.js +17 -0
- package/lib/forms/InputSelect.js +52 -0
- package/lib/forms/InputText.js +59 -0
- package/lib/forms/InputsAddress.js +226 -0
- package/lib/index.js +5 -0
- package/lib/panels/PanelCartItems.js +59 -0
- package/lib/panels/PanelCartShipment.js +74 -0
- package/lib/panels/PanelClearCart.js +49 -0
- package/lib/panels/PanelClientCheckout.js +80 -0
- package/lib/panels/PanelEditCartItem.js +63 -0
- package/lib/panels/PanelPaymentSuccess.js +70 -0
- package/lib/panels/index.js +8 -0
- package/lib/slices/sliceCart.js +178 -0
- package/lib/slices/sliceCartAlert.js +35 -0
- package/lib/slices/sliceCartItem.js +30 -0
- package/lib/slices/sliceCartPayment.js +47 -0
- package/lib/slices/sliceCartShipment.js +72 -0
- package/lib/slices/sliceFormReturningCustomer.js +24 -0
- package/lib/slices/sliceNewCustomerForm.js +23 -0
- package/lib/square/SquareCard.js +52 -0
- package/lib/square/actions.js +53 -0
- package/lib/square/slices/reducersSquare.js +8 -0
- package/lib/square/slices/sliceSquareAlerts.js +34 -0
- package/lib/square/slices/sliceSquareForm.js +30 -0
- package/lib/store.js +704 -0
- package/lib/stripe/StripeCardFields.js +131 -0
- package/lib/stripe/StripeCardForm.js +149 -0
- package/lib/stripe/StripePaymentButtons.js +99 -0
- package/lib/stripe/actions.js +203 -0
- package/lib/stripe/slices/sliceStripeAlerts.js +34 -0
- package/lib/stripe/slices/sliceStripeCardForm.js +8 -0
- package/lib/stripe/slices/sliceStripeForm.js +57 -0
- package/lib/stripe/utils.js +20 -0
- package/lib/styles/globals.scss +179 -0
- package/lib/tabs/CartNav.js +33 -0
- package/lib/tabs/NavTab.js +38 -0
- package/lib/utilities/address.js +343 -0
- package/lib/utilities/cart.js +91 -0
- package/lib/utilities/company.js +7 -0
- package/lib/utilities/cookie.js +135 -0
- package/lib/utilities/currency.js +220 -0
- package/lib/utilities/helpers.js +224 -0
- package/lib/utilities/invoice.js +120 -0
- package/lib/utilities/product.js +6 -0
- package/lib/utilities/user.js +77 -0
- package/lib/utilities/variations.js +48 -0
- package/package.json +90 -0
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _dec9, _dec10, _dec11, _dec12, _dec13, _class, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _descriptor9, _descriptor10, _descriptor11, _descriptor12, _descriptor13, _class2;
|
|
3
|
+
function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }
|
|
4
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
5
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
6
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
7
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
8
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
9
|
+
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
10
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
11
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
12
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
13
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
14
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
15
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
16
|
+
function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
|
|
17
|
+
function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'transform-class-properties is enabled and runs after the decorators transform.'); }
|
|
18
|
+
import { Entity } from '../entity';
|
|
19
|
+
export var ProductionComment = (_dec = ProductionComment.property({
|
|
20
|
+
type: Date
|
|
21
|
+
}), _dec2 = ProductionComment.property(), _dec3 = ProductionComment.property({
|
|
22
|
+
type: Date
|
|
23
|
+
}), _dec4 = ProductionComment.property(), _dec5 = ProductionComment.property(), _dec6 = ProductionComment.property(), _dec7 = ProductionComment.property(), _dec8 = ProductionComment.property(), _dec9 = ProductionComment.property({
|
|
24
|
+
arrayType: "MerchiFile"
|
|
25
|
+
}), _dec10 = ProductionComment.property(), _dec11 = ProductionComment.property({
|
|
26
|
+
arrayType: 'User'
|
|
27
|
+
}), _dec12 = ProductionComment.property({
|
|
28
|
+
arrayType: 'Notification'
|
|
29
|
+
}), _dec13 = ProductionComment.property(), (_class = (_class2 = /*#__PURE__*/function (_Entity) {
|
|
30
|
+
_inherits(ProductionComment, _Entity);
|
|
31
|
+
function ProductionComment() {
|
|
32
|
+
var _this;
|
|
33
|
+
_classCallCheck(this, ProductionComment);
|
|
34
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
35
|
+
args[_key] = arguments[_key];
|
|
36
|
+
}
|
|
37
|
+
_this = _callSuper(this, ProductionComment, [].concat(args));
|
|
38
|
+
_initializerDefineProperty(_this, "archived", _descriptor, _assertThisInitialized(_this));
|
|
39
|
+
_initializerDefineProperty(_this, "id", _descriptor2, _assertThisInitialized(_this));
|
|
40
|
+
_initializerDefineProperty(_this, "date", _descriptor3, _assertThisInitialized(_this));
|
|
41
|
+
_initializerDefineProperty(_this, "urgency", _descriptor4, _assertThisInitialized(_this));
|
|
42
|
+
_initializerDefineProperty(_this, "text", _descriptor5, _assertThisInitialized(_this));
|
|
43
|
+
_initializerDefineProperty(_this, "isUrgentQuestion", _descriptor6, _assertThisInitialized(_this));
|
|
44
|
+
_initializerDefineProperty(_this, "sendSms", _descriptor7, _assertThisInitialized(_this));
|
|
45
|
+
_initializerDefineProperty(_this, "sendEmail", _descriptor8, _assertThisInitialized(_this));
|
|
46
|
+
_initializerDefineProperty(_this, "files", _descriptor9, _assertThisInitialized(_this));
|
|
47
|
+
_initializerDefineProperty(_this, "user", _descriptor10, _assertThisInitialized(_this));
|
|
48
|
+
_initializerDefineProperty(_this, "forwards", _descriptor11, _assertThisInitialized(_this));
|
|
49
|
+
_initializerDefineProperty(_this, "notifications", _descriptor12, _assertThisInitialized(_this));
|
|
50
|
+
_initializerDefineProperty(_this, "assignment", _descriptor13, _assertThisInitialized(_this));
|
|
51
|
+
return _this;
|
|
52
|
+
}
|
|
53
|
+
return _createClass(ProductionComment);
|
|
54
|
+
}(Entity), _class2.resourceName = 'production_comments', _class2.singularName = 'productionComment', _class2.pluralName = 'productionComments', _class2), (_descriptor = _applyDecoratedDescriptor(_class.prototype, "archived", [_dec], {
|
|
55
|
+
configurable: true,
|
|
56
|
+
enumerable: true,
|
|
57
|
+
writable: true,
|
|
58
|
+
initializer: null
|
|
59
|
+
}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, "id", [_dec2], {
|
|
60
|
+
configurable: true,
|
|
61
|
+
enumerable: true,
|
|
62
|
+
writable: true,
|
|
63
|
+
initializer: null
|
|
64
|
+
}), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, "date", [_dec3], {
|
|
65
|
+
configurable: true,
|
|
66
|
+
enumerable: true,
|
|
67
|
+
writable: true,
|
|
68
|
+
initializer: null
|
|
69
|
+
}), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, "urgency", [_dec4], {
|
|
70
|
+
configurable: true,
|
|
71
|
+
enumerable: true,
|
|
72
|
+
writable: true,
|
|
73
|
+
initializer: null
|
|
74
|
+
}), _descriptor5 = _applyDecoratedDescriptor(_class.prototype, "text", [_dec5], {
|
|
75
|
+
configurable: true,
|
|
76
|
+
enumerable: true,
|
|
77
|
+
writable: true,
|
|
78
|
+
initializer: null
|
|
79
|
+
}), _descriptor6 = _applyDecoratedDescriptor(_class.prototype, "isUrgentQuestion", [_dec6], {
|
|
80
|
+
configurable: true,
|
|
81
|
+
enumerable: true,
|
|
82
|
+
writable: true,
|
|
83
|
+
initializer: null
|
|
84
|
+
}), _descriptor7 = _applyDecoratedDescriptor(_class.prototype, "sendSms", [_dec7], {
|
|
85
|
+
configurable: true,
|
|
86
|
+
enumerable: true,
|
|
87
|
+
writable: true,
|
|
88
|
+
initializer: null
|
|
89
|
+
}), _descriptor8 = _applyDecoratedDescriptor(_class.prototype, "sendEmail", [_dec8], {
|
|
90
|
+
configurable: true,
|
|
91
|
+
enumerable: true,
|
|
92
|
+
writable: true,
|
|
93
|
+
initializer: null
|
|
94
|
+
}), _descriptor9 = _applyDecoratedDescriptor(_class.prototype, "files", [_dec9], {
|
|
95
|
+
configurable: true,
|
|
96
|
+
enumerable: true,
|
|
97
|
+
writable: true,
|
|
98
|
+
initializer: null
|
|
99
|
+
}), _descriptor10 = _applyDecoratedDescriptor(_class.prototype, "user", [_dec10], {
|
|
100
|
+
configurable: true,
|
|
101
|
+
enumerable: true,
|
|
102
|
+
writable: true,
|
|
103
|
+
initializer: null
|
|
104
|
+
}), _descriptor11 = _applyDecoratedDescriptor(_class.prototype, "forwards", [_dec11], {
|
|
105
|
+
configurable: true,
|
|
106
|
+
enumerable: true,
|
|
107
|
+
writable: true,
|
|
108
|
+
initializer: null
|
|
109
|
+
}), _descriptor12 = _applyDecoratedDescriptor(_class.prototype, "notifications", [_dec12], {
|
|
110
|
+
configurable: true,
|
|
111
|
+
enumerable: true,
|
|
112
|
+
writable: true,
|
|
113
|
+
initializer: null
|
|
114
|
+
}), _descriptor13 = _applyDecoratedDescriptor(_class.prototype, "assignment", [_dec13], {
|
|
115
|
+
configurable: true,
|
|
116
|
+
enumerable: true,
|
|
117
|
+
writable: true,
|
|
118
|
+
initializer: null
|
|
119
|
+
})), _class));
|
|
120
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJFbnRpdHkiLCJQcm9kdWN0aW9uQ29tbWVudCIsIl9kZWMiLCJwcm9wZXJ0eSIsInR5cGUiLCJEYXRlIiwiX2RlYzIiLCJfZGVjMyIsIl9kZWM0IiwiX2RlYzUiLCJfZGVjNiIsIl9kZWM3IiwiX2RlYzgiLCJfZGVjOSIsImFycmF5VHlwZSIsIl9kZWMxMCIsIl9kZWMxMSIsIl9kZWMxMiIsIl9kZWMxMyIsIl9jbGFzcyIsIl9jbGFzczIiLCJfRW50aXR5IiwiX2luaGVyaXRzIiwiX3RoaXMiLCJfY2xhc3NDYWxsQ2hlY2siLCJfbGVuIiwiYXJndW1lbnRzIiwibGVuZ3RoIiwiYXJncyIsIkFycmF5IiwiX2tleSIsIl9jYWxsU3VwZXIiLCJjb25jYXQiLCJfaW5pdGlhbGl6ZXJEZWZpbmVQcm9wZXJ0eSIsIl9kZXNjcmlwdG9yIiwiX2Fzc2VydFRoaXNJbml0aWFsaXplZCIsIl9kZXNjcmlwdG9yMiIsIl9kZXNjcmlwdG9yMyIsIl9kZXNjcmlwdG9yNCIsIl9kZXNjcmlwdG9yNSIsIl9kZXNjcmlwdG9yNiIsIl9kZXNjcmlwdG9yNyIsIl9kZXNjcmlwdG9yOCIsIl9kZXNjcmlwdG9yOSIsIl9kZXNjcmlwdG9yMTAiLCJfZGVzY3JpcHRvcjExIiwiX2Rlc2NyaXB0b3IxMiIsIl9kZXNjcmlwdG9yMTMiLCJfY3JlYXRlQ2xhc3MiLCJyZXNvdXJjZU5hbWUiLCJzaW5ndWxhck5hbWUiLCJwbHVyYWxOYW1lIiwiX2FwcGx5RGVjb3JhdGVkRGVzY3JpcHRvciIsInByb3RvdHlwZSIsImNvbmZpZ3VyYWJsZSIsImVudW1lcmFibGUiLCJ3cml0YWJsZSIsImluaXRpYWxpemVyIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL01lcmNoaVNESy9lbnRpdGllcy9wcm9kdWN0aW9uX2NvbW1lbnQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQXNzaWdubWVudCB9IGZyb20gJy4vYXNzaWdubWVudCc7XG5pbXBvcnQgeyBFbnRpdHkgfSBmcm9tICcuLi9lbnRpdHknO1xuaW1wb3J0IHsgTWVyY2hpRmlsZSB9IGZyb20gJy4vZmlsZSc7XG5pbXBvcnQgeyBOb3RpZmljYXRpb24gfSBmcm9tICcuL25vdGlmaWNhdGlvbic7XG5pbXBvcnQgeyBVc2VyIH0gZnJvbSAnLi91c2VyJztcblxuZXhwb3J0IGNsYXNzIFByb2R1Y3Rpb25Db21tZW50IGV4dGVuZHMgRW50aXR5IHtcbiAgcHJvdGVjdGVkIHN0YXRpYyByZXNvdXJjZU5hbWUgPSAncHJvZHVjdGlvbl9jb21tZW50cyc7XG4gIHByb3RlY3RlZCBzdGF0aWMgc2luZ3VsYXJOYW1lID0gJ3Byb2R1Y3Rpb25Db21tZW50JztcbiAgcHJvdGVjdGVkIHN0YXRpYyBwbHVyYWxOYW1lID0gJ3Byb2R1Y3Rpb25Db21tZW50cyc7XG5cbiAgQFByb2R1Y3Rpb25Db21tZW50LnByb3BlcnR5KHt0eXBlOiBEYXRlfSlcbiAgcHVibGljIGFyY2hpdmVkPzogRGF0ZSB8IG51bGw7XG5cbiAgQFByb2R1Y3Rpb25Db21tZW50LnByb3BlcnR5KClcbiAgcHVibGljIGlkPzogbnVtYmVyO1xuXG4gIEBQcm9kdWN0aW9uQ29tbWVudC5wcm9wZXJ0eSh7dHlwZTogRGF0ZX0pXG4gIHB1YmxpYyBkYXRlPzogRGF0ZSB8IG51bGw7XG5cbiAgQFByb2R1Y3Rpb25Db21tZW50LnByb3BlcnR5KClcbiAgcHVibGljIHVyZ2VuY3k/OiBudW1iZXI7XG5cbiAgQFByb2R1Y3Rpb25Db21tZW50LnByb3BlcnR5KClcbiAgcHVibGljIHRleHQ/OiBzdHJpbmc7XG5cbiAgQFByb2R1Y3Rpb25Db21tZW50LnByb3BlcnR5KClcbiAgcHVibGljIGlzVXJnZW50UXVlc3Rpb24/OiBib29sZWFuO1xuXG4gIEBQcm9kdWN0aW9uQ29tbWVudC5wcm9wZXJ0eSgpXG4gIHB1YmxpYyBzZW5kU21zPzogYm9vbGVhbjtcblxuICBAUHJvZHVjdGlvbkNvbW1lbnQucHJvcGVydHkoKVxuICBwdWJsaWMgc2VuZEVtYWlsPzogYm9vbGVhbjtcblxuICBAUHJvZHVjdGlvbkNvbW1lbnQucHJvcGVydHkoe2FycmF5VHlwZTogXCJNZXJjaGlGaWxlXCJ9KVxuICBwdWJsaWMgZmlsZXM/OiBNZXJjaGlGaWxlW107XG5cbiAgQFByb2R1Y3Rpb25Db21tZW50LnByb3BlcnR5KClcbiAgcHVibGljIHVzZXI/OiBVc2VyO1xuXG4gIEBQcm9kdWN0aW9uQ29tbWVudC5wcm9wZXJ0eSh7YXJyYXlUeXBlOiAnVXNlcid9KVxuICBwdWJsaWMgZm9yd2FyZHM/OiBVc2VyW107XG5cbiAgQFByb2R1Y3Rpb25Db21tZW50LnByb3BlcnR5KHthcnJheVR5cGU6ICdOb3RpZmljYXRpb24nfSlcbiAgcHVibGljIG5vdGlmaWNhdGlvbnM/OiBOb3RpZmljYXRpb25bXTtcblxuICBAUHJvZHVjdGlvbkNvbW1lbnQucHJvcGVydHkoKVxuICBwdWJsaWMgYXNzaWdubWVudD86IEFzc2lnbm1lbnQ7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQ0EsU0FBU0EsTUFBTSxRQUFRLFdBQVc7QUFLbEMsV0FBYUMsaUJBQWlCLElBQUFDLElBQUEsR0FLM0JELGlCQUFpQixDQUFDRSxRQUFRLENBQUM7RUFBQ0MsSUFBSSxFQUFFQztBQUFJLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBR3hDTCxpQkFBaUIsQ0FBQ0UsUUFBUSxDQUFDLENBQUMsRUFBQUksS0FBQSxHQUc1Qk4saUJBQWlCLENBQUNFLFFBQVEsQ0FBQztFQUFDQyxJQUFJLEVBQUVDO0FBQUksQ0FBQyxDQUFDLEVBQUFHLEtBQUEsR0FHeENQLGlCQUFpQixDQUFDRSxRQUFRLENBQUMsQ0FBQyxFQUFBTSxLQUFBLEdBRzVCUixpQkFBaUIsQ0FBQ0UsUUFBUSxDQUFDLENBQUMsRUFBQU8sS0FBQSxHQUc1QlQsaUJBQWlCLENBQUNFLFFBQVEsQ0FBQyxDQUFDLEVBQUFRLEtBQUEsR0FHNUJWLGlCQUFpQixDQUFDRSxRQUFRLENBQUMsQ0FBQyxFQUFBUyxLQUFBLEdBRzVCWCxpQkFBaUIsQ0FBQ0UsUUFBUSxDQUFDLENBQUMsRUFB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
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Merchi } from '../merchi';
|
|
2
|
+
test('can make ProductionComment', function () {
|
|
3
|
+
var merchi = new Merchi();
|
|
4
|
+
var productionComment = new merchi.ProductionComment();
|
|
5
|
+
expect(productionComment).toBeTruthy();
|
|
6
|
+
});
|
|
7
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNZXJjaGkiLCJ0ZXN0IiwibWVyY2hpIiwicHJvZHVjdGlvbkNvbW1lbnQiLCJQcm9kdWN0aW9uQ29tbWVudCIsImV4cGVjdCIsInRvQmVUcnV0aHkiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvTWVyY2hpU0RLL2VudGl0aWVzL3Byb2R1Y3Rpb25fY29tbWVudC50ZXN0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1lcmNoaSB9IGZyb20gJy4uL21lcmNoaSc7XG5cbnRlc3QoJ2NhbiBtYWtlIFByb2R1Y3Rpb25Db21tZW50JywgKCkgPT4ge1xuICBjb25zdCBtZXJjaGkgPSBuZXcgTWVyY2hpKCk7XG4gIGNvbnN0IHByb2R1Y3Rpb25Db21tZW50ID0gbmV3IG1lcmNoaS5Qcm9kdWN0aW9uQ29tbWVudCgpO1xuICBleHBlY3QocHJvZHVjdGlvbkNvbW1lbnQpLnRvQmVUcnV0aHkoKTtcbn0pO1xuIl0sIm1hcHBpbmdzIjoiQUFBQSxTQUFTQSxNQUFNLFFBQVEsV0FBVztBQUVsQ0MsSUFBSSxDQUFDLDRCQUE0QixFQUFFLFlBQU07RUFDdkMsSUFBTUMsTUFBTSxHQUFHLElBQUlGLE1BQU0sQ0FBQyxDQUFDO0VBQzNCLElBQU1HLGlCQUFpQixHQUFHLElBQUlELE1BQU0sQ0FBQ0UsaUJBQWlCLENBQUMsQ0FBQztFQUN4REMsTUFBTSxDQUFDRixpQkFBaUIsQ0FBQyxDQUFDRyxVQUFVLENBQUMsQ0FBQztBQUN4QyxDQUFDLENBQUMifQ==
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
2
|
+
var _dec, _dec2, _dec3, _dec4, _dec5, _dec6, _dec7, _dec8, _class, _descriptor, _descriptor2, _descriptor3, _descriptor4, _descriptor5, _descriptor6, _descriptor7, _descriptor8, _class2;
|
|
3
|
+
function _initializerDefineProperty(target, property, descriptor, context) { if (!descriptor) return; Object.defineProperty(target, property, { enumerable: descriptor.enumerable, configurable: descriptor.configurable, writable: descriptor.writable, value: descriptor.initializer ? descriptor.initializer.call(context) : void 0 }); }
|
|
4
|
+
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
|
5
|
+
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
|
6
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
7
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
8
|
+
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
|
9
|
+
function _callSuper(t, o, e) { return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e)); }
|
|
10
|
+
function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return _assertThisInitialized(self); }
|
|
11
|
+
function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); } catch (t) {} return (_isNativeReflectConstruct = function _isNativeReflectConstruct() { return !!t; })(); }
|
|
12
|
+
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
|
13
|
+
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
|
14
|
+
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
|
15
|
+
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
|
|
16
|
+
function _applyDecoratedDescriptor(target, property, decorators, descriptor, context) { var desc = {}; Object.keys(descriptor).forEach(function (key) { desc[key] = descriptor[key]; }); desc.enumerable = !!desc.enumerable; desc.configurable = !!desc.configurable; if ('value' in desc || desc.initializer) { desc.writable = true; } desc = decorators.slice().reverse().reduce(function (desc, decorator) { return decorator(target, property, desc) || desc; }, desc); if (context && desc.initializer !== void 0) { desc.value = desc.initializer ? desc.initializer.call(context) : void 0; desc.initializer = undefined; } if (desc.initializer === void 0) { Object.defineProperty(target, property, desc); desc = null; } return desc; }
|
|
17
|
+
function _initializerWarningHelper(descriptor, context) { throw new Error('Decorating class property failed. Please ensure that ' + 'transform-class-properties is enabled and runs after the decorators transform.'); }
|
|
18
|
+
import { Invoice } from './invoice';
|
|
19
|
+
import { Entity } from '../entity';
|
|
20
|
+
import { kahanSum } from '../util/float';
|
|
21
|
+
export var Quote = (_dec = Quote.property({
|
|
22
|
+
type: Date
|
|
23
|
+
}), _dec2 = Quote.property(), _dec3 = Quote.property(), _dec4 = Quote.property({
|
|
24
|
+
type: Date
|
|
25
|
+
}), _dec5 = Quote.property({
|
|
26
|
+
arrayType: 'Shipment'
|
|
27
|
+
}), _dec6 = Quote.property({
|
|
28
|
+
arrayType: 'QuoteItem'
|
|
29
|
+
}), _dec7 = Quote.property({
|
|
30
|
+
arrayType: 'Assignment'
|
|
31
|
+
}), _dec8 = Quote.property({
|
|
32
|
+
type: Invoice
|
|
33
|
+
}), (_class = (_class2 = /*#__PURE__*/function (_Entity) {
|
|
34
|
+
_inherits(Quote, _Entity);
|
|
35
|
+
function Quote() {
|
|
36
|
+
var _this;
|
|
37
|
+
_classCallCheck(this, Quote);
|
|
38
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
39
|
+
args[_key] = arguments[_key];
|
|
40
|
+
}
|
|
41
|
+
_this = _callSuper(this, Quote, [].concat(args));
|
|
42
|
+
_initializerDefineProperty(_this, "archived", _descriptor, _assertThisInitialized(_this));
|
|
43
|
+
_initializerDefineProperty(_this, "currency", _descriptor2, _assertThisInitialized(_this));
|
|
44
|
+
_initializerDefineProperty(_this, "id", _descriptor3, _assertThisInitialized(_this));
|
|
45
|
+
_initializerDefineProperty(_this, "agreedDeadline", _descriptor4, _assertThisInitialized(_this));
|
|
46
|
+
_initializerDefineProperty(_this, "shipments", _descriptor5, _assertThisInitialized(_this));
|
|
47
|
+
_initializerDefineProperty(_this, "quoteItems", _descriptor6, _assertThisInitialized(_this));
|
|
48
|
+
_initializerDefineProperty(_this, "assignments", _descriptor7, _assertThisInitialized(_this));
|
|
49
|
+
_initializerDefineProperty(_this, "invoice", _descriptor8, _assertThisInitialized(_this));
|
|
50
|
+
_this.quoteTotal = function (options) {
|
|
51
|
+
var _ref = options ? options : {},
|
|
52
|
+
_ref$strictEmbed = _ref.strictEmbed,
|
|
53
|
+
strictEmbed = _ref$strictEmbed === void 0 ? true : _ref$strictEmbed;
|
|
54
|
+
var _assertThisInitialize = _assertThisInitialized(_this),
|
|
55
|
+
_assertThisInitialize2 = _assertThisInitialize.quoteItems,
|
|
56
|
+
quoteItems = _assertThisInitialize2 === void 0 ? [] : _assertThisInitialize2,
|
|
57
|
+
_assertThisInitialize3 = _assertThisInitialize.shipments,
|
|
58
|
+
shipments = _assertThisInitialize3 === void 0 ? [] : _assertThisInitialize3;
|
|
59
|
+
if (strictEmbed && _this.quoteItems === undefined) {
|
|
60
|
+
throw new Error('quoteItems is undefined, did you forget to embed it?');
|
|
61
|
+
}
|
|
62
|
+
if (strictEmbed && _this.shipments === undefined) {
|
|
63
|
+
throw new Error('shipments is undefined, did you forget to embed it?');
|
|
64
|
+
}
|
|
65
|
+
var quoteItemsTotal = kahanSum(quoteItems.map(function (qI) {
|
|
66
|
+
return parseFloat(qI.calculateTotal(options));
|
|
67
|
+
})).toFixed(3);
|
|
68
|
+
var shipmentItemsTotal = kahanSum(shipments.map(function (s) {
|
|
69
|
+
return parseFloat(s.calculateTotal(options));
|
|
70
|
+
})).toFixed(3);
|
|
71
|
+
return (parseFloat(quoteItemsTotal) + parseFloat(shipmentItemsTotal)).toFixed(3);
|
|
72
|
+
};
|
|
73
|
+
_this.calculateTotal = _this.quoteTotal;
|
|
74
|
+
_this.calculateSubTotal = function (options) {
|
|
75
|
+
var _ref2 = options ? options : {},
|
|
76
|
+
_ref2$strictEmbed = _ref2.strictEmbed,
|
|
77
|
+
strictEmbed = _ref2$strictEmbed === void 0 ? true : _ref2$strictEmbed;
|
|
78
|
+
var _assertThisInitialize4 = _assertThisInitialized(_this),
|
|
79
|
+
_assertThisInitialize5 = _assertThisInitialize4.quoteItems,
|
|
80
|
+
quoteItems = _assertThisInitialize5 === void 0 ? [] : _assertThisInitialize5,
|
|
81
|
+
_assertThisInitialize6 = _assertThisInitialize4.shipments,
|
|
82
|
+
shipments = _assertThisInitialize6 === void 0 ? [] : _assertThisInitialize6;
|
|
83
|
+
if (strictEmbed && _this.quoteItems === undefined) {
|
|
84
|
+
throw new Error('quoteItems is undefined, did you forget to embed it?');
|
|
85
|
+
}
|
|
86
|
+
if (strictEmbed && _this.shipments === undefined) {
|
|
87
|
+
throw new Error('shipments is undefined, did you forget to embed it?');
|
|
88
|
+
}
|
|
89
|
+
var quoteItemsTotal = kahanSum(quoteItems.map(function (qI) {
|
|
90
|
+
return parseFloat(qI.calculateSubTotal(options));
|
|
91
|
+
}));
|
|
92
|
+
var shipmentItemsTotal = kahanSum(shipments.map(function (s) {
|
|
93
|
+
return parseFloat(s.calculateSubTotal(options));
|
|
94
|
+
}));
|
|
95
|
+
return (quoteItemsTotal + shipmentItemsTotal).toFixed(3);
|
|
96
|
+
};
|
|
97
|
+
_this.calculateTaxAmount = function (options) {
|
|
98
|
+
var _ref3 = options ? options : {},
|
|
99
|
+
_ref3$strictEmbed = _ref3.strictEmbed,
|
|
100
|
+
strictEmbed = _ref3$strictEmbed === void 0 ? true : _ref3$strictEmbed;
|
|
101
|
+
var _assertThisInitialize7 = _assertThisInitialized(_this),
|
|
102
|
+
_assertThisInitialize8 = _assertThisInitialize7.quoteItems,
|
|
103
|
+
quoteItems = _assertThisInitialize8 === void 0 ? [] : _assertThisInitialize8,
|
|
104
|
+
_assertThisInitialize9 = _assertThisInitialize7.shipments,
|
|
105
|
+
shipments = _assertThisInitialize9 === void 0 ? [] : _assertThisInitialize9;
|
|
106
|
+
if (strictEmbed && _this.quoteItems === undefined) {
|
|
107
|
+
throw new Error('quoteItems is undefined, did you forget to embed it?');
|
|
108
|
+
}
|
|
109
|
+
if (strictEmbed && _this.shipments === undefined) {
|
|
110
|
+
throw new Error('shipments is undefined, did you forget to embed it?');
|
|
111
|
+
}
|
|
112
|
+
var quoteItemsTotal = kahanSum(quoteItems.map(function (qI) {
|
|
113
|
+
return parseFloat(qI.calculateTaxAmount(options));
|
|
114
|
+
}));
|
|
115
|
+
var shipmentItemsTotal = kahanSum(shipments.map(function (s) {
|
|
116
|
+
return parseFloat(s.calculateTaxAmount(options));
|
|
117
|
+
}));
|
|
118
|
+
return (quoteItemsTotal + shipmentItemsTotal).toFixed(3);
|
|
119
|
+
};
|
|
120
|
+
_this.findQuoteItemIndex = function (quoteItemId) {
|
|
121
|
+
if (_this.quoteItems === undefined) {
|
|
122
|
+
throw new Error('quoteItems is undefined, did you forget to embed it?');
|
|
123
|
+
}
|
|
124
|
+
function checkEqualId(quoteItem) {
|
|
125
|
+
return quoteItem.id === quoteItemId;
|
|
126
|
+
}
|
|
127
|
+
return _this.quoteItems.findIndex(checkEqualId);
|
|
128
|
+
};
|
|
129
|
+
_this.removeQuoteItem = function (quoteItem) {
|
|
130
|
+
if (_this.quoteItems === undefined) {
|
|
131
|
+
throw new Error('quoteItems is undefined, did you forget to embed it?');
|
|
132
|
+
}
|
|
133
|
+
if (quoteItem.id === undefined) {
|
|
134
|
+
throw new Error('quoteItem.id is undefined, did you forget to embed it?');
|
|
135
|
+
}
|
|
136
|
+
var index = _this.findQuoteItemIndex(quoteItem.id);
|
|
137
|
+
if (index > -1) {
|
|
138
|
+
_this.quoteItems.splice(index, 1);
|
|
139
|
+
}
|
|
140
|
+
};
|
|
141
|
+
_this.deadlineTimeDifference = function () {
|
|
142
|
+
if (_this.agreedDeadline === undefined) {
|
|
143
|
+
var err = 'agreedDeadline is undefined, did you forget to embed it?';
|
|
144
|
+
throw new Error(err);
|
|
145
|
+
}
|
|
146
|
+
if (_this.assignments === undefined) {
|
|
147
|
+
var _err = 'assignments is undefiend, did you forget to embed it?';
|
|
148
|
+
throw new Error(_err);
|
|
149
|
+
}
|
|
150
|
+
if (_this.assignments.length < 1) {
|
|
151
|
+
return null;
|
|
152
|
+
}
|
|
153
|
+
if (_this.agreedDeadline === null) {
|
|
154
|
+
return null;
|
|
155
|
+
}
|
|
156
|
+
var assignment = _this.assignments[0];
|
|
157
|
+
if (assignment.productionDeadline === undefined) {
|
|
158
|
+
var _err2 = 'productionDeadline is undefined, did you forget to embed' + 'it?';
|
|
159
|
+
throw new Error(_err2);
|
|
160
|
+
}
|
|
161
|
+
var productionDeadline = assignment.productionDeadline;
|
|
162
|
+
return productionDeadline.valueOf() - _this.agreedDeadline.valueOf();
|
|
163
|
+
};
|
|
164
|
+
return _this;
|
|
165
|
+
}
|
|
166
|
+
return _createClass(Quote);
|
|
167
|
+
}(Entity), _class2.resourceName = 'quotes', _class2.singularName = 'quote', _class2.pluralName = 'quotes', _class2), (_descriptor = _applyDecoratedDescriptor(_class.prototype, "archived", [_dec], {
|
|
168
|
+
configurable: true,
|
|
169
|
+
enumerable: true,
|
|
170
|
+
writable: true,
|
|
171
|
+
initializer: null
|
|
172
|
+
}), _descriptor2 = _applyDecoratedDescriptor(_class.prototype, "currency", [_dec2], {
|
|
173
|
+
configurable: true,
|
|
174
|
+
enumerable: true,
|
|
175
|
+
writable: true,
|
|
176
|
+
initializer: null
|
|
177
|
+
}), _descriptor3 = _applyDecoratedDescriptor(_class.prototype, "id", [_dec3], {
|
|
178
|
+
configurable: true,
|
|
179
|
+
enumerable: true,
|
|
180
|
+
writable: true,
|
|
181
|
+
initializer: null
|
|
182
|
+
}), _descriptor4 = _applyDecoratedDescriptor(_class.prototype, "agreedDeadline", [_dec4], {
|
|
183
|
+
configurable: true,
|
|
184
|
+
enumerable: true,
|
|
185
|
+
writable: true,
|
|
186
|
+
initializer: null
|
|
187
|
+
}), _descriptor5 = _applyDecoratedDescriptor(_class.prototype, "shipments", [_dec5], {
|
|
188
|
+
configurable: true,
|
|
189
|
+
enumerable: true,
|
|
190
|
+
writable: true,
|
|
191
|
+
initializer: null
|
|
192
|
+
}), _descriptor6 = _applyDecoratedDescriptor(_class.prototype, "quoteItems", [_dec6], {
|
|
193
|
+
configurable: true,
|
|
194
|
+
enumerable: true,
|
|
195
|
+
writable: true,
|
|
196
|
+
initializer: null
|
|
197
|
+
}), _descriptor7 = _applyDecoratedDescriptor(_class.prototype, "assignments", [_dec7], {
|
|
198
|
+
configurable: true,
|
|
199
|
+
enumerable: true,
|
|
200
|
+
writable: true,
|
|
201
|
+
initializer: null
|
|
202
|
+
}), _descriptor8 = _applyDecoratedDescriptor(_class.prototype, "invoice", [_dec8], {
|
|
203
|
+
configurable: true,
|
|
204
|
+
enumerable: true,
|
|
205
|
+
writable: true,
|
|
206
|
+
initializer: null
|
|
207
|
+
})), _class));
|
|
208
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJJbnZvaWNlIiwiRW50aXR5Iiwia2FoYW5TdW0iLCJRdW90ZSIsIl9kZWMiLCJwcm9wZXJ0eSIsInR5cGUiLCJEYXRlIiwiX2RlYzIiLCJfZGVjMyIsIl9kZWM0IiwiX2RlYzUiLCJhcnJheVR5cGUiLCJfZGVjNiIsIl9kZWM3IiwiX2RlYzgiLCJfY2xhc3MiLCJfY2xhc3MyIiwiX0VudGl0eSIsIl9pbmhlcml0cyIsIl90aGlzIiwiX2NsYXNzQ2FsbENoZWNrIiwiX2xlbiIsImFyZ3VtZW50cyIsImxlbmd0aCIsImFyZ3MiLCJBcnJheSIsIl9rZXkiLCJfY2FsbFN1cGVyIiwiY29uY2F0IiwiX2luaXRpYWxpemVyRGVmaW5lUHJvcGVydHkiLCJfZGVzY3JpcHRvciIsIl9hc3NlcnRUaGlzSW5pdGlhbGl6ZWQiLCJfZGVzY3JpcHRvcjIiLCJfZGVzY3JpcHRvcjMiLCJfZGVzY3JpcHRvcjQiLCJfZGVzY3JpcHRvcjUiLCJfZGVzY3JpcHRvcjYiLCJfZGVzY3JpcHRvcjciLCJfZGVzY3JpcHRvcjgiLCJxdW90ZVRvdGFsIiwib3B0aW9ucyIsIl9yZWYiLCJfcmVmJHN0cmljdEVtYmVkIiwic3RyaWN0RW1iZWQiLCJfYXNzZXJ0VGhpc0luaXRpYWxpemUiLCJfYXNzZXJ0VGhpc0luaXRpYWxpemUyIiwicXVvdGVJdGVtcyIsIl9hc3NlcnRUaGlzSW5pdGlhbGl6ZTMiLCJzaGlwbWVudHMiLCJ1bmRlZmluZWQiLCJFcnJvciIsInF1b3RlSXRlbXNUb3RhbCIsIm1hcCIsInFJIiwicGFyc2VGbG9hdCIsImNhbGN1bGF0ZVRvdGFsIiwidG9GaXhlZCIsInNoaXBtZW50SXRlbXNUb3RhbCIsInMiLCJjYWxjdWxhdGVTdWJUb3RhbCIsIl9yZWYyIiwiX3JlZjIkc3RyaWN0RW1iZWQiLCJfYXNzZXJ0VGhpc0luaXRpYWxpemU0IiwiX2Fzc2VydFRoaXNJbml0aWFsaXplNSIsIl9hc3NlcnRUaGlzSW5pdGlhbGl6ZTYiLCJjYWxjdWxhdGVUYXhBbW91bnQiLCJfcmVmMyIsIl9yZWYzJHN0cmljdEVtYmVkIiwiX2Fzc2VydFRoaXNJbml0aWFsaXplNyIsIl9hc3NlcnRUaGlzSW5pdGlhbGl6ZTgiLCJfYXNzZXJ0VGhpc0luaXRpYWxpemU5IiwiZmluZFF1b3RlSXRlbUluZGV4IiwicXVvdGVJdGVtSWQiLCJjaGVja0VxdWFsSWQiLCJxdW90ZUl0ZW0iLCJpZCIsImZpbmRJbmRleCIsInJlbW92ZVF1b3RlSXRlbSIsImluZGV4Iiwic3BsaWNlIiwiZGVhZGxpbmVUaW1lRGlmZmVyZW5jZSIsImFncmVlZERlYWRsaW5lIiwiZXJyIiwiYXNzaWdubWVudHMiLCJhc3NpZ25tZW50IiwicHJvZHVjdGlvbkRlYWRsaW5lIiwidmFsdWVPZiIsIl9jcmVhdGVDbGFzcyIsInJlc291cmNlTmFtZSIsInNpbmd1bGFyTmFtZSIsInBsdXJhbE5hbWUiLCJfYXBwbHlEZWNvcmF0ZWREZXNjcmlwdG9yIiwicHJvdG90eXBlIiwiY29uZmlndXJhYmxlIiwiZW51bWVyYWJsZSIsIndyaXRhYmxlIiwiaW5pdGlhbGl6ZXIiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvTWVyY2hpU0RLL2VudGl0aWVzL3F1b3RlLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFzc2lnbm1lbnQgfSBmcm9tICcuL2Fzc2lnbm1lbnQnO1xuaW1wb3J0IHsgUXVvdGVJdGVtIH0gZnJvbSAnLi9xdW90ZV9pdGVtJztcbmltcG9ydCB7IFNoaXBtZW50IH0gZnJvbSAnLi9zaGlwbWVudCc7XG5pbXBvcnQgeyBJbnZvaWNlIH0gZnJvbSAnLi9pbnZvaWNlJztcbmltcG9ydCB7IEVudGl0eSB9IGZyb20gJy4uL2VudGl0eSc7XG5pbXBvcnQgeyBrYWhhblN1bSB9IGZyb20gJy4uL3V0aWwvZmxvYXQnO1xuXG5pbnRlcmZhY2UgQ2FsY3VsYXRlT3B0aW9ucyB7XG4gIHN0cmljdEVtYmVkPzogYm9vbGVhbjtcbn1cblxuZXhwb3J0IGNsYXNzIFF1b3RlIGV4dGVuZHMgRW50aXR5IHtcbiAgcHJvdGVjdGVkIHN0YXRpYyByZXNvdXJjZU5hbWUgPSAncXVvdGVzJztcbiAgcHJvdGVjdGVkIHN0YXRpYyBzaW5ndWxhck5hbWUgPSAncXVvdGUnO1xuICBwcm90ZWN0ZWQgc3RhdGljIHBsdXJhbE5hbWUgPSAncXVvdGVzJztcblxuICBAUXVvdGUucHJvcGVydHkoe3R5cGU6IERhdGV9KVxuICBwdWJsaWMgYXJjaGl2ZWQ/OiBEYXRlIHwgbnVsbDtcblxuICBAUXVvdGUucHJvcGVydHkoKVxuICBwdWJsaWMgY3VycmVuY3k/OiBzdHJpbmc7XG5cbiAgQFF1b3RlLnByb3BlcnR5KClcbiAgcHVibGljIGlkPzogbnVtYmVyO1xuXG4gIEBRdW90ZS5wcm9wZXJ0eSh7dHlwZTogRGF0ZX0pXG4gIHB1YmxpYyBhZ3JlZWREZWFkbGluZT86IERhdGUgfCBudWxsO1xuXG4gIEBRdW90ZS5wcm9wZXJ0eSh7YXJyYXlUeXBlOiAnU2hpcG1lbnQnfSlcbiAgcHVibGljIHNoaXBtZW50cz86IFNoaXBtZW50W107XG5cbiAgQFF1b3RlLnByb3BlcnR5KHthcnJheVR5cGU6ICdRdW90ZUl0ZW0nfSlcbiAgcHVibGljIHF1b3RlSXRlbXM/OiBRdW90ZUl0ZW1bXTtcblxuICBAUXVvdGUucHJvcGVydHkoe2FycmF5VHlwZTogJ0Fzc2lnbm1lbnQnfSlcbiAgcHVibGljIGFzc2lnbm1lbnRzPzogQXNzaWdubWVudFtdO1xuXG4gIEBRdW90ZS5wcm9wZXJ0eSh7dHlwZTogSW52b2ljZX0pXG4gIHB1YmxpYyBpbnZvaWNlPzogSW52b2ljZSB8IG51bGw7XG5cbiAgcHVibGljIHF1b3RlVG90YWwgPSAob3B0aW9ucz86IENhbGN1bGF0ZU9wdGlvbnMpID0+IHtcbiAgICBjb25zdCB7IHN0cmljdEVtYmVkID0gdHJ1ZSB9ID0gb3B0aW9ucyA/IG9wdGlvbnMgOiB7fTtcbiAgICBjb25zdCB7IHF1b3RlSXRlbXMgPSBbXSwgc2hpcG1lbnRzID0gW10gfSA9IHRoaXM7XG4gICAgaWYgKHN0cmljdEVtYmVkICYmIHRoaXMucXVvdGVJdGVtcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3F1b3RlSXRlbXMgaXMgdW5kZWZpbmVkLCBkaWQgeW91IGZvcmdldCB0byBlbWJlZCBpdD8nKTtcbiAgICB9XG4gICAgaWYgKHN0cmljdEVtYmVkICYmIHRoaXMuc2hpcG1lbnRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignc2hpcG1lbnRzIGlzIHVuZGVmaW5lZCwgZGlkIHlvdSBmb3JnZXQgdG8gZW1iZWQgaXQ/Jyk7XG4gICAgfVxuICAgIGNvbnN0IHF1b3RlSXRlbXNUb3RhbCA9IGthaGFuU3VtKHF1b3RlSXRlbXMubWFwKChxSTogUXVvdGVJdGVtKSA9PlxuICAgICAgcGFyc2VGbG9hdChxSS5jYWxjdWxhdGVUb3RhbChvcHRpb25zKSkpKS50b0ZpeGVkKDMpO1xuICAgIGNvbnN0IHNoaXBtZW50SXRlbXNUb3RhbCA9IGthaGFuU3VtKHNoaXBtZW50cy5tYXAoKHM6IFNoaXBtZW50KSA9PlxuICAgICAgcGFyc2VGbG9hdChzLmNhbGN1bGF0ZVRvdGFsKG9wdGlvbnMpKSkpLnRvRml4ZWQoMyk7XG4gICAgcmV0dXJuIChcbiAgICAgIHBhcnNlRmxvYXQocXVvdGVJdGVtc1RvdGFsKSArIHBhcnNlRmxvYXQoc2hpcG1lbnRJdGVtc1RvdGFsKVxuICAgICkudG9GaXhlZCgzKTtcbiAgfTtcblxuICBwdWJsaWMgY2FsY3VsYXRlVG90YWwgPSB0aGlzLnF1b3RlVG90YWw7XG5cbiAgcHVibGljIGNhbGN1bGF0ZVN1YlRvdGFsID0gKG9wdGlvbnM/OiBDYWxjdWxhdGVPcHRpb25zKSA9PiB7XG4gICAgY29uc3QgeyBzdHJpY3RFbWJlZCA9IHRydWUgfSA9IG9wdGlvbnMgPyBvcHRpb25zIDoge307XG4gICAgY29uc3QgeyBxdW90ZUl0ZW1zID0gW10sIHNoaXBtZW50cyA9IFtdIH0gPSB0aGlzO1xuICAgIGlmIChzdHJpY3RFbWJlZCAmJiB0aGlzLnF1b3RlSXRlbXMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdxdW90ZUl0ZW1zIGlzIHVuZGVmaW5lZCwgZGlkIHlvdSBmb3JnZXQgdG8gZW1iZWQgaXQ/Jyk7XG4gICAgfVxuICAgIGlmIChzdHJpY3RFbWJlZCAmJiB0aGlzLnNoaXBtZW50cyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3NoaXBtZW50cyBpcyB1bmRlZmluZWQsIGRpZCB5b3UgZm9yZ2V0IHRvIGVtYmVkIGl0PycpO1xuICAgIH1cbiAgICBjb25zdCBxdW90ZUl0ZW1zVG90YWwgPSBrYWhhblN1bShxdW90ZUl0ZW1zLm1hcCgocUk6IFF1b3RlSXRlbSkgPT5cbiAgICAgIHBhcnNlRmxvYXQocUkuY2FsY3VsYXRlU3ViVG90YWwob3B0aW9ucykpKSk7XG4gICAgY29uc3Qgc2hpcG1lbnRJdGVtc1RvdGFsID0ga2FoYW5TdW0oc2hpcG1lbnRzLm1hcCgoczogU2hpcG1lbnQpID0+XG4gICAgICBwYXJzZUZsb2F0KHMuY2FsY3VsYXRlU3ViVG90YWwob3B0aW9ucykpKSk7XG4gICAgcmV0dXJuIChxdW90ZUl0ZW1zVG90YWwgKyBzaGlwbWVudEl0ZW1zVG90YWwpLnRvRml4ZWQoMyk7XG4gIH07XG5cbiAgcHVibGljIGNhbGN1bGF0ZVRheEFtb3VudCA9IChvcHRpb25zPzogQ2FsY3VsYXRlT3B0aW9ucykgPT4ge1xuICAgIGNvbnN0IHsgc3RyaWN0RW1iZWQgPSB0cnVlIH0gPSBvcHRpb25zID8gb3B0aW9ucyA6IHt9O1xuICAgIGNvbnN0IHsgcXVvdGVJdGVtcyA9IFtdLCBzaGlwbWVudHMgPSBbXSB9ID0gdGhpcztcbiAgICBpZiAoc3RyaWN0RW1iZWQgJiYgdGhpcy5xdW90ZUl0ZW1zID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcigncXVvdGVJdGVtcyBpcyB1bmRlZmluZWQsIGRpZCB5b3UgZm9yZ2V0IHRvIGVtYmVkIGl0PycpO1xuICAgIH1cbiAgICBpZiAoc3RyaWN0RW1iZWQgJiYgdGhpcy5zaGlwbWVudHMgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdzaGlwbWVudHMgaXMgdW5kZWZpbmVkLCBkaWQgeW91IGZvcmdldCB0byBlbWJlZCBpdD8nKTtcbiAgICB9XG4gICAgY29uc3QgcXVvdGVJdGVtc1RvdGFsID0ga2FoYW5TdW0ocXVvdGVJdGVtcy5tYXAoKHFJOiBRdW90ZUl0ZW0pID0+XG4gICAgICBwYXJzZUZsb2F0KHFJLmNhbGN1bGF0ZVRheEFtb3VudChvcHRpb25zKSkpKTtcbiAgICBjb25zdCBzaGlwbWVudEl0ZW1zVG90YWwgPSBrYWhhblN1bShzaGlwbWVudHMubWFwKChzOiBTaGlwbWVudCkgPT5cbiAgICAgIHBhcnNlRmxvYXQocy5jYWxjdWxhdGVUYXhBbW91bnQob3B0aW9ucykpKSk7XG4gICAgcmV0dXJuIChxdW90ZUl0ZW1zVG90YWwgKyBzaGlwbWVudEl0ZW1zVG90YWwpLnRvRml4ZWQoMyk7XG4gIH07XG5cbiAgcHVibGljIGZpbmRRdW90ZUl0ZW1JbmRleCA9IChxdW90ZUl0ZW1JZDogbnVtYmVyKSA9PiB7XG4gICAgaWYgKHRoaXMucXVvdGVJdGVtcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3F1b3RlSXRlbXMgaXMgdW5kZWZpbmVkLCBkaWQgeW91IGZvcmdldCB0byBlbWJlZCBpdD8nKTtcbiAgICB9XG4gICAgZnVuY3Rpb24gY2hlY2tFcXVhbElkKHF1b3RlSXRlbTogUXVvdGVJdGVtKSB7XG4gICAgICByZXR1cm4gcXVvdGVJdGVtLmlkID09PSBxdW90ZUl0ZW1JZDtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMucXVvdGVJdGVtcy5maW5kSW5kZXgoY2hlY2tFcXVhbElkKTtcbiAgfTtcblxuICBwdWJsaWMgcmVtb3ZlUXVvdGVJdGVtID0gKHF1b3RlSXRlbTogUXVvdGVJdGVtKSA9PiB7XG4gICAgaWYgKHRoaXMucXVvdGVJdGVtcyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3F1b3RlSXRlbXMgaXMgdW5kZWZpbmVkLCBkaWQgeW91IGZvcmdldCB0byBlbWJlZCBpdD8nKTtcbiAgICB9XG4gICAgaWYgKHF1b3RlSXRlbS5pZCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ3F1b3RlSXRlbS5pZCBpcyB1bmRlZmluZWQsIGRpZCB5b3UgZm9yZ2V0IHRvIGVtYmVkIGl0PycpO1xuICAgIH1cbiAgICBjb25zdCBpbmRleCA9IHRoaXMuZmluZFF1b3RlSXRlbUluZGV4KHF1b3RlSXRlbS5pZCk7XG4gICAgaWYgKGluZGV4ID4gLTEpIHtcbiAgICAgIHRoaXMucXVvdGVJdGVtcy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgIH1cbiAgfTtcblxuICBwdWJsaWMgZGVhZGxpbmVUaW1lRGlmZmVyZW5jZSA9ICgpID0+IHtcbiAgICBpZiAodGhpcy5hZ3JlZWREZWFkbGluZSA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICBjb25zdCBlcnIgPSAnYWdyZWVkRGVhZGxpbmUgaXMgdW5kZWZpbmVkLCBkaWQgeW91IGZvcmdldCB0byBlbWJlZCBpdD8nO1xuICAgICAgdGhyb3cgbmV3IEVycm9yKGVycik7XG4gICAgfVxuICAgIGlmICh0aGlzLmFzc2lnbm1lbnRzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IGVyciA9ICdhc3NpZ25tZW50cyBpcyB1bmRlZmllbmQsIGRpZCB5b3UgZm9yZ2V0IHRvIGVtYmVkIGl0Pyc7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoZXJyKTtcbiAgICB9XG4gICAgaWYgKHRoaXMuYXNzaWdubWVudHMubGVuZ3RoIDwgMSkge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGlmICh0aGlzLmFncmVlZERlYWRsaW5lID09PSBudWxsKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgYXNzaWdubWVudCA9IHRoaXMuYXNzaWdubWVudHNbMF07XG4gICAgaWYgKGFzc2lnbm1lbnQucHJvZHVjdGlvbkRlYWRsaW5lID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGNvbnN0IGVyciA9ICdwcm9kdWN0aW9uRGVhZGxpbmUgaXMgdW5kZWZpbmVkLCBkaWQgeW91IGZvcmdldCB0byBlbWJlZCcgK1xuICAgICAgICAnaXQ/JztcbiAgICAgIHRocm93IG5ldyBFcnJvcihlcnIpO1xuICAgIH1cbiAgICBjb25zdCBwcm9kdWN0aW9uRGVhZGxpbmUgPSBhc3NpZ25tZW50LnByb2R1Y3Rpb25EZWFkbGluZTtcbiAgICByZXR1cm4gcHJvZHVjdGlvbkRlYWRsaW5lLnZhbHVlT2YoKSAtIHRoaXMuYWdyZWVkRGVhZGxpbmUudmFsdWVPZigpO1xuICB9O1xufVxuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7OztBQUdBLFNBQVNBLE9BQU8sUUFBUSxXQUFXO0FBQ25DLFNBQVNDLE1BQU0sUUFBUSxXQUFXO0FBQ2xDLFNBQVNDLFFBQVEsUUFBUSxlQUFlO0FBTXhDLFdBQWFDLEtBQUssSUFBQUMsSUFBQSxHQUtmRCxLQUFLLENBQUNFLFFBQVEsQ0FBQztFQUFDQyxJQUFJLEVBQUVDO0FBQUksQ0FBQyxDQUFDLEVBQUFDLEtBQUEsR0FHNUJMLEtBQUssQ0FBQ0UsUUFBUSxDQUFDLENBQUMsRUFBQUksS0FBQSxHQUdoQk4sS0FBSyxDQUFDRSxRQUFRLENBQUMsQ0FBQyxFQUFBSyxLQUFBLEdBR2hCUCxLQUFLLENBQUNFLFFBQVEsQ0FBQztFQUFDQyxJQUFJLEVBQUVDO0FBQUksQ0FBQyxDQUFDLEVBQUFJLEtBQUEsR0FHNUJSLEtBQUssQ0FBQ0UsUUFBUSxDQUFDO0VBQUNPLFNBQVMsRUFBRTtBQUFVLENBQUMsQ0FBQyxFQUFBQyxLQUFBLEdBR3ZDVixLQUFLLENBQUNFLFFBQVEsQ0FBQztFQUFDTyxTQUFTLEVBQUU7QUFBVyxDQUFDLENBQUMsRUFBQUUsS0FBQSxHQUd4Q1gsS0FBSyxDQUFDRSxRQUFRLENBQUM7RUFBQ08sU0FBUyxFQUFFO0FBQVksQ0FBQyxDQUFDLEVBQUFHLEtBQUEsR0FHekNaLEtBQUssQ0FBQ0Us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
|
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { Merchi } from '../merchi';
|
|
2
|
+
test('can make Quote', function () {
|
|
3
|
+
var merchi = new Merchi();
|
|
4
|
+
var quote = new merchi.Quote();
|
|
5
|
+
expect(quote).toBeTruthy();
|
|
6
|
+
});
|
|
7
|
+
test('calculation', function () {
|
|
8
|
+
var merchi = new Merchi();
|
|
9
|
+
var quote = new merchi.Quote();
|
|
10
|
+
var gst = new merchi.CountryTax();
|
|
11
|
+
gst.taxName = 'GST';
|
|
12
|
+
gst.taxPercent = 10;
|
|
13
|
+
var noTax = merchi.CountryTax.getNoTax();
|
|
14
|
+
|
|
15
|
+
// quote items did not filled before calculation seems like a embed issue
|
|
16
|
+
expect(quote.quoteTotal).toThrow();
|
|
17
|
+
expect(quote.calculateSubTotal).toThrow();
|
|
18
|
+
expect(quote.calculateTaxAmount).toThrow();
|
|
19
|
+
quote.quoteItems = [new merchi.QuoteItem(), new merchi.QuoteItem()];
|
|
20
|
+
quote.quoteItems[0].unitPrice = 400;
|
|
21
|
+
quote.quoteItems[0].quantity = 2;
|
|
22
|
+
quote.quoteItems[0].taxType = gst;
|
|
23
|
+
quote.quoteItems[1].unitPrice = 25;
|
|
24
|
+
quote.quoteItems[1].quantity = 2;
|
|
25
|
+
quote.quoteItems[1].taxType = noTax;
|
|
26
|
+
|
|
27
|
+
// shipments did not filled before calculation seems like a embed issue
|
|
28
|
+
expect(quote.quoteTotal).toThrow();
|
|
29
|
+
expect(quote.calculateSubTotal).toThrow();
|
|
30
|
+
expect(quote.calculateTaxAmount).toThrow();
|
|
31
|
+
quote.shipments = [new merchi.Shipment()];
|
|
32
|
+
quote.shipments[0].cost = 100;
|
|
33
|
+
quote.shipments[0].taxType = gst;
|
|
34
|
+
|
|
35
|
+
// 800 * 1.1 + 25 * 2 + 100 * 1.1 = 1040
|
|
36
|
+
expect(quote.quoteTotal()).toBe('1040.000');
|
|
37
|
+
expect(quote.quoteTotal({
|
|
38
|
+
'strictEmbed': false
|
|
39
|
+
})).toBe('1040.000');
|
|
40
|
+
expect(quote.calculateTotal()).toBe('1040.000');
|
|
41
|
+
expect(quote.calculateTotal({
|
|
42
|
+
'strictEmbed': false
|
|
43
|
+
})).toBe('1040.000');
|
|
44
|
+
|
|
45
|
+
// 800 + 25 * 2 + 100
|
|
46
|
+
expect(quote.calculateSubTotal()).toBe('950.000');
|
|
47
|
+
expect(quote.calculateSubTotal({
|
|
48
|
+
'strictEmbed': false
|
|
49
|
+
})).toBe('950.000');
|
|
50
|
+
|
|
51
|
+
// 800 * 0.1 + 100 * 0.1
|
|
52
|
+
expect(quote.calculateTaxAmount()).toBe('90.000');
|
|
53
|
+
expect(quote.calculateTaxAmount({
|
|
54
|
+
'strictEmbed': false
|
|
55
|
+
})).toBe('90.000');
|
|
56
|
+
});
|
|
57
|
+
test('findQuoteItemIndex', function () {
|
|
58
|
+
var merchi = new Merchi();
|
|
59
|
+
var quote = new merchi.Quote();
|
|
60
|
+
expect(function () {
|
|
61
|
+
return quote.findQuoteItemIndex(43);
|
|
62
|
+
}).toThrow();
|
|
63
|
+
quote.quoteItems = [];
|
|
64
|
+
expect(quote.findQuoteItemIndex(43)).toEqual(-1);
|
|
65
|
+
quote.quoteItems = [new merchi.QuoteItem()];
|
|
66
|
+
quote.quoteItems[0].id = 43;
|
|
67
|
+
expect(quote.findQuoteItemIndex(43)).toEqual(0);
|
|
68
|
+
});
|
|
69
|
+
test('removeQuoteItem', function () {
|
|
70
|
+
var merchi = new Merchi();
|
|
71
|
+
var quote = new merchi.Quote();
|
|
72
|
+
var quoteItem = new merchi.QuoteItem();
|
|
73
|
+
quoteItem.id = 43;
|
|
74
|
+
expect(function () {
|
|
75
|
+
return quote.removeQuoteItem(quoteItem);
|
|
76
|
+
}).toThrow();
|
|
77
|
+
quoteItem.id = undefined;
|
|
78
|
+
expect(function () {
|
|
79
|
+
return quote.removeQuoteItem(quoteItem);
|
|
80
|
+
}).toThrow();
|
|
81
|
+
quoteItem.id = 43;
|
|
82
|
+
quote.quoteItems = [];
|
|
83
|
+
expect(quote.removeQuoteItem(quoteItem)).toBe(undefined);
|
|
84
|
+
expect(quote.quoteItems).toEqual([]);
|
|
85
|
+
quote.quoteItems = [quoteItem];
|
|
86
|
+
expect(quote.removeQuoteItem(quoteItem)).toBe(undefined);
|
|
87
|
+
expect(quote.quoteItems).toEqual([]);
|
|
88
|
+
quoteItem.id = undefined;
|
|
89
|
+
expect(function () {
|
|
90
|
+
return quote.removeQuoteItem(quoteItem);
|
|
91
|
+
}).toThrow();
|
|
92
|
+
});
|
|
93
|
+
test('deadlineTimeDifference', function () {
|
|
94
|
+
var merchi = new Merchi();
|
|
95
|
+
var quote = new merchi.Quote();
|
|
96
|
+
expect(quote.deadlineTimeDifference).toThrow();
|
|
97
|
+
quote.agreedDeadline = null;
|
|
98
|
+
expect(quote.deadlineTimeDifference).toThrow();
|
|
99
|
+
quote.assignments = [];
|
|
100
|
+
expect(quote.deadlineTimeDifference()).toBe(null);
|
|
101
|
+
quote.assignments = [new merchi.Assignment()];
|
|
102
|
+
expect(quote.deadlineTimeDifference()).toBe(null);
|
|
103
|
+
quote.agreedDeadline = new Date(1);
|
|
104
|
+
expect(quote.deadlineTimeDifference).toThrow();
|
|
105
|
+
quote.assignments[0].productionDeadline = new Date(2);
|
|
106
|
+
expect(quote.deadlineTimeDifference()).toEqual(1);
|
|
107
|
+
});
|
|
108
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJNZXJjaGkiLCJ0ZXN0IiwibWVyY2hpIiwicXVvdGUiLCJRdW90ZSIsImV4cGVjdCIsInRvQmVUcnV0aHkiLCJnc3QiLCJDb3VudHJ5VGF4IiwidGF4TmFtZSIsInRheFBlcmNlbnQiLCJub1RheCIsImdldE5vVGF4IiwicXVvdGVUb3RhbCIsInRvVGhyb3ciLCJjYWxjdWxhdGVTdWJUb3RhbCIsImNhbGN1bGF0ZVRheEFtb3VudCIsInF1b3RlSXRlbXMiLCJRdW90ZUl0ZW0iLCJ1bml0UHJpY2UiLCJxdWFudGl0eSIsInRheFR5cGUiLCJzaGlwbWVudHMiLCJTaGlwbWVudCIsImNvc3QiLCJ0b0JlIiwiY2FsY3VsYXRlVG90YWwiLCJmaW5kUXVvdGVJdGVtSW5kZXgiLCJ0b0VxdWFsIiwiaWQiLCJxdW90ZUl0ZW0iLCJyZW1vdmVRdW90ZUl0ZW0iLCJ1bmRlZmluZWQiLCJkZWFkbGluZVRpbWVEaWZmZXJlbmNlIiwiYWdyZWVkRGVhZGxpbmUiLCJhc3NpZ25tZW50cyIsIkFzc2lnbm1lbnQiLCJEYXRlIiwicHJvZHVjdGlvbkRlYWRsaW5lIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL01lcmNoaVNESy9lbnRpdGllcy9xdW90ZS50ZXN0LnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1lcmNoaSB9IGZyb20gJy4uL21lcmNoaSc7XG5cbnRlc3QoJ2NhbiBtYWtlIFF1b3RlJywgKCkgPT4ge1xuICBjb25zdCBtZXJjaGkgPSBuZXcgTWVyY2hpKCk7XG4gIGNvbnN0IHF1b3RlID0gbmV3IG1lcmNoaS5RdW90ZSgpO1xuICBleHBlY3QocXVvdGUpLnRvQmVUcnV0aHkoKTtcbn0pO1xuXG50ZXN0KCdjYWxjdWxhdGlvbicsICgpID0+IHtcbiAgY29uc3QgbWVyY2hpID0gbmV3IE1lcmNoaSgpO1xuICBjb25zdCBxdW90ZSA9IG5ldyBtZXJjaGkuUXVvdGUoKTtcbiAgY29uc3QgZ3N0ID0gbmV3IG1lcmNoaS5Db3VudHJ5VGF4KCk7XG4gIGdzdC50YXhOYW1lID0gJ0dTVCc7XG4gIGdzdC50YXhQZXJjZW50ID0gMTA7XG4gIGNvbnN0IG5vVGF4ID0gbWVyY2hpLkNvdW50cnlUYXguZ2V0Tm9UYXgoKTtcblxuICAvLyBxdW90ZSBpdGVtcyBkaWQgbm90IGZpbGxlZCBiZWZvcmUgY2FsY3VsYXRpb24gc2VlbXMgbGlrZSBhIGVtYmVkIGlzc3VlXG4gIGV4cGVjdChxdW90ZS5xdW90ZVRvdGFsKS50b1Rocm93KCk7XG4gIGV4cGVjdChxdW90ZS5jYWxjdWxhdGVTdWJUb3RhbCkudG9UaHJvdygpO1xuICBleHBlY3QocXVvdGUuY2FsY3VsYXRlVGF4QW1vdW50KS50b1Rocm93KCk7XG5cbiAgcXVvdGUucXVvdGVJdGVtcyA9IFtuZXcgbWVyY2hpLlF1b3RlSXRlbSgpLCBuZXcgbWVyY2hpLlF1b3RlSXRlbSgpXTtcbiAgcXVvdGUucXVvdGVJdGVtc1swXS51bml0UHJpY2UgPSA0MDA7XG4gIHF1b3RlLnF1b3RlSXRlbXNbMF0ucXVhbnRpdHkgPSAyO1xuICBxdW90ZS5xdW90ZUl0ZW1zWzBdLnRheFR5cGUgPSBnc3Q7XG4gIHF1b3RlLnF1b3RlSXRlbXNbMV0udW5pdFByaWNlID0gMjU7XG4gIHF1b3RlLnF1b3RlSXRlbXNbMV0ucXVhbnRpdHkgPSAyO1xuICBxdW90ZS5xdW90ZUl0ZW1zWzFdLnRheFR5cGUgPSBub1RheDtcblxuICAvLyBzaGlwbWVudHMgZGlkIG5vdCBmaWxsZWQgYmVmb3JlIGNhbGN1bGF0aW9uIHNlZW1zIGxpa2UgYSBlbWJlZCBpc3N1ZVxuICBleHBlY3QocXVvdGUucXVvdGVUb3RhbCkudG9UaHJvdygpO1xuICBleHBlY3QocXVvdGUuY2FsY3VsYXRlU3ViVG90YWwpLnRvVGhyb3coKTtcbiAgZXhwZWN0KHF1b3RlLmNhbGN1bGF0ZVRheEFtb3VudCkudG9UaHJvdygpO1xuXG4gIHF1b3RlLnNoaXBtZW50cyA9IFtuZXcgbWVyY2hpLlNoaXBtZW50KCldO1xuICBxdW90ZS5zaGlwbWVudHNbMF0uY29zdCA9IDEwMDtcbiAgcXVvdGUuc2hpcG1lbnRzWzBdLnRheFR5cGUgPSBnc3Q7XG5cbiAgLy8gODAwICogMS4xICsgMjUgKiAyICsgMTAwICogMS4xID0gMTA0MFxuICBleHBlY3QocXVvdGUucXVvdGVUb3RhbCgpKS50b0JlKCcxMDQwLjAwMCcpO1xuICBleHBlY3QocXVvdGUucXVvdGVUb3RhbCh7J3N0cmljdEVtYmVkJzogZmFsc2V9KSkudG9CZSgnMTA0MC4wMDAnKTtcbiAgZXhwZWN0KHF1b3RlLmNhbGN1bGF0ZVRvdGFsKCkpLnRvQmUoJzEwNDAuMDAwJyk7XG4gIGV4cGVjdChxdW90ZS5jYWxjdWxhdGVUb3RhbCh7J3N0cmljdEVtYmVkJzogZmFsc2V9KSkudG9CZSgnMTA0MC4wMDAnKTtcblxuICAvLyA4MDAgKyAyNSAqIDIgKyAxMDBcbiAgZXhwZWN0KHF1b3RlLmNhbGN1bGF0ZVN1YlRvdGFsKCkpLnRvQmUoJzk1MC4wMDAnKTtcbiAgZXhwZWN0KHF1b3RlLmNhbGN1bGF0ZVN1YlRvdGFsKHsnc3RyaWN0RW1iZWQnOiBmYWxzZX0pKS50b0JlKCc5NTAuMDAwJyk7XG5cbiAgLy8gODAwICogMC4xICsgMTAwICogMC4xXG4gIGV4cGVjdChxdW90ZS5jYWxjdWxhdGVUYXhBbW91bnQoKSkudG9CZSgnOTAuMDAwJyk7XG4gIGV4cGVjdChxdW90ZS5jYWxjdWxhdGVUYXhBbW91bnQoeydzdHJpY3RFbWJlZCc6IGZhbHNlfSkpLnRvQmUoJzkwLjAwMCcpO1xufSk7XG5cbnRlc3QoJ2ZpbmRRdW90ZUl0ZW1JbmRleCcsICgpID0+IHtcbiAgY29uc3QgbWVyY2hpID0gbmV3IE1lcmNoaSgpO1xuICBjb25zdCBxdW90ZSA9IG5ldyBtZXJjaGkuUXVvdGUoKTtcbiAgZXhwZWN0KCgpID0+IHF1b3RlLmZpbmRRdW90ZUl0ZW1JbmRleCg0MykpLnRvVGhyb3coKTtcbiAgcXVvdGUucXVvdGVJdGVtcyA9IFtdO1xuICBleHBlY3QocXVvdGUuZmluZFF1b3RlSXRlbUluZGV4KDQzKSkudG9FcXVhbCgtMSk7XG4gIHF1b3RlLnF1b3RlSXRlbXMgPSBbbmV3IG1lcmNoaS5RdW90ZUl0ZW0oKV07XG4gIHF1b3RlLnF1b3RlSXRlbXNbMF0uaWQgPSA0MztcbiAgZXhwZWN0KHF1b3RlLmZpbmRRdW90ZUl0ZW1JbmRleCg0MykpLnRvRXF1YWwoMCk7XG59KTtcblxudGVzdCgncmVtb3ZlUXVvdGVJdGVtJywgKCkgPT4ge1xuICBjb25zdCBtZXJjaGkgPSBuZXcgTWVyY2hpKCk7XG4gIGNvbnN0IHF1b3RlID0gbmV3IG1lcmNoaS5RdW90ZSgpO1xuICBjb25zdCBxdW90ZUl0ZW0gPSBuZXcgbWVyY2hpLlF1b3RlSXRlbSgpO1xuICBxdW90ZUl0ZW0uaWQgPSA0MztcbiAgZXhwZWN0KCgpID0+IHF1b3RlLnJlbW92ZVF1b3RlSXRlbShxdW90ZUl0ZW0pKS50b1Rocm93KCk7XG4gIHF1b3RlSXRlbS5pZCA9IHVuZGVmaW5lZDtcbiAgZXhwZWN0KCgpID0+IHF1b3RlLnJlbW92ZVF1b3RlSXRlbShxdW90ZUl0ZW0pKS50b1Rocm93KCk7XG4gIHF1b3RlSXRlbS5pZCA9IDQzO1xuICBxdW90ZS5xdW90ZUl0ZW1zID0gW107XG4gIGV4cGVjdChxdW90ZS5yZW1vdmVRdW90ZUl0ZW0ocXVvdGVJdGVtKSkudG9CZSh1bmRlZmluZWQpO1xuICBleHBlY3QocXVvdGUucXVvdGVJdGVtcykudG9FcXVhbChbXSk7XG4gIHF1b3RlLnF1b3RlSXRlbXMgPSBbcXVvdGVJdGVtXTtcbiAgZXhwZWN0KHF1b3RlLnJlbW92ZVF1b3RlSXRlbShxdW90ZUl0ZW0pKS50b0JlKHVuZGVmaW5lZCk7XG4gIGV4cGVjdChxdW90ZS5xdW90ZUl0ZW1zKS50b0VxdWFsKFtdKTtcbiAgcXVvdGVJdGVtLmlkID0gdW5kZWZpbmVkO1xuICBleHBlY3QoKCkgPT4gcXVvdGUucmVtb3ZlUXVvdGVJdGVtKHF1b3RlSXRlbSkpLnRvVGhyb3coKTtcbn0pO1xuXG50ZXN0KCdkZWFkbGluZVRpbWVEaWZmZXJlbmNlJywgKCkgPT4ge1xuICBjb25zdCBtZXJjaGkgPSBuZXcgTWVyY2hpKCk7XG4gIGNvbnN0IHF1b3RlID0gbmV3IG1lcmNoaS5RdW90ZSgpO1xuICBleHBlY3QocXVvdGUuZGVhZGxpbmVUaW1lRGlmZmVyZW5jZSkudG9UaHJvdygpO1xuICBxdW90ZS5hZ3JlZWREZWFkbGluZSA9IG51bGw7XG4gIGV4cGVjdChxdW90ZS5kZWFkbGluZVRpbWVEaWZmZXJlbmNlKS50b1Rocm93KCk7XG4gIHF1b3RlLmFzc2lnbm1lbnRzID0gW107XG4gIGV4cGVjdChxdW90ZS5kZWFkbGluZVRpbWVEaWZmZXJlbmNlKCkpLnRvQmUobnVsbCk7XG4gIHF1b3RlLmFzc2lnbm1lbnRzID0gW25ldyBtZXJjaGkuQXNzaWdubWVudCgpXTtcbiAgZXhwZWN0KHF1b3RlLmRlYWRsaW5lVGltZURpZmZlcmVuY2UoKSkudG9CZShudWxsKTtcbiAgcXVvdGUuYWdyZWVkRGVhZGxpbmUgPSBuZXcgRGF0ZSgxKTtcbiAgZXhwZWN0KHF1b3RlLmRlYWRsaW5lVGltZURpZmZlcmVuY2UpLnRvVGhyb3coKTtcbiAgcXVvdGUuYXNzaWdubWVudHNbMF0ucHJvZHVjdGlvbkRlYWRsaW5lID0gbmV3IERhdGUoMik7XG4gIGV4cGVjdChxdW90ZS5kZWFkbGluZVRpbWVEaWZmZXJlbmNlKCkpLnRvRXF1YWwoMSk7XG59KTtcbiJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsTUFBTSxRQUFRLFdBQVc7QUFFbENDLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxZQUFNO0VBQzNCLElBQU1DLE1BQU0sR0FBRyxJQUFJRixNQUFNLENBQUMsQ0FBQztFQUMzQixJQUFNRyxLQUFLLEdBQUcsSUFBSUQsTUFBTSxDQUFDRSxLQUFLLENBQUMsQ0FBQztFQUNoQ0MsTUFBTSxDQUFDRixLQUFLLENBQUMsQ0FBQ0csVUFBVSxDQUFDLENBQUM7QUFDNUIsQ0FBQyxDQUFDO0FBRUZMLElBQUksQ0FBQyxhQUFhLEVBQUUsWUFBTTtFQUN4QixJQUFNQyxNQUFNLEdBQUcsSUFBSUYsTUFBTSxDQUFDLENBQUM7RUFDM0IsSUFBTUcsS0FBSyxHQUFHLElB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
|