@ts-core/angular 11.0.78 → 11.0.82

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 (25) hide show
  1. package/bottomSheet/{component/BottomSheetImpl.d.ts → BottomSheetImpl.d.ts} +12 -4
  2. package/bottomSheet/component/BottomSheetBaseComponent.d.ts +19 -0
  3. package/bottomSheet/component/bottom-sheet-close-element/bottom-sheet-close-element.component.d.ts +10 -0
  4. package/bundles/ts-core-angular.umd.js +312 -107
  5. package/bundles/ts-core-angular.umd.js.map +1 -1
  6. package/bundles/ts-core-angular.umd.min.js +1 -1
  7. package/bundles/ts-core-angular.umd.min.js.map +1 -1
  8. package/esm2015/bottomSheet/BottomSheetImpl.js +231 -0
  9. package/esm2015/bottomSheet/BottomSheetModule.js +3 -3
  10. package/esm2015/bottomSheet/BottomSheetService.js +3 -3
  11. package/esm2015/bottomSheet/component/BottomSheetBaseComponent.js +86 -0
  12. package/esm2015/bottomSheet/component/bottom-sheet-close-element/bottom-sheet-close-element.component.js +63 -0
  13. package/esm2015/component/cdk-table/cdk-table-filterable/cdk-table-filterable.component.js +2 -2
  14. package/esm2015/component/cdk-table/cdk-table-paginable/cdk-table-paginable.component.js +2 -2
  15. package/esm2015/service/RouterBaseService.js +6 -3
  16. package/esm2015/ts-core-angular.js +11 -10
  17. package/esm2015/window/component/WindowBaseComponent.js +2 -2
  18. package/fesm2015/ts-core-angular.js +260 -88
  19. package/fesm2015/ts-core-angular.js.map +1 -1
  20. package/package.json +1 -1
  21. package/service/RouterBaseService.d.ts +6 -1
  22. package/style/mat/vi-mat.scss +7 -3
  23. package/ts-core-angular.d.ts +11 -10
  24. package/ts-core-angular.metadata.json +1 -1
  25. package/esm2015/bottomSheet/component/BottomSheetImpl.js +0 -201
@@ -4346,9 +4346,19 @@ class BottomSheetImpl extends DestroyableContainer {
4346
4346
  this.blinkToggle = () => {
4347
4347
  this.isBlink = !this.isBlink;
4348
4348
  };
4349
+ this.mouseDownHandlerProxy = (event) => {
4350
+ this.mouseDownHandler(event);
4351
+ };
4352
+ this.mouseClickHandlerProxy = (event) => {
4353
+ this.mouseClickHandler(event);
4354
+ };
4349
4355
  this.observer = new Subject();
4350
4356
  this.properties = properties;
4351
4357
  this.content.window = this;
4358
+ // Have to save for unsubscribe on destroy
4359
+ this._wrapper = this.properties.overlay.hostElement;
4360
+ this._backdrop = this.properties.overlay.backdropElement;
4361
+ this._container = this.properties.overlay.overlayElement;
4352
4362
  this.setProperties();
4353
4363
  this.getReference().afterOpened().pipe(takeUntil$1(this.destroyed)).subscribe(this.setOpened);
4354
4364
  this.getReference().afterDismissed().pipe(takeUntil$1(this.destroyed)).subscribe(this.setClosed);
@@ -4356,6 +4366,10 @@ class BottomSheetImpl extends DestroyableContainer {
4356
4366
  setProperties() {
4357
4367
  ViewUtil.addClass(this.container, 'vi-bottom-sheet');
4358
4368
  ViewUtil.toggleClass(this.container, 'vi-modal', this.config.isModal);
4369
+ if (!this.config.isModal) {
4370
+ this.container.addEventListener('click', this.mouseClickHandlerProxy, true);
4371
+ this.container.addEventListener('mousedown', this.mouseDownHandlerProxy);
4372
+ }
4359
4373
  }
4360
4374
  commitIsBlinkProperties() { }
4361
4375
  commitIsDisabledProperties() { }
@@ -4368,6 +4382,9 @@ class BottomSheetImpl extends DestroyableContainer {
4368
4382
  getReference() {
4369
4383
  return this.properties.reference;
4370
4384
  }
4385
+ isNeedClickStopPropagation(event) {
4386
+ return false;
4387
+ }
4371
4388
  stopBlinkIfNeed() {
4372
4389
  this.isBlink = false;
4373
4390
  if (!this.blinkTimer) {
@@ -4376,6 +4393,14 @@ class BottomSheetImpl extends DestroyableContainer {
4376
4393
  clearInterval(this.blinkTimer);
4377
4394
  this.blinkTimer = null;
4378
4395
  }
4396
+ mouseDownHandler(event) {
4397
+ this.setOnTop();
4398
+ }
4399
+ mouseClickHandler(event) {
4400
+ if (this.isNeedClickStopPropagation(event)) {
4401
+ event.stopPropagation();
4402
+ }
4403
+ }
4379
4404
  // --------------------------------------------------------------------------
4380
4405
  //
4381
4406
  // Public Methods
@@ -4392,6 +4417,8 @@ class BottomSheetImpl extends DestroyableContainer {
4392
4417
  return;
4393
4418
  }
4394
4419
  super.destroy();
4420
+ this._container.removeEventListener('click', this.mouseClickHandlerProxy, true);
4421
+ this._container.removeEventListener('mousedown', this.mouseDownHandlerProxy);
4395
4422
  if (!isNil(this.content)) {
4396
4423
  this.content.destroy();
4397
4424
  }
@@ -4400,6 +4427,9 @@ class BottomSheetImpl extends DestroyableContainer {
4400
4427
  this.observer = null;
4401
4428
  }
4402
4429
  this.properties = null;
4430
+ this._wrapper = null;
4431
+ this._backdrop = null;
4432
+ this._container = null;
4403
4433
  clearInterval(this.blinkTimer);
4404
4434
  this.blinkTimer = null;
4405
4435
  }
@@ -4474,13 +4504,13 @@ class BottomSheetImpl extends DestroyableContainer {
4474
4504
  return !isNil(this.reference) ? this.reference.instance : null;
4475
4505
  }
4476
4506
  get container() {
4477
- return !isNil(this.reference) ? this.properties.overlay.overlayElement : null;
4507
+ return this._container;
4478
4508
  }
4479
4509
  get wrapper() {
4480
- return !isNil(this.properties.reference) ? this.properties.overlay.hostElement : null;
4510
+ return this._wrapper;
4481
4511
  }
4482
4512
  get backdrop() {
4483
- return !isNil(this.properties.reference) ? this.properties.overlay.backdropElement : null;
4513
+ return this._backdrop;
4484
4514
  }
4485
4515
  get isOnTop() {
4486
4516
  return false;
@@ -4510,6 +4540,222 @@ class BottomSheetImpl extends DestroyableContainer {
4510
4540
  BottomSheetImpl.BLINK_DELAY = 500;
4511
4541
  BottomSheetImpl.SHAKE_DELAY = 500;
4512
4542
 
4543
+ class WindowElement extends DestroyableContainer {
4544
+ // --------------------------------------------------------------------------
4545
+ //
4546
+ // Constructor
4547
+ //
4548
+ // --------------------------------------------------------------------------
4549
+ constructor(element) {
4550
+ super();
4551
+ this.element = element;
4552
+ }
4553
+ // --------------------------------------------------------------------------
4554
+ //
4555
+ // Private Methods
4556
+ //
4557
+ // --------------------------------------------------------------------------
4558
+ checkWindowParent() {
4559
+ let container = this.getContainer();
4560
+ if (container) {
4561
+ ViewUtil.appendChild(container, this.element.nativeElement);
4562
+ }
4563
+ }
4564
+ getContainer() {
4565
+ let item = ViewUtil.parseElement(this.element.nativeElement);
4566
+ while (item && item.nodeName.toLowerCase() !== 'mat-dialog-container') {
4567
+ item = item.parentElement;
4568
+ }
4569
+ return item;
4570
+ }
4571
+ createChildren() { }
4572
+ destroyChildren() { }
4573
+ commitWindowProperties() { }
4574
+ // --------------------------------------------------------------------------
4575
+ //
4576
+ // Public Methods
4577
+ //
4578
+ // --------------------------------------------------------------------------
4579
+ ngAfterViewInit() {
4580
+ this.createChildren();
4581
+ this.checkWindowParent();
4582
+ }
4583
+ destroy() {
4584
+ if (this.isDestroyed) {
4585
+ return;
4586
+ }
4587
+ super.destroy();
4588
+ this.destroyChildren();
4589
+ this.element = null;
4590
+ this.window = null;
4591
+ }
4592
+ // --------------------------------------------------------------------------
4593
+ //
4594
+ // Protected Properties
4595
+ //
4596
+ // --------------------------------------------------------------------------
4597
+ get nativeElement() {
4598
+ return this.element ? this.element.nativeElement : null;
4599
+ }
4600
+ // --------------------------------------------------------------------------
4601
+ //
4602
+ // Public Properties
4603
+ //
4604
+ // --------------------------------------------------------------------------
4605
+ get window() {
4606
+ return this._window;
4607
+ }
4608
+ set window(value) {
4609
+ if (value === this._window) {
4610
+ return;
4611
+ }
4612
+ this._window = value;
4613
+ if (this.window) {
4614
+ this.commitWindowProperties();
4615
+ }
4616
+ }
4617
+ }
4618
+
4619
+ class BottomSheetCloseElementComponent extends WindowElement {
4620
+ // --------------------------------------------------------------------------
4621
+ //
4622
+ // Constructor
4623
+ //
4624
+ // --------------------------------------------------------------------------
4625
+ constructor(element) {
4626
+ super(element);
4627
+ // --------------------------------------------------------------------------
4628
+ //
4629
+ // Event Handlers
4630
+ //
4631
+ // --------------------------------------------------------------------------
4632
+ this.mouseClickHandler = (event) => {
4633
+ event.stopPropagation();
4634
+ if (!isNil(this.window)) {
4635
+ this.window.close();
4636
+ }
4637
+ };
4638
+ }
4639
+ // --------------------------------------------------------------------------
4640
+ //
4641
+ // Private Methods
4642
+ //
4643
+ // --------------------------------------------------------------------------
4644
+ createChildren() {
4645
+ super.createChildren();
4646
+ if (!isNil(BottomSheetCloseElementComponent.ICON_VALUE)) {
4647
+ ViewUtil.setProperty(this.nativeElement, 'innerHTML', BottomSheetCloseElementComponent.ICON_VALUE);
4648
+ }
4649
+ if (!isNil(BottomSheetCloseElementComponent.ICON_CLASS)) {
4650
+ ViewUtil.addClasses(this.nativeElement, BottomSheetCloseElementComponent.ICON_CLASS);
4651
+ }
4652
+ ViewUtil.addClass(this.nativeElement, 'mouse-active');
4653
+ this.nativeElement.addEventListener('click', this.mouseClickHandler, true);
4654
+ }
4655
+ destroyChildren() {
4656
+ super.destroyChildren();
4657
+ this.nativeElement.removeEventListener('click', this.mouseClickHandler, true);
4658
+ }
4659
+ }
4660
+ // --------------------------------------------------------------------------
4661
+ //
4662
+ // Constants
4663
+ //
4664
+ // --------------------------------------------------------------------------
4665
+ BottomSheetCloseElementComponent.ICON_CLASS = 'fas fa-times';
4666
+ BottomSheetCloseElementComponent.ICON_VALUE = null;
4667
+ BottomSheetCloseElementComponent.decorators = [
4668
+ { type: Component, args: [{
4669
+ selector: 'vi-bottom-sheet-close-element',
4670
+ template: '',
4671
+ styles: [":host{display:block;position:absolute;color:#fff;background-color:rgba(0,0,0,.4);border-radius:50%;padding:8px;font-size:14px;font-weight:700}:host:hover{background-color:rgba(0,0,0,.6)}:host.small{font-size:10px;padding:4px}"]
4672
+ },] }
4673
+ ];
4674
+ BottomSheetCloseElementComponent.ctorParameters = () => [
4675
+ { type: ElementRef }
4676
+ ];
4677
+
4678
+ class BottomSheetBaseComponent extends BottomSheetImpl {
4679
+ // --------------------------------------------------------------------------
4680
+ //
4681
+ // Protected Methods
4682
+ //
4683
+ // --------------------------------------------------------------------------
4684
+ setProperties() {
4685
+ super.setProperties();
4686
+ this.createWindowComponents();
4687
+ }
4688
+ createWindowComponents() {
4689
+ if (!(this.content.container instanceof ViewContainerRef)) {
4690
+ return;
4691
+ }
4692
+ if (!this.config.disableClose && !this.closeWindow) {
4693
+ let factory = this.resolver.resolveComponentFactory(BottomSheetBaseComponent.CLOSE_COMPONENT);
4694
+ this.closeWindow = this.content.container.createComponent(factory);
4695
+ this.closeWindow.instance.window = this;
4696
+ }
4697
+ }
4698
+ commitIsBlinkProperties() {
4699
+ ViewUtil.toggleClass(this.container, this.blinkClass, this.isBlink);
4700
+ }
4701
+ commitIsDisabledProperties() {
4702
+ ViewUtil.toggleClass(this.container, this.disabledClass, this.isDisabled);
4703
+ ViewUtil.toggleClass(this.content.element, this.disabledClass, this.isDisabled);
4704
+ ViewUtil.toggleClass(this.content.element.nativeElement.parentElement, this.disabledClass, this.isDisabled);
4705
+ }
4706
+ commitIsShakingProperties() {
4707
+ ViewUtil.toggleClass(this.container, this.shakingClass, this.isShaking);
4708
+ }
4709
+ isNeedClickStopPropagation(event) {
4710
+ if (!super.isNeedClickStopPropagation(event)) {
4711
+ return false;
4712
+ }
4713
+ if (this.closeWindow && this.closeWindow.location.nativeElement === event.target) {
4714
+ return false;
4715
+ }
4716
+ return true;
4717
+ }
4718
+ // --------------------------------------------------------------------------
4719
+ //
4720
+ // Protected Properties
4721
+ //
4722
+ // --------------------------------------------------------------------------
4723
+ get resolver() {
4724
+ return APPLICATION_INJECTOR().get(ComponentFactoryResolver);
4725
+ }
4726
+ get blinkClass() {
4727
+ return 'vi-blink';
4728
+ }
4729
+ get disabledClass() {
4730
+ return 'vi-disabled';
4731
+ }
4732
+ get minimizedClass() {
4733
+ return 'vi-minimized';
4734
+ }
4735
+ get shakingClass() {
4736
+ return 'shake-constant shake-horizontal';
4737
+ }
4738
+ // --------------------------------------------------------------------------
4739
+ //
4740
+ // Public Methods
4741
+ //
4742
+ // --------------------------------------------------------------------------
4743
+ destroy() {
4744
+ if (this.isDestroyed) {
4745
+ return;
4746
+ }
4747
+ super.destroy();
4748
+ // Components will destroy automatically
4749
+ this.closeWindow = null;
4750
+ }
4751
+ }
4752
+ // --------------------------------------------------------------------------
4753
+ //
4754
+ // Static Properties
4755
+ //
4756
+ // --------------------------------------------------------------------------
4757
+ BottomSheetBaseComponent.CLOSE_COMPONENT = BottomSheetCloseElementComponent;
4758
+
4513
4759
  class IWindowContent extends DestroyableContainer {
4514
4760
  // --------------------------------------------------------------------------
4515
4761
  //
@@ -4682,82 +4928,6 @@ WindowQuestionComponent.ctorParameters = () => [
4682
4928
  { type: LanguageService }
4683
4929
  ];
4684
4930
 
4685
- class WindowElement extends DestroyableContainer {
4686
- // --------------------------------------------------------------------------
4687
- //
4688
- // Constructor
4689
- //
4690
- // --------------------------------------------------------------------------
4691
- constructor(element) {
4692
- super();
4693
- this.element = element;
4694
- }
4695
- // --------------------------------------------------------------------------
4696
- //
4697
- // Private Methods
4698
- //
4699
- // --------------------------------------------------------------------------
4700
- checkWindowParent() {
4701
- let container = this.getContainer();
4702
- if (container) {
4703
- ViewUtil.appendChild(container, this.element.nativeElement);
4704
- }
4705
- }
4706
- getContainer() {
4707
- let item = ViewUtil.parseElement(this.element.nativeElement);
4708
- while (item && item.nodeName.toLowerCase() !== 'mat-dialog-container') {
4709
- item = item.parentElement;
4710
- }
4711
- return item;
4712
- }
4713
- createChildren() { }
4714
- destroyChildren() { }
4715
- commitWindowProperties() { }
4716
- // --------------------------------------------------------------------------
4717
- //
4718
- // Public Methods
4719
- //
4720
- // --------------------------------------------------------------------------
4721
- ngAfterViewInit() {
4722
- this.createChildren();
4723
- this.checkWindowParent();
4724
- }
4725
- destroy() {
4726
- if (this.isDestroyed) {
4727
- return;
4728
- }
4729
- super.destroy();
4730
- this.destroyChildren();
4731
- this.element = null;
4732
- this.window = null;
4733
- }
4734
- // --------------------------------------------------------------------------
4735
- //
4736
- // Protected Properties
4737
- //
4738
- // --------------------------------------------------------------------------
4739
- get nativeElement() {
4740
- return this.element ? this.element.nativeElement : null;
4741
- }
4742
- // --------------------------------------------------------------------------
4743
- //
4744
- // Public Properties
4745
- //
4746
- // --------------------------------------------------------------------------
4747
- get window() {
4748
- return this._window;
4749
- }
4750
- set window(value) {
4751
- if (value === this._window) {
4752
- return;
4753
- }
4754
- this._window = value;
4755
- if (this.window) {
4756
- this.commitWindowProperties();
4757
- }
4758
- }
4759
- }
4760
-
4761
4931
  class WindowCloseElementComponent extends WindowElement {
4762
4932
  // --------------------------------------------------------------------------
4763
4933
  //
@@ -5166,7 +5336,7 @@ class WindowBaseComponent extends WindowDragable {
5166
5336
  return APPLICATION_INJECTOR().get(ComponentFactoryResolver);
5167
5337
  }
5168
5338
  get blinkClass() {
5169
- return 'blink';
5339
+ return 'vi-blink';
5170
5340
  }
5171
5341
  get disabledClass() {
5172
5342
  return 'vi-disabled';
@@ -5542,7 +5712,7 @@ class BottomSheetService extends Destroyable {
5542
5712
  this.dialog = dialog;
5543
5713
  this.language = language;
5544
5714
  this.observer = new Subject();
5545
- this.factory = new WindowFactory(BottomSheetImpl);
5715
+ this.factory = new WindowFactory(BottomSheetBaseComponent);
5546
5716
  this.questionComponent = WindowQuestionComponent;
5547
5717
  }
5548
5718
  // --------------------------------------------------------------------------
@@ -5617,9 +5787,8 @@ BottomSheetService.ctorParameters = () => [
5617
5787
  { type: LanguageService }
5618
5788
  ];
5619
5789
 
5620
- // import { WindowQuestionComponent } from '../window/component/window-question/window-question.component';
5621
5790
  const IMPORTS = [CommonModule, FormsModule, MatBottomSheetModule, MatButtonModule, LanguageModule];
5622
- const ENTRY_COMPONENTS = [];
5791
+ const ENTRY_COMPONENTS = [BottomSheetCloseElementComponent];
5623
5792
  const DECLARATIONS = [...ENTRY_COMPONENTS];
5624
5793
  const EXPORTS = [...DECLARATIONS];
5625
5794
  class BottomSheetModule {
@@ -7125,7 +7294,7 @@ class CdkTablePaginableComponent extends CdkTableBaseComponent {
7125
7294
  CdkTablePaginableComponent.decorators = [
7126
7295
  { type: Component, args: [{
7127
7296
  selector: 'vi-cdk-table-paginable',
7128
- template: "<mat-table\n class=\"flex-grow-1 vertical-scroll-only\"\n matSort\n [dataSource]=\"table?.table?.dataSource\"\n [trackBy]=\"table.trackByFn\"\n [matSortActive]=\"sortActive\"\n [matSortDirection]=\"sortDirection\"\n [class.mat-nav-list]=\"settings?.isInteractive\"\n (matSortChange)=\"table.sortEventHandler($event)\"\n>\n <ng-container *ngFor=\"let column of columns; trackBy: columnTrackBy\">\n <ng-container [matColumnDef]=\"column.name\">\n <mat-header-cell\n class=\"px-2\"\n mat-sort-header\n [disableClear]=\"true\"\n [disabled]=\"column.isDisableSort\"\n [ngClass]=\"column.headerClassName\"\n *matHeaderCellDef\n >\n <span [innerHTML]=\"column.headerId | viTranslate\"></span>\n </mat-header-cell>\n\n <mat-cell\n class=\"px-2\"\n (click)=\"cellClickHandler(row, column)\"\n *matCellDef=\"let row\"\n [ngClass]=\"row | viCdkTableColumnClassName: column\"\n [ngStyle]=\"row | viCdkTableColumnStyleName: column\"\n >\n <span [ngClass]=\"column | viCdkTableCellClassName\" [vi-html-content-title]=\"row | viCdkTableColumnValue: column\"></span>\n </mat-cell>\n </ng-container>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"columnNames\"></mat-header-row>\n\n <mat-row\n class=\"mat-list-item\"\n *matRowDef=\"let row; columns: columnNames\"\n [ngClass]=\"row | viCdkTableRowClassName: rows:selectedRows\"\n [ngStyle]=\"row | viCdkTableRowStyleName: rows:selectedRows\"\n (click)=\"rowClicked.emit(row)\"\n ></mat-row>\n</mat-table>\n\n<p class=\"p-3 flex-shrink-0 text-center mouse-inactive\" *ngIf=\"table?.length === 0\" [innerHTML]=\"settings?.noDataId | viTranslate\"></p>\n\n<mat-progress-bar class=\"flex-shrink-0 border transparent\" mode=\"indeterminate\" *ngIf=\"table?.isLoading\" style=\"margin-bottom: -1px\"></mat-progress-bar>\n\n<div class=\"paginator-container d-flex border-sm-top align-items-center justify-content-end flex-shrink-0\">\n <ng-content></ng-content>\n <mat-paginator\n class=\"flex-shrink-0\"\n [pageSize]=\"table?.pageSize\"\n [pageIndex]=\"table?.pageIndex\"\n [length]=\"table?.total\"\n (page)=\"table?.pageEventHandler($event)\"\n [pageSizeOptions]=\"paginator?.pageSizes\"\n [showFirstLastButtons]=\"paginator?.showFirstLastButtons\"\n [hidePageSize]=\"paginator?.hidePageSize\"\n *ngIf=\"paginator && table?.length > 0\"\n ></mat-paginator>\n</div>\n"
7297
+ template: "<mat-table\n class=\"flex-grow-1 vertical-scroll-only\"\n matSort\n [dataSource]=\"table?.table?.dataSource\"\n [trackBy]=\"table.trackByFn\"\n [matSortActive]=\"sortActive\"\n [matSortDirection]=\"sortDirection\"\n [class.mat-nav-list]=\"settings?.isInteractive\"\n (matSortChange)=\"table.sortEventHandler($event)\"\n>\n <ng-container *ngFor=\"let column of columns; trackBy: columnTrackBy\">\n <ng-container [matColumnDef]=\"column.name\">\n <mat-header-cell\n class=\"px-2\"\n mat-sort-header\n [disableClear]=\"true\"\n [disabled]=\"column.isDisableSort\"\n [ngClass]=\"column.headerClassName\"\n *matHeaderCellDef\n >\n <span [innerHTML]=\"column.headerId | viTranslate\"></span>\n </mat-header-cell>\n\n <mat-cell\n class=\"px-2\"\n (click)=\"cellClickHandler(row, column)\"\n *matCellDef=\"let row\"\n [ngClass]=\"row | viCdkTableColumnClassName: column\"\n [ngStyle]=\"row | viCdkTableColumnStyleName: column\"\n >\n <span [ngClass]=\"column | viCdkTableCellClassName\" [vi-html-content-title]=\"row | viCdkTableColumnValue: column\"></span>\n </mat-cell>\n </ng-container>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"columnNames\"></mat-header-row>\n\n <mat-row\n class=\"mat-list-item\"\n *matRowDef=\"let row; columns: columnNames\"\n [ngClass]=\"row | viCdkTableRowClassName: rows:selectedRows\"\n [ngStyle]=\"row | viCdkTableRowStyleName: rows:selectedRows\"\n (click)=\"rowClicked.emit(row)\"\n ></mat-row>\n\n <p class=\"p-3 flex-shrink-0 text-center mouse-inactive\" [vi-translate]=\"settings?.noDataId\" *matNoDataRow></p>\n \n</mat-table>\n\n<!--\n<p class=\"p-3 flex-shrink-0 text-center mouse-inactive\" *ngIf=\"table?.length === 0\" [innerHTML]=\"settings?.noDataId | viTranslate\"></p>\n-->\n\n<mat-progress-bar class=\"flex-shrink-0 border\" [mode]=\"table?.isLoading ? 'indeterminate' : 'determinate'\"></mat-progress-bar>\n\n<div class=\"paginator-container d-flex align-items-center justify-content-end flex-shrink-0\">\n <ng-content></ng-content>\n <mat-paginator\n class=\"flex-shrink-0\"\n [pageSize]=\"table?.pageSize\"\n [pageIndex]=\"table?.pageIndex\"\n [length]=\"table?.total\"\n (page)=\"table?.pageEventHandler($event)\"\n [pageSizeOptions]=\"paginator?.pageSizes\"\n [showFirstLastButtons]=\"paginator?.showFirstLastButtons\"\n [hidePageSize]=\"paginator?.hidePageSize\"\n *ngIf=\"paginator && table?.length > 0\"\n ></mat-paginator>\n</div>\n"
7129
7298
  },] }
7130
7299
  ];
7131
7300
  CdkTablePaginableComponent.ctorParameters = () => [
@@ -7149,7 +7318,7 @@ class CdkTableFilterableComponent extends CdkTableBaseComponent {
7149
7318
  CdkTableFilterableComponent.decorators = [
7150
7319
  { type: Component, args: [{
7151
7320
  selector: 'vi-cdk-table-filterable',
7152
- template: "<mat-table class=\"flex-grow-1 vertical-scroll-only\" matSort [dataSource]=\"table?.table?.dataSource\" [matSortActive]=\"sortActive\" [matSortDirection]=\"sortDirection\"\n [class.mat-nav-list]=\"settings?.isInteractive\" (matSortChange)=\"table.sortEventHandler($event)\">\n \n <ng-container *ngFor=\"let column of columns;trackBy:columnTrackBy\">\n <ng-container [matColumnDef]=\"column.name\">\n <mat-header-cell class=\"px-2\" mat-sort-header [disableClear]=\"true\" [disabled]=\"column.isDisableSort\" [ngClass]=\"column.headerClassName\" \n *matHeaderCellDef>\n <span [innerHTML]=\"column.headerId | viTranslate\"></span>\n </mat-header-cell>\n <mat-cell class=\"px-2\" (click)=\"cellClickHandler(row, column)\" *matCellDef=\"let row\" \n [ngClass]=\"row | viCdkTableColumnClassName: column\" [ngStyle]=\"row | viCdkTableColumnStyleName: column\" >\n <span [ngClass]=\"column | viCdkTableCellClassName\" [vi-html-content-title]=\"row | viCdkTableColumnValue: column\"></span>\n </mat-cell>\n </ng-container>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"columnNames\"></mat-header-row>\n\n <mat-row class=\"mat-list-item\" *matRowDef=\"let row; columns: columnNames\"\n [ngClass]=\"row | viCdkTableRowClassName: rows : selectedRows\" [ngStyle]=\"row | viCdkTableRowStyleName: rows : selectedRows\"\n (click)=\"rowClicked.emit(row)\"></mat-row>\n\n</mat-table>\n\n<p class=\"p-3 flex-shrink-0 text-center mouse-inactive\" *ngIf=\"!table?.isLoading && table?.length === 0\" [innerHTML]=\"settings?.noDataId | viTranslate\"></p>\n\n<mat-progress-bar class=\"flex-shrink-0 border transparent\" mode=\"indeterminate\" *ngIf=\"table?.isLoading\"\n style=\"margin-bottom: -1px;\"></mat-progress-bar>\n"
7321
+ template: "<mat-table\n class=\"flex-grow-1 vertical-scroll-only\"\n matSort\n [dataSource]=\"table?.table?.dataSource\"\n [matSortActive]=\"sortActive\"\n [matSortDirection]=\"sortDirection\"\n [class.mat-nav-list]=\"settings?.isInteractive\"\n (matSortChange)=\"table.sortEventHandler($event)\"\n>\n <ng-container *ngFor=\"let column of columns; trackBy: columnTrackBy\">\n <ng-container [matColumnDef]=\"column.name\">\n <mat-header-cell\n class=\"px-2\"\n mat-sort-header\n [disableClear]=\"true\"\n [disabled]=\"column.isDisableSort\"\n [ngClass]=\"column.headerClassName\"\n *matHeaderCellDef\n >\n <span [innerHTML]=\"column.headerId | viTranslate\"></span>\n </mat-header-cell>\n <mat-cell\n class=\"px-2\"\n (click)=\"cellClickHandler(row, column)\"\n *matCellDef=\"let row\"\n [ngClass]=\"row | viCdkTableColumnClassName: column\"\n [ngStyle]=\"row | viCdkTableColumnStyleName: column\"\n >\n <span [ngClass]=\"column | viCdkTableCellClassName\" [vi-html-content-title]=\"row | viCdkTableColumnValue: column\"></span>\n </mat-cell>\n </ng-container>\n </ng-container>\n\n <mat-header-row *matHeaderRowDef=\"columnNames\"></mat-header-row>\n\n <mat-row\n class=\"mat-list-item\"\n *matRowDef=\"let row; columns: columnNames\"\n [ngClass]=\"row | viCdkTableRowClassName: rows:selectedRows\"\n [ngStyle]=\"row | viCdkTableRowStyleName: rows:selectedRows\"\n (click)=\"rowClicked.emit(row)\"\n ></mat-row>\n\n <p class=\"p-3 flex-shrink-0 text-center mouse-inactive\" [vi-translate]=\"settings?.noDataId\" *matNoDataRow></p>\n</mat-table>\n\n<mat-progress-bar class=\"flex-shrink-0 border transparent\" [mode]=\"table?.isLoading ? 'indeterminate' : 'determinate'\"></mat-progress-bar>\n"
7153
7322
  },] }
7154
7323
  ];
7155
7324
  CdkTableFilterableComponent.ctorParameters = () => [
@@ -8649,10 +8818,10 @@ class RouterBaseService extends Loadable {
8649
8818
  this.status = LoadableStatus.LOADING;
8650
8819
  }
8651
8820
  else if (event instanceof NavigationEnd || event instanceof NavigationCancel || event instanceof NavigationError) {
8652
- this.status = LoadableStatus.LOADED;
8653
8821
  if (event instanceof NavigationEnd) {
8654
8822
  this._lastUrl = event.url;
8655
8823
  }
8824
+ this.status = LoadableStatus.LOADED;
8656
8825
  }
8657
8826
  });
8658
8827
  }
@@ -8687,7 +8856,7 @@ class RouterBaseService extends Loadable {
8687
8856
  this.isNeedUpdateExtras = false;
8688
8857
  this.applyExtras(this.extrasToApply);
8689
8858
  }
8690
- this.observer.next(new ObservableData(LoadableEvent.COMPLETE));
8859
+ this.observer.next(new ObservableData(LoadableEvent.COMPLETE, { url: this.url, lastUrl: this.lastUrl }));
8691
8860
  break;
8692
8861
  }
8693
8862
  if (newStatus === LoadableStatus.LOADED || newStatus === LoadableStatus.ERROR) {
@@ -8822,6 +8991,9 @@ class RouterBaseService extends Loadable {
8822
8991
  get urlTree() {
8823
8992
  return this.router.parseUrl(this.url);
8824
8993
  }
8994
+ get lastUrlTree() {
8995
+ return this.router.parseUrl(this.lastUrl);
8996
+ }
8825
8997
  get router() {
8826
8998
  return this._router;
8827
8999
  }
@@ -8947,5 +9119,5 @@ var UserBaseServiceEvent;
8947
9119
  * Generated bundle index. Do not edit.
8948
9120
  */
8949
9121
 
8950
- export { APPLICATION_INJECTOR, ApplicationBaseComponent, ApplicationComponent, ApplicationComponent2, AspectRatioResizeDirective, AssetBackgroundDirective, AssetBackgroundPipe, AssetIconPipe, AssetImagePipe, AssetModule, AutoScrollBottomDirective, BootstrapBreakpoint, BootstrapBreakpointService, BootstrapBreakpointServiceEvent, BottomSheetService, COOKIE_OPTIONS, CamelCasePipe, CanDeactivateGuard, CdkTableBaseComponent, CdkTableDataSource, CdkTableFilterableMapCollection, CdkTablePaginableBookmarkMapCollection, CdkTablePaginableMapCollection, ClickToCopyDirective, ClickToSelectDirective, CookieModule, CookieOptions, CookieService, Direction, FinancePipe, FocusDirective, FocusManager, FormElementAsync, FormElementSync, HTMLContentTitleDirective, INotification, INotificationContent, IUser, IVICommonOptions, IWindow, IWindowContent, InfiniteScrollDirective, LANGUAGE_OPTIONS, LanguageDirective, LanguageHasDirective, LanguageMatPaginatorIntl, LanguageModule, LanguageMomentDateAdapter, LanguagePipe, LanguagePipeHas, LanguagePipeHasPure, LanguagePipePure, LanguageRequireResolver, LanguageResolver, LanguageSelectorComponent, ListItem, ListItems, LoginBaseService, LoginBaseServiceEvent, LoginGuard, LoginRedirectResolver, LoginRequireResolver, LoginResolver, MenuItem, MenuItemBase, MenuItems, MenuListComponent, MessageBaseComponent, MomentDateAdaptivePipe, MomentDateFromNowPipe, MomentDatePipe, MomentTimePipe, NavigationMenuItem, NgModelErrorPipe, NotificationConfig, NotificationEvent, NotificationFactory, NotificationModule, NotificationService, NotificationServiceEvent, PipeBaseService, PrettifyPipe, PropertiesManager, QuestionEvent, QuestionManager, QuestionMode, ResizeDirective, ResizeManager, RouterBaseService, SanitizePipe, ScrollDirective, SelectListComponent, SelectListItem, SelectListItems, SelectOnFocusDirective, ShellBaseComponent, StartCasePipe, THEME_OPTIONS, TabGroupComponent, ThemeAssetBackgroundDirective, ThemeAssetDirective, ThemeAssetImageDirective, ThemeModule, ThemeStyleDirective, ThemeStyleHoverDirective, ThemeToggleDirective, TimePipe, TruncatePipe, UserBaseService, UserBaseServiceEvent, VICommonModule, VIComponentModule, VI_ANGULAR_OPTIONS, ViewUtil, WindowAlign, WindowBase, WindowConfig, WindowEvent, WindowFactory, WindowImpl, WindowModule, WindowService, WindowServiceEvent, cookieServiceFactory, languageServiceFactory, loggerServiceFactory, themeServiceFactory, AssetFilePipe as ɵa, AssetSoundPipe as ɵb, AssetVideoPipe as ɵc, WindowDragAreaDirective as ɵd, WindowQuestionComponent as ɵe, WindowQuestionBaseComponent as ɵf, WindowCloseElementComponent as ɵg, WindowElement as ɵh, WindowResizeElementComponent as ɵi, WindowMinimizeElementComponent as ɵj, NotificationComponent as ɵk, NotificationQuestionBaseComponent as ɵl, BottomSheetModule as ɵm, CdkTableColumnValuePipe as ɵn, CdkTableColumnClassNamePipe as ɵo, CdkTableColumnStyleNamePipe as ɵp, CdkTableRowStyleNamePipe as ɵq, CdkTableRowClassNamePipe as ɵr, CdkTableCellClassNamePipe as ɵs, CdkTablePaginableComponent as ɵt, CdkTableFilterableComponent as ɵu, ValueAccessor as ɵv };
9122
+ export { APPLICATION_INJECTOR, ApplicationBaseComponent, ApplicationComponent, ApplicationComponent2, AspectRatioResizeDirective, AssetBackgroundDirective, AssetBackgroundPipe, AssetIconPipe, AssetImagePipe, AssetModule, AutoScrollBottomDirective, BootstrapBreakpoint, BootstrapBreakpointService, BootstrapBreakpointServiceEvent, BottomSheetService, COOKIE_OPTIONS, CamelCasePipe, CanDeactivateGuard, CdkTableBaseComponent, CdkTableDataSource, CdkTableFilterableMapCollection, CdkTablePaginableBookmarkMapCollection, CdkTablePaginableMapCollection, ClickToCopyDirective, ClickToSelectDirective, CookieModule, CookieOptions, CookieService, Direction, FinancePipe, FocusDirective, FocusManager, FormElementAsync, FormElementSync, HTMLContentTitleDirective, INotification, INotificationContent, IUser, IVICommonOptions, IWindow, IWindowContent, InfiniteScrollDirective, LANGUAGE_OPTIONS, LanguageDirective, LanguageHasDirective, LanguageMatPaginatorIntl, LanguageModule, LanguageMomentDateAdapter, LanguagePipe, LanguagePipeHas, LanguagePipeHasPure, LanguagePipePure, LanguageRequireResolver, LanguageResolver, LanguageSelectorComponent, ListItem, ListItems, LoginBaseService, LoginBaseServiceEvent, LoginGuard, LoginRedirectResolver, LoginRequireResolver, LoginResolver, MenuItem, MenuItemBase, MenuItems, MenuListComponent, MessageBaseComponent, MomentDateAdaptivePipe, MomentDateFromNowPipe, MomentDatePipe, MomentTimePipe, NavigationMenuItem, NgModelErrorPipe, NotificationConfig, NotificationEvent, NotificationFactory, NotificationModule, NotificationService, NotificationServiceEvent, PipeBaseService, PrettifyPipe, PropertiesManager, QuestionEvent, QuestionManager, QuestionMode, ResizeDirective, ResizeManager, RouterBaseService, SanitizePipe, ScrollDirective, SelectListComponent, SelectListItem, SelectListItems, SelectOnFocusDirective, ShellBaseComponent, StartCasePipe, THEME_OPTIONS, TabGroupComponent, ThemeAssetBackgroundDirective, ThemeAssetDirective, ThemeAssetImageDirective, ThemeModule, ThemeStyleDirective, ThemeStyleHoverDirective, ThemeToggleDirective, TimePipe, TruncatePipe, UserBaseService, UserBaseServiceEvent, VICommonModule, VIComponentModule, VI_ANGULAR_OPTIONS, ViewUtil, WindowAlign, WindowBase, WindowConfig, WindowEvent, WindowFactory, WindowImpl, WindowModule, WindowService, WindowServiceEvent, cookieServiceFactory, languageServiceFactory, loggerServiceFactory, themeServiceFactory, AssetFilePipe as ɵa, AssetSoundPipe as ɵb, AssetVideoPipe as ɵc, WindowDragAreaDirective as ɵd, WindowQuestionComponent as ɵe, WindowQuestionBaseComponent as ɵf, WindowCloseElementComponent as ɵg, WindowElement as ɵh, WindowResizeElementComponent as ɵi, WindowMinimizeElementComponent as ɵj, NotificationComponent as ɵk, NotificationQuestionBaseComponent as ɵl, BottomSheetModule as ɵm, BottomSheetCloseElementComponent as ɵn, CdkTableColumnValuePipe as ɵo, CdkTableColumnClassNamePipe as ɵp, CdkTableColumnStyleNamePipe as ɵq, CdkTableRowStyleNamePipe as ɵr, CdkTableRowClassNamePipe as ɵs, CdkTableCellClassNamePipe as ɵt, CdkTablePaginableComponent as ɵu, CdkTableFilterableComponent as ɵv, ValueAccessor as ɵw };
8951
9123
  //# sourceMappingURL=ts-core-angular.js.map