@coolon/angular-ui-powerups 2.0.0-alpha.29 → 2.0.0-alpha.30

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 (24) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/bundles/coolon-angular-ui-powerups.umd.js +36 -3
  3. package/bundles/coolon-angular-ui-powerups.umd.js.map +1 -1
  4. package/bundles/coolon-angular-ui-powerups.umd.min.js +1 -1
  5. package/bundles/coolon-angular-ui-powerups.umd.min.js.map +1 -1
  6. package/coolon-angular-ui-powerups.metadata.json +1 -1
  7. package/esm2015/lib/interaction/components/activity-container/activity-container.component.js +36 -3
  8. package/esm2015/lib/interaction/components/activity-container/activity-container.component.js.map +1 -1
  9. package/esm2015/lib/interaction/components/activity-container/activity-container.component.metadata.json +1 -1
  10. package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js +1 -1
  11. package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js.map +1 -1
  12. package/esm2015/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.metadata.json +1 -1
  13. package/esm2015/lib/interaction/interaction.module.ngfactory.js.map +1 -1
  14. package/esm5/lib/interaction/components/activity-container/activity-container.component.js +36 -3
  15. package/esm5/lib/interaction/components/activity-container/activity-container.component.js.map +1 -1
  16. package/esm5/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js +1 -1
  17. package/esm5/lib/interaction/components/activity-container/activity-outlet/activity-outlet.component.js.map +1 -1
  18. package/esm5/lib/interaction/interaction.module.ngfactory.js.map +1 -1
  19. package/fesm2015/coolon-angular-ui-powerups.js +37 -4
  20. package/fesm2015/coolon-angular-ui-powerups.js.map +1 -1
  21. package/fesm5/coolon-angular-ui-powerups.js +37 -4
  22. package/fesm5/coolon-angular-ui-powerups.js.map +1 -1
  23. package/lib/interaction/components/activity-container/activity-container.component.d.ts +3 -1
  24. package/package.json +1 -1
@@ -18,7 +18,7 @@ import { MatTableModule } from '@angular/material/table';
18
18
  import { MatTooltipModule } from '@angular/material/tooltip';
19
19
  import { FaIconLibrary, FontAwesomeModule } from '@fortawesome/angular-fontawesome';
20
20
  import { fas } from '@fortawesome/free-solid-svg-icons';
21
- import { DelegatingValueModel, assert, UnaryCommand, lang, Dsl, GarbageCollector, Logger, TrackExternal, Command, MutableListModel, Disposable, MutableValueModel, StoreInValueModel, ListModel, FocusManager, EventListenerList, Form, Guard, Binding, DebugContext, StoreInListModel, ValueModel, MultipleSelectionModel, DirtyTrackingForm, DelegatingCommand, Deferred, Functions } from '@coolon/pectin';
21
+ import { DelegatingValueModel, assert, UnaryCommand, lang, Dsl, GarbageCollector, Logger, TrackExternal, Command, MutableListModel, Disposable, MutableValueModel, StoreInValueModel, ListModel, FocusManager, EventListenerList, Form, Guard, Binding, DebugContext, StoreInListModel, ValueModel, MultipleSelectionModel, DirtyTrackingForm, DelegatingCommand, Deferred, Trace, Functions } from '@coolon/pectin';
22
22
  import { Memoize } from '@typescript-plus/fast-memoize-decorator/dist/src';
23
23
  import ___default, { isEqual, isNil } from 'lodash';
24
24
  import { Enum } from 'typescript-string-enums';
@@ -3590,7 +3590,7 @@ var ActivityOutletComponent = /** @class */ (function () {
3590
3590
  },
3591
3591
  set: function (activityRef) {
3592
3592
  if (this.activityRef && !this.activityRef.isComplete()) {
3593
- lang$1.illegalState("changing activity before previous one has completed");
3593
+ lang$1.illegalState('changing activity before previous one has completed');
3594
3594
  }
3595
3595
  this._activityRef = activityRef;
3596
3596
  this.loadActivity(activityRef);
@@ -3655,6 +3655,11 @@ var ActivityContainerComponent = /** @class */ (function (_super) {
3655
3655
  _this.dynamicHeight = false;
3656
3656
  _this.activityTabs = [];
3657
3657
  _this.garbage = new GarbageCollector();
3658
+ // We have issues where angular is triggering a leave animation when an
3659
+ // activity is replaced by another, but is not running the enter animation
3660
+ // when it is scrolled back into view. So we track the tab changes and
3661
+ // disable all animations inside the tab while we're animating.
3662
+ _this.inTabChange = new MutableValueModel(false);
3658
3663
  return _this;
3659
3664
  }
3660
3665
  ActivityContainerComponent.prototype.ngOnInit = function () {
@@ -3799,6 +3804,7 @@ var ActivityContainerComponent = /** @class */ (function (_super) {
3799
3804
  this.onAnimationFinishedJob();
3800
3805
  this.onAnimationFinishedJob = undefined;
3801
3806
  }
3807
+ this.inTabChange.value = false;
3802
3808
  };
3803
3809
  /**
3804
3810
  * Synchronises the selected tab index.
@@ -3808,6 +3814,7 @@ var ActivityContainerComponent = /** @class */ (function (_super) {
3808
3814
  var previousIndex = this.tabs.selectedIndex;
3809
3815
  var newIndex = this.getActiveActivityCount() - 1;
3810
3816
  if (previousIndex !== newIndex) {
3817
+ this.inTabChange.value = true;
3811
3818
  this.tabs.selectedIndex = newIndex;
3812
3819
  this.onAnimationFinishedJob = function () {
3813
3820
  _this.getSelectedOutlet().component.onActivityReady();
@@ -3818,7 +3825,9 @@ var ActivityContainerComponent = /** @class */ (function (_super) {
3818
3825
  ActivityContainerComponent.prototype.getSelectedOutlet = function () {
3819
3826
  return this.activityOutlets.toArray()[this.tabs.selectedIndex];
3820
3827
  };
3821
- // @Trace()
3828
+ ActivityContainerComponent.prototype.getSelectedTabIndex = function () {
3829
+ return this.tabs.selectedIndex;
3830
+ };
3822
3831
  ActivityContainerComponent.prototype.triggerTabSynchronisation = function () {
3823
3832
  var _this = this;
3824
3833
  if (this.syncSelectedTabTimeout) {
@@ -3841,10 +3850,34 @@ var ActivityContainerComponent = /** @class */ (function (_super) {
3841
3850
  ViewChildren(ActivityOutletComponent),
3842
3851
  __metadata("design:type", QueryList)
3843
3852
  ], ActivityContainerComponent.prototype, "activityOutlets", void 0);
3853
+ __decorate([
3854
+ Trace(),
3855
+ __metadata("design:type", Function),
3856
+ __metadata("design:paramtypes", []),
3857
+ __metadata("design:returntype", void 0)
3858
+ ], ActivityContainerComponent.prototype, "onAnimationFinished", null);
3859
+ __decorate([
3860
+ Trace(),
3861
+ __metadata("design:type", Function),
3862
+ __metadata("design:paramtypes", []),
3863
+ __metadata("design:returntype", void 0)
3864
+ ], ActivityContainerComponent.prototype, "synchroniseSelectedTabIndex", null);
3865
+ __decorate([
3866
+ Trace(),
3867
+ __metadata("design:type", Function),
3868
+ __metadata("design:paramtypes", []),
3869
+ __metadata("design:returntype", void 0)
3870
+ ], ActivityContainerComponent.prototype, "getSelectedTabIndex", null);
3871
+ __decorate([
3872
+ Trace(),
3873
+ __metadata("design:type", Function),
3874
+ __metadata("design:paramtypes", []),
3875
+ __metadata("design:returntype", void 0)
3876
+ ], ActivityContainerComponent.prototype, "triggerTabSynchronisation", null);
3844
3877
  ActivityContainerComponent = __decorate([
3845
3878
  Component({
3846
3879
  selector: 'aup-activity-container',
3847
- template: "<mat-tab-group #tabs no-tab-header\n [dynamicHeight]=\"dynamicHeight\"\n [class.full-height-tabs]=\"!dynamicHeight\">\n <mat-tab *ngFor=\"let tab of activityTabs; trackBy: activityIndex\" >\n <aup-activity-outlet [nestedInteractionContext]=\"this\" [activityRef]=\"tab\"></aup-activity-outlet>\n </mat-tab>\n</mat-tab-group>\n",
3880
+ template: "<mat-tab-group #tabs no-tab-header\n [dynamicHeight]=\"dynamicHeight\"\n [class.full-height-tabs]=\"!dynamicHeight\">\n <mat-tab *ngFor=\"let tab of activityTabs; let i = index; trackBy: activityIndex\" [@.disabled]=\"inTabChange.value\">\n <aup-activity-outlet [nestedInteractionContext]=\"this\" [activityRef]=\"tab\"></aup-activity-outlet>\n </mat-tab>\n</mat-tab-group>\n",
3848
3881
  styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}"]
3849
3882
  }),
3850
3883
  __metadata("design:paramtypes", [])