@vendure/admin-ui 2.1.0-next.0 → 2.1.0-next.2

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 (400) hide show
  1. package/core/common/generated-types.d.ts +1741 -1706
  2. package/core/common/version.d.ts +1 -1
  3. package/core/data/providers/base-data.service.d.ts +1 -3
  4. package/core/providers/data-table/data-table-filter-collection.d.ts +10 -6
  5. package/core/providers/data-table/data-table-filter.d.ts +16 -2
  6. package/core/providers/local-storage/local-storage.service.d.ts +4 -0
  7. package/core/public_api.d.ts +4 -0
  8. package/core/shared/components/data-table-2/data-table2.component.d.ts +6 -2
  9. package/core/shared/components/data-table-filter-presets/add-filter-preset-button.component.d.ts +25 -0
  10. package/core/shared/components/data-table-filter-presets/data-table-filter-presets.component.d.ts +29 -0
  11. package/core/shared/components/data-table-filter-presets/filter-preset.service.d.ts +34 -0
  12. package/core/shared/components/data-table-filter-presets/rename-filter-preset-dialog.component.d.ts +9 -0
  13. package/core/shared/shared.module.d.ts +14 -11
  14. package/esm2022/catalog/catalog.module.mjs +4 -4
  15. package/esm2022/catalog/components/apply-facet-dialog/apply-facet-dialog.component.mjs +3 -3
  16. package/esm2022/catalog/components/asset-detail/asset-detail.component.mjs +3 -3
  17. package/esm2022/catalog/components/asset-list/asset-list.component.mjs +3 -3
  18. package/esm2022/catalog/components/assets/assets.component.mjs +3 -3
  19. package/esm2022/catalog/components/assign-products-to-channel-dialog/assign-products-to-channel-dialog.component.mjs +3 -3
  20. package/esm2022/catalog/components/bulk-add-facet-values-dialog/bulk-add-facet-values-dialog.component.mjs +3 -3
  21. package/esm2022/catalog/components/collection-contents/collection-contents.component.mjs +3 -3
  22. package/esm2022/catalog/components/collection-data-table/collection-data-table.component.mjs +3 -3
  23. package/esm2022/catalog/components/collection-detail/collection-detail.component.mjs +3 -3
  24. package/esm2022/catalog/components/collection-list/collection-breadcrumb.pipe.mjs +3 -3
  25. package/esm2022/catalog/components/collection-list/collection-list.component.mjs +5 -4
  26. package/esm2022/catalog/components/collection-tree/collection-tree-node.component.mjs +3 -3
  27. package/esm2022/catalog/components/collection-tree/collection-tree.component.mjs +3 -3
  28. package/esm2022/catalog/components/collection-tree/collection-tree.service.mjs +3 -3
  29. package/esm2022/catalog/components/confirm-variant-deletion-dialog/confirm-variant-deletion-dialog.component.mjs +3 -3
  30. package/esm2022/catalog/components/create-product-option-group-dialog/create-product-option-group-dialog.component.mjs +3 -3
  31. package/esm2022/catalog/components/create-product-variant-dialog/create-product-variant-dialog.component.mjs +3 -3
  32. package/esm2022/catalog/components/facet-detail/facet-detail.component.mjs +3 -3
  33. package/esm2022/catalog/components/facet-list/facet-list.component.mjs +5 -4
  34. package/esm2022/catalog/components/generate-product-variants/generate-product-variants.component.mjs +3 -3
  35. package/esm2022/catalog/components/move-collections-dialog/move-collections-dialog.component.mjs +3 -3
  36. package/esm2022/catalog/components/option-value-input/option-value-input.component.mjs +3 -3
  37. package/esm2022/catalog/components/product-detail/product-detail.component.mjs +3 -3
  38. package/esm2022/catalog/components/product-list/product-list.component.mjs +5 -10
  39. package/esm2022/catalog/components/product-options-editor/product-options-editor.component.mjs +3 -3
  40. package/esm2022/catalog/components/product-variant-detail/product-variant-detail.component.mjs +3 -3
  41. package/esm2022/catalog/components/product-variant-list/product-variant-list.component.mjs +5 -10
  42. package/esm2022/catalog/components/product-variant-quick-jump/product-variant-quick-jump.component.mjs +3 -3
  43. package/esm2022/catalog/components/product-variants-editor/product-variants-editor.component.mjs +3 -3
  44. package/esm2022/catalog/components/product-variants-table/product-variants-table.component.mjs +3 -3
  45. package/esm2022/catalog/components/stock-location-detail/stock-location-detail.component.mjs +3 -3
  46. package/esm2022/catalog/components/stock-location-list/stock-location-list.component.mjs +5 -10
  47. package/esm2022/catalog/components/update-product-option-dialog/update-product-option-dialog.component.mjs +3 -3
  48. package/esm2022/catalog/components/variant-price-detail/variant-price-detail.component.mjs +3 -3
  49. package/esm2022/catalog/providers/product-detail/product-detail.service.mjs +3 -3
  50. package/esm2022/catalog/providers/routing/product-variants-resolver.mjs +3 -3
  51. package/esm2022/core/app.component.mjs +3 -3
  52. package/esm2022/core/app.component.module.mjs +4 -4
  53. package/esm2022/core/common/base-list.component.mjs +6 -6
  54. package/esm2022/core/common/generated-types.mjs +1 -1
  55. package/esm2022/core/common/version.mjs +2 -2
  56. package/esm2022/core/components/alerts/alerts.component.mjs +3 -3
  57. package/esm2022/core/components/app-shell/app-shell.component.mjs +3 -3
  58. package/esm2022/core/components/base-nav/base-nav.component.mjs +3 -3
  59. package/esm2022/core/components/breadcrumb/breadcrumb.component.mjs +3 -3
  60. package/esm2022/core/components/channel-switcher/channel-switcher.component.mjs +3 -3
  61. package/esm2022/core/components/main-nav/main-nav.component.mjs +3 -3
  62. package/esm2022/core/components/notification/notification.component.mjs +3 -3
  63. package/esm2022/core/components/overlay-host/overlay-host.component.mjs +3 -3
  64. package/esm2022/core/components/settings-nav/settings-nav.component.mjs +3 -3
  65. package/esm2022/core/components/theme-switcher/theme-switcher.component.mjs +3 -3
  66. package/esm2022/core/components/ui-language-switcher-dialog/ui-language-switcher-dialog.component.mjs +3 -3
  67. package/esm2022/core/components/user-menu/user-menu.component.mjs +3 -3
  68. package/esm2022/core/core.module.mjs +4 -4
  69. package/esm2022/core/data/data.module.mjs +6 -5
  70. package/esm2022/core/data/providers/base-data.service.mjs +7 -9
  71. package/esm2022/core/data/providers/data.service.mjs +3 -3
  72. package/esm2022/core/data/providers/fetch-adapter.mjs +3 -3
  73. package/esm2022/core/data/providers/interceptor.mjs +3 -3
  74. package/esm2022/core/data/server-config.mjs +3 -3
  75. package/esm2022/core/providers/alerts/alerts.service.mjs +3 -3
  76. package/esm2022/core/providers/auth/auth.service.mjs +3 -3
  77. package/esm2022/core/providers/breadcrumb/breadcrumb.service.mjs +3 -3
  78. package/esm2022/core/providers/bulk-action-registry/bulk-action-registry.service.mjs +3 -3
  79. package/esm2022/core/providers/channel/channel.service.mjs +3 -3
  80. package/esm2022/core/providers/component-registry/component-registry.service.mjs +3 -3
  81. package/esm2022/core/providers/custom-detail-component/custom-detail-component.service.mjs +3 -3
  82. package/esm2022/core/providers/custom-field-component/custom-field-component.service.mjs +3 -3
  83. package/esm2022/core/providers/custom-history-entry-component/history-entry-component.service.mjs +3 -3
  84. package/esm2022/core/providers/dashboard-widget/dashboard-widget.service.mjs +3 -3
  85. package/esm2022/core/providers/data-table/data-table-filter-collection.mjs +77 -29
  86. package/esm2022/core/providers/data-table/data-table-filter.mjs +31 -13
  87. package/esm2022/core/providers/guard/auth.guard.mjs +3 -3
  88. package/esm2022/core/providers/health-check/health-check.service.mjs +3 -3
  89. package/esm2022/core/providers/i18n/custom-message-format-compiler.mjs +3 -3
  90. package/esm2022/core/providers/i18n/i18n.service.mjs +3 -3
  91. package/esm2022/core/providers/job-queue/job-queue.service.mjs +3 -3
  92. package/esm2022/core/providers/local-storage/local-storage.service.mjs +4 -4
  93. package/esm2022/core/providers/modal/modal.service.mjs +3 -3
  94. package/esm2022/core/providers/nav-builder/nav-builder.service.mjs +3 -3
  95. package/esm2022/core/providers/notification/notification.service.mjs +3 -3
  96. package/esm2022/core/providers/overlay-host/overlay-host.service.mjs +3 -3
  97. package/esm2022/core/providers/page/page.service.mjs +3 -3
  98. package/esm2022/core/public_api.mjs +5 -1
  99. package/esm2022/core/shared/components/action-bar/action-bar.component.mjs +9 -9
  100. package/esm2022/core/shared/components/action-bar-items/action-bar-items.component.mjs +3 -3
  101. package/esm2022/core/shared/components/address-form/address-form.component.mjs +3 -3
  102. package/esm2022/core/shared/components/affixed-input/affixed-input.component.mjs +3 -3
  103. package/esm2022/core/shared/components/affixed-input/percentage-suffix-input.component.mjs +3 -3
  104. package/esm2022/core/shared/components/asset-file-input/asset-file-input.component.mjs +3 -3
  105. package/esm2022/core/shared/components/asset-gallery/asset-gallery.component.mjs +3 -3
  106. package/esm2022/core/shared/components/asset-picker-dialog/asset-picker-dialog.component.mjs +3 -3
  107. package/esm2022/core/shared/components/asset-preview/asset-preview.component.mjs +3 -3
  108. package/esm2022/core/shared/components/asset-preview-dialog/asset-preview-dialog.component.mjs +3 -3
  109. package/esm2022/core/shared/components/asset-preview-links/asset-preview-links.component.mjs +3 -3
  110. package/esm2022/core/shared/components/asset-search-input/asset-search-input.component.mjs +3 -3
  111. package/esm2022/core/shared/components/assign-to-channel-dialog/assign-to-channel-dialog.component.mjs +3 -3
  112. package/esm2022/core/shared/components/bulk-action-menu/bulk-action-menu.component.mjs +3 -3
  113. package/esm2022/core/shared/components/card/card.component.mjs +6 -6
  114. package/esm2022/core/shared/components/channel-assignment-control/channel-assignment-control.component.mjs +4 -4
  115. package/esm2022/core/shared/components/channel-badge/channel-badge.component.mjs +3 -3
  116. package/esm2022/core/shared/components/chart/chart.component.mjs +3 -3
  117. package/esm2022/core/shared/components/chip/chip.component.mjs +3 -3
  118. package/esm2022/core/shared/components/configurable-input/configurable-input.component.mjs +3 -3
  119. package/esm2022/core/shared/components/currency-code-selector/currency-code-selector.component.mjs +4 -4
  120. package/esm2022/core/shared/components/currency-input/currency-input.component.mjs +3 -3
  121. package/esm2022/core/shared/components/custom-detail-component-host/custom-detail-component-host.component.mjs +3 -3
  122. package/esm2022/core/shared/components/custom-field-control/custom-field-control.component.mjs +3 -3
  123. package/esm2022/core/shared/components/customer-label/customer-label.component.mjs +3 -3
  124. package/esm2022/core/shared/components/data-table/data-table-column.component.mjs +3 -3
  125. package/esm2022/core/shared/components/data-table/data-table.component.mjs +3 -3
  126. package/esm2022/core/shared/components/data-table-2/data-table-column.component.mjs +3 -3
  127. package/esm2022/core/shared/components/data-table-2/data-table-custom-field-column.component.mjs +3 -3
  128. package/esm2022/core/shared/components/data-table-2/data-table-search.component.mjs +3 -3
  129. package/esm2022/core/shared/components/data-table-2/data-table2.component.mjs +36 -22
  130. package/esm2022/core/shared/components/data-table-column-picker/data-table-column-picker.component.mjs +3 -3
  131. package/esm2022/core/shared/components/data-table-filter-label/data-table-filter-label.component.mjs +5 -5
  132. package/esm2022/core/shared/components/data-table-filter-presets/add-filter-preset-button.component.mjs +69 -0
  133. package/esm2022/core/shared/components/data-table-filter-presets/data-table-filter-presets.component.mjs +78 -0
  134. package/esm2022/core/shared/components/data-table-filter-presets/filter-preset.service.mjs +79 -0
  135. package/esm2022/core/shared/components/data-table-filter-presets/rename-filter-preset-dialog.component.mjs +20 -0
  136. package/esm2022/core/shared/components/data-table-filters/custom-filter-component.directive.mjs +3 -3
  137. package/esm2022/core/shared/components/data-table-filters/data-table-filters.component.mjs +50 -35
  138. package/esm2022/core/shared/components/datetime-picker/datetime-picker.component.mjs +3 -3
  139. package/esm2022/core/shared/components/datetime-picker/datetime-picker.service.mjs +3 -3
  140. package/esm2022/core/shared/components/dropdown/dropdown-item.directive.mjs +3 -3
  141. package/esm2022/core/shared/components/dropdown/dropdown-menu.component.mjs +3 -3
  142. package/esm2022/core/shared/components/dropdown/dropdown-trigger.directive.mjs +3 -3
  143. package/esm2022/core/shared/components/dropdown/dropdown.component.mjs +3 -3
  144. package/esm2022/core/shared/components/edit-note-dialog/edit-note-dialog.component.mjs +3 -3
  145. package/esm2022/core/shared/components/empty-placeholder/empty-placeholder.component.mjs +3 -3
  146. package/esm2022/core/shared/components/entity-info/entity-info.component.mjs +3 -3
  147. package/esm2022/core/shared/components/extension-host/extension-host.component.mjs +3 -3
  148. package/esm2022/core/shared/components/extension-host/extension-host.service.mjs +3 -3
  149. package/esm2022/core/shared/components/facet-value-chip/facet-value-chip.component.mjs +3 -3
  150. package/esm2022/core/shared/components/facet-value-selector/facet-value-selector.component.mjs +4 -4
  151. package/esm2022/core/shared/components/focal-point-control/focal-point-control.component.mjs +3 -3
  152. package/esm2022/core/shared/components/form-field/form-field-control.directive.mjs +3 -3
  153. package/esm2022/core/shared/components/form-field/form-field.component.mjs +3 -3
  154. package/esm2022/core/shared/components/form-item/form-item.component.mjs +3 -3
  155. package/esm2022/core/shared/components/formatted-address/formatted-address.component.mjs +3 -3
  156. package/esm2022/core/shared/components/help-tooltip/help-tooltip.component.mjs +3 -3
  157. package/esm2022/core/shared/components/history-entry-detail/history-entry-detail.component.mjs +3 -3
  158. package/esm2022/core/shared/components/items-per-page-controls/items-per-page-controls.component.mjs +3 -3
  159. package/esm2022/core/shared/components/labeled-data/labeled-data.component.mjs +3 -3
  160. package/esm2022/core/shared/components/language-code-selector/language-code-selector.component.mjs +4 -4
  161. package/esm2022/core/shared/components/language-selector/language-selector.component.mjs +3 -3
  162. package/esm2022/core/shared/components/localized-text/localized-text.component.mjs +3 -3
  163. package/esm2022/core/shared/components/manage-tags-dialog/manage-tags-dialog.component.mjs +3 -3
  164. package/esm2022/core/shared/components/modal-dialog/dialog-buttons.directive.mjs +3 -3
  165. package/esm2022/core/shared/components/modal-dialog/dialog-component-outlet.component.mjs +3 -3
  166. package/esm2022/core/shared/components/modal-dialog/dialog-title.directive.mjs +3 -3
  167. package/esm2022/core/shared/components/modal-dialog/modal-dialog.component.mjs +3 -3
  168. package/esm2022/core/shared/components/object-tree/object-tree.component.mjs +3 -3
  169. package/esm2022/core/shared/components/order-state-label/order-state-label.component.mjs +3 -3
  170. package/esm2022/core/shared/components/page/page.component.mjs +3 -3
  171. package/esm2022/core/shared/components/page-block/page-block.component.mjs +3 -3
  172. package/esm2022/core/shared/components/page-body/page-body.component.mjs +3 -3
  173. package/esm2022/core/shared/components/page-detail-layout/page-detail-layout.component.mjs +3 -3
  174. package/esm2022/core/shared/components/page-detail-layout/page-detail-sidebar.component.mjs +3 -3
  175. package/esm2022/core/shared/components/page-entity-info/page-entity-info.component.mjs +3 -3
  176. package/esm2022/core/shared/components/page-header/page-header.component.mjs +3 -3
  177. package/esm2022/core/shared/components/page-header-description/page-header-description.component.mjs +3 -3
  178. package/esm2022/core/shared/components/page-header-tabs/page-header-tabs.component.mjs +4 -4
  179. package/esm2022/core/shared/components/page-title/page-title.component.mjs +3 -3
  180. package/esm2022/core/shared/components/pagination-controls/pagination-controls.component.mjs +3 -3
  181. package/esm2022/core/shared/components/product-multi-selector-dialog/product-multi-selector-dialog.component.mjs +3 -3
  182. package/esm2022/core/shared/components/product-search-input/product-search-input.component.mjs +3 -3
  183. package/esm2022/core/shared/components/product-variant-selector/product-variant-selector.component.mjs +3 -3
  184. package/esm2022/core/shared/components/radio-card/radio-card-fieldset.component.mjs +3 -3
  185. package/esm2022/core/shared/components/radio-card/radio-card.component.mjs +3 -3
  186. package/esm2022/core/shared/components/rich-text-editor/external-image-dialog/external-image-dialog.component.mjs +3 -3
  187. package/esm2022/core/shared/components/rich-text-editor/link-dialog/link-dialog.component.mjs +3 -3
  188. package/esm2022/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.component.mjs +3 -3
  189. package/esm2022/core/shared/components/rich-text-editor/prosemirror/context-menu/context-menu.service.mjs +3 -3
  190. package/esm2022/core/shared/components/rich-text-editor/prosemirror/prosemirror.service.mjs +3 -3
  191. package/esm2022/core/shared/components/rich-text-editor/raw-html-dialog/raw-html-dialog.component.mjs +3 -3
  192. package/esm2022/core/shared/components/rich-text-editor/rich-text-editor.component.mjs +3 -3
  193. package/esm2022/core/shared/components/select-toggle/select-toggle.component.mjs +3 -3
  194. package/esm2022/core/shared/components/simple-dialog/simple-dialog.component.mjs +3 -3
  195. package/esm2022/core/shared/components/split-view/split-view.component.mjs +3 -3
  196. package/esm2022/core/shared/components/split-view/split-view.directive.mjs +6 -6
  197. package/esm2022/core/shared/components/status-badge/status-badge.component.mjs +3 -3
  198. package/esm2022/core/shared/components/tabbed-custom-fields/tabbed-custom-fields.component.mjs +3 -3
  199. package/esm2022/core/shared/components/table-row-action/table-row-action.component.mjs +3 -3
  200. package/esm2022/core/shared/components/tag-selector/tag-selector.component.mjs +4 -4
  201. package/esm2022/core/shared/components/timeline-entry/timeline-entry.component.mjs +3 -3
  202. package/esm2022/core/shared/components/title-input/title-input.component.mjs +3 -3
  203. package/esm2022/core/shared/components/ui-extension-point/ui-extension-point.component.mjs +3 -3
  204. package/esm2022/core/shared/components/zone-selector/zone-selector.component.mjs +4 -4
  205. package/esm2022/core/shared/directives/disabled.directive.mjs +3 -3
  206. package/esm2022/core/shared/directives/if-default-channel-active.directive.mjs +3 -3
  207. package/esm2022/core/shared/directives/if-directive-base.mjs +3 -3
  208. package/esm2022/core/shared/directives/if-multichannel.directive.mjs +3 -3
  209. package/esm2022/core/shared/directives/if-permissions.directive.mjs +3 -3
  210. package/esm2022/core/shared/dynamic-form-inputs/boolean-form-input/boolean-form-input.component.mjs +3 -3
  211. package/esm2022/core/shared/dynamic-form-inputs/code-editor-form-input/base-code-editor-form-input.component.mjs +3 -3
  212. package/esm2022/core/shared/dynamic-form-inputs/code-editor-form-input/html-editor-form-input.component.mjs +3 -3
  213. package/esm2022/core/shared/dynamic-form-inputs/code-editor-form-input/json-editor-form-input.component.mjs +3 -3
  214. package/esm2022/core/shared/dynamic-form-inputs/combination-mode-form-input/combination-mode-form-input.component.mjs +3 -3
  215. package/esm2022/core/shared/dynamic-form-inputs/currency-form-input/currency-form-input.component.mjs +3 -3
  216. package/esm2022/core/shared/dynamic-form-inputs/customer-group-form-input/customer-group-form-input.component.mjs +3 -3
  217. package/esm2022/core/shared/dynamic-form-inputs/date-form-input/date-form-input.component.mjs +3 -3
  218. package/esm2022/core/shared/dynamic-form-inputs/dynamic-form-input/dynamic-form-input.component.mjs +3 -3
  219. package/esm2022/core/shared/dynamic-form-inputs/facet-value-form-input/facet-value-form-input.component.mjs +3 -3
  220. package/esm2022/core/shared/dynamic-form-inputs/number-form-input/number-form-input.component.mjs +3 -3
  221. package/esm2022/core/shared/dynamic-form-inputs/password-form-input/password-form-input.component.mjs +3 -3
  222. package/esm2022/core/shared/dynamic-form-inputs/product-multi-selector-form-input/product-multi-selector-form-input.component.mjs +3 -3
  223. package/esm2022/core/shared/dynamic-form-inputs/product-selector-form-input/product-selector-form-input.component.mjs +3 -3
  224. package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/asset/relation-asset-input.component.mjs +3 -3
  225. package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/customer/relation-customer-input.component.mjs +3 -3
  226. package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/generic/relation-generic-input.component.mjs +3 -3
  227. package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/product/relation-product-input.component.mjs +3 -3
  228. package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/product-variant/relation-product-variant-input.component.mjs +3 -3
  229. package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/relation-card/relation-card.component.mjs +9 -9
  230. package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/relation-form-input.component.mjs +3 -3
  231. package/esm2022/core/shared/dynamic-form-inputs/relation-form-input/relation-selector-dialog/relation-selector-dialog.component.mjs +3 -3
  232. package/esm2022/core/shared/dynamic-form-inputs/rich-text-form-input/rich-text-form-input.component.mjs +3 -3
  233. package/esm2022/core/shared/dynamic-form-inputs/select-form-input/select-form-input.component.mjs +3 -3
  234. package/esm2022/core/shared/dynamic-form-inputs/text-form-input/text-form-input.component.mjs +3 -3
  235. package/esm2022/core/shared/dynamic-form-inputs/textarea-form-input/textarea-form-input.component.mjs +3 -3
  236. package/esm2022/core/shared/pipes/asset-preview.pipe.mjs +3 -3
  237. package/esm2022/core/shared/pipes/channel-label.pipe.mjs +3 -3
  238. package/esm2022/core/shared/pipes/custom-field-description.pipe.mjs +3 -3
  239. package/esm2022/core/shared/pipes/custom-field-label.pipe.mjs +3 -3
  240. package/esm2022/core/shared/pipes/duration.pipe.mjs +3 -3
  241. package/esm2022/core/shared/pipes/file-size.pipe.mjs +3 -3
  242. package/esm2022/core/shared/pipes/has-permission.pipe.mjs +3 -3
  243. package/esm2022/core/shared/pipes/locale-base.pipe.mjs +3 -3
  244. package/esm2022/core/shared/pipes/locale-currency-name.pipe.mjs +3 -3
  245. package/esm2022/core/shared/pipes/locale-currency.pipe.mjs +3 -3
  246. package/esm2022/core/shared/pipes/locale-date.pipe.mjs +3 -3
  247. package/esm2022/core/shared/pipes/locale-language-name.pipe.mjs +3 -3
  248. package/esm2022/core/shared/pipes/locale-region-name.pipe.mjs +3 -3
  249. package/esm2022/core/shared/pipes/sentence-case.pipe.mjs +3 -3
  250. package/esm2022/core/shared/pipes/sort.pipe.mjs +3 -3
  251. package/esm2022/core/shared/pipes/state-i18n-token.pipe.mjs +3 -3
  252. package/esm2022/core/shared/pipes/string-to-color.pipe.mjs +3 -3
  253. package/esm2022/core/shared/pipes/time-ago.pipe.mjs +3 -3
  254. package/esm2022/core/shared/providers/routing/can-deactivate-detail-guard.mjs +3 -3
  255. package/esm2022/core/shared/shared.module.mjs +18 -7
  256. package/esm2022/customer/components/add-customer-to-group-dialog/add-customer-to-group-dialog.component.mjs +3 -3
  257. package/esm2022/customer/components/address-card/address-card.component.mjs +3 -3
  258. package/esm2022/customer/components/address-detail-dialog/address-detail-dialog.component.mjs +3 -3
  259. package/esm2022/customer/components/customer-detail/customer-detail.component.mjs +3 -3
  260. package/esm2022/customer/components/customer-group-detail/customer-group-detail.component.mjs +3 -3
  261. package/esm2022/customer/components/customer-group-detail-dialog/customer-group-detail-dialog.component.mjs +3 -3
  262. package/esm2022/customer/components/customer-group-list/customer-group-list.component.mjs +5 -4
  263. package/esm2022/customer/components/customer-group-member-list/customer-group-member-list.component.mjs +3 -3
  264. package/esm2022/customer/components/customer-history/customer-history-entry-host.component.mjs +3 -3
  265. package/esm2022/customer/components/customer-history/customer-history.component.mjs +3 -3
  266. package/esm2022/customer/components/customer-list/customer-list.component.mjs +28 -27
  267. package/esm2022/customer/components/customer-status-label/customer-status-label.component.mjs +3 -3
  268. package/esm2022/customer/components/select-customer-group-dialog/select-customer-group-dialog.component.mjs +3 -3
  269. package/esm2022/customer/customer.module.mjs +4 -4
  270. package/esm2022/dashboard/components/dashboard/dashboard.component.mjs +3 -3
  271. package/esm2022/dashboard/components/dashboard-widget/dashboard-widget.component.mjs +3 -3
  272. package/esm2022/dashboard/dashboard.module.mjs +4 -4
  273. package/esm2022/dashboard/widgets/latest-orders-widget/latest-orders-widget.component.mjs +7 -7
  274. package/esm2022/dashboard/widgets/order-chart-widget/order-chart-widget.component.mjs +3 -3
  275. package/esm2022/dashboard/widgets/order-summary-widget/order-summary-widget.component.mjs +7 -7
  276. package/esm2022/dashboard/widgets/test-widget/test-widget.component.mjs +7 -7
  277. package/esm2022/dashboard/widgets/welcome-widget/welcome-widget.component.mjs +7 -7
  278. package/esm2022/login/components/login/login.component.mjs +3 -3
  279. package/esm2022/login/login.module.mjs +4 -4
  280. package/esm2022/login/providers/login.guard.mjs +3 -3
  281. package/esm2022/marketing/components/promotion-detail/promotion-detail.component.mjs +3 -3
  282. package/esm2022/marketing/components/promotion-list/promotion-list.component.mjs +5 -4
  283. package/esm2022/marketing/marketing.module.mjs +4 -4
  284. package/esm2022/order/components/add-manual-payment-dialog/add-manual-payment-dialog.component.mjs +3 -3
  285. package/esm2022/order/components/cancel-order-dialog/cancel-order-dialog.component.mjs +3 -3
  286. package/esm2022/order/components/coupon-code-selector/coupon-code-selector.component.mjs +3 -3
  287. package/esm2022/order/components/draft-order-detail/draft-order-detail.component.mjs +3 -3
  288. package/esm2022/order/components/draft-order-variant-selector/draft-order-variant-selector.component.mjs +3 -3
  289. package/esm2022/order/components/fulfill-order-dialog/fulfill-order-dialog.component.mjs +3 -3
  290. package/esm2022/order/components/fulfillment-card/fulfillment-card.component.mjs +3 -3
  291. package/esm2022/order/components/fulfillment-detail/fulfillment-detail.component.mjs +3 -3
  292. package/esm2022/order/components/fulfillment-state-label/fulfillment-state-label.component.mjs +3 -3
  293. package/esm2022/order/components/line-fulfillment/line-fulfillment.component.mjs +3 -3
  294. package/esm2022/order/components/line-refunds/line-refunds.component.mjs +3 -3
  295. package/esm2022/order/components/modification-detail/modification-detail.component.mjs +3 -3
  296. package/esm2022/order/components/order-custom-fields-card/order-custom-fields-card.component.mjs +3 -3
  297. package/esm2022/order/components/order-data-table/order-data-table.component.mjs +3 -3
  298. package/esm2022/order/components/order-data-table/order-total-column.component.mjs +3 -3
  299. package/esm2022/order/components/order-detail/order-detail.component.mjs +3 -3
  300. package/esm2022/order/components/order-editor/order-editor.component.mjs +3 -3
  301. package/esm2022/order/components/order-edits-preview-dialog/order-edits-preview-dialog.component.mjs +3 -3
  302. package/esm2022/order/components/order-history/order-history-entry-host.component.mjs +3 -3
  303. package/esm2022/order/components/order-history/order-history.component.mjs +3 -3
  304. package/esm2022/order/components/order-list/order-list.component.mjs +5 -4
  305. package/esm2022/order/components/order-payment-card/order-payment-card.component.mjs +3 -3
  306. package/esm2022/order/components/order-process-graph/order-process-edge.component.mjs +3 -3
  307. package/esm2022/order/components/order-process-graph/order-process-graph.component.mjs +3 -3
  308. package/esm2022/order/components/order-process-graph/order-process-node.component.mjs +3 -3
  309. package/esm2022/order/components/order-process-graph-dialog/order-process-graph-dialog.component.mjs +3 -3
  310. package/esm2022/order/components/order-state-select-dialog/order-state-select-dialog.component.mjs +3 -3
  311. package/esm2022/order/components/order-table/order-table.component.mjs +3 -3
  312. package/esm2022/order/components/payment-detail/payment-detail.component.mjs +3 -3
  313. package/esm2022/order/components/payment-state-label/payment-state-label.component.mjs +3 -3
  314. package/esm2022/order/components/refund-order-dialog/refund-order-dialog.component.mjs +3 -3
  315. package/esm2022/order/components/refund-state-label/refund-state-label.component.mjs +3 -3
  316. package/esm2022/order/components/select-address-dialog/select-address-dialog.component.mjs +3 -3
  317. package/esm2022/order/components/select-customer-dialog/select-customer-dialog.component.mjs +3 -3
  318. package/esm2022/order/components/select-shipping-method-dialog/select-shipping-method-dialog.component.mjs +3 -3
  319. package/esm2022/order/components/seller-orders-card/seller-orders-card.component.mjs +3 -3
  320. package/esm2022/order/components/settle-refund-dialog/settle-refund-dialog.component.mjs +3 -3
  321. package/esm2022/order/components/simple-item-list/simple-item-list.component.mjs +3 -3
  322. package/esm2022/order/order.module.mjs +4 -4
  323. package/esm2022/order/providers/order-transition.service.mjs +3 -3
  324. package/esm2022/order/providers/routing/order-resolver.mjs +3 -3
  325. package/esm2022/order/providers/routing/order.guard.mjs +3 -3
  326. package/esm2022/settings/components/add-country-to-zone-dialog/add-country-to-zone-dialog.component.mjs +3 -3
  327. package/esm2022/settings/components/admin-detail/admin-detail.component.mjs +3 -3
  328. package/esm2022/settings/components/administrator-list/administrator-list.component.mjs +5 -4
  329. package/esm2022/settings/components/channel-detail/channel-detail.component.mjs +3 -3
  330. package/esm2022/settings/components/channel-list/channel-list.component.mjs +5 -4
  331. package/esm2022/settings/components/country-detail/country-detail.component.mjs +3 -3
  332. package/esm2022/settings/components/country-list/country-list.component.mjs +6 -5
  333. package/esm2022/settings/components/global-settings/global-settings.component.mjs +3 -3
  334. package/esm2022/settings/components/payment-method-detail/payment-method-detail.component.mjs +3 -3
  335. package/esm2022/settings/components/payment-method-list/payment-method-list.component.mjs +5 -4
  336. package/esm2022/settings/components/permission-grid/permission-grid.component.mjs +3 -3
  337. package/esm2022/settings/components/profile/profile.component.mjs +3 -3
  338. package/esm2022/settings/components/role-detail/role-detail.component.mjs +3 -3
  339. package/esm2022/settings/components/role-list/role-list.component.mjs +5 -4
  340. package/esm2022/settings/components/seller-detail/seller-detail.component.mjs +3 -3
  341. package/esm2022/settings/components/seller-list/seller-list.component.mjs +5 -4
  342. package/esm2022/settings/components/shipping-eligibility-test-result/shipping-eligibility-test-result.component.mjs +3 -3
  343. package/esm2022/settings/components/shipping-method-detail/shipping-method-detail.component.mjs +3 -3
  344. package/esm2022/settings/components/shipping-method-list/shipping-method-list.component.mjs +5 -4
  345. package/esm2022/settings/components/shipping-method-test-result/shipping-method-test-result.component.mjs +3 -3
  346. package/esm2022/settings/components/tax-category-detail/tax-category-detail.component.mjs +3 -3
  347. package/esm2022/settings/components/tax-category-list/tax-category-list.component.mjs +5 -4
  348. package/esm2022/settings/components/tax-rate-detail/tax-rate-detail.component.mjs +3 -3
  349. package/esm2022/settings/components/tax-rate-list/tax-rate-list.component.mjs +5 -4
  350. package/esm2022/settings/components/test-address-form/test-address-form.component.mjs +3 -3
  351. package/esm2022/settings/components/test-order-builder/test-order-builder.component.mjs +3 -3
  352. package/esm2022/settings/components/test-shipping-methods/test-shipping-methods.component.mjs +3 -3
  353. package/esm2022/settings/components/zone-detail/zone-detail.component.mjs +3 -3
  354. package/esm2022/settings/components/zone-list/zone-list.component.mjs +5 -4
  355. package/esm2022/settings/components/zone-member-list/zone-member-controls.directive.mjs +3 -3
  356. package/esm2022/settings/components/zone-member-list/zone-member-list-header.directive.mjs +3 -3
  357. package/esm2022/settings/components/zone-member-list/zone-member-list.component.mjs +3 -3
  358. package/esm2022/settings/providers/routing/profile-resolver.mjs +3 -3
  359. package/esm2022/settings/settings.module.mjs +4 -4
  360. package/esm2022/system/components/health-check/health-check.component.mjs +3 -3
  361. package/esm2022/system/components/job-list/job-list.component.mjs +3 -3
  362. package/esm2022/system/components/job-state-label/job-state-label.component.mjs +3 -3
  363. package/esm2022/system/system.module.mjs +4 -4
  364. package/fesm2022/vendure-admin-ui-catalog.mjs +117 -130
  365. package/fesm2022/vendure-admin-ui-catalog.mjs.map +1 -1
  366. package/fesm2022/vendure-admin-ui-core.mjs +1036 -739
  367. package/fesm2022/vendure-admin-ui-core.mjs.map +1 -1
  368. package/fesm2022/vendure-admin-ui-customer.mjs +68 -66
  369. package/fesm2022/vendure-admin-ui-customer.mjs.map +1 -1
  370. package/fesm2022/vendure-admin-ui-dashboard.mjs +41 -41
  371. package/fesm2022/vendure-admin-ui-login.mjs +10 -10
  372. package/fesm2022/vendure-admin-ui-login.mjs.map +1 -1
  373. package/fesm2022/vendure-admin-ui-marketing.mjs +11 -10
  374. package/fesm2022/vendure-admin-ui-marketing.mjs.map +1 -1
  375. package/fesm2022/vendure-admin-ui-order.mjs +128 -127
  376. package/fesm2022/vendure-admin-ui-order.mjs.map +1 -1
  377. package/fesm2022/vendure-admin-ui-settings.mjs +114 -104
  378. package/fesm2022/vendure-admin-ui-settings.mjs.map +1 -1
  379. package/fesm2022/vendure-admin-ui-system.mjs +13 -13
  380. package/fesm2022/vendure-admin-ui-system.mjs.map +1 -1
  381. package/package.json +45 -45
  382. package/static/i18n-messages/ar.json +789 -777
  383. package/static/i18n-messages/cs.json +13 -1
  384. package/static/i18n-messages/de.json +13 -1
  385. package/static/i18n-messages/en.json +13 -1
  386. package/static/i18n-messages/es.json +13 -1
  387. package/static/i18n-messages/fr.json +13 -1
  388. package/static/i18n-messages/he.json +13 -1
  389. package/static/i18n-messages/it.json +13 -1
  390. package/static/i18n-messages/pl.json +13 -1
  391. package/static/i18n-messages/pt_BR.json +13 -1
  392. package/static/i18n-messages/pt_PT.json +13 -1
  393. package/static/i18n-messages/ru.json +13 -1
  394. package/static/i18n-messages/uk.json +13 -1
  395. package/static/i18n-messages/zh_Hans.json +13 -1
  396. package/static/i18n-messages/zh_Hant.json +13 -1
  397. package/static/styles/global/_overrides.scss +4 -0
  398. package/static/styles/theme/dark.scss +1 -0
  399. package/static/styles/theme/default.scss +1 -0
  400. package/static/theme.min.css +1 -1
@@ -0,0 +1,69 @@
1
+ import { ChangeDetectionStrategy, Component, Input, ViewChild, } from '@angular/core';
2
+ import { FormControl } from '@angular/forms';
3
+ import { merge, Subject } from 'rxjs';
4
+ import { distinctUntilChanged, map, takeUntil } from 'rxjs/operators';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "./filter-preset.service";
7
+ import * as i2 from "@angular/router";
8
+ import * as i3 from "@clr/angular";
9
+ import * as i4 from "@angular/forms";
10
+ import * as i5 from "@angular/cdk/a11y";
11
+ import * as i6 from "../form-field/form-field-control.directive";
12
+ import * as i7 from "../dropdown/dropdown.component";
13
+ import * as i8 from "../dropdown/dropdown-menu.component";
14
+ import * as i9 from "../dropdown/dropdown-trigger.directive";
15
+ import * as i10 from "@ngx-translate/core";
16
+ export class AddFilterPresetButtonComponent {
17
+ constructor(filterPresetService, changeDetector, route) {
18
+ this.filterPresetService = filterPresetService;
19
+ this.changeDetector = changeDetector;
20
+ this.route = route;
21
+ this.filterPresetName = new FormControl('');
22
+ this.destroy$ = new Subject();
23
+ }
24
+ ngOnInit() {
25
+ merge(this.route.queryParamMap.pipe(map(qpm => qpm.get('filters')), distinctUntilChanged(), takeUntil(this.destroy$)), this.filterPresetService.presetChanges$).subscribe(() => {
26
+ this.changeDetector.markForCheck();
27
+ this.updateSelectedFilterPreset();
28
+ });
29
+ }
30
+ ngOnDestroy() {
31
+ this.destroy$.next();
32
+ this.destroy$.complete();
33
+ }
34
+ saveFilterPreset() {
35
+ const name = this.filterPresetName.value;
36
+ if (this.filters && name) {
37
+ const value = this.filters.serialize();
38
+ this.filterPresetService.saveFilterPreset({
39
+ dataTableId: this.dataTableId,
40
+ name,
41
+ value,
42
+ });
43
+ this.filterPresetName.setValue('');
44
+ this.addPresetDropdown.toggleOpen();
45
+ }
46
+ this.updateSelectedFilterPreset();
47
+ }
48
+ updateSelectedFilterPreset() {
49
+ this.selectedFilterPreset = this.filterPresetService
50
+ .getFilterPresets(this.dataTableId)
51
+ .find(p => p.value === this.filters.serialize())?.name;
52
+ }
53
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: AddFilterPresetButtonComponent, deps: [{ token: i1.FilterPresetService }, { token: i0.ChangeDetectorRef }, { token: i2.ActivatedRoute }], target: i0.ɵɵFactoryTarget.Component }); }
54
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: AddFilterPresetButtonComponent, selector: "vdr-add-filter-preset-button", inputs: { dataTableId: "dataTableId", filters: "filters" }, viewQueries: [{ propertyName: "addPresetDropdown", first: true, predicate: ["addPresetDropdown"], descendants: true }], ngImport: i0, template: "<vdr-dropdown #addPresetDropdown>\r\n <button\r\n class=\"add-preset-button mt-1\"\r\n vdrDropdownTrigger\r\n [class.visible]=\"filters.activeFilters.length > 0 && !selectedFilterPreset\"\r\n [disabled]=\"filters.activeFilters.length === 0 || !!selectedFilterPreset\"\r\n >\r\n <clr-icon shape=\"floppy\"/>\r\n <div>{{ 'common.save-filter-preset' | translate }}</div>\r\n </button>\r\n <vdr-dropdown-menu\r\n vdrPosition=\"bottom-left\"\r\n [cdkTrapFocus]=\"true\"\r\n [cdkTrapFocusAutoCapture]=\"true\"\r\n >\r\n <form class=\"mx-1\">\r\n <div>\r\n <input\r\n type=\"text\"\r\n [placeholder]=\"'common.filter-preset-name' | translate\"\r\n [formControl]=\"filterPresetName\"\r\n />\r\n </div>\r\n <div class=\"preset-create-row\">\r\n <button class=\"button mt-2\" (click)=\"saveFilterPreset()\">\r\n {{ 'common.create' | translate }}\r\n </button>\r\n </div>\r\n </form>\r\n </vdr-dropdown-menu>\r\n</vdr-dropdown>\r\n", styles: [".add-preset-button{display:flex;flex-direction:row;cursor:pointer;gap:6px;align-items:center;border:none;padding:0 var(--space-unit);height:calc(var(--space-unit) * 3);font-size:var(--font-size-xs);border-radius:var(--border-radius-lg);background-color:var(--color-button-small-bg);color:var(--color-button-small-text);opacity:0;transition:opacity .2s}.add-preset-button.visible{opacity:1}.preset-create-row{display:flex;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i3.ClrIconCustomTag, selector: "clr-icon" }, { kind: "directive", type: i4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { kind: "directive", type: i4.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { kind: "directive", type: i4.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { kind: "directive", type: i4.FormControlDirective, selector: "[formControl]", inputs: ["formControl", "disabled", "ngModel"], outputs: ["ngModelChange"], exportAs: ["ngForm"] }, { kind: "directive", type: i5.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "directive", type: i6.FormFieldControlDirective, selector: "input, textarea, select" }, { kind: "component", type: i7.DropdownComponent, selector: "vdr-dropdown", inputs: ["manualToggle"] }, { kind: "component", type: i8.DropdownMenuComponent, selector: "vdr-dropdown-menu", inputs: ["vdrPosition", "customClasses"] }, { kind: "directive", type: i9.DropdownTriggerDirective, selector: "[vdrDropdownTrigger]" }, { kind: "pipe", type: i10.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
55
+ }
56
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: AddFilterPresetButtonComponent, decorators: [{
57
+ type: Component,
58
+ args: [{ selector: 'vdr-add-filter-preset-button', changeDetection: ChangeDetectionStrategy.OnPush, template: "<vdr-dropdown #addPresetDropdown>\r\n <button\r\n class=\"add-preset-button mt-1\"\r\n vdrDropdownTrigger\r\n [class.visible]=\"filters.activeFilters.length > 0 && !selectedFilterPreset\"\r\n [disabled]=\"filters.activeFilters.length === 0 || !!selectedFilterPreset\"\r\n >\r\n <clr-icon shape=\"floppy\"/>\r\n <div>{{ 'common.save-filter-preset' | translate }}</div>\r\n </button>\r\n <vdr-dropdown-menu\r\n vdrPosition=\"bottom-left\"\r\n [cdkTrapFocus]=\"true\"\r\n [cdkTrapFocusAutoCapture]=\"true\"\r\n >\r\n <form class=\"mx-1\">\r\n <div>\r\n <input\r\n type=\"text\"\r\n [placeholder]=\"'common.filter-preset-name' | translate\"\r\n [formControl]=\"filterPresetName\"\r\n />\r\n </div>\r\n <div class=\"preset-create-row\">\r\n <button class=\"button mt-2\" (click)=\"saveFilterPreset()\">\r\n {{ 'common.create' | translate }}\r\n </button>\r\n </div>\r\n </form>\r\n </vdr-dropdown-menu>\r\n</vdr-dropdown>\r\n", styles: [".add-preset-button{display:flex;flex-direction:row;cursor:pointer;gap:6px;align-items:center;border:none;padding:0 var(--space-unit);height:calc(var(--space-unit) * 3);font-size:var(--font-size-xs);border-radius:var(--border-radius-lg);background-color:var(--color-button-small-bg);color:var(--color-button-small-text);opacity:0;transition:opacity .2s}.add-preset-button.visible{opacity:1}.preset-create-row{display:flex;justify-content:flex-end}\n"] }]
59
+ }], ctorParameters: function () { return [{ type: i1.FilterPresetService }, { type: i0.ChangeDetectorRef }, { type: i2.ActivatedRoute }]; }, propDecorators: { dataTableId: [{
60
+ type: Input,
61
+ args: [{ required: true }]
62
+ }], filters: [{
63
+ type: Input,
64
+ args: [{ required: true }]
65
+ }], addPresetDropdown: [{
66
+ type: ViewChild,
67
+ args: ['addPresetDropdown']
68
+ }] } });
69
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWRkLWZpbHRlci1wcmVzZXQtYnV0dG9uLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvc2hhcmVkL2NvbXBvbmVudHMvZGF0YS10YWJsZS1maWx0ZXItcHJlc2V0cy9hZGQtZmlsdGVyLXByZXNldC1idXR0b24uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9zaGFyZWQvY29tcG9uZW50cy9kYXRhLXRhYmxlLWZpbHRlci1wcmVzZXRzL2FkZC1maWx0ZXItcHJlc2V0LWJ1dHRvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0gsdUJBQXVCLEVBRXZCLFNBQVMsRUFDVCxLQUFLLEVBR0wsU0FBUyxHQUNaLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUU3QyxPQUFPLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUN0QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxNQUFNLGdCQUFnQixDQUFDOzs7Ozs7Ozs7Ozs7QUFXdEUsTUFBTSxPQUFPLDhCQUE4QjtJQVF2QyxZQUNZLG1CQUF3QyxFQUN4QyxjQUFpQyxFQUNqQyxLQUFxQjtRQUZyQix3QkFBbUIsR0FBbkIsbUJBQW1CLENBQXFCO1FBQ3hDLG1CQUFjLEdBQWQsY0FBYyxDQUFtQjtRQUNqQyxVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQU5qQyxxQkFBZ0IsR0FBRyxJQUFJLFdBQVcsQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUMvQixhQUFRLEdBQUcsSUFBSSxPQUFPLEVBQVEsQ0FBQztJQU1wQyxDQUFDO0lBRUosUUFBUTtRQUNKLEtBQUssQ0FDRCxJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxJQUFJLENBQ3pCLEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDOUIsb0JBQW9CLEVBQUUsRUFDdEIsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDM0IsRUFDRCxJQUFJLENBQUMsbUJBQW1CLENBQUMsY0FBYyxDQUMxQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLEVBQUU7WUFDYixJQUFJLENBQUMsY0FBYyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQ25DLElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO1FBQ3RDLENBQUMsQ0FBQyxDQUFDO0lBQ1AsQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGdCQUFnQjtRQUNaLE1BQU0sSUFBSSxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxLQUFLLENBQUM7UUFDekMsSUFBSSxJQUFJLENBQUMsT0FBTyxJQUFJLElBQUksRUFBRTtZQUN0QixNQUFNLEtBQUssR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQ3ZDLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxnQkFBZ0IsQ0FBQztnQkFDdEMsV0FBVyxFQUFFLElBQUksQ0FBQyxXQUFXO2dCQUM3QixJQUFJO2dCQUNKLEtBQUs7YUFDUixDQUFDLENBQUM7WUFDSCxJQUFJLENBQUMsZ0JBQWdCLENBQUMsUUFBUSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1lBQ25DLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQztTQUN2QztRQUNELElBQUksQ0FBQywwQkFBMEIsRUFBRSxDQUFDO0lBQ3RDLENBQUM7SUFFTywwQkFBMEI7UUFDOUIsSUFBSSxDQUFDLG9CQUFvQixHQUFHLElBQUksQ0FBQyxtQkFBbUI7YUFDL0MsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQzthQUNsQyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsS0FBSyxLQUFLLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUMsRUFBRSxJQUFJLENBQUM7SUFDL0QsQ0FBQzs4R0FwRFEsOEJBQThCO2tHQUE5Qiw4QkFBOEIsd1BDdkIzQyw2cUNBK0JBOzsyRkRSYSw4QkFBOEI7a0JBTjFDLFNBQVM7K0JBQ0ksOEJBQThCLG1CQUd2Qix1QkFBdUIsQ0FBQyxNQUFNO3VLQUdwQixXQUFXO3NCQUFyQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDRSxPQUFPO3NCQUFqQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDTyxpQkFBaUI7c0JBQWhELFNBQVM7dUJBQUMsbUJBQW1CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgICBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBDb21wb25lbnQsXG4gICAgSW5wdXQsXG4gICAgT25EZXN0cm95LFxuICAgIE9uSW5pdCxcbiAgICBWaWV3Q2hpbGQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgRm9ybUNvbnRyb2wgfSBmcm9tICdAYW5ndWxhci9mb3Jtcyc7XG5pbXBvcnQgeyBBY3RpdmF0ZWRSb3V0ZSB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBtZXJnZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRGF0YVRhYmxlRmlsdGVyQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uL3Byb3ZpZGVycy9kYXRhLXRhYmxlL2RhdGEtdGFibGUtZmlsdGVyLWNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgRHJvcGRvd25Db21wb25lbnQgfSBmcm9tICcuLi9kcm9wZG93bi9kcm9wZG93bi5jb21wb25lbnQnO1xuaW1wb3J0IHsgRmlsdGVyUHJlc2V0U2VydmljZSB9IGZyb20gJy4vZmlsdGVyLXByZXNldC5zZXJ2aWNlJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICd2ZHItYWRkLWZpbHRlci1wcmVzZXQtYnV0dG9uJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vYWRkLWZpbHRlci1wcmVzZXQtYnV0dG9uLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9hZGQtZmlsdGVyLXByZXNldC1idXR0b24uY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgQWRkRmlsdGVyUHJlc2V0QnV0dG9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICAgIEBJbnB1dCh7IHJlcXVpcmVkOiB0cnVlIH0pIGRhdGFUYWJsZUlkOiBzdHJpbmc7XG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgZmlsdGVyczogRGF0YVRhYmxlRmlsdGVyQ29sbGVjdGlvbjtcbiAgICBAVmlld0NoaWxkKCdhZGRQcmVzZXREcm9wZG93bicpIGFkZFByZXNldERyb3Bkb3duOiBEcm9wZG93bkNvbXBvbmVudDtcbiAgICBzZWxlY3RlZEZpbHRlclByZXNldDogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICAgIGZpbHRlclByZXNldE5hbWUgPSBuZXcgRm9ybUNvbnRyb2woJycpO1xuICAgIHByaXZhdGUgZGVzdHJveSQgPSBuZXcgU3ViamVjdDx2b2lkPigpO1xuXG4gICAgY29uc3RydWN0b3IoXG4gICAgICAgIHByaXZhdGUgZmlsdGVyUHJlc2V0U2VydmljZTogRmlsdGVyUHJlc2V0U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBjaGFuZ2VEZXRlY3RvcjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgIHByaXZhdGUgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgICkge31cblxuICAgIG5nT25Jbml0KCkge1xuICAgICAgICBtZXJnZShcbiAgICAgICAgICAgIHRoaXMucm91dGUucXVlcnlQYXJhbU1hcC5waXBlKFxuICAgICAgICAgICAgICAgIG1hcChxcG0gPT4gcXBtLmdldCgnZmlsdGVycycpKSxcbiAgICAgICAgICAgICAgICBkaXN0aW5jdFVudGlsQ2hhbmdlZCgpLFxuICAgICAgICAgICAgICAgIHRha2VVbnRpbCh0aGlzLmRlc3Ryb3kkKSxcbiAgICAgICAgICAgICksXG4gICAgICAgICAgICB0aGlzLmZpbHRlclByZXNldFNlcnZpY2UucHJlc2V0Q2hhbmdlcyQsXG4gICAgICAgICkuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3IubWFya0ZvckNoZWNrKCk7XG4gICAgICAgICAgICB0aGlzLnVwZGF0ZVNlbGVjdGVkRmlsdGVyUHJlc2V0KCk7XG4gICAgICAgIH0pO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLm5leHQoKTtcbiAgICAgICAgdGhpcy5kZXN0cm95JC5jb21wbGV0ZSgpO1xuICAgIH1cblxuICAgIHNhdmVGaWx0ZXJQcmVzZXQoKSB7XG4gICAgICAgIGNvbnN0IG5hbWUgPSB0aGlzLmZpbHRlclByZXNldE5hbWUudmFsdWU7XG4gICAgICAgIGlmICh0aGlzLmZpbHRlcnMgJiYgbmFtZSkge1xuICAgICAgICAgICAgY29uc3QgdmFsdWUgPSB0aGlzLmZpbHRlcnMuc2VyaWFsaXplKCk7XG4gICAgICAgICAgICB0aGlzLmZpbHRlclByZXNldFNlcnZpY2Uuc2F2ZUZpbHRlclByZXNldCh7XG4gICAgICAgICAgICAgICAgZGF0YVRhYmxlSWQ6IHRoaXMuZGF0YVRhYmxlSWQsXG4gICAgICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgICAgICAgICB2YWx1ZSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgdGhpcy5maWx0ZXJQcmVzZXROYW1lLnNldFZhbHVlKCcnKTtcbiAgICAgICAgICAgIHRoaXMuYWRkUHJlc2V0RHJvcGRvd24udG9nZ2xlT3BlbigpO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMudXBkYXRlU2VsZWN0ZWRGaWx0ZXJQcmVzZXQoKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHVwZGF0ZVNlbGVjdGVkRmlsdGVyUHJlc2V0KCkge1xuICAgICAgICB0aGlzLnNlbGVjdGVkRmlsdGVyUHJlc2V0ID0gdGhpcy5maWx0ZXJQcmVzZXRTZXJ2aWNlXG4gICAgICAgICAgICAuZ2V0RmlsdGVyUHJlc2V0cyh0aGlzLmRhdGFUYWJsZUlkKVxuICAgICAgICAgICAgLmZpbmQocCA9PiBwLnZhbHVlID09PSB0aGlzLmZpbHRlcnMuc2VyaWFsaXplKCkpPy5uYW1lO1xuICAgIH1cbn1cbiIsIjx2ZHItZHJvcGRvd24gI2FkZFByZXNldERyb3Bkb3duPlxyXG4gICAgPGJ1dHRvblxyXG4gICAgICAgIGNsYXNzPVwiYWRkLXByZXNldC1idXR0b24gbXQtMVwiXHJcbiAgICAgICAgdmRyRHJvcGRvd25UcmlnZ2VyXHJcbiAgICAgICAgW2NsYXNzLnZpc2libGVdPVwiZmlsdGVycy5hY3RpdmVGaWx0ZXJzLmxlbmd0aCA+IDAgJiYgIXNlbGVjdGVkRmlsdGVyUHJlc2V0XCJcclxuICAgICAgICBbZGlzYWJsZWRdPVwiZmlsdGVycy5hY3RpdmVGaWx0ZXJzLmxlbmd0aCA9PT0gMCB8fCAhIXNlbGVjdGVkRmlsdGVyUHJlc2V0XCJcclxuICAgID5cclxuICAgICAgICA8Y2xyLWljb24gc2hhcGU9XCJmbG9wcHlcIi8+XHJcbiAgICAgICAgPGRpdj57eyAnY29tbW9uLnNhdmUtZmlsdGVyLXByZXNldCcgfCB0cmFuc2xhdGUgfX08L2Rpdj5cclxuICAgIDwvYnV0dG9uPlxyXG4gICAgPHZkci1kcm9wZG93bi1tZW51XHJcbiAgICAgICAgdmRyUG9zaXRpb249XCJib3R0b20tbGVmdFwiXHJcbiAgICAgICAgW2Nka1RyYXBGb2N1c109XCJ0cnVlXCJcclxuICAgICAgICBbY2RrVHJhcEZvY3VzQXV0b0NhcHR1cmVdPVwidHJ1ZVwiXHJcbiAgICA+XHJcbiAgICAgICAgPGZvcm0gY2xhc3M9XCJteC0xXCI+XHJcbiAgICAgICAgICAgIDxkaXY+XHJcbiAgICAgICAgICAgICAgICA8aW5wdXRcclxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXHJcbiAgICAgICAgICAgICAgICAgICAgW3BsYWNlaG9sZGVyXT1cIidjb21tb24uZmlsdGVyLXByZXNldC1uYW1lJyB8IHRyYW5zbGF0ZVwiXHJcbiAgICAgICAgICAgICAgICAgICAgW2Zvcm1Db250cm9sXT1cImZpbHRlclByZXNldE5hbWVcIlxyXG4gICAgICAgICAgICAgICAgLz5cclxuICAgICAgICAgICAgPC9kaXY+XHJcbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJwcmVzZXQtY3JlYXRlLXJvd1wiPlxyXG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImJ1dHRvbiBtdC0yXCIgKGNsaWNrKT1cInNhdmVGaWx0ZXJQcmVzZXQoKVwiPlxyXG4gICAgICAgICAgICAgICAgICAgIHt7ICdjb21tb24uY3JlYXRlJyB8IHRyYW5zbGF0ZSB9fVxyXG4gICAgICAgICAgICAgICAgPC9idXR0b24+XHJcbiAgICAgICAgICAgIDwvZGl2PlxyXG4gICAgICAgIDwvZm9ybT5cclxuICAgIDwvdmRyLWRyb3Bkb3duLW1lbnU+XHJcbjwvdmRyLWRyb3Bkb3duPlxyXG4iXX0=
@@ -0,0 +1,78 @@
1
+ import { ChangeDetectionStrategy, Component, Input } from '@angular/core';
2
+ import { Subject } from 'rxjs';
3
+ import { distinctUntilChanged, map, startWith, takeUntil } from 'rxjs/operators';
4
+ import { RenameFilterPresetDialogComponent } from './rename-filter-preset-dialog.component';
5
+ import * as i0 from "@angular/core";
6
+ import * as i1 from "@angular/router";
7
+ import * as i2 from "./filter-preset.service";
8
+ import * as i3 from "../../../providers/modal/modal.service";
9
+ import * as i4 from "@clr/angular";
10
+ import * as i5 from "@angular/common";
11
+ import * as i6 from "@angular/cdk/drag-drop";
12
+ import * as i7 from "../dropdown/dropdown.component";
13
+ import * as i8 from "../dropdown/dropdown-menu.component";
14
+ import * as i9 from "../dropdown/dropdown-trigger.directive";
15
+ import * as i10 from "../dropdown/dropdown-item.directive";
16
+ import * as i11 from "@ngx-translate/core";
17
+ export class DataTableFilterPresetsComponent {
18
+ constructor(route, filterPresetService, modalService) {
19
+ this.route = route;
20
+ this.filterPresetService = filterPresetService;
21
+ this.modalService = modalService;
22
+ this.destroy$ = new Subject();
23
+ }
24
+ ngOnInit() {
25
+ this.route.queryParamMap
26
+ .pipe(map(qpm => qpm.get('filters')), distinctUntilChanged(), takeUntil(this.destroy$))
27
+ .subscribe(() => {
28
+ this.serializedActiveFilters = this.filters.serialize();
29
+ });
30
+ this.serializedActiveFilters = this.filters.serialize();
31
+ this.filterPresets$ = this.filterPresetService.presetChanges$.pipe(startWith(this.filterPresetService.getFilterPresets(this.dataTableId)));
32
+ }
33
+ ngOnDestroy() {
34
+ this.destroy$.next();
35
+ this.destroy$.complete();
36
+ }
37
+ deleteFilterPreset(name) {
38
+ this.filterPresetService.deleteFilterPreset({
39
+ dataTableId: this.dataTableId,
40
+ name,
41
+ });
42
+ this.serializedActiveFilters = this.filters.serialize();
43
+ }
44
+ renameFilterPreset(name) {
45
+ this.modalService
46
+ .fromComponent(RenameFilterPresetDialogComponent, {
47
+ closable: true,
48
+ locals: {
49
+ name,
50
+ },
51
+ })
52
+ .subscribe(result => {
53
+ if (result) {
54
+ this.filterPresetService.renameFilterPreset({
55
+ dataTableId: this.dataTableId,
56
+ oldName: name,
57
+ newName: result,
58
+ });
59
+ }
60
+ });
61
+ }
62
+ drop(event) {
63
+ this.filterPresetService.reorderPresets(this.dataTableId, event.previousIndex, event.currentIndex);
64
+ }
65
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: DataTableFilterPresetsComponent, deps: [{ token: i1.ActivatedRoute }, { token: i2.FilterPresetService }, { token: i3.ModalService }], target: i0.ɵɵFactoryTarget.Component }); }
66
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: DataTableFilterPresetsComponent, selector: "vdr-data-table-filter-presets", inputs: { dataTableId: "dataTableId", filters: "filters" }, ngImport: i0, template: "<ng-container *ngIf=\"filterPresets$ | async as filterPresets\">\n <div\n class=\"preset-tabs\"\n *ngIf=\"filters && filterPresets.length\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n <div\n *ngFor=\"let preset of filterPresets\"\n class=\"preset-tab\"\n [class.active]=\"preset.value === serializedActiveFilters\"\n cdkDrag\n cdkDragBoundary=\".preset-tabs\"\n cdkDragLockAxis=\"x\"\n >\n <div class=\"drag-handle\" cdkDragHandle>\n <clr-icon shape=\"drag-handle\"></clr-icon>\n </div>\n <a\n [routerLink]=\"['./']\"\n [queryParams]=\"preset.value === serializedActiveFilters ? {} : { filters: preset.value }\"\n >\n <div>{{ preset.name }}</div>\n </a>\n <vdr-dropdown>\n <button class=\"icon-button\" vdrDropdownTrigger>\n <clr-icon shape=\"ellipsis-vertical\" size=\"12\"/>\n </button>\n <vdr-dropdown-menu vdrPosition=\"bottom-left\">\n <button vdrDropdownItem (click)=\"renameFilterPreset(preset.name)\">\n <clr-icon shape=\"edit\"></clr-icon>\n {{ 'common.rename-filter-preset' | translate }}\n </button>\n <button vdrDropdownItem (click)=\"deleteFilterPreset(preset.name)\">\n <clr-icon shape=\"trash\" class=\"is-danger\"></clr-icon>\n {{ 'common.delete' | translate }}\n </button>\n </vdr-dropdown-menu>\n </vdr-dropdown>\n </div>\n </div>\n</ng-container>\n", styles: [".preset-tabs{padding-inline-start:var(--surface-margin-left);margin:var(--space-unit) 0;display:flex;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid var(--color-component-border-100)}.preset-tab{display:flex;align-items:center;gap:calc(var(--space-unit) * .5);font-size:var(--font-size-sm);white-space:nowrap;text-transform:none;padding:0 calc(var(--space-unit) * 1);border-bottom:1px solid var(--color-weight-300);cursor:pointer}.preset-tab>a{padding:calc(var(--space-unit) * 1) 0;padding-inline-end:0;color:var(--color-weight-600)}.preset-tab.active{border-bottom-color:var(--color-text-active)}.preset-tab.active>a{color:var(--color-text-active)}.preset-tab-link{display:flex;align-items:center;gap:calc(var(--space-unit) * .5)}.drag-handle{cursor:move}.cdk-drag-preview{box-sizing:border-box;opacity:.8;background:var(--color-weight-100);box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.preset-tabs.cdk-drop-list-dragging .preset-tab:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"], dependencies: [{ kind: "directive", type: i4.ClrIconCustomTag, selector: "clr-icon" }, { kind: "directive", type: i5.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i5.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i6.CdkDropList, selector: "[cdkDropList], cdk-drop-list", inputs: ["cdkDropListConnectedTo", "cdkDropListData", "cdkDropListOrientation", "id", "cdkDropListLockAxis", "cdkDropListDisabled", "cdkDropListSortingDisabled", "cdkDropListEnterPredicate", "cdkDropListSortPredicate", "cdkDropListAutoScrollDisabled", "cdkDropListAutoScrollStep"], outputs: ["cdkDropListDropped", "cdkDropListEntered", "cdkDropListExited", "cdkDropListSorted"], exportAs: ["cdkDropList"] }, { kind: "directive", type: i6.CdkDrag, selector: "[cdkDrag]", inputs: ["cdkDragData", "cdkDragLockAxis", "cdkDragRootElement", "cdkDragBoundary", "cdkDragStartDelay", "cdkDragFreeDragPosition", "cdkDragDisabled", "cdkDragConstrainPosition", "cdkDragPreviewClass", "cdkDragPreviewContainer"], outputs: ["cdkDragStarted", "cdkDragReleased", "cdkDragEnded", "cdkDragEntered", "cdkDragExited", "cdkDragDropped", "cdkDragMoved"], exportAs: ["cdkDrag"] }, { kind: "directive", type: i6.CdkDragHandle, selector: "[cdkDragHandle]", inputs: ["cdkDragHandleDisabled"] }, { kind: "component", type: i7.DropdownComponent, selector: "vdr-dropdown", inputs: ["manualToggle"] }, { kind: "component", type: i8.DropdownMenuComponent, selector: "vdr-dropdown-menu", inputs: ["vdrPosition", "customClasses"] }, { kind: "directive", type: i9.DropdownTriggerDirective, selector: "[vdrDropdownTrigger]" }, { kind: "directive", type: i10.DropdownItemDirective, selector: "[vdrDropdownItem]" }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i11.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
67
+ }
68
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: DataTableFilterPresetsComponent, decorators: [{
69
+ type: Component,
70
+ args: [{ selector: 'vdr-data-table-filter-presets', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-container *ngIf=\"filterPresets$ | async as filterPresets\">\n <div\n class=\"preset-tabs\"\n *ngIf=\"filters && filterPresets.length\"\n cdkDropList\n cdkDropListOrientation=\"horizontal\"\n (cdkDropListDropped)=\"drop($event)\"\n >\n <div\n *ngFor=\"let preset of filterPresets\"\n class=\"preset-tab\"\n [class.active]=\"preset.value === serializedActiveFilters\"\n cdkDrag\n cdkDragBoundary=\".preset-tabs\"\n cdkDragLockAxis=\"x\"\n >\n <div class=\"drag-handle\" cdkDragHandle>\n <clr-icon shape=\"drag-handle\"></clr-icon>\n </div>\n <a\n [routerLink]=\"['./']\"\n [queryParams]=\"preset.value === serializedActiveFilters ? {} : { filters: preset.value }\"\n >\n <div>{{ preset.name }}</div>\n </a>\n <vdr-dropdown>\n <button class=\"icon-button\" vdrDropdownTrigger>\n <clr-icon shape=\"ellipsis-vertical\" size=\"12\"/>\n </button>\n <vdr-dropdown-menu vdrPosition=\"bottom-left\">\n <button vdrDropdownItem (click)=\"renameFilterPreset(preset.name)\">\n <clr-icon shape=\"edit\"></clr-icon>\n {{ 'common.rename-filter-preset' | translate }}\n </button>\n <button vdrDropdownItem (click)=\"deleteFilterPreset(preset.name)\">\n <clr-icon shape=\"trash\" class=\"is-danger\"></clr-icon>\n {{ 'common.delete' | translate }}\n </button>\n </vdr-dropdown-menu>\n </vdr-dropdown>\n </div>\n </div>\n</ng-container>\n", styles: [".preset-tabs{padding-inline-start:var(--surface-margin-left);margin:var(--space-unit) 0;display:flex;overflow-x:auto;overflow-y:hidden;border-bottom:1px solid var(--color-component-border-100)}.preset-tab{display:flex;align-items:center;gap:calc(var(--space-unit) * .5);font-size:var(--font-size-sm);white-space:nowrap;text-transform:none;padding:0 calc(var(--space-unit) * 1);border-bottom:1px solid var(--color-weight-300);cursor:pointer}.preset-tab>a{padding:calc(var(--space-unit) * 1) 0;padding-inline-end:0;color:var(--color-weight-600)}.preset-tab.active{border-bottom-color:var(--color-text-active)}.preset-tab.active>a{color:var(--color-text-active)}.preset-tab-link{display:flex;align-items:center;gap:calc(var(--space-unit) * .5)}.drag-handle{cursor:move}.cdk-drag-preview{box-sizing:border-box;opacity:.8;background:var(--color-weight-100);box-shadow:0 5px 5px -3px #0003,0 8px 10px 1px #00000024,0 3px 14px 2px #0000001f}.cdk-drag-placeholder{opacity:0}.cdk-drag-animating{transition:transform .25s cubic-bezier(0,0,.2,1)}.preset-tabs.cdk-drop-list-dragging .preset-tab:not(.cdk-drag-placeholder){transition:transform .25s cubic-bezier(0,0,.2,1)}\n"] }]
71
+ }], ctorParameters: function () { return [{ type: i1.ActivatedRoute }, { type: i2.FilterPresetService }, { type: i3.ModalService }]; }, propDecorators: { dataTableId: [{
72
+ type: Input,
73
+ args: [{ required: true }]
74
+ }], filters: [{
75
+ type: Input,
76
+ args: [{ required: true }]
77
+ }] } });
78
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGF0YS10YWJsZS1maWx0ZXItcHJlc2V0cy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL3NoYXJlZC9jb21wb25lbnRzL2RhdGEtdGFibGUtZmlsdGVyLXByZXNldHMvZGF0YS10YWJsZS1maWx0ZXItcHJlc2V0cy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvbGliL2NvcmUvc3JjL3NoYXJlZC9jb21wb25lbnRzL2RhdGEtdGFibGUtZmlsdGVyLXByZXNldHMvZGF0YS10YWJsZS1maWx0ZXItcHJlc2V0cy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLEtBQUssRUFBcUIsTUFBTSxlQUFlLENBQUM7QUFFN0YsT0FBTyxFQUFjLE9BQU8sRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUMzQyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBRSxTQUFTLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUlqRixPQUFPLEVBQUUsaUNBQWlDLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQzs7Ozs7Ozs7Ozs7OztBQVE1RixNQUFNLE9BQU8sK0JBQStCO0lBUXhDLFlBQ1ksS0FBcUIsRUFDckIsbUJBQXdDLEVBQ3hDLFlBQTBCO1FBRjFCLFVBQUssR0FBTCxLQUFLLENBQWdCO1FBQ3JCLHdCQUFtQixHQUFuQixtQkFBbUIsQ0FBcUI7UUFDeEMsaUJBQVksR0FBWixZQUFZLENBQWM7UUFMOUIsYUFBUSxHQUFHLElBQUksT0FBTyxFQUFRLENBQUM7SUFNcEMsQ0FBQztJQUNKLFFBQVE7UUFDSixJQUFJLENBQUMsS0FBSyxDQUFDLGFBQWE7YUFDbkIsSUFBSSxDQUNELEdBQUcsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUMsRUFDOUIsb0JBQW9CLEVBQUUsRUFDdEIsU0FBUyxDQUFDLElBQUksQ0FBQyxRQUFRLENBQUMsQ0FDM0I7YUFDQSxTQUFTLENBQUMsR0FBRyxFQUFFO1lBQ1osSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUM7UUFDNUQsQ0FBQyxDQUFDLENBQUM7UUFDUCxJQUFJLENBQUMsdUJBQXVCLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxTQUFTLEVBQUUsQ0FBQztRQUV4RCxJQUFJLENBQUMsY0FBYyxHQUFHLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUM5RCxTQUFTLENBQUMsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGdCQUFnQixDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUN6RSxDQUFDO0lBQ04sQ0FBQztJQUVELFdBQVc7UUFDUCxJQUFJLENBQUMsUUFBUSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ3JCLElBQUksQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDN0IsQ0FBQztJQUVELGtCQUFrQixDQUFDLElBQVk7UUFDM0IsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGtCQUFrQixDQUFDO1lBQ3hDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztZQUM3QixJQUFJO1NBQ1AsQ0FBQyxDQUFDO1FBQ0gsSUFBSSxDQUFDLHVCQUF1QixHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxFQUFFLENBQUM7SUFDNUQsQ0FBQztJQUVELGtCQUFrQixDQUFDLElBQVk7UUFDM0IsSUFBSSxDQUFDLFlBQVk7YUFDWixhQUFhLENBQUMsaUNBQWlDLEVBQUU7WUFDOUMsUUFBUSxFQUFFLElBQUk7WUFDZCxNQUFNLEVBQUU7Z0JBQ0osSUFBSTthQUNQO1NBQ0osQ0FBQzthQUNELFNBQVMsQ0FBQyxNQUFNLENBQUMsRUFBRTtZQUNoQixJQUFJLE1BQU0sRUFBRTtnQkFDUixJQUFJLENBQUMsbUJBQW1CLENBQUMsa0JBQWtCLENBQUM7b0JBQ3hDLFdBQVcsRUFBRSxJQUFJLENBQUMsV0FBVztvQkFDN0IsT0FBTyxFQUFFLElBQUk7b0JBQ2IsT0FBTyxFQUFFLE1BQU07aUJBQ2xCLENBQUMsQ0FBQzthQUNOO1FBQ0wsQ0FBQyxDQUFDLENBQUM7SUFDWCxDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQXVCO1FBQ3hCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxLQUFLLENBQUMsYUFBYSxFQUFFLEtBQUssQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUN2RyxDQUFDOzhHQWhFUSwrQkFBK0I7a0dBQS9CLCtCQUErQixpSUNoQjVDLGd6REEyQ0E7OzJGRDNCYSwrQkFBK0I7a0JBTjNDLFNBQVM7K0JBQ0ksK0JBQStCLG1CQUd4Qix1QkFBdUIsQ0FBQyxNQUFNO2tLQUdwQixXQUFXO3NCQUFyQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRTtnQkFDRSxPQUFPO3NCQUFqQyxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0RyYWdEcm9wIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RyYWctZHJvcCc7XG5pbXBvcnQgeyBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgT25EZXN0cm95LCBPbkluaXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IGRpc3RpbmN0VW50aWxDaGFuZ2VkLCBtYXAsIHN0YXJ0V2l0aCwgdGFrZVVudGlsIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgRGF0YVRhYmxlRmlsdGVyQ29sbGVjdGlvbiB9IGZyb20gJy4uLy4uLy4uL3Byb3ZpZGVycy9kYXRhLXRhYmxlL2RhdGEtdGFibGUtZmlsdGVyLWNvbGxlY3Rpb24nO1xuaW1wb3J0IHsgTW9kYWxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vcHJvdmlkZXJzL21vZGFsL21vZGFsLnNlcnZpY2UnO1xuaW1wb3J0IHsgRmlsdGVyUHJlc2V0U2VydmljZSB9IGZyb20gJy4vZmlsdGVyLXByZXNldC5zZXJ2aWNlJztcbmltcG9ydCB7IFJlbmFtZUZpbHRlclByZXNldERpYWxvZ0NvbXBvbmVudCB9IGZyb20gJy4vcmVuYW1lLWZpbHRlci1wcmVzZXQtZGlhbG9nLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndmRyLWRhdGEtdGFibGUtZmlsdGVyLXByZXNldHMnLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9kYXRhLXRhYmxlLWZpbHRlci1wcmVzZXRzLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9kYXRhLXRhYmxlLWZpbHRlci1wcmVzZXRzLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIERhdGFUYWJsZUZpbHRlclByZXNldHNDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG4gICAgQElucHV0KHsgcmVxdWlyZWQ6IHRydWUgfSkgZGF0YVRhYmxlSWQ6IHN0cmluZztcbiAgICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBmaWx0ZXJzOiBEYXRhVGFibGVGaWx0ZXJDb2xsZWN0aW9uO1xuICAgIHNlcmlhbGl6ZWRBY3RpdmVGaWx0ZXJzOiBzdHJpbmc7XG4gICAgZmlsdGVyUHJlc2V0cyQ6IE9ic2VydmFibGU8QXJyYXk8eyBuYW1lOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfT4+O1xuXG4gICAgcHJpdmF0ZSBkZXN0cm95JCA9IG5ldyBTdWJqZWN0PHZvaWQ+KCk7XG5cbiAgICBjb25zdHJ1Y3RvcihcbiAgICAgICAgcHJpdmF0ZSByb3V0ZTogQWN0aXZhdGVkUm91dGUsXG4gICAgICAgIHByaXZhdGUgZmlsdGVyUHJlc2V0U2VydmljZTogRmlsdGVyUHJlc2V0U2VydmljZSxcbiAgICAgICAgcHJpdmF0ZSBtb2RhbFNlcnZpY2U6IE1vZGFsU2VydmljZSxcbiAgICApIHt9XG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMucm91dGUucXVlcnlQYXJhbU1hcFxuICAgICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICAgICAgbWFwKHFwbSA9PiBxcG0uZ2V0KCdmaWx0ZXJzJykpLFxuICAgICAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgICAgICAgdGFrZVVudGlsKHRoaXMuZGVzdHJveSQpLFxuICAgICAgICAgICAgKVxuICAgICAgICAgICAgLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgICAgICAgICAgdGhpcy5zZXJpYWxpemVkQWN0aXZlRmlsdGVycyA9IHRoaXMuZmlsdGVycy5zZXJpYWxpemUoKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB0aGlzLnNlcmlhbGl6ZWRBY3RpdmVGaWx0ZXJzID0gdGhpcy5maWx0ZXJzLnNlcmlhbGl6ZSgpO1xuXG4gICAgICAgIHRoaXMuZmlsdGVyUHJlc2V0cyQgPSB0aGlzLmZpbHRlclByZXNldFNlcnZpY2UucHJlc2V0Q2hhbmdlcyQucGlwZShcbiAgICAgICAgICAgIHN0YXJ0V2l0aCh0aGlzLmZpbHRlclByZXNldFNlcnZpY2UuZ2V0RmlsdGVyUHJlc2V0cyh0aGlzLmRhdGFUYWJsZUlkKSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgbmdPbkRlc3Ryb3koKSB7XG4gICAgICAgIHRoaXMuZGVzdHJveSQubmV4dCgpO1xuICAgICAgICB0aGlzLmRlc3Ryb3kkLmNvbXBsZXRlKCk7XG4gICAgfVxuXG4gICAgZGVsZXRlRmlsdGVyUHJlc2V0KG5hbWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLmZpbHRlclByZXNldFNlcnZpY2UuZGVsZXRlRmlsdGVyUHJlc2V0KHtcbiAgICAgICAgICAgIGRhdGFUYWJsZUlkOiB0aGlzLmRhdGFUYWJsZUlkLFxuICAgICAgICAgICAgbmFtZSxcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuc2VyaWFsaXplZEFjdGl2ZUZpbHRlcnMgPSB0aGlzLmZpbHRlcnMuc2VyaWFsaXplKCk7XG4gICAgfVxuXG4gICAgcmVuYW1lRmlsdGVyUHJlc2V0KG5hbWU6IHN0cmluZykge1xuICAgICAgICB0aGlzLm1vZGFsU2VydmljZVxuICAgICAgICAgICAgLmZyb21Db21wb25lbnQoUmVuYW1lRmlsdGVyUHJlc2V0RGlhbG9nQ29tcG9uZW50LCB7XG4gICAgICAgICAgICAgICAgY2xvc2FibGU6IHRydWUsXG4gICAgICAgICAgICAgICAgbG9jYWxzOiB7XG4gICAgICAgICAgICAgICAgICAgIG5hbWUsXG4gICAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0pXG4gICAgICAgICAgICAuc3Vic2NyaWJlKHJlc3VsdCA9PiB7XG4gICAgICAgICAgICAgICAgaWYgKHJlc3VsdCkge1xuICAgICAgICAgICAgICAgICAgICB0aGlzLmZpbHRlclByZXNldFNlcnZpY2UucmVuYW1lRmlsdGVyUHJlc2V0KHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGRhdGFUYWJsZUlkOiB0aGlzLmRhdGFUYWJsZUlkLFxuICAgICAgICAgICAgICAgICAgICAgICAgb2xkTmFtZTogbmFtZSxcbiAgICAgICAgICAgICAgICAgICAgICAgIG5ld05hbWU6IHJlc3VsdCxcbiAgICAgICAgICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgZHJvcChldmVudDogQ2RrRHJhZ0Ryb3A8YW55Pikge1xuICAgICAgICB0aGlzLmZpbHRlclByZXNldFNlcnZpY2UucmVvcmRlclByZXNldHModGhpcy5kYXRhVGFibGVJZCwgZXZlbnQucHJldmlvdXNJbmRleCwgZXZlbnQuY3VycmVudEluZGV4KTtcbiAgICB9XG59XG4iLCI8bmctY29udGFpbmVyICpuZ0lmPVwiZmlsdGVyUHJlc2V0cyQgfCBhc3luYyBhcyBmaWx0ZXJQcmVzZXRzXCI+XG4gICAgPGRpdlxuICAgICAgICBjbGFzcz1cInByZXNldC10YWJzXCJcbiAgICAgICAgKm5nSWY9XCJmaWx0ZXJzICYmIGZpbHRlclByZXNldHMubGVuZ3RoXCJcbiAgICAgICAgY2RrRHJvcExpc3RcbiAgICAgICAgY2RrRHJvcExpc3RPcmllbnRhdGlvbj1cImhvcml6b250YWxcIlxuICAgICAgICAoY2RrRHJvcExpc3REcm9wcGVkKT1cImRyb3AoJGV2ZW50KVwiXG4gICAgPlxuICAgICAgICA8ZGl2XG4gICAgICAgICAgICAqbmdGb3I9XCJsZXQgcHJlc2V0IG9mIGZpbHRlclByZXNldHNcIlxuICAgICAgICAgICAgY2xhc3M9XCJwcmVzZXQtdGFiXCJcbiAgICAgICAgICAgIFtjbGFzcy5hY3RpdmVdPVwicHJlc2V0LnZhbHVlID09PSBzZXJpYWxpemVkQWN0aXZlRmlsdGVyc1wiXG4gICAgICAgICAgICBjZGtEcmFnXG4gICAgICAgICAgICBjZGtEcmFnQm91bmRhcnk9XCIucHJlc2V0LXRhYnNcIlxuICAgICAgICAgICAgY2RrRHJhZ0xvY2tBeGlzPVwieFwiXG4gICAgICAgID5cbiAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJkcmFnLWhhbmRsZVwiIGNka0RyYWdIYW5kbGU+XG4gICAgICAgICAgICAgICAgPGNsci1pY29uIHNoYXBlPVwiZHJhZy1oYW5kbGVcIj48L2Nsci1pY29uPlxuICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8YVxuICAgICAgICAgICAgICAgIFtyb3V0ZXJMaW5rXT1cIlsnLi8nXVwiXG4gICAgICAgICAgICAgICAgW3F1ZXJ5UGFyYW1zXT1cInByZXNldC52YWx1ZSA9PT0gc2VyaWFsaXplZEFjdGl2ZUZpbHRlcnMgPyB7fSA6IHsgZmlsdGVyczogcHJlc2V0LnZhbHVlIH1cIlxuICAgICAgICAgICAgPlxuICAgICAgICAgICAgICAgIDxkaXY+e3sgcHJlc2V0Lm5hbWUgfX08L2Rpdj5cbiAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDx2ZHItZHJvcGRvd24+XG4gICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz1cImljb24tYnV0dG9uXCIgdmRyRHJvcGRvd25UcmlnZ2VyPlxuICAgICAgICAgICAgICAgICAgICA8Y2xyLWljb24gc2hhcGU9XCJlbGxpcHNpcy12ZXJ0aWNhbFwiIHNpemU9XCIxMlwiLz5cbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICA8dmRyLWRyb3Bkb3duLW1lbnUgdmRyUG9zaXRpb249XCJib3R0b20tbGVmdFwiPlxuICAgICAgICAgICAgICAgICAgICA8YnV0dG9uIHZkckRyb3Bkb3duSXRlbSAoY2xpY2spPVwicmVuYW1lRmlsdGVyUHJlc2V0KHByZXNldC5uYW1lKVwiPlxuICAgICAgICAgICAgICAgICAgICAgICAgPGNsci1pY29uIHNoYXBlPVwiZWRpdFwiPjwvY2xyLWljb24+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyAnY29tbW9uLnJlbmFtZS1maWx0ZXItcHJlc2V0JyB8IHRyYW5zbGF0ZSB9fVxuICAgICAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiB2ZHJEcm9wZG93bkl0ZW0gKGNsaWNrKT1cImRlbGV0ZUZpbHRlclByZXNldChwcmVzZXQubmFtZSlcIj5cbiAgICAgICAgICAgICAgICAgICAgICAgIDxjbHItaWNvbiBzaGFwZT1cInRyYXNoXCIgY2xhc3M9XCJpcy1kYW5nZXJcIj48L2Nsci1pY29uPlxuICAgICAgICAgICAgICAgICAgICAgICAge3sgJ2NvbW1vbi5kZWxldGUnIHwgdHJhbnNsYXRlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvdmRyLWRyb3Bkb3duLW1lbnU+XG4gICAgICAgICAgICA8L3Zkci1kcm9wZG93bj5cbiAgICAgICAgPC9kaXY+XG4gICAgPC9kaXY+XG48L25nLWNvbnRhaW5lcj5cbiJdfQ==
@@ -0,0 +1,79 @@
1
+ import { moveItemInArray } from '@angular/cdk/drag-drop';
2
+ import { Injectable } from '@angular/core';
3
+ import { Subject } from 'rxjs';
4
+ import * as i0 from "@angular/core";
5
+ import * as i1 from "../../../providers/local-storage/local-storage.service";
6
+ export class FilterPresetService {
7
+ constructor(localStorageService) {
8
+ this.localStorageService = localStorageService;
9
+ this._presetChanges = new Subject();
10
+ this.presetChanges$ = this._presetChanges.asObservable();
11
+ }
12
+ getDataTableConfig(dataTableId) {
13
+ const dataTableConfig = this.localStorageService.get('dataTableConfig') ?? {};
14
+ if (!dataTableConfig[dataTableId]) {
15
+ dataTableConfig[dataTableId] = {
16
+ visibility: [],
17
+ order: {},
18
+ showSearchFilterRow: false,
19
+ filterPresets: [],
20
+ };
21
+ }
22
+ return dataTableConfig;
23
+ }
24
+ getFilterPresets(dataTableId) {
25
+ const dataTableConfig = this.getDataTableConfig(dataTableId);
26
+ return dataTableConfig[dataTableId].filterPresets ?? [];
27
+ }
28
+ saveFilterPreset(config) {
29
+ const dataTableConfig = this.getDataTableConfig(config.dataTableId);
30
+ const filterPresets = dataTableConfig[config.dataTableId].filterPresets ?? [];
31
+ const existingName = filterPresets.find(p => p.name === config.name);
32
+ if (existingName) {
33
+ existingName.value = config.value;
34
+ }
35
+ else {
36
+ filterPresets.push({
37
+ name: config.name,
38
+ value: config.value,
39
+ });
40
+ }
41
+ dataTableConfig[config.dataTableId].filterPresets = filterPresets;
42
+ this.localStorageService.set('dataTableConfig', dataTableConfig);
43
+ this._presetChanges.next(filterPresets);
44
+ }
45
+ deleteFilterPreset(config) {
46
+ const dataTableConfig = this.getDataTableConfig(config.dataTableId);
47
+ dataTableConfig[config.dataTableId].filterPresets = dataTableConfig[config.dataTableId].filterPresets.filter(p => p.name !== config.name);
48
+ this.localStorageService.set('dataTableConfig', dataTableConfig);
49
+ this._presetChanges.next(dataTableConfig[config.dataTableId].filterPresets);
50
+ }
51
+ reorderPresets(dataTableId, fromIndex, toIndex) {
52
+ const presets = this.getFilterPresets(dataTableId);
53
+ moveItemInArray(presets, fromIndex, toIndex);
54
+ const dataTableConfig = this.getDataTableConfig(dataTableId);
55
+ dataTableConfig[dataTableId].filterPresets = presets;
56
+ this.localStorageService.set('dataTableConfig', dataTableConfig);
57
+ this._presetChanges.next(presets);
58
+ }
59
+ renameFilterPreset(config) {
60
+ const dataTableConfig = this.getDataTableConfig(config.dataTableId);
61
+ const filterPresets = dataTableConfig[config.dataTableId].filterPresets ?? [];
62
+ const existingName = filterPresets.find(p => p.name === config.oldName);
63
+ if (existingName) {
64
+ existingName.name = config.newName;
65
+ dataTableConfig[config.dataTableId].filterPresets = filterPresets;
66
+ this.localStorageService.set('dataTableConfig', dataTableConfig);
67
+ this._presetChanges.next(filterPresets);
68
+ }
69
+ }
70
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: FilterPresetService, deps: [{ token: i1.LocalStorageService }], target: i0.ɵɵFactoryTarget.Injectable }); }
71
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: FilterPresetService, providedIn: 'root' }); }
72
+ }
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: FilterPresetService, decorators: [{
74
+ type: Injectable,
75
+ args: [{
76
+ providedIn: 'root',
77
+ }]
78
+ }], ctorParameters: function () { return [{ type: i1.LocalStorageService }]; } });
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsdGVyLXByZXNldC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9zaGFyZWQvY29tcG9uZW50cy9kYXRhLXRhYmxlLWZpbHRlci1wcmVzZXRzL2ZpbHRlci1wcmVzZXQuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDekQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMzQyxPQUFPLEVBQWMsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDOzs7QUFNM0MsTUFBTSxPQUFPLG1CQUFtQjtJQUk1QixZQUFvQixtQkFBd0M7UUFBeEMsd0JBQW1CLEdBQW5CLG1CQUFtQixDQUFxQjtRQUZwRCxtQkFBYyxHQUFHLElBQUksT0FBTyxFQUEwQyxDQUFDO1FBRzNFLElBQUksQ0FBQyxjQUFjLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxZQUFZLEVBQUUsQ0FBQztJQUM3RCxDQUFDO0lBRVMsa0JBQWtCLENBQUMsV0FBbUI7UUFDNUMsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsQ0FBQztRQUM5RSxJQUFJLENBQUMsZUFBZSxDQUFDLFdBQVcsQ0FBQyxFQUFFO1lBQy9CLGVBQWUsQ0FBQyxXQUFXLENBQUMsR0FBRztnQkFDM0IsVUFBVSxFQUFFLEVBQUU7Z0JBQ2QsS0FBSyxFQUFFLEVBQUU7Z0JBQ1QsbUJBQW1CLEVBQUUsS0FBSztnQkFDMUIsYUFBYSxFQUFFLEVBQUU7YUFDcEIsQ0FBQztTQUNMO1FBQ0QsT0FBTyxlQUFlLENBQUM7SUFDM0IsQ0FBQztJQUVELGdCQUFnQixDQUFDLFdBQW1CO1FBQ2hDLE1BQU0sZUFBZSxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUM3RCxPQUFPLGVBQWUsQ0FBQyxXQUFXLENBQUMsQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDO0lBQzVELENBQUM7SUFFRCxnQkFBZ0IsQ0FBQyxNQUE0RDtRQUN6RSxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ3BFLE1BQU0sYUFBYSxHQUFHLGVBQWUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsYUFBYSxJQUFJLEVBQUUsQ0FBQztRQUM5RSxNQUFNLFlBQVksR0FBRyxhQUFhLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksS0FBSyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDckUsSUFBSSxZQUFZLEVBQUU7WUFDZCxZQUFZLENBQUMsS0FBSyxHQUFHLE1BQU0sQ0FBQyxLQUFLLENBQUM7U0FDckM7YUFBTTtZQUNILGFBQWEsQ0FBQyxJQUFJLENBQUM7Z0JBQ2YsSUFBSSxFQUFFLE1BQU0sQ0FBQyxJQUFJO2dCQUNqQixLQUFLLEVBQUUsTUFBTSxDQUFDLEtBQUs7YUFDdEIsQ0FBQyxDQUFDO1NBQ047UUFDRCxlQUFlLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7UUFDbEUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsa0JBQWtCLENBQUMsTUFBNkM7UUFDNUQsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNwRSxlQUFlLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLGFBQWEsR0FBRyxlQUFlLENBQy9ELE1BQU0sQ0FBQyxXQUFXLENBQ3JCLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3BELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxHQUFHLENBQUMsaUJBQWlCLEVBQUUsZUFBZSxDQUFDLENBQUM7UUFDakUsSUFBSSxDQUFDLGNBQWMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQyxhQUFhLENBQUMsQ0FBQztJQUNoRixDQUFDO0lBRUQsY0FBYyxDQUFDLFdBQW1CLEVBQUUsU0FBaUIsRUFBRSxPQUFlO1FBQ2xFLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNuRCxlQUFlLENBQUMsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM3QyxNQUFNLGVBQWUsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsV0FBVyxDQUFDLENBQUM7UUFDN0QsZUFBZSxDQUFDLFdBQVcsQ0FBQyxDQUFDLGFBQWEsR0FBRyxPQUFPLENBQUM7UUFDckQsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEdBQUcsQ0FBQyxpQkFBaUIsRUFBRSxlQUFlLENBQUMsQ0FBQztRQUNqRSxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsa0JBQWtCLENBQUMsTUFBaUU7UUFDaEYsTUFBTSxlQUFlLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQztRQUNwRSxNQUFNLGFBQWEsR0FBRyxlQUFlLENBQUMsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDLGFBQWEsSUFBSSxFQUFFLENBQUM7UUFDOUUsTUFBTSxZQUFZLEdBQUcsYUFBYSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDO1FBQ3hFLElBQUksWUFBWSxFQUFFO1lBQ2QsWUFBWSxDQUFDLElBQUksR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO1lBQ25DLGVBQWUsQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUMsYUFBYSxHQUFHLGFBQWEsQ0FBQztZQUNsRSxJQUFJLENBQUMsbUJBQW1CLENBQUMsR0FBRyxDQUFDLGlCQUFpQixFQUFFLGVBQWUsQ0FBQyxDQUFDO1lBQ2pFLElBQUksQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1NBQzNDO0lBQ0wsQ0FBQzs4R0F2RVEsbUJBQW1CO2tIQUFuQixtQkFBbUIsY0FGaEIsTUFBTTs7MkZBRVQsbUJBQW1CO2tCQUgvQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IG1vdmVJdGVtSW5BcnJheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9kcmFnLWRyb3AnO1xuaW1wb3J0IHsgSW5qZWN0YWJsZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSwgU3ViamVjdCB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRGF0YVRhYmxlQ29uZmlnLCBMb2NhbFN0b3JhZ2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vcHJvdmlkZXJzL2xvY2FsLXN0b3JhZ2UvbG9jYWwtc3RvcmFnZS5zZXJ2aWNlJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgRmlsdGVyUHJlc2V0U2VydmljZSB7XG4gICAgcHJlc2V0Q2hhbmdlcyQ6IE9ic2VydmFibGU8QXJyYXk8eyBuYW1lOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfT4+O1xuICAgIHByaXZhdGUgX3ByZXNldENoYW5nZXMgPSBuZXcgU3ViamVjdDxBcnJheTx7IG5hbWU6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9Pj4oKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgbG9jYWxTdG9yYWdlU2VydmljZTogTG9jYWxTdG9yYWdlU2VydmljZSkge1xuICAgICAgICB0aGlzLnByZXNldENoYW5nZXMkID0gdGhpcy5fcHJlc2V0Q2hhbmdlcy5hc09ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBwcm90ZWN0ZWQgZ2V0RGF0YVRhYmxlQ29uZmlnKGRhdGFUYWJsZUlkOiBzdHJpbmcpOiBEYXRhVGFibGVDb25maWcge1xuICAgICAgICBjb25zdCBkYXRhVGFibGVDb25maWcgPSB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2UuZ2V0KCdkYXRhVGFibGVDb25maWcnKSA/PyB7fTtcbiAgICAgICAgaWYgKCFkYXRhVGFibGVDb25maWdbZGF0YVRhYmxlSWRdKSB7XG4gICAgICAgICAgICBkYXRhVGFibGVDb25maWdbZGF0YVRhYmxlSWRdID0ge1xuICAgICAgICAgICAgICAgIHZpc2liaWxpdHk6IFtdLFxuICAgICAgICAgICAgICAgIG9yZGVyOiB7fSxcbiAgICAgICAgICAgICAgICBzaG93U2VhcmNoRmlsdGVyUm93OiBmYWxzZSxcbiAgICAgICAgICAgICAgICBmaWx0ZXJQcmVzZXRzOiBbXSxcbiAgICAgICAgICAgIH07XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGRhdGFUYWJsZUNvbmZpZztcbiAgICB9XG5cbiAgICBnZXRGaWx0ZXJQcmVzZXRzKGRhdGFUYWJsZUlkOiBzdHJpbmcpOiBBcnJheTx7IG5hbWU6IHN0cmluZzsgdmFsdWU6IHN0cmluZyB9PiB7XG4gICAgICAgIGNvbnN0IGRhdGFUYWJsZUNvbmZpZyA9IHRoaXMuZ2V0RGF0YVRhYmxlQ29uZmlnKGRhdGFUYWJsZUlkKTtcbiAgICAgICAgcmV0dXJuIGRhdGFUYWJsZUNvbmZpZ1tkYXRhVGFibGVJZF0uZmlsdGVyUHJlc2V0cyA/PyBbXTtcbiAgICB9XG5cbiAgICBzYXZlRmlsdGVyUHJlc2V0KGNvbmZpZzogeyBkYXRhVGFibGVJZDogc3RyaW5nOyBuYW1lOiBzdHJpbmc7IHZhbHVlOiBzdHJpbmcgfSkge1xuICAgICAgICBjb25zdCBkYXRhVGFibGVDb25maWcgPSB0aGlzLmdldERhdGFUYWJsZUNvbmZpZyhjb25maWcuZGF0YVRhYmxlSWQpO1xuICAgICAgICBjb25zdCBmaWx0ZXJQcmVzZXRzID0gZGF0YVRhYmxlQ29uZmlnW2NvbmZpZy5kYXRhVGFibGVJZF0uZmlsdGVyUHJlc2V0cyA/PyBbXTtcbiAgICAgICAgY29uc3QgZXhpc3RpbmdOYW1lID0gZmlsdGVyUHJlc2V0cy5maW5kKHAgPT4gcC5uYW1lID09PSBjb25maWcubmFtZSk7XG4gICAgICAgIGlmIChleGlzdGluZ05hbWUpIHtcbiAgICAgICAgICAgIGV4aXN0aW5nTmFtZS52YWx1ZSA9IGNvbmZpZy52YWx1ZTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGZpbHRlclByZXNldHMucHVzaCh7XG4gICAgICAgICAgICAgICAgbmFtZTogY29uZmlnLm5hbWUsXG4gICAgICAgICAgICAgICAgdmFsdWU6IGNvbmZpZy52YWx1ZSxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGRhdGFUYWJsZUNvbmZpZ1tjb25maWcuZGF0YVRhYmxlSWRdLmZpbHRlclByZXNldHMgPSBmaWx0ZXJQcmVzZXRzO1xuICAgICAgICB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2Uuc2V0KCdkYXRhVGFibGVDb25maWcnLCBkYXRhVGFibGVDb25maWcpO1xuICAgICAgICB0aGlzLl9wcmVzZXRDaGFuZ2VzLm5leHQoZmlsdGVyUHJlc2V0cyk7XG4gICAgfVxuXG4gICAgZGVsZXRlRmlsdGVyUHJlc2V0KGNvbmZpZzogeyBkYXRhVGFibGVJZDogc3RyaW5nOyBuYW1lOiBzdHJpbmcgfSkge1xuICAgICAgICBjb25zdCBkYXRhVGFibGVDb25maWcgPSB0aGlzLmdldERhdGFUYWJsZUNvbmZpZyhjb25maWcuZGF0YVRhYmxlSWQpO1xuICAgICAgICBkYXRhVGFibGVDb25maWdbY29uZmlnLmRhdGFUYWJsZUlkXS5maWx0ZXJQcmVzZXRzID0gZGF0YVRhYmxlQ29uZmlnW1xuICAgICAgICAgICAgY29uZmlnLmRhdGFUYWJsZUlkXG4gICAgICAgIF0uZmlsdGVyUHJlc2V0cy5maWx0ZXIocCA9PiBwLm5hbWUgIT09IGNvbmZpZy5uYW1lKTtcbiAgICAgICAgdGhpcy5sb2NhbFN0b3JhZ2VTZXJ2aWNlLnNldCgnZGF0YVRhYmxlQ29uZmlnJywgZGF0YVRhYmxlQ29uZmlnKTtcbiAgICAgICAgdGhpcy5fcHJlc2V0Q2hhbmdlcy5uZXh0KGRhdGFUYWJsZUNvbmZpZ1tjb25maWcuZGF0YVRhYmxlSWRdLmZpbHRlclByZXNldHMpO1xuICAgIH1cblxuICAgIHJlb3JkZXJQcmVzZXRzKGRhdGFUYWJsZUlkOiBzdHJpbmcsIGZyb21JbmRleDogbnVtYmVyLCB0b0luZGV4OiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgcHJlc2V0cyA9IHRoaXMuZ2V0RmlsdGVyUHJlc2V0cyhkYXRhVGFibGVJZCk7XG4gICAgICAgIG1vdmVJdGVtSW5BcnJheShwcmVzZXRzLCBmcm9tSW5kZXgsIHRvSW5kZXgpO1xuICAgICAgICBjb25zdCBkYXRhVGFibGVDb25maWcgPSB0aGlzLmdldERhdGFUYWJsZUNvbmZpZyhkYXRhVGFibGVJZCk7XG4gICAgICAgIGRhdGFUYWJsZUNvbmZpZ1tkYXRhVGFibGVJZF0uZmlsdGVyUHJlc2V0cyA9IHByZXNldHM7XG4gICAgICAgIHRoaXMubG9jYWxTdG9yYWdlU2VydmljZS5zZXQoJ2RhdGFUYWJsZUNvbmZpZycsIGRhdGFUYWJsZUNvbmZpZyk7XG4gICAgICAgIHRoaXMuX3ByZXNldENoYW5nZXMubmV4dChwcmVzZXRzKTtcbiAgICB9XG5cbiAgICByZW5hbWVGaWx0ZXJQcmVzZXQoY29uZmlnOiB7IGRhdGFUYWJsZUlkOiBzdHJpbmc7IG9sZE5hbWU6IHN0cmluZzsgbmV3TmFtZTogc3RyaW5nIH0pIHtcbiAgICAgICAgY29uc3QgZGF0YVRhYmxlQ29uZmlnID0gdGhpcy5nZXREYXRhVGFibGVDb25maWcoY29uZmlnLmRhdGFUYWJsZUlkKTtcbiAgICAgICAgY29uc3QgZmlsdGVyUHJlc2V0cyA9IGRhdGFUYWJsZUNvbmZpZ1tjb25maWcuZGF0YVRhYmxlSWRdLmZpbHRlclByZXNldHMgPz8gW107XG4gICAgICAgIGNvbnN0IGV4aXN0aW5nTmFtZSA9IGZpbHRlclByZXNldHMuZmluZChwID0+IHAubmFtZSA9PT0gY29uZmlnLm9sZE5hbWUpO1xuICAgICAgICBpZiAoZXhpc3RpbmdOYW1lKSB7XG4gICAgICAgICAgICBleGlzdGluZ05hbWUubmFtZSA9IGNvbmZpZy5uZXdOYW1lO1xuICAgICAgICAgICAgZGF0YVRhYmxlQ29uZmlnW2NvbmZpZy5kYXRhVGFibGVJZF0uZmlsdGVyUHJlc2V0cyA9IGZpbHRlclByZXNldHM7XG4gICAgICAgICAgICB0aGlzLmxvY2FsU3RvcmFnZVNlcnZpY2Uuc2V0KCdkYXRhVGFibGVDb25maWcnLCBkYXRhVGFibGVDb25maWcpO1xuICAgICAgICAgICAgdGhpcy5fcHJlc2V0Q2hhbmdlcy5uZXh0KGZpbHRlclByZXNldHMpO1xuICAgICAgICB9XG4gICAgfVxufVxuIl19
@@ -0,0 +1,20 @@
1
+ import { ChangeDetectionStrategy, Component } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/forms";
4
+ import * as i2 from "../form-field/form-field.component";
5
+ import * as i3 from "../form-field/form-field-control.directive";
6
+ import * as i4 from "../modal-dialog/dialog-buttons.directive";
7
+ import * as i5 from "../modal-dialog/dialog-title.directive";
8
+ import * as i6 from "@ngx-translate/core";
9
+ export class RenameFilterPresetDialogComponent {
10
+ rename() {
11
+ this.resolveWith(this.name);
12
+ }
13
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: RenameFilterPresetDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.2", type: RenameFilterPresetDialogComponent, selector: "vdr-rename-filter-preset-dialog", ngImport: i0, template: "<ng-template vdrDialogTitle>\n {{ 'common.rename-filter-preset' | translate }}\n</ng-template>\n <vdr-form-field>\n <input type=\"text\" [(ngModel)]=\"name\">\n </vdr-form-field>\n<ng-template vdrDialogButtons>\n <button type=\"submit\" (click)=\"rename()\" [disabled]=\"!name\" class=\"button primary\">\n {{ 'common.update' | translate }}\n </button>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.FormFieldComponent, selector: "vdr-form-field", inputs: ["label", "for", "tooltip", "errors", "readOnlyToggle"] }, { kind: "directive", type: i3.FormFieldControlDirective, selector: "input, textarea, select" }, { kind: "directive", type: i4.DialogButtonsDirective, selector: "[vdrDialogButtons]" }, { kind: "directive", type: i5.DialogTitleDirective, selector: "[vdrDialogTitle]" }, { kind: "pipe", type: i6.TranslatePipe, name: "translate" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
15
+ }
16
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: RenameFilterPresetDialogComponent, decorators: [{
17
+ type: Component,
18
+ args: [{ selector: 'vdr-rename-filter-preset-dialog', changeDetection: ChangeDetectionStrategy.OnPush, template: "<ng-template vdrDialogTitle>\n {{ 'common.rename-filter-preset' | translate }}\n</ng-template>\n <vdr-form-field>\n <input type=\"text\" [(ngModel)]=\"name\">\n </vdr-form-field>\n<ng-template vdrDialogButtons>\n <button type=\"submit\" (click)=\"rename()\" [disabled]=\"!name\" class=\"button primary\">\n {{ 'common.update' | translate }}\n </button>\n</ng-template>\n" }]
19
+ }] });
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVuYW1lLWZpbHRlci1wcmVzZXQtZGlhbG9nLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9saWIvY29yZS9zcmMvc2hhcmVkL2NvbXBvbmVudHMvZGF0YS10YWJsZS1maWx0ZXItcHJlc2V0cy9yZW5hbWUtZmlsdGVyLXByZXNldC1kaWFsb2cuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9jb3JlL3NyYy9zaGFyZWQvY29tcG9uZW50cy9kYXRhLXRhYmxlLWZpbHRlci1wcmVzZXRzL3JlbmFtZS1maWx0ZXItcHJlc2V0LWRpYWxvZy5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsU0FBUyxFQUFFLE1BQU0sZUFBZSxDQUFDOzs7Ozs7OztBQVNuRSxNQUFNLE9BQU8saUNBQWlDO0lBSTFDLE1BQU07UUFDRixJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQyxDQUFDOzhHQU5RLGlDQUFpQztrR0FBakMsaUNBQWlDLHVFQ1Q5QyxnWkFXQTs7MkZERmEsaUNBQWlDO2tCQU43QyxTQUFTOytCQUNJLGlDQUFpQyxtQkFHMUIsdUJBQXVCLENBQUMsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IERpYWxvZyB9IGZyb20gJy4uLy4uLy4uL3Byb3ZpZGVycy9tb2RhbC9tb2RhbC50eXBlcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndmRyLXJlbmFtZS1maWx0ZXItcHJlc2V0LWRpYWxvZycsXG4gICAgdGVtcGxhdGVVcmw6ICcuL3JlbmFtZS1maWx0ZXItcHJlc2V0LWRpYWxvZy5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vcmVuYW1lLWZpbHRlci1wcmVzZXQtZGlhbG9nLmNvbXBvbmVudC5jc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbn0pXG5leHBvcnQgY2xhc3MgUmVuYW1lRmlsdGVyUHJlc2V0RGlhbG9nQ29tcG9uZW50IGltcGxlbWVudHMgRGlhbG9nPHN0cmluZz4ge1xuICAgIG5hbWU6IHN0cmluZztcbiAgICByZXNvbHZlV2l0aDogKHJlc3VsdD86IHN0cmluZykgPT4gdm9pZDtcblxuICAgIHJlbmFtZSgpIHtcbiAgICAgICAgdGhpcy5yZXNvbHZlV2l0aCh0aGlzLm5hbWUpO1xuICAgIH1cbn1cbiIsIjxuZy10ZW1wbGF0ZSB2ZHJEaWFsb2dUaXRsZT5cbiAgICB7eyAnY29tbW9uLnJlbmFtZS1maWx0ZXItcHJlc2V0JyB8IHRyYW5zbGF0ZSB9fVxuPC9uZy10ZW1wbGF0ZT5cbiAgICA8dmRyLWZvcm0tZmllbGQ+XG4gICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIFsobmdNb2RlbCldPVwibmFtZVwiPlxuICAgIDwvdmRyLWZvcm0tZmllbGQ+XG48bmctdGVtcGxhdGUgdmRyRGlhbG9nQnV0dG9ucz5cbiAgICA8YnV0dG9uIHR5cGU9XCJzdWJtaXRcIiAoY2xpY2spPVwicmVuYW1lKClcIiBbZGlzYWJsZWRdPVwiIW5hbWVcIiBjbGFzcz1cImJ1dHRvbiBwcmltYXJ5XCI+XG4gICAgICAge3sgJ2NvbW1vbi51cGRhdGUnIHwgdHJhbnNsYXRlIH19XG4gICAgPC9idXR0b24+XG48L25nLXRlbXBsYXRlPlxuIl19
@@ -4,10 +4,10 @@ export class CustomFilterComponentDirective {
4
4
  constructor(viewContainerRef) {
5
5
  this.viewContainerRef = viewContainerRef;
6
6
  }
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.0.3", ngImport: i0, type: CustomFilterComponentDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
8
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.0.3", type: CustomFilterComponentDirective, selector: "[vdrCustomFilterComponentHost]", ngImport: i0 }); }
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: CustomFilterComponentDirective, deps: [{ token: i0.ViewContainerRef }], target: i0.ɵɵFactoryTarget.Directive }); }
8
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.2", type: CustomFilterComponentDirective, selector: "[vdrCustomFilterComponentHost]", ngImport: i0 }); }
9
9
  }
10
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.0.3", ngImport: i0, type: CustomFilterComponentDirective, decorators: [{
10
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.2", ngImport: i0, type: CustomFilterComponentDirective, decorators: [{
11
11
  type: Directive,
12
12
  args: [{
13
13
  selector: '[vdrCustomFilterComponentHost]',