@vendure/admin-ui 1.7.4 → 1.8.1

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.
Files changed (228) hide show
  1. package/bundles/vendure-admin-ui-catalog.umd.js +902 -74
  2. package/bundles/vendure-admin-ui-catalog.umd.js.map +1 -1
  3. package/bundles/vendure-admin-ui-core.umd.js +2392 -820
  4. package/bundles/vendure-admin-ui-core.umd.js.map +1 -1
  5. package/bundles/vendure-admin-ui-customer.umd.js +4 -3
  6. package/bundles/vendure-admin-ui-customer.umd.js.map +1 -1
  7. package/bundles/vendure-admin-ui-dashboard.umd.js +3 -1
  8. package/bundles/vendure-admin-ui-dashboard.umd.js.map +1 -1
  9. package/bundles/vendure-admin-ui-order.umd.js +781 -175
  10. package/bundles/vendure-admin-ui-order.umd.js.map +1 -1
  11. package/bundles/vendure-admin-ui-settings.umd.js +5 -4
  12. package/bundles/vendure-admin-ui-settings.umd.js.map +1 -1
  13. package/bundles/vendure-admin-ui-system.umd.js +1 -1
  14. package/catalog/catalog.module.d.ts +3 -0
  15. package/catalog/components/assign-to-channel-dialog/assign-to-channel-dialog.component.d.ts +17 -0
  16. package/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.component.d.ts +38 -0
  17. package/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.graphql.d.ts +4 -0
  18. package/catalog/components/collection-list/collection-list-bulk-actions.d.ts +6 -0
  19. package/catalog/components/collection-list/collection-list.component.d.ts +7 -5
  20. package/catalog/components/collection-tree/collection-tree-node.component.d.ts +8 -4
  21. package/catalog/components/collection-tree/collection-tree.component.d.ts +2 -1
  22. package/catalog/components/facet-list/facet-list-bulk-actions.d.ts +5 -0
  23. package/catalog/components/facet-list/facet-list.component.d.ts +2 -1
  24. package/catalog/components/product-list/product-list-bulk-actions.d.ts +6 -0
  25. package/catalog/components/product-list/product-list.component.d.ts +2 -1
  26. package/catalog/public_api.d.ts +6 -0
  27. package/catalog/vendure-admin-ui-catalog.metadata.json +1 -1
  28. package/core/common/component-registry-types.d.ts +1 -1
  29. package/core/common/generated-types.d.ts +609 -3
  30. package/core/common/utilities/bulk-action-utils.d.ts +19 -0
  31. package/core/common/utilities/selection-manager.d.ts +7 -0
  32. package/core/common/version.d.ts +1 -1
  33. package/core/data/definitions/collection-definitions.d.ts +3 -0
  34. package/core/data/definitions/facet-definitions.d.ts +3 -0
  35. package/core/data/definitions/order-definitions.d.ts +12 -0
  36. package/core/data/definitions/product-definitions.d.ts +1 -0
  37. package/core/data/providers/collection-data.service.d.ts +4 -1
  38. package/core/data/providers/facet-data.service.d.ts +4 -1
  39. package/core/data/providers/order-data.service.d.ts +18 -1
  40. package/core/data/providers/product-data.service.d.ts +1 -0
  41. package/core/providers/bulk-action-registry/bulk-action-registry.service.d.ts +6 -0
  42. package/core/providers/bulk-action-registry/bulk-action-types.d.ts +149 -0
  43. package/core/providers/bulk-action-registry/register-bulk-action.d.ts +53 -0
  44. package/core/providers/modal/modal.service.d.ts +2 -0
  45. package/core/providers/nav-builder/nav-builder-types.d.ts +1 -0
  46. package/core/public_api.d.ts +18 -1
  47. package/core/shared/components/asset-gallery/asset-gallery.component.d.ts +3 -3
  48. package/core/shared/components/bulk-action-menu/bulk-action-menu.component.d.ts +29 -0
  49. package/core/shared/components/data-table/data-table.component.d.ts +26 -7
  50. package/core/shared/components/dropdown/dropdown-menu.component.d.ts +1 -0
  51. package/core/shared/components/radio-card/radio-card-fieldset.component.d.ts +21 -0
  52. package/core/shared/components/radio-card/radio-card.component.d.ts +19 -0
  53. package/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.component.d.ts +28 -0
  54. package/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.service.d.ts +31 -0
  55. package/core/shared/components/rich-text-editor/prosemirror/custom-nodes.d.ts +4 -0
  56. package/core/shared/components/rich-text-editor/prosemirror/inputrules.d.ts +5 -5
  57. package/core/shared/components/rich-text-editor/prosemirror/menu/links.d.ts +1 -1
  58. package/core/shared/components/rich-text-editor/prosemirror/menu/menu-common.d.ts +12 -0
  59. package/core/shared/components/rich-text-editor/prosemirror/menu/menu-plugin.d.ts +9 -0
  60. package/core/shared/components/rich-text-editor/prosemirror/menu/sub-menu-with-icon.d.ts +14 -0
  61. package/core/shared/components/rich-text-editor/prosemirror/plugins/image-plugin.d.ts +7 -0
  62. package/core/shared/components/rich-text-editor/prosemirror/plugins/link-select-plugin.d.ts +1 -1
  63. package/core/shared/components/rich-text-editor/prosemirror/plugins/raw-editor-plugin.d.ts +7 -0
  64. package/core/shared/components/rich-text-editor/prosemirror/plugins/tables-plugin.d.ts +13 -0
  65. package/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.d.ts +7 -3
  66. package/core/shared/components/rich-text-editor/prosemirror/types.d.ts +0 -2
  67. package/core/shared/components/rich-text-editor/raw-html-dialog/raw-html-dialog.component.d.ts +18 -0
  68. package/core/shared/components/rich-text-editor/rich-text-editor.component.d.ts +6 -2
  69. package/core/shared/dynamic-form-inputs/code-editor-form-input/base-code-editor-form-input.component.d.ts +27 -0
  70. package/core/shared/dynamic-form-inputs/code-editor-form-input/html-editor-form-input.component.d.ts +19 -0
  71. package/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.d.ts +5 -17
  72. package/core/shared/dynamic-form-inputs/register-dynamic-input-components.d.ts +2 -1
  73. package/core/vendure-admin-ui-core.metadata.json +1 -1
  74. package/customer/components/customer-group-member-list/customer-group-member-list.component.d.ts +11 -4
  75. package/customer/vendure-admin-ui-customer.metadata.json +1 -1
  76. package/esm2015/catalog/catalog.module.js +25 -2
  77. package/esm2015/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.js +4 -1
  78. package/esm2015/catalog/components/assign-to-channel-dialog/assign-to-channel-dialog.component.js +51 -0
  79. package/esm2015/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.component.js +89 -0
  80. package/esm2015/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.graphql.js +69 -0
  81. package/esm2015/catalog/components/collection-detail/collection-detail.component.js +3 -3
  82. package/esm2015/catalog/components/collection-list/collection-list-bulk-actions.js +147 -0
  83. package/esm2015/catalog/components/collection-list/collection-list.component.js +17 -8
  84. package/esm2015/catalog/components/collection-tree/collection-tree-node.component.js +16 -7
  85. package/esm2015/catalog/components/collection-tree/collection-tree.component.js +3 -2
  86. package/esm2015/catalog/components/facet-list/facet-list-bulk-actions.js +208 -0
  87. package/esm2015/catalog/components/facet-list/facet-list.component.js +13 -4
  88. package/esm2015/catalog/components/product-detail/product-detail.component.js +35 -23
  89. package/esm2015/catalog/components/product-list/product-list-bulk-actions.js +173 -0
  90. package/esm2015/catalog/components/product-list/product-list.component.js +10 -5
  91. package/esm2015/catalog/components/product-variants-list/product-variants-list.component.js +2 -2
  92. package/esm2015/catalog/providers/routing/collection-resolver.js +2 -1
  93. package/esm2015/catalog/public_api.js +7 -1
  94. package/esm2015/core/common/component-registry-types.js +1 -1
  95. package/esm2015/core/common/generated-types.js +5 -1
  96. package/esm2015/core/common/introspection-result.js +296 -191
  97. package/esm2015/core/common/utilities/bulk-action-utils.js +44 -0
  98. package/esm2015/core/common/utilities/selection-manager.js +33 -1
  99. package/esm2015/core/common/version.js +2 -2
  100. package/esm2015/core/components/breadcrumb/breadcrumb.component.js +1 -1
  101. package/esm2015/core/data/definitions/collection-definitions.js +30 -1
  102. package/esm2015/core/data/definitions/facet-definitions.js +31 -1
  103. package/esm2015/core/data/definitions/order-definitions.js +114 -1
  104. package/esm2015/core/data/definitions/product-definitions.js +15 -1
  105. package/esm2015/core/data/providers/collection-data.service.js +17 -2
  106. package/esm2015/core/data/providers/customer-data.service.js +8 -4
  107. package/esm2015/core/data/providers/facet-data.service.js +18 -2
  108. package/esm2015/core/data/providers/order-data.service.js +38 -2
  109. package/esm2015/core/data/providers/product-data.service.js +7 -2
  110. package/esm2015/core/data/utils/remove-readonly-custom-fields.js +5 -1
  111. package/esm2015/core/providers/bulk-action-registry/bulk-action-registry.service.js +27 -0
  112. package/esm2015/core/providers/bulk-action-registry/bulk-action-types.js +2 -0
  113. package/esm2015/core/providers/bulk-action-registry/register-bulk-action.js +63 -0
  114. package/esm2015/core/providers/dashboard-widget/dashboard-widget.service.js +1 -4
  115. package/esm2015/core/providers/modal/modal.service.js +2 -1
  116. package/esm2015/core/providers/nav-builder/nav-builder-types.js +1 -1
  117. package/esm2015/core/public_api.js +19 -2
  118. package/esm2015/core/shared/components/action-bar/action-bar.component.js +4 -8
  119. package/esm2015/core/shared/components/asset-gallery/asset-gallery.component.js +2 -2
  120. package/esm2015/core/shared/components/bulk-action-menu/bulk-action-menu.component.js +99 -0
  121. package/esm2015/core/shared/components/data-table/data-table.component.js +64 -15
  122. package/esm2015/core/shared/components/dropdown/dropdown-menu.component.js +4 -3
  123. package/esm2015/core/shared/components/facet-value-selector/facet-value-selector.component.js +2 -2
  124. package/esm2015/core/shared/components/language-selector/language-selector.component.js +2 -2
  125. package/esm2015/core/shared/components/order-state-label/order-state-label.component.js +2 -1
  126. package/esm2015/core/shared/components/product-search-input/product-search-input.component.js +1 -1
  127. package/esm2015/core/shared/components/product-selector/product-selector.component.js +1 -1
  128. package/esm2015/core/shared/components/radio-card/radio-card-fieldset.component.js +57 -0
  129. package/esm2015/core/shared/components/radio-card/radio-card.component.js +54 -0
  130. package/esm2015/core/shared/components/rich-text-editor/external-image-dialog/external-image-dialog.component.js +2 -2
  131. package/esm2015/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.component.js +140 -0
  132. package/esm2015/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.service.js +45 -0
  133. package/esm2015/core/shared/components/rich-text-editor/prosemirror/custom-nodes.js +60 -0
  134. package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/links.js +4 -4
  135. package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/menu-common.js +23 -1
  136. package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/menu-plugin.js +12 -0
  137. package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/menu.js +73 -18
  138. package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/sub-menu-with-icon.js +16 -0
  139. package/esm2015/core/shared/components/rich-text-editor/prosemirror/plugins/image-plugin.js +100 -0
  140. package/esm2015/core/shared/components/rich-text-editor/prosemirror/plugins/raw-editor-plugin.js +97 -0
  141. package/esm2015/core/shared/components/rich-text-editor/prosemirror/plugins/tables-plugin.js +166 -0
  142. package/esm2015/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.js +47 -17
  143. package/esm2015/core/shared/components/rich-text-editor/prosemirror/types.js +1 -1
  144. package/esm2015/core/shared/components/rich-text-editor/raw-html-dialog/raw-html-dialog.component.js +57 -0
  145. package/esm2015/core/shared/components/rich-text-editor/rich-text-editor.component.js +20 -9
  146. package/esm2015/core/shared/components/simple-dialog/simple-dialog.component.js +2 -2
  147. package/esm2015/core/shared/dynamic-form-inputs/code-editor-form-input/base-code-editor-form-input.component.js +59 -0
  148. package/esm2015/core/shared/dynamic-form-inputs/code-editor-form-input/html-editor-form-input.component.js +66 -0
  149. package/esm2015/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.js +47 -84
  150. package/esm2015/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.js +3 -3
  151. package/esm2015/core/shared/dynamic-form-inputs/register-dynamic-input-components.js +3 -1
  152. package/esm2015/core/shared/pipes/state-i18n-token.pipe.js +2 -1
  153. package/esm2015/core/shared/shared.module.js +13 -1
  154. package/esm2015/customer/components/customer-group-list/customer-group-list.component.js +2 -2
  155. package/esm2015/customer/components/customer-group-member-list/customer-group-member-list.component.js +6 -6
  156. package/esm2015/customer/components/customer-list/customer-list.component.js +2 -2
  157. package/esm2015/dashboard/dashboard.module.js +6 -2
  158. package/esm2015/order/components/coupon-code-selector/coupon-code-selector.component.js +42 -0
  159. package/esm2015/order/components/draft-order-detail/draft-order-detail.component.js +195 -0
  160. package/esm2015/order/components/draft-order-variant-selector/draft-order-variant-selector.component.js +59 -0
  161. package/esm2015/order/components/order-detail/order-detail.component.js +2 -2
  162. package/esm2015/order/components/order-editor/order-editor.component.js +5 -11
  163. package/esm2015/order/components/order-list/order-list.component.js +20 -4
  164. package/esm2015/order/components/order-table/order-table.component.js +16 -5
  165. package/esm2015/order/components/select-address-dialog/select-address-dialog.component.js +91 -0
  166. package/esm2015/order/components/select-address-dialog/select-address-dialog.graphql.js +14 -0
  167. package/esm2015/order/components/select-customer-dialog/select-customer-dialog.component.js +59 -0
  168. package/esm2015/order/components/select-shipping-method-dialog/select-shipping-method-dialog.component.js +30 -0
  169. package/esm2015/order/order.module.js +13 -1
  170. package/esm2015/order/order.routes.js +26 -7
  171. package/esm2015/order/providers/routing/order-resolver.js +29 -12
  172. package/esm2015/order/providers/routing/order.guard.js +41 -0
  173. package/esm2015/order/public_api.js +9 -1
  174. package/esm2015/settings/components/country-list/country-list.component.js +2 -2
  175. package/esm2015/settings/components/profile/profile.component.js +2 -2
  176. package/esm2015/settings/components/zone-list/zone-list.component.js +2 -2
  177. package/esm2015/settings/components/zone-member-list/zone-member-list.component.js +2 -2
  178. package/esm2015/system/components/health-check/health-check.component.js +1 -1
  179. package/fesm2015/vendure-admin-ui-catalog.js +835 -61
  180. package/fesm2015/vendure-admin-ui-catalog.js.map +1 -1
  181. package/fesm2015/vendure-admin-ui-core.js +3122 -1514
  182. package/fesm2015/vendure-admin-ui-core.js.map +1 -1
  183. package/fesm2015/vendure-admin-ui-customer.js +7 -7
  184. package/fesm2015/vendure-admin-ui-customer.js.map +1 -1
  185. package/fesm2015/vendure-admin-ui-dashboard.js +5 -1
  186. package/fesm2015/vendure-admin-ui-dashboard.js.map +1 -1
  187. package/fesm2015/vendure-admin-ui-order.js +780 -232
  188. package/fesm2015/vendure-admin-ui-order.js.map +1 -1
  189. package/fesm2015/vendure-admin-ui-settings.js +4 -4
  190. package/fesm2015/vendure-admin-ui-settings.js.map +1 -1
  191. package/fesm2015/vendure-admin-ui-system.js +1 -1
  192. package/order/components/coupon-code-selector/coupon-code-selector.component.d.ts +18 -0
  193. package/order/components/draft-order-detail/draft-order-detail.component.d.ts +49 -0
  194. package/order/components/draft-order-variant-selector/draft-order-variant-selector.component.d.ts +21 -0
  195. package/order/components/order-editor/order-editor.component.d.ts +1 -6
  196. package/order/components/order-list/order-list.component.d.ts +1 -0
  197. package/order/components/order-table/order-table.component.d.ts +11 -2
  198. package/order/components/select-address-dialog/select-address-dialog.component.d.ts +24 -0
  199. package/order/components/select-address-dialog/select-address-dialog.graphql.d.ts +1 -0
  200. package/order/components/select-customer-dialog/select-customer-dialog.component.d.ts +22 -0
  201. package/order/components/select-shipping-method-dialog/select-shipping-method-dialog.component.d.ts +16 -0
  202. package/order/providers/routing/order-resolver.d.ts +8 -5
  203. package/order/providers/routing/order.guard.d.ts +9 -0
  204. package/order/public_api.d.ts +8 -0
  205. package/order/vendure-admin-ui-order.metadata.json +1 -1
  206. package/package.json +13 -12
  207. package/settings/components/zone-member-list/zone-member-list.component.d.ts +3 -1
  208. package/settings/vendure-admin-ui-settings.metadata.json +1 -1
  209. package/static/i18n-messages/cs.json +33 -0
  210. package/static/i18n-messages/de.json +33 -0
  211. package/static/i18n-messages/en.json +36 -4
  212. package/static/i18n-messages/es.json +33 -0
  213. package/static/i18n-messages/fr.json +33 -0
  214. package/static/i18n-messages/it.json +33 -0
  215. package/static/i18n-messages/pl.json +33 -0
  216. package/static/i18n-messages/pt_BR.json +33 -0
  217. package/static/i18n-messages/pt_PT.json +33 -0
  218. package/static/i18n-messages/ru.json +33 -0
  219. package/static/i18n-messages/uk.json +33 -0
  220. package/static/i18n-messages/zh_Hans.json +33 -0
  221. package/static/i18n-messages/zh_Hant.json +33 -0
  222. package/static/styles/global/_forms.scss +4 -2
  223. package/static/styles/global/_overrides.scss +1 -1
  224. package/static/styles/global/_utilities.scss +4 -0
  225. package/static/theme.min.css +1 -1
  226. package/system/vendure-admin-ui-system.metadata.json +1 -1
  227. package/core/shared/components/rich-text-editor/prosemirror/menu/images.d.ts +0 -4
  228. package/esm2015/core/shared/components/rich-text-editor/prosemirror/menu/images.js +0 -36
@@ -1,8 +1,11 @@
1
- import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
1
+ import { ChangeDetectionStrategy, Component, EventEmitter, Input, Output } from '@angular/core';
2
2
  import { FormControl, FormGroup } from '@angular/forms';
3
3
  import { AdjustmentType } from '@vendure/admin-ui/core';
4
4
  export class OrderTableComponent {
5
5
  constructor() {
6
+ this.isDraft = false;
7
+ this.adjust = new EventEmitter();
8
+ this.remove = new EventEmitter();
6
9
  this.orderLineCustomFieldsVisible = false;
7
10
  this.customFieldsForLine = {};
8
11
  }
@@ -16,6 +19,11 @@ export class OrderTableComponent {
16
19
  this.orderLineCustomFieldsVisible = this.orderLineCustomFields.length < 2;
17
20
  this.getLineCustomFields();
18
21
  }
22
+ draftInputBlur(line, quantity) {
23
+ if (line.quantity !== quantity) {
24
+ this.adjust.emit({ lineId: line.id, quantity });
25
+ }
26
+ }
19
27
  toggleOrderLineCustomFields() {
20
28
  this.orderLineCustomFieldsVisible = !this.orderLineCustomFieldsVisible;
21
29
  }
@@ -64,13 +72,16 @@ export class OrderTableComponent {
64
72
  OrderTableComponent.decorators = [
65
73
  { type: Component, args: [{
66
74
  selector: 'vdr-order-table',
67
- template: "<table class=\"order-table table\">\r\n <thead>\r\n <tr>\r\n <th></th>\r\n <th>{{ 'order.product-name' | translate }}</th>\r\n <th>{{ 'order.product-sku' | translate }}</th>\r\n <th>{{ 'order.unit-price' | translate }}</th>\r\n <th>{{ 'order.quantity' | translate }}</th>\r\n <th>{{ 'order.total' | translate }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <ng-container *ngFor=\"let line of order.lines\">\r\n <tr class=\"order-line\" [class.is-cancelled]=\"line.quantity === 0\">\r\n <td class=\"align-middle thumb\">\r\n <img *ngIf=\"line.featuredAsset\" [src]=\"line.featuredAsset | assetPreview: 'tiny'\" />\r\n </td>\r\n <td class=\"align-middle name\">{{ line.productVariant.name }}</td>\r\n <td class=\"align-middle sku\">{{ line.productVariant.sku }}</td>\r\n <td class=\"align-middle unit-price\">\r\n {{ line.unitPriceWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ line.unitPrice | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n <td class=\"align-middle quantity\">\r\n {{ line.quantity }}\r\n <vdr-line-refunds [line]=\"line\" [payments]=\"order.payments\"></vdr-line-refunds>\r\n <vdr-line-fulfillment [line]=\"line\" [orderState]=\"order.state\"></vdr-line-fulfillment>\r\n </td>\r\n <td class=\"align-middle total\">\r\n {{ line.linePriceWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ line.linePrice | localeCurrency: order.currencyCode }}\r\n </div>\r\n\r\n <ng-container *ngIf=\"getLineDiscounts(line) as discounts\">\r\n <vdr-dropdown *ngIf=\"discounts.length\">\r\n <div class=\"promotions-label\" vdrDropdownTrigger>\r\n {{ 'order.promotions-applied' | translate }}\r\n </div>\r\n <vdr-dropdown-menu>\r\n <div class=\"line-promotion\" *ngFor=\"let discount of discounts\">\r\n <a class=\"promotion-name\" [routerLink]=\"getPromotionLink(discount)\">{{\r\n discount.description\r\n }}</a>\r\n <div class=\"promotion-amount\">\r\n {{ discount.amountWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ discount.amount | localeCurrency: order.currencyCode }}\r\n </div>\r\n </div>\r\n </div>\r\n </vdr-dropdown-menu>\r\n </vdr-dropdown>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n <ng-container *ngIf=\"customFieldsForLine[line.id] as customFields\">\r\n <tr *ngIf=\"customFields.length\">\r\n <td colspan=\"6\" class=\"custom-fields-row\">\r\n <div class=\"order-line-custom-fields\">\r\n <div class=\"custom-field\" *ngFor=\"let field of customFields\">\r\n <vdr-custom-field-control\r\n [compact]=\"true\"\r\n [readonly]=\"true\"\r\n [customField]=\"field.config\"\r\n [customFieldsFormGroup]=\"field.formGroup\"\r\n ></vdr-custom-field-control>\r\n </div>\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </ng-container>\r\n <tr class=\"surcharge\" *ngFor=\"let surcharge of order.surcharges\">\r\n <td class=\"align-middle name left\" colspan=\"2\">{{ surcharge.description }}</td>\r\n <td class=\"align-middle sku\">{{ surcharge.sku }}</td>\r\n <td class=\"align-middle\" colspan=\"2\"></td>\r\n <td class=\"align-middle total\">\r\n {{ surcharge.priceWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ surcharge.price | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n </tr>\r\n <ng-container *ngFor=\"let discount of order.discounts\">\r\n <tr class=\"order-adjustment\" *ngIf=\"discount.type !== 'OTHER'\">\r\n <td colspan=\"5\" class=\"left clr-align-middle\">\r\n <a [routerLink]=\"getPromotionLink(discount)\">{{ discount.description }}</a>\r\n <vdr-chip *ngIf=\"getCouponCodeForAdjustment(order, discount) as couponCode\">{{\r\n couponCode\r\n }}</vdr-chip>\r\n </td>\r\n <td class=\"clr-align-middle\">\r\n {{ discount.amountWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ discount.amount | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-container>\r\n <tr class=\"sub-total\">\r\n <td class=\"left clr-align-middle\">{{ 'order.sub-total' | translate }}</td>\r\n <td colspan=\"4\"></td>\r\n <td class=\"clr-align-middle\">\r\n {{ order.subTotalWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ order.subTotal | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n </tr>\r\n <tr class=\"shipping\">\r\n <td class=\"left clr-align-middle\">{{ 'order.shipping' | translate }}</td>\r\n <td class=\"clr-align-middle\">{{ getShippingNames(order) }}</td>\r\n <td colspan=\"3\"></td>\r\n <td class=\"clr-align-middle\">\r\n {{ order.shippingWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ order.shipping | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n </tr>\r\n <tr class=\"total\">\r\n <td class=\"left clr-align-middle\">{{ 'order.total' | translate }}</td>\r\n <td colspan=\"4\"></td>\r\n <td class=\"clr-align-middle\">\r\n {{ order.totalWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ order.total | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n",
75
+ template: "<table class=\"order-table table\">\r\n <thead>\r\n <tr>\r\n <th></th>\r\n <th>{{ 'order.product-name' | translate }}</th>\r\n <th>{{ 'order.product-sku' | translate }}</th>\r\n <th>{{ 'order.unit-price' | translate }}</th>\r\n <th>{{ 'order.quantity' | translate }}</th>\r\n <th>{{ 'order.total' | translate }}</th>\r\n </tr>\r\n </thead>\r\n <tbody>\r\n <ng-container *ngFor=\"let line of order.lines\">\r\n <tr class=\"order-line\" [class.is-cancelled]=\"line.quantity === 0\">\r\n <td class=\"align-middle thumb\">\r\n <img *ngIf=\"line.featuredAsset\" [src]=\"line.featuredAsset | assetPreview: 'tiny'\" />\r\n </td>\r\n <td class=\"align-middle name\">{{ line.productVariant.name }}</td>\r\n <td class=\"align-middle sku\">{{ line.productVariant.sku }}</td>\r\n <td class=\"align-middle unit-price\">\r\n {{ line.unitPriceWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ line.unitPrice | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n <td class=\"align-middle quantity\">\r\n <ng-container *ngIf=\"!isDraft; else draft\">\r\n {{ line.quantity }}\r\n </ng-container>\r\n <ng-template #draft>\r\n <div class=\"flex\">\r\n <input\r\n class=\"draft-qty\"\r\n type=\"number\"\r\n min=\"0\"\r\n #qtyInput\r\n [value]=\"line.quantity\"\r\n (blur)=\"draftInputBlur(line, qtyInput.valueAsNumber)\"\r\n />\r\n <button class=\"icon-button\" (click)=\"remove.emit({ lineId: line.id })\">\r\n <clr-icon shape=\"trash\"></clr-icon>\r\n </button>\r\n </div>\r\n </ng-template>\r\n <vdr-line-refunds [line]=\"line\" [payments]=\"order.payments\"></vdr-line-refunds>\r\n <vdr-line-fulfillment [line]=\"line\" [orderState]=\"order.state\"></vdr-line-fulfillment>\r\n </td>\r\n <td class=\"align-middle total\">\r\n {{ line.linePriceWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ line.linePrice | localeCurrency: order.currencyCode }}\r\n </div>\r\n\r\n <ng-container *ngIf=\"getLineDiscounts(line) as discounts\">\r\n <vdr-dropdown *ngIf=\"discounts.length\">\r\n <div class=\"promotions-label\" vdrDropdownTrigger>\r\n {{ 'order.promotions-applied' | translate }}\r\n </div>\r\n <vdr-dropdown-menu>\r\n <div class=\"line-promotion\" *ngFor=\"let discount of discounts\">\r\n <a class=\"promotion-name\" [routerLink]=\"getPromotionLink(discount)\">{{\r\n discount.description\r\n }}</a>\r\n <div class=\"promotion-amount\">\r\n {{ discount.amountWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ discount.amount | localeCurrency: order.currencyCode }}\r\n </div>\r\n </div>\r\n </div>\r\n </vdr-dropdown-menu>\r\n </vdr-dropdown>\r\n </ng-container>\r\n </td>\r\n </tr>\r\n <ng-container *ngIf=\"customFieldsForLine[line.id] as customFields\">\r\n <tr *ngIf=\"customFields.length\">\r\n <td colspan=\"6\" class=\"custom-fields-row\">\r\n <div class=\"order-line-custom-fields\">\r\n <div class=\"custom-field\" *ngFor=\"let field of customFields\">\r\n <vdr-custom-field-control\r\n [compact]=\"true\"\r\n [readonly]=\"true\"\r\n [customField]=\"field.config\"\r\n [customFieldsFormGroup]=\"field.formGroup\"\r\n ></vdr-custom-field-control>\r\n </div>\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-container>\r\n </ng-container>\r\n <tr class=\"surcharge\" *ngFor=\"let surcharge of order.surcharges\">\r\n <td class=\"align-middle name left\" colspan=\"2\">{{ surcharge.description }}</td>\r\n <td class=\"align-middle sku\">{{ surcharge.sku }}</td>\r\n <td class=\"align-middle\" colspan=\"2\"></td>\r\n <td class=\"align-middle total\">\r\n {{ surcharge.priceWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ surcharge.price | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n </tr>\r\n <ng-container *ngFor=\"let discount of order.discounts\">\r\n <tr class=\"order-adjustment\" *ngIf=\"discount.type !== 'OTHER'\">\r\n <td colspan=\"5\" class=\"left clr-align-middle\">\r\n <a [routerLink]=\"getPromotionLink(discount)\">{{ discount.description }}</a>\r\n <vdr-chip *ngIf=\"getCouponCodeForAdjustment(order, discount) as couponCode\">{{\r\n couponCode\r\n }}</vdr-chip>\r\n </td>\r\n <td class=\"clr-align-middle\">\r\n {{ discount.amountWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ discount.amount | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n </tr>\r\n </ng-container>\r\n <tr class=\"sub-total\">\r\n <td class=\"left clr-align-middle\">{{ 'order.sub-total' | translate }}</td>\r\n <td colspan=\"4\"></td>\r\n <td class=\"clr-align-middle\">\r\n {{ order.subTotalWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ order.subTotal | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n </tr>\r\n <tr class=\"shipping\">\r\n <td class=\"left clr-align-middle\">{{ 'order.shipping' | translate }}</td>\r\n <td class=\"clr-align-middle\">{{ getShippingNames(order) }}</td>\r\n <td colspan=\"3\"></td>\r\n <td class=\"clr-align-middle\">\r\n {{ order.shippingWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ order.shipping | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n </tr>\r\n <tr class=\"total\">\r\n <td class=\"left clr-align-middle\">{{ 'order.total' | translate }}</td>\r\n <td colspan=\"4\"></td>\r\n <td class=\"clr-align-middle\">\r\n {{ order.totalWithTax | localeCurrency: order.currencyCode }}\r\n <div class=\"net-price\" [title]=\"'order.net-price' | translate\">\r\n {{ order.total | localeCurrency: order.currencyCode }}\r\n </div>\r\n </td>\r\n </tr>\r\n </tbody>\r\n</table>\r\n",
68
76
  changeDetection: ChangeDetectionStrategy.OnPush,
69
- styles: [".order-table .is-cancelled td{text-decoration:line-through;background-color:var(--color-component-bg-200)}.order-table .sub-total td{border-top:1px dashed var(--color-component-border-200)}.order-table .total td{font-weight:bold;border-top:1px dashed var(--color-component-border-200)}.order-table td.custom-fields-row{border-top-style:dashed;border-top-color:var(--color-grey-200)}.order-table .order-line-custom-fields{display:flex;flex-wrap:wrap}.order-table .order-line-custom-fields .custom-field{text-align:start;max-width:200px;overflow:hidden;text-overflow:ellipsis;margin-bottom:6px;margin-right:18px}.order-table .order-line-custom-field{background-color:var(--color-component-bg-100)}.order-table .order-line-custom-field .custom-field-ellipsis{color:var(--color-text-300)}.order-table .net-price{font-size:11px;color:var(--color-text-300)}.order-table .promotions-label{-webkit-text-decoration:underline dotted var(--color-text-200);text-decoration:underline dotted var(--color-text-200);font-size:11px;margin-top:6px;cursor:pointer;text-transform:lowercase}.order-table .thumb img{width:50px;height:50px}::ng-deep .line-promotion{display:flex;justify-content:space-between;padding:6px 12px}::ng-deep .line-promotion .promotion-amount{margin-left:12px}::ng-deep .line-promotion .net-price{font-size:11px;color:var(--color-text-300)}\n"]
77
+ styles: [".order-table .is-cancelled td{text-decoration:line-through;background-color:var(--color-component-bg-200)}.order-table .sub-total td{border-top:1px dashed var(--color-component-border-200)}.order-table .total td{font-weight:bold;border-top:1px dashed var(--color-component-border-200)}.order-table td.custom-fields-row{border-top-style:dashed;border-top-color:var(--color-grey-200)}.order-table img{border-radius:var(--border-radius-img)}.order-table .order-line-custom-fields{display:flex;flex-wrap:wrap}.order-table .order-line-custom-fields .custom-field{text-align:start;max-width:200px;overflow:hidden;text-overflow:ellipsis;margin-bottom:6px;margin-right:18px}.order-table .draft-qty{max-width:48px}.order-table .order-line-custom-field{background-color:var(--color-component-bg-100)}.order-table .order-line-custom-field .custom-field-ellipsis{color:var(--color-text-300)}.order-table .net-price{font-size:11px;color:var(--color-text-300)}.order-table .promotions-label{-webkit-text-decoration:underline dotted var(--color-text-200);text-decoration:underline dotted var(--color-text-200);font-size:11px;margin-top:6px;cursor:pointer;text-transform:lowercase}.order-table .thumb img{width:50px;height:50px}::ng-deep .line-promotion{display:flex;justify-content:space-between;padding:6px 12px}::ng-deep .line-promotion .promotion-amount{margin-left:12px}::ng-deep .line-promotion .net-price{font-size:11px;color:var(--color-text-300)}\n"]
70
78
  },] }
71
79
  ];
72
80
  OrderTableComponent.propDecorators = {
73
81
  order: [{ type: Input }],
74
- orderLineCustomFields: [{ type: Input }]
82
+ orderLineCustomFields: [{ type: Input }],
83
+ isDraft: [{ type: Input }],
84
+ adjust: [{ type: Output }],
85
+ remove: [{ type: Output }]
75
86
  };
76
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9vcmRlci9zcmMvY29tcG9uZW50cy9vcmRlci10YWJsZS9vcmRlci10YWJsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQVUsTUFBTSxlQUFlLENBQUM7QUFDbEYsT0FBTyxFQUFFLFdBQVcsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFrQyxNQUFNLHdCQUF3QixDQUFDO0FBUXhGLE1BQU0sT0FBTyxtQkFBbUI7SUFOaEM7UUFTSSxpQ0FBNEIsR0FBRyxLQUFLLENBQUM7UUFDckMsd0JBQW1CLEdBRWYsRUFBRSxDQUFDO0lBa0VYLENBQUM7SUFoRUcsSUFBSSw0QkFBNEI7UUFDNUIsT0FBTyxJQUFJLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDO0lBQy9FLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDVixPQUFPLENBQUMsSUFBSSxDQUFDLDRCQUE0QixJQUFJLENBQUMsR0FBRyxJQUFJLENBQUMscUJBQXFCLENBQUMsTUFBTSxDQUFDO0lBQ3ZGLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLDRCQUE0QixHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLEdBQUcsQ0FBQyxDQUFDO1FBQzFFLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCwyQkFBMkI7UUFDdkIsSUFBSSxDQUFDLDRCQUE0QixHQUFHLENBQUMsSUFBSSxDQUFDLDRCQUE0QixDQUFDO0lBQzNFLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxJQUF1QjtRQUNwQyxPQUFPLElBQUksQ0FBQyxTQUFTLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxjQUFjLENBQUMsU0FBUyxDQUFDLENBQUM7SUFDM0UsQ0FBQztJQUVPLG1CQUFtQjtRQUN2QixLQUFLLE1BQU0sSUFBSSxJQUFJLElBQUksQ0FBQyxLQUFLLENBQUMsS0FBSyxFQUFFO1lBQ2pDLE1BQU0sU0FBUyxHQUFHLElBQUksU0FBUyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ3BDLE1BQU0sTUFBTSxHQUFHLElBQUksQ0FBQyxxQkFBcUI7aUJBQ3BDLEdBQUcsQ0FBQyxNQUFNLENBQUMsRUFBRTtnQkFDVixNQUFNLEtBQUssR0FBSSxJQUFZLENBQUMsWUFBWSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztnQkFDdEQsU0FBUyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksV0FBVyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7Z0JBQzFELE9BQU87b0JBQ0gsTUFBTTtvQkFDTixTQUFTO29CQUNULEtBQUs7aUJBQ1IsQ0FBQztZQUNOLENBQUMsQ0FBQztpQkFDRCxNQUFNLENBQUMsS0FBSyxDQUFDLEVBQUU7Z0JBQ1osT0FBTyxJQUFJLENBQUMsNEJBQTRCLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLEtBQUssSUFBSSxJQUFJLENBQUM7WUFDMUUsQ0FBQyxDQUFDLENBQUM7WUFDUCxJQUFJLENBQUMsbUJBQW1CLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxHQUFHLE1BQU0sQ0FBQztTQUM5QztJQUNMLENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxTQUFnQztRQUM3QyxNQUFNLEVBQUUsR0FBRyxTQUFTLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQ3BELE9BQU8sQ0FBQyxZQUFZLEVBQUUsWUFBWSxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBQzVDLENBQUM7SUFFRCwwQkFBMEIsQ0FDdEIsS0FBMkIsRUFDM0IsbUJBQTBDO1FBRTFDLE1BQU0sRUFBRSxHQUFHLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUM5RCxNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDMUQsSUFBSSxTQUFTLEVBQUU7WUFDWCxPQUFPLFNBQVMsQ0FBQyxVQUFVLElBQUksU0FBUyxDQUFDO1NBQzVDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLEtBQTJCO1FBQ3hDLElBQUksS0FBSyxDQUFDLGFBQWEsQ0FBQyxNQUFNLEVBQUU7WUFDNUIsT0FBTyxLQUFLLENBQUMsYUFBYSxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxDQUFDO1NBQy9GO2FBQU07WUFDSCxPQUFPLEVBQUUsQ0FBQztTQUNiO0lBQ0wsQ0FBQzs7O1lBN0VKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsaUJBQWlCO2dCQUMzQixxaFBBQTJDO2dCQUUzQyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDbEQ7OztvQkFFSSxLQUFLO29DQUNMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEFkanVzdG1lbnRUeXBlLCBDdXN0b21GaWVsZENvbmZpZywgT3JkZXJEZXRhaWwgfSBmcm9tICdAdmVuZHVyZS9hZG1pbi11aS9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd2ZHItb3JkZXItdGFibGUnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL29yZGVyLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL29yZGVyLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIE9yZGVyVGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gICAgQElucHV0KCkgb3JkZXI6IE9yZGVyRGV0YWlsLkZyYWdtZW50O1xyXG4gICAgQElucHV0KCkgb3JkZXJMaW5lQ3VzdG9tRmllbGRzOiBDdXN0b21GaWVsZENvbmZpZ1tdO1xyXG4gICAgb3JkZXJMaW5lQ3VzdG9tRmllbGRzVmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgY3VzdG9tRmllbGRzRm9yTGluZToge1xyXG4gICAgICAgIFtsaW5lSWQ6IHN0cmluZ106IEFycmF5PHsgY29uZmlnOiBDdXN0b21GaWVsZENvbmZpZzsgZm9ybUdyb3VwOiBGb3JtR3JvdXA7IHZhbHVlOiBhbnkgfT47XHJcbiAgICB9ID0ge307XHJcblxyXG4gICAgZ2V0IHZpc2libGVPcmRlckxpbmVDdXN0b21GaWVsZHMoKTogQ3VzdG9tRmllbGRDb25maWdbXSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMub3JkZXJMaW5lQ3VzdG9tRmllbGRzVmlzaWJsZSA/IHRoaXMub3JkZXJMaW5lQ3VzdG9tRmllbGRzIDogW107XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHNob3dFbGlkZWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICF0aGlzLm9yZGVyTGluZUN1c3RvbUZpZWxkc1Zpc2libGUgJiYgMCA8IHRoaXMub3JkZXJMaW5lQ3VzdG9tRmllbGRzLmxlbmd0aDtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9yZGVyTGluZUN1c3RvbUZpZWxkc1Zpc2libGUgPSB0aGlzLm9yZGVyTGluZUN1c3RvbUZpZWxkcy5sZW5ndGggPCAyO1xyXG4gICAgICAgIHRoaXMuZ2V0TGluZUN1c3RvbUZpZWxkcygpO1xyXG4gICAgfVxyXG5cclxuICAgIHRvZ2dsZU9yZGVyTGluZUN1c3RvbUZpZWxkcygpIHtcclxuICAgICAgICB0aGlzLm9yZGVyTGluZUN1c3RvbUZpZWxkc1Zpc2libGUgPSAhdGhpcy5vcmRlckxpbmVDdXN0b21GaWVsZHNWaXNpYmxlO1xyXG4gICAgfVxyXG5cclxuICAgIGdldExpbmVEaXNjb3VudHMobGluZTogT3JkZXJEZXRhaWwuTGluZXMpIHtcclxuICAgICAgICByZXR1cm4gbGluZS5kaXNjb3VudHMuZmlsdGVyKGEgPT4gYS50eXBlID09PSBBZGp1c3RtZW50VHlwZS5QUk9NT1RJT04pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0TGluZUN1c3RvbUZpZWxkcygpIHtcclxuICAgICAgICBmb3IgKGNvbnN0IGxpbmUgb2YgdGhpcy5vcmRlci5saW5lcykge1xyXG4gICAgICAgICAgICBjb25zdCBmb3JtR3JvdXAgPSBuZXcgRm9ybUdyb3VwKHt9KTtcclxuICAgICAgICAgICAgY29uc3QgcmVzdWx0ID0gdGhpcy5vcmRlckxpbmVDdXN0b21GaWVsZHNcclxuICAgICAgICAgICAgICAgIC5tYXAoY29uZmlnID0+IHtcclxuICAgICAgICAgICAgICAgICAgICBjb25zdCB2YWx1ZSA9IChsaW5lIGFzIGFueSkuY3VzdG9tRmllbGRzW2NvbmZpZy5uYW1lXTtcclxuICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXAuYWRkQ29udHJvbChjb25maWcubmFtZSwgbmV3IEZvcm1Db250cm9sKHZhbHVlKSk7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgY29uZmlnLFxyXG4gICAgICAgICAgICAgICAgICAgICAgICBmb3JtR3JvdXAsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIHZhbHVlLFxyXG4gICAgICAgICAgICAgICAgICAgIH07XHJcbiAgICAgICAgICAgICAgICB9KVxyXG4gICAgICAgICAgICAgICAgLmZpbHRlcihmaWVsZCA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHRoaXMub3JkZXJMaW5lQ3VzdG9tRmllbGRzVmlzaWJsZSA/IHRydWUgOiBmaWVsZC52YWx1ZSAhPSBudWxsO1xyXG4gICAgICAgICAgICAgICAgfSk7XHJcbiAgICAgICAgICAgIHRoaXMuY3VzdG9tRmllbGRzRm9yTGluZVtsaW5lLmlkXSA9IHJlc3VsdDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0UHJvbW90aW9uTGluayhwcm9tb3Rpb246IE9yZGVyRGV0YWlsLkRpc2NvdW50cyk6IGFueVtdIHtcclxuICAgICAgICBjb25zdCBpZCA9IHByb21vdGlvbi5hZGp1c3RtZW50U291cmNlLnNwbGl0KCc6JylbMV07XHJcbiAgICAgICAgcmV0dXJuIFsnL21hcmtldGluZycsICdwcm9tb3Rpb25zJywgaWRdO1xyXG4gICAgfVxyXG5cclxuICAgIGdldENvdXBvbkNvZGVGb3JBZGp1c3RtZW50KFxyXG4gICAgICAgIG9yZGVyOiBPcmRlckRldGFpbC5GcmFnbWVudCxcclxuICAgICAgICBwcm9tb3Rpb25BZGp1c3RtZW50OiBPcmRlckRldGFpbC5EaXNjb3VudHMsXHJcbiAgICApOiBzdHJpbmcgfCB1bmRlZmluZWQge1xyXG4gICAgICAgIGNvbnN0IGlkID0gcHJvbW90aW9uQWRqdXN0bWVudC5hZGp1c3RtZW50U291cmNlLnNwbGl0KCc6JylbMV07XHJcbiAgICAgICAgY29uc3QgcHJvbW90aW9uID0gb3JkZXIucHJvbW90aW9ucy5maW5kKHAgPT4gcC5pZCA9PT0gaWQpO1xyXG4gICAgICAgIGlmIChwcm9tb3Rpb24pIHtcclxuICAgICAgICAgICAgcmV0dXJuIHByb21vdGlvbi5jb3Vwb25Db2RlIHx8IHVuZGVmaW5lZDtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0U2hpcHBpbmdOYW1lcyhvcmRlcjogT3JkZXJEZXRhaWwuRnJhZ21lbnQpIHtcclxuICAgICAgICBpZiAob3JkZXIuc2hpcHBpbmdMaW5lcy5sZW5ndGgpIHtcclxuICAgICAgICAgICAgcmV0dXJuIG9yZGVyLnNoaXBwaW5nTGluZXMubWFwKHNoaXBwaW5nTGluZSA9PiBzaGlwcGluZ0xpbmUuc2hpcHBpbmdNZXRob2QubmFtZSkuam9pbignLCAnKTtcclxuICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICByZXR1cm4gJyc7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
87
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9vcmRlci9zcmMvY29tcG9uZW50cy9vcmRlci10YWJsZS9vcmRlci10YWJsZS5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUN4RyxPQUFPLEVBQUUsV0FBVyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxjQUFjLEVBQXVELE1BQU0sd0JBQXdCLENBQUM7QUFRN0csTUFBTSxPQUFPLG1CQUFtQjtJQU5oQztRQVNhLFlBQU8sR0FBRyxLQUFLLENBQUM7UUFDZixXQUFNLEdBQUcsSUFBSSxZQUFZLEVBQXdDLENBQUM7UUFDbEUsV0FBTSxHQUFHLElBQUksWUFBWSxFQUFzQixDQUFDO1FBQzFELGlDQUE0QixHQUFHLEtBQUssQ0FBQztRQUNyQyx3QkFBbUIsR0FFZixFQUFFLENBQUM7SUF3RVgsQ0FBQztJQXRFRyxJQUFJLDRCQUE0QjtRQUM1QixPQUFPLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLHFCQUFxQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7SUFDL0UsQ0FBQztJQUVELElBQUksVUFBVTtRQUNWLE9BQU8sQ0FBQyxJQUFJLENBQUMsNEJBQTRCLElBQUksQ0FBQyxHQUFHLElBQUksQ0FBQyxxQkFBcUIsQ0FBQyxNQUFNLENBQUM7SUFDdkYsQ0FBQztJQUVELFFBQVE7UUFDSixJQUFJLENBQUMsNEJBQTRCLEdBQUcsSUFBSSxDQUFDLHFCQUFxQixDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7UUFDMUUsSUFBSSxDQUFDLG1CQUFtQixFQUFFLENBQUM7SUFDL0IsQ0FBQztJQUVELGNBQWMsQ0FBQyxJQUEwQyxFQUFFLFFBQWdCO1FBQ3ZFLElBQUksSUFBSSxDQUFDLFFBQVEsS0FBSyxRQUFRLEVBQUU7WUFDNUIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsRUFBRSxNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUUsRUFBRSxRQUFRLEVBQUUsQ0FBQyxDQUFDO1NBQ25EO0lBQ0wsQ0FBQztJQUVELDJCQUEyQjtRQUN2QixJQUFJLENBQUMsNEJBQTRCLEdBQUcsQ0FBQyxJQUFJLENBQUMsNEJBQTRCLENBQUM7SUFDM0UsQ0FBQztJQUVELGdCQUFnQixDQUFDLElBQXVCO1FBQ3BDLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxLQUFLLGNBQWMsQ0FBQyxTQUFTLENBQUMsQ0FBQztJQUMzRSxDQUFDO0lBRU8sbUJBQW1CO1FBQ3ZCLEtBQUssTUFBTSxJQUFJLElBQUksSUFBSSxDQUFDLEtBQUssQ0FBQyxLQUFLLEVBQUU7WUFDakMsTUFBTSxTQUFTLEdBQUcsSUFBSSxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7WUFDcEMsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLHFCQUFxQjtpQkFDcEMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxFQUFFO2dCQUNWLE1BQU0sS0FBSyxHQUFJLElBQVksQ0FBQyxZQUFZLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUN0RCxTQUFTLENBQUMsVUFBVSxDQUFDLE1BQU0sQ0FBQyxJQUFJLEVBQUUsSUFBSSxXQUFXLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztnQkFDMUQsT0FBTztvQkFDSCxNQUFNO29CQUNOLFNBQVM7b0JBQ1QsS0FBSztpQkFDUixDQUFDO1lBQ04sQ0FBQyxDQUFDO2lCQUNELE1BQU0sQ0FBQyxLQUFLLENBQUMsRUFBRTtnQkFDWixPQUFPLElBQUksQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsS0FBSyxJQUFJLElBQUksQ0FBQztZQUMxRSxDQUFDLENBQUMsQ0FBQztZQUNQLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLEdBQUcsTUFBTSxDQUFDO1NBQzlDO0lBQ0wsQ0FBQztJQUVELGdCQUFnQixDQUFDLFNBQWdDO1FBQzdDLE1BQU0sRUFBRSxHQUFHLFNBQVMsQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7UUFDcEQsT0FBTyxDQUFDLFlBQVksRUFBRSxZQUFZLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFDNUMsQ0FBQztJQUVELDBCQUEwQixDQUN0QixLQUEyQixFQUMzQixtQkFBMEM7UUFFMUMsTUFBTSxFQUFFLEdBQUcsbUJBQW1CLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1FBQzlELE1BQU0sU0FBUyxHQUFHLEtBQUssQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUMxRCxJQUFJLFNBQVMsRUFBRTtZQUNYLE9BQU8sU0FBUyxDQUFDLFVBQVUsSUFBSSxTQUFTLENBQUM7U0FDNUM7SUFDTCxDQUFDO0lBRUQsZ0JBQWdCLENBQUMsS0FBMkI7UUFDeEMsSUFBSSxLQUFLLENBQUMsYUFBYSxDQUFDLE1BQU0sRUFBRTtZQUM1QixPQUFPLEtBQUssQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUMsWUFBWSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7U0FDL0Y7YUFBTTtZQUNILE9BQU8sRUFBRSxDQUFDO1NBQ2I7SUFDTCxDQUFDOzs7WUF0RkosU0FBUyxTQUFDO2dCQUNQLFFBQVEsRUFBRSxpQkFBaUI7Z0JBQzNCLDA5UUFBMkM7Z0JBRTNDLGVBQWUsRUFBRSx1QkFBdUIsQ0FBQyxNQUFNOzthQUNsRDs7O29CQUVJLEtBQUs7b0NBQ0wsS0FBSztzQkFDTCxLQUFLO3FCQUNMLE1BQU07cUJBQ04sTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIEV2ZW50RW1pdHRlciwgSW5wdXQsIE9uSW5pdCwgT3V0cHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1Db250cm9sLCBGb3JtR3JvdXAgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IEFkanVzdG1lbnRUeXBlLCBDdXN0b21GaWVsZENvbmZpZywgT3JkZXJEZXRhaWwsIE9yZGVyRGV0YWlsRnJhZ21lbnQgfSBmcm9tICdAdmVuZHVyZS9hZG1pbi11aS9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gICAgc2VsZWN0b3I6ICd2ZHItb3JkZXItdGFibGUnLFxyXG4gICAgdGVtcGxhdGVVcmw6ICcuL29yZGVyLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL29yZGVyLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXHJcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcclxufSlcclxuZXhwb3J0IGNsYXNzIE9yZGVyVGFibGVDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQge1xyXG4gICAgQElucHV0KCkgb3JkZXI6IE9yZGVyRGV0YWlsLkZyYWdtZW50O1xyXG4gICAgQElucHV0KCkgb3JkZXJMaW5lQ3VzdG9tRmllbGRzOiBDdXN0b21GaWVsZENvbmZpZ1tdO1xyXG4gICAgQElucHV0KCkgaXNEcmFmdCA9IGZhbHNlO1xyXG4gICAgQE91dHB1dCgpIGFkanVzdCA9IG5ldyBFdmVudEVtaXR0ZXI8eyBsaW5lSWQ6IHN0cmluZzsgcXVhbnRpdHk6IG51bWJlciB9PigpO1xyXG4gICAgQE91dHB1dCgpIHJlbW92ZSA9IG5ldyBFdmVudEVtaXR0ZXI8eyBsaW5lSWQ6IHN0cmluZyB9PigpO1xyXG4gICAgb3JkZXJMaW5lQ3VzdG9tRmllbGRzVmlzaWJsZSA9IGZhbHNlO1xyXG4gICAgY3VzdG9tRmllbGRzRm9yTGluZToge1xyXG4gICAgICAgIFtsaW5lSWQ6IHN0cmluZ106IEFycmF5PHsgY29uZmlnOiBDdXN0b21GaWVsZENvbmZpZzsgZm9ybUdyb3VwOiBGb3JtR3JvdXA7IHZhbHVlOiBhbnkgfT47XHJcbiAgICB9ID0ge307XHJcblxyXG4gICAgZ2V0IHZpc2libGVPcmRlckxpbmVDdXN0b21GaWVsZHMoKTogQ3VzdG9tRmllbGRDb25maWdbXSB7XHJcbiAgICAgICAgcmV0dXJuIHRoaXMub3JkZXJMaW5lQ3VzdG9tRmllbGRzVmlzaWJsZSA/IHRoaXMub3JkZXJMaW5lQ3VzdG9tRmllbGRzIDogW107XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0IHNob3dFbGlkZWQoKTogYm9vbGVhbiB7XHJcbiAgICAgICAgcmV0dXJuICF0aGlzLm9yZGVyTGluZUN1c3RvbUZpZWxkc1Zpc2libGUgJiYgMCA8IHRoaXMub3JkZXJMaW5lQ3VzdG9tRmllbGRzLmxlbmd0aDtcclxuICAgIH1cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICB0aGlzLm9yZGVyTGluZUN1c3RvbUZpZWxkc1Zpc2libGUgPSB0aGlzLm9yZGVyTGluZUN1c3RvbUZpZWxkcy5sZW5ndGggPCAyO1xyXG4gICAgICAgIHRoaXMuZ2V0TGluZUN1c3RvbUZpZWxkcygpO1xyXG4gICAgfVxyXG5cclxuICAgIGRyYWZ0SW5wdXRCbHVyKGxpbmU6IE9yZGVyRGV0YWlsRnJhZ21lbnRbJ2xpbmVzJ11bbnVtYmVyXSwgcXVhbnRpdHk6IG51bWJlcikge1xyXG4gICAgICAgIGlmIChsaW5lLnF1YW50aXR5ICE9PSBxdWFudGl0eSkge1xyXG4gICAgICAgICAgICB0aGlzLmFkanVzdC5lbWl0KHsgbGluZUlkOiBsaW5lLmlkLCBxdWFudGl0eSB9KTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgdG9nZ2xlT3JkZXJMaW5lQ3VzdG9tRmllbGRzKCkge1xyXG4gICAgICAgIHRoaXMub3JkZXJMaW5lQ3VzdG9tRmllbGRzVmlzaWJsZSA9ICF0aGlzLm9yZGVyTGluZUN1c3RvbUZpZWxkc1Zpc2libGU7XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0TGluZURpc2NvdW50cyhsaW5lOiBPcmRlckRldGFpbC5MaW5lcykge1xyXG4gICAgICAgIHJldHVybiBsaW5lLmRpc2NvdW50cy5maWx0ZXIoYSA9PiBhLnR5cGUgPT09IEFkanVzdG1lbnRUeXBlLlBST01PVElPTik7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRMaW5lQ3VzdG9tRmllbGRzKCkge1xyXG4gICAgICAgIGZvciAoY29uc3QgbGluZSBvZiB0aGlzLm9yZGVyLmxpbmVzKSB7XHJcbiAgICAgICAgICAgIGNvbnN0IGZvcm1Hcm91cCA9IG5ldyBGb3JtR3JvdXAoe30pO1xyXG4gICAgICAgICAgICBjb25zdCByZXN1bHQgPSB0aGlzLm9yZGVyTGluZUN1c3RvbUZpZWxkc1xyXG4gICAgICAgICAgICAgICAgLm1hcChjb25maWcgPT4ge1xyXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHZhbHVlID0gKGxpbmUgYXMgYW55KS5jdXN0b21GaWVsZHNbY29uZmlnLm5hbWVdO1xyXG4gICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cC5hZGRDb250cm9sKGNvbmZpZy5uYW1lLCBuZXcgRm9ybUNvbnRyb2wodmFsdWUpKTtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4ge1xyXG4gICAgICAgICAgICAgICAgICAgICAgICBjb25maWcsXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGZvcm1Hcm91cCxcclxuICAgICAgICAgICAgICAgICAgICAgICAgdmFsdWUsXHJcbiAgICAgICAgICAgICAgICAgICAgfTtcclxuICAgICAgICAgICAgICAgIH0pXHJcbiAgICAgICAgICAgICAgICAuZmlsdGVyKGZpZWxkID0+IHtcclxuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhpcy5vcmRlckxpbmVDdXN0b21GaWVsZHNWaXNpYmxlID8gdHJ1ZSA6IGZpZWxkLnZhbHVlICE9IG51bGw7XHJcbiAgICAgICAgICAgICAgICB9KTtcclxuICAgICAgICAgICAgdGhpcy5jdXN0b21GaWVsZHNGb3JMaW5lW2xpbmUuaWRdID0gcmVzdWx0O1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBnZXRQcm9tb3Rpb25MaW5rKHByb21vdGlvbjogT3JkZXJEZXRhaWwuRGlzY291bnRzKTogYW55W10ge1xyXG4gICAgICAgIGNvbnN0IGlkID0gcHJvbW90aW9uLmFkanVzdG1lbnRTb3VyY2Uuc3BsaXQoJzonKVsxXTtcclxuICAgICAgICByZXR1cm4gWycvbWFya2V0aW5nJywgJ3Byb21vdGlvbnMnLCBpZF07XHJcbiAgICB9XHJcblxyXG4gICAgZ2V0Q291cG9uQ29kZUZvckFkanVzdG1lbnQoXHJcbiAgICAgICAgb3JkZXI6IE9yZGVyRGV0YWlsLkZyYWdtZW50LFxyXG4gICAgICAgIHByb21vdGlvbkFkanVzdG1lbnQ6IE9yZGVyRGV0YWlsLkRpc2NvdW50cyxcclxuICAgICk6IHN0cmluZyB8IHVuZGVmaW5lZCB7XHJcbiAgICAgICAgY29uc3QgaWQgPSBwcm9tb3Rpb25BZGp1c3RtZW50LmFkanVzdG1lbnRTb3VyY2Uuc3BsaXQoJzonKVsxXTtcclxuICAgICAgICBjb25zdCBwcm9tb3Rpb24gPSBvcmRlci5wcm9tb3Rpb25zLmZpbmQocCA9PiBwLmlkID09PSBpZCk7XHJcbiAgICAgICAgaWYgKHByb21vdGlvbikge1xyXG4gICAgICAgICAgICByZXR1cm4gcHJvbW90aW9uLmNvdXBvbkNvZGUgfHwgdW5kZWZpbmVkO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBnZXRTaGlwcGluZ05hbWVzKG9yZGVyOiBPcmRlckRldGFpbC5GcmFnbWVudCkge1xyXG4gICAgICAgIGlmIChvcmRlci5zaGlwcGluZ0xpbmVzLmxlbmd0aCkge1xyXG4gICAgICAgICAgICByZXR1cm4gb3JkZXIuc2hpcHBpbmdMaW5lcy5tYXAoc2hpcHBpbmdMaW5lID0+IHNoaXBwaW5nTGluZS5zaGlwcGluZ01ldGhvZC5uYW1lKS5qb2luKCcsICcpO1xyXG4gICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgIHJldHVybiAnJztcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -0,0 +1,91 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { FormBuilder, Validators } from '@angular/forms';
3
+ import { DataService, } from '@vendure/admin-ui/core';
4
+ import { pick } from '@vendure/common/lib/pick';
5
+ import { of } from 'rxjs';
6
+ import { tap } from 'rxjs/operators';
7
+ import { GET_CUSTOMER_ADDRESSES } from './select-address-dialog.graphql';
8
+ export class SelectAddressDialogComponent {
9
+ constructor(dataService, formBuilder) {
10
+ this.dataService = dataService;
11
+ this.formBuilder = formBuilder;
12
+ this.useExisting = true;
13
+ this.createNew = false;
14
+ }
15
+ ngOnInit() {
16
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
17
+ this.addressForm = this.formBuilder.group({
18
+ fullName: [(_b = (_a = this.currentAddress) === null || _a === void 0 ? void 0 : _a.fullName) !== null && _b !== void 0 ? _b : ''],
19
+ company: [(_d = (_c = this.currentAddress) === null || _c === void 0 ? void 0 : _c.company) !== null && _d !== void 0 ? _d : ''],
20
+ streetLine1: [(_f = (_e = this.currentAddress) === null || _e === void 0 ? void 0 : _e.streetLine1) !== null && _f !== void 0 ? _f : '', Validators.required],
21
+ streetLine2: [(_h = (_g = this.currentAddress) === null || _g === void 0 ? void 0 : _g.streetLine2) !== null && _h !== void 0 ? _h : ''],
22
+ city: [(_k = (_j = this.currentAddress) === null || _j === void 0 ? void 0 : _j.city) !== null && _k !== void 0 ? _k : '', Validators.required],
23
+ province: [(_m = (_l = this.currentAddress) === null || _l === void 0 ? void 0 : _l.province) !== null && _m !== void 0 ? _m : ''],
24
+ postalCode: [(_p = (_o = this.currentAddress) === null || _o === void 0 ? void 0 : _o.postalCode) !== null && _p !== void 0 ? _p : '', Validators.required],
25
+ countryCode: [(_r = (_q = this.currentAddress) === null || _q === void 0 ? void 0 : _q.countryCode) !== null && _r !== void 0 ? _r : '', Validators.required],
26
+ phoneNumber: [(_t = (_s = this.currentAddress) === null || _s === void 0 ? void 0 : _s.phoneNumber) !== null && _t !== void 0 ? _t : ''],
27
+ });
28
+ this.useExisting = !!this.customerId;
29
+ this.addresses$ = this.customerId
30
+ ? this.dataService
31
+ .query(GET_CUSTOMER_ADDRESSES, { customerId: this.customerId })
32
+ .mapSingle(({ customer }) => { var _a; return (_a = customer === null || customer === void 0 ? void 0 : customer.addresses) !== null && _a !== void 0 ? _a : []; })
33
+ .pipe(tap(addresses => {
34
+ if (this.currentAddress) {
35
+ this.selectedAddress = addresses.find(a => {
36
+ var _a, _b;
37
+ return a.streetLine1 === ((_a = this.currentAddress) === null || _a === void 0 ? void 0 : _a.streetLine1) &&
38
+ a.postalCode === ((_b = this.currentAddress) === null || _b === void 0 ? void 0 : _b.postalCode);
39
+ });
40
+ }
41
+ if (addresses.length === 0) {
42
+ this.createNew = true;
43
+ this.useExisting = false;
44
+ }
45
+ }))
46
+ : of([]);
47
+ this.availableCountries$ = this.dataService.settings
48
+ .getAvailableCountries()
49
+ .mapSingle(({ countries }) => countries.items);
50
+ }
51
+ trackByFn(item) {
52
+ return item.id;
53
+ }
54
+ addressIdFn(item) {
55
+ return item.streetLine1 + item.postalCode;
56
+ }
57
+ cancel() {
58
+ this.resolveWith();
59
+ }
60
+ select() {
61
+ if (this.useExisting && this.selectedAddress) {
62
+ this.resolveWith(Object.assign(Object.assign({}, pick(this.selectedAddress, [
63
+ 'fullName',
64
+ 'company',
65
+ 'streetLine1',
66
+ 'streetLine2',
67
+ 'city',
68
+ 'province',
69
+ 'phoneNumber',
70
+ 'postalCode',
71
+ ])), { countryCode: this.selectedAddress.country.code }));
72
+ }
73
+ if (this.createNew && this.addressForm.valid) {
74
+ const formValue = this.addressForm.value;
75
+ this.resolveWith(formValue);
76
+ }
77
+ }
78
+ }
79
+ SelectAddressDialogComponent.decorators = [
80
+ { type: Component, args: [{
81
+ selector: 'vdr-select-address-dialog',
82
+ template: "<ng-template vdrDialogTitle>{{ 'order.select-address' | translate }}</ng-template>\r\n\r\n<clr-tabs *ngIf=\"addresses$ | async as addresses\">\r\n <clr-tab *ngIf=\"customerId && addresses.length\">\r\n <button clrTabLink>{{ 'order.existing-address' | translate }}</button>\r\n <ng-template [(clrIfActive)]=\"useExisting\">\r\n <clr-tab-content>\r\n <vdr-radio-card-fieldset\r\n class=\"block mt4\"\r\n [idFn]=\"addressIdFn\"\r\n [selectedItemId]=\"selectedAddress && addressIdFn(selectedAddress)\"\r\n (selectItem)=\"selectedAddress = $event\"\r\n >\r\n <vdr-radio-card *ngFor=\"let address of addresses\" [item]=\"address\">\r\n <vdr-formatted-address [address]=\"address\"></vdr-formatted-address>\r\n </vdr-radio-card>\r\n </vdr-radio-card-fieldset>\r\n </clr-tab-content>\r\n </ng-template>\r\n </clr-tab>\r\n <clr-tab>\r\n <button clrTabLink>{{ 'customer.create-new-address' | translate }}</button>\r\n\r\n <ng-template [(clrIfActive)]=\"createNew\">\r\n <clr-tab-content>\r\n <vdr-address-form\r\n [formGroup]=\"addressForm\"\r\n [availableCountries]=\"availableCountries$ | async\"\r\n ></vdr-address-form>\r\n </clr-tab-content>\r\n </ng-template>\r\n </clr-tab>\r\n</clr-tabs>\r\n\r\n<ng-template vdrDialogButtons>\r\n <button type=\"button\" class=\"btn\" (click)=\"cancel()\">{{ 'common.cancel' | translate }}</button>\r\n <button\r\n type=\"submit\"\r\n (click)=\"select()\"\r\n [disabled]=\"(useExisting && !selectedAddress) || (createNew && addressForm.invalid)\"\r\n class=\"btn btn-primary\"\r\n >\r\n {{ 'common.okay' | translate }}\r\n </button>\r\n</ng-template>\r\n",
83
+ changeDetection: ChangeDetectionStrategy.OnPush,
84
+ styles: [""]
85
+ },] }
86
+ ];
87
+ SelectAddressDialogComponent.ctorParameters = () => [
88
+ { type: DataService },
89
+ { type: FormBuilder }
90
+ ];
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWFkZHJlc3MtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy9saWIvb3JkZXIvc3JjL2NvbXBvbmVudHMvc2VsZWN0LWFkZHJlc3MtZGlhbG9nL3NlbGVjdC1hZGRyZXNzLWRpYWxvZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFJSCxXQUFXLEdBTWQsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDaEQsT0FBTyxFQUFjLEVBQUUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFJckMsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFRekUsTUFBTSxPQUFPLDRCQUE0QjtJQVdyQyxZQUFvQixXQUF3QixFQUFVLFdBQXdCO1FBQTFELGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFIOUUsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFDbkIsY0FBUyxHQUFHLEtBQUssQ0FBQztJQUUrRCxDQUFDO0lBRWxGLFFBQVE7O1FBQ0osSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssQ0FBQztZQUN0QyxRQUFRLEVBQUUsQ0FBQyxNQUFBLE1BQUEsSUFBSSxDQUFDLGNBQWMsMENBQUUsUUFBUSxtQ0FBSSxFQUFFLENBQUM7WUFDL0MsT0FBTyxFQUFFLENBQUMsTUFBQSxNQUFBLElBQUksQ0FBQyxjQUFjLDBDQUFFLE9BQU8sbUNBQUksRUFBRSxDQUFDO1lBQzdDLFdBQVcsRUFBRSxDQUFDLE1BQUEsTUFBQSxJQUFJLENBQUMsY0FBYywwQ0FBRSxXQUFXLG1DQUFJLEVBQUUsRUFBRSxVQUFVLENBQUMsUUFBUSxDQUFDO1lBQzFFLFdBQVcsRUFBRSxDQUFDLE1BQUEsTUFBQSxJQUFJLENBQUMsY0FBYywwQ0FBRSxXQUFXLG1DQUFJLEVBQUUsQ0FBQztZQUNyRCxJQUFJLEVBQUUsQ0FBQyxNQUFBLE1BQUEsSUFBSSxDQUFDLGNBQWMsMENBQUUsSUFBSSxtQ0FBSSxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUM1RCxRQUFRLEVBQUUsQ0FBQyxNQUFBLE1BQUEsSUFBSSxDQUFDLGNBQWMsMENBQUUsUUFBUSxtQ0FBSSxFQUFFLENBQUM7WUFDL0MsVUFBVSxFQUFFLENBQUMsTUFBQSxNQUFBLElBQUksQ0FBQyxjQUFjLDBDQUFFLFVBQVUsbUNBQUksRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDeEUsV0FBVyxFQUFFLENBQUMsTUFBQSxNQUFBLElBQUksQ0FBQyxjQUFjLDBDQUFFLFdBQVcsbUNBQUksRUFBRSxFQUFFLFVBQVUsQ0FBQyxRQUFRLENBQUM7WUFDMUUsV0FBVyxFQUFFLENBQUMsTUFBQSxNQUFBLElBQUksQ0FBQyxjQUFjLDBDQUFFLFdBQVcsbUNBQUksRUFBRSxDQUFDO1NBQ3hELENBQUMsQ0FBQztRQUNILElBQUksQ0FBQyxXQUFXLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUM7UUFDckMsSUFBSSxDQUFDLFVBQVUsR0FBRyxJQUFJLENBQUMsVUFBVTtZQUM3QixDQUFDLENBQUMsSUFBSSxDQUFDLFdBQVc7aUJBQ1gsS0FBSyxDQUNGLHNCQUFzQixFQUN0QixFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLENBQ2xDO2lCQUNBLFNBQVMsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRSxXQUFDLE9BQUEsTUFBQSxRQUFRLGFBQVIsUUFBUSx1QkFBUixRQUFRLENBQUUsU0FBUyxtQ0FBSSxFQUFFLENBQUEsRUFBQSxDQUFDO2lCQUN0RCxJQUFJLENBQ0QsR0FBRyxDQUFDLFNBQVMsQ0FBQyxFQUFFO2dCQUNaLElBQUksSUFBSSxDQUFDLGNBQWMsRUFBRTtvQkFDckIsSUFBSSxDQUFDLGVBQWUsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUNqQyxDQUFDLENBQUMsRUFBRTs7d0JBQ0EsT0FBQSxDQUFDLENBQUMsV0FBVyxNQUFLLE1BQUEsSUFBSSxDQUFDLGNBQWMsMENBQUUsV0FBVyxDQUFBOzRCQUNsRCxDQUFDLENBQUMsVUFBVSxNQUFLLE1BQUEsSUFBSSxDQUFDLGNBQWMsMENBQUUsVUFBVSxDQUFBLENBQUE7cUJBQUEsQ0FDdkQsQ0FBQztpQkFDTDtnQkFDRCxJQUFJLFNBQVMsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO29CQUN4QixJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztvQkFDdEIsSUFBSSxDQUFDLFdBQVcsR0FBRyxLQUFLLENBQUM7aUJBQzVCO1lBQ0wsQ0FBQyxDQUFDLENBQ0w7WUFDUCxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBQ2IsSUFBSSxDQUFDLG1CQUFtQixHQUFHLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUTthQUMvQyxxQkFBcUIsRUFBRTthQUN2QixTQUFTLENBQUMsQ0FBQyxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxDQUFDLENBQUM7SUFDdkQsQ0FBQztJQUVELFNBQVMsQ0FBQyxJQUFjO1FBQ3BCLE9BQU8sSUFBSSxDQUFDLEVBQUUsQ0FBQztJQUNuQixDQUFDO0lBRUQsV0FBVyxDQUFDLElBQXFCO1FBQzdCLE9BQU8sSUFBSSxDQUFDLFdBQVcsR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQzlDLENBQUM7SUFFRCxNQUFNO1FBQ0YsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxNQUFNO1FBQ0YsSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxlQUFlLEVBQUU7WUFDMUMsSUFBSSxDQUFDLFdBQVcsaUNBQ1QsSUFBSSxDQUFDLElBQUksQ0FBQyxlQUFlLEVBQUU7Z0JBQzFCLFVBQVU7Z0JBQ1YsU0FBUztnQkFDVCxhQUFhO2dCQUNiLGFBQWE7Z0JBQ2IsTUFBTTtnQkFDTixVQUFVO2dCQUNWLGFBQWE7Z0JBQ2IsWUFBWTthQUNmLENBQUMsS0FDRixXQUFXLEVBQUUsSUFBSSxDQUFDLGVBQWUsQ0FBQyxPQUFPLENBQUMsSUFBSSxJQUNoRCxDQUFDO1NBQ047UUFDRCxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLEVBQUU7WUFDMUMsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDekMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUMvQjtJQUNMLENBQUM7OztZQTVGSixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLDJCQUEyQjtnQkFDckMsdzhEQUFxRDtnQkFFckQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2xEOzs7WUFwQkcsV0FBVztZQUxOLFdBQVciLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgRm9ybUJ1aWxkZXIsIEZvcm1Hcm91cCwgVmFsaWRhdG9ycyB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcclxuaW1wb3J0IHtcclxuICAgIEFkZHJlc3NGcmFnbWVudCxcclxuICAgIENyZWF0ZUFkZHJlc3NJbnB1dCxcclxuICAgIENyZWF0ZUN1c3RvbWVySW5wdXQsXHJcbiAgICBEYXRhU2VydmljZSxcclxuICAgIERpYWxvZyxcclxuICAgIEdldEF2YWlsYWJsZUNvdW50cmllc1F1ZXJ5LFxyXG4gICAgR2V0Q3VzdG9tZXJBZGRyZXNzZXNRdWVyeSxcclxuICAgIEdldEN1c3RvbWVyQWRkcmVzc2VzUXVlcnlWYXJpYWJsZXMsXHJcbiAgICBPcmRlckFkZHJlc3NGcmFnbWVudCxcclxufSBmcm9tICdAdmVuZHVyZS9hZG1pbi11aS9jb3JlJztcclxuaW1wb3J0IHsgcGljayB9IGZyb20gJ0B2ZW5kdXJlL2NvbW1vbi9saWIvcGljayc7XHJcbmltcG9ydCB7IE9ic2VydmFibGUsIG9mIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IHRhcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IEN1c3RvbWVyIH0gZnJvbSAnLi4vc2VsZWN0LWN1c3RvbWVyLWRpYWxvZy9zZWxlY3QtY3VzdG9tZXItZGlhbG9nLmNvbXBvbmVudCc7XHJcblxyXG5pbXBvcnQgeyBHRVRfQ1VTVE9NRVJfQUREUkVTU0VTIH0gZnJvbSAnLi9zZWxlY3QtYWRkcmVzcy1kaWFsb2cuZ3JhcGhxbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICAgIHNlbGVjdG9yOiAndmRyLXNlbGVjdC1hZGRyZXNzLWRpYWxvZycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LWFkZHJlc3MtZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3NlbGVjdC1hZGRyZXNzLWRpYWxvZy5jb21wb25lbnQuc2NzcyddLFxyXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBTZWxlY3RBZGRyZXNzRGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBEaWFsb2c8Q3JlYXRlQWRkcmVzc0lucHV0PiB7XHJcbiAgICByZXNvbHZlV2l0aDogKHJlc3VsdD86IENyZWF0ZUFkZHJlc3NJbnB1dCkgPT4gdm9pZDtcclxuICAgIGF2YWlsYWJsZUNvdW50cmllcyQ6IE9ic2VydmFibGU8R2V0QXZhaWxhYmxlQ291bnRyaWVzUXVlcnlbJ2NvdW50cmllcyddWydpdGVtcyddPjtcclxuICAgIGFkZHJlc3NlcyQ6IE9ic2VydmFibGU8QWRkcmVzc0ZyYWdtZW50W10+O1xyXG4gICAgY3VzdG9tZXJJZDogc3RyaW5nIHwgdW5kZWZpbmVkO1xyXG4gICAgY3VycmVudEFkZHJlc3M6IE9yZGVyQWRkcmVzc0ZyYWdtZW50IHwgdW5kZWZpbmVkO1xyXG4gICAgYWRkcmVzc0Zvcm06IEZvcm1Hcm91cDtcclxuICAgIHNlbGVjdGVkQWRkcmVzczogQWRkcmVzc0ZyYWdtZW50IHwgdW5kZWZpbmVkO1xyXG4gICAgdXNlRXhpc3RpbmcgPSB0cnVlO1xyXG4gICAgY3JlYXRlTmV3ID0gZmFsc2U7XHJcblxyXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBkYXRhU2VydmljZTogRGF0YVNlcnZpY2UsIHByaXZhdGUgZm9ybUJ1aWxkZXI6IEZvcm1CdWlsZGVyKSB7fVxyXG5cclxuICAgIG5nT25Jbml0KCk6IHZvaWQge1xyXG4gICAgICAgIHRoaXMuYWRkcmVzc0Zvcm0gPSB0aGlzLmZvcm1CdWlsZGVyLmdyb3VwKHtcclxuICAgICAgICAgICAgZnVsbE5hbWU6IFt0aGlzLmN1cnJlbnRBZGRyZXNzPy5mdWxsTmFtZSA/PyAnJ10sXHJcbiAgICAgICAgICAgIGNvbXBhbnk6IFt0aGlzLmN1cnJlbnRBZGRyZXNzPy5jb21wYW55ID8/ICcnXSxcclxuICAgICAgICAgICAgc3RyZWV0TGluZTE6IFt0aGlzLmN1cnJlbnRBZGRyZXNzPy5zdHJlZXRMaW5lMSA/PyAnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgICAgIHN0cmVldExpbmUyOiBbdGhpcy5jdXJyZW50QWRkcmVzcz8uc3RyZWV0TGluZTIgPz8gJyddLFxyXG4gICAgICAgICAgICBjaXR5OiBbdGhpcy5jdXJyZW50QWRkcmVzcz8uY2l0eSA/PyAnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgICAgIHByb3ZpbmNlOiBbdGhpcy5jdXJyZW50QWRkcmVzcz8ucHJvdmluY2UgPz8gJyddLFxyXG4gICAgICAgICAgICBwb3N0YWxDb2RlOiBbdGhpcy5jdXJyZW50QWRkcmVzcz8ucG9zdGFsQ29kZSA/PyAnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgICAgIGNvdW50cnlDb2RlOiBbdGhpcy5jdXJyZW50QWRkcmVzcz8uY291bnRyeUNvZGUgPz8gJycsIFZhbGlkYXRvcnMucmVxdWlyZWRdLFxyXG4gICAgICAgICAgICBwaG9uZU51bWJlcjogW3RoaXMuY3VycmVudEFkZHJlc3M/LnBob25lTnVtYmVyID8/ICcnXSxcclxuICAgICAgICB9KTtcclxuICAgICAgICB0aGlzLnVzZUV4aXN0aW5nID0gISF0aGlzLmN1c3RvbWVySWQ7XHJcbiAgICAgICAgdGhpcy5hZGRyZXNzZXMkID0gdGhpcy5jdXN0b21lcklkXHJcbiAgICAgICAgICAgID8gdGhpcy5kYXRhU2VydmljZVxyXG4gICAgICAgICAgICAgICAgICAucXVlcnk8R2V0Q3VzdG9tZXJBZGRyZXNzZXNRdWVyeSwgR2V0Q3VzdG9tZXJBZGRyZXNzZXNRdWVyeVZhcmlhYmxlcz4oXHJcbiAgICAgICAgICAgICAgICAgICAgICBHRVRfQ1VTVE9NRVJfQUREUkVTU0VTLFxyXG4gICAgICAgICAgICAgICAgICAgICAgeyBjdXN0b21lcklkOiB0aGlzLmN1c3RvbWVySWQgfSxcclxuICAgICAgICAgICAgICAgICAgKVxyXG4gICAgICAgICAgICAgICAgICAubWFwU2luZ2xlKCh7IGN1c3RvbWVyIH0pID0+IGN1c3RvbWVyPy5hZGRyZXNzZXMgPz8gW10pXHJcbiAgICAgICAgICAgICAgICAgIC5waXBlKFxyXG4gICAgICAgICAgICAgICAgICAgICAgdGFwKGFkZHJlc3NlcyA9PiB7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHRoaXMuY3VycmVudEFkZHJlc3MpIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5zZWxlY3RlZEFkZHJlc3MgPSBhZGRyZXNzZXMuZmluZChcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEgPT5cclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhLnN0cmVldExpbmUxID09PSB0aGlzLmN1cnJlbnRBZGRyZXNzPy5zdHJlZXRMaW5lMSAmJlxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGEucG9zdGFsQ29kZSA9PT0gdGhpcy5jdXJyZW50QWRkcmVzcz8ucG9zdGFsQ29kZSxcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKTtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICB9XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKGFkZHJlc3Nlcy5sZW5ndGggPT09IDApIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGhpcy5jcmVhdGVOZXcgPSB0cnVlO1xyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICB0aGlzLnVzZUV4aXN0aW5nID0gZmFsc2U7XHJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgICAgfSksXHJcbiAgICAgICAgICAgICAgICAgIClcclxuICAgICAgICAgICAgOiBvZihbXSk7XHJcbiAgICAgICAgdGhpcy5hdmFpbGFibGVDb3VudHJpZXMkID0gdGhpcy5kYXRhU2VydmljZS5zZXR0aW5nc1xyXG4gICAgICAgICAgICAuZ2V0QXZhaWxhYmxlQ291bnRyaWVzKClcclxuICAgICAgICAgICAgLm1hcFNpbmdsZSgoeyBjb3VudHJpZXMgfSkgPT4gY291bnRyaWVzLml0ZW1zKTtcclxuICAgIH1cclxuXHJcbiAgICB0cmFja0J5Rm4oaXRlbTogQ3VzdG9tZXIpIHtcclxuICAgICAgICByZXR1cm4gaXRlbS5pZDtcclxuICAgIH1cclxuXHJcbiAgICBhZGRyZXNzSWRGbihpdGVtOiBBZGRyZXNzRnJhZ21lbnQpIHtcclxuICAgICAgICByZXR1cm4gaXRlbS5zdHJlZXRMaW5lMSArIGl0ZW0ucG9zdGFsQ29kZTtcclxuICAgIH1cclxuXHJcbiAgICBjYW5jZWwoKSB7XHJcbiAgICAgICAgdGhpcy5yZXNvbHZlV2l0aCgpO1xyXG4gICAgfVxyXG5cclxuICAgIHNlbGVjdCgpIHtcclxuICAgICAgICBpZiAodGhpcy51c2VFeGlzdGluZyAmJiB0aGlzLnNlbGVjdGVkQWRkcmVzcykge1xyXG4gICAgICAgICAgICB0aGlzLnJlc29sdmVXaXRoKHtcclxuICAgICAgICAgICAgICAgIC4uLnBpY2sodGhpcy5zZWxlY3RlZEFkZHJlc3MsIFtcclxuICAgICAgICAgICAgICAgICAgICAnZnVsbE5hbWUnLFxyXG4gICAgICAgICAgICAgICAgICAgICdjb21wYW55JyxcclxuICAgICAgICAgICAgICAgICAgICAnc3RyZWV0TGluZTEnLFxyXG4gICAgICAgICAgICAgICAgICAgICdzdHJlZXRMaW5lMicsXHJcbiAgICAgICAgICAgICAgICAgICAgJ2NpdHknLFxyXG4gICAgICAgICAgICAgICAgICAgICdwcm92aW5jZScsXHJcbiAgICAgICAgICAgICAgICAgICAgJ3Bob25lTnVtYmVyJyxcclxuICAgICAgICAgICAgICAgICAgICAncG9zdGFsQ29kZScsXHJcbiAgICAgICAgICAgICAgICBdKSxcclxuICAgICAgICAgICAgICAgIGNvdW50cnlDb2RlOiB0aGlzLnNlbGVjdGVkQWRkcmVzcy5jb3VudHJ5LmNvZGUsXHJcbiAgICAgICAgICAgIH0pO1xyXG4gICAgICAgIH1cclxuICAgICAgICBpZiAodGhpcy5jcmVhdGVOZXcgJiYgdGhpcy5hZGRyZXNzRm9ybS52YWxpZCkge1xyXG4gICAgICAgICAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLmFkZHJlc3NGb3JtLnZhbHVlO1xyXG4gICAgICAgICAgICB0aGlzLnJlc29sdmVXaXRoKGZvcm1WYWx1ZSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG59XHJcbiJdfQ==
@@ -0,0 +1,14 @@
1
+ import { ADDRESS_FRAGMENT } from '@vendure/admin-ui/core';
2
+ import { gql } from 'apollo-angular';
3
+ export const GET_CUSTOMER_ADDRESSES = gql `
4
+ query GetCustomerAddresses($customerId: ID!) {
5
+ customer(id: $customerId) {
6
+ id
7
+ addresses {
8
+ ...Address
9
+ }
10
+ }
11
+ }
12
+ ${ADDRESS_FRAGMENT}
13
+ `;
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWFkZHJlc3MtZGlhbG9nLmdyYXBocWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL29yZGVyL3NyYy9jb21wb25lbnRzL3NlbGVjdC1hZGRyZXNzLWRpYWxvZy9zZWxlY3QtYWRkcmVzcy1kaWFsb2cuZ3JhcGhxbC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7TUFTbkMsZ0JBQWdCO0NBQ3JCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBRERSRVNTX0ZSQUdNRU5UIH0gZnJvbSAnQHZlbmR1cmUvYWRtaW4tdWkvY29yZSc7XHJcbmltcG9ydCB7IGdxbCB9IGZyb20gJ2Fwb2xsby1hbmd1bGFyJztcclxuXHJcbmV4cG9ydCBjb25zdCBHRVRfQ1VTVE9NRVJfQUREUkVTU0VTID0gZ3FsYFxyXG4gICAgcXVlcnkgR2V0Q3VzdG9tZXJBZGRyZXNzZXMoJGN1c3RvbWVySWQ6IElEISkge1xyXG4gICAgICAgIGN1c3RvbWVyKGlkOiAkY3VzdG9tZXJJZCkge1xyXG4gICAgICAgICAgICBpZFxyXG4gICAgICAgICAgICBhZGRyZXNzZXMge1xyXG4gICAgICAgICAgICAgICAgLi4uQWRkcmVzc1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJHtBRERSRVNTX0ZSQUdNRU5UfVxyXG5gO1xyXG4iXX0=
@@ -0,0 +1,59 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import { FormBuilder, Validators } from '@angular/forms';
3
+ import { DataService } from '@vendure/admin-ui/core';
4
+ import { concat, of, Subject } from 'rxjs';
5
+ import { catchError, debounceTime, distinctUntilChanged, switchMap, tap } from 'rxjs/operators';
6
+ export class SelectCustomerDialogComponent {
7
+ constructor(dataService, formBuilder) {
8
+ this.dataService = dataService;
9
+ this.formBuilder = formBuilder;
10
+ this.isLoading = false;
11
+ this.input$ = new Subject();
12
+ this.selectedCustomer = [];
13
+ this.useExisting = true;
14
+ this.createNew = false;
15
+ this.customerForm = this.formBuilder.group({
16
+ title: '',
17
+ firstName: ['', Validators.required],
18
+ lastName: ['', Validators.required],
19
+ phoneNumber: '',
20
+ emailAddress: ['', [Validators.required, Validators.email]],
21
+ });
22
+ }
23
+ ngOnInit() {
24
+ this.customers$ = concat(of([]), // default items
25
+ this.input$.pipe(debounceTime(200), distinctUntilChanged(), tap(() => (this.isLoading = true)), switchMap(term => this.dataService.customer
26
+ .getCustomerList(10, 0, term)
27
+ .mapStream(({ customers }) => customers.items)
28
+ .pipe(catchError(() => of([])), // empty list on error
29
+ tap(() => (this.isLoading = false))))));
30
+ }
31
+ trackByFn(item) {
32
+ return item.id;
33
+ }
34
+ cancel() {
35
+ this.resolveWith();
36
+ }
37
+ select() {
38
+ if (this.useExisting && this.selectedCustomer.length === 1) {
39
+ this.resolveWith(this.selectedCustomer[0]);
40
+ }
41
+ if (this.createNew && this.customerForm.valid) {
42
+ const formValue = this.customerForm.value;
43
+ this.resolveWith(formValue);
44
+ }
45
+ }
46
+ }
47
+ SelectCustomerDialogComponent.decorators = [
48
+ { type: Component, args: [{
49
+ selector: 'vdr-select-customer-dialog',
50
+ template: "<ng-template vdrDialogTitle>{{ 'order.set-customer-for-order' | translate }}</ng-template>\r\n\r\n<clr-tabs>\r\n <clr-tab>\r\n <button clrTabLink>{{ 'order.existing-customer' | translate }}</button>\r\n\r\n <ng-template [(clrIfActive)]=\"useExisting\">\r\n <clr-tab-content>\r\n <ng-select\r\n [items]=\"customers$ | async\"\r\n appendTo=\"body\"\r\n bindLabel=\"name\"\r\n [addTag]=\"false\"\r\n [multiple]=\"true\"\r\n [hideSelected]=\"true\"\r\n [trackByFn]=\"trackByFn\"\r\n [minTermLength]=\"2\"\r\n [loading]=\"isLoading\"\r\n [typeahead]=\"input$\"\r\n [(ngModel)]=\"selectedCustomer\"\r\n class=\"mt4\"\r\n >\r\n <ng-template ng-label-tmp let-item=\"item\" let-clear=\"clear\">\r\n <clr-icon shape=\"user\" class=\"is-solid\"></clr-icon\r\n ><span class=\"ml2 mr2\">{{ item.firstName }} {{ item.lastName }}</span>\r\n <vdr-chip>{{ item.emailAddress }}</vdr-chip>\r\n </ng-template>\r\n <ng-template ng-option-tmp let-item=\"item\">\r\n <clr-icon shape=\"user\" class=\"is-solid\"></clr-icon\r\n ><span class=\"ml2 mr2\">{{ item.firstName }} {{ item.lastName }}</span>\r\n <vdr-chip>{{ item.emailAddress }}</vdr-chip>\r\n </ng-template>\r\n </ng-select>\r\n </clr-tab-content>\r\n </ng-template>\r\n </clr-tab>\r\n <clr-tab>\r\n <button clrTabLink>{{ 'customer.create-new-customer' | translate }}</button>\r\n\r\n <ng-template [(clrIfActive)]=\"createNew\">\r\n <clr-tab-content>\r\n <form [formGroup]=\"customerForm\">\r\n <vdr-form-field [label]=\"'customer.title' | translate\" for=\"title\">\r\n <input id=\"title\" type=\"text\" formControlName=\"title\" />\r\n </vdr-form-field>\r\n <vdr-form-field [label]=\"'customer.first-name' | translate\" for=\"firstName\">\r\n <input id=\"firstName\" type=\"text\" formControlName=\"firstName\" />\r\n </vdr-form-field>\r\n <vdr-form-field [label]=\"'customer.last-name' | translate\" for=\"lastName\">\r\n <input id=\"lastName\" type=\"text\" formControlName=\"lastName\" />\r\n </vdr-form-field>\r\n <vdr-form-field [label]=\"'customer.email-address' | translate\" for=\"emailAddress\">\r\n <input id=\"emailAddress\" type=\"text\" formControlName=\"emailAddress\" />\r\n </vdr-form-field>\r\n <vdr-form-field [label]=\"'customer.phone-number' | translate\" for=\"phoneNumber\">\r\n <input id=\"phoneNumber\" type=\"text\" formControlName=\"phoneNumber\" />\r\n </vdr-form-field>\r\n </form>\r\n </clr-tab-content>\r\n </ng-template>\r\n </clr-tab>\r\n</clr-tabs>\r\n\r\n<ng-template vdrDialogButtons>\r\n <button type=\"button\" class=\"btn\" (click)=\"cancel()\">{{ 'common.cancel' | translate }}</button>\r\n <button\r\n type=\"submit\"\r\n (click)=\"select()\"\r\n [disabled]=\"(useExisting && selectedCustomer.length === 0) || (createNew && customerForm.invalid)\"\r\n class=\"btn btn-primary\"\r\n >\r\n {{ 'common.okay' | translate }}\r\n </button>\r\n</ng-template>\r\n",
51
+ changeDetection: ChangeDetectionStrategy.OnPush,
52
+ styles: [""]
53
+ },] }
54
+ ];
55
+ SelectCustomerDialogComponent.ctorParameters = () => [
56
+ { type: DataService },
57
+ { type: FormBuilder }
58
+ ];
59
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LWN1c3RvbWVyLWRpYWxvZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL29yZGVyL3NyYy9jb21wb25lbnRzL3NlbGVjdC1jdXN0b21lci1kaWFsb2cvc2VsZWN0LWN1c3RvbWVyLWRpYWxvZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBVSxNQUFNLGVBQWUsQ0FBQztBQUMzRSxPQUFPLEVBQUUsV0FBVyxFQUFhLFVBQVUsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBdUIsV0FBVyxFQUFnQyxNQUFNLHdCQUF3QixDQUFDO0FBQ3hHLE9BQU8sRUFBRSxNQUFNLEVBQWMsRUFBRSxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN2RCxPQUFPLEVBQUUsVUFBVSxFQUFFLFlBQVksRUFBRSxvQkFBb0IsRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFVaEcsTUFBTSxPQUFPLDZCQUE2QjtJQVV0QyxZQUFvQixXQUF3QixFQUFVLFdBQXdCO1FBQTFELGdCQUFXLEdBQVgsV0FBVyxDQUFhO1FBQVUsZ0JBQVcsR0FBWCxXQUFXLENBQWE7UUFOOUUsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUNsQixXQUFNLEdBQUcsSUFBSSxPQUFPLEVBQVUsQ0FBQztRQUMvQixxQkFBZ0IsR0FBZSxFQUFFLENBQUM7UUFDbEMsZ0JBQVcsR0FBRyxJQUFJLENBQUM7UUFDbkIsY0FBUyxHQUFHLEtBQUssQ0FBQztRQUdkLElBQUksQ0FBQyxZQUFZLEdBQUcsSUFBSSxDQUFDLFdBQVcsQ0FBQyxLQUFLLENBQUM7WUFDdkMsS0FBSyxFQUFFLEVBQUU7WUFDVCxTQUFTLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNwQyxRQUFRLEVBQUUsQ0FBQyxFQUFFLEVBQUUsVUFBVSxDQUFDLFFBQVEsQ0FBQztZQUNuQyxXQUFXLEVBQUUsRUFBRTtZQUNmLFlBQVksRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsVUFBVSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQzlELENBQUMsQ0FBQztJQUNQLENBQUM7SUFFRCxRQUFRO1FBQ0osSUFBSSxDQUFDLFVBQVUsR0FBRyxNQUFNLENBQ3BCLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxnQkFBZ0I7UUFDeEIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQ1osWUFBWSxDQUFDLEdBQUcsQ0FBQyxFQUNqQixvQkFBb0IsRUFBRSxFQUN0QixHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxDQUFDLEVBQ2xDLFNBQVMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUNiLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUTthQUNwQixlQUFlLENBQUMsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUM7YUFDNUIsU0FBUyxDQUFDLENBQUMsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFFLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQzthQUM3QyxJQUFJLENBQ0QsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxFQUFFLHNCQUFzQjtRQUNoRCxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQ3RDLENBQ1IsQ0FDSixDQUNKLENBQUM7SUFDTixDQUFDO0lBRUQsU0FBUyxDQUFDLElBQWM7UUFDcEIsT0FBTyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBQ25CLENBQUM7SUFFRCxNQUFNO1FBQ0YsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3ZCLENBQUM7SUFFRCxNQUFNO1FBQ0YsSUFBSSxJQUFJLENBQUMsV0FBVyxJQUFJLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQ3hELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDOUM7UUFDRCxJQUFJLElBQUksQ0FBQyxTQUFTLElBQUksSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUU7WUFDM0MsTUFBTSxTQUFTLEdBQUcsSUFBSSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUM7WUFDMUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsQ0FBQztTQUMvQjtJQUNMLENBQUM7OztZQTlESixTQUFTLFNBQUM7Z0JBQ1AsUUFBUSxFQUFFLDRCQUE0QjtnQkFDdEMsd3FIQUFzRDtnQkFFdEQsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07O2FBQ2xEOzs7WUFYNkIsV0FBVztZQURoQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgT25Jbml0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IEZvcm1CdWlsZGVyLCBGb3JtR3JvdXAsIFZhbGlkYXRvcnMgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XHJcbmltcG9ydCB7IENyZWF0ZUN1c3RvbWVySW5wdXQsIERhdGFTZXJ2aWNlLCBEaWFsb2csIEdldEN1c3RvbWVyTGlzdFF1ZXJ5IH0gZnJvbSAnQHZlbmR1cmUvYWRtaW4tdWkvY29yZSc7XHJcbmltcG9ydCB7IGNvbmNhdCwgT2JzZXJ2YWJsZSwgb2YsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgY2F0Y2hFcnJvciwgZGVib3VuY2VUaW1lLCBkaXN0aW5jdFVudGlsQ2hhbmdlZCwgc3dpdGNoTWFwLCB0YXAgfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XHJcblxyXG5leHBvcnQgdHlwZSBDdXN0b21lciA9IEdldEN1c3RvbWVyTGlzdFF1ZXJ5WydjdXN0b21lcnMnXVsnaXRlbXMnXVtudW1iZXJdO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3Zkci1zZWxlY3QtY3VzdG9tZXItZGlhbG9nJyxcclxuICAgIHRlbXBsYXRlVXJsOiAnLi9zZWxlY3QtY3VzdG9tZXItZGlhbG9nLmNvbXBvbmVudC5odG1sJyxcclxuICAgIHN0eWxlVXJsczogWycuL3NlbGVjdC1jdXN0b21lci1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VsZWN0Q3VzdG9tZXJEaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIERpYWxvZzxDdXN0b21lciB8IENyZWF0ZUN1c3RvbWVySW5wdXQ+IHtcclxuICAgIHJlc29sdmVXaXRoOiAocmVzdWx0PzogQ3VzdG9tZXIgfCBDcmVhdGVDdXN0b21lcklucHV0KSA9PiB2b2lkO1xyXG4gICAgY3VzdG9tZXJGb3JtOiBGb3JtR3JvdXA7XHJcbiAgICBjdXN0b21lcnMkOiBPYnNlcnZhYmxlPEN1c3RvbWVyW10+O1xyXG4gICAgaXNMb2FkaW5nID0gZmFsc2U7XHJcbiAgICBpbnB1dCQgPSBuZXcgU3ViamVjdDxzdHJpbmc+KCk7XHJcbiAgICBzZWxlY3RlZEN1c3RvbWVyOiBDdXN0b21lcltdID0gW107XHJcbiAgICB1c2VFeGlzdGluZyA9IHRydWU7XHJcbiAgICBjcmVhdGVOZXcgPSBmYWxzZTtcclxuXHJcbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIGRhdGFTZXJ2aWNlOiBEYXRhU2VydmljZSwgcHJpdmF0ZSBmb3JtQnVpbGRlcjogRm9ybUJ1aWxkZXIpIHtcclxuICAgICAgICB0aGlzLmN1c3RvbWVyRm9ybSA9IHRoaXMuZm9ybUJ1aWxkZXIuZ3JvdXAoe1xyXG4gICAgICAgICAgICB0aXRsZTogJycsXHJcbiAgICAgICAgICAgIGZpcnN0TmFtZTogWycnLCBWYWxpZGF0b3JzLnJlcXVpcmVkXSxcclxuICAgICAgICAgICAgbGFzdE5hbWU6IFsnJywgVmFsaWRhdG9ycy5yZXF1aXJlZF0sXHJcbiAgICAgICAgICAgIHBob25lTnVtYmVyOiAnJyxcclxuICAgICAgICAgICAgZW1haWxBZGRyZXNzOiBbJycsIFtWYWxpZGF0b3JzLnJlcXVpcmVkLCBWYWxpZGF0b3JzLmVtYWlsXV0sXHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgbmdPbkluaXQoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5jdXN0b21lcnMkID0gY29uY2F0KFxyXG4gICAgICAgICAgICBvZihbXSksIC8vIGRlZmF1bHQgaXRlbXNcclxuICAgICAgICAgICAgdGhpcy5pbnB1dCQucGlwZShcclxuICAgICAgICAgICAgICAgIGRlYm91bmNlVGltZSgyMDApLFxyXG4gICAgICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcclxuICAgICAgICAgICAgICAgIHRhcCgoKSA9PiAodGhpcy5pc0xvYWRpbmcgPSB0cnVlKSksXHJcbiAgICAgICAgICAgICAgICBzd2l0Y2hNYXAodGVybSA9PlxyXG4gICAgICAgICAgICAgICAgICAgIHRoaXMuZGF0YVNlcnZpY2UuY3VzdG9tZXJcclxuICAgICAgICAgICAgICAgICAgICAgICAgLmdldEN1c3RvbWVyTGlzdCgxMCwgMCwgdGVybSlcclxuICAgICAgICAgICAgICAgICAgICAgICAgLm1hcFN0cmVhbSgoeyBjdXN0b21lcnMgfSkgPT4gY3VzdG9tZXJzLml0ZW1zKVxyXG4gICAgICAgICAgICAgICAgICAgICAgICAucGlwZShcclxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhdGNoRXJyb3IoKCkgPT4gb2YoW10pKSwgLy8gZW1wdHkgbGlzdCBvbiBlcnJvclxyXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFwKCgpID0+ICh0aGlzLmlzTG9hZGluZyA9IGZhbHNlKSksXHJcbiAgICAgICAgICAgICAgICAgICAgICAgICksXHJcbiAgICAgICAgICAgICAgICApLFxyXG4gICAgICAgICAgICApLFxyXG4gICAgICAgICk7XHJcbiAgICB9XHJcblxyXG4gICAgdHJhY2tCeUZuKGl0ZW06IEN1c3RvbWVyKSB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW0uaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgY2FuY2VsKCkge1xyXG4gICAgICAgIHRoaXMucmVzb2x2ZVdpdGgoKTtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3QoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMudXNlRXhpc3RpbmcgJiYgdGhpcy5zZWxlY3RlZEN1c3RvbWVyLmxlbmd0aCA9PT0gMSkge1xyXG4gICAgICAgICAgICB0aGlzLnJlc29sdmVXaXRoKHRoaXMuc2VsZWN0ZWRDdXN0b21lclswXSk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGlmICh0aGlzLmNyZWF0ZU5ldyAmJiB0aGlzLmN1c3RvbWVyRm9ybS52YWxpZCkge1xyXG4gICAgICAgICAgICBjb25zdCBmb3JtVmFsdWUgPSB0aGlzLmN1c3RvbWVyRm9ybS52YWx1ZTtcclxuICAgICAgICAgICAgdGhpcy5yZXNvbHZlV2l0aChmb3JtVmFsdWUpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxufVxyXG4iXX0=
@@ -0,0 +1,30 @@
1
+ import { Component, ChangeDetectionStrategy } from '@angular/core';
2
+ export class SelectShippingMethodDialogComponent {
3
+ constructor() { }
4
+ ngOnInit() {
5
+ if (this.currentSelectionId) {
6
+ this.selectedMethod = this.eligibleShippingMethods.find(m => m.id === this.currentSelectionId);
7
+ }
8
+ }
9
+ methodIdFn(item) {
10
+ return item.id;
11
+ }
12
+ cancel() {
13
+ this.resolveWith();
14
+ }
15
+ select() {
16
+ if (this.selectedMethod) {
17
+ this.resolveWith(this.selectedMethod.id);
18
+ }
19
+ }
20
+ }
21
+ SelectShippingMethodDialogComponent.decorators = [
22
+ { type: Component, args: [{
23
+ selector: 'vdr-select-shipping-method-dialog',
24
+ template: "<ng-template vdrDialogTitle>{{ 'order.select-shipping-method' | translate }}</ng-template>\r\n<vdr-radio-card-fieldset\r\n [idFn]=\"methodIdFn\"\r\n [selectedItemId]=\"selectedMethod?.id\"\r\n (selectItem)=\"selectedMethod = $event\"\r\n>\r\n <vdr-radio-card *ngFor=\"let quote of eligibleShippingMethods\" [item]=\"quote\">\r\n <div class=\"result-details\">\r\n <vdr-labeled-data [label]=\"'settings.shipping-method' | translate\">\r\n {{ quote.name }}\r\n </vdr-labeled-data>\r\n <div class=\"price-row\">\r\n <vdr-labeled-data [label]=\"'common.price' | translate\">\r\n {{ quote.price | localeCurrency: currencyCode }}\r\n </vdr-labeled-data>\r\n <vdr-labeled-data [label]=\"'common.price-with-tax' | translate\">\r\n {{ quote.priceWithTax | localeCurrency: currencyCode }}\r\n </vdr-labeled-data>\r\n </div>\r\n <vdr-object-tree *ngIf=\"quote.metadata\" [value]=\"quote.metadata\"></vdr-object-tree>\r\n </div>\r\n </vdr-radio-card>\r\n</vdr-radio-card-fieldset>\r\n\r\n<ng-template vdrDialogButtons>\r\n <button type=\"button\" class=\"btn\" (click)=\"cancel()\">{{ 'common.cancel' | translate }}</button>\r\n <button\r\n type=\"submit\"\r\n (click)=\"select()\"\r\n [disabled]=\"!selectedMethod\"\r\n class=\"btn btn-primary\"\r\n >\r\n {{ 'common.okay' | translate }}\r\n </button>\r\n</ng-template>\r\n",
25
+ changeDetection: ChangeDetectionStrategy.OnPush,
26
+ styles: [""]
27
+ },] }
28
+ ];
29
+ SelectShippingMethodDialogComponent.ctorParameters = () => [];
30
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VsZWN0LXNoaXBwaW5nLW1ldGhvZC1kaWFsb2cuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9vcmRlci9zcmMvY29tcG9uZW50cy9zZWxlY3Qtc2hpcHBpbmctbWV0aG9kLWRpYWxvZy9zZWxlY3Qtc2hpcHBpbmctbWV0aG9kLWRpYWxvZy5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBVSx1QkFBdUIsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQWlCM0UsTUFBTSxPQUFPLG1DQUFtQztJQU01QyxnQkFBZSxDQUFDO0lBRWhCLFFBQVE7UUFDSixJQUFJLElBQUksQ0FBQyxrQkFBa0IsRUFBRTtZQUN6QixJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxLQUFLLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxDQUFDO1NBQ2xHO0lBQ0wsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUF5QjtRQUNoQyxPQUFPLElBQUksQ0FBQyxFQUFFLENBQUM7SUFDbkIsQ0FBQztJQUVELE1BQU07UUFDRixJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDdkIsQ0FBQztJQUVELE1BQU07UUFDRixJQUFJLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDckIsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQzVDO0lBQ0wsQ0FBQzs7O1lBaENKLFNBQVMsU0FBQztnQkFDUCxRQUFRLEVBQUUsbUNBQW1DO2dCQUM3QyxnaURBQTZEO2dCQUU3RCxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTs7YUFDbEQiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHtcclxuICAgIENyZWF0ZUFkZHJlc3NJbnB1dCxcclxuICAgIEN1cnJlbmN5Q29kZSxcclxuICAgIERpYWxvZyxcclxuICAgIERyYWZ0T3JkZXJFbGlnaWJsZVNoaXBwaW5nTWV0aG9kc1F1ZXJ5LFxyXG59IGZyb20gJ0B2ZW5kdXJlL2FkbWluLXVpL2NvcmUnO1xyXG5cclxudHlwZSBTaGlwcGluZ01ldGhvZFF1b3RlID1cclxuICAgIERyYWZ0T3JkZXJFbGlnaWJsZVNoaXBwaW5nTWV0aG9kc1F1ZXJ5WydlbGlnaWJsZVNoaXBwaW5nTWV0aG9kc0ZvckRyYWZ0T3JkZXInXVtudW1iZXJdO1xyXG5cclxuQENvbXBvbmVudCh7XHJcbiAgICBzZWxlY3RvcjogJ3Zkci1zZWxlY3Qtc2hpcHBpbmctbWV0aG9kLWRpYWxvZycsXHJcbiAgICB0ZW1wbGF0ZVVybDogJy4vc2VsZWN0LXNoaXBwaW5nLW1ldGhvZC1kaWFsb2cuY29tcG9uZW50Lmh0bWwnLFxyXG4gICAgc3R5bGVVcmxzOiBbJy4vc2VsZWN0LXNoaXBwaW5nLW1ldGhvZC1kaWFsb2cuY29tcG9uZW50LnNjc3MnXSxcclxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgU2VsZWN0U2hpcHBpbmdNZXRob2REaWFsb2dDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIERpYWxvZzxzdHJpbmc+IHtcclxuICAgIHJlc29sdmVXaXRoOiAocmVzdWx0Pzogc3RyaW5nKSA9PiB2b2lkO1xyXG4gICAgZWxpZ2libGVTaGlwcGluZ01ldGhvZHM6IFNoaXBwaW5nTWV0aG9kUXVvdGVbXTtcclxuICAgIGN1cnJlbnRTZWxlY3Rpb25JZDogc3RyaW5nO1xyXG4gICAgY3VycmVuY3lDb2RlOiBDdXJyZW5jeUNvZGU7XHJcbiAgICBzZWxlY3RlZE1ldGhvZDogU2hpcHBpbmdNZXRob2RRdW90ZSB8IHVuZGVmaW5lZDtcclxuICAgIGNvbnN0cnVjdG9yKCkge31cclxuXHJcbiAgICBuZ09uSW5pdCgpOiB2b2lkIHtcclxuICAgICAgICBpZiAodGhpcy5jdXJyZW50U2VsZWN0aW9uSWQpIHtcclxuICAgICAgICAgICAgdGhpcy5zZWxlY3RlZE1ldGhvZCA9IHRoaXMuZWxpZ2libGVTaGlwcGluZ01ldGhvZHMuZmluZChtID0+IG0uaWQgPT09IHRoaXMuY3VycmVudFNlbGVjdGlvbklkKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgbWV0aG9kSWRGbihpdGVtOiBTaGlwcGluZ01ldGhvZFF1b3RlKSB7XHJcbiAgICAgICAgcmV0dXJuIGl0ZW0uaWQ7XHJcbiAgICB9XHJcblxyXG4gICAgY2FuY2VsKCkge1xyXG4gICAgICAgIHRoaXMucmVzb2x2ZVdpdGgoKTtcclxuICAgIH1cclxuXHJcbiAgICBzZWxlY3QoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuc2VsZWN0ZWRNZXRob2QpIHtcclxuICAgICAgICAgICAgdGhpcy5yZXNvbHZlV2l0aCh0aGlzLnNlbGVjdGVkTWV0aG9kLmlkKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcbn1cclxuIl19
@@ -3,6 +3,8 @@ import { RouterModule } from '@angular/router';
3
3
  import { SharedModule } from '@vendure/admin-ui/core';
4
4
  import { AddManualPaymentDialogComponent } from './components/add-manual-payment-dialog/add-manual-payment-dialog.component';
5
5
  import { CancelOrderDialogComponent } from './components/cancel-order-dialog/cancel-order-dialog.component';
6
+ import { DraftOrderDetailComponent } from './components/draft-order-detail/draft-order-detail.component';
7
+ import { DraftOrderVariantSelectorComponent } from './components/draft-order-variant-selector/draft-order-variant-selector.component';
6
8
  import { FulfillOrderDialogComponent } from './components/fulfill-order-dialog/fulfill-order-dialog.component';
7
9
  import { FulfillmentCardComponent } from './components/fulfillment-card/fulfillment-card.component';
8
10
  import { FulfillmentDetailComponent } from './components/fulfillment-detail/fulfillment-detail.component';
@@ -27,9 +29,13 @@ import { PaymentDetailComponent } from './components/payment-detail/payment-deta
27
29
  import { PaymentStateLabelComponent } from './components/payment-state-label/payment-state-label.component';
28
30
  import { RefundOrderDialogComponent } from './components/refund-order-dialog/refund-order-dialog.component';
29
31
  import { RefundStateLabelComponent } from './components/refund-state-label/refund-state-label.component';
32
+ import { SelectCustomerDialogComponent } from './components/select-customer-dialog/select-customer-dialog.component';
30
33
  import { SettleRefundDialogComponent } from './components/settle-refund-dialog/settle-refund-dialog.component';
31
34
  import { SimpleItemListComponent } from './components/simple-item-list/simple-item-list.component';
32
35
  import { orderRoutes } from './order.routes';
36
+ import { SelectAddressDialogComponent } from './components/select-address-dialog/select-address-dialog.component';
37
+ import { CouponCodeSelectorComponent } from './components/coupon-code-selector/coupon-code-selector.component';
38
+ import { SelectShippingMethodDialogComponent } from './components/select-shipping-method-dialog/select-shipping-method-dialog.component';
33
39
  export class OrderModule {
34
40
  }
35
41
  OrderModule.decorators = [
@@ -64,7 +70,13 @@ OrderModule.decorators = [
64
70
  ModificationDetailComponent,
65
71
  AddManualPaymentDialogComponent,
66
72
  OrderStateSelectDialogComponent,
73
+ DraftOrderDetailComponent,
74
+ DraftOrderVariantSelectorComponent,
75
+ SelectCustomerDialogComponent,
76
+ SelectAddressDialogComponent,
77
+ CouponCodeSelectorComponent,
78
+ SelectShippingMethodDialogComponent,
67
79
  ],
68
80
  },] }
69
81
  ];
70
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9vcmRlci9zcmMvb3JkZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQztBQUM3SCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM1RyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQztBQUMvRyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNwRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUMxRyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx3RUFBd0UsQ0FBQztBQUN4SCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNwRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM3RyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwwRUFBMEUsQ0FBQztBQUMxSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSw4RUFBOEUsQ0FBQztBQUNoSSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSw4RUFBOEUsQ0FBQztBQUNoSSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMxRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM1RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMxRyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQztBQUM3SCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNyRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM5RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM1RyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM1RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQztBQUMvRyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFtQzdDLE1BQU0sT0FBTyxXQUFXOzs7WUFqQ3ZCLFFBQVEsU0FBQztnQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDM0QsWUFBWSxFQUFFO29CQUNWLGtCQUFrQjtvQkFDbEIsb0JBQW9CO29CQUNwQiwyQkFBMkI7b0JBQzNCLHdCQUF3QjtvQkFDeEIsMEJBQTBCO29CQUMxQiwwQkFBMEI7b0JBQzFCLDBCQUEwQjtvQkFDMUIsb0JBQW9CO29CQUNwQix5QkFBeUI7b0JBQ3pCLHlCQUF5QjtvQkFDekIsMkJBQTJCO29CQUMzQixxQkFBcUI7b0JBQ3JCLDBCQUEwQjtvQkFDMUIsc0JBQXNCO29CQUN0Qix1QkFBdUI7b0JBQ3ZCLDhCQUE4QjtvQkFDOUIsMEJBQTBCO29CQUMxQix5QkFBeUI7b0JBQ3pCLHlCQUF5QjtvQkFDekIsZ0NBQWdDO29CQUNoQyw4QkFBOEI7b0JBQzlCLHdCQUF3QjtvQkFDeEIsb0JBQW9CO29CQUNwQixtQkFBbUI7b0JBQ25CLGdDQUFnQztvQkFDaEMsMkJBQTJCO29CQUMzQiwrQkFBK0I7b0JBQy9CLCtCQUErQjtpQkFDbEM7YUFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgU2hhcmVkTW9kdWxlIH0gZnJvbSAnQHZlbmR1cmUvYWRtaW4tdWkvY29yZSc7XG5cbmltcG9ydCB7IEFkZE1hbnVhbFBheW1lbnREaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvYWRkLW1hbnVhbC1wYXltZW50LWRpYWxvZy9hZGQtbWFudWFsLXBheW1lbnQtZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBDYW5jZWxPcmRlckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jYW5jZWwtb3JkZXItZGlhbG9nL2NhbmNlbC1vcmRlci1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IEZ1bGZpbGxPcmRlckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mdWxmaWxsLW9yZGVyLWRpYWxvZy9mdWxmaWxsLW9yZGVyLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnVsZmlsbG1lbnRDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Z1bGZpbGxtZW50LWNhcmQvZnVsZmlsbG1lbnQtY2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnVsZmlsbG1lbnREZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZnVsZmlsbG1lbnQtZGV0YWlsL2Z1bGZpbGxtZW50LWRldGFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgRnVsZmlsbG1lbnRTdGF0ZUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Z1bGZpbGxtZW50LXN0YXRlLWxhYmVsL2Z1bGZpbGxtZW50LXN0YXRlLWxhYmVsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMaW5lRnVsZmlsbG1lbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbGluZS1mdWxmaWxsbWVudC9saW5lLWZ1bGZpbGxtZW50LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMaW5lUmVmdW5kc0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9saW5lLXJlZnVuZHMvbGluZS1yZWZ1bmRzLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBNb2RpZmljYXRpb25EZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbW9kaWZpY2F0aW9uLWRldGFpbC9tb2RpZmljYXRpb24tZGV0YWlsLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBPcmRlckN1c3RvbUZpZWxkc0NhcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItY3VzdG9tLWZpZWxkcy1jYXJkL29yZGVyLWN1c3RvbS1maWVsZHMtY2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3JkZXJEZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItZGV0YWlsL29yZGVyLWRldGFpbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3JkZXJFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItZWRpdG9yL29yZGVyLWVkaXRvci5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3JkZXJFZGl0c1ByZXZpZXdEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItZWRpdHMtcHJldmlldy1kaWFsb2cvb3JkZXItZWRpdHMtcHJldmlldy1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IE9yZGVySGlzdG9yeUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci1oaXN0b3J5L29yZGVyLWhpc3RvcnkuY29tcG9uZW50JztcbmltcG9ydCB7IE9yZGVyTGlzdENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci1saXN0L29yZGVyLWxpc3QuY29tcG9uZW50JztcbmltcG9ydCB7IE9yZGVyUGF5bWVudENhcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItcGF5bWVudC1jYXJkL29yZGVyLXBheW1lbnQtY2FyZC5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3JkZXJQcm9jZXNzR3JhcGhEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItcHJvY2Vzcy1ncmFwaC1kaWFsb2cvb3JkZXItcHJvY2Vzcy1ncmFwaC1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IE9yZGVyUHJvY2Vzc0VkZ2VDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItcHJvY2Vzcy1ncmFwaC9vcmRlci1wcm9jZXNzLWVkZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IE9yZGVyUHJvY2Vzc0dyYXBoQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29yZGVyLXByb2Nlc3MtZ3JhcGgvb3JkZXItcHJvY2Vzcy1ncmFwaC5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3JkZXJQcm9jZXNzTm9kZUNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci1wcm9jZXNzLWdyYXBoL29yZGVyLXByb2Nlc3Mtbm9kZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgT3JkZXJTdGF0ZVNlbGVjdERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci1zdGF0ZS1zZWxlY3QtZGlhbG9nL29yZGVyLXN0YXRlLXNlbGVjdC1kaWFsb2cuY29tcG9uZW50JztcbmltcG9ydCB7IE9yZGVyVGFibGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItdGFibGUvb3JkZXItdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7IFBheW1lbnREZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcGF5bWVudC1kZXRhaWwvcGF5bWVudC1kZXRhaWwuY29tcG9uZW50JztcbmltcG9ydCB7IFBheW1lbnRTdGF0ZUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3BheW1lbnQtc3RhdGUtbGFiZWwvcGF5bWVudC1zdGF0ZS1sYWJlbC5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVmdW5kT3JkZXJEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmVmdW5kLW9yZGVyLWRpYWxvZy9yZWZ1bmQtb3JkZXItZGlhbG9nLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBSZWZ1bmRTdGF0ZUxhYmVsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3JlZnVuZC1zdGF0ZS1sYWJlbC9yZWZ1bmQtc3RhdGUtbGFiZWwuY29tcG9uZW50JztcbmltcG9ydCB7IFNldHRsZVJlZnVuZERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZXR0bGUtcmVmdW5kLWRpYWxvZy9zZXR0bGUtcmVmdW5kLWRpYWxvZy5jb21wb25lbnQnO1xuaW1wb3J0IHsgU2ltcGxlSXRlbUxpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvc2ltcGxlLWl0ZW0tbGlzdC9zaW1wbGUtaXRlbS1saXN0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBvcmRlclJvdXRlcyB9IGZyb20gJy4vb3JkZXIucm91dGVzJztcblxuQE5nTW9kdWxlKHtcbiAgICBpbXBvcnRzOiBbU2hhcmVkTW9kdWxlLCBSb3V0ZXJNb2R1bGUuZm9yQ2hpbGQob3JkZXJSb3V0ZXMpXSxcbiAgICBkZWNsYXJhdGlvbnM6IFtcbiAgICAgICAgT3JkZXJMaXN0Q29tcG9uZW50LFxuICAgICAgICBPcmRlckRldGFpbENvbXBvbmVudCxcbiAgICAgICAgRnVsZmlsbE9yZGVyRGlhbG9nQ29tcG9uZW50LFxuICAgICAgICBMaW5lRnVsZmlsbG1lbnRDb21wb25lbnQsXG4gICAgICAgIFJlZnVuZE9yZGVyRGlhbG9nQ29tcG9uZW50LFxuICAgICAgICBDYW5jZWxPcmRlckRpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAgUGF5bWVudFN0YXRlTGFiZWxDb21wb25lbnQsXG4gICAgICAgIExpbmVSZWZ1bmRzQ29tcG9uZW50LFxuICAgICAgICBPcmRlclBheW1lbnRDYXJkQ29tcG9uZW50LFxuICAgICAgICBSZWZ1bmRTdGF0ZUxhYmVsQ29tcG9uZW50LFxuICAgICAgICBTZXR0bGVSZWZ1bmREaWFsb2dDb21wb25lbnQsXG4gICAgICAgIE9yZGVySGlzdG9yeUNvbXBvbmVudCxcbiAgICAgICAgRnVsZmlsbG1lbnREZXRhaWxDb21wb25lbnQsXG4gICAgICAgIFBheW1lbnREZXRhaWxDb21wb25lbnQsXG4gICAgICAgIFNpbXBsZUl0ZW1MaXN0Q29tcG9uZW50LFxuICAgICAgICBPcmRlckN1c3RvbUZpZWxkc0NhcmRDb21wb25lbnQsXG4gICAgICAgIE9yZGVyUHJvY2Vzc0dyYXBoQ29tcG9uZW50LFxuICAgICAgICBPcmRlclByb2Nlc3NOb2RlQ29tcG9uZW50LFxuICAgICAgICBPcmRlclByb2Nlc3NFZGdlQ29tcG9uZW50LFxuICAgICAgICBPcmRlclByb2Nlc3NHcmFwaERpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAgRnVsZmlsbG1lbnRTdGF0ZUxhYmVsQ29tcG9uZW50LFxuICAgICAgICBGdWxmaWxsbWVudENhcmRDb21wb25lbnQsXG4gICAgICAgIE9yZGVyRWRpdG9yQ29tcG9uZW50LFxuICAgICAgICBPcmRlclRhYmxlQ29tcG9uZW50LFxuICAgICAgICBPcmRlckVkaXRzUHJldmlld0RpYWxvZ0NvbXBvbmVudCxcbiAgICAgICAgTW9kaWZpY2F0aW9uRGV0YWlsQ29tcG9uZW50LFxuICAgICAgICBBZGRNYW51YWxQYXltZW50RGlhbG9nQ29tcG9uZW50LFxuICAgICAgICBPcmRlclN0YXRlU2VsZWN0RGlhbG9nQ29tcG9uZW50LFxuICAgIF0sXG59KVxuZXhwb3J0IGNsYXNzIE9yZGVyTW9kdWxlIHt9XG4iXX0=
82
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXIubW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9vcmRlci9zcmMvb3JkZXIubW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUV0RCxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQztBQUM3SCxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM1RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSxrRkFBa0YsQ0FBQztBQUN0SSxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQztBQUMvRyxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNwRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUMxRyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx3RUFBd0UsQ0FBQztBQUN4SCxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNwRyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM3RyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSwwRUFBMEUsQ0FBQztBQUMxSCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN4RixPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSw4RUFBOEUsQ0FBQztBQUNoSSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxvREFBb0QsQ0FBQztBQUMzRixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw4Q0FBOEMsQ0FBQztBQUNsRixPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsZ0NBQWdDLEVBQUUsTUFBTSw4RUFBOEUsQ0FBQztBQUNoSSxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMxRyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM1RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSwrREFBK0QsQ0FBQztBQUMxRyxPQUFPLEVBQUUsK0JBQStCLEVBQUUsTUFBTSw0RUFBNEUsQ0FBQztBQUM3SCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUNyRixPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxzREFBc0QsQ0FBQztBQUM5RixPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM1RyxPQUFPLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSxnRUFBZ0UsQ0FBQztBQUM1RyxPQUFPLEVBQUUseUJBQXlCLEVBQUUsTUFBTSw4REFBOEQsQ0FBQztBQUN6RyxPQUFPLEVBQUUsNkJBQTZCLEVBQUUsTUFBTSxzRUFBc0UsQ0FBQztBQUNySCxPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxrRUFBa0UsQ0FBQztBQUMvRyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSwwREFBMEQsQ0FBQztBQUNuRyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDN0MsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sb0VBQW9FLENBQUM7QUFDbEgsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sa0VBQWtFLENBQUM7QUFDL0csT0FBTyxFQUFFLG1DQUFtQyxFQUFFLE1BQU0sb0ZBQW9GLENBQUM7QUF5Q3pJLE1BQU0sT0FBTyxXQUFXOzs7WUF2Q3ZCLFFBQVEsU0FBQztnQkFDTixPQUFPLEVBQUUsQ0FBQyxZQUFZLEVBQUUsWUFBWSxDQUFDLFFBQVEsQ0FBQyxXQUFXLENBQUMsQ0FBQztnQkFDM0QsWUFBWSxFQUFFO29CQUNWLGtCQUFrQjtvQkFDbEIsb0JBQW9CO29CQUNwQiwyQkFBMkI7b0JBQzNCLHdCQUF3QjtvQkFDeEIsMEJBQTBCO29CQUMxQiwwQkFBMEI7b0JBQzFCLDBCQUEwQjtvQkFDMUIsb0JBQW9CO29CQUNwQix5QkFBeUI7b0JBQ3pCLHlCQUF5QjtvQkFDekIsMkJBQTJCO29CQUMzQixxQkFBcUI7b0JBQ3JCLDBCQUEwQjtvQkFDMUIsc0JBQXNCO29CQUN0Qix1QkFBdUI7b0JBQ3ZCLDhCQUE4QjtvQkFDOUIsMEJBQTBCO29CQUMxQix5QkFBeUI7b0JBQ3pCLHlCQUF5QjtvQkFDekIsZ0NBQWdDO29CQUNoQyw4QkFBOEI7b0JBQzlCLHdCQUF3QjtvQkFDeEIsb0JBQW9CO29CQUNwQixtQkFBbUI7b0JBQ25CLGdDQUFnQztvQkFDaEMsMkJBQTJCO29CQUMzQiwrQkFBK0I7b0JBQy9CLCtCQUErQjtvQkFDL0IseUJBQXlCO29CQUN6QixrQ0FBa0M7b0JBQ2xDLDZCQUE2QjtvQkFDN0IsNEJBQTRCO29CQUM1QiwyQkFBMkI7b0JBQzNCLG1DQUFtQztpQkFDdEM7YUFDSiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IFJvdXRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IFNoYXJlZE1vZHVsZSB9IGZyb20gJ0B2ZW5kdXJlL2FkbWluLXVpL2NvcmUnO1xyXG5cclxuaW1wb3J0IHsgQWRkTWFudWFsUGF5bWVudERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9hZGQtbWFudWFsLXBheW1lbnQtZGlhbG9nL2FkZC1tYW51YWwtcGF5bWVudC1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgQ2FuY2VsT3JkZXJEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvY2FuY2VsLW9yZGVyLWRpYWxvZy9jYW5jZWwtb3JkZXItZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IERyYWZ0T3JkZXJEZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZHJhZnQtb3JkZXItZGV0YWlsL2RyYWZ0LW9yZGVyLWRldGFpbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBEcmFmdE9yZGVyVmFyaWFudFNlbGVjdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2RyYWZ0LW9yZGVyLXZhcmlhbnQtc2VsZWN0b3IvZHJhZnQtb3JkZXItdmFyaWFudC1zZWxlY3Rvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGdWxmaWxsT3JkZXJEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZnVsZmlsbC1vcmRlci1kaWFsb2cvZnVsZmlsbC1vcmRlci1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgRnVsZmlsbG1lbnRDYXJkQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2Z1bGZpbGxtZW50LWNhcmQvZnVsZmlsbG1lbnQtY2FyZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBGdWxmaWxsbWVudERldGFpbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mdWxmaWxsbWVudC1kZXRhaWwvZnVsZmlsbG1lbnQtZGV0YWlsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IEZ1bGZpbGxtZW50U3RhdGVMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9mdWxmaWxsbWVudC1zdGF0ZS1sYWJlbC9mdWxmaWxsbWVudC1zdGF0ZS1sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBMaW5lRnVsZmlsbG1lbnRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvbGluZS1mdWxmaWxsbWVudC9saW5lLWZ1bGZpbGxtZW50LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IExpbmVSZWZ1bmRzQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL2xpbmUtcmVmdW5kcy9saW5lLXJlZnVuZHMuY29tcG9uZW50JztcclxuaW1wb3J0IHsgTW9kaWZpY2F0aW9uRGV0YWlsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL21vZGlmaWNhdGlvbi1kZXRhaWwvbW9kaWZpY2F0aW9uLWRldGFpbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcmRlckN1c3RvbUZpZWxkc0NhcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItY3VzdG9tLWZpZWxkcy1jYXJkL29yZGVyLWN1c3RvbS1maWVsZHMtY2FyZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcmRlckRldGFpbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci1kZXRhaWwvb3JkZXItZGV0YWlsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9yZGVyRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29yZGVyLWVkaXRvci9vcmRlci1lZGl0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3JkZXJFZGl0c1ByZXZpZXdEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItZWRpdHMtcHJldmlldy1kaWFsb2cvb3JkZXItZWRpdHMtcHJldmlldy1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3JkZXJIaXN0b3J5Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29yZGVyLWhpc3Rvcnkvb3JkZXItaGlzdG9yeS5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcmRlckxpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItbGlzdC9vcmRlci1saXN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9yZGVyUGF5bWVudENhcmRDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItcGF5bWVudC1jYXJkL29yZGVyLXBheW1lbnQtY2FyZC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcmRlclByb2Nlc3NHcmFwaERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci1wcm9jZXNzLWdyYXBoLWRpYWxvZy9vcmRlci1wcm9jZXNzLWdyYXBoLWRpYWxvZy5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcmRlclByb2Nlc3NFZGdlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29yZGVyLXByb2Nlc3MtZ3JhcGgvb3JkZXItcHJvY2Vzcy1lZGdlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9yZGVyUHJvY2Vzc0dyYXBoQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29yZGVyLXByb2Nlc3MtZ3JhcGgvb3JkZXItcHJvY2Vzcy1ncmFwaC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcmRlclByb2Nlc3NOb2RlQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29yZGVyLXByb2Nlc3MtZ3JhcGgvb3JkZXItcHJvY2Vzcy1ub2RlLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9yZGVyU3RhdGVTZWxlY3REaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItc3RhdGUtc2VsZWN0LWRpYWxvZy9vcmRlci1zdGF0ZS1zZWxlY3QtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9yZGVyVGFibGVDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItdGFibGUvb3JkZXItdGFibGUuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUGF5bWVudERldGFpbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wYXltZW50LWRldGFpbC9wYXltZW50LWRldGFpbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBQYXltZW50U3RhdGVMYWJlbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9wYXltZW50LXN0YXRlLWxhYmVsL3BheW1lbnQtc3RhdGUtbGFiZWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgUmVmdW5kT3JkZXJEaWFsb2dDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmVmdW5kLW9yZGVyLWRpYWxvZy9yZWZ1bmQtb3JkZXItZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFJlZnVuZFN0YXRlTGFiZWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvcmVmdW5kLXN0YXRlLWxhYmVsL3JlZnVuZC1zdGF0ZS1sYWJlbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTZWxlY3RDdXN0b21lckRpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3QtY3VzdG9tZXItZGlhbG9nL3NlbGVjdC1jdXN0b21lci1kaWFsb2cuY29tcG9uZW50JztcclxuaW1wb3J0IHsgU2V0dGxlUmVmdW5kRGlhbG9nQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NldHRsZS1yZWZ1bmQtZGlhbG9nL3NldHRsZS1yZWZ1bmQtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IFNpbXBsZUl0ZW1MaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL3NpbXBsZS1pdGVtLWxpc3Qvc2ltcGxlLWl0ZW0tbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBvcmRlclJvdXRlcyB9IGZyb20gJy4vb3JkZXIucm91dGVzJztcclxuaW1wb3J0IHsgU2VsZWN0QWRkcmVzc0RpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3QtYWRkcmVzcy1kaWFsb2cvc2VsZWN0LWFkZHJlc3MtZGlhbG9nLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IENvdXBvbkNvZGVTZWxlY3RvckNvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9jb3Vwb24tY29kZS1zZWxlY3Rvci9jb3Vwb24tY29kZS1zZWxlY3Rvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBTZWxlY3RTaGlwcGluZ01ldGhvZERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zZWxlY3Qtc2hpcHBpbmctbWV0aG9kLWRpYWxvZy9zZWxlY3Qtc2hpcHBpbmctbWV0aG9kLWRpYWxvZy5jb21wb25lbnQnO1xyXG5cclxuQE5nTW9kdWxlKHtcclxuICAgIGltcG9ydHM6IFtTaGFyZWRNb2R1bGUsIFJvdXRlck1vZHVsZS5mb3JDaGlsZChvcmRlclJvdXRlcyldLFxyXG4gICAgZGVjbGFyYXRpb25zOiBbXHJcbiAgICAgICAgT3JkZXJMaXN0Q29tcG9uZW50LFxyXG4gICAgICAgIE9yZGVyRGV0YWlsQ29tcG9uZW50LFxyXG4gICAgICAgIEZ1bGZpbGxPcmRlckRpYWxvZ0NvbXBvbmVudCxcclxuICAgICAgICBMaW5lRnVsZmlsbG1lbnRDb21wb25lbnQsXHJcbiAgICAgICAgUmVmdW5kT3JkZXJEaWFsb2dDb21wb25lbnQsXHJcbiAgICAgICAgQ2FuY2VsT3JkZXJEaWFsb2dDb21wb25lbnQsXHJcbiAgICAgICAgUGF5bWVudFN0YXRlTGFiZWxDb21wb25lbnQsXHJcbiAgICAgICAgTGluZVJlZnVuZHNDb21wb25lbnQsXHJcbiAgICAgICAgT3JkZXJQYXltZW50Q2FyZENvbXBvbmVudCxcclxuICAgICAgICBSZWZ1bmRTdGF0ZUxhYmVsQ29tcG9uZW50LFxyXG4gICAgICAgIFNldHRsZVJlZnVuZERpYWxvZ0NvbXBvbmVudCxcclxuICAgICAgICBPcmRlckhpc3RvcnlDb21wb25lbnQsXHJcbiAgICAgICAgRnVsZmlsbG1lbnREZXRhaWxDb21wb25lbnQsXHJcbiAgICAgICAgUGF5bWVudERldGFpbENvbXBvbmVudCxcclxuICAgICAgICBTaW1wbGVJdGVtTGlzdENvbXBvbmVudCxcclxuICAgICAgICBPcmRlckN1c3RvbUZpZWxkc0NhcmRDb21wb25lbnQsXHJcbiAgICAgICAgT3JkZXJQcm9jZXNzR3JhcGhDb21wb25lbnQsXHJcbiAgICAgICAgT3JkZXJQcm9jZXNzTm9kZUNvbXBvbmVudCxcclxuICAgICAgICBPcmRlclByb2Nlc3NFZGdlQ29tcG9uZW50LFxyXG4gICAgICAgIE9yZGVyUHJvY2Vzc0dyYXBoRGlhbG9nQ29tcG9uZW50LFxyXG4gICAgICAgIEZ1bGZpbGxtZW50U3RhdGVMYWJlbENvbXBvbmVudCxcclxuICAgICAgICBGdWxmaWxsbWVudENhcmRDb21wb25lbnQsXHJcbiAgICAgICAgT3JkZXJFZGl0b3JDb21wb25lbnQsXHJcbiAgICAgICAgT3JkZXJUYWJsZUNvbXBvbmVudCxcclxuICAgICAgICBPcmRlckVkaXRzUHJldmlld0RpYWxvZ0NvbXBvbmVudCxcclxuICAgICAgICBNb2RpZmljYXRpb25EZXRhaWxDb21wb25lbnQsXHJcbiAgICAgICAgQWRkTWFudWFsUGF5bWVudERpYWxvZ0NvbXBvbmVudCxcclxuICAgICAgICBPcmRlclN0YXRlU2VsZWN0RGlhbG9nQ29tcG9uZW50LFxyXG4gICAgICAgIERyYWZ0T3JkZXJEZXRhaWxDb21wb25lbnQsXHJcbiAgICAgICAgRHJhZnRPcmRlclZhcmlhbnRTZWxlY3RvckNvbXBvbmVudCxcclxuICAgICAgICBTZWxlY3RDdXN0b21lckRpYWxvZ0NvbXBvbmVudCxcclxuICAgICAgICBTZWxlY3RBZGRyZXNzRGlhbG9nQ29tcG9uZW50LFxyXG4gICAgICAgIENvdXBvbkNvZGVTZWxlY3RvckNvbXBvbmVudCxcclxuICAgICAgICBTZWxlY3RTaGlwcGluZ01ldGhvZERpYWxvZ0NvbXBvbmVudCxcclxuICAgIF0sXHJcbn0pXHJcbmV4cG9ydCBjbGFzcyBPcmRlck1vZHVsZSB7fVxyXG4iXX0=
@@ -1,15 +1,19 @@
1
1
  import { marker as _ } from '@biesbjerg/ngx-translate-extract-marker';
2
- import { CanDeactivateDetailGuard, createResolveData, detailBreadcrumb, } from '@vendure/admin-ui/core';
2
+ import { CanDeactivateDetailGuard, detailBreadcrumb, } from '@vendure/admin-ui/core';
3
3
  import { map } from 'rxjs/operators';
4
+ import { DraftOrderDetailComponent } from './components/draft-order-detail/draft-order-detail.component';
4
5
  import { OrderDetailComponent } from './components/order-detail/order-detail.component';
5
6
  import { OrderEditorComponent } from './components/order-editor/order-editor.component';
6
7
  import { OrderListComponent } from './components/order-list/order-list.component';
7
8
  import { OrderResolver } from './providers/routing/order-resolver';
9
+ import { OrderGuard } from './providers/routing/order.guard';
8
10
  const ɵ0 = {
9
11
  breadcrumb: _('breadcrumb.orders'),
10
12
  }, ɵ1 = {
11
13
  breadcrumb: orderBreadcrumb,
12
14
  }, ɵ2 = {
15
+ breadcrumb: orderBreadcrumb,
16
+ }, ɵ3 = {
13
17
  breadcrumb: modifyingOrderBreadcrumb,
14
18
  };
15
19
  export const orderRoutes = [
@@ -18,19 +22,34 @@ export const orderRoutes = [
18
22
  component: OrderListComponent,
19
23
  data: ɵ0,
20
24
  },
25
+ {
26
+ path: 'draft/:id',
27
+ component: DraftOrderDetailComponent,
28
+ resolve: {
29
+ entity: OrderResolver,
30
+ },
31
+ canActivate: [OrderGuard],
32
+ canDeactivate: [CanDeactivateDetailGuard],
33
+ data: ɵ1,
34
+ },
21
35
  {
22
36
  path: ':id',
23
37
  component: OrderDetailComponent,
24
- resolve: createResolveData(OrderResolver),
38
+ resolve: {
39
+ entity: OrderResolver,
40
+ },
41
+ canActivate: [OrderGuard],
25
42
  canDeactivate: [CanDeactivateDetailGuard],
26
- data: ɵ1,
43
+ data: ɵ2,
27
44
  },
28
45
  {
29
46
  path: ':id/modify',
30
47
  component: OrderEditorComponent,
31
- resolve: createResolveData(OrderResolver),
48
+ resolve: {
49
+ entity: OrderResolver,
50
+ },
32
51
  // canDeactivate: [CanDeactivateDetailGuard],
33
- data: ɵ2,
52
+ data: ɵ3,
34
53
  },
35
54
  ];
36
55
  export function orderBreadcrumb(data, params) {
@@ -50,5 +69,5 @@ export function modifyingOrderBreadcrumb(data, params) {
50
69
  return modifiedBreadcrumbs.concat({ label: _('breadcrumb.modifying'), link: [''] });
51
70
  }));
52
71
  }
53
- export { ɵ0, ɵ1, ɵ2 };
54
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXIucm91dGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9vcmRlci9zcmMvb3JkZXIucm91dGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDdEUsT0FBTyxFQUVILHdCQUF3QixFQUN4QixpQkFBaUIsRUFDakIsZ0JBQWdCLEdBRW5CLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLGtEQUFrRCxDQUFDO0FBQ3hGLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBQ2xGLE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxvQ0FBb0MsQ0FBQztXQU1yRDtJQUNGLFVBQVUsRUFBRSxDQUFDLENBQUMsbUJBQW1CLENBQUM7Q0FDckMsT0FPSztJQUNGLFVBQVUsRUFBRSxlQUFlO0NBQzlCLE9BT0s7SUFDRixVQUFVLEVBQUUsd0JBQXdCO0NBQ3ZDO0FBeEJULE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBWTtJQUNoQztRQUNJLElBQUksRUFBRSxFQUFFO1FBQ1IsU0FBUyxFQUFFLGtCQUFrQjtRQUM3QixJQUFJLElBRUg7S0FDSjtJQUNEO1FBQ0ksSUFBSSxFQUFFLEtBQUs7UUFDWCxTQUFTLEVBQUUsb0JBQW9CO1FBQy9CLE9BQU8sRUFBRSxpQkFBaUIsQ0FBQyxhQUFhLENBQUM7UUFDekMsYUFBYSxFQUFFLENBQUMsd0JBQXdCLENBQUM7UUFDekMsSUFBSSxJQUVIO0tBQ0o7SUFDRDtRQUNJLElBQUksRUFBRSxZQUFZO1FBQ2xCLFNBQVMsRUFBRSxvQkFBb0I7UUFDL0IsT0FBTyxFQUFFLGlCQUFpQixDQUFDLGFBQWEsQ0FBQztRQUN6Qyw2Q0FBNkM7UUFDN0MsSUFBSSxJQUVIO0tBQ0o7Q0FDSixDQUFDO0FBRUYsTUFBTSxVQUFVLGVBQWUsQ0FBQyxJQUFTLEVBQUUsTUFBVztJQUNsRCxPQUFPLGdCQUFnQixDQUF1QjtRQUMxQyxNQUFNLEVBQUUsSUFBSSxDQUFDLE1BQU07UUFDbkIsRUFBRSxFQUFFLE1BQU0sQ0FBQyxFQUFFO1FBQ2IsYUFBYSxFQUFFLG1CQUFtQjtRQUNsQyxPQUFPLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsSUFBSTtRQUM1QixLQUFLLEVBQUUsRUFBRTtLQUNaLENBQUMsQ0FBQztBQUNQLENBQUM7QUFFRCxNQUFNLFVBQVUsd0JBQXdCLENBQUMsSUFBUyxFQUFFLE1BQVc7SUFDM0QsT0FBTyxlQUFlLENBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLElBQUksQ0FDckMsR0FBRyxDQUFDLENBQUMsV0FBc0MsRUFBRSxFQUFFO1FBQzNDLE1BQU0sbUJBQW1CLEdBQUcsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ2hELG1CQUFtQixDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUM7UUFDdkMsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLFdBQVcsQ0FBQztRQUM3QyxPQUFPLG1CQUFtQixDQUFDLE1BQU0sQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsc0JBQXNCLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDeEYsQ0FBQyxDQUFRLENBQ1osQ0FBQztBQUNOLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XHJcbmltcG9ydCB7IG1hcmtlciBhcyBfIH0gZnJvbSAnQGJpZXNiamVyZy9uZ3gtdHJhbnNsYXRlLWV4dHJhY3QtbWFya2VyJztcclxuaW1wb3J0IHtcclxuICAgIEJyZWFkY3J1bWJMYWJlbExpbmtQYWlyLFxyXG4gICAgQ2FuRGVhY3RpdmF0ZURldGFpbEd1YXJkLFxyXG4gICAgY3JlYXRlUmVzb2x2ZURhdGEsXHJcbiAgICBkZXRhaWxCcmVhZGNydW1iLFxyXG4gICAgT3JkZXJEZXRhaWwsXHJcbn0gZnJvbSAnQHZlbmR1cmUvYWRtaW4tdWkvY29yZSc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IE9yZGVyRGV0YWlsQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29yZGVyLWRldGFpbC9vcmRlci1kZXRhaWwuY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3JkZXJFZGl0b3JDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItZWRpdG9yL29yZGVyLWVkaXRvci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcmRlckxpc3RDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvb3JkZXItbGlzdC9vcmRlci1saXN0LmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9yZGVyUmVzb2x2ZXIgfSBmcm9tICcuL3Byb3ZpZGVycy9yb3V0aW5nL29yZGVyLXJlc29sdmVyJztcclxuXHJcbmV4cG9ydCBjb25zdCBvcmRlclJvdXRlczogUm91dGVbXSA9IFtcclxuICAgIHtcclxuICAgICAgICBwYXRoOiAnJyxcclxuICAgICAgICBjb21wb25lbnQ6IE9yZGVyTGlzdENvbXBvbmVudCxcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIGJyZWFkY3J1bWI6IF8oJ2JyZWFkY3J1bWIub3JkZXJzJyksXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgcGF0aDogJzppZCcsXHJcbiAgICAgICAgY29tcG9uZW50OiBPcmRlckRldGFpbENvbXBvbmVudCxcclxuICAgICAgICByZXNvbHZlOiBjcmVhdGVSZXNvbHZlRGF0YShPcmRlclJlc29sdmVyKSxcclxuICAgICAgICBjYW5EZWFjdGl2YXRlOiBbQ2FuRGVhY3RpdmF0ZURldGFpbEd1YXJkXSxcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIGJyZWFkY3J1bWI6IG9yZGVyQnJlYWRjcnVtYixcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBwYXRoOiAnOmlkL21vZGlmeScsXHJcbiAgICAgICAgY29tcG9uZW50OiBPcmRlckVkaXRvckNvbXBvbmVudCxcclxuICAgICAgICByZXNvbHZlOiBjcmVhdGVSZXNvbHZlRGF0YShPcmRlclJlc29sdmVyKSxcclxuICAgICAgICAvLyBjYW5EZWFjdGl2YXRlOiBbQ2FuRGVhY3RpdmF0ZURldGFpbEd1YXJkXSxcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIGJyZWFkY3J1bWI6IG1vZGlmeWluZ09yZGVyQnJlYWRjcnVtYixcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuXTtcclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBvcmRlckJyZWFkY3J1bWIoZGF0YTogYW55LCBwYXJhbXM6IGFueSkge1xyXG4gICAgcmV0dXJuIGRldGFpbEJyZWFkY3J1bWI8T3JkZXJEZXRhaWwuRnJhZ21lbnQ+KHtcclxuICAgICAgICBlbnRpdHk6IGRhdGEuZW50aXR5LFxyXG4gICAgICAgIGlkOiBwYXJhbXMuaWQsXHJcbiAgICAgICAgYnJlYWRjcnVtYktleTogJ2JyZWFkY3J1bWIub3JkZXJzJyxcclxuICAgICAgICBnZXROYW1lOiBvcmRlciA9PiBvcmRlci5jb2RlLFxyXG4gICAgICAgIHJvdXRlOiAnJyxcclxuICAgIH0pO1xyXG59XHJcblxyXG5leHBvcnQgZnVuY3Rpb24gbW9kaWZ5aW5nT3JkZXJCcmVhZGNydW1iKGRhdGE6IGFueSwgcGFyYW1zOiBhbnkpIHtcclxuICAgIHJldHVybiBvcmRlckJyZWFkY3J1bWIoZGF0YSwgcGFyYW1zKS5waXBlKFxyXG4gICAgICAgIG1hcCgoYnJlYWRjcnVtYnM6IEJyZWFkY3J1bWJMYWJlbExpbmtQYWlyW10pID0+IHtcclxuICAgICAgICAgICAgY29uc3QgbW9kaWZpZWRCcmVhZGNydW1icyA9IGJyZWFkY3J1bWJzLnNsaWNlKCk7XHJcbiAgICAgICAgICAgIG1vZGlmaWVkQnJlYWRjcnVtYnNbMF0ubGlua1swXSA9ICcuLi8nO1xyXG4gICAgICAgICAgICBtb2RpZmllZEJyZWFkY3J1bWJzWzFdLmxpbmtbMF0gPSAnLi4vb3JkZXJzJztcclxuICAgICAgICAgICAgcmV0dXJuIG1vZGlmaWVkQnJlYWRjcnVtYnMuY29uY2F0KHsgbGFiZWw6IF8oJ2JyZWFkY3J1bWIubW9kaWZ5aW5nJyksIGxpbms6IFsnJ10gfSk7XHJcbiAgICAgICAgfSkgYXMgYW55LFxyXG4gICAgKTtcclxufVxyXG4iXX0=
72
+ export { ɵ0, ɵ1, ɵ2, ɵ3 };
73
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXIucm91dGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2xpYi9vcmRlci9zcmMvb3JkZXIucm91dGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxNQUFNLElBQUksQ0FBQyxFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDdEUsT0FBTyxFQUVILHdCQUF3QixFQUN4QixnQkFBZ0IsR0FFbkIsTUFBTSx3QkFBd0IsQ0FBQztBQUNoQyxPQUFPLEVBQUUsR0FBRyxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFckMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDekcsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sa0RBQWtELENBQUM7QUFDeEYsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sOENBQThDLENBQUM7QUFDbEYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztXQU0vQztJQUNGLFVBQVUsRUFBRSxDQUFDLENBQUMsbUJBQW1CLENBQUM7Q0FDckMsT0FVSztJQUNGLFVBQVUsRUFBRSxlQUFlO0NBQzlCLE9BVUs7SUFDRixVQUFVLEVBQUUsZUFBZTtDQUM5QixPQVNLO0lBQ0YsVUFBVSxFQUFFLHdCQUF3QjtDQUN2QztBQXpDVCxNQUFNLENBQUMsTUFBTSxXQUFXLEdBQVk7SUFDaEM7UUFDSSxJQUFJLEVBQUUsRUFBRTtRQUNSLFNBQVMsRUFBRSxrQkFBa0I7UUFDN0IsSUFBSSxJQUVIO0tBQ0o7SUFDRDtRQUNJLElBQUksRUFBRSxXQUFXO1FBQ2pCLFNBQVMsRUFBRSx5QkFBeUI7UUFDcEMsT0FBTyxFQUFFO1lBQ0wsTUFBTSxFQUFFLGFBQWE7U0FDeEI7UUFDRCxXQUFXLEVBQUUsQ0FBQyxVQUFVLENBQUM7UUFDekIsYUFBYSxFQUFFLENBQUMsd0JBQXdCLENBQUM7UUFDekMsSUFBSSxJQUVIO0tBQ0o7SUFDRDtRQUNJLElBQUksRUFBRSxLQUFLO1FBQ1gsU0FBUyxFQUFFLG9CQUFvQjtRQUMvQixPQUFPLEVBQUU7WUFDTCxNQUFNLEVBQUUsYUFBYTtTQUN4QjtRQUNELFdBQVcsRUFBRSxDQUFDLFVBQVUsQ0FBQztRQUN6QixhQUFhLEVBQUUsQ0FBQyx3QkFBd0IsQ0FBQztRQUN6QyxJQUFJLElBRUg7S0FDSjtJQUNEO1FBQ0ksSUFBSSxFQUFFLFlBQVk7UUFDbEIsU0FBUyxFQUFFLG9CQUFvQjtRQUMvQixPQUFPLEVBQUU7WUFDTCxNQUFNLEVBQUUsYUFBYTtTQUN4QjtRQUNELDZDQUE2QztRQUM3QyxJQUFJLElBRUg7S0FDSjtDQUNKLENBQUM7QUFFRixNQUFNLFVBQVUsZUFBZSxDQUFDLElBQVMsRUFBRSxNQUFXO0lBQ2xELE9BQU8sZ0JBQWdCLENBQXVCO1FBQzFDLE1BQU0sRUFBRSxJQUFJLENBQUMsTUFBTTtRQUNuQixFQUFFLEVBQUUsTUFBTSxDQUFDLEVBQUU7UUFDYixhQUFhLEVBQUUsbUJBQW1CO1FBQ2xDLE9BQU8sRUFBRSxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJO1FBQzVCLEtBQUssRUFBRSxFQUFFO0tBQ1osQ0FBQyxDQUFDO0FBQ1AsQ0FBQztBQUVELE1BQU0sVUFBVSx3QkFBd0IsQ0FBQyxJQUFTLEVBQUUsTUFBVztJQUMzRCxPQUFPLGVBQWUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLENBQUMsSUFBSSxDQUNyQyxHQUFHLENBQUMsQ0FBQyxXQUFzQyxFQUFFLEVBQUU7UUFDM0MsTUFBTSxtQkFBbUIsR0FBRyxXQUFXLENBQUMsS0FBSyxFQUFFLENBQUM7UUFDaEQsbUJBQW1CLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUN2QyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsV0FBVyxDQUFDO1FBQzdDLE9BQU8sbUJBQW1CLENBQUMsTUFBTSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxzQkFBc0IsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUN4RixDQUFDLENBQVEsQ0FDWixDQUFDO0FBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcclxuaW1wb3J0IHsgbWFya2VyIGFzIF8gfSBmcm9tICdAYmllc2JqZXJnL25neC10cmFuc2xhdGUtZXh0cmFjdC1tYXJrZXInO1xyXG5pbXBvcnQge1xyXG4gICAgQnJlYWRjcnVtYkxhYmVsTGlua1BhaXIsXHJcbiAgICBDYW5EZWFjdGl2YXRlRGV0YWlsR3VhcmQsXHJcbiAgICBkZXRhaWxCcmVhZGNydW1iLFxyXG4gICAgT3JkZXJEZXRhaWwsXHJcbn0gZnJvbSAnQHZlbmR1cmUvYWRtaW4tdWkvY29yZSc7XHJcbmltcG9ydCB7IG1hcCB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbmltcG9ydCB7IERyYWZ0T3JkZXJEZXRhaWxDb21wb25lbnQgfSBmcm9tICcuL2NvbXBvbmVudHMvZHJhZnQtb3JkZXItZGV0YWlsL2RyYWZ0LW9yZGVyLWRldGFpbC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcmRlckRldGFpbENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9vcmRlci1kZXRhaWwvb3JkZXItZGV0YWlsLmNvbXBvbmVudCc7XHJcbmltcG9ydCB7IE9yZGVyRWRpdG9yQ29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29yZGVyLWVkaXRvci9vcmRlci1lZGl0b3IuY29tcG9uZW50JztcclxuaW1wb3J0IHsgT3JkZXJMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9jb21wb25lbnRzL29yZGVyLWxpc3Qvb3JkZXItbGlzdC5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBPcmRlclJlc29sdmVyIH0gZnJvbSAnLi9wcm92aWRlcnMvcm91dGluZy9vcmRlci1yZXNvbHZlcic7XHJcbmltcG9ydCB7IE9yZGVyR3VhcmQgfSBmcm9tICcuL3Byb3ZpZGVycy9yb3V0aW5nL29yZGVyLmd1YXJkJztcclxuXHJcbmV4cG9ydCBjb25zdCBvcmRlclJvdXRlczogUm91dGVbXSA9IFtcclxuICAgIHtcclxuICAgICAgICBwYXRoOiAnJyxcclxuICAgICAgICBjb21wb25lbnQ6IE9yZGVyTGlzdENvbXBvbmVudCxcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIGJyZWFkY3J1bWI6IF8oJ2JyZWFkY3J1bWIub3JkZXJzJyksXHJcbiAgICAgICAgfSxcclxuICAgIH0sXHJcbiAgICB7XHJcbiAgICAgICAgcGF0aDogJ2RyYWZ0LzppZCcsXHJcbiAgICAgICAgY29tcG9uZW50OiBEcmFmdE9yZGVyRGV0YWlsQ29tcG9uZW50LFxyXG4gICAgICAgIHJlc29sdmU6IHtcclxuICAgICAgICAgICAgZW50aXR5OiBPcmRlclJlc29sdmVyLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY2FuQWN0aXZhdGU6IFtPcmRlckd1YXJkXSxcclxuICAgICAgICBjYW5EZWFjdGl2YXRlOiBbQ2FuRGVhY3RpdmF0ZURldGFpbEd1YXJkXSxcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIGJyZWFkY3J1bWI6IG9yZGVyQnJlYWRjcnVtYixcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBwYXRoOiAnOmlkJyxcclxuICAgICAgICBjb21wb25lbnQ6IE9yZGVyRGV0YWlsQ29tcG9uZW50LFxyXG4gICAgICAgIHJlc29sdmU6IHtcclxuICAgICAgICAgICAgZW50aXR5OiBPcmRlclJlc29sdmVyLFxyXG4gICAgICAgIH0sXHJcbiAgICAgICAgY2FuQWN0aXZhdGU6IFtPcmRlckd1YXJkXSxcclxuICAgICAgICBjYW5EZWFjdGl2YXRlOiBbQ2FuRGVhY3RpdmF0ZURldGFpbEd1YXJkXSxcclxuICAgICAgICBkYXRhOiB7XHJcbiAgICAgICAgICAgIGJyZWFkY3J1bWI6IG9yZGVyQnJlYWRjcnVtYixcclxuICAgICAgICB9LFxyXG4gICAgfSxcclxuICAgIHtcclxuICAgICAgICBwYXRoOiAnOmlkL21vZGlmeScsXHJcbiAgICAgICAgY29tcG9uZW50OiBPcmRlckVkaXRvckNvbXBvbmVudCxcclxuICAgICAgICByZXNvbHZlOiB7XHJcbiAgICAgICAgICAgIGVudGl0eTogT3JkZXJSZXNvbHZlcixcclxuICAgICAgICB9LFxyXG4gICAgICAgIC8vIGNhbkRlYWN0aXZhdGU6IFtDYW5EZWFjdGl2YXRlRGV0YWlsR3VhcmRdLFxyXG4gICAgICAgIGRhdGE6IHtcclxuICAgICAgICAgICAgYnJlYWRjcnVtYjogbW9kaWZ5aW5nT3JkZXJCcmVhZGNydW1iLFxyXG4gICAgICAgIH0sXHJcbiAgICB9LFxyXG5dO1xyXG5cclxuZXhwb3J0IGZ1bmN0aW9uIG9yZGVyQnJlYWRjcnVtYihkYXRhOiBhbnksIHBhcmFtczogYW55KSB7XHJcbiAgICByZXR1cm4gZGV0YWlsQnJlYWRjcnVtYjxPcmRlckRldGFpbC5GcmFnbWVudD4oe1xyXG4gICAgICAgIGVudGl0eTogZGF0YS5lbnRpdHksXHJcbiAgICAgICAgaWQ6IHBhcmFtcy5pZCxcclxuICAgICAgICBicmVhZGNydW1iS2V5OiAnYnJlYWRjcnVtYi5vcmRlcnMnLFxyXG4gICAgICAgIGdldE5hbWU6IG9yZGVyID0+IG9yZGVyLmNvZGUsXHJcbiAgICAgICAgcm91dGU6ICcnLFxyXG4gICAgfSk7XHJcbn1cclxuXHJcbmV4cG9ydCBmdW5jdGlvbiBtb2RpZnlpbmdPcmRlckJyZWFkY3J1bWIoZGF0YTogYW55LCBwYXJhbXM6IGFueSkge1xyXG4gICAgcmV0dXJuIG9yZGVyQnJlYWRjcnVtYihkYXRhLCBwYXJhbXMpLnBpcGUoXHJcbiAgICAgICAgbWFwKChicmVhZGNydW1iczogQnJlYWRjcnVtYkxhYmVsTGlua1BhaXJbXSkgPT4ge1xyXG4gICAgICAgICAgICBjb25zdCBtb2RpZmllZEJyZWFkY3J1bWJzID0gYnJlYWRjcnVtYnMuc2xpY2UoKTtcclxuICAgICAgICAgICAgbW9kaWZpZWRCcmVhZGNydW1ic1swXS5saW5rWzBdID0gJy4uLyc7XHJcbiAgICAgICAgICAgIG1vZGlmaWVkQnJlYWRjcnVtYnNbMV0ubGlua1swXSA9ICcuLi9vcmRlcnMnO1xyXG4gICAgICAgICAgICByZXR1cm4gbW9kaWZpZWRCcmVhZGNydW1icy5jb25jYXQoeyBsYWJlbDogXygnYnJlYWRjcnVtYi5tb2RpZnlpbmcnKSwgbGluazogWycnXSB9KTtcclxuICAgICAgICB9KSBhcyBhbnksXHJcbiAgICApO1xyXG59XHJcbiJdfQ==