@coolon/angular-ui-powerups 16.1.0-aplpha.180 → 16.1.0-aplpha.181

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.
@@ -2450,6 +2450,7 @@ class NumberInputComponent extends AbstractValueInputComponent {
2450
2450
  get max() { return this.#max_accessor_storage; }
2451
2451
  set max(value) { this.#max_accessor_storage = value; }
2452
2452
  #significantDigits$_accessor_storage = proxify((ValueModel));
2453
+ // TODO: rename to decimal places. Also need to reject key presses for characters > last decimal place as the clamping rounds things up if you type a digit >= 5
2453
2454
  get significantDigits$() { return this.#significantDigits$_accessor_storage; }
2454
2455
  set significantDigits$(value) { this.#significantDigits$_accessor_storage = value; }
2455
2456
  #significantDigits_accessor_storage;
@@ -2733,6 +2734,7 @@ class StringInputComponent extends AbstractValueInputComponent {
2733
2734
  get suffixCommand() { return this.#suffixCommand_accessor_storage; }
2734
2735
  set suffixCommand(value) { this.#suffixCommand_accessor_storage = value; }
2735
2736
  inputMode = 'text';
2737
+ trim = true;
2736
2738
  clearCommand;
2737
2739
  elementRef = this.inject(ElementRef);
2738
2740
  constructor() {
@@ -2750,8 +2752,11 @@ class StringInputComponent extends AbstractValueInputComponent {
2750
2752
  select() {
2751
2753
  this.elementRef.nativeElement.querySelector('input').select();
2752
2754
  }
2755
+ onValueChange($event) {
2756
+ this.componentValue$.value = this.trim ? $event?.trim() : $event;
2757
+ }
2753
2758
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: StringInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
2754
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: StringInputComponent, selector: "aup-string-input", inputs: { autocomplete: "autocomplete", enableClear$: "enableClear$", enableClear: "enableClear", iconPrefix: "iconPrefix", suffixCommand: "suffixCommand", inputMode: "inputMode" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input matInput\n placeholder=\"{{placeholder}}\"\n [attr.inputmode]=\"inputMode\"\n [attr.autocomplete]=\"autocomplete\"\n [(ngModel)]=\"componentValue$.value\"\n [disabled]=\"!enabled$.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors()\">{{firstError}}</mat-error>\n <aup-icon *ngIf=\"iconPrefix\" matPrefix [icon]=\"iconPrefix\"></aup-icon>\n <span matSuffix>\n <aup-command *ngIf=\"enableClear\" [command]=\"clearCommand\" data-cy=\"clearCommand\"></aup-command>\n <aup-command *ngIf=\"hasSuffixCommand\" [command]=\"suffixCommand\" data-cy=\"suffixCommand\"></aup-command>\n </span>\n</mat-form-field>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: FocusBindingDirective, selector: "[pectinFocusBinding]", inputs: ["pectinFocusBinding", "focusBindingTarget"] }, { kind: "component", type: IconComponent, selector: "aup-icon", inputs: ["icon"] }, { kind: "component", type: CommandComponent, selector: "aup-command", inputs: ["command", "face$", "face", "busyFace$", "busyFace", "alignFace"] }] });
2759
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: StringInputComponent, selector: "aup-string-input", inputs: { autocomplete: "autocomplete", enableClear$: "enableClear$", enableClear: "enableClear", iconPrefix: "iconPrefix", suffixCommand: "suffixCommand", inputMode: "inputMode", trim: "trim" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input matInput\n placeholder=\"{{placeholder}}\"\n [attr.inputmode]=\"inputMode\"\n [attr.autocomplete]=\"autocomplete\"\n [ngModel]=\"value$.value\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"!enabled$.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors()\">{{firstError}}</mat-error>\n <aup-icon *ngIf=\"iconPrefix\" matPrefix [icon]=\"iconPrefix\"></aup-icon>\n <span matSuffix>\n <aup-command *ngIf=\"enableClear\" [command]=\"clearCommand\" data-cy=\"clearCommand\"></aup-command>\n <aup-command *ngIf=\"hasSuffixCommand\" [command]=\"suffixCommand\" data-cy=\"suffixCommand\"></aup-command>\n </span>\n</mat-form-field>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$5.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$5.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3$1.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }, { kind: "component", type: i4.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: FocusBindingDirective, selector: "[pectinFocusBinding]", inputs: ["pectinFocusBinding", "focusBindingTarget"] }, { kind: "component", type: IconComponent, selector: "aup-icon", inputs: ["icon"] }, { kind: "component", type: CommandComponent, selector: "aup-command", inputs: ["command", "face$", "face", "busyFace$", "busyFace", "alignFace"] }] });
2755
2760
  }
2756
2761
  __decorate([
2757
2762
  Proxify(),
@@ -2767,7 +2772,7 @@ __decorate([
2767
2772
  ], StringInputComponent.prototype, "suffixCommand", null);
2768
2773
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: StringInputComponent, decorators: [{
2769
2774
  type: Component,
2770
- args: [{ selector: 'aup-string-input', template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input matInput\n placeholder=\"{{placeholder}}\"\n [attr.inputmode]=\"inputMode\"\n [attr.autocomplete]=\"autocomplete\"\n [(ngModel)]=\"componentValue$.value\"\n [disabled]=\"!enabled$.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors()\">{{firstError}}</mat-error>\n <aup-icon *ngIf=\"iconPrefix\" matPrefix [icon]=\"iconPrefix\"></aup-icon>\n <span matSuffix>\n <aup-command *ngIf=\"enableClear\" [command]=\"clearCommand\" data-cy=\"clearCommand\"></aup-command>\n <aup-command *ngIf=\"hasSuffixCommand\" [command]=\"suffixCommand\" data-cy=\"suffixCommand\"></aup-command>\n </span>\n</mat-form-field>\n\n" }]
2775
+ args: [{ selector: 'aup-string-input', template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input matInput\n placeholder=\"{{placeholder}}\"\n [attr.inputmode]=\"inputMode\"\n [attr.autocomplete]=\"autocomplete\"\n [ngModel]=\"value$.value\"\n (ngModelChange)=\"onValueChange($event)\"\n [disabled]=\"!enabled$.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors()\">{{firstError}}</mat-error>\n <aup-icon *ngIf=\"iconPrefix\" matPrefix [icon]=\"iconPrefix\"></aup-icon>\n <span matSuffix>\n <aup-command *ngIf=\"enableClear\" [command]=\"clearCommand\" data-cy=\"clearCommand\"></aup-command>\n <aup-command *ngIf=\"hasSuffixCommand\" [command]=\"suffixCommand\" data-cy=\"suffixCommand\"></aup-command>\n </span>\n</mat-form-field>\n\n" }]
2771
2776
  }], ctorParameters: function () { return []; }, propDecorators: { autocomplete: [{
2772
2777
  type: Input
2773
2778
  }], enableClear$: [{
@@ -2780,6 +2785,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
2780
2785
  type: Input
2781
2786
  }], inputMode: [{
2782
2787
  type: Input
2788
+ }], trim: [{
2789
+ type: Input
2783
2790
  }] } });
2784
2791
 
2785
2792
  class TextInputComponent extends AbstractValueInputComponent {
@@ -9545,28 +9552,31 @@ class PlaceRouter extends GarbageCollector {
9545
9552
  this.interactionService = interactionService;
9546
9553
  this.urlService = urlService;
9547
9554
  this.placeHistory = placeHistory;
9548
- if (window["Cypress"]) {
9549
- window["aup.PlaceRouter"] = this;
9555
+ if (window['Cypress']) {
9556
+ window['aup.PlaceRouter'] = this;
9550
9557
  }
9551
- this.routerInteractionAdapter = interactionService.registerPlaceRouter(this);
9558
+ this.routerInteractionAdapter =
9559
+ interactionService.registerPlaceRouter(this);
9552
9560
  // TODO: Make this an interface and use 'this' instead.
9553
9561
  this.navigationContext = new NavigationContext.Impl(this.urlService, this.routerInteractionAdapter, (urlSnapshot, options) => {
9554
9562
  return this.navigateByUrl(urlSnapshot, options);
9555
- }, state => {
9563
+ }, (state) => {
9556
9564
  this.transitionTo(state);
9557
- }, segments => {
9565
+ }, (segments) => {
9558
9566
  this.routingSessionFinished(segments);
9559
9567
  });
9560
9568
  const { chain } = Dsl.disposeWith(this);
9561
9569
  this.navigationInProgress$ = chain(this.navigationSession$).isNotNil();
9562
- this.interactionSyncInProgress$ = chain(this.navigationSession$).pluck("isInteractionSync").otherwise(false);
9563
- const idleStateName = chain(this.interactionService.active).map(active => active ? "IdleDuringInteraction" : "Idle");
9570
+ this.interactionSyncInProgress$ = chain(this.navigationSession$)
9571
+ .pluck('isInteractionSync')
9572
+ .otherwise(false);
9573
+ const idleStateName = chain(this.interactionService.active).map((active) => active ? 'IdleDuringInteraction' : 'Idle');
9564
9574
  this.navigationSessionName$ = chain(this.navigationSession$)
9565
- .pluck("name")
9575
+ .pluck('name')
9566
9576
  .otherwise(idleStateName);
9567
- DebugContext.tag(this._activeVisit$, "PlaceRouter.activeVisit");
9577
+ DebugContext.tag(this._activeVisit$, 'PlaceRouter.activeVisit');
9568
9578
  // TODO: make setup the callbacks in during module initiation to make this testable.
9569
- angularRouter.events.subscribe(event => {
9579
+ angularRouter.events.subscribe((event) => {
9570
9580
  // Routing event sequence
9571
9581
  // ======================
9572
9582
  // NavigationStart -> .... -> NavigationCancel --> redirect, go around again in the same session
@@ -9575,7 +9585,7 @@ class PlaceRouter extends GarbageCollector {
9575
9585
  // =======================
9576
9586
  if (event instanceof NavigationStart) {
9577
9587
  // console.log(`---> NavigationStart[${event.id}]: ${event.url} (${event.navigationTrigger})`);
9578
- if (event.navigationTrigger === "popstate") {
9588
+ if (event.navigationTrigger === 'popstate') {
9579
9589
  this.onPopState(event);
9580
9590
  }
9581
9591
  else {
@@ -9601,7 +9611,7 @@ class PlaceRouter extends GarbageCollector {
9601
9611
  });
9602
9612
  // The router needs to know about url changes and in some cases they are the only way the router can know if
9603
9613
  // the back button was clicked.
9604
- angularLocation.onUrlChange(url => this.onUrlChanged(url));
9614
+ angularLocation.onUrlChange((url) => this.onUrlChanged(url));
9605
9615
  }
9606
9616
  postponeRoutingUntil(condition$) {
9607
9617
  this._ready$.setDelegate(condition$);
@@ -9638,22 +9648,22 @@ class PlaceRouter extends GarbageCollector {
9638
9648
  }
9639
9649
  // @Trace()
9640
9650
  onPopState(event) {
9641
- assert.isTruthy(event.navigationTrigger === "popstate");
9651
+ assert.isTruthy(event.navigationTrigger === 'popstate');
9642
9652
  if (this.currentSession) {
9643
9653
  this.currentSession.onPopState(event);
9644
9654
  }
9645
9655
  else {
9646
9656
  const poppedHistoryUrl = event.url;
9647
9657
  const currentRouterUrl = this.urlService.getCurrentRouterUrl();
9648
- const session = this.interactionService.isActive() ?
9649
- new PopStateDuringInteractionNavigation(this.navigationContext, currentRouterUrl, poppedHistoryUrl) :
9650
- new PopStateNavigation(this.navigationContext, currentRouterUrl, poppedHistoryUrl);
9658
+ const session = this.interactionService.isActive()
9659
+ ? new PopStateDuringInteractionNavigation(this.navigationContext, currentRouterUrl, poppedHistoryUrl)
9660
+ : new PopStateNavigation(this.navigationContext, currentRouterUrl, poppedHistoryUrl);
9651
9661
  this.transitionTo(session);
9652
9662
  }
9653
9663
  }
9654
9664
  // @Trace()
9655
9665
  onRouterStarted(event) {
9656
- assert.isFalsey(event.navigationTrigger === "popstate");
9666
+ assert.isFalsey(event.navigationTrigger === 'popstate');
9657
9667
  // const inInteraction = this.interactionService.isActive();
9658
9668
  if (this.currentSession) {
9659
9669
  this.currentSession.onRouterStarted(event);
@@ -9670,7 +9680,7 @@ class PlaceRouter extends GarbageCollector {
9670
9680
  this.currentSession.onUrlChange(newUrl);
9671
9681
  }
9672
9682
  else {
9673
- console.log("FYI: url changed without a navigation session in progress");
9683
+ console.log('FYI: url changed without a navigation session in progress');
9674
9684
  }
9675
9685
  // console.log(`<--- Url Changed`);
9676
9686
  }
@@ -9695,11 +9705,11 @@ class PlaceRouter extends GarbageCollector {
9695
9705
  // @Trace()
9696
9706
  async doNavigation(visit, runNavigationCommands) {
9697
9707
  if (this.navigationInProgress$.value) {
9698
- Logger.get().error("Navigation already in progress", {
9708
+ Logger.get().error('Navigation already in progress', {
9699
9709
  visit: visit,
9700
- session: this.navigationSession
9710
+ session: this.navigationSession,
9701
9711
  });
9702
- lang.illegalState("Navigation already in progress");
9712
+ lang.illegalState('Navigation already in progress');
9703
9713
  }
9704
9714
  else {
9705
9715
  const navigation = this.createNavigationSession(this.urlService.getCurrentRouterUrl());
@@ -9713,7 +9723,7 @@ class PlaceRouter extends GarbageCollector {
9713
9723
  // Check if the router has finished (in the case where no router change required) and we're still in a
9714
9724
  // transient state and finish of the transition.
9715
9725
  if (!this.angularRouter.getCurrentNavigation() && this.currentSession) {
9716
- this.currentSession.onRouterEnd(new NavigationEnd(-1, "", this.urlService.getCurrentRouterUrl()));
9726
+ this.currentSession.onRouterEnd(new NavigationEnd(-1, '', this.urlService.getCurrentRouterUrl()));
9717
9727
  }
9718
9728
  }
9719
9729
  }
@@ -9724,6 +9734,10 @@ class PlaceRouter extends GarbageCollector {
9724
9734
  get activeVisit$() {
9725
9735
  return this._activeVisit$.readonly$;
9726
9736
  }
9737
+ filterAuthorizedPlaces(places, options) {
9738
+ const { chain } = Dsl.disposeWith(options.disposedWith);
9739
+ return chain(this.authService.accessGuard$).mapToList((g) => places.filter((p) => g.isAuthorised(PlaceComponent.getDefinition(p))));
9740
+ }
9727
9741
  async notifyVisitSegmentChanged(is, was) {
9728
9742
  // console.log("PlaceRouter.notifyVisitSegmentChanged", is.toDebugString(), was.toDebugString());
9729
9743
  this.placeHistory.updateVisitSegment(is);
@@ -9733,16 +9747,18 @@ class PlaceRouter extends GarbageCollector {
9733
9747
  // TODO: can I just do a regular navigate using an updated visit?
9734
9748
  // const {when} = Dsl.disposeWith(this);
9735
9749
  await this.doNavigation(visit, () => {
9736
- const urlSnapshot = this.urlService.parseUrl(this.angularRouter.routerState.snapshot.url).updateVisitSegment(is);
9750
+ const urlSnapshot = this.urlService
9751
+ .parseUrl(this.angularRouter.routerState.snapshot.url)
9752
+ .updateVisitSegment(is);
9737
9753
  return this.navigateByUrl(urlSnapshot);
9738
9754
  });
9739
9755
  }
9740
9756
  }
9741
9757
  createNavigationSession(currentRouterUrl) {
9742
9758
  const inInteraction = this.interactionService.isActive();
9743
- return inInteraction ?
9744
- new NavigatingDuringInteraction(this.navigationContext, currentRouterUrl) :
9745
- new Navigating(this.navigationContext, currentRouterUrl);
9759
+ return inInteraction
9760
+ ? new NavigatingDuringInteraction(this.navigationContext, currentRouterUrl)
9761
+ : new Navigating(this.navigationContext, currentRouterUrl);
9746
9762
  }
9747
9763
  // @Trace()
9748
9764
  transitionTo(next) {
@@ -9772,7 +9788,7 @@ class PlaceRouter extends GarbageCollector {
9772
9788
  session.dispose();
9773
9789
  this.navigationSession$.value = null;
9774
9790
  // console.log(`### Router Session Finished (was ${session.toString()})`);
9775
- this.sessionFinishedJobs.forEach(job => job());
9791
+ this.sessionFinishedJobs.forEach((job) => job());
9776
9792
  this.sessionFinishedJobs = [];
9777
9793
  }
9778
9794
  runAfterRoutingSessionFinishes(func) {
@@ -9803,7 +9819,7 @@ class PlaceRouter extends GarbageCollector {
9803
9819
  });
9804
9820
  }
9805
9821
  else {
9806
- return new Promise(((resolve) => {
9822
+ return new Promise((resolve) => {
9807
9823
  // console.log(`No navigation in progress, starting synchronisation job`);
9808
9824
  this.runAfterRoutingSessionFinishes(() => {
9809
9825
  onSyncComplete();
@@ -9811,7 +9827,7 @@ class PlaceRouter extends GarbageCollector {
9811
9827
  });
9812
9828
  const session = new SynchroniseInteractionContextIdsWithRoute(this.navigationContext, this.urlService.getCurrentRouterUrl(), false);
9813
9829
  this.transitionTo(session);
9814
- }));
9830
+ });
9815
9831
  }
9816
9832
  }
9817
9833
  toVisit(visitOrPlaceComponent, params) {
@@ -9823,12 +9839,12 @@ class PlaceRouter extends GarbageCollector {
9823
9839
  }
9824
9840
  }
9825
9841
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceRouter, deps: [{ token: i1$5.Router }, { token: i1$1.Location }, { token: InteractionService }, { token: UrlService }, { token: PlaceHistory }], target: i0.ɵɵFactoryTarget.Injectable });
9826
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceRouter, providedIn: "root" });
9842
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceRouter, providedIn: 'root' });
9827
9843
  }
9828
9844
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceRouter, decorators: [{
9829
9845
  type: Injectable,
9830
9846
  args: [{
9831
- providedIn: "root"
9847
+ providedIn: 'root',
9832
9848
  }]
9833
9849
  }], ctorParameters: function () { return [{ type: i1$5.Router }, { type: i1$1.Location }, { type: InteractionService }, { type: UrlService }, { type: PlaceHistory }]; } });
9834
9850
 
@@ -11191,7 +11207,7 @@ class StringInputActivity extends InputActivity {
11191
11207
  [confirmFace]="confirmFace"
11192
11208
  [cancelFace]="cancelFace"
11193
11209
  ></aup-activity-actions>
11194
- `, isInline: true, dependencies: [{ kind: "component", type: StringInputComponent, selector: "aup-string-input", inputs: ["autocomplete", "enableClear$", "enableClear", "iconPrefix", "suffixCommand", "inputMode"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align", "alignContent"] }] });
11210
+ `, isInline: true, dependencies: [{ kind: "component", type: StringInputComponent, selector: "aup-string-input", inputs: ["autocomplete", "enableClear$", "enableClear", "iconPrefix", "suffixCommand", "inputMode", "trim"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align", "alignContent"] }] });
11195
11211
  }
11196
11212
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: StringInputActivity, decorators: [{
11197
11213
  type: Component,