@coolon/angular-ui-powerups 3.13.0 → 3.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/assets/table.scss +5 -0
  3. package/bundles/coolon-angular-ui-powerups.umd.js +55 -26
  4. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  5. package/bundles/coolon-angular-ui-powerups.umd.min.js +1 -1
  6. package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
  7. package/coolon-angular-ui-powerups.metadata.json +1 -1
  8. package/esm2015/lib/components/card-container/card-container.component.js +1 -1
  9. package/esm2015/lib/components/card-container/card-container.component.metadata.json +1 -1
  10. package/esm2015/lib/components/components.module.ngfactory.js.map +1 -1
  11. package/esm2015/lib/components/resize-aware.component.js +1 -1
  12. package/esm2015/lib/components/resize-aware.component.js.map +1 -1
  13. package/esm2015/lib/components/table/abstract-table-model.js +1 -5
  14. package/esm2015/lib/components/table/abstract-table-model.js.map +1 -1
  15. package/esm2015/lib/components/table/abstract-table-model.metadata.json +1 -1
  16. package/esm2015/lib/components/table/column-model.js +29 -10
  17. package/esm2015/lib/components/table/column-model.js.map +1 -1
  18. package/esm2015/lib/components/table/column-model.metadata.json +1 -1
  19. package/esm2015/lib/components/table/select-cell-renderer/select-cell-renderer.component.js +4 -2
  20. package/esm2015/lib/components/table/select-cell-renderer/select-cell-renderer.component.js.map +1 -1
  21. package/esm2015/lib/components/table/select-header-cell-renderer/select-header-cell-renderer.component.js +5 -2
  22. package/esm2015/lib/components/table/select-header-cell-renderer/select-header-cell-renderer.component.js.map +1 -1
  23. package/esm2015/lib/components/table/select-header-cell-renderer/select-header-cell-renderer.component.metadata.json +1 -1
  24. package/esm2015/lib/components/table/table-model.js.map +1 -1
  25. package/esm2015/lib/components/table/table.component.js +12 -3
  26. package/esm2015/lib/components/table/table.component.js.map +1 -1
  27. package/esm2015/lib/components/table/table.component.metadata.json +1 -1
  28. package/fesm2015/coolon-angular-ui-powerups.js +52 -23
  29. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  30. package/lib/components/table/abstract-table-model.d.ts +1 -2
  31. package/lib/components/table/column-model.d.ts +9 -2
  32. package/lib/components/table/select-cell-renderer/select-cell-renderer.component.d.ts +2 -2
  33. package/lib/components/table/select-header-cell-renderer/select-header-cell-renderer.component.d.ts +4 -3
  34. package/lib/components/table/table-model.d.ts +1 -1
  35. package/lib/components/table/table.component.d.ts +6 -0
  36. package/package.json +2 -2
@@ -32,7 +32,7 @@ export declare class AbstractTableModel<Row> extends GarbageCollector {
32
32
  pluckList<P extends Types.ArrayPropertiesOf<Row>>(property: P, options?: {
33
33
  columnId: string;
34
34
  }): ListPropertyColumnModel<Row, P>;
35
- protected _addSelectionColumn(selectionModel: SelectionModel<Row>): SelectionColumnModel<Row>;
35
+ protected _addSelectionColumn(selectionModel?: SelectionModel<Row>): SelectionColumnModel<Row>;
36
36
  addEditControls(saveCommand: UnaryCommand<DirtyTrackingForm<Row>, boolean>): EditorControlColumnModel<Row>;
37
37
  addCustomColumn<V>(columnId: string, dataAccessor: (row: Row) => V): CustomValueColumnModel<Row, V>;
38
38
  addComponentColumn<C extends CellRenderer<Row>>(columnId: string, component: ComponentType<C>, onInit?: OnComponentInit<C>): CustomValueColumnModel<Row, Row>;
@@ -42,7 +42,6 @@ export declare class AbstractTableModel<Row> extends GarbageCollector {
42
42
  getRowClasses(row: Row): string[];
43
43
  useFormFactory(factory: (row: Row) => DirtyTrackingForm<Row>): this;
44
44
  protected addColumn<C extends ColumnModel<Row>>(column: C): C;
45
- get selectionModel(): SelectionModel<Row>;
46
45
  columnTextProperties(columnTextProperties: {
47
46
  [columnName: string]: ColumnTextProperties;
48
47
  }): void;
@@ -1,6 +1,6 @@
1
1
  import { ComponentType } from '@angular/cdk/overlay';
2
2
  import { TemplateRef, ViewContainerRef } from '@angular/core';
3
- import { Command, DirtyTrackingForm, SelectionModel, Types, UnaryCommand, Validator } from '@coolon/pectin';
3
+ import { Command, DelegatingSelectionModel, DirtyTrackingForm, SelectionModel, Types, UnaryCommand, Validator, ValueModel } from '@coolon/pectin';
4
4
  import { CellEditorComponent, CellListEditorComponent } from './cell-editors';
5
5
  import { CellEditorPortalRef, CellHeaderPortalRef, CellRendererPortalRef } from './cell-portal-ref';
6
6
  import { CellRenderer } from './cell-renderer';
@@ -31,9 +31,13 @@ export declare class ColumnModel<Row> {
31
31
  private _cellEditorPortalRef;
32
32
  private _selectRowOnClick;
33
33
  private _flex;
34
+ private _visibleModel;
34
35
  constructor(columnId: string, textPropertiesProvider: ColumnModel.TextPropertiesProvider);
35
36
  protected installHeaderRenderer(): void;
36
37
  getHeaderText(): string;
38
+ isVisible(): boolean;
39
+ get visible(): ValueModel<boolean>;
40
+ visibleWhile(visible: ValueModel<boolean>): this;
37
41
  protected getDefaultHeaderText(): string;
38
42
  getColumnTextProperties(): ColumnTextProperties;
39
43
  textProperties(columnTextProperties: ColumnTextProperties): this;
@@ -112,12 +116,15 @@ export declare class CustomTemplateColumnModel<Row> extends ColumnModel<Row> {
112
116
  selectRowOnClick(selectOnRowClick: boolean): this;
113
117
  }
114
118
  export declare class SelectionColumnModel<Row> extends ColumnModel<Row> {
115
- readonly selectionModel: SelectionModel<Row>;
116
119
  private _enableHeaderControls;
120
+ readonly selectionModel: DelegatingSelectionModel<Row, unknown>;
121
+ private hasSelectionModel;
117
122
  constructor(columnId: string, defaults: ColumnModel.TextPropertiesProvider, selectionModel: SelectionModel<Row>);
123
+ setSelectionModel(selectionModel: SelectionModel<Row>): void;
118
124
  protected getDefaultHeaderText(): string;
119
125
  isRowSelectionEnabledByDefault(): boolean | undefined;
120
126
  selectOnRowClick(selectOnRowClick: boolean): this;
121
127
  enableHeaderControls(enable: boolean): this;
122
128
  selectRow(row: Row): void;
129
+ isSelected(row: Row): boolean;
123
130
  }
@@ -1,9 +1,9 @@
1
- import { Command, SelectionModel } from '@coolon/pectin';
1
+ import { Command, DelegatingSelectionModel } from '@coolon/pectin';
2
2
  import { DisposableComponent } from '../../disposable-component';
3
3
  export declare class SelectCellRendererComponent<Row> extends DisposableComponent {
4
4
  readonly selectCommand: Command<void>;
5
5
  row: Row;
6
- selectionModel: SelectionModel<Row>;
6
+ selectionModel: DelegatingSelectionModel<Row, unknown>;
7
7
  constructor();
8
8
  isSelected(): boolean;
9
9
  }
@@ -1,10 +1,11 @@
1
- import { Command, MultipleSelectionModel } from '@coolon/pectin';
1
+ import { Command, DelegatingSelectionModel } from '@coolon/pectin';
2
2
  import { DisposableComponent } from '../../disposable-component';
3
3
  export declare class SelectHeaderCellRendererComponent<Row> extends DisposableComponent {
4
4
  readonly selectCommand: Command<void>;
5
- selectionModel: MultipleSelectionModel<Row, any>;
5
+ selectionModel: DelegatingSelectionModel<Row, any>;
6
6
  enableHeaderControls: boolean;
7
7
  constructor();
8
8
  isSelected(): boolean;
9
- isIntermediate(): boolean;
9
+ isIntermediate(): any;
10
+ isVisible(): boolean;
10
11
  }
@@ -73,5 +73,5 @@ import { SelectionColumnModel } from './column-model';
73
73
  */
74
74
  export declare class TableModel<Row> extends AbstractTableModel<Row> {
75
75
  static fromList<Row>(sourceOfTruth: ListModel<Row>, builder?: (tableModel: TableModel<Row>) => void): TableModel<Row>;
76
- addSelectionColumn(selectionModel: SelectionModel<Row>): SelectionColumnModel<Row>;
76
+ addSelectionColumn(selectionModel?: SelectionModel<Row>): SelectionColumnModel<Row>;
77
77
  }
@@ -40,6 +40,12 @@ export declare class TableComponent<Row> extends ResizeAwareComponent implements
40
40
  columnIds: ListModelChain<string>;
41
41
  private columnsById;
42
42
  readonly visibleRowCount: ValueModel<number>;
43
+ /**
44
+ * Set to true to enable scrolling. Once enabled the table will have 0 implicit height. You will either
45
+ * need to set it explicitly e.g. height: 400px; or by using flex or grid layout to make it fill it's
46
+ * containment area.
47
+ */
48
+ enableScrolling: boolean;
43
49
  private readonly headerHeight;
44
50
  private readonly rowHeight;
45
51
  constructor(elementRef: ElementRef, ngZone: NgZone);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coolon/angular-ui-powerups",
3
- "version": "3.13.0",
3
+ "version": "3.15.0",
4
4
  "schematics": "./schematics/collection.json",
5
5
  "dependencies": {
6
6
  "@coolon/typescript-utilities": "^2.2.0",
@@ -16,7 +16,7 @@
16
16
  "@angular/material": "^10.2.0",
17
17
  "@angular/animations": "^10.1.1",
18
18
  "@angular/cdk": "^10.2.0",
19
- "@coolon/pectin": ">=3.9.0",
19
+ "@coolon/pectin": ">=3.10.0",
20
20
  "resize-observer-polyfill": "^1.5.1",
21
21
  "@fortawesome/angular-fontawesome": "^0.8.1",
22
22
  "@fortawesome/fontawesome-svg-core": "^1.2.34",