@vendure/admin-ui 2.0.0-next.2 → 2.0.0-next.21

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 (341) hide show
  1. package/catalog/catalog.module.d.ts +15 -11
  2. package/catalog/components/assign-to-channel-dialog/assign-to-channel-dialog.component.d.ts +22 -0
  3. package/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.component.d.ts +41 -0
  4. package/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.graphql.d.ts +4 -0
  5. package/catalog/components/collection-contents/collection-contents.component.d.ts +10 -2
  6. package/catalog/components/collection-detail/collection-detail.component.d.ts +13 -4
  7. package/catalog/components/collection-list/collection-list-bulk-actions.d.ts +6 -0
  8. package/catalog/components/collection-list/collection-list.component.d.ts +9 -5
  9. package/catalog/components/collection-tree/array-to-tree.d.ts +1 -1
  10. package/catalog/components/collection-tree/collection-tree-node.component.d.ts +14 -6
  11. package/catalog/components/collection-tree/collection-tree.component.d.ts +4 -1
  12. package/catalog/components/facet-list/facet-list-bulk-actions.d.ts +5 -0
  13. package/catalog/components/facet-list/facet-list.component.d.ts +2 -1
  14. package/catalog/components/generate-product-variants/generate-product-variants.component.d.ts +3 -3
  15. package/catalog/components/option-value-input/option-value-input.component.d.ts +21 -9
  16. package/catalog/components/product-detail/product-detail.component.d.ts +1 -1
  17. package/catalog/components/product-list/product-list-bulk-actions.d.ts +6 -0
  18. package/catalog/components/product-list/product-list.component.d.ts +4 -2
  19. package/catalog/components/product-variants-editor/product-variants-editor.component.d.ts +22 -12
  20. package/catalog/components/product-variants-list/product-variants-list.component.d.ts +1 -0
  21. package/catalog/public_api.d.ts +6 -1
  22. package/core/common/component-registry-types.d.ts +1 -1
  23. package/core/common/generated-types.d.ts +3184 -195
  24. package/core/common/utilities/bulk-action-utils.d.ts +19 -0
  25. package/core/common/utilities/configurable-operation-utils.d.ts +7 -2
  26. package/core/common/utilities/selection-manager.d.ts +30 -0
  27. package/core/common/version.d.ts +1 -1
  28. package/core/components/app-shell/app-shell.component.d.ts +1 -0
  29. package/core/data/definitions/collection-definitions.d.ts +4 -0
  30. package/core/data/definitions/facet-definitions.d.ts +3 -0
  31. package/core/data/definitions/order-definitions.d.ts +14 -0
  32. package/core/data/definitions/product-definitions.d.ts +2 -0
  33. package/core/data/providers/collection-data.service.d.ts +7 -0
  34. package/core/data/providers/facet-data.service.d.ts +3 -0
  35. package/core/data/providers/order-data.service.d.ts +18 -0
  36. package/core/data/providers/product-data.service.d.ts +2 -0
  37. package/core/providers/bulk-action-registry/bulk-action-registry.service.d.ts +9 -0
  38. package/core/providers/bulk-action-registry/bulk-action-types.d.ts +149 -0
  39. package/core/providers/bulk-action-registry/register-bulk-action.d.ts +53 -0
  40. package/core/providers/local-storage/local-storage.service.d.ts +1 -0
  41. package/core/providers/modal/modal.types.d.ts +2 -0
  42. package/core/providers/nav-builder/nav-builder-types.d.ts +1 -0
  43. package/core/public_api.d.ts +24 -1
  44. package/core/shared/components/asset-gallery/asset-gallery.component.d.ts +27 -3
  45. package/core/shared/components/bulk-action-menu/bulk-action-menu.component.d.ts +32 -0
  46. package/core/shared/components/configurable-input/configurable-input.component.d.ts +8 -3
  47. package/core/shared/components/custom-field-control/custom-field-control.component.d.ts +6 -2
  48. package/core/shared/components/data-table/data-table.component.d.ts +29 -7
  49. package/core/shared/components/dropdown/dropdown-menu.component.d.ts +2 -1
  50. package/core/shared/components/facet-value-selector/facet-value-selector.component.d.ts +3 -2
  51. package/core/shared/components/product-multi-selector-dialog/product-multi-selector-dialog.component.d.ts +38 -0
  52. package/{catalog → core/shared}/components/product-search-input/product-search-input.component.d.ts +1 -1
  53. package/core/shared/components/radio-card/radio-card-fieldset.component.d.ts +24 -0
  54. package/core/shared/components/radio-card/radio-card.component.d.ts +22 -0
  55. package/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.component.d.ts +31 -0
  56. package/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.service.d.ts +34 -0
  57. package/core/shared/components/rich-text-editor/prosemirror/custom-nodes.d.ts +4 -0
  58. package/core/shared/components/rich-text-editor/prosemirror/inputrules.d.ts +5 -5
  59. package/core/shared/components/rich-text-editor/prosemirror/menu/links.d.ts +1 -1
  60. package/core/shared/components/rich-text-editor/prosemirror/menu/menu-common.d.ts +12 -0
  61. package/core/shared/components/rich-text-editor/prosemirror/menu/menu-plugin.d.ts +9 -0
  62. package/core/shared/components/rich-text-editor/prosemirror/menu/sub-menu-with-icon.d.ts +14 -0
  63. package/core/shared/components/rich-text-editor/prosemirror/plugins/image-plugin.d.ts +7 -0
  64. package/core/shared/components/rich-text-editor/prosemirror/plugins/link-select-plugin.d.ts +1 -1
  65. package/core/shared/components/rich-text-editor/prosemirror/plugins/raw-editor-plugin.d.ts +7 -0
  66. package/core/shared/components/rich-text-editor/prosemirror/plugins/tables-plugin.d.ts +13 -0
  67. package/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.d.ts +7 -3
  68. package/core/shared/components/rich-text-editor/prosemirror/types.d.ts +0 -2
  69. package/core/shared/components/rich-text-editor/raw-html-dialog/raw-html-dialog.component.d.ts +21 -0
  70. package/core/shared/components/rich-text-editor/rich-text-editor.component.d.ts +6 -2
  71. package/core/shared/components/select-toggle/select-toggle.component.d.ts +2 -1
  72. package/core/shared/dynamic-form-inputs/code-editor-form-input/base-code-editor-form-input.component.d.ts +30 -0
  73. package/core/shared/dynamic-form-inputs/code-editor-form-input/html-editor-form-input.component.d.ts +22 -0
  74. package/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.d.ts +5 -17
  75. package/core/shared/dynamic-form-inputs/combination-mode-form-input/combination-mode-form-input.component.d.ts +28 -0
  76. package/core/shared/dynamic-form-inputs/facet-value-form-input/facet-value-form-input.component.d.ts +2 -0
  77. package/core/shared/dynamic-form-inputs/product-multi-selector-form-input/product-multi-selector-form-input.component.d.ts +23 -0
  78. package/core/shared/dynamic-form-inputs/register-dynamic-input-components.d.ts +5 -1
  79. package/core/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.d.ts +6 -3
  80. package/core/shared/dynamic-form-inputs/select-form-input/select-form-input.component.d.ts +10 -2
  81. package/core/shared/pipes/custom-field-description.pipe.d.ts +11 -0
  82. package/core/shared/pipes/custom-field-label.pipe.d.ts +4 -10
  83. package/core/shared/shared.module.d.ts +68 -57
  84. package/customer/components/customer-group-list/customer-group-list.component.d.ts +6 -4
  85. package/customer/components/customer-group-member-list/customer-group-member-list.component.d.ts +11 -4
  86. package/esm2020/catalog/catalog.module.mjs +31 -10
  87. package/esm2020/catalog/components/apply-facet-dialog/apply-facet-dialog.component.mjs +1 -1
  88. package/esm2020/catalog/components/assets/assets.component.mjs +2 -2
  89. package/esm2020/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.mjs +4 -1
  90. package/esm2020/catalog/components/assign-to-channel-dialog/assign-to-channel-dialog.component.mjs +50 -0
  91. package/esm2020/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.component.mjs +84 -0
  92. package/esm2020/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.graphql.mjs +69 -0
  93. package/esm2020/catalog/components/collection-contents/collection-contents.component.mjs +61 -13
  94. package/esm2020/catalog/components/collection-detail/collection-detail.component.mjs +70 -32
  95. package/esm2020/catalog/components/collection-list/collection-list-bulk-actions.mjs +143 -0
  96. package/esm2020/catalog/components/collection-list/collection-list.component.mjs +46 -12
  97. package/esm2020/catalog/components/collection-tree/array-to-tree.mjs +3 -3
  98. package/esm2020/catalog/components/collection-tree/collection-tree-node.component.mjs +36 -10
  99. package/esm2020/catalog/components/collection-tree/collection-tree.component.mjs +9 -4
  100. package/esm2020/catalog/components/facet-detail/facet-detail.component.mjs +3 -3
  101. package/esm2020/catalog/components/facet-list/facet-list-bulk-actions.mjs +202 -0
  102. package/esm2020/catalog/components/facet-list/facet-list.component.mjs +14 -5
  103. package/esm2020/catalog/components/generate-product-variants/generate-product-variants.component.mjs +12 -4
  104. package/esm2020/catalog/components/option-value-input/option-value-input.component.mjs +70 -11
  105. package/esm2020/catalog/components/product-detail/product-detail.component.mjs +36 -24
  106. package/esm2020/catalog/components/product-list/product-list-bulk-actions.mjs +168 -0
  107. package/esm2020/catalog/components/product-list/product-list.component.mjs +13 -9
  108. package/esm2020/catalog/components/product-variants-editor/product-variants-editor.component.mjs +130 -19
  109. package/esm2020/catalog/components/product-variants-list/product-variants-list.component.mjs +9 -3
  110. package/esm2020/catalog/providers/routing/collection-resolver.mjs +2 -1
  111. package/esm2020/catalog/public_api.mjs +7 -2
  112. package/esm2020/core/app.component.module.mjs +1 -1
  113. package/esm2020/core/common/base-detail.component.mjs +1 -1
  114. package/esm2020/core/common/component-registry-types.mjs +1 -1
  115. package/esm2020/core/common/deactivate-aware.mjs +1 -1
  116. package/esm2020/core/common/generated-types.mjs +31 -1
  117. package/esm2020/core/common/introspection-result.mjs +296 -189
  118. package/esm2020/core/common/utilities/bulk-action-utils.mjs +35 -0
  119. package/esm2020/core/common/utilities/configurable-operation-utils.mjs +37 -10
  120. package/esm2020/core/common/utilities/selection-manager.mjs +96 -0
  121. package/esm2020/core/common/version.mjs +2 -2
  122. package/esm2020/core/components/app-shell/app-shell.component.mjs +6 -5
  123. package/esm2020/core/components/breadcrumb/breadcrumb.component.mjs +2 -2
  124. package/esm2020/core/components/channel-switcher/channel-switcher.component.mjs +1 -1
  125. package/esm2020/core/components/main-nav/main-nav.component.mjs +3 -3
  126. package/esm2020/core/components/user-menu/user-menu.component.mjs +1 -1
  127. package/esm2020/core/core.module.mjs +1 -1
  128. package/esm2020/core/data/definitions/collection-definitions.mjs +47 -1
  129. package/esm2020/core/data/definitions/facet-definitions.mjs +31 -1
  130. package/esm2020/core/data/definitions/order-definitions.mjs +583 -455
  131. package/esm2020/core/data/definitions/product-definitions.mjs +23 -1
  132. package/esm2020/core/data/definitions/shared-definitions.mjs +29 -28
  133. package/esm2020/core/data/providers/collection-data.service.mjs +20 -2
  134. package/esm2020/core/data/providers/customer-data.service.mjs +6 -1
  135. package/esm2020/core/data/providers/facet-data.service.mjs +18 -2
  136. package/esm2020/core/data/providers/order-data.service.mjs +43 -2
  137. package/esm2020/core/data/providers/product-data.service.mjs +10 -2
  138. package/esm2020/core/data/providers/promotion-data.service.mjs +1 -1
  139. package/esm2020/core/data/utils/remove-readonly-custom-fields.mjs +8 -1
  140. package/esm2020/core/providers/bulk-action-registry/bulk-action-registry.service.mjs +28 -0
  141. package/esm2020/core/providers/bulk-action-registry/bulk-action-types.mjs +2 -0
  142. package/esm2020/core/providers/bulk-action-registry/register-bulk-action.mjs +63 -0
  143. package/esm2020/core/providers/dashboard-widget/dashboard-widget.service.mjs +1 -4
  144. package/esm2020/core/providers/local-storage/local-storage.service.mjs +1 -1
  145. package/esm2020/core/providers/modal/modal.service.mjs +2 -1
  146. package/esm2020/core/providers/modal/modal.types.mjs +1 -1
  147. package/esm2020/core/providers/nav-builder/nav-builder-types.mjs +1 -1
  148. package/esm2020/core/public_api.mjs +25 -2
  149. package/esm2020/core/shared/components/action-bar/action-bar.component.mjs +7 -15
  150. package/esm2020/core/shared/components/address-form/address-form.component.mjs +3 -3
  151. package/esm2020/core/shared/components/asset-gallery/asset-gallery.component.mjs +34 -51
  152. package/esm2020/core/shared/components/asset-preview/asset-preview.component.mjs +4 -4
  153. package/esm2020/core/shared/components/asset-preview-links/asset-preview-links.component.mjs +1 -1
  154. package/esm2020/core/shared/components/bulk-action-menu/bulk-action-menu.component.mjs +97 -0
  155. package/esm2020/core/shared/components/configurable-input/configurable-input.component.mjs +22 -10
  156. package/esm2020/core/shared/components/custom-field-control/custom-field-control.component.mjs +18 -10
  157. package/esm2020/core/shared/components/data-table/data-table.component.mjs +64 -14
  158. package/esm2020/core/shared/components/datetime-picker/datetime-picker.component.mjs +1 -1
  159. package/esm2020/core/shared/components/dropdown/dropdown-menu.component.mjs +26 -23
  160. package/esm2020/core/shared/components/dropdown/dropdown-trigger.directive.mjs +1 -1
  161. package/esm2020/core/shared/components/entity-info/entity-info.component.mjs +1 -1
  162. package/esm2020/core/shared/components/facet-value-selector/facet-value-selector.component.mjs +13 -6
  163. package/esm2020/core/shared/components/formatted-address/formatted-address.component.mjs +3 -3
  164. package/esm2020/core/shared/components/help-tooltip/help-tooltip.component.mjs +2 -2
  165. package/esm2020/core/shared/components/history-entry-detail/history-entry-detail.component.mjs +1 -1
  166. package/esm2020/core/shared/components/language-selector/language-selector.component.mjs +3 -3
  167. package/esm2020/core/shared/components/object-tree/object-tree.component.mjs +1 -1
  168. package/esm2020/core/shared/components/order-state-label/order-state-label.component.mjs +2 -1
  169. package/esm2020/core/shared/components/product-multi-selector-dialog/product-multi-selector-dialog.component.mjs +135 -0
  170. package/esm2020/core/shared/components/product-search-input/product-search-input.component.mjs +108 -0
  171. package/esm2020/core/shared/components/product-variant-selector/product-variant-selector.component.mjs +2 -2
  172. package/esm2020/core/shared/components/radio-card/radio-card-fieldset.component.mjs +54 -0
  173. package/esm2020/core/shared/components/radio-card/radio-card.component.mjs +53 -0
  174. package/esm2020/core/shared/components/rich-text-editor/external-image-dialog/external-image-dialog.component.mjs +3 -3
  175. package/esm2020/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.component.mjs +136 -0
  176. package/esm2020/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.service.mjs +46 -0
  177. package/esm2020/core/shared/components/rich-text-editor/prosemirror/custom-nodes.mjs +57 -0
  178. package/esm2020/core/shared/components/rich-text-editor/prosemirror/menu/links.mjs +4 -4
  179. package/esm2020/core/shared/components/rich-text-editor/prosemirror/menu/menu-common.mjs +22 -1
  180. package/esm2020/core/shared/components/rich-text-editor/prosemirror/menu/menu-plugin.mjs +12 -0
  181. package/esm2020/core/shared/components/rich-text-editor/prosemirror/menu/menu.mjs +73 -18
  182. package/esm2020/core/shared/components/rich-text-editor/prosemirror/menu/sub-menu-with-icon.mjs +16 -0
  183. package/esm2020/core/shared/components/rich-text-editor/prosemirror/plugins/image-plugin.mjs +100 -0
  184. package/esm2020/core/shared/components/rich-text-editor/prosemirror/plugins/raw-editor-plugin.mjs +96 -0
  185. package/esm2020/core/shared/components/rich-text-editor/prosemirror/plugins/tables-plugin.mjs +166 -0
  186. package/esm2020/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.mjs +47 -18
  187. package/esm2020/core/shared/components/rich-text-editor/prosemirror/types.mjs +1 -1
  188. package/esm2020/core/shared/components/rich-text-editor/raw-html-dialog/raw-html-dialog.component.mjs +59 -0
  189. package/esm2020/core/shared/components/rich-text-editor/rich-text-editor.component.mjs +22 -10
  190. package/esm2020/core/shared/components/select-toggle/select-toggle.component.mjs +6 -3
  191. package/esm2020/core/shared/components/simple-dialog/simple-dialog.component.mjs +3 -3
  192. package/esm2020/core/shared/components/ui-extension-point/ui-extension-point.component.mjs +1 -1
  193. package/esm2020/core/shared/dynamic-form-inputs/code-editor-form-input/base-code-editor-form-input.component.mjs +57 -0
  194. package/esm2020/core/shared/dynamic-form-inputs/code-editor-form-input/html-editor-form-input.component.mjs +63 -0
  195. package/esm2020/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.mjs +48 -83
  196. package/esm2020/core/shared/dynamic-form-inputs/combination-mode-form-input/combination-mode-form-input.component.mjs +45 -0
  197. package/esm2020/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.mjs +3 -3
  198. package/esm2020/core/shared/dynamic-form-inputs/facet-value-form-input/facet-value-form-input.component.mjs +12 -3
  199. package/esm2020/core/shared/dynamic-form-inputs/product-multi-selector-form-input/product-multi-selector-form-input.component.mjs +48 -0
  200. package/esm2020/core/shared/dynamic-form-inputs/register-dynamic-input-components.mjs +7 -1
  201. package/esm2020/core/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.mjs +11 -9
  202. package/esm2020/core/shared/dynamic-form-inputs/relation-form-input/generic/relation-generic-input.component.mjs +1 -1
  203. package/esm2020/core/shared/dynamic-form-inputs/select-form-input/select-form-input.component.mjs +21 -11
  204. package/esm2020/core/shared/pipes/custom-field-description.pipe.mjs +30 -0
  205. package/esm2020/core/shared/pipes/custom-field-label.pipe.mjs +7 -19
  206. package/esm2020/core/shared/pipes/locale-currency.pipe.mjs +10 -2
  207. package/esm2020/core/shared/pipes/state-i18n-token.pipe.mjs +2 -1
  208. package/esm2020/core/shared/shared.module.mjs +49 -5
  209. package/esm2020/customer/components/address-card/address-card.component.mjs +1 -1
  210. package/esm2020/customer/components/customer-detail/customer-detail.component.mjs +1 -1
  211. package/esm2020/customer/components/customer-group-list/customer-group-list.component.mjs +33 -18
  212. package/esm2020/customer/components/customer-group-member-list/customer-group-member-list.component.mjs +3 -3
  213. package/esm2020/customer/components/customer-history/customer-history.component.mjs +1 -1
  214. package/esm2020/customer/components/customer-list/customer-list.component.mjs +3 -3
  215. package/esm2020/dashboard/components/dashboard/dashboard.component.mjs +2 -2
  216. package/esm2020/dashboard/components/dashboard-widget/dashboard-widget.component.mjs +2 -2
  217. package/esm2020/dashboard/dashboard.module.mjs +6 -2
  218. package/esm2020/dashboard/widgets/latest-orders-widget/latest-orders-widget.component.mjs +1 -1
  219. package/esm2020/dashboard/widgets/order-summary-widget/order-summary-widget.component.mjs +2 -2
  220. package/esm2020/login/components/login/login.component.mjs +3 -3
  221. package/esm2020/marketing/components/promotion-detail/promotion-detail.component.mjs +3 -3
  222. package/esm2020/marketing/components/promotion-list/promotion-list.component.mjs +1 -1
  223. package/esm2020/order/components/cancel-order-dialog/cancel-order-dialog.component.mjs +1 -1
  224. package/esm2020/order/components/coupon-code-selector/coupon-code-selector.component.mjs +42 -0
  225. package/esm2020/order/components/draft-order-detail/draft-order-detail.component.mjs +187 -0
  226. package/esm2020/order/components/draft-order-variant-selector/draft-order-variant-selector.component.mjs +59 -0
  227. package/esm2020/order/components/fulfill-order-dialog/fulfill-order-dialog.component.mjs +7 -3
  228. package/esm2020/order/components/fulfillment-card/fulfillment-card.component.mjs +1 -1
  229. package/esm2020/order/components/fulfillment-detail/fulfillment-detail.component.mjs +8 -17
  230. package/esm2020/order/components/line-fulfillment/line-fulfillment.component.mjs +8 -22
  231. package/esm2020/order/components/order-custom-fields-card/order-custom-fields-card.component.mjs +30 -6
  232. package/esm2020/order/components/order-detail/order-detail.component.mjs +80 -40
  233. package/esm2020/order/components/order-editor/order-editor.component.mjs +15 -14
  234. package/esm2020/order/components/order-edits-preview-dialog/order-edits-preview-dialog.component.mjs +1 -1
  235. package/esm2020/order/components/order-history/order-history.component.mjs +1 -1
  236. package/esm2020/order/components/order-list/order-list.component.mjs +40 -17
  237. package/esm2020/order/components/order-payment-card/order-payment-card.component.mjs +3 -3
  238. package/esm2020/order/components/order-table/order-table.component.mjs +29 -6
  239. package/esm2020/order/components/refund-order-dialog/refund-order-dialog.component.mjs +2 -2
  240. package/esm2020/order/components/select-address-dialog/select-address-dialog.component.mjs +89 -0
  241. package/esm2020/order/components/select-address-dialog/select-address-dialog.graphql.mjs +14 -0
  242. package/esm2020/order/components/select-customer-dialog/select-customer-dialog.component.mjs +59 -0
  243. package/esm2020/order/components/select-shipping-method-dialog/select-shipping-method-dialog.component.mjs +31 -0
  244. package/esm2020/order/order.module.mjs +20 -2
  245. package/esm2020/order/order.routes.mjs +23 -4
  246. package/esm2020/order/providers/routing/order-resolver.mjs +29 -11
  247. package/esm2020/order/providers/routing/order.guard.mjs +37 -0
  248. package/esm2020/order/public_api.mjs +9 -1
  249. package/esm2020/settings/components/administrator-list/administrator-list.component.mjs +1 -1
  250. package/esm2020/settings/components/channel-list/channel-list.component.mjs +1 -1
  251. package/esm2020/settings/components/country-list/country-list.component.mjs +3 -3
  252. package/esm2020/settings/components/payment-method-detail/payment-method-detail.component.mjs +1 -1
  253. package/esm2020/settings/components/payment-method-list/payment-method-list.component.mjs +1 -1
  254. package/esm2020/settings/components/permission-grid/permission-grid.component.mjs +1 -1
  255. package/esm2020/settings/components/profile/profile.component.mjs +3 -3
  256. package/esm2020/settings/components/role-list/role-list.component.mjs +1 -1
  257. package/esm2020/settings/components/shipping-method-detail/shipping-method-detail.component.mjs +4 -2
  258. package/esm2020/settings/components/shipping-method-list/shipping-method-list.component.mjs +1 -1
  259. package/esm2020/settings/components/tax-category-list/tax-category-list.component.mjs +1 -1
  260. package/esm2020/settings/components/tax-rate-list/tax-rate-list.component.mjs +1 -1
  261. package/esm2020/settings/components/zone-detail-dialog/zone-detail-dialog.component.mjs +2 -2
  262. package/esm2020/settings/components/zone-list/zone-list.component.mjs +3 -3
  263. package/esm2020/settings/components/zone-member-list/zone-member-list.component.mjs +3 -3
  264. package/esm2020/system/components/health-check/health-check.component.mjs +2 -2
  265. package/esm2020/system/components/job-list/job-list.component.mjs +1 -1
  266. package/fesm2015/vendure-admin-ui-catalog.mjs +1206 -228
  267. package/fesm2015/vendure-admin-ui-catalog.mjs.map +1 -1
  268. package/fesm2015/vendure-admin-ui-core.mjs +9451 -7332
  269. package/fesm2015/vendure-admin-ui-core.mjs.map +1 -1
  270. package/fesm2015/vendure-admin-ui-customer.mjs +36 -23
  271. package/fesm2015/vendure-admin-ui-customer.mjs.map +1 -1
  272. package/fesm2015/vendure-admin-ui-dashboard.mjs +11 -7
  273. package/fesm2015/vendure-admin-ui-dashboard.mjs.map +1 -1
  274. package/fesm2015/vendure-admin-ui-login.mjs +2 -2
  275. package/fesm2015/vendure-admin-ui-login.mjs.map +1 -1
  276. package/fesm2015/vendure-admin-ui-marketing.mjs +3 -3
  277. package/fesm2015/vendure-admin-ui-marketing.mjs.map +1 -1
  278. package/fesm2015/vendure-admin-ui-order.mjs +1184 -599
  279. package/fesm2015/vendure-admin-ui-order.mjs.map +1 -1
  280. package/fesm2015/vendure-admin-ui-settings.mjs +21 -19
  281. package/fesm2015/vendure-admin-ui-settings.mjs.map +1 -1
  282. package/fesm2015/vendure-admin-ui-system.mjs +3 -3
  283. package/fesm2020/vendure-admin-ui-catalog.mjs +1190 -230
  284. package/fesm2020/vendure-admin-ui-catalog.mjs.map +1 -1
  285. package/fesm2020/vendure-admin-ui-core.mjs +9539 -7437
  286. package/fesm2020/vendure-admin-ui-core.mjs.map +1 -1
  287. package/fesm2020/vendure-admin-ui-customer.mjs +36 -23
  288. package/fesm2020/vendure-admin-ui-customer.mjs.map +1 -1
  289. package/fesm2020/vendure-admin-ui-dashboard.mjs +11 -7
  290. package/fesm2020/vendure-admin-ui-dashboard.mjs.map +1 -1
  291. package/fesm2020/vendure-admin-ui-login.mjs +2 -2
  292. package/fesm2020/vendure-admin-ui-login.mjs.map +1 -1
  293. package/fesm2020/vendure-admin-ui-marketing.mjs +3 -3
  294. package/fesm2020/vendure-admin-ui-marketing.mjs.map +1 -1
  295. package/fesm2020/vendure-admin-ui-order.mjs +1194 -614
  296. package/fesm2020/vendure-admin-ui-order.mjs.map +1 -1
  297. package/fesm2020/vendure-admin-ui-settings.mjs +21 -19
  298. package/fesm2020/vendure-admin-ui-settings.mjs.map +1 -1
  299. package/fesm2020/vendure-admin-ui-system.mjs +3 -3
  300. package/order/components/coupon-code-selector/coupon-code-selector.component.d.ts +21 -0
  301. package/order/components/draft-order-detail/draft-order-detail.component.d.ts +52 -0
  302. package/order/components/draft-order-variant-selector/draft-order-variant-selector.component.d.ts +24 -0
  303. package/order/components/order-custom-fields-card/order-custom-fields-card.component.d.ts +4 -2
  304. package/order/components/order-editor/order-editor.component.d.ts +1 -6
  305. package/order/components/order-list/order-list.component.d.ts +2 -0
  306. package/order/components/order-table/order-table.component.d.ts +12 -2
  307. package/order/components/select-address-dialog/select-address-dialog.component.d.ts +27 -0
  308. package/order/components/select-address-dialog/select-address-dialog.graphql.d.ts +1 -0
  309. package/order/components/select-customer-dialog/select-customer-dialog.component.d.ts +25 -0
  310. package/order/components/select-shipping-method-dialog/select-shipping-method-dialog.component.d.ts +19 -0
  311. package/order/order.module.d.ts +9 -3
  312. package/order/providers/routing/order-resolver.d.ts +8 -3
  313. package/order/providers/routing/order.guard.d.ts +12 -0
  314. package/order/public_api.d.ts +8 -0
  315. package/package.json +13 -12
  316. package/settings/components/zone-member-list/zone-member-list.component.d.ts +3 -1
  317. package/static/i18n-messages/cs.json +50 -3
  318. package/static/i18n-messages/de.json +53 -3
  319. package/static/i18n-messages/en.json +55 -8
  320. package/static/i18n-messages/es.json +50 -3
  321. package/static/i18n-messages/fr.json +50 -3
  322. package/static/i18n-messages/it.json +50 -3
  323. package/static/i18n-messages/pl.json +50 -3
  324. package/static/i18n-messages/pt_BR.json +50 -3
  325. package/static/i18n-messages/pt_PT.json +50 -3
  326. package/static/i18n-messages/ru.json +50 -3
  327. package/static/i18n-messages/uk.json +50 -3
  328. package/static/i18n-messages/zh_Hans.json +50 -3
  329. package/static/i18n-messages/zh_Hant.json +50 -3
  330. package/static/styles/_variables.scss +4 -0
  331. package/static/styles/global/_forms.scss +8 -7
  332. package/static/styles/global/_overrides.scss +11 -1
  333. package/static/styles/global/_sass-overrides.scss +3 -0
  334. package/static/styles/global/_utilities.scss +14 -0
  335. package/static/styles/styles.scss +1 -0
  336. package/static/styles/theme/default.scss +13 -1
  337. package/static/styles/ui-extension-theme.scss +1 -0
  338. package/static/theme.min.css +1 -1
  339. package/core/shared/components/rich-text-editor/prosemirror/menu/images.d.ts +0 -4
  340. package/esm2020/catalog/components/product-search-input/product-search-input.component.mjs +0 -107
  341. package/esm2020/core/shared/components/rich-text-editor/prosemirror/menu/images.mjs +0 -36
@@ -1,457 +1,585 @@
1
1
  import { gql } from 'apollo-angular';
2
2
  import { ERROR_RESULT_FRAGMENT } from './shared-definitions';
3
- export const DISCOUNT_FRAGMENT = gql `
4
- fragment Discount on Discount {
5
- adjustmentSource
6
- amount
7
- amountWithTax
8
- description
9
- type
10
- }
11
- `;
12
- export const REFUND_FRAGMENT = gql `
13
- fragment Refund on Refund {
14
- id
15
- state
16
- items
17
- shipping
18
- adjustment
19
- transactionId
20
- paymentId
21
- }
22
- `;
23
- export const ORDER_ADDRESS_FRAGMENT = gql `
24
- fragment OrderAddress on OrderAddress {
25
- fullName
26
- company
27
- streetLine1
28
- streetLine2
29
- city
30
- province
31
- postalCode
32
- country
33
- countryCode
34
- phoneNumber
35
- }
36
- `;
37
- export const ORDER_FRAGMENT = gql `
38
- fragment Order on Order {
39
- id
40
- createdAt
41
- updatedAt
42
- orderPlacedAt
43
- code
44
- state
45
- nextStates
46
- total
47
- currencyCode
48
- customer {
49
- id
50
- firstName
51
- lastName
52
- }
53
- shippingLines {
54
- shippingMethod {
55
- name
56
- }
57
- }
58
- }
59
- `;
60
- export const FULFILLMENT_FRAGMENT = gql `
61
- fragment Fulfillment on Fulfillment {
62
- id
63
- state
64
- nextStates
65
- createdAt
66
- updatedAt
67
- method
68
- orderItems {
69
- id
70
- }
71
- trackingCode
72
- }
73
- `;
74
- export const ORDER_LINE_FRAGMENT = gql `
75
- fragment OrderLine on OrderLine {
76
- id
77
- featuredAsset {
78
- preview
79
- }
80
- productVariant {
81
- id
82
- name
83
- sku
84
- trackInventory
85
- stockOnHand
86
- }
87
- discounts {
88
- ...Discount
89
- }
90
- unitPrice
91
- unitPriceWithTax
92
- proratedUnitPrice
93
- proratedUnitPriceWithTax
94
- quantity
95
- items {
96
- id
97
- unitPrice
98
- unitPriceWithTax
99
- taxRate
100
- refundId
101
- cancelled
102
- fulfillment {
103
- ...Fulfillment
104
- }
105
- }
106
- linePrice
107
- lineTax
108
- linePriceWithTax
109
- discountedLinePrice
110
- discountedLinePriceWithTax
111
- }
112
- `;
113
- export const ORDER_DETAIL_FRAGMENT = gql `
114
- fragment OrderDetail on Order {
115
- id
116
- createdAt
117
- updatedAt
118
- code
119
- state
120
- nextStates
121
- active
122
- couponCodes
123
- customer {
124
- id
125
- firstName
126
- lastName
127
- }
128
- lines {
129
- ...OrderLine
130
- }
131
- surcharges {
132
- id
133
- sku
134
- description
135
- price
136
- priceWithTax
137
- taxRate
138
- }
139
- discounts {
140
- ...Discount
141
- }
142
- promotions {
143
- id
144
- couponCode
145
- }
146
- subTotal
147
- subTotalWithTax
148
- total
149
- totalWithTax
150
- currencyCode
151
- shipping
152
- shippingWithTax
153
- shippingLines {
154
- shippingMethod {
155
- id
156
- code
157
- name
158
- fulfillmentHandlerCode
159
- description
160
- }
161
- }
162
- taxSummary {
163
- description
164
- taxBase
165
- taxRate
166
- taxTotal
167
- }
168
- shippingAddress {
169
- ...OrderAddress
170
- }
171
- billingAddress {
172
- ...OrderAddress
173
- }
174
- payments {
175
- id
176
- createdAt
177
- transactionId
178
- amount
179
- method
180
- state
181
- nextStates
182
- errorMessage
183
- metadata
184
- refunds {
185
- id
186
- createdAt
187
- state
188
- items
189
- adjustment
190
- total
191
- paymentId
192
- reason
193
- transactionId
194
- method
195
- metadata
196
- orderItems {
197
- id
198
- }
199
- }
200
- }
201
- fulfillments {
202
- ...Fulfillment
203
- }
204
- modifications {
205
- id
206
- createdAt
207
- isSettled
208
- priceChange
209
- note
210
- payment {
211
- id
212
- amount
213
- }
214
- orderItems {
215
- id
216
- }
217
- refund {
218
- id
219
- paymentId
220
- total
221
- }
222
- surcharges {
223
- id
224
- }
225
- }
226
- }
227
- ${DISCOUNT_FRAGMENT}
228
- ${ORDER_ADDRESS_FRAGMENT}
229
- ${FULFILLMENT_FRAGMENT}
230
- ${ORDER_LINE_FRAGMENT}
231
- `;
232
- export const GET_ORDERS_LIST = gql `
233
- query GetOrderList($options: OrderListOptions) {
234
- orders(options: $options) {
235
- items {
236
- ...Order
237
- }
238
- totalItems
239
- }
240
- }
241
- ${ORDER_FRAGMENT}
242
- `;
243
- export const GET_ORDER = gql `
244
- query GetOrder($id: ID!) {
245
- order(id: $id) {
246
- ...OrderDetail
247
- }
248
- }
249
- ${ORDER_DETAIL_FRAGMENT}
250
- `;
251
- export const SETTLE_PAYMENT = gql `
252
- mutation SettlePayment($id: ID!) {
253
- settlePayment(id: $id) {
254
- ... on Payment {
255
- id
256
- transactionId
257
- amount
258
- method
259
- state
260
- metadata
261
- }
262
- ...ErrorResult
263
- ... on SettlePaymentError {
264
- paymentErrorMessage
265
- }
266
- ... on PaymentStateTransitionError {
267
- transitionError
268
- }
269
- ... on OrderStateTransitionError {
270
- transitionError
271
- }
272
- }
273
- }
274
- ${ERROR_RESULT_FRAGMENT}
275
- `;
276
- export const TRANSITION_PAYMENT_TO_STATE = gql `
277
- mutation TransitionPaymentToState($id: ID!, $state: String!) {
278
- transitionPaymentToState(id: $id, state: $state) {
279
- ... on Payment {
280
- id
281
- transactionId
282
- amount
283
- method
284
- state
285
- metadata
286
- }
287
- ...ErrorResult
288
- ... on PaymentStateTransitionError {
289
- transitionError
290
- }
291
- }
292
- }
293
- ${ERROR_RESULT_FRAGMENT}
294
- `;
295
- export const CREATE_FULFILLMENT = gql `
296
- mutation CreateFulfillment($input: FulfillOrderInput!) {
297
- addFulfillmentToOrder(input: $input) {
298
- ...Fulfillment
299
- ... on CreateFulfillmentError {
300
- errorCode
301
- message
302
- fulfillmentHandlerError
303
- }
304
- ... on FulfillmentStateTransitionError {
305
- errorCode
306
- message
307
- transitionError
308
- }
309
- ...ErrorResult
310
- }
311
- }
312
- ${FULFILLMENT_FRAGMENT}
313
- ${ERROR_RESULT_FRAGMENT}
314
- `;
315
- export const CANCEL_ORDER = gql `
316
- mutation CancelOrder($input: CancelOrderInput!) {
317
- cancelOrder(input: $input) {
318
- ...OrderDetail
319
- ...ErrorResult
320
- }
321
- }
322
- ${ORDER_DETAIL_FRAGMENT}
323
- ${ERROR_RESULT_FRAGMENT}
324
- `;
325
- export const REFUND_ORDER = gql `
326
- mutation RefundOrder($input: RefundOrderInput!) {
327
- refundOrder(input: $input) {
328
- ...Refund
329
- ...ErrorResult
330
- }
331
- }
332
- ${REFUND_FRAGMENT}
333
- ${ERROR_RESULT_FRAGMENT}
334
- `;
335
- export const SETTLE_REFUND = gql `
336
- mutation SettleRefund($input: SettleRefundInput!) {
337
- settleRefund(input: $input) {
338
- ...Refund
339
- ...ErrorResult
340
- }
341
- }
342
- ${REFUND_FRAGMENT}
343
- ${ERROR_RESULT_FRAGMENT}
344
- `;
345
- export const GET_ORDER_HISTORY = gql `
346
- query GetOrderHistory($id: ID!, $options: HistoryEntryListOptions) {
347
- order(id: $id) {
348
- id
349
- history(options: $options) {
350
- totalItems
351
- items {
352
- id
353
- type
354
- createdAt
355
- isPublic
356
- administrator {
357
- id
358
- firstName
359
- lastName
360
- }
361
- data
362
- }
363
- }
364
- }
365
- }
366
- `;
367
- export const ADD_NOTE_TO_ORDER = gql `
368
- mutation AddNoteToOrder($input: AddNoteToOrderInput!) {
369
- addNoteToOrder(input: $input) {
370
- id
371
- }
372
- }
373
- `;
374
- export const UPDATE_ORDER_NOTE = gql `
375
- mutation UpdateOrderNote($input: UpdateOrderNoteInput!) {
376
- updateOrderNote(input: $input) {
377
- id
378
- data
379
- isPublic
380
- }
381
- }
382
- `;
383
- export const DELETE_ORDER_NOTE = gql `
384
- mutation DeleteOrderNote($id: ID!) {
385
- deleteOrderNote(id: $id) {
386
- result
387
- message
388
- }
389
- }
390
- `;
391
- export const TRANSITION_ORDER_TO_STATE = gql `
392
- mutation TransitionOrderToState($id: ID!, $state: String!) {
393
- transitionOrderToState(id: $id, state: $state) {
394
- ...Order
395
- ...ErrorResult
396
- ... on OrderStateTransitionError {
397
- transitionError
398
- }
399
- }
400
- }
401
- ${ORDER_FRAGMENT}
402
- ${ERROR_RESULT_FRAGMENT}
403
- `;
404
- export const UPDATE_ORDER_CUSTOM_FIELDS = gql `
405
- mutation UpdateOrderCustomFields($input: UpdateOrderInput!) {
406
- setOrderCustomFields(input: $input) {
407
- ...Order
408
- }
409
- }
410
- ${ORDER_FRAGMENT}
411
- `;
412
- export const TRANSITION_FULFILLMENT_TO_STATE = gql `
413
- mutation TransitionFulfillmentToState($id: ID!, $state: String!) {
414
- transitionFulfillmentToState(id: $id, state: $state) {
415
- ...Fulfillment
416
- ...ErrorResult
417
- ... on FulfillmentStateTransitionError {
418
- transitionError
419
- }
420
- }
421
- }
422
- ${FULFILLMENT_FRAGMENT}
423
- ${ERROR_RESULT_FRAGMENT}
424
- `;
425
- export const GET_ORDER_SUMMARY = gql `
426
- query GetOrderSummary($start: DateTime!, $end: DateTime!) {
427
- orders(options: { filter: { orderPlacedAt: { between: { start: $start, end: $end } } } }) {
428
- totalItems
429
- items {
430
- id
431
- total
432
- currencyCode
433
- }
434
- }
435
- }
436
- `;
437
- export const MODIFY_ORDER = gql `
438
- mutation ModifyOrder($input: ModifyOrderInput!) {
439
- modifyOrder(input: $input) {
440
- ...OrderDetail
441
- ...ErrorResult
442
- }
443
- }
444
- ${ORDER_DETAIL_FRAGMENT}
445
- ${ERROR_RESULT_FRAGMENT}
446
- `;
447
- export const ADD_MANUAL_PAYMENT_TO_ORDER = gql `
448
- mutation AddManualPayment($input: ManualPaymentInput!) {
449
- addManualPaymentToOrder(input: $input) {
450
- ...OrderDetail
451
- ...ErrorResult
452
- }
453
- }
454
- ${ORDER_DETAIL_FRAGMENT}
455
- ${ERROR_RESULT_FRAGMENT}
456
- `;
457
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItZGVmaW5pdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2RhdGEvZGVmaW5pdGlvbnMvb3JkZXItZGVmaW5pdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTdELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7Q0FRbkMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7Ozs7Q0FVakMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHNCQUFzQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7Ozs7OztDQWF4QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQXNCaEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG9CQUFvQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7Ozs7OztDQWF0QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQXNDckMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01Ba0hsQyxpQkFBaUI7TUFDakIsc0JBQXNCO01BQ3RCLG9CQUFvQjtNQUNwQixtQkFBbUI7Q0FDeEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7OztNQVM1QixjQUFjO0NBQ25CLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFBOzs7Ozs7TUFNdEIscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztNQXVCM0IscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O01BaUJ4QyxxQkFBcUI7Q0FDMUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGtCQUFrQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7TUFpQi9CLG9CQUFvQjtNQUNwQixxQkFBcUI7Q0FDMUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUE7Ozs7Ozs7TUFPekIscUJBQXFCO01BQ3JCLHFCQUFxQjtDQUMxQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQTs7Ozs7OztNQU96QixlQUFlO01BQ2YscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxhQUFhLEdBQUcsR0FBRyxDQUFBOzs7Ozs7O01BTzFCLGVBQWU7TUFDZixxQkFBcUI7Q0FDMUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBcUJuQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Q0FNbkMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7Q0FRbkMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQTs7Ozs7OztDQU9uQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7O01BVXRDLGNBQWM7TUFDZCxxQkFBcUI7Q0FDMUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDBCQUEwQixHQUFHLEdBQUcsQ0FBQTs7Ozs7O01BTXZDLGNBQWM7Q0FDbkIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7OztNQVU1QyxvQkFBb0I7TUFDcEIscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7Ozs7O0NBV25DLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFBOzs7Ozs7O01BT3pCLHFCQUFxQjtNQUNyQixxQkFBcUI7Q0FDMUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLEdBQUcsQ0FBQTs7Ozs7OztNQU94QyxxQkFBcUI7TUFDckIscUJBQXFCO0NBQzFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBncWwgfSBmcm9tICdhcG9sbG8tYW5ndWxhcic7XG5cbmltcG9ydCB7IEVSUk9SX1JFU1VMVF9GUkFHTUVOVCB9IGZyb20gJy4vc2hhcmVkLWRlZmluaXRpb25zJztcblxuZXhwb3J0IGNvbnN0IERJU0NPVU5UX0ZSQUdNRU5UID0gZ3FsYFxuICAgIGZyYWdtZW50IERpc2NvdW50IG9uIERpc2NvdW50IHtcbiAgICAgICAgYWRqdXN0bWVudFNvdXJjZVxuICAgICAgICBhbW91bnRcbiAgICAgICAgYW1vdW50V2l0aFRheFxuICAgICAgICBkZXNjcmlwdGlvblxuICAgICAgICB0eXBlXG4gICAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IFJFRlVORF9GUkFHTUVOVCA9IGdxbGBcbiAgICBmcmFnbWVudCBSZWZ1bmQgb24gUmVmdW5kIHtcbiAgICAgICAgaWRcbiAgICAgICAgc3RhdGVcbiAgICAgICAgaXRlbXNcbiAgICAgICAgc2hpcHBpbmdcbiAgICAgICAgYWRqdXN0bWVudFxuICAgICAgICB0cmFuc2FjdGlvbklkXG4gICAgICAgIHBheW1lbnRJZFxuICAgIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBPUkRFUl9BRERSRVNTX0ZSQUdNRU5UID0gZ3FsYFxuICAgIGZyYWdtZW50IE9yZGVyQWRkcmVzcyBvbiBPcmRlckFkZHJlc3Mge1xuICAgICAgICBmdWxsTmFtZVxuICAgICAgICBjb21wYW55XG4gICAgICAgIHN0cmVldExpbmUxXG4gICAgICAgIHN0cmVldExpbmUyXG4gICAgICAgIGNpdHlcbiAgICAgICAgcHJvdmluY2VcbiAgICAgICAgcG9zdGFsQ29kZVxuICAgICAgICBjb3VudHJ5XG4gICAgICAgIGNvdW50cnlDb2RlXG4gICAgICAgIHBob25lTnVtYmVyXG4gICAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IE9SREVSX0ZSQUdNRU5UID0gZ3FsYFxuICAgIGZyYWdtZW50IE9yZGVyIG9uIE9yZGVyIHtcbiAgICAgICAgaWRcbiAgICAgICAgY3JlYXRlZEF0XG4gICAgICAgIHVwZGF0ZWRBdFxuICAgICAgICBvcmRlclBsYWNlZEF0XG4gICAgICAgIGNvZGVcbiAgICAgICAgc3RhdGVcbiAgICAgICAgbmV4dFN0YXRlc1xuICAgICAgICB0b3RhbFxuICAgICAgICBjdXJyZW5jeUNvZGVcbiAgICAgICAgY3VzdG9tZXIge1xuICAgICAgICAgICAgaWRcbiAgICAgICAgICAgIGZpcnN0TmFtZVxuICAgICAgICAgICAgbGFzdE5hbWVcbiAgICAgICAgfVxuICAgICAgICBzaGlwcGluZ0xpbmVzIHtcbiAgICAgICAgICAgIHNoaXBwaW5nTWV0aG9kIHtcbiAgICAgICAgICAgICAgICBuYW1lXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG5gO1xuXG5leHBvcnQgY29uc3QgRlVMRklMTE1FTlRfRlJBR01FTlQgPSBncWxgXG4gICAgZnJhZ21lbnQgRnVsZmlsbG1lbnQgb24gRnVsZmlsbG1lbnQge1xuICAgICAgICBpZFxuICAgICAgICBzdGF0ZVxuICAgICAgICBuZXh0U3RhdGVzXG4gICAgICAgIGNyZWF0ZWRBdFxuICAgICAgICB1cGRhdGVkQXRcbiAgICAgICAgbWV0aG9kXG4gICAgICAgIG9yZGVySXRlbXMge1xuICAgICAgICAgICAgaWRcbiAgICAgICAgfVxuICAgICAgICB0cmFja2luZ0NvZGVcbiAgICB9XG5gO1xuXG5leHBvcnQgY29uc3QgT1JERVJfTElORV9GUkFHTUVOVCA9IGdxbGBcbiAgICBmcmFnbWVudCBPcmRlckxpbmUgb24gT3JkZXJMaW5lIHtcbiAgICAgICAgaWRcbiAgICAgICAgZmVhdHVyZWRBc3NldCB7XG4gICAgICAgICAgICBwcmV2aWV3XG4gICAgICAgIH1cbiAgICAgICAgcHJvZHVjdFZhcmlhbnQge1xuICAgICAgICAgICAgaWRcbiAgICAgICAgICAgIG5hbWVcbiAgICAgICAgICAgIHNrdVxuICAgICAgICAgICAgdHJhY2tJbnZlbnRvcnlcbiAgICAgICAgICAgIHN0b2NrT25IYW5kXG4gICAgICAgIH1cbiAgICAgICAgZGlzY291bnRzIHtcbiAgICAgICAgICAgIC4uLkRpc2NvdW50XG4gICAgICAgIH1cbiAgICAgICAgdW5pdFByaWNlXG4gICAgICAgIHVuaXRQcmljZVdpdGhUYXhcbiAgICAgICAgcHJvcmF0ZWRVbml0UHJpY2VcbiAgICAgICAgcHJvcmF0ZWRVbml0UHJpY2VXaXRoVGF4XG4gICAgICAgIHF1YW50aXR5XG4gICAgICAgIGl0ZW1zIHtcbiAgICAgICAgICAgIGlkXG4gICAgICAgICAgICB1bml0UHJpY2VcbiAgICAgICAgICAgIHVuaXRQcmljZVdpdGhUYXhcbiAgICAgICAgICAgIHRheFJhdGVcbiAgICAgICAgICAgIHJlZnVuZElkXG4gICAgICAgICAgICBjYW5jZWxsZWRcbiAgICAgICAgICAgIGZ1bGZpbGxtZW50IHtcbiAgICAgICAgICAgICAgICAuLi5GdWxmaWxsbWVudFxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgICAgIGxpbmVQcmljZVxuICAgICAgICBsaW5lVGF4XG4gICAgICAgIGxpbmVQcmljZVdpdGhUYXhcbiAgICAgICAgZGlzY291bnRlZExpbmVQcmljZVxuICAgICAgICBkaXNjb3VudGVkTGluZVByaWNlV2l0aFRheFxuICAgIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBPUkRFUl9ERVRBSUxfRlJBR01FTlQgPSBncWxgXG4gICAgZnJhZ21lbnQgT3JkZXJEZXRhaWwgb24gT3JkZXIge1xuICAgICAgICBpZFxuICAgICAgICBjcmVhdGVkQXRcbiAgICAgICAgdXBkYXRlZEF0XG4gICAgICAgIGNvZGVcbiAgICAgICAgc3RhdGVcbiAgICAgICAgbmV4dFN0YXRlc1xuICAgICAgICBhY3RpdmVcbiAgICAgICAgY291cG9uQ29kZXNcbiAgICAgICAgY3VzdG9tZXIge1xuICAgICAgICAgICAgaWRcbiAgICAgICAgICAgIGZpcnN0TmFtZVxuICAgICAgICAgICAgbGFzdE5hbWVcbiAgICAgICAgfVxuICAgICAgICBsaW5lcyB7XG4gICAgICAgICAgICAuLi5PcmRlckxpbmVcbiAgICAgICAgfVxuICAgICAgICBzdXJjaGFyZ2VzIHtcbiAgICAgICAgICAgIGlkXG4gICAgICAgICAgICBza3VcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uXG4gICAgICAgICAgICBwcmljZVxuICAgICAgICAgICAgcHJpY2VXaXRoVGF4XG4gICAgICAgICAgICB0YXhSYXRlXG4gICAgICAgIH1cbiAgICAgICAgZGlzY291bnRzIHtcbiAgICAgICAgICAgIC4uLkRpc2NvdW50XG4gICAgICAgIH1cbiAgICAgICAgcHJvbW90aW9ucyB7XG4gICAgICAgICAgICBpZFxuICAgICAgICAgICAgY291cG9uQ29kZVxuICAgICAgICB9XG4gICAgICAgIHN1YlRvdGFsXG4gICAgICAgIHN1YlRvdGFsV2l0aFRheFxuICAgICAgICB0b3RhbFxuICAgICAgICB0b3RhbFdpdGhUYXhcbiAgICAgICAgY3VycmVuY3lDb2RlXG4gICAgICAgIHNoaXBwaW5nXG4gICAgICAgIHNoaXBwaW5nV2l0aFRheFxuICAgICAgICBzaGlwcGluZ0xpbmVzIHtcbiAgICAgICAgICAgIHNoaXBwaW5nTWV0aG9kIHtcbiAgICAgICAgICAgICAgICBpZFxuICAgICAgICAgICAgICAgIGNvZGVcbiAgICAgICAgICAgICAgICBuYW1lXG4gICAgICAgICAgICAgICAgZnVsZmlsbG1lbnRIYW5kbGVyQ29kZVxuICAgICAgICAgICAgICAgIGRlc2NyaXB0aW9uXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgdGF4U3VtbWFyeSB7XG4gICAgICAgICAgICBkZXNjcmlwdGlvblxuICAgICAgICAgICAgdGF4QmFzZVxuICAgICAgICAgICAgdGF4UmF0ZVxuICAgICAgICAgICAgdGF4VG90YWxcbiAgICAgICAgfVxuICAgICAgICBzaGlwcGluZ0FkZHJlc3Mge1xuICAgICAgICAgICAgLi4uT3JkZXJBZGRyZXNzXG4gICAgICAgIH1cbiAgICAgICAgYmlsbGluZ0FkZHJlc3Mge1xuICAgICAgICAgICAgLi4uT3JkZXJBZGRyZXNzXG4gICAgICAgIH1cbiAgICAgICAgcGF5bWVudHMge1xuICAgICAgICAgICAgaWRcbiAgICAgICAgICAgIGNyZWF0ZWRBdFxuICAgICAgICAgICAgdHJhbnNhY3Rpb25JZFxuICAgICAgICAgICAgYW1vdW50XG4gICAgICAgICAgICBtZXRob2RcbiAgICAgICAgICAgIHN0YXRlXG4gICAgICAgICAgICBuZXh0U3RhdGVzXG4gICAgICAgICAgICBlcnJvck1lc3NhZ2VcbiAgICAgICAgICAgIG1ldGFkYXRhXG4gICAgICAgICAgICByZWZ1bmRzIHtcbiAgICAgICAgICAgICAgICBpZFxuICAgICAgICAgICAgICAgIGNyZWF0ZWRBdFxuICAgICAgICAgICAgICAgIHN0YXRlXG4gICAgICAgICAgICAgICAgaXRlbXNcbiAgICAgICAgICAgICAgICBhZGp1c3RtZW50XG4gICAgICAgICAgICAgICAgdG90YWxcbiAgICAgICAgICAgICAgICBwYXltZW50SWRcbiAgICAgICAgICAgICAgICByZWFzb25cbiAgICAgICAgICAgICAgICB0cmFuc2FjdGlvbklkXG4gICAgICAgICAgICAgICAgbWV0aG9kXG4gICAgICAgICAgICAgICAgbWV0YWRhdGFcbiAgICAgICAgICAgICAgICBvcmRlckl0ZW1zIHtcbiAgICAgICAgICAgICAgICAgICAgaWRcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZnVsZmlsbG1lbnRzIHtcbiAgICAgICAgICAgIC4uLkZ1bGZpbGxtZW50XG4gICAgICAgIH1cbiAgICAgICAgbW9kaWZpY2F0aW9ucyB7XG4gICAgICAgICAgICBpZFxuICAgICAgICAgICAgY3JlYXRlZEF0XG4gICAgICAgICAgICBpc1NldHRsZWRcbiAgICAgICAgICAgIHByaWNlQ2hhbmdlXG4gICAgICAgICAgICBub3RlXG4gICAgICAgICAgICBwYXltZW50IHtcbiAgICAgICAgICAgICAgICBpZFxuICAgICAgICAgICAgICAgIGFtb3VudFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgb3JkZXJJdGVtcyB7XG4gICAgICAgICAgICAgICAgaWRcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJlZnVuZCB7XG4gICAgICAgICAgICAgICAgaWRcbiAgICAgICAgICAgICAgICBwYXltZW50SWRcbiAgICAgICAgICAgICAgICB0b3RhbFxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgc3VyY2hhcmdlcyB7XG4gICAgICAgICAgICAgICAgaWRcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAke0RJU0NPVU5UX0ZSQUdNRU5UfVxuICAgICR7T1JERVJfQUREUkVTU19GUkFHTUVOVH1cbiAgICAke0ZVTEZJTExNRU5UX0ZSQUdNRU5UfVxuICAgICR7T1JERVJfTElORV9GUkFHTUVOVH1cbmA7XG5cbmV4cG9ydCBjb25zdCBHRVRfT1JERVJTX0xJU1QgPSBncWxgXG4gICAgcXVlcnkgR2V0T3JkZXJMaXN0KCRvcHRpb25zOiBPcmRlckxpc3RPcHRpb25zKSB7XG4gICAgICAgIG9yZGVycyhvcHRpb25zOiAkb3B0aW9ucykge1xuICAgICAgICAgICAgaXRlbXMge1xuICAgICAgICAgICAgICAgIC4uLk9yZGVyXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICB0b3RhbEl0ZW1zXG4gICAgICAgIH1cbiAgICB9XG4gICAgJHtPUkRFUl9GUkFHTUVOVH1cbmA7XG5cbmV4cG9ydCBjb25zdCBHRVRfT1JERVIgPSBncWxgXG4gICAgcXVlcnkgR2V0T3JkZXIoJGlkOiBJRCEpIHtcbiAgICAgICAgb3JkZXIoaWQ6ICRpZCkge1xuICAgICAgICAgICAgLi4uT3JkZXJEZXRhaWxcbiAgICAgICAgfVxuICAgIH1cbiAgICAke09SREVSX0RFVEFJTF9GUkFHTUVOVH1cbmA7XG5cbmV4cG9ydCBjb25zdCBTRVRUTEVfUEFZTUVOVCA9IGdxbGBcbiAgICBtdXRhdGlvbiBTZXR0bGVQYXltZW50KCRpZDogSUQhKSB7XG4gICAgICAgIHNldHRsZVBheW1lbnQoaWQ6ICRpZCkge1xuICAgICAgICAgICAgLi4uIG9uIFBheW1lbnQge1xuICAgICAgICAgICAgICAgIGlkXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25JZFxuICAgICAgICAgICAgICAgIGFtb3VudFxuICAgICAgICAgICAgICAgIG1ldGhvZFxuICAgICAgICAgICAgICAgIHN0YXRlXG4gICAgICAgICAgICAgICAgbWV0YWRhdGFcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC4uLkVycm9yUmVzdWx0XG4gICAgICAgICAgICAuLi4gb24gU2V0dGxlUGF5bWVudEVycm9yIHtcbiAgICAgICAgICAgICAgICBwYXltZW50RXJyb3JNZXNzYWdlXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuLi4gb24gUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uRXJyb3JcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC4uLiBvbiBPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uRXJyb3JcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAke0VSUk9SX1JFU1VMVF9GUkFHTUVOVH1cbmA7XG5cbmV4cG9ydCBjb25zdCBUUkFOU0lUSU9OX1BBWU1FTlRfVE9fU1RBVEUgPSBncWxgXG4gICAgbXV0YXRpb24gVHJhbnNpdGlvblBheW1lbnRUb1N0YXRlKCRpZDogSUQhLCAkc3RhdGU6IFN0cmluZyEpIHtcbiAgICAgICAgdHJhbnNpdGlvblBheW1lbnRUb1N0YXRlKGlkOiAkaWQsIHN0YXRlOiAkc3RhdGUpIHtcbiAgICAgICAgICAgIC4uLiBvbiBQYXltZW50IHtcbiAgICAgICAgICAgICAgICBpZFxuICAgICAgICAgICAgICAgIHRyYW5zYWN0aW9uSWRcbiAgICAgICAgICAgICAgICBhbW91bnRcbiAgICAgICAgICAgICAgICBtZXRob2RcbiAgICAgICAgICAgICAgICBzdGF0ZVxuICAgICAgICAgICAgICAgIG1ldGFkYXRhXG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxuICAgICAgICAgICAgLi4uIG9uIFBheW1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvciB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbkVycm9yXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJHtFUlJPUl9SRVNVTFRfRlJBR01FTlR9XG5gO1xuXG5leHBvcnQgY29uc3QgQ1JFQVRFX0ZVTEZJTExNRU5UID0gZ3FsYFxuICAgIG11dGF0aW9uIENyZWF0ZUZ1bGZpbGxtZW50KCRpbnB1dDogRnVsZmlsbE9yZGVySW5wdXQhKSB7XG4gICAgICAgIGFkZEZ1bGZpbGxtZW50VG9PcmRlcihpbnB1dDogJGlucHV0KSB7XG4gICAgICAgICAgICAuLi5GdWxmaWxsbWVudFxuICAgICAgICAgICAgLi4uIG9uIENyZWF0ZUZ1bGZpbGxtZW50RXJyb3Ige1xuICAgICAgICAgICAgICAgIGVycm9yQ29kZVxuICAgICAgICAgICAgICAgIG1lc3NhZ2VcbiAgICAgICAgICAgICAgICBmdWxmaWxsbWVudEhhbmRsZXJFcnJvclxuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLi4uIG9uIEZ1bGZpbGxtZW50U3RhdGVUcmFuc2l0aW9uRXJyb3Ige1xuICAgICAgICAgICAgICAgIGVycm9yQ29kZVxuICAgICAgICAgICAgICAgIG1lc3NhZ2VcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uRXJyb3JcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC4uLkVycm9yUmVzdWx0XG4gICAgICAgIH1cbiAgICB9XG4gICAgJHtGVUxGSUxMTUVOVF9GUkFHTUVOVH1cbiAgICAke0VSUk9SX1JFU1VMVF9GUkFHTUVOVH1cbmA7XG5cbmV4cG9ydCBjb25zdCBDQU5DRUxfT1JERVIgPSBncWxgXG4gICAgbXV0YXRpb24gQ2FuY2VsT3JkZXIoJGlucHV0OiBDYW5jZWxPcmRlcklucHV0ISkge1xuICAgICAgICBjYW5jZWxPcmRlcihpbnB1dDogJGlucHV0KSB7XG4gICAgICAgICAgICAuLi5PcmRlckRldGFpbFxuICAgICAgICAgICAgLi4uRXJyb3JSZXN1bHRcbiAgICAgICAgfVxuICAgIH1cbiAgICAke09SREVSX0RFVEFJTF9GUkFHTUVOVH1cbiAgICAke0VSUk9SX1JFU1VMVF9GUkFHTUVOVH1cbmA7XG5cbmV4cG9ydCBjb25zdCBSRUZVTkRfT1JERVIgPSBncWxgXG4gICAgbXV0YXRpb24gUmVmdW5kT3JkZXIoJGlucHV0OiBSZWZ1bmRPcmRlcklucHV0ISkge1xuICAgICAgICByZWZ1bmRPcmRlcihpbnB1dDogJGlucHV0KSB7XG4gICAgICAgICAgICAuLi5SZWZ1bmRcbiAgICAgICAgICAgIC4uLkVycm9yUmVzdWx0XG4gICAgICAgIH1cbiAgICB9XG4gICAgJHtSRUZVTkRfRlJBR01FTlR9XG4gICAgJHtFUlJPUl9SRVNVTFRfRlJBR01FTlR9XG5gO1xuXG5leHBvcnQgY29uc3QgU0VUVExFX1JFRlVORCA9IGdxbGBcbiAgICBtdXRhdGlvbiBTZXR0bGVSZWZ1bmQoJGlucHV0OiBTZXR0bGVSZWZ1bmRJbnB1dCEpIHtcbiAgICAgICAgc2V0dGxlUmVmdW5kKGlucHV0OiAkaW5wdXQpIHtcbiAgICAgICAgICAgIC4uLlJlZnVuZFxuICAgICAgICAgICAgLi4uRXJyb3JSZXN1bHRcbiAgICAgICAgfVxuICAgIH1cbiAgICAke1JFRlVORF9GUkFHTUVOVH1cbiAgICAke0VSUk9SX1JFU1VMVF9GUkFHTUVOVH1cbmA7XG5cbmV4cG9ydCBjb25zdCBHRVRfT1JERVJfSElTVE9SWSA9IGdxbGBcbiAgICBxdWVyeSBHZXRPcmRlckhpc3RvcnkoJGlkOiBJRCEsICRvcHRpb25zOiBIaXN0b3J5RW50cnlMaXN0T3B0aW9ucykge1xuICAgICAgICBvcmRlcihpZDogJGlkKSB7XG4gICAgICAgICAgICBpZFxuICAgICAgICAgICAgaGlzdG9yeShvcHRpb25zOiAkb3B0aW9ucykge1xuICAgICAgICAgICAgICAgIHRvdGFsSXRlbXNcbiAgICAgICAgICAgICAgICBpdGVtcyB7XG4gICAgICAgICAgICAgICAgICAgIGlkXG4gICAgICAgICAgICAgICAgICAgIHR5cGVcbiAgICAgICAgICAgICAgICAgICAgY3JlYXRlZEF0XG4gICAgICAgICAgICAgICAgICAgIGlzUHVibGljXG4gICAgICAgICAgICAgICAgICAgIGFkbWluaXN0cmF0b3Ige1xuICAgICAgICAgICAgICAgICAgICAgICAgaWRcbiAgICAgICAgICAgICAgICAgICAgICAgIGZpcnN0TmFtZVxuICAgICAgICAgICAgICAgICAgICAgICAgbGFzdE5hbWVcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBkYXRhXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IEFERF9OT1RFX1RPX09SREVSID0gZ3FsYFxuICAgIG11dGF0aW9uIEFkZE5vdGVUb09yZGVyKCRpbnB1dDogQWRkTm90ZVRvT3JkZXJJbnB1dCEpIHtcbiAgICAgICAgYWRkTm90ZVRvT3JkZXIoaW5wdXQ6ICRpbnB1dCkge1xuICAgICAgICAgICAgaWRcbiAgICAgICAgfVxuICAgIH1cbmA7XG5cbmV4cG9ydCBjb25zdCBVUERBVEVfT1JERVJfTk9URSA9IGdxbGBcbiAgICBtdXRhdGlvbiBVcGRhdGVPcmRlck5vdGUoJGlucHV0OiBVcGRhdGVPcmRlck5vdGVJbnB1dCEpIHtcbiAgICAgICAgdXBkYXRlT3JkZXJOb3RlKGlucHV0OiAkaW5wdXQpIHtcbiAgICAgICAgICAgIGlkXG4gICAgICAgICAgICBkYXRhXG4gICAgICAgICAgICBpc1B1YmxpY1xuICAgICAgICB9XG4gICAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IERFTEVURV9PUkRFUl9OT1RFID0gZ3FsYFxuICAgIG11dGF0aW9uIERlbGV0ZU9yZGVyTm90ZSgkaWQ6IElEISkge1xuICAgICAgICBkZWxldGVPcmRlck5vdGUoaWQ6ICRpZCkge1xuICAgICAgICAgICAgcmVzdWx0XG4gICAgICAgICAgICBtZXNzYWdlXG4gICAgICAgIH1cbiAgICB9XG5gO1xuXG5leHBvcnQgY29uc3QgVFJBTlNJVElPTl9PUkRFUl9UT19TVEFURSA9IGdxbGBcbiAgICBtdXRhdGlvbiBUcmFuc2l0aW9uT3JkZXJUb1N0YXRlKCRpZDogSUQhLCAkc3RhdGU6IFN0cmluZyEpIHtcbiAgICAgICAgdHJhbnNpdGlvbk9yZGVyVG9TdGF0ZShpZDogJGlkLCBzdGF0ZTogJHN0YXRlKSB7XG4gICAgICAgICAgICAuLi5PcmRlclxuICAgICAgICAgICAgLi4uRXJyb3JSZXN1bHRcbiAgICAgICAgICAgIC4uLiBvbiBPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yIHtcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uRXJyb3JcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgIH1cbiAgICAke09SREVSX0ZSQUdNRU5UfVxuICAgICR7RVJST1JfUkVTVUxUX0ZSQUdNRU5UfVxuYDtcblxuZXhwb3J0IGNvbnN0IFVQREFURV9PUkRFUl9DVVNUT01fRklFTERTID0gZ3FsYFxuICAgIG11dGF0aW9uIFVwZGF0ZU9yZGVyQ3VzdG9tRmllbGRzKCRpbnB1dDogVXBkYXRlT3JkZXJJbnB1dCEpIHtcbiAgICAgICAgc2V0T3JkZXJDdXN0b21GaWVsZHMoaW5wdXQ6ICRpbnB1dCkge1xuICAgICAgICAgICAgLi4uT3JkZXJcbiAgICAgICAgfVxuICAgIH1cbiAgICAke09SREVSX0ZSQUdNRU5UfVxuYDtcblxuZXhwb3J0IGNvbnN0IFRSQU5TSVRJT05fRlVMRklMTE1FTlRfVE9fU1RBVEUgPSBncWxgXG4gICAgbXV0YXRpb24gVHJhbnNpdGlvbkZ1bGZpbGxtZW50VG9TdGF0ZSgkaWQ6IElEISwgJHN0YXRlOiBTdHJpbmchKSB7XG4gICAgICAgIHRyYW5zaXRpb25GdWxmaWxsbWVudFRvU3RhdGUoaWQ6ICRpZCwgc3RhdGU6ICRzdGF0ZSkge1xuICAgICAgICAgICAgLi4uRnVsZmlsbG1lbnRcbiAgICAgICAgICAgIC4uLkVycm9yUmVzdWx0XG4gICAgICAgICAgICAuLi4gb24gRnVsZmlsbG1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvciB7XG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbkVycm9yXG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9XG4gICAgJHtGVUxGSUxMTUVOVF9GUkFHTUVOVH1cbiAgICAke0VSUk9SX1JFU1VMVF9GUkFHTUVOVH1cbmA7XG5cbmV4cG9ydCBjb25zdCBHRVRfT1JERVJfU1VNTUFSWSA9IGdxbGBcbiAgICBxdWVyeSBHZXRPcmRlclN1bW1hcnkoJHN0YXJ0OiBEYXRlVGltZSEsICRlbmQ6IERhdGVUaW1lISkge1xuICAgICAgICBvcmRlcnMob3B0aW9uczogeyBmaWx0ZXI6IHsgb3JkZXJQbGFjZWRBdDogeyBiZXR3ZWVuOiB7IHN0YXJ0OiAkc3RhcnQsIGVuZDogJGVuZCB9IH0gfSB9KSB7XG4gICAgICAgICAgICB0b3RhbEl0ZW1zXG4gICAgICAgICAgICBpdGVtcyB7XG4gICAgICAgICAgICAgICAgaWRcbiAgICAgICAgICAgICAgICB0b3RhbFxuICAgICAgICAgICAgICAgIGN1cnJlbmN5Q29kZVxuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuYDtcblxuZXhwb3J0IGNvbnN0IE1PRElGWV9PUkRFUiA9IGdxbGBcbiAgICBtdXRhdGlvbiBNb2RpZnlPcmRlcigkaW5wdXQ6IE1vZGlmeU9yZGVySW5wdXQhKSB7XG4gICAgICAgIG1vZGlmeU9yZGVyKGlucHV0OiAkaW5wdXQpIHtcbiAgICAgICAgICAgIC4uLk9yZGVyRGV0YWlsXG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxuICAgICAgICB9XG4gICAgfVxuICAgICR7T1JERVJfREVUQUlMX0ZSQUdNRU5UfVxuICAgICR7RVJST1JfUkVTVUxUX0ZSQUdNRU5UfVxuYDtcblxuZXhwb3J0IGNvbnN0IEFERF9NQU5VQUxfUEFZTUVOVF9UT19PUkRFUiA9IGdxbGBcbiAgICBtdXRhdGlvbiBBZGRNYW51YWxQYXltZW50KCRpbnB1dDogTWFudWFsUGF5bWVudElucHV0ISkge1xuICAgICAgICBhZGRNYW51YWxQYXltZW50VG9PcmRlcihpbnB1dDogJGlucHV0KSB7XG4gICAgICAgICAgICAuLi5PcmRlckRldGFpbFxuICAgICAgICAgICAgLi4uRXJyb3JSZXN1bHRcbiAgICAgICAgfVxuICAgIH1cbiAgICAke09SREVSX0RFVEFJTF9GUkFHTUVOVH1cbiAgICAke0VSUk9SX1JFU1VMVF9GUkFHTUVOVH1cbmA7XG4iXX0=
3
+ export const DISCOUNT_FRAGMENT = gql `
4
+ fragment Discount on Discount {
5
+ adjustmentSource
6
+ amount
7
+ amountWithTax
8
+ description
9
+ type
10
+ }
11
+ `;
12
+ export const PAYMENT_FRAGMENT = gql `
13
+ fragment Payment on Payment {
14
+ id
15
+ transactionId
16
+ amount
17
+ method
18
+ state
19
+ metadata
20
+ }
21
+ `;
22
+ export const REFUND_FRAGMENT = gql `
23
+ fragment Refund on Refund {
24
+ id
25
+ state
26
+ items
27
+ shipping
28
+ adjustment
29
+ transactionId
30
+ paymentId
31
+ }
32
+ `;
33
+ export const ORDER_ADDRESS_FRAGMENT = gql `
34
+ fragment OrderAddress on OrderAddress {
35
+ fullName
36
+ company
37
+ streetLine1
38
+ streetLine2
39
+ city
40
+ province
41
+ postalCode
42
+ country
43
+ countryCode
44
+ phoneNumber
45
+ }
46
+ `;
47
+ export const ORDER_FRAGMENT = gql `
48
+ fragment Order on Order {
49
+ id
50
+ createdAt
51
+ updatedAt
52
+ orderPlacedAt
53
+ code
54
+ state
55
+ nextStates
56
+ total
57
+ totalWithTax
58
+ currencyCode
59
+ customer {
60
+ id
61
+ firstName
62
+ lastName
63
+ }
64
+ shippingLines {
65
+ shippingMethod {
66
+ name
67
+ }
68
+ }
69
+ }
70
+ `;
71
+ export const FULFILLMENT_FRAGMENT = gql `
72
+ fragment Fulfillment on Fulfillment {
73
+ id
74
+ state
75
+ nextStates
76
+ createdAt
77
+ updatedAt
78
+ method
79
+ summary {
80
+ orderLine {
81
+ id
82
+ }
83
+ quantity
84
+ }
85
+ trackingCode
86
+ }
87
+ `;
88
+ export const ORDER_LINE_FRAGMENT = gql `
89
+ fragment OrderLine on OrderLine {
90
+ id
91
+ featuredAsset {
92
+ preview
93
+ }
94
+ productVariant {
95
+ id
96
+ name
97
+ sku
98
+ trackInventory
99
+ stockOnHand
100
+ }
101
+ discounts {
102
+ ...Discount
103
+ }
104
+ fulfillments {
105
+ ...Fulfillment
106
+ }
107
+ unitPrice
108
+ unitPriceWithTax
109
+ proratedUnitPrice
110
+ proratedUnitPriceWithTax
111
+ quantity
112
+ items {
113
+ id
114
+ refundId
115
+ cancelled
116
+ }
117
+ linePrice
118
+ lineTax
119
+ linePriceWithTax
120
+ discountedLinePrice
121
+ discountedLinePriceWithTax
122
+ }
123
+ `;
124
+ export const ORDER_DETAIL_FRAGMENT = gql `
125
+ fragment OrderDetail on Order {
126
+ id
127
+ createdAt
128
+ updatedAt
129
+ code
130
+ state
131
+ nextStates
132
+ active
133
+ couponCodes
134
+ customer {
135
+ id
136
+ firstName
137
+ lastName
138
+ }
139
+ lines {
140
+ ...OrderLine
141
+ }
142
+ surcharges {
143
+ id
144
+ sku
145
+ description
146
+ price
147
+ priceWithTax
148
+ taxRate
149
+ }
150
+ discounts {
151
+ ...Discount
152
+ }
153
+ promotions {
154
+ id
155
+ couponCode
156
+ }
157
+ subTotal
158
+ subTotalWithTax
159
+ total
160
+ totalWithTax
161
+ currencyCode
162
+ shipping
163
+ shippingWithTax
164
+ shippingLines {
165
+ shippingMethod {
166
+ id
167
+ code
168
+ name
169
+ fulfillmentHandlerCode
170
+ description
171
+ }
172
+ }
173
+ taxSummary {
174
+ description
175
+ taxBase
176
+ taxRate
177
+ taxTotal
178
+ }
179
+ shippingAddress {
180
+ ...OrderAddress
181
+ }
182
+ billingAddress {
183
+ ...OrderAddress
184
+ }
185
+ payments {
186
+ id
187
+ createdAt
188
+ transactionId
189
+ amount
190
+ method
191
+ state
192
+ nextStates
193
+ errorMessage
194
+ metadata
195
+ refunds {
196
+ id
197
+ createdAt
198
+ state
199
+ items
200
+ adjustment
201
+ total
202
+ paymentId
203
+ reason
204
+ transactionId
205
+ method
206
+ metadata
207
+ orderItems {
208
+ id
209
+ }
210
+ }
211
+ }
212
+ fulfillments {
213
+ ...Fulfillment
214
+ }
215
+ modifications {
216
+ id
217
+ createdAt
218
+ isSettled
219
+ priceChange
220
+ note
221
+ payment {
222
+ id
223
+ amount
224
+ }
225
+ orderItems {
226
+ id
227
+ }
228
+ refund {
229
+ id
230
+ paymentId
231
+ total
232
+ }
233
+ surcharges {
234
+ id
235
+ }
236
+ }
237
+ }
238
+ ${DISCOUNT_FRAGMENT}
239
+ ${ORDER_ADDRESS_FRAGMENT}
240
+ ${FULFILLMENT_FRAGMENT}
241
+ ${ORDER_LINE_FRAGMENT}
242
+ `;
243
+ export const GET_ORDERS_LIST = gql `
244
+ query GetOrderList($options: OrderListOptions) {
245
+ orders(options: $options) {
246
+ items {
247
+ ...Order
248
+ }
249
+ totalItems
250
+ }
251
+ }
252
+ ${ORDER_FRAGMENT}
253
+ `;
254
+ export const GET_ORDER = gql `
255
+ query GetOrder($id: ID!) {
256
+ order(id: $id) {
257
+ ...OrderDetail
258
+ }
259
+ }
260
+ ${ORDER_DETAIL_FRAGMENT}
261
+ `;
262
+ export const SETTLE_PAYMENT = gql `
263
+ mutation SettlePayment($id: ID!) {
264
+ settlePayment(id: $id) {
265
+ ...Payment
266
+ ...ErrorResult
267
+ ... on SettlePaymentError {
268
+ paymentErrorMessage
269
+ }
270
+ ... on PaymentStateTransitionError {
271
+ transitionError
272
+ }
273
+ ... on OrderStateTransitionError {
274
+ transitionError
275
+ }
276
+ }
277
+ }
278
+ ${ERROR_RESULT_FRAGMENT}
279
+ ${PAYMENT_FRAGMENT}
280
+ `;
281
+ export const CANCEL_PAYMENT = gql `
282
+ mutation CancelPayment($id: ID!) {
283
+ cancelPayment(id: $id) {
284
+ ...Payment
285
+ ...ErrorResult
286
+ ... on CancelPaymentError {
287
+ paymentErrorMessage
288
+ }
289
+ ... on PaymentStateTransitionError {
290
+ transitionError
291
+ }
292
+ }
293
+ }
294
+ ${ERROR_RESULT_FRAGMENT}
295
+ ${PAYMENT_FRAGMENT}
296
+ `;
297
+ export const TRANSITION_PAYMENT_TO_STATE = gql `
298
+ mutation TransitionPaymentToState($id: ID!, $state: String!) {
299
+ transitionPaymentToState(id: $id, state: $state) {
300
+ ...Payment
301
+ ...ErrorResult
302
+ ... on PaymentStateTransitionError {
303
+ transitionError
304
+ }
305
+ }
306
+ }
307
+ ${PAYMENT_FRAGMENT}
308
+ ${ERROR_RESULT_FRAGMENT}
309
+ `;
310
+ export const CREATE_FULFILLMENT = gql `
311
+ mutation CreateFulfillment($input: FulfillOrderInput!) {
312
+ addFulfillmentToOrder(input: $input) {
313
+ ...Fulfillment
314
+ ... on CreateFulfillmentError {
315
+ errorCode
316
+ message
317
+ fulfillmentHandlerError
318
+ }
319
+ ... on FulfillmentStateTransitionError {
320
+ errorCode
321
+ message
322
+ transitionError
323
+ }
324
+ ...ErrorResult
325
+ }
326
+ }
327
+ ${FULFILLMENT_FRAGMENT}
328
+ ${ERROR_RESULT_FRAGMENT}
329
+ `;
330
+ export const CANCEL_ORDER = gql `
331
+ mutation CancelOrder($input: CancelOrderInput!) {
332
+ cancelOrder(input: $input) {
333
+ ...OrderDetail
334
+ ...ErrorResult
335
+ }
336
+ }
337
+ ${ORDER_DETAIL_FRAGMENT}
338
+ ${ERROR_RESULT_FRAGMENT}
339
+ `;
340
+ export const REFUND_ORDER = gql `
341
+ mutation RefundOrder($input: RefundOrderInput!) {
342
+ refundOrder(input: $input) {
343
+ ...Refund
344
+ ...ErrorResult
345
+ }
346
+ }
347
+ ${REFUND_FRAGMENT}
348
+ ${ERROR_RESULT_FRAGMENT}
349
+ `;
350
+ export const SETTLE_REFUND = gql `
351
+ mutation SettleRefund($input: SettleRefundInput!) {
352
+ settleRefund(input: $input) {
353
+ ...Refund
354
+ ...ErrorResult
355
+ }
356
+ }
357
+ ${REFUND_FRAGMENT}
358
+ ${ERROR_RESULT_FRAGMENT}
359
+ `;
360
+ export const GET_ORDER_HISTORY = gql `
361
+ query GetOrderHistory($id: ID!, $options: HistoryEntryListOptions) {
362
+ order(id: $id) {
363
+ id
364
+ history(options: $options) {
365
+ totalItems
366
+ items {
367
+ id
368
+ type
369
+ createdAt
370
+ isPublic
371
+ administrator {
372
+ id
373
+ firstName
374
+ lastName
375
+ }
376
+ data
377
+ }
378
+ }
379
+ }
380
+ }
381
+ `;
382
+ export const ADD_NOTE_TO_ORDER = gql `
383
+ mutation AddNoteToOrder($input: AddNoteToOrderInput!) {
384
+ addNoteToOrder(input: $input) {
385
+ id
386
+ }
387
+ }
388
+ `;
389
+ export const UPDATE_ORDER_NOTE = gql `
390
+ mutation UpdateOrderNote($input: UpdateOrderNoteInput!) {
391
+ updateOrderNote(input: $input) {
392
+ id
393
+ data
394
+ isPublic
395
+ }
396
+ }
397
+ `;
398
+ export const DELETE_ORDER_NOTE = gql `
399
+ mutation DeleteOrderNote($id: ID!) {
400
+ deleteOrderNote(id: $id) {
401
+ result
402
+ message
403
+ }
404
+ }
405
+ `;
406
+ export const TRANSITION_ORDER_TO_STATE = gql `
407
+ mutation TransitionOrderToState($id: ID!, $state: String!) {
408
+ transitionOrderToState(id: $id, state: $state) {
409
+ ...Order
410
+ ...ErrorResult
411
+ ... on OrderStateTransitionError {
412
+ transitionError
413
+ }
414
+ }
415
+ }
416
+ ${ORDER_FRAGMENT}
417
+ ${ERROR_RESULT_FRAGMENT}
418
+ `;
419
+ export const UPDATE_ORDER_CUSTOM_FIELDS = gql `
420
+ mutation UpdateOrderCustomFields($input: UpdateOrderInput!) {
421
+ setOrderCustomFields(input: $input) {
422
+ ...Order
423
+ }
424
+ }
425
+ ${ORDER_FRAGMENT}
426
+ `;
427
+ export const TRANSITION_FULFILLMENT_TO_STATE = gql `
428
+ mutation TransitionFulfillmentToState($id: ID!, $state: String!) {
429
+ transitionFulfillmentToState(id: $id, state: $state) {
430
+ ...Fulfillment
431
+ ...ErrorResult
432
+ ... on FulfillmentStateTransitionError {
433
+ transitionError
434
+ }
435
+ }
436
+ }
437
+ ${FULFILLMENT_FRAGMENT}
438
+ ${ERROR_RESULT_FRAGMENT}
439
+ `;
440
+ export const GET_ORDER_SUMMARY = gql `
441
+ query GetOrderSummary($start: DateTime!, $end: DateTime!) {
442
+ orders(options: { filter: { orderPlacedAt: { between: { start: $start, end: $end } } } }) {
443
+ totalItems
444
+ items {
445
+ id
446
+ total
447
+ currencyCode
448
+ }
449
+ }
450
+ }
451
+ `;
452
+ export const MODIFY_ORDER = gql `
453
+ mutation ModifyOrder($input: ModifyOrderInput!) {
454
+ modifyOrder(input: $input) {
455
+ ...OrderDetail
456
+ ...ErrorResult
457
+ }
458
+ }
459
+ ${ORDER_DETAIL_FRAGMENT}
460
+ ${ERROR_RESULT_FRAGMENT}
461
+ `;
462
+ export const ADD_MANUAL_PAYMENT_TO_ORDER = gql `
463
+ mutation AddManualPayment($input: ManualPaymentInput!) {
464
+ addManualPaymentToOrder(input: $input) {
465
+ ...OrderDetail
466
+ ...ErrorResult
467
+ }
468
+ }
469
+ ${ORDER_DETAIL_FRAGMENT}
470
+ ${ERROR_RESULT_FRAGMENT}
471
+ `;
472
+ export const CREATE_DRAFT_ORDER = gql `
473
+ mutation CreateDraftOrder {
474
+ createDraftOrder {
475
+ ...OrderDetail
476
+ }
477
+ }
478
+ ${ORDER_DETAIL_FRAGMENT}
479
+ `;
480
+ export const DELETE_DRAFT_ORDER = gql `
481
+ mutation DeleteDraftOrder($orderId: ID!) {
482
+ deleteDraftOrder(orderId: $orderId) {
483
+ result
484
+ message
485
+ }
486
+ }
487
+ `;
488
+ export const ADD_ITEM_TO_DRAFT_ORDER = gql `
489
+ mutation AddItemToDraftOrder($orderId: ID!, $input: AddItemToDraftOrderInput!) {
490
+ addItemToDraftOrder(orderId: $orderId, input: $input) {
491
+ ...OrderDetail
492
+ ...ErrorResult
493
+ }
494
+ }
495
+ ${ORDER_DETAIL_FRAGMENT}
496
+ ${ERROR_RESULT_FRAGMENT}
497
+ `;
498
+ export const ADJUST_DRAFT_ORDER_LINE = gql `
499
+ mutation AdjustDraftOrderLine($orderId: ID!, $input: AdjustDraftOrderLineInput!) {
500
+ adjustDraftOrderLine(orderId: $orderId, input: $input) {
501
+ ...OrderDetail
502
+ ...ErrorResult
503
+ }
504
+ }
505
+ ${ORDER_DETAIL_FRAGMENT}
506
+ ${ERROR_RESULT_FRAGMENT}
507
+ `;
508
+ export const REMOVE_DRAFT_ORDER_LINE = gql `
509
+ mutation RemoveDraftOrderLine($orderId: ID!, $orderLineId: ID!) {
510
+ removeDraftOrderLine(orderId: $orderId, orderLineId: $orderLineId) {
511
+ ...OrderDetail
512
+ ...ErrorResult
513
+ }
514
+ }
515
+ ${ORDER_DETAIL_FRAGMENT}
516
+ ${ERROR_RESULT_FRAGMENT}
517
+ `;
518
+ export const SET_CUSTOMER_FOR_DRAFT_ORDER = gql `
519
+ mutation SetCustomerForDraftOrder($orderId: ID!, $customerId: ID, $input: CreateCustomerInput) {
520
+ setCustomerForDraftOrder(orderId: $orderId, customerId: $customerId, input: $input) {
521
+ ...OrderDetail
522
+ ...ErrorResult
523
+ }
524
+ }
525
+ ${ORDER_DETAIL_FRAGMENT}
526
+ ${ERROR_RESULT_FRAGMENT}
527
+ `;
528
+ export const SET_SHIPPING_ADDRESS_FOR_DRAFT_ORDER = gql `
529
+ mutation SetDraftOrderShippingAddress($orderId: ID!, $input: CreateAddressInput!) {
530
+ setDraftOrderShippingAddress(orderId: $orderId, input: $input) {
531
+ ...OrderDetail
532
+ }
533
+ }
534
+ ${ORDER_DETAIL_FRAGMENT}
535
+ `;
536
+ export const SET_BILLING_ADDRESS_FOR_DRAFT_ORDER = gql `
537
+ mutation SetDraftOrderBillingAddress($orderId: ID!, $input: CreateAddressInput!) {
538
+ setDraftOrderBillingAddress(orderId: $orderId, input: $input) {
539
+ ...OrderDetail
540
+ }
541
+ }
542
+ ${ORDER_DETAIL_FRAGMENT}
543
+ `;
544
+ export const APPLY_COUPON_CODE_TO_DRAFT_ORDER = gql `
545
+ mutation ApplyCouponCodeToDraftOrder($orderId: ID!, $couponCode: String!) {
546
+ applyCouponCodeToDraftOrder(orderId: $orderId, couponCode: $couponCode) {
547
+ ...OrderDetail
548
+ ...ErrorResult
549
+ }
550
+ }
551
+ ${ORDER_DETAIL_FRAGMENT}
552
+ ${ERROR_RESULT_FRAGMENT}
553
+ `;
554
+ export const REMOVE_COUPON_CODE_FROM_DRAFT_ORDER = gql `
555
+ mutation RemoveCouponCodeFromDraftOrder($orderId: ID!, $couponCode: String!) {
556
+ removeCouponCodeFromDraftOrder(orderId: $orderId, couponCode: $couponCode) {
557
+ ...OrderDetail
558
+ }
559
+ }
560
+ ${ORDER_DETAIL_FRAGMENT}
561
+ `;
562
+ export const DRAFT_ORDER_ELIGIBLE_SHIPPING_METHODS = gql `
563
+ query DraftOrderEligibleShippingMethods($orderId: ID!) {
564
+ eligibleShippingMethodsForDraftOrder(orderId: $orderId) {
565
+ id
566
+ name
567
+ code
568
+ description
569
+ price
570
+ priceWithTax
571
+ metadata
572
+ }
573
+ }
574
+ `;
575
+ export const SET_DRAFT_ORDER_SHIPPING_METHOD = gql `
576
+ mutation SetDraftOrderShippingMethod($orderId: ID!, $shippingMethodId: ID!) {
577
+ setDraftOrderShippingMethod(orderId: $orderId, shippingMethodId: $shippingMethodId) {
578
+ ...OrderDetail
579
+ ...ErrorResult
580
+ }
581
+ }
582
+ ${ORDER_DETAIL_FRAGMENT}
583
+ ${ERROR_RESULT_FRAGMENT}
584
+ `;
585
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXItZGVmaW5pdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL2RhdGEvZGVmaW5pdGlvbnMvb3JkZXItZGVmaW5pdGlvbnMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBRXJDLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRTdELE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7Q0FRbkMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGdCQUFnQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7O0NBU2xDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxlQUFlLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7O0NBVWpDLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxzQkFBc0IsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7Ozs7Ozs7Q0FheEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGNBQWMsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBdUJoQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7O0NBZ0J0QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQW1DckMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHFCQUFxQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O01Ba0hsQyxpQkFBaUI7TUFDakIsc0JBQXNCO01BQ3RCLG9CQUFvQjtNQUNwQixtQkFBbUI7Q0FDeEIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7OztNQVM1QixjQUFjO0NBQ25CLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUcsR0FBRyxDQUFBOzs7Ozs7TUFNdEIscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7Ozs7Ozs7O01BZ0IzQixxQkFBcUI7TUFDckIsZ0JBQWdCO0NBQ3JCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7Ozs7O01BYTNCLHFCQUFxQjtNQUNyQixnQkFBZ0I7Q0FDckIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDJCQUEyQixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7OztNQVV4QyxnQkFBZ0I7TUFDaEIscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7O01BaUIvQixvQkFBb0I7TUFDcEIscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsR0FBRyxDQUFBOzs7Ozs7O01BT3pCLHFCQUFxQjtNQUNyQixxQkFBcUI7Q0FDMUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLFlBQVksR0FBRyxHQUFHLENBQUE7Ozs7Ozs7TUFPekIsZUFBZTtNQUNmLHFCQUFxQjtDQUMxQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sYUFBYSxHQUFHLEdBQUcsQ0FBQTs7Ozs7OztNQU8xQixlQUFlO01BQ2YscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztDQXFCbkMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlCQUFpQixHQUFHLEdBQUcsQ0FBQTs7Ozs7O0NBTW5DLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7O0NBUW5DLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxpQkFBaUIsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7Q0FPbkMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHlCQUF5QixHQUFHLEdBQUcsQ0FBQTs7Ozs7Ozs7OztNQVV0QyxjQUFjO01BQ2QscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSwwQkFBMEIsR0FBRyxHQUFHLENBQUE7Ozs7OztNQU12QyxjQUFjO0NBQ25CLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSwrQkFBK0IsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7Ozs7TUFVNUMsb0JBQW9CO01BQ3BCLHFCQUFxQjtDQUMxQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0saUJBQWlCLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7OztDQVduQyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sWUFBWSxHQUFHLEdBQUcsQ0FBQTs7Ozs7OztNQU96QixxQkFBcUI7TUFDckIscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSwyQkFBMkIsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7TUFPeEMscUJBQXFCO01BQ3JCLHFCQUFxQjtDQUMxQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sa0JBQWtCLEdBQUcsR0FBRyxDQUFBOzs7Ozs7TUFNL0IscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7Q0FPcEMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLHVCQUF1QixHQUFHLEdBQUcsQ0FBQTs7Ozs7OztNQU9wQyxxQkFBcUI7TUFDckIscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSx1QkFBdUIsR0FBRyxHQUFHLENBQUE7Ozs7Ozs7TUFPcEMscUJBQXFCO01BQ3JCLHFCQUFxQjtDQUMxQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sdUJBQXVCLEdBQUcsR0FBRyxDQUFBOzs7Ozs7O01BT3BDLHFCQUFxQjtNQUNyQixxQkFBcUI7Q0FDMUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFHLEdBQUcsQ0FBQTs7Ozs7OztNQU96QyxxQkFBcUI7TUFDckIscUJBQXFCO0NBQzFCLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxvQ0FBb0MsR0FBRyxHQUFHLENBQUE7Ozs7OztNQU1qRCxxQkFBcUI7Q0FDMUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1DQUFtQyxHQUFHLEdBQUcsQ0FBQTs7Ozs7O01BTWhELHFCQUFxQjtDQUMxQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQUcsR0FBRyxDQUFBOzs7Ozs7O01BTzdDLHFCQUFxQjtNQUNyQixxQkFBcUI7Q0FDMUIsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLG1DQUFtQyxHQUFHLEdBQUcsQ0FBQTs7Ozs7O01BTWhELHFCQUFxQjtDQUMxQixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0scUNBQXFDLEdBQUcsR0FBRyxDQUFBOzs7Ozs7Ozs7Ozs7Q0FZdkQsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLCtCQUErQixHQUFHLEdBQUcsQ0FBQTs7Ozs7OztNQU81QyxxQkFBcUI7TUFDckIscUJBQXFCO0NBQzFCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBncWwgfSBmcm9tICdhcG9sbG8tYW5ndWxhcic7XHJcblxyXG5pbXBvcnQgeyBFUlJPUl9SRVNVTFRfRlJBR01FTlQgfSBmcm9tICcuL3NoYXJlZC1kZWZpbml0aW9ucyc7XHJcblxyXG5leHBvcnQgY29uc3QgRElTQ09VTlRfRlJBR01FTlQgPSBncWxgXHJcbiAgICBmcmFnbWVudCBEaXNjb3VudCBvbiBEaXNjb3VudCB7XHJcbiAgICAgICAgYWRqdXN0bWVudFNvdXJjZVxyXG4gICAgICAgIGFtb3VudFxyXG4gICAgICAgIGFtb3VudFdpdGhUYXhcclxuICAgICAgICBkZXNjcmlwdGlvblxyXG4gICAgICAgIHR5cGVcclxuICAgIH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBQQVlNRU5UX0ZSQUdNRU5UID0gZ3FsYFxyXG4gICAgZnJhZ21lbnQgUGF5bWVudCBvbiBQYXltZW50IHtcclxuICAgICAgICBpZFxyXG4gICAgICAgIHRyYW5zYWN0aW9uSWRcclxuICAgICAgICBhbW91bnRcclxuICAgICAgICBtZXRob2RcclxuICAgICAgICBzdGF0ZVxyXG4gICAgICAgIG1ldGFkYXRhXHJcbiAgICB9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgUkVGVU5EX0ZSQUdNRU5UID0gZ3FsYFxyXG4gICAgZnJhZ21lbnQgUmVmdW5kIG9uIFJlZnVuZCB7XHJcbiAgICAgICAgaWRcclxuICAgICAgICBzdGF0ZVxyXG4gICAgICAgIGl0ZW1zXHJcbiAgICAgICAgc2hpcHBpbmdcclxuICAgICAgICBhZGp1c3RtZW50XHJcbiAgICAgICAgdHJhbnNhY3Rpb25JZFxyXG4gICAgICAgIHBheW1lbnRJZFxyXG4gICAgfVxyXG5gO1xyXG5cclxuZXhwb3J0IGNvbnN0IE9SREVSX0FERFJFU1NfRlJBR01FTlQgPSBncWxgXHJcbiAgICBmcmFnbWVudCBPcmRlckFkZHJlc3Mgb24gT3JkZXJBZGRyZXNzIHtcclxuICAgICAgICBmdWxsTmFtZVxyXG4gICAgICAgIGNvbXBhbnlcclxuICAgICAgICBzdHJlZXRMaW5lMVxyXG4gICAgICAgIHN0cmVldExpbmUyXHJcbiAgICAgICAgY2l0eVxyXG4gICAgICAgIHByb3ZpbmNlXHJcbiAgICAgICAgcG9zdGFsQ29kZVxyXG4gICAgICAgIGNvdW50cnlcclxuICAgICAgICBjb3VudHJ5Q29kZVxyXG4gICAgICAgIHBob25lTnVtYmVyXHJcbiAgICB9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgT1JERVJfRlJBR01FTlQgPSBncWxgXHJcbiAgICBmcmFnbWVudCBPcmRlciBvbiBPcmRlciB7XHJcbiAgICAgICAgaWRcclxuICAgICAgICBjcmVhdGVkQXRcclxuICAgICAgICB1cGRhdGVkQXRcclxuICAgICAgICBvcmRlclBsYWNlZEF0XHJcbiAgICAgICAgY29kZVxyXG4gICAgICAgIHN0YXRlXHJcbiAgICAgICAgbmV4dFN0YXRlc1xyXG4gICAgICAgIHRvdGFsXHJcbiAgICAgICAgdG90YWxXaXRoVGF4XHJcbiAgICAgICAgY3VycmVuY3lDb2RlXHJcbiAgICAgICAgY3VzdG9tZXIge1xyXG4gICAgICAgICAgICBpZFxyXG4gICAgICAgICAgICBmaXJzdE5hbWVcclxuICAgICAgICAgICAgbGFzdE5hbWVcclxuICAgICAgICB9XHJcbiAgICAgICAgc2hpcHBpbmdMaW5lcyB7XHJcbiAgICAgICAgICAgIHNoaXBwaW5nTWV0aG9kIHtcclxuICAgICAgICAgICAgICAgIG5hbWVcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBGVUxGSUxMTUVOVF9GUkFHTUVOVCA9IGdxbGBcclxuICAgIGZyYWdtZW50IEZ1bGZpbGxtZW50IG9uIEZ1bGZpbGxtZW50IHtcclxuICAgICAgICBpZFxyXG4gICAgICAgIHN0YXRlXHJcbiAgICAgICAgbmV4dFN0YXRlc1xyXG4gICAgICAgIGNyZWF0ZWRBdFxyXG4gICAgICAgIHVwZGF0ZWRBdFxyXG4gICAgICAgIG1ldGhvZFxyXG4gICAgICAgIHN1bW1hcnkge1xyXG4gICAgICAgICAgICBvcmRlckxpbmUge1xyXG4gICAgICAgICAgICAgICAgaWRcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBxdWFudGl0eVxyXG4gICAgICAgIH1cclxuICAgICAgICB0cmFja2luZ0NvZGVcclxuICAgIH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBPUkRFUl9MSU5FX0ZSQUdNRU5UID0gZ3FsYFxyXG4gICAgZnJhZ21lbnQgT3JkZXJMaW5lIG9uIE9yZGVyTGluZSB7XHJcbiAgICAgICAgaWRcclxuICAgICAgICBmZWF0dXJlZEFzc2V0IHtcclxuICAgICAgICAgICAgcHJldmlld1xyXG4gICAgICAgIH1cclxuICAgICAgICBwcm9kdWN0VmFyaWFudCB7XHJcbiAgICAgICAgICAgIGlkXHJcbiAgICAgICAgICAgIG5hbWVcclxuICAgICAgICAgICAgc2t1XHJcbiAgICAgICAgICAgIHRyYWNrSW52ZW50b3J5XHJcbiAgICAgICAgICAgIHN0b2NrT25IYW5kXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGRpc2NvdW50cyB7XHJcbiAgICAgICAgICAgIC4uLkRpc2NvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICAgIGZ1bGZpbGxtZW50cyB7XHJcbiAgICAgICAgICAgIC4uLkZ1bGZpbGxtZW50XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHVuaXRQcmljZVxyXG4gICAgICAgIHVuaXRQcmljZVdpdGhUYXhcclxuICAgICAgICBwcm9yYXRlZFVuaXRQcmljZVxyXG4gICAgICAgIHByb3JhdGVkVW5pdFByaWNlV2l0aFRheFxyXG4gICAgICAgIHF1YW50aXR5XHJcbiAgICAgICAgaXRlbXMge1xyXG4gICAgICAgICAgICBpZFxyXG4gICAgICAgICAgICByZWZ1bmRJZFxyXG4gICAgICAgICAgICBjYW5jZWxsZWRcclxuICAgICAgICB9XHJcbiAgICAgICAgbGluZVByaWNlXHJcbiAgICAgICAgbGluZVRheFxyXG4gICAgICAgIGxpbmVQcmljZVdpdGhUYXhcclxuICAgICAgICBkaXNjb3VudGVkTGluZVByaWNlXHJcbiAgICAgICAgZGlzY291bnRlZExpbmVQcmljZVdpdGhUYXhcclxuICAgIH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBPUkRFUl9ERVRBSUxfRlJBR01FTlQgPSBncWxgXHJcbiAgICBmcmFnbWVudCBPcmRlckRldGFpbCBvbiBPcmRlciB7XHJcbiAgICAgICAgaWRcclxuICAgICAgICBjcmVhdGVkQXRcclxuICAgICAgICB1cGRhdGVkQXRcclxuICAgICAgICBjb2RlXHJcbiAgICAgICAgc3RhdGVcclxuICAgICAgICBuZXh0U3RhdGVzXHJcbiAgICAgICAgYWN0aXZlXHJcbiAgICAgICAgY291cG9uQ29kZXNcclxuICAgICAgICBjdXN0b21lciB7XHJcbiAgICAgICAgICAgIGlkXHJcbiAgICAgICAgICAgIGZpcnN0TmFtZVxyXG4gICAgICAgICAgICBsYXN0TmFtZVxyXG4gICAgICAgIH1cclxuICAgICAgICBsaW5lcyB7XHJcbiAgICAgICAgICAgIC4uLk9yZGVyTGluZVxyXG4gICAgICAgIH1cclxuICAgICAgICBzdXJjaGFyZ2VzIHtcclxuICAgICAgICAgICAgaWRcclxuICAgICAgICAgICAgc2t1XHJcbiAgICAgICAgICAgIGRlc2NyaXB0aW9uXHJcbiAgICAgICAgICAgIHByaWNlXHJcbiAgICAgICAgICAgIHByaWNlV2l0aFRheFxyXG4gICAgICAgICAgICB0YXhSYXRlXHJcbiAgICAgICAgfVxyXG4gICAgICAgIGRpc2NvdW50cyB7XHJcbiAgICAgICAgICAgIC4uLkRpc2NvdW50XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHByb21vdGlvbnMge1xyXG4gICAgICAgICAgICBpZFxyXG4gICAgICAgICAgICBjb3Vwb25Db2RlXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHN1YlRvdGFsXHJcbiAgICAgICAgc3ViVG90YWxXaXRoVGF4XHJcbiAgICAgICAgdG90YWxcclxuICAgICAgICB0b3RhbFdpdGhUYXhcclxuICAgICAgICBjdXJyZW5jeUNvZGVcclxuICAgICAgICBzaGlwcGluZ1xyXG4gICAgICAgIHNoaXBwaW5nV2l0aFRheFxyXG4gICAgICAgIHNoaXBwaW5nTGluZXMge1xyXG4gICAgICAgICAgICBzaGlwcGluZ01ldGhvZCB7XHJcbiAgICAgICAgICAgICAgICBpZFxyXG4gICAgICAgICAgICAgICAgY29kZVxyXG4gICAgICAgICAgICAgICAgbmFtZVxyXG4gICAgICAgICAgICAgICAgZnVsZmlsbG1lbnRIYW5kbGVyQ29kZVxyXG4gICAgICAgICAgICAgICAgZGVzY3JpcHRpb25cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICB0YXhTdW1tYXJ5IHtcclxuICAgICAgICAgICAgZGVzY3JpcHRpb25cclxuICAgICAgICAgICAgdGF4QmFzZVxyXG4gICAgICAgICAgICB0YXhSYXRlXHJcbiAgICAgICAgICAgIHRheFRvdGFsXHJcbiAgICAgICAgfVxyXG4gICAgICAgIHNoaXBwaW5nQWRkcmVzcyB7XHJcbiAgICAgICAgICAgIC4uLk9yZGVyQWRkcmVzc1xyXG4gICAgICAgIH1cclxuICAgICAgICBiaWxsaW5nQWRkcmVzcyB7XHJcbiAgICAgICAgICAgIC4uLk9yZGVyQWRkcmVzc1xyXG4gICAgICAgIH1cclxuICAgICAgICBwYXltZW50cyB7XHJcbiAgICAgICAgICAgIGlkXHJcbiAgICAgICAgICAgIGNyZWF0ZWRBdFxyXG4gICAgICAgICAgICB0cmFuc2FjdGlvbklkXHJcbiAgICAgICAgICAgIGFtb3VudFxyXG4gICAgICAgICAgICBtZXRob2RcclxuICAgICAgICAgICAgc3RhdGVcclxuICAgICAgICAgICAgbmV4dFN0YXRlc1xyXG4gICAgICAgICAgICBlcnJvck1lc3NhZ2VcclxuICAgICAgICAgICAgbWV0YWRhdGFcclxuICAgICAgICAgICAgcmVmdW5kcyB7XHJcbiAgICAgICAgICAgICAgICBpZFxyXG4gICAgICAgICAgICAgICAgY3JlYXRlZEF0XHJcbiAgICAgICAgICAgICAgICBzdGF0ZVxyXG4gICAgICAgICAgICAgICAgaXRlbXNcclxuICAgICAgICAgICAgICAgIGFkanVzdG1lbnRcclxuICAgICAgICAgICAgICAgIHRvdGFsXHJcbiAgICAgICAgICAgICAgICBwYXltZW50SWRcclxuICAgICAgICAgICAgICAgIHJlYXNvblxyXG4gICAgICAgICAgICAgICAgdHJhbnNhY3Rpb25JZFxyXG4gICAgICAgICAgICAgICAgbWV0aG9kXHJcbiAgICAgICAgICAgICAgICBtZXRhZGF0YVxyXG4gICAgICAgICAgICAgICAgb3JkZXJJdGVtcyB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWRcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgICBmdWxmaWxsbWVudHMge1xyXG4gICAgICAgICAgICAuLi5GdWxmaWxsbWVudFxyXG4gICAgICAgIH1cclxuICAgICAgICBtb2RpZmljYXRpb25zIHtcclxuICAgICAgICAgICAgaWRcclxuICAgICAgICAgICAgY3JlYXRlZEF0XHJcbiAgICAgICAgICAgIGlzU2V0dGxlZFxyXG4gICAgICAgICAgICBwcmljZUNoYW5nZVxyXG4gICAgICAgICAgICBub3RlXHJcbiAgICAgICAgICAgIHBheW1lbnQge1xyXG4gICAgICAgICAgICAgICAgaWRcclxuICAgICAgICAgICAgICAgIGFtb3VudFxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIG9yZGVySXRlbXMge1xyXG4gICAgICAgICAgICAgICAgaWRcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICByZWZ1bmQge1xyXG4gICAgICAgICAgICAgICAgaWRcclxuICAgICAgICAgICAgICAgIHBheW1lbnRJZFxyXG4gICAgICAgICAgICAgICAgdG90YWxcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICBzdXJjaGFyZ2VzIHtcclxuICAgICAgICAgICAgICAgIGlkXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAke0RJU0NPVU5UX0ZSQUdNRU5UfVxyXG4gICAgJHtPUkRFUl9BRERSRVNTX0ZSQUdNRU5UfVxyXG4gICAgJHtGVUxGSUxMTUVOVF9GUkFHTUVOVH1cclxuICAgICR7T1JERVJfTElORV9GUkFHTUVOVH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBHRVRfT1JERVJTX0xJU1QgPSBncWxgXHJcbiAgICBxdWVyeSBHZXRPcmRlckxpc3QoJG9wdGlvbnM6IE9yZGVyTGlzdE9wdGlvbnMpIHtcclxuICAgICAgICBvcmRlcnMob3B0aW9uczogJG9wdGlvbnMpIHtcclxuICAgICAgICAgICAgaXRlbXMge1xyXG4gICAgICAgICAgICAgICAgLi4uT3JkZXJcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICB0b3RhbEl0ZW1zXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJHtPUkRFUl9GUkFHTUVOVH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBHRVRfT1JERVIgPSBncWxgXHJcbiAgICBxdWVyeSBHZXRPcmRlcigkaWQ6IElEISkge1xyXG4gICAgICAgIG9yZGVyKGlkOiAkaWQpIHtcclxuICAgICAgICAgICAgLi4uT3JkZXJEZXRhaWxcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAke09SREVSX0RFVEFJTF9GUkFHTUVOVH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBTRVRUTEVfUEFZTUVOVCA9IGdxbGBcclxuICAgIG11dGF0aW9uIFNldHRsZVBheW1lbnQoJGlkOiBJRCEpIHtcclxuICAgICAgICBzZXR0bGVQYXltZW50KGlkOiAkaWQpIHtcclxuICAgICAgICAgICAgLi4uUGF5bWVudFxyXG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxyXG4gICAgICAgICAgICAuLi4gb24gU2V0dGxlUGF5bWVudEVycm9yIHtcclxuICAgICAgICAgICAgICAgIHBheW1lbnRFcnJvck1lc3NhZ2VcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuLi4gb24gUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb25FcnJvclxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIC4uLiBvbiBPcmRlclN0YXRlVHJhbnNpdGlvbkVycm9yIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb25FcnJvclxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJHtFUlJPUl9SRVNVTFRfRlJBR01FTlR9XHJcbiAgICAke1BBWU1FTlRfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgQ0FOQ0VMX1BBWU1FTlQgPSBncWxgXHJcbiAgICBtdXRhdGlvbiBDYW5jZWxQYXltZW50KCRpZDogSUQhKSB7XHJcbiAgICAgICAgY2FuY2VsUGF5bWVudChpZDogJGlkKSB7XHJcbiAgICAgICAgICAgIC4uLlBheW1lbnRcclxuICAgICAgICAgICAgLi4uRXJyb3JSZXN1bHRcclxuICAgICAgICAgICAgLi4uIG9uIENhbmNlbFBheW1lbnRFcnJvciB7XHJcbiAgICAgICAgICAgICAgICBwYXltZW50RXJyb3JNZXNzYWdlXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLi4uIG9uIFBheW1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvciB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uRXJyb3JcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7RVJST1JfUkVTVUxUX0ZSQUdNRU5UfVxyXG4gICAgJHtQQVlNRU5UX0ZSQUdNRU5UfVxyXG5gO1xyXG5cclxuZXhwb3J0IGNvbnN0IFRSQU5TSVRJT05fUEFZTUVOVF9UT19TVEFURSA9IGdxbGBcclxuICAgIG11dGF0aW9uIFRyYW5zaXRpb25QYXltZW50VG9TdGF0ZSgkaWQ6IElEISwgJHN0YXRlOiBTdHJpbmchKSB7XHJcbiAgICAgICAgdHJhbnNpdGlvblBheW1lbnRUb1N0YXRlKGlkOiAkaWQsIHN0YXRlOiAkc3RhdGUpIHtcclxuICAgICAgICAgICAgLi4uUGF5bWVudFxyXG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxyXG4gICAgICAgICAgICAuLi4gb24gUGF5bWVudFN0YXRlVHJhbnNpdGlvbkVycm9yIHtcclxuICAgICAgICAgICAgICAgIHRyYW5zaXRpb25FcnJvclxyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJHtQQVlNRU5UX0ZSQUdNRU5UfVxyXG4gICAgJHtFUlJPUl9SRVNVTFRfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgQ1JFQVRFX0ZVTEZJTExNRU5UID0gZ3FsYFxyXG4gICAgbXV0YXRpb24gQ3JlYXRlRnVsZmlsbG1lbnQoJGlucHV0OiBGdWxmaWxsT3JkZXJJbnB1dCEpIHtcclxuICAgICAgICBhZGRGdWxmaWxsbWVudFRvT3JkZXIoaW5wdXQ6ICRpbnB1dCkge1xyXG4gICAgICAgICAgICAuLi5GdWxmaWxsbWVudFxyXG4gICAgICAgICAgICAuLi4gb24gQ3JlYXRlRnVsZmlsbG1lbnRFcnJvciB7XHJcbiAgICAgICAgICAgICAgICBlcnJvckNvZGVcclxuICAgICAgICAgICAgICAgIG1lc3NhZ2VcclxuICAgICAgICAgICAgICAgIGZ1bGZpbGxtZW50SGFuZGxlckVycm9yXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgLi4uIG9uIEZ1bGZpbGxtZW50U3RhdGVUcmFuc2l0aW9uRXJyb3Ige1xyXG4gICAgICAgICAgICAgICAgZXJyb3JDb2RlXHJcbiAgICAgICAgICAgICAgICBtZXNzYWdlXHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uRXJyb3JcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7RlVMRklMTE1FTlRfRlJBR01FTlR9XHJcbiAgICAke0VSUk9SX1JFU1VMVF9GUkFHTUVOVH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBDQU5DRUxfT1JERVIgPSBncWxgXHJcbiAgICBtdXRhdGlvbiBDYW5jZWxPcmRlcigkaW5wdXQ6IENhbmNlbE9yZGVySW5wdXQhKSB7XHJcbiAgICAgICAgY2FuY2VsT3JkZXIoaW5wdXQ6ICRpbnB1dCkge1xyXG4gICAgICAgICAgICAuLi5PcmRlckRldGFpbFxyXG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7T1JERVJfREVUQUlMX0ZSQUdNRU5UfVxyXG4gICAgJHtFUlJPUl9SRVNVTFRfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgUkVGVU5EX09SREVSID0gZ3FsYFxyXG4gICAgbXV0YXRpb24gUmVmdW5kT3JkZXIoJGlucHV0OiBSZWZ1bmRPcmRlcklucHV0ISkge1xyXG4gICAgICAgIHJlZnVuZE9yZGVyKGlucHV0OiAkaW5wdXQpIHtcclxuICAgICAgICAgICAgLi4uUmVmdW5kXHJcbiAgICAgICAgICAgIC4uLkVycm9yUmVzdWx0XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJHtSRUZVTkRfRlJBR01FTlR9XHJcbiAgICAke0VSUk9SX1JFU1VMVF9GUkFHTUVOVH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBTRVRUTEVfUkVGVU5EID0gZ3FsYFxyXG4gICAgbXV0YXRpb24gU2V0dGxlUmVmdW5kKCRpbnB1dDogU2V0dGxlUmVmdW5kSW5wdXQhKSB7XHJcbiAgICAgICAgc2V0dGxlUmVmdW5kKGlucHV0OiAkaW5wdXQpIHtcclxuICAgICAgICAgICAgLi4uUmVmdW5kXHJcbiAgICAgICAgICAgIC4uLkVycm9yUmVzdWx0XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJHtSRUZVTkRfRlJBR01FTlR9XHJcbiAgICAke0VSUk9SX1JFU1VMVF9GUkFHTUVOVH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBHRVRfT1JERVJfSElTVE9SWSA9IGdxbGBcclxuICAgIHF1ZXJ5IEdldE9yZGVySGlzdG9yeSgkaWQ6IElEISwgJG9wdGlvbnM6IEhpc3RvcnlFbnRyeUxpc3RPcHRpb25zKSB7XHJcbiAgICAgICAgb3JkZXIoaWQ6ICRpZCkge1xyXG4gICAgICAgICAgICBpZFxyXG4gICAgICAgICAgICBoaXN0b3J5KG9wdGlvbnM6ICRvcHRpb25zKSB7XHJcbiAgICAgICAgICAgICAgICB0b3RhbEl0ZW1zXHJcbiAgICAgICAgICAgICAgICBpdGVtcyB7XHJcbiAgICAgICAgICAgICAgICAgICAgaWRcclxuICAgICAgICAgICAgICAgICAgICB0eXBlXHJcbiAgICAgICAgICAgICAgICAgICAgY3JlYXRlZEF0XHJcbiAgICAgICAgICAgICAgICAgICAgaXNQdWJsaWNcclxuICAgICAgICAgICAgICAgICAgICBhZG1pbmlzdHJhdG9yIHtcclxuICAgICAgICAgICAgICAgICAgICAgICAgaWRcclxuICAgICAgICAgICAgICAgICAgICAgICAgZmlyc3ROYW1lXHJcbiAgICAgICAgICAgICAgICAgICAgICAgIGxhc3ROYW1lXHJcbiAgICAgICAgICAgICAgICAgICAgfVxyXG4gICAgICAgICAgICAgICAgICAgIGRhdGFcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBBRERfTk9URV9UT19PUkRFUiA9IGdxbGBcclxuICAgIG11dGF0aW9uIEFkZE5vdGVUb09yZGVyKCRpbnB1dDogQWRkTm90ZVRvT3JkZXJJbnB1dCEpIHtcclxuICAgICAgICBhZGROb3RlVG9PcmRlcihpbnB1dDogJGlucHV0KSB7XHJcbiAgICAgICAgICAgIGlkXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5gO1xyXG5cclxuZXhwb3J0IGNvbnN0IFVQREFURV9PUkRFUl9OT1RFID0gZ3FsYFxyXG4gICAgbXV0YXRpb24gVXBkYXRlT3JkZXJOb3RlKCRpbnB1dDogVXBkYXRlT3JkZXJOb3RlSW5wdXQhKSB7XHJcbiAgICAgICAgdXBkYXRlT3JkZXJOb3RlKGlucHV0OiAkaW5wdXQpIHtcclxuICAgICAgICAgICAgaWRcclxuICAgICAgICAgICAgZGF0YVxyXG4gICAgICAgICAgICBpc1B1YmxpY1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBERUxFVEVfT1JERVJfTk9URSA9IGdxbGBcclxuICAgIG11dGF0aW9uIERlbGV0ZU9yZGVyTm90ZSgkaWQ6IElEISkge1xyXG4gICAgICAgIGRlbGV0ZU9yZGVyTm90ZShpZDogJGlkKSB7XHJcbiAgICAgICAgICAgIHJlc3VsdFxyXG4gICAgICAgICAgICBtZXNzYWdlXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5gO1xyXG5cclxuZXhwb3J0IGNvbnN0IFRSQU5TSVRJT05fT1JERVJfVE9fU1RBVEUgPSBncWxgXHJcbiAgICBtdXRhdGlvbiBUcmFuc2l0aW9uT3JkZXJUb1N0YXRlKCRpZDogSUQhLCAkc3RhdGU6IFN0cmluZyEpIHtcclxuICAgICAgICB0cmFuc2l0aW9uT3JkZXJUb1N0YXRlKGlkOiAkaWQsIHN0YXRlOiAkc3RhdGUpIHtcclxuICAgICAgICAgICAgLi4uT3JkZXJcclxuICAgICAgICAgICAgLi4uRXJyb3JSZXN1bHRcclxuICAgICAgICAgICAgLi4uIG9uIE9yZGVyU3RhdGVUcmFuc2l0aW9uRXJyb3Ige1xyXG4gICAgICAgICAgICAgICAgdHJhbnNpdGlvbkVycm9yXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAke09SREVSX0ZSQUdNRU5UfVxyXG4gICAgJHtFUlJPUl9SRVNVTFRfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgVVBEQVRFX09SREVSX0NVU1RPTV9GSUVMRFMgPSBncWxgXHJcbiAgICBtdXRhdGlvbiBVcGRhdGVPcmRlckN1c3RvbUZpZWxkcygkaW5wdXQ6IFVwZGF0ZU9yZGVySW5wdXQhKSB7XHJcbiAgICAgICAgc2V0T3JkZXJDdXN0b21GaWVsZHMoaW5wdXQ6ICRpbnB1dCkge1xyXG4gICAgICAgICAgICAuLi5PcmRlclxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7T1JERVJfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgVFJBTlNJVElPTl9GVUxGSUxMTUVOVF9UT19TVEFURSA9IGdxbGBcclxuICAgIG11dGF0aW9uIFRyYW5zaXRpb25GdWxmaWxsbWVudFRvU3RhdGUoJGlkOiBJRCEsICRzdGF0ZTogU3RyaW5nISkge1xyXG4gICAgICAgIHRyYW5zaXRpb25GdWxmaWxsbWVudFRvU3RhdGUoaWQ6ICRpZCwgc3RhdGU6ICRzdGF0ZSkge1xyXG4gICAgICAgICAgICAuLi5GdWxmaWxsbWVudFxyXG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxyXG4gICAgICAgICAgICAuLi4gb24gRnVsZmlsbG1lbnRTdGF0ZVRyYW5zaXRpb25FcnJvciB7XHJcbiAgICAgICAgICAgICAgICB0cmFuc2l0aW9uRXJyb3JcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7RlVMRklMTE1FTlRfRlJBR01FTlR9XHJcbiAgICAke0VSUk9SX1JFU1VMVF9GUkFHTUVOVH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBHRVRfT1JERVJfU1VNTUFSWSA9IGdxbGBcclxuICAgIHF1ZXJ5IEdldE9yZGVyU3VtbWFyeSgkc3RhcnQ6IERhdGVUaW1lISwgJGVuZDogRGF0ZVRpbWUhKSB7XHJcbiAgICAgICAgb3JkZXJzKG9wdGlvbnM6IHsgZmlsdGVyOiB7IG9yZGVyUGxhY2VkQXQ6IHsgYmV0d2VlbjogeyBzdGFydDogJHN0YXJ0LCBlbmQ6ICRlbmQgfSB9IH0gfSkge1xyXG4gICAgICAgICAgICB0b3RhbEl0ZW1zXHJcbiAgICAgICAgICAgIGl0ZW1zIHtcclxuICAgICAgICAgICAgICAgIGlkXHJcbiAgICAgICAgICAgICAgICB0b3RhbFxyXG4gICAgICAgICAgICAgICAgY3VycmVuY3lDb2RlXHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICB9XHJcbiAgICB9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgTU9ESUZZX09SREVSID0gZ3FsYFxyXG4gICAgbXV0YXRpb24gTW9kaWZ5T3JkZXIoJGlucHV0OiBNb2RpZnlPcmRlcklucHV0ISkge1xyXG4gICAgICAgIG1vZGlmeU9yZGVyKGlucHV0OiAkaW5wdXQpIHtcclxuICAgICAgICAgICAgLi4uT3JkZXJEZXRhaWxcclxuICAgICAgICAgICAgLi4uRXJyb3JSZXN1bHRcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAke09SREVSX0RFVEFJTF9GUkFHTUVOVH1cclxuICAgICR7RVJST1JfUkVTVUxUX0ZSQUdNRU5UfVxyXG5gO1xyXG5cclxuZXhwb3J0IGNvbnN0IEFERF9NQU5VQUxfUEFZTUVOVF9UT19PUkRFUiA9IGdxbGBcclxuICAgIG11dGF0aW9uIEFkZE1hbnVhbFBheW1lbnQoJGlucHV0OiBNYW51YWxQYXltZW50SW5wdXQhKSB7XHJcbiAgICAgICAgYWRkTWFudWFsUGF5bWVudFRvT3JkZXIoaW5wdXQ6ICRpbnB1dCkge1xyXG4gICAgICAgICAgICAuLi5PcmRlckRldGFpbFxyXG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7T1JERVJfREVUQUlMX0ZSQUdNRU5UfVxyXG4gICAgJHtFUlJPUl9SRVNVTFRfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgQ1JFQVRFX0RSQUZUX09SREVSID0gZ3FsYFxyXG4gICAgbXV0YXRpb24gQ3JlYXRlRHJhZnRPcmRlciB7XHJcbiAgICAgICAgY3JlYXRlRHJhZnRPcmRlciB7XHJcbiAgICAgICAgICAgIC4uLk9yZGVyRGV0YWlsXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJHtPUkRFUl9ERVRBSUxfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgREVMRVRFX0RSQUZUX09SREVSID0gZ3FsYFxyXG4gICAgbXV0YXRpb24gRGVsZXRlRHJhZnRPcmRlcigkb3JkZXJJZDogSUQhKSB7XHJcbiAgICAgICAgZGVsZXRlRHJhZnRPcmRlcihvcmRlcklkOiAkb3JkZXJJZCkge1xyXG4gICAgICAgICAgICByZXN1bHRcclxuICAgICAgICAgICAgbWVzc2FnZVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuYDtcclxuXHJcbmV4cG9ydCBjb25zdCBBRERfSVRFTV9UT19EUkFGVF9PUkRFUiA9IGdxbGBcclxuICAgIG11dGF0aW9uIEFkZEl0ZW1Ub0RyYWZ0T3JkZXIoJG9yZGVySWQ6IElEISwgJGlucHV0OiBBZGRJdGVtVG9EcmFmdE9yZGVySW5wdXQhKSB7XHJcbiAgICAgICAgYWRkSXRlbVRvRHJhZnRPcmRlcihvcmRlcklkOiAkb3JkZXJJZCwgaW5wdXQ6ICRpbnB1dCkge1xyXG4gICAgICAgICAgICAuLi5PcmRlckRldGFpbFxyXG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7T1JERVJfREVUQUlMX0ZSQUdNRU5UfVxyXG4gICAgJHtFUlJPUl9SRVNVTFRfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgQURKVVNUX0RSQUZUX09SREVSX0xJTkUgPSBncWxgXHJcbiAgICBtdXRhdGlvbiBBZGp1c3REcmFmdE9yZGVyTGluZSgkb3JkZXJJZDogSUQhLCAkaW5wdXQ6IEFkanVzdERyYWZ0T3JkZXJMaW5lSW5wdXQhKSB7XHJcbiAgICAgICAgYWRqdXN0RHJhZnRPcmRlckxpbmUob3JkZXJJZDogJG9yZGVySWQsIGlucHV0OiAkaW5wdXQpIHtcclxuICAgICAgICAgICAgLi4uT3JkZXJEZXRhaWxcclxuICAgICAgICAgICAgLi4uRXJyb3JSZXN1bHRcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAke09SREVSX0RFVEFJTF9GUkFHTUVOVH1cclxuICAgICR7RVJST1JfUkVTVUxUX0ZSQUdNRU5UfVxyXG5gO1xyXG5cclxuZXhwb3J0IGNvbnN0IFJFTU9WRV9EUkFGVF9PUkRFUl9MSU5FID0gZ3FsYFxyXG4gICAgbXV0YXRpb24gUmVtb3ZlRHJhZnRPcmRlckxpbmUoJG9yZGVySWQ6IElEISwgJG9yZGVyTGluZUlkOiBJRCEpIHtcclxuICAgICAgICByZW1vdmVEcmFmdE9yZGVyTGluZShvcmRlcklkOiAkb3JkZXJJZCwgb3JkZXJMaW5lSWQ6ICRvcmRlckxpbmVJZCkge1xyXG4gICAgICAgICAgICAuLi5PcmRlckRldGFpbFxyXG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7T1JERVJfREVUQUlMX0ZSQUdNRU5UfVxyXG4gICAgJHtFUlJPUl9SRVNVTFRfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgU0VUX0NVU1RPTUVSX0ZPUl9EUkFGVF9PUkRFUiA9IGdxbGBcclxuICAgIG11dGF0aW9uIFNldEN1c3RvbWVyRm9yRHJhZnRPcmRlcigkb3JkZXJJZDogSUQhLCAkY3VzdG9tZXJJZDogSUQsICRpbnB1dDogQ3JlYXRlQ3VzdG9tZXJJbnB1dCkge1xyXG4gICAgICAgIHNldEN1c3RvbWVyRm9yRHJhZnRPcmRlcihvcmRlcklkOiAkb3JkZXJJZCwgY3VzdG9tZXJJZDogJGN1c3RvbWVySWQsIGlucHV0OiAkaW5wdXQpIHtcclxuICAgICAgICAgICAgLi4uT3JkZXJEZXRhaWxcclxuICAgICAgICAgICAgLi4uRXJyb3JSZXN1bHRcclxuICAgICAgICB9XHJcbiAgICB9XHJcbiAgICAke09SREVSX0RFVEFJTF9GUkFHTUVOVH1cclxuICAgICR7RVJST1JfUkVTVUxUX0ZSQUdNRU5UfVxyXG5gO1xyXG5cclxuZXhwb3J0IGNvbnN0IFNFVF9TSElQUElOR19BRERSRVNTX0ZPUl9EUkFGVF9PUkRFUiA9IGdxbGBcclxuICAgIG11dGF0aW9uIFNldERyYWZ0T3JkZXJTaGlwcGluZ0FkZHJlc3MoJG9yZGVySWQ6IElEISwgJGlucHV0OiBDcmVhdGVBZGRyZXNzSW5wdXQhKSB7XHJcbiAgICAgICAgc2V0RHJhZnRPcmRlclNoaXBwaW5nQWRkcmVzcyhvcmRlcklkOiAkb3JkZXJJZCwgaW5wdXQ6ICRpbnB1dCkge1xyXG4gICAgICAgICAgICAuLi5PcmRlckRldGFpbFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7T1JERVJfREVUQUlMX0ZSQUdNRU5UfVxyXG5gO1xyXG5cclxuZXhwb3J0IGNvbnN0IFNFVF9CSUxMSU5HX0FERFJFU1NfRk9SX0RSQUZUX09SREVSID0gZ3FsYFxyXG4gICAgbXV0YXRpb24gU2V0RHJhZnRPcmRlckJpbGxpbmdBZGRyZXNzKCRvcmRlcklkOiBJRCEsICRpbnB1dDogQ3JlYXRlQWRkcmVzc0lucHV0ISkge1xyXG4gICAgICAgIHNldERyYWZ0T3JkZXJCaWxsaW5nQWRkcmVzcyhvcmRlcklkOiAkb3JkZXJJZCwgaW5wdXQ6ICRpbnB1dCkge1xyXG4gICAgICAgICAgICAuLi5PcmRlckRldGFpbFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7T1JERVJfREVUQUlMX0ZSQUdNRU5UfVxyXG5gO1xyXG5cclxuZXhwb3J0IGNvbnN0IEFQUExZX0NPVVBPTl9DT0RFX1RPX0RSQUZUX09SREVSID0gZ3FsYFxyXG4gICAgbXV0YXRpb24gQXBwbHlDb3Vwb25Db2RlVG9EcmFmdE9yZGVyKCRvcmRlcklkOiBJRCEsICRjb3Vwb25Db2RlOiBTdHJpbmchKSB7XHJcbiAgICAgICAgYXBwbHlDb3Vwb25Db2RlVG9EcmFmdE9yZGVyKG9yZGVySWQ6ICRvcmRlcklkLCBjb3Vwb25Db2RlOiAkY291cG9uQ29kZSkge1xyXG4gICAgICAgICAgICAuLi5PcmRlckRldGFpbFxyXG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7T1JERVJfREVUQUlMX0ZSQUdNRU5UfVxyXG4gICAgJHtFUlJPUl9SRVNVTFRfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgUkVNT1ZFX0NPVVBPTl9DT0RFX0ZST01fRFJBRlRfT1JERVIgPSBncWxgXHJcbiAgICBtdXRhdGlvbiBSZW1vdmVDb3Vwb25Db2RlRnJvbURyYWZ0T3JkZXIoJG9yZGVySWQ6IElEISwgJGNvdXBvbkNvZGU6IFN0cmluZyEpIHtcclxuICAgICAgICByZW1vdmVDb3Vwb25Db2RlRnJvbURyYWZ0T3JkZXIob3JkZXJJZDogJG9yZGVySWQsIGNvdXBvbkNvZGU6ICRjb3Vwb25Db2RlKSB7XHJcbiAgICAgICAgICAgIC4uLk9yZGVyRGV0YWlsXHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG4gICAgJHtPUkRFUl9ERVRBSUxfRlJBR01FTlR9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgRFJBRlRfT1JERVJfRUxJR0lCTEVfU0hJUFBJTkdfTUVUSE9EUyA9IGdxbGBcclxuICAgIHF1ZXJ5IERyYWZ0T3JkZXJFbGlnaWJsZVNoaXBwaW5nTWV0aG9kcygkb3JkZXJJZDogSUQhKSB7XHJcbiAgICAgICAgZWxpZ2libGVTaGlwcGluZ01ldGhvZHNGb3JEcmFmdE9yZGVyKG9yZGVySWQ6ICRvcmRlcklkKSB7XHJcbiAgICAgICAgICAgIGlkXHJcbiAgICAgICAgICAgIG5hbWVcclxuICAgICAgICAgICAgY29kZVxyXG4gICAgICAgICAgICBkZXNjcmlwdGlvblxyXG4gICAgICAgICAgICBwcmljZVxyXG4gICAgICAgICAgICBwcmljZVdpdGhUYXhcclxuICAgICAgICAgICAgbWV0YWRhdGFcclxuICAgICAgICB9XHJcbiAgICB9XHJcbmA7XHJcblxyXG5leHBvcnQgY29uc3QgU0VUX0RSQUZUX09SREVSX1NISVBQSU5HX01FVEhPRCA9IGdxbGBcclxuICAgIG11dGF0aW9uIFNldERyYWZ0T3JkZXJTaGlwcGluZ01ldGhvZCgkb3JkZXJJZDogSUQhLCAkc2hpcHBpbmdNZXRob2RJZDogSUQhKSB7XHJcbiAgICAgICAgc2V0RHJhZnRPcmRlclNoaXBwaW5nTWV0aG9kKG9yZGVySWQ6ICRvcmRlcklkLCBzaGlwcGluZ01ldGhvZElkOiAkc2hpcHBpbmdNZXRob2RJZCkge1xyXG4gICAgICAgICAgICAuLi5PcmRlckRldGFpbFxyXG4gICAgICAgICAgICAuLi5FcnJvclJlc3VsdFxyXG4gICAgICAgIH1cclxuICAgIH1cclxuICAgICR7T1JERVJfREVUQUlMX0ZSQUdNRU5UfVxyXG4gICAgJHtFUlJPUl9SRVNVTFRfRlJBR01FTlR9XHJcbmA7XHJcbiJdfQ==