@coolon/angular-ui-powerups 16.1.0-aplpha.118 → 16.1.0-aplpha.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/assets/activities/input-activities.scss +6 -14
- package/assets/form.scss +27 -74
- package/assets/icons.scss +0 -1
- package/assets/table.scss +27 -47
- package/assets/tabs.scss +6 -2
- package/esm2022/lib/animations/slide-animations.mjs +1 -6
- package/esm2022/lib/components/cards/card-container/card-container.component.mjs +4 -4
- package/esm2022/lib/components/commands/command/command.component.mjs +10 -24
- package/esm2022/lib/components/commands/command-face/command-face.component.mjs +3 -11
- package/esm2022/lib/components/commands/command-face.mjs +11 -11
- package/esm2022/lib/components/commands/group/popup-menu/abstract-popup-menu.component.mjs +11 -11
- package/esm2022/lib/components/commands/group/tool-bar/tool-bar.component.mjs +4 -6
- package/esm2022/lib/components/components.module.mjs +8 -27
- package/esm2022/lib/components/disposable-component.mjs +37 -20
- package/esm2022/lib/components/exports.mjs +2 -9
- package/esm2022/lib/components/forms/abstract-input.component.mjs +12 -55
- package/esm2022/lib/components/forms/autocomplete-input/autocomplete-input.component.mjs +2 -2
- package/esm2022/lib/components/forms/checkbox-input/checkbox-input.component.mjs +6 -8
- package/esm2022/lib/components/forms/multiple-select-input/multiple-select-input.component.mjs +2 -2
- package/esm2022/lib/components/forms/number-input/number-input.component.mjs +10 -49
- package/esm2022/lib/components/forms/password-input/password-input.component.mjs +3 -40
- package/esm2022/lib/components/forms/select-input/select-input.component.mjs +10 -11
- package/esm2022/lib/components/forms/string-input/string-input.component.mjs +9 -21
- package/esm2022/lib/components/icon/icon.component.mjs +4 -7
- package/esm2022/lib/components/resize-aware.component.mjs +24 -61
- package/esm2022/lib/components/switch-case/switch-case.component.mjs +7 -5
- package/esm2022/lib/components/tables/abstract-table-model.mjs +27 -69
- package/esm2022/lib/components/tables/abstract-table.component.mjs +5 -19
- package/esm2022/lib/components/tables/column/column-list-model.mjs +44 -0
- package/esm2022/lib/components/tables/column/column-model.mjs +3 -13
- package/esm2022/lib/components/tables/column/custom-template-column-model.mjs +3 -3
- package/esm2022/lib/components/tables/column/custom-value-column-model.mjs +3 -3
- package/esm2022/lib/components/tables/column/editor-controls-column-model.mjs +3 -3
- package/esm2022/lib/components/tables/column/list-propery-column-model.mjs +3 -3
- package/esm2022/lib/components/tables/column/property-column-model.mjs +3 -3
- package/esm2022/lib/components/tables/column/selection-column-model.mjs +3 -3
- package/esm2022/lib/components/tables/editor/edit-row-controls/edit-row-controls.component.mjs +1 -1
- package/esm2022/lib/components/tables/editor/edit-session.mjs +1 -3
- package/esm2022/lib/components/tables/filter/table-filter-model.mjs +2 -4
- package/esm2022/lib/components/tables/filter/text-search-predicate.mjs +2 -16
- package/esm2022/lib/components/tables/renderer/cell-portal-ref.mjs +1 -19
- package/esm2022/lib/components/tables/renderer/default-cell-renderer/default-cell-renderer.component.mjs +3 -3
- package/esm2022/lib/components/tables/renderer/select-header-cell/selection-header-cell.component.mjs +2 -3
- package/esm2022/lib/components/tables/renderer/table-body/table-body.component.mjs +40 -150
- package/esm2022/lib/components/tables/renderer/table-cell/table-cell.component.mjs +1 -1
- package/esm2022/lib/components/tables/renderer/table-more-menu/table-more-menu.component.mjs +2 -7
- package/esm2022/lib/components/tables/table/table-model.mjs +1 -1
- package/esm2022/lib/components/tables/table/table.component.mjs +61 -39
- package/esm2022/lib/components/tables/tree-table/decorated-tree-node.mjs +4 -5
- package/esm2022/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.mjs +1 -1
- package/esm2022/lib/components/tables/tree-table/tree-label-column-model.mjs +3 -3
- package/esm2022/lib/components/tables/tree-table/tree-table-component.mjs +5 -12
- package/esm2022/lib/components/tables/tree-table/tree-table-model.mjs +4 -4
- package/esm2022/lib/components/text/markdown/markdown.component.mjs +2 -2
- package/esm2022/lib/directives/directives.module.mjs +1 -1
- package/esm2022/lib/directives/exports.mjs +1 -2
- package/esm2022/lib/directives/highlight.pipe.mjs +2 -2
- package/esm2022/lib/interaction/activity.mjs +4 -3
- package/esm2022/lib/interaction/alert.mjs +2 -2
- package/esm2022/lib/interaction/components/abstract-confirm-dialog.component.mjs +4 -8
- package/esm2022/lib/interaction/components/activity-actions/activity-actions.component.mjs +11 -20
- package/esm2022/lib/interaction/components/activity-container/activity-container.component.mjs +11 -28
- package/esm2022/lib/interaction/components/activity-title/activity-title.component.mjs +4 -4
- package/esm2022/lib/interaction/components/activity-triggers/inline-activity-trigger/inline-activity-trigger.component.mjs +1 -1
- package/esm2022/lib/interaction/components/add-card-activity/add-card-activity.component.mjs +1 -1
- package/esm2022/lib/interaction/components/add-item-interaction-context/add-item-interaction-context.component.mjs +1 -1
- package/esm2022/lib/interaction/components/alert-dialog/alert-dialog.component.mjs +1 -1
- package/esm2022/lib/interaction/components/confirm-then-dialog/confirm-then-dialog.component.mjs +1 -1
- package/esm2022/lib/interaction/components/confirm-then-execute-dialog/confirm-then-execute-dialog.component.mjs +1 -1
- package/esm2022/lib/interaction/components/confirmation-dialog/confirmation-dialog.component.mjs +1 -1
- package/esm2022/lib/interaction/components/editors/edit-context.mjs +1 -1
- package/esm2022/lib/interaction/components/editors/inline-string-editor/inline-string-editor.component.mjs +3 -3
- package/esm2022/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.mjs +5 -21
- package/esm2022/lib/interaction/components/input-activities/input-activity.mjs +2 -2
- package/esm2022/lib/interaction/components/input-activities/select-input-activity.mjs +2 -4
- package/esm2022/lib/interaction/components/input-activities/string-input-activity.mjs +4 -8
- package/esm2022/lib/interaction/directives/interaction-context-trigger-for.directive.mjs +2 -2
- package/esm2022/lib/interaction/exports.mjs +1 -2
- package/esm2022/lib/interaction/interaction-context.mjs +2 -3
- package/esm2022/lib/interaction/interaction.module.mjs +9 -7
- package/esm2022/lib/place/components/list-place-nav/list-place-nav.component.mjs +4 -3
- package/esm2022/lib/place/components/place-outlet/place-outlet.component.mjs +9 -7
- package/esm2022/lib/place/components/side-place-navigation/side-place-navigation.component.mjs +2 -2
- package/esm2022/lib/place/guards/consolidated-param-map.mjs +4 -4
- package/esm2022/lib/place/guards/place.guard.mjs +1 -2
- package/esm2022/lib/place/navigation/place-component-deactivation-handler.mjs +2 -2
- package/esm2022/lib/place/navigation/session/interactions/synchronise-interaction-context-ids-with-route.mjs +6 -3
- package/esm2022/lib/place/place-component.mjs +7 -7
- package/esm2022/lib/place/place-definition.mjs +3 -3
- package/esm2022/lib/place/place-history.mjs +2 -2
- package/esm2022/lib/place/place-router.mjs +18 -20
- package/esm2022/lib/place/place.decorator.mjs +2 -2
- package/esm2022/lib/place/place.module.mjs +5 -1
- package/esm2022/lib/place/route/formatter.mjs +2 -2
- package/esm2022/lib/place/route/parameter-decorators.mjs +50 -54
- package/esm2022/lib/place/route/parameter-definition.mjs +2 -2
- package/esm2022/lib/place/url-snapshot.mjs +3 -3
- package/esm2022/lib/place/visit-segment.mjs +2 -2
- package/esm2022/lib/place/visit.mjs +2 -2
- package/fesm2022/coolon-angular-ui-powerups.mjs +537 -1333
- package/fesm2022/coolon-angular-ui-powerups.mjs.map +1 -1
- package/lib/animations/slide-animations.d.ts +0 -1
- package/lib/components/cards/card-container/card-container.component.d.ts +1 -1
- package/lib/components/commands/command/command.component.d.ts +1 -2
- package/lib/components/commands/command-face/command-face.component.d.ts +0 -2
- package/lib/components/commands/command-face.d.ts +7 -5
- package/lib/components/commands/group/popup-menu/abstract-popup-menu.component.d.ts +2 -2
- package/lib/components/commands/group/tool-bar/tool-bar.component.d.ts +1 -1
- package/lib/components/components.module.d.ts +53 -56
- package/lib/components/disposable-component.d.ts +8 -12
- package/lib/components/exports.d.ts +1 -8
- package/lib/components/forms/abstract-input.component.d.ts +5 -13
- package/lib/components/forms/checkbox-input/checkbox-input.component.d.ts +0 -2
- package/lib/components/forms/number-input/number-input.component.d.ts +4 -8
- package/lib/components/forms/password-input/password-input.component.d.ts +1 -7
- package/lib/components/forms/select-input/select-input.component.d.ts +3 -4
- package/lib/components/forms/string-input/string-input.component.d.ts +1 -3
- package/lib/components/resize-aware.component.d.ts +5 -24
- package/lib/components/switch-case/switch-case.component.d.ts +3 -2
- package/lib/components/tables/abstract-table-model.d.ts +8 -27
- package/lib/components/tables/abstract-table.component.d.ts +3 -4
- package/lib/components/tables/column/column-list-model.d.ts +13 -0
- package/lib/components/tables/column/column-model.d.ts +3 -7
- package/lib/components/tables/column/custom-template-column-model.d.ts +2 -3
- package/lib/components/tables/column/custom-value-column-model.d.ts +2 -3
- package/lib/components/tables/column/editor-controls-column-model.d.ts +2 -3
- package/lib/components/tables/column/list-propery-column-model.d.ts +2 -3
- package/lib/components/tables/column/property-column-model.d.ts +2 -3
- package/lib/components/tables/column/selection-column-model.d.ts +2 -3
- package/lib/components/tables/editor/edit-row-controls/edit-row-controls.component.d.ts +1 -1
- package/lib/components/tables/editor/edit-session.d.ts +1 -1
- package/lib/components/tables/filter/text-search-predicate.d.ts +0 -9
- package/lib/components/tables/renderer/cell-portal-ref.d.ts +6 -14
- package/lib/components/tables/renderer/table-body/table-body.component.d.ts +16 -40
- package/lib/components/tables/renderer/table-cell/table-cell.component.d.ts +1 -1
- package/lib/components/tables/renderer/table-more-menu/table-more-menu.component.d.ts +1 -2
- package/lib/components/tables/table/table-model.d.ts +1 -1
- package/lib/components/tables/table/table.component.d.ts +10 -14
- package/lib/components/tables/tree-table/tree-label-cell-renderer/tree-label-cell-renderer.component.d.ts +1 -1
- package/lib/components/tables/tree-table/tree-label-column-model.d.ts +2 -3
- package/lib/components/tables/tree-table/tree-table-component.d.ts +0 -3
- package/lib/components/tables/tree-table/tree-table-model.d.ts +2 -3
- package/lib/directives/exports.d.ts +0 -1
- package/lib/interaction/activity.d.ts +2 -2
- package/lib/interaction/components/abstract-confirm-dialog.component.d.ts +0 -1
- package/lib/interaction/components/activity-actions/activity-actions.component.d.ts +5 -10
- package/lib/interaction/components/activity-container/activity-container.component.d.ts +3 -7
- package/lib/interaction/components/activity-title/activity-title.component.d.ts +1 -1
- package/lib/interaction/components/editors/edit-context.d.ts +1 -1
- package/lib/interaction/components/inplace-interaction-context/in-place-interaction-context.component.d.ts +3 -5
- package/lib/interaction/exports.d.ts +0 -1
- package/lib/interaction/interaction-context.d.ts +0 -2
- package/lib/interaction/interaction.module.d.ts +28 -28
- package/lib/place/components/place-outlet/place-outlet.component.d.ts +4 -3
- package/lib/place/place-component.d.ts +4 -4
- package/lib/place/place-router.d.ts +0 -4
- package/lib/place/place.module.d.ts +5 -4
- package/package.json +4 -6
- package/esm2022/lib/components/forms/form-field.mjs +0 -2
- package/esm2022/lib/components/forms/search-input/search-input.component.mjs +0 -33
- package/esm2022/lib/components/loadable-component.mjs +0 -49
- package/esm2022/lib/components/tables/column/column-manager.mjs +0 -81
- package/esm2022/lib/components/tables/column/column-order-manager.mjs +0 -19
- package/esm2022/lib/components/tables/footer/footer-row-model.mjs +0 -38
- package/esm2022/lib/components/tables/renderer/abstract-cell-renderer.mjs +0 -12
- package/esm2022/lib/components/tables/renderer/table-footer-row/table-footer-row.component.mjs +0 -30
- package/esm2022/lib/directives/resize-observer.directive.mjs +0 -40
- package/esm2022/lib/interaction/components/slide-down-interaction-context/slide-down-interaction-context.component.mjs +0 -134
- package/lib/components/forms/form-field.d.ts +0 -5
- package/lib/components/forms/search-input/search-input.component.d.ts +0 -10
- package/lib/components/loadable-component.d.ts +0 -17
- package/lib/components/tables/column/column-manager.d.ts +0 -19
- package/lib/components/tables/column/column-order-manager.d.ts +0 -20
- package/lib/components/tables/footer/footer-row-model.d.ts +0 -22
- package/lib/components/tables/renderer/abstract-cell-renderer.d.ts +0 -8
- package/lib/components/tables/renderer/table-footer-row/table-footer-row.component.d.ts +0 -11
- package/lib/directives/resize-observer.directive.d.ts +0 -16
- package/lib/interaction/components/slide-down-interaction-context/slide-down-interaction-context.component.d.ts +0 -53
|
@@ -2,27 +2,27 @@ import { ObserversModule } from '@angular/cdk/observers';
|
|
|
2
2
|
import * as i1$1 from '@angular/common';
|
|
3
3
|
import { DOCUMENT, CommonModule } from '@angular/common';
|
|
4
4
|
import * as i0 from '@angular/core';
|
|
5
|
-
import { ElementRef, Directive, Inject, Host, Optional, Input, HostListener,
|
|
5
|
+
import { ElementRef, Directive, Inject, Host, Optional, Input, HostListener, inject, NgZone, Injectable, Pipe, NgModule, Component, ContentChild, HostBinding, ViewEncapsulation, InjectionToken, ViewChild, ViewChildren, EventEmitter, Output, SkipSelf, Self, ContentChildren, ComponentRef, Injector, PLATFORM_ID } from '@angular/core';
|
|
6
6
|
import * as i2$4 from '@angular/forms';
|
|
7
7
|
import { FormsModule } from '@angular/forms';
|
|
8
8
|
import * as i4$2 from '@angular/material/form-field';
|
|
9
9
|
import { MatFormFieldModule } from '@angular/material/form-field';
|
|
10
10
|
import * as i3 from '@angular/material/input';
|
|
11
11
|
import { MatInputModule, MatInput } from '@angular/material/input';
|
|
12
|
-
import * as i4$
|
|
12
|
+
import * as i4$4 from '@angular/material/select';
|
|
13
13
|
import { MatSelectModule } from '@angular/material/select';
|
|
14
|
-
import * as i3$
|
|
14
|
+
import * as i3$1 from '@angular/material/tabs';
|
|
15
15
|
import { MatTabsModule, MAT_TABS_CONFIG } from '@angular/material/tabs';
|
|
16
16
|
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
|
|
17
|
-
import * as
|
|
17
|
+
import * as i3$2 from '@angular/cdk/portal';
|
|
18
18
|
import { ComponentPortal, TemplatePortal, PortalModule } from '@angular/cdk/portal';
|
|
19
19
|
import * as i1$2 from '@angular/cdk/scrolling';
|
|
20
|
-
import {
|
|
20
|
+
import { CdkScrollableModule } from '@angular/cdk/scrolling';
|
|
21
21
|
import * as i7 from '@angular/material/autocomplete';
|
|
22
22
|
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
23
23
|
import * as i2 from '@angular/material/button';
|
|
24
24
|
import { MatButton, MatButtonModule } from '@angular/material/button';
|
|
25
|
-
import * as
|
|
25
|
+
import * as i4$3 from '@angular/material/checkbox';
|
|
26
26
|
import { MAT_CHECKBOX_DEFAULT_OPTIONS, MatCheckboxModule } from '@angular/material/checkbox';
|
|
27
27
|
import * as i2$3 from '@angular/material/divider';
|
|
28
28
|
import { MatDividerModule } from '@angular/material/divider';
|
|
@@ -38,34 +38,35 @@ import * as i2$6 from '@angular/material/table';
|
|
|
38
38
|
import { MatTableModule } from '@angular/material/table';
|
|
39
39
|
import * as i4$1 from '@angular/material/tooltip';
|
|
40
40
|
import { MatTooltipModule } from '@angular/material/tooltip';
|
|
41
|
-
import * as i4$4 from 'ng-table-virtual-scroll';
|
|
42
|
-
import { TableVirtualScrollDataSource, TableVirtualScrollModule } from 'ng-table-virtual-scroll';
|
|
43
41
|
import * as i1$3 from '@coolon/pectin';
|
|
44
|
-
import { GarbageCollector, DelegatingValueModel, assert, UnaryCommand, lang, Dsl, Logger, proxify, ValueModel, Proxify, StoreInValueModel, Command, MutableListModel, StoreInListModel, Disposable, DelegatingListModel,
|
|
42
|
+
import { GarbageCollector, DelegatingValueModel, assert, UnaryCommand, lang, Dsl, MutableValueModel, Logger, proxify, ValueModel, Proxify, StoreInValueModel, Command, MutableListModel, StoreInListModel, Disposable, DelegatingListModel, DelegateToValueModel, FocusManager, EventListenerList, Guard, DelegatingFormListModel, Binding, DebugContext, DelegateToListModel, DelegatingFormValueModel, ListModel, Functions, PageController, SelectionModel, CanProxy, MultipleSelectionModel, AbstractComputedListModel, DirtyTrackingForm, ProxyRegistry, DelegatingCommand, PagedListModel, ComputedListModel, Deferred, ReducingValueModel, AndValueModel } from '@coolon/pectin';
|
|
45
43
|
import { __decorate, __param, __metadata } from 'tslib';
|
|
46
44
|
import * as i1 from '@angular/platform-browser';
|
|
47
45
|
import escapeStringRegexp from 'escape-string-regexp';
|
|
48
|
-
import { isEmpty, isString, isFunction, isNil, isInteger, isObject, isEqual, join,
|
|
46
|
+
import { isEmpty, isString, isFunction, isNil, isInteger, isObject, isEqual, join, first, uniq, last as last$1, isNumber, isNaN as isNaN$1 } from 'lodash';
|
|
49
47
|
import { marked } from 'marked';
|
|
50
|
-
import {
|
|
48
|
+
import { Memoize } from '@typescript-plus/fast-memoize-decorator';
|
|
51
49
|
import { Enum } from 'typescript-string-enums';
|
|
50
|
+
import { lang as lang$1, assert as assert$1, Stringy, Klass, Opts } from '@coolon/typescript-utilities';
|
|
52
51
|
import * as i5 from '@angular/material/core';
|
|
53
|
-
import { Memoize } from 'fast-typescript-memoize';
|
|
54
52
|
import { produce } from 'immer';
|
|
55
53
|
import ResizeObserver from 'resize-observer-polyfill';
|
|
56
|
-
import {
|
|
54
|
+
import { isFunction as isFunction$1, isNil as isNil$1, isEmpty as isEmpty$1, last, findLast } from 'lodash-es';
|
|
57
55
|
import * as i5$1 from '@angular/cdk/a11y';
|
|
58
56
|
import { A11yModule } from '@angular/cdk/a11y';
|
|
59
|
-
import * as
|
|
57
|
+
import * as i7$1 from '@angular/flex-layout';
|
|
58
|
+
import { FlexModule, GridModule } from '@angular/flex-layout';
|
|
59
|
+
import * as i1$6 from '@angular/material/dialog';
|
|
60
60
|
import { MatDialogModule, MAT_DIALOG_DEFAULT_OPTIONS } from '@angular/material/dialog';
|
|
61
|
-
import * as i1$
|
|
61
|
+
import * as i1$4 from '@angular/router';
|
|
62
62
|
import { ActivatedRouteSnapshot, UrlSegment, NavigationStart, NavigationEnd, NavigationError, NavigationCancel, RouterModule } from '@angular/router';
|
|
63
|
+
import { Memoize as Memoize$1 } from 'typescript-memoize';
|
|
63
64
|
import 'reflect-metadata';
|
|
64
|
-
import * as i1$
|
|
65
|
-
import { style, trigger, transition, animate, group, query } from '@angular/animations';
|
|
65
|
+
import * as i1$5 from '@angular/cdk/overlay';
|
|
66
66
|
import { MatCardModule } from '@angular/material/card';
|
|
67
67
|
import * as i3$3 from '@angular/material/list';
|
|
68
68
|
import { MatListModule } from '@angular/material/list';
|
|
69
|
+
import { style, query, group, animate, trigger, transition } from '@angular/animations';
|
|
69
70
|
|
|
70
71
|
class CommandDirective extends GarbageCollector {
|
|
71
72
|
elementRef;
|
|
@@ -212,12 +213,11 @@ var Track;
|
|
|
212
213
|
|
|
213
214
|
class DisposableComponent extends GarbageCollector {
|
|
214
215
|
trackById = Track.byId();
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
216
|
+
#_loaded$ = new MutableValueModel();
|
|
217
|
+
#asyncLoadables = [];
|
|
218
|
+
#awaitedLoadables = [];
|
|
218
219
|
#initCallbacks = [];
|
|
219
220
|
#initialised = false;
|
|
220
|
-
cdr = this.inject(ChangeDetectorRef);
|
|
221
221
|
onInit(callback) {
|
|
222
222
|
if (this.#initialised) {
|
|
223
223
|
callback();
|
|
@@ -226,26 +226,44 @@ class DisposableComponent extends GarbageCollector {
|
|
|
226
226
|
this.#initCallbacks.push(callback);
|
|
227
227
|
}
|
|
228
228
|
}
|
|
229
|
+
get loaded$() {
|
|
230
|
+
return this.#_loaded$.readonly$;
|
|
231
|
+
}
|
|
229
232
|
ngOnInit() {
|
|
230
233
|
this.#initCallbacks.forEach(it => it());
|
|
234
|
+
this.#asyncLoadables.forEach(it => it.ensureLoaded());
|
|
235
|
+
if (this.#awaitedLoadables.length > 0) {
|
|
236
|
+
Promise.all(this.#awaitedLoadables.map(it => {
|
|
237
|
+
return it.ensureLoaded(); //.then(() => console.log(`${it.constructor.name} loaded`));
|
|
238
|
+
})).then(() => {
|
|
239
|
+
this.#_loaded$.value = true;
|
|
240
|
+
});
|
|
241
|
+
}
|
|
242
|
+
else {
|
|
243
|
+
this.#_loaded$.value = true;
|
|
244
|
+
}
|
|
231
245
|
this.#initialised = true;
|
|
232
246
|
}
|
|
233
|
-
ngOnDestroy() {
|
|
234
|
-
this.dispose();
|
|
235
|
-
}
|
|
236
247
|
inject(token) {
|
|
237
248
|
return inject(token);
|
|
238
249
|
}
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
250
|
+
injectLoadable(token, options) {
|
|
251
|
+
const loadable = inject(token);
|
|
252
|
+
if (this.loaded$.value) {
|
|
253
|
+
loadable.ensureLoaded();
|
|
254
|
+
}
|
|
255
|
+
else {
|
|
256
|
+
if (!options || options.wait === true) {
|
|
257
|
+
this.#awaitedLoadables.push(loadable);
|
|
258
|
+
}
|
|
259
|
+
else {
|
|
260
|
+
this.#asyncLoadables.push(loadable);
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
return loadable;
|
|
264
|
+
}
|
|
265
|
+
ngOnDestroy() {
|
|
266
|
+
this.dispose();
|
|
249
267
|
}
|
|
250
268
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DisposableComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
251
269
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: DisposableComponent, usesInheritance: true, ngImport: i0 });
|
|
@@ -718,42 +736,42 @@ var CommandFace;
|
|
|
718
736
|
}
|
|
719
737
|
}
|
|
720
738
|
__decorate([
|
|
721
|
-
|
|
739
|
+
Memoize(),
|
|
722
740
|
__metadata("design:type", Object),
|
|
723
741
|
__metadata("design:paramtypes", [])
|
|
724
742
|
], Adapter.prototype, "text", null);
|
|
725
743
|
__decorate([
|
|
726
|
-
|
|
744
|
+
Memoize(),
|
|
727
745
|
__metadata("design:type", Object),
|
|
728
746
|
__metadata("design:paramtypes", [])
|
|
729
747
|
], Adapter.prototype, "icon", null);
|
|
730
748
|
__decorate([
|
|
731
|
-
|
|
749
|
+
Memoize(),
|
|
732
750
|
__metadata("design:type", Object),
|
|
733
751
|
__metadata("design:paramtypes", [])
|
|
734
752
|
], Adapter.prototype, "iconPosition", null);
|
|
735
753
|
__decorate([
|
|
736
|
-
|
|
754
|
+
Memoize(),
|
|
737
755
|
__metadata("design:type", Object),
|
|
738
756
|
__metadata("design:paramtypes", [])
|
|
739
757
|
], Adapter.prototype, "tooltip", null);
|
|
740
758
|
__decorate([
|
|
741
|
-
|
|
759
|
+
Memoize(),
|
|
742
760
|
__metadata("design:type", Boolean),
|
|
743
761
|
__metadata("design:paramtypes", [])
|
|
744
762
|
], Adapter.prototype, "iconPositionStart", null);
|
|
745
763
|
__decorate([
|
|
746
|
-
|
|
764
|
+
Memoize(),
|
|
747
765
|
__metadata("design:type", Boolean),
|
|
748
766
|
__metadata("design:paramtypes", [])
|
|
749
767
|
], Adapter.prototype, "iconPositionEnd", null);
|
|
750
768
|
__decorate([
|
|
751
|
-
|
|
769
|
+
Memoize(),
|
|
752
770
|
__metadata("design:type", String),
|
|
753
771
|
__metadata("design:paramtypes", [])
|
|
754
772
|
], Adapter.prototype, "color", null);
|
|
755
773
|
__decorate([
|
|
756
|
-
|
|
774
|
+
Memoize(),
|
|
757
775
|
__metadata("design:type", String),
|
|
758
776
|
__metadata("design:paramtypes", [])
|
|
759
777
|
], Adapter.prototype, "style", null);
|
|
@@ -824,7 +842,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
824
842
|
args: ["class.disable-scroll"]
|
|
825
843
|
}] } });
|
|
826
844
|
|
|
827
|
-
/* eslint-disable @angular-eslint/no-host-metadata-property */
|
|
828
845
|
class IconComponent {
|
|
829
846
|
_icon;
|
|
830
847
|
prefix;
|
|
@@ -856,13 +873,11 @@ class IconComponent {
|
|
|
856
873
|
return `fa-${this.suffix}`;
|
|
857
874
|
}
|
|
858
875
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: IconComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
859
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: IconComponent, selector: "aup-icon", inputs: { icon: "icon" }, host: { properties: { "attr.icon": "this.icon" }
|
|
876
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: IconComponent, selector: "aup-icon", inputs: { icon: "icon" }, host: { properties: { "attr.icon": "this.icon" } }, ngImport: i0, template: "<ng-container [ngSwitch]=\"prefix\">\n\n <mat-icon *ngSwitchCase=\"iconPrefix.SVG\"\n [svgIcon]=\"suffix\"\n class=\"svgIcon\">\n </mat-icon>\n\n <mat-icon *ngSwitchCase=\"iconPrefix.MATERIAL\">\n {{suffix}}\n </mat-icon>\n\n <div *ngSwitchCase=\"iconPrefix.FONT_AWESOME\" class=\"faIconWrapper\">\n <i class=\"fa-solid\" [class]=\"faIcon\"></i>\n </div>\n\n <mat-icon *ngSwitchDefault\n [matTooltip]=\"errorMessage\">\n bug_report\n </mat-icon>\n\n</ng-container>\n\n", styles: [":host{display:inline-flex;--resolved-size: var(--aup-icon-size, 24px);width:var(--resolved-size) fa-icon;width-vertical-align:middle}:host .faIconWrapper{display:flex;flex-direction:row;align-items:center;justify-content:center;width:var(--resolved-size);height:var(--resolved-size)}:host .svgIcon{width:var(--resolved-size);height:var(--resolved-size)}:host :host(.mat-chip-remove){--aup-icon-size: 18px}:host mat-icon{font-size:var(--resolved-size);width:var(--resolved-size);height:var(--resolved-size);margin-right:0!important}\n"], dependencies: [{ kind: "directive", type: i1$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "component", type: i2$2.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i4$1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }] });
|
|
860
877
|
}
|
|
861
878
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: IconComponent, decorators: [{
|
|
862
879
|
type: Component,
|
|
863
|
-
args: [{ selector: 'aup-icon',
|
|
864
|
-
class: "mat-icon" // this ensures angular form styles that target mat icon also work with us
|
|
865
|
-
}, template: "<ng-container [ngSwitch]=\"prefix\">\n\n <mat-icon *ngSwitchCase=\"iconPrefix.SVG\"\n [svgIcon]=\"suffix\"\n class=\"svgIcon\">\n </mat-icon>\n\n <mat-icon *ngSwitchCase=\"iconPrefix.MATERIAL\">\n {{suffix}}\n </mat-icon>\n\n <div *ngSwitchCase=\"iconPrefix.FONT_AWESOME\" class=\"faIconWrapper\">\n <i class=\"fa-solid\" [class]=\"faIcon\"></i>\n </div>\n\n <mat-icon *ngSwitchDefault\n [matTooltip]=\"errorMessage\">\n bug_report\n </mat-icon>\n\n</ng-container>\n\n", styles: [":host{display:inline-flex;--resolved-size: var(--aup-icon-size, 24px);width:var(--resolved-size)!important;min-width:var(--resolved-size)!important;height:var(--resolved-size)!important;min-height:var(--resolved-size)!important}:host fa-icon{vertical-align:middle}:host .faIconWrapper{display:flex;flex-direction:row;align-items:center;justify-content:center;width:var(--resolved-size)!important;height:var(--resolved-size)!important}:host .svgIcon{width:var(--resolved-size)!important;height:var(--resolved-size)!important}:host :host(.mat-chip-remove){--aup-icon-size: 18px}:host mat-icon{font-size:var(--resolved-size)!important;width:var(--resolved-size)!important;height:var(--resolved-size)!important;margin-right:0!important}\n"] }]
|
|
880
|
+
args: [{ selector: 'aup-icon', template: "<ng-container [ngSwitch]=\"prefix\">\n\n <mat-icon *ngSwitchCase=\"iconPrefix.SVG\"\n [svgIcon]=\"suffix\"\n class=\"svgIcon\">\n </mat-icon>\n\n <mat-icon *ngSwitchCase=\"iconPrefix.MATERIAL\">\n {{suffix}}\n </mat-icon>\n\n <div *ngSwitchCase=\"iconPrefix.FONT_AWESOME\" class=\"faIconWrapper\">\n <i class=\"fa-solid\" [class]=\"faIcon\"></i>\n </div>\n\n <mat-icon *ngSwitchDefault\n [matTooltip]=\"errorMessage\">\n bug_report\n </mat-icon>\n\n</ng-container>\n\n", styles: [":host{display:inline-flex;--resolved-size: var(--aup-icon-size, 24px);width:var(--resolved-size) fa-icon;width-vertical-align:middle}:host .faIconWrapper{display:flex;flex-direction:row;align-items:center;justify-content:center;width:var(--resolved-size);height:var(--resolved-size)}:host .svgIcon{width:var(--resolved-size);height:var(--resolved-size)}:host :host(.mat-chip-remove){--aup-icon-size: 18px}:host mat-icon{font-size:var(--resolved-size);width:var(--resolved-size);height:var(--resolved-size);margin-right:0!important}\n"] }]
|
|
866
881
|
}], propDecorators: { icon: [{
|
|
867
882
|
type: Input
|
|
868
883
|
}, {
|
|
@@ -893,7 +908,6 @@ class CommandFaceComponent extends DisposableComponent {
|
|
|
893
908
|
// tslint:disable-next-line:no-input-rename
|
|
894
909
|
get _rawFaces() { return this.#_rawFaces_accessor_storage; }
|
|
895
910
|
set _rawFaces(value) { this.#_rawFaces_accessor_storage = value; }
|
|
896
|
-
hasTextAndLeadingIcon$;
|
|
897
911
|
set face(face) {
|
|
898
912
|
this.faces$.value = [face];
|
|
899
913
|
}
|
|
@@ -913,7 +927,6 @@ class CommandFaceComponent extends DisposableComponent {
|
|
|
913
927
|
const activeFace = this.faceAdapters.first();
|
|
914
928
|
this.activeIcon = activeFace.pluck("icon");
|
|
915
929
|
this.activeColor = activeFace.pluck("color");
|
|
916
|
-
this.hasTextAndLeadingIcon$ = valueOf.all(this.activeIcon.isNotNil(), activeFace.pluckString('text').isNotBlank(), activeFace.pluck("iconPosition").doesNotEqual(CommandFace.Position.END)).areTruthy();
|
|
917
930
|
}
|
|
918
931
|
shouldIncludeIcon(face) {
|
|
919
932
|
return (!this.ignoreIcon && face.icon) || this.includeMissingIconInLayout;
|
|
@@ -927,11 +940,8 @@ class CommandFaceComponent extends DisposableComponent {
|
|
|
927
940
|
get color() {
|
|
928
941
|
return this.activeColor.value;
|
|
929
942
|
}
|
|
930
|
-
get hasTextAndIcon() {
|
|
931
|
-
return this.hasTextAndLeadingIcon$.value;
|
|
932
|
-
}
|
|
933
943
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: CommandFaceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
934
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: CommandFaceComponent, selector: "aup-command-face", inputs: { _rawFaces: ["faces", "_rawFaces"], face: "face", ignoreIcon: "ignoreIcon", ignoreText: "ignoreText", includeMissingIconInLayout: "includeMissingIconInLayout" }, host: { properties: { "class.hide-icon": "this.requiresMissingIconInLayout", "attr.color": "this.color"
|
|
944
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: CommandFaceComponent, selector: "aup-command-face", inputs: { _rawFaces: ["faces", "_rawFaces"], face: "face", ignoreIcon: "ignoreIcon", ignoreText: "ignoreText", includeMissingIconInLayout: "includeMissingIconInLayout" }, host: { properties: { "class.hide-icon": "this.requiresMissingIconInLayout", "attr.color": "this.color" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"face-container\" *ngFor=\"let face of faceAdapters.value\">\n <aup-icon *ngIf=\"hasIconStart(face)\" [icon]=\"face.icon\"></aup-icon>\n <span *ngIf=\"face.text\">{{face.text}}</span>\n <aup-icon *ngIf=\"hasIconEnd(face)\" [icon]=\"face.icon\"></aup-icon>\n</div>\n", styles: ["aup-command-face{--icon-gap: var(--aup-command-face-icon-gap);display:inline-grid}aup-command-face>.face-container{grid-column:1;grid-row:1;display:inline-flex;flex-direction:row;align-items:center}aup-command-face>.face-container:not(:first-child){visibility:hidden}aup-command-face>.face-container *+*{margin-left:var(--icon-gap)}aup-command-face.hide-icon aup-icon{visibility:hidden}aup-command-face.centered{justify-items:center}aup-command-face.start{justify-items:self-start}aup-command-face.end{justify-items:self-end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: IconComponent, selector: "aup-icon", inputs: ["icon"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
935
945
|
}
|
|
936
946
|
__decorate([
|
|
937
947
|
StoreInListModel("faces$"),
|
|
@@ -939,7 +949,7 @@ __decorate([
|
|
|
939
949
|
], CommandFaceComponent.prototype, "_rawFaces", null);
|
|
940
950
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: CommandFaceComponent, decorators: [{
|
|
941
951
|
type: Component,
|
|
942
|
-
args: [{ selector: 'aup-command-face', encapsulation: ViewEncapsulation.None, template: "<div class=\"face-container\" *ngFor=\"let face of faceAdapters.value\">\n <aup-icon *ngIf=\"hasIconStart(face)\" [icon]=\"face.icon\"></aup-icon>\n <span *ngIf=\"face.text\">{{face.text}}</span>\n <aup-icon *ngIf=\"hasIconEnd(face)\" [icon]=\"face.icon\"></aup-icon>\n</div>\n", styles: ["aup-command-face{--icon-gap: var(--aup-command-face-icon-gap);display:inline-grid}aup-command-face>.face-container{grid-column:1;grid-row:1;display:inline-flex;flex-direction:row;align-items:center}aup-command-face>.face-container
|
|
952
|
+
args: [{ selector: 'aup-command-face', encapsulation: ViewEncapsulation.None, template: "<div class=\"face-container\" *ngFor=\"let face of faceAdapters.value\">\n <aup-icon *ngIf=\"hasIconStart(face)\" [icon]=\"face.icon\"></aup-icon>\n <span *ngIf=\"face.text\">{{face.text}}</span>\n <aup-icon *ngIf=\"hasIconEnd(face)\" [icon]=\"face.icon\"></aup-icon>\n</div>\n", styles: ["aup-command-face{--icon-gap: var(--aup-command-face-icon-gap);display:inline-grid}aup-command-face>.face-container{grid-column:1;grid-row:1;display:inline-flex;flex-direction:row;align-items:center}aup-command-face>.face-container:not(:first-child){visibility:hidden}aup-command-face>.face-container *+*{margin-left:var(--icon-gap)}aup-command-face.hide-icon aup-icon{visibility:hidden}aup-command-face.centered{justify-items:center}aup-command-face.start{justify-items:self-start}aup-command-face.end{justify-items:self-end}\n"] }]
|
|
943
953
|
}], ctorParameters: function () { return []; }, propDecorators: { _rawFaces: [{
|
|
944
954
|
type: Input,
|
|
945
955
|
args: ['faces']
|
|
@@ -957,9 +967,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
957
967
|
}], color: [{
|
|
958
968
|
type: HostBinding,
|
|
959
969
|
args: ['attr.color']
|
|
960
|
-
}], hasTextAndIcon: [{
|
|
961
|
-
type: HostBinding,
|
|
962
|
-
args: ['class.has-text-and-leading-icon']
|
|
963
970
|
}] } });
|
|
964
971
|
|
|
965
972
|
/**
|
|
@@ -1063,11 +1070,11 @@ class CardContainerComponent extends AbstractCardContainerComponent {
|
|
|
1063
1070
|
}
|
|
1064
1071
|
}
|
|
1065
1072
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: CardContainerComponent, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
1066
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: CardContainerComponent, selector: "aup-card-container", inputs: { columnCount: "columnCount", enableScroll: "enableScroll" }, host: { properties: { "class.auto-columns": "this.isAutoColumns", "class.single-column": "this.isSingleColumn" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"header-container\">\n <ng-content select=\"[card-container-header]
|
|
1073
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: CardContainerComponent, selector: "aup-card-container", inputs: { columnCount: "columnCount", enableScroll: "enableScroll" }, host: { properties: { "class.auto-columns": "this.isAutoColumns", "class.single-column": "this.isSingleColumn" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"header-container\">\n <ng-content select=\"[card-container-header]\"></ng-content>\n</div>\n\n<ng-template #content>\n <div class=\"card-container\">\n <ng-content></ng-content>\n\n <div class=\"add-card-container\" *ngIf=\"addCardCommand.enabled$.value\" [pectinCommand]=\"addCardCommand\">\n <aup-command-face *ngIf=\"addCardFace\" [faces]=\"[addCardFace]\"></aup-command-face>\n <aup-icon *ngIf=\"!addCardFace\" icon=\"mat:add\"></aup-icon>\n </div>\n\n <div class=\"add-card-template\" *ngIf=\"addCardTemplate\">\n <ng-container [ngTemplateOutlet]=\"addCardTemplate\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<div class=\"no-scroll-container\" *ngIf=\"!enableScroll\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</div>\n\n<aup-scroll-container *ngIf=\"enableScroll\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</aup-scroll-container>\n\n<div class=\"footer-container\">\n <ng-content select=\"[card-container-footer]\"></ng-content>\n</div>\n\n", styles: [":host{--resolved-card-gap: var(--card-gap, 16px);--resolved-card-width: var(--card-width, 300px);--resolved-card-max-width: var(--card-max-width, auto);--resolved-card-height: var(--card-height, auto);--resolved-card-min-height: var(--card-min-height, auto);--resolved-card-background: var(--card-background, var(--aup-card-container-default-background-color));flex:1;display:flex;flex-direction:column;align-items:stretch;background:var(--resolved-card-background)}:host.auto-columns>*>.card-container{grid-template-columns:repeat(auto-fit,minmax(var(--resolved-card-width),var(--resolved-card-max-width)));min-width:calc(var(--resolved-card-width) + 2 * var(--resolved-card-gap));width:calc((var(--resolved-card-width) + var(--resolved-card-gap)) * 2 + var(--grid-gap))}:host:not(.auto-columns)>*>.card-container{grid-template-columns:repeat(var(--aup-card-container-column-count),1fr)}.card-container{display:grid;box-sizing:border-box;padding:var(--resolved-card-gap);min-height:calc(var(--resolved-card-height) + 2 * var(--resolved-card-gap));max-width:100%;grid-auto-rows:minmax(var(--resolved-card-min-height),var(--resolved-card-height));grid-gap:var(--resolved-card-gap)}aup-scroll-container,.no-scroll-container{flex:1}.add-card-container{height:var(--resolved-card-height);min-height:var(--resolved-card-min-height);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:box-shadow .28s cubic-bezier(.4,0,.2,1);box-sizing:border-box;border:2px dashed rgba(0,0,0,.1);border-radius:6px;font-weight:300;cursor:pointer;color:#0000008a;background-color:#fffc}.add-card-container mat-icon{font-size:200%}.add-card-container:hover{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.add-card-container:hover{border-color:transparent;background-color:#fff;color:#0000008a}.add-card-template-container{height:var(--resolved-card-height);min-height:var(--resolved-card-min-height);display:flex;flex-direction:column;align-items:stretch;justify-content:stretch}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "component", type: ScrollContainerComponent, selector: "aup-scroll-container", inputs: ["disableScroll$", "disableScroll"] }, { kind: "component", type: IconComponent, selector: "aup-icon", inputs: ["icon"] }, { kind: "component", type: CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }] });
|
|
1067
1074
|
}
|
|
1068
1075
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: CardContainerComponent, decorators: [{
|
|
1069
1076
|
type: Component,
|
|
1070
|
-
args: [{ selector: 'aup-card-container', template: "<div class=\"header-container\">\n <ng-content select=\"[card-container-header]
|
|
1077
|
+
args: [{ selector: 'aup-card-container', template: "<div class=\"header-container\">\n <ng-content select=\"[card-container-header]\"></ng-content>\n</div>\n\n<ng-template #content>\n <div class=\"card-container\">\n <ng-content></ng-content>\n\n <div class=\"add-card-container\" *ngIf=\"addCardCommand.enabled$.value\" [pectinCommand]=\"addCardCommand\">\n <aup-command-face *ngIf=\"addCardFace\" [faces]=\"[addCardFace]\"></aup-command-face>\n <aup-icon *ngIf=\"!addCardFace\" icon=\"mat:add\"></aup-icon>\n </div>\n\n <div class=\"add-card-template\" *ngIf=\"addCardTemplate\">\n <ng-container [ngTemplateOutlet]=\"addCardTemplate\"></ng-container>\n </div>\n </div>\n</ng-template>\n\n<div class=\"no-scroll-container\" *ngIf=\"!enableScroll\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</div>\n\n<aup-scroll-container *ngIf=\"enableScroll\">\n <ng-container *ngTemplateOutlet=\"content\"></ng-container>\n</aup-scroll-container>\n\n<div class=\"footer-container\">\n <ng-content select=\"[card-container-footer]\"></ng-content>\n</div>\n\n", styles: [":host{--resolved-card-gap: var(--card-gap, 16px);--resolved-card-width: var(--card-width, 300px);--resolved-card-max-width: var(--card-max-width, auto);--resolved-card-height: var(--card-height, auto);--resolved-card-min-height: var(--card-min-height, auto);--resolved-card-background: var(--card-background, var(--aup-card-container-default-background-color));flex:1;display:flex;flex-direction:column;align-items:stretch;background:var(--resolved-card-background)}:host.auto-columns>*>.card-container{grid-template-columns:repeat(auto-fit,minmax(var(--resolved-card-width),var(--resolved-card-max-width)));min-width:calc(var(--resolved-card-width) + 2 * var(--resolved-card-gap));width:calc((var(--resolved-card-width) + var(--resolved-card-gap)) * 2 + var(--grid-gap))}:host:not(.auto-columns)>*>.card-container{grid-template-columns:repeat(var(--aup-card-container-column-count),1fr)}.card-container{display:grid;box-sizing:border-box;padding:var(--resolved-card-gap);min-height:calc(var(--resolved-card-height) + 2 * var(--resolved-card-gap));max-width:100%;grid-auto-rows:minmax(var(--resolved-card-min-height),var(--resolved-card-height));grid-gap:var(--resolved-card-gap)}aup-scroll-container,.no-scroll-container{flex:1}.add-card-container{height:var(--resolved-card-height);min-height:var(--resolved-card-min-height);display:flex;flex-direction:column;align-items:center;justify-content:center;transition:box-shadow .28s cubic-bezier(.4,0,.2,1);box-sizing:border-box;border:2px dashed rgba(0,0,0,.1);border-radius:6px;font-weight:300;cursor:pointer;color:#0000008a;background-color:#fffc}.add-card-container mat-icon{font-size:200%}.add-card-container:hover{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}.add-card-container:hover{border-color:transparent;background-color:#fff;color:#0000008a}.add-card-template-container{height:var(--resolved-card-height);min-height:var(--resolved-card-min-height);display:flex;flex-direction:column;align-items:stretch;justify-content:stretch}\n"] }]
|
|
1071
1078
|
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { columnCount: [{
|
|
1072
1079
|
type: Input
|
|
1073
1080
|
}], enableScroll: [{
|
|
@@ -1143,24 +1150,14 @@ class CommandComponent extends PopupAwareComponent {
|
|
|
1143
1150
|
activeFace$;
|
|
1144
1151
|
iconOnly$;
|
|
1145
1152
|
tooltip$;
|
|
1146
|
-
visible$;
|
|
1147
1153
|
constructor(element, parent) {
|
|
1148
1154
|
super(element, parent);
|
|
1149
1155
|
const { chain, switchOn } = Dsl.disposeWith(this);
|
|
1150
|
-
this.faces$ = chain(this.command.busy$)
|
|
1151
|
-
.mapToList(busy => {
|
|
1156
|
+
this.faces$ = chain(this.command.busy$).mapToList(busy => {
|
|
1152
1157
|
return busy ?
|
|
1153
|
-
[this.busyFace$.value
|
|
1154
|
-
[this.face$.value
|
|
1155
|
-
}, {
|
|
1156
|
-
allowNil: true,
|
|
1157
|
-
dependsOn: [
|
|
1158
|
-
this.face$,
|
|
1159
|
-
this.busyFace$,
|
|
1160
|
-
this.command.defaultFace$,
|
|
1161
|
-
this.command.busyFace$
|
|
1162
|
-
]
|
|
1163
|
-
})
|
|
1158
|
+
[this.busyFace$.value, this.face$.value] :
|
|
1159
|
+
[this.face$.value, this.busyFace$.value];
|
|
1160
|
+
}, { allowNil: true, dependsOn: [this.face$, this.busyFace$] })
|
|
1164
1161
|
.rejectNil();
|
|
1165
1162
|
this.activeFace$ = this.faces$.first();
|
|
1166
1163
|
this.buttonStyle$ = chain(this.activeFace$).map(f => CommandFace.getStyleOf(f));
|
|
@@ -1169,19 +1166,18 @@ class CommandComponent extends PopupAwareComponent {
|
|
|
1169
1166
|
this.iconOnly$ = this.faces$.select(face => {
|
|
1170
1167
|
return isEmpty(CommandFace.getTextOf(face)) && !isEmpty(CommandFace.getIconOf(face));
|
|
1171
1168
|
}).count().equals(this.faces$.count());
|
|
1172
|
-
this.visible$ = chain(this.command.visible$);
|
|
1173
|
-
}
|
|
1174
|
-
get cssDisplayProperty() {
|
|
1175
|
-
return this.visible$.value ? undefined : 'none';
|
|
1176
1169
|
}
|
|
1177
1170
|
isActive(face) {
|
|
1178
1171
|
return this.activeFace$.query().equals(face);
|
|
1179
1172
|
}
|
|
1173
|
+
getFace() {
|
|
1174
|
+
return this.face;
|
|
1175
|
+
}
|
|
1180
1176
|
requestFocus() {
|
|
1181
1177
|
this.button.focus();
|
|
1182
1178
|
}
|
|
1183
1179
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: CommandComponent, deps: [{ token: i0.ElementRef }, { token: POPUP_CONTAINER, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
1184
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: CommandComponent, selector: "aup-command", inputs: { command: "command", face$: "face$", face: "face", busyFace$: "busyFace$", busyFace: "busyFace", alignFace: "alignFace" }, host: { properties: { "class": "this.alignFace"
|
|
1180
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: CommandComponent, selector: "aup-command", inputs: { command: "command", face$: "face$", face: "face", busyFace$: "busyFace$", busyFace: "busyFace", alignFace: "alignFace" }, host: { properties: { "class": "this.alignFace" } }, viewQueries: [{ propertyName: "button", first: true, predicate: MatButton, descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"iconOnly$.value\">\n <button mat-icon-button [pectinCommand]=\"command\" [color]=\"color$.value\" [class.busy]=\"command.busy$.value\"\n [matTooltip]=\"tooltip$.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces$.value\"></aup-command-face>\n </button>\n</ng-container>\n<ng-container *ngIf=\"!iconOnly$.value\">\n <ng-container [ngSwitch]=\"buttonStyle$.value\">\n <ng-container *ngSwitchCase=\"CommandFace.Style.STROKED\">\n <button mat-stroked-button [pectinCommand]=\"command\" [color]=\"color$.value\" [class.busy]=\"command.busy$.value\"\n [matTooltip]=\"tooltip$.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces$.value\"></aup-command-face>\n </button>\n </ng-container>\n <ng-container *ngSwitchCase=\"CommandFace.Style.RAISED\">\n <button mat-raised-button [pectinCommand]=\"command\" [color]=\"color$.value\" [class.busy]=\"command.busy$.value\"\n [matTooltip]=\"tooltip$.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces$.value\"></aup-command-face>\n </button>\n </ng-container>\n <ng-container *ngSwitchDefault>\n <button mat-button [pectinCommand]=\"command\" [color]=\"color$.value\" [class.busy]=\"command.busy$.value\"\n [matTooltip]=\"tooltip$.value\">\n <aup-command-face [class]=\"alignFace\" [faces]=\"faces$.value\"></aup-command-face>\n </button>\n </ng-container>\n </ng-container>\n</ng-container>\n", styles: [":host{display:inline-flex;flex-direction:row;justify-content:stretch}:host.centered button{text-align:center}:host.start button{text-align:start}:host.end button{text-align:end}button{flex:1}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { kind: "directive", type: i1$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { kind: "directive", type: i1$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i4$1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "component", type: CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }] });
|
|
1185
1181
|
}
|
|
1186
1182
|
__decorate([
|
|
1187
1183
|
Proxify(),
|
|
@@ -1229,9 +1225,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
1229
1225
|
}], button: [{
|
|
1230
1226
|
type: ViewChild,
|
|
1231
1227
|
args: [MatButton]
|
|
1232
|
-
}], cssDisplayProperty: [{
|
|
1233
|
-
type: HostBinding,
|
|
1234
|
-
args: ["style.display"]
|
|
1235
1228
|
}] } });
|
|
1236
1229
|
|
|
1237
1230
|
/**
|
|
@@ -1259,12 +1252,12 @@ class AbstractPopupMenuComponent extends PopupAwareComponent {
|
|
|
1259
1252
|
xPosition = 'after';
|
|
1260
1253
|
yPosition = 'below';
|
|
1261
1254
|
triggers;
|
|
1255
|
+
#enabled_accessor_storage;
|
|
1256
|
+
get enabled() { return this.#enabled_accessor_storage; }
|
|
1257
|
+
set enabled(value) { this.#enabled_accessor_storage = value; }
|
|
1262
1258
|
#enabled$_accessor_storage = proxify((ValueModel));
|
|
1263
1259
|
get enabled$() { return this.#enabled$_accessor_storage; }
|
|
1264
1260
|
set enabled$(value) { this.#enabled$_accessor_storage = value; }
|
|
1265
|
-
#enabled_accessor_storage = true;
|
|
1266
|
-
get enabled() { return this.#enabled_accessor_storage; }
|
|
1267
|
-
set enabled(value) { this.#enabled_accessor_storage = value; }
|
|
1268
1261
|
children;
|
|
1269
1262
|
faces$;
|
|
1270
1263
|
constructor(element, parent) {
|
|
@@ -1306,16 +1299,16 @@ class AbstractPopupMenuComponent extends PopupAwareComponent {
|
|
|
1306
1299
|
return this.faceAdapter.face;
|
|
1307
1300
|
}
|
|
1308
1301
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AbstractPopupMenuComponent, deps: [{ token: i0.ElementRef }, { token: POPUP_CONTAINER }], target: i0.ɵɵFactoryTarget.Component });
|
|
1309
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AbstractPopupMenuComponent, selector: "aup-abstract-popup-menu", inputs: { xPosition: "xPosition", yPosition: "yPosition", enabled
|
|
1302
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AbstractPopupMenuComponent, selector: "aup-abstract-popup-menu", inputs: { xPosition: "xPosition", yPosition: "yPosition", enabled: "enabled", enabled$: "enabled$" }, viewQueries: [{ propertyName: "triggers", predicate: MatMenuTrigger, descendants: true }], usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
1310
1303
|
}
|
|
1304
|
+
__decorate([
|
|
1305
|
+
StoreInValueModel(),
|
|
1306
|
+
__metadata("design:type", Boolean)
|
|
1307
|
+
], AbstractPopupMenuComponent.prototype, "enabled", null);
|
|
1311
1308
|
__decorate([
|
|
1312
1309
|
Proxify(),
|
|
1313
1310
|
__metadata("design:type", Object)
|
|
1314
1311
|
], AbstractPopupMenuComponent.prototype, "enabled$", null);
|
|
1315
|
-
__decorate([
|
|
1316
|
-
StoreInValueModel(),
|
|
1317
|
-
__metadata("design:type", Object)
|
|
1318
|
-
], AbstractPopupMenuComponent.prototype, "enabled", null);
|
|
1319
1312
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AbstractPopupMenuComponent, decorators: [{
|
|
1320
1313
|
type: Component,
|
|
1321
1314
|
args: [{ selector: 'aup-abstract-popup-menu', template: '' }]
|
|
@@ -1329,10 +1322,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
1329
1322
|
}], triggers: [{
|
|
1330
1323
|
type: ViewChildren,
|
|
1331
1324
|
args: [MatMenuTrigger]
|
|
1332
|
-
}], enabled$: [{
|
|
1333
|
-
type: Input
|
|
1334
1325
|
}], enabled: [{
|
|
1335
1326
|
type: Input
|
|
1327
|
+
}], enabled$: [{
|
|
1328
|
+
type: Input
|
|
1336
1329
|
}] } });
|
|
1337
1330
|
|
|
1338
1331
|
class CommandContainer extends GarbageCollector {
|
|
@@ -1365,15 +1358,13 @@ class ToolBarComponent extends CommandContainer {
|
|
|
1365
1358
|
get orientation() {
|
|
1366
1359
|
return CommandContainer.Orientation.HORIZONTAL;
|
|
1367
1360
|
}
|
|
1368
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ToolBarComponent, deps: [{ token: CommandContainer
|
|
1361
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ToolBarComponent, deps: [{ token: CommandContainer }], target: i0.ɵɵFactoryTarget.Component });
|
|
1369
1362
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ToolBarComponent, selector: "aup-tool-bar", usesInheritance: true, ngImport: i0, template: '<div class="toolbar-content"><ng-content></ng-content></div>', isInline: true, styles: [":host{display:inline-block}.toolbar-content{display:inline-flex;flex-direction:row;align-items:center}.toolbar-content>aup-separator{align-self:stretch;margin:4px 0 4px 8px}.toolbar-content>aup-flex{flex:1}.toolbar-content>*+*{margin-left:8px}\n"], encapsulation: i0.ViewEncapsulation.None });
|
|
1370
1363
|
}
|
|
1371
1364
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ToolBarComponent, decorators: [{
|
|
1372
1365
|
type: Component,
|
|
1373
1366
|
args: [{ selector: 'aup-tool-bar', template: '<div class="toolbar-content"><ng-content></ng-content></div>', encapsulation: ViewEncapsulation.None, styles: [":host{display:inline-block}.toolbar-content{display:inline-flex;flex-direction:row;align-items:center}.toolbar-content>aup-separator{align-self:stretch;margin:4px 0 4px 8px}.toolbar-content>aup-flex{flex:1}.toolbar-content>*+*{margin-left:8px}\n"] }]
|
|
1374
|
-
}], ctorParameters: function () { return [{ type: CommandContainer
|
|
1375
|
-
type: Optional
|
|
1376
|
-
}] }]; } });
|
|
1367
|
+
}], ctorParameters: function () { return [{ type: CommandContainer }]; } });
|
|
1377
1368
|
|
|
1378
1369
|
/**
|
|
1379
1370
|
*
|
|
@@ -1684,6 +1675,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
1684
1675
|
args: ['blur']
|
|
1685
1676
|
}] } });
|
|
1686
1677
|
|
|
1678
|
+
/* tslint:disable:no-input-rename */
|
|
1687
1679
|
const INPUT_TOKEN_HACK = new InjectionToken("INPUT_TOKEN_HACK");
|
|
1688
1680
|
class AbstractInputComponent extends DisposableComponent {
|
|
1689
1681
|
onValueEditedListeners = new EventListenerList();
|
|
@@ -1698,16 +1690,11 @@ class AbstractInputComponent extends DisposableComponent {
|
|
|
1698
1690
|
* gets told it's an Object and can't scan for a base type annotated with @DelegateUsing(..).
|
|
1699
1691
|
*/
|
|
1700
1692
|
formValue$;
|
|
1701
|
-
|
|
1702
|
-
|
|
1703
|
-
set i18n$(value) { this.#i18n$_accessor_storage = value; }
|
|
1704
|
-
#i18n_accessor_storage;
|
|
1705
|
-
get i18n() { return this.#i18n_accessor_storage; }
|
|
1706
|
-
set i18n(value) { this.#i18n_accessor_storage = value; }
|
|
1707
|
-
_label;
|
|
1693
|
+
label;
|
|
1694
|
+
// eslint-disable-next-line @angular-eslint/no-input-rename
|
|
1708
1695
|
userFloatLabel = 'always'; // TODO: make this an injectable default
|
|
1709
|
-
|
|
1710
|
-
|
|
1696
|
+
hint;
|
|
1697
|
+
placeholder;
|
|
1711
1698
|
dense = false;
|
|
1712
1699
|
_enabled$ = this.registerDisposable(new DelegatingValueModel());
|
|
1713
1700
|
set enabled$(condition$) {
|
|
@@ -1774,9 +1761,6 @@ class AbstractInputComponent extends DisposableComponent {
|
|
|
1774
1761
|
isEnabled() {
|
|
1775
1762
|
return this.enabled$.value;
|
|
1776
1763
|
}
|
|
1777
|
-
get disabled() {
|
|
1778
|
-
return !this.isEnabled();
|
|
1779
|
-
}
|
|
1780
1764
|
hasErrors() {
|
|
1781
1765
|
return !this.errorList$.query().isEmpty();
|
|
1782
1766
|
}
|
|
@@ -1789,15 +1773,6 @@ class AbstractInputComponent extends DisposableComponent {
|
|
|
1789
1773
|
get focusContext() {
|
|
1790
1774
|
return this.formValue$.focusContext;
|
|
1791
1775
|
}
|
|
1792
|
-
get label() {
|
|
1793
|
-
return this._label ?? this.i18n?.label();
|
|
1794
|
-
}
|
|
1795
|
-
get hint() {
|
|
1796
|
-
return this._hint ?? this.hackyGetI18n("hint");
|
|
1797
|
-
}
|
|
1798
|
-
get placeholder() {
|
|
1799
|
-
return this._placeholder ?? this.hackyGetI18n("placeholder");
|
|
1800
|
-
}
|
|
1801
1776
|
get floatLabel() {
|
|
1802
1777
|
// return this.dense ? 'never' : this.userFloatLabel;
|
|
1803
1778
|
return this.userFloatLabel;
|
|
@@ -1812,45 +1787,24 @@ class AbstractInputComponent extends DisposableComponent {
|
|
|
1812
1787
|
onValueEdited(callback) {
|
|
1813
1788
|
return this.onValueEditedListeners.add(callback);
|
|
1814
1789
|
}
|
|
1815
|
-
hackyGetI18n(key) {
|
|
1816
|
-
// TODO: update I18n to make it possible to get an optional value with return the missing key message.
|
|
1817
|
-
const i18nFn = this.i18n ? this.i18n[key] : undefined;
|
|
1818
|
-
const i18nValue = i18nFn && i18nFn();
|
|
1819
|
-
return i18nValue?.startsWith("missing key") ? undefined : i18nValue;
|
|
1820
|
-
}
|
|
1821
1790
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AbstractInputComponent, deps: [{ token: INPUT_TOKEN_HACK }], target: i0.ɵɵFactoryTarget.Component });
|
|
1822
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AbstractInputComponent, selector: "ng-component", inputs: {
|
|
1791
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AbstractInputComponent, selector: "ng-component", inputs: { label: "label", userFloatLabel: ["floatLabel", "userFloatLabel"], hint: "hint", placeholder: "placeholder", dense: "dense", enabled$: "enabled$", focusCommand: ["command.focus", "focusCommand"], blurCommand: ["command.blur", "blurCommand"], enterCommand: ["command.enter", "enterCommand"], escapeCommand: ["command.escape", "escapeCommand"], clickCommand: ["command.click", "clickCommand"] }, outputs: { focus: "focus", blur: "blur", enterKey: "enterKey", escapeKey: "escapeKey" }, host: { listeners: { "click": "notifyClick()", "focusin": "notifyFocusIn()", "focusout": "notifyFocusOut()" }, properties: { "class.dense": "this.dense", "class": "this.baseClassName" } }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
1823
1792
|
}
|
|
1824
|
-
__decorate([
|
|
1825
|
-
Proxify(),
|
|
1826
|
-
__metadata("design:type", Object)
|
|
1827
|
-
], AbstractInputComponent.prototype, "i18n$", null);
|
|
1828
|
-
__decorate([
|
|
1829
|
-
StoreInValueModel(),
|
|
1830
|
-
__metadata("design:type", Object)
|
|
1831
|
-
], AbstractInputComponent.prototype, "i18n", null);
|
|
1832
1793
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AbstractInputComponent, decorators: [{
|
|
1833
1794
|
type: Component,
|
|
1834
1795
|
args: [{ template: '' }]
|
|
1835
1796
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
1836
1797
|
type: Inject,
|
|
1837
1798
|
args: [INPUT_TOKEN_HACK]
|
|
1838
|
-
}] }]; }, propDecorators: {
|
|
1839
|
-
type: Input
|
|
1840
|
-
}], i18n: [{
|
|
1799
|
+
}] }]; }, propDecorators: { label: [{
|
|
1841
1800
|
type: Input
|
|
1842
|
-
}], _label: [{
|
|
1843
|
-
type: Input,
|
|
1844
|
-
args: ["label"]
|
|
1845
1801
|
}], userFloatLabel: [{
|
|
1846
1802
|
type: Input,
|
|
1847
1803
|
args: ['floatLabel']
|
|
1848
|
-
}],
|
|
1849
|
-
type: Input
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
type: Input,
|
|
1853
|
-
args: ['placeholder']
|
|
1804
|
+
}], hint: [{
|
|
1805
|
+
type: Input
|
|
1806
|
+
}], placeholder: [{
|
|
1807
|
+
type: Input
|
|
1854
1808
|
}], dense: [{
|
|
1855
1809
|
type: HostBinding,
|
|
1856
1810
|
args: ['class.dense']
|
|
@@ -1893,9 +1847,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
1893
1847
|
}], notifyFocusOut: [{
|
|
1894
1848
|
type: HostListener,
|
|
1895
1849
|
args: ['focusout']
|
|
1896
|
-
}], disabled: [{
|
|
1897
|
-
type: HostBinding,
|
|
1898
|
-
args: ["class.disabled"]
|
|
1899
1850
|
}] } });
|
|
1900
1851
|
|
|
1901
1852
|
class AbstractListInputComponent extends AbstractInputComponent {
|
|
@@ -2133,15 +2084,12 @@ class CheckboxInputComponent extends AbstractValueInputComponent {
|
|
|
2133
2084
|
constructor() {
|
|
2134
2085
|
super();
|
|
2135
2086
|
}
|
|
2136
|
-
select($event) {
|
|
2137
|
-
this.componentValue$.value = $event.checked;
|
|
2138
|
-
}
|
|
2139
2087
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: CheckboxInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2140
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: CheckboxInputComponent, selector: "aup-checkbox-input", inputs: { color: "color", labelPosition: "labelPosition" }, usesInheritance: true, ngImport: i0, template: "<!-- TODO: add focus binding -->\n
|
|
2088
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: CheckboxInputComponent, selector: "aup-checkbox-input", inputs: { color: "color", labelPosition: "labelPosition" }, usesInheritance: true, ngImport: i0, template: "<!-- TODO: add focus binding -->\n<mat-checkbox\n [(ngModel)]=\"componentValue$.value\"\n [color]=\"color\"\n [labelPosition]=\"labelPosition\"\n [disabled]=\"!isEnabled()\"\n>{{label}}</mat-checkbox>\n<mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n<mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n", styles: [":host{display:inline-flex;flex-direction:column;padding:24px 0 16px}:host.dense{padding:6px 0 2px}mat-hint,mat-error{margin-top:4px;margin-left:24px;font-size:12px;font-weight:400;line-height:13.5px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i4$2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }] });
|
|
2141
2089
|
}
|
|
2142
2090
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: CheckboxInputComponent, decorators: [{
|
|
2143
2091
|
type: Component,
|
|
2144
|
-
args: [{ selector: 'aup-checkbox-input', template: "<!-- TODO: add focus binding -->\n
|
|
2092
|
+
args: [{ selector: 'aup-checkbox-input', template: "<!-- TODO: add focus binding -->\n<mat-checkbox\n [(ngModel)]=\"componentValue$.value\"\n [color]=\"color\"\n [labelPosition]=\"labelPosition\"\n [disabled]=\"!isEnabled()\"\n>{{label}}</mat-checkbox>\n<mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n<mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n", styles: [":host{display:inline-flex;flex-direction:column;padding:24px 0 16px}:host.dense{padding:6px 0 2px}mat-hint,mat-error{margin-top:4px;margin-left:24px;font-size:12px;font-weight:400;line-height:13.5px}\n"] }]
|
|
2145
2093
|
}], ctorParameters: function () { return []; }, propDecorators: { color: [{
|
|
2146
2094
|
type: Input
|
|
2147
2095
|
}], labelPosition: [{
|
|
@@ -2180,7 +2128,7 @@ class MultipleSelectInputComponent extends AbstractListInputComponent {
|
|
|
2180
2128
|
const self = this;
|
|
2181
2129
|
this.registerDisposable(new Binding(this.componentList$, this.ids$, {
|
|
2182
2130
|
toLeft(selectedItems, currentLeftValue) {
|
|
2183
|
-
const newValues = selectedItems.map(it => lookup.get(it)).filter(it =>
|
|
2131
|
+
const newValues = selectedItems.map(it => lookup.get(it)).filter(it => !it);
|
|
2184
2132
|
// if our lookup didn't find anything then we return the previous values so we don't clobber selections when the options go empty
|
|
2185
2133
|
return newValues.length < 1 && selectedItems.length > 0 ? currentLeftValue : newValues;
|
|
2186
2134
|
},
|
|
@@ -2191,7 +2139,7 @@ class MultipleSelectInputComponent extends AbstractListInputComponent {
|
|
|
2191
2139
|
})).writeRight();
|
|
2192
2140
|
}
|
|
2193
2141
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: MultipleSelectInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2194
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: MultipleSelectInputComponent, selector: "aup-multiple-select-input", inputs: { options$: "options$", options: "options", optionLabel: "optionLabel", optionLabelFormat: "optionLabelFormat" }, queries: [{ propertyName: "optionTemplateRef", first: true, predicate: ["optionTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n multiple\n [ngModel]=\"componentList$.value\"\n (ngModelChange)=\"selectAll($event)\"\n [disabled]=\"!enabled$.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-option *ngFor=\"let option of options$.value; let i = index\" [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n<div class=\"width-strut\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <div>{{placeholder}}</div>\n <div class=\"item\" *ngFor=\"let item of options\">{{optionLabelFormat(item)}}</div>\n</div>\n", styles: [":host{display:inline-block}mat-form-field{width:100%}.width-strut{display:block;height:0;max-height:0;width:auto;visibility:hidden;overflow:hidden;padding-right:35px}.width-strut mat-label{font-size:75%}.width-strut>.item{font-size:16px;padding-left:30px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$
|
|
2142
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: MultipleSelectInputComponent, selector: "aup-multiple-select-input", inputs: { options$: "options$", options: "options", optionLabel: "optionLabel", optionLabelFormat: "optionLabelFormat" }, queries: [{ propertyName: "optionTemplateRef", first: true, predicate: ["optionTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n multiple\n [ngModel]=\"componentList$.value\"\n (ngModelChange)=\"selectAll($event)\"\n [disabled]=\"!enabled$.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n <mat-option *ngFor=\"let option of options$.value; let i = index\" [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n<div class=\"width-strut\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <div>{{placeholder}}</div>\n <div class=\"item\" *ngFor=\"let item of options\">{{optionLabelFormat(item)}}</div>\n</div>\n", styles: [":host{display:inline-block}mat-form-field{width:100%}.width-strut{display:block;height:0;max-height:0;width:auto;visibility:hidden;overflow:hidden;padding-right:35px}.width-strut mat-label{font-size:75%}.width-strut>.item{font-size:16px;padding-left:30px}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: FocusBindingDirective, selector: "[pectinFocusBinding]", inputs: ["pectinFocusBinding", "focusBindingTarget"] }] });
|
|
2195
2143
|
}
|
|
2196
2144
|
__decorate([
|
|
2197
2145
|
Proxify(),
|
|
@@ -2219,142 +2167,48 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
2219
2167
|
|
|
2220
2168
|
class NumberInputComponent extends AbstractValueInputComponent {
|
|
2221
2169
|
autocomplete;
|
|
2222
|
-
|
|
2223
|
-
|
|
2224
|
-
|
|
2225
|
-
#min_accessor_storage = Number.MIN_SAFE_INTEGER;
|
|
2226
|
-
get min() { return this.#min_accessor_storage; }
|
|
2227
|
-
set min(value) { this.#min_accessor_storage = value; }
|
|
2228
|
-
#max$_accessor_storage = proxify((ValueModel));
|
|
2229
|
-
get max$() { return this.#max$_accessor_storage; }
|
|
2230
|
-
set max$(value) { this.#max$_accessor_storage = value; }
|
|
2231
|
-
#max_accessor_storage = Number.MAX_SAFE_INTEGER;
|
|
2232
|
-
get max() { return this.#max_accessor_storage; }
|
|
2233
|
-
set max(value) { this.#max_accessor_storage = value; }
|
|
2234
|
-
incrementCommand;
|
|
2235
|
-
decrementCommand;
|
|
2170
|
+
min = Number.MIN_SAFE_INTEGER;
|
|
2171
|
+
max = Number.MAX_SAFE_INTEGER;
|
|
2172
|
+
iconPrefix;
|
|
2236
2173
|
constructor() {
|
|
2237
2174
|
super();
|
|
2238
|
-
const { chain } = Dsl.disposeWith(this);
|
|
2239
|
-
const normalisedValue$ = chain(this.value$).otherwise(0);
|
|
2240
|
-
this.incrementCommand = Command.create(() => {
|
|
2241
|
-
this.value$.value = normalisedValue$.value + 1;
|
|
2242
|
-
}).enableWhile(chain.numericValue(normalisedValue$).isLessThan(this.max$).and(this.enabled$));
|
|
2243
|
-
this.decrementCommand = Command.create(() => {
|
|
2244
|
-
this.value$.value = normalisedValue$.value - 1;
|
|
2245
|
-
}).enableWhile(chain.numericValue(normalisedValue$).isGreaterThan(this.min$).and(this.enabled$));
|
|
2246
2175
|
}
|
|
2247
2176
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: NumberInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2248
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: NumberInputComponent, selector: "aup-number-input", inputs: { autocomplete: "autocomplete", min
|
|
2177
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: NumberInputComponent, selector: "aup-number-input", inputs: { autocomplete: "autocomplete", min: "min", max: "max", iconPrefix: "iconPrefix" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"number\"\n matInput\n placeholder=\"{{placeholder}}\"\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 [min]=\"min\"\n [max]=\"max\"\n >\n <mat-hint *ngIf=\"hint && !dense\" >{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n <aup-icon *ngIf=\"iconPrefix\" matPrefix [icon]=\"iconPrefix\"></aup-icon>\n</mat-form-field>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$4.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$4.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }, { kind: "directive", type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$4.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { kind: "directive", type: i2$4.MaxValidator, selector: "input[type=number][max][formControlName],input[type=number][max][formControl],input[type=number][max][ngModel]", inputs: ["max"] }, { kind: "directive", type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.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$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$2.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: FocusBindingDirective, selector: "[pectinFocusBinding]", inputs: ["pectinFocusBinding", "focusBindingTarget"] }, { kind: "component", type: IconComponent, selector: "aup-icon", inputs: ["icon"] }] });
|
|
2249
2178
|
}
|
|
2250
|
-
__decorate([
|
|
2251
|
-
Proxify(),
|
|
2252
|
-
__metadata("design:type", ValueModel)
|
|
2253
|
-
], NumberInputComponent.prototype, "min$", null);
|
|
2254
|
-
__decorate([
|
|
2255
|
-
StoreInValueModel(),
|
|
2256
|
-
__metadata("design:type", Object)
|
|
2257
|
-
], NumberInputComponent.prototype, "min", null);
|
|
2258
|
-
__decorate([
|
|
2259
|
-
Proxify(),
|
|
2260
|
-
__metadata("design:type", ValueModel)
|
|
2261
|
-
], NumberInputComponent.prototype, "max$", null);
|
|
2262
|
-
__decorate([
|
|
2263
|
-
StoreInValueModel(),
|
|
2264
|
-
__metadata("design:type", Object)
|
|
2265
|
-
], NumberInputComponent.prototype, "max", null);
|
|
2266
2179
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: NumberInputComponent, decorators: [{
|
|
2267
2180
|
type: Component,
|
|
2268
|
-
args: [{ selector: 'aup-number-input', template: "<mat-form-field floatLabel=\"
|
|
2181
|
+
args: [{ selector: 'aup-number-input', template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"number\"\n matInput\n placeholder=\"{{placeholder}}\"\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 [min]=\"min\"\n [max]=\"max\"\n >\n <mat-hint *ngIf=\"hint && !dense\" >{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n <aup-icon *ngIf=\"iconPrefix\" matPrefix [icon]=\"iconPrefix\"></aup-icon>\n</mat-form-field>\n" }]
|
|
2269
2182
|
}], ctorParameters: function () { return []; }, propDecorators: { autocomplete: [{
|
|
2270
2183
|
type: Input
|
|
2271
|
-
}], min$: [{
|
|
2272
|
-
type: Input
|
|
2273
2184
|
}], min: [{
|
|
2274
2185
|
type: Input
|
|
2275
|
-
}], max$: [{
|
|
2276
|
-
type: Input
|
|
2277
2186
|
}], max: [{
|
|
2278
2187
|
type: Input
|
|
2188
|
+
}], iconPrefix: [{
|
|
2189
|
+
type: Input
|
|
2279
2190
|
}] } });
|
|
2280
2191
|
|
|
2281
2192
|
class PasswordInputComponent extends AbstractValueInputComponent {
|
|
2282
2193
|
autocomplete;
|
|
2283
|
-
#enableShowPassword$_accessor_storage = proxify((ValueModel));
|
|
2284
|
-
get enableShowPassword$() { return this.#enableShowPassword$_accessor_storage; }
|
|
2285
|
-
set enableShowPassword$(value) { this.#enableShowPassword$_accessor_storage = value; }
|
|
2286
|
-
#enableShowPassword_accessor_storage = false;
|
|
2287
|
-
get enableShowPassword() { return this.#enableShowPassword_accessor_storage; }
|
|
2288
|
-
set enableShowPassword(value) { this.#enableShowPassword_accessor_storage = value; }
|
|
2289
|
-
showPassword$ = new MutableValueModel(false);
|
|
2290
|
-
toggleShowPasswordCommand;
|
|
2291
2194
|
constructor() {
|
|
2292
2195
|
super();
|
|
2293
|
-
const { chain, valueOf } = Dsl.disposeWith(this);
|
|
2294
|
-
const face$ = chain(this.showPassword$).map(show => {
|
|
2295
|
-
return {
|
|
2296
|
-
icon: () => show ? "mat:visibility_off" : "mat:visibility"
|
|
2297
|
-
};
|
|
2298
|
-
});
|
|
2299
|
-
this.toggleShowPasswordCommand = Command.create(() => {
|
|
2300
|
-
this.showPassword$.value = !this.showPassword$.value;
|
|
2301
|
-
})
|
|
2302
|
-
.withFace(face$)
|
|
2303
|
-
.enableWhile(chain.stringValue(this.componentValue$).isNotBlank());
|
|
2304
|
-
}
|
|
2305
|
-
get fieldType() {
|
|
2306
|
-
return this.showPassword$.value ? "text" : "password";
|
|
2307
2196
|
}
|
|
2308
2197
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PasswordInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2309
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: PasswordInputComponent, selector: "aup-password-input", inputs: { autocomplete: "autocomplete"
|
|
2198
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: PasswordInputComponent, selector: "aup-password-input", inputs: { autocomplete: "autocomplete" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"password\"\n matInput\n placeholder=\"{{placeholder}}\"\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</mat-form-field>\n\n", styles: [""], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$4.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$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.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$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: FocusBindingDirective, selector: "[pectinFocusBinding]", inputs: ["pectinFocusBinding", "focusBindingTarget"] }] });
|
|
2310
2199
|
}
|
|
2311
|
-
__decorate([
|
|
2312
|
-
Proxify(),
|
|
2313
|
-
__metadata("design:type", Object)
|
|
2314
|
-
], PasswordInputComponent.prototype, "enableShowPassword$", null);
|
|
2315
|
-
__decorate([
|
|
2316
|
-
StoreInValueModel(),
|
|
2317
|
-
__metadata("design:type", Object)
|
|
2318
|
-
], PasswordInputComponent.prototype, "enableShowPassword", null);
|
|
2319
2200
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PasswordInputComponent, decorators: [{
|
|
2320
2201
|
type: Component,
|
|
2321
|
-
args: [{ selector: 'aup-password-input', template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input
|
|
2322
|
-
}], ctorParameters: function () { return []; }, propDecorators: { autocomplete: [{
|
|
2323
|
-
type: Input
|
|
2324
|
-
}], enableShowPassword$: [{
|
|
2325
|
-
type: Input
|
|
2326
|
-
}], enableShowPassword: [{
|
|
2327
|
-
type: Input
|
|
2328
|
-
}] } });
|
|
2329
|
-
|
|
2330
|
-
class SearchInputComponent extends AbstractValueInputComponent {
|
|
2331
|
-
autocomplete;
|
|
2332
|
-
clearCommand;
|
|
2333
|
-
constructor() {
|
|
2334
|
-
super();
|
|
2335
|
-
this.dense = true;
|
|
2336
|
-
const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
|
|
2337
|
-
this.clearCommand = Command.create(() => {
|
|
2338
|
-
this.componentValue$.value = "";
|
|
2339
|
-
});
|
|
2340
|
-
this.clearCommand.disableWhile(chain.stringValue(this.componentValue$).isBlank());
|
|
2341
|
-
}
|
|
2342
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SearchInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2343
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SearchInputComponent, selector: "aup-search-input", inputs: { autocomplete: "autocomplete" }, usesInheritance: true, ngImport: i0, template: "<mat-form-field [floatLabel]=\"floatLabel\">\n\n <input matInput\n placeholder=\"{{placeholder}}\"\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 <aup-icon matPrefix icon=\"mat:search\"></aup-icon>\n <button mat-icon-button matSuffix [pectinCommand]=\"clearCommand\">\n <aup-icon icon=\"mat:close\"></aup-icon>\n </button>\n</mat-form-field>\n\n", styles: ["button[disabled]{visibility:hidden}\n"], dependencies: [{ kind: "directive", type: i2$4.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$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.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$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$2.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: FocusBindingDirective, selector: "[pectinFocusBinding]", inputs: ["pectinFocusBinding", "focusBindingTarget"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: IconComponent, selector: "aup-icon", inputs: ["icon"] }] });
|
|
2344
|
-
}
|
|
2345
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SearchInputComponent, decorators: [{
|
|
2346
|
-
type: Component,
|
|
2347
|
-
args: [{ selector: 'aup-search-input', template: "<mat-form-field [floatLabel]=\"floatLabel\">\n\n <input matInput\n placeholder=\"{{placeholder}}\"\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 <aup-icon matPrefix icon=\"mat:search\"></aup-icon>\n <button mat-icon-button matSuffix [pectinCommand]=\"clearCommand\">\n <aup-icon icon=\"mat:close\"></aup-icon>\n </button>\n</mat-form-field>\n\n", styles: ["button[disabled]{visibility:hidden}\n"] }]
|
|
2202
|
+
args: [{ selector: 'aup-password-input', template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input type=\"password\"\n matInput\n placeholder=\"{{placeholder}}\"\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</mat-form-field>\n\n" }]
|
|
2348
2203
|
}], ctorParameters: function () { return []; }, propDecorators: { autocomplete: [{
|
|
2349
2204
|
type: Input
|
|
2350
2205
|
}] } });
|
|
2351
2206
|
|
|
2352
2207
|
/**
|
|
2353
2208
|
* Using templates:
|
|
2354
|
-
* <aup-select-input [
|
|
2209
|
+
* <aup-select-input [valueModel]="myModel" [options]="myOptions">
|
|
2355
2210
|
* <ng-template #optionTemplate let-option>{{option.thePropertyYouWant}}</ng-template>
|
|
2356
|
-
* <ng-template #
|
|
2357
|
-
* <ng-template #nilOptionTemplate>Uses the placeholder by default but you can customise it</ng-template>
|
|
2211
|
+
* <ng-template #nilOptionTemplate let-option>{{option.thePropertyYouWant}}</ng-template>
|
|
2358
2212
|
* </aup-select_input>
|
|
2359
2213
|
*/
|
|
2360
2214
|
class SelectInputComponent extends AbstractValueInputComponent {
|
|
@@ -2379,7 +2233,7 @@ class SelectInputComponent extends AbstractValueInputComponent {
|
|
|
2379
2233
|
super();
|
|
2380
2234
|
const { chain } = Dsl.disposeWith(this);
|
|
2381
2235
|
this.cookedOptions$ = chain(this.options$)
|
|
2382
|
-
.
|
|
2236
|
+
.reduceToList(options => {
|
|
2383
2237
|
return options.length < 1 && !isNil(this.componentValue$.value) ? [this.componentValue$.value] : options;
|
|
2384
2238
|
}, {
|
|
2385
2239
|
dependsOn: this.componentValue$
|
|
@@ -2418,21 +2272,21 @@ class SelectInputComponent extends AbstractValueInputComponent {
|
|
|
2418
2272
|
id: this.delegatedIdentityOf(value)
|
|
2419
2273
|
});
|
|
2420
2274
|
let lastIdSnapshot = snapshotValueAndId(this.componentValue$.value);
|
|
2421
|
-
|
|
2275
|
+
console.log(lastIdSnapshot);
|
|
2422
2276
|
before(this.options$).changes(() => {
|
|
2423
2277
|
lastIdSnapshot = snapshotValueAndId(this.componentValue$.value);
|
|
2424
|
-
|
|
2278
|
+
console.log(lastIdSnapshot);
|
|
2425
2279
|
});
|
|
2426
2280
|
when(this.options$).changes((is, was) => {
|
|
2427
2281
|
const newIdSnapshot = snapshotValueAndId(lastIdSnapshot.value);
|
|
2428
|
-
|
|
2282
|
+
console.log(lastIdSnapshot, newIdSnapshot);
|
|
2429
2283
|
if (newIdSnapshot !== lastIdSnapshot.id) {
|
|
2430
2284
|
this.id$.value = this.delegatedIdentityOf(this.componentValue$.value);
|
|
2431
2285
|
}
|
|
2432
2286
|
});
|
|
2433
2287
|
}
|
|
2434
2288
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SelectInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2435
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SelectInputComponent, selector: "aup-select-input", inputs: { options$: "options$", options: "options", optionLabel: "optionLabel", allowNil: "allowNil", optionLabelFormat: "optionLabelFormat" }, queries: [{ propertyName: "selectedOptionTemplateRef", first: true, predicate: ["selectedOptionTemplate"], descendants: true }, { propertyName: "optionTemplateRef", first: true, predicate: ["optionTemplate"], descendants: true }, { propertyName: "nilOptionTemplateRef", first: true, predicate: ["nilOptionTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n [ngModel]=\"componentValue$.value\"\n (ngModelChange)=\"select($event)\"\n [disabled]=\"!enabled$.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n\n <!--\n TODO: dave has a scenario where the selected item isn't rendering that I can't reproduce so we explicity render it..\n It typically happens because the ngModel value isn't the one contained in the list - this means our source model\n identifyOf function has changed and our id$/lookup$/componentValue$ are out of sync.\n We get around this for now by explicity rendering the component value.\n Please Note: I haven't been able to reproduce this\n -->\n <mat-select-trigger *ngIf=\"!selectedOptionTemplateRef\">\n {{optionLabelFormat(componentValue$.value)}}\n </mat-select-trigger>\n\n <mat-select-trigger *ngIf=\"selectedOptionTemplateRef\">\n <ng-container [ngTemplateOutlet]=\"selectedOptionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: componentValue$.value}\"></ng-container>\n </mat-select-trigger>\n\n <mat-option *ngIf=\"allowNil\">\n <ng-container *ngIf=\"!nilOptionTemplateRef\">{{placeholder}}</ng-container>\n <ng-container *ngIf=\"nilOptionTemplateRef\" [ngTemplateOutlet]=\"nilOptionTemplateRef\"></ng-container>\n </mat-option>\n <mat-option *ngFor=\"let option of cookedOptions$.value; trackBy: trackByIdentity;let i = index\"\n [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n
|
|
2289
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SelectInputComponent, selector: "aup-select-input", inputs: { options$: "options$", options: "options", optionLabel: "optionLabel", allowNil: "allowNil", optionLabelFormat: "optionLabelFormat" }, queries: [{ propertyName: "selectedOptionTemplateRef", first: true, predicate: ["selectedOptionTemplate"], descendants: true }, { propertyName: "optionTemplateRef", first: true, predicate: ["optionTemplate"], descendants: true }, { propertyName: "nilOptionTemplateRef", first: true, predicate: ["nilOptionTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n [ngModel]=\"componentValue$.value\"\n (ngModelChange)=\"select($event)\"\n [disabled]=\"!enabled$.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n\n <!--\n TODO: dave has a scenario where the selected item isn't rendering that I can't reproduce so we explicity render it..\n It typically happens because the ngModel value isn't the one contained in the list - this means our source model\n identifyOf function has changed and our id$/lookup$/componentValue$ are out of sync.\n We get around this for now by explicity rendering the component value.\n Please Note: I haven't been able to reproduce this\n -->\n <mat-select-trigger *ngIf=\"!selectedOptionTemplateRef\">\n {{optionLabelFormat(componentValue$.value)}}\n </mat-select-trigger>\n\n <mat-select-trigger *ngIf=\"selectedOptionTemplateRef\">\n <ng-container [ngTemplateOutlet]=\"selectedOptionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: componentValue$.value}\"></ng-container>\n </mat-select-trigger>\n\n <mat-option *ngIf=\"allowNil\">\n <ng-container *ngIf=\"!nilOptionTemplateRef\">{{placeholder}}</ng-container>\n <ng-container *ngIf=\"nilOptionTemplateRef\" [ngTemplateOutlet]=\"nilOptionTemplateRef\"></ng-container>\n </mat-option>\n <mat-option *ngFor=\"let option of cookedOptions$.value; trackBy: trackByIdentity;let i = index\"\n [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n<div class=\"width-strut\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <div class=\"item\" *ngFor=\"let item of cookedOptions$.value\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(item)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item, index: 0 }\"\n >\n </ng-container>\n </div>\n</div>\n", styles: [":host{display:inline-block}mat-form-field{width:100%}.width-strut{display:block;height:0;max-height:0;width:auto;visibility:hidden;overflow:hidden;padding-right:35px}.width-strut mat-label{font-size:75%}.width-strut>.item{font-size:16px;padding-left:0}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i4$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "component", type: i4$4.MatSelect, selector: "mat-select", inputs: ["disabled", "disableRipple", "tabIndex", "panelWidth", "hideSingleSelectionIndicator"], exportAs: ["matSelect"] }, { kind: "directive", type: i4$4.MatSelectTrigger, selector: "mat-select-trigger" }, { kind: "component", type: i5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { kind: "directive", type: FocusBindingDirective, selector: "[pectinFocusBinding]", inputs: ["pectinFocusBinding", "focusBindingTarget"] }] });
|
|
2436
2290
|
}
|
|
2437
2291
|
__decorate([
|
|
2438
2292
|
Proxify(),
|
|
@@ -2444,7 +2298,7 @@ __decorate([
|
|
|
2444
2298
|
], SelectInputComponent.prototype, "options", null);
|
|
2445
2299
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SelectInputComponent, decorators: [{
|
|
2446
2300
|
type: Component,
|
|
2447
|
-
args: [{ selector: 'aup-select-input', template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n [ngModel]=\"componentValue$.value\"\n (ngModelChange)=\"select($event)\"\n [disabled]=\"!enabled$.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n\n <!--\n TODO: dave has a scenario where the selected item isn't rendering that I can't reproduce so we explicity render it..\n It typically happens because the ngModel value isn't the one contained in the list - this means our source model\n identifyOf function has changed and our id$/lookup$/componentValue$ are out of sync.\n We get around this for now by explicity rendering the component value.\n Please Note: I haven't been able to reproduce this\n -->\n <mat-select-trigger *ngIf=\"!selectedOptionTemplateRef\">\n {{optionLabelFormat(componentValue$.value)}}\n </mat-select-trigger>\n\n <mat-select-trigger *ngIf=\"selectedOptionTemplateRef\">\n <ng-container [ngTemplateOutlet]=\"selectedOptionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: componentValue$.value}\"></ng-container>\n </mat-select-trigger>\n\n <mat-option *ngIf=\"allowNil\">\n <ng-container *ngIf=\"!nilOptionTemplateRef\">{{placeholder}}</ng-container>\n <ng-container *ngIf=\"nilOptionTemplateRef\" [ngTemplateOutlet]=\"nilOptionTemplateRef\"></ng-container>\n </mat-option>\n <mat-option *ngFor=\"let option of cookedOptions$.value; trackBy: trackByIdentity;let i = index\"\n [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n
|
|
2301
|
+
args: [{ selector: 'aup-select-input', template: "<mat-form-field [floatLabel]=\"floatLabel\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <mat-select placeholder=\"{{placeholder}}\"\n [ngModel]=\"componentValue$.value\"\n (ngModelChange)=\"select($event)\"\n [disabled]=\"!enabled$.value\"\n (keydown.enter)=\"notifyEnterKey()\"\n (keydown.escape)=\"notifyEscapeKey()\"\n [pectinFocusBinding]=\"focusContext\"\n [errorStateMatcher]=\"errorStateMatcher\"\n >\n\n <!--\n TODO: dave has a scenario where the selected item isn't rendering that I can't reproduce so we explicity render it..\n It typically happens because the ngModel value isn't the one contained in the list - this means our source model\n identifyOf function has changed and our id$/lookup$/componentValue$ are out of sync.\n We get around this for now by explicity rendering the component value.\n Please Note: I haven't been able to reproduce this\n -->\n <mat-select-trigger *ngIf=\"!selectedOptionTemplateRef\">\n {{optionLabelFormat(componentValue$.value)}}\n </mat-select-trigger>\n\n <mat-select-trigger *ngIf=\"selectedOptionTemplateRef\">\n <ng-container [ngTemplateOutlet]=\"selectedOptionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: componentValue$.value}\"></ng-container>\n </mat-select-trigger>\n\n <mat-option *ngIf=\"allowNil\">\n <ng-container *ngIf=\"!nilOptionTemplateRef\">{{placeholder}}</ng-container>\n <ng-container *ngIf=\"nilOptionTemplateRef\" [ngTemplateOutlet]=\"nilOptionTemplateRef\"></ng-container>\n </mat-option>\n <mat-option *ngFor=\"let option of cookedOptions$.value; trackBy: trackByIdentity;let i = index\"\n [value]=\"option\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(option)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: option, index: i }\"\n >\n </ng-container>\n </mat-option>\n </mat-select>\n <mat-hint *ngIf=\"showHint\">{{hint}}</mat-hint>\n <mat-error *ngIf=\"hasErrors\">{{firstError}}</mat-error>\n</mat-form-field>\n<div class=\"width-strut\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <div class=\"item\" *ngFor=\"let item of cookedOptions$.value\">\n <ng-container *ngIf=\"!optionTemplateRef\">{{optionLabelFormat(item)}}</ng-container>\n <ng-container *ngIf=\"optionTemplateRef\"\n [ngTemplateOutlet]=\"optionTemplateRef\"\n [ngTemplateOutletContext]=\"{ $implicit: item, index: 0 }\"\n >\n </ng-container>\n </div>\n</div>\n", styles: [":host{display:inline-block}mat-form-field{width:100%}.width-strut{display:block;height:0;max-height:0;width:auto;visibility:hidden;overflow:hidden;padding-right:35px}.width-strut mat-label{font-size:75%}.width-strut>.item{font-size:16px;padding-left:0}\n"] }]
|
|
2448
2302
|
}], ctorParameters: function () { return []; }, propDecorators: { options$: [{
|
|
2449
2303
|
type: Input
|
|
2450
2304
|
}], options: [{
|
|
@@ -2475,24 +2329,17 @@ class StringInputComponent extends AbstractValueInputComponent {
|
|
|
2475
2329
|
get enableClear() { return this.#enableClear_accessor_storage; }
|
|
2476
2330
|
set enableClear(value) { this.#enableClear_accessor_storage = value; }
|
|
2477
2331
|
iconPrefix;
|
|
2478
|
-
#suffixCommand_accessor_storage = proxify(Command);
|
|
2479
|
-
get suffixCommand() { return this.#suffixCommand_accessor_storage; }
|
|
2480
|
-
set suffixCommand(value) { this.#suffixCommand_accessor_storage = value; }
|
|
2481
2332
|
clearCommand;
|
|
2482
2333
|
constructor() {
|
|
2483
2334
|
super();
|
|
2484
2335
|
const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
|
|
2485
2336
|
this.clearCommand = Command.create(() => {
|
|
2486
2337
|
this.componentValue$.value = "";
|
|
2487
|
-
})
|
|
2488
|
-
|
|
2489
|
-
.enableWhile(chain.stringValue(this.componentValue$).isNotBlank());
|
|
2490
|
-
}
|
|
2491
|
-
get hasSuffixCommand() {
|
|
2492
|
-
return Proxify.hasTarget(this.suffixCommand);
|
|
2338
|
+
});
|
|
2339
|
+
this.clearCommand.disableWhile(chain.stringValue(this.componentValue$).isBlank());
|
|
2493
2340
|
}
|
|
2494
2341
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: StringInputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2495
|
-
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"
|
|
2342
|
+
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" }, 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.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 <button mat-icon-button matSuffix *ngIf=\"enableClear\" [pectinCommand]=\"clearCommand\">\n <aup-icon icon=\"mat:close\"></aup-icon>\n </button>\n</mat-form-field>\n\n", styles: ["button[disabled]{visibility:hidden}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2$4.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$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.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$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$2.MatLabel, selector: "mat-label" }, { kind: "directive", type: i4$2.MatHint, selector: "mat-hint", inputs: ["align", "id"] }, { kind: "directive", type: i4$2.MatError, selector: "mat-error, [matError]", inputs: ["id"] }, { kind: "directive", type: i4$2.MatPrefix, selector: "[matPrefix], [matIconPrefix], [matTextPrefix]", inputs: ["matTextPrefix"] }, { kind: "directive", type: i4$2.MatSuffix, selector: "[matSuffix], [matIconSuffix], [matTextSuffix]", inputs: ["matTextSuffix"] }, { kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: FocusBindingDirective, selector: "[pectinFocusBinding]", inputs: ["pectinFocusBinding", "focusBindingTarget"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: IconComponent, selector: "aup-icon", inputs: ["icon"] }] });
|
|
2496
2343
|
}
|
|
2497
2344
|
__decorate([
|
|
2498
2345
|
Proxify(),
|
|
@@ -2502,13 +2349,9 @@ __decorate([
|
|
|
2502
2349
|
StoreInValueModel(),
|
|
2503
2350
|
__metadata("design:type", Object)
|
|
2504
2351
|
], StringInputComponent.prototype, "enableClear", null);
|
|
2505
|
-
__decorate([
|
|
2506
|
-
Proxify(),
|
|
2507
|
-
__metadata("design:type", Command)
|
|
2508
|
-
], StringInputComponent.prototype, "suffixCommand", null);
|
|
2509
2352
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: StringInputComponent, decorators: [{
|
|
2510
2353
|
type: Component,
|
|
2511
|
-
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.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 <
|
|
2354
|
+
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.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 <button mat-icon-button matSuffix *ngIf=\"enableClear\" [pectinCommand]=\"clearCommand\">\n <aup-icon icon=\"mat:close\"></aup-icon>\n </button>\n</mat-form-field>\n\n", styles: ["button[disabled]{visibility:hidden}\n"] }]
|
|
2512
2355
|
}], ctorParameters: function () { return []; }, propDecorators: { autocomplete: [{
|
|
2513
2356
|
type: Input
|
|
2514
2357
|
}], enableClear$: [{
|
|
@@ -2517,8 +2360,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
2517
2360
|
type: Input
|
|
2518
2361
|
}], iconPrefix: [{
|
|
2519
2362
|
type: Input
|
|
2520
|
-
}], suffixCommand: [{
|
|
2521
|
-
type: Input
|
|
2522
2363
|
}] } });
|
|
2523
2364
|
|
|
2524
2365
|
class TextInputComponent extends AbstractValueInputComponent {
|
|
@@ -2706,6 +2547,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
2706
2547
|
* </aup-switch-case>
|
|
2707
2548
|
*/
|
|
2708
2549
|
class SwitchCaseComponent extends DisposableComponent {
|
|
2550
|
+
cdr;
|
|
2709
2551
|
#switch$_accessor_storage = proxify((ValueModel));
|
|
2710
2552
|
get switch$() { return this.#switch$_accessor_storage; }
|
|
2711
2553
|
set switch$(value) { this.#switch$_accessor_storage = value; }
|
|
@@ -2714,8 +2556,9 @@ class SwitchCaseComponent extends DisposableComponent {
|
|
|
2714
2556
|
set switch(value) { this.#switch_accessor_storage = value; }
|
|
2715
2557
|
switchCaseOptions;
|
|
2716
2558
|
selectedIndex = 0;
|
|
2717
|
-
constructor() {
|
|
2559
|
+
constructor(cdr) {
|
|
2718
2560
|
super();
|
|
2561
|
+
this.cdr = cdr;
|
|
2719
2562
|
}
|
|
2720
2563
|
ngAfterContentInit() {
|
|
2721
2564
|
const subscription = this.switchCaseOptions.changes.subscribe(change => this.updateSelection());
|
|
@@ -2752,8 +2595,8 @@ class SwitchCaseComponent extends DisposableComponent {
|
|
|
2752
2595
|
this.selectedIndex = -1;
|
|
2753
2596
|
}
|
|
2754
2597
|
}
|
|
2755
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SwitchCaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
2756
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SwitchCaseComponent, selector: "aup-switch-case", inputs: { switch$: "switch$", switch: "switch" }, queries: [{ propertyName: "switchCaseOptions", predicate: SwitchCaseOption }], usesInheritance: true, ngImport: i0, template: "<mat-tab-group class=\"content-wrapper\" no-tab-header full-height-tabs [selectedIndex]=\"selectedIndex\">\n <mat-tab *ngFor=\"let option of switchCaseOptions\">\n <ng-template [ngTemplateOutlet]=\"option.templateRef\"></ng-template>\n </mat-tab>\n</mat-tab-group>\n\n\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}mat-tab-group{flex:1}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3$
|
|
2598
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SwitchCaseComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
2599
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SwitchCaseComponent, selector: "aup-switch-case", inputs: { switch$: "switch$", switch: "switch" }, queries: [{ propertyName: "switchCaseOptions", predicate: SwitchCaseOption }], usesInheritance: true, ngImport: i0, template: "<mat-tab-group class=\"content-wrapper\" no-tab-header full-height-tabs [selectedIndex]=\"selectedIndex\">\n <mat-tab *ngFor=\"let option of switchCaseOptions\">\n <ng-template [ngTemplateOutlet]=\"option.templateRef\"></ng-template>\n </mat-tab>\n</mat-tab-group>\n\n\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}mat-tab-group{flex:1}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3$1.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i3$1.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }] });
|
|
2757
2600
|
}
|
|
2758
2601
|
__decorate([
|
|
2759
2602
|
Proxify(),
|
|
@@ -2766,7 +2609,7 @@ __decorate([
|
|
|
2766
2609
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SwitchCaseComponent, decorators: [{
|
|
2767
2610
|
type: Component,
|
|
2768
2611
|
args: [{ selector: 'aup-switch-case', template: "<mat-tab-group class=\"content-wrapper\" no-tab-header full-height-tabs [selectedIndex]=\"selectedIndex\">\n <mat-tab *ngFor=\"let option of switchCaseOptions\">\n <ng-template [ngTemplateOutlet]=\"option.templateRef\"></ng-template>\n </mat-tab>\n</mat-tab-group>\n\n\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}mat-tab-group{flex:1}\n"] }]
|
|
2769
|
-
}], ctorParameters: function () { return []; }, propDecorators: { switch$: [{
|
|
2612
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { switch$: [{
|
|
2770
2613
|
type: Input
|
|
2771
2614
|
}], switch: [{
|
|
2772
2615
|
type: Input
|
|
@@ -2776,7 +2619,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
2776
2619
|
}] } });
|
|
2777
2620
|
|
|
2778
2621
|
const HEADER_CELL_RENDERER_PORTAL = Symbol('aup-cell-header-renderer-component-ref');
|
|
2779
|
-
const FOOTER_CELL_RENDERER_PORTAL = Symbol('aup-cell-footer-renderer-component-ref');
|
|
2780
2622
|
const CELL_RENDERER_PORTAL = Symbol('aup-cell-renderer-component-ref');
|
|
2781
2623
|
const CELL_EDITOR_PORTAL = Symbol('aup-cell-editor-component-ref');
|
|
2782
2624
|
const PORTAL_RENDERER_COMPONENT = Symbol('aup-cell-renderer-portal-component');
|
|
@@ -2874,23 +2716,6 @@ class TemplateCellRendererPortalRef extends CellRendererPortalRef {
|
|
|
2874
2716
|
return new TemplatePortal(this.templateRef, this.viewContainer, { ...(data), $implicit: data.row });
|
|
2875
2717
|
}
|
|
2876
2718
|
}
|
|
2877
|
-
class CellFooterPortalRef extends CellPortalRef {
|
|
2878
|
-
componentType;
|
|
2879
|
-
initialiseHeader;
|
|
2880
|
-
constructor(componentType, initialiseHeader) {
|
|
2881
|
-
super();
|
|
2882
|
-
this.componentType = componentType;
|
|
2883
|
-
this.initialiseHeader = initialiseHeader;
|
|
2884
|
-
}
|
|
2885
|
-
initialiseHost(host, columnModel) {
|
|
2886
|
-
assert$1.isTruthy(host);
|
|
2887
|
-
host[HEADER_CELL_RENDERER_PORTAL] = new ComponentPortal(this.componentType);
|
|
2888
|
-
}
|
|
2889
|
-
// @Trace()
|
|
2890
|
-
onPortalAttached(host, portalComponent) {
|
|
2891
|
-
this.initialiseHeader(portalComponent, host.column);
|
|
2892
|
-
}
|
|
2893
|
-
}
|
|
2894
2719
|
|
|
2895
2720
|
class ColumnTextSearchFormatter {
|
|
2896
2721
|
}
|
|
@@ -2981,7 +2806,6 @@ class ColumnTextSearchWrapper extends ColumnTextSearchFormatter.Delegate {
|
|
|
2981
2806
|
}
|
|
2982
2807
|
class ColumnModel extends GarbageCollector {
|
|
2983
2808
|
columnId;
|
|
2984
|
-
order;
|
|
2985
2809
|
textPropertiesProvider;
|
|
2986
2810
|
_columnTextProperties;
|
|
2987
2811
|
_columnHeaderPortalRef;
|
|
@@ -2995,10 +2819,9 @@ class ColumnModel extends GarbageCollector {
|
|
|
2995
2819
|
dasherisedColumnId;
|
|
2996
2820
|
textSearchDelegate = new ColumnTextSearchWrapper();
|
|
2997
2821
|
visible$;
|
|
2998
|
-
constructor(columnId,
|
|
2822
|
+
constructor(columnId, textPropertiesProvider) {
|
|
2999
2823
|
super();
|
|
3000
2824
|
this.columnId = columnId;
|
|
3001
|
-
this.order = order;
|
|
3002
2825
|
this.textPropertiesProvider = textPropertiesProvider;
|
|
3003
2826
|
const { valueOf } = Dsl.disposeWith(this);
|
|
3004
2827
|
this.installHeaderRenderer();
|
|
@@ -3043,14 +2866,6 @@ class ColumnModel extends GarbageCollector {
|
|
|
3043
2866
|
this._columnTextProperties = columnTextProperties;
|
|
3044
2867
|
return this;
|
|
3045
2868
|
}
|
|
3046
|
-
positionAfter(column) {
|
|
3047
|
-
this.order.position(this, { after: column });
|
|
3048
|
-
return this;
|
|
3049
|
-
}
|
|
3050
|
-
positionBefore(column) {
|
|
3051
|
-
this.order.position(this, { before: column });
|
|
3052
|
-
return this;
|
|
3053
|
-
}
|
|
3054
2869
|
getSearchTextFor(row) {
|
|
3055
2870
|
return this.textSearchDelegate.format(row);
|
|
3056
2871
|
}
|
|
@@ -3152,8 +2967,8 @@ __decorate([
|
|
|
3152
2967
|
|
|
3153
2968
|
class CustomTemplateColumnModel extends ColumnModel {
|
|
3154
2969
|
config = new TemplateCellRendererPortalRef();
|
|
3155
|
-
constructor(columnId,
|
|
3156
|
-
super(columnId,
|
|
2970
|
+
constructor(columnId, defaults) {
|
|
2971
|
+
super(columnId, defaults);
|
|
3157
2972
|
this.configureCellRenderer(this.config);
|
|
3158
2973
|
}
|
|
3159
2974
|
setTemplate(templateRef, viewContainer, fillCell, padChild) {
|
|
@@ -3231,17 +3046,12 @@ class AbstractTableComponent extends DisposableComponent {
|
|
|
3231
3046
|
#showHeader_accessor_storage = true;
|
|
3232
3047
|
get showHeader() { return this.#showHeader_accessor_storage; }
|
|
3233
3048
|
set showHeader(value) { this.#showHeader_accessor_storage = value; }
|
|
3234
|
-
#enableScrolling$_accessor_storage = proxify((ValueModel));
|
|
3235
3049
|
/**
|
|
3236
3050
|
* Set to true to enable scrolling. Once enabled the table will have 0 implicit height. You will either
|
|
3237
3051
|
* need to set it explicitly e.g. height: 400px; or by using flex or grid layout to make it fill it's
|
|
3238
3052
|
* containment area.
|
|
3239
3053
|
*/
|
|
3240
|
-
|
|
3241
|
-
set enableScrolling$(value) { this.#enableScrolling$_accessor_storage = value; }
|
|
3242
|
-
#enableScrolling_accessor_storage = false;
|
|
3243
|
-
get enableScrolling() { return this.#enableScrolling_accessor_storage; }
|
|
3244
|
-
set enableScrolling(value) { this.#enableScrolling_accessor_storage = value; }
|
|
3054
|
+
enableScrolling = false;
|
|
3245
3055
|
columns;
|
|
3246
3056
|
columnIds;
|
|
3247
3057
|
columnsById;
|
|
@@ -3260,6 +3070,7 @@ class AbstractTableComponent extends DisposableComponent {
|
|
|
3260
3070
|
super();
|
|
3261
3071
|
this.injector = injector;
|
|
3262
3072
|
const { chain, when } = Dsl.disposeWith(this);
|
|
3073
|
+
this._visibleRows$.setDelegate(this._dataSource$);
|
|
3263
3074
|
when(chain(this._dataSource$).first()).becomesTruthy(it => {
|
|
3264
3075
|
if (it === this.identityOf(it)) {
|
|
3265
3076
|
console.warn("Table model identity function is using reference equality. This can cause lots of table re-rendering", {
|
|
@@ -3278,7 +3089,7 @@ class AbstractTableComponent extends DisposableComponent {
|
|
|
3278
3089
|
if (!model) {
|
|
3279
3090
|
lang$1.illegalState("aup-table tableModel is nil");
|
|
3280
3091
|
}
|
|
3281
|
-
this.columnsById = chain(model.columns
|
|
3092
|
+
this.columnsById = chain(model.columns).indexBy('columnId');
|
|
3282
3093
|
this._dataSource$.setDelegate(model.dataSource$);
|
|
3283
3094
|
model.initialise(this.injector, (row) => this.identityOf(row));
|
|
3284
3095
|
}
|
|
@@ -3295,7 +3106,7 @@ class AbstractTableComponent extends DisposableComponent {
|
|
|
3295
3106
|
}
|
|
3296
3107
|
}
|
|
3297
3108
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AbstractTableComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
3298
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AbstractTableComponent, selector: "aup-abstract-table", inputs: { showHeader$: "showHeader$", showHeader: "showHeader", enableScrolling
|
|
3109
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AbstractTableComponent, selector: "aup-abstract-table", inputs: { showHeader$: "showHeader$", showHeader: "showHeader", enableScrolling: "enableScrolling" }, host: { properties: { "class": "this.baseCssClass" } }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
3299
3110
|
}
|
|
3300
3111
|
__decorate([
|
|
3301
3112
|
Proxify(),
|
|
@@ -3305,14 +3116,6 @@ __decorate([
|
|
|
3305
3116
|
StoreInValueModel(),
|
|
3306
3117
|
__metadata("design:type", Object)
|
|
3307
3118
|
], AbstractTableComponent.prototype, "showHeader", null);
|
|
3308
|
-
__decorate([
|
|
3309
|
-
Proxify(),
|
|
3310
|
-
__metadata("design:type", ValueModel)
|
|
3311
|
-
], AbstractTableComponent.prototype, "enableScrolling$", null);
|
|
3312
|
-
__decorate([
|
|
3313
|
-
StoreInValueModel(),
|
|
3314
|
-
__metadata("design:type", Boolean)
|
|
3315
|
-
], AbstractTableComponent.prototype, "enableScrolling", null);
|
|
3316
3119
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AbstractTableComponent, decorators: [{
|
|
3317
3120
|
type: Component,
|
|
3318
3121
|
args: [{
|
|
@@ -3323,8 +3126,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
3323
3126
|
type: Input
|
|
3324
3127
|
}], showHeader: [{
|
|
3325
3128
|
type: Input
|
|
3326
|
-
}], enableScrolling$: [{
|
|
3327
|
-
type: Input
|
|
3328
3129
|
}], enableScrolling: [{
|
|
3329
3130
|
type: Input
|
|
3330
3131
|
}], baseCssClass: [{
|
|
@@ -3385,8 +3186,6 @@ class EditSession extends GarbageCollector {
|
|
|
3385
3186
|
// console.warn()
|
|
3386
3187
|
// }
|
|
3387
3188
|
this._liveRowValue$.value = produce(this._liveRowValue$.value, draft => {
|
|
3388
|
-
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
3389
|
-
// @ts-ignore
|
|
3390
3189
|
this.form.writeDirtyStateTo(draft);
|
|
3391
3190
|
});
|
|
3392
3191
|
});
|
|
@@ -3489,11 +3288,11 @@ class DefaultCellRendererComponent {
|
|
|
3489
3288
|
return this._value;
|
|
3490
3289
|
}
|
|
3491
3290
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DefaultCellRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3492
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: DefaultCellRendererComponent, selector: "aup-default-cell-renderer", inputs: { value: "value" }, ngImport: i0, template: "<span [innerHTML]=\"value
|
|
3291
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: DefaultCellRendererComponent, selector: "aup-default-cell-renderer", inputs: { value: "value" }, ngImport: i0, template: "<span [innerHTML]=\"value| aupHighlight\"></span>\n", styles: [""], dependencies: [{ kind: "pipe", type: HighlightPipe, name: "aupHighlight" }] });
|
|
3493
3292
|
}
|
|
3494
3293
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DefaultCellRendererComponent, decorators: [{
|
|
3495
3294
|
type: Component,
|
|
3496
|
-
args: [{ selector: "aup-default-cell-renderer", template: "<span [innerHTML]=\"value
|
|
3295
|
+
args: [{ selector: "aup-default-cell-renderer", template: "<span [innerHTML]=\"value| aupHighlight\"></span>\n" }]
|
|
3497
3296
|
}], propDecorators: { value: [{
|
|
3498
3297
|
type: Input
|
|
3499
3298
|
}] } });
|
|
@@ -3509,8 +3308,7 @@ class SelectionHeaderCellComponent extends DisposableComponent {
|
|
|
3509
3308
|
super();
|
|
3510
3309
|
this.selectCommand = Command.create(() => {
|
|
3511
3310
|
this.selectionModel.toggleAllCommand.execute();
|
|
3512
|
-
})
|
|
3513
|
-
.enableWhile(this.selectionModel.toggleAllCommand.enabled$);
|
|
3311
|
+
});
|
|
3514
3312
|
}
|
|
3515
3313
|
isSelected() {
|
|
3516
3314
|
return this.ifMultiSelectionModel(m => m.allSelected$.value, false);
|
|
@@ -3538,7 +3336,7 @@ class SelectionHeaderCellComponent extends DisposableComponent {
|
|
|
3538
3336
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SelectionHeaderCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
3539
3337
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SelectionHeaderCellComponent, selector: "aup-selection-header-cell", providers: [
|
|
3540
3338
|
{ provide: MAT_CHECKBOX_DEFAULT_OPTIONS, useValue: { clickAction: 'noop' } }
|
|
3541
|
-
], usesInheritance: true, ngImport: i0, template: "<mat-checkbox *ngIf=\"isVisible()\"\n (click)=\"handleClick($event)\"\n [checked]=\"isSelected()\"\n [indeterminate]=\"this.isIntermediate()\"\n [color]=\"color\"\n></mat-checkbox>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type:
|
|
3339
|
+
], usesInheritance: true, ngImport: i0, template: "<mat-checkbox *ngIf=\"isVisible()\"\n (click)=\"handleClick($event)\"\n [checked]=\"isSelected()\"\n [indeterminate]=\"this.isIntermediate()\"\n [color]=\"color\"\n></mat-checkbox>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i4$3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }] });
|
|
3542
3340
|
}
|
|
3543
3341
|
__decorate([
|
|
3544
3342
|
Proxify(),
|
|
@@ -3571,7 +3369,7 @@ class SelectionCellComponent extends DisposableComponent {
|
|
|
3571
3369
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SelectionCellComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
3572
3370
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SelectionCellComponent, selector: "aup-selection-cell", inputs: { row: "row" }, providers: [
|
|
3573
3371
|
{ provide: MAT_CHECKBOX_DEFAULT_OPTIONS, useValue: { clickAction: 'noop' } }
|
|
3574
|
-
], usesInheritance: true, ngImport: i0, template: "<mat-checkbox (click)=\"select($event)\" [checked]=\"isSelected()\" [color]=\"color\"></mat-checkbox>\n", styles: [""], dependencies: [{ kind: "component", type:
|
|
3372
|
+
], usesInheritance: true, ngImport: i0, template: "<mat-checkbox (click)=\"select($event)\" [checked]=\"isSelected()\" [color]=\"color\"></mat-checkbox>\n", styles: [""], dependencies: [{ kind: "component", type: i4$3.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex"], exportAs: ["matCheckbox"] }] });
|
|
3575
3373
|
}
|
|
3576
3374
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SelectionCellComponent, decorators: [{
|
|
3577
3375
|
type: Component,
|
|
@@ -3632,14 +3430,25 @@ class Bounds extends Dimension {
|
|
|
3632
3430
|
})(Bounds || (Bounds = {}));
|
|
3633
3431
|
|
|
3634
3432
|
class ResizeAwareComponent extends DisposableComponent {
|
|
3635
|
-
elementRef
|
|
3636
|
-
ngZone
|
|
3637
|
-
|
|
3433
|
+
elementRef;
|
|
3434
|
+
ngZone;
|
|
3435
|
+
_bounds$ = new MutableValueModel(new Bounds(0, 0, 0, 0));
|
|
3436
|
+
constructor(elementRef, ngZone) {
|
|
3437
|
+
super();
|
|
3438
|
+
this.elementRef = elementRef;
|
|
3439
|
+
this.ngZone = ngZone;
|
|
3440
|
+
}
|
|
3638
3441
|
ngAfterViewInit() {
|
|
3639
|
-
this.
|
|
3442
|
+
const element = this.elementRef.nativeElement;
|
|
3443
|
+
const ro = new ResizeObserver((entries, observer) => {
|
|
3444
|
+
this.ngZone.run(() => this._updateBounds());
|
|
3445
|
+
});
|
|
3446
|
+
ro.observe(element);
|
|
3447
|
+
this.onDispose(() => ro.disconnect());
|
|
3448
|
+
setTimeout(() => this._updateBounds());
|
|
3640
3449
|
}
|
|
3641
3450
|
get bounds$() {
|
|
3642
|
-
return this.
|
|
3451
|
+
return this._bounds$.readonly$;
|
|
3643
3452
|
}
|
|
3644
3453
|
get nativeElement() {
|
|
3645
3454
|
return this.elementRef.nativeElement;
|
|
@@ -3649,160 +3458,57 @@ class ResizeAwareComponent extends DisposableComponent {
|
|
|
3649
3458
|
return this.bounds.relativePositionOf(point);
|
|
3650
3459
|
}
|
|
3651
3460
|
get bounds() {
|
|
3652
|
-
return this.
|
|
3461
|
+
return this._bounds$.value;
|
|
3462
|
+
}
|
|
3463
|
+
_updateBounds() {
|
|
3464
|
+
this._bounds$.value = Bounds.ofElement(this.nativeElement);
|
|
3653
3465
|
}
|
|
3654
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeAwareComponent, deps:
|
|
3466
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeAwareComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Directive });
|
|
3655
3467
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: ResizeAwareComponent, usesInheritance: true, ngImport: i0 });
|
|
3656
3468
|
}
|
|
3657
3469
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeAwareComponent, decorators: [{
|
|
3658
3470
|
type: Directive
|
|
3659
|
-
}] });
|
|
3660
|
-
(function (ResizeAwareComponent) {
|
|
3661
|
-
class ResizeTracker extends GarbageCollector {
|
|
3662
|
-
elementRef;
|
|
3663
|
-
ngZone;
|
|
3664
|
-
_bounds$ = new MutableValueModel(new Bounds(0, 0, 0, 0));
|
|
3665
|
-
width$;
|
|
3666
|
-
height$;
|
|
3667
|
-
top$;
|
|
3668
|
-
left$;
|
|
3669
|
-
bottom$;
|
|
3670
|
-
right$;
|
|
3671
|
-
constructor(elementRef, ngZone) {
|
|
3672
|
-
super();
|
|
3673
|
-
this.elementRef = elementRef;
|
|
3674
|
-
this.ngZone = ngZone;
|
|
3675
|
-
const { chain } = Dsl.disposeWith(this);
|
|
3676
|
-
this.width$ = chain(this.bounds$).pluck("width");
|
|
3677
|
-
this.height$ = chain(this.bounds$).pluck("height");
|
|
3678
|
-
this.top$ = chain(this.bounds$).pluck("top");
|
|
3679
|
-
this.left$ = chain(this.bounds$).pluck("left");
|
|
3680
|
-
this.bottom$ = chain.numericValue(this.top$).add(this.height$);
|
|
3681
|
-
this.right$ = chain.numericValue(this.left$).add(this.width$);
|
|
3682
|
-
}
|
|
3683
|
-
notifyViewReady() {
|
|
3684
|
-
const element = this.elementRef.nativeElement;
|
|
3685
|
-
const ro = new ResizeObserver((entries, observer) => {
|
|
3686
|
-
this.ngZone.run(() => this._updateBounds());
|
|
3687
|
-
});
|
|
3688
|
-
ro.observe(element);
|
|
3689
|
-
this.onDispose(() => ro.disconnect());
|
|
3690
|
-
setTimeout(() => this._updateBounds());
|
|
3691
|
-
}
|
|
3692
|
-
get bounds$() {
|
|
3693
|
-
return this._bounds$.readonly$;
|
|
3694
|
-
}
|
|
3695
|
-
get nativeElement() {
|
|
3696
|
-
return this.elementRef.nativeElement;
|
|
3697
|
-
}
|
|
3698
|
-
// TODO: Make this handle body scroll
|
|
3699
|
-
relativePositionOf(point) {
|
|
3700
|
-
return this.bounds.relativePositionOf(point);
|
|
3701
|
-
}
|
|
3702
|
-
get bounds() {
|
|
3703
|
-
return this._bounds$.value;
|
|
3704
|
-
}
|
|
3705
|
-
_updateBounds() {
|
|
3706
|
-
this._bounds$.value = Bounds.ofElement(this.nativeElement);
|
|
3707
|
-
}
|
|
3708
|
-
}
|
|
3709
|
-
ResizeAwareComponent.ResizeTracker = ResizeTracker;
|
|
3710
|
-
})(ResizeAwareComponent || (ResizeAwareComponent = {}));
|
|
3471
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }]; } });
|
|
3711
3472
|
|
|
3712
|
-
|
|
3713
|
-
|
|
3714
|
-
|
|
3715
|
-
if (position) {
|
|
3716
|
-
const keys = Object.keys(position);
|
|
3717
|
-
if (keys.includes("before")) {
|
|
3718
|
-
return position["before"] ? callback.before(position["before"]) : callback.first();
|
|
3719
|
-
}
|
|
3720
|
-
else {
|
|
3721
|
-
return position["after"] ? callback.after(position["after"]) : callback.last();
|
|
3722
|
-
}
|
|
3723
|
-
}
|
|
3724
|
-
else {
|
|
3725
|
-
return callback.last();
|
|
3726
|
-
}
|
|
3727
|
-
}
|
|
3728
|
-
ColumnOrderManager.processPosition = processPosition;
|
|
3729
|
-
})(ColumnOrderManager || (ColumnOrderManager = {}));
|
|
3730
|
-
|
|
3731
|
-
class ColumnRef {
|
|
3732
|
-
column;
|
|
3733
|
-
position;
|
|
3734
|
-
constructor(column, position) {
|
|
3735
|
-
this.column = column;
|
|
3736
|
-
this.position = position;
|
|
3737
|
-
}
|
|
3738
|
-
}
|
|
3739
|
-
class ColumnManager extends GarbageCollector {
|
|
3740
|
-
_columnRefs$ = new MutableListModel();
|
|
3741
|
-
orderedColumnRefs$;
|
|
3742
|
-
_columnsById$;
|
|
3743
|
-
allColumns$;
|
|
3744
|
-
columnVisibilities$ = new WatchList();
|
|
3745
|
-
visibleColumns$;
|
|
3473
|
+
class ColumnListModel extends AbstractComputedListModel {
|
|
3474
|
+
_allColumns$ = new MutableListModel();
|
|
3475
|
+
columnsById$;
|
|
3746
3476
|
constructor() {
|
|
3747
3477
|
super();
|
|
3748
3478
|
const { chain } = Dsl.disposeWith(this);
|
|
3749
|
-
this.
|
|
3750
|
-
this.allColumns$ = this.orderedColumnRefs$.pluck("column");
|
|
3751
|
-
this._columnsById$ = chain(this.allColumns$).indexBy('columnId');
|
|
3752
|
-
this.visibleColumns$ = chain(this.allColumns$).select(it => it.visible$.value, {
|
|
3753
|
-
dependsOn: this.columnVisibilities$
|
|
3754
|
-
});
|
|
3479
|
+
this.columnsById$ = chain(this._allColumns$).indexBy('columnId');
|
|
3755
3480
|
}
|
|
3756
|
-
|
|
3757
|
-
|
|
3758
|
-
const position = this.computePosition(newPosition);
|
|
3759
|
-
this._columnRefs$.replace(target, { with: new ColumnRef(target.column, position) });
|
|
3481
|
+
get allColumns$() {
|
|
3482
|
+
return this._allColumns$.readonly$;
|
|
3760
3483
|
}
|
|
3761
3484
|
getColumn(id) {
|
|
3762
|
-
return this.
|
|
3485
|
+
return this.columnsById$.get(id);
|
|
3763
3486
|
}
|
|
3764
3487
|
hasColumn(id) {
|
|
3765
|
-
return !!this.
|
|
3488
|
+
return !!this.columnsById$.get(id);
|
|
3766
3489
|
}
|
|
3767
3490
|
hasMatchingColumn(row, regex) {
|
|
3768
3491
|
// only search the visible columns
|
|
3769
|
-
return !!this.
|
|
3492
|
+
return !!this.value.find(c => regex.test(c.getSearchTextFor(row)));
|
|
3770
3493
|
}
|
|
3771
|
-
addColumn(column,
|
|
3494
|
+
addColumn(column, index) {
|
|
3772
3495
|
if (this.hasColumn(column.columnId)) {
|
|
3773
3496
|
lang.illegalState(`Column with id=${column.columnId} already exists`);
|
|
3774
3497
|
}
|
|
3775
3498
|
this.registerDisposable(column);
|
|
3776
|
-
this.
|
|
3777
|
-
|
|
3778
|
-
|
|
3779
|
-
|
|
3780
|
-
|
|
3781
|
-
|
|
3782
|
-
return ColumnOrderManager.processPosition(position, {
|
|
3783
|
-
before(col) {
|
|
3784
|
-
const index = q.findIndex(ref => ref.column === col);
|
|
3785
|
-
const beforeCol = q.value[index];
|
|
3786
|
-
const afterCol = index - 1 >= 0 ? q.value[index - 1] : undefined;
|
|
3787
|
-
return generateKeyBetween(afterCol?.position, beforeCol.position);
|
|
3788
|
-
},
|
|
3789
|
-
after(col) {
|
|
3790
|
-
const index = q.findIndex(ref => ref.column === col);
|
|
3791
|
-
const afterCol = q.value[index];
|
|
3792
|
-
const beforeCol = index + 1 < q.length ? q.value[index + 1] : undefined;
|
|
3793
|
-
return generateKeyBetween(afterCol.position, beforeCol?.position);
|
|
3794
|
-
},
|
|
3795
|
-
first() {
|
|
3796
|
-
return generateKeyBetween(null, q.first()?.position);
|
|
3797
|
-
},
|
|
3798
|
-
last() {
|
|
3799
|
-
// add it to the end of the list
|
|
3800
|
-
return generateKeyBetween(q.last()?.position, null);
|
|
3499
|
+
this.runInTransaction(() => {
|
|
3500
|
+
if (!isNil(index)) {
|
|
3501
|
+
this._allColumns$.insert(index, column);
|
|
3502
|
+
}
|
|
3503
|
+
else {
|
|
3504
|
+
this._allColumns$.push(column);
|
|
3801
3505
|
}
|
|
3506
|
+
this.registerDisposable(this.trackSource(column.visible$));
|
|
3802
3507
|
});
|
|
3508
|
+
return column;
|
|
3803
3509
|
}
|
|
3804
3510
|
doComputeValue() {
|
|
3805
|
-
return this.
|
|
3511
|
+
return this._allColumns$.value.filter(c => c.visible$.value);
|
|
3806
3512
|
}
|
|
3807
3513
|
}
|
|
3808
3514
|
|
|
@@ -3836,8 +3542,8 @@ function EnableCellTextSearch(options) {
|
|
|
3836
3542
|
|
|
3837
3543
|
class CustomValueColumnModel extends ColumnModel {
|
|
3838
3544
|
getValue;
|
|
3839
|
-
constructor(columnId,
|
|
3840
|
-
super(columnId,
|
|
3545
|
+
constructor(columnId, defaults, getValue) {
|
|
3546
|
+
super(columnId, defaults);
|
|
3841
3547
|
this.getValue = getValue;
|
|
3842
3548
|
this.cellRenderer(DefaultCellRendererComponent);
|
|
3843
3549
|
}
|
|
@@ -3845,17 +3551,17 @@ class CustomValueColumnModel extends ColumnModel {
|
|
|
3845
3551
|
this.configureColumnTextSearch(EnableCellTextSearch.getFormatter(componentType, () => new ColumnTextSearchFormatter.Null()), row => this.getValue(row));
|
|
3846
3552
|
this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData, firstTime) => {
|
|
3847
3553
|
if (firstTime) {
|
|
3848
|
-
if (isFunction(onComponentInitOrOptions)) {
|
|
3554
|
+
if (isFunction$1(onComponentInitOrOptions)) {
|
|
3849
3555
|
onComponentInitOrOptions(component);
|
|
3850
3556
|
}
|
|
3851
3557
|
else {
|
|
3852
|
-
if (isFunction(onComponentInitOrOptions?.onComponentInit)) {
|
|
3558
|
+
if (isFunction$1(onComponentInitOrOptions?.onComponentInit)) {
|
|
3853
3559
|
onComponentInitOrOptions.onComponentInit(component);
|
|
3854
3560
|
}
|
|
3855
3561
|
}
|
|
3856
3562
|
}
|
|
3857
3563
|
component.value = this.getValue(rowData.row);
|
|
3858
|
-
if (!isFunction(onComponentInitOrOptions) && isFunction(onComponentInitOrOptions?.onRowUpdate)) {
|
|
3564
|
+
if (!isFunction$1(onComponentInitOrOptions) && isFunction$1(onComponentInitOrOptions?.onRowUpdate)) {
|
|
3859
3565
|
onComponentInitOrOptions.onRowUpdate(component, rowData.row);
|
|
3860
3566
|
}
|
|
3861
3567
|
}));
|
|
@@ -3867,8 +3573,8 @@ class CustomValueColumnModel extends ColumnModel {
|
|
|
3867
3573
|
}
|
|
3868
3574
|
|
|
3869
3575
|
class EditorControlColumnModel extends ColumnModel {
|
|
3870
|
-
constructor(columnId,
|
|
3871
|
-
super(columnId,
|
|
3576
|
+
constructor(columnId, saveCommandFactory, defaults) {
|
|
3577
|
+
super(columnId, defaults);
|
|
3872
3578
|
this.cellRenderer(EditRowControlsComponent);
|
|
3873
3579
|
}
|
|
3874
3580
|
cellRenderer(componentType) {
|
|
@@ -3893,8 +3599,8 @@ class ListPropertyColumnModel extends ColumnModel {
|
|
|
3893
3599
|
intermediate.map(v => v?.toString()).join(", ") :
|
|
3894
3600
|
intermediate?.toString();
|
|
3895
3601
|
};
|
|
3896
|
-
constructor(id,
|
|
3897
|
-
super(id,
|
|
3602
|
+
constructor(id, property, defaults) {
|
|
3603
|
+
super(id, defaults);
|
|
3898
3604
|
this.property = property;
|
|
3899
3605
|
this.cellRenderer(DefaultCellRendererComponent);
|
|
3900
3606
|
}
|
|
@@ -3910,7 +3616,7 @@ class ListPropertyColumnModel extends ColumnModel {
|
|
|
3910
3616
|
}
|
|
3911
3617
|
cellEditor(editor, validatorsOrInitialiser, initialiseComponent) {
|
|
3912
3618
|
const validators = Array.isArray(validatorsOrInitialiser) ? validatorsOrInitialiser : undefined;
|
|
3913
|
-
const initialiser = isFunction(validatorsOrInitialiser) ? validatorsOrInitialiser : initialiseComponent;
|
|
3619
|
+
const initialiser = isFunction$1(validatorsOrInitialiser) ? validatorsOrInitialiser : initialiseComponent;
|
|
3914
3620
|
this.configureCellEditor(new CellEditorPortalRef(editor, (component, editSession) => {
|
|
3915
3621
|
const formListModel = editSession.form.pluckList(this.property);
|
|
3916
3622
|
if (validators) {
|
|
@@ -3939,8 +3645,8 @@ class PropertyColumnModel extends ColumnModel {
|
|
|
3939
3645
|
_defaultSearchTextFormatter = (value) => {
|
|
3940
3646
|
return (this._userFormat ?? Functions.identity)(value)?.toString();
|
|
3941
3647
|
};
|
|
3942
|
-
constructor(id,
|
|
3943
|
-
super(id,
|
|
3648
|
+
constructor(id, property, defaults) {
|
|
3649
|
+
super(id, defaults);
|
|
3944
3650
|
this.property = property;
|
|
3945
3651
|
this.cellRenderer(DefaultCellRendererComponent);
|
|
3946
3652
|
}
|
|
@@ -3948,11 +3654,11 @@ class PropertyColumnModel extends ColumnModel {
|
|
|
3948
3654
|
this.configureColumnTextSearch(EnableCellTextSearch.getFormatter(componentType, () => ColumnTextSearchFormatter.forFormatter(this._defaultSearchTextFormatter)), row => row[this.property]);
|
|
3949
3655
|
this.configureCellRenderer(new ComponentCellRendererPortalRef(componentType, (component, rowData, firstTime) => {
|
|
3950
3656
|
if (firstTime) {
|
|
3951
|
-
if (isFunction(onComponentInitOrOptions)) {
|
|
3657
|
+
if (isFunction$1(onComponentInitOrOptions)) {
|
|
3952
3658
|
onComponentInitOrOptions(component);
|
|
3953
3659
|
}
|
|
3954
3660
|
else {
|
|
3955
|
-
if (isFunction(onComponentInitOrOptions?.onComponentInit)) {
|
|
3661
|
+
if (isFunction$1(onComponentInitOrOptions?.onComponentInit)) {
|
|
3956
3662
|
onComponentInitOrOptions.onComponentInit(component);
|
|
3957
3663
|
}
|
|
3958
3664
|
}
|
|
@@ -3977,7 +3683,7 @@ class PropertyColumnModel extends ColumnModel {
|
|
|
3977
3683
|
component[ColumnModel.CELL_RENDERER_COMPONENT_ROW_CACHE] = rowData.row;
|
|
3978
3684
|
let disableEditCallback = false;
|
|
3979
3685
|
if (firstTime) {
|
|
3980
|
-
if (isFunction(options?.onComponentInit)) {
|
|
3686
|
+
if (isFunction$1(options?.onComponentInit)) {
|
|
3981
3687
|
options.onComponentInit(component);
|
|
3982
3688
|
}
|
|
3983
3689
|
// install our edit callback
|
|
@@ -3992,7 +3698,7 @@ class PropertyColumnModel extends ColumnModel {
|
|
|
3992
3698
|
disableEditCallback = true;
|
|
3993
3699
|
component.value = rowData.row[this.property];
|
|
3994
3700
|
disableEditCallback = false;
|
|
3995
|
-
if (!isFunction(options) && isFunction(options?.onRowUpdate)) {
|
|
3701
|
+
if (!isFunction$1(options) && isFunction$1(options?.onRowUpdate)) {
|
|
3996
3702
|
options.onRowUpdate(component, rowData.row);
|
|
3997
3703
|
}
|
|
3998
3704
|
}));
|
|
@@ -4000,7 +3706,7 @@ class PropertyColumnModel extends ColumnModel {
|
|
|
4000
3706
|
}
|
|
4001
3707
|
cellEditor(editor, validatorsOrInitialiser, onComponentInit) {
|
|
4002
3708
|
const validators = Array.isArray(validatorsOrInitialiser) ? validatorsOrInitialiser : undefined;
|
|
4003
|
-
const initialiser = isFunction(validatorsOrInitialiser) ? validatorsOrInitialiser : onComponentInit;
|
|
3709
|
+
const initialiser = isFunction$1(validatorsOrInitialiser) ? validatorsOrInitialiser : onComponentInit;
|
|
4004
3710
|
this.configureCellEditor(new CellEditorPortalRef(editor, (component, editSession) => {
|
|
4005
3711
|
const formValueModel = editSession.form.pluck(this.property);
|
|
4006
3712
|
if (validators) {
|
|
@@ -4027,8 +3733,8 @@ class SelectionColumnModel extends ColumnModel {
|
|
|
4027
3733
|
selectionModel;
|
|
4028
3734
|
_enableHeaderControls = true;
|
|
4029
3735
|
_color = "accent";
|
|
4030
|
-
constructor(columnId,
|
|
4031
|
-
super(columnId,
|
|
3736
|
+
constructor(columnId, defaults, selectionModel) {
|
|
3737
|
+
super(columnId, defaults);
|
|
4032
3738
|
this.selectionModel = selectionModel;
|
|
4033
3739
|
const { chain } = Dsl.disposeWith(this);
|
|
4034
3740
|
this._selectRowOnClick(false);
|
|
@@ -4069,42 +3775,6 @@ class SelectionColumnModel extends ColumnModel {
|
|
|
4069
3775
|
}
|
|
4070
3776
|
}
|
|
4071
3777
|
|
|
4072
|
-
let RowClass$1 = class RowClass {
|
|
4073
|
-
className;
|
|
4074
|
-
matches;
|
|
4075
|
-
constructor(className, matches) {
|
|
4076
|
-
this.className = className;
|
|
4077
|
-
this.matches = matches;
|
|
4078
|
-
}
|
|
4079
|
-
};
|
|
4080
|
-
class FooterRowModel {
|
|
4081
|
-
_rowClasses = [];
|
|
4082
|
-
noPadding() {
|
|
4083
|
-
this.addClass("no-padding");
|
|
4084
|
-
}
|
|
4085
|
-
addClass(className, condition) {
|
|
4086
|
-
this._rowClasses.push(new RowClass$1(className, condition ?? (() => true)));
|
|
4087
|
-
}
|
|
4088
|
-
}
|
|
4089
|
-
(function (FooterRowModel) {
|
|
4090
|
-
class Impl extends FooterRowModel {
|
|
4091
|
-
component;
|
|
4092
|
-
onInit;
|
|
4093
|
-
portal;
|
|
4094
|
-
constructor(component, onInit) {
|
|
4095
|
-
super();
|
|
4096
|
-
this.component = component;
|
|
4097
|
-
this.onInit = onInit;
|
|
4098
|
-
this.portal = new ComponentPortal(component);
|
|
4099
|
-
}
|
|
4100
|
-
getActiveRowClasses() {
|
|
4101
|
-
return this._rowClasses.filter(c => c.matches()).map(c => c.className).join(" ");
|
|
4102
|
-
}
|
|
4103
|
-
}
|
|
4104
|
-
FooterRowModel.Impl = Impl;
|
|
4105
|
-
})(FooterRowModel || (FooterRowModel = {}));
|
|
4106
|
-
ProxyRegistry.registerOneTimeBinding(FooterRowModel);
|
|
4107
|
-
|
|
4108
3778
|
class TableMoreMenuComponent extends DisposableComponent {
|
|
4109
3779
|
value$ = new MutableValueModel();
|
|
4110
3780
|
#value_accessor_storage;
|
|
@@ -4114,15 +3784,13 @@ class TableMoreMenuComponent extends DisposableComponent {
|
|
|
4114
3784
|
popupType$ = new MutableValueModel();
|
|
4115
3785
|
popupComponentPortal$;
|
|
4116
3786
|
_visible$ = this.registerDisposable(new DelegatingValueModel());
|
|
4117
|
-
initialiseCallback;
|
|
4118
3787
|
constructor() {
|
|
4119
3788
|
super();
|
|
4120
3789
|
const { chain } = Dsl.disposeWith(this);
|
|
4121
3790
|
this.popupComponentPortal$ = chain(this.popupType$).map(type => new ComponentPortal(type));
|
|
4122
3791
|
}
|
|
4123
|
-
configurePopupComponentType(popupComponentType
|
|
3792
|
+
configurePopupComponentType(popupComponentType) {
|
|
4124
3793
|
this.popupType$.value = popupComponentType;
|
|
4125
|
-
this.initialiseCallback = configureCallback;
|
|
4126
3794
|
}
|
|
4127
3795
|
// Stops tree selection when clicking the menu button
|
|
4128
3796
|
preventDefault($event) {
|
|
@@ -4133,15 +3801,12 @@ class TableMoreMenuComponent extends DisposableComponent {
|
|
|
4133
3801
|
const component = $event.instance;
|
|
4134
3802
|
component.initialise(this.value$, Command.create(() => this.matMenuTrigger.closeMenu()));
|
|
4135
3803
|
this._visible$.setDelegate(component.visible$);
|
|
4136
|
-
if (this.initialiseCallback) {
|
|
4137
|
-
this.initialiseCallback(component);
|
|
4138
|
-
}
|
|
4139
3804
|
}
|
|
4140
3805
|
get visible$() {
|
|
4141
3806
|
return this._visible$.readonly$;
|
|
4142
3807
|
}
|
|
4143
3808
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableMoreMenuComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4144
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableMoreMenuComponent, selector: "aup-table-more-menu", host: { listeners: { "click": "preventDefault($event)" } }, viewQueries: [{ propertyName: "matMenuTrigger", first: true, predicate: MatMenuTrigger, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <ng-template matMenuContent [cdkPortalOutlet]=\"popupComponentPortal$.value\"\n (attached)=\"initialise($event)\"></ng-template>\n</mat-menu>\n\n<button mat-icon-button [matMenuTriggerFor]=\"menu\" data-cy=\"more-menu-trigger\" *ngIf=\"visible$.value\">\n <aup-icon icon=\"mat:more_vert\"></aup-icon>\n</button>\n", styles: [":host{display:inline;text-align:end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type:
|
|
3809
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableMoreMenuComponent, selector: "aup-table-more-menu", host: { listeners: { "click": "preventDefault($event)" } }, viewQueries: [{ propertyName: "matMenuTrigger", first: true, predicate: MatMenuTrigger, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-menu #menu=\"matMenu\" xPosition=\"before\">\n <ng-template matMenuContent [cdkPortalOutlet]=\"popupComponentPortal$.value\"\n (attached)=\"initialise($event)\"></ng-template>\n</mat-menu>\n\n<button mat-icon-button [matMenuTriggerFor]=\"menu\" data-cy=\"more-menu-trigger\" *ngIf=\"visible$.value\">\n <aup-icon icon=\"mat:more_vert\"></aup-icon>\n</button>\n", styles: [":host{display:inline;text-align:end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2.MatIconButton, selector: "button[mat-icon-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "directive", type: i3$2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }, { kind: "component", type: i4.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { kind: "directive", type: i4.MatMenuContent, selector: "ng-template[matMenuContent]" }, { kind: "directive", type: i4.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", exportAs: ["matMenuTrigger"] }, { kind: "component", type: IconComponent, selector: "aup-icon", inputs: ["icon"] }] });
|
|
4145
3810
|
}
|
|
4146
3811
|
__decorate([
|
|
4147
3812
|
StoreInValueModel(),
|
|
@@ -4170,25 +3835,16 @@ class RowClass {
|
|
|
4170
3835
|
this.matches = matches;
|
|
4171
3836
|
}
|
|
4172
3837
|
}
|
|
4173
|
-
class RowAttribute {
|
|
4174
|
-
attributeName;
|
|
4175
|
-
getValue;
|
|
4176
|
-
constructor(attributeName, getValue) {
|
|
4177
|
-
this.attributeName = attributeName;
|
|
4178
|
-
this.getValue = getValue;
|
|
4179
|
-
}
|
|
4180
|
-
}
|
|
4181
3838
|
class AbstractTableModel extends GarbageCollector {
|
|
4182
3839
|
_dataSource$ = this.registerDisposable(new DelegatingListModel());
|
|
4183
3840
|
_filteredRows$ = this.registerDisposable(new DelegatingListModel());
|
|
4184
3841
|
_visibleRows$ = this.registerDisposable(new DelegatingListModel());
|
|
4185
|
-
|
|
3842
|
+
_columnList = this.registerDisposable(new ColumnListModel());
|
|
4186
3843
|
_editorSessions = new MutableListModel();
|
|
4187
3844
|
_rowsBeingEdited$;
|
|
4188
3845
|
saveCommandFactory;
|
|
4189
3846
|
_editorSessionByRowId;
|
|
4190
3847
|
rowClassNamePredicates = [];
|
|
4191
|
-
rowAttributeGenerators = [];
|
|
4192
3848
|
_columnTextPropertiesLookup;
|
|
4193
3849
|
editing$;
|
|
4194
3850
|
firstEditableColumn$;
|
|
@@ -4205,8 +3861,6 @@ class AbstractTableModel extends GarbageCollector {
|
|
|
4205
3861
|
selectedItems$;
|
|
4206
3862
|
leadSelection$;
|
|
4207
3863
|
hasSelection$;
|
|
4208
|
-
footerRowModel;
|
|
4209
|
-
_viewDependencies = new Set();
|
|
4210
3864
|
constructor() {
|
|
4211
3865
|
super();
|
|
4212
3866
|
const { chain } = Dsl.disposeWith(this);
|
|
@@ -4215,15 +3869,15 @@ class AbstractTableModel extends GarbageCollector {
|
|
|
4215
3869
|
});
|
|
4216
3870
|
this._editorSessionByRowId = chain(this._editorSessions).indexBy("rowId");
|
|
4217
3871
|
this.editing$ = chain(this._editorSessions).count().isGreaterThan(0);
|
|
4218
|
-
this.textSearchPredicate$ = chain(this.visibleColumns
|
|
3872
|
+
this.textSearchPredicate$ = chain(this.visibleColumns).reduce(columns => {
|
|
4219
3873
|
return (row, regex) => {
|
|
4220
3874
|
return (!regex || !!columns.find(c => regex.test(c.getSearchTextFor(row))));
|
|
4221
3875
|
};
|
|
4222
3876
|
});
|
|
4223
|
-
this.firstEditableColumn$ = chain(this.columns
|
|
4224
|
-
this.firstVisibleColumn$ = chain(this.
|
|
4225
|
-
this.lastVisibleColumn$ = chain(this.
|
|
4226
|
-
this.rowSelectionDisabledOnAllColumns$ = chain(this.
|
|
3877
|
+
this.firstEditableColumn$ = chain(this.columns).select(c => c.hasEditorPortal()).first();
|
|
3878
|
+
this.firstVisibleColumn$ = chain(this._columnList).first();
|
|
3879
|
+
this.lastVisibleColumn$ = chain(this._columnList).last();
|
|
3880
|
+
this.rowSelectionDisabledOnAllColumns$ = chain(this._columnList).select(column => column.isRowSelectionEnabled()).count().equals(0);
|
|
4227
3881
|
this.dataSourceEmpty$ = chain(this.dataSource$).isEmpty();
|
|
4228
3882
|
this.selectedItems$ = this.selectionModelProxy.selectedItems$;
|
|
4229
3883
|
this.leadSelection$ = this.selectionModelProxy.leadSelection$;
|
|
@@ -4247,23 +3901,9 @@ class AbstractTableModel extends GarbageCollector {
|
|
|
4247
3901
|
],
|
|
4248
3902
|
parent: injector
|
|
4249
3903
|
});
|
|
4250
|
-
this.columns
|
|
3904
|
+
this.columns.value.forEach(c => c.initialise(customInjector));
|
|
4251
3905
|
this.identityOf = identityOf;
|
|
4252
3906
|
}
|
|
4253
|
-
/**
|
|
4254
|
-
* Adds additional models that will trigger a table repaint. This is required if the table
|
|
4255
|
-
* needs to be redrawn outside of changes to the rows of filters. i.e. some eternal state is used
|
|
4256
|
-
* to assign row classes etc.
|
|
4257
|
-
*
|
|
4258
|
-
* Note: This function must be called before the table is bound to the model.
|
|
4259
|
-
* @param hasValues
|
|
4260
|
-
*/
|
|
4261
|
-
viewStateDependsOn(...hasValues) {
|
|
4262
|
-
hasValues.forEach(it => this._viewDependencies.add(it));
|
|
4263
|
-
}
|
|
4264
|
-
get viewStateDependencies() {
|
|
4265
|
-
return Array.from(this._viewDependencies.values());
|
|
4266
|
-
}
|
|
4267
3907
|
get dataSource$() {
|
|
4268
3908
|
return this._dataSource$.readonly$;
|
|
4269
3909
|
}
|
|
@@ -4314,19 +3954,19 @@ class AbstractTableModel extends GarbageCollector {
|
|
|
4314
3954
|
});
|
|
4315
3955
|
});
|
|
4316
3956
|
}
|
|
4317
|
-
get columns
|
|
4318
|
-
return this.
|
|
3957
|
+
get columns() {
|
|
3958
|
+
return this._columnList.allColumns$;
|
|
4319
3959
|
}
|
|
4320
|
-
get visibleColumns
|
|
4321
|
-
return this.
|
|
3960
|
+
get visibleColumns() {
|
|
3961
|
+
return this._columnList.readonly$;
|
|
4322
3962
|
}
|
|
4323
3963
|
pluck(property, options) {
|
|
4324
3964
|
const columnId = options?.columnId || property.toString();
|
|
4325
|
-
return this.addColumn(new PropertyColumnModel(columnId,
|
|
3965
|
+
return this.addColumn(new PropertyColumnModel(columnId, property, () => this.getColumnTextProperties(columnId)));
|
|
4326
3966
|
}
|
|
4327
3967
|
pluckList(property, options) {
|
|
4328
3968
|
const columnId = options?.columnId || property.toString();
|
|
4329
|
-
return this.addColumn(new ListPropertyColumnModel(columnId,
|
|
3969
|
+
return this.addColumn(new ListPropertyColumnModel(columnId, property, () => this.getColumnTextProperties(columnId)));
|
|
4330
3970
|
}
|
|
4331
3971
|
// TODO: clean this up and assign the selection model on teh table directly.
|
|
4332
3972
|
// tableModel.useSelectionModel(model) and have the seleciton column automatically
|
|
@@ -4335,54 +3975,43 @@ class AbstractTableModel extends GarbageCollector {
|
|
|
4335
3975
|
_addSelectionColumn(selectionModel, visible) {
|
|
4336
3976
|
assert.isNil(this.selectionColumnModel);
|
|
4337
3977
|
const columnId = "selection-column";
|
|
4338
|
-
this.selectionColumnModel = new SelectionColumnModel(columnId,
|
|
3978
|
+
this.selectionColumnModel = new SelectionColumnModel(columnId, () => this.getColumnTextProperties(columnId), this.selectionModelProxy);
|
|
4339
3979
|
this.selectionColumnModel.useSelectionModel(selectionModel);
|
|
4340
3980
|
this.addRowClass("aup-row-selected", row => this.selectionColumnModel.isSelected(row));
|
|
4341
|
-
const selectionColumnModel = this.addColumn(this.selectionColumnModel,
|
|
4342
|
-
if (!isNil(visible)) {
|
|
3981
|
+
const selectionColumnModel = this.addColumn(this.selectionColumnModel, 0);
|
|
3982
|
+
if (!isNil$1(visible)) {
|
|
4343
3983
|
selectionColumnModel.visibleWhile(visible instanceof ValueModel ? visible : ValueModel.constant(visible));
|
|
4344
3984
|
}
|
|
4345
3985
|
return selectionColumnModel;
|
|
4346
3986
|
}
|
|
4347
3987
|
addEditControls(saveCommandFactory, formFactory) {
|
|
4348
3988
|
this.saveCommandFactory = saveCommandFactory;
|
|
4349
|
-
if (isFunction(formFactory)) {
|
|
3989
|
+
if (isFunction$1(formFactory)) {
|
|
4350
3990
|
this._createForm = formFactory;
|
|
4351
3991
|
}
|
|
4352
3992
|
const columnId = "editControls";
|
|
4353
|
-
return this.addColumn(new EditorControlColumnModel(columnId,
|
|
3993
|
+
return this.addColumn(new EditorControlColumnModel(columnId, saveCommandFactory, () => this.getColumnTextProperties(columnId)));
|
|
4354
3994
|
}
|
|
4355
3995
|
addCustomColumn(columnId, dataAccessor) {
|
|
4356
|
-
return this.addColumn(new CustomValueColumnModel(columnId,
|
|
3996
|
+
return this.addColumn(new CustomValueColumnModel(columnId, () => this.getColumnTextProperties(columnId), dataAccessor));
|
|
4357
3997
|
}
|
|
4358
3998
|
addComponentColumn(columnId, component, onComponentInitOrOptions) {
|
|
4359
|
-
return this.addColumn(new CustomValueColumnModel(columnId,
|
|
3999
|
+
return this.addColumn(new CustomValueColumnModel(columnId, () => this.getColumnTextProperties(columnId), row => row)).cellRenderer(component, onComponentInitOrOptions);
|
|
4360
4000
|
}
|
|
4361
|
-
addMoreMenu(componentClass
|
|
4001
|
+
addMoreMenu(componentClass) {
|
|
4362
4002
|
return this.addComponentColumn("more-menu", TableMoreMenuComponent, (component) => {
|
|
4363
|
-
component.configurePopupComponentType(componentClass
|
|
4003
|
+
component.configurePopupComponentType(componentClass);
|
|
4364
4004
|
}).columnTextProperties({
|
|
4365
4005
|
headerText() {
|
|
4366
4006
|
return "";
|
|
4367
4007
|
}
|
|
4368
4008
|
});
|
|
4369
4009
|
}
|
|
4370
|
-
addFooterRow(component, initialiseCallback) {
|
|
4371
|
-
assert.isNil(this.footerRowModel);
|
|
4372
|
-
this.footerRowModel = new FooterRowModel.Impl(component, initialiseCallback);
|
|
4373
|
-
return this.footerRowModel;
|
|
4374
|
-
}
|
|
4375
4010
|
addTemplateColumn(columnId) {
|
|
4376
|
-
return this.addColumn(new CustomTemplateColumnModel(columnId,
|
|
4011
|
+
return this.addColumn(new CustomTemplateColumnModel(columnId, () => this.getColumnTextProperties(columnId)));
|
|
4377
4012
|
}
|
|
4378
|
-
addRowClass(className, predicate
|
|
4013
|
+
addRowClass(className, predicate) {
|
|
4379
4014
|
this.rowClassNamePredicates.push(new RowClass(className, predicate));
|
|
4380
|
-
if (options) {
|
|
4381
|
-
this.viewStateDependsOn(...DependsOnOptions.extract(options));
|
|
4382
|
-
}
|
|
4383
|
-
}
|
|
4384
|
-
addRowAttribute(attributeName, getValue) {
|
|
4385
|
-
this.rowAttributeGenerators.push(new RowAttribute(attributeName, getValue));
|
|
4386
4015
|
}
|
|
4387
4016
|
getRowClasses(row) {
|
|
4388
4017
|
const classNames = [];
|
|
@@ -4393,13 +4022,8 @@ class AbstractTableModel extends GarbageCollector {
|
|
|
4393
4022
|
});
|
|
4394
4023
|
return classNames;
|
|
4395
4024
|
}
|
|
4396
|
-
|
|
4397
|
-
return this.
|
|
4398
|
-
return { ...result, [generator.attributeName]: generator.getValue(row) };
|
|
4399
|
-
}, {});
|
|
4400
|
-
}
|
|
4401
|
-
addColumn(column, position) {
|
|
4402
|
-
return this.columnManager.addColumn(column, position);
|
|
4025
|
+
addColumn(column, index) {
|
|
4026
|
+
return this._columnList.addColumn(column, index);
|
|
4403
4027
|
}
|
|
4404
4028
|
columnTextProperties(columnTextProperties) {
|
|
4405
4029
|
this._columnTextPropertiesLookup = columnTextProperties;
|
|
@@ -4516,7 +4140,7 @@ class TableCellComponent extends DisposableComponent {
|
|
|
4516
4140
|
};
|
|
4517
4141
|
}
|
|
4518
4142
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4519
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableCellComponent, selector: "aup-table-cell", inputs: { row: "row", column: "column", editSession: "editSession", tableModel: "tableModel" }, host: { properties: { "class": "this.defaultClassNames", "class.fillCell": "this.fillCell", "class.padChild": "this.padChild" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!hasActiveEditor()\" [cdkPortalOutlet]=\"getRendererPortal()\" (attached)=\"initialiseRenderer($event)\"></ng-container>\n<ng-container *ngIf=\"hasActiveEditor()\" [cdkPortalOutlet]=\"getEditorPortal()\" (attached)=\"initialiseEditor($event)\"></ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type:
|
|
4143
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableCellComponent, selector: "aup-table-cell", inputs: { row: "row", column: "column", editSession: "editSession", tableModel: "tableModel" }, host: { properties: { "class": "this.defaultClassNames", "class.fillCell": "this.fillCell", "class.padChild": "this.padChild" } }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!hasActiveEditor()\" [cdkPortalOutlet]=\"getRendererPortal()\" (attached)=\"initialiseRenderer($event)\"></ng-container>\n<ng-container *ngIf=\"hasActiveEditor()\" [cdkPortalOutlet]=\"getEditorPortal()\" (attached)=\"initialiseEditor($event)\"></ng-container>\n", styles: [""], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3$2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] });
|
|
4520
4144
|
}
|
|
4521
4145
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableCellComponent, decorators: [{
|
|
4522
4146
|
type: Component,
|
|
@@ -4555,7 +4179,7 @@ class TableHeaderCellComponent {
|
|
|
4555
4179
|
return this[HEADER_CELL_RENDERER_PORTAL];
|
|
4556
4180
|
}
|
|
4557
4181
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableHeaderCellComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4558
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableHeaderCellComponent, selector: "aup-table-header-cell", inputs: { column: "column" }, host: { properties: { "class": "this.defaultClassNames" } }, ngImport: i0, template: "<ng-container [cdkPortalOutlet]=\"getPortal()\" (attached)=\"initialiseHeader($event)\"></ng-container>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch;justify-content:center;height:100%}\n"], dependencies: [{ kind: "directive", type:
|
|
4182
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableHeaderCellComponent, selector: "aup-table-header-cell", inputs: { column: "column" }, host: { properties: { "class": "this.defaultClassNames" } }, ngImport: i0, template: "<ng-container [cdkPortalOutlet]=\"getPortal()\" (attached)=\"initialiseHeader($event)\"></ng-container>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch;justify-content:center;height:100%}\n"], dependencies: [{ kind: "directive", type: i3$2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] });
|
|
4559
4183
|
}
|
|
4560
4184
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableHeaderCellComponent, decorators: [{
|
|
4561
4185
|
type: Component,
|
|
@@ -4567,132 +4191,61 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
4567
4191
|
args: ['class']
|
|
4568
4192
|
}] } });
|
|
4569
4193
|
|
|
4570
|
-
// eslint-disable-next-line @angular-eslint/component-class-suffix
|
|
4571
|
-
class TableFooterRow {
|
|
4572
|
-
row;
|
|
4573
|
-
defaultClassNames = 'aup-footer-row-renderer';
|
|
4574
|
-
get rowClasses() {
|
|
4575
|
-
return this.row.getActiveRowClasses();
|
|
4576
|
-
}
|
|
4577
|
-
initialise($event) {
|
|
4578
|
-
this.row.onInit && this.row.onInit($event.instance);
|
|
4579
|
-
}
|
|
4580
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableFooterRow, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
4581
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableFooterRow, selector: "aup-table-footer-row", inputs: { row: "row" }, host: { properties: { "class": "this.rowClasses" } }, ngImport: i0, template: "<ng-container [cdkPortalOutlet]=\"row.portal\" (attached)=\"initialise($event)\"></ng-container>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch;justify-content:center;height:100%}\n"], dependencies: [{ kind: "directive", type: i1$4.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }] });
|
|
4582
|
-
}
|
|
4583
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableFooterRow, decorators: [{
|
|
4584
|
-
type: Component,
|
|
4585
|
-
args: [{ selector: 'aup-table-footer-row', template: "<ng-container [cdkPortalOutlet]=\"row.portal\" (attached)=\"initialise($event)\"></ng-container>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch;justify-content:center;height:100%}\n"] }]
|
|
4586
|
-
}], propDecorators: { row: [{
|
|
4587
|
-
type: Input
|
|
4588
|
-
}], defaultClassNames: [{
|
|
4589
|
-
type: HostBinding,
|
|
4590
|
-
args: ['class']
|
|
4591
|
-
}], rowClasses: [{
|
|
4592
|
-
type: HostBinding,
|
|
4593
|
-
args: ['class']
|
|
4594
|
-
}] } });
|
|
4595
|
-
|
|
4596
|
-
const AUP_TABLE_VIRTUAL_SCROLL_BUFFER_MULTIPLIER = new InjectionToken("AUP_TABLE_VIRTUAL_SCROLL_BUFFER_MULTIPLIER");
|
|
4597
|
-
class TableRowAttributesDirective {
|
|
4598
|
-
elementRef;
|
|
4599
|
-
aupTableRowAttributes;
|
|
4600
|
-
constructor(elementRef) {
|
|
4601
|
-
this.elementRef = elementRef;
|
|
4602
|
-
}
|
|
4603
|
-
ngOnInit() {
|
|
4604
|
-
for (const attr in this.aupTableRowAttributes) {
|
|
4605
|
-
this.elementRef.nativeElement.setAttribute(attr, this.aupTableRowAttributes[attr]);
|
|
4606
|
-
}
|
|
4607
|
-
}
|
|
4608
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableRowAttributesDirective, deps: [{ token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
|
|
4609
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: TableRowAttributesDirective, selector: "[aupTableRowAttributes]", inputs: { aupTableRowAttributes: "aupTableRowAttributes" }, ngImport: i0 });
|
|
4610
|
-
}
|
|
4611
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableRowAttributesDirective, decorators: [{
|
|
4612
|
-
type: Directive,
|
|
4613
|
-
args: [{
|
|
4614
|
-
selector: "[aupTableRowAttributes]",
|
|
4615
|
-
}]
|
|
4616
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }]; }, propDecorators: { aupTableRowAttributes: [{
|
|
4617
|
-
type: Input
|
|
4618
|
-
}] } });
|
|
4619
4194
|
class TableBodyComponent extends ResizeAwareComponent {
|
|
4620
|
-
bufferMultiplier;
|
|
4621
4195
|
#data$_accessor_storage = proxify((ListModel));
|
|
4622
4196
|
get data$() { return this.#data$_accessor_storage; }
|
|
4623
4197
|
set data$(value) { this.#data$_accessor_storage = value; }
|
|
4624
4198
|
#tableModel_accessor_storage = proxify((AbstractTableModel));
|
|
4625
4199
|
get tableModel() { return this.#tableModel_accessor_storage; }
|
|
4626
4200
|
set tableModel(value) { this.#tableModel_accessor_storage = value; }
|
|
4627
|
-
#footerRow_accessor_storage = proxify((FooterRowModel.Impl));
|
|
4628
|
-
get footerRow() { return this.#footerRow_accessor_storage; }
|
|
4629
|
-
set footerRow(value) { this.#footerRow_accessor_storage = value; }
|
|
4630
4201
|
#showHeader$_accessor_storage = proxify((ValueModel));
|
|
4631
4202
|
get showHeader$() { return this.#showHeader$_accessor_storage; }
|
|
4632
4203
|
set showHeader$(value) { this.#showHeader$_accessor_storage = value; }
|
|
4633
4204
|
#showHeader_accessor_storage = true;
|
|
4634
4205
|
get showHeader() { return this.#showHeader_accessor_storage; }
|
|
4635
4206
|
set showHeader(value) { this.#showHeader_accessor_storage = value; }
|
|
4207
|
+
visibleRowCount = new EventEmitter();
|
|
4636
4208
|
trackBy;
|
|
4637
|
-
|
|
4638
|
-
|
|
4639
|
-
|
|
4640
|
-
|
|
4641
|
-
|
|
4642
|
-
|
|
4643
|
-
scrollViewport;
|
|
4209
|
+
/**
|
|
4210
|
+
* Set to true to enable scrolling. Once enabled the table will have 0 implicit height. You will either
|
|
4211
|
+
* need to set it explicitly e.g. height: 400px; or by using flex or grid layout to make it fill it's
|
|
4212
|
+
* containment area.
|
|
4213
|
+
*/
|
|
4214
|
+
enableScrolling = false;
|
|
4644
4215
|
columns$;
|
|
4645
4216
|
columnIds$;
|
|
4646
4217
|
columnsById$;
|
|
4218
|
+
_visibleRowCount$;
|
|
4647
4219
|
// TODO: support user defined header and row heights via css vars.
|
|
4648
|
-
headerHeight$ = new MutableValueModel(
|
|
4649
|
-
rowHeight$ = new MutableValueModel(
|
|
4220
|
+
headerHeight$ = new MutableValueModel(29);
|
|
4221
|
+
rowHeight$ = new MutableValueModel(40);
|
|
4650
4222
|
baseCssClass = "aup-table-component";
|
|
4651
|
-
|
|
4652
|
-
|
|
4653
|
-
|
|
4654
|
-
constructor(bufferMultiplier = 1) {
|
|
4655
|
-
super();
|
|
4656
|
-
this.bufferMultiplier = bufferMultiplier;
|
|
4657
|
-
const { chain, when, observe } = Dsl.disposeWith(this);
|
|
4223
|
+
constructor(elementRef, ngZone) {
|
|
4224
|
+
super(elementRef, ngZone);
|
|
4225
|
+
const { chain, when } = Dsl.disposeWith(this);
|
|
4658
4226
|
const actualHeaderHeight$ = chain(this.showHeader$).map(show => {
|
|
4659
4227
|
return show ? this.headerHeight$.value : 0;
|
|
4660
4228
|
}, { dependsOn: this.headerHeight$ });
|
|
4661
|
-
|
|
4662
|
-
|
|
4663
|
-
|
|
4664
|
-
|
|
4665
|
-
|
|
4666
|
-
this.
|
|
4667
|
-
|
|
4229
|
+
this._visibleRowCount$ = chain(this.bounds$).map(bounds => {
|
|
4230
|
+
// TODO: this doesn't take into account any css styling adjustments etc. Will investigate if it's an issue.
|
|
4231
|
+
const rawRowCount = (bounds.height - actualHeaderHeight$.value) / this.rowHeight$.value;
|
|
4232
|
+
return rawRowCount < 1 ? 0 : Math.floor(rawRowCount);
|
|
4233
|
+
}, {
|
|
4234
|
+
dependsOn: [actualHeaderHeight$, this.rowHeight$],
|
|
4235
|
+
postponeWhile: chain(this.bounds$).pluckNumeric("height").isLessThan(1)
|
|
4236
|
+
});
|
|
4237
|
+
when(this._visibleRowCount$).changes(visibleRows => {
|
|
4238
|
+
this.visibleRowCount.emit(visibleRows);
|
|
4239
|
+
}, { initialValue: "triggerChangeUnlessNil" });
|
|
4668
4240
|
this.onInit(() => {
|
|
4669
|
-
this.columns$ = chain(this.tableModel.
|
|
4241
|
+
this.columns$ = chain(this.tableModel.columns);
|
|
4670
4242
|
this.columnIds$ = chain(this.columns$).pluck("columnId");
|
|
4671
4243
|
this.columnsById$ = chain(this.columns$).indexBy('columnId');
|
|
4672
4244
|
});
|
|
4673
|
-
// const txo = new TransactionObserver({verbose: false}).onEvent(e => console.log(e.name, e.payload));
|
|
4674
|
-
// txo.observe('this.virtualScrollRowRange$', this.virtualScrollRowRange$);
|
|
4675
|
-
// txo.observe('this.virtualScrollSpacerSize$', this.virtualScrollSpacerSize$);
|
|
4676
|
-
// txo.observe('this.virtualRows$', this.virtualRows$);
|
|
4677
|
-
// txo.observe('this.tableBodyHeight$', this.tableBodyHeight$);
|
|
4678
|
-
// txo.observe('this.virtualScrollActive$', this.virtualScrollActive$);
|
|
4679
|
-
}
|
|
4680
|
-
ngAfterViewInit() {
|
|
4681
|
-
super.ngAfterViewInit();
|
|
4682
|
-
if (this.scrollViewport) {
|
|
4683
|
-
const { observe } = Dsl.disposeWith(this);
|
|
4684
|
-
this.scrollViewport.elementScrolled().subscribe(() => this.notifyScrolled());
|
|
4685
|
-
}
|
|
4686
4245
|
}
|
|
4687
4246
|
get hideHeader() {
|
|
4688
4247
|
return !this.showHeader;
|
|
4689
4248
|
}
|
|
4690
|
-
get headerHeightCssVar() {
|
|
4691
|
-
return `${this.headerHeight$.value}px`;
|
|
4692
|
-
}
|
|
4693
|
-
get rowHeightCssVar() {
|
|
4694
|
-
return `${this.rowHeight$.value}px`;
|
|
4695
|
-
}
|
|
4696
4249
|
isEditing(row) {
|
|
4697
4250
|
return !!this.tableModel.getEditSessionFor(row);
|
|
4698
4251
|
}
|
|
@@ -4717,110 +4270,51 @@ class TableBodyComponent extends ResizeAwareComponent {
|
|
|
4717
4270
|
}
|
|
4718
4271
|
return classes;
|
|
4719
4272
|
}
|
|
4720
|
-
|
|
4721
|
-
|
|
4722
|
-
const tbody = this.elementRef.nativeElement.querySelector("tbody");
|
|
4723
|
-
const bodyHeight = tbody.offsetHeight;
|
|
4724
|
-
if (this.data$.length > 0 && bodyHeight < this.rowHeight$.value) {
|
|
4725
|
-
// Hacks to get our virtual scroll to repaint
|
|
4726
|
-
// Logger.get(this).log(`rowCount=${this.data$.length}, bodyHeight=${bodyHeight} -> virtual table not rendering, triggering resize to force repaint`)
|
|
4727
|
-
window.dispatchEvent(new Event('resize'));
|
|
4728
|
-
if (waitMillis < 500) {
|
|
4729
|
-
this.scheduleTableHeightCheck(waitMillis + 50);
|
|
4730
|
-
}
|
|
4731
|
-
}
|
|
4732
|
-
}, waitMillis);
|
|
4733
|
-
}
|
|
4734
|
-
notifyScrolled() {
|
|
4735
|
-
this.virtualScrollActive$.value = true;
|
|
4736
|
-
this.clearScrollTimeout();
|
|
4737
|
-
this.scrollTimeout = setTimeout(() => {
|
|
4738
|
-
return this.virtualScrollActive$.value = false;
|
|
4739
|
-
}, 200);
|
|
4740
|
-
}
|
|
4741
|
-
clearScrollTimeout() {
|
|
4742
|
-
if (this.scrollTimeout) {
|
|
4743
|
-
clearTimeout(this.scrollTimeout);
|
|
4744
|
-
}
|
|
4745
|
-
}
|
|
4746
|
-
initialiseFooter($event) {
|
|
4747
|
-
const portalRef = $event;
|
|
4748
|
-
this.footerRow.onInit(portalRef.instance);
|
|
4749
|
-
}
|
|
4750
|
-
Proxify = Proxify;
|
|
4751
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableBodyComponent, deps: [{ token: AUP_TABLE_VIRTUAL_SCROLL_BUFFER_MULTIPLIER, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
4752
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableBodyComponent, selector: "aup-table-body", inputs: { data$: "data$", tableModel: "tableModel", footerRow: "footerRow", showHeader$: "showHeader$", showHeader: "showHeader", trackBy: "trackBy", scrollMode$: "scrollMode$", scrollMode: "scrollMode" }, host: { properties: { "attr.scrollMode": "this.scrollMode", "class": "this.baseCssClass", "class.hide-header": "this.hideHeader", "style.--aup-table-header-height": "this.headerHeightCssVar", "style.--aup-table-row-height": "this.rowHeightCssVar" } }, viewQueries: [{ propertyName: "scrollViewport", first: true, predicate: CdkVirtualScrollViewport, descendants: true }], usesInheritance: true, ngImport: i0, template: "\n<div class=\"classic-scroll-container\" *ngIf=\"scrollMode$.value !== 'virtual'\">\n <table mat-table [dataSource]=\"data$.value\" [trackBy]=\"trackBy\" [multiTemplateDataRows]>\n\n <ng-container *ngFor=\"let column of columns$.value; index as index; first as first; last as last\"\n matColumnDef=\"{{column.columnId}}\">\n <th mat-header-cell *matHeaderCellDef [class.flex]=\"column.isFlex()\" [class.hide]=\"!column.isVisible()\">\n <aup-table-header-cell [column]=\"$any(column)\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-header-cell>\n </th>\n <td mat-cell *matCellDef=\"let row\" (click)=\"notifyCellClicked(column, row)\"\n [class.enable-cursor]=\"tableModel.isCursorEnabled(column)\"\n [class.flex]=\"column.isFlex()\"\n [class.hide]=\"!column.isVisible()\"\n >\n <aup-table-cell [column]=\"$any(column)\"\n [row]=\"row\"\n [tableModel]=\"$any(tableModel)\"\n [editSession]=\"$any(tableModel.getEditSessionFor(row))\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-cell>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnIds$.value; sticky: true\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: columnIds$.value; let i = index\"\n [ngClass]=\"tableModel.getRowClasses(row)\"\n [class.enable-hover]=\"tableModel.isHoverEnabled()\"\n [aupTableRowAttributes]=\"tableModel.getRowAttributes(row)\"\n [attr.aup-row-id]=\"trackBy(i, row)\"\n ></tr>\n\n <ng-container matColumnDef=\"sticky-footer\" *ngIf=\"Proxify.hasTarget(footerRow)\">\n <td mat-footer-cell *matFooterCellDef [attr.colspan]=\"columns$.length\" [ngClass]=\"'footer-cell'\">\n <aup-table-footer-row [row]=\"$any(footerRow)\"></aup-table-footer-row>\n </td>\n <tr mat-footer-row *matFooterRowDef=\"['sticky-footer']; sticky: true\"></tr>\n </ng-container>\n\n </table>\n</div>\n\n<cdk-virtual-scroll-viewport *ngIf=\"scrollMode$.value === 'virtual'\"\n [tvsItemSize]=\"rowHeight$.value\"\n [headerHeight]=\"headerHeight$.value\"\n [bufferMultiplier]=\"bufferMultiplier\"\n>\n <table mat-table [dataSource]=\"virtualScrollDataSource\" [trackBy]=\"trackBy\">\n\n <ng-container *ngFor=\"let column of columns$.value; index as index; first as first; last as last\"\n matColumnDef=\"{{column.columnId}}\">\n <th mat-header-cell *matHeaderCellDef [class.flex]=\"column.isFlex()\" [class.hide]=\"!column.isVisible()\">\n <aup-table-header-cell [column]=\"column\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-header-cell>\n </th>\n <td mat-cell *matCellDef=\"let row\" (click)=\"notifyCellClicked(column, row)\"\n [class.enable-cursor]=\"tableModel.isCursorEnabled(column)\"\n [class.flex]=\"column.isFlex()\"\n [class.hide]=\"!column.isVisible()\"\n >\n <aup-table-cell [column]=\"$any(column)\"\n [row]=\"row\"\n [tableModel]=\"$any(tableModel)\"\n [editSession]=\"$any(tableModel.getEditSessionFor(row))\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-cell>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnIds$.value; sticky: true\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: columnIds$.value; let i = index\"\n [ngClass]=\"tableModel.getRowClasses(row)\"\n [class.enable-hover]=\"tableModel.isHoverEnabled()\"\n [aupTableRowAttributes]=\"tableModel.getRowAttributes(row)\"\n [attr.aup-row-id]=\"trackBy(i, row)\"\n ></tr>\n\n<!-- Layout doesn't work yet - probably needs fixed footer row height -->\n<!-- <ng-container matColumnDef=\"sticky-footer\" *ngIf=\"tableModel.footerRowPortalRef\">-->\n<!-- <td mat-footer-cell *matFooterCellDef [attr.colspan]=\"columns$.length\">-->\n<!-- <ng-container [cdkPortalOutlet]=\"tableModel.footerRowPortalRef.portal\" (attached)=\"initialiseFooter($event)\"></ng-container>-->\n<!-- </td>-->\n<!-- <tr mat-footer-row *matFooterRowDef=\"['sticky-footer']; sticky: true\"></tr>-->\n<!-- </ng-container>-->\n\n\n </table>\n</cdk-virtual-scroll-viewport>\n\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}:host table{width:100%}:host[scrollMode=virtual] cdk-virtual-scroll-viewport{flex:1}:host[scrollMode=virtual] table th{height:var(--aup-table-header-height);max-height:var(--aup-table-header-height);min-height:var(--aup-table-header-height)}:host[scrollMode=virtual] table td{height:var(--aup-table-row-height);max-height:var(--aup-table-row-height);min-height:var(--aup-table-row-height)}:host[scrollMode=classic]{min-height:0}:host[scrollMode=classic] .classic-scroll-container{flex:1;flex-basis:0;overflow-y:auto;display:flex;flex-direction:column;align-items:stretch}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$6.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$6.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$6.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$6.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$6.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$6.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$6.MatFooterCellDef, selector: "[matFooterCellDef]" }, { kind: "directive", type: i2$6.MatFooterRowDef, selector: "[matFooterRowDef]", inputs: ["matFooterRowDef", "matFooterRowDefSticky"] }, { kind: "directive", type: i2$6.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$6.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "directive", type: i2$6.MatFooterCell, selector: "mat-footer-cell, td[mat-footer-cell]" }, { kind: "component", type: i2$6.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$6.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: i2$6.MatFooterRow, selector: "mat-footer-row, tr[mat-footer-row]", exportAs: ["matFooterRow"] }, { kind: "component", type: i1$2.CdkVirtualScrollViewport, selector: "cdk-virtual-scroll-viewport", inputs: ["orientation", "appendOnly"], outputs: ["scrolledIndexChange"] }, { kind: "directive", type: i4$4.TableItemSizeDirective, selector: "cdk-virtual-scroll-viewport[tvsItemSize]", inputs: ["tvsItemSize", "headerEnabled", "headerHeight", "footerEnabled", "footerHeight", "bufferMultiplier"] }, { kind: "directive", type: TableRowAttributesDirective, selector: "[aupTableRowAttributes]", inputs: ["aupTableRowAttributes"] }, { kind: "component", type: TableCellComponent, selector: "aup-table-cell", inputs: ["row", "column", "editSession", "tableModel"] }, { kind: "component", type: TableHeaderCellComponent, selector: "aup-table-header-cell", inputs: ["column"] }, { kind: "component", type: TableFooterRow, selector: "aup-table-footer-row", inputs: ["row"] }] });
|
|
4273
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableBodyComponent, deps: [{ token: i0.ElementRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
|
|
4274
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableBodyComponent, selector: "aup-table-body", inputs: { data$: "data$", tableModel: "tableModel", showHeader$: "showHeader$", showHeader: "showHeader", trackBy: "trackBy", enableScrolling: "enableScrolling" }, outputs: { visibleRowCount: "visibleRowCount" }, host: { properties: { "class.enable-scrolling": "this.enableScrolling", "class": "this.baseCssClass", "class.hide-header": "this.hideHeader" } }, usesInheritance: true, ngImport: i0, template: "<div class=\"scroll-container\">\n <table mat-table [dataSource]=\"data$.value\" [trackBy]=\"trackBy\">\n\n <ng-container *ngFor=\"let column of columns$.value; index as index; first as first; last as last\"\n matColumnDef=\"{{column.columnId}}\">\n <th mat-header-cell *matHeaderCellDef [class.flex]=\"column.isFlex()\" [class.hide]=\"!column.isVisible()\">\n <aup-table-header-cell [column]=\"column\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-header-cell>\n </th>\n <td mat-cell *matCellDef=\"let row\" (click)=\"notifyCellClicked(column, row)\"\n [class.enable-cursor]=\"tableModel.isCursorEnabled(column)\"\n [class.flex]=\"column.isFlex()\"\n [class.hide]=\"!column.isVisible()\"\n >\n <aup-table-cell [column]=\"column\"\n [row]=\"row\"\n [tableModel]=\"tableModel\"\n [editSession]=\"tableModel.getEditSessionFor(row)\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-cell>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnIds$.value; sticky: true\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: columnIds$.value; let i = index\"\n [ngClass]=\"tableModel.getRowClasses(row)\"\n [class.enable-hover]=\"tableModel.isHoverEnabled()\"\n [attr.aup-row-id]=\"trackBy(i, row)\"\n ></tr>\n\n </table>\n</div>\n\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}:host table{width:100%}:host.enable-scrolling{min-height:0}:host.enable-scrolling .scroll-container{flex:1;flex-basis:0;overflow-y:auto;display:flex;flex-direction:column;align-items:stretch}\n"], dependencies: [{ kind: "directive", type: i1$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i2$6.MatTable, selector: "mat-table, table[mat-table]", exportAs: ["matTable"] }, { kind: "directive", type: i2$6.MatHeaderCellDef, selector: "[matHeaderCellDef]" }, { kind: "directive", type: i2$6.MatHeaderRowDef, selector: "[matHeaderRowDef]", inputs: ["matHeaderRowDef", "matHeaderRowDefSticky"] }, { kind: "directive", type: i2$6.MatColumnDef, selector: "[matColumnDef]", inputs: ["sticky", "matColumnDef"] }, { kind: "directive", type: i2$6.MatCellDef, selector: "[matCellDef]" }, { kind: "directive", type: i2$6.MatRowDef, selector: "[matRowDef]", inputs: ["matRowDefColumns", "matRowDefWhen"] }, { kind: "directive", type: i2$6.MatHeaderCell, selector: "mat-header-cell, th[mat-header-cell]" }, { kind: "directive", type: i2$6.MatCell, selector: "mat-cell, td[mat-cell]" }, { kind: "component", type: i2$6.MatHeaderRow, selector: "mat-header-row, tr[mat-header-row]", exportAs: ["matHeaderRow"] }, { kind: "component", type: i2$6.MatRow, selector: "mat-row, tr[mat-row]", exportAs: ["matRow"] }, { kind: "component", type: TableCellComponent, selector: "aup-table-cell", inputs: ["row", "column", "editSession", "tableModel"] }, { kind: "component", type: TableHeaderCellComponent, selector: "aup-table-header-cell", inputs: ["column"] }] });
|
|
4753
4275
|
}
|
|
4754
4276
|
__decorate([
|
|
4755
4277
|
Proxify(),
|
|
4756
|
-
__metadata("design:type",
|
|
4278
|
+
__metadata("design:type", Object)
|
|
4757
4279
|
], TableBodyComponent.prototype, "data$", null);
|
|
4758
4280
|
__decorate([
|
|
4759
4281
|
Proxify(),
|
|
4760
|
-
__metadata("design:type",
|
|
4282
|
+
__metadata("design:type", Object)
|
|
4761
4283
|
], TableBodyComponent.prototype, "tableModel", null);
|
|
4762
4284
|
__decorate([
|
|
4763
4285
|
Proxify(),
|
|
4764
|
-
__metadata("design:type",
|
|
4765
|
-
], TableBodyComponent.prototype, "footerRow", null);
|
|
4766
|
-
__decorate([
|
|
4767
|
-
Proxify(),
|
|
4768
|
-
__metadata("design:type", ValueModel)
|
|
4286
|
+
__metadata("design:type", Object)
|
|
4769
4287
|
], TableBodyComponent.prototype, "showHeader$", null);
|
|
4770
4288
|
__decorate([
|
|
4771
4289
|
StoreInValueModel(),
|
|
4772
4290
|
__metadata("design:type", Object)
|
|
4773
4291
|
], TableBodyComponent.prototype, "showHeader", null);
|
|
4774
|
-
__decorate([
|
|
4775
|
-
Proxify(),
|
|
4776
|
-
__metadata("design:type", ValueModel)
|
|
4777
|
-
], TableBodyComponent.prototype, "scrollMode$", null);
|
|
4778
|
-
__decorate([
|
|
4779
|
-
StoreInValueModel(),
|
|
4780
|
-
__metadata("design:type", String)
|
|
4781
|
-
], TableBodyComponent.prototype, "scrollMode", null);
|
|
4782
4292
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableBodyComponent, decorators: [{
|
|
4783
4293
|
type: Component,
|
|
4784
|
-
args: [{ selector: "aup-table-body", template: "
|
|
4785
|
-
}], ctorParameters: function () { return [{ type:
|
|
4786
|
-
type: Inject,
|
|
4787
|
-
args: [AUP_TABLE_VIRTUAL_SCROLL_BUFFER_MULTIPLIER]
|
|
4788
|
-
}, {
|
|
4789
|
-
type: Optional
|
|
4790
|
-
}] }]; }, propDecorators: { data$: [{
|
|
4294
|
+
args: [{ selector: "aup-table-body", template: "<div class=\"scroll-container\">\n <table mat-table [dataSource]=\"data$.value\" [trackBy]=\"trackBy\">\n\n <ng-container *ngFor=\"let column of columns$.value; index as index; first as first; last as last\"\n matColumnDef=\"{{column.columnId}}\">\n <th mat-header-cell *matHeaderCellDef [class.flex]=\"column.isFlex()\" [class.hide]=\"!column.isVisible()\">\n <aup-table-header-cell [column]=\"column\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-header-cell>\n </th>\n <td mat-cell *matCellDef=\"let row\" (click)=\"notifyCellClicked(column, row)\"\n [class.enable-cursor]=\"tableModel.isCursorEnabled(column)\"\n [class.flex]=\"column.isFlex()\"\n [class.hide]=\"!column.isVisible()\"\n >\n <aup-table-cell [column]=\"column\"\n [row]=\"row\"\n [tableModel]=\"tableModel\"\n [editSession]=\"tableModel.getEditSessionFor(row)\"\n [attr.column-index]=\"index\"\n [attr.column-id]=\"column.columnId\"\n [class]=\"getColumnClasses(column.columnId)\"\n ></aup-table-cell>\n </td>\n </ng-container>\n\n <tr mat-header-row *matHeaderRowDef=\"columnIds$.value; sticky: true\"></tr>\n <tr mat-row *matRowDef=\"let row; columns: columnIds$.value; let i = index\"\n [ngClass]=\"tableModel.getRowClasses(row)\"\n [class.enable-hover]=\"tableModel.isHoverEnabled()\"\n [attr.aup-row-id]=\"trackBy(i, row)\"\n ></tr>\n\n </table>\n</div>\n\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}:host table{width:100%}:host.enable-scrolling{min-height:0}:host.enable-scrolling .scroll-container{flex:1;flex-basis:0;overflow-y:auto;display:flex;flex-direction:column;align-items:stretch}\n"] }]
|
|
4295
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.NgZone }]; }, propDecorators: { data$: [{
|
|
4791
4296
|
type: Input
|
|
4792
4297
|
}], tableModel: [{
|
|
4793
4298
|
type: Input
|
|
4794
|
-
}], footerRow: [{
|
|
4795
|
-
type: Input
|
|
4796
4299
|
}], showHeader$: [{
|
|
4797
4300
|
type: Input
|
|
4798
4301
|
}], showHeader: [{
|
|
4799
4302
|
type: Input
|
|
4303
|
+
}], visibleRowCount: [{
|
|
4304
|
+
type: Output
|
|
4800
4305
|
}], trackBy: [{
|
|
4801
4306
|
type: Input
|
|
4802
|
-
}],
|
|
4803
|
-
type: Input
|
|
4804
|
-
}], scrollMode: [{
|
|
4307
|
+
}], enableScrolling: [{
|
|
4805
4308
|
type: Input
|
|
4806
4309
|
}, {
|
|
4807
4310
|
type: HostBinding,
|
|
4808
|
-
args: ["
|
|
4809
|
-
}], scrollViewport: [{
|
|
4810
|
-
type: ViewChild,
|
|
4811
|
-
args: [CdkVirtualScrollViewport]
|
|
4311
|
+
args: ["class.enable-scrolling"]
|
|
4812
4312
|
}], baseCssClass: [{
|
|
4813
4313
|
type: HostBinding,
|
|
4814
4314
|
args: ["class"]
|
|
4815
4315
|
}], hideHeader: [{
|
|
4816
4316
|
type: HostBinding,
|
|
4817
4317
|
args: ["class.hide-header"]
|
|
4818
|
-
}], headerHeightCssVar: [{
|
|
4819
|
-
type: HostBinding,
|
|
4820
|
-
args: ["style.--aup-table-header-height"]
|
|
4821
|
-
}], rowHeightCssVar: [{
|
|
4822
|
-
type: HostBinding,
|
|
4823
|
-
args: ["style.--aup-table-row-height"]
|
|
4824
4318
|
}] } });
|
|
4825
4319
|
|
|
4826
4320
|
class TableMoreMenuPopupComponent extends DisposableComponent {
|
|
@@ -4941,10 +4435,8 @@ class TableFilterModel extends GarbageCollector {
|
|
|
4941
4435
|
this.useSearchText(options.searchText$);
|
|
4942
4436
|
this.useRowPredicate(options.predicate$);
|
|
4943
4437
|
const { chain } = Dsl.disposeWith(this);
|
|
4944
|
-
const textSearchRegex$ = chain(this._searchText$)
|
|
4945
|
-
|
|
4946
|
-
.map(text => {
|
|
4947
|
-
return isEmpty(text) ? undefined : new RegExp(escapeStringRegexp(text), "i");
|
|
4438
|
+
const textSearchRegex$ = chain(this._searchText$).map(text => {
|
|
4439
|
+
return isEmpty$1(text) ? undefined : new RegExp(escapeStringRegexp(text), "i");
|
|
4948
4440
|
}, { allowNil: true });
|
|
4949
4441
|
this._rowPredicate = chain(this._rowPredicate$)
|
|
4950
4442
|
.map(predicate => {
|
|
@@ -5152,30 +4644,31 @@ class TableComponent extends AbstractTableComponent {
|
|
|
5152
4644
|
#filterModel_accessor_storage = proxify((TableFilterModel));
|
|
5153
4645
|
get filterModel() { return this.#filterModel_accessor_storage; }
|
|
5154
4646
|
set filterModel(value) { this.#filterModel_accessor_storage = value; }
|
|
5155
|
-
|
|
5156
|
-
|
|
5157
|
-
|
|
5158
|
-
|
|
5159
|
-
|
|
5160
|
-
|
|
5161
|
-
|
|
5162
|
-
|
|
5163
|
-
|
|
5164
|
-
|
|
5165
|
-
|
|
4647
|
+
#enablePaging$_accessor_storage = proxify((ValueModel));
|
|
4648
|
+
get enablePaging$() { return this.#enablePaging$_accessor_storage; }
|
|
4649
|
+
set enablePaging$(value) { this.#enablePaging$_accessor_storage = value; }
|
|
4650
|
+
#enablePaging_accessor_storage = false;
|
|
4651
|
+
get enablePaging() { return this.#enablePaging_accessor_storage; }
|
|
4652
|
+
set enablePaging(value) { this.#enablePaging_accessor_storage = value; }
|
|
4653
|
+
// enablePaging() {
|
|
4654
|
+
// if (isNil(this.pageController)) {
|
|
4655
|
+
// const pagedListModel = this.registerDisposable(PagedListModel.create(this._visibleRows$.getDelegate(), this._pageSize));
|
|
4656
|
+
// this._visibleRows$.setDelegate(pagedListModel);
|
|
4657
|
+
// this._pageController = pagedListModel.pageController;
|
|
4658
|
+
// }
|
|
4659
|
+
// }
|
|
5166
4660
|
_footerContentAdded = false;
|
|
5167
4661
|
_filteredRows$ = this.registerDisposable(new DelegatingListModel());
|
|
5168
|
-
|
|
4662
|
+
_pageSize = new MutableValueModel();
|
|
4663
|
+
pagedListModel;
|
|
5169
4664
|
constructor(injector) {
|
|
5170
4665
|
super(injector);
|
|
5171
|
-
const {
|
|
5172
|
-
this.
|
|
5173
|
-
|
|
5174
|
-
}, { dependsOn: this.scrollMode$ });
|
|
4666
|
+
const { when } = Dsl.disposeWith(this);
|
|
4667
|
+
this.onDispose(() => this.disposeOfPagedListModel());
|
|
4668
|
+
when(this.enablePaging$).changes(enabled => this.configurePaging(enabled));
|
|
5175
4669
|
}
|
|
5176
4670
|
ngOnInit() {
|
|
5177
4671
|
super.ngOnInit();
|
|
5178
|
-
const { when } = Dsl.disposeWith(this);
|
|
5179
4672
|
if (CanProxy.hasTarget(this.filterModel)) {
|
|
5180
4673
|
this.registerDisposable(this.filterModel.bindToTable(this._dataSource$, this.getModel().textSearchPredicate$));
|
|
5181
4674
|
this.highlightText$.setDelegate(this.filterModel.highlightText$);
|
|
@@ -5184,27 +4677,50 @@ class TableComponent extends AbstractTableComponent {
|
|
|
5184
4677
|
else {
|
|
5185
4678
|
this._filteredRows$.setDelegate(this._dataSource$);
|
|
5186
4679
|
}
|
|
5187
|
-
this.
|
|
5188
|
-
// let users of the model know what the current visible and filtered rows are for selection models and what not
|
|
4680
|
+
this.configurePaging(this.enablePaging$.value);
|
|
5189
4681
|
this.tableModel.bindToTable(this._filteredRows$, this._visibleRows$);
|
|
5190
|
-
when.anyOf(...this.tableModel.viewStateDependencies).changes(() => this.cdr.markForCheck());
|
|
5191
|
-
this.viewStateDependsOn(this._filteredRows$, this.tableModel.visibleColumns$);
|
|
5192
4682
|
}
|
|
5193
4683
|
getModel() {
|
|
5194
4684
|
return this.tableModel;
|
|
5195
4685
|
}
|
|
4686
|
+
get pageController() {
|
|
4687
|
+
// TODO: need to support external page controllers if the paging occurs to our primary data source.
|
|
4688
|
+
return this.pagedListModel.pageController;
|
|
4689
|
+
}
|
|
4690
|
+
configurePaging(enable) {
|
|
4691
|
+
if (enable) {
|
|
4692
|
+
if (!this.pagedListModel) {
|
|
4693
|
+
this.pagedListModel = PagedListModel.create(this._filteredRows$, this._pageSize);
|
|
4694
|
+
}
|
|
4695
|
+
this._visibleRows$.setDelegate(this.pagedListModel);
|
|
4696
|
+
}
|
|
4697
|
+
else {
|
|
4698
|
+
this.disposeOfPagedListModel();
|
|
4699
|
+
this._visibleRows$.setDelegate(this._filteredRows$);
|
|
4700
|
+
}
|
|
4701
|
+
}
|
|
4702
|
+
disposeOfPagedListModel() {
|
|
4703
|
+
if (this.pagedListModel) {
|
|
4704
|
+
this.pagedListModel.dispose();
|
|
4705
|
+
this.pagedListModel = null;
|
|
4706
|
+
}
|
|
4707
|
+
}
|
|
5196
4708
|
footerContentChanged($event) {
|
|
5197
4709
|
// console.log($event);
|
|
5198
4710
|
this._footerContentAdded = true;
|
|
5199
4711
|
}
|
|
4712
|
+
//@Trace()
|
|
4713
|
+
updatePageSize(count) {
|
|
4714
|
+
this._pageSize.value = count;
|
|
4715
|
+
}
|
|
5200
4716
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
5201
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableComponent, selector: "aup-table", inputs: { tableModel: "tableModel", filterModel: "filterModel",
|
|
4717
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TableComponent, selector: "aup-table", inputs: { tableModel: "tableModel", filterModel: "filterModel", enablePaging$: "enablePaging$", enablePaging: "enablePaging" }, providers: [
|
|
5202
4718
|
{ provide: AbstractTableComponent, useExisting: TableComponent }
|
|
5203
|
-
],
|
|
4719
|
+
], usesInheritance: true, ngImport: i0, template: "<aup-table-body [data$]=\"visibleRows$\"\n [tableModel]=\"tableModel\"\n [showHeader$]=\"showHeader$\"\n [enableScrolling]=\"enableScrolling\"\n [trackBy]=\"trackBy\"\n (visibleRowCount)=\"updatePageSize($event)\"\n [aupHighlightTextModel]=\"highlightText$\"\n></aup-table-body>\n<section class=\"table-footer\">\n <div class=\"footer-content\"><ng-content select=\"[footer]\"></ng-content></div>\n <aup-paginator *ngIf=\"enablePaging$.value\" [pageController]=\"pageController\"></aup-paginator>\n</section>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}aup-table-body{flex:1}.table-footer{display:flex;flex-direction:row;align-items:center}.table-footer .footer-content{flex:1}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: HighlightTextModelDirective, selector: "[aupHighlightTextModel]", inputs: ["aupHighlightTextModel"] }, { kind: "component", type: PaginatorComponent, selector: "aup-paginator", inputs: ["pageController"] }, { kind: "component", type: TableBodyComponent, selector: "aup-table-body", inputs: ["data$", "tableModel", "showHeader$", "showHeader", "trackBy", "enableScrolling"], outputs: ["visibleRowCount"] }] });
|
|
5204
4720
|
}
|
|
5205
4721
|
__decorate([
|
|
5206
4722
|
Proxify(),
|
|
5207
|
-
__metadata("design:type",
|
|
4723
|
+
__metadata("design:type", Object)
|
|
5208
4724
|
], TableComponent.prototype, "tableModel", null);
|
|
5209
4725
|
__decorate([
|
|
5210
4726
|
Proxify(),
|
|
@@ -5212,27 +4728,24 @@ __decorate([
|
|
|
5212
4728
|
], TableComponent.prototype, "filterModel", null);
|
|
5213
4729
|
__decorate([
|
|
5214
4730
|
Proxify(),
|
|
5215
|
-
__metadata("design:type",
|
|
5216
|
-
], TableComponent.prototype, "
|
|
4731
|
+
__metadata("design:type", Object)
|
|
4732
|
+
], TableComponent.prototype, "enablePaging$", null);
|
|
5217
4733
|
__decorate([
|
|
5218
4734
|
StoreInValueModel(),
|
|
5219
4735
|
__metadata("design:type", Object)
|
|
5220
|
-
], TableComponent.prototype, "
|
|
4736
|
+
], TableComponent.prototype, "enablePaging", null);
|
|
5221
4737
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TableComponent, decorators: [{
|
|
5222
4738
|
type: Component,
|
|
5223
4739
|
args: [{ selector: 'aup-table', providers: [
|
|
5224
4740
|
{ provide: AbstractTableComponent, useExisting: TableComponent }
|
|
5225
|
-
], template: "<aup-table-body [data$]=\"visibleRows$\"\n [tableModel]=\"
|
|
4741
|
+
], template: "<aup-table-body [data$]=\"visibleRows$\"\n [tableModel]=\"tableModel\"\n [showHeader$]=\"showHeader$\"\n [enableScrolling]=\"enableScrolling\"\n [trackBy]=\"trackBy\"\n (visibleRowCount)=\"updatePageSize($event)\"\n [aupHighlightTextModel]=\"highlightText$\"\n></aup-table-body>\n<section class=\"table-footer\">\n <div class=\"footer-content\"><ng-content select=\"[footer]\"></ng-content></div>\n <aup-paginator *ngIf=\"enablePaging$.value\" [pageController]=\"pageController\"></aup-paginator>\n</section>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}aup-table-body{flex:1}.table-footer{display:flex;flex-direction:row;align-items:center}.table-footer .footer-content{flex:1}\n"] }]
|
|
5226
4742
|
}], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { tableModel: [{
|
|
5227
4743
|
type: Input
|
|
5228
4744
|
}], filterModel: [{
|
|
5229
4745
|
type: Input
|
|
5230
|
-
}],
|
|
5231
|
-
type: ViewChild,
|
|
5232
|
-
args: [TableBodyComponent]
|
|
5233
|
-
}], scrollMode$: [{
|
|
4746
|
+
}], enablePaging$: [{
|
|
5234
4747
|
type: Input
|
|
5235
|
-
}],
|
|
4748
|
+
}], enablePaging: [{
|
|
5236
4749
|
type: Input
|
|
5237
4750
|
}] } });
|
|
5238
4751
|
|
|
@@ -5414,7 +4927,7 @@ var DecoratedTreeNode;
|
|
|
5414
4927
|
}
|
|
5415
4928
|
}
|
|
5416
4929
|
__decorate([
|
|
5417
|
-
|
|
4930
|
+
Memoize(),
|
|
5418
4931
|
__metadata("design:type", Array),
|
|
5419
4932
|
__metadata("design:paramtypes", [])
|
|
5420
4933
|
], Decorator.prototype, "children", null);
|
|
@@ -5467,7 +4980,7 @@ var DecoratedTreeNode;
|
|
|
5467
4980
|
__metadata("design:returntype", Array)
|
|
5468
4981
|
], Decorator.prototype, "ancestors", null);
|
|
5469
4982
|
__decorate([
|
|
5470
|
-
|
|
4983
|
+
Memoize(),
|
|
5471
4984
|
__metadata("design:type", Number),
|
|
5472
4985
|
__metadata("design:paramtypes", [])
|
|
5473
4986
|
], Decorator.prototype, "depth", null);
|
|
@@ -5478,8 +4991,8 @@ class TreeLabelColumnModel extends ColumnModel {
|
|
|
5478
4991
|
expansionModel;
|
|
5479
4992
|
labelFactory = () => undefined;
|
|
5480
4993
|
iconFactory;
|
|
5481
|
-
constructor(columnId,
|
|
5482
|
-
super(columnId,
|
|
4994
|
+
constructor(columnId, textPropertiesProvider, expansionModel) {
|
|
4995
|
+
super(columnId, textPropertiesProvider);
|
|
5483
4996
|
this.expansionModel = expansionModel;
|
|
5484
4997
|
this.cellRenderer(TreeLabelCellRendererComponent);
|
|
5485
4998
|
}
|
|
@@ -5538,7 +5051,7 @@ class TreeTableModel extends AbstractTableModel {
|
|
|
5538
5051
|
get isExpandedPredicate$() {
|
|
5539
5052
|
return this._isExpandedPredicate$.readonly$;
|
|
5540
5053
|
}
|
|
5541
|
-
bindToTable(expansionModel, filteredRows$, visibleRows
|
|
5054
|
+
bindToTable(expansionModel, filteredRows$, visibleRows$) {
|
|
5542
5055
|
this.treeExpansionModel = expansionModel;
|
|
5543
5056
|
// TODO: Move all the expansion model stuff out of here and have things use the expansion model directly
|
|
5544
5057
|
this._isExpandedPredicate$.setDelegate(this.treeExpansionModel.isExpandedPredicate$);
|
|
@@ -5547,7 +5060,7 @@ class TreeTableModel extends AbstractTableModel {
|
|
|
5547
5060
|
}
|
|
5548
5061
|
treeControlColumn(builder) {
|
|
5549
5062
|
const columnId = 'tree-label';
|
|
5550
|
-
const column = new TreeLabelColumnModel(columnId,
|
|
5063
|
+
const column = new TreeLabelColumnModel(columnId, () => this.getColumnTextProperties(columnId), this);
|
|
5551
5064
|
builder(column);
|
|
5552
5065
|
this.addColumn(column);
|
|
5553
5066
|
}
|
|
@@ -5873,15 +5386,11 @@ class TreeTableComponent extends AbstractTableComponent {
|
|
|
5873
5386
|
#expansionModel_accessor_storage = proxify((TreeExpansionModel));
|
|
5874
5387
|
get expansionModel() { return this.#expansionModel_accessor_storage; }
|
|
5875
5388
|
set expansionModel(value) { this.#expansionModel_accessor_storage = value; }
|
|
5876
|
-
scrollMode$;
|
|
5877
5389
|
constructor(injector) {
|
|
5878
5390
|
super(injector);
|
|
5879
|
-
const { chain } = Dsl.disposeWith(this);
|
|
5880
|
-
this.scrollMode$ = chain(this.enableScrolling$).map(enabled => enabled ? "classic" : "none");
|
|
5881
5391
|
}
|
|
5882
5392
|
ngOnInit() {
|
|
5883
5393
|
super.ngOnInit();
|
|
5884
|
-
const { when } = Dsl.disposeWith(this);
|
|
5885
5394
|
// TODO: clean up all this tightly coupled shit, should the expansion model really be separate from the tree model?
|
|
5886
5395
|
if (!this.expansionModel) {
|
|
5887
5396
|
this.expansionModel = new TreeExpansionModel({ disposedWith: this });
|
|
@@ -5890,10 +5399,7 @@ class TreeTableComponent extends AbstractTableComponent {
|
|
|
5890
5399
|
const visibleRows$ = new FlattenedTreeListModel(this._dataSource$, row => this.treeTableModel.childExtractor(row), this.expansionModel);
|
|
5891
5400
|
this._visibleRows$.setDelegate(visibleRows$);
|
|
5892
5401
|
this.expansionModel.bindToTable(this._dataSource$, visibleRows$);
|
|
5893
|
-
this.treeTableModel.bindToTable(this.expansionModel, visibleRows$, this._visibleRows
|
|
5894
|
-
this.viewStateDependsOn(this.treeTableModel.visibleRows$);
|
|
5895
|
-
this.viewStateDependsOn(this.treeTableModel.visibleRows$);
|
|
5896
|
-
when.anyOf(...this.treeTableModel.viewStateDependencies).changes(() => this.cdr.markForCheck());
|
|
5402
|
+
this.treeTableModel.bindToTable(this.expansionModel, visibleRows$, this._visibleRows$);
|
|
5897
5403
|
}
|
|
5898
5404
|
getModel() {
|
|
5899
5405
|
return this.treeTableModel;
|
|
@@ -5901,7 +5407,7 @@ class TreeTableComponent extends AbstractTableComponent {
|
|
|
5901
5407
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TreeTableComponent, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
5902
5408
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TreeTableComponent, selector: "aup-tree-table", inputs: { treeTableModel: "treeTableModel", expansionModel: "expansionModel" }, providers: [
|
|
5903
5409
|
{ provide: AbstractTableComponent, useExisting: TreeTableComponent }
|
|
5904
|
-
], usesInheritance: true, ngImport: i0, template: "<aup-table-body [data$]=\"visibleRows$\"\n [tableModel]=\"treeTableModel\"\n [showHeader$]=\"showHeader$\"\n [
|
|
5410
|
+
], usesInheritance: true, ngImport: i0, template: "<aup-table-body [data$]=\"visibleRows$\"\n [tableModel]=\"treeTableModel\"\n [showHeader$]=\"showHeader$\"\n [enableScrolling]=\"enableScrolling\"\n [aupHighlightTextModel]=\"highlightText$\"\n [trackBy]=\"trackBy\"\n></aup-table-body>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}:host::ng-deep td.mat-mdc-cell{border-top-width:0!important;border-bottom-width:0!important}:host::ng-deep td.mat-column-tree-label{width:1px}:host::ng-deep aup-table-cell-renderer[column-id=tree-label]{padding-left:8px!important}:host::ng-deep aup-tree-label-cell-renderer{flex:1}aup-table-body{flex:1}\n"], dependencies: [{ kind: "directive", type: HighlightTextModelDirective, selector: "[aupHighlightTextModel]", inputs: ["aupHighlightTextModel"] }, { kind: "component", type: TableBodyComponent, selector: "aup-table-body", inputs: ["data$", "tableModel", "showHeader$", "showHeader", "trackBy", "enableScrolling"], outputs: ["visibleRowCount"] }] });
|
|
5905
5411
|
}
|
|
5906
5412
|
__decorate([
|
|
5907
5413
|
Proxify(),
|
|
@@ -5915,7 +5421,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
5915
5421
|
type: Component,
|
|
5916
5422
|
args: [{ selector: 'aup-tree-table', providers: [
|
|
5917
5423
|
{ provide: AbstractTableComponent, useExisting: TreeTableComponent }
|
|
5918
|
-
], template: "<aup-table-body [data$]=\"visibleRows$\"\n [tableModel]=\"treeTableModel\"\n [showHeader$]=\"showHeader$\"\n [
|
|
5424
|
+
], template: "<aup-table-body [data$]=\"visibleRows$\"\n [tableModel]=\"treeTableModel\"\n [showHeader$]=\"showHeader$\"\n [enableScrolling]=\"enableScrolling\"\n [aupHighlightTextModel]=\"highlightText$\"\n [trackBy]=\"trackBy\"\n></aup-table-body>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch}:host::ng-deep td.mat-mdc-cell{border-top-width:0!important;border-bottom-width:0!important}:host::ng-deep td.mat-column-tree-label{width:1px}:host::ng-deep aup-table-cell-renderer[column-id=tree-label]{padding-left:8px!important}:host::ng-deep aup-tree-label-cell-renderer{flex:1}aup-table-body{flex:1}\n"] }]
|
|
5919
5425
|
}], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { treeTableModel: [{
|
|
5920
5426
|
type: Input
|
|
5921
5427
|
}], expansionModel: [{
|
|
@@ -6097,7 +5603,6 @@ class ComponentsModule {
|
|
|
6097
5603
|
FocusableComponent,
|
|
6098
5604
|
CardContainerComponent,
|
|
6099
5605
|
TableComponent,
|
|
6100
|
-
TableRowAttributesDirective,
|
|
6101
5606
|
EditRowControlsComponent,
|
|
6102
5607
|
ColumnTemplateDirective,
|
|
6103
5608
|
DefaultCellRendererComponent,
|
|
@@ -6131,9 +5636,7 @@ class ComponentsModule {
|
|
|
6131
5636
|
MarkdownComponent,
|
|
6132
5637
|
TableBodyComponent,
|
|
6133
5638
|
TableMoreMenuComponent,
|
|
6134
|
-
TableMoreMenuPopupComponent,
|
|
6135
|
-
SearchInputComponent,
|
|
6136
|
-
TableFooterRow], imports: [CommonModule,
|
|
5639
|
+
TableMoreMenuPopupComponent], imports: [CommonModule,
|
|
6137
5640
|
BrowserAnimationsModule,
|
|
6138
5641
|
FormsModule,
|
|
6139
5642
|
MatInputModule,
|
|
@@ -6152,10 +5655,7 @@ class ComponentsModule {
|
|
|
6152
5655
|
MatMenuModule,
|
|
6153
5656
|
MatDividerModule,
|
|
6154
5657
|
MatProgressSpinnerModule,
|
|
6155
|
-
MatProgressBarModule,
|
|
6156
|
-
ScrollingModule,
|
|
6157
|
-
TableVirtualScrollModule], exports: [TableFooterRow,
|
|
6158
|
-
NumberInputComponent,
|
|
5658
|
+
MatProgressBarModule], exports: [NumberInputComponent,
|
|
6159
5659
|
StringInputComponent,
|
|
6160
5660
|
TextInputComponent,
|
|
6161
5661
|
PasswordInputComponent,
|
|
@@ -6193,8 +5693,7 @@ class ComponentsModule {
|
|
|
6193
5693
|
LoadingContainerComponent,
|
|
6194
5694
|
MarkdownComponent,
|
|
6195
5695
|
TableMoreMenuComponent,
|
|
6196
|
-
TableMoreMenuPopupComponent
|
|
6197
|
-
SearchInputComponent] });
|
|
5696
|
+
TableMoreMenuPopupComponent] });
|
|
6198
5697
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ComponentsModule, providers: [
|
|
6199
5698
|
FocusBindingFactory,
|
|
6200
5699
|
MarkdownService
|
|
@@ -6217,9 +5716,7 @@ class ComponentsModule {
|
|
|
6217
5716
|
MatMenuModule,
|
|
6218
5717
|
MatDividerModule,
|
|
6219
5718
|
MatProgressSpinnerModule,
|
|
6220
|
-
MatProgressBarModule
|
|
6221
|
-
ScrollingModule,
|
|
6222
|
-
TableVirtualScrollModule] });
|
|
5719
|
+
MatProgressBarModule] });
|
|
6223
5720
|
}
|
|
6224
5721
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ComponentsModule, decorators: [{
|
|
6225
5722
|
type: NgModule,
|
|
@@ -6244,9 +5741,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
6244
5741
|
MatMenuModule,
|
|
6245
5742
|
MatDividerModule,
|
|
6246
5743
|
MatProgressSpinnerModule,
|
|
6247
|
-
MatProgressBarModule
|
|
6248
|
-
ScrollingModule,
|
|
6249
|
-
TableVirtualScrollModule
|
|
5744
|
+
MatProgressBarModule
|
|
6250
5745
|
],
|
|
6251
5746
|
declarations: [
|
|
6252
5747
|
AbstractInputComponent,
|
|
@@ -6270,7 +5765,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
6270
5765
|
FocusableComponent,
|
|
6271
5766
|
CardContainerComponent,
|
|
6272
5767
|
TableComponent,
|
|
6273
|
-
TableRowAttributesDirective,
|
|
6274
5768
|
EditRowControlsComponent,
|
|
6275
5769
|
ColumnTemplateDirective,
|
|
6276
5770
|
DefaultCellRendererComponent,
|
|
@@ -6305,11 +5799,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
6305
5799
|
TableBodyComponent,
|
|
6306
5800
|
TableMoreMenuComponent,
|
|
6307
5801
|
TableMoreMenuPopupComponent,
|
|
6308
|
-
SearchInputComponent,
|
|
6309
|
-
TableFooterRow
|
|
6310
5802
|
],
|
|
6311
5803
|
exports: [
|
|
6312
|
-
TableFooterRow,
|
|
6313
5804
|
NumberInputComponent,
|
|
6314
5805
|
StringInputComponent,
|
|
6315
5806
|
TextInputComponent,
|
|
@@ -6349,7 +5840,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
6349
5840
|
MarkdownComponent,
|
|
6350
5841
|
TableMoreMenuComponent,
|
|
6351
5842
|
TableMoreMenuPopupComponent,
|
|
6352
|
-
SearchInputComponent
|
|
6353
5843
|
],
|
|
6354
5844
|
providers: [
|
|
6355
5845
|
FocusBindingFactory,
|
|
@@ -6358,77 +5848,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
6358
5848
|
}]
|
|
6359
5849
|
}] });
|
|
6360
5850
|
|
|
6361
|
-
class LoadableComponent extends DisposableComponent {
|
|
6362
|
-
#_loaded$ = new MutableValueModel();
|
|
6363
|
-
#asyncLoadables = [];
|
|
6364
|
-
#awaitedLoadables = [];
|
|
6365
|
-
get loaded$() {
|
|
6366
|
-
return this.#_loaded$.readonly$;
|
|
6367
|
-
}
|
|
6368
|
-
ngOnInit() {
|
|
6369
|
-
super.ngOnInit();
|
|
6370
|
-
this.#asyncLoadables.forEach(it => it.ensureLoaded());
|
|
6371
|
-
if (this.#awaitedLoadables.length > 0) {
|
|
6372
|
-
Promise.all(this.#awaitedLoadables.map(it => {
|
|
6373
|
-
return it.ensureLoaded(); //.then(() => console.log(`${it.constructor.name} loaded`));
|
|
6374
|
-
})).then(() => {
|
|
6375
|
-
this.#_loaded$.value = true;
|
|
6376
|
-
});
|
|
6377
|
-
}
|
|
6378
|
-
else {
|
|
6379
|
-
this.#_loaded$.value = true;
|
|
6380
|
-
}
|
|
6381
|
-
}
|
|
6382
|
-
injectLoadable(token, options) {
|
|
6383
|
-
return this.registerLoadable(inject(token), options);
|
|
6384
|
-
}
|
|
6385
|
-
registerLoadable(loadable, options) {
|
|
6386
|
-
if (this.loaded$.value) {
|
|
6387
|
-
loadable.ensureLoaded();
|
|
6388
|
-
}
|
|
6389
|
-
else {
|
|
6390
|
-
if (!options || options.wait === true) {
|
|
6391
|
-
this.#awaitedLoadables.push(loadable);
|
|
6392
|
-
}
|
|
6393
|
-
else {
|
|
6394
|
-
this.#asyncLoadables.push(loadable);
|
|
6395
|
-
}
|
|
6396
|
-
}
|
|
6397
|
-
return loadable;
|
|
6398
|
-
}
|
|
6399
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: LoadableComponent, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
6400
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: LoadableComponent, usesInheritance: true, ngImport: i0 });
|
|
6401
|
-
}
|
|
6402
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: LoadableComponent, decorators: [{
|
|
6403
|
-
type: Directive
|
|
6404
|
-
}] });
|
|
6405
|
-
|
|
6406
|
-
class TextSearchContext {
|
|
6407
|
-
row;
|
|
6408
|
-
searchText;
|
|
6409
|
-
searchRegex;
|
|
6410
|
-
constructor(row, searchText, searchRegex) {
|
|
6411
|
-
this.row = row;
|
|
6412
|
-
this.searchText = searchText;
|
|
6413
|
-
this.searchRegex = searchRegex;
|
|
6414
|
-
}
|
|
6415
|
-
getOrCreate(type, create) {
|
|
6416
|
-
}
|
|
6417
|
-
matchesText(text) {
|
|
6418
|
-
return this.searchRegex.test(text);
|
|
6419
|
-
}
|
|
6420
|
-
}
|
|
6421
|
-
|
|
6422
|
-
class AbstractCellRenderer extends LoadableComponent {
|
|
6423
|
-
highlightContext = this.inject(HighlightTextModelDirective);
|
|
6424
|
-
constructor() {
|
|
6425
|
-
super();
|
|
6426
|
-
if (this.highlightContext) { // the component might be rendered outside a table
|
|
6427
|
-
this.viewStateDependsOn(this.highlightContext.aupHighlightTextModel);
|
|
6428
|
-
}
|
|
6429
|
-
}
|
|
6430
|
-
}
|
|
6431
|
-
|
|
6432
5851
|
/**
|
|
6433
5852
|
* @file Automatically generated by barrelsby.
|
|
6434
5853
|
*/
|
|
@@ -6455,6 +5874,7 @@ class AbstractCellRenderer extends LoadableComponent {
|
|
|
6455
5874
|
* </aup-activity-actions>
|
|
6456
5875
|
*/
|
|
6457
5876
|
class ActivityActionsComponent extends DisposableComponent {
|
|
5877
|
+
cdr;
|
|
6458
5878
|
confirmCommandComponent;
|
|
6459
5879
|
cancelCommandComponent;
|
|
6460
5880
|
#confirmCommand_accessor_storage = proxify((Command));
|
|
@@ -6483,9 +5903,9 @@ class ActivityActionsComponent extends DisposableComponent {
|
|
|
6483
5903
|
}
|
|
6484
5904
|
layout = ActivityActionsComponent.Layout.BLOCK;
|
|
6485
5905
|
align = ActivityActionsComponent.Align.STRETCH;
|
|
6486
|
-
|
|
6487
|
-
constructor() {
|
|
5906
|
+
constructor(cdr) {
|
|
6488
5907
|
super();
|
|
5908
|
+
this.cdr = cdr;
|
|
6489
5909
|
}
|
|
6490
5910
|
hasConfirmFace() {
|
|
6491
5911
|
return !!this.confirmFace;
|
|
@@ -6504,8 +5924,8 @@ class ActivityActionsComponent extends DisposableComponent {
|
|
|
6504
5924
|
focusCancel() {
|
|
6505
5925
|
this.cancelCommandComponent.requestFocus();
|
|
6506
5926
|
}
|
|
6507
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityActionsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
6508
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: { confirmCommand: "confirmCommand", cancelCommand: "cancelCommand", faces: "faces", confirmFace: "confirmFace", cancelFace: "cancelFace", style: "style", layout: "layout", align: "align"
|
|
5927
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityActionsComponent, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
5928
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: { confirmCommand: "confirmCommand", cancelCommand: "cancelCommand", faces: "faces", confirmFace: "confirmFace", cancelFace: "cancelFace", style: "style", layout: "layout", align: "align" }, host: { properties: { "attr.layout": "this.layout", "attr.align": "this.align" } }, viewQueries: [{ propertyName: "confirmCommandComponent", first: true, predicate: ["confirmCommandComponent"], descendants: true }, { propertyName: "cancelCommandComponent", first: true, predicate: ["cancelCommandComponent"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"content\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"hasConfirmFace()\">\n <aup-command #confirmCommandComponent class=\"confirm\" [command]=\"confirmCommand\" [face]=\"confirmFace\" data-cy=\"confirm-command\"></aup-command>\n</ng-container>\n<ng-container *ngIf=\"hasCancelFace()\">\n <aup-command #cancelCommandComponent class=\"cancel\" [command]=\"cancelCommand\" [face]=\"cancelFace\" data-cy=\"cancel-command\"></aup-command>\n</ng-container>\n", styles: [":host{display:grid;grid-template-rows:auto;align-items:center;justify-content:end;--resolved-activity-actions-gap: var(--activity-actions-gap, 8px)}:host[layout=block][align=start]{grid-template-areas:\"cancel confirm content\";grid-template-columns:auto auto 1fr}:host[layout=block][align=start] .confirm{margin-left:var(--resolved-activity-actions-gap)}:host[layout=block][align=end]{grid-template-areas:\"content cancel confirm\";grid-template-columns:1fr auto auto}:host[layout=block][align=end] .confirm{margin-left:var(--resolved-activity-actions-gap)}:host[layout=block][align=stretch]{grid-template-areas:\"cancel content confirm\";grid-template-columns:auto 1fr auto}:host[layout=inline]{grid-template-areas:\"confirm cancel content\";grid-template-columns:auto auto 1fr}:host[layout=inline] .cancel{margin-left:var(--resolved-activity-actions-gap)}.cancel{grid-area:cancel}.confirm{grid-area:confirm}.content{grid-area:content;text-align:left}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CommandComponent, selector: "aup-command", inputs: ["command", "face$", "face", "busyFace$", "busyFace", "alignFace"] }] });
|
|
6509
5929
|
}
|
|
6510
5930
|
__decorate([
|
|
6511
5931
|
Proxify(),
|
|
@@ -6517,8 +5937,8 @@ __decorate([
|
|
|
6517
5937
|
], ActivityActionsComponent.prototype, "cancelCommand", null);
|
|
6518
5938
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityActionsComponent, decorators: [{
|
|
6519
5939
|
type: Component,
|
|
6520
|
-
args: [{ selector: 'aup-activity-actions', template: "<div class=\"content\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"
|
|
6521
|
-
}], ctorParameters: function () { return []; }, propDecorators: { confirmCommandComponent: [{
|
|
5940
|
+
args: [{ selector: 'aup-activity-actions', template: "<div class=\"content\">\n <ng-content></ng-content>\n</div>\n<ng-container *ngIf=\"hasConfirmFace()\">\n <aup-command #confirmCommandComponent class=\"confirm\" [command]=\"confirmCommand\" [face]=\"confirmFace\" data-cy=\"confirm-command\"></aup-command>\n</ng-container>\n<ng-container *ngIf=\"hasCancelFace()\">\n <aup-command #cancelCommandComponent class=\"cancel\" [command]=\"cancelCommand\" [face]=\"cancelFace\" data-cy=\"cancel-command\"></aup-command>\n</ng-container>\n", styles: [":host{display:grid;grid-template-rows:auto;align-items:center;justify-content:end;--resolved-activity-actions-gap: var(--activity-actions-gap, 8px)}:host[layout=block][align=start]{grid-template-areas:\"cancel confirm content\";grid-template-columns:auto auto 1fr}:host[layout=block][align=start] .confirm{margin-left:var(--resolved-activity-actions-gap)}:host[layout=block][align=end]{grid-template-areas:\"content cancel confirm\";grid-template-columns:1fr auto auto}:host[layout=block][align=end] .confirm{margin-left:var(--resolved-activity-actions-gap)}:host[layout=block][align=stretch]{grid-template-areas:\"cancel content confirm\";grid-template-columns:auto 1fr auto}:host[layout=inline]{grid-template-areas:\"confirm cancel content\";grid-template-columns:auto auto 1fr}:host[layout=inline] .cancel{margin-left:var(--resolved-activity-actions-gap)}.cancel{grid-area:cancel}.confirm{grid-area:confirm}.content{grid-area:content;text-align:left}\n"] }]
|
|
5941
|
+
}], ctorParameters: function () { return [{ type: i0.ChangeDetectorRef }]; }, propDecorators: { confirmCommandComponent: [{
|
|
6522
5942
|
type: ViewChild,
|
|
6523
5943
|
args: ["confirmCommandComponent"]
|
|
6524
5944
|
}], cancelCommandComponent: [{
|
|
@@ -6546,11 +5966,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
6546
5966
|
}, {
|
|
6547
5967
|
type: HostBinding,
|
|
6548
5968
|
args: ['attr.align']
|
|
6549
|
-
}], alignContent: [{
|
|
6550
|
-
type: Input
|
|
6551
|
-
}, {
|
|
6552
|
-
type: HostBinding,
|
|
6553
|
-
args: ['attr.align-content']
|
|
6554
5969
|
}] } });
|
|
6555
5970
|
(function (ActivityActionsComponent) {
|
|
6556
5971
|
ActivityActionsComponent.Layout = Enum({
|
|
@@ -6559,19 +5974,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
6559
5974
|
});
|
|
6560
5975
|
ActivityActionsComponent.Align = Enum({
|
|
6561
5976
|
START: 'start',
|
|
6562
|
-
|
|
6563
|
-
|
|
6564
|
-
});
|
|
6565
|
-
ActivityActionsComponent.AlignContent = Enum({
|
|
6566
|
-
START: 'start',
|
|
6567
|
-
CENTER: 'center',
|
|
6568
|
-
END: 'end'
|
|
5977
|
+
END: 'end',
|
|
5978
|
+
STRETCH: 'stretch'
|
|
6569
5979
|
});
|
|
6570
5980
|
})(ActivityActionsComponent || (ActivityActionsComponent = {}));
|
|
6571
5981
|
|
|
6572
5982
|
const ACTIVITY_DATA = new InjectionToken("InteractionActivityData");
|
|
6573
5983
|
// eslint-disable-next-line @angular-eslint/component-class-suffix
|
|
6574
|
-
class Activity extends
|
|
5984
|
+
class Activity extends DisposableComponent {
|
|
6575
5985
|
activityData = inject(ACTIVITY_DATA);
|
|
6576
5986
|
activityReadyListeners = new EventListenerList();
|
|
6577
5987
|
_busy$ = this.registerDisposable(new DelegatingValueModel().withDefault(false));
|
|
@@ -6626,6 +6036,7 @@ class Activity extends LoadableComponent {
|
|
|
6626
6036
|
notifyActivityReady() {
|
|
6627
6037
|
this.activityReadyListeners.fire(l => l(this));
|
|
6628
6038
|
this._ready$.value = true;
|
|
6039
|
+
console.log("ready");
|
|
6629
6040
|
}
|
|
6630
6041
|
onActivityReady(callback) {
|
|
6631
6042
|
return this.activityReadyListeners.add(callback);
|
|
@@ -6745,7 +6156,7 @@ class AbstractDialogComponent extends Activity {
|
|
|
6745
6156
|
}
|
|
6746
6157
|
}
|
|
6747
6158
|
isDestructive() {
|
|
6748
|
-
return isFunction(this.config['destructive']) && this.config["destructive"]();
|
|
6159
|
+
return isFunction$1(this.config['destructive']) && this.config["destructive"]();
|
|
6749
6160
|
}
|
|
6750
6161
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AbstractDialogComponent, deps: [{ token: ALERT_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
|
|
6751
6162
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AbstractDialogComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
@@ -6762,7 +6173,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
6762
6173
|
|
|
6763
6174
|
class AbstractConfirmDialogComponent extends AbstractDialogComponent {
|
|
6764
6175
|
cancelFace;
|
|
6765
|
-
confirmClass = "aup-confirm-activity";
|
|
6766
6176
|
constructor(config) {
|
|
6767
6177
|
super(config);
|
|
6768
6178
|
this.cancelFace = {
|
|
@@ -6773,7 +6183,7 @@ class AbstractConfirmDialogComponent extends AbstractDialogComponent {
|
|
|
6773
6183
|
});
|
|
6774
6184
|
}
|
|
6775
6185
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AbstractConfirmDialogComponent, deps: [{ token: ALERT_CONFIG }], target: i0.ɵɵFactoryTarget.Component });
|
|
6776
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AbstractConfirmDialogComponent, selector: "ng-component",
|
|
6186
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AbstractConfirmDialogComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
6777
6187
|
}
|
|
6778
6188
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AbstractConfirmDialogComponent, decorators: [{
|
|
6779
6189
|
type: Component,
|
|
@@ -6783,10 +6193,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
6783
6193
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
6784
6194
|
type: Inject,
|
|
6785
6195
|
args: [ALERT_CONFIG]
|
|
6786
|
-
}] }]; }
|
|
6787
|
-
type: HostBinding,
|
|
6788
|
-
args: ["class"]
|
|
6789
|
-
}] } });
|
|
6196
|
+
}] }]; } });
|
|
6790
6197
|
|
|
6791
6198
|
class ActivityBodyComponent extends DisposableComponent {
|
|
6792
6199
|
fullWidth = false;
|
|
@@ -7325,7 +6732,7 @@ const ROUTE_PARAMETER_LIST_KEY = Symbol('place:route:parameters');
|
|
|
7325
6732
|
// return true;
|
|
7326
6733
|
// }
|
|
7327
6734
|
// }
|
|
7328
|
-
class PlaceComponent extends
|
|
6735
|
+
class PlaceComponent extends DisposableComponent {
|
|
7329
6736
|
_placeReadyCallbacks = [];
|
|
7330
6737
|
visitModel = new MutableValueModel();
|
|
7331
6738
|
_inVisitUpdate = new Guard();
|
|
@@ -7382,7 +6789,6 @@ class PlaceComponent extends LoadableComponent {
|
|
|
7382
6789
|
*/
|
|
7383
6790
|
installAndInitialiseBinding(initialVisit, parameterDef) {
|
|
7384
6791
|
const model = this[parameterDef.propertyName];
|
|
7385
|
-
assert.notNil(model);
|
|
7386
6792
|
DebugContext.tag(model, `${this.placeDefinition.component.name}.${parameterDef.propertyName}`);
|
|
7387
6793
|
const binding = this.registerDisposable(new Binding(this.visitModel, model, {
|
|
7388
6794
|
toRight(visit) {
|
|
@@ -7467,7 +6873,7 @@ class PlaceComponent extends LoadableComponent {
|
|
|
7467
6873
|
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: PlaceComponent, usesInheritance: true, ngImport: i0 });
|
|
7468
6874
|
}
|
|
7469
6875
|
__decorate([
|
|
7470
|
-
|
|
6876
|
+
Memoize(),
|
|
7471
6877
|
__metadata("design:type", PlaceDefinition),
|
|
7472
6878
|
__metadata("design:paramtypes", [])
|
|
7473
6879
|
], PlaceComponent.prototype, "placeDefinition", null);
|
|
@@ -7657,7 +7063,7 @@ class Visit {
|
|
|
7657
7063
|
getRouterCommands() {
|
|
7658
7064
|
return this.segments.reduce((result, v) => {
|
|
7659
7065
|
const path = v.placeDefinition.path;
|
|
7660
|
-
return isEmpty(path) ?
|
|
7066
|
+
return isEmpty$1(path) ?
|
|
7661
7067
|
[...result, path] : // Angular doesn't support route params on empty path segments
|
|
7662
7068
|
[...result, path, ...v.createRouterCommands()];
|
|
7663
7069
|
}, []);
|
|
@@ -7673,7 +7079,7 @@ class Visit {
|
|
|
7673
7079
|
}
|
|
7674
7080
|
}
|
|
7675
7081
|
__decorate([
|
|
7676
|
-
Memoize(),
|
|
7082
|
+
Memoize$1(),
|
|
7677
7083
|
__metadata("design:type", Function),
|
|
7678
7084
|
__metadata("design:paramtypes", [PlaceDefinition]),
|
|
7679
7085
|
__metadata("design:returntype", VisitSegment)
|
|
@@ -8054,7 +7460,10 @@ class SynchroniseInteractionContextIdsWithRoute extends NavigationSession {
|
|
|
8054
7460
|
return true;
|
|
8055
7461
|
}
|
|
8056
7462
|
notifyActive() {
|
|
8057
|
-
this
|
|
7463
|
+
// TODO: Do I still need this??
|
|
7464
|
+
setTimeout(() => {
|
|
7465
|
+
this.syncInteractionIdsWithRouter();
|
|
7466
|
+
});
|
|
8058
7467
|
}
|
|
8059
7468
|
// @Trace()
|
|
8060
7469
|
onRouterEnd(event) {
|
|
@@ -8797,7 +8206,7 @@ class ConsolidatedParameterMap {
|
|
|
8797
8206
|
}
|
|
8798
8207
|
}
|
|
8799
8208
|
__decorate([
|
|
8800
|
-
|
|
8209
|
+
Memoize(),
|
|
8801
8210
|
__metadata("design:type", Array),
|
|
8802
8211
|
__metadata("design:paramtypes", [])
|
|
8803
8212
|
], ConsolidatedParameterMap.prototype, "keys", null);
|
|
@@ -8875,7 +8284,7 @@ class UrlSnapshot {
|
|
|
8875
8284
|
return this.getPrimaryUrlSegments().find(s => s.path === placeDef.path);
|
|
8876
8285
|
}
|
|
8877
8286
|
isLastPlaceInUrl(placeDef) {
|
|
8878
|
-
return last(this.getPrimaryUrlSegments()).path === placeDef.path;
|
|
8287
|
+
return last$1(this.getPrimaryUrlSegments()).path === placeDef.path;
|
|
8879
8288
|
}
|
|
8880
8289
|
createVisitSegmentFor(placeDef) {
|
|
8881
8290
|
return new VisitSegment(placeDef, new ConsolidatedParameterMap(this.getPrimaryUrlSegments()));
|
|
@@ -8991,7 +8400,7 @@ class UrlService {
|
|
|
8991
8400
|
back() {
|
|
8992
8401
|
this.angularLocation.back();
|
|
8993
8402
|
}
|
|
8994
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: UrlService, deps: [{ token: i1$
|
|
8403
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: UrlService, deps: [{ token: i1$4.Router }, { token: i1$1.Location }, { token: i1$4.UrlSerializer }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
8995
8404
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: UrlService, providedIn: 'root' });
|
|
8996
8405
|
}
|
|
8997
8406
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: UrlService, decorators: [{
|
|
@@ -8999,7 +8408,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
8999
8408
|
args: [{
|
|
9000
8409
|
providedIn: 'root'
|
|
9001
8410
|
}]
|
|
9002
|
-
}], ctorParameters: function () { return [{ type: i1$
|
|
8411
|
+
}], ctorParameters: function () { return [{ type: i1$4.Router }, { type: i1$1.Location }, { type: i1$4.UrlSerializer }]; } });
|
|
9003
8412
|
|
|
9004
8413
|
// function asArray<T>(item: T | T[]): T[] {
|
|
9005
8414
|
// return Array.isArray(item) ? item : [item];
|
|
@@ -9019,8 +8428,6 @@ class PlaceRouter extends GarbageCollector {
|
|
|
9019
8428
|
routerInteractionAdapter;
|
|
9020
8429
|
sessionFinishedJobs = [];
|
|
9021
8430
|
authService = new PlaceAuthService();
|
|
9022
|
-
_ready$ = this.registerDisposable(new DelegatingValueModel().withDefault(true));
|
|
9023
|
-
ready$ = this._ready$.readonly$;
|
|
9024
8431
|
constructor(angularRouter, angularLocation, interactionService, urlService, placeHistory) {
|
|
9025
8432
|
super();
|
|
9026
8433
|
this.angularRouter = angularRouter;
|
|
@@ -9042,7 +8449,7 @@ class PlaceRouter extends GarbageCollector {
|
|
|
9042
8449
|
});
|
|
9043
8450
|
const { chain } = Dsl.disposeWith(this);
|
|
9044
8451
|
this.navigationInProgress$ = chain(this.navigationSession$).isNotNil();
|
|
9045
|
-
this.interactionSyncInProgress$ = chain(this.navigationSession$).pluck("isInteractionSync")
|
|
8452
|
+
this.interactionSyncInProgress$ = chain(this.navigationSession$).pluck("isInteractionSync");
|
|
9046
8453
|
const idleStateName = chain(this.interactionService.active).map(active => active ? "IdleDuringInteraction" : "Idle");
|
|
9047
8454
|
this.navigationSessionName$ = chain(this.navigationSession$)
|
|
9048
8455
|
.pluck("name")
|
|
@@ -9086,9 +8493,6 @@ class PlaceRouter extends GarbageCollector {
|
|
|
9086
8493
|
// the back button was clicked.
|
|
9087
8494
|
angularLocation.onUrlChange(url => this.onUrlChanged(url));
|
|
9088
8495
|
}
|
|
9089
|
-
postponeRoutingUntil(condition$) {
|
|
9090
|
-
this._ready$.setDelegate(condition$);
|
|
9091
|
-
}
|
|
9092
8496
|
getAuthenticationFailureRedirect(activatedRoute, state) {
|
|
9093
8497
|
return this.authService.getAuthenticationFailureRedirect(activatedRoute, state);
|
|
9094
8498
|
}
|
|
@@ -9104,20 +8508,23 @@ class PlaceRouter extends GarbageCollector {
|
|
|
9104
8508
|
isNavigating() {
|
|
9105
8509
|
return this.navigationInProgress$.value;
|
|
9106
8510
|
}
|
|
9107
|
-
|
|
9108
|
-
const {
|
|
9109
|
-
|
|
9110
|
-
|
|
9111
|
-
|
|
9112
|
-
|
|
9113
|
-
|
|
9114
|
-
|
|
9115
|
-
return this;
|
|
8511
|
+
waitUntilIdle() {
|
|
8512
|
+
const { when } = Dsl.disposeWith(this);
|
|
8513
|
+
return new Promise(resolve => {
|
|
8514
|
+
when(this.navigationInProgress$).becomesFalsey(() => resolve(this), {
|
|
8515
|
+
initialValue: "evaluate",
|
|
8516
|
+
once: true
|
|
8517
|
+
});
|
|
8518
|
+
});
|
|
9116
8519
|
}
|
|
9117
8520
|
async waitActivitiesSynchronised() {
|
|
9118
|
-
const {
|
|
9119
|
-
|
|
9120
|
-
|
|
8521
|
+
const { when } = Dsl.disposeWith(this);
|
|
8522
|
+
return new Promise(resolve => {
|
|
8523
|
+
when(this.interactionSyncInProgress$).becomesFalsey(() => resolve(this), {
|
|
8524
|
+
initialValue: "evaluate",
|
|
8525
|
+
once: true
|
|
8526
|
+
});
|
|
8527
|
+
});
|
|
9121
8528
|
}
|
|
9122
8529
|
// @Trace()
|
|
9123
8530
|
onPopState(event) {
|
|
@@ -9303,7 +8710,7 @@ class PlaceRouter extends GarbageCollector {
|
|
|
9303
8710
|
return Visit.goto(visitOrPlaceComponent, params);
|
|
9304
8711
|
}
|
|
9305
8712
|
}
|
|
9306
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceRouter, deps: [{ token: i1$
|
|
8713
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceRouter, deps: [{ token: i1$4.Router }, { token: i1$1.Location }, { token: InteractionService }, { token: UrlService }, { token: PlaceHistory }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
9307
8714
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceRouter, providedIn: "root" });
|
|
9308
8715
|
}
|
|
9309
8716
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceRouter, decorators: [{
|
|
@@ -9311,7 +8718,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
9311
8718
|
args: [{
|
|
9312
8719
|
providedIn: "root"
|
|
9313
8720
|
}]
|
|
9314
|
-
}], ctorParameters: function () { return [{ type: i1$
|
|
8721
|
+
}], ctorParameters: function () { return [{ type: i1$4.Router }, { type: i1$1.Location }, { type: InteractionService }, { type: UrlService }, { type: PlaceHistory }]; } });
|
|
9315
8722
|
|
|
9316
8723
|
class ActivityTitleComponent extends DisposableComponent {
|
|
9317
8724
|
_color;
|
|
@@ -9333,11 +8740,11 @@ class ActivityTitleComponent extends DisposableComponent {
|
|
|
9333
8740
|
return this._color;
|
|
9334
8741
|
}
|
|
9335
8742
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityTitleComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
9336
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ActivityTitleComponent, selector: "aup-activity-title", inputs: { hasTransparentBackground: "hasTransparentBackground", color: "color" }, host: { properties: { "class.transparent-background": "this.hasTransparentBackground", "attr.color": "this.color" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n
|
|
8743
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ActivityTitleComponent, selector: "aup-activity-title", inputs: { hasTransparentBackground: "hasTransparentBackground", color: "color" }, host: { properties: { "class.transparent-background": "this.hasTransparentBackground", "attr.color": "this.color" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:block}\n"] });
|
|
9337
8744
|
}
|
|
9338
8745
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityTitleComponent, decorators: [{
|
|
9339
8746
|
type: Component,
|
|
9340
|
-
args: [{ selector: 'aup-activity-title', template: "<ng-content></ng-content>\n
|
|
8747
|
+
args: [{ selector: 'aup-activity-title', template: "<ng-content></ng-content>\n", styles: [":host{display:block}\n"] }]
|
|
9341
8748
|
}], propDecorators: { hasTransparentBackground: [{
|
|
9342
8749
|
type: Input
|
|
9343
8750
|
}, {
|
|
@@ -9358,7 +8765,7 @@ class AlertDialogComponent extends AbstractDialogComponent {
|
|
|
9358
8765
|
});
|
|
9359
8766
|
}
|
|
9360
8767
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AlertDialogComponent, deps: [{ token: ACTIVITY_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
9361
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AlertDialogComponent, selector: "aup-alert-dialog", usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\"></aup-activity-actions>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align"
|
|
8768
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AlertDialogComponent, selector: "aup-alert-dialog", usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\"></aup-activity-actions>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align"] }, { kind: "component", type: ActivityTitleComponent, selector: "aup-activity-title", inputs: ["hasTransparentBackground", "color"] }, { kind: "component", type: ActivityBodyComponent, selector: "aup-activity-body", inputs: ["fullWidth"] }] });
|
|
9362
8769
|
}
|
|
9363
8770
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AlertDialogComponent, decorators: [{
|
|
9364
8771
|
type: Component,
|
|
@@ -9378,7 +8785,7 @@ class ConfirmThenDialogComponent extends AbstractConfirmDialogComponent {
|
|
|
9378
8785
|
});
|
|
9379
8786
|
}
|
|
9380
8787
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ConfirmThenDialogComponent, deps: [{ token: ACTIVITY_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
9381
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ConfirmThenDialogComponent, selector: "aup-confirmation-then-dialog", usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\" [cancelFace]=\"cancelFace\"></aup-activity-actions>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align"
|
|
8788
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ConfirmThenDialogComponent, selector: "aup-confirmation-then-dialog", usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\" [cancelFace]=\"cancelFace\"></aup-activity-actions>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align"] }, { kind: "component", type: ActivityTitleComponent, selector: "aup-activity-title", inputs: ["hasTransparentBackground", "color"] }, { kind: "component", type: ActivityBodyComponent, selector: "aup-activity-body", inputs: ["fullWidth"] }] });
|
|
9382
8789
|
}
|
|
9383
8790
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ConfirmThenDialogComponent, decorators: [{
|
|
9384
8791
|
type: Component,
|
|
@@ -9402,7 +8809,7 @@ class ConfirmThenExecuteDialogComponent extends AbstractConfirmDialogComponent {
|
|
|
9402
8809
|
});
|
|
9403
8810
|
}
|
|
9404
8811
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ConfirmThenExecuteDialogComponent, deps: [{ token: ACTIVITY_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
9405
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ConfirmThenExecuteDialogComponent, selector: "aup-confirmation-execute-dialog", usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\" [cancelFace]=\"cancelFace\"></aup-activity-actions>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align"
|
|
8812
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ConfirmThenExecuteDialogComponent, selector: "aup-confirmation-execute-dialog", usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\" [cancelFace]=\"cancelFace\"></aup-activity-actions>\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align"] }, { kind: "component", type: ActivityTitleComponent, selector: "aup-activity-title", inputs: ["hasTransparentBackground", "color"] }, { kind: "component", type: ActivityBodyComponent, selector: "aup-activity-body", inputs: ["fullWidth"] }] });
|
|
9406
8813
|
}
|
|
9407
8814
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ConfirmThenExecuteDialogComponent, decorators: [{
|
|
9408
8815
|
type: Component,
|
|
@@ -9422,7 +8829,7 @@ class ConfirmationDialogComponent extends AbstractConfirmDialogComponent {
|
|
|
9422
8829
|
});
|
|
9423
8830
|
}
|
|
9424
8831
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ConfirmationDialogComponent, deps: [{ token: ACTIVITY_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
9425
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ConfirmationDialogComponent, selector: "aup-confirmation-dialog", usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\" [cancelFace]=\"cancelFace\"></aup-activity-actions>\n\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align"
|
|
8832
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ConfirmationDialogComponent, selector: "aup-confirmation-dialog", usesInheritance: true, ngImport: i0, template: "<aup-activity-title *ngIf=\"title\" [color]=\"color\"><aup-markdown [content]=\"title\" [inline]=\"true\"></aup-markdown></aup-activity-title>\n<aup-activity-body>\n <aup-markdown *ngFor=\"let line of content\" [content]=\"line\"></aup-markdown>\n</aup-activity-body>\n<aup-activity-actions [confirmFace]=\"confirmFace\" [cancelFace]=\"cancelFace\"></aup-activity-actions>\n\n", styles: [":host{display:block}.mat-mdc-dialog-content{margin:0;padding:0}.mat-mdc-dialog-actions{margin-bottom:0!important;padding:0;align-items:flex-end;justify-content:flex-end}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: MarkdownComponent, selector: "aup-markdown, [aupMarkdown]", inputs: ["content$", "content", "inline"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align"] }, { kind: "component", type: ActivityTitleComponent, selector: "aup-activity-title", inputs: ["hasTransparentBackground", "color"] }, { kind: "component", type: ActivityBodyComponent, selector: "aup-activity-body", inputs: ["fullWidth"] }] });
|
|
9426
8833
|
}
|
|
9427
8834
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ConfirmationDialogComponent, decorators: [{
|
|
9428
8835
|
type: Component,
|
|
@@ -9602,7 +9009,6 @@ class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
9602
9009
|
tabs;
|
|
9603
9010
|
activityOutlets;
|
|
9604
9011
|
activityRefs = [];
|
|
9605
|
-
animationDuration = "500ms";
|
|
9606
9012
|
_identifier;
|
|
9607
9013
|
_deferredCleanUp;
|
|
9608
9014
|
interactionServiceApi;
|
|
@@ -9615,7 +9021,6 @@ class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
9615
9021
|
busy = this.registerDisposable(new DelegatingValueModel().withDefault(false));
|
|
9616
9022
|
syncTabsJob = undefined;
|
|
9617
9023
|
stable$;
|
|
9618
|
-
wasActive = false;
|
|
9619
9024
|
constructor(placeRouter) {
|
|
9620
9025
|
super();
|
|
9621
9026
|
this.placeRouter = placeRouter;
|
|
@@ -9652,12 +9057,7 @@ class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
9652
9057
|
* Returns true if an activity is currently running.
|
|
9653
9058
|
*/
|
|
9654
9059
|
isActive() {
|
|
9655
|
-
|
|
9656
|
-
// if (this.wasActive !== isActive) {
|
|
9657
|
-
// console.log({was: this.wasActive, is: isActive});
|
|
9658
|
-
// }
|
|
9659
|
-
// this.wasActive = isActive
|
|
9660
|
-
return isActive;
|
|
9060
|
+
return this.getActiveActivityCount() > 0;
|
|
9661
9061
|
}
|
|
9662
9062
|
registerDisposable(disposable) {
|
|
9663
9063
|
return this.garbage.registerDisposable(disposable);
|
|
@@ -9740,7 +9140,7 @@ class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
9740
9140
|
// by activity index)
|
|
9741
9141
|
setTimeout(() => {
|
|
9742
9142
|
this.activityRefs = []; // we have to do it after the animation timeout or the activity disappears before the animatin finsihes
|
|
9743
|
-
}, this.
|
|
9143
|
+
}, this.getTabAnimationDuration());
|
|
9744
9144
|
const promise = this.interactionServiceApi.notifyFinished(this);
|
|
9745
9145
|
this._deferredCleanUp = promise
|
|
9746
9146
|
.finally(() => {
|
|
@@ -9766,6 +9166,7 @@ class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
9766
9166
|
/**
|
|
9767
9167
|
* Synchronises the selected tab index.
|
|
9768
9168
|
*/
|
|
9169
|
+
// @Trace()
|
|
9769
9170
|
synchroniseSelectedTabIndex() {
|
|
9770
9171
|
assert.isTruthy(this.isActive());
|
|
9771
9172
|
const previousIndex = this.tabs.selectedIndex;
|
|
@@ -9777,10 +9178,10 @@ class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
9777
9178
|
activityRef.setFocused(false);
|
|
9778
9179
|
this.busy.setDelegate(activityRef.activityBusy);
|
|
9779
9180
|
this.tabs.selectedIndex = newIndex;
|
|
9780
|
-
|
|
9781
|
-
|
|
9782
|
-
|
|
9783
|
-
|
|
9181
|
+
if (this.ready$.value) {
|
|
9182
|
+
// Note: We're not using the animation done event as it's firing almost immeadiately.
|
|
9183
|
+
setTimeout(() => this.finaliseActivityStates(), animate ? this.getTabAnimationDuration() : 0);
|
|
9184
|
+
}
|
|
9784
9185
|
}
|
|
9785
9186
|
}
|
|
9786
9187
|
finaliseActivityStates() {
|
|
@@ -9794,12 +9195,7 @@ class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
9794
9195
|
return this.activityOutlets.toArray()[this.tabs.selectedIndex];
|
|
9795
9196
|
}
|
|
9796
9197
|
getTabAnimationDuration() {
|
|
9797
|
-
|
|
9798
|
-
// return s
|
|
9799
|
-
return this.animationDuration;
|
|
9800
|
-
}
|
|
9801
|
-
getTabAnimationDurationInMillis() {
|
|
9802
|
-
const match = this.animationDuration.match(/(\d+)(.*)/);
|
|
9198
|
+
const match = this.tabs.animationDuration.match(/(\d+)(.*)/);
|
|
9803
9199
|
const numericValue = parseFloat(match[1]);
|
|
9804
9200
|
switch (match[2].trim()) {
|
|
9805
9201
|
case "ms":
|
|
@@ -9825,16 +9221,12 @@ class ActivityContainerComponent extends AbstractInteractionContext {
|
|
|
9825
9221
|
}
|
|
9826
9222
|
}, 75);
|
|
9827
9223
|
}
|
|
9828
|
-
onAnimationDone() {
|
|
9829
|
-
this._started$.value = true;
|
|
9830
|
-
this.finaliseActivityStates();
|
|
9831
|
-
}
|
|
9832
9224
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityContainerComponent, deps: [{ token: PlaceRouter }], target: i0.ɵɵFactoryTarget.Component });
|
|
9833
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ActivityContainerComponent, selector: "aup-activity-container", inputs: { dynamicHeight: "dynamicHeight"
|
|
9225
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ActivityContainerComponent, selector: "aup-activity-container", inputs: { dynamicHeight: "dynamicHeight" }, viewQueries: [{ propertyName: "tabs", first: true, predicate: ["tabs"], descendants: true, static: true }, { propertyName: "activityOutlets", predicate: ActivityOutletComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-tab-group #tabs no-tab-header\n [dynamicHeight]=\"dynamicHeight\"\n [class.full-height-tabs]=\"!dynamicHeight\">\n <mat-tab *ngFor=\"let activityRef of activityRefs; let i = index; trackBy: activityIndex\">\n <aup-busy-overlay [busy$]=\"busy\" cdkTrapFocus cdkTrapFocusAutoCapture>\n <!--\n We have issues where angular is triggering a leave animation when an\n new activity is started, but is not running the enter animation\n when it is scrolled back into view. So we track the tab changes and\n disable all animations inside the tab while we're animating.\n -->\n <div class=\"activity-outlet-wrapper\" [@.disabled]=\"!activityRef.focused\">\n <aup-activity-outlet [nestedInteractionContext]=\"this\" [activityRef]=\"activityRef\"></aup-activity-outlet>\n </div>\n </aup-busy-overlay>\n </mat-tab>\n</mat-tab-group>\n", styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-busy-overlay{flex:1}.activity-outlet-wrapper{flex:1}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3$1.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i3$1.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "component", type: BusyOverlayComponent, selector: "aup-busy-overlay", inputs: ["busy$", "busy"] }, { kind: "directive", type: i5$1.CdkTrapFocus, selector: "[cdkTrapFocus]", inputs: ["cdkTrapFocus", "cdkTrapFocusAutoCapture"], exportAs: ["cdkTrapFocus"] }, { kind: "component", type: ActivityOutletComponent, selector: "aup-activity-outlet", inputs: ["nestedInteractionContext", "activityRef"] }] });
|
|
9834
9226
|
}
|
|
9835
9227
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ActivityContainerComponent, decorators: [{
|
|
9836
9228
|
type: Component,
|
|
9837
|
-
args: [{ selector: "aup-activity-container", template: "<mat-tab-group #tabs no-tab-header\n [dynamicHeight]=\"dynamicHeight\"\n [class.full-height-tabs]=\"!dynamicHeight\"
|
|
9229
|
+
args: [{ selector: "aup-activity-container", template: "<mat-tab-group #tabs no-tab-header\n [dynamicHeight]=\"dynamicHeight\"\n [class.full-height-tabs]=\"!dynamicHeight\">\n <mat-tab *ngFor=\"let activityRef of activityRefs; let i = index; trackBy: activityIndex\">\n <aup-busy-overlay [busy$]=\"busy\" cdkTrapFocus cdkTrapFocusAutoCapture>\n <!--\n We have issues where angular is triggering a leave animation when an\n new activity is started, but is not running the enter animation\n when it is scrolled back into view. So we track the tab changes and\n disable all animations inside the tab while we're animating.\n -->\n <div class=\"activity-outlet-wrapper\" [@.disabled]=\"!activityRef.focused\">\n <aup-activity-outlet [nestedInteractionContext]=\"this\" [activityRef]=\"activityRef\"></aup-activity-outlet>\n </div>\n </aup-busy-overlay>\n </mat-tab>\n</mat-tab-group>\n", styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-busy-overlay{flex:1}.activity-outlet-wrapper{flex:1}\n"] }]
|
|
9838
9230
|
}], ctorParameters: function () { return [{ type: PlaceRouter }]; }, propDecorators: { dynamicHeight: [{
|
|
9839
9231
|
type: Input
|
|
9840
9232
|
}], tabs: [{
|
|
@@ -9843,8 +9235,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
9843
9235
|
}], activityOutlets: [{
|
|
9844
9236
|
type: ViewChildren,
|
|
9845
9237
|
args: [ActivityOutletComponent]
|
|
9846
|
-
}], animationDuration: [{
|
|
9847
|
-
type: Input
|
|
9848
9238
|
}] } });
|
|
9849
9239
|
|
|
9850
9240
|
class AbstractActivityTriggerComponent extends DisposableComponent {
|
|
@@ -9945,16 +9335,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
9945
9335
|
args: ['class.active']
|
|
9946
9336
|
}] } });
|
|
9947
9337
|
|
|
9948
|
-
const
|
|
9949
|
-
|
|
9950
|
-
const cssDurationRegex$1 = /(\d+)(m?s)/;
|
|
9338
|
+
const cssDurationRegex = /(\d+)(m?s)/;
|
|
9951
9339
|
/**
|
|
9952
9340
|
* @example
|
|
9953
9341
|
* <aup-in-place-interaction-context #inPlaceInteractionContext>
|
|
9954
9342
|
* </aup-in-place-interaction-context>
|
|
9955
9343
|
*
|
|
9956
9344
|
* in your component
|
|
9957
|
-
* @ViewChild(
|
|
9345
|
+
* @ViewChild('inPlaceInteractionContext', { static: true })
|
|
9958
9346
|
* interactionContext: InteractionContext;
|
|
9959
9347
|
*
|
|
9960
9348
|
*
|
|
@@ -9973,13 +9361,11 @@ class InPlaceInteractionContextComponent extends DisposableComponent {
|
|
|
9973
9361
|
* active interactions.
|
|
9974
9362
|
*/
|
|
9975
9363
|
syncWithRoutes = true;
|
|
9976
|
-
started = new EventEmitter();
|
|
9977
|
-
finished = new EventEmitter();
|
|
9978
9364
|
get animationDuration() {
|
|
9979
9365
|
return this.animateFirstActivity ? (this.tabConfig?.animationDuration || "500ms") : "0ms";
|
|
9980
9366
|
}
|
|
9981
9367
|
get animationDurationMillis() {
|
|
9982
|
-
const result = cssDurationRegex
|
|
9368
|
+
const result = cssDurationRegex.exec(this.animationDuration);
|
|
9983
9369
|
if (!result) {
|
|
9984
9370
|
lang.illegalState(`unsupported css duration: ${this.animationDuration}`);
|
|
9985
9371
|
}
|
|
@@ -10001,16 +9387,11 @@ class InPlaceInteractionContextComponent extends DisposableComponent {
|
|
|
10001
9387
|
this.interactionService.registerInplaceInteractionContext(this);
|
|
10002
9388
|
}
|
|
10003
9389
|
else {
|
|
10004
|
-
const self = this;
|
|
10005
9390
|
this.activityContainerComponent.initialise("dont-care", {
|
|
10006
9391
|
async notifyActive(interactionContext) {
|
|
10007
|
-
self.started.emit();
|
|
10008
9392
|
return undefined;
|
|
10009
9393
|
},
|
|
10010
9394
|
async notifyFinished(interactionContext) {
|
|
10011
|
-
// I've noticed some rendering fails when returning the the transcluded content we'll fire an event
|
|
10012
|
-
// so components can do stuff if they need to.
|
|
10013
|
-
self.started.emit();
|
|
10014
9395
|
return undefined;
|
|
10015
9396
|
}
|
|
10016
9397
|
});
|
|
@@ -10057,15 +9438,11 @@ class InPlaceInteractionContextComponent extends DisposableComponent {
|
|
|
10057
9438
|
}
|
|
10058
9439
|
}
|
|
10059
9440
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: InPlaceInteractionContextComponent, deps: [{ token: MAT_TABS_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
10060
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: InPlaceInteractionContextComponent, selector: "aup-in-place-interaction-context", inputs: { animateFirstActivity: "animateFirstActivity", syncWithRoutes: "syncWithRoutes" },
|
|
10061
|
-
{ provide: INTERACTION_CONTEXT, useExisting: InPlaceInteractionContextComponent }
|
|
10062
|
-
], viewQueries: [{ propertyName: "activityContainerComponent", first: true, predicate: ["activityContainer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-tab-group no-tab-header [selectedIndex]=\"isActive() ? 1 : 0\" full-height-tabs\n (selectedTabChange)=\"onTabChanged($event)\"\n [dynamicHeight]=\"false\"\n [animationDuration]=\"animationDuration\">\n <mat-tab>\n <ng-content></ng-content>\n </mat-tab>\n <mat-tab>\n <aup-activity-container #activityContainer [dynamicHeight]=\"false\"></aup-activity-container>\n </mat-tab>\n</mat-tab-group>\n\n", styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-activity-container{flex:1}\n"], dependencies: [{ kind: "component", type: i3$2.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i3$2.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "component", type: ActivityContainerComponent, selector: "aup-activity-container", inputs: ["dynamicHeight", "animationDuration"] }] });
|
|
9441
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: InPlaceInteractionContextComponent, selector: "aup-in-place-interaction-context", inputs: { animateFirstActivity: "animateFirstActivity", syncWithRoutes: "syncWithRoutes" }, host: { properties: { "class.active": "this.active" } }, viewQueries: [{ propertyName: "activityContainerComponent", first: true, predicate: ["activityContainer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<mat-tab-group no-tab-header [selectedIndex]=\"isActive() ? 1 : 0\" full-height-tabs\n (selectedTabChange)=\"onTabChanged($event)\"\n [dynamicHeight]=\"false\"\n [animationDuration]=\"animationDuration\">\n <mat-tab>\n <ng-content></ng-content>\n </mat-tab>\n <mat-tab>\n <aup-activity-container #activityContainer [dynamicHeight]=\"false\"></aup-activity-container>\n </mat-tab>\n</mat-tab-group>\n\n", styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-activity-container{flex:1}\n"], dependencies: [{ kind: "component", type: i3$1.MatTab, selector: "mat-tab", inputs: ["disabled"], exportAs: ["matTab"] }, { kind: "component", type: i3$1.MatTabGroup, selector: "mat-tab-group", inputs: ["color", "disableRipple", "fitInkBarToContent", "mat-stretch-tabs"], exportAs: ["matTabGroup"] }, { kind: "component", type: ActivityContainerComponent, selector: "aup-activity-container", inputs: ["dynamicHeight"] }] });
|
|
10063
9442
|
}
|
|
10064
9443
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: InPlaceInteractionContextComponent, decorators: [{
|
|
10065
9444
|
type: Component,
|
|
10066
|
-
args: [{ selector: "aup-in-place-interaction-context",
|
|
10067
|
-
{ provide: INTERACTION_CONTEXT, useExisting: InPlaceInteractionContextComponent }
|
|
10068
|
-
], template: "<mat-tab-group no-tab-header [selectedIndex]=\"isActive() ? 1 : 0\" full-height-tabs\n (selectedTabChange)=\"onTabChanged($event)\"\n [dynamicHeight]=\"false\"\n [animationDuration]=\"animationDuration\">\n <mat-tab>\n <ng-content></ng-content>\n </mat-tab>\n <mat-tab>\n <aup-activity-container #activityContainer [dynamicHeight]=\"false\"></aup-activity-container>\n </mat-tab>\n</mat-tab-group>\n\n", styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-activity-container{flex:1}\n"] }]
|
|
9445
|
+
args: [{ selector: "aup-in-place-interaction-context", template: "<mat-tab-group no-tab-header [selectedIndex]=\"isActive() ? 1 : 0\" full-height-tabs\n (selectedTabChange)=\"onTabChanged($event)\"\n [dynamicHeight]=\"false\"\n [animationDuration]=\"animationDuration\">\n <mat-tab>\n <ng-content></ng-content>\n </mat-tab>\n <mat-tab>\n <aup-activity-container #activityContainer [dynamicHeight]=\"false\"></aup-activity-container>\n </mat-tab>\n</mat-tab-group>\n\n", styles: [":host{display:flex;flex-direction:column}mat-tab-group{flex:1}aup-activity-container{flex:1}\n"] }]
|
|
10069
9446
|
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
10070
9447
|
type: Inject,
|
|
10071
9448
|
args: [MAT_TABS_CONFIG]
|
|
@@ -10078,10 +9455,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
10078
9455
|
type: Input
|
|
10079
9456
|
}], syncWithRoutes: [{
|
|
10080
9457
|
type: Input
|
|
10081
|
-
}], started: [{
|
|
10082
|
-
type: Output
|
|
10083
|
-
}], finished: [{
|
|
10084
|
-
type: Output
|
|
10085
9458
|
}], active: [{
|
|
10086
9459
|
type: HostBinding,
|
|
10087
9460
|
args: ["class.active"]
|
|
@@ -10096,7 +9469,7 @@ class InlineActivityTriggerComponent extends AbstractActivityTriggerComponent {
|
|
|
10096
9469
|
super();
|
|
10097
9470
|
}
|
|
10098
9471
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: InlineActivityTriggerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10099
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: InlineActivityTriggerComponent, selector: "aup-inline-activity-trigger", viewQueries: [{ propertyName: "_interactionContext", first: true, predicate: InPlaceInteractionContextComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<aup-in-place-interaction-context #interactionContext [animateFirstActivity]=\"false\">\n <aup-command [command]=\"startActivityCommand\" [face$]=\"face$\" [alignFace]=\"alignFace\"></aup-command>\n</aup-in-place-interaction-context>\n", styles: [":host{display:inline-block}\n"], dependencies: [{ kind: "component", type: CommandComponent, selector: "aup-command", inputs: ["command", "face$", "face", "busyFace$", "busyFace", "alignFace"] }, { kind: "component", type: InPlaceInteractionContextComponent, selector: "aup-in-place-interaction-context", inputs: ["animateFirstActivity", "syncWithRoutes"]
|
|
9472
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: InlineActivityTriggerComponent, selector: "aup-inline-activity-trigger", viewQueries: [{ propertyName: "_interactionContext", first: true, predicate: InPlaceInteractionContextComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<aup-in-place-interaction-context #interactionContext [animateFirstActivity]=\"false\">\n <aup-command [command]=\"startActivityCommand\" [face$]=\"face$\" [alignFace]=\"alignFace\"></aup-command>\n</aup-in-place-interaction-context>\n", styles: [":host{display:inline-block}\n"], dependencies: [{ kind: "component", type: CommandComponent, selector: "aup-command", inputs: ["command", "face$", "face", "busyFace$", "busyFace", "alignFace"] }, { kind: "component", type: InPlaceInteractionContextComponent, selector: "aup-in-place-interaction-context", inputs: ["animateFirstActivity", "syncWithRoutes"] }] });
|
|
10100
9473
|
}
|
|
10101
9474
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: InlineActivityTriggerComponent, decorators: [{
|
|
10102
9475
|
type: Component,
|
|
@@ -10220,7 +9593,7 @@ class PopupInteractionContextComponent extends DisposableComponent {
|
|
|
10220
9593
|
isActive() {
|
|
10221
9594
|
return this.interactionContext && this.interactionContext.isActive();
|
|
10222
9595
|
}
|
|
10223
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PopupInteractionContextComponent, deps: [{ token: i0.ElementRef }, { token: i1$
|
|
9596
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PopupInteractionContextComponent, deps: [{ token: i0.ElementRef }, { token: i1$5.Overlay }, { token: i1$5.CdkScrollable, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
10224
9597
|
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: PopupInteractionContextComponent, selector: "aup-popup-interaction-context", inputs: { anchorX: "anchorX", anchorY: "anchorY", cancelOnEscape$: "cancelOnEscape$", cancelOnEscape: "cancelOnEscape" }, host: { properties: { "class.interaction-active": "this.active" } }, usesInheritance: true, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [":host{display:inline-block}:host.interaction-active{background:rgba(0,0,0,.05)}:host::ng-deep .popup-interaction-context-backdrop{background-color:#0000}\n"] });
|
|
10225
9598
|
}
|
|
10226
9599
|
__decorate([
|
|
@@ -10234,7 +9607,7 @@ __decorate([
|
|
|
10234
9607
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PopupInteractionContextComponent, decorators: [{
|
|
10235
9608
|
type: Component,
|
|
10236
9609
|
args: [{ selector: 'aup-popup-interaction-context', template: "<ng-content></ng-content>\n", styles: [":host{display:inline-block}:host.interaction-active{background:rgba(0,0,0,.05)}:host::ng-deep .popup-interaction-context-backdrop{background-color:#0000}\n"] }]
|
|
10237
|
-
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1$
|
|
9610
|
+
}], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i1$5.Overlay }, { type: i1$5.CdkScrollable, decorators: [{
|
|
10238
9611
|
type: Optional
|
|
10239
9612
|
}, {
|
|
10240
9613
|
type: SkipSelf
|
|
@@ -10319,7 +9692,7 @@ class AddCardActivityComponent extends AbstractActivityTriggerComponent {
|
|
|
10319
9692
|
return this.interactionStyle === 'inline';
|
|
10320
9693
|
}
|
|
10321
9694
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AddCardActivityComponent, deps: [{ token: InteractionService }], target: i0.ɵɵFactoryTarget.Component });
|
|
10322
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AddCardActivityComponent, selector: "aup-add-card-activity", inputs: { interactionStyle: "interactionStyle", renderAs: "renderAs" }, host: { properties: { "class": "this.activityTypeClass", "class.not-card": "this.notCard" } }, viewQueries: [{ propertyName: "inlineInteractionContext", first: true, predicate: InPlaceInteractionContextComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<aup-in-place-interaction-context [animateFirstActivity]=\"false\" [pectinCommand]=\"startActivityCommand\">\n <aup-command *ngIf=\"isRenderAsButton()\" [command]=\"startActivityCommand\" [face$]=\"face$\" [alignFace]=\"alignFace\"></aup-command>\n <section *ngIf=\"isRenderAsCard()\" class=\"face-wrapper\">\n <aup-command-face class=\"mat-button\" [faces]=\"faceList.value\"></aup-command-face>\n </section>\n</aup-in-place-interaction-context>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch;background-color:#fff}:host[interactionStyle=inline][renderas=card]:not(.active){transition:box-shadow .28s cubic-bezier(.4,0,.2,1);box-sizing:border-box;border:2px dashed rgba(0,0,0,.1);border-radius:6px;font-weight:300;cursor:pointer;color:#0000008a;background-color:#fffc}:host[interactionStyle=inline][renderas=card]:not(.active):hover{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host[interactionStyle=inline][renderas=card]:not(.active):hover{border-color:transparent;background-color:#fff;color:#0000008a}:host[interactionStyle=modal][renderas=card]{transition:box-shadow .28s cubic-bezier(.4,0,.2,1);box-sizing:border-box;border:2px dashed rgba(0,0,0,.1);border-radius:6px;font-weight:300;cursor:pointer;color:#0000008a;background-color:#fffc}:host[interactionStyle=modal][renderas=card]:hover{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host[interactionStyle=modal][renderas=card]:hover{border-color:transparent;background-color:#fff;color:#0000008a}:host-context(aup-card-container)[renderas=button]{align-self:start}section.face-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}aup-in-place-interaction-context{flex:1}aup-in-place-interaction-context.active{border:3px solid #6273c7;border-radius:4px;overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "component", type: CommandComponent, selector: "aup-command", inputs: ["command", "face$", "face", "busyFace$", "busyFace", "alignFace"] }, { kind: "component", type: CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }, { kind: "component", type: InPlaceInteractionContextComponent, selector: "aup-in-place-interaction-context", inputs: ["animateFirstActivity", "syncWithRoutes"]
|
|
9695
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AddCardActivityComponent, selector: "aup-add-card-activity", inputs: { interactionStyle: "interactionStyle", renderAs: "renderAs" }, host: { properties: { "class": "this.activityTypeClass", "class.not-card": "this.notCard" } }, viewQueries: [{ propertyName: "inlineInteractionContext", first: true, predicate: InPlaceInteractionContextComponent, descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<aup-in-place-interaction-context [animateFirstActivity]=\"false\" [pectinCommand]=\"startActivityCommand\">\n <aup-command *ngIf=\"isRenderAsButton()\" [command]=\"startActivityCommand\" [face$]=\"face$\" [alignFace]=\"alignFace\"></aup-command>\n <section *ngIf=\"isRenderAsCard()\" class=\"face-wrapper\">\n <aup-command-face class=\"mat-button\" [faces]=\"faceList.value\"></aup-command-face>\n </section>\n</aup-in-place-interaction-context>\n", styles: [":host{display:flex;flex-direction:column;align-items:stretch;background-color:#fff}:host[interactionStyle=inline][renderas=card]:not(.active){transition:box-shadow .28s cubic-bezier(.4,0,.2,1);box-sizing:border-box;border:2px dashed rgba(0,0,0,.1);border-radius:6px;font-weight:300;cursor:pointer;color:#0000008a;background-color:#fffc}:host[interactionStyle=inline][renderas=card]:not(.active):hover{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host[interactionStyle=inline][renderas=card]:not(.active):hover{border-color:transparent;background-color:#fff;color:#0000008a}:host[interactionStyle=modal][renderas=card]{transition:box-shadow .28s cubic-bezier(.4,0,.2,1);box-sizing:border-box;border:2px dashed rgba(0,0,0,.1);border-radius:6px;font-weight:300;cursor:pointer;color:#0000008a;background-color:#fffc}:host[interactionStyle=modal][renderas=card]:hover{box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f}:host[interactionStyle=modal][renderas=card]:hover{border-color:transparent;background-color:#fff;color:#0000008a}:host-context(aup-card-container)[renderas=button]{align-self:start}section.face-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center}aup-in-place-interaction-context{flex:1}aup-in-place-interaction-context.active{border:3px solid #6273c7;border-radius:4px;overflow:hidden}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "component", type: CommandComponent, selector: "aup-command", inputs: ["command", "face$", "face", "busyFace$", "busyFace", "alignFace"] }, { kind: "component", type: CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }, { kind: "component", type: InPlaceInteractionContextComponent, selector: "aup-in-place-interaction-context", inputs: ["animateFirstActivity", "syncWithRoutes"] }] });
|
|
10323
9696
|
}
|
|
10324
9697
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AddCardActivityComponent, decorators: [{
|
|
10325
9698
|
type: Component,
|
|
@@ -10395,7 +9768,7 @@ class AddItemInteractionContextComponent extends DisposableComponent {
|
|
|
10395
9768
|
return this.interactionContext.startActivity(activityType, data);
|
|
10396
9769
|
}
|
|
10397
9770
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: AddItemInteractionContextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
10398
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AddItemInteractionContextComponent, selector: "aup-add-item-interaction-context", inputs: { label: "label", icon: "icon", activityClass: "activityClass", activityData: "activityData", addCommand: "addCommand" }, host: { properties: { "class.interaction-active": "this.active", "tabindex": "this.tabindex" } }, viewQueries: [{ propertyName: "interactionContext", first: true, predicate: InPlaceInteractionContextComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<aup-in-place-interaction-context [animateFirstActivity]=\"false\">\n <a part=\"link\" class=\"link\" [pectinCommand]=\"clickCommand\"><aup-icon [icon]=\"icon\"></aup-icon> {{label}}</a>\n</aup-in-place-interaction-context>\n", styles: [":host{--def-link-color: var(--link-color, currentColor);--def-link-color-hover: var(--link-color-hover, currentColor);--def-link-background: var(--link-background, transparent);--def-link-background-hover: var(--link-background-hover, rgba(0, 0, 0, .05));--def-link-border-radius: var(--link-border-radius, 4px);--def-link-padding: var(--link-padding, calc(var(--aup-default-padding) / 2));display:flex;flex-direction:column;border-radius:var(--def-link-border-radius);box-sizing:border-box;outline:none}:host:hover a.link{color:var(--def-link-color-hover);background-color:var(--def-link-background-hover)}aup-in-place-interaction-context{border-radius:var(--def-link-border-radius)}a.link{display:flex;flex-direction:row;align-items:center;border-radius:var(--def-link-border-radius);color:var(--def-link-color);background:var(--def-link-background);padding:var(--def-link-padding);cursor:pointer;text-decoration:none}a.link mat-icon{margin-right:8px}\n"], dependencies: [{ kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "component", type: IconComponent, selector: "aup-icon", inputs: ["icon"] }, { kind: "component", type: InPlaceInteractionContextComponent, selector: "aup-in-place-interaction-context", inputs: ["animateFirstActivity", "syncWithRoutes"]
|
|
9771
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: AddItemInteractionContextComponent, selector: "aup-add-item-interaction-context", inputs: { label: "label", icon: "icon", activityClass: "activityClass", activityData: "activityData", addCommand: "addCommand" }, host: { properties: { "class.interaction-active": "this.active", "tabindex": "this.tabindex" } }, viewQueries: [{ propertyName: "interactionContext", first: true, predicate: InPlaceInteractionContextComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<aup-in-place-interaction-context [animateFirstActivity]=\"false\">\n <a part=\"link\" class=\"link\" [pectinCommand]=\"clickCommand\"><aup-icon [icon]=\"icon\"></aup-icon> {{label}}</a>\n</aup-in-place-interaction-context>\n", styles: [":host{--def-link-color: var(--link-color, currentColor);--def-link-color-hover: var(--link-color-hover, currentColor);--def-link-background: var(--link-background, transparent);--def-link-background-hover: var(--link-background-hover, rgba(0, 0, 0, .05));--def-link-border-radius: var(--link-border-radius, 4px);--def-link-padding: var(--link-padding, calc(var(--aup-default-padding) / 2));display:flex;flex-direction:column;border-radius:var(--def-link-border-radius);box-sizing:border-box;outline:none}:host:hover a.link{color:var(--def-link-color-hover);background-color:var(--def-link-background-hover)}aup-in-place-interaction-context{border-radius:var(--def-link-border-radius)}a.link{display:flex;flex-direction:row;align-items:center;border-radius:var(--def-link-border-radius);color:var(--def-link-color);background:var(--def-link-background);padding:var(--def-link-padding);cursor:pointer;text-decoration:none}a.link mat-icon{margin-right:8px}\n"], dependencies: [{ kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "component", type: IconComponent, selector: "aup-icon", inputs: ["icon"] }, { kind: "component", type: InPlaceInteractionContextComponent, selector: "aup-in-place-interaction-context", inputs: ["animateFirstActivity", "syncWithRoutes"] }] });
|
|
10399
9772
|
}
|
|
10400
9773
|
__decorate([
|
|
10401
9774
|
Proxify(),
|
|
@@ -10534,14 +9907,12 @@ class StringInputActivity extends InputActivity {
|
|
|
10534
9907
|
[label]="activityData.label"
|
|
10535
9908
|
[placeholder]="activityData.placeholder"
|
|
10536
9909
|
[command.enter]="confirmCommand"
|
|
10537
|
-
[command.escape]="cancelCommand"
|
|
10538
|
-
[dense]="true"
|
|
10539
|
-
></aup-string-input>
|
|
9910
|
+
[command.escape]="cancelCommand"></aup-string-input>
|
|
10540
9911
|
<aup-activity-actions [layout]="layout" align="end"
|
|
10541
9912
|
[confirmFace]="confirmFace"
|
|
10542
9913
|
[cancelFace]="cancelFace"
|
|
10543
9914
|
></aup-activity-actions>
|
|
10544
|
-
`, isInline: true, dependencies: [{ kind: "component", type: StringInputComponent, selector: "aup-string-input", inputs: ["autocomplete", "enableClear$", "enableClear", "iconPrefix"
|
|
9915
|
+
`, isInline: true, dependencies: [{ kind: "component", type: StringInputComponent, selector: "aup-string-input", inputs: ["autocomplete", "enableClear$", "enableClear", "iconPrefix"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align"] }] });
|
|
10545
9916
|
}
|
|
10546
9917
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: StringInputActivity, decorators: [{
|
|
10547
9918
|
type: Component,
|
|
@@ -10552,9 +9923,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
10552
9923
|
[label]="activityData.label"
|
|
10553
9924
|
[placeholder]="activityData.placeholder"
|
|
10554
9925
|
[command.enter]="confirmCommand"
|
|
10555
|
-
[command.escape]="cancelCommand"
|
|
10556
|
-
[dense]="true"
|
|
10557
|
-
></aup-string-input>
|
|
9926
|
+
[command.escape]="cancelCommand"></aup-string-input>
|
|
10558
9927
|
<aup-activity-actions [layout]="layout" align="end"
|
|
10559
9928
|
[confirmFace]="confirmFace"
|
|
10560
9929
|
[cancelFace]="cancelFace"
|
|
@@ -10737,7 +10106,7 @@ class InlineStringEditorComponent extends DisposableComponent {
|
|
|
10737
10106
|
return !this.editingEnabled$.value;
|
|
10738
10107
|
}
|
|
10739
10108
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: InlineStringEditorComponent, deps: [{ token: InteractionService }], target: i0.ɵɵFactoryTarget.Component });
|
|
10740
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: InlineStringEditorComponent, selector: "aup-inline-string-editor", inputs: { editorModel: "editorModel", facesModel: "facesModel", faces: "faces", label: "label", placeHolder: "placeHolder", placeHolder$: "placeHolder$" }, host: { properties: { "class.disabled": "this.isDisabled" } }, viewQueries: [{ propertyName: "interactionContext", first: true, predicate: InPlaceInteractionContextComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"container\" *ngIf=\"!editorModel.isEditing()\">\n <mat-form-field floatLabel=\"always\" (click)=\"startEdit()\"\n [class.editable]=\"editingEnabled$.value\" [class.empty]=\"isEmpty()\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input matInput\n placeholder=\"{{placeHolder}}\"\n [ngModel]=\"editorModel.valueModel.value\"\n [disabled]=\"true\"\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 </mat-form-field>\n <aup-command *ngIf=\"editCommand.enabled$.value\" [command]=\"editCommand\" [face$]=\"editFaceModel\"></aup-command>\n</div>\n<aup-in-place-interaction-context [animateFirstActivity]=\"false\"></aup-in-place-interaction-context>\n", dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CommandComponent, selector: "aup-command", inputs: ["command", "face$", "face", "busyFace$", "busyFace", "alignFace"] }, { kind: "directive", type: i2$4.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$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.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$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$2.MatLabel, selector: "mat-label" }, { kind: "component", type: InPlaceInteractionContextComponent, selector: "aup-in-place-interaction-context", inputs: ["animateFirstActivity", "syncWithRoutes"]
|
|
10109
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: InlineStringEditorComponent, selector: "aup-inline-string-editor", inputs: { editorModel: "editorModel", facesModel: "facesModel", faces: "faces", label: "label", placeHolder: "placeHolder", placeHolder$: "placeHolder$" }, host: { properties: { "class.disabled": "this.isDisabled" } }, viewQueries: [{ propertyName: "interactionContext", first: true, predicate: InPlaceInteractionContextComponent, descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"container\" *ngIf=\"!editorModel.isEditing()\">\n <mat-form-field floatLabel=\"always\" (click)=\"startEdit()\"\n [class.editable]=\"editingEnabled$.value\" [class.empty]=\"isEmpty()\">\n <mat-label *ngIf=\"label\">{{label}}</mat-label>\n <input matInput\n placeholder=\"{{placeHolder}}\"\n [ngModel]=\"editorModel.valueModel.value\"\n [disabled]=\"true\"\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 </mat-form-field>\n <aup-command *ngIf=\"editCommand.enabled$.value\" [command]=\"editCommand\" [face$]=\"editFaceModel\"></aup-command>\n</div>\n<aup-in-place-interaction-context [animateFirstActivity]=\"false\"></aup-in-place-interaction-context>\n", dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: CommandComponent, selector: "aup-command", inputs: ["command", "face$", "face", "busyFace$", "busyFace", "alignFace"] }, { kind: "directive", type: i2$4.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$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "directive", type: i3.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$2.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i4$2.MatLabel, selector: "mat-label" }, { kind: "component", type: InPlaceInteractionContextComponent, selector: "aup-in-place-interaction-context", inputs: ["animateFirstActivity", "syncWithRoutes"] }] });
|
|
10741
10110
|
}
|
|
10742
10111
|
__decorate([
|
|
10743
10112
|
Proxify(),
|
|
@@ -10820,7 +10189,6 @@ class SelectInputActivity extends InputActivity {
|
|
|
10820
10189
|
[options]="options"
|
|
10821
10190
|
[optionLabelFormat]="optionLabelFormat"
|
|
10822
10191
|
[allowNil]="activityData.allowNil"
|
|
10823
|
-
[dense]="true"
|
|
10824
10192
|
>
|
|
10825
10193
|
<ng-template #nilOptionTemplate>{{activityData.nilLabel}}</ng-template>
|
|
10826
10194
|
</aup-select-input>
|
|
@@ -10828,7 +10196,7 @@ class SelectInputActivity extends InputActivity {
|
|
|
10828
10196
|
[confirmFace]="confirmFace"
|
|
10829
10197
|
[cancelFace]="cancelFace"
|
|
10830
10198
|
></aup-activity-actions>
|
|
10831
|
-
`, isInline: true, dependencies: [{ kind: "component", type: SelectInputComponent, selector: "aup-select-input", inputs: ["options$", "options", "optionLabel", "allowNil", "optionLabelFormat"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align"
|
|
10199
|
+
`, isInline: true, dependencies: [{ kind: "component", type: SelectInputComponent, selector: "aup-select-input", inputs: ["options$", "options", "optionLabel", "allowNil", "optionLabelFormat"] }, { kind: "component", type: ActivityActionsComponent, selector: "aup-activity-actions", inputs: ["confirmCommand", "cancelCommand", "faces", "confirmFace", "cancelFace", "style", "layout", "align"] }] });
|
|
10832
10200
|
}
|
|
10833
10201
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SelectInputActivity, decorators: [{
|
|
10834
10202
|
type: Component,
|
|
@@ -10843,7 +10211,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
10843
10211
|
[options]="options"
|
|
10844
10212
|
[optionLabelFormat]="optionLabelFormat"
|
|
10845
10213
|
[allowNil]="activityData.allowNil"
|
|
10846
|
-
[dense]="true"
|
|
10847
10214
|
>
|
|
10848
10215
|
<ng-template #nilOptionTemplate>{{activityData.nilLabel}}</ng-template>
|
|
10849
10216
|
</aup-select-input>
|
|
@@ -10855,186 +10222,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
10855
10222
|
}]
|
|
10856
10223
|
}] });
|
|
10857
10224
|
|
|
10858
|
-
const slideDownOnEnterDef = style({
|
|
10859
|
-
opacity: 0,
|
|
10860
|
-
'height': '0',
|
|
10861
|
-
'max-height': '0',
|
|
10862
|
-
paddingTop: '0',
|
|
10863
|
-
paddingBottom: '0'
|
|
10864
|
-
});
|
|
10865
|
-
// TODO: params aren't getting customised in the view. Need to figure out the correct approach.
|
|
10866
|
-
const slideDownOnEnterAnimation = trigger('slideDownOnEnter', [
|
|
10867
|
-
transition(':enter', [slideDownOnEnterDef, animate('{{duration}}')], { params: { duration: '100ms' } }),
|
|
10868
|
-
transition(':leave', [animate('{{duration}}', slideDownOnEnterDef)], { params: { duration: '100ms' } })
|
|
10869
|
-
]);
|
|
10870
|
-
const slideDownWhenOpenAnimation = trigger('slideDownWhenOpen', [
|
|
10871
|
-
transition('closed => open', [slideDownOnEnterDef, animate('{{duration}}')], { params: { duration: '100ms' } }),
|
|
10872
|
-
transition('open => closed', [animate('{{duration}}', slideDownOnEnterDef)], { params: { duration: '100ms' } })
|
|
10873
|
-
]);
|
|
10874
|
-
const slideLeftOnEnterDef = style({
|
|
10875
|
-
opacity: 0,
|
|
10876
|
-
'width': '0',
|
|
10877
|
-
paddingLeft: '0',
|
|
10878
|
-
paddingRight: '0'
|
|
10879
|
-
});
|
|
10880
|
-
const slideRightOnEnterAnimation = trigger('slideRightOnEnter', [
|
|
10881
|
-
transition(':enter', [slideLeftOnEnterDef, animate('{{duration}}')], { params: { duration: '100ms' } }),
|
|
10882
|
-
transition(':leave', [animate('{{duration}}', slideLeftOnEnterDef)], { params: { duration: '100ms' } })
|
|
10883
|
-
]);
|
|
10884
|
-
const ZERO_WIDTH = {
|
|
10885
|
-
opacity: 0,
|
|
10886
|
-
width: '0',
|
|
10887
|
-
paddingLeft: '0',
|
|
10888
|
-
paddingRight: '0',
|
|
10889
|
-
};
|
|
10890
|
-
const ZERO_HEIGHT = {
|
|
10891
|
-
opacity: 0,
|
|
10892
|
-
height: '0',
|
|
10893
|
-
paddingTop: '0',
|
|
10894
|
-
paddingBottom: '0',
|
|
10895
|
-
};
|
|
10896
|
-
const slideDownAndRightOnEnterAnimation = trigger('slideDownAndRightOnEnter', [
|
|
10897
|
-
transition(':enter', [
|
|
10898
|
-
style({ overflow: "hidden", whiteSpace: "nowrap", ...ZERO_WIDTH, ...ZERO_HEIGHT }),
|
|
10899
|
-
animate('{{duration}}')
|
|
10900
|
-
], { params: { duration: '100ms' } }),
|
|
10901
|
-
transition(':leave', [
|
|
10902
|
-
style({ overflow: "hidden", whiteSpace: "nowrap" }),
|
|
10903
|
-
group([
|
|
10904
|
-
animate('{{duration}}', style(ZERO_HEIGHT)),
|
|
10905
|
-
// Hack: 100ms is too quick as it animates from * - 0 as we only see it animate the width is greater than the parent.
|
|
10906
|
-
// Not sure how to animate from * to natural new width of parent. This hack won't work for text that's just a little
|
|
10907
|
-
// bit wider than the parent as it'll fall within the parent bounds very early in the animation cycle.
|
|
10908
|
-
animate('300ms', style(ZERO_WIDTH)),
|
|
10909
|
-
])
|
|
10910
|
-
], { params: { duration: '100ms' } })
|
|
10911
|
-
]);
|
|
10912
|
-
|
|
10913
|
-
const cssDurationRegex = /(\d+)(m?s)/;
|
|
10914
|
-
/**
|
|
10915
|
-
* This interaction context remains hidden (height: 0) until it is active.
|
|
10916
|
-
* @example
|
|
10917
|
-
* <aup-slide-down-interaction-context #inPlaceInteractionContext>
|
|
10918
|
-
* </aup-slide-down-interaction-context>
|
|
10919
|
-
*
|
|
10920
|
-
* in your component
|
|
10921
|
-
* @ViewChild(SlideDownInteractionContextComponent)
|
|
10922
|
-
* interactionContext: InteractionContext;
|
|
10923
|
-
*
|
|
10924
|
-
*
|
|
10925
|
-
*/
|
|
10926
|
-
class SlideDownInteractionContextComponent extends DisposableComponent {
|
|
10927
|
-
tabConfig;
|
|
10928
|
-
activityContainerComponent;
|
|
10929
|
-
// NOTE: disabling this as I'm using the initialise callback to release the hacky height clamp.
|
|
10930
|
-
// The whole registration thing is a bit naf so I should really clean that up at some point.
|
|
10931
|
-
// /**
|
|
10932
|
-
// * If true the activity will sync with the router to enable back button support. This is a work around for
|
|
10933
|
-
// * deeply nested activities that can't be linked with the root place interactionContext hook for cancelling
|
|
10934
|
-
// * active interactions.
|
|
10935
|
-
// */
|
|
10936
|
-
// @Input()
|
|
10937
|
-
// syncWithRoutes = true;
|
|
10938
|
-
dynamicHeight = true;
|
|
10939
|
-
get active() {
|
|
10940
|
-
return this.isActive();
|
|
10941
|
-
}
|
|
10942
|
-
// Horrible hack to stop the div and activity container bouncing back for a bit in after closing. No idea why it's doing that.
|
|
10943
|
-
clampShut = true;
|
|
10944
|
-
interactionService = this.inject(InteractionService);
|
|
10945
|
-
constructor(tabConfig) {
|
|
10946
|
-
super();
|
|
10947
|
-
this.tabConfig = tabConfig;
|
|
10948
|
-
}
|
|
10949
|
-
ngAfterViewInit() {
|
|
10950
|
-
// NOTE: this is a temp work around to detach inplace contexts from the router until AUP-88 is implemented.
|
|
10951
|
-
// https://coolon.atlassian.net/browse/AUP-88?atlOrigin=eyJpIjoiOTg5YjEzZGUzZjRmNDg0NmExOWU3ZGJmMzJiNTRmNGYiLCJwIjoiaiJ9
|
|
10952
|
-
const self = this;
|
|
10953
|
-
this.activityContainerComponent.initialise("dont-care", {
|
|
10954
|
-
async notifyActive(interactionContext) {
|
|
10955
|
-
self.clampShut = false;
|
|
10956
|
-
return undefined;
|
|
10957
|
-
},
|
|
10958
|
-
async notifyFinished(interactionContext) {
|
|
10959
|
-
return undefined;
|
|
10960
|
-
}
|
|
10961
|
-
});
|
|
10962
|
-
// if (this.syncWithRoutes) {
|
|
10963
|
-
// this.interactionService.registerInplaceInteractionContext(this);
|
|
10964
|
-
// }
|
|
10965
|
-
}
|
|
10966
|
-
getAnimationState() {
|
|
10967
|
-
return {
|
|
10968
|
-
value: this.isActive() ? "open" : "closed",
|
|
10969
|
-
params: { duration: "200ms" }
|
|
10970
|
-
};
|
|
10971
|
-
}
|
|
10972
|
-
// this is a regsitration callback from the interaction service
|
|
10973
|
-
// @Trace() // webstorm says no usages... but I'm not sure.
|
|
10974
|
-
onInplaceInteractionContextRegistered(id, api) {
|
|
10975
|
-
this.activityContainerComponent.initialise(id, api);
|
|
10976
|
-
}
|
|
10977
|
-
get identifier() {
|
|
10978
|
-
return this.activityContainerComponent.identifier;
|
|
10979
|
-
}
|
|
10980
|
-
alert(alert) {
|
|
10981
|
-
return this.activityContainerComponent.alert(alert);
|
|
10982
|
-
}
|
|
10983
|
-
cancelActiveActivity() {
|
|
10984
|
-
return this.activityContainerComponent.cancelActiveActivity();
|
|
10985
|
-
}
|
|
10986
|
-
confirm(confirm) {
|
|
10987
|
-
return this.activityContainerComponent.confirm(confirm);
|
|
10988
|
-
}
|
|
10989
|
-
confirmOrReject(confirm) {
|
|
10990
|
-
return this.activityContainerComponent.confirmOrReject(confirm);
|
|
10991
|
-
}
|
|
10992
|
-
confirmThen(confirm, activityType, data) {
|
|
10993
|
-
return this.activityContainerComponent.confirmThen(confirm, activityType);
|
|
10994
|
-
}
|
|
10995
|
-
confirmThenExecute(confirm, operation) {
|
|
10996
|
-
return this.activityContainerComponent.confirmThenExecute(confirm, operation);
|
|
10997
|
-
}
|
|
10998
|
-
isActive() {
|
|
10999
|
-
return this.activityContainerComponent.isActive();
|
|
11000
|
-
}
|
|
11001
|
-
startActivity(activityType, data, options) {
|
|
11002
|
-
return this.activityContainerComponent.startActivity(activityType, data, options);
|
|
11003
|
-
}
|
|
11004
|
-
onAnimationDone() {
|
|
11005
|
-
if (!this.isActive()) {
|
|
11006
|
-
this.clampShut = true;
|
|
11007
|
-
}
|
|
11008
|
-
}
|
|
11009
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SlideDownInteractionContextComponent, deps: [{ token: MAT_TABS_CONFIG, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
11010
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SlideDownInteractionContextComponent, selector: "aup-slide-down-interaction-context", inputs: { dynamicHeight: "dynamicHeight" }, host: { properties: { "class.active": "this.active" } }, providers: [
|
|
11011
|
-
{ provide: INTERACTION_CONTEXT, useExisting: SlideDownInteractionContextComponent }
|
|
11012
|
-
], viewQueries: [{ propertyName: "activityContainerComponent", first: true, predicate: ["activityContainer"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<div [@slideDownWhenOpen]=\"getAnimationState()\" (@slideDownWhenOpen.done)=\"onAnimationDone()\" [style.max-height.px]=\"clampShut ? 0 : undefined\">\n <aup-activity-container #activityContainer [dynamicHeight]=\"dynamicHeight\"></aup-activity-container>\n</div>\n\n", styles: [":host{display:flex;flex-direction:column}:host>div{overflow:hidden}\n"], dependencies: [{ kind: "component", type: ActivityContainerComponent, selector: "aup-activity-container", inputs: ["dynamicHeight", "animationDuration"] }], animations: [
|
|
11013
|
-
slideDownWhenOpenAnimation
|
|
11014
|
-
] });
|
|
11015
|
-
}
|
|
11016
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SlideDownInteractionContextComponent, decorators: [{
|
|
11017
|
-
type: Component,
|
|
11018
|
-
args: [{ selector: "aup-slide-down-interaction-context", providers: [
|
|
11019
|
-
{ provide: INTERACTION_CONTEXT, useExisting: SlideDownInteractionContextComponent }
|
|
11020
|
-
], animations: [
|
|
11021
|
-
slideDownWhenOpenAnimation
|
|
11022
|
-
], template: "<div [@slideDownWhenOpen]=\"getAnimationState()\" (@slideDownWhenOpen.done)=\"onAnimationDone()\" [style.max-height.px]=\"clampShut ? 0 : undefined\">\n <aup-activity-container #activityContainer [dynamicHeight]=\"dynamicHeight\"></aup-activity-container>\n</div>\n\n", styles: [":host{display:flex;flex-direction:column}:host>div{overflow:hidden}\n"] }]
|
|
11023
|
-
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
11024
|
-
type: Inject,
|
|
11025
|
-
args: [MAT_TABS_CONFIG]
|
|
11026
|
-
}, {
|
|
11027
|
-
type: Optional
|
|
11028
|
-
}] }]; }, propDecorators: { activityContainerComponent: [{
|
|
11029
|
-
type: ViewChild,
|
|
11030
|
-
args: ["activityContainer", { static: true }]
|
|
11031
|
-
}], dynamicHeight: [{
|
|
11032
|
-
type: Input
|
|
11033
|
-
}], active: [{
|
|
11034
|
-
type: HostBinding,
|
|
11035
|
-
args: ["class.active"]
|
|
11036
|
-
}] } });
|
|
11037
|
-
|
|
11038
10225
|
class InteractionContextTriggerForDirective extends GarbageCollector {
|
|
11039
10226
|
aupInteractionContextTriggerFor;
|
|
11040
10227
|
activityClass;
|
|
@@ -11117,7 +10304,6 @@ class InteractionModule {
|
|
|
11117
10304
|
AlertDialogComponent,
|
|
11118
10305
|
ActivityOutletComponent,
|
|
11119
10306
|
InPlaceInteractionContextComponent,
|
|
11120
|
-
SlideDownInteractionContextComponent,
|
|
11121
10307
|
AddItemInteractionContextComponent,
|
|
11122
10308
|
ActivityActionsComponent,
|
|
11123
10309
|
PopupInteractionContextComponent,
|
|
@@ -11144,6 +10330,8 @@ class InteractionModule {
|
|
|
11144
10330
|
RouterModule,
|
|
11145
10331
|
MatIconModule,
|
|
11146
10332
|
DirectivesModule,
|
|
10333
|
+
FlexModule,
|
|
10334
|
+
GridModule,
|
|
11147
10335
|
ComponentsModule,
|
|
11148
10336
|
FormsModule,
|
|
11149
10337
|
MatInputModule,
|
|
@@ -11163,8 +10351,7 @@ class InteractionModule {
|
|
|
11163
10351
|
InlineActivityTriggerComponent,
|
|
11164
10352
|
ModalActivityTriggerComponent,
|
|
11165
10353
|
AddCardActivityComponent,
|
|
11166
|
-
InlineStringEditorComponent
|
|
11167
|
-
SlideDownInteractionContextComponent] });
|
|
10354
|
+
InlineStringEditorComponent] });
|
|
11168
10355
|
static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: InteractionModule, providers: [
|
|
11169
10356
|
InteractionService
|
|
11170
10357
|
// {
|
|
@@ -11178,6 +10365,8 @@ class InteractionModule {
|
|
|
11178
10365
|
RouterModule,
|
|
11179
10366
|
MatIconModule,
|
|
11180
10367
|
DirectivesModule,
|
|
10368
|
+
FlexModule,
|
|
10369
|
+
GridModule,
|
|
11181
10370
|
ComponentsModule,
|
|
11182
10371
|
FormsModule,
|
|
11183
10372
|
MatInputModule,
|
|
@@ -11196,6 +10385,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
11196
10385
|
RouterModule,
|
|
11197
10386
|
MatIconModule,
|
|
11198
10387
|
DirectivesModule,
|
|
10388
|
+
FlexModule,
|
|
10389
|
+
GridModule,
|
|
11199
10390
|
ComponentsModule,
|
|
11200
10391
|
FormsModule,
|
|
11201
10392
|
MatInputModule,
|
|
@@ -11210,7 +10401,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
11210
10401
|
AlertDialogComponent,
|
|
11211
10402
|
ActivityOutletComponent,
|
|
11212
10403
|
InPlaceInteractionContextComponent,
|
|
11213
|
-
SlideDownInteractionContextComponent,
|
|
11214
10404
|
AddItemInteractionContextComponent,
|
|
11215
10405
|
ActivityActionsComponent,
|
|
11216
10406
|
PopupInteractionContextComponent,
|
|
@@ -11248,7 +10438,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
11248
10438
|
ModalActivityTriggerComponent,
|
|
11249
10439
|
AddCardActivityComponent,
|
|
11250
10440
|
InlineStringEditorComponent,
|
|
11251
|
-
SlideDownInteractionContextComponent,
|
|
11252
10441
|
],
|
|
11253
10442
|
providers: [
|
|
11254
10443
|
InteractionService
|
|
@@ -11319,6 +10508,7 @@ class PlaceOutletComponent extends DisposableComponent {
|
|
|
11319
10508
|
router;
|
|
11320
10509
|
placeRouter;
|
|
11321
10510
|
placeConfig;
|
|
10511
|
+
cdr;
|
|
11322
10512
|
#animate$_accessor_storage = proxify((ValueModel));
|
|
11323
10513
|
get animate$() { return this.#animate$_accessor_storage; }
|
|
11324
10514
|
set animate$(value) { this.#animate$_accessor_storage = value; }
|
|
@@ -11352,11 +10542,12 @@ class PlaceOutletComponent extends DisposableComponent {
|
|
|
11352
10542
|
animationEnabled;
|
|
11353
10543
|
authorised;
|
|
11354
10544
|
notAuthorisedNoticePortal;
|
|
11355
|
-
constructor(router, placeRouter, placeConfig, unauthorisedPlaceNotice, parentOutlet) {
|
|
10545
|
+
constructor(router, placeRouter, placeConfig, unauthorisedPlaceNotice, parentOutlet, cdr) {
|
|
11356
10546
|
super();
|
|
11357
10547
|
this.router = router;
|
|
11358
10548
|
this.placeRouter = placeRouter;
|
|
11359
10549
|
this.placeConfig = placeConfig;
|
|
10550
|
+
this.cdr = cdr;
|
|
11360
10551
|
const { chain, valueOf, before, when, after, observe, switchOn } = Dsl.disposeWith(this);
|
|
11361
10552
|
this.parentOutletModel = new MutableValueModel(parentOutlet);
|
|
11362
10553
|
const defaultPlaceAnimationOrder = chain(this.parentOutletModel)
|
|
@@ -11368,7 +10559,7 @@ class PlaceOutletComponent extends DisposableComponent {
|
|
|
11368
10559
|
this.placesInAnimationOrder = chain(this.customPlaceAnimationOrder$)
|
|
11369
10560
|
.otherwise(defaultPlaceAnimationOrder);
|
|
11370
10561
|
this.activePlaceAnimationPosition = this.placesInAnimationOrder
|
|
11371
|
-
.
|
|
10562
|
+
.reduce((placesInOrder) => {
|
|
11372
10563
|
let placeIndex = 0;
|
|
11373
10564
|
if (activatePlaceType.value) {
|
|
11374
10565
|
placeIndex = placesInOrder.indexOf(activatePlaceType.value);
|
|
@@ -11522,8 +10713,8 @@ class PlaceOutletComponent extends DisposableComponent {
|
|
|
11522
10713
|
this.onAnimationFinishedJob = undefined;
|
|
11523
10714
|
}
|
|
11524
10715
|
}
|
|
11525
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceOutletComponent, deps: [{ token: i1$
|
|
11526
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: PlaceOutletComponent, selector: "aup-place-outlet", inputs: { animate$: "animate$", animate: "animate", customPlaceAnimationOrder$: ["placeAnimationOrderModel", "customPlaceAnimationOrder$"], customPlaceAnimationOrder: ["placeAnimationOrder", "customPlaceAnimationOrder"] }, outputs: { placeChanged: "placeChanged" }, host: { properties: { "class.authorised": "this.isAuthorised" } }, viewQueries: [{ propertyName: "routerOut", first: true, predicate: ["routeOutlet"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"animationEnabled.value\">\n <div class=\"router-outlet-container\"\n cdkScrollable\n [@routeAnimations]=\"{value: getAnimationOrder(), params:{duration: animationDuration}}\"\n (@routeAnimations.start)=\"animationStarted()\"\n (@routeAnimations.done)=\"animationDone()\"\n >\n <router-outlet #routerOutlet=\"outlet\"\n (activate)=\"onOutletActivated(routerOutlet, $event)\"\n (deactivate)=\"onOutletDeactivated()\">\n </router-outlet>\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"!animationEnabled.value\">\n <div class=\"router-outlet-container\"\n cdkScrollable>\n <router-outlet #routerOutlet=\"outlet\"\n (activate)=\"onOutletActivated(routerOutlet, $event)\"\n (deactivate)=\"onOutletDeactivated()\">\n </router-outlet>\n </div>\n</ng-container>\n\n<div class=\"not-authorised-component-container\" *ngIf=\"!authorised.value\">\n <ng-template [cdkPortalOutlet]=\"notAuthorisedNoticePortal\"></ng-template>\n</div>\n", styles: [":host{display:flex;flex-direction:column;min-height:0}:host:not(.authorised) .router-outlet-container{display:none}.router-outlet-container{flex:1;display:block;position:relative;min-height:0;overflow-x:hidden;overflow-y:auto}router-outlet{display:none}.not-authorised-component-container{flex:1;display:grid;grid-template-columns:1fr;grid-template-rows:1fr}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$
|
|
10716
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceOutletComponent, deps: [{ token: i1$4.Router }, { token: PlaceRouter }, { token: AUP_PLACE_CONFIG, optional: true }, { token: AUP_UNAUTHORISED_PLACE_NOTICE_COMPONENT, optional: true }, { token: PlaceOutletComponent, optional: true, skipSelf: true }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
10717
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: PlaceOutletComponent, selector: "aup-place-outlet", inputs: { animate$: "animate$", animate: "animate", customPlaceAnimationOrder$: ["placeAnimationOrderModel", "customPlaceAnimationOrder$"], customPlaceAnimationOrder: ["placeAnimationOrder", "customPlaceAnimationOrder"] }, outputs: { placeChanged: "placeChanged" }, host: { properties: { "class.authorised": "this.isAuthorised" } }, viewQueries: [{ propertyName: "routerOut", first: true, predicate: ["routeOutlet"], descendants: true, static: true }], usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"animationEnabled.value\">\n <div class=\"router-outlet-container\"\n cdkScrollable\n [@routeAnimations]=\"{value: getAnimationOrder(), params:{duration: animationDuration}}\"\n (@routeAnimations.start)=\"animationStarted()\"\n (@routeAnimations.done)=\"animationDone()\"\n >\n <router-outlet #routerOutlet=\"outlet\"\n (activate)=\"onOutletActivated(routerOutlet, $event)\"\n (deactivate)=\"onOutletDeactivated()\">\n </router-outlet>\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"!animationEnabled.value\">\n <div class=\"router-outlet-container\"\n cdkScrollable>\n <router-outlet #routerOutlet=\"outlet\"\n (activate)=\"onOutletActivated(routerOutlet, $event)\"\n (deactivate)=\"onOutletDeactivated()\">\n </router-outlet>\n </div>\n</ng-container>\n\n<div class=\"not-authorised-component-container\" *ngIf=\"!authorised.value\">\n <ng-template [cdkPortalOutlet]=\"notAuthorisedNoticePortal\"></ng-template>\n</div>\n", styles: [":host{display:flex;flex-direction:column;min-height:0}:host:not(.authorised) .router-outlet-container{display:none}.router-outlet-container{flex:1;display:block;position:relative;min-height:0;overflow-x:hidden;overflow-y:auto}router-outlet{display:none}.not-authorised-component-container{flex:1;display:grid;grid-template-columns:1fr;grid-template-rows:1fr}\n"], dependencies: [{ kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$4.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i1$2.CdkScrollable, selector: "[cdk-scrollable], [cdkScrollable]" }, { kind: "directive", type: i3$2.CdkPortalOutlet, selector: "[cdkPortalOutlet]", inputs: ["cdkPortalOutlet"], outputs: ["attached"], exportAs: ["cdkPortalOutlet"] }], animations: [LEFT_RIGHT_PLACE_ANIMATION] });
|
|
11527
10718
|
}
|
|
11528
10719
|
__decorate([
|
|
11529
10720
|
Proxify(),
|
|
@@ -11544,7 +10735,7 @@ __decorate([
|
|
|
11544
10735
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceOutletComponent, decorators: [{
|
|
11545
10736
|
type: Component,
|
|
11546
10737
|
args: [{ selector: 'aup-place-outlet', animations: [LEFT_RIGHT_PLACE_ANIMATION], template: "<ng-container *ngIf=\"animationEnabled.value\">\n <div class=\"router-outlet-container\"\n cdkScrollable\n [@routeAnimations]=\"{value: getAnimationOrder(), params:{duration: animationDuration}}\"\n (@routeAnimations.start)=\"animationStarted()\"\n (@routeAnimations.done)=\"animationDone()\"\n >\n <router-outlet #routerOutlet=\"outlet\"\n (activate)=\"onOutletActivated(routerOutlet, $event)\"\n (deactivate)=\"onOutletDeactivated()\">\n </router-outlet>\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"!animationEnabled.value\">\n <div class=\"router-outlet-container\"\n cdkScrollable>\n <router-outlet #routerOutlet=\"outlet\"\n (activate)=\"onOutletActivated(routerOutlet, $event)\"\n (deactivate)=\"onOutletDeactivated()\">\n </router-outlet>\n </div>\n</ng-container>\n\n<div class=\"not-authorised-component-container\" *ngIf=\"!authorised.value\">\n <ng-template [cdkPortalOutlet]=\"notAuthorisedNoticePortal\"></ng-template>\n</div>\n", styles: [":host{display:flex;flex-direction:column;min-height:0}:host:not(.authorised) .router-outlet-container{display:none}.router-outlet-container{flex:1;display:block;position:relative;min-height:0;overflow-x:hidden;overflow-y:auto}router-outlet{display:none}.not-authorised-component-container{flex:1;display:grid;grid-template-columns:1fr;grid-template-rows:1fr}\n"] }]
|
|
11547
|
-
}], ctorParameters: function () { return [{ type: i1$
|
|
10738
|
+
}], ctorParameters: function () { return [{ type: i1$4.Router }, { type: PlaceRouter }, { type: undefined, decorators: [{
|
|
11548
10739
|
type: Optional
|
|
11549
10740
|
}, {
|
|
11550
10741
|
type: Inject,
|
|
@@ -11558,7 +10749,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
11558
10749
|
type: SkipSelf
|
|
11559
10750
|
}, {
|
|
11560
10751
|
type: Optional
|
|
11561
|
-
}] }]; }, propDecorators: { animate$: [{
|
|
10752
|
+
}] }, { type: i0.ChangeDetectorRef }]; }, propDecorators: { animate$: [{
|
|
11562
10753
|
type: Input
|
|
11563
10754
|
}], animate: [{
|
|
11564
10755
|
type: Input
|
|
@@ -11691,7 +10882,7 @@ class ListPlaceNavComponent extends AbstractPlaceNavigationComponent {
|
|
|
11691
10882
|
super(router);
|
|
11692
10883
|
}
|
|
11693
10884
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ListPlaceNavComponent, deps: [{ token: PlaceRouter }], target: i0.ɵɵFactoryTarget.Component });
|
|
11694
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ListPlaceNavComponent, selector: "aup-list-place-nav", usesInheritance: true, ngImport: i0, template: "<mat-nav-list fxFlex>\n <a mat-list-item *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n aup-gc #gc=\"aup-gc\"\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [class.active]=\"item.active\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\">\n <aup-command-face [faces]=\"[getNavigationFace(item.place)]\"></aup-command-face>\n </a>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--selected-border-color: #838383;--selected-color: inherit;--selected-background: #f1f1f1}mat-nav-list{padding-top:0}a{border-right:2px solid transparent}a.active{border-right:2px solid var(--selected-border-color);background:var(--selected-background);color:var(--selected-color)}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3$3.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i3$3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i4$1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: GarbageCollectorDirective, selector: "[aup-gc]", exportAs: ["aup-gc"] }, { kind: "component", type: CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }] });
|
|
10885
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: ListPlaceNavComponent, selector: "aup-list-place-nav", usesInheritance: true, ngImport: i0, template: "<mat-nav-list fxFlex>\n <a mat-list-item *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n aup-gc #gc=\"aup-gc\"\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [class.active]=\"item.active\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\">\n <aup-command-face [faces]=\"[getNavigationFace(item.place)]\"></aup-command-face>\n </a>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--selected-border-color: #838383;--selected-color: inherit;--selected-background: #f1f1f1}mat-nav-list{padding-top:0}a{border-right:2px solid transparent}a.active{border-right:2px solid var(--selected-border-color);background:var(--selected-background);color:var(--selected-color)}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3$3.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i3$3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i4$1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: GarbageCollectorDirective, selector: "[aup-gc]", exportAs: ["aup-gc"] }, { kind: "directive", type: i7$1.DefaultFlexDirective, selector: " [fxFlex], [fxFlex.xs], [fxFlex.sm], [fxFlex.md], [fxFlex.lg], [fxFlex.xl], [fxFlex.lt-sm], [fxFlex.lt-md], [fxFlex.lt-lg], [fxFlex.lt-xl], [fxFlex.gt-xs], [fxFlex.gt-sm], [fxFlex.gt-md], [fxFlex.gt-lg]", inputs: ["fxFlex", "fxFlex.xs", "fxFlex.sm", "fxFlex.md", "fxFlex.lg", "fxFlex.xl", "fxFlex.lt-sm", "fxFlex.lt-md", "fxFlex.lt-lg", "fxFlex.lt-xl", "fxFlex.gt-xs", "fxFlex.gt-sm", "fxFlex.gt-md", "fxFlex.gt-lg"] }, { kind: "component", type: CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }] });
|
|
11695
10886
|
}
|
|
11696
10887
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ListPlaceNavComponent, decorators: [{
|
|
11697
10888
|
type: Component,
|
|
@@ -11766,7 +10957,7 @@ class SidePlaceNavigationComponent extends AbstractPlaceNavigationComponent {
|
|
|
11766
10957
|
this.expanded = !this.expanded;
|
|
11767
10958
|
}
|
|
11768
10959
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SidePlaceNavigationComponent, deps: [{ token: PlaceRouter }], target: i0.ɵɵFactoryTarget.Component });
|
|
11769
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SidePlaceNavigationComponent, selector: "aup-side-place-navigation", inputs: { expanded$: "expanded$", expanded: "expanded" }, host: { properties: { "class.expanded": "this.expanded" } }, queries: [{ propertyName: "navEndTemplate", first: true, predicate: ["navEndTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\">\n <aup-icon matListItemIcon [icon]=\"homeIcon$.value\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">Menu</span>\n </a>\n <a *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n mat-list-item\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [activated]=\"item.active\"\n aup-gc #gc=\"aup-gc\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\"\n >\n <aup-icon matListItemIcon *ngIf=\"getNavigationFace(item.place).icon()\" [icon]=\"getNavigationFace(item.place).icon()\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">{{getNavigationFace(item.place).text()}}</span>\n </a>\n <span [style.flex]=\"1\"></span>\n <ng-container *ngIf=\"navEndTemplate\" [ngTemplateOutlet]=\"navEndTemplate\"></ng-container>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--resolved-nav-item-width: var(--nav-width, 56px);--resolved-expanded-width: var(--nav-expanded-width, 235px);--resolved-color: var(--nav-color, rgba(255, 255, 255, .9));--resolved-background-color: var(--nav-background-color, #555);color:var(--resolved-color);background-color:var(--resolved-background-color);width:var(--resolved-nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--resolved-expanded-width);max-width:var(--resolved-expanded-width)}:host aup-icon{margin-right:12px}:host>mat-nav-list{flex:1;display:flex;flex-direction:column;padding:0}:host .mat-mdc-list-item,:host .mat-mdc-list-item-icon,:host .mat-mdc-list-item-icon.activated,:host .mdc-list-
|
|
10960
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: SidePlaceNavigationComponent, selector: "aup-side-place-navigation", inputs: { expanded$: "expanded$", expanded: "expanded" }, host: { properties: { "class.expanded": "this.expanded" } }, queries: [{ propertyName: "navEndTemplate", first: true, predicate: ["navEndTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\">\n <aup-icon matListItemIcon [icon]=\"homeIcon$.value\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">Menu</span>\n </a>\n <a *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n mat-list-item\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [activated]=\"item.active\"\n aup-gc #gc=\"aup-gc\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\"\n >\n <aup-icon matListItemIcon *ngIf=\"getNavigationFace(item.place).icon()\" [icon]=\"getNavigationFace(item.place).icon()\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">{{getNavigationFace(item.place).text()}}</span>\n </a>\n <span [style.flex]=\"1\"></span>\n <ng-container *ngIf=\"navEndTemplate\" [ngTemplateOutlet]=\"navEndTemplate\"></ng-container>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--resolved-nav-item-width: var(--nav-width, 56px);--resolved-expanded-width: var(--nav-expanded-width, 235px);--resolved-color: var(--nav-color, rgba(255, 255, 255, .9));--resolved-background-color: var(--nav-background-color, #555);color:var(--resolved-color);background-color:var(--resolved-background-color);width:var(--resolved-nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--resolved-expanded-width);max-width:var(--resolved-expanded-width)}:host aup-icon{margin-right:12px}:host>mat-nav-list{flex:1;display:flex;flex-direction:column;padding:0}:host .mat-mdc-list-item,:host .mat-mdc-list-item-icon,:host .mat-mdc-list-item-icon.activated,:host .mdc-list-item__primary-text{color:var(--resolved-color)}:host .mdc-list-item--activated .mdc-list-item__primary-text,:host .mdc-list-item--activated .mat-mdc-list-item-icon{color:var(--resolved-color)}:host .mdc-list-item--activated{background-color:#444}:host *.flip-horizontal{transform:scaleX(-1)}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i3$3.MatNavList, selector: "mat-nav-list", exportAs: ["matNavList"] }, { kind: "component", type: i3$3.MatListItem, selector: "mat-list-item, a[mat-list-item], button[mat-list-item]", inputs: ["activated"], exportAs: ["matListItem"] }, { kind: "directive", type: i3$3.MatListItemIcon, selector: "[matListItemIcon]" }, { kind: "directive", type: i3$3.MatListItemTitle, selector: "[matListItemTitle]" }, { kind: "directive", type: i4$1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: GarbageCollectorDirective, selector: "[aup-gc]", exportAs: ["aup-gc"] }, { kind: "component", type: IconComponent, selector: "aup-icon", inputs: ["icon"] }] });
|
|
11770
10961
|
}
|
|
11771
10962
|
__decorate([
|
|
11772
10963
|
Proxify(),
|
|
@@ -11778,7 +10969,7 @@ __decorate([
|
|
|
11778
10969
|
], SidePlaceNavigationComponent.prototype, "expanded", null);
|
|
11779
10970
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: SidePlaceNavigationComponent, decorators: [{
|
|
11780
10971
|
type: Component,
|
|
11781
|
-
args: [{ selector: 'aup-side-place-navigation', template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\">\n <aup-icon matListItemIcon [icon]=\"homeIcon$.value\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">Menu</span>\n </a>\n <a *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n mat-list-item\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [activated]=\"item.active\"\n aup-gc #gc=\"aup-gc\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\"\n >\n <aup-icon matListItemIcon *ngIf=\"getNavigationFace(item.place).icon()\" [icon]=\"getNavigationFace(item.place).icon()\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">{{getNavigationFace(item.place).text()}}</span>\n </a>\n <span [style.flex]=\"1\"></span>\n <ng-container *ngIf=\"navEndTemplate\" [ngTemplateOutlet]=\"navEndTemplate\"></ng-container>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--resolved-nav-item-width: var(--nav-width, 56px);--resolved-expanded-width: var(--nav-expanded-width, 235px);--resolved-color: var(--nav-color, rgba(255, 255, 255, .9));--resolved-background-color: var(--nav-background-color, #555);color:var(--resolved-color);background-color:var(--resolved-background-color);width:var(--resolved-nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--resolved-expanded-width);max-width:var(--resolved-expanded-width)}:host aup-icon{margin-right:12px}:host>mat-nav-list{flex:1;display:flex;flex-direction:column;padding:0}:host .mat-mdc-list-item,:host .mat-mdc-list-item-icon,:host .mat-mdc-list-item-icon.activated,:host .mdc-list-
|
|
10972
|
+
args: [{ selector: 'aup-side-place-navigation', template: "<mat-nav-list>\n <a mat-list-item (click)=\"toggleMenu()\">\n <aup-icon matListItemIcon [icon]=\"homeIcon$.value\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">Menu</span>\n </a>\n <a *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n mat-list-item\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [activated]=\"item.active\"\n aup-gc #gc=\"aup-gc\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\"\n >\n <aup-icon matListItemIcon *ngIf=\"getNavigationFace(item.place).icon()\" [icon]=\"getNavigationFace(item.place).icon()\"></aup-icon>\n <span matListItemTitle class=\"expanded-only\">{{getNavigationFace(item.place).text()}}</span>\n </a>\n <span [style.flex]=\"1\"></span>\n <ng-container *ngIf=\"navEndTemplate\" [ngTemplateOutlet]=\"navEndTemplate\"></ng-container>\n</mat-nav-list>\n", styles: [":host{display:flex;flex-direction:column;--resolved-nav-item-width: var(--nav-width, 56px);--resolved-expanded-width: var(--nav-expanded-width, 235px);--resolved-color: var(--nav-color, rgba(255, 255, 255, .9));--resolved-background-color: var(--nav-background-color, #555);color:var(--resolved-color);background-color:var(--resolved-background-color);width:var(--resolved-nav-item-width);transition:width 125ms linear}:host.expanded{width:var(--resolved-expanded-width);max-width:var(--resolved-expanded-width)}:host aup-icon{margin-right:12px}:host>mat-nav-list{flex:1;display:flex;flex-direction:column;padding:0}:host .mat-mdc-list-item,:host .mat-mdc-list-item-icon,:host .mat-mdc-list-item-icon.activated,:host .mdc-list-item__primary-text{color:var(--resolved-color)}:host .mdc-list-item--activated .mdc-list-item__primary-text,:host .mdc-list-item--activated .mat-mdc-list-item-icon{color:var(--resolved-color)}:host .mdc-list-item--activated{background-color:#444}:host *.flip-horizontal{transform:scaleX(-1)}\n"] }]
|
|
11782
10973
|
}], ctorParameters: function () { return [{ type: PlaceRouter }]; }, propDecorators: { expanded$: [{
|
|
11783
10974
|
type: Input
|
|
11784
10975
|
}], expanded: [{
|
|
@@ -11796,7 +10987,7 @@ class TabbedPlaceNavigationComponent extends AbstractPlaceNavigationComponent {
|
|
|
11796
10987
|
super(router);
|
|
11797
10988
|
}
|
|
11798
10989
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabbedPlaceNavigationComponent, deps: [{ token: PlaceRouter }], target: i0.ɵɵFactoryTarget.Component });
|
|
11799
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TabbedPlaceNavigationComponent, selector: "aup-tabbed-place-navigation", usesInheritance: true, ngImport: i0, template: "<nav mat-tab-nav-bar [tabPanel]=\"tabPanel\">\n <ng-content select=\"[nav-start]\"></ng-content>\n <a mat-tab-link *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n aup-gc #gc=\"aup-gc\"\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [active]=\"item.active\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\">\n <aup-command-face [faces]=\"[getNavigationFace(item.place)]\"></aup-command-face>\n </a>\n <ng-content select=\"[nav-end]\"></ng-content>\n</nav>\n<mat-tab-nav-panel #tabPanel></mat-tab-nav-panel>\n", styles: [":host{display:block}div.place-holder{border:1px solid green}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3$
|
|
10990
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.9", type: TabbedPlaceNavigationComponent, selector: "aup-tabbed-place-navigation", usesInheritance: true, ngImport: i0, template: "<nav mat-tab-nav-bar [tabPanel]=\"tabPanel\">\n <ng-content select=\"[nav-start]\"></ng-content>\n <a mat-tab-link *ngFor=\"let item of menuItems.value; trackBy: trackByPlaceDef\"\n aup-gc #gc=\"aup-gc\"\n [pectinCommand]=\"commandFactory.create(item.place, {disposedWith: gc})\"\n [active]=\"item.active\"\n [matTooltip]=\"getNavigationFace(item.place).tooltip()\">\n <aup-command-face [faces]=\"[getNavigationFace(item.place)]\"></aup-command-face>\n </a>\n <ng-content select=\"[nav-end]\"></ng-content>\n</nav>\n<mat-tab-nav-panel #tabPanel></mat-tab-nav-panel>\n", styles: [":host{display:block}div.place-holder{border:1px solid green}\n"], dependencies: [{ kind: "directive", type: i1$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "component", type: i3$1.MatTabNav, selector: "[mat-tab-nav-bar]", inputs: ["color", "fitInkBarToContent", "mat-stretch-tabs", "animationDuration"], exportAs: ["matTabNavBar", "matTabNav"] }, { kind: "component", type: i3$1.MatTabNavPanel, selector: "mat-tab-nav-panel", inputs: ["id"], exportAs: ["matTabNavPanel"] }, { kind: "component", type: i3$1.MatTabLink, selector: "[mat-tab-link], [matTabLink]", inputs: ["disabled", "disableRipple", "tabIndex", "active", "id"], exportAs: ["matTabLink"] }, { kind: "directive", type: i4$1.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: CommandDirective, selector: "[pectinCommand]", inputs: ["pectinCommand", "commandParameter"] }, { kind: "directive", type: GarbageCollectorDirective, selector: "[aup-gc]", exportAs: ["aup-gc"] }, { kind: "component", type: CommandFaceComponent, selector: "aup-command-face", inputs: ["faces", "face", "ignoreIcon", "ignoreText", "includeMissingIconInLayout"] }] });
|
|
11800
10991
|
}
|
|
11801
10992
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: TabbedPlaceNavigationComponent, decorators: [{
|
|
11802
10993
|
type: Component,
|
|
@@ -11819,6 +11010,7 @@ class PlaceModule {
|
|
|
11819
11010
|
MatTooltipModule,
|
|
11820
11011
|
MatIconModule,
|
|
11821
11012
|
DirectivesModule,
|
|
11013
|
+
FlexModule,
|
|
11822
11014
|
ComponentsModule,
|
|
11823
11015
|
PortalModule,
|
|
11824
11016
|
MatCardModule], exports: [PlaceOutletComponent,
|
|
@@ -11835,6 +11027,7 @@ class PlaceModule {
|
|
|
11835
11027
|
MatTooltipModule,
|
|
11836
11028
|
MatIconModule,
|
|
11837
11029
|
DirectivesModule,
|
|
11030
|
+
FlexModule,
|
|
11838
11031
|
ComponentsModule,
|
|
11839
11032
|
PortalModule,
|
|
11840
11033
|
MatCardModule] });
|
|
@@ -11852,6 +11045,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
11852
11045
|
MatTooltipModule,
|
|
11853
11046
|
MatIconModule,
|
|
11854
11047
|
DirectivesModule,
|
|
11048
|
+
FlexModule,
|
|
11855
11049
|
ComponentsModule,
|
|
11856
11050
|
PortalModule,
|
|
11857
11051
|
MatCardModule
|
|
@@ -11941,44 +11135,60 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
11941
11135
|
}]
|
|
11942
11136
|
}] });
|
|
11943
11137
|
|
|
11138
|
+
const slideDownOnEnterDef = style({
|
|
11139
|
+
opacity: 0,
|
|
11140
|
+
'height': '0',
|
|
11141
|
+
paddingTop: '0',
|
|
11142
|
+
paddingBottom: '0'
|
|
11143
|
+
});
|
|
11144
|
+
// TODO: params aren't getting customised in the view. Need to figure out the correct approach.
|
|
11145
|
+
const slideDownOnEnterAnimation = trigger('slideDownOnEnter', [
|
|
11146
|
+
transition(':enter', [slideDownOnEnterDef, animate('{{duration}}')], { params: { duration: '100ms' } }),
|
|
11147
|
+
transition(':leave', [animate('{{duration}}', slideDownOnEnterDef)], { params: { duration: '100ms' } })
|
|
11148
|
+
]);
|
|
11149
|
+
const slideLeftOnEnterDef = style({
|
|
11150
|
+
opacity: 0,
|
|
11151
|
+
'width': '0',
|
|
11152
|
+
paddingLeft: '0',
|
|
11153
|
+
paddingRight: '0'
|
|
11154
|
+
});
|
|
11155
|
+
const slideRightOnEnterAnimation = trigger('slideRightOnEnter', [
|
|
11156
|
+
transition(':enter', [slideLeftOnEnterDef, animate('{{duration}}')], { params: { duration: '100ms' } }),
|
|
11157
|
+
transition(':leave', [animate('{{duration}}', slideLeftOnEnterDef)], { params: { duration: '100ms' } })
|
|
11158
|
+
]);
|
|
11159
|
+
const ZERO_WIDTH = {
|
|
11160
|
+
opacity: 0,
|
|
11161
|
+
width: '0',
|
|
11162
|
+
paddingLeft: '0',
|
|
11163
|
+
paddingRight: '0',
|
|
11164
|
+
};
|
|
11165
|
+
const ZERO_HEIGHT = {
|
|
11166
|
+
opacity: 0,
|
|
11167
|
+
height: '0',
|
|
11168
|
+
paddingTop: '0',
|
|
11169
|
+
paddingBottom: '0',
|
|
11170
|
+
};
|
|
11171
|
+
const slideDownAndRightOnEnterAnimation = trigger('slideDownAndRightOnEnter', [
|
|
11172
|
+
transition(':enter', [
|
|
11173
|
+
style({ overflow: "hidden", whiteSpace: "nowrap", ...ZERO_WIDTH, ...ZERO_HEIGHT }),
|
|
11174
|
+
animate('{{duration}}')
|
|
11175
|
+
], { params: { duration: '100ms' } }),
|
|
11176
|
+
transition(':leave', [
|
|
11177
|
+
style({ overflow: "hidden", whiteSpace: "nowrap" }),
|
|
11178
|
+
group([
|
|
11179
|
+
animate('{{duration}}', style(ZERO_HEIGHT)),
|
|
11180
|
+
// Hack: 100ms is too quick as it animates from * - 0 as we only see it animate the width is greater than the parent.
|
|
11181
|
+
// Not sure how to animate from * to natural new width of parent. This hack won't work for text that's just a little
|
|
11182
|
+
// bit wider than the parent as it'll fall within the parent bounds very early in the animation cycle.
|
|
11183
|
+
animate('300ms', style(ZERO_WIDTH)),
|
|
11184
|
+
])
|
|
11185
|
+
], { params: { duration: '100ms' } })
|
|
11186
|
+
]);
|
|
11187
|
+
|
|
11944
11188
|
/**
|
|
11945
11189
|
* @file Automatically generated by barrelsby.
|
|
11946
11190
|
*/
|
|
11947
11191
|
|
|
11948
|
-
class ResizeObserverDirective extends DisposableComponent {
|
|
11949
|
-
aupOnResize = new EventEmitter();
|
|
11950
|
-
elementRef = this.inject(ElementRef);
|
|
11951
|
-
ngZone = this.inject(NgZone);
|
|
11952
|
-
_bounds$ = new MutableValueModel();
|
|
11953
|
-
ngAfterViewInit() {
|
|
11954
|
-
const element = this.elementRef.nativeElement;
|
|
11955
|
-
const ro = new ResizeObserver((entries, observer) => {
|
|
11956
|
-
this.ngZone.run(() => this._updateBounds());
|
|
11957
|
-
});
|
|
11958
|
-
ro.observe(element);
|
|
11959
|
-
this.onDispose(() => ro.disconnect());
|
|
11960
|
-
setTimeout(() => this._updateBounds());
|
|
11961
|
-
}
|
|
11962
|
-
get bounds$() {
|
|
11963
|
-
return this._bounds$.readonly$;
|
|
11964
|
-
}
|
|
11965
|
-
_updateBounds() {
|
|
11966
|
-
this._bounds$.value = Bounds.ofElement(this.elementRef.nativeElement);
|
|
11967
|
-
this.aupOnResize.emit(this._bounds$.value);
|
|
11968
|
-
}
|
|
11969
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeObserverDirective, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
11970
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "16.2.9", type: ResizeObserverDirective, isStandalone: true, selector: "[aupOnResize]", outputs: { aupOnResize: "aupOnResize" }, usesInheritance: true, ngImport: i0 });
|
|
11971
|
-
}
|
|
11972
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: ResizeObserverDirective, decorators: [{
|
|
11973
|
-
type: Directive,
|
|
11974
|
-
args: [{
|
|
11975
|
-
selector: "[aupOnResize]",
|
|
11976
|
-
standalone: true
|
|
11977
|
-
}]
|
|
11978
|
-
}], propDecorators: { aupOnResize: [{
|
|
11979
|
-
type: Output
|
|
11980
|
-
}] } });
|
|
11981
|
-
|
|
11982
11192
|
/**
|
|
11983
11193
|
* @file Automatically generated by barrelsby.
|
|
11984
11194
|
*/
|
|
@@ -12069,7 +11279,7 @@ class DialogInteractionContextFactory extends ModalInteractionContextFactory {
|
|
|
12069
11279
|
};
|
|
12070
11280
|
return new DialogInteractionContext(identifier, api, this.dialogService, config);
|
|
12071
11281
|
}
|
|
12072
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DialogInteractionContextFactory, deps: [{ token: i1$
|
|
11282
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DialogInteractionContextFactory, deps: [{ token: i1$6.MatDialog }, { token: DIALOG_INTERACTION_SERVICE_DEFAULTS, optional: true }, { token: MAT_DIALOG_DEFAULT_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
12073
11283
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DialogInteractionContextFactory, providedIn: 'root' });
|
|
12074
11284
|
}
|
|
12075
11285
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: DialogInteractionContextFactory, decorators: [{
|
|
@@ -12077,12 +11287,12 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
12077
11287
|
args: [{
|
|
12078
11288
|
providedIn: 'root'
|
|
12079
11289
|
}]
|
|
12080
|
-
}], ctorParameters: function () { return [{ type: i1$
|
|
11290
|
+
}], ctorParameters: function () { return [{ type: i1$6.MatDialog }, { type: i1$6.MatDialogConfig, decorators: [{
|
|
12081
11291
|
type: Optional
|
|
12082
11292
|
}, {
|
|
12083
11293
|
type: Inject,
|
|
12084
11294
|
args: [DIALOG_INTERACTION_SERVICE_DEFAULTS]
|
|
12085
|
-
}] }, { type: i1$
|
|
11295
|
+
}] }, { type: i1$6.MatDialogConfig, decorators: [{
|
|
12086
11296
|
type: Optional
|
|
12087
11297
|
}, {
|
|
12088
11298
|
type: Inject,
|
|
@@ -12202,7 +11412,6 @@ class PlaceGuard {
|
|
|
12202
11412
|
}
|
|
12203
11413
|
// @Trace()
|
|
12204
11414
|
async canActivate(activatedRoute, state) {
|
|
12205
|
-
await this.placeRouter.waitUntilRouterReady();
|
|
12206
11415
|
if (PlaceComponent.isPlaceComponentConstructor(activatedRoute.component)) {
|
|
12207
11416
|
const placeDefinition = PlaceComponent.getDefinition(activatedRoute.component);
|
|
12208
11417
|
if (placeDefinition.authenticate) {
|
|
@@ -12315,13 +11524,13 @@ class PlaceGuard {
|
|
|
12315
11524
|
return next();
|
|
12316
11525
|
}
|
|
12317
11526
|
}
|
|
12318
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceGuard, deps: [{ token: i1$
|
|
11527
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceGuard, deps: [{ token: i1$4.Router }, { token: UrlService }, { token: PlaceRouter }, { token: PlaceHistory }, { token: InteractionService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
12319
11528
|
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceGuard, providedIn: 'root' });
|
|
12320
11529
|
}
|
|
12321
11530
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImport: i0, type: PlaceGuard, decorators: [{
|
|
12322
11531
|
type: Injectable,
|
|
12323
11532
|
args: [{ providedIn: 'root' }]
|
|
12324
|
-
}], ctorParameters: function () { return [{ type: i1$
|
|
11533
|
+
}], ctorParameters: function () { return [{ type: i1$4.Router }, { type: UrlService }, { type: PlaceRouter }, { type: PlaceHistory }, { type: InteractionService }, { type: i0.Injector }]; } });
|
|
12325
11534
|
|
|
12326
11535
|
var Formatter;
|
|
12327
11536
|
(function (Formatter) {
|
|
@@ -12355,74 +11564,69 @@ var Formatter;
|
|
|
12355
11564
|
Formatter.BOOLEAN = new BooleanType();
|
|
12356
11565
|
})(Formatter || (Formatter = {}));
|
|
12357
11566
|
|
|
12358
|
-
|
|
12359
|
-
|
|
12360
|
-
|
|
12361
|
-
|
|
12362
|
-
|
|
12363
|
-
|
|
12364
|
-
|
|
12365
|
-
|
|
12366
|
-
|
|
12367
|
-
|
|
12368
|
-
|
|
12369
|
-
|
|
12370
|
-
|
|
12371
|
-
|
|
12372
|
-
|
|
12373
|
-
|
|
12374
|
-
|
|
12375
|
-
|
|
12376
|
-
|
|
12377
|
-
|
|
12378
|
-
|
|
12379
|
-
//
|
|
12380
|
-
//
|
|
12381
|
-
|
|
12382
|
-
|
|
12383
|
-
|
|
12384
|
-
|
|
12385
|
-
|
|
12386
|
-
|
|
12387
|
-
|
|
12388
|
-
|
|
12389
|
-
|
|
12390
|
-
//
|
|
12391
|
-
|
|
12392
|
-
|
|
12393
|
-
|
|
12394
|
-
|
|
12395
|
-
|
|
12396
|
-
|
|
12397
|
-
|
|
12398
|
-
|
|
12399
|
-
|
|
12400
|
-
|
|
12401
|
-
|
|
12402
|
-
|
|
12403
|
-
// });
|
|
12404
|
-
// }
|
|
11567
|
+
function installMechanics(parameterDef, prototype, propertyKey, tagPrefix) {
|
|
11568
|
+
Klass.get(prototype).addToOwnMetadataList(ROUTE_PARAMETER_LIST_KEY, parameterDef);
|
|
11569
|
+
function getMechanics(instance, propertyName) {
|
|
11570
|
+
const key = `__mechanics_${propertyName.toString()}`;
|
|
11571
|
+
if (!instance[key]) {
|
|
11572
|
+
const backingModel = parameterDef.createBackingModel();
|
|
11573
|
+
instance[key] = {
|
|
11574
|
+
backingModel: backingModel,
|
|
11575
|
+
binding: null
|
|
11576
|
+
};
|
|
11577
|
+
const tag = `${tagPrefix}(${prototype.constructor.name}.${propertyKey.toString()})`;
|
|
11578
|
+
DebugContext.getOrCreate(instance[key].backingModel).tag(tag);
|
|
11579
|
+
}
|
|
11580
|
+
return instance[key];
|
|
11581
|
+
}
|
|
11582
|
+
Object.defineProperty(prototype, propertyKey, {
|
|
11583
|
+
get: function () {
|
|
11584
|
+
return getMechanics(this, propertyKey).backingModel;
|
|
11585
|
+
},
|
|
11586
|
+
set: function (userModel) {
|
|
11587
|
+
const mechanics = getMechanics(this, propertyKey);
|
|
11588
|
+
// This handles the scenario where we want to push an existing value model (such as a form model)
|
|
11589
|
+
// to and from the route.
|
|
11590
|
+
if (mechanics.binding) {
|
|
11591
|
+
mechanics.binding.dispose();
|
|
11592
|
+
}
|
|
11593
|
+
if (userModel) {
|
|
11594
|
+
mechanics.binding = new Binding(mechanics.backingModel, userModel, {
|
|
11595
|
+
toLeft: Functions.identity,
|
|
11596
|
+
toRight: Functions.identity
|
|
11597
|
+
});
|
|
11598
|
+
if (parameterDef.isEmptyValue(userModel.value)) {
|
|
11599
|
+
// console.log(`Push visit to model for ${tag}`, {value: mechanics.backingModel.value});
|
|
11600
|
+
mechanics.binding.writeRight(); // push the visit into the user model;
|
|
11601
|
+
}
|
|
11602
|
+
else {
|
|
11603
|
+
if (!parameterDef.isEmptyValue(mechanics.backingModel.value)) {
|
|
11604
|
+
console.warn('Assigning a visit model with an existing value to a visit parameter with an existing value. Visit parameter will be overridden');
|
|
11605
|
+
}
|
|
11606
|
+
mechanics.binding.writeLeft(); // push the user model into the visit
|
|
11607
|
+
}
|
|
11608
|
+
}
|
|
11609
|
+
}
|
|
11610
|
+
});
|
|
11611
|
+
}
|
|
12405
11612
|
function RouteId(formatter, options) {
|
|
12406
11613
|
return (prototype, propertyKey) => {
|
|
12407
11614
|
const parameterDef = new ParameterDefinition.RouteId(propertyKey.toString(), options, formatter);
|
|
12408
|
-
|
|
12409
|
-
Klass.get(prototype).addToOwnMetadataList(ROUTE_PARAMETER_LIST_KEY, parameterDef);
|
|
11615
|
+
installMechanics(parameterDef, prototype, propertyKey, '@RouteId');
|
|
12410
11616
|
};
|
|
12411
11617
|
}
|
|
12412
11618
|
function VisitParameter(options) {
|
|
12413
11619
|
const opts = Opts.get(options);
|
|
12414
11620
|
return (prototype, propertyKey) => {
|
|
12415
11621
|
const parameterDef = new ParameterDefinition.ValueParameter(propertyKey.toString(), options, opts.getOptional('storeInUrl', null));
|
|
12416
|
-
|
|
12417
|
-
// installMechanics(parameterDef, prototype, propertyKey, '@VisitParameter');
|
|
11622
|
+
installMechanics(parameterDef, prototype, propertyKey, '@VisitParameter');
|
|
12418
11623
|
};
|
|
12419
11624
|
}
|
|
12420
11625
|
function VisitParameterList(options) {
|
|
12421
11626
|
const opts = Opts.get(options);
|
|
12422
11627
|
return (prototype, propertyKey) => {
|
|
12423
11628
|
const parameterDef = new ParameterDefinition.ArrayParameter(propertyKey.toString(), options, opts.getOptional('storeInUrl', null));
|
|
12424
|
-
|
|
12425
|
-
// installMechanics(parameterDef, prototype, propertyKey, '@VisitParameterList');
|
|
11629
|
+
installMechanics(parameterDef, prototype, propertyKey, '@VisitParameterList');
|
|
12426
11630
|
};
|
|
12427
11631
|
}
|
|
12428
11632
|
|
|
@@ -12516,5 +11720,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.9", ngImpor
|
|
|
12516
11720
|
* Generated bundle index. Do not edit.
|
|
12517
11721
|
*/
|
|
12518
11722
|
|
|
12519
|
-
export { ACTIVITY_DATA, ALERT_CONFIG, AUP_PLACE_CONFIG,
|
|
11723
|
+
export { ACTIVITY_DATA, ALERT_CONFIG, AUP_PLACE_CONFIG, AUP_UNAUTHORISED_PLACE_NOTICE_COMPONENT, AbstractActivityTriggerComponent, AbstractCardContainerComponent, AbstractConfirmDialogComponent, AbstractDialogComponent, AbstractInputComponent, AbstractInteractionContext, AbstractListInputComponent, AbstractPlaceNavigationComponent, AbstractPopStateNavigation, AbstractPopupMenuComponent, AbstractTableComponent, AbstractTableModel, AbstractValueInputComponent, Activity, ActivityActionsComponent, ActivityBodyComponent, ActivityContainerComponent, ActivityOutletComponent, ActivityRef, ActivityTitleComponent, AddCardActivityComponent, AddItemInteractionContextComponent, Alert, AlertDialogComponent, AngularUiPowerupsModule, AutocompleteInputComponent, Bounds, BusyOverlayComponent, CELL_EDITOR_PORTAL, CELL_RENDERER_PORTAL, CardContainerComponent, CellEditorPortalRef, CellHeaderPortalRef, CellPortalRef, CellRendererPortalRef, CheckboxInputComponent, ColumnListModel, ColumnModel, ColumnTemplateDirective, ColumnTextSearchFormatter, CommandComponent, CommandContainer, CommandDirective, CommandFace, CommandFaceComponent, ComponentCellRendererPortalRef, ComponentsModule, ConfirmThenDialogComponent, ConfirmThenExecuteDialogComponent, ConfirmationDialogComponent, ConsolidatedParameterMap, CustomTemplateColumnModel, CustomValueColumnModel, DEFINITION_META_DATA_KEY, DIALOG_INTERACTION_SERVICE_DEFAULTS, DecoratedTreeNode, DefaultCellRendererComponent, DefaultHeaderCellRendererComponent, DialogInteractionContext, DialogInteractionContextFactory, Dimension, DirectivesModule, DisposableComponent, EditRowControlsComponent, EditSession, EditorControlColumnModel, EmptyStateComponent, EnableCellTextSearch, EventCleanUpSession, FlattenedTreeListModel, FlexComponent, FocusBinding, FocusBindingDirective, FocusBindingFactory, FocusContainerComponent, FocusableComponent, Formatter, GarbageCollectorDirective, HEADER_CELL_RENDERER_PORTAL, HighlightPipe, HighlightTextModelDirective, HorizontalAlignment, IconComponent, InPlaceInteractionContextComponent, InlineActivityTriggerComponent, InlineEditorModel, InlineStringEditorComponent, InputActivity, InteractionContextTriggerForDirective, InteractionModule, InteractionService, InteractionServiceRoutingAdapter, Keys, LEFT_RIGHT_PLACE_ANIMATION, LabelledValueComponent, ListPlaceNavComponent, ListPropertyColumnModel, LoadingContainerComponent, MarkdownComponent, MarkdownService, ModalActivityTriggerComponent, ModalInteractionContextFactory, MoreMenuComponent, MultipleSelectInputComponent, Navigating, NavigatingDuringInteraction, NavigationContext, NavigationSession, NoopAuthGuard, NoopComponent, NotAuthorisedNoticeComponent, NumberInputComponent, POPUP_CONTAINER, PORTAL_EDITOR_COMPONENT, PORTAL_RENDERER_COMPONENT, PaginatorComponent, ParameterDefinition, PasswordInputComponent, Place, PlaceAccessGuard, PlaceAuthService, PlaceComponent, PlaceComponentDeactivationHandler, PlaceDefinition, PlaceGuard, PlaceHistory, PlaceModule, PlaceOutletComponent, PlaceRouter, Point, PopStateDuringInteractionNavigation, PopStateNavigation, PopupActivityTriggerComponent, PopupAwareComponent, PopupInteractionContextComponent, PopupMenuComponent, PopupMenuRendererComponent, PropertyColumnModel, ROUTE_PARAMETER_LIST_KEY, RemoveLastInteractionFromUrlNavigationSession, ResizeAwareComponent, RouteId, ScrollContainerComponent, SectionHeaderComponent, SelectInputActivity, SelectInputComponent, SelectionCellComponent, SelectionColumnModel, SelectionHeaderCellComponent, SeparatorComponent, SidePlaceNavigationComponent, StringInputActivity, StringInputComponent, SwitchCaseComponent, SwitchCaseDefaultDirective, SwitchCaseOption, SwitchCaseWhenDirective, SynchroniseInteractionContextIdsWithRoute, TabbedPlaceNavigationComponent, TableBodyComponent, TableCellComponent, TableComponent, TableFilterModel, TableHeaderCellComponent, TableModel, TableMoreMenuComponent, TableMoreMenuPopupComponent, TableRowMenuComponent, TemplateCellRendererPortalRef, TextInputComponent, ToolBarComponent, Track, TreeExpansionModel, TreeInheritanceIconComponent, TreeLabelCellRendererComponent, TreeLabelColumnModel, TreeTableComponent, TreeTableModel, UrlService, UrlSnapshot, VerticalFocusContainerComponent, VisibilityService, Visit, VisitParameter, VisitParameterList, VisitSegment, VisitSegmentSanitiser, WaitUntilLeavingInteractionTransitionCancelled, WaitUntilLinkTriggeredNavigationInteractionCancellationTypeDetermined, WaitUntilPopStateDuringCanDeactivateInteractionFinishes, leftRightPlaceAnimation, markdownPillExtension, slideDownAndRightOnEnterAnimation, slideDownOnEnterAnimation, slideRightOnEnterAnimation, treeNodeDecorator };
|
|
12520
11724
|
//# sourceMappingURL=coolon-angular-ui-powerups.mjs.map
|