@firestitch/list 18.0.73 → 18.0.75
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.
- package/app/components/list/list.component.d.ts +18 -4
- package/app/directives/cell/cell-row-type-scope.directive.d.ts +11 -0
- package/app/directives/cell/cell.directive.d.ts +15 -1
- package/app/directives/cell/typed-cell.directive.d.ts +15 -0
- package/app/fs-list.module.d.ts +15 -14
- package/app/interfaces/listconfig.interface.d.ts +19 -9
- package/esm2022/app/classes/actions-controller.mjs +3 -5
- package/esm2022/app/classes/list-controller.mjs +5 -2
- package/esm2022/app/components/list/list.component.mjs +53 -2
- package/esm2022/app/directives/cell/cell-row-type-scope.directive.mjs +23 -0
- package/esm2022/app/directives/cell/cell.directive.mjs +23 -3
- package/esm2022/app/directives/cell/typed-cell.directive.mjs +20 -0
- package/esm2022/app/fs-list.module.mjs +6 -1
- package/esm2022/app/interfaces/listconfig.interface.mjs +1 -1
- package/esm2022/public_api.mjs +3 -1
- package/fesm2022/firestitch-list.mjs +122 -9
- package/fesm2022/firestitch-list.mjs.map +1 -1
- package/package.json +1 -1
- package/public_api.d.ts +2 -0
package/esm2022/public_api.mjs
CHANGED
|
@@ -17,6 +17,8 @@ export { FsStatusComponent } from './app/components/status/status.component';
|
|
|
17
17
|
// Directives
|
|
18
18
|
export { FsListHeadingDirective } from './app/directives';
|
|
19
19
|
export { FsListCellDirective } from './app/directives/cell/cell.directive';
|
|
20
|
+
export { FsListCellRowTypeScopeDirective } from './app/directives/cell/cell-row-type-scope.directive';
|
|
21
|
+
export { FsTypedListCellDirective } from './app/directives/cell/typed-cell.directive';
|
|
20
22
|
export { FsListColumnDirective } from './app/directives/column/column.directive';
|
|
21
23
|
export { FsListContentDirective } from './app/directives/content/content.directive';
|
|
22
24
|
export { FsListDraggableListDirective } from './app/directives/draggable-list/draggable-list.directive';
|
|
@@ -40,4 +42,4 @@ export { ActionType } from './app/enums/action-type.enum';
|
|
|
40
42
|
export { PaginationStrategy } from './app/enums/pagination-strategy.enum';
|
|
41
43
|
export { RowType } from './app/enums/row-type.enum';
|
|
42
44
|
export { FsListState } from './app/enums/state.enum';
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVwRCxZQUFZO0FBQ1osT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXpELGFBQWE7QUFDYixPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdkUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLCtDQUErQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN6RSxPQUFPLEVBQ0wscUJBQXFCLEdBQ3RCLE1BQU0sc0VBQXNFLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seURBQXlELENBQUM7QUFDL0YsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDN0UsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDMUYsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUNqRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrREFBa0QsQ0FBQztBQUN6RixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwwQ0FBMEMsQ0FBQztBQUU3RSxhQUFhO0FBQ2IsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDMUQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDM0UsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0scURBQXFELENBQUM7QUFDdEcsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDdEYsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFDcEYsT0FBTyxFQUFFLDRCQUE0QixFQUFFLE1BQU0sMERBQTBELENBQUM7QUFDeEcsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sb0RBQW9ELENBQUM7QUFDL0YsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFDakYsT0FBTyxFQUFFLGlDQUFpQyxFQUFFLE1BQU0sc0VBQXNFLENBQUM7QUFDekgsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDbEcsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sc0RBQXNELENBQUM7QUFDbEcsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sMENBQTBDLENBQUM7QUFFakYsU0FBUztBQUNULE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUMzRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDdEYsT0FBTyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDOUYsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDckUsT0FBTyxFQUFFLE1BQU0sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUMxRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFrQjdELFFBQVE7QUFDUixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDMUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDMUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IEZzTGlzdE1vZHVsZSB9IGZyb20gJy4vYXBwL2ZzLWxpc3QubW9kdWxlJztcblxuLy8gUHJvdmlkZXJzXG5leHBvcnQgeyBGU19MSVNUX0NPTkZJRyB9IGZyb20gJy4vYXBwL2ZzLWxpc3QucHJvdmlkZXJzJztcblxuLy8gQ29tcG9uZW50c1xuZXhwb3J0IHsgRnNCb2R5Q29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy9ib2R5L2JvZHkuY29tcG9uZW50JztcbmV4cG9ydCB7IEZzQ2VsbENvbXBvbmVudCB9IGZyb20gJy4vYXBwL2NvbXBvbmVudHMvYm9keS9yb3cvY2VsbC9jZWxsLmNvbXBvbmVudCc7XG5leHBvcnQgeyBGc1Jvd0NvbXBvbmVudCB9IGZyb20gJy4vYXBwL2NvbXBvbmVudHMvYm9keS9yb3cvcm93LmNvbXBvbmVudCc7XG5leHBvcnQge1xuICBGc0Zvb3RlckNlbGxDb21wb25lbnQsXG59IGZyb20gJy4vYXBwL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci1yb3cvZm9vdGVyLWNlbGwvZm9vdGVyLWNlbGwuY29tcG9uZW50JztcbmV4cG9ydCB7IEZzRm9vdGVyUm93Q29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy9mb290ZXIvZm9vdGVyLXJvdy9mb290ZXItcm93LmNvbXBvbmVudCc7XG5leHBvcnQgeyBGc0Zvb3RlckNvbXBvbmVudCB9IGZyb20gJy4vYXBwL2NvbXBvbmVudHMvZm9vdGVyL2Zvb3Rlci5jb21wb25lbnQnO1xuZXhwb3J0IHsgRnNIZWFkQ2VsbENvbXBvbmVudCB9IGZyb20gJy4vYXBwL2NvbXBvbmVudHMvaGVhZC9oZWFkLWNlbGwvaGVhZC1jZWxsLmNvbXBvbmVudCc7XG5leHBvcnQgeyBGc0hlYWRDb21wb25lbnQgfSBmcm9tICcuL2FwcC9jb21wb25lbnRzL2hlYWQvaGVhZC5jb21wb25lbnQnO1xuZXhwb3J0IHsgRnNMaXN0Q29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy9saXN0L2xpc3QuY29tcG9uZW50JztcbmV4cG9ydCB7IEZzTGlzdExvYWRlckNvbXBvbmVudCB9IGZyb20gJy4vYXBwL2NvbXBvbmVudHMvbG9hZGVyL2xvYWRlci5jb21wb25lbnQnO1xuZXhwb3J0IHsgRnNQYWdpbmF0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy9wYWdpbmF0aW9uL3BhZ2luYXRpb24uY29tcG9uZW50JztcbmV4cG9ydCB7IEZzU3RhdHVzQ29tcG9uZW50IH0gZnJvbSAnLi9hcHAvY29tcG9uZW50cy9zdGF0dXMvc3RhdHVzLmNvbXBvbmVudCc7XG5cbi8vIERpcmVjdGl2ZXNcbmV4cG9ydCB7IEZzTGlzdEhlYWRpbmdEaXJlY3RpdmUgfSBmcm9tICcuL2FwcC9kaXJlY3RpdmVzJztcbmV4cG9ydCB7IEZzTGlzdENlbGxEaXJlY3RpdmUgfSBmcm9tICcuL2FwcC9kaXJlY3RpdmVzL2NlbGwvY2VsbC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRnNMaXN0Q2VsbFJvd1R5cGVTY29wZURpcmVjdGl2ZSB9IGZyb20gJy4vYXBwL2RpcmVjdGl2ZXMvY2VsbC9jZWxsLXJvdy10eXBlLXNjb3BlLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBGc1R5cGVkTGlzdENlbGxEaXJlY3RpdmUgfSBmcm9tICcuL2FwcC9kaXJlY3RpdmVzL2NlbGwvdHlwZWQtY2VsbC5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRnNMaXN0Q29sdW1uRGlyZWN0aXZlIH0gZnJvbSAnLi9hcHAvZGlyZWN0aXZlcy9jb2x1bW4vY29sdW1uLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBGc0xpc3RDb250ZW50RGlyZWN0aXZlIH0gZnJvbSAnLi9hcHAvZGlyZWN0aXZlcy9jb250ZW50L2NvbnRlbnQuZGlyZWN0aXZlJztcbmV4cG9ydCB7IEZzTGlzdERyYWdnYWJsZUxpc3REaXJlY3RpdmUgfSBmcm9tICcuL2FwcC9kaXJlY3RpdmVzL2RyYWdnYWJsZS1saXN0L2RyYWdnYWJsZS1saXN0LmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBGc0xpc3RFbXB0eVN0YXRlRGlyZWN0aXZlIH0gZnJvbSAnLi9hcHAvZGlyZWN0aXZlcy9lbXB0eS1zdGF0ZS9lbXB0eS1zdGF0ZS5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRnNMaXN0Rm9vdGVyRGlyZWN0aXZlIH0gZnJvbSAnLi9hcHAvZGlyZWN0aXZlcy9mb290ZXIvZm9vdGVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBGc0xpc3RHcm91cEV4cGFuZFRyaWdnZXJEaXJlY3RpdmUgfSBmcm9tICcuL2FwcC9kaXJlY3RpdmVzL2dyb3VwLWV4cGFuZC10cmlnZ2VyL2dyb3VwLWV4cGFuZC10cmlnZ2VyLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBGc0xpc3RHcm91cEZvb3RlckRpcmVjdGl2ZSB9IGZyb20gJy4vYXBwL2RpcmVjdGl2ZXMvZ3JvdXAtZm9vdGVyL2dyb3VwLWZvb3Rlci5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgRnNMaXN0R3JvdXBIZWFkZXJEaXJlY3RpdmUgfSBmcm9tICcuL2FwcC9kaXJlY3RpdmVzL2dyb3VwLWhlYWRlci9ncm91cC1oZWFkZXIuZGlyZWN0aXZlJztcbmV4cG9ydCB7IEZzTGlzdEhlYWRlckRpcmVjdGl2ZSB9IGZyb20gJy4vYXBwL2RpcmVjdGl2ZXMvaGVhZGVyL2hlYWRlci5kaXJlY3RpdmUnO1xuXG4vLyBNb2RlbHNcbmV4cG9ydCB7IExpc3QgfSBmcm9tICcuL2FwcC9jbGFzc2VzL2xpc3QtY29udHJvbGxlcic7XG5leHBvcnQgeyBQYWdpbmF0aW9uQ29udHJvbGxlciB9IGZyb20gJy4vYXBwL2NsYXNzZXMvcGFnaW5hdGlvbi1jb250cm9sbGVyJztcbmV4cG9ydCB7IFJlb3JkZXJDb250cm9sbGVyLCBSZW9yZGVyUG9zaXRpb24gfSBmcm9tICcuL2FwcC9jbGFzc2VzL3Jlb3JkZXItY29udHJvbGxlcic7XG5leHBvcnQgeyBTZWxlY3Rpb25DaGFuZ2VUeXBlLCBTZWxlY3Rpb25Db250cm9sbGVyIH0gZnJvbSAnLi9hcHAvY2xhc3Nlcy9zZWxlY3Rpb24tY29udHJvbGxlcic7XG5leHBvcnQgeyBTb3J0aW5nQ29udHJvbGxlciB9IGZyb20gJy4vYXBwL2NsYXNzZXMvc29ydGluZy1jb250cm9sbGVyJztcbmV4cG9ydCB7IENvbHVtbiwgU29ydGluZ0RpcmVjdGlvbiB9IGZyb20gJy4vYXBwL21vZGVscy9jb2x1bW4ubW9kZWwnO1xuZXhwb3J0IHsgUm93QWN0aW9uIH0gZnJvbSAnLi9hcHAvbW9kZWxzL3Jvdy1hY3Rpb24ubW9kZWwnO1xuZXhwb3J0IHsgU3R5bGVDb25maWcgfSBmcm9tICcuL2FwcC9tb2RlbHMvc3R5bGVDb25maWcubW9kZWwnO1xuXG4vLyBJbnRlcmZhY2VzXG5leHBvcnQgeyBDZWxsQ29uZmlnIH0gZnJvbSAnLi9hcHAvaW50ZXJmYWNlcy9jZWxsY29uZmlnLmludGVyZmFjZSc7XG5leHBvcnQge1xuICBGc0xpc3RBYnN0cmFjdFJvdywgRnNMaXN0QWN0aW9uLCBGc0xpc3RBY3Rpb25TZWxlY3RlZCwgRnNMaXN0Q2VsbENvbmZpZywgRnNMaXN0Q29sdW1uLCBGc0xpc3RDb2x1bW5DaGFuZ2VGbiwgRnNMaXN0Q29sdW1uQ29uZmlnLCBGc0xpc3RDb2x1bW5Mb2FkRm4sIEZzTGlzdENvbmZpZywgRnNMaXN0RW1wdHlTdGF0ZUNvbmZpZywgRnNMaXN0RmV0Y2hGbiwgRnNMaXN0RmV0Y2hPcHRpb25zLCBGc0xpc3RGZXRjaFN1YnNjcmlwdGlvbiwgRnNMaXN0Rm9vdGVyQ29uZmlnLCBGc0xpc3RHcm91cENvbmZpZywgRnNMaXN0SGVhZGVyQ29uZmlnLFxuICBGc0xpc3ROb1Jlc3VsdHNDb25maWcsXG4gIEZzTGlzdFJlb3JkZXJDb25maWcsIEZzTGlzdFJlb3JkZXJEYXRhLCBGc0xpc3RSZW9yZGVyRG9uZUNhbGxiYWNrLCBGc0xpc3RSZW9yZGVyTW92ZUluR3JvdXBDYWxsYmFjaywgRnNMaXN0UmVvcmRlck1vdmVkQ2FsbGJhY2ssIEZzTGlzdFJlc3RvcmVDb25maWcsIEZzTGlzdFJvd0FjdGlvbiwgRnNMaXN0Um93QWN0aW9uRmlsZSwgRnNMaXN0Um93QWN0aW9uRmlsZUZuLCBGc0xpc3RSb3dBY3Rpb25Hcm91cCwgRnNMaXN0Um93QWN0aW9uTGluayxcbiAgRnNMaXN0Um93QWN0aW9uTGlua0ZuLCBGc0xpc3RSb3dDbGFzc09wdGlvbnMsXG4gIEZzTGlzdFNlbGVjdGlvbkNvbmZpZyxcbiAgRnNMaXN0U29ydHNDb25maWcsIEZzTGlzdFN0YXRlVmFsaWRhdGlvbkZuLCBGc0xpc3RUcmFja0J5Rm4sXG4gIEZzTGlzdFRyYWNrQnlUYXJnZXRSb3dGbixcbiAgRnNQYWdpbmcsXG59IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvbGlzdGNvbmZpZy5pbnRlcmZhY2UnO1xuZXhwb3J0IHsgSVBhZ2luYXRpb25TdGF0ZSB9IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvcGFnaW5hdGlvbi1zdGF0ZS5pbnRlcmZhY2UnO1xuZXhwb3J0IHsgUXVlcnlPZmZzZXRTdHJhdGVneSwgUXVlcnlQYWdlU3RyYXRlZ3kgfSBmcm9tICcuL2FwcC9pbnRlcmZhY2VzL3BhZ2luYXRpb24uaW50ZXJmYWNlJztcbmV4cG9ydCB7IFNvcnRpbmdDaGFuZ2VFdmVudCB9IGZyb20gJy4vYXBwL2ludGVyZmFjZXMvc29ydGluZy1jaGFuZ2UtZXZlbnQuaW50ZXJmYWNlJztcblxuLy8gRW51bXNcbmV4cG9ydCB7IEFjdGlvblR5cGUgfSBmcm9tICcuL2FwcC9lbnVtcy9hY3Rpb24tdHlwZS5lbnVtJztcbmV4cG9ydCB7IFBhZ2luYXRpb25TdHJhdGVneSB9IGZyb20gJy4vYXBwL2VudW1zL3BhZ2luYXRpb24tc3RyYXRlZ3kuZW51bSc7XG5leHBvcnQgeyBSb3dUeXBlIH0gZnJvbSAnLi9hcHAvZW51bXMvcm93LXR5cGUuZW51bSc7XG5leHBvcnQgeyBGc0xpc3RTdGF0ZSB9IGZyb20gJy4vYXBwL2VudW1zL3N0YXRlLmVudW0nO1xuXG4iXX0=
|
|
@@ -3842,8 +3842,7 @@ class ActionsController {
|
|
|
3842
3842
|
this._actions.unshift(action);
|
|
3843
3843
|
action.click = () => {
|
|
3844
3844
|
this._filterRef.updateActions([this._doneAction]);
|
|
3845
|
-
this._filterRef.
|
|
3846
|
-
this._filterRef.hideFilters();
|
|
3845
|
+
this._filterRef.disableFilters();
|
|
3847
3846
|
actionClickFn(null);
|
|
3848
3847
|
};
|
|
3849
3848
|
this._reorderAction = action;
|
|
@@ -3853,8 +3852,7 @@ class ActionsController {
|
|
|
3853
3852
|
const actionClickFn = action.click;
|
|
3854
3853
|
this._doneAction.click = () => {
|
|
3855
3854
|
this._filterRef.updateActions(this._actions);
|
|
3856
|
-
this._filterRef.
|
|
3857
|
-
this._filterRef.showFilters();
|
|
3855
|
+
this._filterRef.enableFilters();
|
|
3858
3856
|
actionClickFn(null);
|
|
3859
3857
|
};
|
|
3860
3858
|
}
|
|
@@ -4514,7 +4512,10 @@ class List {
|
|
|
4514
4512
|
}
|
|
4515
4513
|
get activeFiltersCount$() {
|
|
4516
4514
|
return this.filtersQuery$
|
|
4517
|
-
.pipe(map((v) =>
|
|
4515
|
+
.pipe(map((v) => {
|
|
4516
|
+
return Object.keys(v)
|
|
4517
|
+
.filter((key) => key !== 'order');
|
|
4518
|
+
}), map((v) => v.length), shareReplay());
|
|
4518
4519
|
}
|
|
4519
4520
|
get destroy$() {
|
|
4520
4521
|
return this._destroy$;
|
|
@@ -5150,17 +5151,34 @@ class FsListCellDirective {
|
|
|
5150
5151
|
colspan;
|
|
5151
5152
|
align;
|
|
5152
5153
|
className;
|
|
5154
|
+
/**
|
|
5155
|
+
* Typing anchor (e.g. `readonly anchor = {} as MyRow` then `[rowType]="anchor"`).
|
|
5156
|
+
* The value is only used for template type inference; it can be an empty object cast.
|
|
5157
|
+
*/
|
|
5153
5158
|
rowType;
|
|
5159
|
+
/**
|
|
5160
|
+
* Same as `rowType`, for `*fsListCell="anchor"` microsyntax (`*fsListCell` expands to `[fsListCell]="..."`).
|
|
5161
|
+
* Pass a **component property** typed as `T` — not a type name (interfaces are not runtime values).
|
|
5162
|
+
*/
|
|
5163
|
+
// @Input('fsListCell')
|
|
5164
|
+
// public set fsListCellAnchor(value: T | undefined) {
|
|
5165
|
+
// this.rowType = value;
|
|
5166
|
+
// }
|
|
5167
|
+
/**
|
|
5168
|
+
* Filled by `fs-list` from merged `[config]` when you omit `[rowType]` / `[fsListCell]` and `cellRowType` is unset.
|
|
5169
|
+
* Optional: bind `[configTyping]="config"` for strictTemplates / IDE narrowing.
|
|
5170
|
+
*/
|
|
5171
|
+
configTyping;
|
|
5154
5172
|
static ngTemplateContextGuard(directive, context) {
|
|
5155
5173
|
return true;
|
|
5156
5174
|
}
|
|
5157
5175
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsListCellDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
5158
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: FsListCellDirective, isStandalone: true, selector: "[fs-list-cell]", inputs: { colspan: "colspan", align: "align", className: ["class", "className"], rowType: "rowType" }, ngImport: i0 });
|
|
5176
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: FsListCellDirective, isStandalone: true, selector: "[fs-list-cell],[fsListCell]", inputs: { colspan: "colspan", align: "align", className: ["class", "className"], rowType: ["fsListCell", "rowType"], configTyping: "configTyping" }, ngImport: i0 });
|
|
5159
5177
|
}
|
|
5160
5178
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsListCellDirective, decorators: [{
|
|
5161
5179
|
type: Directive,
|
|
5162
5180
|
args: [{
|
|
5163
|
-
selector: '[fs-list-cell]',
|
|
5181
|
+
selector: '[fs-list-cell],[fsListCell]',
|
|
5164
5182
|
standalone: true,
|
|
5165
5183
|
}]
|
|
5166
5184
|
}], propDecorators: { colspan: [{
|
|
@@ -5171,6 +5189,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
5171
5189
|
type: Input,
|
|
5172
5190
|
args: ['class']
|
|
5173
5191
|
}], rowType: [{
|
|
5192
|
+
type: Input,
|
|
5193
|
+
args: ['fsListCell']
|
|
5194
|
+
}], configTyping: [{
|
|
5174
5195
|
type: Input
|
|
5175
5196
|
}] } });
|
|
5176
5197
|
|
|
@@ -5621,6 +5642,23 @@ class FsListComponent {
|
|
|
5621
5642
|
this._initWithConfig(config);
|
|
5622
5643
|
}
|
|
5623
5644
|
loaderLines = 3;
|
|
5645
|
+
_cellRowTypeInput;
|
|
5646
|
+
_cellRowTypeFromConfig;
|
|
5647
|
+
/**
|
|
5648
|
+
* Row typing anchor for cell templates. Overrides {@link FsListConfig.cellRowType}.
|
|
5649
|
+
* Copied onto each `fs-list-cell` (and group cell templates) unless `[rowType]` is set on that cell.
|
|
5650
|
+
*/
|
|
5651
|
+
set cellRowType(value) {
|
|
5652
|
+
this._cellRowTypeInput = value;
|
|
5653
|
+
this._propagateCellRowTypeAnchors();
|
|
5654
|
+
}
|
|
5655
|
+
get cellRowType() {
|
|
5656
|
+
return this._cellRowTypeInput !== undefined ? this._cellRowTypeInput : this._cellRowTypeFromConfig;
|
|
5657
|
+
}
|
|
5658
|
+
/** Merged config after defaults; used to type cells without per-template `[configTyping]`. */
|
|
5659
|
+
get mergedListConfig() {
|
|
5660
|
+
return this._mergedListConfig;
|
|
5661
|
+
}
|
|
5624
5662
|
filtersReady = new EventEmitter();
|
|
5625
5663
|
headingTemplate;
|
|
5626
5664
|
body;
|
|
@@ -5629,6 +5667,8 @@ class FsListComponent {
|
|
|
5629
5667
|
rowRemoved = new EventEmitter();
|
|
5630
5668
|
firstLoad = true;
|
|
5631
5669
|
_listColumnDirectives;
|
|
5670
|
+
/** Merged list config (after defaults); used to populate cell `configTyping` when cells omit it. */
|
|
5671
|
+
_mergedListConfig;
|
|
5632
5672
|
_filterRef;
|
|
5633
5673
|
_filterParamsReady = false;
|
|
5634
5674
|
_destroy = new Subject();
|
|
@@ -5655,6 +5695,7 @@ class FsListComponent {
|
|
|
5655
5695
|
if (this.list) {
|
|
5656
5696
|
this.list.tranformTemplatesToColumns(listColumnDirectives);
|
|
5657
5697
|
}
|
|
5698
|
+
this._propagateCellRowTypeAnchors();
|
|
5658
5699
|
}
|
|
5659
5700
|
set _emptyStateTemplate(template) {
|
|
5660
5701
|
if (this.list) {
|
|
@@ -5820,6 +5861,8 @@ class FsListComponent {
|
|
|
5820
5861
|
};
|
|
5821
5862
|
const globalConfig = cloneDeep(this._config || {});
|
|
5822
5863
|
const listConfig = mergeWith(defaultConfig, globalConfig, config, this._configMergeCustomizer);
|
|
5864
|
+
this._mergedListConfig = listConfig;
|
|
5865
|
+
this._cellRowTypeFromConfig = listConfig.cellRowType;
|
|
5823
5866
|
if (listConfig.persist !== false) {
|
|
5824
5867
|
this._restorePersistance(listConfig.persist);
|
|
5825
5868
|
}
|
|
@@ -5832,6 +5875,7 @@ class FsListComponent {
|
|
|
5832
5875
|
this.list.tranformTemplatesToColumns(this._listColumnDirectives);
|
|
5833
5876
|
}
|
|
5834
5877
|
this._listenSortingChange();
|
|
5878
|
+
this._propagateCellRowTypeAnchors();
|
|
5835
5879
|
}
|
|
5836
5880
|
/**
|
|
5837
5881
|
* Find action with customize flag and re-declare click function for CustomizeColsDialog
|
|
@@ -5911,8 +5955,33 @@ class FsListComponent {
|
|
|
5911
5955
|
_restorePersistance(persistConfig) {
|
|
5912
5956
|
this._persistance.init(persistConfig, this.inDialog);
|
|
5913
5957
|
}
|
|
5958
|
+
_propagateCellRowTypeAnchors() {
|
|
5959
|
+
if (!this._listColumnDirectives || !this._mergedListConfig) {
|
|
5960
|
+
return;
|
|
5961
|
+
}
|
|
5962
|
+
const anchor = this.cellRowType;
|
|
5963
|
+
this._listColumnDirectives.forEach((col) => {
|
|
5964
|
+
this._maybeApplyCellTyping(col.cellConfigs, anchor, this._mergedListConfig);
|
|
5965
|
+
this._maybeApplyCellTyping(col.groupHeaderConfigs, anchor, this._mergedListConfig);
|
|
5966
|
+
this._maybeApplyCellTyping(col.groupFooterConfigs, anchor, this._mergedListConfig);
|
|
5967
|
+
});
|
|
5968
|
+
}
|
|
5969
|
+
_maybeApplyCellTyping(dir, anchor, listConfig) {
|
|
5970
|
+
if (!(dir instanceof FsListCellDirective)) {
|
|
5971
|
+
return;
|
|
5972
|
+
}
|
|
5973
|
+
if (dir.rowType !== undefined || dir.configTyping !== undefined) {
|
|
5974
|
+
return;
|
|
5975
|
+
}
|
|
5976
|
+
if (anchor != null) {
|
|
5977
|
+
dir.rowType = anchor;
|
|
5978
|
+
}
|
|
5979
|
+
else {
|
|
5980
|
+
dir.configTyping = listConfig;
|
|
5981
|
+
}
|
|
5982
|
+
}
|
|
5914
5983
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5915
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsListComponent, isStandalone: true, selector: "fs-list", inputs: { config: "config", loaderLines: "loaderLines" }, outputs: { filtersReady: "filtersReady" }, host: { properties: { "class.fs-list": "this.classFsList", "class.fs-list-row-highlight": "this.rowHoverHighlight" } }, providers: [
|
|
5984
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: FsListComponent, isStandalone: true, selector: "fs-list", inputs: { config: "config", loaderLines: "loaderLines", cellRowType: "cellRowType" }, outputs: { filtersReady: "filtersReady" }, host: { properties: { "class.fs-list": "this.classFsList", "class.fs-list-row-highlight": "this.rowHoverHighlight" } }, providers: [
|
|
5916
5985
|
GroupExpandNotifierService,
|
|
5917
5986
|
PersistanceController,
|
|
5918
5987
|
ReorderController,
|
|
@@ -5952,6 +6021,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
5952
6021
|
args: ['config']
|
|
5953
6022
|
}], loaderLines: [{
|
|
5954
6023
|
type: Input
|
|
6024
|
+
}], cellRowType: [{
|
|
6025
|
+
type: Input
|
|
5955
6026
|
}], filtersReady: [{
|
|
5956
6027
|
type: Output
|
|
5957
6028
|
}], headingTemplate: [{
|
|
@@ -5971,6 +6042,27 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
5971
6042
|
args: [FsListEmptyStateDirective, { read: TemplateRef }]
|
|
5972
6043
|
}] } });
|
|
5973
6044
|
|
|
6045
|
+
/**
|
|
6046
|
+
* Wrap list columns in `<ng-container fsListCellRowType [rowType]="anchor" #cr="fsListCellRowType">`.
|
|
6047
|
+
* On each `fs-list-cell`, bind `[rowType]="cr.rowType"` so `ngTemplateContextGuard` reuses the same
|
|
6048
|
+
* type without repeating `{} as YourRow` on every cell.
|
|
6049
|
+
*/
|
|
6050
|
+
class FsListCellRowTypeScopeDirective {
|
|
6051
|
+
rowType;
|
|
6052
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsListCellRowTypeScopeDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
6053
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: FsListCellRowTypeScopeDirective, isStandalone: true, selector: "[fsListCellRowType]", inputs: { rowType: "rowType" }, exportAs: ["fsListCellRowType"], ngImport: i0 });
|
|
6054
|
+
}
|
|
6055
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsListCellRowTypeScopeDirective, decorators: [{
|
|
6056
|
+
type: Directive,
|
|
6057
|
+
args: [{
|
|
6058
|
+
selector: '[fsListCellRowType]',
|
|
6059
|
+
standalone: true,
|
|
6060
|
+
exportAs: 'fsListCellRowType',
|
|
6061
|
+
}]
|
|
6062
|
+
}], propDecorators: { rowType: [{
|
|
6063
|
+
type: Input
|
|
6064
|
+
}] } });
|
|
6065
|
+
|
|
5974
6066
|
class FsListContentDirective {
|
|
5975
6067
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsListContentDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
5976
6068
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: FsListContentDirective, isStandalone: true, selector: "[fs-list-content]", ngImport: i0 });
|
|
@@ -6010,6 +6102,7 @@ class FsListModule {
|
|
|
6010
6102
|
FsPaginationComponent,
|
|
6011
6103
|
FsListColumnDirective,
|
|
6012
6104
|
FsListCellDirective,
|
|
6105
|
+
FsListCellRowTypeScopeDirective,
|
|
6013
6106
|
FsListHeaderDirective,
|
|
6014
6107
|
FsListFooterDirective,
|
|
6015
6108
|
FsListGroupHeaderDirective,
|
|
@@ -6028,6 +6121,7 @@ class FsListModule {
|
|
|
6028
6121
|
FsListLoaderComponent,
|
|
6029
6122
|
FsListColumnDirective,
|
|
6030
6123
|
FsListCellDirective,
|
|
6124
|
+
FsListCellRowTypeScopeDirective,
|
|
6031
6125
|
FsListHeaderDirective,
|
|
6032
6126
|
FsListFooterDirective,
|
|
6033
6127
|
FsListGroupHeaderDirective,
|
|
@@ -6070,6 +6164,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
6070
6164
|
FsPaginationComponent,
|
|
6071
6165
|
FsListColumnDirective,
|
|
6072
6166
|
FsListCellDirective,
|
|
6167
|
+
FsListCellRowTypeScopeDirective,
|
|
6073
6168
|
FsListHeaderDirective,
|
|
6074
6169
|
FsListFooterDirective,
|
|
6075
6170
|
FsListGroupHeaderDirective,
|
|
@@ -6091,6 +6186,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
6091
6186
|
FsListLoaderComponent,
|
|
6092
6187
|
FsListColumnDirective,
|
|
6093
6188
|
FsListCellDirective,
|
|
6189
|
+
FsListCellRowTypeScopeDirective,
|
|
6094
6190
|
FsListHeaderDirective,
|
|
6095
6191
|
FsListFooterDirective,
|
|
6096
6192
|
FsListGroupHeaderDirective,
|
|
@@ -6104,9 +6200,26 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
|
|
|
6104
6200
|
}]
|
|
6105
6201
|
}] });
|
|
6106
6202
|
|
|
6203
|
+
/**
|
|
6204
|
+
* Extend with your own `selector` and row type `T` for strict template typing of `let-row="row"`
|
|
6205
|
+
* without repeating `[rowType]` on every `[fs-list-cell]` (subclasses still match column cell queries).
|
|
6206
|
+
*
|
|
6207
|
+
* For IDE / strictTemplates narrowing, **redeclare** `ngTemplateContextGuard` on the concrete class
|
|
6208
|
+
* with `directive: YourConcreteDirective` (inherited static guards are often not applied by the
|
|
6209
|
+
* language service). TypeScript may report an invalid override vs `FsListCellDirective`; use
|
|
6210
|
+
* `@ts-expect-error` on the class line above `export class` when required.
|
|
6211
|
+
*/
|
|
6212
|
+
class FsTypedListCellDirective extends FsListCellDirective {
|
|
6213
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsTypedListCellDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
6214
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: FsTypedListCellDirective, usesInheritance: true, ngImport: i0 });
|
|
6215
|
+
}
|
|
6216
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: FsTypedListCellDirective, decorators: [{
|
|
6217
|
+
type: Directive
|
|
6218
|
+
}] });
|
|
6219
|
+
|
|
6107
6220
|
/**
|
|
6108
6221
|
* Generated bundle index. Do not edit.
|
|
6109
6222
|
*/
|
|
6110
6223
|
|
|
6111
|
-
export { ActionType, Column, FS_LIST_CONFIG, FsBodyComponent, FsCellComponent, FsFooterCellComponent, FsFooterComponent, FsFooterRowComponent, FsHeadCellComponent, FsHeadComponent, FsListCellDirective, FsListColumnDirective, FsListComponent, FsListContentDirective, FsListDraggableListDirective, FsListEmptyStateDirective, FsListFooterDirective, FsListGroupExpandTriggerDirective, FsListGroupFooterDirective, FsListGroupHeaderDirective, FsListHeaderDirective, FsListHeadingDirective, FsListLoaderComponent, FsListModule, FsListState, FsPaginationComponent, FsRowComponent, FsStatusComponent, List, PaginationController, PaginationStrategy, ReorderController, ReorderPosition, RowAction, RowType, SelectionChangeType, SelectionController, SortingController, SortingDirection, StyleConfig };
|
|
6224
|
+
export { ActionType, Column, FS_LIST_CONFIG, FsBodyComponent, FsCellComponent, FsFooterCellComponent, FsFooterComponent, FsFooterRowComponent, FsHeadCellComponent, FsHeadComponent, FsListCellDirective, FsListCellRowTypeScopeDirective, FsListColumnDirective, FsListComponent, FsListContentDirective, FsListDraggableListDirective, FsListEmptyStateDirective, FsListFooterDirective, FsListGroupExpandTriggerDirective, FsListGroupFooterDirective, FsListGroupHeaderDirective, FsListHeaderDirective, FsListHeadingDirective, FsListLoaderComponent, FsListModule, FsListState, FsPaginationComponent, FsRowComponent, FsStatusComponent, FsTypedListCellDirective, List, PaginationController, PaginationStrategy, ReorderController, ReorderPosition, RowAction, RowType, SelectionChangeType, SelectionController, SortingController, SortingDirection, StyleConfig };
|
|
6112
6225
|
//# sourceMappingURL=firestitch-list.mjs.map
|