@colijnit/transaction 12.0.2 → 12.1.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/app/component/core/base/default-ok-cancel-buttons.component.d.ts +13 -0
- package/app/component/core/base/transaction-base.component.d.ts +38 -0
- package/app/component/core/directive/template-wrapper.directive.d.ts +13 -0
- package/app/component/{shopping-cart → core}/stock-status-indicator/stock-status-indicator.component.d.ts +0 -0
- package/app/component/service-order/ione-service-order-module.d.ts +2 -0
- package/app/component/service-order/ione-service-order.component.d.ts +25 -0
- package/app/component/service-order/service-order.component.d.ts +48 -0
- package/app/component/service-order/summary/transaction-article-summary.component.d.ts +17 -0
- package/app/component/service-order/summary/transaction-delivery-summary.component.d.ts +20 -0
- package/app/component/service-order/summary/transaction-order-summary.component.d.ts +16 -0
- package/app/component/service-order/summary/transaction-payment-info.component.d.ts +14 -0
- package/app/component/service-order/summary/transaction-product-contract-summary.component.d.ts +7 -0
- package/app/component/service-order/summary/transaction-product-summary.component.d.ts +15 -0
- package/app/component/service-order/summary/transaction-service-status.component.d.ts +15 -0
- package/app/component/service-order/summary/transaction-service-summary.component.d.ts +15 -0
- package/app/component/service-order/summary/transaction-summary-block.component.d.ts +16 -0
- package/app/component/service-order/transaction-article-text/transaction-article-text.component.d.ts +24 -0
- package/app/component/service-order/transaction-header-block/transaction-header-block.component.d.ts +15 -0
- package/app/component/service-order/transaction-order-line-view/transaction-order-line-view.component.d.ts +16 -0
- package/app/component/service-order/transaction-order-lines/transaction-order-lines.component.d.ts +25 -0
- package/app/component/service-order/transaction-order-totals/transaction-order-totals.component.d.ts +7 -0
- package/app/component/service-order/transaction-relation/transaction-relation-address.component.d.ts +22 -0
- package/app/component/service-order/transaction-relation/transaction-relation-edit.component.d.ts +29 -0
- package/app/component/service-order/transaction-sidebar/transaction-line-accordion.component.d.ts +11 -0
- package/app/component/service-order/transaction-sidebar/transaction-sidebar-right.component.d.ts +26 -0
- package/app/component/shopping-cart/ione-shopping-cart.component.d.ts +20 -0
- package/app/component/shopping-cart/shopping-cart/shopping-cart.component.d.ts +7 -2
- package/app/component/shopping-cart/shopping-cart-manager/shopping-cart-manager.component.d.ts +7 -0
- package/app/service/ione-connector-adapter.service.d.ts +5 -1
- package/app/service/transaction-event.service.d.ts +29 -0
- package/app/service/transaction.service.d.ts +9 -2
- package/bundles/colijnit-transaction.umd.js +1930 -62
- package/bundles/colijnit-transaction.umd.js.map +1 -1
- package/colijnit-transaction.d.ts +23 -1
- package/colijnit-transaction.metadata.json +1 -1
- package/enum/position-grid-row.enum.d.ts +4 -0
- package/esm2015/app/component/checkout/checkout-overview-delivery-edit/checkout-overview-delivery-edit.component.js +3 -3
- package/esm2015/app/component/checkout/ione-checkout.module.js +1 -3
- package/esm2015/app/component/common/icon/icon.component.js +2 -1
- package/esm2015/app/component/core/base/default-ok-cancel-buttons.component.js +39 -0
- package/esm2015/app/component/core/base/transaction-base.component.js +121 -0
- package/esm2015/app/component/core/directive/template-wrapper.directive.js +69 -0
- package/esm2015/app/component/{shopping-cart → core}/stock-status-indicator/stock-status-indicator.component.js +1 -1
- package/esm2015/app/component/service-order/ione-service-order-module.js +103 -0
- package/esm2015/app/component/service-order/ione-service-order.component.js +98 -0
- package/esm2015/app/component/service-order/service-order.component.js +167 -0
- package/esm2015/app/component/service-order/summary/transaction-article-summary.component.js +55 -0
- package/esm2015/app/component/service-order/summary/transaction-delivery-summary.component.js +59 -0
- package/esm2015/app/component/service-order/summary/transaction-order-summary.component.js +43 -0
- package/esm2015/app/component/service-order/summary/transaction-payment-info.component.js +35 -0
- package/esm2015/app/component/service-order/summary/transaction-product-contract-summary.component.js +38 -0
- package/esm2015/app/component/service-order/summary/transaction-product-summary.component.js +41 -0
- package/esm2015/app/component/service-order/summary/transaction-service-status.component.js +37 -0
- package/esm2015/app/component/service-order/summary/transaction-service-summary.component.js +38 -0
- package/esm2015/app/component/service-order/summary/transaction-summary-block.component.js +53 -0
- package/esm2015/app/component/service-order/transaction-article-text/transaction-article-text.component.js +183 -0
- package/esm2015/app/component/service-order/transaction-header-block/transaction-header-block.component.js +83 -0
- package/esm2015/app/component/service-order/transaction-order-line-view/transaction-order-line-view.component.js +76 -0
- package/esm2015/app/component/service-order/transaction-order-lines/transaction-order-lines.component.js +71 -0
- package/esm2015/app/component/service-order/transaction-order-totals/transaction-order-totals.component.js +37 -0
- package/esm2015/app/component/service-order/transaction-relation/transaction-relation-address.component.js +116 -0
- package/esm2015/app/component/service-order/transaction-relation/transaction-relation-edit.component.js +225 -0
- package/esm2015/app/component/service-order/transaction-sidebar/transaction-line-accordion.component.js +172 -0
- package/esm2015/app/component/service-order/transaction-sidebar/transaction-sidebar-right.component.js +120 -0
- package/esm2015/app/component/shopping-cart/ione-shopping-cart.component.js +52 -7
- package/esm2015/app/component/shopping-cart/ione-shopping-cart.module.js +4 -6
- package/esm2015/app/component/shopping-cart/shopping-cart/shopping-cart.component.js +42 -9
- package/esm2015/app/component/shopping-cart/shopping-cart-line/shopping-cart-line.component.js +1 -1
- package/esm2015/app/component/shopping-cart/shopping-cart-manager/shopping-cart-manager.component.js +63 -3
- package/esm2015/app/service/ione-connector-adapter.service.js +60 -8
- package/esm2015/app/service/transaction-event.service.js +9 -1
- package/esm2015/app/service/transaction.service.js +87 -19
- package/esm2015/assets/dictionary/text.properties.js +43 -3
- package/esm2015/colijnit-transaction.js +24 -2
- package/esm2015/enum/position-grid-row.enum.js +6 -0
- package/esm2015/public_api.js +3 -1
- package/fesm2015/colijnit-transaction.js +2309 -50
- package/fesm2015/colijnit-transaction.js.map +1 -1
- package/package.json +17 -17
- package/public_api.d.ts +2 -0
|
@@ -386,8 +386,8 @@ CheckoutOverviewDeliveryEditComponent.decorators = [
|
|
|
386
386
|
<co-grid #addressGrid
|
|
387
387
|
[data]="addresses"
|
|
388
388
|
[columns]="columns"
|
|
389
|
-
[pagingEnabled]="
|
|
390
|
-
[maxNumberOfRows]="
|
|
389
|
+
[pagingEnabled]="true"
|
|
390
|
+
[maxNumberOfRows]="20"
|
|
391
391
|
(rowsSelected)="handleAddressSelected($event)"
|
|
392
392
|
></co-grid>
|
|
393
393
|
</div>
|
|
@@ -417,4 +417,4 @@ CheckoutOverviewDeliveryEditComponent.propDecorators = {
|
|
|
417
417
|
validSubmit: [{ type: Output }],
|
|
418
418
|
invalidSubmit: [{ type: Output }]
|
|
419
419
|
};
|
|
420
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tvdXQtb3ZlcnZpZXctZGVsaXZlcnktZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudC9jaGVja291dC9jaGVja291dC1vdmVydmlldy1kZWxpdmVyeS1lZGl0L2NoZWNrb3V0LW92ZXJ2aWV3LWRlbGl2ZXJ5LWVkaXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWdCLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEksT0FBTyxFQUFxQyxhQUFhLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUUvRixPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0saURBQWlELENBQUM7QUFHeEUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBR2xGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBR3hFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBNE10RSxNQUFNLE9BQU8scUNBQXFDO0lBNEloRCxZQUNZLEdBQXNCLEVBQ3RCLGtCQUFxQyxFQUN0QyxPQUEyQjtRQUYxQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBQ3RDLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBOUl0Qix3QkFBbUIsR0FBZ0IsV0FBVyxDQUFDLGVBQWUsQ0FBQztRQUMvRCx1QkFBa0IsR0FBZ0IsV0FBVyxDQUFDLGNBQWMsQ0FBQztRQXFCdEUsZ0JBQVcsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUczRCxrQkFBYSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRTdELHVCQUFrQixHQUFxQixFQUFFLENBQUM7UUFDMUMs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LEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDcEUsQ0FBQztJQUVhLHdCQUF3QixDQUFDLE9BQWdCOztZQUNyRCxJQUFJLE9BQU8sQ0FBQyxTQUFTLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFO2dCQUM3QyxNQUFNLE9BQU8sR0FBWSxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDMUUsT0FBTyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDO2FBQzNDO1FBQ0gsQ0FBQztLQUFBOzs7WUF6Y0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxpQ0FBaUM7Z0JBQzNDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlNVDs7YUFLRjs7O1lBdk5zQixpQkFBaUI7WUFZaEMsaUJBQWlCO1lBSGpCLGtCQUFrQjs7OzJCQW1OdkIsU0FBUyxTQUFDLGNBQWMsRUFBRSxFQUFDLElBQUksRUFBRSxhQUFhLEVBQUM7MkJBRy9DLFNBQVMsU0FBQyxjQUFjLEVBQUUsRUFBQyxJQUFJLEVBQUUsYUFBYSxFQUFDO21DQUcvQyxTQUFTLFNBQUMsc0JBQXNCOzBCQUdoQyxTQUFTLFNBQUMsYUFBYTt1QkFHdkIsS0FBSzswQkFHTCxLQUFLOzBCQUdMLE1BQU07NEJBR04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtDb0RpYWxvZ0NvbXBvbmVudCwgQ29HcmlkQ29tcG9uZW50LCBGb3JtQ29tcG9uZW50fSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xuaW1wb3J0IHtSZWxhdGlvbkFueVR5cGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24tYW55LXR5cGVcIjtcbmltcG9ydCB7QWRkcmVzc30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9hZGRyZXNzLmJvXCI7XG5pbXBvcnQge0dlbmRlclR5cGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS9nZW5kZXItdHlwZS5lbnVtXCI7XG5pbXBvcnQge01hcmtldGluZ30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9tYXJrZXRpbmcuYm9cIjtcbmltcG9ydCB7QWRkcmVzc1R5cGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS9hZGRyZXNzLXR5cGUuZW51bVwiO1xuaW1wb3J0IHtEZWxpdmVyeU1ldGhvZH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9kZWxpdmVyeS1tZXRob2QuYm9cIjtcbmltcG9ydCB7RGVsaXZlcnlPcHRpb259IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvZGVsaXZlcnktb3B0aW9uLmJvXCI7XG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xuaW1wb3J0IHtUZXh0VmFsdWVDb250YWluZXJ9IGZyb20gXCIuLi8uLi8uLi9tb2RlbC90ZXh0LXZhbHVlLWNvbnRhaW5lclwiO1xuaW1wb3J0IHtUcmFuc2FjdGlvbkluZm99IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24taW5mby5ib1wiO1xuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlXCI7XG5pbXBvcnQge0NvdW50cnl9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvY291bnRyeS5ib1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiY2hlY2tvdXQtb3ZlcnZpZXctZGVsaXZlcnktZWRpdFwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxjby1mb3JtICNkZWxpdmVyeUZvcm0gKHZhbGlkU3VibWl0KT1cInZhbGlkU3VibWl0LmVtaXQoKVwiIChpbnZhbGlkU3VibWl0KT1cImludmFsaWRTdWJtaXQuZW1pdCgpXCI+XG4gICAgICA8ZGl2PlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxsYWJlbCBbdGV4dENvbnRlbnRdPVwiJ0RFTElWRVJZJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja291dC1sYWJlbC1oMlwiXG4gICAgICAgICAgPjwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtcm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidERUxJVkVSWV9BRERSRVNTJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNoZWNrb3V0LWxhYmVsLWgzXCJcbiAgICAgICAgICAgID48L2xhYmVsPlxuICAgICAgICAgICAgPGNoZWNrb3V0LW92ZXJ2aWV3LWRlbGl2ZXJ5LWFkZHJlc3MgW2FkZHJlc3NdPVwiZGVsaXZlcnlBZGRyZXNzXCI+PC9jaGVja291dC1vdmVydmlldy1kZWxpdmVyeS1hZGRyZXNzPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci1idXR0b24tY2hhbmdlLWFkZHJlc3NcIj5cbiAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBbbGFiZWxdPVwiJ0RFTElWRVJZX0FERFJFU1NfQ0hBTkdFJyB8IGxvY2FsaXplXCIgKGNsaWNrKT1cImNoYW5nZUFkZHJlc3MoZGVsaXZlcnlBZGRyZXNzVHlwZSlcIj48L2NvLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICAgICAgPGxhYmVsIFt0ZXh0Q29udGVudF09XCInSU5WT0lDRV9BRERSRVNTJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNoZWNrb3V0LWxhYmVsLWgzXCJcbiAgICAgICAgICAgID48L2xhYmVsPlxuICAgICAgICAgICAgPGNoZWNrb3V0LW92ZXJ2aWV3LWRlbGl2ZXJ5LWFkZHJlc3MgW2FkZHJlc3NdPVwiYmlsbGluZ0FkZHJlc3NcIj48L2NoZWNrb3V0LW92ZXJ2aWV3LWRlbGl2ZXJ5LWFkZHJlc3M+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWJ1dHRvbi1jaGFuZ2UtYWRkcmVzc1wiPlxuICAgICAgICAgICAgICA8Y28tYnV0dG9uIFtsYWJlbF09XCInSU5WT0lDRV9BRERSRVNTX0NIQU5HRScgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJjaGFuZ2VBZGRyZXNzKGJpbGxpbmdBZGRyZXNzVHlwZSlcIj48L2NvLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2PlxuICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidERUxJVkVSWV9NT01FTlQnIHwgbG9jYWxpemVcIlxuICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja291dC1sYWJlbC1oM1wiXG4gICAgICAgID48L2xhYmVsPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtcm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgPGNvLWlucHV0LWRhdGUgW3BsYWNlaG9sZGVyXT1cIidERUxJVkVSWV9EQVRFJyB8IGxvY2FsaXplIFwiIFsobW9kZWwpXT1cImRlbGl2ZXJ5RGF0ZVwiPjwvY28taW5wdXQtZGF0ZT5cbiAgICAgICAgICA8Y28taW5wdXQtY2hlY2tib3ggW2xhYmVsXT1cIidQQVJUX0RFTElWRVJJRVMnIHwgbG9jYWxpemVcIiBbKG1vZGVsKV09XCJ0cmFuc2FjdGlvbi5hbGxvd1BhcnRpYWxEZWxpdmVyeVwiPjwvY28taW5wdXQtY2hlY2tib3g+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICAgIDxjby1pbnB1dC1kYXRlIFtwbGFjZWhvbGRlcl09XCInUFJFRkVSUkVEX0RBVEUnIHwgbG9jYWxpemUgXCIgWyhtb2RlbCldPVwicHJlZmVycmVkRGF0ZVwiPjwvY28taW5wdXQtZGF0ZT5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBwcmVmZXJyZWREYXRlT3B0aW9uIG9mIHByZWZlcnJlZERhdGVPcHRpb25zXCI+XG4gICAgICAgICAgICA8Y28taW5wdXQtcmFkaW8tYnV0dG9uIFtuYW1lXT1cIidwcmVmZXJlZERlbGl2ZXJ5RGF0ZTInXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cInByZWZlcnJlZERhdGVPcHRpb24udGV4dCB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cInByZWZlcnJlZERhdGVPcHRpb24udmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJ0cmFuc2FjdGlvbi5wcmVmZXJyZWREZWxpdmVyeURhdGUyID09PSBwcmVmZXJyZWREYXRlT3B0aW9uLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImNoYW5nZVByZWZlcnJlZERlbGl2ZXJ5RGF0ZTIocHJlZmVycmVkRGF0ZU9wdGlvbi52YWx1ZSlcIlxuICAgICAgICAgICAgPjwvY28taW5wdXQtcmFkaW8tYnV0dG9uPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LXJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICAgIDxjby1pbnB1dC1jb21iby1ib3ggWyhtb2RlbCldPVwidHJhbnNhY3Rpb24uZGVsaXZlcnlNZXRob2RcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzb3VyY2VdPVwiZGVsaXZlcnlNZXRob2RzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmllbGRzXT1cImRlbGl2ZXJ5TWV0aG9kRmllbGRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0RFTElWRVJZX01FVEhPRDInIHwgbG9jYWxpemVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwib25EZWxpdmVyeU1ldGhvZENoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgID48L2NvLWlucHV0LWNvbWJvLWJveD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdj5cbiAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidERUxJVkVSWV9PUFRJT05TJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja291dC1sYWJlbC1oM1wiXG4gICAgICAgICAgPjwvbGFiZWw+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtZmxleC1yb3dcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtZmxleC1jb2x1bW5cIj5cbiAgICAgICAgICA8Y28tbXVsdGktc2VsZWN0LWxpc3RcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInREVMSVZFUllfT1BUSU9OUycgfCBsb2NhbGl6ZVwiXG4gICAgICAgICAgICBbY29sbGVjdGlvbl09XCJkZWxpdmVyeU9wdGlvbnNcIlxuICAgICAgICAgICAgW2ZpZWxkc109XCJkZWxpdmVyeU9wdGlvbkZpZWxkc1wiXG4gICAgICAgICAgICBbKG1vZGVsKV09XCJ0cmFuc2FjdGlvbi5kZWxpdmVyeU9wdGlvbnNcIlxuICAgICAgICAgICAgW3Nob3dDaGVja2JveF09XCJ0cnVlXCJcbiAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgICA+PC9jby1tdWx0aS1zZWxlY3QtbGlzdD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiXCI+XG4gICAgICAgIDxsYWJlbCBbdGV4dENvbnRlbnRdPVwiJ1JFTUFSS1MnIHwgbG9jYWxpemVcIlxuICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja291dC1sYWJlbC1oM1wiXG4gICAgICAgID48L2xhYmVsPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtZmxleC1yb3dcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtZmxleC1jb2x1bW5cIj5cbiAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0IFsobW9kZWwpXT1cInRyYW5zYWN0aW9uLnJlbWFya1wiIFtwbGFjZWhvbGRlcl09XCInUkVNQVJLUycgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICA8Y28taW5wdXQtY2hlY2tib3ggW2xhYmVsXT1cIidERUxJVkVSWV9EQVRFX0ZJTkFMJyB8IGxvY2FsaXplXCIgWyhtb2RlbCldPVwiZGVsaXZlcnlEYXRlRmluYWxcIj48L2NvLWlucHV0LWNoZWNrYm94PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICA8Y28taW5wdXQtZGF0ZSBbcGxhY2Vob2xkZXJdPVwiJ0FTU0VNQkxZX0RBVEUnIHwgbG9jYWxpemUgXCIgWyhtb2RlbCldPVwiYXNzZW1ibHlEYXRlXCI+PC9jby1pbnB1dC1kYXRlPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICA8Y28taW5wdXQtdGV4dCBbcGxhY2Vob2xkZXJdPVwiJ1RPVEFMX0FTU0VNQkxZX1RJTUUnIHwgbG9jYWxpemUgXCIgWyhtb2RlbCldPVwidG90YWxBc3NlbWJseVRpbWVcIj48L2NvLWlucHV0LXRleHQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtY29sdW1uXCI+XG4gICAgICAgIDxjby1pbnB1dC1jaGVja2JveCBbbGFiZWxdPVwiJ0RST1BTSElQTUVOVCcgfCBsb2NhbGl6ZVwiIFsobW9kZWwpXT1cImRyb3BzaGlwbWVudFwiPjwvY28taW5wdXQtY2hlY2tib3g+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtZmxleC1yb3dcIj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidERUxJVkVSWV9DT1NUUycgfCBsb2NhbGl6ZVwiXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tvdXQtbGFiZWwtaDNcIlxuICAgICAgICAgID48L2xhYmVsPlxuICAgICAgICAgIDxkaXY+e3sgZGVsaXZlcnlDb3N0cyB9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidBU1NFTUJMWV9DT1NUUycgfCBsb2NhbGl6ZVwiXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tvdXQtbGFiZWwtaDNcIlxuICAgICAgICAgID48L2xhYmVsPlxuICAgICAgICAgIDxkaXY+e3sgYXNzZW1ibHlDb3N0cyB9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2PlxuICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidNQVJLRVRJTkcnIHwgbG9jYWxpemVcIlxuICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja291dC1sYWJlbC1oM1wiXG4gICAgICAgID48L2xhYmVsPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtcm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgPGNvLWlucHV0LWNvbWJvLWJveCBbKG1vZGVsKV09XCJ0cmFuc2FjdGlvbi5tYXJrZXRpbmdDb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzb3VyY2VdPVwibWFya2V0aW5nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmaWVsZHNdPVwibWFya2V0aW5nRmllbGRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInTUFSS0VUSU5HJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJvbk1hcmtldGluZ0NvZGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgPjwvY28taW5wdXQtY29tYm8tYm94PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LXJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwidHJhbnNhY3Rpb24ucmVsYXRpb25SZWZlcmVuY2VcIiBbcGxhY2Vob2xkZXJdPVwiJ1JFRkVSRU5DRV9SRUxBVElPTicgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgICA8Y28taW5wdXQtdGV4dCBbKG1vZGVsKV09XCJ0cmFuc2FjdGlvbi5vd25SZWZlcmVuY2VcIiBbcGxhY2Vob2xkZXJdPVwiJ09XTl9SRUZFUkVOQ0UnIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LXRleHQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICA8L2NvLWZvcm0+XG5cbiAgICA8Y28tZGlhbG9nIFt2aXNpYmxlXT1cImFkZExvY2F0aW9uUG9wdXBcIj5cbiAgICAgIDxuZy1jb250YWluZXIgaGVhZGVyPnt7ICdORVdfTE9DQVRJT04nIHwgbG9jYWxpemUgfX08L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPGNvLWZvcm0gI2xvY2F0aW9uRm9ybSAodmFsaWRTdWJtaXQpPVwic2F2ZUxvY2F0aW9uKClcIj5cbiAgICAgICAgICA8Y2hlY2tvdXQtb3ZlcnZpZXctcmVsYXRpb24tYWRkcmVzc1xuICAgICAgICAgICAgbGFiZWw9XCJBRERSRVNTXCIgW2FkZHJlc3NdPVwibmV3QWRkcmVzc1wiXG4gICAgICAgICAgPjwvY2hlY2tvdXQtb3ZlcnZpZXctcmVsYXRpb24tYWRkcmVzcz5cbiAgICAgICAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRHYXA9XCIxMHB4XCIgZnhMYXlvdXRBbGlnbj1cImVuZFwiPlxuICAgICAgICAgICAgPGNvLWJ1dHRvbiBbbGFiZWxdPVwiJ0NBTkNFTCcgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJhZGRMb2NhdGlvblBvcHVwID0gZmFsc2U7XCI+PC9jby1idXR0b24+XG4gICAgICAgICAgICA8Y28tYnV0dG9uIFtsYWJlbF09XCInU0FWRScgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJzYXZlTmV3TG9jYXRpb24oKVwiPjwvY28tYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2NvLWZvcm0+XG4gICAgPC9jby1kaWFsb2c+XG5cbiAgICA8Y28tZGlhbG9nICNjaGFuZ2VMb2NhdGlvbkRpYWxvZ1xuICAgICAgICAgICAgICAgW3Zpc2libGVdPVwiY2hhbmdlTG9jYXRpb25Qb3B1cFwiXG4gICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJvbkNoYW5nZUxvY2F0aW9uQ2FuY2VsQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAob3ZlcmxheUNsaWNrKT1cIm9uQ2hhbmdlTG9jYXRpb25DYW5jZWxDbGljaygpXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyIGhlYWRlcj57eyAnQUREUkVTUycgfCBsb2NhbGl6ZSB9fTwvbmctY29udGFpbmVyPlxuICAgICAgPGNvLWZvcm0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNvbnRlbnRcIj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPGNvLWdyaWQgI2FkZHJlc3NHcmlkXG4gICAgICAgICAgICAgICAgICAgICBbZGF0YV09XCJhZGRyZXNzZXNcIlxuICAgICAgICAgICAgICAgICAgICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXG4gICAgICAgICAgICAgICAgICAgICBbcGFnaW5nRW5hYmxlZF09XCIndHJ1ZSdcIlxuICAgICAgICAgICAgICAgICAgICAgW21heE51bWJlck9mUm93c109XCInMjAnXCJcbiAgICAgICAgICAgICAgICAgICAgIChyb3dzU2VsZWN0ZWQpPVwiaGFuZGxlQWRkcmVzc1NlbGVjdGVkKCRldmVudClcIlxuICAgICAgICAgICAgPjwvY28tZ3JpZD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmbGV4LWNlbnRlclwiIGZ4TGF5b3V0R2FwPVwiMTBweFwiPlxuICAgICAgICAgIDxjby1idXR0b24gW2xhYmVsXT1cIidBRERSRVNTX0FERCcgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJvbkFkZExvY2F0aW9uT2tDbGljaygpXCI+PC9jby1idXR0b24+XG4gICAgICAgICAgPGNvLWJ1dHRvbiBbbGFiZWxdPVwiJ0NBTkNFTCcgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJvbkNoYW5nZUxvY2F0aW9uQ2FuY2VsQ2xpY2soKVwiPjwvY28tYnV0dG9uPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvY28tZm9ybT5cbiAgICA8L2NvLWRpYWxvZz5cbiAgYCxcbiAgc3R5bGVVcmxzOiBbXG4gICAgXCIuLy4uL2NoZWNrb3V0L2NoZWNrb3V0LmNvbXBvbmVudC5zY3NzXCIsXG4gICAgXCIuL2NoZWNrb3V0LW92ZXJ2aWV3LWRlbGl2ZXJ5LWVkaXQuY29tcG9uZW50LnNjc3NcIlxuICBdXG59KVxuZXhwb3J0IGNsYXNzIENoZWNrb3V0T3ZlcnZpZXdEZWxpdmVyeUVkaXRDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIEFmdGVyVmlld0luaXQge1xuICBwdWJsaWMgcmVhZG9ubHkgZGVsaXZlcnlBZGRyZXNzVHlwZTogQWRkcmVzc1R5cGUgPSBBZGRyZXNzVHlwZS5EZWxpdmVyeUFkZHJlc3M7XG4gIHB1YmxpYyByZWFkb25seSBiaWxsaW5nQWRkcmVzc1R5cGU6IEFkZHJlc3NUeXBlID0gQWRkcmVzc1R5cGUuQmlsbGluZ0FkZHJlc3M7XG5cbiAgQFZpZXdDaGlsZChcImRlbGl2ZXJ5Rm9ybVwiLCB7cmVhZDogRm9ybUNvbXBvbmVudH0pXG4gIHB1YmxpYyBkZWxpdmVyeUZvcm06IEZvcm1Db21wb25lbnQ7XG5cbiAgQFZpZXdDaGlsZChcImxvY2F0aW9uRm9ybVwiLCB7cmVhZDogRm9ybUNvbXBvbmVudH0pXG4gIHB1YmxpYyBsb2NhdGlvbkZvcm06IEZvcm1Db21wb25lbnQ7XG5cbiAgQFZpZXdDaGlsZChcImNoYW5nZUxvY2F0aW9uRGlhbG9nXCIpXG4gIHB1YmxpYyBjaGFuZ2VMb2NhdGlvbkRpYWxvZzogQ29EaWFsb2dDb21wb25lbnQ7XG5cbiAgQFZpZXdDaGlsZChcImFkZHJlc3NHcmlkXCIpXG4gIHB1YmxpYyBhZGRyZXNzR3JpZDogQ29HcmlkQ29tcG9uZW50PGFueT47XG5cbiAgQElucHV0KClcbiAgcHVibGljIHJlbGF0aW9uOiBSZWxhdGlvbkFueVR5cGU7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHRyYW5zYWN0aW9uOiBUcmFuc2FjdGlvbkluZm87XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyB2YWxpZFN1Ym1pdDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIEBPdXRwdXQoKVxuICBwdWJsaWMgaW52YWxpZFN1Ym1pdDogRXZlbnRFbWl0dGVyPHZvaWQ+ID0gbmV3IEV2ZW50RW1pdHRlcjx2b2lkPigpO1xuXG4gIHB1YmxpYyBkZWxpdmVyeU9wdGlvbkxpc3Q6IERlbGl2ZXJ5T3B0aW9uW10gPSBbXTtcbiAgcHVibGljIGRlbGl2ZXJ5T3B0aW9uczogRGVsaXZlcnlPcHRpb25bXSA9IFtdO1xuICBwdWJsaWMgZGVsaXZlcnlPcHRpb25GaWVsZHM6IFRleHRWYWx1ZUNvbnRhaW5lciA9IHsgdGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJjb2RlXCIgfTtcbiAgcHVibGljIGRlbGl2ZXJ5TWV0aG9kczogRGVsaXZlcnlNZXRob2RbXSA9IFtdO1xuICBwdWJsaWMgZGVsaXZlcnlNZXRob2RGaWVsZHM6IFRleHRWYWx1ZUNvbnRhaW5lciA9IHsgdGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJjb2RlXCIgfTtcbiAgcHVibGljIGFkZExvY2F0aW9uUG9wdXA6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGNoYW5nZUxvY2F0aW9uUG9wdXA6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIG5ld0FkZHJlc3M6IEFkZHJlc3M7XG4gIHB1YmxpYyBwcmVmZXJyZWREYXRlT3B0aW9uczogVGV4dFZhbHVlQ29udGFpbmVyW10gPSBbXG4gICAgICB7dGV4dDogXCJOT1RfQUZURVJcIiwgdmFsdWU6IFwiPlwiIH0sXG4gICAgICB7dGV4dDogXCJOT1RfQkVGT1JFXCIsIHZhbHVlOiBcIjxcIiB9LFxuICAgICAge3RleHQ6IFwiT05fREFURVwiLCB2YWx1ZTogXCI9XCIgfSxcbiAgICBdO1xuICBwdWJsaWMgcHJlZmVycmVkRGF0ZTogRGF0ZSA9IG5ldyBEYXRlKCk7XG4gIHB1YmxpYyBnZW5kZXI6IEdlbmRlclR5cGU7XG4gIHB1YmxpYyBtYXJrZXRpbmc6IE1hcmtldGluZ1tdID0gW107XG4gIHB1YmxpYyBtYXJrZXRpbmdGaWVsZHM6IE9iamVjdCA9IHsgdGV4dDogXCJkZXNjcmlwdGlvblwiLCB2YWx1ZTogXCJjb2RlXCIgfTtcbiAgcHVibGljIG1hcmtldGluZ0NvZGU6IHN0cmluZztcbiAgcHVibGljIGFzc2VtYmx5Q29zdHM6IG51bWJlcjtcbiAgcHVibGljIGRlbGl2ZXJ5Q29zdHM6IG51bWJlcjtcblxuICBwdWJsaWMgYWRkcmVzc2VzOiBBZGRyZXNzW10gPSBbXTtcbiAgcHVibGljIHNlbGVjdGVkQWRkcmVzczogQWRkcmVzcztcbiAgcHVibGljIGNvbHVtbnM6IGFueVtdID0gW107XG5cbiAgLy8gVE9ETzogRGV6ZSB2ZWxkZW4gbm9nIG9wbmVtZW4gaW4gVHJhbnNhY3Rpb24hIVxuICBwdWJsaWMgZGVsaXZlcnlEYXRlRmluYWw6IGJvb2xlYW4gPSBmYWxzZTtcbiAgcHVibGljIGFzc2VtYmx5RGF0ZTogRGF0ZSA9IG5ldyBEYXRlKCk7XG4gIHB1YmxpYyB0b3RhbEFzc2VtYmx5VGltZTogc3RyaW5nID0gXCJcIjtcbiAgcHVibGljIGRyb3BzaGlwbWVudDogYm9vbGVhbiA9IGZhbHNlO1xuXG4gIHByaXZhdGUgX2FkZHJlc3NUeXBlOiBBZGRyZXNzVHlwZTtcblxuICBwdWJsaWMgZ2V0IGJpbGxpbmdBZGRyZXNzKCk6IEFkZHJlc3Mge1xuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLmludm9pY2VBZGRyZXNzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmICh0aGlzLnJlbGF0aW9uICYmXG4gICAgICAgIHRoaXMucmVsYXRpb24uZmlyc3RCaWxsaW5nQWRkcmVzcyAmJlxuICAgICAgICB0aGlzLnJlbGF0aW9uLmZpcnN0QmlsbGluZ0FkZHJlc3MuaXNOb3RFbXB0eUFkZHJlc3MoKSkge1xuICAgICAgICB0aGlzLnRyYW5zYWN0aW9uLmludm9pY2VBZGRyZXNzID0gdGhpcy5yZWxhdGlvbi5maXJzdEJpbGxpbmdBZGRyZXNzO1xuICAgICAgICB0aGlzLl9zZXRDb3VudHJ5TmFtZVRvQWRkcmVzcyh0aGlzLnRyYW5zYWN0aW9uLmludm9pY2VBZGRyZXNzKS50aGVuKCk7XG4gICAgICB9XG4gICAgfVxuICAgIHJldHVybiB0aGlzLnRyYW5zYWN0aW9uLmludm9pY2VBZGRyZXNzO1xuICB9XG5cbiAgcHVibGljIGdldCBkZWxpdmVyeUFkZHJlc3MoKTogQWRkcmVzcyB7XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25BZGRyZXNzID09PSB1bmRlZmluZWQpIHtcbiAgICAgIGlmICh0aGlzLnJlbGF0aW9uICYmXG4gICAgICAgIHRoaXMucmVsYXRpb24uZmlyc3REZWxpdmVyeUFkZHJlc3MgJiZcbiAgICAgICAgdGhpcy5yZWxhdGlvbi5maXJzdERlbGl2ZXJ5QWRkcmVzcy5pc05vdEVtcHR5QWRkcmVzcygpKSB7XG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25BZGRyZXNzID0gdGhpcy5yZWxhdGlvbi5maXJzdERlbGl2ZXJ5QWRkcmVzcztcbiAgICAgICAgdGhpcy5fc2V0Q291bnRyeU5hbWVUb0FkZHJlc3ModGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkFkZHJlc3MpLnRoZW4oKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25BZGRyZXNzO1xuICB9XG5cbiAgcHVibGljIGdldCBkZWxpdmVyeURhdGUoKTogRGF0ZSB7XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uZGVsaXZlcnlEYXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uZGVsaXZlcnlEYXRlID0gbmV3IERhdGUoKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb24uZGVsaXZlcnlEYXRlO1xuICB9XG5cbiAgcHVibGljIHNldCBkZWxpdmVyeURhdGUodmFsdWU6IERhdGUpIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLmRlbGl2ZXJ5RGF0ZSA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIGdldCBwcmVmZXJyZWREZWxpdmVyeURhdGUoKTogRGF0ZSB7XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24ucHJlZmVycmVkRGVsaXZlcnlEYXRlID09PSB1bmRlZmluZWQpIHtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24ucHJlZmVycmVkRGVsaXZlcnlEYXRlID0gbmV3IERhdGUoKTtcbiAgICB9XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb24ucHJlZmVycmVkRGVsaXZlcnlEYXRlO1xuICB9XG5cbiAgcHVibGljIHNldCBwcmVmZXJyZWREZWxpdmVyeURhdGUodmFsdWU6IERhdGUpIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnByZWZlcnJlZERlbGl2ZXJ5RGF0ZSA9IHZhbHVlO1xuICB9XG5cbiAgcHVibGljIG5ld1JlbGF0aW9uQWRkcmVzcygpOiBBZGRyZXNzIHtcbiAgICBpZiAodGhpcy5yZWxhdGlvbikge1xuICAgICAgY29uc3QgYWRkcmVzczogQWRkcmVzcyA9IG5ldyBBZGRyZXNzKCk7XG4gICAgICBhZGRyZXNzLmFkZHJlc3NUeXBlID0gQWRkcmVzc1R5cGUuRGVsaXZlcnlBZGRyZXNzO1xuICAgICAgYWRkcmVzcy5zdGFydERhdGUgPSBuZXcgRGF0ZSgpO1xuICAgICAgYWRkcmVzcy5zZXF1ZW5jZSA9IHRoaXMucmVsYXRpb24uZ2V0TmV4dEFkZHJlc3NTZXF1ZW5jZSgpO1xuICAgICAgdGhpcy5yZWxhdGlvbi5hZGRyZXNzZXMucHVzaChhZGRyZXNzKTtcbiAgICAgIHJldHVybiBhZGRyZXNzO1xuICAgIH1cbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBuZ09uSW5pdCgpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbikge1xuICAgICAgaWYgKHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25BZGRyZXNzID09PSB1bmRlZmluZWQgJiYgIXRoaXMuZGVsaXZlcnlBZGRyZXNzKSB7XG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb24udHJhbnNhY3Rpb25BZGRyZXNzID0gdGhpcy5kZWxpdmVyeUFkZHJlc3M7XG4gICAgICB9XG4gICAgICBpZiAodGhpcy50cmFuc2FjdGlvbi5pbnZvaWNlQWRkcmVzcyA9PT0gdW5kZWZpbmVkICYmICF0aGlzLmJpbGxpbmdBZGRyZXNzKSB7XG4gICAgICAgICAgdGhpcy50cmFuc2FjdGlvbi5pbnZvaWNlQWRkcmVzcyA9IHRoaXMuYmlsbGluZ0FkZHJlc3M7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICB0aGlzLmRlbGl2ZXJ5Q29zdHMgPSB0aGlzLmNhbGN1bGF0ZURlbGl2ZXJ5Q29zdHMoKTtcbiAgICB0aGlzLmFzc2VtYmx5Q29zdHMgPSB0aGlzLmNhbGN1bGF0ZUFzc2VtYmx5Q29zdHMoKTtcbiAgICB0aGlzLmRlbGl2ZXJ5TWV0aG9kcyA9IGF3YWl0IHRoaXMuc2VydmljZS5nZXREZWxpdmVyeU1ldGhvZHMoKTtcbiAgICB0aGlzLmRlbGl2ZXJ5T3B0aW9uTGlzdCA9IGF3YWl0IHRoaXMuc2VydmljZS5nZXREZWxpdmVyeU9wdGlvbnMoKTtcbiAgICB0aGlzLm1hcmtldGluZyA9IGF3YWl0IHRoaXMuc2VydmljZS5nZXRNYXJrZXRpbmdDb2RlcygpO1xuICAgIGF3YWl0IHRoaXMub25EZWxpdmVyeU1ldGhvZENoYW5nZSh0aGlzLnRyYW5zYWN0aW9uLmRlbGl2ZXJ5TWV0aG9kKTtcbiAgfVxuXG4gIG5nQWZ0ZXJWaWV3SW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLmNkci5kZXRlY3RDaGFuZ2VzKCk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcihcbiAgICAgIHByaXZhdGUgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICAgIHByaXZhdGUgX2RpY3Rpb25hcnlTZXJ2aWNlOiBEaWN0aW9uYXJ5U2VydmljZSxcbiAgICAgIHB1YmxpYyBzZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2UsXG4gICkge1xuICAgIHRoaXMuY29sdW1ucy5wdXNoKFxuICAgICAge2ZpZWxkOiBcInN0cmVldE5hbWVcIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KFwiU1RSRUVUXCIpfSxcbiAgICAgIHtmaWVsZDogXCJob3VzZU5vXCIsIGhlYWRlclRleHQ6IHRoaXMuX2RpY3Rpb25hcnlTZXJ2aWNlLmdldChcIkhPVVNFX05PXCIpfSxcbiAgICAgIHtmaWVsZDogXCJob3VzZU5vQWRkaXRpb25cIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KFwiSE9VU0VfTk9fQURESVRJT05cIil9LFxuICAgICAge2ZpZWxkOiBcInBvc3RhbENvZGVcIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KFwiUE9TVEFMX0NPREVcIiksIGFsbG93RmlsdGVyaW5nOiBmYWxzZX0sXG4gICAgICB7ZmllbGQ6IFwiY2l0eVwiLCBoZWFkZXJUZXh0OiB0aGlzLl9kaWN0aW9uYXJ5U2VydmljZS5nZXQoXCJDSVRZXCIpfSxcbiAgICApO1xuICB9XG5cbiAgcHVibGljIHN1Ym1pdCgpOiBib29sZWFuIHtcbiAgICByZXR1cm4gdGhpcy5kZWxpdmVyeUZvcm0uc3VibWl0KCk7XG4gIH1cblxuICBwdWJsaWMgYXN5bmMgb25EZWxpdmVyeU1ldGhvZENoYW5nZShkZWxpdmVyeU1ldGhvZElkOiBzdHJpbmcpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBjb25zdCBkZWxpdmVyeU1ldGhvZDogRGVsaXZlcnlNZXRob2RbXSA9IHRoaXMuc2VsZWN0RGVsaXZlcnlNZXRob2RCeUlkKGRlbGl2ZXJ5TWV0aG9kSWQpO1xuICAgIHRoaXMudHJhbnNhY3Rpb24uZGVsaXZlcnlNZXRob2QgPSBkZWxpdmVyeU1ldGhvZElkO1xuICAgIGlmIChkZWxpdmVyeU1ldGhvZC5sZW5ndGgpIHtcbiAgICAgIHRoaXMuZGVsaXZlcnlPcHRpb25zID0gdGhpcy5zZWxlY3REZWxpdmVyeU9wdGlvbnNCeURlbGl2ZXJ5TWV0aG9kKGRlbGl2ZXJ5TWV0aG9kWzBdKTtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uZGVsaXZlcnlPcHRpb25zID0gW107XG4gICAgICBpZiAodGhpcy5kZWxpdmVyeU9wdGlvbnMubGVuZ3RoKSB7XG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb24uZGVsaXZlcnlPcHRpb25zLnB1c2godGhpcy5kZWxpdmVyeU9wdGlvbnNbMF0uY29kZSk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHVibGljIHNlbGVjdERlbGl2ZXJ5T3B0aW9uc0J5RGVsaXZlcnlNZXRob2QoZGVsaXZlcnlNZXRob2Q6IERlbGl2ZXJ5TWV0aG9kKTogRGVsaXZlcnlPcHRpb25bXSB7XG4gICAgcmV0dXJuIHRoaXMuZGVsaXZlcnlPcHRpb25MaXN0LmZpbHRlcihkZWxpdmVyeU9wdGlvbiA9PiBkZWxpdmVyeU1ldGhvZC5kZWxpdmVyeU9wdGlvbnMuaW5kZXhPZihkZWxpdmVyeU9wdGlvbi5jb2RlKSAhPT0gLTEpO1xuICB9XG5cbiAgcHVibGljIHNlbGVjdERlbGl2ZXJ5TWV0aG9kQnlJZChkZWxpdmVyeU1ldGhvZElkOiBzdHJpbmcpOiBEZWxpdmVyeU1ldGhvZFtdIHtcbiAgICByZXR1cm4gdGhpcy5kZWxpdmVyeU1ldGhvZHMuZmlsdGVyKGRlbGl2ZXJ5ID0+IGRlbGl2ZXJ5LmNvZGUgPT09IGRlbGl2ZXJ5TWV0aG9kSWQpO1xuICB9XG5cbiAgcHVibGljIGNoYW5nZUFkZHJlc3MoYWRkcmVzc1R5cGU6IEFkZHJlc3NUeXBlKTogdm9pZCB7XG4gICAgdGhpcy5fYWRkcmVzc1R5cGUgPSBhZGRyZXNzVHlwZTtcbiAgICB0aGlzLmFkZHJlc3NlcyA9IHRoaXMucmVsYXRpb24uYWRkcmVzc2VzO1xuICAgIHRoaXMuY2hhbmdlTG9jYXRpb25Qb3B1cCA9IHRydWU7XG4gIH1cblxuICBwdWJsaWMgc2F2ZU5ld0xvY2F0aW9uKCk6IHZvaWQge1xuICAgICB0aGlzLmxvY2F0aW9uRm9ybS5zdWJtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBzYXZlTG9jYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy5hZGRMb2NhdGlvbigpO1xuICAgIHRoaXMuY2hhbmdlTG9jYXRpb25Qb3B1cCA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGFkZExvY2F0aW9uKCk6IHZvaWQge1xuICAgIHRoaXMudXBkYXRlQWRkcmVzcyh0aGlzLm5ld0FkZHJlc3MpLnRoZW4oKTtcbiAgICB0aGlzLnJlbGF0aW9uLmFkZHJlc3Nlcy5wdXNoKHRoaXMubmV3QWRkcmVzcyk7XG4gICAgdGhpcy5zZXJ2aWNlLnNhdmVSZWxhdGlvbigpLnRoZW4oKTtcbiAgICB0aGlzLmFkZExvY2F0aW9uUG9wdXAgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyB1cGRhdGVBZGRyZXNzKGFkZHJlc3M6IEFkZHJlc3MpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAodGhpcy5fYWRkcmVzc1R5cGUgPT09IEFkZHJlc3NUeXBlLkRlbGl2ZXJ5QWRkcmVzcykge1xuICAgICAgdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkFkZHJlc3MgPSBhZGRyZXNzO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLmludm9pY2VBZGRyZXNzID0gYWRkcmVzcztcbiAgICB9XG4gICAgYXdhaXQgdGhpcy5fc2V0Q291bnRyeU5hbWVUb0FkZHJlc3MoYWRkcmVzcyk7XG4gIH1cblxuICBwdWJsaWMgaXNEZWxpdmVyeU9wdGlvbkNoZWNrZWQoZGVsaXZlcnlPcHRpb25JdGVtOiBEZWxpdmVyeU9wdGlvbik6IGJvb2xlYW4ge1xuICAgIHJldHVybiAodGhpcy50cmFuc2FjdGlvbi5kZWxpdmVyeU9wdGlvbnMuaW5kZXhPZihkZWxpdmVyeU9wdGlvbkl0ZW0uY29kZSwgMCkgPT09IDApO1xuICB9XG5cbiAgcHVibGljIGNoYW5nZVByZWZlcnJlZERlbGl2ZXJ5RGF0ZTIocHJlZmVycmVkRGF0ZU9wdGlvbjogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5wcmVmZXJyZWREZWxpdmVyeURhdGUyID0gcHJlZmVycmVkRGF0ZU9wdGlvbjtcbiAgfVxuXG4gIHB1YmxpYyBvbk1hcmtldGluZ0NvZGVDaGFuZ2UobWFya2V0aW5nQ29kZTogc3RyaW5nKTogdm9pZCB7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5tYXJrZXRpbmdDb2RlID0gbWFya2V0aW5nQ29kZTtcbiAgfVxuXG4gIHB1YmxpYyBvbkNoYW5nZUxvY2F0aW9uQ2FuY2VsQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5jaGFuZ2VMb2NhdGlvblBvcHVwID0gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgb25BZGRMb2NhdGlvbk9rQ2xpY2soKTogdm9pZCB7XG4gICAgdGhpcy5fYWRkQWRkcmVzcyh0aGlzLl9hZGRyZXNzVHlwZSk7XG4gICAgdGhpcy5hZGRMb2NhdGlvblBvcHVwID0gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBoYW5kbGVBZGRyZXNzU2VsZWN0ZWQocm93czogYW55KTogdm9pZCB7XG4gICAgdGhpcy5zZWxlY3RlZEFkZHJlc3MgPSAocm93cy5maW5kKHggPT4geCAhPT0gdW5kZWZpbmVkKSk7XG4gICAgdGhpcy51cGRhdGVBZGRyZXNzKHRoaXMuc2VsZWN0ZWRBZGRyZXNzKTtcbiAgICB0aGlzLmNoYW5nZUxvY2F0aW9uUG9wdXAgPSBmYWxzZTtcbiAgfVxuXG4gIHByaXZhdGUgY2FsY3VsYXRlRGVsaXZlcnlDb3N0cygpOiBudW1iZXIge1xuICAgIHJldHVybiAwO1xuICB9XG5cbiAgcHJpdmF0ZSBjYWxjdWxhdGVBc3NlbWJseUNvc3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICBwcml2YXRlIF9hZGRBZGRyZXNzKGFkZHJlc3NUeXBlOiBBZGRyZXNzVHlwZSk6IHZvaWQge1xuICAgIHRoaXMubmV3QWRkcmVzcyA9IG5ldyBBZGRyZXNzKCk7XG4gICAgdGhpcy5uZXdBZGRyZXNzLmFkZHJlc3NUeXBlID0gYWRkcmVzc1R5cGU7XG4gICAgdGhpcy5uZXdBZGRyZXNzLnN0YXJ0RGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgdGhpcy5uZXdBZGRyZXNzLnNlcXVlbmNlID0gdGhpcy5yZWxhdGlvbi5nZXROZXh0QWRkcmVzc1NlcXVlbmNlKCk7XG4gIH1cblxuICBwcml2YXRlIGFzeW5jIF9zZXRDb3VudHJ5TmFtZVRvQWRkcmVzcyhhZGRyZXNzOiBBZGRyZXNzKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKGFkZHJlc3MuY291bnRyeUlkICYmICFhZGRyZXNzLmNvdW50cnlOYW1lKSB7XG4gICAgICBjb25zdCBjb3VudHJ5OiBDb3VudHJ5ID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldENvdW50cnkoYWRkcmVzcy5jb3VudHJ5SWQpO1xuICAgICAgYWRkcmVzcy5jb3VudHJ5TmFtZSA9IGNvdW50cnkuZGVzY3JpcHRpb247XG4gICAgfVxuICB9XG59XG4iXX0=
|
|
420
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hlY2tvdXQtb3ZlcnZpZXctZGVsaXZlcnktZWRpdC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudC9jaGVja291dC9jaGVja291dC1vdmVydmlldy1kZWxpdmVyeS1lZGl0L2NoZWNrb3V0LW92ZXJ2aWV3LWRlbGl2ZXJ5LWVkaXQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxPQUFPLEVBQWdCLGlCQUFpQixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQVUsS0FBSyxFQUFVLE1BQU0sRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDbEksT0FBTyxFQUFxQyxhQUFhLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUUvRixPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0saURBQWlELENBQUM7QUFHeEUsT0FBTyxFQUFDLFdBQVcsRUFBQyxNQUFNLHVEQUF1RCxDQUFDO0FBR2xGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBR3hFLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLHFDQUFxQyxDQUFDO0FBNE10RSxNQUFNLE9BQU8scUNBQXFDO0lBNEloRCxZQUNZLEdBQXNCLEVBQ3RCLGtCQUFxQyxFQUN0QyxPQUEyQjtRQUYxQixRQUFHLEdBQUgsR0FBRyxDQUFtQjtRQUN0Qix1QkFBa0IsR0FBbEIsa0JBQWtCLENBQW1CO1FBQ3RDLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBOUl0Qix3QkFBbUIsR0FBZ0IsV0FBVyxDQUFDLGVBQWUsQ0FBQztRQUMvRCx1QkFBa0IsR0FBZ0IsV0FBVyxDQUFDLGNBQWMsQ0FBQztRQXFCdEUsZ0JBQVcsR0FBdUIsSUFBSSxZQUFZLEVBQVEsQ0FBQztRQUczRCxrQkFBYSxHQUF1QixJQUFJLFlBQVksRUFBUSxDQUFDO1FBRTdELHVCQUFrQixHQUFxQixFQUFFLENBQUM7UUFDMUMs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LEVBQUUsQ0FBQztRQUN2QyxJQUFJLENBQUMsVUFBVSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsUUFBUSxDQUFDLHNCQUFzQixFQUFFLENBQUM7SUFDcEUsQ0FBQztJQUVhLHdCQUF3QixDQUFDLE9BQWdCOztZQUNyRCxJQUFJLE9BQU8sQ0FBQyxTQUFTLElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFO2dCQUM3QyxNQUFNLE9BQU8sR0FBWSxNQUFNLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQztnQkFDMUUsT0FBTyxDQUFDLFdBQVcsR0FBRyxPQUFPLENBQUMsV0FBVyxDQUFDO2FBQzNDO1FBQ0gsQ0FBQztLQUFBOzs7WUF6Y0YsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxpQ0FBaUM7Z0JBQzNDLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQWlNVDs7YUFLRjs7O1lBdk5zQixpQkFBaUI7WUFZaEMsaUJBQWlCO1lBSGpCLGtCQUFrQjs7OzJCQW1OdkIsU0FBUyxTQUFDLGNBQWMsRUFBRSxFQUFDLElBQUksRUFBRSxhQUFhLEVBQUM7MkJBRy9DLFNBQVMsU0FBQyxjQUFjLEVBQUUsRUFBQyxJQUFJLEVBQUUsYUFBYSxFQUFDO21DQUcvQyxTQUFTLFNBQUMsc0JBQXNCOzBCQUdoQyxTQUFTLFNBQUMsYUFBYTt1QkFHdkIsS0FBSzswQkFHTCxLQUFLOzBCQUdMLE1BQU07NEJBR04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7QWZ0ZXJWaWV3SW5pdCwgQ2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudCwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBPbkluaXQsIE91dHB1dCwgVmlld0NoaWxkfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtDb0RpYWxvZ0NvbXBvbmVudCwgQ29HcmlkQ29tcG9uZW50LCBGb3JtQ29tcG9uZW50fSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xuaW1wb3J0IHtSZWxhdGlvbkFueVR5cGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvcmVsYXRpb24tYW55LXR5cGVcIjtcbmltcG9ydCB7QWRkcmVzc30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9hZGRyZXNzLmJvXCI7XG5pbXBvcnQge0dlbmRlclR5cGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS9nZW5kZXItdHlwZS5lbnVtXCI7XG5pbXBvcnQge01hcmtldGluZ30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9tYXJrZXRpbmcuYm9cIjtcbmltcG9ydCB7QWRkcmVzc1R5cGV9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvZW51bS9hZGRyZXNzLXR5cGUuZW51bVwiO1xuaW1wb3J0IHtEZWxpdmVyeU1ldGhvZH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9kZWxpdmVyeS1tZXRob2QuYm9cIjtcbmltcG9ydCB7RGVsaXZlcnlPcHRpb259IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvZGVsaXZlcnktb3B0aW9uLmJvXCI7XG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xuaW1wb3J0IHtUZXh0VmFsdWVDb250YWluZXJ9IGZyb20gXCIuLi8uLi8uLi9tb2RlbC90ZXh0LXZhbHVlLWNvbnRhaW5lclwiO1xuaW1wb3J0IHtUcmFuc2FjdGlvbkluZm99IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24taW5mby5ib1wiO1xuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlXCI7XG5pbXBvcnQge0NvdW50cnl9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvY291bnRyeS5ib1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6IFwiY2hlY2tvdXQtb3ZlcnZpZXctZGVsaXZlcnktZWRpdFwiLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxjby1mb3JtICNkZWxpdmVyeUZvcm0gKHZhbGlkU3VibWl0KT1cInZhbGlkU3VibWl0LmVtaXQoKVwiIChpbnZhbGlkU3VibWl0KT1cImludmFsaWRTdWJtaXQuZW1pdCgpXCI+XG4gICAgICA8ZGl2PlxuICAgICAgICA8ZGl2PlxuICAgICAgICAgIDxsYWJlbCBbdGV4dENvbnRlbnRdPVwiJ0RFTElWRVJZJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja291dC1sYWJlbC1oMlwiXG4gICAgICAgICAgPjwvbGFiZWw+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtcm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidERUxJVkVSWV9BRERSRVNTJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNoZWNrb3V0LWxhYmVsLWgzXCJcbiAgICAgICAgICAgID48L2xhYmVsPlxuICAgICAgICAgICAgPGNoZWNrb3V0LW92ZXJ2aWV3LWRlbGl2ZXJ5LWFkZHJlc3MgW2FkZHJlc3NdPVwiZGVsaXZlcnlBZGRyZXNzXCI+PC9jaGVja291dC1vdmVydmlldy1kZWxpdmVyeS1hZGRyZXNzPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cImNvbnRhaW5lci1idXR0b24tY2hhbmdlLWFkZHJlc3NcIj5cbiAgICAgICAgICAgICAgPGNvLWJ1dHRvbiBbbGFiZWxdPVwiJ0RFTElWRVJZX0FERFJFU1NfQ0hBTkdFJyB8IGxvY2FsaXplXCIgKGNsaWNrKT1cImNoYW5nZUFkZHJlc3MoZGVsaXZlcnlBZGRyZXNzVHlwZSlcIj48L2NvLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICAgICAgPGxhYmVsIFt0ZXh0Q29udGVudF09XCInSU5WT0lDRV9BRERSRVNTJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICBjbGFzcz1cImNoZWNrb3V0LWxhYmVsLWgzXCJcbiAgICAgICAgICAgID48L2xhYmVsPlxuICAgICAgICAgICAgPGNoZWNrb3V0LW92ZXJ2aWV3LWRlbGl2ZXJ5LWFkZHJlc3MgW2FkZHJlc3NdPVwiYmlsbGluZ0FkZHJlc3NcIj48L2NoZWNrb3V0LW92ZXJ2aWV3LWRlbGl2ZXJ5LWFkZHJlc3M+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29udGFpbmVyLWJ1dHRvbi1jaGFuZ2UtYWRkcmVzc1wiPlxuICAgICAgICAgICAgICA8Y28tYnV0dG9uIFtsYWJlbF09XCInSU5WT0lDRV9BRERSRVNTX0NIQU5HRScgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJjaGFuZ2VBZGRyZXNzKGJpbGxpbmdBZGRyZXNzVHlwZSlcIj48L2NvLWJ1dHRvbj5cbiAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2PlxuICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidERUxJVkVSWV9NT01FTlQnIHwgbG9jYWxpemVcIlxuICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja291dC1sYWJlbC1oM1wiXG4gICAgICAgID48L2xhYmVsPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtcm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgPGNvLWlucHV0LWRhdGUgW3BsYWNlaG9sZGVyXT1cIidERUxJVkVSWV9EQVRFJyB8IGxvY2FsaXplIFwiIFsobW9kZWwpXT1cImRlbGl2ZXJ5RGF0ZVwiPjwvY28taW5wdXQtZGF0ZT5cbiAgICAgICAgICA8Y28taW5wdXQtY2hlY2tib3ggW2xhYmVsXT1cIidQQVJUX0RFTElWRVJJRVMnIHwgbG9jYWxpemVcIiBbKG1vZGVsKV09XCJ0cmFuc2FjdGlvbi5hbGxvd1BhcnRpYWxEZWxpdmVyeVwiPjwvY28taW5wdXQtY2hlY2tib3g+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICAgIDxjby1pbnB1dC1kYXRlIFtwbGFjZWhvbGRlcl09XCInUFJFRkVSUkVEX0RBVEUnIHwgbG9jYWxpemUgXCIgWyhtb2RlbCldPVwicHJlZmVycmVkRGF0ZVwiPjwvY28taW5wdXQtZGF0ZT5cbiAgICAgICAgICA8bmctY29udGFpbmVyICpuZ0Zvcj1cImxldCBwcmVmZXJyZWREYXRlT3B0aW9uIG9mIHByZWZlcnJlZERhdGVPcHRpb25zXCI+XG4gICAgICAgICAgICA8Y28taW5wdXQtcmFkaW8tYnV0dG9uIFtuYW1lXT1cIidwcmVmZXJlZERlbGl2ZXJ5RGF0ZTInXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW2xhYmVsXT1cInByZWZlcnJlZERhdGVPcHRpb24udGV4dCB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cInByZWZlcnJlZERhdGVPcHRpb24udmFsdWVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBbY2hlY2tlZF09XCJ0cmFuc2FjdGlvbi5wcmVmZXJyZWREZWxpdmVyeURhdGUyID09PSBwcmVmZXJyZWREYXRlT3B0aW9uLnZhbHVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKG1vZGVsQ2hhbmdlKT1cImNoYW5nZVByZWZlcnJlZERlbGl2ZXJ5RGF0ZTIocHJlZmVycmVkRGF0ZU9wdGlvbi52YWx1ZSlcIlxuICAgICAgICAgICAgPjwvY28taW5wdXQtcmFkaW8tYnV0dG9uPlxuICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LXJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICAgIDxjby1pbnB1dC1jb21iby1ib3ggWyhtb2RlbCldPVwidHJhbnNhY3Rpb24uZGVsaXZlcnlNZXRob2RcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzb3VyY2VdPVwiZGVsaXZlcnlNZXRob2RzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbZmllbGRzXT1cImRlbGl2ZXJ5TWV0aG9kRmllbGRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcGxhY2Vob2xkZXJdPVwiJ0RFTElWRVJZX01FVEhPRDInIHwgbG9jYWxpemVcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAobW9kZWxDaGFuZ2UpPVwib25EZWxpdmVyeU1ldGhvZENoYW5nZSgkZXZlbnQpXCJcbiAgICAgICAgICAgID48L2NvLWlucHV0LWNvbWJvLWJveD5cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdj5cbiAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidERUxJVkVSWV9PUFRJT05TJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja291dC1sYWJlbC1oM1wiXG4gICAgICAgICAgPjwvbGFiZWw+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtZmxleC1yb3dcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtZmxleC1jb2x1bW5cIj5cbiAgICAgICAgICA8Y28tbXVsdGktc2VsZWN0LWxpc3RcbiAgICAgICAgICAgIFtwbGFjZUhvbGRlcl09XCInREVMSVZFUllfT1BUSU9OUycgfCBsb2NhbGl6ZVwiXG4gICAgICAgICAgICBbY29sbGVjdGlvbl09XCJkZWxpdmVyeU9wdGlvbnNcIlxuICAgICAgICAgICAgW2ZpZWxkc109XCJkZWxpdmVyeU9wdGlvbkZpZWxkc1wiXG4gICAgICAgICAgICBbKG1vZGVsKV09XCJ0cmFuc2FjdGlvbi5kZWxpdmVyeU9wdGlvbnNcIlxuICAgICAgICAgICAgW3Nob3dDaGVja2JveF09XCJ0cnVlXCJcbiAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgICA+PC9jby1tdWx0aS1zZWxlY3QtbGlzdD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiXCI+XG4gICAgICAgIDxsYWJlbCBbdGV4dENvbnRlbnRdPVwiJ1JFTUFSS1MnIHwgbG9jYWxpemVcIlxuICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja291dC1sYWJlbC1oM1wiXG4gICAgICAgID48L2xhYmVsPlxuICAgICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtZmxleC1yb3dcIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtZmxleC1jb2x1bW5cIj5cbiAgICAgICAgICAgIDxjby1pbnB1dC10ZXh0IFsobW9kZWwpXT1cInRyYW5zYWN0aW9uLnJlbWFya1wiIFtwbGFjZWhvbGRlcl09XCInUkVNQVJLUycgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICA8Y28taW5wdXQtY2hlY2tib3ggW2xhYmVsXT1cIidERUxJVkVSWV9EQVRFX0ZJTkFMJyB8IGxvY2FsaXplXCIgWyhtb2RlbCldPVwiZGVsaXZlcnlEYXRlRmluYWxcIj48L2NvLWlucHV0LWNoZWNrYm94PlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICA8Y28taW5wdXQtZGF0ZSBbcGxhY2Vob2xkZXJdPVwiJ0FTU0VNQkxZX0RBVEUnIHwgbG9jYWxpemUgXCIgWyhtb2RlbCldPVwiYXNzZW1ibHlEYXRlXCI+PC9jby1pbnB1dC1kYXRlPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICA8Y28taW5wdXQtdGV4dCBbcGxhY2Vob2xkZXJdPVwiJ1RPVEFMX0FTU0VNQkxZX1RJTUUnIHwgbG9jYWxpemUgXCIgWyhtb2RlbCldPVwidG90YWxBc3NlbWJseVRpbWVcIj48L2NvLWlucHV0LXRleHQ+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtY29sdW1uXCI+XG4gICAgICAgIDxjby1pbnB1dC1jaGVja2JveCBbbGFiZWxdPVwiJ0RST1BTSElQTUVOVCcgfCBsb2NhbGl6ZVwiIFsobW9kZWwpXT1cImRyb3BzaGlwbWVudFwiPjwvY28taW5wdXQtY2hlY2tib3g+XG4gICAgICA8L2Rpdj5cblxuICAgICAgPGRpdiBjbGFzcz1cImRlZmF1bHQtZmxleC1yb3dcIj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidERUxJVkVSWV9DT1NUUycgfCBsb2NhbGl6ZVwiXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tvdXQtbGFiZWwtaDNcIlxuICAgICAgICAgID48L2xhYmVsPlxuICAgICAgICAgIDxkaXY+e3sgZGVsaXZlcnlDb3N0cyB9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdj5cbiAgICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidBU1NFTUJMWV9DT1NUUycgfCBsb2NhbGl6ZVwiXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiY2hlY2tvdXQtbGFiZWwtaDNcIlxuICAgICAgICAgID48L2xhYmVsPlxuICAgICAgICAgIDxkaXY+e3sgYXNzZW1ibHlDb3N0cyB9fTwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2PlxuICAgICAgICA8bGFiZWwgW3RleHRDb250ZW50XT1cIidNQVJLRVRJTkcnIHwgbG9jYWxpemVcIlxuICAgICAgICAgICAgICAgY2xhc3M9XCJjaGVja291dC1sYWJlbC1oM1wiXG4gICAgICAgID48L2xhYmVsPlxuICAgICAgPC9kaXY+XG5cbiAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtcm93XCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgPGNvLWlucHV0LWNvbWJvLWJveCBbKG1vZGVsKV09XCJ0cmFuc2FjdGlvbi5tYXJrZXRpbmdDb2RlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtzb3VyY2VdPVwibWFya2V0aW5nXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtmaWVsZHNdPVwibWFya2V0aW5nRmllbGRzXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtwbGFjZWhvbGRlcl09XCInTUFSS0VUSU5HJyB8IGxvY2FsaXplXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtyZXF1aXJlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChtb2RlbENoYW5nZSk9XCJvbk1hcmtldGluZ0NvZGVDaGFuZ2UoJGV2ZW50KVwiXG4gICAgICAgICAgPjwvY28taW5wdXQtY29tYm8tYm94PlxuICAgICAgICA8L2Rpdj5cbiAgICAgIDwvZGl2PlxuXG4gICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LXJvd1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiZGVmYXVsdC1mbGV4LWNvbHVtblwiPlxuICAgICAgICAgICAgPGNvLWlucHV0LXRleHQgWyhtb2RlbCldPVwidHJhbnNhY3Rpb24ucmVsYXRpb25SZWZlcmVuY2VcIiBbcGxhY2Vob2xkZXJdPVwiJ1JFRkVSRU5DRV9SRUxBVElPTicgfCBsb2NhbGl6ZVwiPjwvY28taW5wdXQtdGV4dD5cbiAgICAgICAgPC9kaXY+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJkZWZhdWx0LWZsZXgtY29sdW1uXCI+XG4gICAgICAgICAgICA8Y28taW5wdXQtdGV4dCBbKG1vZGVsKV09XCJ0cmFuc2FjdGlvbi5vd25SZWZlcmVuY2VcIiBbcGxhY2Vob2xkZXJdPVwiJ09XTl9SRUZFUkVOQ0UnIHwgbG9jYWxpemVcIj48L2NvLWlucHV0LXRleHQ+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9kaXY+XG5cbiAgICA8L2NvLWZvcm0+XG5cbiAgICA8Y28tZGlhbG9nIFt2aXNpYmxlXT1cImFkZExvY2F0aW9uUG9wdXBcIj5cbiAgICAgIDxuZy1jb250YWluZXIgaGVhZGVyPnt7ICdORVdfTE9DQVRJT04nIHwgbG9jYWxpemUgfX08L25nLWNvbnRhaW5lcj5cbiAgICAgICAgPGNvLWZvcm0gI2xvY2F0aW9uRm9ybSAodmFsaWRTdWJtaXQpPVwic2F2ZUxvY2F0aW9uKClcIj5cbiAgICAgICAgICA8Y2hlY2tvdXQtb3ZlcnZpZXctcmVsYXRpb24tYWRkcmVzc1xuICAgICAgICAgICAgbGFiZWw9XCJBRERSRVNTXCIgW2FkZHJlc3NdPVwibmV3QWRkcmVzc1wiXG4gICAgICAgICAgPjwvY2hlY2tvdXQtb3ZlcnZpZXctcmVsYXRpb24tYWRkcmVzcz5cbiAgICAgICAgICA8ZGl2IGZ4TGF5b3V0PVwicm93XCIgZnhMYXlvdXRHYXA9XCIxMHB4XCIgZnhMYXlvdXRBbGlnbj1cImVuZFwiPlxuICAgICAgICAgICAgPGNvLWJ1dHRvbiBbbGFiZWxdPVwiJ0NBTkNFTCcgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJhZGRMb2NhdGlvblBvcHVwID0gZmFsc2U7XCI+PC9jby1idXR0b24+XG4gICAgICAgICAgICA8Y28tYnV0dG9uIFtsYWJlbF09XCInU0FWRScgfCBsb2NhbGl6ZVwiIChjbGljayk9XCJzYXZlTmV3TG9jYXRpb24oKVwiPjwvY28tYnV0dG9uPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2NvLWZvcm0+XG4gICAgPC9jby1kaWFsb2c+XG5cbiAgICA8Y28tZGlhbG9nICNjaGFuZ2VMb2NhdGlvbkRpYWxvZ1xuICAgICAgICAgICAgICAgW3Zpc2libGVdPVwiY2hhbmdlTG9jYXRpb25Qb3B1cFwiXG4gICAgICAgICAgICAgICAoY2xvc2VDbGljayk9XCJvbkNoYW5nZUxvY2F0aW9uQ2FuY2VsQ2xpY2soKVwiXG4gICAgICAgICAgICAgICAob3ZlcmxheUNsaWNrKT1cIm9uQ2hhbmdlTG9jYXRpb25DYW5jZWxDbGljaygpXCJcbiAgICA+XG4gICAgICA8bmctY29udGFpbmVyIGhlYWRlcj57eyAnQUREUkVTUycgfCBsb2NhbGl6ZSB9fTwvbmctY29udGFpbmVyPlxuICAgICAgPGNvLWZvcm0+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmb3JtLWNvbnRlbnRcIj5cbiAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgPGNvLWdyaWQgI2FkZHJlc3NHcmlkXG4gICAgICAgICAgICAgICAgICAgICBbZGF0YV09XCJhZGRyZXNzZXNcIlxuICAgICAgICAgICAgICAgICAgICAgW2NvbHVtbnNdPVwiY29sdW1uc1wiXG4gICAgICAgICAgICAgICAgICAgICBbcGFnaW5nRW5hYmxlZF09XCJ0cnVlXCJcbiAgICAgICAgICAgICAgICAgICAgIFttYXhOdW1iZXJPZlJvd3NdPVwiMjBcIlxuICAgICAgICAgICAgICAgICAgICAgKHJvd3NTZWxlY3RlZCk9XCJoYW5kbGVBZGRyZXNzU2VsZWN0ZWQoJGV2ZW50KVwiXG4gICAgICAgICAgICA+PC9jby1ncmlkPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImZsZXgtY2VudGVyXCIgZnhMYXlvdXRHYXA9XCIxMHB4XCI+XG4gICAgICAgICAgPGNvLWJ1dHRvbiBbbGFiZWxdPVwiJ0FERFJFU1NfQUREJyB8IGxvY2FsaXplXCIgKGNsaWNrKT1cIm9uQWRkTG9jYXRpb25Pa0NsaWNrKClcIj48L2NvLWJ1dHRvbj5cbiAgICAgICAgICA8Y28tYnV0dG9uIFtsYWJlbF09XCInQ0FOQ0VMJyB8IGxvY2FsaXplXCIgKGNsaWNrKT1cIm9uQ2hhbmdlTG9jYXRpb25DYW5jZWxDbGljaygpXCI+PC9jby1idXR0b24+XG4gICAgICAgIDwvZGl2PlxuICAgICAgPC9jby1mb3JtPlxuICAgIDwvY28tZGlhbG9nPlxuICBgLFxuICBzdHlsZVVybHM6IFtcbiAgICBcIi4vLi4vY2hlY2tvdXQvY2hlY2tvdXQuY29tcG9uZW50LnNjc3NcIixcbiAgICBcIi4vY2hlY2tvdXQtb3ZlcnZpZXctZGVsaXZlcnktZWRpdC5jb21wb25lbnQuc2Nzc1wiXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgQ2hlY2tvdXRPdmVydmlld0RlbGl2ZXJ5RWRpdENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCB7XG4gIHB1YmxpYyByZWFkb25seSBkZWxpdmVyeUFkZHJlc3NUeXBlOiBBZGRyZXNzVHlwZSA9IEFkZHJlc3NUeXBlLkRlbGl2ZXJ5QWRkcmVzcztcbiAgcHVibGljIHJlYWRvbmx5IGJpbGxpbmdBZGRyZXNzVHlwZTogQWRkcmVzc1R5cGUgPSBBZGRyZXNzVHlwZS5CaWxsaW5nQWRkcmVzcztcblxuICBAVmlld0NoaWxkKFwiZGVsaXZlcnlGb3JtXCIsIHtyZWFkOiBGb3JtQ29tcG9uZW50fSlcbiAgcHVibGljIGRlbGl2ZXJ5Rm9ybTogRm9ybUNvbXBvbmVudDtcblxuICBAVmlld0NoaWxkKFwibG9jYXRpb25Gb3JtXCIsIHtyZWFkOiBGb3JtQ29tcG9uZW50fSlcbiAgcHVibGljIGxvY2F0aW9uRm9ybTogRm9ybUNvbXBvbmVudDtcblxuICBAVmlld0NoaWxkKFwiY2hhbmdlTG9jYXRpb25EaWFsb2dcIilcbiAgcHVibGljIGNoYW5nZUxvY2F0aW9uRGlhbG9nOiBDb0RpYWxvZ0NvbXBvbmVudDtcblxuICBAVmlld0NoaWxkKFwiYWRkcmVzc0dyaWRcIilcbiAgcHVibGljIGFkZHJlc3NHcmlkOiBDb0dyaWRDb21wb25lbnQ8YW55PjtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgcmVsYXRpb246IFJlbGF0aW9uQW55VHlwZTtcblxuICBASW5wdXQoKVxuICBwdWJsaWMgdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uSW5mbztcblxuICBAT3V0cHV0KClcbiAgcHVibGljIHZhbGlkU3VibWl0OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgQE91dHB1dCgpXG4gIHB1YmxpYyBpbnZhbGlkU3VibWl0OiBFdmVudEVtaXR0ZXI8dm9pZD4gPSBuZXcgRXZlbnRFbWl0dGVyPHZvaWQ+KCk7XG5cbiAgcHVibGljIGRlbGl2ZXJ5T3B0aW9uTGlzdDogRGVsaXZlcnlPcHRpb25bXSA9IFtdO1xuICBwdWJsaWMgZGVsaXZlcnlPcHRpb25zOiBEZWxpdmVyeU9wdGlvbltdID0gW107XG4gIHB1YmxpYyBkZWxpdmVyeU9wdGlvbkZpZWxkczogVGV4dFZhbHVlQ29udGFpbmVyID0geyB0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcImNvZGVcIiB9O1xuICBwdWJsaWMgZGVsaXZlcnlNZXRob2RzOiBEZWxpdmVyeU1ldGhvZFtdID0gW107XG4gIHB1YmxpYyBkZWxpdmVyeU1ldGhvZEZpZWxkczogVGV4dFZhbHVlQ29udGFpbmVyID0geyB0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcImNvZGVcIiB9O1xuICBwdWJsaWMgYWRkTG9jYXRpb25Qb3B1cDogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgY2hhbmdlTG9jYXRpb25Qb3B1cDogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgbmV3QWRkcmVzczogQWRkcmVzcztcbiAgcHVibGljIHByZWZlcnJlZERhdGVPcHRpb25zOiBUZXh0VmFsdWVDb250YWluZXJbXSA9IFtcbiAgICAgIHt0ZXh0OiBcIk5PVF9BRlRFUlwiLCB2YWx1ZTogXCI+XCIgfSxcbiAgICAgIHt0ZXh0OiBcIk5PVF9CRUZPUkVcIiwgdmFsdWU6IFwiPFwiIH0sXG4gICAgICB7dGV4dDogXCJPTl9EQVRFXCIsIHZhbHVlOiBcIj1cIiB9LFxuICAgIF07XG4gIHB1YmxpYyBwcmVmZXJyZWREYXRlOiBEYXRlID0gbmV3IERhdGUoKTtcbiAgcHVibGljIGdlbmRlcjogR2VuZGVyVHlwZTtcbiAgcHVibGljIG1hcmtldGluZzogTWFya2V0aW5nW10gPSBbXTtcbiAgcHVibGljIG1hcmtldGluZ0ZpZWxkczogT2JqZWN0ID0geyB0ZXh0OiBcImRlc2NyaXB0aW9uXCIsIHZhbHVlOiBcImNvZGVcIiB9O1xuICBwdWJsaWMgbWFya2V0aW5nQ29kZTogc3RyaW5nO1xuICBwdWJsaWMgYXNzZW1ibHlDb3N0czogbnVtYmVyO1xuICBwdWJsaWMgZGVsaXZlcnlDb3N0czogbnVtYmVyO1xuXG4gIHB1YmxpYyBhZGRyZXNzZXM6IEFkZHJlc3NbXSA9IFtdO1xuICBwdWJsaWMgc2VsZWN0ZWRBZGRyZXNzOiBBZGRyZXNzO1xuICBwdWJsaWMgY29sdW1uczogYW55W10gPSBbXTtcblxuICAvLyBUT0RPOiBEZXplIHZlbGRlbiBub2cgb3BuZW1lbiBpbiBUcmFuc2FjdGlvbiEhXG4gIHB1YmxpYyBkZWxpdmVyeURhdGVGaW5hbDogYm9vbGVhbiA9IGZhbHNlO1xuICBwdWJsaWMgYXNzZW1ibHlEYXRlOiBEYXRlID0gbmV3IERhdGUoKTtcbiAgcHVibGljIHRvdGFsQXNzZW1ibHlUaW1lOiBzdHJpbmcgPSBcIlwiO1xuICBwdWJsaWMgZHJvcHNoaXBtZW50OiBib29sZWFuID0gZmFsc2U7XG5cbiAgcHJpdmF0ZSBfYWRkcmVzc1R5cGU6IEFkZHJlc3NUeXBlO1xuXG4gIHB1YmxpYyBnZXQgYmlsbGluZ0FkZHJlc3MoKTogQWRkcmVzcyB7XG4gICAgaWYgKHRoaXMudHJhbnNhY3Rpb24uaW52b2ljZUFkZHJlc3MgPT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKHRoaXMucmVsYXRpb24gJiZcbiAgICAgICAgdGhpcy5yZWxhdGlvbi5maXJzdEJpbGxpbmdBZGRyZXNzICYmXG4gICAgICAgIHRoaXMucmVsYXRpb24uZmlyc3RCaWxsaW5nQWRkcmVzcy5pc05vdEVtcHR5QWRkcmVzcygpKSB7XG4gICAgICAgIHRoaXMudHJhbnNhY3Rpb24uaW52b2ljZUFkZHJlc3MgPSB0aGlzLnJlbGF0aW9uLmZpcnN0QmlsbGluZ0FkZHJlc3M7XG4gICAgICAgIHRoaXMuX3NldENvdW50cnlOYW1lVG9BZGRyZXNzKHRoaXMudHJhbnNhY3Rpb24uaW52b2ljZUFkZHJlc3MpLnRoZW4oKTtcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIHRoaXMudHJhbnNhY3Rpb24uaW52b2ljZUFkZHJlc3M7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRlbGl2ZXJ5QWRkcmVzcygpOiBBZGRyZXNzIHtcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkFkZHJlc3MgPT09IHVuZGVmaW5lZCkge1xuICAgICAgaWYgKHRoaXMucmVsYXRpb24gJiZcbiAgICAgICAgdGhpcy5yZWxhdGlvbi5maXJzdERlbGl2ZXJ5QWRkcmVzcyAmJlxuICAgICAgICB0aGlzLnJlbGF0aW9uLmZpcnN0RGVsaXZlcnlBZGRyZXNzLmlzTm90RW1wdHlBZGRyZXNzKCkpIHtcbiAgICAgICAgdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkFkZHJlc3MgPSB0aGlzLnJlbGF0aW9uLmZpcnN0RGVsaXZlcnlBZGRyZXNzO1xuICAgICAgICB0aGlzLl9zZXRDb3VudHJ5TmFtZVRvQWRkcmVzcyh0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uQWRkcmVzcykudGhlbigpO1xuICAgICAgfVxuICAgIH1cbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkFkZHJlc3M7XG4gIH1cblxuICBwdWJsaWMgZ2V0IGRlbGl2ZXJ5RGF0ZSgpOiBEYXRlIHtcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbi5kZWxpdmVyeURhdGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy50cmFuc2FjdGlvbi5kZWxpdmVyeURhdGUgPSBuZXcgRGF0ZSgpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbi5kZWxpdmVyeURhdGU7XG4gIH1cblxuICBwdWJsaWMgc2V0IGRlbGl2ZXJ5RGF0ZSh2YWx1ZTogRGF0ZSkge1xuICAgIHRoaXMudHJhbnNhY3Rpb24uZGVsaXZlcnlEYXRlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgZ2V0IHByZWZlcnJlZERlbGl2ZXJ5RGF0ZSgpOiBEYXRlIHtcbiAgICBpZiAodGhpcy50cmFuc2FjdGlvbi5wcmVmZXJyZWREZWxpdmVyeURhdGUgPT09IHVuZGVmaW5lZCkge1xuICAgICAgdGhpcy50cmFuc2FjdGlvbi5wcmVmZXJyZWREZWxpdmVyeURhdGUgPSBuZXcgRGF0ZSgpO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy50cmFuc2FjdGlvbi5wcmVmZXJyZWREZWxpdmVyeURhdGU7XG4gIH1cblxuICBwdWJsaWMgc2V0IHByZWZlcnJlZERlbGl2ZXJ5RGF0ZSh2YWx1ZTogRGF0ZSkge1xuICAgIHRoaXMudHJhbnNhY3Rpb24ucHJlZmVycmVkRGVsaXZlcnlEYXRlID0gdmFsdWU7XG4gIH1cblxuICBwdWJsaWMgbmV3UmVsYXRpb25BZGRyZXNzKCk6IEFkZHJlc3Mge1xuICAgIGlmICh0aGlzLnJlbGF0aW9uKSB7XG4gICAgICBjb25zdCBhZGRyZXNzOiBBZGRyZXNzID0gbmV3IEFkZHJlc3MoKTtcbiAgICAgIGFkZHJlc3MuYWRkcmVzc1R5cGUgPSBBZGRyZXNzVHlwZS5EZWxpdmVyeUFkZHJlc3M7XG4gICAgICBhZGRyZXNzLnN0YXJ0RGF0ZSA9IG5ldyBEYXRlKCk7XG4gICAgICBhZGRyZXNzLnNlcXVlbmNlID0gdGhpcy5yZWxhdGlvbi5nZXROZXh0QWRkcmVzc1NlcXVlbmNlKCk7XG4gICAgICB0aGlzLnJlbGF0aW9uLmFkZHJlc3Nlcy5wdXNoKGFkZHJlc3MpO1xuICAgICAgcmV0dXJuIGFkZHJlc3M7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIGFzeW5jIG5nT25Jbml0KCk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uKSB7XG4gICAgICBpZiAodGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkFkZHJlc3MgPT09IHVuZGVmaW5lZCAmJiAhdGhpcy5kZWxpdmVyeUFkZHJlc3MpIHtcbiAgICAgICAgdGhpcy50cmFuc2FjdGlvbi50cmFuc2FjdGlvbkFkZHJlc3MgPSB0aGlzLmRlbGl2ZXJ5QWRkcmVzcztcbiAgICAgIH1cbiAgICAgIGlmICh0aGlzLnRyYW5zYWN0aW9uLmludm9pY2VBZGRyZXNzID09PSB1bmRlZmluZWQgJiYgIXRoaXMuYmlsbGluZ0FkZHJlc3MpIHtcbiAgICAgICAgICB0aGlzLnRyYW5zYWN0aW9uLmludm9pY2VBZGRyZXNzID0gdGhpcy5iaWxsaW5nQWRkcmVzcztcbiAgICAgICAgfVxuICAgIH1cblxuICAgIHRoaXMuZGVsaXZlcnlDb3N0cyA9IHRoaXMuY2FsY3VsYXRlRGVsaXZlcnlDb3N0cygpO1xuICAgIHRoaXMuYXNzZW1ibHlDb3N0cyA9IHRoaXMuY2FsY3VsYXRlQXNzZW1ibHlDb3N0cygpO1xuICAgIHRoaXMuZGVsaXZlcnlNZXRob2RzID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldERlbGl2ZXJ5TWV0aG9kcygpO1xuICAgIHRoaXMuZGVsaXZlcnlPcHRpb25MaXN0ID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldERlbGl2ZXJ5T3B0aW9ucygpO1xuICAgIHRoaXMubWFya2V0aW5nID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldE1hcmtldGluZ0NvZGVzKCk7XG4gICAgYXdhaXQgdGhpcy5vbkRlbGl2ZXJ5TWV0aG9kQ2hhbmdlKHRoaXMudHJhbnNhY3Rpb24uZGVsaXZlcnlNZXRob2QpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuY2RyLmRldGVjdENoYW5nZXMoKTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgICAgcHJpdmF0ZSBjZHI6IENoYW5nZURldGVjdG9yUmVmLFxuICAgICAgcHJpdmF0ZSBfZGljdGlvbmFyeVNlcnZpY2U6IERpY3Rpb25hcnlTZXJ2aWNlLFxuICAgICAgcHVibGljIHNlcnZpY2U6IFRyYW5zYWN0aW9uU2VydmljZSxcbiAgKSB7XG4gICAgdGhpcy5jb2x1bW5zLnB1c2goXG4gICAgICB7ZmllbGQ6IFwic3RyZWV0TmFtZVwiLCBoZWFkZXJUZXh0OiB0aGlzLl9kaWN0aW9uYXJ5U2VydmljZS5nZXQoXCJTVFJFRVRcIil9LFxuICAgICAge2ZpZWxkOiBcImhvdXNlTm9cIiwgaGVhZGVyVGV4dDogdGhpcy5fZGljdGlvbmFyeVNlcnZpY2UuZ2V0KFwiSE9VU0VfTk9cIil9LFxuICAgICAge2ZpZWxkOiBcImhvdXNlTm9BZGRpdGlvblwiLCBoZWFkZXJUZXh0OiB0aGlzLl9kaWN0aW9uYXJ5U2VydmljZS5nZXQoXCJIT1VTRV9OT19BRERJVElPTlwiKX0sXG4gICAgICB7ZmllbGQ6IFwicG9zdGFsQ29kZVwiLCBoZWFkZXJUZXh0OiB0aGlzLl9kaWN0aW9uYXJ5U2VydmljZS5nZXQoXCJQT1NUQUxfQ09ERVwiKSwgYWxsb3dGaWx0ZXJpbmc6IGZhbHNlfSxcbiAgICAgIHtmaWVsZDogXCJjaXR5XCIsIGhlYWRlclRleHQ6IHRoaXMuX2RpY3Rpb25hcnlTZXJ2aWNlLmdldChcIkNJVFlcIil9LFxuICAgICk7XG4gIH1cblxuICBwdWJsaWMgc3VibWl0KCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiB0aGlzLmRlbGl2ZXJ5Rm9ybS5zdWJtaXQoKTtcbiAgfVxuXG4gIHB1YmxpYyBhc3luYyBvbkRlbGl2ZXJ5TWV0aG9kQ2hhbmdlKGRlbGl2ZXJ5TWV0aG9kSWQ6IHN0cmluZyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGNvbnN0IGRlbGl2ZXJ5TWV0aG9kOiBEZWxpdmVyeU1ldGhvZFtdID0gdGhpcy5zZWxlY3REZWxpdmVyeU1ldGhvZEJ5SWQoZGVsaXZlcnlNZXRob2RJZCk7XG4gICAgdGhpcy50cmFuc2FjdGlvbi5kZWxpdmVyeU1ldGhvZCA9IGRlbGl2ZXJ5TWV0aG9kSWQ7XG4gICAgaWYgKGRlbGl2ZXJ5TWV0aG9kLmxlbmd0aCkge1xuICAgICAgdGhpcy5kZWxpdmVyeU9wdGlvbnMgPSB0aGlzLnNlbGVjdERlbGl2ZXJ5T3B0aW9uc0J5RGVsaXZlcnlNZXRob2QoZGVsaXZlcnlNZXRob2RbMF0pO1xuICAgICAgdGhpcy50cmFuc2FjdGlvbi5kZWxpdmVyeU9wdGlvbnMgPSBbXTtcbiAgICAgIGlmICh0aGlzLmRlbGl2ZXJ5T3B0aW9ucy5sZW5ndGgpIHtcbiAgICAgICAgdGhpcy50cmFuc2FjdGlvbi5kZWxpdmVyeU9wdGlvbnMucHVzaCh0aGlzLmRlbGl2ZXJ5T3B0aW9uc1swXS5jb2RlKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0RGVsaXZlcnlPcHRpb25zQnlEZWxpdmVyeU1ldGhvZChkZWxpdmVyeU1ldGhvZDogRGVsaXZlcnlNZXRob2QpOiBEZWxpdmVyeU9wdGlvbltdIHtcbiAgICByZXR1cm4gdGhpcy5kZWxpdmVyeU9wdGlvbkxpc3QuZmlsdGVyKGRlbGl2ZXJ5T3B0aW9uID0+IGRlbGl2ZXJ5TWV0aG9kLmRlbGl2ZXJ5T3B0aW9ucy5pbmRleE9mKGRlbGl2ZXJ5T3B0aW9uLmNvZGUpICE9PSAtMSk7XG4gIH1cblxuICBwdWJsaWMgc2VsZWN0RGVsaXZlcnlNZXRob2RCeUlkKGRlbGl2ZXJ5TWV0aG9kSWQ6IHN0cmluZyk6IERlbGl2ZXJ5TWV0aG9kW10ge1xuICAgIHJldHVybiB0aGlzLmRlbGl2ZXJ5TWV0aG9kcy5maWx0ZXIoZGVsaXZlcnkgPT4gZGVsaXZlcnkuY29kZSA9PT0gZGVsaXZlcnlNZXRob2RJZCk7XG4gIH1cblxuICBwdWJsaWMgY2hhbmdlQWRkcmVzcyhhZGRyZXNzVHlwZTogQWRkcmVzc1R5cGUpOiB2b2lkIHtcbiAgICB0aGlzLl9hZGRyZXNzVHlwZSA9IGFkZHJlc3NUeXBlO1xuICAgIHRoaXMuYWRkcmVzc2VzID0gdGhpcy5yZWxhdGlvbi5hZGRyZXNzZXM7XG4gICAgdGhpcy5jaGFuZ2VMb2NhdGlvblBvcHVwID0gdHJ1ZTtcbiAgfVxuXG4gIHB1YmxpYyBzYXZlTmV3TG9jYXRpb24oKTogdm9pZCB7XG4gICAgIHRoaXMubG9jYXRpb25Gb3JtLnN1Ym1pdCgpO1xuICB9XG5cbiAgcHVibGljIHNhdmVMb2NhdGlvbigpOiB2b2lkIHtcbiAgICB0aGlzLmFkZExvY2F0aW9uKCk7XG4gICAgdGhpcy5jaGFuZ2VMb2NhdGlvblBvcHVwID0gZmFsc2U7XG4gIH1cblxuICBwdWJsaWMgYWRkTG9jYXRpb24oKTogdm9pZCB7XG4gICAgdGhpcy51cGRhdGVBZGRyZXNzKHRoaXMubmV3QWRkcmVzcykudGhlbigpO1xuICAgIHRoaXMucmVsYXRpb24uYWRkcmVzc2VzLnB1c2godGhpcy5uZXdBZGRyZXNzKTtcbiAgICB0aGlzLnNlcnZpY2Uuc2F2ZVJlbGF0aW9uKCkudGhlbigpO1xuICAgIHRoaXMuYWRkTG9jYXRpb25Qb3B1cCA9IGZhbHNlO1xuICB9XG5cbiAgcHVibGljIGFzeW5jIHVwZGF0ZUFkZHJlc3MoYWRkcmVzczogQWRkcmVzcyk6IFByb21pc2U8dm9pZD4ge1xuICAgIGlmICh0aGlzLl9hZGRyZXNzVHlwZSA9PT0gQWRkcmVzc1R5cGUuRGVsaXZlcnlBZGRyZXNzKSB7XG4gICAgICB0aGlzLnRyYW5zYWN0aW9uLnRyYW5zYWN0aW9uQWRkcmVzcyA9IGFkZHJlc3M7XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMudHJhbnNhY3Rpb24uaW52b2ljZUFkZHJlc3MgPSBhZGRyZXNzO1xuICAgIH1cbiAgICBhd2FpdCB0aGlzLl9zZXRDb3VudHJ5TmFtZVRvQWRkcmVzcyhhZGRyZXNzKTtcbiAgfVxuXG4gIHB1YmxpYyBpc0RlbGl2ZXJ5T3B0aW9uQ2hlY2tlZChkZWxpdmVyeU9wdGlvbkl0ZW06IERlbGl2ZXJ5T3B0aW9uKTogYm9vbGVhbiB7XG4gICAgcmV0dXJuICh0aGlzLnRyYW5zYWN0aW9uLmRlbGl2ZXJ5T3B0aW9ucy5pbmRleE9mKGRlbGl2ZXJ5T3B0aW9uSXRlbS5jb2RlLCAwKSA9PT0gMCk7XG4gIH1cblxuICBwdWJsaWMgY2hhbmdlUHJlZmVycmVkRGVsaXZlcnlEYXRlMihwcmVmZXJyZWREYXRlT3B0aW9uOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLnByZWZlcnJlZERlbGl2ZXJ5RGF0ZTIgPSBwcmVmZXJyZWREYXRlT3B0aW9uO1xuICB9XG5cbiAgcHVibGljIG9uTWFya2V0aW5nQ29kZUNoYW5nZShtYXJrZXRpbmdDb2RlOiBzdHJpbmcpOiB2b2lkIHtcbiAgICB0aGlzLnRyYW5zYWN0aW9uLm1hcmtldGluZ0NvZGUgPSBtYXJrZXRpbmdDb2RlO1xuICB9XG5cbiAgcHVibGljIG9uQ2hhbmdlTG9jYXRpb25DYW5jZWxDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLmNoYW5nZUxvY2F0aW9uUG9wdXAgPSBmYWxzZTtcbiAgfVxuXG4gIHB1YmxpYyBvbkFkZExvY2F0aW9uT2tDbGljaygpOiB2b2lkIHtcbiAgICB0aGlzLl9hZGRBZGRyZXNzKHRoaXMuX2FkZHJlc3NUeXBlKTtcbiAgICB0aGlzLmFkZExvY2F0aW9uUG9wdXAgPSB0cnVlO1xuICB9XG5cbiAgcHVibGljIGhhbmRsZUFkZHJlc3NTZWxlY3RlZChyb3dzOiBhbnkpOiB2b2lkIHtcbiAgICB0aGlzLnNlbGVjdGVkQWRkcmVzcyA9IChyb3dzLmZpbmQoeCA9PiB4ICE9PSB1bmRlZmluZWQpKTtcbiAgICB0aGlzLnVwZGF0ZUFkZHJlc3ModGhpcy5zZWxlY3RlZEFkZHJlc3MpO1xuICAgIHRoaXMuY2hhbmdlTG9jYXRpb25Qb3B1cCA9IGZhbHNlO1xuICB9XG5cbiAgcHJpdmF0ZSBjYWxjdWxhdGVEZWxpdmVyeUNvc3RzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICBwcml2YXRlIGNhbGN1bGF0ZUFzc2VtYmx5Q29zdHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIHByaXZhdGUgX2FkZEFkZHJlc3MoYWRkcmVzc1R5cGU6IEFkZHJlc3NUeXBlKTogdm9pZCB7XG4gICAgdGhpcy5uZXdBZGRyZXNzID0gbmV3IEFkZHJlc3MoKTtcbiAgICB0aGlzLm5ld0FkZHJlc3MuYWRkcmVzc1R5cGUgPSBhZGRyZXNzVHlwZTtcbiAgICB0aGlzLm5ld0FkZHJlc3Muc3RhcnREYXRlID0gbmV3IERhdGUoKTtcbiAgICB0aGlzLm5ld0FkZHJlc3Muc2VxdWVuY2UgPSB0aGlzLnJlbGF0aW9uLmdldE5leHRBZGRyZXNzU2VxdWVuY2UoKTtcbiAgfVxuXG4gIHByaXZhdGUgYXN5bmMgX3NldENvdW50cnlOYW1lVG9BZGRyZXNzKGFkZHJlc3M6IEFkZHJlc3MpOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBpZiAoYWRkcmVzcy5jb3VudHJ5SWQgJiYgIWFkZHJlc3MuY291bnRyeU5hbWUpIHtcbiAgICAgIGNvbnN0IGNvdW50cnk6IENvdW50cnkgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0Q291bnRyeShhZGRyZXNzLmNvdW50cnlJZCk7XG4gICAgICBhZGRyZXNzLmNvdW50cnlOYW1lID0gY291bnRyeS5kZXNjcmlwdGlvbjtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -2,7 +2,6 @@ import { NgModule } from "@angular/core";
|
|
|
2
2
|
import { BrowserAnimationsModule } from "@angular/platform-browser/animations";
|
|
3
3
|
import { ButtonModule, CoDialogModule, CoDialogPromptModule, CoGridModule, CoSidebarModule, DropDownModule, FormModule, IconModule, InputCheckboxModule, InputComboBoxModule, InputDatePickerModule, InputNumberPickerModule, InputRadioButtonModule, InputTextModule, MultiSelectListModule, PopupModule, } from "@colijnit/corecomponents_v12";
|
|
4
4
|
import { FlexModule } from "@angular/flex-layout";
|
|
5
|
-
import { IOneConnectorAdapterService } from "../../service/ione-connector-adapter.service";
|
|
6
5
|
import { DictionaryService } from "../../service/dictionary.service";
|
|
7
6
|
import { CheckoutComponent } from "./../checkout/checkout/checkout.component";
|
|
8
7
|
import { CheckoutOverviewComponent } from "./checkout-overview/checkout-overview.component";
|
|
@@ -61,7 +60,6 @@ IoneCheckoutModule.decorators = [
|
|
|
61
60
|
IoneCheckoutComponent,
|
|
62
61
|
],
|
|
63
62
|
providers: [
|
|
64
|
-
IOneConnectorAdapterService,
|
|
65
63
|
DictionaryService,
|
|
66
64
|
TransactionService,
|
|
67
65
|
OptionsService
|
|
@@ -73,4 +71,4 @@ IoneCheckoutModule.decorators = [
|
|
|
73
71
|
bootstrap: [IoneCheckoutComponent]
|
|
74
72
|
},] }
|
|
75
73
|
];
|
|
76
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
74
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW9uZS1jaGVja291dC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudC9jaGVja291dC9pb25lLWNoZWNrb3V0Lm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3ZDLE9BQU8sRUFBQyx1QkFBdUIsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQzdFLE9BQU8sRUFDTCxZQUFZLEVBQ1osY0FBYyxFQUNkLG9CQUFvQixFQUNwQixZQUFZLEVBQ1osZUFBZSxFQUNmLGNBQWMsRUFDZCxVQUFVLEVBQ1YsVUFBVSxFQUNWLG1CQUFtQixFQUNuQixtQkFBbUIsRUFDbkIscUJBQXFCLEVBQ3JCLHVCQUF1QixFQUN2QixzQkFBc0IsRUFDdEIsZUFBZSxFQUNmLHFCQUFxQixFQUNyQixXQUFXLEdBQ1osTUFBTSw4QkFBOEIsQ0FBQztBQUN0QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sc0JBQXNCLENBQUM7QUFFaEQsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFDbkUsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDNUUsT0FBTyxFQUFDLHlCQUF5QixFQUFDLE1BQU0saURBQWlELENBQUM7QUFDMUYsT0FBTyxFQUFDLDhCQUE4QixFQUFDLE1BQU0sNkRBQTZELENBQUM7QUFDM0csT0FBTyxFQUFDLHFDQUFxQyxFQUFDLE1BQU0sNkVBQTZFLENBQUM7QUFDbEksT0FBTyxFQUFDLHdDQUF3QyxFQUFDLE1BQU0sbUZBQW1GLENBQUM7QUFDM0ksT0FBTyxFQUFDLHFDQUFxQyxFQUFDLE1BQU0sNkVBQTZFLENBQUM7QUFDbEksT0FBTyxFQUFDLGtDQUFrQyxFQUFDLE1BQU0scUVBQXFFLENBQUM7QUFDdkgsT0FBTyxFQUFDLHdDQUF3QyxFQUFDLE1BQU0sbUZBQW1GLENBQUM7QUFDM0ksT0FBTyxFQUFDLHdDQUF3QyxFQUFDLE1BQU0sbUZBQW1GLENBQUM7QUFDM0ksT0FBTyxFQUFDLDRDQUE0QyxFQUFDLE1BQU0sNkZBQTZGLENBQUM7QUFDekosT0FBTyxFQUFDLHNCQUFzQixFQUFDLE1BQU0sMkNBQTJDLENBQUM7QUFDakYsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFDLGtCQUFrQixFQUFDLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFDLGNBQWMsRUFBQyxNQUFNLCtCQUErQixDQUFDO0FBQzdELE9BQU8sRUFBQyxxQkFBcUIsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBQ2hFLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQWtEL0MsTUFBTSxPQUFPLGtCQUFrQjs7O1lBaEQ5QixRQUFRLFNBQUM7Z0JBQ1IsT0FBTyxFQUFFO29CQUNQLHVCQUF1QjtvQkFDdkIsVUFBVTtvQkFDVixlQUFlO29CQUNmLG1CQUFtQjtvQkFDbkIsc0JBQXNCO29CQUN0QixVQUFVO29CQUNWLG1CQUFtQjtvQkFDbkIscUJBQXFCO29CQUNyQix1QkFBdUI7b0JBQ3ZCLGNBQWM7b0JBQ2Qsb0JBQW9CO29CQUNwQixZQUFZO29CQUNaLFVBQVU7b0JBQ1YscUJBQXFCO29CQUNyQixnQkFBZ0I7b0JBQ2hCLGNBQWM7b0JBQ2QsV0FBVyxDQUFDLE9BQU8sRUFBRTtvQkFDckIsZUFBZTtvQkFDZixZQUFZO29CQUNaLFVBQVU7aUJBQ1g7Z0JBQ0QsWUFBWSxFQUFFO29CQUNaLGlCQUFpQjtvQkFDakIseUJBQXlCO29CQUN6Qiw4QkFBOEI7b0JBQzlCLHFDQUFxQztvQkFDckMsd0NBQXdDO29CQUN4QyxxQ0FBcUM7b0JBQ3JDLGtDQUFrQztvQkFDbEMsd0NBQXdDO29CQUN4Qyx3Q0FBd0M7b0JBQ3hDLDRDQUE0QztvQkFDNUMsc0JBQXNCO29CQUN0QixxQkFBcUI7aUJBQ3RCO2dCQUNELFNBQVMsRUFBRTtvQkFDVCxpQkFBaUI7b0JBQ2pCLGtCQUFrQjtvQkFDbEIsY0FBYztpQkFDZjtnQkFDRCxlQUFlLEVBQUU7b0JBQ2YscUJBQXFCO2lCQUN0QjtnQkFDRCxPQUFPLEVBQUUsQ0FBQyxxQkFBcUIsQ0FBQztnQkFDaEMsU0FBUyxFQUFFLENBQUMscUJBQXFCLENBQUM7YUFDbkMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge05nTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge0Jyb3dzZXJBbmltYXRpb25zTW9kdWxlfSBmcm9tIFwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3Nlci9hbmltYXRpb25zXCI7XHJcbmltcG9ydCB7XHJcbiAgQnV0dG9uTW9kdWxlLFxyXG4gIENvRGlhbG9nTW9kdWxlLFxyXG4gIENvRGlhbG9nUHJvbXB0TW9kdWxlLFxyXG4gIENvR3JpZE1vZHVsZSxcclxuICBDb1NpZGViYXJNb2R1bGUsXHJcbiAgRHJvcERvd25Nb2R1bGUsXHJcbiAgRm9ybU1vZHVsZSxcclxuICBJY29uTW9kdWxlLFxyXG4gIElucHV0Q2hlY2tib3hNb2R1bGUsXHJcbiAgSW5wdXRDb21ib0JveE1vZHVsZSxcclxuICBJbnB1dERhdGVQaWNrZXJNb2R1bGUsXHJcbiAgSW5wdXROdW1iZXJQaWNrZXJNb2R1bGUsXHJcbiAgSW5wdXRSYWRpb0J1dHRvbk1vZHVsZSxcclxuICBJbnB1dFRleHRNb2R1bGUsXHJcbiAgTXVsdGlTZWxlY3RMaXN0TW9kdWxlLFxyXG4gIFBvcHVwTW9kdWxlLFxyXG59IGZyb20gXCJAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyXCI7XHJcbmltcG9ydCB7RmxleE1vZHVsZX0gZnJvbSBcIkBhbmd1bGFyL2ZsZXgtbGF5b3V0XCI7XHJcbmltcG9ydCB7SU9uZUNvbm5lY3RvckFkYXB0ZXJTZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS9pb25lLWNvbm5lY3Rvci1hZGFwdGVyLnNlcnZpY2VcIjtcclxuaW1wb3J0IHtEaWN0aW9uYXJ5U2VydmljZX0gZnJvbSBcIi4uLy4uL3NlcnZpY2UvZGljdGlvbmFyeS5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7Q2hlY2tvdXRDb21wb25lbnR9IGZyb20gXCIuLy4uL2NoZWNrb3V0L2NoZWNrb3V0L2NoZWNrb3V0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0NoZWNrb3V0T3ZlcnZpZXdDb21wb25lbnR9IGZyb20gXCIuL2NoZWNrb3V0LW92ZXJ2aWV3L2NoZWNrb3V0LW92ZXJ2aWV3LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0NoZWNrb3V0T3ZlcnZpZXdCbG9ja0NvbXBvbmVudH0gZnJvbSBcIi4vY2hlY2tvdXQtb3ZlcnZpZXctYmxvY2svY2hlY2tvdXQtb3ZlcnZpZXctYmxvY2suY29tcG9uZW50XCI7XHJcbmltcG9ydCB7Q2hlY2tvdXRPdmVydmlld1JlbGF0aW9uRWRpdENvbXBvbmVudH0gZnJvbSBcIi4vY2hlY2tvdXQtb3ZlcnZpZXctcmVsYXRpb24tZWRpdC9jaGVja291dC1vdmVydmlldy1yZWxhdGlvbi1lZGl0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0NoZWNrb3V0T3ZlcnZpZXdSZWxhdGlvbkFkZHJlc3NDb21wb25lbnR9IGZyb20gXCIuL2NoZWNrb3V0LW92ZXJ2aWV3LXJlbGF0aW9uLWFkZHJlc3MvY2hlY2tvdXQtb3ZlcnZpZXctcmVsYXRpb24tYWRkcmVzcy5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtDaGVja291dE92ZXJ2aWV3RGVsaXZlcnlFZGl0Q29tcG9uZW50fSBmcm9tIFwiLi9jaGVja291dC1vdmVydmlldy1kZWxpdmVyeS1lZGl0L2NoZWNrb3V0LW92ZXJ2aWV3LWRlbGl2ZXJ5LWVkaXQuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7UmV0YWlsVHJhbnNhY3Rpb25DaGVja291dENvbXBvbmVudH0gZnJvbSBcIi4vcmV0YWlsLXRyYW5zYWN0aW9uLWNoZWNrb3V0L3JldGFpbC10cmFuc2FjdGlvbi1jaGVja291dC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtDaGVja291dE92ZXJ2aWV3RGVsaXZlcnlBZGRyZXNzQ29tcG9uZW50fSBmcm9tIFwiLi9jaGVja291dC1vdmVydmlldy1kZWxpdmVyeS1hZGRyZXNzL2NoZWNrb3V0LW92ZXJ2aWV3LWRlbGl2ZXJ5LWFkZHJlc3MuY29tcG9uZW50XCI7XHJcbmltcG9ydCB7Q2hlY2tPdXRSZWxhdGlvblN1Z2dlc3Rpb25zTGlzdENvbXBvbmVudH0gZnJvbSBcIi4vY2hlY2tvdXQtcmVsYXRpb24tc3VnZ2VzdGlvbnMtbGlzdC9jaGVja291dC1yZWxhdGlvbi1zdWdnZXN0aW9ucy1saXN0LmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0NoZWNrT3V0UmVsYXRpb25TdWdnZXN0aW9uc0xpc3RJdGVtQ29tcG9uZW50fSBmcm9tIFwiLi9jaGVja291dC1yZWxhdGlvbi1zdWdnZXN0aW9ucy1saXN0LWl0ZW0vY2hlY2tvdXQtcmVsYXRpb24tc3VnZ2VzdGlvbnMtbGlzdC1pdGVtLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge0NoZWNrb3V0TG9naW5Db21wb25lbnR9IGZyb20gXCIuL2NoZWNrb3V0LWxvZ2luL2NoZWNrb3V0LWxvZ2luLmNvbXBvbmVudFwiO1xyXG5pbXBvcnQge01hdFN0ZXBwZXJNb2R1bGV9IGZyb20gXCJAYW5ndWxhci9tYXRlcmlhbC9zdGVwcGVyXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25TZXJ2aWNlfSBmcm9tIFwiLi4vLi4vc2VydmljZS90cmFuc2FjdGlvbi5zZXJ2aWNlXCI7XHJcbmltcG9ydCB7T3B0aW9uc1NlcnZpY2V9IGZyb20gXCIuLi8uLi9zZXJ2aWNlL29wdGlvbnMuc2VydmljZVwiO1xyXG5pbXBvcnQge0lvbmVDaGVja291dENvbXBvbmVudH0gZnJvbSBcIi4vaW9uZS1jaGVja291dC5jb21wb25lbnRcIjtcclxuaW1wb3J0IHtDb3JlTW9kdWxlfSBmcm9tIFwiLi4vY29yZS9jb3JlLm1vZHVsZVwiO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICBpbXBvcnRzOiBbXHJcbiAgICBCcm93c2VyQW5pbWF0aW9uc01vZHVsZSxcclxuICAgIEljb25Nb2R1bGUsXHJcbiAgICBJbnB1dFRleHRNb2R1bGUsXHJcbiAgICBJbnB1dENoZWNrYm94TW9kdWxlLFxyXG4gICAgSW5wdXRSYWRpb0J1dHRvbk1vZHVsZSxcclxuICAgIEZvcm1Nb2R1bGUsXHJcbiAgICBJbnB1dENvbWJvQm94TW9kdWxlLFxyXG4gICAgSW5wdXREYXRlUGlja2VyTW9kdWxlLFxyXG4gICAgSW5wdXROdW1iZXJQaWNrZXJNb2R1bGUsXHJcbiAgICBDb0RpYWxvZ01vZHVsZSxcclxuICAgIENvRGlhbG9nUHJvbXB0TW9kdWxlLFxyXG4gICAgQnV0dG9uTW9kdWxlLFxyXG4gICAgRmxleE1vZHVsZSxcclxuICAgIE11bHRpU2VsZWN0TGlzdE1vZHVsZSxcclxuICAgIE1hdFN0ZXBwZXJNb2R1bGUsXHJcbiAgICBEcm9wRG93bk1vZHVsZSxcclxuICAgIFBvcHVwTW9kdWxlLmZvclJvb3QoKSxcclxuICAgIENvU2lkZWJhck1vZHVsZSxcclxuICAgIENvR3JpZE1vZHVsZSxcclxuICAgIENvcmVNb2R1bGUsXHJcbiAgXSxcclxuICBkZWNsYXJhdGlvbnM6IFtcclxuICAgIENoZWNrb3V0Q29tcG9uZW50LFxyXG4gICAgQ2hlY2tvdXRPdmVydmlld0NvbXBvbmVudCxcclxuICAgIENoZWNrb3V0T3ZlcnZpZXdCbG9ja0NvbXBvbmVudCxcclxuICAgIENoZWNrb3V0T3ZlcnZpZXdSZWxhdGlvbkVkaXRDb21wb25lbnQsXHJcbiAgICBDaGVja291dE92ZXJ2aWV3UmVsYXRpb25BZGRyZXNzQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tvdXRPdmVydmlld0RlbGl2ZXJ5RWRpdENvbXBvbmVudCxcclxuICAgIFJldGFpbFRyYW5zYWN0aW9uQ2hlY2tvdXRDb21wb25lbnQsXHJcbiAgICBDaGVja291dE92ZXJ2aWV3RGVsaXZlcnlBZGRyZXNzQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tPdXRSZWxhdGlvblN1Z2dlc3Rpb25zTGlzdENvbXBvbmVudCxcclxuICAgIENoZWNrT3V0UmVsYXRpb25TdWdnZXN0aW9uc0xpc3RJdGVtQ29tcG9uZW50LFxyXG4gICAgQ2hlY2tvdXRMb2dpbkNvbXBvbmVudCxcclxuICAgIElvbmVDaGVja291dENvbXBvbmVudCxcclxuICBdLFxyXG4gIHByb3ZpZGVyczogW1xyXG4gICAgRGljdGlvbmFyeVNlcnZpY2UsXHJcbiAgICBUcmFuc2FjdGlvblNlcnZpY2UsXHJcbiAgICBPcHRpb25zU2VydmljZVxyXG4gIF0sXHJcbiAgZW50cnlDb21wb25lbnRzOiBbXHJcbiAgICBJb25lQ2hlY2tvdXRDb21wb25lbnRcclxuICBdLFxyXG4gIGV4cG9ydHM6IFtJb25lQ2hlY2tvdXRDb21wb25lbnRdLFxyXG4gIGJvb3RzdHJhcDogW0lvbmVDaGVja291dENvbXBvbmVudF1cclxufSlcclxuZXhwb3J0IGNsYXNzIElvbmVDaGVja291dE1vZHVsZSB7fVxyXG4iXX0=
|
|
@@ -16,6 +16,7 @@ export class IconComponent {
|
|
|
16
16
|
}
|
|
17
17
|
IconComponent.decorators = [
|
|
18
18
|
{ type: Component, args: [{
|
|
19
|
+
// eslint-disable-next-line @angular-eslint/component-selector
|
|
19
20
|
selector: "icon",
|
|
20
21
|
template: "",
|
|
21
22
|
styles: ["html,body{height:100%}body{margin:0;font-family:Roboto,\"Helvetica Neue\",sans-serif}.circle:host{border-radius:50%}.flex-center{display:flex}:host{display:inline-flex}.flex-center{flex-direction:row}.flex-center{align-items:center!important;justify-content:center!important}.no-shrink:host{flex-shrink:0}:host.action ::ng-deep{cursor:pointer}:host ::ng-deep svg{width:100%}:host ::ng-deep svg{height:100%}.massive:host{width:100px;height:100px}.humongous:host{width:70px;height:70px}.very-big:host{width:45px;height:45px}.big:host{width:40px;height:40px}:host{width:30px;height:30px}.small:host{width:25px;height:25px}.nano:host{width:18px;height:18px}.pico:host{width:14px;height:14px}.triangle{border-radius:3px}.full-width{width:100%}.flex-center{margin:10px 0}:host.dark ::ng-deep [fill]{fill:#22313c}:host.light ::ng-deep [fill]{fill:#fff}:host.red ::ng-deep [fill]{fill:#c1002a}:host.grey ::ng-deep [fill]{fill:#dad9d9}:host.action-color ::ng-deep [fill]{fill:#2b60a7}:host.inactive{opacity:.25}:host.disabled{opacity:.25!important}:host:hover.action ::ng-deep [fill]{fill:#2b60a7}\n"]
|
|
@@ -28,4 +29,4 @@ IconComponent.propDecorators = {
|
|
|
28
29
|
icon: [{ type: Input }],
|
|
29
30
|
svg: [{ type: HostBinding, args: ["innerHtml",] }]
|
|
30
31
|
};
|
|
31
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaWNvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudC9jb21tb24vaWNvbi9pY29uLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQVksTUFBTSxlQUFlLENBQUM7QUFFdkUsT0FBTyxFQUFxQixnQkFBZ0IsRUFBQyxNQUFNLDhCQUE4QixDQUFDO0FBVWxGLE1BQU0sT0FBTyxhQUFhO0lBVXhCLFlBQ1UsaUJBQW1DO1FBQW5DLHNCQUFpQixHQUFqQixpQkFBaUIsQ0FBa0I7SUFDN0MsQ0FBQztJQVZELElBQ1csSUFBSSxDQUFDLElBQXdCO1FBQ3RDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDckIsQ0FBQztJQVNELFdBQVc7UUFDVCxJQUFJLENBQUMsR0FBRyxHQUFHLFNBQVMsQ0FBQztJQUN2QixDQUFDO0lBRU8sT0FBTyxDQUFDLElBQXdCO1FBQ3RDLElBQUksQ0FBQyxHQUFHLEdBQUcsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNsRCxDQUFDOzs7WUE1QkYsU0FBUyxTQUFDO2dCQUNULDhEQUE4RDtnQkFDOUQsUUFBUSxFQUFFLE1BQU07Z0JBQ2hCLFFBQVEsRUFBRSxFQUFFOzthQUliOzs7WUFUMkIsZ0JBQWdCOzs7bUJBWXpDLEtBQUs7a0JBS0wsV0FBVyxTQUFDLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgSG9zdEJpbmRpbmcsIElucHV0LCBPbkRlc3Ryb3l9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQge1NhZmVIdG1sfSBmcm9tIFwiQGFuZ3VsYXIvcGxhdGZvcm0tYnJvd3NlclwiO1xuaW1wb3J0IHtDb3JlQ29tcG9uZW50c0ljb24sIEljb25DYWNoZVNlcnZpY2V9IGZyb20gXCJAY29saWpuaXQvY29yZWNvbXBvbmVudHNfdjEyXCI7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogXCJpY29uXCIsXG4gIHRlbXBsYXRlOiBcIlwiLFxuICBzdHlsZVVybHM6IFtcbiAgICBcIi4vaWNvbi5jb21wb25lbnQuc2Nzc1wiXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgSWNvbkNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG5cbiAgQElucHV0KClcbiAgcHVibGljIHNldCBpY29uKGljb246IENvcmVDb21wb25lbnRzSWNvbikge1xuICAgIHRoaXMuX3NldFN2ZyhpY29uKTtcbiAgfVxuXG4gIEBIb3N0QmluZGluZyhcImlubmVySHRtbFwiKVxuICBwdWJsaWMgc3ZnPzogU2FmZUh0bWw7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBfaWNvbkNhY2hlU2VydmljZTogSWNvbkNhY2hlU2VydmljZSkge1xuICB9XG5cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgdGhpcy5zdmcgPSB1bmRlZmluZWQ7XG4gIH1cblxuICBwcml2YXRlIF9zZXRTdmcoaWNvbjogQ29yZUNvbXBvbmVudHNJY29uKTogdm9pZCB7XG4gICAgdGhpcy5zdmcgPSB0aGlzLl9pY29uQ2FjaGVTZXJ2aWNlLmdldEljb24oaWNvbik7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { Component, Output, EventEmitter, Input, ViewChild } from "@angular/core";
|
|
2
|
+
export class DefaultOkCancelButtonsComponent {
|
|
3
|
+
constructor() {
|
|
4
|
+
this.hideCancel = false;
|
|
5
|
+
this.hideOk = false;
|
|
6
|
+
this.okLabel = "OK";
|
|
7
|
+
// only emits when ok button was not disabled when it was clicked
|
|
8
|
+
this.okClick = new EventEmitter();
|
|
9
|
+
this.cancelClick = new EventEmitter();
|
|
10
|
+
}
|
|
11
|
+
onOkClick(event) {
|
|
12
|
+
if (this.okButtonComp && !this.okButtonComp.disabled) {
|
|
13
|
+
this.okClick.emit(event);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
DefaultOkCancelButtonsComponent.decorators = [
|
|
18
|
+
{ type: Component, args: [{
|
|
19
|
+
// eslint-disable-next-line @angular-eslint/component-selector
|
|
20
|
+
selector: "default-ok-cancel-buttons",
|
|
21
|
+
template: `
|
|
22
|
+
<co-button *ngIf="!hideOk" [label]="okLabel" [disabled]="okDisabled" class="ok" #okButton (click)="onOkClick($event)"></co-button>
|
|
23
|
+
<co-button *ngIf="!hideCancel" label="CANCEL" (click)="cancelClick.emit($event)"></co-button>
|
|
24
|
+
<ng-content></ng-content>
|
|
25
|
+
`,
|
|
26
|
+
styles: ["html,body{height:100%}body{margin:0;font-family:Roboto,\"Helvetica Neue\",sans-serif}.flex-center,:host{display:flex}.flex-center{flex-direction:row}.flex-center{align-items:center!important;justify-content:center!important}.margin-popup:host{margin-top:20px}.margin-popup:host{margin-bottom:20px}.margin-popup:host{margin-left:20px}.margin-popup:host{margin-right:20px}.margin-top:host{margin-top:11px}:host button-colijn:not(:last-child){margin-right:11px}.triangle{border-radius:3px}.full-width{width:100%}.flex-center{margin:10px 0}:host.justify-center{justify-content:center}\n"]
|
|
27
|
+
},] }
|
|
28
|
+
];
|
|
29
|
+
DefaultOkCancelButtonsComponent.ctorParameters = () => [];
|
|
30
|
+
DefaultOkCancelButtonsComponent.propDecorators = {
|
|
31
|
+
okDisabled: [{ type: Input }],
|
|
32
|
+
hideCancel: [{ type: Input }],
|
|
33
|
+
hideOk: [{ type: Input }],
|
|
34
|
+
okLabel: [{ type: Input }],
|
|
35
|
+
okClick: [{ type: Output }],
|
|
36
|
+
cancelClick: [{ type: Output }],
|
|
37
|
+
okButtonComp: [{ type: ViewChild, args: ["okButton",] }]
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdC1vay1jYW5jZWwtYnV0dG9ucy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudC9jb3JlL2Jhc2UvZGVmYXVsdC1vay1jYW5jZWwtYnV0dG9ucy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxNQUFNLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFlaEYsTUFBTSxPQUFPLCtCQUErQjtJQXVCMUM7UUFsQk8sZUFBVSxHQUFZLEtBQUssQ0FBQztRQUc1QixXQUFNLEdBQVksS0FBSyxDQUFDO1FBR3hCLFlBQU8sR0FBVyxJQUFJLENBQUM7UUFFOUIsaUVBQWlFO1FBRTFELFlBQU8sR0FBNkIsSUFBSSxZQUFZLEVBQWMsQ0FBQztRQUduRSxnQkFBVyxHQUE2QixJQUFJLFlBQVksRUFBYyxDQUFDO0lBTTlFLENBQUM7SUFFTSxTQUFTLENBQUMsS0FBaUI7UUFDaEMsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxRQUFRLEVBQUU7WUFDcEQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUM7U0FDMUI7SUFDSCxDQUFDOzs7WUExQ0YsU0FBUyxTQUFDO2dCQUNULDhEQUE4RDtnQkFDOUQsUUFBUSxFQUFFLDJCQUEyQjtnQkFDckMsUUFBUSxFQUFFOzs7O0tBSVA7O2FBSUo7Ozs7eUJBRUUsS0FBSzt5QkFHTCxLQUFLO3FCQUdMLEtBQUs7c0JBR0wsS0FBSztzQkFJTCxNQUFNOzBCQUdOLE1BQU07MkJBR04sU0FBUyxTQUFDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudCwgT3V0cHV0LCBFdmVudEVtaXR0ZXIsIElucHV0LCBWaWV3Q2hpbGR9IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XHJcbmltcG9ydCB7QnV0dG9uQ29tcG9uZW50fSBmcm9tIFwiQGNvbGlqbml0L2NvcmVjb21wb25lbnRzX3YxMlwiO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcclxuICBzZWxlY3RvcjogXCJkZWZhdWx0LW9rLWNhbmNlbC1idXR0b25zXCIsXHJcbiAgdGVtcGxhdGU6IGBcclxuICAgICAgICA8Y28tYnV0dG9uICpuZ0lmPVwiIWhpZGVPa1wiIFtsYWJlbF09XCJva0xhYmVsXCIgW2Rpc2FibGVkXT1cIm9rRGlzYWJsZWRcIiBjbGFzcz1cIm9rXCIgI29rQnV0dG9uIChjbGljayk9XCJvbk9rQ2xpY2soJGV2ZW50KVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgIDxjby1idXR0b24gKm5nSWY9XCIhaGlkZUNhbmNlbFwiIGxhYmVsPVwiQ0FOQ0VMXCIgKGNsaWNrKT1cImNhbmNlbENsaWNrLmVtaXQoJGV2ZW50KVwiPjwvY28tYnV0dG9uPlxyXG4gICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cclxuICAgIGAsXHJcbiAgc3R5bGVVcmxzOiBbXHJcbiAgICBcIi4vZGVmYXVsdC1vay1jYW5jZWwtYnV0dG9ucy5jb21wb25lbnQuc2Nzc1wiXHJcbiAgXVxyXG59KVxyXG5leHBvcnQgY2xhc3MgRGVmYXVsdE9rQ2FuY2VsQnV0dG9uc0NvbXBvbmVudCB7XHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgb2tEaXNhYmxlZDogYm9vbGVhbjtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgaGlkZUNhbmNlbDogYm9vbGVhbiA9IGZhbHNlO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyBoaWRlT2s6IGJvb2xlYW4gPSBmYWxzZTtcclxuXHJcbiAgQElucHV0KClcclxuICBwdWJsaWMgb2tMYWJlbDogc3RyaW5nID0gXCJPS1wiO1xyXG5cclxuICAvLyBvbmx5IGVtaXRzIHdoZW4gb2sgYnV0dG9uIHdhcyBub3QgZGlzYWJsZWQgd2hlbiBpdCB3YXMgY2xpY2tlZFxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBva0NsaWNrOiBFdmVudEVtaXR0ZXI8TW91c2VFdmVudD4gPSBuZXcgRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+KCk7XHJcblxyXG4gIEBPdXRwdXQoKVxyXG4gIHB1YmxpYyBjYW5jZWxDbGljazogRXZlbnRFbWl0dGVyPE1vdXNlRXZlbnQ+ID0gbmV3IEV2ZW50RW1pdHRlcjxNb3VzZUV2ZW50PigpO1xyXG5cclxuICBAVmlld0NoaWxkKFwib2tCdXR0b25cIilcclxuICBwdWJsaWMgb2tCdXR0b25Db21wOiBCdXR0b25Db21wb25lbnQ7XHJcblxyXG4gIGNvbnN0cnVjdG9yKCkge1xyXG4gIH1cclxuXHJcbiAgcHVibGljIG9uT2tDbGljayhldmVudDogTW91c2VFdmVudCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMub2tCdXR0b25Db21wICYmICF0aGlzLm9rQnV0dG9uQ29tcC5kaXNhYmxlZCkge1xyXG4gICAgICB0aGlzLm9rQ2xpY2suZW1pdChldmVudCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { __awaiter } from "tslib";
|
|
2
|
+
import { Directive, Input } from "@angular/core";
|
|
3
|
+
import { TransactionService } from "../../../service/transaction.service";
|
|
4
|
+
import { isNill } from "@colijnit/transactionapi/build/utils/function/is-nill.function";
|
|
5
|
+
import { TransactionKind } from "@colijnit/transactionapi/build/enum/transaction-kind.enum";
|
|
6
|
+
import { NULL_CUSTOMER_FULL_OBJECT, NULL_RELATION_LIST_OBJECT } from "@colijnit/transactionapi/build/model/nul-relation-object";
|
|
7
|
+
import { RelationRequest } from "@colijnit/transactionapi/build/model/relation-request";
|
|
8
|
+
export class TransactionBaseComponent {
|
|
9
|
+
constructor(service) {
|
|
10
|
+
this.service = service;
|
|
11
|
+
this.relation = NULL_RELATION_LIST_OBJECT;
|
|
12
|
+
this.customer = NULL_CUSTOMER_FULL_OBJECT;
|
|
13
|
+
this._isService = false;
|
|
14
|
+
this.basedOnProduct = false;
|
|
15
|
+
}
|
|
16
|
+
set transaction(value) {
|
|
17
|
+
this._transaction = value;
|
|
18
|
+
if (this._transaction && this._transaction.transactionInfo) {
|
|
19
|
+
this._isService = this._transaction.transactionInfo.transactionKind === TransactionKind.ServiceOrder;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
get transaction() {
|
|
23
|
+
return this._transaction;
|
|
24
|
+
}
|
|
25
|
+
get transactionInfo() {
|
|
26
|
+
return this._transaction.transactionInfo;
|
|
27
|
+
}
|
|
28
|
+
get transactionLines() {
|
|
29
|
+
if (this._transaction) {
|
|
30
|
+
return this._transaction.transactionLines;
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
get transactionTotal() {
|
|
34
|
+
if (this._transaction) {
|
|
35
|
+
return this._transaction.transactionTotal;
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
get isService() {
|
|
39
|
+
return this._isService;
|
|
40
|
+
}
|
|
41
|
+
set relationId(value) {
|
|
42
|
+
if (value === undefined) {
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
this._relationId = value;
|
|
46
|
+
this._retrieveRelation();
|
|
47
|
+
}
|
|
48
|
+
get relationId() {
|
|
49
|
+
return this._relationId;
|
|
50
|
+
}
|
|
51
|
+
set customerId(value) {
|
|
52
|
+
if (value === undefined) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
this._customerId = value;
|
|
56
|
+
this._retrieveCustomer();
|
|
57
|
+
}
|
|
58
|
+
get customerId() {
|
|
59
|
+
return this._customerId;
|
|
60
|
+
}
|
|
61
|
+
set product(value) {
|
|
62
|
+
this._product = value;
|
|
63
|
+
this.productSet();
|
|
64
|
+
this._setBasedOnProduct();
|
|
65
|
+
}
|
|
66
|
+
get product() {
|
|
67
|
+
return this._product;
|
|
68
|
+
}
|
|
69
|
+
get isNew() {
|
|
70
|
+
return isNill(this.transaction) || isNill(this.transactionInfo.transactionNr);
|
|
71
|
+
}
|
|
72
|
+
transactionSet() {
|
|
73
|
+
// overridden by descendents
|
|
74
|
+
}
|
|
75
|
+
productSet() {
|
|
76
|
+
// overridden by descendents
|
|
77
|
+
}
|
|
78
|
+
_retrieveCustomer() {
|
|
79
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
80
|
+
this.customer = yield this.service.getCustomerFulObjectByRelationId(this._customerId);
|
|
81
|
+
});
|
|
82
|
+
}
|
|
83
|
+
_retrieveRelation() {
|
|
84
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
85
|
+
const relationRequest = new RelationRequest();
|
|
86
|
+
let relations = [];
|
|
87
|
+
relationRequest.relationId = this.relationId;
|
|
88
|
+
relations = yield this.service.getRelationListObjects(relationRequest);
|
|
89
|
+
if (relations && relations.length) {
|
|
90
|
+
this.relation = relations[0];
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
}
|
|
94
|
+
_setBasedOnProduct() {
|
|
95
|
+
if (this.product) {
|
|
96
|
+
this.basedOnProduct = true;
|
|
97
|
+
}
|
|
98
|
+
else { //check transaction (service) for product
|
|
99
|
+
// TODO: assProduct is not a property of transaction right now.
|
|
100
|
+
// this.basedOnProduct = notNill(this._transaction.assProduct);
|
|
101
|
+
// if (this.basedOnProduct) {
|
|
102
|
+
// this._product = this.transaction.assProduct;
|
|
103
|
+
// }
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
TransactionBaseComponent.decorators = [
|
|
108
|
+
{ type: Directive }
|
|
109
|
+
];
|
|
110
|
+
TransactionBaseComponent.ctorParameters = () => [
|
|
111
|
+
{ type: TransactionService }
|
|
112
|
+
];
|
|
113
|
+
TransactionBaseComponent.propDecorators = {
|
|
114
|
+
transaction: [{ type: Input }],
|
|
115
|
+
relationId: [{ type: Input }],
|
|
116
|
+
customerId: [{ type: Input }],
|
|
117
|
+
product: [{ type: Input }],
|
|
118
|
+
relation: [{ type: Input }],
|
|
119
|
+
customer: [{ type: Input }]
|
|
120
|
+
};
|
|
121
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudC9jb3JlL2Jhc2UvdHJhbnNhY3Rpb24tYmFzZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9DLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLHNDQUFzQyxDQUFDO0FBQ3hFLE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSxnRUFBZ0UsQ0FBQztBQUd0RixPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sMkRBQTJELENBQUM7QUFJMUYsT0FBTyxFQUNMLHlCQUF5QixFQUN6Qix5QkFBeUIsRUFDMUIsTUFBTSwwREFBMEQsQ0FBQztBQUlsRSxPQUFPLEVBQUMsZUFBZSxFQUFDLE1BQU0sdURBQXVELENBQUM7QUFHdEYsTUFBTSxPQUFnQix3QkFBd0I7SUEwRjFDLFlBQ3FCLE9BQTJCO1FBQTNCLFlBQU8sR0FBUCxPQUFPLENBQW9CO1FBZHpDLGFBQVEsR0FBdUIseUJBQXlCLENBQUM7UUFHekQsYUFBUSxHQUF1Qix5QkFBeUIsQ0FBQztRQUV6RCxlQUFVLEdBQVksS0FBSyxDQUFDO1FBQzVCLG1CQUFjLEdBQVksS0FBSyxDQUFDO0lBU3BDLENBQUM7SUEzRkosSUFDVyxXQUFXLENBQUMsS0FBOEI7UUFDakQsSUFBSSxDQUFDLFlBQVksR0FBRyxLQUFLLENBQUM7UUFDMUIsSUFBSSxJQUFJLENBQUMsWUFBWSxJQUFJLElBQUksQ0FBQyxZQUFZLENBQUMsZUFBZSxFQUFFO1lBQ3hELElBQUksQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxlQUFlLENBQUMsZUFBZSxLQUFLLGVBQWUsQ0FBQyxZQUFZLENBQUM7U0FDeEc7SUFDTCxDQUFDO0lBRUQsSUFBVyxXQUFXO1FB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akJGLGtCQUFrQjs7OzBCQW1CckIsS0FBSzt5QkFnQ0wsS0FBSzt5QkFjTCxLQUFLO3NCQWNMLEtBQUs7dUJBZUwsS0FBSzt1QkFHTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIElucHV0fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uU2VydmljZX0gZnJvbSBcIi4uLy4uLy4uL3NlcnZpY2UvdHJhbnNhY3Rpb24uc2VydmljZVwiO1xyXG5pbXBvcnQge2lzTmlsbH0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC91dGlscy9mdW5jdGlvbi9pcy1uaWxsLmZ1bmN0aW9uXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25JbmZvUmVzcG9uc2V9IGZyb20gXCJAY29saWpuaXQvdHJhbnNhY3Rpb25hcGkvYnVpbGQvbW9kZWwvdHJhbnNhY3Rpb24taW5mby1yZXNwb25zZS5ib1wiO1xyXG5pbXBvcnQge1RyYW5zYWN0aW9uSW5mb30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1pbmZvLmJvXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25LaW5kfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL2VudW0vdHJhbnNhY3Rpb24ta2luZC5lbnVtXCI7XHJcbmltcG9ydCB7VHJhbnNhY3Rpb25MaW5lSW5mb30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC90cmFuc2FjdGlvbi1saW5lLWluZm8uYm9cIjtcclxuaW1wb3J0IHtUcmFuc2FjdGlvblRvdGFsfSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3RyYW5zYWN0aW9uLXRvdGFsLmJvXCI7XHJcbmltcG9ydCB7UmVsYXRpb25MaXN0T2JqZWN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3JlbGF0aW9uLWxpc3Qtb2JqZWN0LmJvXCI7XHJcbmltcG9ydCB7XHJcbiAgTlVMTF9DVVNUT01FUl9GVUxMX09CSkVDVCxcclxuICBOVUxMX1JFTEFUSU9OX0xJU1RfT0JKRUNUXHJcbn0gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9tb2RlbC9udWwtcmVsYXRpb24tb2JqZWN0XCI7XHJcbmltcG9ydCB7Q3VzdG9tZXJGdWxsT2JqZWN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL2N1c3RvbWVyLWZ1bGwtb2JqZWN0LmJvXCI7XHJcbmltcG9ydCB7bm90TmlsbH0gZnJvbSBcIkBjb2xpam5pdC9jb3JlY29tcG9uZW50c192MTIvbGliL2NvcmUvZnVuY3Rpb24vbm90LW5pbGwuZnVuY3Rpb25cIjtcclxuaW1wb3J0IHtTbGFQcm9kdWN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3NsYS1wcm9kdWN0LmJvXCI7XHJcbmltcG9ydCB7UmVsYXRpb25SZXF1ZXN0fSBmcm9tIFwiQGNvbGlqbml0L3RyYW5zYWN0aW9uYXBpL2J1aWxkL21vZGVsL3JlbGF0aW9uLXJlcXVlc3RcIjtcclxuXHJcbkBEaXJlY3RpdmUoKVxyXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgVHJhbnNhY3Rpb25CYXNlQ29tcG9uZW50IHtcclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgc2V0IHRyYW5zYWN0aW9uKHZhbHVlOiBUcmFuc2FjdGlvbkluZm9SZXNwb25zZSkge1xyXG4gICAgICAgIHRoaXMuX3RyYW5zYWN0aW9uID0gdmFsdWU7XHJcbiAgICAgICAgaWYgKHRoaXMuX3RyYW5zYWN0aW9uICYmIHRoaXMuX3RyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mbykge1xyXG4gICAgICAgICAgICB0aGlzLl9pc1NlcnZpY2UgPSB0aGlzLl90cmFuc2FjdGlvbi50cmFuc2FjdGlvbkluZm8udHJhbnNhY3Rpb25LaW5kID09PSBUcmFuc2FjdGlvbktpbmQuU2VydmljZU9yZGVyO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHRyYW5zYWN0aW9uKCk6IFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb247XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCB0cmFuc2FjdGlvbkluZm8oKTogVHJhbnNhY3Rpb25JbmZvIHtcclxuICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uLnRyYW5zYWN0aW9uSW5mbztcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IHRyYW5zYWN0aW9uTGluZXMoKTogVHJhbnNhY3Rpb25MaW5lSW5mb1tdIHtcclxuICAgICAgICBpZiAodGhpcy5fdHJhbnNhY3Rpb24pIHtcclxuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX3RyYW5zYWN0aW9uLnRyYW5zYWN0aW9uTGluZXM7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgdHJhbnNhY3Rpb25Ub3RhbCgpOiBUcmFuc2FjdGlvblRvdGFsIHtcclxuICAgICAgaWYgKHRoaXMuX3RyYW5zYWN0aW9uKSB7XHJcbiAgICAgICAgICByZXR1cm4gdGhpcy5fdHJhbnNhY3Rpb24udHJhbnNhY3Rpb25Ub3RhbDtcclxuICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBnZXQgaXNTZXJ2aWNlKCk6IGJvb2xlYW4ge1xyXG4gICAgICByZXR1cm4gdGhpcy5faXNTZXJ2aWNlO1xyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgc2V0IHJlbGF0aW9uSWQodmFsdWU6IG51bWJlcikge1xyXG4gICAgICAgIGlmICh2YWx1ZSA9PT0gdW5kZWZpbmVkKSB7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcblxyXG4gICAgICAgIHRoaXMuX3JlbGF0aW9uSWQgPSB2YWx1ZTtcclxuICAgICAgICB0aGlzLl9yZXRyaWV2ZVJlbGF0aW9uKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCByZWxhdGlvbklkKCk6IG51bWJlciB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMuX3JlbGF0aW9uSWQ7XHJcbiAgICB9XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBzZXQgY3VzdG9tZXJJZCh2YWx1ZTogbnVtYmVyKSB7XHJcbiAgICAgICAgaWYgKHZhbHVlID09PSB1bmRlZmluZWQpIHtcclxuICAgICAgICAgICAgcmV0dXJuO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgdGhpcy5fY3VzdG9tZXJJZCA9IHZhbHVlO1xyXG4gICAgICAgIHRoaXMuX3JldHJpZXZlQ3VzdG9tZXIoKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IGN1c3RvbWVySWQoKTogbnVtYmVyIHtcclxuICAgICAgICByZXR1cm4gdGhpcy5fY3VzdG9tZXJJZDtcclxuICAgIH1cclxuXHJcbiAgICBASW5wdXQoKVxyXG4gICAgcHVibGljIHNldCBwcm9kdWN0KHZhbHVlOiBTbGFQcm9kdWN0KSB7XHJcbiAgICAgIHRoaXMuX3Byb2R1Y3QgPSB2YWx1ZTtcclxuICAgICAgdGhpcy5wcm9kdWN0U2V0KCk7XHJcbiAgICAgIHRoaXMuX3NldEJhc2VkT25Qcm9kdWN0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHVibGljIGdldCBwcm9kdWN0KCk6IFNsYVByb2R1Y3Qge1xyXG4gICAgICByZXR1cm4gdGhpcy5fcHJvZHVjdDtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgZ2V0IGlzTmV3KCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIHJldHVybiBpc05pbGwodGhpcy50cmFuc2FjdGlvbikgfHwgaXNOaWxsKHRoaXMudHJhbnNhY3Rpb25JbmZvLnRyYW5zYWN0aW9uTnIpO1xyXG4gICAgfVxyXG5cclxuICAgIEBJbnB1dCgpXHJcbiAgICBwdWJsaWMgcmVsYXRpb246IFJlbGF0aW9uTGlzdE9iamVjdCA9IE5VTExfUkVMQVRJT05fTElTVF9PQkpFQ1Q7XHJcblxyXG4gICAgQElucHV0KClcclxuICAgIHB1YmxpYyBjdXN0b21lcjogQ3VzdG9tZXJGdWxsT2JqZWN0ID0gTlVMTF9DVVNUT01FUl9GVUxMX09CSkVDVDtcclxuXHJcbiAgICBwdWJsaWMgX2lzU2VydmljZTogYm9vbGVhbiA9IGZhbHNlO1xyXG4gICAgcHVibGljIGJhc2VkT25Qcm9kdWN0OiBib29sZWFuID0gZmFsc2U7XHJcblxyXG4gICAgcHJpdmF0ZSBfcmVsYXRpb25JZDogbnVtYmVyO1xyXG4gICAgcHJpdmF0ZSBfY3VzdG9tZXJJZDogbnVtYmVyO1xyXG4gICAgcHJpdmF0ZSBfdHJhbnNhY3Rpb246IFRyYW5zYWN0aW9uSW5mb1Jlc3BvbnNlO1xyXG4gICAgcHJpdmF0ZSBfcHJvZHVjdDogU2xhUHJvZHVjdDtcclxuXHJcbiAgICBjb25zdHJ1Y3RvciAoXHJcbiAgICAgIHByb3RlY3RlZCByZWFkb25seSBzZXJ2aWNlOiBUcmFuc2FjdGlvblNlcnZpY2VcclxuICAgICkge31cclxuXHJcbiAgICBwdWJsaWMgdHJhbnNhY3Rpb25TZXQoKTogdm9pZCB7XHJcbiAgICAgICAgLy8gb3ZlcnJpZGRlbiBieSBkZXNjZW5kZW50c1xyXG4gICAgfVxyXG5cclxuICAgIHB1YmxpYyBwcm9kdWN0U2V0KCk6IHZvaWQge1xyXG4gICAgICAgIC8vIG92ZXJyaWRkZW4gYnkgZGVzY2VuZGVudHNcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGFzeW5jIF9yZXRyaWV2ZUN1c3RvbWVyKCk6IFByb21pc2U8dm9pZD4ge1xyXG4gICAgICAgIHRoaXMuY3VzdG9tZXIgPSBhd2FpdCB0aGlzLnNlcnZpY2UuZ2V0Q3VzdG9tZXJGdWxPYmplY3RCeVJlbGF0aW9uSWQodGhpcy5fY3VzdG9tZXJJZCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBhc3luYyBfcmV0cmlldmVSZWxhdGlvbigpOiBQcm9taXNlPHZvaWQ+IHtcclxuICAgICAgICBjb25zdCByZWxhdGlvblJlcXVlc3Q6IFJlbGF0aW9uUmVxdWVzdCA9IG5ldyBSZWxhdGlvblJlcXVlc3QoKTtcclxuICAgICAgICBsZXQgcmVsYXRpb25zOiBSZWxhdGlvbkxpc3RPYmplY3RbXSA9IFtdO1xyXG4gICAgICAgIHJlbGF0aW9uUmVxdWVzdC5yZWxhdGlvbklkID0gdGhpcy5yZWxhdGlvbklkO1xyXG5cclxuXHJcbiAgICAgICAgcmVsYXRpb25zID0gYXdhaXQgdGhpcy5zZXJ2aWNlLmdldFJlbGF0aW9uTGlzdE9iamVjdHMocmVsYXRpb25SZXF1ZXN0KTtcclxuICAgICAgICBpZiAocmVsYXRpb25zICYmIHJlbGF0aW9ucy5sZW5ndGgpIHtcclxuICAgICAgICAgIHRoaXMucmVsYXRpb24gPSByZWxhdGlvbnNbMF07XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuXHJcbiAgICBwcml2YXRlIF9zZXRCYXNlZE9uUHJvZHVjdCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5wcm9kdWN0KSB7XHJcbiAgICAgICAgICAgIHRoaXMuYmFzZWRPblByb2R1Y3QgPSB0cnVlO1xyXG4gICAgICAgIH0gZWxzZSB7IC8vY2hlY2sgdHJhbnNhY3Rpb24gKHNlcnZpY2UpIGZvciBwcm9kdWN0XHJcbiAgICAgICAgICAgIC8vIFRPRE86IGFzc1Byb2R1Y3QgaXMgbm90IGEgcHJvcGVydHkgb2YgdHJhbnNhY3Rpb24gcmlnaHQgbm93LlxyXG4gICAgICAgICAgICAvLyB0aGlzLmJhc2VkT25Qcm9kdWN0ID0gbm90TmlsbCh0aGlzLl90cmFuc2FjdGlvbi5hc3NQcm9kdWN0KTtcclxuICAgICAgICAgICAgLy8gaWYgKHRoaXMuYmFzZWRPblByb2R1Y3QpIHtcclxuICAgICAgICAgICAgLy8gICAgIHRoaXMuX3Byb2R1Y3QgPSB0aGlzLnRyYW5zYWN0aW9uLmFzc1Byb2R1Y3Q7XHJcbiAgICAgICAgICAgIC8vIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG59XHJcbiJdfQ==
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { Directive, Input, ViewContainerRef } from "@angular/core";
|
|
2
|
+
export class TemplateWrapperDirective {
|
|
3
|
+
constructor(viewContainer) {
|
|
4
|
+
this.viewContainer = viewContainer;
|
|
5
|
+
this.templateWrapper = null;
|
|
6
|
+
this.templateWrapperContext = null;
|
|
7
|
+
}
|
|
8
|
+
ngOnChanges(changes) {
|
|
9
|
+
const recreateView = this._shouldRecreateView(changes);
|
|
10
|
+
if (recreateView) {
|
|
11
|
+
if (this._viewRef) {
|
|
12
|
+
this.viewContainer.remove(this.viewContainer.indexOf(this._viewRef));
|
|
13
|
+
}
|
|
14
|
+
if (this.templateWrapper) {
|
|
15
|
+
this._viewRef = this.viewContainer.createEmbeddedView(this.templateWrapper, this.templateWrapperContext);
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
else {
|
|
19
|
+
if (this._viewRef && this.templateWrapperContext) {
|
|
20
|
+
this._updateExistingContext(this.templateWrapperContext);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
ngOnDestroy() {
|
|
25
|
+
if (this._viewRef) {
|
|
26
|
+
this.viewContainer.remove(this.viewContainer.indexOf(this._viewRef));
|
|
27
|
+
this._viewRef = undefined;
|
|
28
|
+
}
|
|
29
|
+
this.templateWrapper = undefined;
|
|
30
|
+
}
|
|
31
|
+
_shouldRecreateView(changes) {
|
|
32
|
+
const ctxChange = changes["templateWrapperContext"];
|
|
33
|
+
return !!changes["templateWrapper"] || (ctxChange && this._hasContextShapeChanged(ctxChange));
|
|
34
|
+
}
|
|
35
|
+
_hasContextShapeChanged(ctxChange) {
|
|
36
|
+
const prevCtxKeys = Object.keys(ctxChange.previousValue || {});
|
|
37
|
+
const currCtxKeys = Object.keys(ctxChange.currentValue || {});
|
|
38
|
+
if (prevCtxKeys.length === currCtxKeys.length) {
|
|
39
|
+
for (const propName of currCtxKeys) {
|
|
40
|
+
if (prevCtxKeys.indexOf(propName) === -1) {
|
|
41
|
+
return true;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
return false;
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
_updateExistingContext(ctx) {
|
|
51
|
+
for (const propName of Object.keys(ctx)) {
|
|
52
|
+
this._viewRef.context[propName] = this.templateWrapperContext[propName];
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
TemplateWrapperDirective.decorators = [
|
|
57
|
+
{ type: Directive, args: [{
|
|
58
|
+
// eslint-disable-next-line @angular-eslint/directive-selector
|
|
59
|
+
selector: "[templateWrapper]"
|
|
60
|
+
},] }
|
|
61
|
+
];
|
|
62
|
+
TemplateWrapperDirective.ctorParameters = () => [
|
|
63
|
+
{ type: ViewContainerRef }
|
|
64
|
+
];
|
|
65
|
+
TemplateWrapperDirective.propDecorators = {
|
|
66
|
+
templateWrapper: [{ type: Input }],
|
|
67
|
+
templateWrapperContext: [{ type: Input }]
|
|
68
|
+
};
|
|
69
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGVtcGxhdGUtd3JhcHBlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudC9jb3JlL2RpcmVjdGl2ZS90ZW1wbGF0ZS13cmFwcGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLEtBQUssRUFBa0UsZ0JBQWdCLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFNMUksTUFBTSxPQUFPLHdCQUF3QjtJQVNuQyxZQUFzQixhQUErQjtRQUEvQixrQkFBYSxHQUFiLGFBQWEsQ0FBa0I7UUFQOUMsb0JBQWUsR0FBNEIsSUFBSSxDQUFDO1FBR2hELDJCQUFzQixHQUFrQixJQUFJLENBQUM7SUFLcEQsQ0FBQztJQUVELFdBQVcsQ0FBQyxPQUFzQjtRQUNoQyxNQUFNLFlBQVksR0FBWSxJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLENBQUM7UUFFaEUsSUFBSSxZQUFZLEVBQUU7WUFDaEIsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNqQixJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQzthQUN0RTtZQUVELElBQUksSUFBSSxDQUFDLGVBQWUsRUFBRTtnQkFDeEIsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUMsYUFBYSxDQUFDLGtCQUFrQixDQUNuRCxJQUFJLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxDQUFDO2FBQ3REO1NBQ0Y7YUFBTTtZQUNMLElBQUksSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsc0JBQXNCLEVBQUU7Z0JBQ2hELElBQUksQ0FBQyxzQkFBc0IsQ0FBQyxJQUFJLENBQUMsc0JBQXNCLENBQUMsQ0FBQzthQUMxRDtTQUNGO0lBQ0gsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLElBQUksQ0FBQyxRQUFRLEVBQUU7WUFDakIsSUFBSSxDQUFDLGFBQWEsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7WUFDckUsSUFBSSxDQUFDLFFBQVEsR0FBRyxTQUFTLENBQUM7U0FDM0I7UUFDRCxJQUFJLENBQUMsZUFBZSxHQUFHLFNBQVMsQ0FBQztJQUNuQyxDQUFDO0lBRU8sbUJBQW1CLENBQUMsT0FBc0I7UUFDaEQsTUFBTSxTQUFTLEdBQVEsT0FBTyxDQUFDLHdCQUF3QixDQUFDLENBQUM7UUFDekQsT0FBTyxDQUFDLENBQUMsT0FBTyxDQUFDLGlCQUFpQixDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLHVCQUF1QixDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUM7SUFDaEcsQ0FBQztJQUVPLHVCQUF1QixDQUFDLFNBQXVCO1FBQ3JELE1BQU0sV0FBVyxHQUFRLE1BQU0sQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUNwRSxNQUFNLFdBQVcsR0FBUSxNQUFNLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxZQUFZLElBQUksRUFBRSxDQUFDLENBQUM7UUFFbkUsSUFBSSxXQUFXLENBQUMsTUFBTSxLQUFLLFdBQVcsQ0FBQyxNQUFNLEVBQUU7WUFDN0MsS0FBSyxNQUFNLFFBQVEsSUFBSSxXQUFXLEVBQUU7Z0JBQ2xDLElBQUksV0FBVyxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsRUFBRTtvQkFDeEMsT0FBTyxJQUFJLENBQUM7aUJBQ2I7YUFDRjtZQUNELE9BQU8sS0FBSyxDQUFDO1NBQ2Q7YUFBTTtZQUNMLE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDO0lBRU8sc0JBQXNCLENBQUMsR0FBVztRQUN4QyxLQUFLLE1BQU0sUUFBUSxJQUFJLE1BQU0sQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUU7WUFDakMsSUFBSSxDQUFDLFFBQVMsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLEdBQVMsSUFBSSxDQUFDLHNCQUF1QixDQUFDLFFBQVEsQ0FBQyxDQUFDO1NBQ3ZGO0lBQ0gsQ0FBQzs7O1lBcEVGLFNBQVMsU0FBQztnQkFDVCw4REFBOEQ7Z0JBQzlELFFBQVEsRUFBRSxtQkFBbUI7YUFDOUI7OztZQUx5RixnQkFBZ0I7Ozs4QkFPdkcsS0FBSztxQ0FHTCxLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtEaXJlY3RpdmUsIElucHV0LCBPbkNoYW5nZXMsIE9uRGVzdHJveSwgU2ltcGxlQ2hhbmdlLCBTaW1wbGVDaGFuZ2VzLCBUZW1wbGF0ZVJlZiwgVmlld0NvbnRhaW5lclJlZiwgVmlld1JlZn0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAYW5ndWxhci1lc2xpbnQvZGlyZWN0aXZlLXNlbGVjdG9yXHJcbiAgc2VsZWN0b3I6IFwiW3RlbXBsYXRlV3JhcHBlcl1cIlxyXG59KVxyXG5leHBvcnQgY2xhc3MgVGVtcGxhdGVXcmFwcGVyRGlyZWN0aXZlIGltcGxlbWVudHMgT25EZXN0cm95LCBPbkNoYW5nZXMge1xyXG4gIEBJbnB1dCgpXHJcbiAgcHVibGljIHRlbXBsYXRlV3JhcHBlcjogVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPSBudWxsO1xyXG5cclxuICBASW5wdXQoKVxyXG4gIHB1YmxpYyB0ZW1wbGF0ZVdyYXBwZXJDb250ZXh0OiBPYmplY3QgfCBudWxsID0gbnVsbDtcclxuXHJcbiAgcHJpdmF0ZSBfdmlld1JlZjogVmlld1JlZjtcclxuXHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIHZpZXdDb250YWluZXI6IFZpZXdDb250YWluZXJSZWYpIHtcclxuICB9XHJcblxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGNvbnN0IHJlY3JlYXRlVmlldzogYm9vbGVhbiA9IHRoaXMuX3Nob3VsZFJlY3JlYXRlVmlldyhjaGFuZ2VzKTtcclxuXHJcbiAgICBpZiAocmVjcmVhdGVWaWV3KSB7XHJcbiAgICAgIGlmICh0aGlzLl92aWV3UmVmKSB7XHJcbiAgICAgICAgdGhpcy52aWV3Q29udGFpbmVyLnJlbW92ZSh0aGlzLnZpZXdDb250YWluZXIuaW5kZXhPZih0aGlzLl92aWV3UmVmKSk7XHJcbiAgICAgIH1cclxuXHJcbiAgICAgIGlmICh0aGlzLnRlbXBsYXRlV3JhcHBlcikge1xyXG4gICAgICAgIHRoaXMuX3ZpZXdSZWYgPSB0aGlzLnZpZXdDb250YWluZXIuY3JlYXRlRW1iZWRkZWRWaWV3KFxyXG4gICAgICAgICAgdGhpcy50ZW1wbGF0ZVdyYXBwZXIsIHRoaXMudGVtcGxhdGVXcmFwcGVyQ29udGV4dCk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGlmICh0aGlzLl92aWV3UmVmICYmIHRoaXMudGVtcGxhdGVXcmFwcGVyQ29udGV4dCkge1xyXG4gICAgICAgIHRoaXMuX3VwZGF0ZUV4aXN0aW5nQ29udGV4dCh0aGlzLnRlbXBsYXRlV3JhcHBlckNvbnRleHQpO1xyXG4gICAgICB9XHJcbiAgICB9XHJcbiAgfVxyXG5cclxuICBuZ09uRGVzdHJveSgpOiB2b2lkIHtcclxuICAgIGlmICh0aGlzLl92aWV3UmVmKSB7XHJcbiAgICAgIHRoaXMudmlld0NvbnRhaW5lci5yZW1vdmUodGhpcy52aWV3Q29udGFpbmVyLmluZGV4T2YodGhpcy5fdmlld1JlZikpO1xyXG4gICAgICB0aGlzLl92aWV3UmVmID0gdW5kZWZpbmVkO1xyXG4gICAgfVxyXG4gICAgdGhpcy50ZW1wbGF0ZVdyYXBwZXIgPSB1bmRlZmluZWQ7XHJcbiAgfVxyXG5cclxuICBwcml2YXRlIF9zaG91bGRSZWNyZWF0ZVZpZXcoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgY3R4Q2hhbmdlOiBhbnkgPSBjaGFuZ2VzW1widGVtcGxhdGVXcmFwcGVyQ29udGV4dFwiXTtcclxuICAgIHJldHVybiAhIWNoYW5nZXNbXCJ0ZW1wbGF0ZVdyYXBwZXJcIl0gfHwgKGN0eENoYW5nZSAmJiB0aGlzLl9oYXNDb250ZXh0U2hhcGVDaGFuZ2VkKGN0eENoYW5nZSkpO1xyXG4gIH1cclxuXHJcbiAgcHJpdmF0ZSBfaGFzQ29udGV4dFNoYXBlQ2hhbmdlZChjdHhDaGFuZ2U6IFNpbXBsZUNoYW5nZSk6IGJvb2xlYW4ge1xyXG4gICAgY29uc3QgcHJldkN0eEtleXM6IGFueSA9IE9iamVjdC5rZXlzKGN0eENoYW5nZS5wcmV2aW91c1ZhbHVlIHx8IHt9KTtcclxuICAgIGNvbnN0IGN1cnJDdHhLZXlzOiBhbnkgPSBPYmplY3Qua2V5cyhjdHhDaGFuZ2UuY3VycmVudFZhbHVlIHx8IHt9KTtcclxuXHJcbiAgICBpZiAocHJldkN0eEtleXMubGVuZ3RoID09PSBjdXJyQ3R4S2V5cy5sZW5ndGgpIHtcclxuICAgICAgZm9yIChjb25zdCBwcm9wTmFtZSBvZiBjdXJyQ3R4S2V5cykge1xyXG4gICAgICAgIGlmIChwcmV2Q3R4S2V5cy5pbmRleE9mKHByb3BOYW1lKSA9PT0gLTEpIHtcclxuICAgICAgICAgIHJldHVybiB0cnVlO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICByZXR1cm4gZmFsc2U7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICByZXR1cm4gdHJ1ZTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIHByaXZhdGUgX3VwZGF0ZUV4aXN0aW5nQ29udGV4dChjdHg6IE9iamVjdCk6IHZvaWQge1xyXG4gICAgZm9yIChjb25zdCBwcm9wTmFtZSBvZiBPYmplY3Qua2V5cyhjdHgpKSB7XHJcbiAgICAgICg8YW55PnRoaXMuX3ZpZXdSZWYpLmNvbnRleHRbcHJvcE5hbWVdID0gKDxhbnk+dGhpcy50ZW1wbGF0ZVdyYXBwZXJDb250ZXh0KVtwcm9wTmFtZV07XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
|
|
@@ -21,4 +21,4 @@ StockStatusIndicatorComponent.decorators = [
|
|
|
21
21
|
StockStatusIndicatorComponent.propDecorators = {
|
|
22
22
|
model: [{ type: Input }]
|
|
23
23
|
};
|
|
24
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3RvY2stc3RhdHVzLWluZGljYXRvci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvYXBwL2NvbXBvbmVudC9jb3JlL3N0b2NrLXN0YXR1cy1pbmRpY2F0b3Ivc3RvY2stc3RhdHVzLWluZGljYXRvci5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLFNBQVMsRUFBRSxLQUFLLEVBQVMsTUFBTSxlQUFlLENBQUM7QUFnQnZELHlFQUF5RTtBQUN6RSxNQUFNLE9BQU8sNkJBQTZCO0lBSXhDLElBQVcsVUFBVTtRQUNuQixPQUFPLElBQUksQ0FBQyxLQUFLLENBQUM7SUFDcEIsQ0FBQzs7O1lBcEJGLFNBQVMsU0FBQztnQkFDVCxRQUFRLEVBQUUsd0JBQXdCO2dCQUNsQyxRQUFRLEVBQUU7Ozs7OztLQU1QOzthQUlKOzs7b0JBR0UsS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgT25Jbml0fSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtTdG9ja1N0YXR1c30gZnJvbSBcIkBjb2xpam5pdC90cmFuc2FjdGlvbmFwaS9idWlsZC9lbnVtL3JlZmNvZGUvc3RvY2stc3RhdHVzLmVudW1cIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiBcInN0b2NrLXN0YXR1cy1pbmRpY2F0b3JcIixcbiAgdGVtcGxhdGU6IGBcbiAgICAgICAgPGRpdiBbY2xhc3NdPVwic3RvY2tDbGFzc1wiPlxuICAgICAgICAgICAgPGRpdiBjbGFzcz1cInNxdWFyZS0xXCI+PC9kaXY+XG4gICAgICAgICAgICA8ZGl2IGNsYXNzPVwic3F1YXJlLTJcIj48L2Rpdj5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJzcXVhcmUtM1wiPjwvZGl2PlxuICAgICAgICA8L2Rpdj5cbiAgICBgLFxuICBzdHlsZVVybHM6IFtcbiAgICBcIi4vc3RvY2stc3RhdHVzLWluZGljYXRvci5jb21wb25lbnQuc2Nzc1wiXG4gIF1cbn0pXG4vLyBDb21wb25lbnQgdGhhdCB2aXN1YWxseSBzaG93cyBhIHN0b2NrIHN0YXR1cyB3aXRoIHRocmVlIGNvbG9yZWQgYm94ZXMuXG5leHBvcnQgY2xhc3MgU3RvY2tTdGF0dXNJbmRpY2F0b3JDb21wb25lbnQge1xuICBASW5wdXQoKVxuICBwdWJsaWMgbW9kZWw6IFN0b2NrU3RhdHVzO1xuXG4gIHB1YmxpYyBnZXQgc3RvY2tDbGFzcygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLm1vZGVsO1xuICB9XG59XG4iXX0=
|