@devopmaat/badaboom 1.2.0 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -30,7 +30,9 @@ import * as i3$1 from '@angular/material/checkbox';
30
30
  import { MatCheckboxModule } from '@angular/material/checkbox';
31
31
  import * as i4$1 from '@angular/material/sort';
32
32
  import { MatSortModule } from '@angular/material/sort';
33
- import * as i1$2 from '@angular/material/dialog';
33
+ import * as i1$2 from '@angular/material/toolbar';
34
+ import { MatToolbarModule } from '@angular/material/toolbar';
35
+ import * as i1$3 from '@angular/material/dialog';
34
36
  import { MatDialogModule } from '@angular/material/dialog';
35
37
  import * as i3$2 from '@angular/material/card';
36
38
  import { MatCardModule } from '@angular/material/card';
@@ -872,8 +874,13 @@ class BdbColumnBuilder {
872
874
  };
873
875
  }
874
876
  _buildCommonOptions(type, field, title, options = undefined) {
875
- const fxString = field.toString();
876
- const id = options?.id ?? fxString.substring(fxString.lastIndexOf('.') + 1).trim();
877
+ const id = options?.id ??
878
+ field
879
+ .toString()
880
+ .split('.')
881
+ .slice(1)
882
+ .map(x => x.replace(/(\?|!)$/, ''))
883
+ .join('.');
877
884
  return {
878
885
  type: type,
879
886
  id: id,
@@ -1160,8 +1167,7 @@ class BdbTableComponent {
1160
1167
  sortData(event) {
1161
1168
  const column = this.columns.find(x => x.id === event.active);
1162
1169
  if (column) {
1163
- const fxString = column.field.toString();
1164
- this.dataSource.request.sortField = fxString.substring(fxString.lastIndexOf('.') + 1).trim();
1170
+ this.dataSource.request.sortField = column.id;
1165
1171
  this.dataSource.request.sortDirection = event.direction;
1166
1172
  this.dataSource.load();
1167
1173
  }
@@ -1270,6 +1276,156 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
1270
1276
  type: Input
1271
1277
  }] } });
1272
1278
 
1279
+ class LayoutError extends Error {
1280
+ constructor(message) {
1281
+ super(message);
1282
+ }
1283
+ }
1284
+
1285
+ const DEFAULT_FLEX_DIRECTION = 'row';
1286
+ const DEFAULT_FLEX_GAP = '';
1287
+ const DEFAULT_FLEX_SPACING = {
1288
+ justify: 'start',
1289
+ align: 'stretch',
1290
+ };
1291
+ class BdbFlexDirective {
1292
+ constructor(element, renderer) {
1293
+ this.element = element;
1294
+ this.renderer = renderer;
1295
+ this.bdbFlex = '';
1296
+ this.bdbFlexDirection = '';
1297
+ this.bdbFlexGap = '';
1298
+ this.bdbFlexSpacing = '';
1299
+ }
1300
+ ngOnInit() {
1301
+ this.renderer.setStyle(this.element.nativeElement, 'display', 'flex');
1302
+ const bdbFlexInputs = this.bdbFlex.split(' ').filter(x => !!x);
1303
+ this.setDirection(bdbFlexInputs[0]);
1304
+ this.setGap(bdbFlexInputs[1]);
1305
+ this.setSpacing({
1306
+ justify: bdbFlexInputs[2],
1307
+ align: bdbFlexInputs[3],
1308
+ });
1309
+ }
1310
+ setDirection(bdbFlexInput) {
1311
+ const direction = this.validateDirection(this.getDirection(bdbFlexInput));
1312
+ this.renderer.setStyle(this.element.nativeElement, 'flex-direction', direction);
1313
+ }
1314
+ getDirection(bdbFlexInput) {
1315
+ const trimmedBdbFlexDirection = this.bdbFlexDirection.trim();
1316
+ if (trimmedBdbFlexDirection) {
1317
+ return trimmedBdbFlexDirection;
1318
+ }
1319
+ if (bdbFlexInput) {
1320
+ return bdbFlexInput;
1321
+ }
1322
+ return DEFAULT_FLEX_DIRECTION;
1323
+ }
1324
+ validateDirection(direction) {
1325
+ switch (direction) {
1326
+ case 'row':
1327
+ return 'row';
1328
+ case 'col':
1329
+ return 'column';
1330
+ default:
1331
+ throw new LayoutError(`'${direction}' is not a valid value for flex direction`);
1332
+ }
1333
+ }
1334
+ setGap(bdbFlexInput) {
1335
+ const gap = this.validateGap(this.getGap(bdbFlexInput));
1336
+ this.renderer.setStyle(this.element.nativeElement, 'gap', gap);
1337
+ }
1338
+ getGap(bdbFlexInput) {
1339
+ const trimmedBdbFlexGap = this.bdbFlexGap.trim();
1340
+ if (trimmedBdbFlexGap) {
1341
+ return trimmedBdbFlexGap;
1342
+ }
1343
+ if (bdbFlexInput) {
1344
+ return bdbFlexInput;
1345
+ }
1346
+ return DEFAULT_FLEX_GAP;
1347
+ }
1348
+ validateGap(gap) {
1349
+ return gap;
1350
+ }
1351
+ setSpacing(bdbFlexInput) {
1352
+ const spacing = this.validateSpacing(this.getSpacing(bdbFlexInput));
1353
+ this.renderer.setStyle(this.element.nativeElement, 'align-items', spacing.align);
1354
+ this.renderer.setStyle(this.element.nativeElement, 'justify-content', spacing.justify);
1355
+ }
1356
+ getSpacing(bdbFlexInput) {
1357
+ const splitBdbFlexSpacing = this.bdbFlexSpacing.split(' ').filter(x => !!x);
1358
+ if (splitBdbFlexSpacing.length === 2) {
1359
+ return {
1360
+ align: splitBdbFlexSpacing[0],
1361
+ justify: splitBdbFlexSpacing[1],
1362
+ };
1363
+ }
1364
+ if (bdbFlexInput.align && bdbFlexInput.justify) {
1365
+ return {
1366
+ align: bdbFlexInput.align,
1367
+ justify: bdbFlexInput.justify,
1368
+ };
1369
+ }
1370
+ return DEFAULT_FLEX_SPACING;
1371
+ }
1372
+ validateSpacing(spacing) {
1373
+ return spacing;
1374
+ }
1375
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFlexDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
1376
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: BdbFlexDirective, isStandalone: true, selector: "[bdbFlex], [bdbFlexDirection], [bdbFlexGap], [bdbFlexSpacing]", inputs: { bdbFlex: "bdbFlex", bdbFlexDirection: "bdbFlexDirection", bdbFlexGap: "bdbFlexGap", bdbFlexSpacing: "bdbFlexSpacing" }, ngImport: i0 }); }
1377
+ }
1378
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFlexDirective, decorators: [{
1379
+ type: Directive,
1380
+ args: [{
1381
+ selector: '[bdbFlex], [bdbFlexDirection], [bdbFlexGap], [bdbFlexSpacing]',
1382
+ standalone: true,
1383
+ }]
1384
+ }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { bdbFlex: [{
1385
+ type: Input
1386
+ }], bdbFlexDirection: [{
1387
+ type: Input
1388
+ }], bdbFlexGap: [{
1389
+ type: Input
1390
+ }], bdbFlexSpacing: [{
1391
+ type: Input
1392
+ }] } });
1393
+
1394
+ class BdbFullTableComponent {
1395
+ constructor() {
1396
+ this.columns = [];
1397
+ this.displayedColumns = [];
1398
+ this.contextActions = [];
1399
+ this.showToolbar = true;
1400
+ this.rowClick = new EventEmitter();
1401
+ this.contextAction = new EventEmitter();
1402
+ }
1403
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFullTableComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1404
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.7", type: BdbFullTableComponent, isStandalone: true, selector: "bdb-full-table", inputs: { dataSource: "dataSource", columns: "columns", displayedColumns: "displayedColumns", selection: "selection", contextActions: "contextActions", rowColor: "rowColor", showToolbar: "showToolbar" }, outputs: { rowClick: "rowClick", contextAction: "contextAction" }, ngImport: i0, template: "@if (showToolbar) {\r\n <mat-toolbar bdbFlex=\"row 8px space-between center\" style=\"flex: 0 0 auto\">\r\n <div bdbFlex=\"row 8px start center\">\r\n <ng-content select=\"toolbar-item\"></ng-content>\r\n </div>\r\n <bdb-query-input [dataSource]=\"dataSource\"></bdb-query-input>\r\n </mat-toolbar>\r\n}\r\n<bdb-table\r\n [columns]=\"columns\"\r\n [dataSource]=\"dataSource\"\r\n [displayedColumns]=\"displayedColumns\"\r\n [selection]=\"selection\"\r\n [rowColor]=\"rowColor\"\r\n [contextActions]=\"contextActions\"\r\n (contextAction)=\"contextAction.emit($event)\"\r\n (rowClick)=\"rowClick.emit($event)\">\r\n <ng-content></ng-content>\r\n</bdb-table>\r\n<bdb-paginator [dataSource]=\"dataSource\" style=\"flex: 0 0 auto\"></bdb-paginator>\r\n", styles: [":host{display:flex;flex-direction:column;justify-content:stretch;flex:0 1 100%}:host bdb-table{display:contents;flex:0 1 100%}:host bdb-query-input{--mdc-filled-text-field-container-color: var(--sys-surface-container-lowest)}\n"], dependencies: [{ kind: "directive", type: BdbFlexDirective, selector: "[bdbFlex], [bdbFlexDirection], [bdbFlexGap], [bdbFlexSpacing]", inputs: ["bdbFlex", "bdbFlexDirection", "bdbFlexGap", "bdbFlexSpacing"] }, { kind: "ngmodule", type: MatToolbarModule }, { kind: "component", type: i1$2.MatToolbar, selector: "mat-toolbar", inputs: ["color"], exportAs: ["matToolbar"] }, { kind: "component", type: BdbQueryInputComponent, selector: "bdb-query-input[dataSource]", inputs: ["dataSource"] }, { kind: "component", type: BdbPaginatorComponent, selector: "bdb-paginator", inputs: ["dataSource"] }, { kind: "component", type: BdbTableComponent, selector: "bdb-table[dataSource]", inputs: ["columns", "dataSource", "displayedColumns", "contextActions", "selection", "selectOnRowClick", "selectedRowClass", "isClickable", "rowColor"], outputs: ["rowClick", "contextAction"] }] }); }
1405
+ }
1406
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFullTableComponent, decorators: [{
1407
+ type: Component,
1408
+ args: [{ selector: 'bdb-full-table', standalone: true, imports: [BdbFlexDirective, MatToolbarModule, BdbQueryInputComponent, BdbPaginatorComponent, BdbTableComponent], template: "@if (showToolbar) {\r\n <mat-toolbar bdbFlex=\"row 8px space-between center\" style=\"flex: 0 0 auto\">\r\n <div bdbFlex=\"row 8px start center\">\r\n <ng-content select=\"toolbar-item\"></ng-content>\r\n </div>\r\n <bdb-query-input [dataSource]=\"dataSource\"></bdb-query-input>\r\n </mat-toolbar>\r\n}\r\n<bdb-table\r\n [columns]=\"columns\"\r\n [dataSource]=\"dataSource\"\r\n [displayedColumns]=\"displayedColumns\"\r\n [selection]=\"selection\"\r\n [rowColor]=\"rowColor\"\r\n [contextActions]=\"contextActions\"\r\n (contextAction)=\"contextAction.emit($event)\"\r\n (rowClick)=\"rowClick.emit($event)\">\r\n <ng-content></ng-content>\r\n</bdb-table>\r\n<bdb-paginator [dataSource]=\"dataSource\" style=\"flex: 0 0 auto\"></bdb-paginator>\r\n", styles: [":host{display:flex;flex-direction:column;justify-content:stretch;flex:0 1 100%}:host bdb-table{display:contents;flex:0 1 100%}:host bdb-query-input{--mdc-filled-text-field-container-color: var(--sys-surface-container-lowest)}\n"] }]
1409
+ }], propDecorators: { dataSource: [{
1410
+ type: Input
1411
+ }], columns: [{
1412
+ type: Input
1413
+ }], displayedColumns: [{
1414
+ type: Input
1415
+ }], selection: [{
1416
+ type: Input
1417
+ }], contextActions: [{
1418
+ type: Input
1419
+ }], rowColor: [{
1420
+ type: Input
1421
+ }], showToolbar: [{
1422
+ type: Input
1423
+ }], rowClick: [{
1424
+ type: Output
1425
+ }], contextAction: [{
1426
+ type: Output
1427
+ }] } });
1428
+
1273
1429
  class ExceptionLogTableComponent {
1274
1430
  constructor(cb, router, activatedRoute) {
1275
1431
  this.cb = cb;
@@ -1482,13 +1638,13 @@ class UserTableComponent {
1482
1638
  // break;
1483
1639
  // }
1484
1640
  }
1485
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: UserTableComponent, deps: [{ token: i1$2.MatDialog }, { token: BdbColumnBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
1641
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: UserTableComponent, deps: [{ token: i1$3.MatDialog }, { token: BdbColumnBuilder }], target: i0.ɵɵFactoryTarget.Component }); }
1486
1642
  static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: UserTableComponent, isStandalone: true, selector: "bdb-user-table[dataSource]", inputs: { dataSource: "dataSource", displayedColumns: "displayedColumns", contextActions: "contextActions" }, outputs: { rowClick: "rowClick" }, ngImport: i0, template: "<bdb-table\r\n [columns]=\"columns\"\r\n [dataSource]=\"dataSource\"\r\n (rowClick)=\"onRowClick($event)\"\r\n [contextActions]=\"contextActions\"\r\n (contextAction)=\"onContextAction($event)\"\r\n [displayedColumns]=\"displayedColumns\">\r\n <ng-template bdbCellDef=\"roles\" let-row>\r\n {{ row.roles }}\r\n </ng-template>\r\n</bdb-table>\r\n", styles: [""], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: BdbTableComponent, selector: "bdb-table[dataSource]", inputs: ["columns", "dataSource", "displayedColumns", "contextActions", "selection", "selectOnRowClick", "selectedRowClass", "isClickable", "rowColor"], outputs: ["rowClick", "contextAction"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "directive", type: BdbCellDirective, selector: "ng-template[bdbCellDef]", inputs: ["bdbCellDef"] }] }); }
1487
1643
  }
1488
1644
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: UserTableComponent, decorators: [{
1489
1645
  type: Component,
1490
1646
  args: [{ selector: 'bdb-user-table[dataSource]', standalone: true, imports: [CommonModule, BdbTableComponent, MatDialogModule, BdbCellDirective], template: "<bdb-table\r\n [columns]=\"columns\"\r\n [dataSource]=\"dataSource\"\r\n (rowClick)=\"onRowClick($event)\"\r\n [contextActions]=\"contextActions\"\r\n (contextAction)=\"onContextAction($event)\"\r\n [displayedColumns]=\"displayedColumns\">\r\n <ng-template bdbCellDef=\"roles\" let-row>\r\n {{ row.roles }}\r\n </ng-template>\r\n</bdb-table>\r\n" }]
1491
- }], ctorParameters: () => [{ type: i1$2.MatDialog }, { type: BdbColumnBuilder }], propDecorators: { dataSource: [{
1647
+ }], ctorParameters: () => [{ type: i1$3.MatDialog }, { type: BdbColumnBuilder }], propDecorators: { dataSource: [{
1492
1648
  type: Input
1493
1649
  }], displayedColumns: [{
1494
1650
  type: Input
@@ -1498,121 +1654,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
1498
1654
  type: Input
1499
1655
  }] } });
1500
1656
 
1501
- class LayoutError extends Error {
1502
- constructor(message) {
1503
- super(message);
1504
- }
1505
- }
1506
-
1507
- const DEFAULT_FLEX_DIRECTION = 'row';
1508
- const DEFAULT_FLEX_GAP = '';
1509
- const DEFAULT_FLEX_SPACING = {
1510
- justify: 'start',
1511
- align: 'stretch',
1512
- };
1513
- class BdbFlexDirective {
1514
- constructor(element, renderer) {
1515
- this.element = element;
1516
- this.renderer = renderer;
1517
- this.bdbFlex = '';
1518
- this.bdbFlexDirection = '';
1519
- this.bdbFlexGap = '';
1520
- this.bdbFlexSpacing = '';
1521
- }
1522
- ngOnInit() {
1523
- this.renderer.setStyle(this.element.nativeElement, 'display', 'flex');
1524
- const bdbFlexInputs = this.bdbFlex.split(' ').filter(x => !!x);
1525
- this.setDirection(bdbFlexInputs[0]);
1526
- this.setGap(bdbFlexInputs[1]);
1527
- this.setSpacing({
1528
- justify: bdbFlexInputs[2],
1529
- align: bdbFlexInputs[3],
1530
- });
1531
- }
1532
- setDirection(bdbFlexInput) {
1533
- const direction = this.validateDirection(this.getDirection(bdbFlexInput));
1534
- this.renderer.setStyle(this.element.nativeElement, 'flex-direction', direction);
1535
- }
1536
- getDirection(bdbFlexInput) {
1537
- const trimmedBdbFlexDirection = this.bdbFlexDirection.trim();
1538
- if (trimmedBdbFlexDirection) {
1539
- return trimmedBdbFlexDirection;
1540
- }
1541
- if (bdbFlexInput) {
1542
- return bdbFlexInput;
1543
- }
1544
- return DEFAULT_FLEX_DIRECTION;
1545
- }
1546
- validateDirection(direction) {
1547
- switch (direction) {
1548
- case 'row':
1549
- return 'row';
1550
- case 'col':
1551
- return 'column';
1552
- default:
1553
- throw new LayoutError(`'${direction}' is not a valid value for flex direction`);
1554
- }
1555
- }
1556
- setGap(bdbFlexInput) {
1557
- const gap = this.validateGap(this.getGap(bdbFlexInput));
1558
- this.renderer.setStyle(this.element.nativeElement, 'gap', gap);
1559
- }
1560
- getGap(bdbFlexInput) {
1561
- const trimmedBdbFlexGap = this.bdbFlexGap.trim();
1562
- if (trimmedBdbFlexGap) {
1563
- return trimmedBdbFlexGap;
1564
- }
1565
- if (bdbFlexInput) {
1566
- return bdbFlexInput;
1567
- }
1568
- return DEFAULT_FLEX_GAP;
1569
- }
1570
- validateGap(gap) {
1571
- return gap;
1572
- }
1573
- setSpacing(bdbFlexInput) {
1574
- const spacing = this.validateSpacing(this.getSpacing(bdbFlexInput));
1575
- this.renderer.setStyle(this.element.nativeElement, 'align-items', spacing.align);
1576
- this.renderer.setStyle(this.element.nativeElement, 'justify-content', spacing.justify);
1577
- }
1578
- getSpacing(bdbFlexInput) {
1579
- const splitBdbFlexSpacing = this.bdbFlexSpacing.split(' ').filter(x => !!x);
1580
- if (splitBdbFlexSpacing.length === 2) {
1581
- return {
1582
- align: splitBdbFlexSpacing[0],
1583
- justify: splitBdbFlexSpacing[1],
1584
- };
1585
- }
1586
- if (bdbFlexInput.align && bdbFlexInput.justify) {
1587
- return {
1588
- align: bdbFlexInput.align,
1589
- justify: bdbFlexInput.justify,
1590
- };
1591
- }
1592
- return DEFAULT_FLEX_SPACING;
1593
- }
1594
- validateSpacing(spacing) {
1595
- return spacing;
1596
- }
1597
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFlexDirective, deps: [{ token: i0.ElementRef }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive }); }
1598
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.7", type: BdbFlexDirective, isStandalone: true, selector: "[bdbFlex], [bdbFlexDirection], [bdbFlexGap], [bdbFlexSpacing]", inputs: { bdbFlex: "bdbFlex", bdbFlexDirection: "bdbFlexDirection", bdbFlexGap: "bdbFlexGap", bdbFlexSpacing: "bdbFlexSpacing" }, ngImport: i0 }); }
1599
- }
1600
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbFlexDirective, decorators: [{
1601
- type: Directive,
1602
- args: [{
1603
- selector: '[bdbFlex], [bdbFlexDirection], [bdbFlexGap], [bdbFlexSpacing]',
1604
- standalone: true,
1605
- }]
1606
- }], ctorParameters: () => [{ type: i0.ElementRef }, { type: i0.Renderer2 }], propDecorators: { bdbFlex: [{
1607
- type: Input
1608
- }], bdbFlexDirection: [{
1609
- type: Input
1610
- }], bdbFlexGap: [{
1611
- type: Input
1612
- }], bdbFlexSpacing: [{
1613
- type: Input
1614
- }] } });
1615
-
1616
1657
  class BdbFlexChildDirective {
1617
1658
  constructor(element, renderer) {
1618
1659
  this.element = element;
@@ -1870,6 +1911,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImpor
1870
1911
  type: Input
1871
1912
  }] } });
1872
1913
 
1914
+ class BdbCollapseRowComponent {
1915
+ constructor() {
1916
+ this.collapsed = false;
1917
+ this.canCollapse = true;
1918
+ this.class = 'bdb-collapse-row';
1919
+ }
1920
+ get isCollapsed() {
1921
+ return this.collapsed;
1922
+ }
1923
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbCollapseRowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1924
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.7", type: BdbCollapseRowComponent, isStandalone: true, selector: "bdb-collapse-row", inputs: { collapsed: "collapsed", canCollapse: "canCollapse" }, host: { properties: { "class": "this.class", "class.collapsed": "this.isCollapsed" } }, ngImport: i0, template: "<div class=\"left\">\r\n <ng-content select=\"left\"></ng-content>\r\n</div>\r\n<div class=\"gap\">\r\n <div class=\"indicator\" (click)=\"collapsed = canCollapse && !collapsed\">\r\n <div class=\"top\"></div>\r\n <div class=\"middle\">\r\n <mat-icon>{{ collapsed ? 'left_panel_open' : 'left_panel_close' }}</mat-icon>\r\n </div>\r\n <div class=\"bottom\"></div>\r\n </div>\r\n</div>\r\n<div class=\"right\">\r\n <ng-content select=\"right\"></ng-content>\r\n</div>\r\n", styles: [":host{height:100%;overflow:hidden;display:flex;flex-direction:row;justify-content:start;align-items:stretch}:host>.gap{flex:0 0 16px;position:relative}:host>.gap .indicator{z-index:101;position:absolute;inset:0 -8px;display:none;flex-direction:column;align-items:stretch;justify-content:center;cursor:pointer}:host>.gap .indicator .top,:host>.gap .indicator .bottom{flex:1;margin:0 12px}:host>.gap .indicator .top{border-radius:4px 4px 0 0}:host>.gap .indicator .bottom{border-radius:0 0 4px 4px}:host>.gap .indicator .middle{flex:0 0 24px;border-radius:4px;padding:4px;display:flex;align-items:center;justify-content:center}:host>.gap:hover .indicator{display:flex}:host>.left,:host>.right{flex:0 0 calc(50% - 8px);overflow:hidden;display:flex;flex-direction:column;justify-content:stretch;align-content:stretch}:host.collapsed>.left{flex:0 0 8px;visibility:hidden}:host.collapsed>.right{flex-grow:1}:host.collapsed>.gap .indicator{display:flex}:host .left{transition:flex .2s ease-in-out}\n"], dependencies: [{ kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }] }); }
1925
+ }
1926
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.7", ngImport: i0, type: BdbCollapseRowComponent, decorators: [{
1927
+ type: Component,
1928
+ args: [{ selector: 'bdb-collapse-row', standalone: true, imports: [MatIconModule], template: "<div class=\"left\">\r\n <ng-content select=\"left\"></ng-content>\r\n</div>\r\n<div class=\"gap\">\r\n <div class=\"indicator\" (click)=\"collapsed = canCollapse && !collapsed\">\r\n <div class=\"top\"></div>\r\n <div class=\"middle\">\r\n <mat-icon>{{ collapsed ? 'left_panel_open' : 'left_panel_close' }}</mat-icon>\r\n </div>\r\n <div class=\"bottom\"></div>\r\n </div>\r\n</div>\r\n<div class=\"right\">\r\n <ng-content select=\"right\"></ng-content>\r\n</div>\r\n", styles: [":host{height:100%;overflow:hidden;display:flex;flex-direction:row;justify-content:start;align-items:stretch}:host>.gap{flex:0 0 16px;position:relative}:host>.gap .indicator{z-index:101;position:absolute;inset:0 -8px;display:none;flex-direction:column;align-items:stretch;justify-content:center;cursor:pointer}:host>.gap .indicator .top,:host>.gap .indicator .bottom{flex:1;margin:0 12px}:host>.gap .indicator .top{border-radius:4px 4px 0 0}:host>.gap .indicator .bottom{border-radius:0 0 4px 4px}:host>.gap .indicator .middle{flex:0 0 24px;border-radius:4px;padding:4px;display:flex;align-items:center;justify-content:center}:host>.gap:hover .indicator{display:flex}:host>.left,:host>.right{flex:0 0 calc(50% - 8px);overflow:hidden;display:flex;flex-direction:column;justify-content:stretch;align-content:stretch}:host.collapsed>.left{flex:0 0 8px;visibility:hidden}:host.collapsed>.right{flex-grow:1}:host.collapsed>.gap .indicator{display:flex}:host .left{transition:flex .2s ease-in-out}\n"] }]
1929
+ }], propDecorators: { collapsed: [{
1930
+ type: Input
1931
+ }], canCollapse: [{
1932
+ type: Input
1933
+ }], class: [{
1934
+ type: HostBinding,
1935
+ args: ['class']
1936
+ }], isCollapsed: [{
1937
+ type: HostBinding,
1938
+ args: ['class.collapsed']
1939
+ }] } });
1940
+
1873
1941
  class BdbFieldComponent {
1874
1942
  constructor() {
1875
1943
  this.class = 'bdb-field';
@@ -2462,5 +2530,5 @@ var resetPasswordPage_component = /*#__PURE__*/Object.freeze({
2462
2530
  * Generated bundle index. Do not edit.
2463
2531
  */
2464
2532
 
2465
- export { AccessDeniedPageComponent, AuthContainerComponent, AuthService, BDB_OPTIONS, BdbAlertComponent, BdbAlertErrorResponseComponent, BdbBooleanDisplayComponent, BdbCellDirective, BdbColumnBuilder, BdbColumnType, BdbDataSource, BdbFieldComponent, BdbFlexChildDirective, BdbFlexDirective, BdbFormErrorDirective, BdbGridChildDirective, BdbGridDirective, BdbOptionsBuilder, BdbPaginatorComponent, BdbQueryInputComponent, BdbSearchComponent, BdbSearchWrapperBaseComponent, BdbService, BdbServiceCR, BdbServiceCRD, BdbServiceCRU, BdbServiceCRUD, BdbServiceR, BdbServiceRD, BdbServiceRU, BdbServiceRUD, BdbTableComponent, ExceptionLogService, ExceptionLogTableComponent, ForgotPasswordPageComponent, InvalidTokenPageComponent, LoginPageComponent, LogoutPageComponent, MediaService, MediaType, PlainNumberPipe, ResetPasswordPageComponent, RoleService, TaskLogOutcome, TaskLogOutcomePipe, TaskLogParameterService, TaskLogParameterType, TaskLogParameterValuePipe, TaskLogScheduleService, TaskLogSchedulerService, TaskLogService, TaskLogStatus, TaskLogStatusPipe, TaskLogTypeService, UserRoleService, UserService, UserTableComponent, equalValueValidator, getAuthorizationHeaderFromToken, getTokenFromAuthorizationHeader, loggedOutGuard, provideBaDaBoom, resetPasswordResolver, roleGuard, tokenExpiredInterceptor, tokenInterceptor };
2533
+ export { AccessDeniedPageComponent, AuthContainerComponent, AuthService, BDB_OPTIONS, BdbAlertComponent, BdbAlertErrorResponseComponent, BdbBooleanDisplayComponent, BdbCellDirective, BdbCollapseRowComponent, BdbColumnBuilder, BdbColumnType, BdbDataSource, BdbFieldComponent, BdbFlexChildDirective, BdbFlexDirective, BdbFormErrorDirective, BdbFullTableComponent, BdbGridChildDirective, BdbGridDirective, BdbOptionsBuilder, BdbPaginatorComponent, BdbQueryInputComponent, BdbSearchComponent, BdbSearchWrapperBaseComponent, BdbService, BdbServiceCR, BdbServiceCRD, BdbServiceCRU, BdbServiceCRUD, BdbServiceR, BdbServiceRD, BdbServiceRU, BdbServiceRUD, BdbTableComponent, ExceptionLogService, ExceptionLogTableComponent, ForgotPasswordPageComponent, InvalidTokenPageComponent, LoginPageComponent, LogoutPageComponent, MediaService, MediaType, PlainNumberPipe, ResetPasswordPageComponent, RoleService, TaskLogOutcome, TaskLogOutcomePipe, TaskLogParameterService, TaskLogParameterType, TaskLogParameterValuePipe, TaskLogScheduleService, TaskLogSchedulerService, TaskLogService, TaskLogStatus, TaskLogStatusPipe, TaskLogTypeService, UserRoleService, UserService, UserTableComponent, equalValueValidator, getAuthorizationHeaderFromToken, getTokenFromAuthorizationHeader, loggedOutGuard, provideBaDaBoom, resetPasswordResolver, roleGuard, tokenExpiredInterceptor, tokenInterceptor };
2466
2534
  //# sourceMappingURL=devopmaat-badaboom.mjs.map