@colijnit/transaction 12.1.59 → 12.1.60
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/bundles/colijnit-transaction.umd.js +1384 -1869
- package/bundles/colijnit-transaction.umd.js.map +1 -1
- package/colijnit-transaction.d.ts +282 -278
- package/colijnit-transaction.metadata.json +1 -1
- package/esm2015/colijnit-transaction.js +283 -279
- package/esm2015/lib/cache/parameter-cache-field.js +2 -2
- package/esm2015/lib/cache/service/business-object-cache-manager.service.js +2 -2
- package/esm2015/lib/cache/service/select-multiple-cache.service.js +1 -1
- package/esm2015/lib/cache/service/select-multiple-parameterized-cache.service.js +1 -1
- package/esm2015/lib/cache/service/select-single-cache.service.js +1 -1
- package/esm2015/lib/component/avatar/avatar.component.js +8 -5
- package/esm2015/lib/component/checkout/checkout-overview-delivery-address/checkout-overview-delivery-address.component.js +1 -1
- package/esm2015/lib/component/checkout/checkout-overview-delivery-edit/checkout-overview-delivery-edit.component.js +2 -5
- package/esm2015/lib/component/checkout/checkout-overview-payment/checkout-overview-payment.component.js +2 -2
- package/esm2015/lib/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.js +19 -133
- package/esm2015/lib/component/checkout/checkout.component.js +8 -3
- package/esm2015/lib/component/core/base/transaction-filter-popup-base.component.js +1 -1
- package/esm2015/lib/component/core/base/transaction-header-base.component.js +1 -1
- package/esm2015/lib/component/core/base/transaction-header-filter-popup-base.component.js +1 -1
- package/esm2015/lib/component/core/base/transaction-line-base.component.js +1 -1
- package/esm2015/lib/component/core/relation/customer-groups.component.js +1 -1
- package/esm2015/lib/component/editable-label/editable-label.component.js +4 -1
- package/esm2015/lib/component/quick-send-button/quick-send-button.component.js +116 -0
- package/esm2015/lib/component/quick-send-button/quick-send-button.module.js +27 -0
- package/esm2015/lib/component/relation/relation-address/relation-address.component.js +4 -4
- package/esm2015/lib/component/relation/relation-address-select/relation-address-select.component.js +7 -8
- package/esm2015/lib/component/relation/relation-address-tile/relation-address-tile.component.js +1 -1
- package/esm2015/lib/component/relation/relation-addresses/relation-addresses.component.js +9 -17
- package/esm2015/lib/component/relation/relation-base.component.js +2 -2
- package/esm2015/lib/component/relation/relation-contact-details/relation-contact-details.component.js +4 -4
- package/esm2015/lib/component/relation/relation-general/relation-general.component.js +13 -10
- package/esm2015/lib/component/relation/relation-preferences/relation-preferences.component.js +2 -2
- package/esm2015/lib/component/relation/relation-suggestions-list/relation-suggestions-list.component.js +1 -1
- package/esm2015/lib/component/relation/relation-suggestions-list-item/relation-suggestions-list-item.component.js +1 -1
- package/esm2015/lib/component/relation/relation-type/relation-type.component.js +3 -3
- package/esm2015/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.component.js +5 -6
- package/esm2015/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.module.js +1 -5
- package/esm2015/lib/component/shopping-cart/shopping-cart.component.js +2 -2
- package/esm2015/lib/component/transaction/transaction.component.js +6 -2
- package/esm2015/lib/component/transaction/transaction.module.js +4 -2
- package/esm2015/lib/component/transaction-header/transaction-header/transaction-header.component.js +2 -2
- package/esm2015/lib/component/transaction-header/transaction-header-relation/transaction-header-relation.component.js +103 -59
- package/esm2015/lib/component/transaction-header/transaction-header-relation/transaction-header-relation.module.js +5 -3
- package/esm2015/lib/component/transaction-header-fields/transaction-header-administrative-relation.component.js +9 -6
- package/esm2015/lib/component/transaction-header-fields/transaction-header-branch.component.js +8 -5
- package/esm2015/lib/component/transaction-header-fields/transaction-header-partial-delivery.component.js +9 -3
- package/esm2015/lib/component/transaction-line/transaction-base-line/transaction-base-line.component.js +6 -4
- package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/service/transaction-order-delivery.service.js +15 -0
- package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.component.js +56 -30
- package/esm2015/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.module.js +4 -3
- package/esm2015/lib/component/transaction-line-fields/transaction-line-commission-button.component.js +1 -1
- package/esm2015/lib/component/transaction-line-fields/transaction-line-commission-code.component.js +1 -1
- package/esm2015/lib/component/transaction-line-fields/transaction-line-supplier-button.component.js +7 -4
- package/esm2015/lib/component/transaction-line-fields/transaction-line-supplier.component.js +9 -6
- package/esm2015/lib/component/transaction-line-side-panel-purchase/transaction-line-side-panel-purchase.component.js +1 -2
- package/esm2015/lib/component/transaction-quick-access/transaction-quick-access-order-delivery/transaction-quick-access-order-delivery.component.js +21 -5
- package/esm2015/lib/component/transaction-search/service/transaction-search.service.js +2 -2
- package/esm2015/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-article/transaction-purchase-order-filter-content-article.component.js +9 -6
- package/esm2015/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-order/transaction-purchase-order-filter-content-order.component.js +7 -4
- package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-article/transaction-sales-order-filter-content-article.component.js +9 -6
- package/esm2015/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-order/transaction-sales-order-filter-content-order.component.js +9 -6
- package/esm2015/lib/model/relation-any-type.js +1 -1
- package/esm2015/lib/pipe/co-currency.pipe.js +2 -2
- package/esm2015/lib/pipe/date-duration.pipe.js +2 -2
- package/esm2015/lib/pipe/delivery-time.pipe.js +2 -2
- package/esm2015/lib/service/article-connector.service.js +10 -6
- package/esm2015/lib/service/dictionary.service.js +2 -2
- package/esm2015/lib/service/error.service.js +1 -1
- package/esm2015/lib/service/payment.service.js +1 -1
- package/esm2015/lib/service/pending-reason.service.js +25 -33
- package/esm2015/lib/service/relation-connector.service.js +192 -0
- package/esm2015/lib/service/relation.service.js +120 -0
- package/esm2015/lib/service/shared-connector.service.js +2 -2
- package/esm2015/lib/service/shared.service.js +10 -6
- package/esm2015/lib/service/transaction-connector-adapter.service.js +69 -140
- package/esm2015/lib/service/transaction-connector.service.js +21 -59
- package/esm2015/lib/service/transaction-event.service.js +4 -2
- package/esm2015/lib/service/transaction-mapping.service.js +2 -1
- package/esm2015/lib/service/transaction.service.js +29 -83
- package/fesm2015/colijnit-transaction.js +1051 -1518
- package/fesm2015/colijnit-transaction.js.map +1 -1
- package/lib/cache/service/business-object-cache-manager.service.d.ts +2 -1
- package/lib/cache/service/select-multiple-cache.service.d.ts +1 -1
- package/lib/cache/service/select-multiple-parameterized-cache.service.d.ts +1 -1
- package/lib/cache/service/select-single-cache.service.d.ts +2 -1
- package/lib/component/avatar/avatar.component.d.ts +5 -3
- package/lib/component/checkout/checkout-overview-delivery-address/checkout-overview-delivery-address.component.d.ts +1 -1
- package/lib/component/checkout/checkout-overview-delivery-edit/checkout-overview-delivery-edit.component.d.ts +3 -5
- package/lib/component/checkout/checkout-overview-payment/checkout-overview-payment.component.d.ts +2 -2
- package/lib/component/checkout/checkout-overview-relation-edit/checkout-overview-relation-edit.component.d.ts +9 -14
- package/lib/component/core/base/transaction-filter-popup-base.component.d.ts +1 -1
- package/lib/component/core/base/transaction-header-base.component.d.ts +1 -1
- package/lib/component/core/base/transaction-header-filter-popup-base.component.d.ts +1 -1
- package/lib/component/core/base/transaction-line-base.component.d.ts +1 -1
- package/lib/component/core/relation/customer-groups.component.d.ts +1 -1
- package/lib/component/editable-label/editable-label.component.d.ts +1 -0
- package/lib/component/editable-label/style/_layout.scss +9 -0
- package/lib/component/editable-label/style/_material-definition.scss +1 -0
- package/lib/component/editable-label/style/material.scss +1 -1
- package/lib/component/quick-send-button/quick-send-button.component.d.ts +31 -0
- package/lib/component/quick-send-button/quick-send-button.module.d.ts +2 -0
- package/lib/component/quick-send-button/style/_layout.scss +52 -1
- package/lib/component/quick-send-button/style/_material-definition.scss +4 -0
- package/lib/component/relation/relation-address/relation-address.component.d.ts +2 -2
- package/lib/component/relation/relation-address-select/relation-address-select.component.d.ts +3 -4
- package/lib/component/relation/relation-address-tile/relation-address-tile.component.d.ts +1 -1
- package/lib/component/relation/relation-addresses/relation-addresses.component.d.ts +5 -5
- package/lib/component/relation/relation-base.component.d.ts +2 -2
- package/lib/component/relation/relation-contact-details/relation-contact-details.component.d.ts +1 -1
- package/lib/component/relation/relation-general/relation-general.component.d.ts +6 -4
- package/lib/component/relation/relation-preferences/relation-preferences.component.d.ts +1 -1
- package/lib/component/relation/relation-suggestions-list/relation-suggestions-list.component.d.ts +1 -1
- package/lib/component/relation/relation-suggestions-list-item/relation-suggestions-list-item.component.d.ts +1 -1
- package/lib/component/relation/relation-type/relation-type.component.d.ts +2 -2
- package/lib/component/shared/transaction-article-text-overview/transaction-article-text-overview.component.d.ts +2 -3
- package/lib/component/transaction/style/_layout.scss +4 -21
- package/lib/component/transaction/style/_material-definition.scss +1 -4
- package/lib/component/transaction-header/transaction-header/transaction-header.component.d.ts +1 -1
- package/lib/component/transaction-header/transaction-header-relation/transaction-header-relation.component.d.ts +17 -12
- package/lib/component/transaction-header-fields/transaction-header-administrative-relation.component.d.ts +4 -2
- package/lib/component/transaction-header-fields/transaction-header-branch.component.d.ts +5 -3
- package/lib/component/transaction-header-fields/transaction-header-partial-delivery.component.d.ts +3 -1
- package/lib/component/transaction-line/transaction-base-line/style/_layout.scss +3 -0
- package/lib/component/transaction-line/transaction-base-line/style/_material-definition.scss +6 -0
- package/lib/component/transaction-line/transaction-base-line/transaction-base-line.component.d.ts +2 -1
- package/lib/component/transaction-line/transaction-line/style/_layout.scss +14 -8
- package/lib/component/transaction-line/transaction-order-delivery-line/service/transaction-order-delivery.service.d.ts +4 -0
- package/lib/component/transaction-line/transaction-order-delivery-line/style/_layout.scss +4 -4
- package/lib/component/transaction-line/transaction-order-delivery-line/transaction-order-delivery-line.component.d.ts +9 -4
- package/lib/component/transaction-line-fields/transaction-line-commission-code.component.d.ts +1 -1
- package/lib/component/transaction-line-fields/transaction-line-supplier-button.component.d.ts +3 -1
- package/lib/component/transaction-line-fields/transaction-line-supplier.component.d.ts +4 -2
- package/lib/component/transaction-lines/style/material.scss +1 -0
- package/lib/component/transaction-quick-access/transaction-quick-access-order-delivery/style/_layout.scss +4 -0
- package/lib/component/transaction-quick-access/transaction-quick-access-order-delivery/transaction-quick-access-order-delivery.component.d.ts +10 -3
- package/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-article/transaction-purchase-order-filter-content-article.component.d.ts +3 -1
- package/lib/component/transaction-search/transaction-filter-content/purchase-order-filter-content/transaction-purchase-order-filter-content-order/transaction-purchase-order-filter-content-order.component.d.ts +3 -1
- package/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-article/transaction-sales-order-filter-content-article.component.d.ts +3 -1
- package/lib/component/transaction-search/transaction-filter-content/sales-order-filter-content/transaction-sales-order-filter-content-order/transaction-sales-order-filter-content-order.component.d.ts +3 -1
- package/lib/model/relation-any-type.d.ts +2 -2
- package/lib/service/article-connector.service.d.ts +3 -1
- package/lib/service/error.service.d.ts +1 -1
- package/lib/service/pending-reason.service.d.ts +5 -5
- package/lib/service/relation-connector.service.d.ts +34 -0
- package/lib/service/relation.service.d.ts +37 -0
- package/lib/service/shared.service.d.ts +3 -1
- package/lib/service/transaction-connector-adapter.service.d.ts +16 -25
- package/lib/service/transaction-connector.service.d.ts +14 -25
- package/lib/service/transaction-event.service.d.ts +4 -2
- package/lib/service/transaction.service.d.ts +9 -25
- package/lib/style/_variables.scss +1 -1
- package/package.json +9 -3
- package/esm2015/lib/factory/business-object-factory.js +0 -120
- package/esm2015/lib/factory/decorators/boolean.decorator.js +0 -102
- package/esm2015/lib/factory/decorators/complex-array.decorator.js +0 -55
- package/esm2015/lib/factory/decorators/complex-field.decorator.js +0 -57
- package/esm2015/lib/factory/decorators/date-field.decorator.js +0 -36
- package/esm2015/lib/factory/decorators/string-number.decorator.js +0 -43
- package/esm2015/lib/model/business-object.js +0 -81
- package/esm2015/lib/utils/array-utils.js +0 -183
- package/esm2015/lib/utils/is-nill.function.js +0 -5
- package/esm2015/lib/utils/string-utils.js +0 -64
- package/lib/factory/business-object-factory.d.ts +0 -23
- package/lib/factory/decorators/boolean.decorator.d.ts +0 -43
- package/lib/factory/decorators/complex-array.decorator.d.ts +0 -25
- package/lib/factory/decorators/complex-field.decorator.d.ts +0 -25
- package/lib/factory/decorators/date-field.decorator.d.ts +0 -17
- package/lib/factory/decorators/string-number.decorator.d.ts +0 -22
- package/lib/model/business-object.d.ts +0 -7
- package/lib/utils/array-utils.d.ts +0 -57
- package/lib/utils/is-nill.function.d.ts +0 -1
- package/lib/utils/string-utils.d.ts +0 -22
|
@@ -1,24 +1,17 @@
|
|
|
1
1
|
import { Marketing } from "@colijnit/transactionapi/build/model/marketing.bo";
|
|
2
|
-
import { CustomerFullObject } from "@colijnit/transactionapi/build/model/customer-full-object.bo";
|
|
3
2
|
import { TransactionInfoResponse } from "@colijnit/transactionapi/build/model/transaction-info-response.bo";
|
|
4
3
|
import { TransactionKind } from "@colijnit/transactionapi/build/enum/transaction-kind.enum";
|
|
5
4
|
import { Country } from "@colijnit/transactionapi/build/model/country.bo";
|
|
6
|
-
import { PrivacySetting } from "@colijnit/transactionapi/build/model/privacy-setting.bo";
|
|
7
|
-
import { RelationPrivacySetting } from "@colijnit/transactionapi/build/model/relation-privacy-setting.bo";
|
|
8
5
|
import { SequenceName } from "@colijnit/transactionapi/build/enum/sequence-name.enum";
|
|
9
6
|
import { DeliveryMethod } from "@colijnit/transactionapi/build/model/delivery-method.bo";
|
|
10
7
|
import { DeliveryOption } from "@colijnit/transactionapi/build/model/delivery-option.bo";
|
|
11
8
|
import { SetTransactionDeliveryOptionsRequest } from "@colijnit/transactionapi/build/model/set-transaction-delivery-options-request.bo";
|
|
12
9
|
import { GetPostalCodeRetrievalOutputParams } from "@colijnit/transactionapi/build/model/get-postal-code-retrieval-output-params";
|
|
13
|
-
import { RelationListObject } from "@colijnit/transactionapi/build/model/relation-list-object.bo";
|
|
14
|
-
import { RelationRequest } from "@colijnit/transactionapi/build/model/relation-request";
|
|
15
10
|
import { TransactionLineType } from "@colijnit/transactionapi/build/enum/transaction-line-type.enum";
|
|
16
|
-
import { CoDomainValue } from "@colijnit/transactionapi/build/model/co-domain-value.bo";
|
|
17
11
|
import { TransactionArticleWarehouse } from "@colijnit/transactionapi/build/model/transaction-article-warehouse.bo";
|
|
18
12
|
import { ArticleFullObject } from "@colijnit/transactionapi/build/model/article-full-object";
|
|
19
13
|
import { TransactionResponseBase } from "@colijnit/transactionapi/build/model/transaction-response-base.bo";
|
|
20
14
|
import { Transaction } from "@colijnit/transactionapi/build/transaction";
|
|
21
|
-
import { DataServiceResponseData } from "@colijnit/transactionapi/build/model/data-service-response-data";
|
|
22
15
|
import { StandardText } from "../model/standard-text";
|
|
23
16
|
import { CustomerGroup } from "@colijnit/transactionapi/build/model/customer-group.bo";
|
|
24
17
|
import { TransactionLineInfo } from "@colijnit/transactionapi/build/model/transaction-line-info.bo";
|
|
@@ -29,9 +22,6 @@ import { PriceList } from "@colijnit/transactionapi/build/model/price-list";
|
|
|
29
22
|
import { Vat } from "@colijnit/transactionapi/build/model/vat";
|
|
30
23
|
import { DiscountType } from "@colijnit/transactionapi/build/enum/discount-type.enum";
|
|
31
24
|
import { TransactionSearchViewRequest } from "@colijnit/transactionapi/build/model/transaction-search-view-request";
|
|
32
|
-
import { BranchLov } from "@colijnit/transactionapi/build/model/branch-lov.bo";
|
|
33
|
-
import { SalesPerson } from "@colijnit/transactionapi/build/model/sales-person.bo";
|
|
34
|
-
import { Tag } from "@colijnit/transactionapi/build/model/tag";
|
|
35
25
|
import { OnHoldCode } from "@colijnit/transactionapi/build/model/on-hold-code.bo";
|
|
36
26
|
import { Warehouse } from "@colijnit/transactionapi/build/model/warehouse.bo";
|
|
37
27
|
import { CodeDescription } from "@colijnit/transactionapi/build/model/code-description";
|
|
@@ -48,17 +38,27 @@ import { PaymentLinkStatus } from "@colijnit/transactionapi/build/model/payment-
|
|
|
48
38
|
import { SelectMultipleCacheService } from "../cache/service/select-multiple-cache.service";
|
|
49
39
|
import { SelectMultipleParameterizedCacheService } from "../cache/service/select-multiple-parameterized-cache.service";
|
|
50
40
|
import { ErrorService } from "./error.service";
|
|
51
|
-
import { SupplierFullObject } from "@colijnit/transactionapi/build/model/supplier-full-object.bo";
|
|
52
41
|
import { GetPurchaseOrderConfirmation } from "@colijnit/transactionapi/build/model/get-purchase-order-confirmation";
|
|
53
42
|
import { TransactionDownPaymentInfo } from "@colijnit/transactionapi/build/model/transaction-down-payment-info.bo";
|
|
54
43
|
import { TransactionLockResult } from "@colijnit/transactionapi/build/model/transaction-lock-result.bo";
|
|
55
|
-
import {
|
|
44
|
+
import { PrivacySetting } from "@colijnit/mainapi/build/model/privacy-setting.bo";
|
|
45
|
+
import { DataServiceResponseData } from "@colijnit/ioneconnector/build/model/data-service-response-data";
|
|
46
|
+
import { RelationPrivacySetting } from "@colijnit/relationapi/build/model/relation-privacy-setting.bo";
|
|
47
|
+
import { CoDomainValue } from "@colijnit/mainapi/build/model/co-domain-value.bo";
|
|
48
|
+
import { Tag } from "@colijnit/mainapi/build/model/tag";
|
|
49
|
+
import { DeliveryOrderStatus } from "@colijnit/transactionapi/build/model/delivery-order-status.bo";
|
|
50
|
+
import { SalesPerson } from "@colijnit/relationapi/build/model/sales-person.bo";
|
|
51
|
+
import { StockStickersEmailLayouts } from "@colijnit/sharedapi/build/model/report/stock-stickers-email-layouts.bo";
|
|
52
|
+
import { StockStickersPrintLayouts } from "@colijnit/sharedapi/build/model/report/stock-stickers-print-layouts.bo";
|
|
53
|
+
import { Sharedapi } from "@colijnit/sharedapi/build/sharedapi";
|
|
54
|
+
import { EmailOrderConfirmation } from "@colijnit/transactionapi/build/model/report/email-order-confirmation";
|
|
56
55
|
export declare class TransactionConnectorAdapterService {
|
|
57
56
|
private _optionsService;
|
|
58
57
|
private _selectMultipleCacheService;
|
|
59
58
|
private _selectMultipleParameterizedCacheService;
|
|
60
59
|
private _errorService;
|
|
61
60
|
connector: Transaction;
|
|
61
|
+
sharedConnector: Sharedapi;
|
|
62
62
|
private _boFactory;
|
|
63
63
|
constructor(_optionsService: OptionsService, _selectMultipleCacheService: SelectMultipleCacheService, _selectMultipleParameterizedCacheService: SelectMultipleParameterizedCacheService, _errorService: ErrorService);
|
|
64
64
|
connect(): Promise<void>;
|
|
@@ -75,10 +75,7 @@ export declare class TransactionConnectorAdapterService {
|
|
|
75
75
|
getTransactionByNrAndKind(kind: TransactionKind, transactionNo: number): Promise<TransactionInfoResponse>;
|
|
76
76
|
getTransactionById(transactionId: number): Promise<TransactionInfoResponse>;
|
|
77
77
|
lockTransactionById(transactionId: number, version: number): Promise<TransactionLockResult>;
|
|
78
|
-
getCustomerFullObject(relationNo: number): Promise<CustomerFullObject>;
|
|
79
|
-
getSupplierFullObject(relationNo: number): Promise<SupplierFullObject>;
|
|
80
78
|
getCashRegisters(branch?: string, group?: number): Promise<CashRegister[]>;
|
|
81
|
-
getRelationNumber(relationId: number): Promise<string>;
|
|
82
79
|
getPriceLists(code?: string): Promise<PriceList[]>;
|
|
83
80
|
getVatList(onlyValid?: boolean): Promise<Vat[]>;
|
|
84
81
|
searchTransactions(request: TransactionSearchViewRequest): Promise<TransactionSearchResult>;
|
|
@@ -86,21 +83,17 @@ export declare class TransactionConnectorAdapterService {
|
|
|
86
83
|
getDeliveryMethods(): Promise<DeliveryMethod[]>;
|
|
87
84
|
getDeliveryOptions(): Promise<DeliveryOption[]>;
|
|
88
85
|
getPostalCodeRetrieval(postcalCode: string, houseNo: string): Promise<GetPostalCodeRetrievalOutputParams>;
|
|
89
|
-
getRelationListObjects(relationRequest: RelationRequest): Promise<RelationListObject[]>;
|
|
90
86
|
getCommissionCodes(languageCode: string): Promise<CoDomainValue[]>;
|
|
91
87
|
getInOutCollection(languageCode: string): Promise<CoDomainValue[]>;
|
|
92
88
|
getTransactionArticleWarehouses(goodId: number): Promise<TransactionArticleWarehouse[]>;
|
|
93
89
|
getTextTypes(languageCode: string): Promise<CoDomainValue[]>;
|
|
94
90
|
getStandardTexts(languageCode: string): Promise<StandardText[]>;
|
|
95
|
-
getBranches(branchNr?: string): Promise<BranchLov[]>;
|
|
96
91
|
getSalesPersons(date?: Date): Promise<SalesPerson[]>;
|
|
97
92
|
getTags(category: number): Promise<Tag[]>;
|
|
98
93
|
getOnHoldCodes(): Promise<OnHoldCode[]>;
|
|
99
94
|
getWarehouses(branchNr?: string): Promise<Warehouse[]>;
|
|
100
95
|
getHistoricStateValues(): Promise<CodeDescription[]>;
|
|
101
96
|
getPaymentMethods(): Promise<PaymentMethod[]>;
|
|
102
|
-
insertCustomer(relation: CustomerFullObject): Promise<CustomerFullObject>;
|
|
103
|
-
updateCustomer(relation: CustomerFullObject): Promise<CustomerFullObject>;
|
|
104
97
|
commit(): Promise<DataServiceResponseData>;
|
|
105
98
|
createTransaction(kind: TransactionKind, branchNr: string): Promise<TransactionInfoResponse>;
|
|
106
99
|
saveTransaction(uuid: string): Promise<TransactionInfoResponse>;
|
|
@@ -161,12 +154,10 @@ export declare class TransactionConnectorAdapterService {
|
|
|
161
154
|
updatePurchasePortalLines(purchasePortalLine: PurchasePortalLine): Promise<DataServiceResponseData>;
|
|
162
155
|
purchaseOrderConfirmation(purchaseOrderConfirmation: GetPurchaseOrderConfirmation): Promise<DataServiceResponseData>;
|
|
163
156
|
lockPurchasePortalLines(transIdPurchase: number, lineId: number): Promise<boolean>;
|
|
157
|
+
getPurchaseOrderEmailLayouts(transactionUUID: string): Promise<StockStickersEmailLayouts[]>;
|
|
158
|
+
emailOrderConfirmation(emailOrderConfirmation: EmailOrderConfirmation): Promise<boolean>;
|
|
159
|
+
getStockStickerTemplates(data: StockStickersPrintLayouts): Promise<StockStickersPrintLayouts[]>;
|
|
164
160
|
generateCommissionOrders(transId: number, onlyGenerateForDirectSellSuppliers: boolean): Promise<boolean>;
|
|
165
|
-
|
|
166
|
-
lockSupplierFullObject(relationNr: number): Promise<ValidationResult>;
|
|
167
|
-
lockEmployeeFullObject(relationNr: number): Promise<ValidationResult>;
|
|
168
|
-
lockBranchFullObject(relationNr: number): Promise<ValidationResult>;
|
|
169
|
-
lockCompanyFullObject(relationNr: number): Promise<ValidationResult>;
|
|
170
|
-
lockContactPerson(relationNr: number): Promise<ValidationResult>;
|
|
161
|
+
getDeliveryOrderStatus(transId: number, lineNr: number): Promise<DeliveryOrderStatus>;
|
|
171
162
|
private _handleExceptionFromResponse;
|
|
172
163
|
}
|
|
@@ -1,23 +1,16 @@
|
|
|
1
1
|
import { Marketing } from "@colijnit/transactionapi/build/model/marketing.bo";
|
|
2
|
-
import { CustomerFullObject } from "@colijnit/transactionapi/build/model/customer-full-object.bo";
|
|
3
2
|
import { TransactionInfoResponse } from "@colijnit/transactionapi/build/model/transaction-info-response.bo";
|
|
4
3
|
import { TransactionKind } from "@colijnit/transactionapi/build/enum/transaction-kind.enum";
|
|
5
4
|
import { Country } from "@colijnit/transactionapi/build/model/country.bo";
|
|
6
|
-
import { PrivacySetting } from "@colijnit/transactionapi/build/model/privacy-setting.bo";
|
|
7
|
-
import { RelationPrivacySetting } from "@colijnit/transactionapi/build/model/relation-privacy-setting.bo";
|
|
8
5
|
import { SequenceName } from "@colijnit/transactionapi/build/enum/sequence-name.enum";
|
|
9
6
|
import { DeliveryMethod } from "@colijnit/transactionapi/build/model/delivery-method.bo";
|
|
10
7
|
import { DeliveryOption } from "@colijnit/transactionapi/build/model/delivery-option.bo";
|
|
11
8
|
import { SetTransactionDeliveryOptionsRequest } from "@colijnit/transactionapi/build/model/set-transaction-delivery-options-request.bo";
|
|
12
9
|
import { GetPostalCodeRetrievalOutputParams } from "@colijnit/transactionapi/build/model/get-postal-code-retrieval-output-params";
|
|
13
|
-
import { RelationListObject } from "@colijnit/transactionapi/build/model/relation-list-object.bo";
|
|
14
|
-
import { RelationRequest } from "@colijnit/transactionapi/build/model/relation-request";
|
|
15
10
|
import { TransactionLineType } from "@colijnit/transactionapi/build/enum/transaction-line-type.enum";
|
|
16
|
-
import { CoDomainValue } from "@colijnit/transactionapi/build/model/co-domain-value.bo";
|
|
17
11
|
import { TransactionArticleWarehouse } from "@colijnit/transactionapi/build/model/transaction-article-warehouse.bo";
|
|
18
12
|
import { ArticleFullObject } from "@colijnit/transactionapi/build/model/article-full-object";
|
|
19
13
|
import { TransactionResponseBase } from "@colijnit/transactionapi/build/model/transaction-response-base.bo";
|
|
20
|
-
import { DataServiceResponseData } from "@colijnit/transactionapi/build/model/data-service-response-data";
|
|
21
14
|
import { StandardText } from "../model/standard-text";
|
|
22
15
|
import { CustomerGroup } from "@colijnit/transactionapi/build/model/customer-group.bo";
|
|
23
16
|
import { TransactionLineInfo } from "@colijnit/transactionapi/build/model/transaction-line-info.bo";
|
|
@@ -27,9 +20,6 @@ import { PriceList } from "@colijnit/transactionapi/build/model/price-list";
|
|
|
27
20
|
import { Vat } from "@colijnit/transactionapi/build/model/vat";
|
|
28
21
|
import { DiscountType } from "@colijnit/transactionapi/build/enum/discount-type.enum";
|
|
29
22
|
import { TransactionSearchViewRequest } from "@colijnit/transactionapi/build/model/transaction-search-view-request";
|
|
30
|
-
import { BranchLov } from "@colijnit/transactionapi/build/model/branch-lov.bo";
|
|
31
|
-
import { SalesPerson } from "@colijnit/transactionapi/build/model/sales-person.bo";
|
|
32
|
-
import { Tag } from "@colijnit/transactionapi/build/model/tag";
|
|
33
23
|
import { OnHoldCode } from "@colijnit/transactionapi/build/model/on-hold-code.bo";
|
|
34
24
|
import { Warehouse } from "@colijnit/transactionapi/build/model/warehouse.bo";
|
|
35
25
|
import { CodeDescription } from "@colijnit/transactionapi/build/model/code-description";
|
|
@@ -47,10 +37,18 @@ import { SelectMultipleCacheService } from "../cache/service/select-multiple-cac
|
|
|
47
37
|
import { SelectMultipleParameterizedCacheService } from "../cache/service/select-multiple-parameterized-cache.service";
|
|
48
38
|
import { TransactionConnectorAdapterService } from "./transaction-connector-adapter.service";
|
|
49
39
|
import { SelectSingleCacheService } from "../cache/service/select-single-cache.service";
|
|
50
|
-
import { SupplierFullObject } from "@colijnit/transactionapi/build/model/supplier-full-object.bo";
|
|
51
40
|
import { GetPurchaseOrderConfirmation } from "@colijnit/transactionapi/build/model/get-purchase-order-confirmation";
|
|
52
41
|
import { TransactionLockResult } from "@colijnit/transactionapi/build/model/transaction-lock-result.bo";
|
|
53
|
-
import {
|
|
42
|
+
import { PrivacySetting } from "@colijnit/mainapi/build/model/privacy-setting.bo";
|
|
43
|
+
import { RelationPrivacySetting } from "@colijnit/relationapi/build/model/relation-privacy-setting.bo";
|
|
44
|
+
import { DataServiceResponseData } from "@colijnit/ioneconnector/build/model/data-service-response-data";
|
|
45
|
+
import { CoDomainValue } from "@colijnit/mainapi/build/model/co-domain-value.bo";
|
|
46
|
+
import { SalesPerson } from "@colijnit/relationapi/build/model/sales-person.bo";
|
|
47
|
+
import { Tag } from "@colijnit/mainapi/build/model/tag";
|
|
48
|
+
import { DeliveryOrderStatus } from "@colijnit/transactionapi/build/model/delivery-order-status.bo";
|
|
49
|
+
import { StockStickersEmailLayouts } from "@colijnit/sharedapi/build/model/report/stock-stickers-email-layouts.bo";
|
|
50
|
+
import { StockStickersPrintLayouts } from "@colijnit/sharedapi/build/model/report/stock-stickers-print-layouts.bo";
|
|
51
|
+
import { EmailOrderConfirmation } from "@colijnit/transactionapi/build/model/report/email-order-confirmation";
|
|
54
52
|
export declare class TransactionConnectorService {
|
|
55
53
|
private _adapterService;
|
|
56
54
|
private _selectSingleCacheService;
|
|
@@ -74,22 +72,16 @@ export declare class TransactionConnectorService {
|
|
|
74
72
|
lockTransactionById(transId: number, version: number): Promise<TransactionLockResult>;
|
|
75
73
|
commit(): Promise<DataServiceResponseData>;
|
|
76
74
|
saveTransaction(uuid: string): Promise<TransactionInfoResponse>;
|
|
77
|
-
getCustomerFullObject(relationNo: number): Promise<CustomerFullObject>;
|
|
78
|
-
getSupplierFullObject(relationNo: number): Promise<SupplierFullObject>;
|
|
79
75
|
getCashRegisters(branch?: string, group?: number): Promise<CashRegister[]>;
|
|
80
|
-
getRelationNumber(relationId: number): Promise<string>;
|
|
81
76
|
getPriceLists(code?: string): Promise<PriceList[]>;
|
|
82
77
|
getVatList(onlyValid?: boolean): Promise<Vat[]>;
|
|
83
78
|
searchTransactions(request: TransactionSearchViewRequest): Promise<TransactionSearchResult>;
|
|
84
79
|
getSequenceValue(sequenceName: SequenceName): Promise<number>;
|
|
85
|
-
insertCustomer(relation: CustomerFullObject): Promise<CustomerFullObject>;
|
|
86
|
-
updateCustomer(relation: CustomerFullObject): Promise<CustomerFullObject>;
|
|
87
80
|
getDeliveryMethods(): Promise<DeliveryMethod[]>;
|
|
88
81
|
getDeliveryOptions(): Promise<DeliveryOption[]>;
|
|
89
82
|
addRelationToTransaction(uuid: string, relationId: number): Promise<TransactionInfoResponse>;
|
|
90
83
|
setTransactionDeliveryOptions(transactionDeliveryOptionsRequest: SetTransactionDeliveryOptionsRequest): Promise<TransactionResponseBase>;
|
|
91
84
|
getPostalCodeRetrieval(postcalCode: string, houseNo: string): Promise<GetPostalCodeRetrievalOutputParams>;
|
|
92
|
-
getRelationListObjects(relationRequest: RelationRequest): Promise<RelationListObject[]>;
|
|
93
85
|
addTransactionLine(uuid: string, articleLine: TransactionLineType, articleNo: string, amount: number, warehouseNo: number, commissionCode: string, isReturn: boolean, aboveLineNr: number, belowLineNr: number): Promise<TransactionInfoResponse>;
|
|
94
86
|
addTextLineToTransaction(uuid: string, showOnDocuments: number, text: string, amount: number, articleBound: boolean, refArticleLineNr: number, aboveLineNr?: number, belowLineNr?: number): Promise<TransactionInfoResponse>;
|
|
95
87
|
changeLineSequence(uuid: string, lineUuid: string, aboveLineNr?: number, belowLineNr?: number): Promise<TransactionInfoResponse>;
|
|
@@ -104,7 +96,6 @@ export declare class TransactionConnectorService {
|
|
|
104
96
|
setRelationByUser(uuid: string, username: string, password: string): Promise<boolean>;
|
|
105
97
|
getTextTypes(languageCode: string): Promise<CoDomainValue[]>;
|
|
106
98
|
getStandardTexts(languageCode: string): Promise<StandardText[]>;
|
|
107
|
-
getBranches(branchNr?: string): Promise<BranchLov[]>;
|
|
108
99
|
getSalesPersons(date?: Date): Promise<SalesPerson[]>;
|
|
109
100
|
getTags(category: number): Promise<Tag[]>;
|
|
110
101
|
getOnHoldCodes(): Promise<OnHoldCode[]>;
|
|
@@ -156,10 +147,8 @@ export declare class TransactionConnectorService {
|
|
|
156
147
|
purchaseOrderConfirmation(purchaseOrderConfirmation: GetPurchaseOrderConfirmation): Promise<DataServiceResponseData>;
|
|
157
148
|
lockPurchasePortalLines(transIdPurchase: number, lineId: number): Promise<boolean>;
|
|
158
149
|
generateCommissionOrders(transId: number, onlyGenerateForDirectSellSuppliers: boolean): Promise<boolean>;
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
lockCompanyFullObject(relationNr: number): Promise<ValidationResult>;
|
|
164
|
-
lockContactPerson(relationNr: number): Promise<ValidationResult>;
|
|
150
|
+
getDeliveryOrderStatus(transId: number, lineId: number): Promise<DeliveryOrderStatus>;
|
|
151
|
+
getPurchaseOrderEmailLayouts(transactionUUID: string): Promise<StockStickersEmailLayouts[]>;
|
|
152
|
+
emailOrderConfirmation(emailOrderConfirmation: EmailOrderConfirmation): Promise<boolean>;
|
|
153
|
+
getStockStickerTemplates(data: StockStickersPrintLayouts): Promise<StockStickersPrintLayouts[]>;
|
|
165
154
|
}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { Subject } from "rxjs";
|
|
2
|
-
import { BusinessObject } from "@colijnit/transactionapi/build/model/business-object";
|
|
1
|
+
import { BehaviorSubject, Subject } from "rxjs";
|
|
3
2
|
import { PositionGridRow } from "../enum/position-grid-row.enum";
|
|
4
3
|
import { Scroll } from "@angular/router";
|
|
5
4
|
import { TransactionLineInfo } from "@colijnit/transactionapi/build/model/transaction-line-info.bo";
|
|
6
5
|
import { GoodsReceiptStatusWithHistory } from "@colijnit/transactionapi/build/model/goods-receipt-status-with-history.bo";
|
|
6
|
+
import { BusinessObject } from "@colijnit/ioneconnector/build/model/business-object";
|
|
7
7
|
export declare class TransactionEventService {
|
|
8
8
|
readonly addToCartBySku: Subject<{
|
|
9
9
|
sku: string;
|
|
@@ -64,4 +64,6 @@ export declare class TransactionEventService {
|
|
|
64
64
|
readonly openSidePanel: Subject<TransactionLineInfo>;
|
|
65
65
|
readonly selectAllSalesOrderLinesForPurchase: Subject<boolean>;
|
|
66
66
|
readonly generateCommissionOrders: Subject<boolean>;
|
|
67
|
+
readonly allowPartialDeliveryChanged: Subject<boolean>;
|
|
68
|
+
readonly connectionInitialized: BehaviorSubject<boolean>;
|
|
67
69
|
}
|
|
@@ -1,30 +1,20 @@
|
|
|
1
1
|
import { DiscountType } from "@colijnit/transactionapi/build/enum/discount-type.enum";
|
|
2
2
|
import { TransactionLineType } from "@colijnit/transactionapi/build/enum/transaction-line-type.enum";
|
|
3
3
|
import { ArticleFullObject } from "@colijnit/transactionapi/build/model/article-full-object";
|
|
4
|
-
import { BranchLov } from "@colijnit/transactionapi/build/model/branch-lov.bo";
|
|
5
4
|
import { CashRegister } from "@colijnit/transactionapi/build/model/cash-register";
|
|
6
|
-
import { CoDomainValue } from "@colijnit/transactionapi/build/model/co-domain-value.bo";
|
|
7
5
|
import { CodeDescription } from "@colijnit/transactionapi/build/model/code-description";
|
|
8
6
|
import { Country } from "@colijnit/transactionapi/build/model/country.bo";
|
|
9
|
-
import { CustomerFullObject } from "@colijnit/transactionapi/build/model/customer-full-object.bo";
|
|
10
7
|
import { CustomerGroup } from "@colijnit/transactionapi/build/model/customer-group.bo";
|
|
11
|
-
import { DataServiceResponseData } from "@colijnit/transactionapi/build/model/data-service-response-data";
|
|
12
8
|
import { DeliveryMethod } from "@colijnit/transactionapi/build/model/delivery-method.bo";
|
|
13
9
|
import { DeliveryOption } from "@colijnit/transactionapi/build/model/delivery-option.bo";
|
|
14
10
|
import { LineOperationStatus } from "@colijnit/transactionapi/build/model/line-operation-status.bo";
|
|
15
11
|
import { Marketing } from "@colijnit/transactionapi/build/model/marketing.bo";
|
|
16
12
|
import { OnHoldCode } from "@colijnit/transactionapi/build/model/on-hold-code.bo";
|
|
17
13
|
import { PriceList } from "@colijnit/transactionapi/build/model/price-list";
|
|
18
|
-
import { RelationListObject } from "@colijnit/transactionapi/build/model/relation-list-object.bo";
|
|
19
|
-
import { RelationPrivacySetting } from "@colijnit/transactionapi/build/model/relation-privacy-setting.bo";
|
|
20
|
-
import { RelationRequest } from "@colijnit/transactionapi/build/model/relation-request";
|
|
21
|
-
import { SalesPerson } from "@colijnit/transactionapi/build/model/sales-person.bo";
|
|
22
|
-
import { Tag } from "@colijnit/transactionapi/build/model/tag";
|
|
23
14
|
import { TransactionArticleWarehouse } from "@colijnit/transactionapi/build/model/transaction-article-warehouse.bo";
|
|
24
15
|
import { TransactionInfoResponse } from "@colijnit/transactionapi/build/model/transaction-info-response.bo";
|
|
25
16
|
import { TransactionLineInfo } from "@colijnit/transactionapi/build/model/transaction-line-info.bo";
|
|
26
17
|
import { TransactionSearchViewRequest } from "@colijnit/transactionapi/build/model/transaction-search-view-request";
|
|
27
|
-
import { ValidationResult } from "@colijnit/transactionapi/build/model/validation-result";
|
|
28
18
|
import { Vat } from "@colijnit/transactionapi/build/model/vat";
|
|
29
19
|
import { Warehouse } from "@colijnit/transactionapi/build/model/warehouse.bo";
|
|
30
20
|
import { StandardText } from "../model/standard-text";
|
|
@@ -41,9 +31,13 @@ import { PurchasePortalLine } from "@colijnit/transactionapi/build/model/purchas
|
|
|
41
31
|
import { TransactionSearchResult } from "../model/transaction-search-result";
|
|
42
32
|
import { GetPurchaseOrderConfirmation } from "@colijnit/transactionapi/build/model/get-purchase-order-confirmation";
|
|
43
33
|
import { TransactionLockResult } from "@colijnit/transactionapi/build/model/transaction-lock-result.bo";
|
|
44
|
-
import {
|
|
34
|
+
import { DataServiceResponseData } from "@colijnit/ioneconnector/build/model/data-service-response-data";
|
|
35
|
+
import { Tag } from "@colijnit/mainapi/build/model/tag";
|
|
36
|
+
import { CoDomainValue } from "@colijnit/mainapi/build/model/co-domain-value.bo";
|
|
37
|
+
import { RelationPrivacySetting } from "@colijnit/relationapi/build/model/relation-privacy-setting.bo";
|
|
38
|
+
import { DeliveryOrderStatus } from "@colijnit/transactionapi/build/model/delivery-order-status.bo";
|
|
39
|
+
import { SalesPerson } from "@colijnit/relationapi/build/model/sales-person.bo";
|
|
45
40
|
export declare class TransactionService extends PendingReasonService {
|
|
46
|
-
private readonly _lockMethods;
|
|
47
41
|
pendingLineOperationStatus(lineOperationStatuses: LineOperationStatus[]): LineOperationStatus | undefined;
|
|
48
42
|
updatePriceTransactionLine(uuid: string, lineUuid: string, price: number): Promise<boolean>;
|
|
49
43
|
updateReferenceTransactionLine(uuid: string, lineUuid: string, reference: string): Promise<boolean>;
|
|
@@ -82,7 +76,7 @@ export declare class TransactionService extends PendingReasonService {
|
|
|
82
76
|
getArticleBoundTextLinesOfArticleLine(articleLineUuid: string): Promise<TransactionLineInfo[]>;
|
|
83
77
|
createTransaction(): Promise<boolean>;
|
|
84
78
|
getTransactionById(transactionId: number): Promise<boolean>;
|
|
85
|
-
|
|
79
|
+
tryToLockTransaction(id: number, version: number): Promise<boolean>;
|
|
86
80
|
lockTransaction(transId: number, version: number): Promise<TransactionLockResult>;
|
|
87
81
|
commit(): Promise<DataServiceResponseData>;
|
|
88
82
|
saveTransaction(close?: boolean): Promise<TransactionInfoResponse>;
|
|
@@ -94,11 +88,9 @@ export declare class TransactionService extends PendingReasonService {
|
|
|
94
88
|
getMarketingCodes(): Promise<Marketing[]>;
|
|
95
89
|
getArticles(request: ArticleExtendedRequest): Promise<ArticleLight[]>;
|
|
96
90
|
getMainArticles(): Promise<MainArticle[]>;
|
|
97
|
-
insertCustomer(relation: CustomerFullObject): Promise<CustomerFullObject>;
|
|
98
|
-
updateCustomer(relation: CustomerFullObject): Promise<CustomerFullObject>;
|
|
99
91
|
getDeliveryMethods(): Promise<DeliveryMethod[]>;
|
|
100
92
|
getDeliveryOptions(): Promise<DeliveryOption[]>;
|
|
101
|
-
|
|
93
|
+
getSalesPersons(date?: Date): Promise<SalesPerson[]>;
|
|
102
94
|
addArticle(articleNo: string, isReturn?: boolean, aboveLineNr?: number, belowLineNr?: number): Promise<boolean>;
|
|
103
95
|
addTransactionLine(lineType: TransactionLineType, articleNo: string, amount: number, warehouseNo?: number, commissionCode?: string, isReturn?: boolean, aboveLineNr?: number, belowLineNr?: number, remember?: boolean): Promise<TransactionInfoResponse>;
|
|
104
96
|
addTextLine(showOnDocuments: number, text: string, amount: number, articleBound: boolean, refArticleLineNr: number, aboveLineNr?: number, belowLineNr?: number, remember?: boolean): Promise<TransactionInfoResponse>;
|
|
@@ -117,11 +109,8 @@ export declare class TransactionService extends PendingReasonService {
|
|
|
117
109
|
getGoodIdFromArticleNr(sku: string): Promise<number>;
|
|
118
110
|
getCountry(countryCode: string): Promise<Country>;
|
|
119
111
|
getCashRegisters(branch?: string, group?: number): Promise<CashRegister[]>;
|
|
120
|
-
getRelationNumber(relationId: number): Promise<string>;
|
|
121
112
|
getPriceLists(): Promise<PriceList[]>;
|
|
122
113
|
getVatLists(): Promise<Vat[]>;
|
|
123
|
-
getBranches(branchNr?: string): Promise<BranchLov[]>;
|
|
124
|
-
getSalesPersons(date?: Date): Promise<SalesPerson[]>;
|
|
125
114
|
getTags(category: number): Promise<Tag[]>;
|
|
126
115
|
getOnHoldCodes(): Promise<OnHoldCode[]>;
|
|
127
116
|
getWarehouses(branchNr?: string): Promise<Warehouse[]>;
|
|
@@ -131,11 +120,6 @@ export declare class TransactionService extends PendingReasonService {
|
|
|
131
120
|
purchaseOrderConfirmation(purchaseOrderConfirmation: GetPurchaseOrderConfirmation): Promise<DataServiceResponseData>;
|
|
132
121
|
updatePurchasePortalLines(purchasePortalLine: PurchasePortalLine): Promise<DataServiceResponseData>;
|
|
133
122
|
lockPurchasePortalLines(transIdPurchase: number, lineId: number): Promise<boolean>;
|
|
123
|
+
getDeliveryOrderStatus(transId: number, lineId: number): Promise<DeliveryOrderStatus>;
|
|
134
124
|
private _checkAndCreateTransaction;
|
|
135
|
-
private _lockCustomerFullObject;
|
|
136
|
-
private _lockSupplierFullObject;
|
|
137
|
-
private _lockEmployeeFullObject;
|
|
138
|
-
private _lockBranchFullObject;
|
|
139
|
-
private _lockCompanyFullObject;
|
|
140
|
-
private _lockContactPerson;
|
|
141
125
|
}
|
|
@@ -101,7 +101,7 @@ $cc-checkbox-check-background-color: white;
|
|
|
101
101
|
$cc-checkbox-check-border-color: #5FDCB3;
|
|
102
102
|
$cc-checkbox-check-color: #5FDCB3;
|
|
103
103
|
$cc-radio-button-height: 32px;
|
|
104
|
-
$cc-item-size:
|
|
104
|
+
$cc-item-size: 50px;
|
|
105
105
|
|
|
106
106
|
$cc-co-dialog-header-text-color: $tp-color-font;
|
|
107
107
|
$cc-co-dialog-header-padding: 0 0 20px 0;
|
package/package.json
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@colijnit/transaction",
|
|
3
|
-
"version": "12.1.
|
|
3
|
+
"version": "12.1.60",
|
|
4
4
|
"description": "Colijn IT transaction module for Angular 12",
|
|
5
5
|
"private": false,
|
|
6
6
|
"peerDependencies": {
|
|
7
7
|
"@angular/common": "^12.2.0",
|
|
8
8
|
"@angular/core": "^12.2.0",
|
|
9
|
-
"@colijnit/
|
|
10
|
-
"@colijnit/
|
|
9
|
+
"@colijnit/articleapi": ">=1.0.15",
|
|
10
|
+
"@colijnit/corecomponents_v12": ">=12.0.81",
|
|
11
|
+
"@colijnit/ioneconnector": ">=2.1.8",
|
|
12
|
+
"@colijnit/mainapi": ">=1.0.2",
|
|
13
|
+
"@colijnit/relationapi": ">=1.0.2",
|
|
14
|
+
"@colijnit/sharedapi": ">=1.0.10",
|
|
15
|
+
"@colijnit/sharedcomponents": ">=1.0.28",
|
|
16
|
+
"@colijnit/transactionapi": ">=1.1.54",
|
|
11
17
|
"@syncfusion/ej2-angular-buttons": ">=19.3.44",
|
|
12
18
|
"@syncfusion/ej2-angular-calendars": ">=19.3.44",
|
|
13
19
|
"@syncfusion/ej2-angular-dropdowns": ">=19.3.45",
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
import { ComplexFieldDecorator } from "./decorators/complex-field.decorator";
|
|
2
|
-
import { ComplexArrayDecorator } from "./decorators/complex-array.decorator";
|
|
3
|
-
import { BooleanTextDecorator } from "./decorators/boolean.decorator";
|
|
4
|
-
import { DateFieldFieldDecorator } from "./decorators/date-field.decorator";
|
|
5
|
-
import { StringNumberDecorator } from "./decorators/string-number.decorator";
|
|
6
|
-
import { isNill } from "../utils/is-nill.function";
|
|
7
|
-
import { ArrayUtils } from "../utils/array-utils";
|
|
8
|
-
import { BusinessObject } from "../model/business-object";
|
|
9
|
-
// Factory service creates businessobjects, using their decorators in the process.
|
|
10
|
-
export class BusinessObjectFactory {
|
|
11
|
-
constructor() {
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Creates and returns a new business data object instance of given class, with all given data properties applied to it in a
|
|
15
|
-
* complex-aware style. That is, all properties on given class that are decorated with @ComplexField(..) or @ComplexArray(..) decorators
|
|
16
|
-
* become strongly typed business objects, with methods that are usable and such.
|
|
17
|
-
*
|
|
18
|
-
* @param modelClass
|
|
19
|
-
* @param {Object} rawData The object with all (possibly raw/flat/not alive) data to be applied to the created model object
|
|
20
|
-
*/
|
|
21
|
-
makeWithRawBackendData(modelClass, rawData) {
|
|
22
|
-
if (!modelClass) {
|
|
23
|
-
return undefined;
|
|
24
|
-
}
|
|
25
|
-
if (typeof modelClass !== typeof BusinessObject) {
|
|
26
|
-
return undefined;
|
|
27
|
-
}
|
|
28
|
-
const model = new modelClass();
|
|
29
|
-
this._copyAllPropertiesDecoratorProcessedFrom(rawData, model);
|
|
30
|
-
return model;
|
|
31
|
-
}
|
|
32
|
-
// see makeWithRawBackendData, this is a loop-wrapper around that method
|
|
33
|
-
makeBOArrayFromRawBackendDataArray(modelClass, arrayOfRawDatas) {
|
|
34
|
-
if (!modelClass) {
|
|
35
|
-
return undefined;
|
|
36
|
-
}
|
|
37
|
-
const trueClientBos = [];
|
|
38
|
-
if (arrayOfRawDatas) {
|
|
39
|
-
for (let i = 0, len = arrayOfRawDatas.length; i < len; i++) {
|
|
40
|
-
trueClientBos.push(this.makeWithRawBackendData(modelClass, arrayOfRawDatas[i]));
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
return trueClientBos;
|
|
44
|
-
}
|
|
45
|
-
instantiateNewBo(modelClass) {
|
|
46
|
-
return this.makeWithRawBackendData(modelClass, {});
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Applies all properties of given 'source' object to the given 'destination' businessobject, if destination has that property.
|
|
50
|
-
* Works with the @ComplexField(), @ComplexArray, @BooleanText, @CoInject and @DateField annotations of given destination model.
|
|
51
|
-
*
|
|
52
|
-
* @param sourceData Raw data to copy to destination model
|
|
53
|
-
* @param {BusinessObject} destinationModel InOut: The annotated businessobject to apply source properties to
|
|
54
|
-
*/
|
|
55
|
-
_copyAllPropertiesDecoratorProcessedFrom(sourceData, destinationModel) {
|
|
56
|
-
if (!sourceData || !destinationModel) {
|
|
57
|
-
return;
|
|
58
|
-
}
|
|
59
|
-
// process all source data into destinationModel
|
|
60
|
-
for (const srcPropKey in sourceData) {
|
|
61
|
-
if (!sourceData.hasOwnProperty(srcPropKey)) {
|
|
62
|
-
continue;
|
|
63
|
-
}
|
|
64
|
-
const srcPropVal = sourceData[srcPropKey];
|
|
65
|
-
if (ComplexFieldDecorator.IsComplexField(destinationModel, srcPropKey)) {
|
|
66
|
-
const classOfField = ComplexFieldDecorator.GetComplexFieldType(destinationModel, srcPropKey);
|
|
67
|
-
destinationModel[srcPropKey] = this.makeWithRawBackendData(classOfField, srcPropVal);
|
|
68
|
-
}
|
|
69
|
-
else if (ComplexArrayDecorator.IsComplexArray(destinationModel, srcPropKey)) {
|
|
70
|
-
const sourceArray = srcPropVal;
|
|
71
|
-
if (!sourceArray) {
|
|
72
|
-
continue;
|
|
73
|
-
}
|
|
74
|
-
const classOfArrayItems = ComplexArrayDecorator.GetComplexArrayType(destinationModel, srcPropKey);
|
|
75
|
-
const tempArray = [];
|
|
76
|
-
for (let i = 0, len = sourceArray.length; i < len; i++) {
|
|
77
|
-
tempArray.push(this.makeWithRawBackendData(classOfArrayItems, sourceArray[i]));
|
|
78
|
-
}
|
|
79
|
-
destinationModel[srcPropKey] = tempArray;
|
|
80
|
-
}
|
|
81
|
-
else if (BooleanTextDecorator.IsBooleanTextField(destinationModel, srcPropKey)) {
|
|
82
|
-
// logical 'true' and 'false' also allowed as incoming values for @BooleanText() properties: then just copy their value
|
|
83
|
-
if (typeof srcPropVal === "boolean") {
|
|
84
|
-
destinationModel[srcPropKey] = srcPropVal;
|
|
85
|
-
// here, it should be a 'J' or 'N' (or 'T' or 'F'): assign the associated boolean value
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
destinationModel[srcPropKey] = BooleanTextDecorator.GetLogicalBooleanValue(srcPropVal);
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
else if (DateFieldFieldDecorator.IsDateField(destinationModel, srcPropKey)) {
|
|
92
|
-
destinationModel[srcPropKey] = DateFieldFieldDecorator.StringAsDate(srcPropVal);
|
|
93
|
-
}
|
|
94
|
-
else if (StringNumberDecorator.IsStringNumber(destinationModel, srcPropKey)) {
|
|
95
|
-
destinationModel[srcPropKey] = StringNumberDecorator.StringAsNumber(srcPropVal);
|
|
96
|
-
}
|
|
97
|
-
// non-decorated prop
|
|
98
|
-
else {
|
|
99
|
-
if (isNill(srcPropVal)) {
|
|
100
|
-
destinationModel[srcPropKey] = undefined;
|
|
101
|
-
}
|
|
102
|
-
else if (Array.isArray(srcPropVal)) {
|
|
103
|
-
destinationModel[srcPropKey] = ArrayUtils.CloneArray(srcPropVal);
|
|
104
|
-
}
|
|
105
|
-
else if (typeof srcPropVal === "object") {
|
|
106
|
-
if (srcPropVal instanceof Map) { //just copy the value in case of maps
|
|
107
|
-
destinationModel[srcPropKey] = srcPropVal;
|
|
108
|
-
}
|
|
109
|
-
else {
|
|
110
|
-
destinationModel[srcPropKey] = Object.assign({}, srcPropVal);
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
else {
|
|
114
|
-
destinationModel[srcPropKey] = srcPropVal;
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVzaW5lc3Mtb2JqZWN0LWZhY3RvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy90cmFuc2FjdGlvbi9zcmMvbGliL2ZhY3RvcnkvYnVzaW5lc3Mtb2JqZWN0LWZhY3RvcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEUsT0FBTyxFQUFDLHVCQUF1QixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDMUUsT0FBTyxFQUFDLHFCQUFxQixFQUFDLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFDLE1BQU0sRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2pELE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sMEJBQTBCLENBQUM7QUFFeEQsa0ZBQWtGO0FBQ2xGLE1BQU0sT0FBTyxxQkFBcUI7SUFDOUI7SUFDQSxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNJLHNCQUFzQixDQUFDLFVBQWUsRUFBRSxPQUFlO1FBQzFELElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDYixPQUFPLFNBQVMsQ0FBQztTQUNwQjtRQUNELElBQUksT0FBTyxVQUFVLEtBQUssT0FBTyxjQUFjLEVBQUU7WUFDN0MsT0FBTyxTQUFTLENBQUM7U0FDcEI7UUFFRCxNQUFNLEtBQUssR0FBbUIsSUFBSSxVQUFVLEVBQUUsQ0FBQztRQUMvQyxJQUFJLENBQUMsd0NBQXdDLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxDQUFDO1FBQzlELE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7SUFFRCx3RUFBd0U7SUFDakUsa0NBQWtDLENBQUMsVUFBZSxFQUFFLGVBQXlCO1FBQ2hGLElBQUksQ0FBQyxVQUFVLEVBQUU7WUFDYixPQUFPLFNBQVMsQ0FBQztTQUNwQjtRQUVELE1BQU0sYUFBYSxHQUFxQixFQUFFLENBQUM7UUFDM0MsSUFBSSxlQUFlLEVBQUU7WUFDakIsS0FBSyxJQUFJLENBQUMsR0FBVyxDQUFDLEVBQUUsR0FBRyxHQUFXLGVBQWUsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxHQUFHLEdBQUcsRUFBRSxDQUFDLEVBQUUsRUFBRTtnQkFDeEUsYUFBYSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsVUFBVSxFQUFFLGVBQWUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7YUFDbkY7U0FDSjtRQUNELE9BQU8sYUFBYSxDQUFDO0lBQ3pCLENBQUM7SUFFTSxnQkFBZ0IsQ0FBQyxVQUFlO1FBQ25DLE9BQU8sSUFBSSxDQUFDLHNCQUFzQixDQUFDLFVBQVUsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQ7Ozs7OztPQU1HO0lBQ0ssd0NBQXdDLENBQUMsVUFBZSxFQUFFLGdCQUFnQztRQUM5RixJQUFJLENBQUMsVUFBVSxJQUFJLENBQUMsZ0JBQWdCLEVBQUU7WUFDbEMsT0FBTztTQUNWO1FBRUQsZ0RBQWdEO1FBQ2hELEtBQUssTUFBTSxVQUFVLElBQUksVUFBVSxFQUFFO1lBQ2pDLElBQUksQ0FBQyxVQUFVLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxFQUFFO2dCQUN4QyxTQUFTO2FBQ1o7WUFFRCxNQUFNLFVBQVUsR0FBUSxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7WUFFL0MsSUFBSSxxQkFBcUIsQ0FBQyxjQUFjLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLEVBQUU7Z0JBQ3BFLE1BQU0sWUFBWSxHQUFRLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxDQUFDO2dCQUNsRyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsR0FBRyxJQUFJLENBQUMsc0JBQXNCLENBQUMsWUFBWSxFQUFFLFVBQVUsQ0FBQyxDQUFDO2FBQ3hGO2lCQUFNLElBQUkscUJBQXFCLENBQUMsY0FBYyxDQUFDLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxFQUFFO2dCQUMzRSxNQUFNLFdBQVcsR0FBVSxVQUFVLENBQUM7Z0JBQ3RDLElBQUksQ0FBQyxXQUFXLEVBQUU7b0JBQ2QsU0FBUztpQkFDWjtnQkFDRCxNQUFNLGlCQUFpQixHQUFRLHFCQUFxQixDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxDQUFDO2dCQUN2RyxNQUFNLFNBQVMsR0FBVSxFQUFFLENBQUM7Z0JBQzVCLEtBQUssSUFBSSxDQUFDLEdBQVcsQ0FBQyxFQUFFLEdBQUcsR0FBVyxXQUFXLENBQUMsTUFBTSxFQUFFLENBQUMsR0FBRyxHQUFHLEVBQUUsQ0FBQyxFQUFFLEVBQUU7b0JBQ3BFLFNBQVMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLHNCQUFzQixDQUFDLGlCQUFpQixFQUFFLFdBQVcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ2xGO2dCQUNELGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxHQUFHLFNBQVMsQ0FBQzthQUM1QztpQkFBTSxJQUFJLG9CQUFvQixDQUFDLGtCQUFrQixDQUFDLGdCQUFnQixFQUFFLFVBQVUsQ0FBQyxFQUFFO2dCQUM5RSx1SEFBdUg7Z0JBQ3ZILElBQUksT0FBTyxVQUFVLEtBQUssU0FBUyxFQUFFO29CQUNqQyxnQkFBZ0IsQ0FBQyxVQUFVLENBQUMsR0FBRyxVQUFVLENBQUM7b0JBQzFDLHVGQUF1RjtpQkFDMUY7cUJBQU07b0JBQ0gsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEdBQUcsb0JBQW9CLENBQUMsc0JBQXNCLENBQUMsVUFBVSxDQUFDLENBQUM7aUJBQzFGO2FBQ0o7aUJBQU0sSUFBSSx1QkFBdUIsQ0FBQyxXQUFXLENBQUMsZ0JBQWdCLEVBQUUsVUFBVSxDQUFDLEVBQUU7Z0JBQzFFLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxHQUFHLHVCQUF1QixDQUFDLFlBQVksQ0FBQyxVQUFVLENBQUMsQ0FBQzthQUNuRjtpQkFBTSxJQUFJLHFCQUFxQixDQUFDLGNBQWMsQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsRUFBRTtnQkFDM0UsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEdBQUcscUJBQXFCLENBQUMsY0FBYyxDQUFDLFVBQVUsQ0FBQyxDQUFDO2FBQ25GO1lBQ0QscUJBQXFCO2lCQUNoQjtnQkFDRCxJQUFJLE1BQU0sQ0FBQyxVQUFVLENBQUMsRUFBRTtvQkFDcEIsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEdBQUcsU0FBUyxDQUFDO2lCQUM1QztxQkFBTSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLEVBQUU7b0JBQ2xDLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxHQUFHLFVBQVUsQ0FBQyxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUM7aUJBQ3BFO3FCQUFNLElBQUksT0FBTyxVQUFVLEtBQUssUUFBUSxFQUFFO29CQUN2QyxJQUFJLFVBQVUsWUFBWSxHQUFHLEVBQUUsRUFBRSxxQ0FBcUM7d0JBQ2xFLGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztxQkFDN0M7eUJBQU07d0JBQ0gsZ0JBQWdCLENBQUMsVUFBVSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLENBQUM7cUJBQ2hFO2lCQUNKO3FCQUFNO29CQUNILGdCQUFnQixDQUFDLFVBQVUsQ0FBQyxHQUFHLFVBQVUsQ0FBQztpQkFDN0M7YUFDSjtTQUNKO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wbGV4RmllbGREZWNvcmF0b3J9IGZyb20gXCIuL2RlY29yYXRvcnMvY29tcGxleC1maWVsZC5kZWNvcmF0b3JcIjtcclxuaW1wb3J0IHtDb21wbGV4QXJyYXlEZWNvcmF0b3J9IGZyb20gXCIuL2RlY29yYXRvcnMvY29tcGxleC1hcnJheS5kZWNvcmF0b3JcIjtcclxuaW1wb3J0IHtCb29sZWFuVGV4dERlY29yYXRvcn0gZnJvbSBcIi4vZGVjb3JhdG9ycy9ib29sZWFuLmRlY29yYXRvclwiO1xyXG5pbXBvcnQge0RhdGVGaWVsZEZpZWxkRGVjb3JhdG9yfSBmcm9tIFwiLi9kZWNvcmF0b3JzL2RhdGUtZmllbGQuZGVjb3JhdG9yXCI7XHJcbmltcG9ydCB7U3RyaW5nTnVtYmVyRGVjb3JhdG9yfSBmcm9tIFwiLi9kZWNvcmF0b3JzL3N0cmluZy1udW1iZXIuZGVjb3JhdG9yXCI7XHJcbmltcG9ydCB7aXNOaWxsfSBmcm9tIFwiLi4vdXRpbHMvaXMtbmlsbC5mdW5jdGlvblwiO1xyXG5pbXBvcnQge0FycmF5VXRpbHN9IGZyb20gXCIuLi91dGlscy9hcnJheS11dGlsc1wiO1xyXG5pbXBvcnQge0J1c2luZXNzT2JqZWN0fSBmcm9tIFwiLi4vbW9kZWwvYnVzaW5lc3Mtb2JqZWN0XCI7XHJcblxyXG4vLyBGYWN0b3J5IHNlcnZpY2UgY3JlYXRlcyBidXNpbmVzc29iamVjdHMsIHVzaW5nIHRoZWlyIGRlY29yYXRvcnMgaW4gdGhlIHByb2Nlc3MuXHJcbmV4cG9ydCBjbGFzcyBCdXNpbmVzc09iamVjdEZhY3Rvcnkge1xyXG4gICAgY29uc3RydWN0b3IoKSB7XHJcbiAgICB9XHJcblxyXG4gICAgLyoqXHJcbiAgICAgKiBDcmVhdGVzIGFuZCByZXR1cm5zIGEgbmV3IGJ1c2luZXNzIGRhdGEgb2JqZWN0IGluc3RhbmNlIG9mIGdpdmVuIGNsYXNzLCB3aXRoIGFsbCBnaXZlbiBkYXRhIHByb3BlcnRpZXMgYXBwbGllZCB0byBpdCBpbiBhXHJcbiAgICAgKiBjb21wbGV4LWF3YXJlIHN0eWxlLiBUaGF0IGlzLCBhbGwgcHJvcGVydGllcyBvbiBnaXZlbiBjbGFzcyB0aGF0IGFyZSBkZWNvcmF0ZWQgd2l0aCBAQ29tcGxleEZpZWxkKC4uKSBvciBAQ29tcGxleEFycmF5KC4uKSBkZWNvcmF0b3JzXHJcbiAgICAgKiBiZWNvbWUgc3Ryb25nbHkgdHlwZWQgYnVzaW5lc3Mgb2JqZWN0cywgd2l0aCBtZXRob2RzIHRoYXQgYXJlIHVzYWJsZSBhbmQgc3VjaC5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gbW9kZWxDbGFzc1xyXG4gICAgICogQHBhcmFtIHtPYmplY3R9IHJhd0RhdGEgVGhlIG9iamVjdCB3aXRoIGFsbCAocG9zc2libHkgcmF3L2ZsYXQvbm90IGFsaXZlKSBkYXRhIHRvIGJlIGFwcGxpZWQgdG8gdGhlIGNyZWF0ZWQgbW9kZWwgb2JqZWN0XHJcbiAgICAgKi9cclxuICAgIHB1YmxpYyBtYWtlV2l0aFJhd0JhY2tlbmREYXRhKG1vZGVsQ2xhc3M6IGFueSwgcmF3RGF0YTogT2JqZWN0KTogQnVzaW5lc3NPYmplY3Qge1xyXG4gICAgICAgIGlmICghbW9kZWxDbGFzcykge1xyXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodHlwZW9mIG1vZGVsQ2xhc3MgIT09IHR5cGVvZiBCdXNpbmVzc09iamVjdCkge1xyXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgbW9kZWw6IEJ1c2luZXNzT2JqZWN0ID0gbmV3IG1vZGVsQ2xhc3MoKTtcclxuICAgICAgICB0aGlzLl9jb3B5QWxsUHJvcGVydGllc0RlY29yYXRvclByb2Nlc3NlZEZyb20ocmF3RGF0YSwgbW9kZWwpO1xyXG4gICAgICAgIHJldHVybiBtb2RlbDtcclxuICAgIH1cclxuXHJcbiAgICAvLyBzZWUgbWFrZVdpdGhSYXdCYWNrZW5kRGF0YSwgdGhpcyBpcyBhIGxvb3Atd3JhcHBlciBhcm91bmQgdGhhdCBtZXRob2RcclxuICAgIHB1YmxpYyBtYWtlQk9BcnJheUZyb21SYXdCYWNrZW5kRGF0YUFycmF5KG1vZGVsQ2xhc3M6IGFueSwgYXJyYXlPZlJhd0RhdGFzOiBPYmplY3RbXSk6IEJ1c2luZXNzT2JqZWN0W10ge1xyXG4gICAgICAgIGlmICghbW9kZWxDbGFzcykge1xyXG4gICAgICAgICAgICByZXR1cm4gdW5kZWZpbmVkO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgY29uc3QgdHJ1ZUNsaWVudEJvczogQnVzaW5lc3NPYmplY3RbXSA9IFtdO1xyXG4gICAgICAgIGlmIChhcnJheU9mUmF3RGF0YXMpIHtcclxuICAgICAgICAgICAgZm9yIChsZXQgaTogbnVtYmVyID0gMCwgbGVuOiBudW1iZXIgPSBhcnJheU9mUmF3RGF0YXMubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgICAgIHRydWVDbGllbnRCb3MucHVzaCh0aGlzLm1ha2VXaXRoUmF3QmFja2VuZERhdGEobW9kZWxDbGFzcywgYXJyYXlPZlJhd0RhdGFzW2ldKSk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICAgICAgcmV0dXJuIHRydWVDbGllbnRCb3M7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGluc3RhbnRpYXRlTmV3Qm8obW9kZWxDbGFzczogYW55KTogQnVzaW5lc3NPYmplY3Qge1xyXG4gICAgICAgIHJldHVybiB0aGlzLm1ha2VXaXRoUmF3QmFja2VuZERhdGEobW9kZWxDbGFzcywge30pO1xyXG4gICAgfVxyXG5cclxuICAgIC8qKlxyXG4gICAgICogQXBwbGllcyBhbGwgcHJvcGVydGllcyBvZiBnaXZlbiAnc291cmNlJyBvYmplY3QgdG8gdGhlIGdpdmVuICdkZXN0aW5hdGlvbicgYnVzaW5lc3NvYmplY3QsIGlmIGRlc3RpbmF0aW9uIGhhcyB0aGF0IHByb3BlcnR5LlxyXG4gICAgICogV29ya3Mgd2l0aCB0aGUgQENvbXBsZXhGaWVsZCgpLCBAQ29tcGxleEFycmF5LCBAQm9vbGVhblRleHQsIEBDb0luamVjdCBhbmQgQERhdGVGaWVsZCBhbm5vdGF0aW9ucyBvZiBnaXZlbiBkZXN0aW5hdGlvbiBtb2RlbC5cclxuICAgICAqXHJcbiAgICAgKiBAcGFyYW0gc291cmNlRGF0YSBSYXcgZGF0YSB0byBjb3B5IHRvIGRlc3RpbmF0aW9uIG1vZGVsXHJcbiAgICAgKiBAcGFyYW0ge0J1c2luZXNzT2JqZWN0fSBkZXN0aW5hdGlvbk1vZGVsIEluT3V0OiBUaGUgYW5ub3RhdGVkIGJ1c2luZXNzb2JqZWN0IHRvIGFwcGx5IHNvdXJjZSBwcm9wZXJ0aWVzIHRvXHJcbiAgICAgKi9cclxuICAgIHByaXZhdGUgX2NvcHlBbGxQcm9wZXJ0aWVzRGVjb3JhdG9yUHJvY2Vzc2VkRnJvbShzb3VyY2VEYXRhOiBhbnksIGRlc3RpbmF0aW9uTW9kZWw6IEJ1c2luZXNzT2JqZWN0KTogdm9pZCB7XHJcbiAgICAgICAgaWYgKCFzb3VyY2VEYXRhIHx8ICFkZXN0aW5hdGlvbk1vZGVsKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIC8vIHByb2Nlc3MgYWxsIHNvdXJjZSBkYXRhIGludG8gZGVzdGluYXRpb25Nb2RlbFxyXG4gICAgICAgIGZvciAoY29uc3Qgc3JjUHJvcEtleSBpbiBzb3VyY2VEYXRhKSB7XHJcbiAgICAgICAgICAgIGlmICghc291cmNlRGF0YS5oYXNPd25Qcm9wZXJ0eShzcmNQcm9wS2V5KSkge1xyXG4gICAgICAgICAgICAgICAgY29udGludWU7XHJcbiAgICAgICAgICAgIH1cclxuXHJcbiAgICAgICAgICAgIGNvbnN0IHNyY1Byb3BWYWw6IGFueSA9IHNvdXJjZURhdGFbc3JjUHJvcEtleV07XHJcblxyXG4gICAgICAgICAgICBpZiAoQ29tcGxleEZpZWxkRGVjb3JhdG9yLklzQ29tcGxleEZpZWxkKGRlc3RpbmF0aW9uTW9kZWwsIHNyY1Byb3BLZXkpKSB7XHJcbiAgICAgICAgICAgICAgICBjb25zdCBjbGFzc09mRmllbGQ6IGFueSA9IENvbXBsZXhGaWVsZERlY29yYXRvci5HZXRDb21wbGV4RmllbGRUeXBlKGRlc3RpbmF0aW9uTW9kZWwsIHNyY1Byb3BLZXkpO1xyXG4gICAgICAgICAgICAgICAgZGVzdGluYXRpb25Nb2RlbFtzcmNQcm9wS2V5XSA9IHRoaXMubWFrZVdpdGhSYXdCYWNrZW5kRGF0YShjbGFzc09mRmllbGQsIHNyY1Byb3BWYWwpO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKENvbXBsZXhBcnJheURlY29yYXRvci5Jc0NvbXBsZXhBcnJheShkZXN0aW5hdGlvbk1vZGVsLCBzcmNQcm9wS2V5KSkge1xyXG4gICAgICAgICAgICAgICAgY29uc3Qgc291cmNlQXJyYXk6IGFueVtdID0gc3JjUHJvcFZhbDtcclxuICAgICAgICAgICAgICAgIGlmICghc291cmNlQXJyYXkpIHtcclxuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgICAgIGNvbnN0IGNsYXNzT2ZBcnJheUl0ZW1zOiBhbnkgPSBDb21wbGV4QXJyYXlEZWNvcmF0b3IuR2V0Q29tcGxleEFycmF5VHlwZShkZXN0aW5hdGlvbk1vZGVsLCBzcmNQcm9wS2V5KTtcclxuICAgICAgICAgICAgICAgIGNvbnN0IHRlbXBBcnJheTogYW55W10gPSBbXTtcclxuICAgICAgICAgICAgICAgIGZvciAobGV0IGk6IG51bWJlciA9IDAsIGxlbjogbnVtYmVyID0gc291cmNlQXJyYXkubGVuZ3RoOyBpIDwgbGVuOyBpKyspIHtcclxuICAgICAgICAgICAgICAgICAgICB0ZW1wQXJyYXkucHVzaCh0aGlzLm1ha2VXaXRoUmF3QmFja2VuZERhdGEoY2xhc3NPZkFycmF5SXRlbXMsIHNvdXJjZUFycmF5W2ldKSk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICBkZXN0aW5hdGlvbk1vZGVsW3NyY1Byb3BLZXldID0gdGVtcEFycmF5O1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKEJvb2xlYW5UZXh0RGVjb3JhdG9yLklzQm9vbGVhblRleHRGaWVsZChkZXN0aW5hdGlvbk1vZGVsLCBzcmNQcm9wS2V5KSkge1xyXG4gICAgICAgICAgICAgICAgLy8gbG9naWNhbCAndHJ1ZScgYW5kICdmYWxzZScgYWxzbyBhbGxvd2VkIGFzIGluY29taW5nIHZhbHVlcyBmb3IgQEJvb2xlYW5UZXh0KCkgcHJvcGVydGllczogdGhlbiBqdXN0IGNvcHkgdGhlaXIgdmFsdWVcclxuICAgICAgICAgICAgICAgIGlmICh0eXBlb2Ygc3JjUHJvcFZhbCA9PT0gXCJib29sZWFuXCIpIHtcclxuICAgICAgICAgICAgICAgICAgICBkZXN0aW5hdGlvbk1vZGVsW3NyY1Byb3BLZXldID0gc3JjUHJvcFZhbDtcclxuICAgICAgICAgICAgICAgICAgICAvLyBoZXJlLCBpdCBzaG91bGQgYmUgYSAnSicgb3IgJ04nIChvciAnVCcgb3IgJ0YnKTogYXNzaWduIHRoZSBhc3NvY2lhdGVkIGJvb2xlYW4gdmFsdWVcclxuICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGVzdGluYXRpb25Nb2RlbFtzcmNQcm9wS2V5XSA9IEJvb2xlYW5UZXh0RGVjb3JhdG9yLkdldExvZ2ljYWxCb29sZWFuVmFsdWUoc3JjUHJvcFZhbCk7XHJcbiAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoRGF0ZUZpZWxkRmllbGREZWNvcmF0b3IuSXNEYXRlRmllbGQoZGVzdGluYXRpb25Nb2RlbCwgc3JjUHJvcEtleSkpIHtcclxuICAgICAgICAgICAgICAgIGRlc3RpbmF0aW9uTW9kZWxbc3JjUHJvcEtleV0gPSBEYXRlRmllbGRGaWVsZERlY29yYXRvci5TdHJpbmdBc0RhdGUoc3JjUHJvcFZhbCk7XHJcbiAgICAgICAgICAgIH0gZWxzZSBpZiAoU3RyaW5nTnVtYmVyRGVjb3JhdG9yLklzU3RyaW5nTnVtYmVyKGRlc3RpbmF0aW9uTW9kZWwsIHNyY1Byb3BLZXkpKSB7XHJcbiAgICAgICAgICAgICAgICBkZXN0aW5hdGlvbk1vZGVsW3NyY1Byb3BLZXldID0gU3RyaW5nTnVtYmVyRGVjb3JhdG9yLlN0cmluZ0FzTnVtYmVyKHNyY1Byb3BWYWwpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC8vIG5vbi1kZWNvcmF0ZWQgcHJvcFxyXG4gICAgICAgICAgICBlbHNlIHtcclxuICAgICAgICAgICAgICAgIGlmIChpc05pbGwoc3JjUHJvcFZhbCkpIHtcclxuICAgICAgICAgICAgICAgICAgICBkZXN0aW5hdGlvbk1vZGVsW3NyY1Byb3BLZXldID0gdW5kZWZpbmVkO1xyXG4gICAgICAgICAgICAgICAgfSBlbHNlIGlmIChBcnJheS5pc0FycmF5KHNyY1Byb3BWYWwpKSB7XHJcbiAgICAgICAgICAgICAgICAgICAgZGVzdGluYXRpb25Nb2RlbFtzcmNQcm9wS2V5XSA9IEFycmF5VXRpbHMuQ2xvbmVBcnJheShzcmNQcm9wVmFsKTtcclxuICAgICAgICAgICAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHNyY1Byb3BWYWwgPT09IFwib2JqZWN0XCIpIHtcclxuICAgICAgICAgICAgICAgICAgICBpZiAoc3JjUHJvcFZhbCBpbnN0YW5jZW9mIE1hcCkgeyAvL2p1c3QgY29weSB0aGUgdmFsdWUgaW4gY2FzZSBvZiBtYXBzXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc3RpbmF0aW9uTW9kZWxbc3JjUHJvcEtleV0gPSBzcmNQcm9wVmFsO1xyXG4gICAgICAgICAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGRlc3RpbmF0aW9uTW9kZWxbc3JjUHJvcEtleV0gPSBPYmplY3QuYXNzaWduKHt9LCBzcmNQcm9wVmFsKTtcclxuICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgICAgICAgIGRlc3RpbmF0aW9uTW9kZWxbc3JjUHJvcEtleV0gPSBzcmNQcm9wVmFsO1xyXG4gICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
|