@vendure/admin-ui 1.4.5 → 1.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (125) hide show
  1. package/bundles/vendure-admin-ui-catalog.umd.js +173 -149
  2. package/bundles/vendure-admin-ui-catalog.umd.js.map +1 -1
  3. package/bundles/vendure-admin-ui-core.umd.js +348 -289
  4. package/bundles/vendure-admin-ui-core.umd.js.map +1 -1
  5. package/bundles/vendure-admin-ui-customer.umd.js +51 -20
  6. package/bundles/vendure-admin-ui-customer.umd.js.map +1 -1
  7. package/bundles/vendure-admin-ui-order.umd.js +107 -17
  8. package/bundles/vendure-admin-ui-order.umd.js.map +1 -1
  9. package/bundles/vendure-admin-ui-settings.umd.js +1 -1
  10. package/bundles/vendure-admin-ui-settings.umd.js.map +1 -1
  11. package/bundles/vendure-admin-ui-system.umd.js.map +1 -1
  12. package/catalog/components/{product-assets/product-assets.component.d.ts → assets/assets.component.d.ts} +4 -10
  13. package/catalog/components/facet-detail/facet-detail.component.d.ts +7 -2
  14. package/catalog/components/product-detail/product-detail.component.d.ts +2 -1
  15. package/catalog/components/product-variants-list/product-variants-list.component.d.ts +1 -1
  16. package/catalog/public_api.d.ts +1 -1
  17. package/catalog/vendure-admin-ui-catalog.metadata.json +1 -1
  18. package/core/common/generated-types.d.ts +91 -13
  19. package/core/common/version.d.ts +1 -1
  20. package/core/data/definitions/customer-definitions.d.ts +1 -0
  21. package/core/data/providers/customer-data.service.d.ts +1 -0
  22. package/core/data/providers/promotion-data.service.d.ts +2 -2
  23. package/core/data/utils/remove-readonly-custom-fields.d.ts +12 -3
  24. package/core/providers/i18n/i18n.service.d.ts +3 -1
  25. package/core/public_api.d.ts +2 -0
  26. package/core/shared/components/asset-preview-links/asset-preview-links.component.d.ts +5 -0
  27. package/core/shared/components/object-tree/object-tree.component.d.ts +3 -3
  28. package/core/shared/directives/if-default-channel-active.directive.d.ts +1 -1
  29. package/core/shared/directives/if-multichannel.directive.d.ts +1 -1
  30. package/core/shared/dynamic-form-inputs/relation-form-input/generic/relation-generic-input.component.d.ts +15 -0
  31. package/core/vendure-admin-ui-core.metadata.json +1 -1
  32. package/customer/components/address-card/address-card.component.d.ts +2 -0
  33. package/customer/components/customer-detail/customer-detail.component.d.ts +2 -0
  34. package/customer/components/customer-list/customer-list.component.d.ts +1 -2
  35. package/customer/vendure-admin-ui-customer.metadata.json +1 -1
  36. package/esm2015/catalog/catalog.module.js +3 -3
  37. package/esm2015/catalog/components/assets/assets.component.js +93 -0
  38. package/esm2015/catalog/components/collection-detail/collection-detail.component.js +2 -2
  39. package/esm2015/catalog/components/facet-detail/facet-detail.component.js +44 -16
  40. package/esm2015/catalog/components/product-detail/product-detail.component.js +4 -3
  41. package/esm2015/catalog/components/product-list/product-list.component.js +2 -2
  42. package/esm2015/catalog/components/product-variants-list/product-variants-list.component.js +2 -2
  43. package/esm2015/catalog/public_api.js +2 -2
  44. package/esm2015/core/common/base-detail.component.js +4 -4
  45. package/esm2015/core/common/generated-types.js +5 -1
  46. package/esm2015/core/common/introspection-result.js +189 -249
  47. package/esm2015/core/common/utilities/configurable-operation-utils.js +1 -1
  48. package/esm2015/core/common/utilities/create-updated-translatable.js +1 -1
  49. package/esm2015/core/common/version.js +2 -2
  50. package/esm2015/core/components/main-nav/main-nav.component.js +3 -3
  51. package/esm2015/core/data/definitions/customer-definitions.js +8 -1
  52. package/esm2015/core/data/definitions/order-definitions.js +2 -1
  53. package/esm2015/core/data/providers/customer-data.service.js +5 -2
  54. package/esm2015/core/data/providers/interceptor.js +1 -1
  55. package/esm2015/core/data/providers/promotion-data.service.js +3 -2
  56. package/esm2015/core/data/providers/shipping-method-data.service.js +1 -1
  57. package/esm2015/core/data/utils/remove-readonly-custom-fields.js +15 -3
  58. package/esm2015/core/providers/i18n/i18n.service.js +14 -5
  59. package/esm2015/core/public_api.js +3 -1
  60. package/esm2015/core/shared/components/address-form/address-form.component.js +1 -1
  61. package/esm2015/core/shared/components/asset-gallery/asset-gallery.component.js +2 -2
  62. package/esm2015/core/shared/components/asset-preview/asset-preview.component.js +3 -3
  63. package/esm2015/core/shared/components/asset-preview-links/asset-preview-links.component.js +18 -0
  64. package/esm2015/core/shared/components/object-tree/object-tree.component.js +3 -3
  65. package/esm2015/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.js +2 -2
  66. package/esm2015/core/shared/components/tabbed-custom-fields/tabbed-custom-fields.component.js +3 -2
  67. package/esm2015/core/shared/directives/if-default-channel-active.directive.js +2 -2
  68. package/esm2015/core/shared/directives/if-multichannel.directive.js +2 -2
  69. package/esm2015/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.js +1 -1
  70. package/esm2015/core/shared/dynamic-form-inputs/relation-form-input/generic/relation-generic-input.component.js +48 -0
  71. package/esm2015/core/shared/dynamic-form-inputs/relation-form-input/relation-form-input.component.js +2 -2
  72. package/esm2015/core/shared/pipes/asset-preview.pipe.js +2 -2
  73. package/esm2015/core/shared/shared.module.js +5 -1
  74. package/esm2015/customer/components/address-card/address-card.component.js +9 -3
  75. package/esm2015/customer/components/customer-detail/customer-detail.component.js +35 -13
  76. package/esm2015/customer/components/customer-list/customer-list.component.js +12 -9
  77. package/esm2015/order/components/add-manual-payment-dialog/add-manual-payment-dialog.component.js +1 -1
  78. package/esm2015/order/components/cancel-order-dialog/cancel-order-dialog.component.js +36 -6
  79. package/esm2015/order/components/fulfill-order-dialog/fulfill-order-dialog.component.js +1 -1
  80. package/esm2015/order/components/line-refunds/line-refunds.component.js +1 -1
  81. package/esm2015/order/components/modification-detail/modification-detail.component.js +1 -1
  82. package/esm2015/order/components/order-detail/order-detail.component.js +2 -2
  83. package/esm2015/order/components/order-editor/order-editor.component.js +22 -7
  84. package/esm2015/order/components/order-edits-preview-dialog/order-edits-preview-dialog.component.js +1 -1
  85. package/esm2015/order/components/order-history/order-history.component.js +2 -2
  86. package/esm2015/order/components/order-list/order-list.component.js +1 -1
  87. package/esm2015/order/components/order-table/order-table.component.js +2 -2
  88. package/esm2015/order/components/refund-order-dialog/refund-order-dialog.component.js +10 -5
  89. package/esm2015/order/order.routes.js +1 -1
  90. package/esm2015/settings/components/channel-list/channel-list.component.js +2 -2
  91. package/esm2015/settings/components/role-list/role-list.component.js +1 -1
  92. package/esm2015/settings/components/test-order-builder/test-order-builder.component.js +1 -1
  93. package/esm2015/settings/providers/routing/shipping-method-resolver.js +1 -1
  94. package/esm2015/system/components/job-list/job-list.component.js +1 -1
  95. package/fesm2015/vendure-admin-ui-catalog.js +140 -125
  96. package/fesm2015/vendure-admin-ui-catalog.js.map +1 -1
  97. package/fesm2015/vendure-admin-ui-core.js +300 -261
  98. package/fesm2015/vendure-admin-ui-core.js.map +1 -1
  99. package/fesm2015/vendure-admin-ui-customer.js +53 -22
  100. package/fesm2015/vendure-admin-ui-customer.js.map +1 -1
  101. package/fesm2015/vendure-admin-ui-order.js +67 -17
  102. package/fesm2015/vendure-admin-ui-order.js.map +1 -1
  103. package/fesm2015/vendure-admin-ui-settings.js +1 -1
  104. package/fesm2015/vendure-admin-ui-settings.js.map +1 -1
  105. package/fesm2015/vendure-admin-ui-system.js.map +1 -1
  106. package/order/components/cancel-order-dialog/cancel-order-dialog.component.d.ts +3 -0
  107. package/order/components/order-editor/order-editor.component.d.ts +8 -2
  108. package/order/vendure-admin-ui-order.metadata.json +1 -1
  109. package/package.json +11 -11
  110. package/settings/vendure-admin-ui-settings.metadata.json +1 -1
  111. package/static/i18n-messages/cs.json +7 -1
  112. package/static/i18n-messages/de.json +7 -1
  113. package/static/i18n-messages/en.json +9 -3
  114. package/static/i18n-messages/es.json +7 -1
  115. package/static/i18n-messages/fr.json +7 -1
  116. package/static/i18n-messages/it.json +7 -1
  117. package/static/i18n-messages/pl.json +7 -1
  118. package/static/i18n-messages/pt_BR.json +7 -1
  119. package/static/i18n-messages/pt_PT.json +7 -1
  120. package/static/i18n-messages/ru.json +7 -1
  121. package/static/i18n-messages/uk.json +7 -1
  122. package/static/i18n-messages/zh_Hans.json +7 -1
  123. package/static/i18n-messages/zh_Hant.json +7 -1
  124. package/static/vendure-ui-config.json +25 -10
  125. package/esm2015/catalog/components/product-assets/product-assets.component.js +0 -108
@@ -1572,8 +1572,20 @@ function extractInputType(type) {
1572
1572
  * To be used before submitting the entity for a create or update request.
1573
1573
  */
1574
1574
  function removeReadonlyCustomFields(variables, customFieldConfig) {
1575
- if (variables.input) {
1576
- removeReadonly(variables.input, customFieldConfig);
1575
+ if (!Array.isArray(variables)) {
1576
+ if (Array.isArray(variables.input)) {
1577
+ for (const input of variables.input) {
1578
+ removeReadonly(input, customFieldConfig);
1579
+ }
1580
+ }
1581
+ else {
1582
+ removeReadonly(variables.input, customFieldConfig);
1583
+ }
1584
+ }
1585
+ else {
1586
+ for (const input of variables) {
1587
+ removeReadonly(input, customFieldConfig);
1588
+ }
1577
1589
  }
1578
1590
  return removeReadonly(variables, customFieldConfig);
1579
1591
  }
@@ -2852,6 +2864,13 @@ const UPDATE_CUSTOMER_ADDRESS = gql `
2852
2864
  }
2853
2865
  ${ADDRESS_FRAGMENT}
2854
2866
  `;
2867
+ const DELETE_CUSTOMER_ADDRESS = gql `
2868
+ mutation DeleteCustomerAddress($id: ID!) {
2869
+ deleteCustomerAddress(id: $id) {
2870
+ success
2871
+ }
2872
+ }
2873
+ `;
2855
2874
  const CREATE_CUSTOMER_GROUP = gql `
2856
2875
  mutation CreateCustomerGroup($input: CreateCustomerGroupInput!) {
2857
2876
  createCustomerGroup(input: $input) {
@@ -3019,6 +3038,9 @@ class CustomerDataService {
3019
3038
  input,
3020
3039
  });
3021
3040
  }
3041
+ deleteCustomerAddress(id) {
3042
+ return this.baseDataService.mutate(DELETE_CUSTOMER_ADDRESS, { id });
3043
+ }
3022
3044
  createCustomerGroup(input) {
3023
3045
  return this.baseDataService.mutate(CREATE_CUSTOMER_GROUP, {
3024
3046
  input,
@@ -3368,6 +3390,7 @@ const ORDER_DETAIL_FRAGMENT = gql `
3368
3390
  state
3369
3391
  nextStates
3370
3392
  active
3393
+ couponCodes
3371
3394
  customer {
3372
3395
  id
3373
3396
  firstName
@@ -3804,6 +3827,7 @@ var AdjustmentType;
3804
3827
  (function (AdjustmentType) {
3805
3828
  AdjustmentType["PROMOTION"] = "PROMOTION";
3806
3829
  AdjustmentType["DISTRIBUTED_ORDER_PROMOTION"] = "DISTRIBUTED_ORDER_PROMOTION";
3830
+ AdjustmentType["OTHER"] = "OTHER";
3807
3831
  })(AdjustmentType || (AdjustmentType = {}));
3808
3832
  var AssetType;
3809
3833
  (function (AssetType) {
@@ -4177,6 +4201,9 @@ var ErrorCode;
4177
4201
  ErrorCode["ORDER_LIMIT_ERROR"] = "ORDER_LIMIT_ERROR";
4178
4202
  ErrorCode["NEGATIVE_QUANTITY_ERROR"] = "NEGATIVE_QUANTITY_ERROR";
4179
4203
  ErrorCode["INSUFFICIENT_STOCK_ERROR"] = "INSUFFICIENT_STOCK_ERROR";
4204
+ ErrorCode["COUPON_CODE_INVALID_ERROR"] = "COUPON_CODE_INVALID_ERROR";
4205
+ ErrorCode["COUPON_CODE_EXPIRED_ERROR"] = "COUPON_CODE_EXPIRED_ERROR";
4206
+ ErrorCode["COUPON_CODE_LIMIT_ERROR"] = "COUPON_CODE_LIMIT_ERROR";
4180
4207
  })(ErrorCode || (ErrorCode = {}));
4181
4208
  var GlobalFlag;
4182
4209
  (function (GlobalFlag) {
@@ -5062,11 +5089,12 @@ class PromotionDataService {
5062
5089
  constructor(baseDataService) {
5063
5090
  this.baseDataService = baseDataService;
5064
5091
  }
5065
- getPromotions(take = 10, skip = 0) {
5092
+ getPromotions(take = 10, skip = 0, filter) {
5066
5093
  return this.baseDataService.query(GET_PROMOTION_LIST, {
5067
5094
  options: {
5068
5095
  take,
5069
5096
  skip,
5097
+ filter,
5070
5098
  },
5071
5099
  });
5072
5100
  }
@@ -5769,9 +5797,11 @@ AuthService.ctorParameters = () => [
5769
5797
  { type: ServerConfigService }
5770
5798
  ];
5771
5799
 
5800
+ /** @dynamic */
5772
5801
  class I18nService {
5773
- constructor(ngxTranslate) {
5802
+ constructor(ngxTranslate, document) {
5774
5803
  this.ngxTranslate = ngxTranslate;
5804
+ this.document = document;
5775
5805
  this._availableLanguages = [];
5776
5806
  }
5777
5807
  get availableLanguages() {
@@ -5787,7 +5817,11 @@ class I18nService {
5787
5817
  * Set the UI language
5788
5818
  */
5789
5819
  setLanguage(language) {
5820
+ var _a;
5790
5821
  this.ngxTranslate.use(language);
5822
+ if ((_a = this.document) === null || _a === void 0 ? void 0 : _a.documentElement) {
5823
+ this.document.documentElement.lang = language;
5824
+ }
5791
5825
  }
5792
5826
  /**
5793
5827
  * Set the available UI languages
@@ -5802,14 +5836,15 @@ class I18nService {
5802
5836
  return this.ngxTranslate.instant(key, params);
5803
5837
  }
5804
5838
  }
5805
- I18nService.ɵprov = i0.ɵɵdefineInjectable({ factory: function I18nService_Factory() { return new I18nService(i0.ɵɵinject(i1$1.TranslateService)); }, token: I18nService, providedIn: "root" });
5839
+ I18nService.ɵprov = i0.ɵɵdefineInjectable({ factory: function I18nService_Factory() { return new I18nService(i0.ɵɵinject(i1$1.TranslateService), i0.ɵɵinject(i1.DOCUMENT)); }, token: I18nService, providedIn: "root" });
5806
5840
  I18nService.decorators = [
5807
5841
  { type: Injectable, args: [{
5808
5842
  providedIn: 'root',
5809
5843
  },] }
5810
5844
  ];
5811
5845
  I18nService.ctorParameters = () => [
5812
- { type: TranslateService }
5846
+ { type: TranslateService },
5847
+ { type: Document, decorators: [{ type: Inject, args: [DOCUMENT,] }] }
5813
5848
  ];
5814
5849
 
5815
5850
  /**
@@ -7188,8 +7223,8 @@ class MainNavComponent {
7188
7223
  MainNavComponent.decorators = [
7189
7224
  { type: Component, args: [{
7190
7225
  selector: 'vdr-main-nav',
7191
- template: "<nav class=\"sidenav\" [clr-nav-level]=\"2\">\r\n <section class=\"sidenav-content\">\r\n <ng-container *ngFor=\"let section of navBuilderService.navMenuConfig$ | async\">\r\n <section\r\n class=\"nav-group\"\r\n [attr.data-section-id]=\"section.id\"\r\n [class.collapsible]=\"section.collapsible\"\r\n *ngIf=\"shouldDisplayLink(section)\"\r\n >\r\n <vdr-ui-extension-point [locationId]=\"section.id\" api=\"navMenu\" [topPx]=\"-6\" [leftPx]=\"8\">\r\n <ng-container *ngIf=\"navBuilderService.sectionBadges[section.id] | async as sectionBadge\">\r\n <vdr-status-badge\r\n *ngIf=\"sectionBadge !== 'none'\"\r\n [type]=\"sectionBadge\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <input [id]=\"section.id\" type=\"checkbox\" [checked]=\"section.collapsedByDefault\" />\r\n <label [for]=\"section.id\">{{ section.label | translate }}</label>\r\n <ul class=\"nav-list\">\r\n <ng-container *ngFor=\"let item of section.items\">\r\n <li *ngIf=\"shouldDisplayLink(item)\">\r\n <a\r\n class=\"nav-link\"\r\n [attr.data-item-id]=\"section.id\"\r\n [routerLink]=\"getRouterLink(item)\"\r\n routerLinkActive=\"active\"\r\n >\r\n <ng-container *ngIf=\"item.statusBadge | async as itemBadge\">\r\n <vdr-status-badge\r\n *ngIf=\"itemBadge.type !== 'none'\"\r\n [type]=\"itemBadge.type\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <clr-icon [attr.shape]=\"item.icon || 'block'\" size=\"20\"></clr-icon>\r\n {{ item.label | translate }}\r\n </a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </vdr-ui-extension-point>\r\n </section>\r\n </ng-container>\r\n </section>\r\n</nav>\r\n",
7192
- styles: [":host{order:-1;background-color:var(--clr-nav-background-color)}nav.sidenav{height:100%;width:10.8rem;border-right-color:var(--clr-sidenav-border-color)}.nav-list clr-icon{margin-right:12px}.nav-group,.nav-link{position:relative}.nav-group vdr-status-badge{left:10px;top:6px}.nav-link vdr-status-badge{left:25px;top:3px}\n"]
7226
+ template: "<nav class=\"sidenav\" [clr-nav-level]=\"2\">\r\n <section class=\"sidenav-content\">\r\n <ng-container *ngFor=\"let section of navBuilderService.navMenuConfig$ | async\">\r\n <section\r\n class=\"nav-group\"\r\n [attr.data-section-id]=\"section.id\"\r\n [class.collapsible]=\"section.collapsible\"\r\n *ngIf=\"shouldDisplayLink(section)\"\r\n >\r\n <vdr-ui-extension-point [locationId]=\"section.id\" api=\"navMenu\" [topPx]=\"-6\" [leftPx]=\"8\">\r\n <ng-container *ngIf=\"navBuilderService.sectionBadges[section.id] | async as sectionBadge\">\r\n <vdr-status-badge\r\n *ngIf=\"sectionBadge !== 'none'\"\r\n [type]=\"sectionBadge\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <input [id]=\"section.id\" type=\"checkbox\" [checked]=\"section.collapsedByDefault\" />\r\n <label class=\"nav-group-header\" [for]=\"section.id\">{{ section.label | translate }}</label>\r\n <ul class=\"nav-list\">\r\n <ng-container *ngFor=\"let item of section.items\">\r\n <li *ngIf=\"shouldDisplayLink(item)\">\r\n <a\r\n class=\"nav-link\"\r\n [attr.data-item-id]=\"section.id\"\r\n [routerLink]=\"getRouterLink(item)\"\r\n routerLinkActive=\"active\"\r\n >\r\n <ng-container *ngIf=\"item.statusBadge | async as itemBadge\">\r\n <vdr-status-badge\r\n *ngIf=\"itemBadge.type !== 'none'\"\r\n [type]=\"itemBadge.type\"\r\n ></vdr-status-badge>\r\n </ng-container>\r\n <clr-icon [attr.shape]=\"item.icon || 'block'\" size=\"20\"></clr-icon>\r\n {{ item.label | translate }}\r\n </a>\r\n </li>\r\n </ng-container>\r\n </ul>\r\n </vdr-ui-extension-point>\r\n </section>\r\n </ng-container>\r\n </section>\r\n</nav>\r\n",
7227
+ styles: [":host{order:-1;background-color:var(--clr-nav-background-color)}nav.sidenav{height:100%;width:10.8rem;border-right-color:var(--clr-sidenav-border-color)}.sidenav .nav-group .nav-list{margin:0}.sidenav .nav-group .nav-group-header{margin:0;line-height:1.2}.sidenav .nav-group .nav-link{display:inline-flex;line-height:1rem;padding-right:.6rem}.nav-list clr-icon{flex-shrink:0;margin-right:12px}.nav-group{-webkit-hyphens:auto;hyphens:auto}.nav-group,.nav-link{position:relative}.nav-group vdr-status-badge{left:10px;top:6px}.nav-link vdr-status-badge{left:25px;top:3px}\n"]
7193
7228
  },] }
7194
7229
  ];
7195
7230
  MainNavComponent.ctorParameters = () => [
@@ -7344,254 +7379,194 @@ UserMenuComponent.propDecorators = {
7344
7379
 
7345
7380
  // tslint:disable
7346
7381
  const result = {
7347
- "possibleTypes": {
7348
- "AddFulfillmentToOrderResult": [
7349
- "Fulfillment",
7350
- "EmptyOrderLineSelectionError",
7351
- "ItemsAlreadyFulfilledError",
7352
- "InsufficientStockOnHandError",
7353
- "InvalidFulfillmentHandlerError",
7354
- "FulfillmentStateTransitionError",
7355
- "CreateFulfillmentError"
7356
- ],
7357
- "AddManualPaymentToOrderResult": [
7358
- "Order",
7359
- "ManualPaymentStateError"
7360
- ],
7361
- "AuthenticationResult": [
7362
- "CurrentUser",
7363
- "InvalidCredentialsError"
7364
- ],
7365
- "CancelOrderResult": [
7366
- "Order",
7367
- "EmptyOrderLineSelectionError",
7368
- "QuantityTooGreatError",
7369
- "MultipleOrderError",
7370
- "CancelActiveOrderError",
7371
- "OrderStateTransitionError"
7372
- ],
7373
- "CreateAssetResult": [
7374
- "Asset",
7375
- "MimeTypeError"
7382
+ possibleTypes: {
7383
+ AddFulfillmentToOrderResult: [
7384
+ 'Fulfillment',
7385
+ 'EmptyOrderLineSelectionError',
7386
+ 'ItemsAlreadyFulfilledError',
7387
+ 'InsufficientStockOnHandError',
7388
+ 'InvalidFulfillmentHandlerError',
7389
+ 'FulfillmentStateTransitionError',
7390
+ 'CreateFulfillmentError',
7376
7391
  ],
7377
- "CreateChannelResult": [
7378
- "Channel",
7379
- "LanguageNotAvailableError"
7392
+ AddManualPaymentToOrderResult: ['Order', 'ManualPaymentStateError'],
7393
+ AuthenticationResult: ['CurrentUser', 'InvalidCredentialsError'],
7394
+ CancelOrderResult: [
7395
+ 'Order',
7396
+ 'EmptyOrderLineSelectionError',
7397
+ 'QuantityTooGreatError',
7398
+ 'MultipleOrderError',
7399
+ 'CancelActiveOrderError',
7400
+ 'OrderStateTransitionError',
7380
7401
  ],
7381
- "CreateCustomerResult": [
7382
- "Customer",
7383
- "EmailAddressConflictError"
7402
+ CreateAssetResult: ['Asset', 'MimeTypeError'],
7403
+ CreateChannelResult: ['Channel', 'LanguageNotAvailableError'],
7404
+ CreateCustomerResult: ['Customer', 'EmailAddressConflictError'],
7405
+ CreatePromotionResult: ['Promotion', 'MissingConditionsError'],
7406
+ CustomField: [
7407
+ 'BooleanCustomFieldConfig',
7408
+ 'DateTimeCustomFieldConfig',
7409
+ 'FloatCustomFieldConfig',
7410
+ 'IntCustomFieldConfig',
7411
+ 'LocaleStringCustomFieldConfig',
7412
+ 'RelationCustomFieldConfig',
7413
+ 'StringCustomFieldConfig',
7414
+ 'TextCustomFieldConfig',
7384
7415
  ],
7385
- "CreatePromotionResult": [
7386
- "Promotion",
7387
- "MissingConditionsError"
7416
+ CustomFieldConfig: [
7417
+ 'StringCustomFieldConfig',
7418
+ 'LocaleStringCustomFieldConfig',
7419
+ 'IntCustomFieldConfig',
7420
+ 'FloatCustomFieldConfig',
7421
+ 'BooleanCustomFieldConfig',
7422
+ 'DateTimeCustomFieldConfig',
7423
+ 'RelationCustomFieldConfig',
7424
+ 'TextCustomFieldConfig',
7388
7425
  ],
7389
- "CustomField": [
7390
- "BooleanCustomFieldConfig",
7391
- "DateTimeCustomFieldConfig",
7392
- "FloatCustomFieldConfig",
7393
- "IntCustomFieldConfig",
7394
- "LocaleStringCustomFieldConfig",
7395
- "RelationCustomFieldConfig",
7396
- "StringCustomFieldConfig",
7397
- "TextCustomFieldConfig"
7426
+ ErrorResult: [
7427
+ 'AlreadyRefundedError',
7428
+ 'CancelActiveOrderError',
7429
+ 'ChannelDefaultLanguageError',
7430
+ 'CouponCodeExpiredError',
7431
+ 'CouponCodeInvalidError',
7432
+ 'CouponCodeLimitError',
7433
+ 'CreateFulfillmentError',
7434
+ 'EmailAddressConflictError',
7435
+ 'EmptyOrderLineSelectionError',
7436
+ 'FulfillmentStateTransitionError',
7437
+ 'InsufficientStockError',
7438
+ 'InsufficientStockOnHandError',
7439
+ 'InvalidCredentialsError',
7440
+ 'InvalidFulfillmentHandlerError',
7441
+ 'ItemsAlreadyFulfilledError',
7442
+ 'LanguageNotAvailableError',
7443
+ 'ManualPaymentStateError',
7444
+ 'MimeTypeError',
7445
+ 'MissingConditionsError',
7446
+ 'MultipleOrderError',
7447
+ 'NativeAuthStrategyError',
7448
+ 'NegativeQuantityError',
7449
+ 'NoChangesSpecifiedError',
7450
+ 'NothingToRefundError',
7451
+ 'OrderLimitError',
7452
+ 'OrderModificationStateError',
7453
+ 'OrderStateTransitionError',
7454
+ 'PaymentMethodMissingError',
7455
+ 'PaymentOrderMismatchError',
7456
+ 'PaymentStateTransitionError',
7457
+ 'ProductOptionInUseError',
7458
+ 'QuantityTooGreatError',
7459
+ 'RefundOrderStateError',
7460
+ 'RefundPaymentIdMissingError',
7461
+ 'RefundStateTransitionError',
7462
+ 'SettlePaymentError',
7398
7463
  ],
7399
- "CustomFieldConfig": [
7400
- "StringCustomFieldConfig",
7401
- "LocaleStringCustomFieldConfig",
7402
- "IntCustomFieldConfig",
7403
- "FloatCustomFieldConfig",
7404
- "BooleanCustomFieldConfig",
7405
- "DateTimeCustomFieldConfig",
7406
- "RelationCustomFieldConfig",
7407
- "TextCustomFieldConfig"
7464
+ ModifyOrderResult: [
7465
+ 'Order',
7466
+ 'NoChangesSpecifiedError',
7467
+ 'OrderModificationStateError',
7468
+ 'PaymentMethodMissingError',
7469
+ 'RefundPaymentIdMissingError',
7470
+ 'OrderLimitError',
7471
+ 'NegativeQuantityError',
7472
+ 'InsufficientStockError',
7473
+ 'CouponCodeExpiredError',
7474
+ 'CouponCodeInvalidError',
7475
+ 'CouponCodeLimitError',
7408
7476
  ],
7409
- "ErrorResult": [
7410
- "AlreadyRefundedError",
7411
- "CancelActiveOrderError",
7412
- "ChannelDefaultLanguageError",
7413
- "CreateFulfillmentError",
7414
- "EmailAddressConflictError",
7415
- "EmptyOrderLineSelectionError",
7416
- "FulfillmentStateTransitionError",
7417
- "InsufficientStockError",
7418
- "InsufficientStockOnHandError",
7419
- "InvalidCredentialsError",
7420
- "InvalidFulfillmentHandlerError",
7421
- "ItemsAlreadyFulfilledError",
7422
- "LanguageNotAvailableError",
7423
- "ManualPaymentStateError",
7424
- "MimeTypeError",
7425
- "MissingConditionsError",
7426
- "MultipleOrderError",
7427
- "NativeAuthStrategyError",
7428
- "NegativeQuantityError",
7429
- "NoChangesSpecifiedError",
7430
- "NothingToRefundError",
7431
- "OrderLimitError",
7432
- "OrderModificationStateError",
7433
- "OrderStateTransitionError",
7434
- "PaymentMethodMissingError",
7435
- "PaymentOrderMismatchError",
7436
- "PaymentStateTransitionError",
7437
- "ProductOptionInUseError",
7438
- "QuantityTooGreatError",
7439
- "RefundOrderStateError",
7440
- "RefundPaymentIdMissingError",
7441
- "RefundStateTransitionError",
7442
- "SettlePaymentError"
7477
+ NativeAuthenticationResult: ['CurrentUser', 'InvalidCredentialsError', 'NativeAuthStrategyError'],
7478
+ Node: [
7479
+ 'Address',
7480
+ 'Administrator',
7481
+ 'Allocation',
7482
+ 'Asset',
7483
+ 'AuthenticationMethod',
7484
+ 'Cancellation',
7485
+ 'Channel',
7486
+ 'Collection',
7487
+ 'Country',
7488
+ 'Customer',
7489
+ 'CustomerGroup',
7490
+ 'Facet',
7491
+ 'FacetValue',
7492
+ 'Fulfillment',
7493
+ 'HistoryEntry',
7494
+ 'Job',
7495
+ 'Order',
7496
+ 'OrderItem',
7497
+ 'OrderLine',
7498
+ 'OrderModification',
7499
+ 'Payment',
7500
+ 'PaymentMethod',
7501
+ 'Product',
7502
+ 'ProductOption',
7503
+ 'ProductOptionGroup',
7504
+ 'ProductVariant',
7505
+ 'Promotion',
7506
+ 'Refund',
7507
+ 'Release',
7508
+ 'Return',
7509
+ 'Role',
7510
+ 'Sale',
7511
+ 'ShippingMethod',
7512
+ 'StockAdjustment',
7513
+ 'Surcharge',
7514
+ 'Tag',
7515
+ 'TaxCategory',
7516
+ 'TaxRate',
7517
+ 'User',
7518
+ 'Zone',
7443
7519
  ],
7444
- "ModifyOrderResult": [
7445
- "Order",
7446
- "NoChangesSpecifiedError",
7447
- "OrderModificationStateError",
7448
- "PaymentMethodMissingError",
7449
- "RefundPaymentIdMissingError",
7450
- "OrderLimitError",
7451
- "NegativeQuantityError",
7452
- "InsufficientStockError"
7520
+ PaginatedList: [
7521
+ 'AdministratorList',
7522
+ 'AssetList',
7523
+ 'CollectionList',
7524
+ 'CountryList',
7525
+ 'CustomerGroupList',
7526
+ 'CustomerList',
7527
+ 'FacetList',
7528
+ 'HistoryEntryList',
7529
+ 'JobList',
7530
+ 'OrderList',
7531
+ 'PaymentMethodList',
7532
+ 'ProductList',
7533
+ 'ProductVariantList',
7534
+ 'PromotionList',
7535
+ 'RoleList',
7536
+ 'ShippingMethodList',
7537
+ 'TagList',
7538
+ 'TaxRateList',
7453
7539
  ],
7454
- "NativeAuthenticationResult": [
7455
- "CurrentUser",
7456
- "InvalidCredentialsError",
7457
- "NativeAuthStrategyError"
7540
+ RefundOrderResult: [
7541
+ 'Refund',
7542
+ 'QuantityTooGreatError',
7543
+ 'NothingToRefundError',
7544
+ 'OrderStateTransitionError',
7545
+ 'MultipleOrderError',
7546
+ 'PaymentOrderMismatchError',
7547
+ 'RefundOrderStateError',
7548
+ 'AlreadyRefundedError',
7549
+ 'RefundStateTransitionError',
7458
7550
  ],
7459
- "Node": [
7460
- "Address",
7461
- "Administrator",
7462
- "Allocation",
7463
- "Asset",
7464
- "AuthenticationMethod",
7465
- "Cancellation",
7466
- "Channel",
7467
- "Collection",
7468
- "Country",
7469
- "Customer",
7470
- "CustomerGroup",
7471
- "Facet",
7472
- "FacetValue",
7473
- "Fulfillment",
7474
- "HistoryEntry",
7475
- "Job",
7476
- "Order",
7477
- "OrderItem",
7478
- "OrderLine",
7479
- "OrderModification",
7480
- "Payment",
7481
- "PaymentMethod",
7482
- "Product",
7483
- "ProductOption",
7484
- "ProductOptionGroup",
7485
- "ProductVariant",
7486
- "Promotion",
7487
- "Refund",
7488
- "Release",
7489
- "Return",
7490
- "Role",
7491
- "Sale",
7492
- "ShippingMethod",
7493
- "StockAdjustment",
7494
- "Surcharge",
7495
- "Tag",
7496
- "TaxCategory",
7497
- "TaxRate",
7498
- "User",
7499
- "Zone"
7551
+ RemoveOptionGroupFromProductResult: ['Product', 'ProductOptionInUseError'],
7552
+ SearchResultPrice: ['PriceRange', 'SinglePrice'],
7553
+ SettlePaymentResult: [
7554
+ 'Payment',
7555
+ 'SettlePaymentError',
7556
+ 'PaymentStateTransitionError',
7557
+ 'OrderStateTransitionError',
7500
7558
  ],
7501
- "PaginatedList": [
7502
- "AdministratorList",
7503
- "AssetList",
7504
- "CollectionList",
7505
- "CountryList",
7506
- "CustomerGroupList",
7507
- "CustomerList",
7508
- "FacetList",
7509
- "HistoryEntryList",
7510
- "JobList",
7511
- "OrderList",
7512
- "PaymentMethodList",
7513
- "ProductList",
7514
- "ProductVariantList",
7515
- "PromotionList",
7516
- "RoleList",
7517
- "ShippingMethodList",
7518
- "TagList",
7519
- "TaxRateList"
7520
- ],
7521
- "RefundOrderResult": [
7522
- "Refund",
7523
- "QuantityTooGreatError",
7524
- "NothingToRefundError",
7525
- "OrderStateTransitionError",
7526
- "MultipleOrderError",
7527
- "PaymentOrderMismatchError",
7528
- "RefundOrderStateError",
7529
- "AlreadyRefundedError",
7530
- "RefundStateTransitionError"
7531
- ],
7532
- "RemoveOptionGroupFromProductResult": [
7533
- "Product",
7534
- "ProductOptionInUseError"
7535
- ],
7536
- "SearchResultPrice": [
7537
- "PriceRange",
7538
- "SinglePrice"
7539
- ],
7540
- "SettlePaymentResult": [
7541
- "Payment",
7542
- "SettlePaymentError",
7543
- "PaymentStateTransitionError",
7544
- "OrderStateTransitionError"
7545
- ],
7546
- "SettleRefundResult": [
7547
- "Refund",
7548
- "RefundStateTransitionError"
7549
- ],
7550
- "StockMovement": [
7551
- "Allocation",
7552
- "Cancellation",
7553
- "Release",
7554
- "Return",
7555
- "Sale",
7556
- "StockAdjustment"
7557
- ],
7558
- "StockMovementItem": [
7559
- "StockAdjustment",
7560
- "Allocation",
7561
- "Sale",
7562
- "Cancellation",
7563
- "Return",
7564
- "Release"
7565
- ],
7566
- "TransitionFulfillmentToStateResult": [
7567
- "Fulfillment",
7568
- "FulfillmentStateTransitionError"
7569
- ],
7570
- "TransitionOrderToStateResult": [
7571
- "Order",
7572
- "OrderStateTransitionError"
7573
- ],
7574
- "TransitionPaymentToStateResult": [
7575
- "Payment",
7576
- "PaymentStateTransitionError"
7577
- ],
7578
- "UpdateChannelResult": [
7579
- "Channel",
7580
- "LanguageNotAvailableError"
7581
- ],
7582
- "UpdateCustomerResult": [
7583
- "Customer",
7584
- "EmailAddressConflictError"
7585
- ],
7586
- "UpdateGlobalSettingsResult": [
7587
- "GlobalSettings",
7588
- "ChannelDefaultLanguageError"
7589
- ],
7590
- "UpdatePromotionResult": [
7591
- "Promotion",
7592
- "MissingConditionsError"
7593
- ]
7594
- }
7559
+ SettleRefundResult: ['Refund', 'RefundStateTransitionError'],
7560
+ StockMovement: ['Allocation', 'Cancellation', 'Release', 'Return', 'Sale', 'StockAdjustment'],
7561
+ StockMovementItem: ['StockAdjustment', 'Allocation', 'Sale', 'Cancellation', 'Return', 'Release'],
7562
+ TransitionFulfillmentToStateResult: ['Fulfillment', 'FulfillmentStateTransitionError'],
7563
+ TransitionOrderToStateResult: ['Order', 'OrderStateTransitionError'],
7564
+ TransitionPaymentToStateResult: ['Payment', 'PaymentStateTransitionError'],
7565
+ UpdateChannelResult: ['Channel', 'LanguageNotAvailableError'],
7566
+ UpdateCustomerResult: ['Customer', 'EmailAddressConflictError'],
7567
+ UpdateGlobalSettingsResult: ['GlobalSettings', 'ChannelDefaultLanguageError'],
7568
+ UpdatePromotionResult: ['Promotion', 'MissingConditionsError'],
7569
+ },
7595
7570
  };
7596
7571
 
7597
7572
  // Allows the introspectionResult to be imported as a named symbol
@@ -8742,7 +8717,7 @@ RelationFormInputComponent.id = 'relation-form-input';
8742
8717
  RelationFormInputComponent.decorators = [
8743
8718
  { type: Component, args: [{
8744
8719
  selector: 'vdr-relation-form-input',
8745
- template: "<div [ngSwitch]=\"config.entity\">\r\n <vdr-relation-asset-input\r\n *ngSwitchCase=\"'Asset'\"\r\n [parentFormControl]=\"formControl\"\r\n [config]=\"config\"\r\n [readonly]=\"readonly\"\r\n ></vdr-relation-asset-input>\r\n <vdr-relation-product-input\r\n *ngSwitchCase=\"'Product'\"\r\n [parentFormControl]=\"formControl\"\r\n [config]=\"config\"\r\n [readonly]=\"readonly\"\r\n ></vdr-relation-product-input>\r\n <vdr-relation-customer-input\r\n *ngSwitchCase=\"'Customer'\"\r\n [parentFormControl]=\"formControl\"\r\n [config]=\"config\"\r\n [readonly]=\"readonly\"\r\n ></vdr-relation-customer-input>\r\n <vdr-relation-product-variant-input\r\n *ngSwitchCase=\"'ProductVariant'\"\r\n [parentFormControl]=\"formControl\"\r\n [config]=\"config\"\r\n [readonly]=\"readonly\"\r\n ></vdr-relation-product-variant-input>\r\n <ng-template ngSwitchDefault>\r\n No input component configured for \"{{ config.entity }}\" type\r\n </ng-template>\r\n</div>\r\n",
8720
+ template: "<div [ngSwitch]=\"config.entity\">\r\n <vdr-relation-asset-input\r\n *ngSwitchCase=\"'Asset'\"\r\n [parentFormControl]=\"formControl\"\r\n [config]=\"config\"\r\n [readonly]=\"readonly\"\r\n ></vdr-relation-asset-input>\r\n <vdr-relation-product-input\r\n *ngSwitchCase=\"'Product'\"\r\n [parentFormControl]=\"formControl\"\r\n [config]=\"config\"\r\n [readonly]=\"readonly\"\r\n ></vdr-relation-product-input>\r\n <vdr-relation-customer-input\r\n *ngSwitchCase=\"'Customer'\"\r\n [parentFormControl]=\"formControl\"\r\n [config]=\"config\"\r\n [readonly]=\"readonly\"\r\n ></vdr-relation-customer-input>\r\n <vdr-relation-product-variant-input\r\n *ngSwitchCase=\"'ProductVariant'\"\r\n [parentFormControl]=\"formControl\"\r\n [config]=\"config\"\r\n [readonly]=\"readonly\"\r\n ></vdr-relation-product-variant-input>\r\n <ng-template ngSwitchDefault>\r\n <vdr-relation-generic-input\r\n [parentFormControl]=\"formControl\"\r\n [config]=\"config\"\r\n [readonly]=\"readonly\"\r\n ></vdr-relation-generic-input>\r\n </ng-template>\r\n</div>\r\n",
8746
8721
  changeDetection: ChangeDetectionStrategy.OnPush,
8747
8722
  styles: [":host{display:block;background-color:var(--color-component-bg-200);padding:3px}\n"]
8748
8723
  },] }
@@ -9380,7 +9355,7 @@ class AssetGalleryComponent {
9380
9355
  AssetGalleryComponent.decorators = [
9381
9356
  { type: Component, args: [{
9382
9357
  selector: 'vdr-asset-gallery',
9383
- template: "<div class=\"gallery\">\r\n <div\r\n class=\"card\"\r\n *ngFor=\"let asset of assets\"\r\n (click)=\"toggleSelection(asset, $event)\"\r\n [class.selected]=\"isSelected(asset)\"\r\n >\r\n <div class=\"card-img\">\r\n <div class=\"selected-checkbox\"><clr-icon shape=\"check-circle\" size=\"32\"></clr-icon></div>\r\n <img [src]=\"asset | assetPreview: 'thumb'\" />\r\n </div>\r\n <div class=\"detail\">\r\n <vdr-entity-info\r\n [entity]=\"asset\"\r\n [small]=\"true\"\r\n (click)=\"entityInfoClick($event)\"\r\n ></vdr-entity-info>\r\n <span [title]=\"asset.name\">{{ asset.name }}</span>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"info-bar\">\r\n <div class=\"card\">\r\n <div class=\"card-img\">\r\n <div class=\"placeholder\" *ngIf=\"selection.length === 0\">\r\n <clr-icon shape=\"image\" size=\"128\"></clr-icon>\r\n <div>{{ 'catalog.no-selection' | translate }}</div>\r\n </div>\r\n <img\r\n class=\"preview\"\r\n *ngIf=\"selection.length >= 1\"\r\n [src]=\"lastSelected().preview + '?preset=medium'\"\r\n />\r\n </div>\r\n <div class=\"card-block details\" *ngIf=\"selection.length >= 1\">\r\n <div class=\"name\">{{ lastSelected().name }}</div>\r\n <div>{{ 'asset.original-asset-size' | translate }}: {{ lastSelected().fileSize | filesize }}</div>\r\n\r\n <ng-container *ngIf=\"selection.length === 1\">\r\n <vdr-chip *ngFor=\"let tag of lastSelected().tags\" [colorFrom]=\"tag.value\"><clr-icon shape=\"tag\" class=\"mr2\"></clr-icon> {{ tag.value }}</vdr-chip>\r\n <div>\r\n <button (click)=\"previewAsset(lastSelected())\" class=\"btn btn-link\">\r\n <clr-icon shape=\"eye\"></clr-icon> {{ 'asset.preview' | translate }}\r\n </button>\r\n </div>\r\n <div>\r\n <a [routerLink]=\"['./', lastSelected().id]\" class=\"btn btn-link\">\r\n <clr-icon shape=\"pencil\"></clr-icon> {{ 'common.edit' | translate }}\r\n </a>\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"canDelete\">\r\n <button (click)=\"deleteAssets.emit(selection)\" class=\"btn btn-link\">\r\n <clr-icon shape=\"trash\" class=\"is-danger\"></clr-icon> {{ 'common.delete' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card stack\" [class.visible]=\"selection.length > 1\"></div>\r\n <div class=\"selection-count\" [class.visible]=\"selection.length > 1\">\r\n {{ 'asset.assets-selected-count' | translate: { count: selection.length } }}\r\n <ul>\r\n <li *ngFor=\"let asset of selection\">{{ asset.name }}</li>\r\n </ul>\r\n </div>\r\n</div>\r\n",
9358
+ template: "<div class=\"gallery\">\r\n <div\r\n class=\"card\"\r\n *ngFor=\"let asset of assets\"\r\n (click)=\"toggleSelection(asset, $event)\"\r\n [class.selected]=\"isSelected(asset)\"\r\n >\r\n <div class=\"card-img\">\r\n <div class=\"selected-checkbox\"><clr-icon shape=\"check-circle\" size=\"32\"></clr-icon></div>\r\n <img [src]=\"asset | assetPreview: 'thumb'\" />\r\n </div>\r\n <div class=\"detail\">\r\n <vdr-entity-info\r\n [entity]=\"asset\"\r\n [small]=\"true\"\r\n (click)=\"entityInfoClick($event)\"\r\n ></vdr-entity-info>\r\n <span [title]=\"asset.name\">{{ asset.name }}</span>\r\n </div>\r\n </div>\r\n</div>\r\n<div class=\"info-bar\">\r\n <div class=\"card\">\r\n <div class=\"card-img\">\r\n <div class=\"placeholder\" *ngIf=\"selection.length === 0\">\r\n <clr-icon shape=\"image\" size=\"128\"></clr-icon>\r\n <div>{{ 'catalog.no-selection' | translate }}</div>\r\n </div>\r\n <img\r\n class=\"preview\"\r\n *ngIf=\"selection.length >= 1\"\r\n [src]=\"lastSelected().preview + '?preset=medium'\"\r\n />\r\n </div>\r\n <div class=\"card-block details\" *ngIf=\"selection.length >= 1\">\r\n <div class=\"name\">{{ lastSelected().name }}</div>\r\n <div>{{ 'asset.original-asset-size' | translate }}: {{ lastSelected().fileSize | filesize }}</div>\r\n\r\n <ng-container *ngIf=\"selection.length === 1\">\r\n <vdr-chip *ngFor=\"let tag of lastSelected().tags\" [colorFrom]=\"tag.value\"\r\n ><clr-icon shape=\"tag\" class=\"mr2\"></clr-icon> {{ tag.value }}</vdr-chip\r\n >\r\n <div>\r\n <button (click)=\"previewAsset(lastSelected())\" class=\"btn btn-link\">\r\n <clr-icon shape=\"eye\"></clr-icon> {{ 'asset.preview' | translate }}\r\n </button>\r\n </div>\r\n <div>\r\n <vdr-asset-preview-links class=\"\" [asset]=\"lastSelected()\"></vdr-asset-preview-links>\r\n </div>\r\n <div>\r\n <a [routerLink]=\"['./', lastSelected().id]\" class=\"btn btn-link\">\r\n <clr-icon shape=\"pencil\"></clr-icon> {{ 'common.edit' | translate }}\r\n </a>\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"canDelete\">\r\n <button (click)=\"deleteAssets.emit(selection)\" class=\"btn btn-link\">\r\n <clr-icon shape=\"trash\" class=\"is-danger\"></clr-icon> {{ 'common.delete' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"card stack\" [class.visible]=\"selection.length > 1\"></div>\r\n <div class=\"selection-count\" [class.visible]=\"selection.length > 1\">\r\n {{ 'asset.assets-selected-count' | translate: { count: selection.length } }}\r\n <ul>\r\n <li *ngFor=\"let asset of selection\">{{ asset.name }}</li>\r\n </ul>\r\n </div>\r\n</div>\r\n",
9384
9359
  changeDetection: ChangeDetectionStrategy.OnPush,
9385
9360
  styles: [":host{display:flex;overflow:hidden}.gallery{flex:1;display:grid;grid-template-columns:repeat(auto-fill,150px);grid-template-rows:repeat(auto-fill,180px);grid-gap:10px 20px;overflow-y:auto;padding-left:12px;padding-top:12px;padding-bottom:12px}.gallery .card:hover{box-shadow:0 .125rem 0 0 var(--color-primary-500);border:1px solid var(--color-primary-500)}.card{margin-top:0;position:relative}.selected-checkbox{opacity:0;position:absolute;color:var(--color-success-500);background-color:#fff;border-radius:50%;top:-12px;left:-12px;box-shadow:0 5px 5px -4px #000000bf;transition:opacity .1s}.card.selected{box-shadow:0 .125rem 0 0 var(--color-primary-500);border:1px solid var(--color-primary-500)}.card.selected .selected-checkbox{opacity:1}.detail{font-size:12px;margin:3px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.detail vdr-entity-info{height:16px}.info-bar{width:25%;padding:0 6px;overflow-y:auto}.info-bar .card{z-index:1}.info-bar .stack{z-index:0;opacity:0;transform:perspective(500px) translateZ(0) translateY(-16px);height:16px;transition:transform .3s,opacity 0s .3s;background-color:#fff}.info-bar .stack.visible{opacity:1;transform:perspective(500px) translateZ(-44px) translateY(0);background-color:var(--color-component-bg-100);transition:transform .3s,color .3s}.info-bar .selection-count{opacity:0;position:relative;text-align:center;visibility:hidden;transition:opacity .3s,visibility 0s .3s}.info-bar .selection-count.visible{opacity:1;visibility:visible;transition:opacity .3s,visibility 0s}.info-bar .selection-count ul{text-align:left;list-style-type:none;margin-left:12px}.info-bar .selection-count ul li{font-size:12px}.info-bar .placeholder{text-align:center;color:var(--color-grey-300)}.info-bar .preview img{max-width:100%}.info-bar .details{font-size:12px;word-break:break-all}.info-bar .name{line-height:14px;font-weight:bold}\n"]
9386
9361
  },] }
@@ -9527,6 +9502,23 @@ AssetPickerDialogComponent.propDecorators = {
9527
9502
  assetGalleryComponent: [{ type: ViewChild, args: ['assetGalleryComponent',] }]
9528
9503
  };
9529
9504
 
9505
+ class AssetPreviewLinksComponent {
9506
+ constructor() {
9507
+ this.sizes = ['tiny', 'thumb', 'small', 'medium', 'large', 'full'];
9508
+ }
9509
+ }
9510
+ AssetPreviewLinksComponent.decorators = [
9511
+ { type: Component, args: [{
9512
+ selector: 'vdr-asset-preview-links',
9513
+ template: "<vdr-dropdown>\r\n <button class=\"btn btn-link\" vdrDropdownTrigger>\r\n <clr-icon shape=\"link\"></clr-icon> {{ 'catalog.asset-preview-links' | translate }}<clr-icon shape=\"caret\" dir=\"down\"></clr-icon>\r\n </button>\r\n <vdr-dropdown-menu vdrPosition=\"bottom-left\">\r\n <a\r\n *ngFor=\"let size of sizes\"\r\n [href]=\"asset | assetPreview: size\"\r\n [title]=\"asset | assetPreview: size\"\r\n target=\"_blank\"\r\n class=\"asset-preview-link\"\r\n vdrDropdownItem\r\n >\r\n <vdr-chip><clr-icon shape=\"link\"></clr-icon> {{ 'asset.preview' | translate }}: {{ size }}</vdr-chip>\r\n </a>\r\n </vdr-dropdown-menu></vdr-dropdown\r\n>\r\n",
9514
+ changeDetection: ChangeDetectionStrategy.OnPush,
9515
+ styles: [".asset-preview-link{font-size:12px}\n"]
9516
+ },] }
9517
+ ];
9518
+ AssetPreviewLinksComponent.propDecorators = {
9519
+ asset: [{ type: Input }]
9520
+ };
9521
+
9530
9522
  class ManageTagsDialogComponent {
9531
9523
  constructor(dataService) {
9532
9524
  this.dataService = dataService;
@@ -9726,9 +9718,9 @@ class AssetPreviewComponent {
9726
9718
  AssetPreviewComponent.decorators = [
9727
9719
  { type: Component, args: [{
9728
9720
  selector: 'vdr-asset-preview',
9729
- template: "<div class=\"preview-image\" #previewDiv [class.centered]=\"centered\">\r\n <div class=\"image-wrapper\">\r\n <vdr-focal-point-control\r\n [width]=\"width\"\r\n [height]=\"height\"\r\n [fpx]=\"fpx\"\r\n [fpy]=\"fpy\"\r\n [editable]=\"settingFocalPoint\"\r\n (focalPointChange)=\"onFocalPointChange($event)\"\r\n >\r\n <img\r\n class=\"asset-image\"\r\n [src]=\"asset | assetPreview: size\"\r\n #imageElement\r\n (load)=\"onImageLoad()\"\r\n />\r\n </vdr-focal-point-control>\r\n <div class=\"focal-point-info\" *ngIf=\"settingFocalPoint\">\r\n <button class=\"icon-button\" (click)=\"setFocalPointCancel()\">\r\n <clr-icon shape=\"times\"></clr-icon>\r\n </button>\r\n <button class=\"btn btn-primary btn-sm\" (click)=\"setFocalPointEnd()\" [disabled]=\"!lastFocalPoint\">\r\n <clr-icon shape=\"crosshairs\"></clr-icon>\r\n {{ 'asset.set-focal-point' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"controls\" [class.fade]=\"settingFocalPoint\">\r\n <form [formGroup]=\"form\">\r\n <clr-input-container class=\"name-input\" *ngIf=\"editable\">\r\n <label>{{ 'common.name' | translate }}</label>\r\n <input\r\n clrInput\r\n type=\"text\"\r\n formControlName=\"name\"\r\n [readonly]=\"!(['UpdateCatalog', 'UpdateAsset'] | hasPermission) || settingFocalPoint\"\r\n />\r\n </clr-input-container>\r\n\r\n <vdr-labeled-data [label]=\"'common.name' | translate\" *ngIf=\"!editable\">\r\n <span class=\"elide\">\r\n {{ asset.name }}\r\n </span>\r\n </vdr-labeled-data>\r\n\r\n <vdr-labeled-data [label]=\"'asset.source-file' | translate\">\r\n <a [href]=\"asset.source\" [title]=\"asset.source\" target=\"_blank\" class=\"elide source-link\">{{\r\n getSourceFileName()\r\n }}</a>\r\n </vdr-labeled-data>\r\n\r\n <vdr-labeled-data [label]=\"'asset.original-asset-size' | translate\">\r\n {{ asset.fileSize | filesize }}\r\n </vdr-labeled-data>\r\n\r\n <vdr-labeled-data [label]=\"'asset.dimensions' | translate\">\r\n {{ asset.width }} x {{ asset.height }}\r\n </vdr-labeled-data>\r\n\r\n <vdr-labeled-data [label]=\"'asset.focal-point' | translate\">\r\n <span *ngIf=\"fpx\"\r\n ><clr-icon shape=\"crosshairs\"></clr-icon> x: {{ fpx | number: '1.2-2' }}, y:\r\n {{ fpy | number: '1.2-2' }}</span\r\n >\r\n <span *ngIf=\"!fpx\">{{ 'common.not-set' | translate }}</span>\r\n <br />\r\n <button\r\n class=\"btn btn-secondary-outline btn-sm\"\r\n [disabled]=\"settingFocalPoint\"\r\n (click)=\"setFocalPointStart()\"\r\n >\r\n <ng-container *ngIf=\"!fpx\">{{ 'asset.set-focal-point' | translate }}</ng-container>\r\n <ng-container *ngIf=\"fpx\">{{ 'asset.update-focal-point' | translate }}</ng-container>\r\n </button>\r\n <button\r\n class=\"btn btn-warning-outline btn-sm\"\r\n [disabled]=\"settingFocalPoint\"\r\n *ngIf=\"!!fpx\"\r\n (click)=\"removeFocalPoint()\"\r\n >\r\n {{ 'asset.unset-focal-point' | translate }}\r\n </button>\r\n </vdr-labeled-data>\r\n <vdr-labeled-data [label]=\"'common.tags' | translate\">\r\n <ng-container *ngIf=\"editable\">\r\n <vdr-tag-selector formControlName=\"tags\"></vdr-tag-selector>\r\n <button class=\"btn btn-link btn-sm\" (click)=\"manageTags()\">\r\n <clr-icon shape=\"tags\"></clr-icon>\r\n {{ 'common.manage-tags' | translate }}\r\n </button>\r\n </ng-container>\r\n <div *ngIf=\"!editable\">\r\n <vdr-chip *ngFor=\"let tag of asset.tags\" [colorFrom]=\"tag.value\">\r\n <clr-icon shape=\"tag\" class=\"mr2\"></clr-icon>\r\n {{ tag.value }}</vdr-chip\r\n >\r\n </div>\r\n </vdr-labeled-data>\r\n </form>\r\n <section *ngIf=\"customFields.length\">\r\n <label>{{ 'common.custom-fields' | translate }}</label>\r\n <vdr-tabbed-custom-fields\r\n entityName=\"Asset\"\r\n [compact]=\"true\"\r\n [customFields]=\"customFields\"\r\n [customFieldsFormGroup]=\"customFieldsForm\"\r\n [readonly]=\"!(['UpdateCatalog', 'UpdateAsset'] | hasPermission)\"\r\n ></vdr-tabbed-custom-fields>\r\n </section>\r\n <div class=\"flex-spacer\"></div>\r\n <div class=\"preview-select\">\r\n <clr-select-container>\r\n <label>{{ 'asset.preview' | translate }}</label>\r\n <select clrSelect name=\"options\" [(ngModel)]=\"size\" [disabled]=\"settingFocalPoint\">\r\n <option value=\"tiny\">tiny</option>\r\n <option value=\"thumb\">thumb</option>\r\n <option value=\"small\">small</option>\r\n <option value=\"medium\">medium</option>\r\n <option value=\"large\">large</option>\r\n <option value=\"\">full size</option>\r\n </select>\r\n </clr-select-container>\r\n <div class=\"asset-detail\">{{ width }} x {{ height }}</div>\r\n </div>\r\n <a\r\n *ngIf=\"!editable\"\r\n class=\"btn btn-link btn-sm\"\r\n [routerLink]=\"['/catalog', 'assets', asset.id]\"\r\n (click)=\"editClick.emit()\"\r\n >\r\n <clr-icon shape=\"edit\"></clr-icon>\r\n {{ 'common.edit' | translate }}\r\n </a>\r\n</div>\r\n",
9721
+ template: "<div class=\"preview-image\" #previewDiv [class.centered]=\"centered\">\r\n <div class=\"image-wrapper\">\r\n <vdr-focal-point-control\r\n [width]=\"width\"\r\n [height]=\"height\"\r\n [fpx]=\"fpx\"\r\n [fpy]=\"fpy\"\r\n [editable]=\"settingFocalPoint\"\r\n (focalPointChange)=\"onFocalPointChange($event)\"\r\n >\r\n <img\r\n class=\"asset-image\"\r\n [src]=\"asset | assetPreview: size\"\r\n #imageElement\r\n (load)=\"onImageLoad()\"\r\n />\r\n </vdr-focal-point-control>\r\n <div class=\"focal-point-info\" *ngIf=\"settingFocalPoint\">\r\n <button class=\"icon-button\" (click)=\"setFocalPointCancel()\">\r\n <clr-icon shape=\"times\"></clr-icon>\r\n </button>\r\n <button class=\"btn btn-primary btn-sm\" (click)=\"setFocalPointEnd()\" [disabled]=\"!lastFocalPoint\">\r\n <clr-icon shape=\"crosshairs\"></clr-icon>\r\n {{ 'asset.set-focal-point' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div class=\"controls\" [class.fade]=\"settingFocalPoint\">\r\n <form [formGroup]=\"form\">\r\n <clr-input-container class=\"name-input\" *ngIf=\"editable\">\r\n <label>{{ 'common.name' | translate }}</label>\r\n <input\r\n clrInput\r\n type=\"text\"\r\n formControlName=\"name\"\r\n [readonly]=\"!(['UpdateCatalog', 'UpdateAsset'] | hasPermission) || settingFocalPoint\"\r\n />\r\n </clr-input-container>\r\n\r\n <vdr-labeled-data [label]=\"'common.name' | translate\" *ngIf=\"!editable\">\r\n <span class=\"elide\">\r\n {{ asset.name }}\r\n </span>\r\n </vdr-labeled-data>\r\n\r\n <vdr-labeled-data [label]=\"'asset.source-file' | translate\">\r\n <a [href]=\"asset.source\" [title]=\"asset.source\" target=\"_blank\" class=\"elide source-link\">{{\r\n getSourceFileName()\r\n }}</a>\r\n </vdr-labeled-data>\r\n\r\n <vdr-labeled-data [label]=\"'asset.original-asset-size' | translate\">\r\n {{ asset.fileSize | filesize }}\r\n </vdr-labeled-data>\r\n\r\n <vdr-labeled-data [label]=\"'asset.dimensions' | translate\">\r\n {{ asset.width }} x {{ asset.height }}\r\n </vdr-labeled-data>\r\n\r\n <vdr-labeled-data [label]=\"'asset.focal-point' | translate\">\r\n <span *ngIf=\"fpx\"\r\n ><clr-icon shape=\"crosshairs\"></clr-icon> x: {{ fpx | number: '1.2-2' }}, y:\r\n {{ fpy | number: '1.2-2' }}</span\r\n >\r\n <span *ngIf=\"!fpx\">{{ 'common.not-set' | translate }}</span>\r\n <br />\r\n <button\r\n class=\"btn btn-secondary-outline btn-sm\"\r\n [disabled]=\"settingFocalPoint\"\r\n (click)=\"setFocalPointStart()\"\r\n >\r\n <ng-container *ngIf=\"!fpx\">{{ 'asset.set-focal-point' | translate }}</ng-container>\r\n <ng-container *ngIf=\"fpx\">{{ 'asset.update-focal-point' | translate }}</ng-container>\r\n </button>\r\n <button\r\n class=\"btn btn-warning-outline btn-sm\"\r\n [disabled]=\"settingFocalPoint\"\r\n *ngIf=\"!!fpx\"\r\n (click)=\"removeFocalPoint()\"\r\n >\r\n {{ 'asset.unset-focal-point' | translate }}\r\n </button>\r\n </vdr-labeled-data>\r\n <vdr-labeled-data [label]=\"'common.tags' | translate\">\r\n <ng-container *ngIf=\"editable\">\r\n <vdr-tag-selector formControlName=\"tags\"></vdr-tag-selector>\r\n <button class=\"btn btn-link btn-sm\" (click)=\"manageTags()\">\r\n <clr-icon shape=\"tags\"></clr-icon>\r\n {{ 'common.manage-tags' | translate }}\r\n </button>\r\n </ng-container>\r\n <div *ngIf=\"!editable\">\r\n <vdr-chip *ngFor=\"let tag of asset.tags\" [colorFrom]=\"tag.value\">\r\n <clr-icon shape=\"tag\" class=\"mr2\"></clr-icon>\r\n {{ tag.value }}</vdr-chip\r\n >\r\n </div>\r\n </vdr-labeled-data>\r\n </form>\r\n <section *ngIf=\"customFields.length\">\r\n <label>{{ 'common.custom-fields' | translate }}</label>\r\n <vdr-tabbed-custom-fields\r\n entityName=\"Asset\"\r\n [compact]=\"true\"\r\n [customFields]=\"customFields\"\r\n [customFieldsFormGroup]=\"customFieldsForm\"\r\n [readonly]=\"!(['UpdateCatalog', 'UpdateAsset'] | hasPermission)\"\r\n ></vdr-tabbed-custom-fields>\r\n </section>\r\n <div class=\"flex-spacer\"></div>\r\n <div class=\"preview-select\">\r\n <clr-select-container>\r\n <label>{{ 'asset.preview' | translate }}</label>\r\n <select clrSelect name=\"options\" [(ngModel)]=\"size\" [disabled]=\"settingFocalPoint\">\r\n <option value=\"tiny\">tiny</option>\r\n <option value=\"thumb\">thumb</option>\r\n <option value=\"small\">small</option>\r\n <option value=\"medium\">medium</option>\r\n <option value=\"large\">large</option>\r\n <option value=\"\">full size</option>\r\n </select>\r\n </clr-select-container>\r\n <div class=\"asset-detail\">{{ width }} x {{ height }}</div>\r\n </div>\r\n <vdr-asset-preview-links class=\"mb4\" [asset]=\"asset\"></vdr-asset-preview-links>\r\n <div *ngIf=\"!editable\" class=\"edit-button-wrapper\">\r\n <a\r\n class=\"btn btn-link btn-sm\"\r\n [routerLink]=\"['/catalog', 'assets', asset.id]\"\r\n (click)=\"editClick.emit()\"\r\n >\r\n <clr-icon shape=\"edit\"></clr-icon>\r\n {{ 'common.edit' | translate }}\r\n </a>\r\n </div>\r\n</div>\r\n",
9730
9722
  changeDetection: ChangeDetectionStrategy.OnPush,
9731
- styles: [":host{display:flex;height:100%}.preview-image{width:100%;height:100%;min-height:60vh;overflow:auto;text-align:center;box-shadow:inset 0 0 5px #0000001a;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAACuoAAArqAVDM774AAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAK0lEQVQ4T2P4jwP8xgFGNSADqDwGIF0DlMYAUH0YYFQDMoDKYwASNfz/DwB/JvcficphowAAAABJRU5ErkJggg==);flex:1}.preview-image.centered{display:flex;align-items:center;justify-content:center}.preview-image vdr-focal-point-control{position:relative;box-shadow:0 0 10px -3px #00000026}.preview-image .image-wrapper{position:relative}.preview-image .asset-image{width:100%}.preview-image .focal-point-info{position:absolute;display:flex;right:0}.controls{display:flex;flex-direction:column;margin-left:12px;min-width:15vw;max-width:25vw;transition:opacity .3s}.controls.fade{opacity:.5}.controls .name-input{margin-bottom:24px}.controls ::ng-deep .clr-control-container{width:100%}.controls ::ng-deep .clr-control-container .clr-input{width:100%}.controls .elide{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:block}.controls .source-link{direction:rtl}.controls .preview-select{display:flex;align-items:center;margin-bottom:12px}.controls .preview-select clr-select-container{margin-right:12px}\n"]
9723
+ styles: [":host{display:flex;height:100%}.preview-image{width:100%;height:100%;min-height:60vh;overflow:auto;text-align:center;box-shadow:inset 0 0 5px #0000001a;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAACuoAAArqAVDM774AAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAK0lEQVQ4T2P4jwP8xgFGNSADqDwGIF0DlMYAUH0YYFQDMoDKYwASNfz/DwB/JvcficphowAAAABJRU5ErkJggg==);flex:1}.preview-image.centered{display:flex;align-items:center;justify-content:center}.preview-image vdr-focal-point-control{position:relative;box-shadow:0 0 10px -3px #00000026}.preview-image .image-wrapper{position:relative}.preview-image .asset-image{width:100%}.preview-image .focal-point-info{position:absolute;display:flex;right:0}.controls{display:flex;flex-direction:column;margin-left:12px;min-width:15vw;max-width:25vw;transition:opacity .3s}.controls.fade{opacity:.5}.controls .name-input{margin-bottom:24px}.controls ::ng-deep .clr-control-container{width:100%}.controls ::ng-deep .clr-control-container .clr-input{width:100%}.controls .elide{overflow:hidden;white-space:nowrap;text-overflow:ellipsis;display:block}.controls .source-link{direction:rtl}.controls .preview-select{display:flex;align-items:center}.controls .preview-select clr-select-container{margin-right:12px}.edit-button-wrapper{padding-top:6px;border-top:1px solid var(--color-component-border-100);text-align:center}\n"]
9732
9724
  },] }
9733
9725
  ];
9734
9726
  AssetPreviewComponent.ctorParameters = () => [
@@ -12075,7 +12067,7 @@ class ObjectTreeComponent {
12075
12067
  this.depth = 0;
12076
12068
  }
12077
12069
  }
12078
- ngOnInit() {
12070
+ ngOnChanges() {
12079
12071
  this.entries = this.getEntries(this.value);
12080
12072
  this.expanded = this.depth === 0 || this.isArrayItem;
12081
12073
  this.valueIsArray = Object.keys(this.value).every(v => Number.isInteger(+v));
@@ -12856,7 +12848,7 @@ class ProsemirrorService {
12856
12848
  }
12857
12849
  getStateFromText(text) {
12858
12850
  const div = document.createElement('div');
12859
- div.innerHTML = text;
12851
+ div.innerHTML = text !== null && text !== void 0 ? text : '';
12860
12852
  return EditorState.create({
12861
12853
  doc: DOMParser.fromSchema(this.mySchema).parse(div),
12862
12854
  plugins: this.configurePlugins({ schema: this.mySchema, floatingMenu: false }),
@@ -13038,7 +13030,8 @@ class TabbedCustomFieldsComponent {
13038
13030
  this.tabbedCustomFields = this.groupByTabs(this.customFields);
13039
13031
  }
13040
13032
  customFieldIsSet(name) {
13041
- return !!this.customFieldsFormGroup.get(name);
13033
+ var _a;
13034
+ return !!((_a = this.customFieldsFormGroup) === null || _a === void 0 ? void 0 : _a.get(name));
13042
13035
  }
13043
13036
  groupByTabs(customFieldConfigs) {
13044
13037
  var _a, _b, _c;
@@ -13352,7 +13345,7 @@ class IfDefaultChannelActiveDirective extends IfDirectiveBase {
13352
13345
  this.changeDetectorRef = changeDetectorRef;
13353
13346
  }
13354
13347
  /**
13355
- * A template to show if the current user does not have the speicified permission.
13348
+ * A template to show if the current user does not have the specified permission.
13356
13349
  */
13357
13350
  set vdrIfMultichannelElse(templateRef) {
13358
13351
  this.setElseTemplate(templateRef);
@@ -13401,7 +13394,7 @@ class IfMultichannelDirective extends IfDirectiveBase {
13401
13394
  this.dataService = dataService;
13402
13395
  }
13403
13396
  /**
13404
- * A template to show if the current user does not have the speicified permission.
13397
+ * A template to show if the current user does not have the specified permission.
13405
13398
  */
13406
13399
  set vdrIfMultichannelElse(templateRef) {
13407
13400
  this.setElseTemplate(templateRef);
@@ -13882,6 +13875,50 @@ RelationCustomerInputComponent.propDecorators = {
13882
13875
  template: [{ type: ViewChild, args: ['selector',] }]
13883
13876
  };
13884
13877
 
13878
+ class RelationGenericInputComponent {
13879
+ constructor(modalService) {
13880
+ this.modalService = modalService;
13881
+ }
13882
+ selectRelationId() {
13883
+ this.modalService
13884
+ .fromComponent(RelationSelectorDialogComponent, {
13885
+ size: 'md',
13886
+ closable: true,
13887
+ locals: {
13888
+ title: marker('common.select-relation-id'),
13889
+ selectorTemplate: this.template,
13890
+ },
13891
+ })
13892
+ .subscribe(result => {
13893
+ if (result) {
13894
+ this.parentFormControl.setValue({ id: result });
13895
+ this.parentFormControl.markAsDirty();
13896
+ }
13897
+ });
13898
+ }
13899
+ remove() {
13900
+ this.parentFormControl.setValue(null);
13901
+ this.parentFormControl.markAsDirty();
13902
+ }
13903
+ }
13904
+ RelationGenericInputComponent.decorators = [
13905
+ { type: Component, args: [{
13906
+ selector: 'vdr-relation-generic-input',
13907
+ template: "<vdr-relation-card\r\n (select)=\"selectRelationId()\"\r\n (remove)=\"remove()\"\r\n placeholderIcon=\"objects\"\r\n [entity]=\"parentFormControl.value\"\r\n [selectLabel]=\"'common.select-relation-id' | translate\"\r\n [removable]=\"!config.list\"\r\n [readonly]=\"readonly\"\r\n>\r\n {{ parentFormControl.value | json }}\r\n <ng-template vdrRelationCardPreview>\r\n <div class=\"placeholder\">\r\n <clr-icon shape=\"objects\" size=\"50\"></clr-icon>\r\n </div>\r\n </ng-template>\r\n <ng-template vdrRelationCardDetail let-entity=\"entity\">\r\n <div class=\"\">\r\n {{ config.entity }}: <strong>{{ entity.id }}</strong>\r\n </div>\r\n <vdr-object-tree [value]=\"{ properties: parentFormControl.value }\"></vdr-object-tree>\r\n </ng-template>\r\n</vdr-relation-card>\r\n\r\n<ng-template #selector let-select=\"select\">\r\n <div class=\"id-select-wrapper\">\r\n <clr-input-container>\r\n <input [(ngModel)]=\"relationId\" type=\"text\" clrInput [readonly]=\"readonly\" />\r\n </clr-input-container>\r\n <div>\r\n <button class=\"btn btn-primary m0\" (click)=\"select(relationId)\">\r\n {{ 'common.confirm' | translate }}\r\n </button>\r\n </div>\r\n </div>\r\n</ng-template>\r\n",
13908
+ changeDetection: ChangeDetectionStrategy.OnPush,
13909
+ styles: [".id-select-wrapper{display:flex;align-items:flex-end}\n"]
13910
+ },] }
13911
+ ];
13912
+ RelationGenericInputComponent.ctorParameters = () => [
13913
+ { type: ModalService }
13914
+ ];
13915
+ RelationGenericInputComponent.propDecorators = {
13916
+ readonly: [{ type: Input }],
13917
+ parentFormControl: [{ type: Input }],
13918
+ config: [{ type: Input }],
13919
+ template: [{ type: ViewChild, args: ['selector',] }]
13920
+ };
13921
+
13885
13922
  class RelationProductVariantInputComponent {
13886
13923
  constructor(modalService, dataService) {
13887
13924
  this.modalService = modalService;
@@ -14088,7 +14125,7 @@ class AssetPreviewPipe {
14088
14125
  if (!asset) {
14089
14126
  return '';
14090
14127
  }
14091
- if (!asset.preview || typeof asset.preview !== 'string') {
14128
+ if (asset.preview == null || typeof asset.preview !== 'string') {
14092
14129
  throw new Error(`Expected an Asset, got ${JSON.stringify(asset)}`);
14093
14130
  }
14094
14131
  const fp = asset.focalPoint ? `&fpx=${asset.focalPoint.x}&fpy=${asset.focalPoint.y}` : '';
@@ -14954,6 +14991,7 @@ const DECLARATIONS = [
14954
14991
  TabbedCustomFieldsComponent,
14955
14992
  UiExtensionPointComponent,
14956
14993
  CustomDetailComponentHostComponent,
14994
+ AssetPreviewLinksComponent,
14957
14995
  ];
14958
14996
  const DYNAMIC_FORM_INPUTS = [
14959
14997
  TextFormInputComponent,
@@ -14973,6 +15011,7 @@ const DYNAMIC_FORM_INPUTS = [
14973
15011
  RelationCardPreviewDirective,
14974
15012
  RelationCardDetailDirective,
14975
15013
  RelationSelectorDialogComponent,
15014
+ RelationGenericInputComponent,
14976
15015
  TextareaFormInputComponent,
14977
15016
  RichTextFormInputComponent,
14978
15017
  JsonEditorFormInputComponent,
@@ -15174,12 +15213,12 @@ class BaseDetailComponent {
15174
15213
  return this.detailForm && this.detailForm.pristine;
15175
15214
  }
15176
15215
  setCustomFieldFormValues(customFields, formGroup, entity, currentTranslation) {
15177
- var _a, _b;
15216
+ var _a, _b, _c;
15178
15217
  for (const fieldDef of customFields) {
15179
15218
  const key = fieldDef.name;
15180
15219
  const value = fieldDef.type === 'localeString'
15181
- ? (_a = currentTranslation.customFields) === null || _a === void 0 ? void 0 : _a[key]
15182
- : (_b = entity.customFields) === null || _b === void 0 ? void 0 : _b[key];
15220
+ ? (_b = (_a = currentTranslation) === null || _a === void 0 ? void 0 : _a.customFields) === null || _b === void 0 ? void 0 : _b[key]
15221
+ : (_c = entity.customFields) === null || _c === void 0 ? void 0 : _c[key];
15183
15222
  const control = formGroup === null || formGroup === void 0 ? void 0 : formGroup.get(key);
15184
15223
  if (control) {
15185
15224
  control.patchValue(value);
@@ -15513,7 +15552,7 @@ function patchObject(obj, patch) {
15513
15552
  }
15514
15553
 
15515
15554
  // Auto-generated by the set-version.js script.
15516
- const ADMIN_UI_VERSION = '1.4.5';
15555
+ const ADMIN_UI_VERSION = '1.5.0';
15517
15556
 
15518
15557
  /**
15519
15558
  * Responsible for registering dashboard widget components and querying for layouts.
@@ -15733,5 +15772,5 @@ function unicodePatternValidator(patternRe) {
15733
15772
  * Generated bundle index. Do not edit.
15734
15773
  */
15735
15774
 
15736
- export { ADDRESS_FRAGMENT, ADD_CUSTOMERS_TO_GROUP, ADD_MANUAL_PAYMENT_TO_ORDER, ADD_MEMBERS_TO_ZONE, ADD_NOTE_TO_CUSTOMER, ADD_NOTE_TO_ORDER, ADD_OPTION_GROUP_TO_PRODUCT, ADD_OPTION_TO_GROUP, ADMINISTRATOR_FRAGMENT, ADMIN_UI_VERSION, ALL_CUSTOM_FIELDS_FRAGMENT, ASSET_FRAGMENT, ASSIGN_PRODUCTS_TO_CHANNEL, ASSIGN_ROLE_TO_ADMINISTRATOR, ASSIGN_VARIANTS_TO_CHANNEL, ATTEMPT_LOGIN, AUTH_REDIRECT_PARAM, ActionBarComponent, ActionBarItemsComponent, ActionBarLeftComponent, ActionBarRightComponent, AddressFormComponent, AdjustmentType, AdministratorDataService, AffixedInputComponent, AppComponent, AppComponentModule, AppShellComponent, AssetFileInputComponent, AssetGalleryComponent, AssetPickerDialogComponent, AssetPreviewComponent, AssetPreviewDialogComponent, AssetPreviewPipe, AssetSearchInputComponent, AssetType, AuthDataService, AuthGuard, AuthService, BOOLEAN_CUSTOM_FIELD_FRAGMENT, BaseDataService, BaseDetailComponent, BaseEntityResolver, BaseListComponent, BooleanFormInputComponent, BreadcrumbComponent, CANCEL_JOB, CANCEL_ORDER, CHANNEL_FRAGMENT, COLLECTION_FRAGMENT, CONFIGURABLE_OPERATION_DEF_FRAGMENT, CONFIGURABLE_OPERATION_FRAGMENT, COUNTRY_FRAGMENT, CREATE_ADMINISTRATOR, CREATE_ASSETS, CREATE_CHANNEL, CREATE_COLLECTION, CREATE_COUNTRY, CREATE_CUSTOMER, CREATE_CUSTOMER_ADDRESS, CREATE_CUSTOMER_GROUP, CREATE_FACET, CREATE_FACET_VALUES, CREATE_FULFILLMENT, CREATE_PAYMENT_METHOD, CREATE_PRODUCT, CREATE_PRODUCT_OPTION_GROUP, CREATE_PRODUCT_VARIANTS, CREATE_PROMOTION, CREATE_ROLE, CREATE_SHIPPING_METHOD, CREATE_TAG, CREATE_TAX_CATEGORY, CREATE_TAX_RATE, CREATE_ZONE, CURRENT_USER_FRAGMENT, CUSTOMER_FRAGMENT, CUSTOMER_GROUP_FRAGMENT, CUSTOM_FIELD_CONFIG_FRAGMENT, CanDeactivateDetailGuard, ChannelAssignmentControlComponent, ChannelBadgeComponent, ChannelLabelPipe, ChannelSwitcherComponent, CheckJobsLink, ChipComponent, ClientDataService, CollectionDataService, ComponentRegistryService, ConfigurableInputComponent, CoreModule, CurrencyCode, CurrencyFormInputComponent, CurrencyInputComponent, CustomDetailComponentHostComponent, CustomDetailComponentService, CustomFieldComponentService, CustomFieldControlComponent, CustomFieldLabelPipe, CustomHttpTranslationLoader, CustomerDataService, CustomerGroupFormInputComponent, CustomerLabelComponent, DATE_TIME_CUSTOM_FIELD_FRAGMENT, DELETE_ADMINISTRATOR, DELETE_ASSETS, DELETE_CHANNEL, DELETE_COLLECTION, DELETE_COUNTRY, DELETE_CUSTOMER, DELETE_CUSTOMER_GROUP, DELETE_CUSTOMER_NOTE, DELETE_FACET, DELETE_FACET_VALUES, DELETE_ORDER_NOTE, DELETE_PAYMENT_METHOD, DELETE_PRODUCT, DELETE_PRODUCT_VARIANT, DELETE_PROMOTION, DELETE_ROLE, DELETE_SHIPPING_METHOD, DELETE_TAG, DELETE_TAX_CATEGORY, DELETE_TAX_RATE, DELETE_ZONE, DISCOUNT_FRAGMENT, DashboardWidgetService, DataModule, DataService, DataTableColumnComponent, DataTableComponent, DateFormInputComponent, DatetimePickerComponent, DatetimePickerService, DefaultInterceptor, DeletionResult, DialogButtonsDirective, DialogComponentOutletComponent, DialogTitleDirective, DisabledDirective, DropdownComponent, DropdownItemDirective, DropdownMenuComponent, DropdownTriggerDirective, DurationPipe, DynamicFormInputComponent, ERROR_RESULT_FRAGMENT, EditNoteDialogComponent, EmptyPlaceholderComponent, EntityInfoComponent, ErrorCode, ExtensionHostComponent, ExtensionHostConfig, ExtensionHostService, ExternalImageDialogComponent, FACET_VALUE_FRAGMENT, FACET_WITH_VALUES_FRAGMENT, FLOAT_CUSTOM_FIELD_FRAGMENT, FULFILLMENT_FRAGMENT, FacetDataService, FacetValueChipComponent, FacetValueFormInputComponent, FacetValueSelectorComponent, FetchAdapter, FileSizePipe, FocalPointControlComponent, FormFieldComponent, FormFieldControlDirective, FormItemComponent, FormattedAddressComponent, GET_ACTIVE_ADMINISTRATOR, GET_ACTIVE_CHANNEL, GET_ADJUSTMENT_OPERATIONS, GET_ADMINISTRATOR, GET_ADMINISTRATORS, GET_ASSET, GET_ASSET_LIST, GET_AVAILABLE_COUNTRIES, GET_CHANNEL, GET_CHANNELS, GET_CLIENT_STATE, GET_COLLECTION, GET_COLLECTION_CONTENTS, GET_COLLECTION_FILTERS, GET_COLLECTION_LIST, GET_COUNTRY, GET_COUNTRY_LIST, GET_CURRENT_USER, GET_CUSTOMER, GET_CUSTOMER_GROUPS, GET_CUSTOMER_GROUP_WITH_CUSTOMERS, GET_CUSTOMER_HISTORY, GET_CUSTOMER_LIST, GET_FACET_LIST, GET_FACET_WITH_VALUES, GET_GLOBAL_SETTINGS, GET_JOBS_BY_ID, GET_JOBS_LIST, GET_JOB_INFO, GET_JOB_QUEUE_LIST, GET_NEWTORK_STATUS, GET_ORDER, GET_ORDERS_LIST, GET_ORDER_HISTORY, GET_ORDER_SUMMARY, GET_PAYMENT_METHOD, GET_PAYMENT_METHOD_LIST, GET_PAYMENT_METHOD_OPERATIONS, GET_PENDING_SEARCH_INDEX_UPDATES, GET_PRODUCT_LIST, GET_PRODUCT_OPTION_GROUP, GET_PRODUCT_OPTION_GROUPS, GET_PRODUCT_SIMPLE, GET_PRODUCT_VARIANT, GET_PRODUCT_VARIANT_LIST, GET_PRODUCT_VARIANT_LIST_SIMPLE, GET_PRODUCT_VARIANT_OPTIONS, GET_PRODUCT_WITH_VARIANTS, GET_PROMOTION, GET_PROMOTION_LIST, GET_ROLE, GET_ROLES, GET_SERVER_CONFIG, GET_SHIPPING_METHOD, GET_SHIPPING_METHOD_LIST, GET_SHIPPING_METHOD_OPERATIONS, GET_TAG, GET_TAG_LIST, GET_TAX_CATEGORIES, GET_TAX_CATEGORY, GET_TAX_RATE, GET_TAX_RATE_LIST, GET_TAX_RATE_LIST_SIMPLE, GET_UI_STATE, GET_USER_STATUS, GET_ZONE, GET_ZONES, GLOBAL_SETTINGS_FRAGMENT, GlobalFlag, HasPermissionPipe, HealthCheckService, HelpTooltipComponent, HistoryEntryDetailComponent, HistoryEntryType, HttpLoaderFactory, I18nService, INT_CUSTOM_FIELD_FRAGMENT, IfDefaultChannelActiveDirective, IfDirectiveBase, IfMultichannelDirective, IfPermissionsDirective, InjectableTranslateMessageFormatCompiler, ItemsPerPageControlsComponent, JOB_INFO_FRAGMENT, JobQueueService, JobState, JsonEditorFormInputComponent, LOCALE_STRING_CUSTOM_FIELD_FRAGMENT, LOG_OUT, LabeledDataComponent, LanguageCode, LanguageSelectorComponent, LinkDialogComponent, LocalStorageService, LocaleBasePipe, LocaleCurrencyNamePipe, LocaleCurrencyPipe, LocaleDatePipe, LocaleLanguageNamePipe, LocaleRegionNamePipe, LogicalOperator, MODIFY_ORDER, MOVE_COLLECTION, MainNavComponent, ManageTagsDialogComponent, ModalDialogComponent, ModalService, NavBuilderService, NotificationComponent, NotificationService, NumberFormInputComponent, ORDER_ADDRESS_FRAGMENT, ORDER_DETAIL_FRAGMENT, ORDER_FRAGMENT, ORDER_LINE_FRAGMENT, ObjectTreeComponent, OmitTypenameLink, OrderDataService, OrderStateLabelComponent, OverlayHostComponent, OverlayHostService, PAYMENT_METHOD_FRAGMENT, PRODUCT_DETAIL_FRAGMENT, PRODUCT_OPTION_FRAGMENT, PRODUCT_OPTION_GROUP_FRAGMENT, PRODUCT_OPTION_GROUP_WITH_OPTIONS_FRAGMENT, PRODUCT_SELECTOR_SEARCH, PRODUCT_VARIANT_FRAGMENT, PROMOTION_FRAGMENT, PaginationControlsComponent, PasswordFormInputComponent, PercentageSuffixInputComponent, Permission, ProductDataService, ProductSelectorComponent, ProductSelectorFormInputComponent, PromotionDataService, ProsemirrorService, QueryResult, REFUND_FRAGMENT, REFUND_ORDER, REINDEX, RELATION_CUSTOM_FIELD_FRAGMENT, REMOVE_CUSTOMERS_FROM_GROUP, REMOVE_MEMBERS_FROM_ZONE, REMOVE_OPTION_GROUP_FROM_PRODUCT, REMOVE_PRODUCTS_FROM_CHANNEL, REMOVE_VARIANTS_FROM_CHANNEL, REQUEST_COMPLETED, REQUEST_STARTED, ROLE_FRAGMENT, RUN_PENDING_SEARCH_INDEX_UPDATES, RelationAssetInputComponent, RelationCardComponent, RelationCardDetailDirective, RelationCardPreviewDirective, RelationCustomerInputComponent, RelationFormInputComponent, RelationProductInputComponent, RelationProductVariantInputComponent, RelationSelectorDialogComponent, RichTextEditorComponent, RichTextFormInputComponent, SEARCH_PRODUCTS, SETTLE_PAYMENT, SETTLE_REFUND, SET_ACTIVE_CHANNEL, SET_AS_LOGGED_IN, SET_AS_LOGGED_OUT, SET_CONTENT_LANGUAGE, SET_DISPLAY_UI_EXTENSION_POINTS, SET_UI_LANGUAGE_AND_LOCALE, SET_UI_LOCALE, SET_UI_THEME, SHIPPING_METHOD_FRAGMENT, STRING_CUSTOM_FIELD_FRAGMENT, SelectFormInputComponent, SelectToggleComponent, SentenceCasePipe, ServerConfigService, SettingsDataService, SharedModule, ShippingMethodDataService, SimpleDialogComponent, SingleSearchSelectionModel, SingleSearchSelectionModelFactory, SortOrder, SortPipe, StateI18nTokenPipe, StatusBadgeComponent, StockMovementType, StringToColorPipe, TAG_FRAGMENT, TAX_CATEGORY_FRAGMENT, TAX_RATE_FRAGMENT, TEST_ELIGIBLE_SHIPPING_METHODS, TEST_SHIPPING_METHOD, TEXT_CUSTOM_FIELD_FRAGMENT, TRANSITION_FULFILLMENT_TO_STATE, TRANSITION_ORDER_TO_STATE, TRANSITION_PAYMENT_TO_STATE, TabbedCustomFieldsComponent, TableRowActionComponent, TagSelectorComponent, TextFormInputComponent, TextareaFormInputComponent, ThemeSwitcherComponent, TimeAgoPipe, TimelineEntryComponent, TitleInputComponent, UPDATE_ACTIVE_ADMINISTRATOR, UPDATE_ADMINISTRATOR, UPDATE_ASSET, UPDATE_CHANNEL, UPDATE_COLLECTION, UPDATE_COUNTRY, UPDATE_CUSTOMER, UPDATE_CUSTOMER_ADDRESS, UPDATE_CUSTOMER_GROUP, UPDATE_CUSTOMER_NOTE, UPDATE_FACET, UPDATE_FACET_VALUES, UPDATE_GLOBAL_SETTINGS, UPDATE_ORDER_CUSTOM_FIELDS, UPDATE_ORDER_NOTE, UPDATE_PAYMENT_METHOD, UPDATE_PRODUCT, UPDATE_PRODUCT_OPTION, UPDATE_PRODUCT_OPTION_GROUP, UPDATE_PRODUCT_VARIANTS, UPDATE_PROMOTION, UPDATE_ROLE, UPDATE_SHIPPING_METHOD, UPDATE_TAG, UPDATE_TAX_CATEGORY, UPDATE_TAX_RATE, UPDATE_USER_CHANNELS, UPDATE_ZONE, USER_STATUS_FRAGMENT, UiExtensionPointComponent, UiLanguageSwitcherDialogComponent, UserMenuComponent, ZONE_FRAGMENT, addActionBarItem, addCustomFields, addNavMenuItem, addNavMenuSection, blockQuoteRule, buildInputRules, buildKeymap, buildMenuItems, bulletListRule, canInsert, clientResolvers, codeBlockRule, configurableDefinitionToInstance, configurableOperationValueIsValid, createApollo, createResolveData, createUpdatedTranslatable, dayOfWeekIndex, defaultFormInputs, detailBreadcrumb, encodeConfigArgValue, findTranslation, flattenFacetValues, getAppConfig, getClientDefaults, getConfigArgValue, getDefaultConfigArgValue, getDefaultUiLanguage, getDefaultUiLocale, getLocales, getMarkRange, getServerLocation, headingRule, hostExternalFrame, initializeServerConfigService, insertImageItem, interpolateDescription, result as introspectionResult, isEntityCreateOrUpdateMutation, jsonValidator, linkItem, linkSelectPlugin, loadAppConfig, markActive, orderedListRule, registerCustomDetailComponent, registerCustomFieldComponent, registerDashboardWidget, registerDefaultFormInputs, registerFormInputComponent, removeReadonlyCustomFields, setDashboardWidgetLayout, stringToColor, toConfigurableOperationInput, transformRelationCustomFieldInputs, unicodePatternValidator, weekDayNames, ɵ1, ɵ10, ɵ2, ɵ3, ɵ4, ɵ5, ɵ6, ɵ7, ɵ8, ɵ9 };
15775
+ export { ADDRESS_FRAGMENT, ADD_CUSTOMERS_TO_GROUP, ADD_MANUAL_PAYMENT_TO_ORDER, ADD_MEMBERS_TO_ZONE, ADD_NOTE_TO_CUSTOMER, ADD_NOTE_TO_ORDER, ADD_OPTION_GROUP_TO_PRODUCT, ADD_OPTION_TO_GROUP, ADMINISTRATOR_FRAGMENT, ADMIN_UI_VERSION, ALL_CUSTOM_FIELDS_FRAGMENT, ASSET_FRAGMENT, ASSIGN_PRODUCTS_TO_CHANNEL, ASSIGN_ROLE_TO_ADMINISTRATOR, ASSIGN_VARIANTS_TO_CHANNEL, ATTEMPT_LOGIN, AUTH_REDIRECT_PARAM, ActionBarComponent, ActionBarItemsComponent, ActionBarLeftComponent, ActionBarRightComponent, AddressFormComponent, AdjustmentType, AdministratorDataService, AffixedInputComponent, AppComponent, AppComponentModule, AppShellComponent, AssetFileInputComponent, AssetGalleryComponent, AssetPickerDialogComponent, AssetPreviewComponent, AssetPreviewDialogComponent, AssetPreviewLinksComponent, AssetPreviewPipe, AssetSearchInputComponent, AssetType, AuthDataService, AuthGuard, AuthService, BOOLEAN_CUSTOM_FIELD_FRAGMENT, BaseDataService, BaseDetailComponent, BaseEntityResolver, BaseListComponent, BooleanFormInputComponent, BreadcrumbComponent, CANCEL_JOB, CANCEL_ORDER, CHANNEL_FRAGMENT, COLLECTION_FRAGMENT, CONFIGURABLE_OPERATION_DEF_FRAGMENT, CONFIGURABLE_OPERATION_FRAGMENT, COUNTRY_FRAGMENT, CREATE_ADMINISTRATOR, CREATE_ASSETS, CREATE_CHANNEL, CREATE_COLLECTION, CREATE_COUNTRY, CREATE_CUSTOMER, CREATE_CUSTOMER_ADDRESS, CREATE_CUSTOMER_GROUP, CREATE_FACET, CREATE_FACET_VALUES, CREATE_FULFILLMENT, CREATE_PAYMENT_METHOD, CREATE_PRODUCT, CREATE_PRODUCT_OPTION_GROUP, CREATE_PRODUCT_VARIANTS, CREATE_PROMOTION, CREATE_ROLE, CREATE_SHIPPING_METHOD, CREATE_TAG, CREATE_TAX_CATEGORY, CREATE_TAX_RATE, CREATE_ZONE, CURRENT_USER_FRAGMENT, CUSTOMER_FRAGMENT, CUSTOMER_GROUP_FRAGMENT, CUSTOM_FIELD_CONFIG_FRAGMENT, CanDeactivateDetailGuard, ChannelAssignmentControlComponent, ChannelBadgeComponent, ChannelLabelPipe, ChannelSwitcherComponent, CheckJobsLink, ChipComponent, ClientDataService, CollectionDataService, ComponentRegistryService, ConfigurableInputComponent, CoreModule, CurrencyCode, CurrencyFormInputComponent, CurrencyInputComponent, CustomDetailComponentHostComponent, CustomDetailComponentService, CustomFieldComponentService, CustomFieldControlComponent, CustomFieldLabelPipe, CustomHttpTranslationLoader, CustomerDataService, CustomerGroupFormInputComponent, CustomerLabelComponent, DATE_TIME_CUSTOM_FIELD_FRAGMENT, DELETE_ADMINISTRATOR, DELETE_ASSETS, DELETE_CHANNEL, DELETE_COLLECTION, DELETE_COUNTRY, DELETE_CUSTOMER, DELETE_CUSTOMER_ADDRESS, DELETE_CUSTOMER_GROUP, DELETE_CUSTOMER_NOTE, DELETE_FACET, DELETE_FACET_VALUES, DELETE_ORDER_NOTE, DELETE_PAYMENT_METHOD, DELETE_PRODUCT, DELETE_PRODUCT_VARIANT, DELETE_PROMOTION, DELETE_ROLE, DELETE_SHIPPING_METHOD, DELETE_TAG, DELETE_TAX_CATEGORY, DELETE_TAX_RATE, DELETE_ZONE, DISCOUNT_FRAGMENT, DashboardWidgetService, DataModule, DataService, DataTableColumnComponent, DataTableComponent, DateFormInputComponent, DatetimePickerComponent, DatetimePickerService, DefaultInterceptor, DeletionResult, DialogButtonsDirective, DialogComponentOutletComponent, DialogTitleDirective, DisabledDirective, DropdownComponent, DropdownItemDirective, DropdownMenuComponent, DropdownTriggerDirective, DurationPipe, DynamicFormInputComponent, ERROR_RESULT_FRAGMENT, EditNoteDialogComponent, EmptyPlaceholderComponent, EntityInfoComponent, ErrorCode, ExtensionHostComponent, ExtensionHostConfig, ExtensionHostService, ExternalImageDialogComponent, FACET_VALUE_FRAGMENT, FACET_WITH_VALUES_FRAGMENT, FLOAT_CUSTOM_FIELD_FRAGMENT, FULFILLMENT_FRAGMENT, FacetDataService, FacetValueChipComponent, FacetValueFormInputComponent, FacetValueSelectorComponent, FetchAdapter, FileSizePipe, FocalPointControlComponent, FormFieldComponent, FormFieldControlDirective, FormItemComponent, FormattedAddressComponent, GET_ACTIVE_ADMINISTRATOR, GET_ACTIVE_CHANNEL, GET_ADJUSTMENT_OPERATIONS, GET_ADMINISTRATOR, GET_ADMINISTRATORS, GET_ASSET, GET_ASSET_LIST, GET_AVAILABLE_COUNTRIES, GET_CHANNEL, GET_CHANNELS, GET_CLIENT_STATE, GET_COLLECTION, GET_COLLECTION_CONTENTS, GET_COLLECTION_FILTERS, GET_COLLECTION_LIST, GET_COUNTRY, GET_COUNTRY_LIST, GET_CURRENT_USER, GET_CUSTOMER, GET_CUSTOMER_GROUPS, GET_CUSTOMER_GROUP_WITH_CUSTOMERS, GET_CUSTOMER_HISTORY, GET_CUSTOMER_LIST, GET_FACET_LIST, GET_FACET_WITH_VALUES, GET_GLOBAL_SETTINGS, GET_JOBS_BY_ID, GET_JOBS_LIST, GET_JOB_INFO, GET_JOB_QUEUE_LIST, GET_NEWTORK_STATUS, GET_ORDER, GET_ORDERS_LIST, GET_ORDER_HISTORY, GET_ORDER_SUMMARY, GET_PAYMENT_METHOD, GET_PAYMENT_METHOD_LIST, GET_PAYMENT_METHOD_OPERATIONS, GET_PENDING_SEARCH_INDEX_UPDATES, GET_PRODUCT_LIST, GET_PRODUCT_OPTION_GROUP, GET_PRODUCT_OPTION_GROUPS, GET_PRODUCT_SIMPLE, GET_PRODUCT_VARIANT, GET_PRODUCT_VARIANT_LIST, GET_PRODUCT_VARIANT_LIST_SIMPLE, GET_PRODUCT_VARIANT_OPTIONS, GET_PRODUCT_WITH_VARIANTS, GET_PROMOTION, GET_PROMOTION_LIST, GET_ROLE, GET_ROLES, GET_SERVER_CONFIG, GET_SHIPPING_METHOD, GET_SHIPPING_METHOD_LIST, GET_SHIPPING_METHOD_OPERATIONS, GET_TAG, GET_TAG_LIST, GET_TAX_CATEGORIES, GET_TAX_CATEGORY, GET_TAX_RATE, GET_TAX_RATE_LIST, GET_TAX_RATE_LIST_SIMPLE, GET_UI_STATE, GET_USER_STATUS, GET_ZONE, GET_ZONES, GLOBAL_SETTINGS_FRAGMENT, GlobalFlag, HasPermissionPipe, HealthCheckService, HelpTooltipComponent, HistoryEntryDetailComponent, HistoryEntryType, HttpLoaderFactory, I18nService, INT_CUSTOM_FIELD_FRAGMENT, IfDefaultChannelActiveDirective, IfDirectiveBase, IfMultichannelDirective, IfPermissionsDirective, InjectableTranslateMessageFormatCompiler, ItemsPerPageControlsComponent, JOB_INFO_FRAGMENT, JobQueueService, JobState, JsonEditorFormInputComponent, LOCALE_STRING_CUSTOM_FIELD_FRAGMENT, LOG_OUT, LabeledDataComponent, LanguageCode, LanguageSelectorComponent, LinkDialogComponent, LocalStorageService, LocaleBasePipe, LocaleCurrencyNamePipe, LocaleCurrencyPipe, LocaleDatePipe, LocaleLanguageNamePipe, LocaleRegionNamePipe, LogicalOperator, MODIFY_ORDER, MOVE_COLLECTION, MainNavComponent, ManageTagsDialogComponent, ModalDialogComponent, ModalService, NavBuilderService, NotificationComponent, NotificationService, NumberFormInputComponent, ORDER_ADDRESS_FRAGMENT, ORDER_DETAIL_FRAGMENT, ORDER_FRAGMENT, ORDER_LINE_FRAGMENT, ObjectTreeComponent, OmitTypenameLink, OrderDataService, OrderStateLabelComponent, OverlayHostComponent, OverlayHostService, PAYMENT_METHOD_FRAGMENT, PRODUCT_DETAIL_FRAGMENT, PRODUCT_OPTION_FRAGMENT, PRODUCT_OPTION_GROUP_FRAGMENT, PRODUCT_OPTION_GROUP_WITH_OPTIONS_FRAGMENT, PRODUCT_SELECTOR_SEARCH, PRODUCT_VARIANT_FRAGMENT, PROMOTION_FRAGMENT, PaginationControlsComponent, PasswordFormInputComponent, PercentageSuffixInputComponent, Permission, ProductDataService, ProductSelectorComponent, ProductSelectorFormInputComponent, PromotionDataService, ProsemirrorService, QueryResult, REFUND_FRAGMENT, REFUND_ORDER, REINDEX, RELATION_CUSTOM_FIELD_FRAGMENT, REMOVE_CUSTOMERS_FROM_GROUP, REMOVE_MEMBERS_FROM_ZONE, REMOVE_OPTION_GROUP_FROM_PRODUCT, REMOVE_PRODUCTS_FROM_CHANNEL, REMOVE_VARIANTS_FROM_CHANNEL, REQUEST_COMPLETED, REQUEST_STARTED, ROLE_FRAGMENT, RUN_PENDING_SEARCH_INDEX_UPDATES, RelationAssetInputComponent, RelationCardComponent, RelationCardDetailDirective, RelationCardPreviewDirective, RelationCustomerInputComponent, RelationFormInputComponent, RelationGenericInputComponent, RelationProductInputComponent, RelationProductVariantInputComponent, RelationSelectorDialogComponent, RichTextEditorComponent, RichTextFormInputComponent, SEARCH_PRODUCTS, SETTLE_PAYMENT, SETTLE_REFUND, SET_ACTIVE_CHANNEL, SET_AS_LOGGED_IN, SET_AS_LOGGED_OUT, SET_CONTENT_LANGUAGE, SET_DISPLAY_UI_EXTENSION_POINTS, SET_UI_LANGUAGE_AND_LOCALE, SET_UI_LOCALE, SET_UI_THEME, SHIPPING_METHOD_FRAGMENT, STRING_CUSTOM_FIELD_FRAGMENT, SelectFormInputComponent, SelectToggleComponent, SentenceCasePipe, ServerConfigService, SettingsDataService, SharedModule, ShippingMethodDataService, SimpleDialogComponent, SingleSearchSelectionModel, SingleSearchSelectionModelFactory, SortOrder, SortPipe, StateI18nTokenPipe, StatusBadgeComponent, StockMovementType, StringToColorPipe, TAG_FRAGMENT, TAX_CATEGORY_FRAGMENT, TAX_RATE_FRAGMENT, TEST_ELIGIBLE_SHIPPING_METHODS, TEST_SHIPPING_METHOD, TEXT_CUSTOM_FIELD_FRAGMENT, TRANSITION_FULFILLMENT_TO_STATE, TRANSITION_ORDER_TO_STATE, TRANSITION_PAYMENT_TO_STATE, TabbedCustomFieldsComponent, TableRowActionComponent, TagSelectorComponent, TextFormInputComponent, TextareaFormInputComponent, ThemeSwitcherComponent, TimeAgoPipe, TimelineEntryComponent, TitleInputComponent, UPDATE_ACTIVE_ADMINISTRATOR, UPDATE_ADMINISTRATOR, UPDATE_ASSET, UPDATE_CHANNEL, UPDATE_COLLECTION, UPDATE_COUNTRY, UPDATE_CUSTOMER, UPDATE_CUSTOMER_ADDRESS, UPDATE_CUSTOMER_GROUP, UPDATE_CUSTOMER_NOTE, UPDATE_FACET, UPDATE_FACET_VALUES, UPDATE_GLOBAL_SETTINGS, UPDATE_ORDER_CUSTOM_FIELDS, UPDATE_ORDER_NOTE, UPDATE_PAYMENT_METHOD, UPDATE_PRODUCT, UPDATE_PRODUCT_OPTION, UPDATE_PRODUCT_OPTION_GROUP, UPDATE_PRODUCT_VARIANTS, UPDATE_PROMOTION, UPDATE_ROLE, UPDATE_SHIPPING_METHOD, UPDATE_TAG, UPDATE_TAX_CATEGORY, UPDATE_TAX_RATE, UPDATE_USER_CHANNELS, UPDATE_ZONE, USER_STATUS_FRAGMENT, UiExtensionPointComponent, UiLanguageSwitcherDialogComponent, UserMenuComponent, ZONE_FRAGMENT, addActionBarItem, addCustomFields, addNavMenuItem, addNavMenuSection, blockQuoteRule, buildInputRules, buildKeymap, buildMenuItems, bulletListRule, canInsert, clientResolvers, codeBlockRule, configurableDefinitionToInstance, configurableOperationValueIsValid, createApollo, createResolveData, createUpdatedTranslatable, dayOfWeekIndex, defaultFormInputs, detailBreadcrumb, encodeConfigArgValue, findTranslation, flattenFacetValues, getAppConfig, getClientDefaults, getConfigArgValue, getDefaultConfigArgValue, getDefaultUiLanguage, getDefaultUiLocale, getLocales, getMarkRange, getServerLocation, headingRule, hostExternalFrame, initializeServerConfigService, insertImageItem, interpolateDescription, result as introspectionResult, isEntityCreateOrUpdateMutation, jsonValidator, linkItem, linkSelectPlugin, loadAppConfig, markActive, orderedListRule, registerCustomDetailComponent, registerCustomFieldComponent, registerDashboardWidget, registerDefaultFormInputs, registerFormInputComponent, removeReadonlyCustomFields, setDashboardWidgetLayout, stringToColor, toConfigurableOperationInput, transformRelationCustomFieldInputs, unicodePatternValidator, weekDayNames, ɵ1, ɵ10, ɵ2, ɵ3, ɵ4, ɵ5, ɵ6, ɵ7, ɵ8, ɵ9 };
15737
15776
  //# sourceMappingURL=vendure-admin-ui-core.js.map