@netgrif/components-core 6.4.0-beta.3 → 6.4.0-beta.5
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/esm2020/lib/actions/front-action.module.mjs +28 -0
- package/esm2020/lib/actions/model/front-action-definition.mjs +2 -0
- package/esm2020/lib/actions/model/router-action-definitions.mjs +8 -0
- package/esm2020/lib/actions/model/task-action-definitions.mjs +16 -0
- package/esm2020/lib/actions/public-api.mjs +6 -0
- package/esm2020/lib/actions/services/front-action.service.mjs +27 -0
- package/esm2020/lib/data-fields/data-fields.module.mjs +1 -1
- package/esm2020/lib/data-fields/models/changed-fields.mjs +1 -1
- package/esm2020/lib/event/model/event-constants.mjs +5 -1
- package/esm2020/lib/event/services/event.service.mjs +23 -1
- package/esm2020/lib/filter/user-filters.service.mjs +1 -1
- package/esm2020/lib/navigation/navigation-double-drawer/abstract-navigation-double-drawer.mjs +45 -1
- package/esm2020/lib/panel/task-panel/abstract-task-panel.component.mjs +5 -2
- package/esm2020/lib/panel/task-panel-single/abstract-single-task.component.mjs +11 -5
- package/esm2020/lib/public/factories/public-search-factory.mjs +15 -4
- package/esm2020/lib/registry/front-action-registry.service.mjs +34 -0
- package/esm2020/lib/registry/public-api.mjs +2 -1
- package/esm2020/lib/resources/interface/event-outcome.mjs +1 -1
- package/esm2020/lib/side-menu/content-components/injection-tokens.mjs +2 -1
- package/esm2020/lib/side-menu/content-components/public-api.mjs +2 -1
- package/esm2020/lib/side-menu/content-components/task-view/model/task-view-injection-data.mjs +2 -0
- package/esm2020/lib/task/services/task-data.service.mjs +11 -9
- package/esm2020/lib/task-content/services/single-task-content.service.mjs +4 -4
- package/esm2020/lib/task-content/services/task-content.service.mjs +6 -21
- package/esm2020/lib/task-content/services/unlimited-task-content.service.mjs +4 -4
- package/esm2020/lib/view/task-view/abstract-single-task-view.component.mjs +18 -34
- package/esm2020/public-api.mjs +2 -1
- package/fesm2015/netgrif-components-core.mjs +623 -469
- package/fesm2015/netgrif-components-core.mjs.map +1 -1
- package/fesm2020/netgrif-components-core.mjs +623 -465
- package/fesm2020/netgrif-components-core.mjs.map +1 -1
- package/lib/actions/front-action.module.d.ts +9 -0
- package/lib/actions/model/front-action-definition.d.ts +5 -0
- package/lib/actions/model/router-action-definitions.d.ts +2 -0
- package/lib/actions/model/task-action-definitions.d.ts +3 -0
- package/lib/actions/public-api.d.ts +5 -0
- package/lib/actions/services/front-action.service.d.ts +15 -0
- package/lib/data-fields/models/changed-fields.d.ts +7 -6
- package/lib/event/model/event-constants.d.ts +5 -1
- package/lib/event/services/event.service.d.ts +3 -0
- package/lib/navigation/navigation-double-drawer/abstract-navigation-double-drawer.d.ts +12 -0
- package/lib/panel/task-panel/abstract-task-panel.component.d.ts +2 -1
- package/lib/panel/task-panel-single/abstract-single-task.component.d.ts +5 -3
- package/lib/public/factories/public-search-factory.d.ts +3 -0
- package/lib/registry/front-action-registry.service.d.ts +13 -0
- package/lib/registry/public-api.d.ts +1 -0
- package/lib/resources/interface/event-outcome.d.ts +5 -0
- package/lib/side-menu/content-components/injection-tokens.d.ts +1 -0
- package/lib/side-menu/content-components/public-api.d.ts +1 -0
- package/lib/side-menu/content-components/task-view/model/task-view-injection-data.d.ts +4 -0
- package/lib/task/services/task-data.service.d.ts +4 -2
- package/lib/task-content/services/single-task-content.service.d.ts +2 -2
- package/lib/task-content/services/task-content.service.d.ts +6 -16
- package/lib/task-content/services/unlimited-task-content.service.d.ts +2 -2
- package/lib/view/task-view/abstract-single-task-view.component.d.ts +6 -5
- package/package.json +1 -1
- package/public-api.d.ts +1 -0
|
@@ -75,7 +75,7 @@ import moment from 'moment';
|
|
|
75
75
|
import * as Buffer from 'buffer';
|
|
76
76
|
import { ENTER, COMMA } from '@angular/cdk/keycodes';
|
|
77
77
|
import * as i2$3 from '@angular/router';
|
|
78
|
-
import { NavigationEnd } from '@angular/router';
|
|
78
|
+
import { NavigationEnd, Router } from '@angular/router';
|
|
79
79
|
import * as i1$6 from '@angular/cdk/overlay';
|
|
80
80
|
import { OverlayModule } from '@angular/cdk/overlay';
|
|
81
81
|
import { orderBy } from 'natural-orderby';
|
|
@@ -7090,6 +7090,10 @@ var EventConstants;
|
|
|
7090
7090
|
* Changed fields parameter of {@link SetDataEventOutcome}
|
|
7091
7091
|
*/
|
|
7092
7092
|
EventConstants["CHANGED_FIELDS"] = "changedFields";
|
|
7093
|
+
/**
|
|
7094
|
+
* Front actions parameter of {@link EventOutcome}
|
|
7095
|
+
*/
|
|
7096
|
+
EventConstants["FRONT_ACTIONS"] = "frontActions";
|
|
7093
7097
|
})(EventConstants || (EventConstants = {}));
|
|
7094
7098
|
|
|
7095
7099
|
class EventService {
|
|
@@ -7137,6 +7141,28 @@ class EventService {
|
|
|
7137
7141
|
});
|
|
7138
7142
|
return changedFieldsMap;
|
|
7139
7143
|
}
|
|
7144
|
+
parseFrontActionsFromOutcomeTree(outcome) {
|
|
7145
|
+
const frontActions = [];
|
|
7146
|
+
if (!!outcome.outcomes && outcome.outcomes.length > 0) {
|
|
7147
|
+
return this.parseFrontActionsFromOutcomeTreeRecursive(outcome.outcomes, frontActions);
|
|
7148
|
+
}
|
|
7149
|
+
else
|
|
7150
|
+
return frontActions;
|
|
7151
|
+
}
|
|
7152
|
+
parseFrontActionsFromOutcomeTreeRecursive(outcomes, frontActions) {
|
|
7153
|
+
outcomes.forEach(childOutcome => {
|
|
7154
|
+
if (EventConstants.FRONT_ACTIONS in childOutcome) {
|
|
7155
|
+
const childFrontActions = childOutcome.frontActions;
|
|
7156
|
+
if (!!childFrontActions) {
|
|
7157
|
+
frontActions.push(...childFrontActions);
|
|
7158
|
+
}
|
|
7159
|
+
}
|
|
7160
|
+
if (!!childOutcome.outcomes && childOutcome.outcomes.length > 0) {
|
|
7161
|
+
this.parseFrontActionsFromOutcomeTreeRecursive(childOutcome.outcomes, frontActions);
|
|
7162
|
+
}
|
|
7163
|
+
});
|
|
7164
|
+
return frontActions;
|
|
7165
|
+
}
|
|
7140
7166
|
}
|
|
7141
7167
|
EventService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EventService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7142
7168
|
EventService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: EventService, providedIn: 'root' });
|
|
@@ -14901,12 +14927,12 @@ class TaskContentService {
|
|
|
14901
14927
|
* A snackbar will also be displayed to the user, informing them of the fact that the fields are invalid.
|
|
14902
14928
|
* @returns whether the task is valid or not
|
|
14903
14929
|
*/
|
|
14904
|
-
validateTaskData() {
|
|
14930
|
+
validateTaskData(taskId) {
|
|
14905
14931
|
if (!this._task || !this._task.dataGroups) {
|
|
14906
14932
|
return false;
|
|
14907
14933
|
}
|
|
14908
|
-
const valid = !this._task.dataGroups.some(group => group.fields.some(field => !field.valid && !field.disabled));
|
|
14909
|
-
const validDisabled = !this._task.dataGroups.some(group => group.fields.some(field => !field.validRequired && field.disabled));
|
|
14934
|
+
const valid = !this._task.dataGroups.filter(group => !!group.parentTaskId && !!taskId ? group.parentTaskId === taskId : true).some(group => group.fields.some(field => !field.valid && !field.disabled));
|
|
14935
|
+
const validDisabled = !this._task.dataGroups.filter(group => !!group.parentTaskId && !!taskId ? group.parentTaskId === taskId : true).some(group => group.fields.some(field => !field.validRequired && field.disabled));
|
|
14910
14936
|
if (!valid) {
|
|
14911
14937
|
this._snackBarService.openErrorSnackBar(this._translate.instant('tasks.snackbar.invalidData'));
|
|
14912
14938
|
this._task.dataGroups.forEach(group => group.fields.forEach(field => field.touch = true));
|
|
@@ -14996,7 +15022,6 @@ class TaskContentService {
|
|
|
14996
15022
|
}
|
|
14997
15023
|
});
|
|
14998
15024
|
this.$shouldCreate.next(this._task.dataGroups);
|
|
14999
|
-
this.performFrontendAction(frontendActions);
|
|
15000
15025
|
}
|
|
15001
15026
|
updateField(chFields, field, frontendActions) {
|
|
15002
15027
|
if (this._fieldConverterService.resolveType(field) === FieldTypeResource.TASK_REF) {
|
|
@@ -15078,20 +15103,6 @@ class TaskContentService {
|
|
|
15078
15103
|
field.update();
|
|
15079
15104
|
});
|
|
15080
15105
|
}
|
|
15081
|
-
/**
|
|
15082
|
-
* Performs the specific frontend action.
|
|
15083
|
-
*
|
|
15084
|
-
* A prototype implementation of frontend actions.
|
|
15085
|
-
*
|
|
15086
|
-
* The specifics are subject to change. It is very likely that this method will be moved to a different service.
|
|
15087
|
-
*
|
|
15088
|
-
* @param frontendAction the action that should be performed.
|
|
15089
|
-
*/
|
|
15090
|
-
performFrontendAction(frontendAction) {
|
|
15091
|
-
if (frontendAction && frontendAction.type === TaskContentService.VALIDATE_FRONTEND_ACTION) {
|
|
15092
|
-
timer().subscribe(() => this.validateTaskData());
|
|
15093
|
-
}
|
|
15094
|
-
}
|
|
15095
15106
|
isFieldInTask(taskId, changedField) {
|
|
15096
15107
|
return !!taskId
|
|
15097
15108
|
&& !!this.taskFieldsIndex[taskId]
|
|
@@ -15113,7 +15124,7 @@ class TaskContentService {
|
|
|
15113
15124
|
}
|
|
15114
15125
|
}
|
|
15115
15126
|
TaskContentService.FRONTEND_ACTIONS_KEY = '_frontend_actions';
|
|
15116
|
-
TaskContentService.
|
|
15127
|
+
TaskContentService.ACTION = 'action';
|
|
15117
15128
|
TaskContentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TaskContentService, deps: [{ token: FieldConverterService }, { token: SnackBarService }, { token: i1$2.TranslateService }, { token: LoggerService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
15118
15129
|
TaskContentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TaskContentService });
|
|
15119
15130
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TaskContentService, decorators: [{
|
|
@@ -15514,12 +15525,67 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
15514
15525
|
type: Injectable
|
|
15515
15526
|
}], ctorParameters: function () { return []; } });
|
|
15516
15527
|
|
|
15528
|
+
class FrontActionRegistryService {
|
|
15529
|
+
constructor() {
|
|
15530
|
+
this._registry = new Map();
|
|
15531
|
+
}
|
|
15532
|
+
get registry() {
|
|
15533
|
+
return this._registry;
|
|
15534
|
+
}
|
|
15535
|
+
set registry(value) {
|
|
15536
|
+
this._registry = value;
|
|
15537
|
+
}
|
|
15538
|
+
register(key, fn) {
|
|
15539
|
+
this._registry.set(key, fn);
|
|
15540
|
+
}
|
|
15541
|
+
contains(key) {
|
|
15542
|
+
return this._registry.has(key);
|
|
15543
|
+
}
|
|
15544
|
+
get(key) {
|
|
15545
|
+
if (this._registry.has(key)) {
|
|
15546
|
+
return this._registry.get(key);
|
|
15547
|
+
}
|
|
15548
|
+
return undefined;
|
|
15549
|
+
}
|
|
15550
|
+
}
|
|
15551
|
+
FrontActionRegistryService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FrontActionRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
15552
|
+
FrontActionRegistryService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FrontActionRegistryService, providedIn: 'root' });
|
|
15553
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FrontActionRegistryService, decorators: [{
|
|
15554
|
+
type: Injectable,
|
|
15555
|
+
args: [{
|
|
15556
|
+
providedIn: 'root'
|
|
15557
|
+
}]
|
|
15558
|
+
}], ctorParameters: function () { return []; } });
|
|
15559
|
+
|
|
15560
|
+
class FrontActionService {
|
|
15561
|
+
constructor(_injector, _frontActionRegistry, _log) {
|
|
15562
|
+
this._injector = _injector;
|
|
15563
|
+
this._frontActionRegistry = _frontActionRegistry;
|
|
15564
|
+
this._log = _log;
|
|
15565
|
+
}
|
|
15566
|
+
run(frontAction) {
|
|
15567
|
+
const fn = this._frontActionRegistry.get(frontAction.id);
|
|
15568
|
+
if (!fn) {
|
|
15569
|
+
this._log.error("Frontend action is not defined for ID [" + frontAction.id + "]");
|
|
15570
|
+
}
|
|
15571
|
+
fn.call(this._injector, frontAction);
|
|
15572
|
+
}
|
|
15573
|
+
runAll(frontAction) {
|
|
15574
|
+
frontAction.forEach(a => this.run(a));
|
|
15575
|
+
}
|
|
15576
|
+
}
|
|
15577
|
+
FrontActionService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FrontActionService, deps: [{ token: i0.Injector }, { token: FrontActionRegistryService }, { token: LoggerService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
15578
|
+
FrontActionService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FrontActionService });
|
|
15579
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FrontActionService, decorators: [{
|
|
15580
|
+
type: Injectable
|
|
15581
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: FrontActionRegistryService }, { type: LoggerService }]; } });
|
|
15582
|
+
|
|
15517
15583
|
/**
|
|
15518
15584
|
* Handles the loading and updating of data fields and behaviour of
|
|
15519
15585
|
* a single Task object managed by a {@link TaskContentService} instance.
|
|
15520
15586
|
*/
|
|
15521
15587
|
class TaskDataService extends TaskHandlingService {
|
|
15522
|
-
constructor(_taskState, _translate, _log, _snackBar, _taskResourceService, _fieldConverterService, _taskEvent, _taskOperations, _selectedCaseService, _taskContentService, _afterActionFactory, _eventQueue, _userComparator, _eventService, _changedFieldsService) {
|
|
15588
|
+
constructor(_taskState, _translate, _log, _snackBar, _taskResourceService, _fieldConverterService, _taskEvent, _taskOperations, _selectedCaseService, _taskContentService, _afterActionFactory, _eventQueue, _userComparator, _eventService, _changedFieldsService, _frontActionService) {
|
|
15523
15589
|
super(_taskContentService, _selectedCaseService);
|
|
15524
15590
|
this._taskState = _taskState;
|
|
15525
15591
|
this._translate = _translate;
|
|
@@ -15534,13 +15600,10 @@ class TaskDataService extends TaskHandlingService {
|
|
|
15534
15600
|
this._userComparator = _userComparator;
|
|
15535
15601
|
this._eventService = _eventService;
|
|
15536
15602
|
this._changedFieldsService = _changedFieldsService;
|
|
15603
|
+
this._frontActionService = _frontActionService;
|
|
15537
15604
|
this._updateSuccess$ = new Subject();
|
|
15538
15605
|
this._dataReloadSubscription = this._taskContentService.taskDataReloadRequest$.subscribe(queuedFrontendAction => {
|
|
15539
|
-
this.initializeTaskDataFields(
|
|
15540
|
-
if (success && queuedFrontendAction) {
|
|
15541
|
-
this._taskContentService.performFrontendAction(queuedFrontendAction);
|
|
15542
|
-
}
|
|
15543
|
-
}), true);
|
|
15606
|
+
this.initializeTaskDataFields(new AfterAction(), true);
|
|
15544
15607
|
});
|
|
15545
15608
|
}
|
|
15546
15609
|
ngOnDestroy() {
|
|
@@ -15915,9 +15978,13 @@ class TaskDataService extends TaskHandlingService {
|
|
|
15915
15978
|
processSuccessfulSetDataRequest(setTaskId, response, afterAction, nextEvent, body) {
|
|
15916
15979
|
const outcome = response.outcome;
|
|
15917
15980
|
const changedFieldsMap = this._eventService.parseChangedFieldsFromOutcomeTree(outcome);
|
|
15981
|
+
const frontActions = this._eventService.parseFrontActionsFromOutcomeTree(outcome);
|
|
15918
15982
|
if (Object.keys(changedFieldsMap).length > 0) {
|
|
15919
15983
|
this._changedFieldsService.emitChangedFields(changedFieldsMap);
|
|
15920
15984
|
}
|
|
15985
|
+
if (!!frontActions && frontActions.length > 0) {
|
|
15986
|
+
this._frontActionService.runAll(frontActions);
|
|
15987
|
+
}
|
|
15921
15988
|
this.clearWaitingForResponseFlag(body);
|
|
15922
15989
|
this._snackBar.openSuccessSnackBar(!!outcome.message ? outcome.message : this._translate.instant('tasks.snackbar.dataSaved'));
|
|
15923
15990
|
this.updateStateInfo(afterAction, true, setTaskId);
|
|
@@ -16035,7 +16102,7 @@ class TaskDataService extends TaskHandlingService {
|
|
|
16035
16102
|
});
|
|
16036
16103
|
}
|
|
16037
16104
|
}
|
|
16038
|
-
TaskDataService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TaskDataService, deps: [{ token: TaskRequestStateService }, { token: i1$2.TranslateService }, { token: LoggerService }, { token: SnackBarService }, { token: TaskResourceService }, { token: FieldConverterService }, { token: TaskEventService }, { token: NAE_TASK_OPERATIONS }, { token: SelectedCaseService, optional: true }, { token: TaskContentService }, { token: CallChainService }, { token: EventQueueService }, { token: UserComparatorService }, { token: EventService }, { token: ChangedFieldsService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
16105
|
+
TaskDataService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TaskDataService, deps: [{ token: TaskRequestStateService }, { token: i1$2.TranslateService }, { token: LoggerService }, { token: SnackBarService }, { token: TaskResourceService }, { token: FieldConverterService }, { token: TaskEventService }, { token: NAE_TASK_OPERATIONS }, { token: SelectedCaseService, optional: true }, { token: TaskContentService }, { token: CallChainService }, { token: EventQueueService }, { token: UserComparatorService }, { token: EventService }, { token: ChangedFieldsService }, { token: FrontActionService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
16039
16106
|
TaskDataService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TaskDataService });
|
|
16040
16107
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: TaskDataService, decorators: [{
|
|
16041
16108
|
type: Injectable
|
|
@@ -16044,7 +16111,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
16044
16111
|
args: [NAE_TASK_OPERATIONS]
|
|
16045
16112
|
}] }, { type: SelectedCaseService, decorators: [{
|
|
16046
16113
|
type: Optional
|
|
16047
|
-
}] }, { type: TaskContentService }, { type: CallChainService }, { type: EventQueueService }, { type: UserComparatorService }, { type: EventService }, { type: ChangedFieldsService }]; } });
|
|
16114
|
+
}] }, { type: TaskContentService }, { type: CallChainService }, { type: EventQueueService }, { type: UserComparatorService }, { type: EventService }, { type: ChangedFieldsService }, { type: FrontActionService }]; } });
|
|
16048
16115
|
|
|
16049
16116
|
class AbstractTaskRefDashboardTileComponent {
|
|
16050
16117
|
constructor(_caseResourceService, _processService, _logger, _taskResourceService, _callChainService, _parentTaskContentService, _taskDataService, _taskOperations) {
|
|
@@ -18899,6 +18966,7 @@ const NAE_SAVE_FILTER_COMPONENT = new InjectionToken('NaeSaveFilterComponent');
|
|
|
18899
18966
|
const NAE_LOAD_FILTER_COMPONENT = new InjectionToken('NaeLoadFilterComponent');
|
|
18900
18967
|
const NAE_USER_IMPERSONATE_COMPONENT = new InjectionToken('NaeUserImpersonateComponent');
|
|
18901
18968
|
const NAE_ADMIN_IMPERSONATE_COMPONENT = new InjectionToken('NaeAdminImpersonateComponent');
|
|
18969
|
+
const NAE_TASK_VIEW_COMPONENT = new InjectionToken('NaeTaskViewComponent');
|
|
18902
18970
|
|
|
18903
18971
|
const NAE_SIDE_MENU_CONTROL = new InjectionToken('NaeSideMenuControl');
|
|
18904
18972
|
|
|
@@ -19842,6 +19910,7 @@ class AbstractTaskPanelComponent extends AbstractPanelWithImmediateDataComponent
|
|
|
19842
19910
|
this.responsiveBody = true;
|
|
19843
19911
|
this.preventCollapse = false;
|
|
19844
19912
|
this.hidePanelHeader = false;
|
|
19913
|
+
this.hideActionRow = false;
|
|
19845
19914
|
this.showMoreMenu = true;
|
|
19846
19915
|
this.thisContext = {
|
|
19847
19916
|
canAssign: () => this.canAssign(),
|
|
@@ -20110,7 +20179,7 @@ class AbstractTaskPanelComponent extends AbstractPanelWithImmediateDataComponent
|
|
|
20110
20179
|
}
|
|
20111
20180
|
}
|
|
20112
20181
|
AbstractTaskPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractTaskPanelComponent, deps: [{ token: TaskContentService }, { token: LoggerService }, { token: TaskViewService }, { token: PaperViewService }, { token: TaskEventService }, { token: AssignTaskService }, { token: DelegateTaskService }, { token: CancelTaskService }, { token: FinishTaskService }, { token: TaskRequestStateService }, { token: TaskDataService }, { token: AssignPolicyService }, { token: FinishPolicyService }, { token: CallChainService }, { token: SubjectTaskOperations }, { token: NAE_TASK_PANEL_DISABLE_BUTTON_FUNCTIONS, optional: true }, { token: i1$2.TranslateService }, { token: i5.CurrencyPipe }, { token: ChangedFieldsService }, { token: PermissionService }, { token: OverflowService, optional: true }, { token: NAE_TASK_FORCE_OPEN, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
20113
|
-
AbstractTaskPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractTaskPanelComponent, selector: "ncc-abstract-legal-notice", inputs: { taskListVirtualScroll: "taskListVirtualScroll", panelContentComponent: "panelContentComponent", selectedHeaders$: "selectedHeaders$", first: "first", last: "last", responsiveBody: "responsiveBody", preventCollapse: "preventCollapse", hidePanelHeader: "hidePanelHeader", actionButtonTemplates: "actionButtonTemplates", actionRowJustifyContent: "actionRowJustifyContent", showMoreMenu: "showMoreMenu", forceLoadDataOnOpen: "forceLoadDataOnOpen", textEllipsis: "textEllipsis", taskPanelData: "taskPanelData" }, outputs: { taskEvent: "taskEvent", panelRefOutput: "panelRefOutput" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
20182
|
+
AbstractTaskPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractTaskPanelComponent, selector: "ncc-abstract-legal-notice", inputs: { taskListVirtualScroll: "taskListVirtualScroll", panelContentComponent: "panelContentComponent", selectedHeaders$: "selectedHeaders$", first: "first", last: "last", responsiveBody: "responsiveBody", preventCollapse: "preventCollapse", hidePanelHeader: "hidePanelHeader", hideActionRow: "hideActionRow", actionButtonTemplates: "actionButtonTemplates", actionRowJustifyContent: "actionRowJustifyContent", showMoreMenu: "showMoreMenu", forceLoadDataOnOpen: "forceLoadDataOnOpen", textEllipsis: "textEllipsis", taskPanelData: "taskPanelData" }, outputs: { taskEvent: "taskEvent", panelRefOutput: "panelRefOutput" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
20114
20183
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractTaskPanelComponent, decorators: [{
|
|
20115
20184
|
type: Component,
|
|
20116
20185
|
args: [{
|
|
@@ -20145,6 +20214,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
20145
20214
|
type: Input
|
|
20146
20215
|
}], hidePanelHeader: [{
|
|
20147
20216
|
type: Input
|
|
20217
|
+
}], hideActionRow: [{
|
|
20218
|
+
type: Input
|
|
20148
20219
|
}], actionButtonTemplates: [{
|
|
20149
20220
|
type: Input
|
|
20150
20221
|
}], actionRowJustifyContent: [{
|
|
@@ -20820,12 +20891,13 @@ class AbstractSingleTaskComponent {
|
|
|
20820
20891
|
this.textEllipsis = false;
|
|
20821
20892
|
this.preventCollapse = true;
|
|
20822
20893
|
this.hidePanelHeader = true;
|
|
20894
|
+
this.hideActionRow = true;
|
|
20895
|
+
this.showPageHeader = true;
|
|
20896
|
+
this.showPageFooter = true;
|
|
20823
20897
|
this.taskEvent = new EventEmitter();
|
|
20824
|
-
this._unsubscribe$ = new Subject();
|
|
20825
20898
|
}
|
|
20826
20899
|
ngOnDestroy() {
|
|
20827
20900
|
this.taskEvent.complete();
|
|
20828
|
-
this._unsubscribe$.complete();
|
|
20829
20901
|
}
|
|
20830
20902
|
setPanelRef(panelRef) {
|
|
20831
20903
|
this._taskPanelRef = panelRef;
|
|
@@ -20842,7 +20914,7 @@ class AbstractSingleTaskComponent {
|
|
|
20842
20914
|
}
|
|
20843
20915
|
}
|
|
20844
20916
|
AbstractSingleTaskComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractSingleTaskComponent, deps: [{ token: LoggerService }, { token: i2$3.ActivatedRoute }, { token: NAE_TAB_DATA, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
20845
|
-
AbstractSingleTaskComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractSingleTaskComponent, selector: "ncc-abstract-single-task", inputs: { task$: "task$", loading$: "loading$", selectedHeaders$: "selectedHeaders$", responsiveBody: "responsiveBody", forceLoadDataOnOpen: "forceLoadDataOnOpen", textEllipsis: "textEllipsis", preventCollapse: "preventCollapse", hidePanelHeader: "hidePanelHeader", noTaskSection: "noTaskSection", pageHeader: "pageHeader", pageFooter: "pageFooter", headerTitle: "headerTitle", footerText: "footerText", actionButtonTemplates: "actionButtonTemplates", actionRowJustifyContent: "actionRowJustifyContent" }, outputs: { taskEvent: "taskEvent" }, ngImport: i0, template: '', isInline: true });
|
|
20917
|
+
AbstractSingleTaskComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractSingleTaskComponent, selector: "ncc-abstract-single-task", inputs: { task$: "task$", loading$: "loading$", selectedHeaders$: "selectedHeaders$", responsiveBody: "responsiveBody", forceLoadDataOnOpen: "forceLoadDataOnOpen", textEllipsis: "textEllipsis", preventCollapse: "preventCollapse", hidePanelHeader: "hidePanelHeader", hideActionRow: "hideActionRow", noTaskSection: "noTaskSection", pageHeader: "pageHeader", pageFooter: "pageFooter", showPageHeader: "showPageHeader", showPageFooter: "showPageFooter", headerTitle: "headerTitle", footerText: "footerText", actionButtonTemplates: "actionButtonTemplates", actionRowJustifyContent: "actionRowJustifyContent" }, outputs: { taskEvent: "taskEvent" }, ngImport: i0, template: '', isInline: true });
|
|
20846
20918
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractSingleTaskComponent, decorators: [{
|
|
20847
20919
|
type: Component,
|
|
20848
20920
|
args: [{
|
|
@@ -20870,12 +20942,18 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
20870
20942
|
type: Input
|
|
20871
20943
|
}], hidePanelHeader: [{
|
|
20872
20944
|
type: Input
|
|
20945
|
+
}], hideActionRow: [{
|
|
20946
|
+
type: Input
|
|
20873
20947
|
}], noTaskSection: [{
|
|
20874
20948
|
type: Input
|
|
20875
20949
|
}], pageHeader: [{
|
|
20876
20950
|
type: Input
|
|
20877
20951
|
}], pageFooter: [{
|
|
20878
20952
|
type: Input
|
|
20953
|
+
}], showPageHeader: [{
|
|
20954
|
+
type: Input
|
|
20955
|
+
}], showPageFooter: [{
|
|
20956
|
+
type: Input
|
|
20879
20957
|
}], headerTitle: [{
|
|
20880
20958
|
type: Input
|
|
20881
20959
|
}], footerText: [{
|
|
@@ -26515,6 +26593,228 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
26515
26593
|
type: Input
|
|
26516
26594
|
}] } });
|
|
26517
26595
|
|
|
26596
|
+
class ImportToAdd {
|
|
26597
|
+
constructor(className, fileImportPath) {
|
|
26598
|
+
this.className = className;
|
|
26599
|
+
this.fileImportPath = fileImportPath;
|
|
26600
|
+
}
|
|
26601
|
+
}
|
|
26602
|
+
|
|
26603
|
+
/**
|
|
26604
|
+
* @license
|
|
26605
|
+
* Copyright Google Inc. All Rights Reserved.
|
|
26606
|
+
*
|
|
26607
|
+
* Use of this source code is governed by an MIT-style license that can be
|
|
26608
|
+
* found in the LICENSE file at https://angular.io/license
|
|
26609
|
+
*
|
|
26610
|
+
* File copied from: angular_devkit/core/src/utils/strings.ts
|
|
26611
|
+
*/
|
|
26612
|
+
const STRING_DASHERIZE_REGEXP = (/[ _]/g);
|
|
26613
|
+
const STRING_DECAMELIZE_REGEXP = (/([a-z\d])([A-Z])/g);
|
|
26614
|
+
const STRING_CAMELIZE_REGEXP = (/(-|_|\.|\s)+(.)?/g);
|
|
26615
|
+
const STRING_UNDERSCORE_REGEXP_1 = (/([a-z\d])([A-Z]+)/g);
|
|
26616
|
+
const STRING_UNDERSCORE_REGEXP_2 = (/-|\s+/g);
|
|
26617
|
+
/**
|
|
26618
|
+
* Converts a camelized string into all lower case separated by underscores.
|
|
26619
|
+
*
|
|
26620
|
+
* ```javascript
|
|
26621
|
+
* decamelize('innerHTML'); // 'inner_html'
|
|
26622
|
+
* decamelize('action_name'); // 'action_name'
|
|
26623
|
+
* decamelize('css-class-name'); // 'css-class-name'
|
|
26624
|
+
* decamelize('my favorite items'); // 'my favorite items'
|
|
26625
|
+
* ```
|
|
26626
|
+
* @method decamelize
|
|
26627
|
+
* @param str The string to decamelize.
|
|
26628
|
+
* @return the decamelized string.
|
|
26629
|
+
*/
|
|
26630
|
+
function decamelize(str) {
|
|
26631
|
+
return str.replace(STRING_DECAMELIZE_REGEXP, '$1_$2').toLowerCase();
|
|
26632
|
+
}
|
|
26633
|
+
/**
|
|
26634
|
+
* Replaces underscores, spaces, or camelCase with dashes.
|
|
26635
|
+
* ```javascript
|
|
26636
|
+
* dasherize('innerHTML'); // 'inner-html'
|
|
26637
|
+
* dasherize('action_name'); // 'action-name'
|
|
26638
|
+
* dasherize('css-class-name'); // 'css-class-name'
|
|
26639
|
+
* dasherize('my favorite items'); // 'my-favorite-items'
|
|
26640
|
+
* ```
|
|
26641
|
+
* @method dasherize
|
|
26642
|
+
* @param str The string to dasherize.
|
|
26643
|
+
* @return the dasherized string.
|
|
26644
|
+
*/
|
|
26645
|
+
function dasherize(str) {
|
|
26646
|
+
return decamelize(str).replace(STRING_DASHERIZE_REGEXP, '-');
|
|
26647
|
+
}
|
|
26648
|
+
/**
|
|
26649
|
+
* Returns the lowerCamelCase form of a string.
|
|
26650
|
+
* ```javascript
|
|
26651
|
+
* camelize('innerHTML'); // 'innerHTML'
|
|
26652
|
+
* camelize('action_name'); // 'actionName'
|
|
26653
|
+
* camelize('css-class-name'); // 'cssClassName'
|
|
26654
|
+
* camelize('my favorite items'); // 'myFavoriteItems'
|
|
26655
|
+
* camelize('My Favorite Items'); // 'myFavoriteItems'
|
|
26656
|
+
* ```
|
|
26657
|
+
* @method camelize
|
|
26658
|
+
* @param str The string to camelize.
|
|
26659
|
+
* @return the camelized string.
|
|
26660
|
+
*/
|
|
26661
|
+
function camelize(str) {
|
|
26662
|
+
return str
|
|
26663
|
+
.replace(STRING_CAMELIZE_REGEXP, (_match, _separator, chr) => {
|
|
26664
|
+
return chr ? chr.toUpperCase() : '';
|
|
26665
|
+
})
|
|
26666
|
+
.replace(/^([A-Z])/, (match) => match.toLowerCase());
|
|
26667
|
+
}
|
|
26668
|
+
/**
|
|
26669
|
+
* Returns the UpperCamelCase form of a string.
|
|
26670
|
+
* ```javascript
|
|
26671
|
+
* 'innerHTML'.classify(); // 'InnerHTML'
|
|
26672
|
+
* 'action_name'.classify(); // 'ActionName'
|
|
26673
|
+
* 'css-class-name'.classify(); // 'CssClassName'
|
|
26674
|
+
* 'my favorite items'.classify(); // 'MyFavoriteItems'
|
|
26675
|
+
* ```
|
|
26676
|
+
* @method classify
|
|
26677
|
+
* @param str the string to classify
|
|
26678
|
+
* @return the classified string
|
|
26679
|
+
*/
|
|
26680
|
+
function classify(str) {
|
|
26681
|
+
return str.split('.').map(part => capitalize(camelize(part))).join('.');
|
|
26682
|
+
}
|
|
26683
|
+
/**
|
|
26684
|
+
* More general than decamelize. Returns the lower\_case\_and\_underscored
|
|
26685
|
+
* form of a string.
|
|
26686
|
+
* ```javascript
|
|
26687
|
+
* 'innerHTML'.underscore(); // 'inner_html'
|
|
26688
|
+
* 'action_name'.underscore(); // 'action_name'
|
|
26689
|
+
* 'css-class-name'.underscore(); // 'css_class_name'
|
|
26690
|
+
* 'my favorite items'.underscore(); // 'my_favorite_items'
|
|
26691
|
+
* ```
|
|
26692
|
+
* @method underscore
|
|
26693
|
+
* @param str The string to underscore.
|
|
26694
|
+
* @return the underscored string.
|
|
26695
|
+
*/
|
|
26696
|
+
function underscore(str) {
|
|
26697
|
+
return str
|
|
26698
|
+
.replace(STRING_UNDERSCORE_REGEXP_1, '$1_$2')
|
|
26699
|
+
.replace(STRING_UNDERSCORE_REGEXP_2, '_')
|
|
26700
|
+
.toLowerCase();
|
|
26701
|
+
}
|
|
26702
|
+
/**
|
|
26703
|
+
* Returns the Capitalized form of a string
|
|
26704
|
+
* ```javascript
|
|
26705
|
+
* 'innerHTML'.capitalize() // 'InnerHTML'
|
|
26706
|
+
* 'action_name'.capitalize() // 'Action_name'
|
|
26707
|
+
* 'css-class-name'.capitalize() // 'Css-class-name'
|
|
26708
|
+
* 'my favorite items'.capitalize() // 'My favorite items'
|
|
26709
|
+
* ```
|
|
26710
|
+
* @method capitalize
|
|
26711
|
+
* @param str The string to capitalize.
|
|
26712
|
+
* @return The capitalized string.
|
|
26713
|
+
*/
|
|
26714
|
+
function capitalize(str) {
|
|
26715
|
+
return str.charAt(0).toUpperCase() + str.substr(1);
|
|
26716
|
+
}
|
|
26717
|
+
/**
|
|
26718
|
+
* Calculate the levenshtein distance of two strings.
|
|
26719
|
+
* See https://en.wikipedia.org/wiki/Levenshtein_distance.
|
|
26720
|
+
* Based off https://gist.github.com/andrei-m/982927 (for using the faster dynamic programming
|
|
26721
|
+
* version).
|
|
26722
|
+
*
|
|
26723
|
+
* @param a String a.
|
|
26724
|
+
* @param b String b.
|
|
26725
|
+
* @returns A number that represents the distance between the two strings. The greater the number
|
|
26726
|
+
* the more distant the strings are from each others.
|
|
26727
|
+
*/
|
|
26728
|
+
function levenshtein(a, b) {
|
|
26729
|
+
if (a.length === 0) {
|
|
26730
|
+
return b.length;
|
|
26731
|
+
}
|
|
26732
|
+
if (b.length === 0) {
|
|
26733
|
+
return a.length;
|
|
26734
|
+
}
|
|
26735
|
+
const matrix = [];
|
|
26736
|
+
// increment along the first column of each row
|
|
26737
|
+
for (let i = 0; i <= b.length; i++) {
|
|
26738
|
+
matrix[i] = [i];
|
|
26739
|
+
}
|
|
26740
|
+
// increment each column in the first row
|
|
26741
|
+
for (let j = 0; j <= a.length; j++) {
|
|
26742
|
+
matrix[0][j] = j;
|
|
26743
|
+
}
|
|
26744
|
+
// Fill in the rest of the matrix
|
|
26745
|
+
for (let i = 1; i <= b.length; i++) {
|
|
26746
|
+
for (let j = 1; j <= a.length; j++) {
|
|
26747
|
+
if (b.charAt(i - 1) === a.charAt(j - 1)) {
|
|
26748
|
+
matrix[i][j] = matrix[i - 1][j - 1];
|
|
26749
|
+
}
|
|
26750
|
+
else {
|
|
26751
|
+
matrix[i][j] = Math.min(matrix[i - 1][j - 1] + 1, // substitution
|
|
26752
|
+
matrix[i][j - 1] + 1, // insertion
|
|
26753
|
+
matrix[i - 1][j] + 1);
|
|
26754
|
+
}
|
|
26755
|
+
}
|
|
26756
|
+
}
|
|
26757
|
+
return matrix[b.length][a.length];
|
|
26758
|
+
}
|
|
26759
|
+
|
|
26760
|
+
class ViewClassInfo extends ImportToAdd {
|
|
26761
|
+
constructor(path, viewType, customComponentName) {
|
|
26762
|
+
super('', '');
|
|
26763
|
+
if (!customComponentName) {
|
|
26764
|
+
this.prefix = ViewClassInfo.convertPathToClassNamePrefix(path);
|
|
26765
|
+
const classSuffix = ViewClassInfo.resolveClassSuffixForView(viewType);
|
|
26766
|
+
this.nameWithoutComponent = `${classify(this.prefix)}${classSuffix}`;
|
|
26767
|
+
this.fileImportPath = `./views/${path}/${this.prefix}-${dasherize(classSuffix)}.component`;
|
|
26768
|
+
}
|
|
26769
|
+
else {
|
|
26770
|
+
this.prefix = '';
|
|
26771
|
+
this.nameWithoutComponent = classify(customComponentName);
|
|
26772
|
+
this.fileImportPath = `./views/${path}/${dasherize(customComponentName)}.component`;
|
|
26773
|
+
}
|
|
26774
|
+
this.className = `${this.nameWithoutComponent}Component`;
|
|
26775
|
+
}
|
|
26776
|
+
static convertPathToClassNamePrefix(path) {
|
|
26777
|
+
const regexDash = /-/g;
|
|
26778
|
+
return path.replace(regexDash, '_').replace(/\//g, '-').toLocaleLowerCase();
|
|
26779
|
+
}
|
|
26780
|
+
static resolveClassSuffixForView(view) {
|
|
26781
|
+
switch (view) {
|
|
26782
|
+
case 'login':
|
|
26783
|
+
return 'Login';
|
|
26784
|
+
case 'tabView':
|
|
26785
|
+
return 'TabView';
|
|
26786
|
+
case 'taskView':
|
|
26787
|
+
return 'TaskView';
|
|
26788
|
+
case 'caseView':
|
|
26789
|
+
return 'CaseView';
|
|
26790
|
+
case 'emptyView':
|
|
26791
|
+
return 'EmptyView';
|
|
26792
|
+
case 'sidenavView':
|
|
26793
|
+
return 'SidenavView';
|
|
26794
|
+
case 'doubleDrawerView':
|
|
26795
|
+
return 'DoubleDrawerView';
|
|
26796
|
+
case 'toolbarView':
|
|
26797
|
+
return 'ToolbarView';
|
|
26798
|
+
case 'sidenavAndToolbarView':
|
|
26799
|
+
return 'SidenavAndToolbarView';
|
|
26800
|
+
case 'groupView':
|
|
26801
|
+
return 'GroupView';
|
|
26802
|
+
case 'dashboard':
|
|
26803
|
+
return 'Dashboard';
|
|
26804
|
+
case 'treeCaseView':
|
|
26805
|
+
return 'TreeCaseView';
|
|
26806
|
+
case 'workflowView':
|
|
26807
|
+
return 'WorkflowView';
|
|
26808
|
+
case 'roleAssignmentView':
|
|
26809
|
+
return 'RoleAssignmentView';
|
|
26810
|
+
case 'ldapRoleAssignmentView':
|
|
26811
|
+
return 'LdapRoleAssignmentView';
|
|
26812
|
+
default:
|
|
26813
|
+
throw new Error(`Unknown view type '${view}'`);
|
|
26814
|
+
}
|
|
26815
|
+
}
|
|
26816
|
+
}
|
|
26817
|
+
|
|
26518
26818
|
var GroupNavigationConstants;
|
|
26519
26819
|
(function (GroupNavigationConstants) {
|
|
26520
26820
|
/**
|
|
@@ -26655,6 +26955,177 @@ var GroupNavigationConstants;
|
|
|
26655
26955
|
GroupNavigationConstants["ITEM_FIELD_ID_HAS_CHILDREN"] = "hasChildren";
|
|
26656
26956
|
})(GroupNavigationConstants || (GroupNavigationConstants = {}));
|
|
26657
26957
|
|
|
26958
|
+
/**
|
|
26959
|
+
* Holds component for dynamic routing resolution of group navigation component resolver component by the {@link RoutingBuilderService}.
|
|
26960
|
+
*/
|
|
26961
|
+
const NAE_GROUP_NAVIGATION_COMPONENT_RESOLVER_COMPONENT = new InjectionToken('NaeGroupNavigationComponentResolverComponent');
|
|
26962
|
+
|
|
26963
|
+
const NAE_ROUTING_CONFIGURATION_PATH = "configPath";
|
|
26964
|
+
/**
|
|
26965
|
+
* Uses the information from nae.json to construct the application's routing
|
|
26966
|
+
*/
|
|
26967
|
+
class RoutingBuilderService {
|
|
26968
|
+
constructor(router, _configService, _viewService, _logger, _dynamicNavigationRouteService, _groupNavigationComponentResolverComponent) {
|
|
26969
|
+
this._configService = _configService;
|
|
26970
|
+
this._viewService = _viewService;
|
|
26971
|
+
this._logger = _logger;
|
|
26972
|
+
this._dynamicNavigationRouteService = _dynamicNavigationRouteService;
|
|
26973
|
+
this._groupNavigationComponentResolverComponent = _groupNavigationComponentResolverComponent;
|
|
26974
|
+
this._groupNavigationRouteGenerated = false;
|
|
26975
|
+
router.relativeLinkResolution = 'legacy';
|
|
26976
|
+
router.config.splice(0, router.config.length);
|
|
26977
|
+
for (const [pathSegment, view] of Object.entries(_configService.get().views)) {
|
|
26978
|
+
const route = this.constructRouteObject(view, pathSegment);
|
|
26979
|
+
if (route !== undefined) {
|
|
26980
|
+
router.config.push(route);
|
|
26981
|
+
}
|
|
26982
|
+
}
|
|
26983
|
+
router.config.push(...this.defaultRoutesRedirects());
|
|
26984
|
+
}
|
|
26985
|
+
constructRouteObject(view, configPath, ancestors = []) {
|
|
26986
|
+
const component = this.resolveComponentClass(view, configPath);
|
|
26987
|
+
if (component === undefined) {
|
|
26988
|
+
return undefined;
|
|
26989
|
+
}
|
|
26990
|
+
if (!view.routing) {
|
|
26991
|
+
this._logger.warn(`nae.json configuration is invalid. View at path '${configPath}'` +
|
|
26992
|
+
` must define a 'routing' attribute. Skipping this view for routing generation.`);
|
|
26993
|
+
return undefined;
|
|
26994
|
+
}
|
|
26995
|
+
const route = {
|
|
26996
|
+
path: view.routing.path,
|
|
26997
|
+
data: {
|
|
26998
|
+
[NAE_ROUTING_CONFIGURATION_PATH]: configPath
|
|
26999
|
+
},
|
|
27000
|
+
component
|
|
27001
|
+
};
|
|
27002
|
+
if (view?.layout?.name === GroupNavigationConstants.GROUP_NAVIGATION_OUTLET) {
|
|
27003
|
+
if (this._groupNavigationRouteGenerated) {
|
|
27004
|
+
this._logger.warn(`Multiple groupNavigationOutlets are present in nae.json. Duplicate entry found at path ${configPath}`);
|
|
27005
|
+
}
|
|
27006
|
+
else {
|
|
27007
|
+
this._logger.debug(`GroupNavigationOutlet found in nae.json at path '${configPath}'`);
|
|
27008
|
+
}
|
|
27009
|
+
const pathNoParams = route.path;
|
|
27010
|
+
route.path = `${pathNoParams}/:${GroupNavigationConstants.GROUP_NAVIGATION_ROUTER_PARAM}`;
|
|
27011
|
+
route.canActivate = [AuthenticationGuardService];
|
|
27012
|
+
const parentPathSegments = ancestors.map(a => a.path);
|
|
27013
|
+
parentPathSegments.push(pathNoParams);
|
|
27014
|
+
this._dynamicNavigationRouteService.route = parentPathSegments.join('/');
|
|
27015
|
+
this._groupNavigationRouteGenerated = true;
|
|
27016
|
+
return route;
|
|
27017
|
+
}
|
|
27018
|
+
if (view.routing.match !== undefined && view.routing.match) {
|
|
27019
|
+
route['pathMatch'] = 'full';
|
|
27020
|
+
}
|
|
27021
|
+
route['canActivate'] = [];
|
|
27022
|
+
if (view.access === 'private'
|
|
27023
|
+
|| view.access.hasOwnProperty('role')
|
|
27024
|
+
|| view.access.hasOwnProperty('group')
|
|
27025
|
+
|| view.access.hasOwnProperty('authority')) {
|
|
27026
|
+
route['canActivate'].push(AuthenticationGuardService);
|
|
27027
|
+
}
|
|
27028
|
+
if (view.access.hasOwnProperty('role')) {
|
|
27029
|
+
route['canActivate'].push(RoleGuardService);
|
|
27030
|
+
}
|
|
27031
|
+
if (view.access.hasOwnProperty('authority')) {
|
|
27032
|
+
route['canActivate'].push(AuthorityGuardService);
|
|
27033
|
+
}
|
|
27034
|
+
if (view.access.hasOwnProperty('group')) {
|
|
27035
|
+
route['canActivate'].push(GroupGuardService);
|
|
27036
|
+
}
|
|
27037
|
+
if (!!view.children) {
|
|
27038
|
+
route['children'] = [];
|
|
27039
|
+
Object.entries(view.children).forEach(([configPathSegment, childView]) => {
|
|
27040
|
+
// TODO check if routes are constructed correctly regarding empty route segments
|
|
27041
|
+
const childRoute = this.constructRouteObject(childView, `${configPath}/${configPathSegment}`, [...ancestors, route]);
|
|
27042
|
+
if (childRoute !== undefined) {
|
|
27043
|
+
route['children'].push(childRoute);
|
|
27044
|
+
}
|
|
27045
|
+
});
|
|
27046
|
+
}
|
|
27047
|
+
if (view?.layout?.name === 'tabView') {
|
|
27048
|
+
if (!view.children) {
|
|
27049
|
+
route['children'] = [];
|
|
27050
|
+
}
|
|
27051
|
+
route['children'].push({
|
|
27052
|
+
path: '**',
|
|
27053
|
+
component
|
|
27054
|
+
});
|
|
27055
|
+
}
|
|
27056
|
+
return route;
|
|
27057
|
+
}
|
|
27058
|
+
resolveComponentClass(view, configPath) {
|
|
27059
|
+
let result;
|
|
27060
|
+
if (!!view.component) {
|
|
27061
|
+
result = this._viewService.resolveNameToClass(view.component.class);
|
|
27062
|
+
}
|
|
27063
|
+
else if (!!view.layout) {
|
|
27064
|
+
result = this.resolveComponentClassFromLayout(view, configPath);
|
|
27065
|
+
}
|
|
27066
|
+
else {
|
|
27067
|
+
this._logger.warn(`nae.json configuration is invalid. View at path '${configPath}'` +
|
|
27068
|
+
` must define either a 'layout' or a 'component' attribute. Skipping this view for routing generation.`);
|
|
27069
|
+
return undefined;
|
|
27070
|
+
}
|
|
27071
|
+
if (result === undefined) {
|
|
27072
|
+
this._logger.warn(`Some views from nae.json configuration have not been created in the project.` +
|
|
27073
|
+
` Run create-view schematic to rectify this. Skipping this view for routing generation.`);
|
|
27074
|
+
return undefined;
|
|
27075
|
+
}
|
|
27076
|
+
return result;
|
|
27077
|
+
}
|
|
27078
|
+
resolveComponentClassFromLayout(view, configPath) {
|
|
27079
|
+
if (view.layout.name === GroupNavigationConstants.GROUP_NAVIGATION_OUTLET) {
|
|
27080
|
+
return this._groupNavigationComponentResolverComponent;
|
|
27081
|
+
}
|
|
27082
|
+
const className = RoutingBuilderService.parseClassNameFromView(view, configPath);
|
|
27083
|
+
return this._viewService.resolveNameToClass(className);
|
|
27084
|
+
}
|
|
27085
|
+
static parseClassNameFromView(view, configPath) {
|
|
27086
|
+
if (!!view.layout.componentName) {
|
|
27087
|
+
return `${classify(view.layout.componentName)}Component`;
|
|
27088
|
+
}
|
|
27089
|
+
else {
|
|
27090
|
+
const classInfo = new ViewClassInfo(configPath, view.layout.name, view.layout.componentName);
|
|
27091
|
+
return classInfo.className;
|
|
27092
|
+
}
|
|
27093
|
+
}
|
|
27094
|
+
defaultRoutesRedirects() {
|
|
27095
|
+
const result = [];
|
|
27096
|
+
const servicesConfig = this._configService.getServicesConfiguration();
|
|
27097
|
+
if (!!servicesConfig && !!servicesConfig.routing) {
|
|
27098
|
+
if (!!servicesConfig.routing.defaultRedirect) {
|
|
27099
|
+
result.push({
|
|
27100
|
+
path: '',
|
|
27101
|
+
redirectTo: servicesConfig.routing.defaultRedirect,
|
|
27102
|
+
pathMatch: 'full'
|
|
27103
|
+
});
|
|
27104
|
+
}
|
|
27105
|
+
if (!!servicesConfig.routing.wildcardRedirect) {
|
|
27106
|
+
result.push({
|
|
27107
|
+
path: '**',
|
|
27108
|
+
redirectTo: servicesConfig.routing.wildcardRedirect
|
|
27109
|
+
});
|
|
27110
|
+
}
|
|
27111
|
+
}
|
|
27112
|
+
return result;
|
|
27113
|
+
}
|
|
27114
|
+
}
|
|
27115
|
+
RoutingBuilderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RoutingBuilderService, deps: [{ token: i2$3.Router }, { token: ConfigurationService }, { token: ViewService }, { token: LoggerService }, { token: DynamicNavigationRouteProviderService }, { token: NAE_GROUP_NAVIGATION_COMPONENT_RESOLVER_COMPONENT, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
27116
|
+
RoutingBuilderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RoutingBuilderService, providedIn: 'root' });
|
|
27117
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RoutingBuilderService, decorators: [{
|
|
27118
|
+
type: Injectable,
|
|
27119
|
+
args: [{
|
|
27120
|
+
providedIn: 'root'
|
|
27121
|
+
}]
|
|
27122
|
+
}], ctorParameters: function () { return [{ type: i2$3.Router }, { type: ConfigurationService }, { type: ViewService }, { type: LoggerService }, { type: DynamicNavigationRouteProviderService }, { type: i0.Type, decorators: [{
|
|
27123
|
+
type: Optional
|
|
27124
|
+
}, {
|
|
27125
|
+
type: Inject,
|
|
27126
|
+
args: [NAE_GROUP_NAVIGATION_COMPONENT_RESOLVER_COMPONENT]
|
|
27127
|
+
}] }]; } });
|
|
27128
|
+
|
|
26658
27129
|
/**
|
|
26659
27130
|
* Holds all identifiers of the Impersonation config process in an accessible manner
|
|
26660
27131
|
*/
|
|
@@ -26886,6 +27357,8 @@ class AbstractNavigationDoubleDrawerComponent {
|
|
|
26886
27357
|
this.rightLoading$ = new LoadingEmitter();
|
|
26887
27358
|
this.nodeLoading$ = new LoadingEmitter();
|
|
26888
27359
|
this.itemsOrder = MenuOrder.Ascending;
|
|
27360
|
+
this.hiddenCustomItems = [];
|
|
27361
|
+
this._childCustomViews = {};
|
|
26889
27362
|
}
|
|
26890
27363
|
ngOnInit() {
|
|
26891
27364
|
this._breakpointSubscription = this._breakpoint.observe([Breakpoints.HandsetLandscape]).subscribe(() => {
|
|
@@ -26903,6 +27376,14 @@ class AbstractNavigationDoubleDrawerComponent {
|
|
|
26903
27376
|
this._currentNodeSubscription = this._uriService.activeNode$.subscribe(node => {
|
|
26904
27377
|
this.currentNode = node;
|
|
26905
27378
|
});
|
|
27379
|
+
const viewConfigurationPath = this._activatedRoute.snapshot.data[NAE_ROUTING_CONFIGURATION_PATH];
|
|
27380
|
+
if (!!viewConfigurationPath) {
|
|
27381
|
+
const viewConfiguration = this._config.getViewByPath(viewConfigurationPath);
|
|
27382
|
+
Object.entries(viewConfiguration.children).forEach(([key, childView]) => {
|
|
27383
|
+
this.resolveUriForChildViews(viewConfigurationPath + '/' + key, childView);
|
|
27384
|
+
this.resolveHiddenMenuItemFromChildViews(viewConfigurationPath + '/' + key, childView);
|
|
27385
|
+
});
|
|
27386
|
+
}
|
|
26906
27387
|
}
|
|
26907
27388
|
get currentNode() {
|
|
26908
27389
|
return this._currentNode;
|
|
@@ -27088,17 +27569,20 @@ class AbstractNavigationDoubleDrawerComponent {
|
|
|
27088
27569
|
else {
|
|
27089
27570
|
this.rightItems = result.map(folder => this.resolveItemCaseToNavigationItem(folder)).filter(i => !!i);
|
|
27090
27571
|
}
|
|
27572
|
+
this.resolveCustomViewsInRightSide();
|
|
27091
27573
|
this.rightLoading$.off();
|
|
27092
27574
|
}, error => {
|
|
27093
27575
|
this._log.error(error);
|
|
27094
27576
|
this.rightItems = [];
|
|
27095
27577
|
this.moreItems = [];
|
|
27578
|
+
this.resolveCustomViewsInRightSide();
|
|
27096
27579
|
this.rightLoading$.off();
|
|
27097
27580
|
});
|
|
27098
27581
|
}, error => {
|
|
27099
27582
|
this._log.error(error);
|
|
27100
27583
|
this.rightItems = [];
|
|
27101
27584
|
this.moreItems = [];
|
|
27585
|
+
this.resolveCustomViewsInRightSide();
|
|
27102
27586
|
this.rightLoading$.off();
|
|
27103
27587
|
});
|
|
27104
27588
|
}
|
|
@@ -27124,6 +27608,11 @@ class AbstractNavigationDoubleDrawerComponent {
|
|
|
27124
27608
|
this.leftItems = this.leftItems.sort((a, b) => multiplier * a?.navigation?.title.localeCompare(b?.navigation?.title));
|
|
27125
27609
|
this.moreItems = this.moreItems.sort((a, b) => multiplier * a?.navigation?.title.localeCompare(b?.navigation?.title));
|
|
27126
27610
|
}
|
|
27611
|
+
resolveCustomViewsInRightSide() {
|
|
27612
|
+
if (!!this._childCustomViews[this._currentNode.uriPath]) {
|
|
27613
|
+
this.rightItems.push(...Object.values(this._childCustomViews[this._currentNode.uriPath]));
|
|
27614
|
+
}
|
|
27615
|
+
}
|
|
27127
27616
|
resolveItemCaseToNavigationItem(itemCase) {
|
|
27128
27617
|
const item = {
|
|
27129
27618
|
access: {},
|
|
@@ -27204,6 +27693,31 @@ class AbstractNavigationDoubleDrawerComponent {
|
|
|
27204
27693
|
// this.userPreferenceService._drawerWidthChanged$.next(this.width);
|
|
27205
27694
|
// this.contentWidth.next(this.width);
|
|
27206
27695
|
}
|
|
27696
|
+
resolveUriForChildViews(configPath, childView) {
|
|
27697
|
+
if (!childView.processUri)
|
|
27698
|
+
return;
|
|
27699
|
+
if (!this._accessService.canAccessView(childView, configPath))
|
|
27700
|
+
return;
|
|
27701
|
+
if (!this._childCustomViews[childView.processUri]) {
|
|
27702
|
+
this._childCustomViews[childView.processUri] = {};
|
|
27703
|
+
}
|
|
27704
|
+
this._childCustomViews[childView.processUri][configPath] = {
|
|
27705
|
+
id: configPath,
|
|
27706
|
+
...childView,
|
|
27707
|
+
};
|
|
27708
|
+
}
|
|
27709
|
+
resolveHiddenMenuItemFromChildViews(configPath, childView) {
|
|
27710
|
+
if (!childView.navigation)
|
|
27711
|
+
return;
|
|
27712
|
+
if (!this._accessService.canAccessView(childView, configPath))
|
|
27713
|
+
return;
|
|
27714
|
+
if (!!(childView?.navigation?.hidden)) {
|
|
27715
|
+
this.hiddenCustomItems.push({
|
|
27716
|
+
id: configPath,
|
|
27717
|
+
...childView,
|
|
27718
|
+
});
|
|
27719
|
+
}
|
|
27720
|
+
}
|
|
27207
27721
|
}
|
|
27208
27722
|
AbstractNavigationDoubleDrawerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractNavigationDoubleDrawerComponent, deps: [{ token: i2$3.Router }, { token: i2$3.ActivatedRoute }, { token: i1$7.BreakpointObserver }, { token: LanguageService }, { token: i1$2.TranslateService }, { token: UserService }, { token: AccessService }, { token: LoggerService }, { token: ConfigurationService }, { token: UriService }, { token: ImpersonationUserSelectService }, { token: ImpersonationService }, { token: DynamicNavigationRouteProviderService }], target: i0.ɵɵFactoryTarget.Component });
|
|
27209
27723
|
AbstractNavigationDoubleDrawerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractNavigationDoubleDrawerComponent, selector: "ncc-abstract-navigation-double-drawer", inputs: { portalLeftMenu: "portalLeftMenu", portalRightMenu: "portalRightMenu", imageRouterLink: "imageRouterLink", imageAlt: "imageAlt", image: "image", profileRouterLink: "profileRouterLink", includeUser: "includeUser", includeLanguage: "includeLanguage", includeMoreMenu: "includeMoreMenu", includeImpersonation: "includeImpersonation", allClosable: "allClosable", folderIcon: "folderIcon", openedFolderIcon: "openedFolderIcon", filterIcon: "filterIcon", foldersCategoryName: "foldersCategoryName", viewsCategoryName: "viewsCategoryName" }, ngImport: i0, template: '', isInline: true });
|
|
@@ -27810,11 +28324,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
27810
28324
|
}]
|
|
27811
28325
|
}], ctorParameters: function () { return [{ type: FilterRepository }, { type: TaskResourceService }, { type: AllowedNetsServiceFactory }, { type: BaseAllowedNetsService }, { type: LoggerService }]; } });
|
|
27812
28326
|
|
|
27813
|
-
/**
|
|
27814
|
-
* Holds component for dynamic routing resolution of group navigation component resolver component by the {@link RoutingBuilderService}.
|
|
27815
|
-
*/
|
|
27816
|
-
const NAE_GROUP_NAVIGATION_COMPONENT_RESOLVER_COMPONENT = new InjectionToken('NaeGroupNavigationComponentResolverComponent');
|
|
27817
|
-
|
|
27818
28327
|
var UriContentType;
|
|
27819
28328
|
(function (UriContentType) {
|
|
27820
28329
|
UriContentType[UriContentType["PROCESS"] = 0] = "PROCESS";
|
|
@@ -29694,30 +30203,18 @@ class TaskConst {
|
|
|
29694
30203
|
}
|
|
29695
30204
|
TaskConst.TRANSITION_ID = 'transitionId';
|
|
29696
30205
|
class AbstractSingleTaskViewComponent extends AbstractViewWithHeadersComponent {
|
|
29697
|
-
constructor(taskViewService, activatedRoute,
|
|
30206
|
+
constructor(taskViewService, activatedRoute, baseFilter) {
|
|
29698
30207
|
super(taskViewService, activatedRoute);
|
|
29699
30208
|
this.taskViewService = taskViewService;
|
|
30209
|
+
this.baseFilter = baseFilter;
|
|
29700
30210
|
this.initiallyExpanded = true;
|
|
29701
30211
|
this.preventCollapse = true;
|
|
29702
30212
|
this.noTaskPresent = new EventEmitter();
|
|
29703
|
-
this.taskPanelData =
|
|
29704
|
-
|
|
29705
|
-
|
|
29706
|
-
this.transitionId = paramMap['params'][TaskConst.TRANSITION_ID];
|
|
29707
|
-
this.subPanelData = this.taskViewService.tasks$.subscribe(tasks => {
|
|
29708
|
-
if (!!tasks && tasks.length > 0) {
|
|
29709
|
-
this.taskPanelData.next(this.resolveTransitionTask(tasks));
|
|
29710
|
-
}
|
|
29711
|
-
else {
|
|
29712
|
-
const isLoading = async.transform(this.loading$);
|
|
29713
|
-
if (!isLoading) {
|
|
29714
|
-
this.taskPanelData.next(undefined);
|
|
29715
|
-
this.noTaskPresent.next();
|
|
29716
|
-
}
|
|
29717
|
-
}
|
|
29718
|
-
});
|
|
30213
|
+
this.taskPanelData = this.taskViewService.tasks$.pipe(map(tasks => tasks.find(panelData => this.isTaskMatchingFilter(panelData, baseFilter.filter.getRequestBody())))).pipe(tap(panelData => {
|
|
30214
|
+
if (!!panelData) {
|
|
30215
|
+
panelData.initiallyExpanded = true;
|
|
29719
30216
|
}
|
|
29720
|
-
});
|
|
30217
|
+
}));
|
|
29721
30218
|
this.loading$ = this.taskViewService.loading$;
|
|
29722
30219
|
}
|
|
29723
30220
|
ngOnDestroy() {
|
|
@@ -29728,22 +30225,15 @@ class AbstractSingleTaskViewComponent extends AbstractViewWithHeadersComponent {
|
|
|
29728
30225
|
if (!!this.subPanelData) {
|
|
29729
30226
|
this.subPanelData.unsubscribe();
|
|
29730
30227
|
}
|
|
29731
|
-
if (!!this.taskPanelData) {
|
|
29732
|
-
this.taskPanelData.complete();
|
|
29733
|
-
}
|
|
29734
30228
|
}
|
|
29735
30229
|
get task$() {
|
|
29736
|
-
return this.taskPanelData
|
|
30230
|
+
return this.taskPanelData;
|
|
29737
30231
|
}
|
|
29738
|
-
|
|
29739
|
-
|
|
29740
|
-
if (!!transitionTask) {
|
|
29741
|
-
transitionTask.initiallyExpanded = transitionTask.task.finishDate === undefined;
|
|
29742
|
-
}
|
|
29743
|
-
return transitionTask;
|
|
30232
|
+
isTaskMatchingFilter(panelData, taskSearchRequestBody) {
|
|
30233
|
+
return panelData.task.stringId === taskSearchRequestBody.stringId || panelData.task.transitionId === taskSearchRequestBody.transitionId;
|
|
29744
30234
|
}
|
|
29745
30235
|
}
|
|
29746
|
-
AbstractSingleTaskViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractSingleTaskViewComponent, deps: [{ token: TaskViewService }, { token: i2$3.ActivatedRoute }, { token:
|
|
30236
|
+
AbstractSingleTaskViewComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractSingleTaskViewComponent, deps: [{ token: TaskViewService }, { token: i2$3.ActivatedRoute }, { token: NAE_BASE_FILTER }], target: i0.ɵɵFactoryTarget.Component });
|
|
29747
30237
|
AbstractSingleTaskViewComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "13.3.12", type: AbstractSingleTaskViewComponent, selector: "ncc-abstract-single-task-view", inputs: { initiallyExpanded: "initiallyExpanded", preventCollapse: "preventCollapse" }, outputs: { noTaskPresent: "noTaskPresent" }, usesInheritance: true, ngImport: i0, template: '', isInline: true });
|
|
29748
30238
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: AbstractSingleTaskViewComponent, decorators: [{
|
|
29749
30239
|
type: Component,
|
|
@@ -29751,7 +30241,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
29751
30241
|
selector: 'ncc-abstract-single-task-view',
|
|
29752
30242
|
template: ''
|
|
29753
30243
|
}]
|
|
29754
|
-
}], ctorParameters: function () { return [{ type: TaskViewService }, { type: i2$3.ActivatedRoute }, { type:
|
|
30244
|
+
}], ctorParameters: function () { return [{ type: TaskViewService }, { type: i2$3.ActivatedRoute }, { type: undefined, decorators: [{
|
|
30245
|
+
type: Inject,
|
|
30246
|
+
args: [NAE_BASE_FILTER]
|
|
30247
|
+
}] }]; }, propDecorators: { initiallyExpanded: [{
|
|
29755
30248
|
type: Input
|
|
29756
30249
|
}], preventCollapse: [{
|
|
29757
30250
|
type: Input
|
|
@@ -33088,394 +33581,6 @@ class MockProfileService {
|
|
|
33088
33581
|
}
|
|
33089
33582
|
}
|
|
33090
33583
|
|
|
33091
|
-
class ImportToAdd {
|
|
33092
|
-
constructor(className, fileImportPath) {
|
|
33093
|
-
this.className = className;
|
|
33094
|
-
this.fileImportPath = fileImportPath;
|
|
33095
|
-
}
|
|
33096
|
-
}
|
|
33097
|
-
|
|
33098
|
-
/**
|
|
33099
|
-
* @license
|
|
33100
|
-
* Copyright Google Inc. All Rights Reserved.
|
|
33101
|
-
*
|
|
33102
|
-
* Use of this source code is governed by an MIT-style license that can be
|
|
33103
|
-
* found in the LICENSE file at https://angular.io/license
|
|
33104
|
-
*
|
|
33105
|
-
* File copied from: angular_devkit/core/src/utils/strings.ts
|
|
33106
|
-
*/
|
|
33107
|
-
const STRING_DASHERIZE_REGEXP = (/[ _]/g);
|
|
33108
|
-
const STRING_DECAMELIZE_REGEXP = (/([a-z\d])([A-Z])/g);
|
|
33109
|
-
const STRING_CAMELIZE_REGEXP = (/(-|_|\.|\s)+(.)?/g);
|
|
33110
|
-
const STRING_UNDERSCORE_REGEXP_1 = (/([a-z\d])([A-Z]+)/g);
|
|
33111
|
-
const STRING_UNDERSCORE_REGEXP_2 = (/-|\s+/g);
|
|
33112
|
-
/**
|
|
33113
|
-
* Converts a camelized string into all lower case separated by underscores.
|
|
33114
|
-
*
|
|
33115
|
-
* ```javascript
|
|
33116
|
-
* decamelize('innerHTML'); // 'inner_html'
|
|
33117
|
-
* decamelize('action_name'); // 'action_name'
|
|
33118
|
-
* decamelize('css-class-name'); // 'css-class-name'
|
|
33119
|
-
* decamelize('my favorite items'); // 'my favorite items'
|
|
33120
|
-
* ```
|
|
33121
|
-
* @method decamelize
|
|
33122
|
-
* @param str The string to decamelize.
|
|
33123
|
-
* @return the decamelized string.
|
|
33124
|
-
*/
|
|
33125
|
-
function decamelize(str) {
|
|
33126
|
-
return str.replace(STRING_DECAMELIZE_REGEXP, '$1_$2').toLowerCase();
|
|
33127
|
-
}
|
|
33128
|
-
/**
|
|
33129
|
-
* Replaces underscores, spaces, or camelCase with dashes.
|
|
33130
|
-
* ```javascript
|
|
33131
|
-
* dasherize('innerHTML'); // 'inner-html'
|
|
33132
|
-
* dasherize('action_name'); // 'action-name'
|
|
33133
|
-
* dasherize('css-class-name'); // 'css-class-name'
|
|
33134
|
-
* dasherize('my favorite items'); // 'my-favorite-items'
|
|
33135
|
-
* ```
|
|
33136
|
-
* @method dasherize
|
|
33137
|
-
* @param str The string to dasherize.
|
|
33138
|
-
* @return the dasherized string.
|
|
33139
|
-
*/
|
|
33140
|
-
function dasherize(str) {
|
|
33141
|
-
return decamelize(str).replace(STRING_DASHERIZE_REGEXP, '-');
|
|
33142
|
-
}
|
|
33143
|
-
/**
|
|
33144
|
-
* Returns the lowerCamelCase form of a string.
|
|
33145
|
-
* ```javascript
|
|
33146
|
-
* camelize('innerHTML'); // 'innerHTML'
|
|
33147
|
-
* camelize('action_name'); // 'actionName'
|
|
33148
|
-
* camelize('css-class-name'); // 'cssClassName'
|
|
33149
|
-
* camelize('my favorite items'); // 'myFavoriteItems'
|
|
33150
|
-
* camelize('My Favorite Items'); // 'myFavoriteItems'
|
|
33151
|
-
* ```
|
|
33152
|
-
* @method camelize
|
|
33153
|
-
* @param str The string to camelize.
|
|
33154
|
-
* @return the camelized string.
|
|
33155
|
-
*/
|
|
33156
|
-
function camelize(str) {
|
|
33157
|
-
return str
|
|
33158
|
-
.replace(STRING_CAMELIZE_REGEXP, (_match, _separator, chr) => {
|
|
33159
|
-
return chr ? chr.toUpperCase() : '';
|
|
33160
|
-
})
|
|
33161
|
-
.replace(/^([A-Z])/, (match) => match.toLowerCase());
|
|
33162
|
-
}
|
|
33163
|
-
/**
|
|
33164
|
-
* Returns the UpperCamelCase form of a string.
|
|
33165
|
-
* ```javascript
|
|
33166
|
-
* 'innerHTML'.classify(); // 'InnerHTML'
|
|
33167
|
-
* 'action_name'.classify(); // 'ActionName'
|
|
33168
|
-
* 'css-class-name'.classify(); // 'CssClassName'
|
|
33169
|
-
* 'my favorite items'.classify(); // 'MyFavoriteItems'
|
|
33170
|
-
* ```
|
|
33171
|
-
* @method classify
|
|
33172
|
-
* @param str the string to classify
|
|
33173
|
-
* @return the classified string
|
|
33174
|
-
*/
|
|
33175
|
-
function classify(str) {
|
|
33176
|
-
return str.split('.').map(part => capitalize(camelize(part))).join('.');
|
|
33177
|
-
}
|
|
33178
|
-
/**
|
|
33179
|
-
* More general than decamelize. Returns the lower\_case\_and\_underscored
|
|
33180
|
-
* form of a string.
|
|
33181
|
-
* ```javascript
|
|
33182
|
-
* 'innerHTML'.underscore(); // 'inner_html'
|
|
33183
|
-
* 'action_name'.underscore(); // 'action_name'
|
|
33184
|
-
* 'css-class-name'.underscore(); // 'css_class_name'
|
|
33185
|
-
* 'my favorite items'.underscore(); // 'my_favorite_items'
|
|
33186
|
-
* ```
|
|
33187
|
-
* @method underscore
|
|
33188
|
-
* @param str The string to underscore.
|
|
33189
|
-
* @return the underscored string.
|
|
33190
|
-
*/
|
|
33191
|
-
function underscore(str) {
|
|
33192
|
-
return str
|
|
33193
|
-
.replace(STRING_UNDERSCORE_REGEXP_1, '$1_$2')
|
|
33194
|
-
.replace(STRING_UNDERSCORE_REGEXP_2, '_')
|
|
33195
|
-
.toLowerCase();
|
|
33196
|
-
}
|
|
33197
|
-
/**
|
|
33198
|
-
* Returns the Capitalized form of a string
|
|
33199
|
-
* ```javascript
|
|
33200
|
-
* 'innerHTML'.capitalize() // 'InnerHTML'
|
|
33201
|
-
* 'action_name'.capitalize() // 'Action_name'
|
|
33202
|
-
* 'css-class-name'.capitalize() // 'Css-class-name'
|
|
33203
|
-
* 'my favorite items'.capitalize() // 'My favorite items'
|
|
33204
|
-
* ```
|
|
33205
|
-
* @method capitalize
|
|
33206
|
-
* @param str The string to capitalize.
|
|
33207
|
-
* @return The capitalized string.
|
|
33208
|
-
*/
|
|
33209
|
-
function capitalize(str) {
|
|
33210
|
-
return str.charAt(0).toUpperCase() + str.substr(1);
|
|
33211
|
-
}
|
|
33212
|
-
/**
|
|
33213
|
-
* Calculate the levenshtein distance of two strings.
|
|
33214
|
-
* See https://en.wikipedia.org/wiki/Levenshtein_distance.
|
|
33215
|
-
* Based off https://gist.github.com/andrei-m/982927 (for using the faster dynamic programming
|
|
33216
|
-
* version).
|
|
33217
|
-
*
|
|
33218
|
-
* @param a String a.
|
|
33219
|
-
* @param b String b.
|
|
33220
|
-
* @returns A number that represents the distance between the two strings. The greater the number
|
|
33221
|
-
* the more distant the strings are from each others.
|
|
33222
|
-
*/
|
|
33223
|
-
function levenshtein(a, b) {
|
|
33224
|
-
if (a.length === 0) {
|
|
33225
|
-
return b.length;
|
|
33226
|
-
}
|
|
33227
|
-
if (b.length === 0) {
|
|
33228
|
-
return a.length;
|
|
33229
|
-
}
|
|
33230
|
-
const matrix = [];
|
|
33231
|
-
// increment along the first column of each row
|
|
33232
|
-
for (let i = 0; i <= b.length; i++) {
|
|
33233
|
-
matrix[i] = [i];
|
|
33234
|
-
}
|
|
33235
|
-
// increment each column in the first row
|
|
33236
|
-
for (let j = 0; j <= a.length; j++) {
|
|
33237
|
-
matrix[0][j] = j;
|
|
33238
|
-
}
|
|
33239
|
-
// Fill in the rest of the matrix
|
|
33240
|
-
for (let i = 1; i <= b.length; i++) {
|
|
33241
|
-
for (let j = 1; j <= a.length; j++) {
|
|
33242
|
-
if (b.charAt(i - 1) === a.charAt(j - 1)) {
|
|
33243
|
-
matrix[i][j] = matrix[i - 1][j - 1];
|
|
33244
|
-
}
|
|
33245
|
-
else {
|
|
33246
|
-
matrix[i][j] = Math.min(matrix[i - 1][j - 1] + 1, // substitution
|
|
33247
|
-
matrix[i][j - 1] + 1, // insertion
|
|
33248
|
-
matrix[i - 1][j] + 1);
|
|
33249
|
-
}
|
|
33250
|
-
}
|
|
33251
|
-
}
|
|
33252
|
-
return matrix[b.length][a.length];
|
|
33253
|
-
}
|
|
33254
|
-
|
|
33255
|
-
class ViewClassInfo extends ImportToAdd {
|
|
33256
|
-
constructor(path, viewType, customComponentName) {
|
|
33257
|
-
super('', '');
|
|
33258
|
-
if (!customComponentName) {
|
|
33259
|
-
this.prefix = ViewClassInfo.convertPathToClassNamePrefix(path);
|
|
33260
|
-
const classSuffix = ViewClassInfo.resolveClassSuffixForView(viewType);
|
|
33261
|
-
this.nameWithoutComponent = `${classify(this.prefix)}${classSuffix}`;
|
|
33262
|
-
this.fileImportPath = `./views/${path}/${this.prefix}-${dasherize(classSuffix)}.component`;
|
|
33263
|
-
}
|
|
33264
|
-
else {
|
|
33265
|
-
this.prefix = '';
|
|
33266
|
-
this.nameWithoutComponent = classify(customComponentName);
|
|
33267
|
-
this.fileImportPath = `./views/${path}/${dasherize(customComponentName)}.component`;
|
|
33268
|
-
}
|
|
33269
|
-
this.className = `${this.nameWithoutComponent}Component`;
|
|
33270
|
-
}
|
|
33271
|
-
static convertPathToClassNamePrefix(path) {
|
|
33272
|
-
const regexDash = /-/g;
|
|
33273
|
-
return path.replace(regexDash, '_').replace(/\//g, '-').toLocaleLowerCase();
|
|
33274
|
-
}
|
|
33275
|
-
static resolveClassSuffixForView(view) {
|
|
33276
|
-
switch (view) {
|
|
33277
|
-
case 'login':
|
|
33278
|
-
return 'Login';
|
|
33279
|
-
case 'tabView':
|
|
33280
|
-
return 'TabView';
|
|
33281
|
-
case 'taskView':
|
|
33282
|
-
return 'TaskView';
|
|
33283
|
-
case 'caseView':
|
|
33284
|
-
return 'CaseView';
|
|
33285
|
-
case 'emptyView':
|
|
33286
|
-
return 'EmptyView';
|
|
33287
|
-
case 'sidenavView':
|
|
33288
|
-
return 'SidenavView';
|
|
33289
|
-
case 'doubleDrawerView':
|
|
33290
|
-
return 'DoubleDrawerView';
|
|
33291
|
-
case 'toolbarView':
|
|
33292
|
-
return 'ToolbarView';
|
|
33293
|
-
case 'sidenavAndToolbarView':
|
|
33294
|
-
return 'SidenavAndToolbarView';
|
|
33295
|
-
case 'groupView':
|
|
33296
|
-
return 'GroupView';
|
|
33297
|
-
case 'dashboard':
|
|
33298
|
-
return 'Dashboard';
|
|
33299
|
-
case 'treeCaseView':
|
|
33300
|
-
return 'TreeCaseView';
|
|
33301
|
-
case 'workflowView':
|
|
33302
|
-
return 'WorkflowView';
|
|
33303
|
-
case 'roleAssignmentView':
|
|
33304
|
-
return 'RoleAssignmentView';
|
|
33305
|
-
case 'ldapRoleAssignmentView':
|
|
33306
|
-
return 'LdapRoleAssignmentView';
|
|
33307
|
-
default:
|
|
33308
|
-
throw new Error(`Unknown view type '${view}'`);
|
|
33309
|
-
}
|
|
33310
|
-
}
|
|
33311
|
-
}
|
|
33312
|
-
|
|
33313
|
-
const NAE_ROUTING_CONFIGURATION_PATH = "configPath";
|
|
33314
|
-
/**
|
|
33315
|
-
* Uses the information from nae.json to construct the application's routing
|
|
33316
|
-
*/
|
|
33317
|
-
class RoutingBuilderService {
|
|
33318
|
-
constructor(router, _configService, _viewService, _logger, _dynamicNavigationRouteService, _groupNavigationComponentResolverComponent) {
|
|
33319
|
-
this._configService = _configService;
|
|
33320
|
-
this._viewService = _viewService;
|
|
33321
|
-
this._logger = _logger;
|
|
33322
|
-
this._dynamicNavigationRouteService = _dynamicNavigationRouteService;
|
|
33323
|
-
this._groupNavigationComponentResolverComponent = _groupNavigationComponentResolverComponent;
|
|
33324
|
-
this._groupNavigationRouteGenerated = false;
|
|
33325
|
-
router.relativeLinkResolution = 'legacy';
|
|
33326
|
-
router.config.splice(0, router.config.length);
|
|
33327
|
-
for (const [pathSegment, view] of Object.entries(_configService.get().views)) {
|
|
33328
|
-
const route = this.constructRouteObject(view, pathSegment);
|
|
33329
|
-
if (route !== undefined) {
|
|
33330
|
-
router.config.push(route);
|
|
33331
|
-
}
|
|
33332
|
-
}
|
|
33333
|
-
router.config.push(...this.defaultRoutesRedirects());
|
|
33334
|
-
}
|
|
33335
|
-
constructRouteObject(view, configPath, ancestors = []) {
|
|
33336
|
-
const component = this.resolveComponentClass(view, configPath);
|
|
33337
|
-
if (component === undefined) {
|
|
33338
|
-
return undefined;
|
|
33339
|
-
}
|
|
33340
|
-
if (!view.routing) {
|
|
33341
|
-
this._logger.warn(`nae.json configuration is invalid. View at path '${configPath}'` +
|
|
33342
|
-
` must define a 'routing' attribute. Skipping this view for routing generation.`);
|
|
33343
|
-
return undefined;
|
|
33344
|
-
}
|
|
33345
|
-
const route = {
|
|
33346
|
-
path: view.routing.path,
|
|
33347
|
-
data: {
|
|
33348
|
-
[NAE_ROUTING_CONFIGURATION_PATH]: configPath
|
|
33349
|
-
},
|
|
33350
|
-
component
|
|
33351
|
-
};
|
|
33352
|
-
if (view?.layout?.name === GroupNavigationConstants.GROUP_NAVIGATION_OUTLET) {
|
|
33353
|
-
if (this._groupNavigationRouteGenerated) {
|
|
33354
|
-
this._logger.warn(`Multiple groupNavigationOutlets are present in nae.json. Duplicate entry found at path ${configPath}`);
|
|
33355
|
-
}
|
|
33356
|
-
else {
|
|
33357
|
-
this._logger.debug(`GroupNavigationOutlet found in nae.json at path '${configPath}'`);
|
|
33358
|
-
}
|
|
33359
|
-
const pathNoParams = route.path;
|
|
33360
|
-
route.path = `${pathNoParams}/:${GroupNavigationConstants.GROUP_NAVIGATION_ROUTER_PARAM}`;
|
|
33361
|
-
route.canActivate = [AuthenticationGuardService];
|
|
33362
|
-
const parentPathSegments = ancestors.map(a => a.path);
|
|
33363
|
-
parentPathSegments.push(pathNoParams);
|
|
33364
|
-
this._dynamicNavigationRouteService.route = parentPathSegments.join('/');
|
|
33365
|
-
this._groupNavigationRouteGenerated = true;
|
|
33366
|
-
return route;
|
|
33367
|
-
}
|
|
33368
|
-
if (view.routing.match !== undefined && view.routing.match) {
|
|
33369
|
-
route['pathMatch'] = 'full';
|
|
33370
|
-
}
|
|
33371
|
-
route['canActivate'] = [];
|
|
33372
|
-
if (view.access === 'private'
|
|
33373
|
-
|| view.access.hasOwnProperty('role')
|
|
33374
|
-
|| view.access.hasOwnProperty('group')
|
|
33375
|
-
|| view.access.hasOwnProperty('authority')) {
|
|
33376
|
-
route['canActivate'].push(AuthenticationGuardService);
|
|
33377
|
-
}
|
|
33378
|
-
if (view.access.hasOwnProperty('role')) {
|
|
33379
|
-
route['canActivate'].push(RoleGuardService);
|
|
33380
|
-
}
|
|
33381
|
-
if (view.access.hasOwnProperty('authority')) {
|
|
33382
|
-
route['canActivate'].push(AuthorityGuardService);
|
|
33383
|
-
}
|
|
33384
|
-
if (view.access.hasOwnProperty('group')) {
|
|
33385
|
-
route['canActivate'].push(GroupGuardService);
|
|
33386
|
-
}
|
|
33387
|
-
if (!!view.children) {
|
|
33388
|
-
route['children'] = [];
|
|
33389
|
-
Object.entries(view.children).forEach(([configPathSegment, childView]) => {
|
|
33390
|
-
// TODO check if routes are constructed correctly regarding empty route segments
|
|
33391
|
-
const childRoute = this.constructRouteObject(childView, `${configPath}/${configPathSegment}`, [...ancestors, route]);
|
|
33392
|
-
if (childRoute !== undefined) {
|
|
33393
|
-
route['children'].push(childRoute);
|
|
33394
|
-
}
|
|
33395
|
-
});
|
|
33396
|
-
}
|
|
33397
|
-
if (view?.layout?.name === 'tabView') {
|
|
33398
|
-
if (!view.children) {
|
|
33399
|
-
route['children'] = [];
|
|
33400
|
-
}
|
|
33401
|
-
route['children'].push({
|
|
33402
|
-
path: '**',
|
|
33403
|
-
component
|
|
33404
|
-
});
|
|
33405
|
-
}
|
|
33406
|
-
return route;
|
|
33407
|
-
}
|
|
33408
|
-
resolveComponentClass(view, configPath) {
|
|
33409
|
-
let result;
|
|
33410
|
-
if (!!view.component) {
|
|
33411
|
-
result = this._viewService.resolveNameToClass(view.component.class);
|
|
33412
|
-
}
|
|
33413
|
-
else if (!!view.layout) {
|
|
33414
|
-
result = this.resolveComponentClassFromLayout(view, configPath);
|
|
33415
|
-
}
|
|
33416
|
-
else {
|
|
33417
|
-
this._logger.warn(`nae.json configuration is invalid. View at path '${configPath}'` +
|
|
33418
|
-
` must define either a 'layout' or a 'component' attribute. Skipping this view for routing generation.`);
|
|
33419
|
-
return undefined;
|
|
33420
|
-
}
|
|
33421
|
-
if (result === undefined) {
|
|
33422
|
-
this._logger.warn(`Some views from nae.json configuration have not been created in the project.` +
|
|
33423
|
-
` Run create-view schematic to rectify this. Skipping this view for routing generation.`);
|
|
33424
|
-
return undefined;
|
|
33425
|
-
}
|
|
33426
|
-
return result;
|
|
33427
|
-
}
|
|
33428
|
-
resolveComponentClassFromLayout(view, configPath) {
|
|
33429
|
-
if (view.layout.name === GroupNavigationConstants.GROUP_NAVIGATION_OUTLET) {
|
|
33430
|
-
return this._groupNavigationComponentResolverComponent;
|
|
33431
|
-
}
|
|
33432
|
-
const className = RoutingBuilderService.parseClassNameFromView(view, configPath);
|
|
33433
|
-
return this._viewService.resolveNameToClass(className);
|
|
33434
|
-
}
|
|
33435
|
-
static parseClassNameFromView(view, configPath) {
|
|
33436
|
-
if (!!view.layout.componentName) {
|
|
33437
|
-
return `${classify(view.layout.componentName)}Component`;
|
|
33438
|
-
}
|
|
33439
|
-
else {
|
|
33440
|
-
const classInfo = new ViewClassInfo(configPath, view.layout.name, view.layout.componentName);
|
|
33441
|
-
return classInfo.className;
|
|
33442
|
-
}
|
|
33443
|
-
}
|
|
33444
|
-
defaultRoutesRedirects() {
|
|
33445
|
-
const result = [];
|
|
33446
|
-
const servicesConfig = this._configService.getServicesConfiguration();
|
|
33447
|
-
if (!!servicesConfig && !!servicesConfig.routing) {
|
|
33448
|
-
if (!!servicesConfig.routing.defaultRedirect) {
|
|
33449
|
-
result.push({
|
|
33450
|
-
path: '',
|
|
33451
|
-
redirectTo: servicesConfig.routing.defaultRedirect,
|
|
33452
|
-
pathMatch: 'full'
|
|
33453
|
-
});
|
|
33454
|
-
}
|
|
33455
|
-
if (!!servicesConfig.routing.wildcardRedirect) {
|
|
33456
|
-
result.push({
|
|
33457
|
-
path: '**',
|
|
33458
|
-
redirectTo: servicesConfig.routing.wildcardRedirect
|
|
33459
|
-
});
|
|
33460
|
-
}
|
|
33461
|
-
}
|
|
33462
|
-
return result;
|
|
33463
|
-
}
|
|
33464
|
-
}
|
|
33465
|
-
RoutingBuilderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RoutingBuilderService, deps: [{ token: i2$3.Router }, { token: ConfigurationService }, { token: ViewService }, { token: LoggerService }, { token: DynamicNavigationRouteProviderService }, { token: NAE_GROUP_NAVIGATION_COMPONENT_RESOLVER_COMPONENT, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
33466
|
-
RoutingBuilderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RoutingBuilderService, providedIn: 'root' });
|
|
33467
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: RoutingBuilderService, decorators: [{
|
|
33468
|
-
type: Injectable,
|
|
33469
|
-
args: [{
|
|
33470
|
-
providedIn: 'root'
|
|
33471
|
-
}]
|
|
33472
|
-
}], ctorParameters: function () { return [{ type: i2$3.Router }, { type: ConfigurationService }, { type: ViewService }, { type: LoggerService }, { type: DynamicNavigationRouteProviderService }, { type: i0.Type, decorators: [{
|
|
33473
|
-
type: Optional
|
|
33474
|
-
}, {
|
|
33475
|
-
type: Inject,
|
|
33476
|
-
args: [NAE_GROUP_NAVIGATION_COMPONENT_RESOLVER_COMPONENT]
|
|
33477
|
-
}] }]; } });
|
|
33478
|
-
|
|
33479
33584
|
/* SERVICES */
|
|
33480
33585
|
|
|
33481
33586
|
/**
|
|
@@ -33485,7 +33590,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
33485
33590
|
* If you want to use an unlimited number of calls use {@link UnlimitedTaskContentService} instead.
|
|
33486
33591
|
*/
|
|
33487
33592
|
class SingleTaskContentService extends TaskContentService {
|
|
33488
|
-
constructor(_fieldConverterService, _snackBarService, _translate, _logger) {
|
|
33593
|
+
constructor(_fieldConverterService, _snackBarService, _translate, _logger, _injector) {
|
|
33489
33594
|
super(_fieldConverterService, _snackBarService, _translate, _logger);
|
|
33490
33595
|
this._task$ = new ReplaySubject(1);
|
|
33491
33596
|
}
|
|
@@ -33527,11 +33632,11 @@ class SingleTaskContentService extends TaskContentService {
|
|
|
33527
33632
|
}
|
|
33528
33633
|
}
|
|
33529
33634
|
}
|
|
33530
|
-
SingleTaskContentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SingleTaskContentService, deps: [{ token: FieldConverterService }, { token: SnackBarService }, { token: i1$2.TranslateService }, { token: LoggerService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
33635
|
+
SingleTaskContentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SingleTaskContentService, deps: [{ token: FieldConverterService }, { token: SnackBarService }, { token: i1$2.TranslateService }, { token: LoggerService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
33531
33636
|
SingleTaskContentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SingleTaskContentService });
|
|
33532
33637
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: SingleTaskContentService, decorators: [{
|
|
33533
33638
|
type: Injectable
|
|
33534
|
-
}], ctorParameters: function () { return [{ type: FieldConverterService }, { type: SnackBarService }, { type: i1$2.TranslateService }, { type: LoggerService }]; } });
|
|
33639
|
+
}], ctorParameters: function () { return [{ type: FieldConverterService }, { type: SnackBarService }, { type: i1$2.TranslateService }, { type: LoggerService }, { type: i0.Injector }]; } });
|
|
33535
33640
|
|
|
33536
33641
|
/**
|
|
33537
33642
|
* Provides an implementation of the {@link TaskContentService} abstract class that allows
|
|
@@ -33540,7 +33645,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
33540
33645
|
* If you want to limit the number of calls to 1 use {@link SingleTaskContentService} instead.
|
|
33541
33646
|
*/
|
|
33542
33647
|
class UnlimitedTaskContentService extends TaskContentService {
|
|
33543
|
-
constructor(_fieldConverterService, _snackBarService, _translate, _logger) {
|
|
33648
|
+
constructor(_fieldConverterService, _snackBarService, _translate, _logger, _injector) {
|
|
33544
33649
|
super(_fieldConverterService, _snackBarService, _translate, _logger);
|
|
33545
33650
|
this._task$ = new ReplaySubject(1);
|
|
33546
33651
|
}
|
|
@@ -33574,11 +33679,11 @@ class UnlimitedTaskContentService extends TaskContentService {
|
|
|
33574
33679
|
this._task$.complete();
|
|
33575
33680
|
}
|
|
33576
33681
|
}
|
|
33577
|
-
UnlimitedTaskContentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: UnlimitedTaskContentService, deps: [{ token: FieldConverterService }, { token: SnackBarService }, { token: i1$2.TranslateService }, { token: LoggerService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
33682
|
+
UnlimitedTaskContentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: UnlimitedTaskContentService, deps: [{ token: FieldConverterService }, { token: SnackBarService }, { token: i1$2.TranslateService }, { token: LoggerService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
33578
33683
|
UnlimitedTaskContentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: UnlimitedTaskContentService });
|
|
33579
33684
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: UnlimitedTaskContentService, decorators: [{
|
|
33580
33685
|
type: Injectable
|
|
33581
|
-
}], ctorParameters: function () { return [{ type: FieldConverterService }, { type: SnackBarService }, { type: i1$2.TranslateService }, { type: LoggerService }]; } });
|
|
33686
|
+
}], ctorParameters: function () { return [{ type: FieldConverterService }, { type: SnackBarService }, { type: i1$2.TranslateService }, { type: LoggerService }, { type: i0.Injector }]; } });
|
|
33582
33687
|
|
|
33583
33688
|
/**
|
|
33584
33689
|
* Contains types of elements that are used to construct task content, but are not data fields themselves.
|
|
@@ -34777,13 +34882,24 @@ const getNetAndCreateCase = (router, route, process, caseResourceService, snackB
|
|
|
34777
34882
|
});
|
|
34778
34883
|
};
|
|
34779
34884
|
|
|
34885
|
+
const CASE_ID = "caseId";
|
|
34886
|
+
const PETRI_NET_ID = "petriNetId";
|
|
34887
|
+
const TRANSITION_ID = "transitionId";
|
|
34780
34888
|
const publicBaseFilterFactory = (router, route, process, caseResourceService, snackBarService, translate, publicTaskLoadingService) => {
|
|
34781
|
-
|
|
34889
|
+
const caseId = route.snapshot.paramMap.get(CASE_ID);
|
|
34890
|
+
const petriNetId = route.snapshot.paramMap.get(PETRI_NET_ID);
|
|
34891
|
+
const transId = route.snapshot.paramMap.get(TRANSITION_ID);
|
|
34892
|
+
if (caseId === null && petriNetId !== null) {
|
|
34782
34893
|
getNetAndCreateCase(router, route, process, caseResourceService, snackBarService, translate, publicTaskLoadingService);
|
|
34783
34894
|
}
|
|
34784
|
-
else if (
|
|
34895
|
+
else if (caseId !== null && transId !== null) {
|
|
34785
34896
|
return {
|
|
34786
|
-
filter: new SimpleFilter('', FilterType.TASK, { case: { id:
|
|
34897
|
+
filter: new SimpleFilter('', FilterType.TASK, { case: { id: caseId }, transitionId: transId })
|
|
34898
|
+
};
|
|
34899
|
+
}
|
|
34900
|
+
else if (caseId !== null) {
|
|
34901
|
+
return {
|
|
34902
|
+
filter: new SimpleFilter('', FilterType.TASK, { case: { id: caseId } })
|
|
34787
34903
|
};
|
|
34788
34904
|
}
|
|
34789
34905
|
return {
|
|
@@ -34870,6 +34986,48 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
34870
34986
|
|
|
34871
34987
|
/* MODELS */
|
|
34872
34988
|
|
|
34989
|
+
const redirectAction = {
|
|
34990
|
+
call: (injector, frontAction) => {
|
|
34991
|
+
const router = injector.get(Router);
|
|
34992
|
+
router.navigate([frontAction.args[0]]);
|
|
34993
|
+
}
|
|
34994
|
+
};
|
|
34995
|
+
|
|
34996
|
+
const validateTaskAction = {
|
|
34997
|
+
call: (injector, frontAction) => {
|
|
34998
|
+
const taskContentService = injector.get(TaskContentService);
|
|
34999
|
+
taskContentService.validateTaskData(frontAction.args[0]);
|
|
35000
|
+
}
|
|
35001
|
+
};
|
|
35002
|
+
const reloadTaskAction = {
|
|
35003
|
+
call: (injector, frontAction) => {
|
|
35004
|
+
const taskDataService = injector.get(TaskDataService);
|
|
35005
|
+
taskDataService.initializeTaskDataFields(new AfterAction(), true);
|
|
35006
|
+
}
|
|
35007
|
+
};
|
|
35008
|
+
|
|
35009
|
+
class FrontActionModule {
|
|
35010
|
+
constructor(frontActionsRegistry) {
|
|
35011
|
+
frontActionsRegistry.register('redirect', redirectAction);
|
|
35012
|
+
frontActionsRegistry.register('validate', validateTaskAction);
|
|
35013
|
+
frontActionsRegistry.register('reloadTask', reloadTaskAction);
|
|
35014
|
+
}
|
|
35015
|
+
}
|
|
35016
|
+
FrontActionModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FrontActionModule, deps: [{ token: FrontActionRegistryService }], target: i0.ɵɵFactoryTarget.NgModule });
|
|
35017
|
+
FrontActionModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FrontActionModule, imports: [CommonModule] });
|
|
35018
|
+
FrontActionModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FrontActionModule, imports: [[
|
|
35019
|
+
CommonModule
|
|
35020
|
+
]] });
|
|
35021
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImport: i0, type: FrontActionModule, decorators: [{
|
|
35022
|
+
type: NgModule,
|
|
35023
|
+
args: [{
|
|
35024
|
+
declarations: [],
|
|
35025
|
+
imports: [
|
|
35026
|
+
CommonModule
|
|
35027
|
+
]
|
|
35028
|
+
}]
|
|
35029
|
+
}], ctorParameters: function () { return [{ type: FrontActionRegistryService }]; } });
|
|
35030
|
+
|
|
34873
35031
|
/*
|
|
34874
35032
|
* Public API Surface of netgrif-components-core
|
|
34875
35033
|
*/
|
|
@@ -34878,5 +35036,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.3.12", ngImpo
|
|
|
34878
35036
|
* Generated bundle index. Do not edit.
|
|
34879
35037
|
*/
|
|
34880
35038
|
|
|
34881
|
-
export { AbstractAddChildNodeComponent, AbstractAdvancedSearchComponent, AbstractAuthenticationOverlayComponent, AbstractBaseDataFieldComponent, AbstractBooleanDefaultFieldComponent, AbstractBooleanFieldComponent, AbstractBreadcrumbsComponent, AbstractButtonDefaultFieldComponent, AbstractButtonFieldComponent, AbstractCaseListComponent, AbstractCaseListPaginatorComponent, AbstractCasePanelComponent, AbstractCaseRefDefaultComponent, AbstractCaseViewComponent, AbstractChangePasswordComponent, AbstractCountCardComponent, AbstractCurrencyNumberFieldComponent, AbstractCustomCardComponent, AbstractDashboardBarChartTextFieldComponent, AbstractDashboardContentComponent, AbstractDashboardIframeTextFieldComponent, AbstractDashboardLineChartTextFieldComponent, AbstractDashboardPieChartTextFieldComponent, AbstractDashboardPortalTextFieldComponent, AbstractDashboardTextFieldComponent, AbstractDataFieldTemplateComponent, AbstractDateDefaultFieldComponent, AbstractDateFieldComponent, AbstractDateTimeDefaultFieldComponent, AbstractDateTimeFieldComponent, AbstractDefaultNumberFieldComponent, AbstractEditModeComponent, AbstractEmailSubmissionFormComponent, AbstractEnumerationAutocompleteDynamicFieldComponent, AbstractEnumerationAutocompleteSelectFieldComponent, AbstractEnumerationFieldComponent, AbstractEnumerationIconFieldComponent, AbstractEnumerationListFieldComponent, AbstractEnumerationSelectFieldComponent, AbstractEnumerationStepperFieldComponent, AbstractFieldComponentResolverComponent, AbstractFileDefaultFieldComponent, AbstractFileFieldComponent, AbstractFileListDefaultFieldComponent, AbstractFileListFieldComponent, AbstractFilterDefaultFieldComponent, AbstractFilterFieldComponent, AbstractFilterFieldContentComponent, AbstractFilterFieldTabViewComponent, AbstractFilterFieldTabViewContentComponent, AbstractFilterSelectorComponent, AbstractFilterSelectorListItemComponent, AbstractForgottenPasswordComponent, AbstractFulltextSearchComponent, AbstractGroupNavigationComponentResolverComponent, AbstractHeaderComponent, AbstractHeaderService, AbstractHtmlTextareaFieldComponent, AbstractI18nDividerFieldComponent, AbstractI18nErrorsComponent, AbstractI18nFieldComponent, AbstractI18nTextFieldComponent, AbstractIframeCardComponent, AbstractImmediateFilterTextComponent, AbstractImmediateFilterTextContentComponent, AbstractImportNetComponent, AbstractInternalLinkComponent, AbstractLanguageSelectorComponent, AbstractLdapGroupRoleAssignmentComponent, AbstractLegalNoticeComponent, AbstractLoadFilterComponent, AbstractLoadingModeComponent, AbstractLoggerService, AbstractLoginFormComponent, AbstractLogoutShortcutComponent, AbstractMultiUserAssignComponent, AbstractMultiUserAssignItemComponent, AbstractMultiUserAssignListComponent, AbstractMultichoiceAutocompleteFieldComponentComponent, AbstractMultichoiceFieldComponent, AbstractMultichoiceListFieldComponent, AbstractMultichoiceSelectFieldComponent, AbstractNavigationDoubleDrawerComponent, AbstractNavigationDrawerComponent, AbstractNavigationRailComponent, AbstractNavigationTreeComponent, AbstractNewCaseComponent, AbstractNumberErrorsComponent, AbstractNumberFieldComponent, AbstractOptionSelectorComponent, AbstractPanelComponent, AbstractPanelItemComponent, AbstractPasswordTextFieldComponent, AbstractProfileComponent, AbstractQuickPanelComponent, AbstractRegistrationComponent, AbstractRegistrationFormComponent, AbstractRemoveNodeComponent, AbstractResourceProvider, AbstractResourceService, AbstractRichTextareaFieldComponent, AbstractRoleAssignmentComponent, AbstractSaveFilterComponent, AbstractSearchClauseComponent, AbstractSearchComponent, AbstractSearchConfigurationInputComponent, AbstractSearchModeComponent, AbstractSearchOperandInputComponent, AbstractSearchPredicateComponent, AbstractSessionIdleComponent, AbstractSideMenuContainerComponent, AbstractSimpleTextFieldComponent, AbstractSingleTaskComponent, AbstractSingleTaskViewComponent, AbstractSortModeComponent, AbstractSortableViewComponent, AbstractTabCreationDetectorComponent, AbstractTabViewComponent, AbstractTabbedCaseViewComponent, AbstractTabbedTaskViewComponent, AbstractTaskContentComponent, AbstractTaskListComponent, AbstractTaskListPaginationComponent, AbstractTaskPanelComponent, AbstractTaskRefDashboardFieldComponent, AbstractTaskRefDashboardTileComponent, AbstractTaskRefFieldComponent, AbstractTaskRefListFieldComponent, AbstractTaskViewComponent, AbstractTextErrorsComponent, AbstractTextFieldComponent, AbstractTextareaFieldComponent, AbstractToolbarComponent, AbstractTreeComponent, AbstractTreeTaskContentComponent, AbstractUserAssignComponent, AbstractUserAssignItemComponent, AbstractUserAssignListComponent, AbstractUserCardComponent, AbstractUserDefaultFieldComponent, AbstractUserFieldComponent, AbstractUserImpersonateComponent, AbstractUserInviteComponent, AbstractUserListDefaultFieldComponent, AbstractUserListFieldComponent, AbstractViewWithHeadersComponent, AbstractWorkflowPanelComponent, AbstractWorkflowViewComponent, AccessService, ActiveGroupService, AdvancedSearchComponentInitializationService, AfterAction, AlertDialogComponent, AlertDialogModule, AllowedNetsService, AllowedNetsServiceFactory, AnonymousAuthenticationInterceptor, AnonymousService, AssignPolicy, AssignPolicyService, AssignTaskService, AuthenticationGuardService, AuthenticationInterceptor, AuthenticationMethodService, AuthenticationModule, AuthenticationService, AuthorityGuardService, AutocompleteCategory, BOOLEAN_VALUE_LABEL_ENABLED, BaseAllowedNetsService, BasicAuthenticationService, BooleanField, BooleanFieldValidation, BooleanOperator, ButtonField, ButtonFieldValidation, CONFIRM_PASSWORD, CallChainService, CancelTaskService, CaseAuthor, CaseCreationDate, CaseCreationDateTime, CaseDataset, CaseHeaderService, CaseListFontColorService, CaseMetaField, CaseNetAttributeAutocompleteCategory, CaseProcess, CaseRefField, CaseResourceService, CaseRole, CaseSearch, CaseSimpleDataset, CaseStringId, CaseTask, CaseTitle, CaseTreeNode, CaseTreeService, CaseViewService, CaseVisualId, Categories, Category, CategoryFactory, CategoryResolverService, ChangedFieldsService, ClausePredicate, ComponentPrefixes, ComponentRegistryService, ConfigParams, ConfigurationInput, ConfigurationService, ConfirmDialogComponent, ConfirmDialogModule, ConsoleLogPublisher, ContainsPipe, CovalentModule, CurrencyModule, CustomDateAdapter, DATA_FIELD_PORTAL_DATA, DATE_FORMAT, DATE_FORMAT_STRING, DATE_TIME_FORMAT, DATE_TIME_FORMAT_STRING, DEFAULT, DEFAULT_LANGUAGE_CODE, Dashboard, DashboardCardTypes, DashboardMultiData, DashboardResourceService, DashboardSingleData, DataField, DataFieldsModule, DataFocusPolicy, DataFocusPolicyService, DataGroupAlignment, DatafieldMapKey, DateField, DateTimeField, DefaultSearchCategoriesModule, DelegateTaskService, DialogModule, DialogService, DynamicEnumerationField, DynamicNavigationRouteProviderService, EditableClausePredicate, EditableClausePredicateWithGenerators, EditableElementaryPredicate, EditablePredicate, EditablePredicateWithGenerator, ElementaryPredicate, EnumerationAutocompleteFilterProperty, EnumerationField, EnumerationFieldValidation, Equals, EqualsDate, ErrorSnackBarComponent, EventConstants, EventQueueService, EventService, FieldAlignment, FieldConverterService, FieldTypeResource, FileField, FileListField, FileListFieldValidation, FilePreviewType, FileUploadMIMEType, FileUploadModel, Filter, FilterExtractionService, FilterField, FilterRepository, FilterType, FilteredArray, FinishPolicy, FinishPolicyService, FinishTaskService, GenericSnackBarComponent, GroupGuardService, GroupNavigationComponentResolverService, GroupNavigationConstants, HeaderColumn, HeaderColumnType, HeaderMode, HeaderSearchService, HeaderType, HttpLoaderFactory, I18nField, I18nFieldValidation, ImpersonationService, ImpersonationUserListService, ImpersonationUserResourceService, ImpersonationUserSelectService, InRange, InRangeDate, IncrementingCounter, IsEmptyPipe, IsNonEmptyPipe, IsNull, LanguageIconsService, LanguageService, LdapGroupListService, LdapGroupResourceService, LessThan, LessThanDate, LessThanDateTime, LetContext, LetDirective, Like, LoadingEmitter, LoadingWithFilterEmitter, LocalStorageLogPublisher, LogEntry, LogLevel, LogPublisher, LogPublisherService, LoggerService, MENU_IDENTIFIERS, MaterialAppearance, MaterialModule, MergeOperator, MergedFilter, MockAuthenticationMethodService, MockAuthenticationService, MockEndpoint, MockProfileService, MockSignUpService, MockUserPreferenceService, MockUserResourceService, MockUserService, MoreThan, MoreThanDate, MoreThanDateTime, MultichoiceAutocompleteFilterProperty, MultichoiceField, NAE_ADMIN_IMPERSONATE_COMPONENT, NAE_ADMIN_IMPERSONATE_DIALOG_COMPONENT, NAE_ASYNC_RENDERING_CONFIGURATION, NAE_AUTOSWITCH_TAB_TOKEN, NAE_BASE_FILTER, NAE_CASE_REF_CREATE_CASE, NAE_CASE_REF_SEARCH, NAE_DEFAULT_CASE_SEARCH_CATEGORIES, NAE_DEFAULT_HEADERS, NAE_DEFAULT_MIN_PASSWORD_LENGTH, NAE_DEFAULT_TASK_SEARCH_CATEGORIES, NAE_FILES_UPLOAD_COMPONENT, NAE_FILES_UPLOAD_DIALOG_COMPONENT, NAE_FILTERS_FILTER, NAE_FILTER_FIELD, NAE_FILTER_TEXT, NAE_GROUP_NAVIGATION_COMPONENT_RESOLVER_COMPONENT, NAE_INFORM_ABOUT_INVALID_DATA, NAE_LOAD_FILTER_COMPONENT, NAE_LOAD_FILTER_DIALOG_COMPONENT, NAE_MIN_PASSWORD_LENGTH, NAE_NAVIGATION_ITEM_TASK_DATA, NAE_NET_ALL_VERSIONS, NAE_NET_VERSION_VISIBLE, NAE_NEW_CASE_COMPONENT, NAE_NEW_CASE_CONFIGURATION, NAE_NEW_CASE_CREATION_CONFIGURATION_DATA, NAE_NEW_CASE_DIALOG_COMPONENT, NAE_OPEN_EXISTING_TAB, NAE_OPTION_SELECTOR_COMPONENT, NAE_OPTION_SELECTOR_DIALOG_COMPONENT, NAE_PREFERRED_TASK_ENDPOINT, NAE_ROUTING_CONFIGURATION_PATH, NAE_SAVE_FILTER_COMPONENT, NAE_SAVE_FILTER_DIALOG_COMPONENT, NAE_SEARCH_CATEGORIES, NAE_SEARCH_COMPONENT_CONFIGURATION, NAE_SIDE_MENU_CONTROL, NAE_SNACKBAR_HORIZONTAL_POSITION, NAE_SNACKBAR_VERTICAL_POSITION, NAE_TAB_DATA, NAE_TASK_FORCE_OPEN, NAE_TASK_OPERATIONS, NAE_TASK_PANEL_DISABLE_BUTTON_FUNCTIONS, NAE_TASK_VIEW_CONFIGURATION, NAE_TREE_CASE_VIEW_CONFIGURATION, NAE_URI_NODE_CASES_PAGE_SIZE, NAE_USER_ASSIGN_COMPONENT, NAE_USER_ASSIGN_DIALOG_COMPONENT, NAE_USER_IMPERSONATE_COMPONENT, NAE_USER_IMPERSONATE_DIALOG_COMPONENT, NAE_VIEW_ID, NAE_VIEW_ID_SEGMENT, NAE_WORKFLOW_SERVICE_CONFIRM_DELETE, NAE_WORKFLOW_SERVICE_FILTER, Net, NetAttributeAutocompleteCategory, NextGroupService, NoConfigurationAutocompleteCategory, NoConfigurationCategory, NoConfigurationUserAutocompleteCategory, NotEquals, NotEqualsDate, NotEqualsDateTime, NullAuthenticationService, NullTaskOperations, NumberField, NumberFieldValidation, OLD_PASSWORD, OpenedTab, Operator, OperatorResolverService, OperatorService, OperatorTemplatePart, OperatorTemplatePartType, Operators, OrganizationListService, OverflowService, PASSWORD, PUBLISHERS, PageLoadRequestContext, PaginationParams, PaginationSort, PaperViewService, PermissionService, PermissionType, PetriNetResourceService, Predicate, PredicateWithGenerator, ProcessList, ProcessService, ProfileModule, ProfileService, ProgressType, PromptDialogComponent, PromptDialogModule, PublicCaseResourceService, PublicPetriNetResourceService, PublicProcessService, PublicTaskLoadingService, PublicTaskResourceService, PublicUrlResolverService, Query, QueuedEvent, RedirectService, ResourceProvider, ResultWithAfterActions, RoleAssignmentLdapGroupService, RoleAssignmentService, RoleGuardService, RoutingBuilderService, SETTINGS_TRANSITION_ID, SearchIndex, SearchIndexResolverService, SearchInputType, SearchMode, SearchService, SelectedCaseService, SessionIdleTimerService, SessionService, SideMenuControl, SideMenuRef, SideMenuService, SideMenuSize, SignUpModule, SignUpService, SimpleFilter, SingleTaskContentService, SnackBarComponent, SnackBarHorizontalPosition, SnackBarModule, SnackBarService, SnackBarVerticalPosition, SpinnerOverlayService, Subgrid, SubjectTaskOperations, Substring, SuccessSnackBarComponent, TabLabelStream, TabView, TabbedVirtualScrollComponent, TaskAssignee, TaskConst, TaskContentService, TaskDataService, TaskElementType, TaskEndpoint, TaskEvent, TaskEventService, TaskHandlingService, TaskHeaderService, TaskMetaField, TaskNetAttributeAutocompleteCategory, TaskProcess, TaskRefComponents, TaskRefDashboardConstants, TaskRefDashboardTileConstants, TaskRefField, TaskRequestStateService, TaskResourceService, TaskRole, TaskTask, TaskViewService, TemplateAppearance, TestCaseBaseFilterProvider, TestCaseViewAllowedNetsFactory, TestConfigurationService, TestMockDependenciesModule, TestNoAllowedNetsFactory, TestTaskBaseFilterProvider, TestTaskViewAllowedNetsFactory, TestViewService, TextAreaField, TextAreaHeight, TextField, TextFieldComponent, TextFieldValidation, TextFieldView, TranslateLibModule, TreeCaseViewService, TreePetriflowIdentifiers, TreeTaskContentService, UnlimitedTaskContentService, UriContentType, UriResourceService, UriService, User, UserAutocomplete, UserComparatorService, UserField, UserFilterConstants, UserFiltersService, UserImpersonationConstants, UserInviteService, UserListField, UserListService, UserListValue, UserPreferenceService, UserResourceService, UserService, UserTransformer, UserValue, UtilityModule, ViewIdService, ViewService, WarningSnackBarComponent, WorkflowHeaderService, WorkflowMetaField, WorkflowViewService, WrappedBoolean, arrayToObservable, authenticationServiceFactory, clearTimeInformation, configureCategory, createMockCase, createMockCaseOutcome, createMockDataGroup, createMockDependencies, createMockField, createMockGetDataOutcome, createMockImmediateData, createMockNet, createMockPage, createMockPetriNetOutcome, createMockSetDataOutcome, createMockTask, createMockTaskOutcome, createSortParam, createTaskEventNotification, decodeBase64, defaultCaseSearchCategoriesFactory, defaultTaskSearchCategoriesFactory, destroySubscription, encodeBase64, extractFieldValueFromData, extractFilterFieldFromData, extractFilterFromData, extractFilterFromFilterField, extractIconAndTitle, extractRoles, extractSearchTypeFromData, getField, getFieldFromDataGroups, getFieldIndex, getFieldIndexFromDataGroups, getImmediateData, getNetAndCreateCase, groupNavigationViewIdSegmentFactory, hasContent, loadAllPages, mockUserAutocompleteValue, navigationItemCaseViewDefaultHeadersFactory, navigationItemTaskAllowedNetsServiceFactory, navigationItemTaskCategoryFactory, navigationItemTaskFilterFactory, navigationItemTaskViewDefaultHeadersFactory, ofVoid, processMessageResponse, publicBaseFilterFactory, publicFactoryResolver, refreshTree, tabbedAllowedNetsServiceFactory, tabbedTaskViewConfigurationFactory, toMoment };
|
|
35039
|
+
export { AbstractAddChildNodeComponent, AbstractAdvancedSearchComponent, AbstractAuthenticationOverlayComponent, AbstractBaseDataFieldComponent, AbstractBooleanDefaultFieldComponent, AbstractBooleanFieldComponent, AbstractBreadcrumbsComponent, AbstractButtonDefaultFieldComponent, AbstractButtonFieldComponent, AbstractCaseListComponent, AbstractCaseListPaginatorComponent, AbstractCasePanelComponent, AbstractCaseRefDefaultComponent, AbstractCaseViewComponent, AbstractChangePasswordComponent, AbstractCountCardComponent, AbstractCurrencyNumberFieldComponent, AbstractCustomCardComponent, AbstractDashboardBarChartTextFieldComponent, AbstractDashboardContentComponent, AbstractDashboardIframeTextFieldComponent, AbstractDashboardLineChartTextFieldComponent, AbstractDashboardPieChartTextFieldComponent, AbstractDashboardPortalTextFieldComponent, AbstractDashboardTextFieldComponent, AbstractDataFieldTemplateComponent, AbstractDateDefaultFieldComponent, AbstractDateFieldComponent, AbstractDateTimeDefaultFieldComponent, AbstractDateTimeFieldComponent, AbstractDefaultNumberFieldComponent, AbstractEditModeComponent, AbstractEmailSubmissionFormComponent, AbstractEnumerationAutocompleteDynamicFieldComponent, AbstractEnumerationAutocompleteSelectFieldComponent, AbstractEnumerationFieldComponent, AbstractEnumerationIconFieldComponent, AbstractEnumerationListFieldComponent, AbstractEnumerationSelectFieldComponent, AbstractEnumerationStepperFieldComponent, AbstractFieldComponentResolverComponent, AbstractFileDefaultFieldComponent, AbstractFileFieldComponent, AbstractFileListDefaultFieldComponent, AbstractFileListFieldComponent, AbstractFilterDefaultFieldComponent, AbstractFilterFieldComponent, AbstractFilterFieldContentComponent, AbstractFilterFieldTabViewComponent, AbstractFilterFieldTabViewContentComponent, AbstractFilterSelectorComponent, AbstractFilterSelectorListItemComponent, AbstractForgottenPasswordComponent, AbstractFulltextSearchComponent, AbstractGroupNavigationComponentResolverComponent, AbstractHeaderComponent, AbstractHeaderService, AbstractHtmlTextareaFieldComponent, AbstractI18nDividerFieldComponent, AbstractI18nErrorsComponent, AbstractI18nFieldComponent, AbstractI18nTextFieldComponent, AbstractIframeCardComponent, AbstractImmediateFilterTextComponent, AbstractImmediateFilterTextContentComponent, AbstractImportNetComponent, AbstractInternalLinkComponent, AbstractLanguageSelectorComponent, AbstractLdapGroupRoleAssignmentComponent, AbstractLegalNoticeComponent, AbstractLoadFilterComponent, AbstractLoadingModeComponent, AbstractLoggerService, AbstractLoginFormComponent, AbstractLogoutShortcutComponent, AbstractMultiUserAssignComponent, AbstractMultiUserAssignItemComponent, AbstractMultiUserAssignListComponent, AbstractMultichoiceAutocompleteFieldComponentComponent, AbstractMultichoiceFieldComponent, AbstractMultichoiceListFieldComponent, AbstractMultichoiceSelectFieldComponent, AbstractNavigationDoubleDrawerComponent, AbstractNavigationDrawerComponent, AbstractNavigationRailComponent, AbstractNavigationTreeComponent, AbstractNewCaseComponent, AbstractNumberErrorsComponent, AbstractNumberFieldComponent, AbstractOptionSelectorComponent, AbstractPanelComponent, AbstractPanelItemComponent, AbstractPasswordTextFieldComponent, AbstractProfileComponent, AbstractQuickPanelComponent, AbstractRegistrationComponent, AbstractRegistrationFormComponent, AbstractRemoveNodeComponent, AbstractResourceProvider, AbstractResourceService, AbstractRichTextareaFieldComponent, AbstractRoleAssignmentComponent, AbstractSaveFilterComponent, AbstractSearchClauseComponent, AbstractSearchComponent, AbstractSearchConfigurationInputComponent, AbstractSearchModeComponent, AbstractSearchOperandInputComponent, AbstractSearchPredicateComponent, AbstractSessionIdleComponent, AbstractSideMenuContainerComponent, AbstractSimpleTextFieldComponent, AbstractSingleTaskComponent, AbstractSingleTaskViewComponent, AbstractSortModeComponent, AbstractSortableViewComponent, AbstractTabCreationDetectorComponent, AbstractTabViewComponent, AbstractTabbedCaseViewComponent, AbstractTabbedTaskViewComponent, AbstractTaskContentComponent, AbstractTaskListComponent, AbstractTaskListPaginationComponent, AbstractTaskPanelComponent, AbstractTaskRefDashboardFieldComponent, AbstractTaskRefDashboardTileComponent, AbstractTaskRefFieldComponent, AbstractTaskRefListFieldComponent, AbstractTaskViewComponent, AbstractTextErrorsComponent, AbstractTextFieldComponent, AbstractTextareaFieldComponent, AbstractToolbarComponent, AbstractTreeComponent, AbstractTreeTaskContentComponent, AbstractUserAssignComponent, AbstractUserAssignItemComponent, AbstractUserAssignListComponent, AbstractUserCardComponent, AbstractUserDefaultFieldComponent, AbstractUserFieldComponent, AbstractUserImpersonateComponent, AbstractUserInviteComponent, AbstractUserListDefaultFieldComponent, AbstractUserListFieldComponent, AbstractViewWithHeadersComponent, AbstractWorkflowPanelComponent, AbstractWorkflowViewComponent, AccessService, ActiveGroupService, AdvancedSearchComponentInitializationService, AfterAction, AlertDialogComponent, AlertDialogModule, AllowedNetsService, AllowedNetsServiceFactory, AnonymousAuthenticationInterceptor, AnonymousService, AssignPolicy, AssignPolicyService, AssignTaskService, AuthenticationGuardService, AuthenticationInterceptor, AuthenticationMethodService, AuthenticationModule, AuthenticationService, AuthorityGuardService, AutocompleteCategory, BOOLEAN_VALUE_LABEL_ENABLED, BaseAllowedNetsService, BasicAuthenticationService, BooleanField, BooleanFieldValidation, BooleanOperator, ButtonField, ButtonFieldValidation, CASE_ID, CONFIRM_PASSWORD, CallChainService, CancelTaskService, CaseAuthor, CaseCreationDate, CaseCreationDateTime, CaseDataset, CaseHeaderService, CaseListFontColorService, CaseMetaField, CaseNetAttributeAutocompleteCategory, CaseProcess, CaseRefField, CaseResourceService, CaseRole, CaseSearch, CaseSimpleDataset, CaseStringId, CaseTask, CaseTitle, CaseTreeNode, CaseTreeService, CaseViewService, CaseVisualId, Categories, Category, CategoryFactory, CategoryResolverService, ChangedFieldsService, ClausePredicate, ComponentPrefixes, ComponentRegistryService, ConfigParams, ConfigurationInput, ConfigurationService, ConfirmDialogComponent, ConfirmDialogModule, ConsoleLogPublisher, ContainsPipe, CovalentModule, CurrencyModule, CustomDateAdapter, DATA_FIELD_PORTAL_DATA, DATE_FORMAT, DATE_FORMAT_STRING, DATE_TIME_FORMAT, DATE_TIME_FORMAT_STRING, DEFAULT, DEFAULT_LANGUAGE_CODE, Dashboard, DashboardCardTypes, DashboardMultiData, DashboardResourceService, DashboardSingleData, DataField, DataFieldsModule, DataFocusPolicy, DataFocusPolicyService, DataGroupAlignment, DatafieldMapKey, DateField, DateTimeField, DefaultSearchCategoriesModule, DelegateTaskService, DialogModule, DialogService, DynamicEnumerationField, DynamicNavigationRouteProviderService, EditableClausePredicate, EditableClausePredicateWithGenerators, EditableElementaryPredicate, EditablePredicate, EditablePredicateWithGenerator, ElementaryPredicate, EnumerationAutocompleteFilterProperty, EnumerationField, EnumerationFieldValidation, Equals, EqualsDate, ErrorSnackBarComponent, EventConstants, EventQueueService, EventService, FieldAlignment, FieldConverterService, FieldTypeResource, FileField, FileListField, FileListFieldValidation, FilePreviewType, FileUploadMIMEType, FileUploadModel, Filter, FilterExtractionService, FilterField, FilterRepository, FilterType, FilteredArray, FinishPolicy, FinishPolicyService, FinishTaskService, FrontActionModule, FrontActionRegistryService, FrontActionService, GenericSnackBarComponent, GroupGuardService, GroupNavigationComponentResolverService, GroupNavigationConstants, HeaderColumn, HeaderColumnType, HeaderMode, HeaderSearchService, HeaderType, HttpLoaderFactory, I18nField, I18nFieldValidation, ImpersonationService, ImpersonationUserListService, ImpersonationUserResourceService, ImpersonationUserSelectService, InRange, InRangeDate, IncrementingCounter, IsEmptyPipe, IsNonEmptyPipe, IsNull, LanguageIconsService, LanguageService, LdapGroupListService, LdapGroupResourceService, LessThan, LessThanDate, LessThanDateTime, LetContext, LetDirective, Like, LoadingEmitter, LoadingWithFilterEmitter, LocalStorageLogPublisher, LogEntry, LogLevel, LogPublisher, LogPublisherService, LoggerService, MENU_IDENTIFIERS, MaterialAppearance, MaterialModule, MergeOperator, MergedFilter, MockAuthenticationMethodService, MockAuthenticationService, MockEndpoint, MockProfileService, MockSignUpService, MockUserPreferenceService, MockUserResourceService, MockUserService, MoreThan, MoreThanDate, MoreThanDateTime, MultichoiceAutocompleteFilterProperty, MultichoiceField, NAE_ADMIN_IMPERSONATE_COMPONENT, NAE_ADMIN_IMPERSONATE_DIALOG_COMPONENT, NAE_ASYNC_RENDERING_CONFIGURATION, NAE_AUTOSWITCH_TAB_TOKEN, NAE_BASE_FILTER, NAE_CASE_REF_CREATE_CASE, NAE_CASE_REF_SEARCH, NAE_DEFAULT_CASE_SEARCH_CATEGORIES, NAE_DEFAULT_HEADERS, NAE_DEFAULT_MIN_PASSWORD_LENGTH, NAE_DEFAULT_TASK_SEARCH_CATEGORIES, NAE_FILES_UPLOAD_COMPONENT, NAE_FILES_UPLOAD_DIALOG_COMPONENT, NAE_FILTERS_FILTER, NAE_FILTER_FIELD, NAE_FILTER_TEXT, NAE_GROUP_NAVIGATION_COMPONENT_RESOLVER_COMPONENT, NAE_INFORM_ABOUT_INVALID_DATA, NAE_LOAD_FILTER_COMPONENT, NAE_LOAD_FILTER_DIALOG_COMPONENT, NAE_MIN_PASSWORD_LENGTH, NAE_NAVIGATION_ITEM_TASK_DATA, NAE_NET_ALL_VERSIONS, NAE_NET_VERSION_VISIBLE, NAE_NEW_CASE_COMPONENT, NAE_NEW_CASE_CONFIGURATION, NAE_NEW_CASE_CREATION_CONFIGURATION_DATA, NAE_NEW_CASE_DIALOG_COMPONENT, NAE_OPEN_EXISTING_TAB, NAE_OPTION_SELECTOR_COMPONENT, NAE_OPTION_SELECTOR_DIALOG_COMPONENT, NAE_PREFERRED_TASK_ENDPOINT, NAE_ROUTING_CONFIGURATION_PATH, NAE_SAVE_FILTER_COMPONENT, NAE_SAVE_FILTER_DIALOG_COMPONENT, NAE_SEARCH_CATEGORIES, NAE_SEARCH_COMPONENT_CONFIGURATION, NAE_SIDE_MENU_CONTROL, NAE_SNACKBAR_HORIZONTAL_POSITION, NAE_SNACKBAR_VERTICAL_POSITION, NAE_TAB_DATA, NAE_TASK_FORCE_OPEN, NAE_TASK_OPERATIONS, NAE_TASK_PANEL_DISABLE_BUTTON_FUNCTIONS, NAE_TASK_VIEW_COMPONENT, NAE_TASK_VIEW_CONFIGURATION, NAE_TREE_CASE_VIEW_CONFIGURATION, NAE_URI_NODE_CASES_PAGE_SIZE, NAE_USER_ASSIGN_COMPONENT, NAE_USER_ASSIGN_DIALOG_COMPONENT, NAE_USER_IMPERSONATE_COMPONENT, NAE_USER_IMPERSONATE_DIALOG_COMPONENT, NAE_VIEW_ID, NAE_VIEW_ID_SEGMENT, NAE_WORKFLOW_SERVICE_CONFIRM_DELETE, NAE_WORKFLOW_SERVICE_FILTER, Net, NetAttributeAutocompleteCategory, NextGroupService, NoConfigurationAutocompleteCategory, NoConfigurationCategory, NoConfigurationUserAutocompleteCategory, NotEquals, NotEqualsDate, NotEqualsDateTime, NullAuthenticationService, NullTaskOperations, NumberField, NumberFieldValidation, OLD_PASSWORD, OpenedTab, Operator, OperatorResolverService, OperatorService, OperatorTemplatePart, OperatorTemplatePartType, Operators, OrganizationListService, OverflowService, PASSWORD, PETRI_NET_ID, PUBLISHERS, PageLoadRequestContext, PaginationParams, PaginationSort, PaperViewService, PermissionService, PermissionType, PetriNetResourceService, Predicate, PredicateWithGenerator, ProcessList, ProcessService, ProfileModule, ProfileService, ProgressType, PromptDialogComponent, PromptDialogModule, PublicCaseResourceService, PublicPetriNetResourceService, PublicProcessService, PublicTaskLoadingService, PublicTaskResourceService, PublicUrlResolverService, Query, QueuedEvent, RedirectService, ResourceProvider, ResultWithAfterActions, RoleAssignmentLdapGroupService, RoleAssignmentService, RoleGuardService, RoutingBuilderService, SETTINGS_TRANSITION_ID, SearchIndex, SearchIndexResolverService, SearchInputType, SearchMode, SearchService, SelectedCaseService, SessionIdleTimerService, SessionService, SideMenuControl, SideMenuRef, SideMenuService, SideMenuSize, SignUpModule, SignUpService, SimpleFilter, SingleTaskContentService, SnackBarComponent, SnackBarHorizontalPosition, SnackBarModule, SnackBarService, SnackBarVerticalPosition, SpinnerOverlayService, Subgrid, SubjectTaskOperations, Substring, SuccessSnackBarComponent, TRANSITION_ID, TabLabelStream, TabView, TabbedVirtualScrollComponent, TaskAssignee, TaskConst, TaskContentService, TaskDataService, TaskElementType, TaskEndpoint, TaskEvent, TaskEventService, TaskHandlingService, TaskHeaderService, TaskMetaField, TaskNetAttributeAutocompleteCategory, TaskProcess, TaskRefComponents, TaskRefDashboardConstants, TaskRefDashboardTileConstants, TaskRefField, TaskRequestStateService, TaskResourceService, TaskRole, TaskTask, TaskViewService, TemplateAppearance, TestCaseBaseFilterProvider, TestCaseViewAllowedNetsFactory, TestConfigurationService, TestMockDependenciesModule, TestNoAllowedNetsFactory, TestTaskBaseFilterProvider, TestTaskViewAllowedNetsFactory, TestViewService, TextAreaField, TextAreaHeight, TextField, TextFieldComponent, TextFieldValidation, TextFieldView, TranslateLibModule, TreeCaseViewService, TreePetriflowIdentifiers, TreeTaskContentService, UnlimitedTaskContentService, UriContentType, UriResourceService, UriService, User, UserAutocomplete, UserComparatorService, UserField, UserFilterConstants, UserFiltersService, UserImpersonationConstants, UserInviteService, UserListField, UserListService, UserListValue, UserPreferenceService, UserResourceService, UserService, UserTransformer, UserValue, UtilityModule, ViewIdService, ViewService, WarningSnackBarComponent, WorkflowHeaderService, WorkflowMetaField, WorkflowViewService, WrappedBoolean, arrayToObservable, authenticationServiceFactory, clearTimeInformation, configureCategory, createMockCase, createMockCaseOutcome, createMockDataGroup, createMockDependencies, createMockField, createMockGetDataOutcome, createMockImmediateData, createMockNet, createMockPage, createMockPetriNetOutcome, createMockSetDataOutcome, createMockTask, createMockTaskOutcome, createSortParam, createTaskEventNotification, decodeBase64, defaultCaseSearchCategoriesFactory, defaultTaskSearchCategoriesFactory, destroySubscription, encodeBase64, extractFieldValueFromData, extractFilterFieldFromData, extractFilterFromData, extractFilterFromFilterField, extractIconAndTitle, extractRoles, extractSearchTypeFromData, getField, getFieldFromDataGroups, getFieldIndex, getFieldIndexFromDataGroups, getImmediateData, getNetAndCreateCase, groupNavigationViewIdSegmentFactory, hasContent, loadAllPages, mockUserAutocompleteValue, navigationItemCaseViewDefaultHeadersFactory, navigationItemTaskAllowedNetsServiceFactory, navigationItemTaskCategoryFactory, navigationItemTaskFilterFactory, navigationItemTaskViewDefaultHeadersFactory, ofVoid, processMessageResponse, publicBaseFilterFactory, publicFactoryResolver, redirectAction, refreshTree, reloadTaskAction, tabbedAllowedNetsServiceFactory, tabbedTaskViewConfigurationFactory, toMoment, validateTaskAction };
|
|
34882
35040
|
//# sourceMappingURL=netgrif-components-core.mjs.map
|