@coolon/angular-ui-powerups 16.1.0-aplpha.150 → 16.1.0-aplpha.152

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 (26) hide show
  1. package/assets/table.scss +1 -1
  2. package/esm2022/lib/components/components.module.mjs +16 -16
  3. package/esm2022/lib/components/exports.mjs +4 -4
  4. package/esm2022/lib/components/loadable-component.mjs +1 -1
  5. package/esm2022/lib/components/tables/abstract-table-model.mjs +43 -24
  6. package/esm2022/lib/components/tables/renderer/table-action-column/menu-builder.mjs +2 -0
  7. package/esm2022/lib/components/tables/renderer/table-action-column/table-action-column.component.mjs +115 -0
  8. package/esm2022/lib/components/tables/renderer/table-custom-more-menu/table-custom-more-menu-popup.component.mjs +45 -0
  9. package/esm2022/lib/components/tables/renderer/table-custom-more-menu/table-custom-more-menu.component.mjs +71 -0
  10. package/esm2022/lib/place/components/list-place-nav/list-place-nav.component.mjs +3 -3
  11. package/fesm2022/coolon-angular-ui-powerups.mjs +170 -112
  12. package/fesm2022/coolon-angular-ui-powerups.mjs.map +1 -1
  13. package/lib/components/components.module.d.ts +4 -4
  14. package/lib/components/exports.d.ts +3 -3
  15. package/lib/components/loadable-component.d.ts +2 -2
  16. package/lib/components/tables/abstract-table-model.d.ts +26 -19
  17. package/lib/components/tables/renderer/table-action-column/menu-builder.d.ts +5 -0
  18. package/lib/components/tables/renderer/table-action-column/table-action-column.component.d.ts +30 -0
  19. package/lib/components/tables/renderer/table-custom-more-menu/table-custom-more-menu-popup.component.d.ts +19 -0
  20. package/lib/components/tables/renderer/{table-more-menu/table-more-menu.component.d.ts → table-custom-more-menu/table-custom-more-menu.component.d.ts} +7 -7
  21. package/package.json +1 -1
  22. package/esm2022/lib/components/tables/renderer/table-more-menu/table-more-menu-popup/table-more-menu-popup.component.mjs +0 -40
  23. package/esm2022/lib/components/tables/renderer/table-more-menu/table-more-menu.component.mjs +0 -65
  24. package/esm2022/lib/components/tables/table-row-menu/table-row-menu.component.mjs +0 -84
  25. package/lib/components/tables/renderer/table-more-menu/table-more-menu-popup/table-more-menu-popup.component.d.ts +0 -18
  26. package/lib/components/tables/table-row-menu/table-row-menu.component.d.ts +0 -28
@@ -29,7 +29,7 @@ import * as i27 from "./tables/renderer/default-header-cell-renderer/default-hea
29
29
  import * as i28 from "./tables/renderer/table-header-cell/table-header-cell.component";
30
30
  import * as i29 from "./icon/icon.component";
31
31
  import * as i30 from "./section-header/section-header.component";
32
- import * as i31 from "./tables/table-row-menu/table-row-menu.component";
32
+ import * as i31 from "./tables/renderer/table-action-column/table-action-column.component";
33
33
  import * as i32 from "./commands/group/tool-bar/tool-bar.component";
34
34
  import * as i33 from "./commands/command/command.component";
35
35
  import * as i34 from "./commands/group/popup-menu/popup-menu.component";
@@ -50,8 +50,8 @@ import * as i48 from "./cards/abstract-card-container.component";
50
50
  import * as i49 from "./labelled-value/labelled-value.component";
51
51
  import * as i50 from "./loading-container/loading-container.component";
52
52
  import * as i51 from "./text/markdown/markdown.component";
53
- import * as i52 from "./tables/renderer/table-more-menu/table-more-menu.component";
54
- import * as i53 from "./tables/renderer/table-more-menu/table-more-menu-popup/table-more-menu-popup.component";
53
+ import * as i52 from "./tables/renderer/table-custom-more-menu/table-custom-more-menu.component";
54
+ import * as i53 from "./tables/renderer/table-custom-more-menu/table-custom-more-menu-popup.component";
55
55
  import * as i54 from "./forms/search-input/search-input.component";
56
56
  import * as i55 from "./tables/renderer/table-footer-row/table-footer-row.component";
57
57
  import * as i56 from "./file/file-download/file-download.component";
@@ -79,6 +79,6 @@ import * as i77 from "@angular/material/progress-bar";
79
79
  import * as i78 from "ng-table-virtual-scroll";
80
80
  export declare class ComponentsModule {
81
81
  static ɵfac: i0.ɵɵFactoryDeclaration<ComponentsModule, never>;
82
- static ɵmod: i0.ɵɵNgModuleDeclaration<ComponentsModule, [typeof i1.AbstractInputComponent, typeof i2.AbstractValueInputComponent, typeof i3.AbstractListInputComponent, typeof i4.NumberInputComponent, typeof i5.StringInputComponent, typeof i6.TextInputComponent, typeof i7.PasswordInputComponent, typeof i8.SelectInputComponent, typeof i9.MultipleSelectInputComponent, typeof i10.AutocompleteInputComponent, typeof i11.CheckboxInputComponent, typeof i12.ScrollContainerComponent, typeof i13.NoopComponent, typeof i14.SwitchCaseComponent, typeof i14.SwitchCaseWhenDirective, typeof i14.SwitchCaseDefaultDirective, typeof i15.FocusContainerComponent, typeof i16.VerticalFocusContainerComponent, typeof i17.FocusableComponent, typeof i18.CardContainerComponent, typeof i19.TableComponent, typeof i20.TableRowAttributesDirective, typeof i21.EditRowControlsComponent, typeof i22.ColumnTemplateDirective, typeof i23.DefaultCellRendererComponent, typeof i24.TableCellComponent, typeof i25.SelectionCellComponent, typeof i26.SelectionHeaderCellComponent, typeof i27.DefaultHeaderCellRendererComponent, typeof i28.TableHeaderCellComponent, typeof i29.IconComponent, typeof i30.SectionHeaderComponent, typeof i31.TableRowMenuComponent, typeof i32.ToolBarComponent, typeof i33.CommandComponent, typeof i34.PopupMenuComponent, typeof i35.CommandFaceComponent, typeof i36.MoreMenuComponent, typeof i37.SeparatorComponent, typeof i38.FlexComponent, typeof i39.AbstractPopupMenuComponent, typeof i40.PopupMenuRendererComponent, typeof i41.TreeTableComponent, typeof i42.TreeInheritanceIconComponent, typeof i43.TreeLabelCellRendererComponent, typeof i44.BusyOverlayComponent, typeof i45.EmptyStateComponent, typeof i46.PaginatorComponent, typeof i47.AbstractTableComponent, typeof i48.AbstractCardContainerComponent, typeof i49.LabelledValueComponent, typeof i50.LoadingContainerComponent, typeof i51.MarkdownComponent, typeof i20.TableBodyComponent, typeof i52.TableMoreMenuComponent, typeof i53.TableMoreMenuPopupComponent, typeof i54.SearchInputComponent, typeof i55.TableFooterRow, typeof i56.FileDownloadComponent, typeof i57.ButtonRendererComponent], [typeof i58.CommonModule, typeof i59.BrowserAnimationsModule, typeof i60.FormsModule, typeof i61.MatInputModule, typeof i62.MatFormFieldModule, typeof i63.MatSelectModule, typeof i64.MatTabsModule, typeof i65.DirectivesModule, typeof i66.MatIconModule, typeof i67.MatButtonModule, typeof i68.MatCheckboxModule, typeof i69.MatTableModule, typeof i70.PortalModule, typeof i71.CdkScrollableModule, typeof i72.MatTooltipModule, typeof i73.MatAutocompleteModule, typeof i74.MatMenuModule, typeof i75.MatDividerModule, typeof i76.MatProgressSpinnerModule, typeof i77.MatProgressBarModule, typeof i71.ScrollingModule, typeof i78.TableVirtualScrollModule], [typeof i57.ButtonRendererComponent, typeof i56.FileDownloadComponent, typeof i55.TableFooterRow, typeof i4.NumberInputComponent, typeof i5.StringInputComponent, typeof i6.TextInputComponent, typeof i7.PasswordInputComponent, typeof i11.CheckboxInputComponent, typeof i8.SelectInputComponent, typeof i9.MultipleSelectInputComponent, typeof i10.AutocompleteInputComponent, typeof i12.ScrollContainerComponent, typeof i13.NoopComponent, typeof i14.SwitchCaseComponent, typeof i14.SwitchCaseWhenDirective, typeof i14.SwitchCaseDefaultDirective, typeof i15.FocusContainerComponent, typeof i16.VerticalFocusContainerComponent, typeof i17.FocusableComponent, typeof i18.CardContainerComponent, typeof i19.TableComponent, typeof i21.EditRowControlsComponent, typeof i22.ColumnTemplateDirective, typeof i29.IconComponent, typeof i30.SectionHeaderComponent, typeof i31.TableRowMenuComponent, typeof i32.ToolBarComponent, typeof i33.CommandComponent, typeof i34.PopupMenuComponent, typeof i35.CommandFaceComponent, typeof i36.MoreMenuComponent, typeof i37.SeparatorComponent, typeof i38.FlexComponent, typeof i41.TreeTableComponent, typeof i44.BusyOverlayComponent, typeof i45.EmptyStateComponent, typeof i46.PaginatorComponent, typeof i49.LabelledValueComponent, typeof i50.LoadingContainerComponent, typeof i51.MarkdownComponent, typeof i52.TableMoreMenuComponent, typeof i53.TableMoreMenuPopupComponent, typeof i54.SearchInputComponent, typeof i57.ButtonRendererComponent]>;
82
+ static ɵmod: i0.ɵɵNgModuleDeclaration<ComponentsModule, [typeof i1.AbstractInputComponent, typeof i2.AbstractValueInputComponent, typeof i3.AbstractListInputComponent, typeof i4.NumberInputComponent, typeof i5.StringInputComponent, typeof i6.TextInputComponent, typeof i7.PasswordInputComponent, typeof i8.SelectInputComponent, typeof i9.MultipleSelectInputComponent, typeof i10.AutocompleteInputComponent, typeof i11.CheckboxInputComponent, typeof i12.ScrollContainerComponent, typeof i13.NoopComponent, typeof i14.SwitchCaseComponent, typeof i14.SwitchCaseWhenDirective, typeof i14.SwitchCaseDefaultDirective, typeof i15.FocusContainerComponent, typeof i16.VerticalFocusContainerComponent, typeof i17.FocusableComponent, typeof i18.CardContainerComponent, typeof i19.TableComponent, typeof i20.TableRowAttributesDirective, typeof i21.EditRowControlsComponent, typeof i22.ColumnTemplateDirective, typeof i23.DefaultCellRendererComponent, typeof i24.TableCellComponent, typeof i25.SelectionCellComponent, typeof i26.SelectionHeaderCellComponent, typeof i27.DefaultHeaderCellRendererComponent, typeof i28.TableHeaderCellComponent, typeof i29.IconComponent, typeof i30.SectionHeaderComponent, typeof i31.TableActionColumnComponent, typeof i32.ToolBarComponent, typeof i33.CommandComponent, typeof i34.PopupMenuComponent, typeof i35.CommandFaceComponent, typeof i36.MoreMenuComponent, typeof i37.SeparatorComponent, typeof i38.FlexComponent, typeof i39.AbstractPopupMenuComponent, typeof i40.PopupMenuRendererComponent, typeof i41.TreeTableComponent, typeof i42.TreeInheritanceIconComponent, typeof i43.TreeLabelCellRendererComponent, typeof i44.BusyOverlayComponent, typeof i45.EmptyStateComponent, typeof i46.PaginatorComponent, typeof i47.AbstractTableComponent, typeof i48.AbstractCardContainerComponent, typeof i49.LabelledValueComponent, typeof i50.LoadingContainerComponent, typeof i51.MarkdownComponent, typeof i20.TableBodyComponent, typeof i52.TableCustomMoreMenuComponent, typeof i53.TableCustomMoreMenuPopupComponent, typeof i54.SearchInputComponent, typeof i55.TableFooterRow, typeof i56.FileDownloadComponent, typeof i57.ButtonRendererComponent], [typeof i58.CommonModule, typeof i59.BrowserAnimationsModule, typeof i60.FormsModule, typeof i61.MatInputModule, typeof i62.MatFormFieldModule, typeof i63.MatSelectModule, typeof i64.MatTabsModule, typeof i65.DirectivesModule, typeof i66.MatIconModule, typeof i67.MatButtonModule, typeof i68.MatCheckboxModule, typeof i69.MatTableModule, typeof i70.PortalModule, typeof i71.CdkScrollableModule, typeof i72.MatTooltipModule, typeof i73.MatAutocompleteModule, typeof i74.MatMenuModule, typeof i75.MatDividerModule, typeof i76.MatProgressSpinnerModule, typeof i77.MatProgressBarModule, typeof i71.ScrollingModule, typeof i78.TableVirtualScrollModule], [typeof i57.ButtonRendererComponent, typeof i56.FileDownloadComponent, typeof i55.TableFooterRow, typeof i4.NumberInputComponent, typeof i5.StringInputComponent, typeof i6.TextInputComponent, typeof i7.PasswordInputComponent, typeof i11.CheckboxInputComponent, typeof i8.SelectInputComponent, typeof i9.MultipleSelectInputComponent, typeof i10.AutocompleteInputComponent, typeof i12.ScrollContainerComponent, typeof i13.NoopComponent, typeof i14.SwitchCaseComponent, typeof i14.SwitchCaseWhenDirective, typeof i14.SwitchCaseDefaultDirective, typeof i15.FocusContainerComponent, typeof i16.VerticalFocusContainerComponent, typeof i17.FocusableComponent, typeof i18.CardContainerComponent, typeof i19.TableComponent, typeof i21.EditRowControlsComponent, typeof i22.ColumnTemplateDirective, typeof i29.IconComponent, typeof i30.SectionHeaderComponent, typeof i31.TableActionColumnComponent, typeof i32.ToolBarComponent, typeof i33.CommandComponent, typeof i34.PopupMenuComponent, typeof i35.CommandFaceComponent, typeof i36.MoreMenuComponent, typeof i37.SeparatorComponent, typeof i38.FlexComponent, typeof i41.TreeTableComponent, typeof i44.BusyOverlayComponent, typeof i45.EmptyStateComponent, typeof i46.PaginatorComponent, typeof i49.LabelledValueComponent, typeof i50.LoadingContainerComponent, typeof i51.MarkdownComponent, typeof i52.TableCustomMoreMenuComponent, typeof i53.TableCustomMoreMenuPopupComponent, typeof i54.SearchInputComponent, typeof i57.ButtonRendererComponent]>;
83
83
  static ɵinj: i0.ɵɵInjectorDeclaration<ComponentsModule>;
84
84
  }
@@ -82,11 +82,11 @@ export * from "./tables/renderer/table-body/table-body.component";
82
82
  export * from "./tables/renderer/table-cell/table-cell.component";
83
83
  export * from "./tables/renderer/table-footer-row/table-footer-row.component";
84
84
  export * from "./tables/renderer/table-header-cell/table-header-cell.component";
85
- export * from "./tables/renderer/table-more-menu/table-more-menu.component";
86
- export * from "./tables/renderer/table-more-menu/table-more-menu-popup/table-more-menu-popup.component";
85
+ export * from "./tables/renderer/table-custom-more-menu/table-custom-more-menu.component";
86
+ export * from "./tables/renderer/table-custom-more-menu/table-custom-more-menu-popup.component";
87
87
  export * from "./tables/table/table-model";
88
88
  export * from "./tables/table/table.component";
89
- export * from "./tables/table-row-menu/table-row-menu.component";
89
+ export * from "./tables/renderer/table-action-column/table-action-column.component";
90
90
  export * from "./tables/tree-table/decorated-tree-node";
91
91
  export * from "./tables/tree-table/flattened-tree-list-model";
92
92
  export * from "./tables/tree-table/tree-expansion-model";
@@ -1,8 +1,8 @@
1
- import { InjectOptions, ProviderToken } from '@angular/core';
1
+ import { InjectOptions, OnInit, ProviderToken } from '@angular/core';
2
2
  import { DisposableComponent } from "./disposable-component";
3
3
  import { Loadable } from "./types/loadable";
4
4
  import * as i0 from "@angular/core";
5
- export declare class LoadableComponent extends DisposableComponent {
5
+ export declare class LoadableComponent extends DisposableComponent implements OnInit {
6
6
  #private;
7
7
  get loaded$(): import("@coolon/pectin").ValueModel<boolean>;
8
8
  ngOnInit(): void;
@@ -1,21 +1,23 @@
1
- import { ComponentType } from "@angular/cdk/overlay";
2
- import { Injector } from "@angular/core";
3
- import { BooleanValueModelChain, Command, Constructable, DelegatingListModel, DependsOnOptions, DirtyTrackingForm, Disposable, GarbageCollector, HasValue, ListModel, SelectionModel, Types, ValueModel, ValueModelChain } from "@coolon/pectin";
4
- import { ColumnManager } from "./column/column-manager";
5
- import { CellRendererOptions, ColumnModel, OnComponentInit } from "./column/column-model";
6
- import { ColumnOrderManager } from "./column/column-order-manager";
7
- import { ColumnTextProperties } from "./column/column-text-properties";
8
- import { CustomTemplateColumnModel } from "./column/custom-template-column-model";
9
- import { CustomValueColumnModel } from "./column/custom-value-column-model";
10
- import { EditorControlColumnModel } from "./column/editor-controls-column-model";
11
- import { ListPropertyColumnModel } from "./column/list-propery-column-model";
12
- import { PropertyColumnModel } from "./column/property-column-model";
13
- import { SelectionColumnModel } from "./column/selection-column-model";
14
- import { EditSession } from "./editor/edit-session";
15
- import { TextSearchPredicate } from "./filter/text-search-predicate";
16
- import { FooterRowModel } from "./footer/footer-row-model";
17
- import { CellRenderer } from "./renderer/cell-renderer";
18
- import { TableMoreMenuPopupComponent } from "./renderer/table-more-menu/table-more-menu-popup/table-more-menu-popup.component";
1
+ import { ComponentType } from '@angular/cdk/overlay';
2
+ import { Injector } from '@angular/core';
3
+ import { BooleanValueModelChain, Command, Constructable, DelegatingListModel, DependsOnOptions, DirtyTrackingForm, Disposable, GarbageCollector, HasValue, ListModel, SelectionModel, Types, ValueModel, ValueModelChain } from '@coolon/pectin';
4
+ import { ColumnManager } from './column/column-manager';
5
+ import { CellRendererOptions, ColumnModel, OnComponentInit } from './column/column-model';
6
+ import { ColumnOrderManager } from './column/column-order-manager';
7
+ import { ColumnTextProperties } from './column/column-text-properties';
8
+ import { CustomTemplateColumnModel } from './column/custom-template-column-model';
9
+ import { CustomValueColumnModel } from './column/custom-value-column-model';
10
+ import { EditorControlColumnModel } from './column/editor-controls-column-model';
11
+ import { ListPropertyColumnModel } from './column/list-propery-column-model';
12
+ import { PropertyColumnModel } from './column/property-column-model';
13
+ import { SelectionColumnModel } from './column/selection-column-model';
14
+ import { EditSession } from './editor/edit-session';
15
+ import { TextSearchPredicate } from './filter/text-search-predicate';
16
+ import { FooterRowModel } from './footer/footer-row-model';
17
+ import { CellRenderer } from './renderer/cell-renderer';
18
+ import { MenuBuilder } from './renderer/table-action-column/menu-builder';
19
+ import { TableActionColumnComponent } from './renderer/table-action-column/table-action-column.component';
20
+ import { TableCustomMoreMenuPopupComponent } from './renderer/table-custom-more-menu/table-custom-more-menu-popup.component';
19
21
  export declare abstract class AbstractTableModel<Row extends object> extends GarbageCollector {
20
22
  protected readonly _dataSource$: DelegatingListModel<Row>;
21
23
  protected readonly _filteredRows$: DelegatingListModel<Row>;
@@ -91,7 +93,12 @@ export declare abstract class AbstractTableModel<Row extends object> extends Gar
91
93
  addCustomColumn<V>(columnId: string, dataAccessor: (row: Row) => V): CustomValueColumnModel<Row, V>;
92
94
  addComponentColumn<C extends CellRenderer<Partial<Row>>>(columnId: string, component: ComponentType<C>, onInit?: OnComponentInit<C>): CustomValueColumnModel<Row, Row>;
93
95
  addComponentColumn<C extends CellRenderer<Partial<Row>>>(columnId: string, component: ComponentType<C>, options?: CellRendererOptions<Row, C>): CustomValueColumnModel<Row, Row>;
94
- addMoreMenu<C extends TableMoreMenuPopupComponent<Row>>(componentClass: Constructable<C>, initialiseCallback?: (component: C) => void): CustomValueColumnModel<Row, Row>;
96
+ addMoreMenu<C extends TableCustomMoreMenuPopupComponent<Row>>(builder: (menu: MenuBuilder<Row>) => void): CustomValueColumnModel<Row, Row>;
97
+ /**
98
+ * Use this method if the more menu popup needs custom components
99
+ */
100
+ addCustomMoreMenu<C extends TableCustomMoreMenuPopupComponent<Row>>(componentClass: Constructable<C>, initialiseCallback?: (component: C) => void): CustomValueColumnModel<Row, Row>;
101
+ addActionColumn(builder: (menu: TableActionColumnComponent<Row>) => void): CustomValueColumnModel<Row, Row>;
95
102
  addFooterRow<C>(component: ComponentType<C>, initialiseCallback?: (component: C) => void): FooterRowModel<C>;
96
103
  addTemplateColumn<V>(columnId: string): CustomTemplateColumnModel<Row>;
97
104
  addRowClass(className: string, predicate: (row: Row) => boolean, options?: DependsOnOptions): void;
@@ -0,0 +1,5 @@
1
+ import { Command, CommandFace } from '@coolon/pectin';
2
+ export interface MenuBuilder<Row extends object> {
3
+ addCommand(factory: Command.Factory<Row>, face: CommandFace): void;
4
+ addSeparator(): void;
5
+ }
@@ -0,0 +1,30 @@
1
+ import { MatMenuTrigger } from '@angular/material/menu';
2
+ import { Command } from '@coolon/pectin';
3
+ import { CommandFace } from '../../../commands/command-face';
4
+ import { DisposableComponent } from '../../../disposable-component';
5
+ import { CellRenderer } from '../cell-renderer';
6
+ import { MenuBuilder } from './menu-builder';
7
+ import * as i0 from "@angular/core";
8
+ declare class MenuItemData<T extends object> {
9
+ readonly factory: Command.Factory<T, void>;
10
+ readonly face: CommandFace;
11
+ constructor(factory: Command.Factory<T, void>, face: CommandFace);
12
+ }
13
+ /**
14
+ *
15
+ */
16
+ export declare class TableActionColumnComponent<T extends object> extends DisposableComponent implements CellRenderer<T>, MenuBuilder<T> {
17
+ value: T;
18
+ menu: MatMenuTrigger;
19
+ readonly actions: MenuItemData<T>[];
20
+ readonly moreActions: MenuItemData<T>[];
21
+ addCommand(commandFactory: Command.Factory<T, void>, properties: CommandFace): void;
22
+ addSeparator(): void;
23
+ addMoreMenu(builder: (menu: MenuBuilder<T>) => void): void;
24
+ constructor();
25
+ createMoreMenuCommand(item: MenuItemData<T>, value: T): Command<void>;
26
+ private closeMoreMenu;
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<TableActionColumnComponent<any>, never>;
28
+ static ɵcmp: i0.ɵɵComponentDeclaration<TableActionColumnComponent<any>, "aup-table-action-column", never, { "value": { "alias": "value"; "required": false; }; }, {}, never, never, false, never>;
29
+ }
30
+ export {};
@@ -0,0 +1,19 @@
1
+ import { Command, ValueModel } from "@coolon/pectin";
2
+ import { PopupAwareComponent } from "../../../commands/group/popup-aware.component";
3
+ import { PopupContainer } from "../../../commands/group/popup-container";
4
+ import { LoadableComponent } from "../../../loadable-component";
5
+ import * as i0 from "@angular/core";
6
+ export declare class TableCustomMoreMenuPopupComponent<T> extends LoadableComponent implements PopupContainer {
7
+ private _value$;
8
+ private readonly _visible$;
9
+ private readonly _closeCommand;
10
+ constructor();
11
+ initialise(row$: ValueModel<T>, closeCommand: Command<void>): void;
12
+ protected visibleWhile(condition: ValueModel<boolean>): this;
13
+ get visible$(): ValueModel<boolean>;
14
+ get closeCommand(): Command<void>;
15
+ get value$(): ValueModel<T>;
16
+ register(comp: PopupAwareComponent): void;
17
+ static ɵfac: i0.ɵɵFactoryDeclaration<TableCustomMoreMenuPopupComponent<any>, never>;
18
+ static ɵcmp: i0.ɵɵComponentDeclaration<TableCustomMoreMenuPopupComponent<any>, "aup-table-more-menu-popup", never, {}, {}, never, never, false, never>;
19
+ }
@@ -1,24 +1,24 @@
1
1
  import { CdkPortalOutletAttachedRef, ComponentPortal } from "@angular/cdk/portal";
2
2
  import { MatMenuTrigger } from "@angular/material/menu";
3
- import { ValueModelChain } from "@coolon/pectin";
3
+ import { ValueModelChain } from '@coolon/pectin';
4
4
  import { Constructable } from "@coolon/typescript-utilities";
5
5
  import { DisposableComponent } from "../../../disposable-component";
6
6
  import { CellRenderer } from "../cell-renderer";
7
- import { TableMoreMenuPopupComponent } from "./table-more-menu-popup/table-more-menu-popup.component";
7
+ import { TableCustomMoreMenuPopupComponent } from "./table-custom-more-menu-popup.component";
8
8
  import * as i0 from "@angular/core";
9
- export declare class TableMoreMenuComponent<T> extends DisposableComponent implements CellRenderer<T> {
9
+ export declare class TableCustomMoreMenuComponent<T> extends DisposableComponent implements CellRenderer<T> {
10
10
  private value$;
11
11
  accessor value: T;
12
12
  matMenuTrigger: MatMenuTrigger;
13
13
  private readonly popupType$;
14
- popupComponentPortal$: ValueModelChain<ComponentPortal<TableMoreMenuPopupComponent<T>>>;
14
+ popupComponentPortal$: ValueModelChain<ComponentPortal<TableCustomMoreMenuPopupComponent<T>>>;
15
15
  private readonly _visible$;
16
16
  private initialiseCallback?;
17
17
  constructor();
18
- configurePopupComponentType(popupComponentType: Constructable<TableMoreMenuPopupComponent<T>>, configureCallback?: (component: TableMoreMenuPopupComponent<T>) => void): void;
18
+ configurePopupComponentType(popupComponentType: Constructable<TableCustomMoreMenuPopupComponent<T>>, configureCallback?: (component: TableCustomMoreMenuPopupComponent<T>) => void): void;
19
19
  preventDefault($event: MouseEvent): void;
20
20
  initialise($event: CdkPortalOutletAttachedRef): void;
21
21
  get visible$(): import("@coolon/pectin").ValueModel<boolean>;
22
- static ɵfac: i0.ɵɵFactoryDeclaration<TableMoreMenuComponent<any>, never>;
23
- static ɵcmp: i0.ɵɵComponentDeclaration<TableMoreMenuComponent<any>, "aup-table-more-menu", never, {}, {}, never, never, false, never>;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<TableCustomMoreMenuComponent<any>, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<TableCustomMoreMenuComponent<any>, "aup-table-custom-more-menu", never, {}, {}, never, never, false, never>;
24
24
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coolon/angular-ui-powerups",
3
- "version": "16.1.0-aplpha.150",
3
+ "version": "16.1.0-aplpha.152",
4
4
  "peerDependencies": {
5
5
  "@angular/animations": "^16.2.9",
6
6
  "@angular/common": "^16.2.9",
@@ -1,40 +0,0 @@
1
- import { Component } from "@angular/core";
2
- import { DelegatingCommand, DelegatingValueModel } from "@coolon/pectin";
3
- import { POPUP_CONTAINER } from "../../../../commands/group/popup-container";
4
- import { LoadableComponent } from "../../../../loadable-component";
5
- import * as i0 from "@angular/core";
6
- export class TableMoreMenuPopupComponent extends LoadableComponent {
7
- _value$ = this.registerDisposable(new DelegatingValueModel());
8
- _visible$ = this.registerDisposable(new DelegatingValueModel()).withDefault(true);
9
- _closeCommand = this.registerDisposable(new DelegatingCommand());
10
- initialise(row$, closeCommand) {
11
- this._value$.setDelegate(row$);
12
- this._closeCommand.setDelegate(closeCommand);
13
- }
14
- visibleWhile(condition) {
15
- this._visible$.setDelegate(condition);
16
- return this;
17
- }
18
- get visible$() {
19
- return this._visible$.readonly$;
20
- }
21
- get closeCommand() {
22
- return this._closeCommand;
23
- }
24
- get value$() {
25
- return this._value$.readonly$;
26
- }
27
- register(comp) {
28
- }
29
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableMoreMenuPopupComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
30
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableMoreMenuPopupComponent, selector: "aup-table-more-menu-popup", providers: [
31
- { provide: POPUP_CONTAINER, useValue: TableMoreMenuPopupComponent },
32
- ], usesInheritance: true, ngImport: i0, template: '', isInline: true });
33
- }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableMoreMenuPopupComponent, decorators: [{
35
- type: Component,
36
- args: [{ selector: 'aup-table-more-menu-popup', template: '', providers: [
37
- { provide: POPUP_CONTAINER, useValue: TableMoreMenuPopupComponent },
38
- ] }]
39
- }] });
40
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtbW9yZS1tZW51LXBvcHVwLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2NvbXBvbmVudHMvdGFibGVzL3JlbmRlcmVyL3RhYmxlLW1vcmUtbWVudS90YWJsZS1tb3JlLW1lbnUtcG9wdXAvdGFibGUtbW9yZS1tZW51LXBvcHVwLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQ3hDLE9BQU8sRUFBVSxpQkFBaUIsRUFBRSxvQkFBb0IsRUFBYSxNQUFNLGdCQUFnQixDQUFDO0FBRzVGLE9BQU8sRUFBQyxlQUFlLEVBQWlCLE1BQU0sNENBQTRDLENBQUM7QUFDM0YsT0FBTyxFQUFDLGlCQUFpQixFQUFDLE1BQU0sZ0NBQWdDLENBQUM7O0FBVWpFLE1BQU0sT0FBTywyQkFBK0IsU0FBUSxpQkFBaUI7SUFFM0QsT0FBTyxHQUFHLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxJQUFJLG9CQUFvQixFQUFLLENBQUMsQ0FBQTtJQUV2RCxTQUFTLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksb0JBQW9CLEVBQVcsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUMzRixhQUFhLEdBQUcsSUFBSSxDQUFDLGtCQUFrQixDQUFDLElBQUksaUJBQWlCLEVBQVEsQ0FBQyxDQUFBO0lBR3ZGLFVBQVUsQ0FBQyxJQUFtQixFQUFFLFlBQTJCO1FBQ3pELElBQUksQ0FBQyxPQUFPLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQy9CLElBQUksQ0FBQyxhQUFhLENBQUMsV0FBVyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFUyxZQUFZLENBQUMsU0FBOEI7UUFDbkQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDdEMsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsSUFBSSxRQUFRO1FBQ1YsT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQTtJQUNqQyxDQUFDO0lBRUQsSUFBSSxZQUFZO1FBQ2QsT0FBTyxJQUFJLENBQUMsYUFBYSxDQUFDO0lBQzVCLENBQUM7SUFFRCxJQUFJLE1BQU07UUFDUixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsU0FBUyxDQUFDO0lBQ2hDLENBQUM7SUFFRCxRQUFRLENBQUMsSUFBeUI7SUFDbEMsQ0FBQzt1R0EvQlUsMkJBQTJCOzJGQUEzQiwyQkFBMkIsb0RBSjVCO1lBQ1IsRUFBQyxPQUFPLEVBQUUsZUFBZSxFQUFFLFFBQVEsRUFBRSwyQkFBMkIsRUFBQztTQUNsRSxpREFKUyxFQUFFOzsyRkFNRCwyQkFBMkI7a0JBUnZDLFNBQVM7K0JBQ0UsMkJBQTJCLFlBQzNCLEVBQUUsYUFFRjt3QkFDUixFQUFDLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSw2QkFBNkIsRUFBQztxQkFDbEUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NvbXBvbmVudH0gZnJvbSBcIkBhbmd1bGFyL2NvcmVcIjtcbmltcG9ydCB7Q29tbWFuZCwgRGVsZWdhdGluZ0NvbW1hbmQsIERlbGVnYXRpbmdWYWx1ZU1vZGVsLCBWYWx1ZU1vZGVsfSBmcm9tIFwiQGNvb2xvbi9wZWN0aW5cIjtcbmltcG9ydCB7VH0gZnJvbSBcInZpdGVzdC9kaXN0L3JlcG9ydGVycy01Zjc4NGY0MlwiO1xuaW1wb3J0IHtQb3B1cEF3YXJlQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4vLi4vLi4vY29tbWFuZHMvZ3JvdXAvcG9wdXAtYXdhcmUuY29tcG9uZW50XCI7XG5pbXBvcnQge1BPUFVQX0NPTlRBSU5FUiwgUG9wdXBDb250YWluZXJ9IGZyb20gXCIuLi8uLi8uLi8uLi9jb21tYW5kcy9ncm91cC9wb3B1cC1jb250YWluZXJcIjtcbmltcG9ydCB7TG9hZGFibGVDb21wb25lbnR9IGZyb20gXCIuLi8uLi8uLi8uLi9sb2FkYWJsZS1jb21wb25lbnRcIjtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXVwLXRhYmxlLW1vcmUtbWVudS1wb3B1cCcsXG4gIHRlbXBsYXRlOiAnJyxcbiAgc3R5bGVVcmxzOiBbXSxcbiAgcHJvdmlkZXJzOltcbiAgICB7cHJvdmlkZTogUE9QVVBfQ09OVEFJTkVSLCB1c2VWYWx1ZTogVGFibGVNb3JlTWVudVBvcHVwQ29tcG9uZW50fSxcbiAgXVxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZU1vcmVNZW51UG9wdXBDb21wb25lbnQ8VD4gZXh0ZW5kcyBMb2FkYWJsZUNvbXBvbmVudCBpbXBsZW1lbnRzIFBvcHVwQ29udGFpbmVyIHtcblxuICBwcml2YXRlIF92YWx1ZSQgPSB0aGlzLnJlZ2lzdGVyRGlzcG9zYWJsZShuZXcgRGVsZWdhdGluZ1ZhbHVlTW9kZWw8VD4oKSlcblxuICBwcml2YXRlIHJlYWRvbmx5IF92aXNpYmxlJCA9IHRoaXMucmVnaXN0ZXJEaXNwb3NhYmxlKG5ldyBEZWxlZ2F0aW5nVmFsdWVNb2RlbDxib29sZWFuPigpKS53aXRoRGVmYXVsdCh0cnVlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBfY2xvc2VDb21tYW5kID0gdGhpcy5yZWdpc3RlckRpc3Bvc2FibGUobmV3IERlbGVnYXRpbmdDb21tYW5kPHZvaWQ+KCkpXG5cblxuICBpbml0aWFsaXNlKHJvdyQ6IFZhbHVlTW9kZWw8VD4sIGNsb3NlQ29tbWFuZDogQ29tbWFuZDx2b2lkPikge1xuICAgIHRoaXMuX3ZhbHVlJC5zZXREZWxlZ2F0ZShyb3ckKTtcbiAgICB0aGlzLl9jbG9zZUNvbW1hbmQuc2V0RGVsZWdhdGUoY2xvc2VDb21tYW5kKTtcbiAgfVxuXG4gIHByb3RlY3RlZCB2aXNpYmxlV2hpbGUoY29uZGl0aW9uOiBWYWx1ZU1vZGVsPGJvb2xlYW4+KSB7XG4gICAgdGhpcy5fdmlzaWJsZSQuc2V0RGVsZWdhdGUoY29uZGl0aW9uKTtcbiAgICByZXR1cm4gdGhpcztcbiAgfVxuXG4gIGdldCB2aXNpYmxlJCgpOiBWYWx1ZU1vZGVsPGJvb2xlYW4+IHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZSQucmVhZG9ubHkkXG4gIH1cblxuICBnZXQgY2xvc2VDb21tYW5kKCk6IENvbW1hbmQ8dm9pZD4ge1xuICAgIHJldHVybiB0aGlzLl9jbG9zZUNvbW1hbmQ7XG4gIH1cblxuICBnZXQgdmFsdWUkKCkge1xuICAgIHJldHVybiB0aGlzLl92YWx1ZSQucmVhZG9ubHkkO1xuICB9XG5cbiAgcmVnaXN0ZXIoY29tcDogUG9wdXBBd2FyZUNvbXBvbmVudCkge1xuICB9XG5cblxuXG5cbn1cbiJdfQ==
@@ -1,65 +0,0 @@
1
- import { __decorate, __metadata } from "tslib";
2
- import { ComponentPortal } from "@angular/cdk/portal";
3
- import { Component, HostListener, ViewChild } from "@angular/core";
4
- import { MatMenuTrigger } from "@angular/material/menu";
5
- import { Command, DelegatingValueModel, Dsl, MutableValueModel, StoreInValueModel } from "@coolon/pectin";
6
- import { DisposableComponent } from "../../../disposable-component";
7
- import * as i0 from "@angular/core";
8
- import * as i1 from "@angular/common";
9
- import * as i2 from "@angular/material/button";
10
- import * as i3 from "@angular/cdk/portal";
11
- import * as i4 from "@angular/material/menu";
12
- import * as i5 from "../../../icon/icon.component";
13
- export class TableMoreMenuComponent extends DisposableComponent {
14
- value$ = new MutableValueModel();
15
- #value_accessor_storage;
16
- get value() { return this.#value_accessor_storage; }
17
- set value(value) { this.#value_accessor_storage = value; }
18
- matMenuTrigger;
19
- popupType$ = new MutableValueModel();
20
- popupComponentPortal$;
21
- _visible$ = this.registerDisposable(new DelegatingValueModel());
22
- initialiseCallback;
23
- constructor() {
24
- super();
25
- const { chain } = Dsl.disposeWith(this);
26
- this.popupComponentPortal$ = chain(this.popupType$).map(type => new ComponentPortal(type));
27
- }
28
- configurePopupComponentType(popupComponentType, configureCallback) {
29
- this.popupType$.value = popupComponentType;
30
- this.initialiseCallback = configureCallback;
31
- }
32
- // Stops tree selection when clicking the menu button
33
- preventDefault($event) {
34
- $event.preventDefault();
35
- $event.stopPropagation();
36
- }
37
- initialise($event) {
38
- const component = $event.instance;
39
- component.initialise(this.value$, Command.create(() => this.matMenuTrigger.closeMenu()));
40
- this._visible$.setDelegate(component.visible$);
41
- if (this.initialiseCallback) {
42
- this.initialiseCallback(component);
43
- }
44
- }
45
- get visible$() {
46
- return this._visible$.readonly$;
47
- }
48
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableMoreMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
49
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableMoreMenuComponent, selector: "aup-table-more-menu", host: { listeners: { "click": "preventDefault($event)" } }, viewQueries: [{ propertyName: "matMenuTrigger", first: true, predicate: MatMenuTrigger, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <ng-template matMenuContent [cdkPortalOutlet]=\"popupComponentPortal$.value\"\n (attached)=\"initialise($event)\"></ng-template>\n</mat-menu>\n\n<button mat-icon-button [matMenuTriggerFor]=\"menu\" data-cy=\"more-menu-trigger\" *ngIf=\"visible$.value\">\n <aup-icon icon=\"mat:more_vert\"></aup-icon>\n</button>\n", styles: [":host{display:inline;text-align:end}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i3.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "directive", type: i4.MatMenuContent, selector: "ng-template[matMenuContent]" }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: i5.IconComponent, selector: "aup-icon", inputs: ["icon"] }] });
50
- }
51
- __decorate([
52
- StoreInValueModel(),
53
- __metadata("design:type", Object)
54
- ], TableMoreMenuComponent.prototype, "value", null);
55
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableMoreMenuComponent, decorators: [{
56
- type: Component,
57
- args: [{ selector: "aup-table-more-menu", template: "<mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <ng-template matMenuContent [cdkPortalOutlet]=\"popupComponentPortal$.value\"\n (attached)=\"initialise($event)\"></ng-template>\n</mat-menu>\n\n<button mat-icon-button [matMenuTriggerFor]=\"menu\" data-cy=\"more-menu-trigger\" *ngIf=\"visible$.value\">\n <aup-icon icon=\"mat:more_vert\"></aup-icon>\n</button>\n", styles: [":host{display:inline;text-align:end}\n"] }]
58
- }], ctorParameters: function () { return []; }, propDecorators: { value: [], matMenuTrigger: [{
59
- type: ViewChild,
60
- args: [MatMenuTrigger]
61
- }], preventDefault: [{
62
- type: HostListener,
63
- args: ["click", ["$event"]]
64
- }] } });
65
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtbW9yZS1tZW51LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYW5ndWxhci11aS1wb3dlcnVwcy9zcmMvbGliL2NvbXBvbmVudHMvdGFibGVzL3JlbmRlcmVyL3RhYmxlLW1vcmUtbWVudS90YWJsZS1tb3JlLW1lbnUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy90YWJsZXMvcmVuZGVyZXIvdGFibGUtbW9yZS1tZW51L3RhYmxlLW1vcmUtbWVudS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUE2QixlQUFlLEVBQUMsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRixPQUFPLEVBQUMsU0FBUyxFQUFnQixZQUFZLEVBQUUsU0FBUyxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQy9FLE9BQU8sRUFBQyxjQUFjLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQztBQUN0RCxPQUFPLEVBQ0wsT0FBTyxFQUNQLG9CQUFvQixFQUNwQixHQUFHLEVBQ0gsaUJBQWlCLEVBQ2pCLGlCQUFpQixFQUVsQixNQUFNLGdCQUFnQixDQUFDO0FBRXhCLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLCtCQUErQixDQUFDOzs7Ozs7O0FBVWxFLE1BQU0sT0FBTyxzQkFBMEIsU0FBUSxtQkFBbUI7SUFHeEQsTUFBTSxHQUFHLElBQUksaUJBQWlCLEVBQUssQ0FBQztJQUduQyx3QkFBUztJQUFULElBQUEsS0FBSywyQ0FBSTtJQUFULElBQUEsS0FBSyxpREFBSTtJQUdsQixjQUFjLENBQWlCO0lBRWQsVUFBVSxHQUFHLElBQUksaUJBQWlCLEVBQWlELENBQUM7SUFFckcscUJBQXFCLENBQW1FO0lBRXZFLFNBQVMsR0FBRyxJQUFJLENBQUMsa0JBQWtCLENBQUMsSUFBSSxvQkFBb0IsRUFBVyxDQUFDLENBQUM7SUFDbEYsa0JBQWtCLENBQXVEO0lBRWpGO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUFDUixNQUFNLEVBQUUsS0FBSyxFQUFFLEdBQUcsR0FBRyxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUN4QyxJQUFJLENBQUMscUJBQXFCLEdBQUcsS0FBSyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzdGLENBQUM7SUFFRCwyQkFBMkIsQ0FBQyxrQkFBaUUsRUFBRSxpQkFBc0U7UUFDbkssSUFBSSxDQUFDLFVBQVUsQ0FBQyxLQUFLLEdBQUcsa0JBQWtCLENBQUM7UUFDM0MsSUFBSSxDQUFDLGtCQUFrQixHQUFHLGlCQUFpQixDQUFDO0lBQzlDLENBQUM7SUFHRCxxREFBcUQ7SUFFckQsY0FBYyxDQUFDLE1BQWtCO1FBQy9CLE1BQU0sQ0FBQyxjQUFjLEVBQUUsQ0FBQztRQUN4QixNQUFNLENBQUMsZUFBZSxFQUFFLENBQUM7SUFDM0IsQ0FBQztJQUVELFVBQVUsQ0FBQyxNQUFrQztRQUMzQyxNQUFNLFNBQVMsR0FBSSxNQUF1RCxDQUFDLFFBQVEsQ0FBQztRQUNwRixTQUFTLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUN6RixJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxTQUFTLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDL0MsSUFBSSxJQUFJLENBQUMsa0JBQWtCLEVBQUU7WUFDM0IsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFNBQVMsQ0FBQyxDQUFDO1NBQ3BDO0lBQ0gsQ0FBQztJQUVELElBQUksUUFBUTtRQUNWLE9BQU8sSUFBSSxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUM7SUFDbEMsQ0FBQzt1R0FoRFUsc0JBQXNCOzJGQUF0QixzQkFBc0IsdUtBUXRCLGNBQWMsdUVDOUIzQiwrWEFRQTs7QURvQlc7SUFEUixpQkFBaUIsRUFBRTs7bURBQ0Y7MkZBTlAsc0JBQXNCO2tCQUxsQyxTQUFTOytCQUNFLHFCQUFxQjswRUFVdEIsS0FBSyxNQUdkLGNBQWM7c0JBRGIsU0FBUzt1QkFBQyxjQUFjO2dCQXdCekIsY0FBYztzQkFEYixZQUFZO3VCQUFDLE9BQU8sRUFBRSxDQUFDLFFBQVEsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2RrUG9ydGFsT3V0bGV0QXR0YWNoZWRSZWYsIENvbXBvbmVudFBvcnRhbH0gZnJvbSBcIkBhbmd1bGFyL2Nkay9wb3J0YWxcIjtcbmltcG9ydCB7Q29tcG9uZW50LCBDb21wb25lbnRSZWYsIEhvc3RMaXN0ZW5lciwgVmlld0NoaWxkfSBmcm9tIFwiQGFuZ3VsYXIvY29yZVwiO1xuaW1wb3J0IHtNYXRNZW51VHJpZ2dlcn0gZnJvbSBcIkBhbmd1bGFyL21hdGVyaWFsL21lbnVcIjtcbmltcG9ydCB7XG4gIENvbW1hbmQsXG4gIERlbGVnYXRpbmdWYWx1ZU1vZGVsLFxuICBEc2wsXG4gIE11dGFibGVWYWx1ZU1vZGVsLFxuICBTdG9yZUluVmFsdWVNb2RlbCxcbiAgVmFsdWVNb2RlbENoYWluXG59IGZyb20gXCJAY29vbG9uL3BlY3RpblwiO1xuaW1wb3J0IHtDb25zdHJ1Y3RhYmxlfSBmcm9tIFwiQGNvb2xvbi90eXBlc2NyaXB0LXV0aWxpdGllc1wiO1xuaW1wb3J0IHtEaXNwb3NhYmxlQ29tcG9uZW50fSBmcm9tIFwiLi4vLi4vLi4vZGlzcG9zYWJsZS1jb21wb25lbnRcIjtcbmltcG9ydCB7TG9hZGFibGVDb21wb25lbnR9IGZyb20gXCIuLi8uLi8uLi9sb2FkYWJsZS1jb21wb25lbnRcIjtcbmltcG9ydCB7Q2VsbFJlbmRlcmVyfSBmcm9tIFwiLi4vY2VsbC1yZW5kZXJlclwiO1xuaW1wb3J0IHtUYWJsZU1vcmVNZW51UG9wdXBDb21wb25lbnR9IGZyb20gXCIuL3RhYmxlLW1vcmUtbWVudS1wb3B1cC90YWJsZS1tb3JlLW1lbnUtcG9wdXAuY29tcG9uZW50XCI7XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogXCJhdXAtdGFibGUtbW9yZS1tZW51XCIsXG4gIHRlbXBsYXRlVXJsOiBcIi4vdGFibGUtbW9yZS1tZW51LmNvbXBvbmVudC5odG1sXCIsXG4gIHN0eWxlVXJsczogW1wiLi90YWJsZS1tb3JlLW1lbnUuY29tcG9uZW50LnNjc3NcIl1cbn0pXG5leHBvcnQgY2xhc3MgVGFibGVNb3JlTWVudUNvbXBvbmVudDxUPiBleHRlbmRzIERpc3Bvc2FibGVDb21wb25lbnQgaW1wbGVtZW50cyBDZWxsUmVuZGVyZXI8VD4ge1xuXG5cbiAgcHJpdmF0ZSB2YWx1ZSQgPSBuZXcgTXV0YWJsZVZhbHVlTW9kZWw8VD4oKTtcblxuICBAU3RvcmVJblZhbHVlTW9kZWwoKVxuICBhY2Nlc3NvciB2YWx1ZTogVDtcblxuICBAVmlld0NoaWxkKE1hdE1lbnVUcmlnZ2VyKVxuICBtYXRNZW51VHJpZ2dlcjogTWF0TWVudVRyaWdnZXI7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBwb3B1cFR5cGUkID0gbmV3IE11dGFibGVWYWx1ZU1vZGVsPENvbnN0cnVjdGFibGU8VGFibGVNb3JlTWVudVBvcHVwQ29tcG9uZW50PFQ+Pj4oKTtcblxuICBwb3B1cENvbXBvbmVudFBvcnRhbCQ6IFZhbHVlTW9kZWxDaGFpbjxDb21wb25lbnRQb3J0YWw8VGFibGVNb3JlTWVudVBvcHVwQ29tcG9uZW50PFQ+Pj47XG5cbiAgcHJpdmF0ZSByZWFkb25seSBfdmlzaWJsZSQgPSB0aGlzLnJlZ2lzdGVyRGlzcG9zYWJsZShuZXcgRGVsZWdhdGluZ1ZhbHVlTW9kZWw8Ym9vbGVhbj4oKSk7XG4gIHByaXZhdGUgaW5pdGlhbGlzZUNhbGxiYWNrPzogKGNvbXBvbmVudDogVGFibGVNb3JlTWVudVBvcHVwQ29tcG9uZW50PFQ+KSA9PiB2b2lkO1xuXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgY29uc3QgeyBjaGFpbiB9ID0gRHNsLmRpc3Bvc2VXaXRoKHRoaXMpO1xuICAgIHRoaXMucG9wdXBDb21wb25lbnRQb3J0YWwkID0gY2hhaW4odGhpcy5wb3B1cFR5cGUkKS5tYXAodHlwZSA9PiBuZXcgQ29tcG9uZW50UG9ydGFsKHR5cGUpKTtcbiAgfVxuXG4gIGNvbmZpZ3VyZVBvcHVwQ29tcG9uZW50VHlwZShwb3B1cENvbXBvbmVudFR5cGU6IENvbnN0cnVjdGFibGU8VGFibGVNb3JlTWVudVBvcHVwQ29tcG9uZW50PFQ+PiwgY29uZmlndXJlQ2FsbGJhY2s/OiAoY29tcG9uZW50OlRhYmxlTW9yZU1lbnVQb3B1cENvbXBvbmVudDxUPikgPT4gdm9pZCkge1xuICAgIHRoaXMucG9wdXBUeXBlJC52YWx1ZSA9IHBvcHVwQ29tcG9uZW50VHlwZTtcbiAgICB0aGlzLmluaXRpYWxpc2VDYWxsYmFjayA9IGNvbmZpZ3VyZUNhbGxiYWNrO1xuICB9XG5cblxuICAvLyBTdG9wcyB0cmVlIHNlbGVjdGlvbiB3aGVuIGNsaWNraW5nIHRoZSBtZW51IGJ1dHRvblxuICBASG9zdExpc3RlbmVyKFwiY2xpY2tcIiwgW1wiJGV2ZW50XCJdKVxuICBwcmV2ZW50RGVmYXVsdCgkZXZlbnQ6IE1vdXNlRXZlbnQpIHtcbiAgICAkZXZlbnQucHJldmVudERlZmF1bHQoKTtcbiAgICAkZXZlbnQuc3RvcFByb3BhZ2F0aW9uKCk7XG4gIH1cblxuICBpbml0aWFsaXNlKCRldmVudDogQ2RrUG9ydGFsT3V0bGV0QXR0YWNoZWRSZWYpIHtcbiAgICBjb25zdCBjb21wb25lbnQgPSAoJGV2ZW50IGFzIENvbXBvbmVudFJlZjxUYWJsZU1vcmVNZW51UG9wdXBDb21wb25lbnQ8VD4+KS5pbnN0YW5jZTtcbiAgICBjb21wb25lbnQuaW5pdGlhbGlzZSh0aGlzLnZhbHVlJCwgQ29tbWFuZC5jcmVhdGUoKCkgPT4gdGhpcy5tYXRNZW51VHJpZ2dlci5jbG9zZU1lbnUoKSkpO1xuICAgIHRoaXMuX3Zpc2libGUkLnNldERlbGVnYXRlKGNvbXBvbmVudC52aXNpYmxlJCk7XG4gICAgaWYgKHRoaXMuaW5pdGlhbGlzZUNhbGxiYWNrKSB7XG4gICAgICB0aGlzLmluaXRpYWxpc2VDYWxsYmFjayhjb21wb25lbnQpO1xuICAgIH1cbiAgfVxuXG4gIGdldCB2aXNpYmxlJCgpIHtcbiAgICByZXR1cm4gdGhpcy5fdmlzaWJsZSQucmVhZG9ubHkkO1xuICB9XG5cbn1cbiIsIjxtYXQtbWVudSAjbWVudT1cIm1hdE1lbnVcIiB4UG9zaXRpb249XCJiZWZvcmVcIj5cbiAgPG5nLXRlbXBsYXRlIG1hdE1lbnVDb250ZW50IFtjZGtQb3J0YWxPdXRsZXRdPVwicG9wdXBDb21wb25lbnRQb3J0YWwkLnZhbHVlXCJcbiAgICAgICAgICAgICAgIChhdHRhY2hlZCk9XCJpbml0aWFsaXNlKCRldmVudClcIj48L25nLXRlbXBsYXRlPlxuPC9tYXQtbWVudT5cblxuPGJ1dHRvbiBtYXQtaWNvbi1idXR0b24gW21hdE1lbnVUcmlnZ2VyRm9yXT1cIm1lbnVcIiBkYXRhLWN5PVwibW9yZS1tZW51LXRyaWdnZXJcIiAqbmdJZj1cInZpc2libGUkLnZhbHVlXCI+XG4gIDxhdXAtaWNvbiBpY29uPVwibWF0Om1vcmVfdmVydFwiPjwvYXVwLWljb24+XG48L2J1dHRvbj5cbiJdfQ==
@@ -1,84 +0,0 @@
1
- import { Component, Input, ViewChild } from '@angular/core';
2
- import { MatMenuTrigger } from '@angular/material/menu';
3
- import { Dsl } from '@coolon/pectin';
4
- import { DisposableComponent } from '../../disposable-component';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/common";
7
- import * as i2 from "../../commands/group/tool-bar/tool-bar.component";
8
- import * as i3 from "../../commands/command/command.component";
9
- import * as i4 from "../../commands/group/popup-menu/more-menu.component";
10
- class MenuItemData {
11
- factory;
12
- face;
13
- constructor(factory, face) {
14
- this.factory = factory;
15
- this.face = face;
16
- }
17
- }
18
- /**
19
- *
20
- */
21
- export class TableRowMenuComponent extends DisposableComponent {
22
- value;
23
- menu;
24
- actions = [];
25
- moreActions = [];
26
- registerAction(commandFactory, properties) {
27
- this.actions.push(new MenuItemData(commandFactory, properties));
28
- }
29
- registerMoreAction(commandFactory, properties) {
30
- this.moreActions.push(new MenuItemData(commandFactory, properties));
31
- }
32
- constructor() {
33
- super();
34
- }
35
- createMoreMenuCommand(item, value) {
36
- const { when } = Dsl.disposeWith(this);
37
- const command = item.factory.create(value, { disposedWith: this });
38
- when(command.busy$).becomesFalsey(() => {
39
- this.closeMoreMenu();
40
- });
41
- return command;
42
- }
43
- closeMoreMenu() {
44
- this.menu.closeMenu();
45
- }
46
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableRowMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
47
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableRowMenuComponent, selector: "aup-table-row-menu", inputs: { value: "value" }, viewQueries: [{ propertyName: "menu", first: true, predicate: MatMenuTrigger, descendants: true }], usesInheritance: true, ngImport: i0, template: `
48
- <aup-tool-bar>
49
- <aup-command *ngFor="let action of actions"
50
- #comp
51
- [command]="action.factory.create(value, {disposedWith: comp})"
52
- [face]="action.face"></aup-command>
53
- </aup-tool-bar>
54
- <ng-container *ngIf="moreActions.length > 0">
55
- <aup-more-menu>
56
- <aup-command *ngFor="let action of moreActions" #comp [command]="action.factory.create(value, {disposedWith: comp})"
57
- [face]="action.face"></aup-command>
58
- </aup-more-menu>
59
- </ng-container>
60
- `, isInline: true, styles: [":host{display:inline-flex;flex-direction:row;align-items:center}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.ToolBarComponent, selector: "aup-tool-bar" }, { kind: "component", type: i3.CommandComponent, selector: "aup-command", inputs: ["command", "face$", "face", "busyFace$", "busyFace", "alignFace"] }, { kind: "component", type: i4.MoreMenuComponent, selector: "aup-more-menu", inputs: ["tooltip"] }] });
61
- }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableRowMenuComponent, decorators: [{
63
- type: Component,
64
- args: [{ selector: 'aup-table-row-menu', template: `
65
- <aup-tool-bar>
66
- <aup-command *ngFor="let action of actions"
67
- #comp
68
- [command]="action.factory.create(value, {disposedWith: comp})"
69
- [face]="action.face"></aup-command>
70
- </aup-tool-bar>
71
- <ng-container *ngIf="moreActions.length > 0">
72
- <aup-more-menu>
73
- <aup-command *ngFor="let action of moreActions" #comp [command]="action.factory.create(value, {disposedWith: comp})"
74
- [face]="action.face"></aup-command>
75
- </aup-more-menu>
76
- </ng-container>
77
- `, styles: [":host{display:inline-flex;flex-direction:row;align-items:center}\n"] }]
78
- }], ctorParameters: function () { return []; }, propDecorators: { value: [{
79
- type: Input
80
- }], menu: [{
81
- type: ViewChild,
82
- args: [MatMenuTrigger]
83
- }] } });
84
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtcm93LW1lbnUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLXVpLXBvd2VydXBzL3NyYy9saWIvY29tcG9uZW50cy90YWJsZXMvdGFibGUtcm93LW1lbnUvdGFibGUtcm93LW1lbnUuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQUMsY0FBYyxFQUFDLE1BQU0sd0JBQXdCLENBQUM7QUFFdEQsT0FBTyxFQUFVLEdBQUcsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBRTVDLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7QUFJL0QsTUFBTSxZQUFZO0lBQ0s7SUFBNEM7SUFBakUsWUFBcUIsT0FBaUMsRUFBVyxJQUFpQjtRQUE3RCxZQUFPLEdBQVAsT0FBTyxDQUEwQjtRQUFXLFNBQUksR0FBSixJQUFJLENBQWE7SUFDbEYsQ0FBQztDQUNGO0FBRUQ7O0dBRUc7QUF1QkgsTUFBTSxPQUFPLHFCQUF3QyxTQUFRLG1CQUFtQjtJQUc5RSxLQUFLLENBQUk7SUFHVCxJQUFJLENBQWlCO0lBRVosT0FBTyxHQUFzQixFQUFFLENBQUM7SUFDaEMsV0FBVyxHQUFzQixFQUFFLENBQUM7SUFFN0MsY0FBYyxDQUFDLGNBQXdDLEVBQUUsVUFBdUI7UUFDOUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxZQUFZLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDbEUsQ0FBQztJQUVELGtCQUFrQixDQUFDLGNBQXdDLEVBQUUsVUFBdUI7UUFDbEYsSUFBSSxDQUFDLFdBQVcsQ0FBQyxJQUFJLENBQUMsSUFBSSxZQUFZLENBQUMsY0FBYyxFQUFFLFVBQVUsQ0FBQyxDQUFDLENBQUM7SUFDdEUsQ0FBQztJQUVEO1FBQ0UsS0FBSyxFQUFFLENBQUM7SUFDVixDQUFDO0lBRUQscUJBQXFCLENBQUMsSUFBcUIsRUFBRSxLQUFRO1FBQ25ELE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxHQUFHLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxDQUFDO1FBQ3ZDLE1BQU0sT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLEtBQUssRUFBRSxFQUFDLFlBQVksRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO1FBQ2pFLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLENBQUMsYUFBYSxDQUFDLEdBQUcsRUFBRTtZQUNyQyxJQUFJLENBQUMsYUFBYSxFQUFFLENBQUM7UUFDdkIsQ0FBQyxDQUFDLENBQUM7UUFDSCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDO0lBRU8sYUFBYTtRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsRUFBRSxDQUFDO0lBQ3hCLENBQUM7dUdBbENVLHFCQUFxQjsyRkFBckIscUJBQXFCLDRIQUtyQixjQUFjLHVFQXpCZjs7Ozs7Ozs7Ozs7OztHQWFUOzsyRkFPVSxxQkFBcUI7a0JBdEJqQyxTQUFTOytCQUNFLG9CQUFvQixZQUNwQjs7Ozs7Ozs7Ozs7OztHQWFUOzBFQVVELEtBQUs7c0JBREosS0FBSztnQkFJTixJQUFJO3NCQURILFNBQVM7dUJBQUMsY0FBYyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBJbnB1dCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7TWF0TWVudVRyaWdnZXJ9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL21lbnUnO1xuXG5pbXBvcnQge0NvbW1hbmQsIERzbH0gZnJvbSAnQGNvb2xvbi9wZWN0aW4nO1xuaW1wb3J0IHtDb21tYW5kRmFjZX0gZnJvbSAnLi4vLi4vY29tbWFuZHMvY29tbWFuZC1mYWNlJztcbmltcG9ydCB7RGlzcG9zYWJsZUNvbXBvbmVudH0gZnJvbSAnLi4vLi4vZGlzcG9zYWJsZS1jb21wb25lbnQnO1xuaW1wb3J0IHtDZWxsUmVuZGVyZXJ9IGZyb20gJy4uL3JlbmRlcmVyL2NlbGwtcmVuZGVyZXInO1xuXG5cbmNsYXNzIE1lbnVJdGVtRGF0YTxUIGV4dGVuZHMgb2JqZWN0PiAge1xuICBjb25zdHJ1Y3RvcihyZWFkb25seSBmYWN0b3J5OiBDb21tYW5kLkZhY3Rvcnk8VCwgdm9pZD4sIHJlYWRvbmx5IGZhY2U6IENvbW1hbmRGYWNlKSB7XG4gIH1cbn1cblxuLyoqXG4gKlxuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdhdXAtdGFibGUtcm93LW1lbnUnLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxhdXAtdG9vbC1iYXI+XG4gICAgICA8YXVwLWNvbW1hbmQgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBhY3Rpb25zXCJcbiAgICAgICAgICAgICAgICAgICAjY29tcFxuICAgICAgICAgICAgICAgICAgIFtjb21tYW5kXT1cImFjdGlvbi5mYWN0b3J5LmNyZWF0ZSh2YWx1ZSwge2Rpc3Bvc2VkV2l0aDogY29tcH0pXCJcbiAgICAgICAgICAgICAgICAgICBbZmFjZV09XCJhY3Rpb24uZmFjZVwiPjwvYXVwLWNvbW1hbmQ+XG4gICAgPC9hdXAtdG9vbC1iYXI+XG4gICAgPG5nLWNvbnRhaW5lciAqbmdJZj1cIm1vcmVBY3Rpb25zLmxlbmd0aCA+IDBcIj5cbiAgICAgIDxhdXAtbW9yZS1tZW51PlxuICAgICAgICA8YXVwLWNvbW1hbmQgKm5nRm9yPVwibGV0IGFjdGlvbiBvZiBtb3JlQWN0aW9uc1wiICNjb21wIFtjb21tYW5kXT1cImFjdGlvbi5mYWN0b3J5LmNyZWF0ZSh2YWx1ZSwge2Rpc3Bvc2VkV2l0aDogY29tcH0pXCJcbiAgICAgICAgICAgICAgICAgICAgIFtmYWNlXT1cImFjdGlvbi5mYWNlXCI+PC9hdXAtY29tbWFuZD5cbiAgICAgIDwvYXVwLW1vcmUtbWVudT5cbiAgICA8L25nLWNvbnRhaW5lcj5cbiAgYCxcbiAgc3R5bGVzOiBbYDpob3N0IHtcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gIH1gXVxufSlcbmV4cG9ydCBjbGFzcyBUYWJsZVJvd01lbnVDb21wb25lbnQ8VCBleHRlbmRzIG9iamVjdD4gZXh0ZW5kcyBEaXNwb3NhYmxlQ29tcG9uZW50IGltcGxlbWVudHMgQ2VsbFJlbmRlcmVyPFQ+IHtcblxuICBASW5wdXQoKVxuICB2YWx1ZTogVDtcblxuICBAVmlld0NoaWxkKE1hdE1lbnVUcmlnZ2VyKVxuICBtZW51OiBNYXRNZW51VHJpZ2dlcjtcblxuICByZWFkb25seSBhY3Rpb25zOiBNZW51SXRlbURhdGE8VD5bXSA9IFtdO1xuICByZWFkb25seSBtb3JlQWN0aW9uczogTWVudUl0ZW1EYXRhPFQ+W10gPSBbXTtcblxuICByZWdpc3RlckFjdGlvbihjb21tYW5kRmFjdG9yeTogQ29tbWFuZC5GYWN0b3J5PFQsIHZvaWQ+LCBwcm9wZXJ0aWVzOiBDb21tYW5kRmFjZSkge1xuICAgIHRoaXMuYWN0aW9ucy5wdXNoKG5ldyBNZW51SXRlbURhdGEoY29tbWFuZEZhY3RvcnksIHByb3BlcnRpZXMpKTtcbiAgfVxuXG4gIHJlZ2lzdGVyTW9yZUFjdGlvbihjb21tYW5kRmFjdG9yeTogQ29tbWFuZC5GYWN0b3J5PFQsIHZvaWQ+LCBwcm9wZXJ0aWVzOiBDb21tYW5kRmFjZSkge1xuICAgIHRoaXMubW9yZUFjdGlvbnMucHVzaChuZXcgTWVudUl0ZW1EYXRhKGNvbW1hbmRGYWN0b3J5LCBwcm9wZXJ0aWVzKSk7XG4gIH1cblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgY3JlYXRlTW9yZU1lbnVDb21tYW5kKGl0ZW06IE1lbnVJdGVtRGF0YTxUPiwgdmFsdWU6IFQpOiBDb21tYW5kPHZvaWQ+IHtcbiAgICBjb25zdCB7IHdoZW4gfSA9IERzbC5kaXNwb3NlV2l0aCh0aGlzKTtcbiAgICBjb25zdCBjb21tYW5kID0gaXRlbS5mYWN0b3J5LmNyZWF0ZSh2YWx1ZSwge2Rpc3Bvc2VkV2l0aDogdGhpc30pO1xuICAgIHdoZW4oY29tbWFuZC5idXN5JCkuYmVjb21lc0ZhbHNleSgoKSA9PiB7XG4gICAgICB0aGlzLmNsb3NlTW9yZU1lbnUoKTtcbiAgICB9KTtcbiAgICByZXR1cm4gY29tbWFuZDtcbiAgfVxuXG4gIHByaXZhdGUgY2xvc2VNb3JlTWVudSgpIHtcbiAgICB0aGlzLm1lbnUuY2xvc2VNZW51KCk7XG4gIH1cbn1cbiJdfQ==
@@ -1,18 +0,0 @@
1
- import { Command, ValueModel } from "@coolon/pectin";
2
- import { PopupAwareComponent } from "../../../../commands/group/popup-aware.component";
3
- import { PopupContainer } from "../../../../commands/group/popup-container";
4
- import { LoadableComponent } from "../../../../loadable-component";
5
- import * as i0 from "@angular/core";
6
- export declare class TableMoreMenuPopupComponent<T> extends LoadableComponent implements PopupContainer {
7
- private _value$;
8
- private readonly _visible$;
9
- private readonly _closeCommand;
10
- initialise(row$: ValueModel<T>, closeCommand: Command<void>): void;
11
- protected visibleWhile(condition: ValueModel<boolean>): this;
12
- get visible$(): ValueModel<boolean>;
13
- get closeCommand(): Command<void>;
14
- get value$(): ValueModel<T>;
15
- register(comp: PopupAwareComponent): void;
16
- static ɵfac: i0.ɵɵFactoryDeclaration<TableMoreMenuPopupComponent<any>, never>;
17
- static ɵcmp: i0.ɵɵComponentDeclaration<TableMoreMenuPopupComponent<any>, "aup-table-more-menu-popup", never, {}, {}, never, never, false, never>;
18
- }
@@ -1,28 +0,0 @@
1
- import { MatMenuTrigger } from '@angular/material/menu';
2
- import { Command } from '@coolon/pectin';
3
- import { CommandFace } from '../../commands/command-face';
4
- import { DisposableComponent } from '../../disposable-component';
5
- import { CellRenderer } from '../renderer/cell-renderer';
6
- import * as i0 from "@angular/core";
7
- declare class MenuItemData<T extends object> {
8
- readonly factory: Command.Factory<T, void>;
9
- readonly face: CommandFace;
10
- constructor(factory: Command.Factory<T, void>, face: CommandFace);
11
- }
12
- /**
13
- *
14
- */
15
- export declare class TableRowMenuComponent<T extends object> extends DisposableComponent implements CellRenderer<T> {
16
- value: T;
17
- menu: MatMenuTrigger;
18
- readonly actions: MenuItemData<T>[];
19
- readonly moreActions: MenuItemData<T>[];
20
- registerAction(commandFactory: Command.Factory<T, void>, properties: CommandFace): void;
21
- registerMoreAction(commandFactory: Command.Factory<T, void>, properties: CommandFace): void;
22
- constructor();
23
- createMoreMenuCommand(item: MenuItemData<T>, value: T): Command<void>;
24
- private closeMoreMenu;
25
- static ɵfac: i0.ɵɵFactoryDeclaration<TableRowMenuComponent<any>, never>;
26
- static ɵcmp: i0.ɵɵComponentDeclaration<TableRowMenuComponent<any>, "aup-table-row-menu", never, { "value": { "alias": "value"; "required": false; }; }, {}, never, never, false, never>;
27
- }
28
- export {};