-
-
-
-

-
-
- {{ $t('Currently you dont have processes created') }}
-
-
- {{ $t('We encourage you to create new processes using our templates') }}
-
-
+
+
+
+
+ {{ $t('Processes Browser') }}
+
+
+ -
-
+
+
+
+
+
+
-
-
-
+
+
+
+
-
diff --git a/resources/js/processes-catalogue/components/WizardTemplates.vue b/resources/js/processes-catalogue/components/WizardTemplates.vue
index 2f608956c7..49e770f647 100644
--- a/resources/js/processes-catalogue/components/WizardTemplates.vue
+++ b/resources/js/processes-catalogue/components/WizardTemplates.vue
@@ -1,32 +1,31 @@
-
-
-
+
+
+
-
diff --git a/resources/js/processes-catalogue/components/menuCatologue.vue b/resources/js/processes-catalogue/components/menuCatologue.vue
new file mode 100644
index 0000000000..0c64f2b07e
--- /dev/null
+++ b/resources/js/processes-catalogue/components/menuCatologue.vue
@@ -0,0 +1,101 @@
+
+
+
+
+
+ {{ $t(title) }}
+
+
+
+
+
+
+ {{ item.name }}
+
+
+
+
+
+
+
+
+
diff --git a/resources/lang/en.json b/resources/lang/en.json
index b7e37e07ca..a486d70504 100644
--- a/resources/lang/en.json
+++ b/resources/lang/en.json
@@ -1133,6 +1133,7 @@
"Provide Values": "Provide Values",
"Provider": "Provider",
"Publish Template": "Publish Template",
+ "Open in Modeler": "Open in Modeler",
"Queue Management": "Queue Management",
"QueueManagementAccessed": "Queue Management Accessed",
"Radio Button Group": "Radio Button Group",
diff --git a/resources/views/processes-catalogue/open.blade.php b/resources/views/processes-catalogue/open.blade.php
index 4532aea778..60a9719888 100644
--- a/resources/views/processes-catalogue/open.blade.php
+++ b/resources/views/processes-catalogue/open.blade.php
@@ -10,7 +10,14 @@
@section('content')
@endsection
diff --git a/routes/web.php b/routes/web.php
index 9bdc56853a..bef3b8382f 100644
--- a/routes/web.php
+++ b/routes/web.php
@@ -92,6 +92,7 @@
Route::get('designer', [DesignerController::class, 'index'])->name('designer.index');
Route::get('processes-catalogue', [ProcessesCatalogueController::class, 'index'])->name('processes.catalogue.index');
+ Route::get('processes-catalogue/{process}', [ProcessesCatalogueController::class, 'open'])->name('processes.catalogue.open');
Route::get('processes', [ProcessController::class, 'index'])->name('processes.index');
Route::get('processes/{process}/edit', [ProcessController::class, 'edit'])->name('processes.edit')->middleware('can:edit-processes');
diff --git a/tests/Feature/Api/ProcessTest.php b/tests/Feature/Api/ProcessTest.php
index 018605ab4e..18bad14bc2 100644
--- a/tests/Feature/Api/ProcessTest.php
+++ b/tests/Feature/Api/ProcessTest.php
@@ -555,6 +555,29 @@ public function testSorting()
]);
}
+ /**
+ * Test filter by Category
+ */
+ public function testFilterCategory()
+ {
+ // Create Category
+ $categoryA = ProcessCategory::factory()->create();
+ $categoryB = ProcessCategory::factory()->create();
+ // Now we create process related to this
+ Process::factory()->count(5)->create([
+ 'process_category_id' => $categoryB->id,
+ ]);
+ // Get process without category
+ $response = $this->apiCall('GET', route('api.processes.index', ['per_page' => 5, 'page' => 1]));
+ $response->assertJsonCount(5, 'data');
+ // Get process related categoryA
+ $response = $this->apiCall('GET', route('api.processes.index', ['category' => $categoryA->id]));
+ $response->assertJsonCount(0, 'data');
+ // Get process related categoryB
+ $response = $this->apiCall('GET', route('api.processes.index', ['category' => $categoryB->id]));
+ $response->assertJsonCount(5, 'data');
+ }
+
/**
* Test pagination of process list
*/
diff --git a/webpack.mix.js b/webpack.mix.js
index c46fe394df..0a2e976666 100644
--- a/webpack.mix.js
+++ b/webpack.mix.js
@@ -54,6 +54,7 @@ mix.extract([
"@fortawesome/vue-fontawesome"
])
.copy("resources/img/*", "public/img")
+ .copy("resources/img/launchpad-images/*", "public/img/launchpad-images")
.copy("resources/img/script_lang/*", "public/img/script_lang")
.copy("node_modules/snapsvg/dist/snap.svg.js", "public/js")
.copy("resources/js/components/CustomActions.vue", "public/js")