@vendure/admin-ui 2.0.0-next.4 → 2.0.0-next.8

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 (109) hide show
  1. package/catalog/catalog.module.d.ts +10 -11
  2. package/catalog/components/collection-contents/collection-contents.component.d.ts +3 -1
  3. package/catalog/components/collection-detail/collection-detail.component.d.ts +2 -0
  4. package/catalog/components/product-variants-editor/product-variants-editor.component.d.ts +13 -10
  5. package/catalog/public_api.d.ts +0 -1
  6. package/core/common/generated-types.d.ts +5 -0
  7. package/core/common/utilities/selection-manager.d.ts +23 -0
  8. package/core/common/version.d.ts +1 -1
  9. package/core/components/app-shell/app-shell.component.d.ts +1 -0
  10. package/core/public_api.d.ts +5 -0
  11. package/core/shared/components/asset-gallery/asset-gallery.component.d.ts +27 -3
  12. package/core/shared/components/configurable-input/configurable-input.component.d.ts +8 -3
  13. package/core/shared/components/data-table/data-table.component.d.ts +5 -2
  14. package/core/shared/components/product-multi-selector-dialog/product-multi-selector-dialog.component.d.ts +38 -0
  15. package/{catalog → core/shared}/components/product-search-input/product-search-input.component.d.ts +1 -1
  16. package/core/shared/components/select-toggle/select-toggle.component.d.ts +2 -1
  17. package/core/shared/dynamic-form-inputs/combination-mode-form-input/combination-mode-form-input.component.d.ts +28 -0
  18. package/core/shared/dynamic-form-inputs/product-multi-selector-form-input/product-multi-selector-form-input.component.d.ts +23 -0
  19. package/core/shared/dynamic-form-inputs/register-dynamic-input-components.d.ts +3 -1
  20. package/core/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.d.ts +6 -3
  21. package/core/shared/shared.module.d.ts +32 -28
  22. package/esm2020/catalog/catalog.module.mjs +1 -5
  23. package/esm2020/catalog/components/assets/assets.component.mjs +2 -2
  24. package/esm2020/catalog/components/collection-contents/collection-contents.component.mjs +12 -4
  25. package/esm2020/catalog/components/collection-detail/collection-detail.component.mjs +21 -6
  26. package/esm2020/catalog/components/collection-list/collection-list.component.mjs +1 -1
  27. package/esm2020/catalog/components/product-detail/product-detail.component.mjs +2 -2
  28. package/esm2020/catalog/components/product-list/product-list.component.mjs +7 -8
  29. package/esm2020/catalog/components/product-variants-editor/product-variants-editor.component.mjs +8 -3
  30. package/esm2020/catalog/components/product-variants-list/product-variants-list.component.mjs +2 -2
  31. package/esm2020/catalog/public_api.mjs +1 -2
  32. package/esm2020/core/common/generated-types.mjs +1 -1
  33. package/esm2020/core/common/utilities/configurable-operation-utils.mjs +2 -2
  34. package/esm2020/core/common/utilities/selection-manager.mjs +64 -0
  35. package/esm2020/core/common/version.mjs +2 -2
  36. package/esm2020/core/components/app-shell/app-shell.component.mjs +6 -5
  37. package/esm2020/core/components/main-nav/main-nav.component.mjs +3 -3
  38. package/esm2020/core/data/definitions/order-definitions.mjs +431 -430
  39. package/esm2020/core/public_api.mjs +6 -1
  40. package/esm2020/core/shared/components/address-form/address-form.component.mjs +3 -3
  41. package/esm2020/core/shared/components/asset-gallery/asset-gallery.component.mjs +33 -50
  42. package/esm2020/core/shared/components/configurable-input/configurable-input.component.mjs +15 -4
  43. package/esm2020/core/shared/components/data-table/data-table.component.mjs +10 -3
  44. package/esm2020/core/shared/components/formatted-address/formatted-address.component.mjs +3 -3
  45. package/esm2020/core/shared/components/product-multi-selector-dialog/product-multi-selector-dialog.component.mjs +135 -0
  46. package/esm2020/core/shared/components/product-search-input/product-search-input.component.mjs +108 -0
  47. package/esm2020/core/shared/components/rich-text-editor/rich-text-editor.component.mjs +2 -2
  48. package/esm2020/core/shared/components/select-toggle/select-toggle.component.mjs +6 -3
  49. package/esm2020/core/shared/dynamic-form-inputs/combination-mode-form-input/combination-mode-form-input.component.mjs +45 -0
  50. package/esm2020/core/shared/dynamic-form-inputs/product-multi-selector-form-input/product-multi-selector-form-input.component.mjs +48 -0
  51. package/esm2020/core/shared/dynamic-form-inputs/register-dynamic-input-components.mjs +5 -1
  52. package/esm2020/core/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.mjs +11 -9
  53. package/esm2020/core/shared/shared.module.mjs +21 -5
  54. package/esm2020/dashboard/components/dashboard/dashboard.component.mjs +2 -2
  55. package/esm2020/dashboard/components/dashboard-widget/dashboard-widget.component.mjs +2 -2
  56. package/esm2020/dashboard/widgets/order-summary-widget/order-summary-widget.component.mjs +2 -2
  57. package/esm2020/login/components/login/login.component.mjs +3 -3
  58. package/esm2020/marketing/components/promotion-detail/promotion-detail.component.mjs +3 -3
  59. package/esm2020/order/components/fulfill-order-dialog/fulfill-order-dialog.component.mjs +1 -1
  60. package/esm2020/order/components/order-list/order-list.component.mjs +3 -3
  61. package/esm2020/settings/components/payment-method-detail/payment-method-detail.component.mjs +1 -1
  62. package/esm2020/settings/components/permission-grid/permission-grid.component.mjs +1 -1
  63. package/esm2020/settings/components/shipping-method-detail/shipping-method-detail.component.mjs +1 -1
  64. package/fesm2015/vendure-admin-ui-catalog.mjs +48 -123
  65. package/fesm2015/vendure-admin-ui-catalog.mjs.map +1 -1
  66. package/fesm2015/vendure-admin-ui-core.mjs +2140 -1758
  67. package/fesm2015/vendure-admin-ui-core.mjs.map +1 -1
  68. package/fesm2015/vendure-admin-ui-dashboard.mjs +5 -5
  69. package/fesm2015/vendure-admin-ui-dashboard.mjs.map +1 -1
  70. package/fesm2015/vendure-admin-ui-login.mjs +2 -2
  71. package/fesm2015/vendure-admin-ui-login.mjs.map +1 -1
  72. package/fesm2015/vendure-admin-ui-marketing.mjs +2 -2
  73. package/fesm2015/vendure-admin-ui-marketing.mjs.map +1 -1
  74. package/fesm2015/vendure-admin-ui-order.mjs +3 -3
  75. package/fesm2015/vendure-admin-ui-order.mjs.map +1 -1
  76. package/fesm2015/vendure-admin-ui-settings.mjs +3 -3
  77. package/fesm2020/vendure-admin-ui-catalog.mjs +48 -123
  78. package/fesm2020/vendure-admin-ui-catalog.mjs.map +1 -1
  79. package/fesm2020/vendure-admin-ui-core.mjs +1942 -1564
  80. package/fesm2020/vendure-admin-ui-core.mjs.map +1 -1
  81. package/fesm2020/vendure-admin-ui-dashboard.mjs +5 -5
  82. package/fesm2020/vendure-admin-ui-dashboard.mjs.map +1 -1
  83. package/fesm2020/vendure-admin-ui-login.mjs +2 -2
  84. package/fesm2020/vendure-admin-ui-login.mjs.map +1 -1
  85. package/fesm2020/vendure-admin-ui-marketing.mjs +2 -2
  86. package/fesm2020/vendure-admin-ui-marketing.mjs.map +1 -1
  87. package/fesm2020/vendure-admin-ui-order.mjs +3 -3
  88. package/fesm2020/vendure-admin-ui-order.mjs.map +1 -1
  89. package/fesm2020/vendure-admin-ui-settings.mjs +3 -3
  90. package/package.json +2 -2
  91. package/static/i18n-messages/cs.json +11 -0
  92. package/static/i18n-messages/de.json +13 -0
  93. package/static/i18n-messages/en.json +12 -1
  94. package/static/i18n-messages/es.json +11 -0
  95. package/static/i18n-messages/fr.json +11 -0
  96. package/static/i18n-messages/it.json +11 -0
  97. package/static/i18n-messages/pl.json +11 -0
  98. package/static/i18n-messages/pt_BR.json +11 -0
  99. package/static/i18n-messages/pt_PT.json +11 -0
  100. package/static/i18n-messages/ru.json +11 -0
  101. package/static/i18n-messages/uk.json +11 -0
  102. package/static/i18n-messages/zh_Hans.json +11 -0
  103. package/static/i18n-messages/zh_Hant.json +11 -0
  104. package/static/styles/global/_forms.scss +1 -1
  105. package/static/styles/global/_overrides.scss +5 -1
  106. package/static/styles/global/_utilities.scss +9 -0
  107. package/static/styles/theme/default.scss +13 -1
  108. package/static/theme.min.css +1 -1
  109. package/esm2020/catalog/components/product-search-input/product-search-input.component.mjs +0 -107
@@ -15,18 +15,17 @@ import * as i13 from "./components/collection-tree/collection-tree.component";
15
15
  import * as i14 from "./components/collection-tree/collection-tree-node.component";
16
16
  import * as i15 from "./components/collection-contents/collection-contents.component";
17
17
  import * as i16 from "./components/product-variants-table/product-variants-table.component";
18
- import * as i17 from "./components/product-search-input/product-search-input.component";
19
- import * as i18 from "./components/option-value-input/option-value-input.component";
20
- import * as i19 from "./components/update-product-option-dialog/update-product-option-dialog.component";
21
- import * as i20 from "./components/product-variants-editor/product-variants-editor.component";
22
- import * as i21 from "./components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component";
23
- import * as i22 from "./components/asset-detail/asset-detail.component";
24
- import * as i23 from "./components/confirm-variant-deletion-dialog/confirm-variant-deletion-dialog.component";
25
- import * as i24 from "./components/product-options-editor/product-options-editor.component";
26
- import * as i25 from "@vendure/admin-ui/core";
27
- import * as i26 from "@angular/router";
18
+ import * as i17 from "./components/option-value-input/option-value-input.component";
19
+ import * as i18 from "./components/update-product-option-dialog/update-product-option-dialog.component";
20
+ import * as i19 from "./components/product-variants-editor/product-variants-editor.component";
21
+ import * as i20 from "./components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component";
22
+ import * as i21 from "./components/asset-detail/asset-detail.component";
23
+ import * as i22 from "./components/confirm-variant-deletion-dialog/confirm-variant-deletion-dialog.component";
24
+ import * as i23 from "./components/product-options-editor/product-options-editor.component";
25
+ import * as i24 from "@vendure/admin-ui/core";
26
+ import * as i25 from "@angular/router";
28
27
  export declare class CatalogModule {
29
28
  static ɵfac: i0.ɵɵFactoryDeclaration<CatalogModule, never>;
30
- static ɵmod: i0.ɵɵNgModuleDeclaration<CatalogModule, [typeof i1.ProductListComponent, typeof i2.ProductDetailComponent, typeof i3.FacetListComponent, typeof i4.FacetDetailComponent, typeof i5.GenerateProductVariantsComponent, typeof i6.ProductVariantsListComponent, typeof i7.ApplyFacetDialogComponent, typeof i8.AssetListComponent, typeof i9.AssetsComponent, typeof i10.VariantPriceDetailComponent, typeof i11.CollectionListComponent, typeof i12.CollectionDetailComponent, typeof i13.CollectionTreeComponent, typeof i14.CollectionTreeNodeComponent, typeof i15.CollectionContentsComponent, typeof i16.ProductVariantsTableComponent, typeof i17.ProductSearchInputComponent, typeof i18.OptionValueInputComponent, typeof i19.UpdateProductOptionDialogComponent, typeof i20.ProductVariantsEditorComponent, typeof i21.AssignProductsToChannelDialogComponent, typeof i22.AssetDetailComponent, typeof i23.ConfirmVariantDeletionDialogComponent, typeof i24.ProductOptionsEditorComponent], [typeof i25.SharedModule, typeof i26.RouterModule], [typeof i1.ProductListComponent, typeof i2.ProductDetailComponent, typeof i3.FacetListComponent, typeof i4.FacetDetailComponent, typeof i5.GenerateProductVariantsComponent, typeof i6.ProductVariantsListComponent, typeof i7.ApplyFacetDialogComponent, typeof i8.AssetListComponent, typeof i9.AssetsComponent, typeof i10.VariantPriceDetailComponent, typeof i11.CollectionListComponent, typeof i12.CollectionDetailComponent, typeof i13.CollectionTreeComponent, typeof i14.CollectionTreeNodeComponent, typeof i15.CollectionContentsComponent, typeof i16.ProductVariantsTableComponent, typeof i17.ProductSearchInputComponent, typeof i18.OptionValueInputComponent, typeof i19.UpdateProductOptionDialogComponent, typeof i20.ProductVariantsEditorComponent, typeof i21.AssignProductsToChannelDialogComponent, typeof i22.AssetDetailComponent, typeof i23.ConfirmVariantDeletionDialogComponent, typeof i24.ProductOptionsEditorComponent]>;
29
+ static ɵmod: i0.ɵɵNgModuleDeclaration<CatalogModule, [typeof i1.ProductListComponent, typeof i2.ProductDetailComponent, typeof i3.FacetListComponent, typeof i4.FacetDetailComponent, typeof i5.GenerateProductVariantsComponent, typeof i6.ProductVariantsListComponent, typeof i7.ApplyFacetDialogComponent, typeof i8.AssetListComponent, typeof i9.AssetsComponent, typeof i10.VariantPriceDetailComponent, typeof i11.CollectionListComponent, typeof i12.CollectionDetailComponent, typeof i13.CollectionTreeComponent, typeof i14.CollectionTreeNodeComponent, typeof i15.CollectionContentsComponent, typeof i16.ProductVariantsTableComponent, typeof i17.OptionValueInputComponent, typeof i18.UpdateProductOptionDialogComponent, typeof i19.ProductVariantsEditorComponent, typeof i20.AssignProductsToChannelDialogComponent, typeof i21.AssetDetailComponent, typeof i22.ConfirmVariantDeletionDialogComponent, typeof i23.ProductOptionsEditorComponent], [typeof i24.SharedModule, typeof i25.RouterModule], [typeof i1.ProductListComponent, typeof i2.ProductDetailComponent, typeof i3.FacetListComponent, typeof i4.FacetDetailComponent, typeof i5.GenerateProductVariantsComponent, typeof i6.ProductVariantsListComponent, typeof i7.ApplyFacetDialogComponent, typeof i8.AssetListComponent, typeof i9.AssetsComponent, typeof i10.VariantPriceDetailComponent, typeof i11.CollectionListComponent, typeof i12.CollectionDetailComponent, typeof i13.CollectionTreeComponent, typeof i14.CollectionTreeNodeComponent, typeof i15.CollectionContentsComponent, typeof i16.ProductVariantsTableComponent, typeof i17.OptionValueInputComponent, typeof i18.UpdateProductOptionDialogComponent, typeof i19.ProductVariantsEditorComponent, typeof i20.AssignProductsToChannelDialogComponent, typeof i21.AssetDetailComponent, typeof i22.ConfirmVariantDeletionDialogComponent, typeof i23.ProductOptionsEditorComponent]>;
31
30
  static ɵinj: i0.ɵɵInjectorDeclaration<CatalogModule>;
32
31
  }
@@ -10,6 +10,7 @@ export declare class CollectionContentsComponent implements OnInit, OnChanges, O
10
10
  private dataService;
11
11
  collectionId: string;
12
12
  parentId: string;
13
+ inheritFilters: boolean;
13
14
  updatedFilters: ConfigurableOperationInput[] | undefined;
14
15
  previewUpdatedFilters: boolean;
15
16
  headerTemplate: TemplateRef<any>;
@@ -22,6 +23,7 @@ export declare class CollectionContentsComponent implements OnInit, OnChanges, O
22
23
  private collectionIdChange$;
23
24
  private parentIdChange$;
24
25
  private filterChanges$;
26
+ private inheritFiltersChanges$;
25
27
  private refresh$;
26
28
  private destroy$;
27
29
  constructor(route: ActivatedRoute, router: Router, dataService: DataService);
@@ -33,5 +35,5 @@ export declare class CollectionContentsComponent implements OnInit, OnChanges, O
33
35
  refresh(): void;
34
36
  private setParam;
35
37
  static ɵfac: i0.ɵɵFactoryDeclaration<CollectionContentsComponent, never>;
36
- static ɵcmp: i0.ɵɵComponentDeclaration<CollectionContentsComponent, "vdr-collection-contents", never, { "collectionId": "collectionId"; "parentId": "parentId"; "updatedFilters": "updatedFilters"; "previewUpdatedFilters": "previewUpdatedFilters"; }, {}, ["headerTemplate"], never>;
38
+ static ɵcmp: i0.ɵɵComponentDeclaration<CollectionContentsComponent, "vdr-collection-contents", never, { "collectionId": "collectionId"; "parentId": "parentId"; "inheritFilters": "inheritFilters"; "updatedFilters": "updatedFilters"; "previewUpdatedFilters": "previewUpdatedFilters"; }, {}, ["headerTemplate"], never>;
37
39
  }
@@ -21,9 +21,11 @@ export declare class CollectionDetailComponent extends BaseDetailComponent<Colle
21
21
  filters: ConfigurableOperation[];
22
22
  allFilters: ConfigurableOperationDefinition[];
23
23
  updatedFilters$: Observable<ConfigurableOperationInput[]>;
24
+ inheritFilters$: Observable<boolean>;
24
25
  livePreview: boolean;
25
26
  parentId$: Observable<string | undefined>;
26
27
  readonly updatePermission: Permission[];
28
+ private filterRemoved$;
27
29
  contentsComponent: CollectionContentsComponent;
28
30
  constructor(router: Router, route: ActivatedRoute, serverConfigService: ServerConfigService, changeDetector: ChangeDetectorRef, dataService: DataService, formBuilder: FormBuilder, notificationService: NotificationService, modalService: ModalService, localStorageService: LocalStorageService);
29
31
  ngOnInit(): void;
@@ -17,6 +17,16 @@ export declare class GeneratedVariant {
17
17
  stock: number;
18
18
  constructor(config: Partial<GeneratedVariant>);
19
19
  }
20
+ interface OptionGroupUiModel {
21
+ id?: string;
22
+ isNew: boolean;
23
+ name: string;
24
+ values: Array<{
25
+ id?: string;
26
+ name: string;
27
+ locked: boolean;
28
+ }>;
29
+ }
20
30
  export declare class ProductVariantsEditorComponent implements OnInit, DeactivateAware {
21
31
  private route;
22
32
  private dataService;
@@ -25,16 +35,7 @@ export declare class ProductVariantsEditorComponent implements OnInit, Deactivat
25
35
  private modalService;
26
36
  formValueChanged: boolean;
27
37
  generatedVariants: GeneratedVariant[];
28
- optionGroups: Array<{
29
- id?: string;
30
- isNew: boolean;
31
- name: string;
32
- values: Array<{
33
- id?: string;
34
- name: string;
35
- locked: boolean;
36
- }>;
37
- }>;
38
+ optionGroups: OptionGroupUiModel[];
38
39
  product: NonNullable<GetProductVariantOptionsQuery['product']>;
39
40
  currencyCode: CurrencyCode;
40
41
  private languageCode;
@@ -45,6 +46,7 @@ export declare class ProductVariantsEditorComponent implements OnInit, Deactivat
45
46
  getVariantsToAdd(): GeneratedVariant[];
46
47
  getVariantName(variant: GeneratedVariant): string;
47
48
  addOption(): void;
49
+ removeOption(optionGroup: OptionGroupUiModel): void;
48
50
  generateVariants(): void;
49
51
  /**
50
52
  * Returns one of the existing variants to base the newly-generated variant's
@@ -70,3 +72,4 @@ export declare class ProductVariantsEditorComponent implements OnInit, Deactivat
70
72
  static ɵfac: i0.ɵɵFactoryDeclaration<ProductVariantsEditorComponent, never>;
71
73
  static ɵcmp: i0.ɵɵComponentDeclaration<ProductVariantsEditorComponent, "vdr-product-variants-editor", never, {}, {}, never, never>;
72
74
  }
75
+ export {};
@@ -22,7 +22,6 @@ export * from './components/product-detail/product-detail.component';
22
22
  export * from './components/product-detail/product-detail.types';
23
23
  export * from './components/product-list/product-list.component';
24
24
  export * from './components/product-options-editor/product-options-editor.component';
25
- export * from './components/product-search-input/product-search-input.component';
26
25
  export * from './components/product-variants-editor/product-variants-editor.component';
27
26
  export * from './components/product-variants-list/product-variants-list.component';
28
27
  export * from './components/product-variants-table/product-variants-table.component';
@@ -3341,6 +3341,7 @@ export declare type PermissionDefinition = {
3341
3341
  };
3342
3342
  export declare type PreviewCollectionVariantsInput = {
3343
3343
  filters: Array<ConfigurableOperationInput>;
3344
+ inheritFilters: Scalars['Boolean'];
3344
3345
  parentId?: InputMaybe<Scalars['ID']>;
3345
3346
  };
3346
3347
  /** The price range where the result has more than one price */
@@ -6727,6 +6728,7 @@ export declare type OrderFragment = {
6727
6728
  state: string;
6728
6729
  nextStates: Array<string>;
6729
6730
  total: number;
6731
+ totalWithTax: number;
6730
6732
  currencyCode: CurrencyCode;
6731
6733
  customer?: {
6732
6734
  __typename?: 'Customer';
@@ -7048,6 +7050,7 @@ export declare type GetOrderListQuery = {
7048
7050
  state: string;
7049
7051
  nextStates: Array<string>;
7050
7052
  total: number;
7053
+ totalWithTax: number;
7051
7054
  currencyCode: CurrencyCode;
7052
7055
  customer?: {
7053
7056
  __typename?: 'Customer';
@@ -7764,6 +7767,7 @@ export declare type TransitionOrderToStateMutation = {
7764
7767
  state: string;
7765
7768
  nextStates: Array<string>;
7766
7769
  total: number;
7770
+ totalWithTax: number;
7767
7771
  currencyCode: CurrencyCode;
7768
7772
  customer?: {
7769
7773
  __typename?: 'Customer';
@@ -7799,6 +7803,7 @@ export declare type UpdateOrderCustomFieldsMutation = {
7799
7803
  state: string;
7800
7804
  nextStates: Array<string>;
7801
7805
  total: number;
7806
+ totalWithTax: number;
7802
7807
  currencyCode: CurrencyCode;
7803
7808
  customer?: {
7804
7809
  __typename?: 'Customer';
@@ -0,0 +1,23 @@
1
+ export interface SelectionManagerOptions<T> {
2
+ multiSelect: boolean;
3
+ itemsAreEqual: (a: T, b: T) => boolean;
4
+ additiveMode: boolean;
5
+ }
6
+ /**
7
+ * @description
8
+ * A helper class used to manage selection of list items. Supports multiple selection via
9
+ * cmd/ctrl/shift key.
10
+ */
11
+ export declare class SelectionManager<T> {
12
+ private options;
13
+ constructor(options: SelectionManagerOptions<T>);
14
+ get selection(): T[];
15
+ private _selection;
16
+ private items;
17
+ setMultiSelect(isMultiSelect: boolean): void;
18
+ setCurrentItems(items: T[]): void;
19
+ toggleSelection(item: T, event?: MouseEvent): void;
20
+ selectMultiple(items: T[]): void;
21
+ isSelected(item: T): boolean;
22
+ lastSelected(): T;
23
+ }
@@ -1 +1 @@
1
- export declare const ADMIN_UI_VERSION = "2.0.0-next.4";
1
+ export declare const ADMIN_UI_VERSION = "2.0.0-next.8";
@@ -18,6 +18,7 @@ export declare class AppShellComponent implements OnInit {
18
18
  userName$: Observable<string>;
19
19
  uiLanguageAndLocale$: Observable<[LanguageCode, string | undefined]>;
20
20
  availableLanguages: LanguageCode[];
21
+ hideVendureBranding: boolean | undefined;
21
22
  constructor(authService: AuthService, dataService: DataService, router: Router, i18nService: I18nService, modalService: ModalService, localStorageService: LocalStorageService);
22
23
  ngOnInit(): void;
23
24
  selectUiLanguage(): void;
@@ -17,6 +17,7 @@ export * from './common/utilities/find-translation';
17
17
  export * from './common/utilities/flatten-facet-values';
18
18
  export * from './common/utilities/get-default-ui-language';
19
19
  export * from './common/utilities/interpolate-description';
20
+ export * from './common/utilities/selection-manager';
20
21
  export * from './common/utilities/string-to-color';
21
22
  export * from './common/version';
22
23
  export * from './components/app-shell/app-shell.component';
@@ -146,6 +147,8 @@ export * from './shared/components/modal-dialog/modal-dialog.component';
146
147
  export * from './shared/components/object-tree/object-tree.component';
147
148
  export * from './shared/components/order-state-label/order-state-label.component';
148
149
  export * from './shared/components/pagination-controls/pagination-controls.component';
150
+ export * from './shared/components/product-multi-selector-dialog/product-multi-selector-dialog.component';
151
+ export * from './shared/components/product-search-input/product-search-input.component';
149
152
  export * from './shared/components/product-variant-selector/product-variant-selector.component';
150
153
  export * from './shared/components/rich-text-editor/external-image-dialog/external-image-dialog.component';
151
154
  export * from './shared/components/rich-text-editor/link-dialog/link-dialog.component';
@@ -176,6 +179,7 @@ export * from './shared/directives/if-multichannel.directive';
176
179
  export * from './shared/directives/if-permissions.directive';
177
180
  export * from './shared/dynamic-form-inputs/boolean-form-input/boolean-form-input.component';
178
181
  export * from './shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component';
182
+ export * from './shared/dynamic-form-inputs/combination-mode-form-input/combination-mode-form-input.component';
179
183
  export * from './shared/dynamic-form-inputs/currency-form-input/currency-form-input.component';
180
184
  export * from './shared/dynamic-form-inputs/customer-group-form-input/customer-group-form-input.component';
181
185
  export * from './shared/dynamic-form-inputs/date-form-input/date-form-input.component';
@@ -183,6 +187,7 @@ export * from './shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-inpu
183
187
  export * from './shared/dynamic-form-inputs/facet-value-form-input/facet-value-form-input.component';
184
188
  export * from './shared/dynamic-form-inputs/number-form-input/number-form-input.component';
185
189
  export * from './shared/dynamic-form-inputs/password-form-input/password-form-input.component';
190
+ export * from './shared/dynamic-form-inputs/product-multi-selector-form-input/product-multi-selector-form-input.component';
186
191
  export * from './shared/dynamic-form-inputs/product-selector-form-input/product-selector-form-input.component';
187
192
  export * from './shared/dynamic-form-inputs/register-dynamic-input-components';
188
193
  export * from './shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component';
@@ -1,5 +1,6 @@
1
- import { EventEmitter, OnChanges } from '@angular/core';
1
+ import { EventEmitter, OnChanges, SimpleChanges } from '@angular/core';
2
2
  import { ModalService } from '../../../providers/modal/modal.service';
3
+ import { SelectionManager } from '../../../common/utilities/selection-manager';
3
4
  import { AssetLike } from './asset-gallery.types';
4
5
  import * as i0 from "@angular/core";
5
6
  export declare class AssetGalleryComponent implements OnChanges {
@@ -58,9 +59,32 @@ export declare class AssetGalleryComponent implements OnChanges {
58
59
  y: number;
59
60
  } | null | undefined;
60
61
  }[]>;
61
- selection: AssetLike[];
62
+ selectionManager: SelectionManager<{
63
+ __typename?: "Asset" | undefined;
64
+ id: string;
65
+ createdAt: any;
66
+ updatedAt: any;
67
+ name: string;
68
+ fileSize: number;
69
+ mimeType: string;
70
+ type: import("@vendure/admin-ui/core").AssetType;
71
+ preview: string;
72
+ source: string;
73
+ width: number;
74
+ height: number;
75
+ tags: {
76
+ __typename?: "Tag" | undefined;
77
+ id: string;
78
+ value: string;
79
+ }[];
80
+ focalPoint?: {
81
+ __typename?: "Coordinate" | undefined;
82
+ x: number;
83
+ y: number;
84
+ } | null | undefined;
85
+ }>;
62
86
  constructor(modalService: ModalService);
63
- ngOnChanges(): void;
87
+ ngOnChanges(changes: SimpleChanges): void;
64
88
  toggleSelection(asset: AssetLike, event?: MouseEvent): void;
65
89
  selectMultiple(assets: AssetLike[]): void;
66
90
  isSelected(asset: AssetLike): boolean;
@@ -1,15 +1,17 @@
1
- import { EventEmitter, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';
1
+ import { EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
2
2
  import { AbstractControl, ControlValueAccessor, FormGroup, ValidationErrors, Validator } from '@angular/forms';
3
+ import { Observable } from 'rxjs';
3
4
  import { ConfigArg, ConfigArgDefinition, ConfigurableOperation, ConfigurableOperationDefinition } from '../../../common/generated-types';
4
5
  import * as i0 from "@angular/core";
5
6
  /**
6
7
  * A form input which renders a card with the internal form fields of the given ConfigurableOperation.
7
8
  */
8
- export declare class ConfigurableInputComponent implements OnChanges, OnDestroy, ControlValueAccessor, Validator {
9
+ export declare class ConfigurableInputComponent implements OnInit, OnChanges, OnDestroy, ControlValueAccessor, Validator {
9
10
  operation?: ConfigurableOperation;
10
11
  operationDefinition?: ConfigurableOperationDefinition;
11
12
  readonly: boolean;
12
13
  removable: boolean;
14
+ position: number;
13
15
  remove: EventEmitter<ConfigurableOperation>;
14
16
  argValues: {
15
17
  [name: string]: any;
@@ -17,8 +19,11 @@ export declare class ConfigurableInputComponent implements OnChanges, OnDestroy,
17
19
  onChange: (val: any) => void;
18
20
  onTouch: () => void;
19
21
  form: FormGroup;
22
+ positionChange$: Observable<number>;
23
+ private positionChangeSubject;
20
24
  private subscription;
21
25
  interpolateDescription(): string;
26
+ ngOnInit(): void;
22
27
  ngOnChanges(changes: SimpleChanges): void;
23
28
  ngOnDestroy(): void;
24
29
  registerOnChange(fn: any): void;
@@ -30,5 +35,5 @@ export declare class ConfigurableInputComponent implements OnChanges, OnDestroy,
30
35
  private createForm;
31
36
  validate(c: AbstractControl): ValidationErrors | null;
32
37
  static ɵfac: i0.ɵɵFactoryDeclaration<ConfigurableInputComponent, never>;
33
- static ɵcmp: i0.ɵɵComponentDeclaration<ConfigurableInputComponent, "vdr-configurable-input", never, { "operation": "operation"; "operationDefinition": "operationDefinition"; "readonly": "readonly"; "removable": "removable"; }, { "remove": "remove"; }, never, never>;
38
+ static ɵcmp: i0.ɵɵComponentDeclaration<ConfigurableInputComponent, "vdr-configurable-input", never, { "operation": "operation"; "operationDefinition": "operationDefinition"; "readonly": "readonly"; "removable": "removable"; "position": "position"; }, { "remove": "remove"; }, never, never>;
34
39
  }
@@ -1,4 +1,4 @@
1
- import { AfterContentInit, EventEmitter, QueryList, TemplateRef } from '@angular/core';
1
+ import { AfterContentInit, EventEmitter, OnChanges, QueryList, SimpleChanges, TemplateRef } from '@angular/core';
2
2
  import { DataTableColumnComponent } from './data-table-column.component';
3
3
  import * as i0 from "@angular/core";
4
4
  /**
@@ -60,7 +60,7 @@ import * as i0 from "@angular/core";
60
60
  *
61
61
  * @docsCategory components
62
62
  */
63
- export declare class DataTableComponent<T> implements AfterContentInit {
63
+ export declare class DataTableComponent<T> implements AfterContentInit, OnChanges {
64
64
  items: T[];
65
65
  itemsPerPage: number;
66
66
  currentPage: number;
@@ -75,8 +75,11 @@ export declare class DataTableComponent<T> implements AfterContentInit {
75
75
  columns: QueryList<DataTableColumnComponent>;
76
76
  templateRefs: QueryList<TemplateRef<any>>;
77
77
  rowTemplate: TemplateRef<any>;
78
+ currentStart: number;
79
+ currentEnd: number;
78
80
  ngAfterContentInit(): void;
79
81
  trackByFn(index: number, item: any): any;
82
+ ngOnChanges(changes: SimpleChanges): void;
80
83
  static ɵfac: i0.ɵɵFactoryDeclaration<DataTableComponent<any>, never>;
81
84
  static ɵcmp: i0.ɵɵComponentDeclaration<DataTableComponent<any>, "vdr-data-table", never, { "items": "items"; "itemsPerPage": "itemsPerPage"; "currentPage": "currentPage"; "totalItems": "totalItems"; "allSelected": "allSelected"; "isRowSelectedFn": "isRowSelectedFn"; "emptyStateLabel": "emptyStateLabel"; }, { "allSelectChange": "allSelectChange"; "rowSelectChange": "rowSelectChange"; "pageChange": "pageChange"; "itemsPerPageChange": "itemsPerPageChange"; }, ["columns", "templateRefs"], never>;
82
85
  }
@@ -0,0 +1,38 @@
1
+ import { ChangeDetectorRef, OnInit } from '@angular/core';
2
+ import { PaginationInstance } from 'ngx-pagination';
3
+ import { BehaviorSubject, Observable } from 'rxjs';
4
+ import { SearchProductsQuery } from '../../../common/generated-types';
5
+ import { SelectionManager } from '../../../common/utilities/selection-manager';
6
+ import { DataService } from '../../../data/providers/data.service';
7
+ import { Dialog } from '../../../providers/modal/modal.types';
8
+ import * as i0 from "@angular/core";
9
+ export declare type SearchItem = SearchProductsQuery['search']['items'][number];
10
+ export declare class ProductMultiSelectorDialogComponent implements OnInit, Dialog<SearchItem[]> {
11
+ private dataService;
12
+ private changeDetector;
13
+ mode: 'product' | 'variant';
14
+ initialSelectionIds: string[];
15
+ items$: Observable<SearchItem[]>;
16
+ facetValues$: Observable<SearchProductsQuery['search']['facetValues']>;
17
+ searchTerm$: BehaviorSubject<string>;
18
+ searchFacetValueIds$: BehaviorSubject<string[]>;
19
+ paginationConfig: PaginationInstance;
20
+ selectionManager: SelectionManager<SearchItem>;
21
+ resolveWith: (result?: SearchItem[]) => void;
22
+ private paginationConfig$;
23
+ constructor(dataService: DataService, changeDetector: ChangeDetectorRef);
24
+ ngOnInit(): void;
25
+ trackByFn(index: number, item: SearchItem): string;
26
+ setSearchTerm(term: string): void;
27
+ setFacetValueIds(ids: string[]): void;
28
+ toggleSelection(item: SearchItem, event: MouseEvent): void;
29
+ clearSelection(): void;
30
+ isSelected(item: SearchItem): boolean;
31
+ entityInfoClick(event: MouseEvent): void;
32
+ pageChange(page: number): void;
33
+ itemsPerPageChange(itemsPerPage: number): void;
34
+ select(): void;
35
+ cancel(): void;
36
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductMultiSelectorDialogComponent, never>;
37
+ static ɵcmp: i0.ɵɵComponentDeclaration<ProductMultiSelectorDialogComponent, "vdr-product-multi-selector-dialog", never, {}, {}, never, never>;
38
+ }
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from '@angular/core';
2
- import { SearchProductsQuery } from '@vendure/admin-ui/core';
2
+ import { SearchProductsQuery } from '../../../common/generated-types';
3
3
  import * as i0 from "@angular/core";
4
4
  declare type FacetValueResult = SearchProductsQuery['search']['facetValues'][number];
5
5
  export declare class ProductSearchInputComponent {
@@ -6,9 +6,10 @@ import * as i0 from "@angular/core";
6
6
  export declare class SelectToggleComponent {
7
7
  size: 'small' | 'large';
8
8
  selected: boolean;
9
+ hiddenWhenOff: boolean;
9
10
  disabled: boolean;
10
11
  label: string | undefined;
11
12
  selectedChange: EventEmitter<boolean>;
12
13
  static ɵfac: i0.ɵɵFactoryDeclaration<SelectToggleComponent, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<SelectToggleComponent, "vdr-select-toggle", never, { "size": "size"; "selected": "selected"; "disabled": "disabled"; "label": "label"; }, { "selectedChange": "selectedChange"; }, never, never>;
14
+ static ɵcmp: i0.ɵɵComponentDeclaration<SelectToggleComponent, "vdr-select-toggle", never, { "size": "size"; "selected": "selected"; "hiddenWhenOff": "hiddenWhenOff"; "disabled": "disabled"; "label": "label"; }, { "selectedChange": "selectedChange"; }, never, never>;
14
15
  }
@@ -0,0 +1,28 @@
1
+ import { OnInit } from '@angular/core';
2
+ import { FormControl } from '@angular/forms';
3
+ import { DefaultFormComponentConfig, DefaultFormComponentId } from '@vendure/common/lib/shared-types';
4
+ import { Observable } from 'rxjs';
5
+ import { FormInputComponent } from '../../../common/component-registry-types';
6
+ import { ConfigurableInputComponent } from '../../components/configurable-input/configurable-input.component';
7
+ import * as i0 from "@angular/core";
8
+ /**
9
+ * @description
10
+ * A special input used to display the "Combination mode" AND/OR toggle.
11
+ *
12
+ * @docsCategory custom-input-components
13
+ * @docsPage default-inputs
14
+ */
15
+ export declare class CombinationModeFormInputComponent implements FormInputComponent, OnInit {
16
+ private configurableInputComponent;
17
+ static readonly id: DefaultFormComponentId;
18
+ readonly: boolean;
19
+ formControl: FormControl;
20
+ config: DefaultFormComponentConfig<'combination-mode-form-input'>;
21
+ selectable$: Observable<boolean>;
22
+ constructor(configurableInputComponent: ConfigurableInputComponent);
23
+ ngOnInit(): void;
24
+ setCombinationModeAnd(): void;
25
+ setCombinationModeOr(): void;
26
+ static ɵfac: i0.ɵɵFactoryDeclaration<CombinationModeFormInputComponent, [{ optional: true; }]>;
27
+ static ɵcmp: i0.ɵɵComponentDeclaration<CombinationModeFormInputComponent, "vdr-combination-mode-form-input", never, {}, {}, never, never>;
28
+ }
@@ -0,0 +1,23 @@
1
+ import { ChangeDetectorRef, OnInit } from '@angular/core';
2
+ import { FormControl } from '@angular/forms';
3
+ import { DefaultFormComponentConfig, DefaultFormComponentId } from '@vendure/common/lib/shared-types';
4
+ import { FormInputComponent } from '../../../common/component-registry-types';
5
+ import { DataService } from '../../../data/providers/data.service';
6
+ import { ModalService } from '../../../providers/modal/modal.service';
7
+ import * as i0 from "@angular/core";
8
+ export declare class ProductMultiSelectorFormInputComponent implements OnInit, FormInputComponent {
9
+ private modalService;
10
+ private dataService;
11
+ private changeDetector;
12
+ config: DefaultFormComponentConfig<'product-multi-form-input'>;
13
+ formControl: FormControl;
14
+ readonly: boolean;
15
+ mode: 'product' | 'variant';
16
+ readonly isListInput = true;
17
+ static readonly id: DefaultFormComponentId;
18
+ constructor(modalService: ModalService, dataService: DataService, changeDetector: ChangeDetectorRef);
19
+ ngOnInit(): void;
20
+ select(): void;
21
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductMultiSelectorFormInputComponent, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<ProductMultiSelectorFormInputComponent, "vdr-product-multi-selector-form-input", never, { "config": "config"; "formControl": "formControl"; "readonly": "readonly"; }, {}, never, never>;
23
+ }
@@ -2,12 +2,14 @@ import { FactoryProvider, Type } from '@angular/core';
2
2
  import { FormInputComponent } from '../../common/component-registry-types';
3
3
  import { CustomFieldControl, CustomFieldEntityName } from '../../providers/custom-field-component/custom-field-component.service';
4
4
  import { JsonEditorFormInputComponent } from './code-editor-form-input/json-editor-form-input.component';
5
+ import { CombinationModeFormInputComponent } from './combination-mode-form-input/combination-mode-form-input.component';
5
6
  import { CurrencyFormInputComponent } from './currency-form-input/currency-form-input.component';
6
7
  import { CustomerGroupFormInputComponent } from './customer-group-form-input/customer-group-form-input.component';
7
8
  import { FacetValueFormInputComponent } from './facet-value-form-input/facet-value-form-input.component';
8
9
  import { PasswordFormInputComponent } from './password-form-input/password-form-input.component';
10
+ import { ProductMultiSelectorFormInputComponent } from './product-multi-selector-form-input/product-multi-selector-form-input.component';
9
11
  import { ProductSelectorFormInputComponent } from './product-selector-form-input/product-selector-form-input.component';
10
- export declare const defaultFormInputs: (typeof JsonEditorFormInputComponent | typeof CurrencyFormInputComponent | typeof CustomerGroupFormInputComponent | typeof FacetValueFormInputComponent | typeof PasswordFormInputComponent | typeof ProductSelectorFormInputComponent)[];
12
+ export declare const defaultFormInputs: (typeof JsonEditorFormInputComponent | typeof CombinationModeFormInputComponent | typeof CurrencyFormInputComponent | typeof CustomerGroupFormInputComponent | typeof FacetValueFormInputComponent | typeof PasswordFormInputComponent | typeof ProductMultiSelectorFormInputComponent | typeof ProductSelectorFormInputComponent)[];
11
13
  /**
12
14
  * @description
13
15
  * Registers a custom FormInputComponent which can be used to control the argument inputs
@@ -1,15 +1,18 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { FormControl } from '@angular/forms';
3
+ import { DefaultFormComponentId } from '@vendure/common/lib/shared-types';
3
4
  import { Observable } from 'rxjs';
5
+ import { FormInputComponent } from '../../../../common/component-registry-types';
4
6
  import { GetAssetQuery, RelationCustomFieldConfig } from '../../../../common/generated-types';
5
7
  import { DataService } from '../../../../data/providers/data.service';
6
8
  import { ModalService } from '../../../../providers/modal/modal.service';
7
9
  import * as i0 from "@angular/core";
8
- export declare class RelationAssetInputComponent implements OnInit {
10
+ export declare class RelationAssetInputComponent implements FormInputComponent, OnInit {
9
11
  private modalService;
10
12
  private dataService;
13
+ static readonly id: DefaultFormComponentId;
11
14
  readonly: boolean;
12
- parentFormControl: FormControl;
15
+ formControl: FormControl;
13
16
  config: RelationCustomFieldConfig;
14
17
  asset$: Observable<GetAssetQuery['asset'] | undefined>;
15
18
  constructor(modalService: ModalService, dataService: DataService);
@@ -18,5 +21,5 @@ export declare class RelationAssetInputComponent implements OnInit {
18
21
  remove(): void;
19
22
  previewAsset(asset: NonNullable<GetAssetQuery['asset']>): void;
20
23
  static ɵfac: i0.ɵɵFactoryDeclaration<RelationAssetInputComponent, never>;
21
- static ɵcmp: i0.ɵɵComponentDeclaration<RelationAssetInputComponent, "vdr-relation-asset-input", never, { "readonly": "readonly"; "parentFormControl": "parentFormControl"; "config": "config"; }, {}, never, never>;
24
+ static ɵcmp: i0.ɵɵComponentDeclaration<RelationAssetInputComponent, "vdr-relation-asset-input", never, { "readonly": "readonly"; "formControl": "parentFormControl"; "config": "config"; }, {}, never, never>;
22
25
  }