mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-24 17:32:15 +00:00
[ACA-3687] Implement Process definition name filter dropdown in Process List (#5870)
* [ACA-3687] Implement Process definition name filtr * Updated docs * Updated mock
This commit is contained in:
@@ -15,6 +15,7 @@
|
||||
[appName]="editedFilter.appName"
|
||||
[initiator]="editedFilter.initiator"
|
||||
[processDefinitionId]="editedFilter.processDefinitionId"
|
||||
[processDefinitionName]="editedFilter.processDefinitionName"
|
||||
[processDefinitionKey]="editedFilter.processDefinitionKey"
|
||||
[id]="editedFilter.processInstanceId"
|
||||
[status]="editedFilter.status"
|
||||
|
@@ -63,6 +63,7 @@ when the process list is empty:
|
||||
| presetColumn | `string` | | Custom preset column schema in JSON format. |
|
||||
| processDefinitionId | `string` | "" | Filter the processes to display only the ones with this process definition ID. |
|
||||
| processDefinitionKey | `string` | "" | Filter the processes to display only the ones with this process definition key. |
|
||||
| processDefinitionName | `string` | "" | Filter the processes to display only the ones with this process definition name. |
|
||||
| selectionMode | `string` | "single" | Row selection mode. Can be "none", "single" or "multiple". For multiple mode, you can use Cmd (macOS) or Ctrl (Win) modifier key to toggle selection for multiple rows. |
|
||||
| showActions | `boolean` | false | Toggles the data actions column. |
|
||||
| showContextMenu | `boolean` | false | Toggles custom context menu for the component. |
|
||||
|
@@ -51,7 +51,7 @@ Starts a process.
|
||||
| cancel | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ProcessInstanceCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-instance-cloud.model.ts)`>` | Emitted when the starting process is cancelled |
|
||||
| error | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ProcessInstanceCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-instance-cloud.model.ts)`>` | Emitted when an error occurs. |
|
||||
| formContentClicked | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ContentLinkModel`](../../../lib/core/form/components/widgets/core/content-link.model.ts)`>` | Emitted when form content is clicked. |
|
||||
| processDefinitionSelection | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ProcessDefinitionCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-definition-cloud.model.ts)`>` | Emitted when process definition selection changes. |
|
||||
| processDefinitionSelection | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ProcessDefinitionCloud`](../../../lib/process-services-cloud/src/lib/models/process-definition-cloud.model.ts)`>` | Emitted when process definition selection changes. |
|
||||
| success | [`EventEmitter`](https://angular.io/api/core/EventEmitter)`<`[`ProcessInstanceCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-instance-cloud.model.ts)`>` | Emitted when the process is successfully started. |
|
||||
|
||||
## Details
|
||||
|
@@ -18,7 +18,7 @@ processNameCloudPipe.transform('Example - %{processDefinition} - %{datetime}', n
|
||||
| Name | Type | Default value | Description |
|
||||
| ---- | ---- | ------------- | ----------- |
|
||||
| processNameFormat | string | undefined | The process name format including the preferred identifiers to be used |
|
||||
| selectedProcessDefinition | [`ProcessDefinitionCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-definition-cloud.model.ts) | undefined | (optional) The selected process definition |
|
||||
| selectedProcessDefinition | [`ProcessDefinitionCloud`](../../../lib/process-services-cloud/src/lib/models/process-definition-cloud.model.ts) | undefined | (optional) The selected process definition |
|
||||
|
||||
## Details
|
||||
|
||||
|
@@ -23,6 +23,10 @@ Manages cloud process instances.
|
||||
- _appName:_ `string` -
|
||||
- **Returns** `string` -
|
||||
|
||||
- **getProcessDefinitions**(appName: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`ProcessDefinitionCloud`](../../../lib/process-services-cloud/src/lib/models/process-definition-cloud.model.ts)`[]>`<br/>
|
||||
Gets the process definitions associated with an app.
|
||||
- _appName:_ `string` - Name of the target app
|
||||
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`ProcessDefinitionCloud`](../../../lib/process-services-cloud/src/lib/models/process-definition-cloud.model.ts)`[]>` - Array of process definitions
|
||||
- **getProcessInstanceById**(appName: `string`, processInstanceId: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`ProcessInstanceCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-instance-cloud.model.ts)`>`<br/>
|
||||
Gets details of a process instance.
|
||||
- _appName:_ `string` - Name of the app
|
||||
|
@@ -28,10 +28,10 @@ Gets process definitions and starts processes.
|
||||
- _appName:_ `string` -
|
||||
- **Returns** `string` -
|
||||
|
||||
- **getProcessDefinitions**(appName: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`ProcessDefinitionCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-definition-cloud.model.ts)`[]>`<br/>
|
||||
- **getProcessDefinitions**(appName: `string`): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`ProcessDefinitionCloud`](../../../lib/process-services-cloud/src/lib/models/process-definition-cloud.model.ts)`[]>`<br/>
|
||||
Gets the process definitions associated with an app.
|
||||
- _appName:_ `string` - Name of the target app
|
||||
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`ProcessDefinitionCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-definition-cloud.model.ts)`[]>` - Array of process definitions
|
||||
- **Returns** [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`ProcessDefinitionCloud`](../../../lib/process-services-cloud/src/lib/models/process-definition-cloud.model.ts)`[]>` - Array of process definitions
|
||||
- **startCreatedProcess**(appName: `string`, createdProcessInstanceId: `string`, payload: [`ProcessPayloadCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-payload-cloud.model.ts)): [`Observable`](http://reactivex.io/documentation/observable.html)`<`[`ProcessInstanceCloud`](../../../lib/process-services-cloud/src/lib/process/start-process/models/process-instance-cloud.model.ts)`>`<br/>
|
||||
Starts an already created process using the process instance id.
|
||||
- _appName:_ `string` -
|
||||
|
@@ -17,6 +17,7 @@
|
||||
"DESCRIPTION": "Description",
|
||||
"LAST_MODIFIED": "Last Modified",
|
||||
"PROCESS_NAME": "Process Name",
|
||||
"PROCESS_DEFINITION_NAME": "Process Definition Name",
|
||||
"PARENT_TASK_ID": "Parent Task Id",
|
||||
"PROCESS_DEF_ID": "Process Definition Id",
|
||||
"PROCESS_DEF_KEY": "Process Definition Key",
|
||||
@@ -158,6 +159,7 @@
|
||||
"SORT": "Sort",
|
||||
"DIRECTION": "Direction",
|
||||
"PROCESS_DEF_ID": "ProcessDefinitionId",
|
||||
"PROCESS_DEF_NAME": "ProcessDefinitionName",
|
||||
"PROCESS_DEF_KEY": "ProcessDefinitionKey",
|
||||
"LAST_MODIFIED": "LastModified",
|
||||
"LAST_MODIFIED_DATE_FORM": "LastModifiedFrom",
|
||||
|
@@ -35,6 +35,7 @@ import { AbstractControl } from '@angular/forms';
|
||||
import { PROCESS_FILTERS_SERVICE_TOKEN } from '../../../services/cloud-token.service';
|
||||
import { LocalPreferenceCloudService } from '../../../services/local-preference-cloud.service';
|
||||
import { TranslateModule } from '@ngx-translate/core';
|
||||
import { ProcessCloudService } from '../../services/process-cloud.service';
|
||||
|
||||
describe('EditProcessFilterCloudComponent', () => {
|
||||
let component: EditProcessFilterCloudComponent;
|
||||
@@ -42,6 +43,7 @@ describe('EditProcessFilterCloudComponent', () => {
|
||||
let fixture: ComponentFixture<EditProcessFilterCloudComponent>;
|
||||
let dialog: MatDialog;
|
||||
let appsService: AppsProcessCloudService;
|
||||
let processService: ProcessCloudService;
|
||||
let getRunningApplicationsSpy: jasmine.Spy;
|
||||
let getProcessFilterByIdSpy: jasmine.Spy;
|
||||
|
||||
@@ -74,6 +76,7 @@ describe('EditProcessFilterCloudComponent', () => {
|
||||
component = fixture.componentInstance;
|
||||
service = TestBed.inject(ProcessFilterCloudService);
|
||||
appsService = TestBed.inject(AppsProcessCloudService);
|
||||
processService = TestBed.inject(ProcessCloudService);
|
||||
dialog = TestBed.inject(MatDialog);
|
||||
spyOn(dialog, 'open').and.returnValue({
|
||||
afterClosed() {
|
||||
@@ -414,6 +417,22 @@ describe('EditProcessFilterCloudComponent', () => {
|
||||
});
|
||||
}));
|
||||
|
||||
it('should fetch process definitions when processDefinitionName filter property is set', async(() => {
|
||||
const processSpy = spyOn(processService, 'getProcessDefinitions').and.returnValue(of([{ id: 'fake-id', name: 'fake-name' }]));
|
||||
fixture.detectChanges();
|
||||
component.filterProperties = ['processDefinitionName'];
|
||||
fixture.detectChanges();
|
||||
const processFilterIdChange = new SimpleChange(null, 'mock-process-filter-id', true);
|
||||
component.ngOnChanges({ 'id': processFilterIdChange });
|
||||
fixture.detectChanges();
|
||||
const controller = component.editProcessFilterForm.get('processDefinitionName');
|
||||
fixture.detectChanges();
|
||||
fixture.whenStable().then(() => {
|
||||
expect(processSpy).toHaveBeenCalled();
|
||||
expect(controller).toBeDefined();
|
||||
});
|
||||
}));
|
||||
|
||||
it('should display default sort properties', async(() => {
|
||||
const processFilterIdChange = new SimpleChange(null, 'mock-process-filter-id', true);
|
||||
component.ngOnChanges({ 'id': processFilterIdChange });
|
||||
|
@@ -30,6 +30,8 @@ import { TranslationService, UserPreferencesService, UserPreferenceValues } from
|
||||
import { ProcessFilterCloudService } from '../services/process-filter-cloud.service';
|
||||
import { ProcessFilterDialogCloudComponent } from './process-filter-dialog-cloud.component';
|
||||
import { ApplicationInstanceModel } from '../../../app/models/application-instance.model';
|
||||
import { ProcessCloudService } from '../../services/process-cloud.service';
|
||||
import { ProcessDefinitionCloud } from '../../../models/process-definition-cloud.model';
|
||||
|
||||
@Component({
|
||||
selector: 'adf-cloud-edit-process-filter',
|
||||
@@ -42,6 +44,7 @@ export class EditProcessFilterCloudComponent implements OnInit, OnChanges, OnDes
|
||||
public static ACTION_SAVE_AS = 'saveAs';
|
||||
public static ACTION_DELETE = 'delete';
|
||||
public static APPLICATION_NAME: string = 'appName';
|
||||
public static PROCESS_DEFINITION_NAME: string = 'processDefinitionName';
|
||||
public static APP_RUNNING_STATUS: string = 'RUNNING';
|
||||
public static LAST_MODIFIED: string = 'lastModified';
|
||||
public static SORT: string = 'sort';
|
||||
@@ -108,6 +111,7 @@ export class EditProcessFilterCloudComponent implements OnInit, OnChanges, OnDes
|
||||
EditProcessFilterCloudComponent.ACTION_DELETE
|
||||
];
|
||||
applicationNames: any[] = [];
|
||||
processDefinitionNames: any[] = [];
|
||||
formHasBeenChanged = false;
|
||||
editProcessFilterForm: FormGroup;
|
||||
processFilterProperties: ProcessFilterProperties[] = [];
|
||||
@@ -124,7 +128,8 @@ export class EditProcessFilterCloudComponent implements OnInit, OnChanges, OnDes
|
||||
private userPreferencesService: UserPreferencesService,
|
||||
private translateService: TranslationService,
|
||||
private processFilterCloudService: ProcessFilterCloudService,
|
||||
private appsProcessCloudService: AppsProcessCloudService) {
|
||||
private appsProcessCloudService: AppsProcessCloudService,
|
||||
private processCloudService: ProcessCloudService) {
|
||||
}
|
||||
|
||||
ngOnInit() {
|
||||
@@ -198,10 +203,14 @@ export class EditProcessFilterCloudComponent implements OnInit, OnChanges, OnDes
|
||||
|
||||
createAndFilterProperties(): ProcessFilterProperties[] {
|
||||
this.checkMandatoryFilterProperties();
|
||||
if (this.checkForApplicationNameProperty()) {
|
||||
if (this.checkForProperty(EditProcessFilterCloudComponent.APPLICATION_NAME)) {
|
||||
this.applicationNames = [];
|
||||
this.getRunningApplications();
|
||||
}
|
||||
if (this.checkForProperty(EditProcessFilterCloudComponent.PROCESS_DEFINITION_NAME)) {
|
||||
this.processDefinitionNames = [];
|
||||
this.getProcessDefinitions();
|
||||
}
|
||||
const defaultProperties = this.createProcessFilterProperties(this.processFilter);
|
||||
let filteredProperties = defaultProperties.filter((filterProperty: ProcessFilterProperties) => this.isValidProperty(this.filterProperties, filterProperty));
|
||||
if (!this.hasSortProperty()) {
|
||||
@@ -219,8 +228,8 @@ export class EditProcessFilterCloudComponent implements OnInit, OnChanges, OnDes
|
||||
}
|
||||
}
|
||||
|
||||
checkForApplicationNameProperty(): boolean {
|
||||
return this.filterProperties ? this.filterProperties.indexOf(EditProcessFilterCloudComponent.APPLICATION_NAME) >= 0 : false;
|
||||
checkForProperty(property: string): boolean {
|
||||
return this.filterProperties ? this.filterProperties.indexOf(property) >= 0 : false;
|
||||
}
|
||||
|
||||
private isValidProperty(filterProperties: string[], filterProperty: ProcessFilterProperties): boolean {
|
||||
@@ -316,6 +325,18 @@ export class EditProcessFilterCloudComponent implements OnInit, OnChanges, OnDes
|
||||
});
|
||||
}
|
||||
|
||||
getProcessDefinitions() {
|
||||
this.processCloudService.getProcessDefinitions(this.appName)
|
||||
.pipe(takeUntil(this.onDestroy$))
|
||||
.subscribe((processDefinitions: ProcessDefinitionCloud[]) => {
|
||||
if (processDefinitions && processDefinitions.length > 0) {
|
||||
processDefinitions.map((processDefinition) => {
|
||||
this.processDefinitionNames.push({ label: processDefinition.name, value: processDefinition.name });
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
executeFilterActions(action: ProcessFilterAction): void {
|
||||
if (action.actionType === EditProcessFilterCloudComponent.ACTION_SAVE) {
|
||||
this.save(action);
|
||||
@@ -538,6 +559,13 @@ export class EditProcessFilterCloudComponent implements OnInit, OnChanges, OnDes
|
||||
key: 'processName',
|
||||
value: currentProcessFilter.processName || ''
|
||||
}),
|
||||
new ProcessFilterProperties({
|
||||
label: 'ADF_CLOUD_EDIT_PROCESS_FILTER.LABEL.PROCESS_DEF_NAME',
|
||||
type: 'select',
|
||||
key: 'processDefinitionName',
|
||||
value: currentProcessFilter.processDefinitionName || '',
|
||||
options: this.processDefinitionNames
|
||||
}),
|
||||
new ProcessFilterProperties({
|
||||
label: 'ADF_CLOUD_EDIT_PROCESS_FILTER.LABEL.INITIATOR',
|
||||
type: 'text',
|
||||
|
@@ -30,6 +30,7 @@ export class ProcessFilterCloudModel {
|
||||
sort: string;
|
||||
order: string;
|
||||
processDefinitionId: string;
|
||||
processDefinitionName: string;
|
||||
processDefinitionKey: string;
|
||||
lastModified: Date;
|
||||
lastModifiedTo: Date;
|
||||
@@ -51,6 +52,7 @@ export class ProcessFilterCloudModel {
|
||||
this.sort = obj.sort || null;
|
||||
this.order = obj.order || null;
|
||||
this.processDefinitionId = obj.processDefinitionId || null;
|
||||
this.processDefinitionName = obj.processDefinitionName || null;
|
||||
this.processDefinitionKey = obj.processDefinitionKey || null;
|
||||
this.lastModified = obj.lastModified || null;
|
||||
this.lastModifiedTo = obj.lastModifiedTo || null;
|
||||
|
@@ -51,6 +51,7 @@ describe('ProcessFilterCloudService', () => {
|
||||
order: 'DESC',
|
||||
index: 2,
|
||||
processName: 'process-name',
|
||||
processDefinitionName: 'process-def-name',
|
||||
processInstanceId: 'processinstanceid',
|
||||
initiator: 'mockuser',
|
||||
processDefinitionId: 'processDefid',
|
||||
|
@@ -67,6 +67,10 @@ export class ProcessListCloudComponent extends DataTableSchema implements OnChan
|
||||
@Input()
|
||||
processDefinitionId: string = '';
|
||||
|
||||
/** Filter the processes to display only the ones with this process definition name. */
|
||||
@Input()
|
||||
processDefinitionName: string = '';
|
||||
|
||||
/** Filter the processes to display only the ones with this process definition key. */
|
||||
@Input()
|
||||
processDefinitionKey: string = '';
|
||||
@@ -291,6 +295,7 @@ export class ProcessListCloudComponent extends DataTableSchema implements OnChan
|
||||
id: this.id,
|
||||
name: this.name,
|
||||
processDefinitionId: this.processDefinitionId,
|
||||
processDefinitionName: this.processDefinitionName,
|
||||
processDefinitionKey: this.processDefinitionKey,
|
||||
status: this.status,
|
||||
businessKey: this.businessKey,
|
||||
|
@@ -24,6 +24,7 @@ export class ProcessQueryCloudRequestModel {
|
||||
id?: string;
|
||||
name?: string;
|
||||
processDefinitionId?: string;
|
||||
processDefinitionName?: string;
|
||||
processDefinitionKey?: string;
|
||||
status?: string;
|
||||
startDate?: string;
|
||||
@@ -42,6 +43,7 @@ export class ProcessQueryCloudRequestModel {
|
||||
this.id = obj.id;
|
||||
this.name = obj.name;
|
||||
this.processDefinitionId = obj.processDefinitionId;
|
||||
this.processDefinitionName = obj.processDefinitionName;
|
||||
this.processDefinitionKey = obj.processDefinitionKey;
|
||||
this.status = obj.status;
|
||||
this.startDate = obj.startDate;
|
||||
|
@@ -21,6 +21,7 @@ import { Observable, Subject, throwError } from 'rxjs';
|
||||
import { map } from 'rxjs/operators';
|
||||
import { ProcessInstanceCloud } from '../start-process/models/process-instance-cloud.model';
|
||||
import { BaseCloudService } from '../../services/base-cloud.service';
|
||||
import { ProcessDefinitionCloud } from '../../models/process-definition-cloud.model';
|
||||
|
||||
@Injectable({
|
||||
providedIn: 'root'
|
||||
@@ -57,6 +58,26 @@ export class ProcessCloudService extends BaseCloudService {
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Gets the process definitions associated with an app.
|
||||
* @param appName Name of the target app
|
||||
* @returns Array of process definitions
|
||||
*/
|
||||
getProcessDefinitions(appName: string): Observable<ProcessDefinitionCloud[]> {
|
||||
if (appName || appName === '') {
|
||||
const url = `${this.getBasePath(appName)}/rb/v1/process-definitions`;
|
||||
|
||||
return this.get(url).pipe(
|
||||
map((res: any) => {
|
||||
return res.list.entries.map((processDefs) => new ProcessDefinitionCloud(processDefs.entry));
|
||||
})
|
||||
);
|
||||
} else {
|
||||
this.logService.error('AppName is mandatory for querying task');
|
||||
return throwError('AppName not configured');
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Cancels a process.
|
||||
* @param appName Name of the app
|
||||
|
@@ -27,7 +27,7 @@ import { FormModel, ContentLinkModel } from '@alfresco/adf-core';
|
||||
import { MatAutocompleteTrigger } from '@angular/material/autocomplete';
|
||||
import { ProcessPayloadCloud } from '../models/process-payload-cloud.model';
|
||||
import { debounceTime, takeUntil, switchMap, filter, distinctUntilChanged, tap } from 'rxjs/operators';
|
||||
import { ProcessDefinitionCloud } from '../models/process-definition-cloud.model';
|
||||
import { ProcessDefinitionCloud } from '../../../models/process-definition-cloud.model';
|
||||
import { Subject, Observable } from 'rxjs';
|
||||
import { TaskVariableCloud } from '../../../form/models/task-variable-cloud.model';
|
||||
import { ProcessNameCloudPipe } from '../../../pipes/process-name-cloud.pipe';
|
||||
|
@@ -17,7 +17,7 @@
|
||||
|
||||
import { ProcessInstanceCloud } from '../models/process-instance-cloud.model';
|
||||
import { ProcessPayloadCloud } from '../models/process-payload-cloud.model';
|
||||
import { ProcessDefinitionCloud } from '../models/process-definition-cloud.model';
|
||||
import { ProcessDefinitionCloud } from '../../../models/process-definition-cloud.model';
|
||||
|
||||
export const fakeProcessInstance: ProcessInstanceCloud = {
|
||||
appName: 'simple-app',
|
||||
|
@@ -17,7 +17,6 @@
|
||||
|
||||
export * from './components/start-process-cloud.component';
|
||||
|
||||
export * from './models/process-definition-cloud.model';
|
||||
export * from './models/process-instance-cloud.model';
|
||||
export * from './models/process-payload-cloud.model';
|
||||
|
||||
|
@@ -20,8 +20,8 @@ import { of, throwError } from 'rxjs';
|
||||
import { setupTestBed, AlfrescoApiService } from '@alfresco/adf-core';
|
||||
import { StartProcessCloudService } from './start-process-cloud.service';
|
||||
import { fakeProcessPayload } from '../mock/start-process.component.mock';
|
||||
import { ProcessDefinitionCloud } from '../../../models/process-definition-cloud.model';
|
||||
import { HttpErrorResponse, HttpClientModule } from '@angular/common/http';
|
||||
import { ProcessDefinitionCloud } from '../models/process-definition-cloud.model';
|
||||
|
||||
describe('StartProcessCloudService', () => {
|
||||
|
||||
|
@@ -21,7 +21,7 @@ import { Observable, throwError } from 'rxjs';
|
||||
import { map } from 'rxjs/operators';
|
||||
import { ProcessInstanceCloud } from '../models/process-instance-cloud.model';
|
||||
import { ProcessPayloadCloud } from '../models/process-payload-cloud.model';
|
||||
import { ProcessDefinitionCloud } from '../models/process-definition-cloud.model';
|
||||
import { ProcessDefinitionCloud } from '../../../models/process-definition-cloud.model';
|
||||
import { BaseCloudService } from '../../../services/base-cloud.service';
|
||||
|
||||
@Injectable({
|
||||
|
@@ -26,3 +26,4 @@ export * from './lib/services/public-api';
|
||||
export * from './lib/types';
|
||||
export * from './lib/pipes/process-name-cloud.pipe';
|
||||
export * from './lib/pipes/process-services-cloud-pipe.module';
|
||||
export * from './lib/models/process-definition-cloud.model';
|
||||
|
@@ -8,7 +8,7 @@ var jsyaml = require("js-yaml");
|
||||
var remark = require("remark");
|
||||
var frontMatter = require("remark-frontmatter");
|
||||
var mdCompact = require("mdast-util-compact");
|
||||
var minimatch = require("Minimatch");
|
||||
var minimatch = require("minimatch");
|
||||
|
||||
var si = require("./sourceInfoClasses");
|
||||
|
||||
|
Reference in New Issue
Block a user