Commit Graph

3394 Commits

Author SHA1 Message Date
Dan Funk e95b3b03f3 Feature/editor cursor jumping (#485)
* To avoid the cursor jumps in the Monoco editor, never use "value=xxx" in conjuntion with "onChange".  Use defaultValue instead, and make sure that the editor is rerendered when that value is changed.

* linting
2023-09-12 16:21:18 -04:00
Dan Funk b432f22fe0 Bug/predicted tasks dropped (#484)
* when removing predicted tasks for data storage, don't alter the in-memory version of the workflow.

* run_pyl

* Bump gitPython for security vulnerability.
2023-09-12 16:15:43 -04:00
jasquat 9312b8cf91 pass a class to the modal to put it back (#483)
* pass a class to the modal to put it back

* update gitpython for safety

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-12 15:39:32 -04:00
usama9500 765f744721 Adding content for features (#481) 2023-09-12 09:43:49 -07:00
jasquat ba97518207 only return guest_confirmation if it is a guest task 2023-09-12 11:11:05 -04:00
burnettk f15b8c5c08 add /debug/url-info path 2023-09-11 20:17:10 -04:00
burnettk d935def567 debugging function 2023-09-11 16:56:27 -04:00
jasquat 0db323e603 add fuzz to the id attribute of a checkbox so the carbon element knows what has been clicked w/ burnettk (#482)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-11 11:24:58 -04:00
burnettk e4d50f850e update spiff to get a couple bug fixes 2023-09-11 10:32:34 -04:00
jasquat a72ed7ffb5 disable element units by default and added test that was failing due to it w/ burnettk (#480)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-08 13:47:31 -07:00
jasquat 42b44cef07 feature/user-guest-sign-in-fixes (#479)
* do not change guest user permissions when running refresh_permissions w/ burnettk

* linting

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-08 13:32:37 -07:00
jasquat 912886f3e6 Improvement/task and spec relations (#477)
* updated to use new spiff branch and fixed broken tests w/ burnettk essweine

* updated spiffworkflow with new main build w/ burnettk essweine

* work around dictionary changed size during iteration error in parallel tests

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-08 12:54:43 -04:00
burnettk 4e47eadfea add SPIFFWORKFLOW_BACKEND_OPEN_ID_IS_AUTHORITY_FOR_USER_GROUPS and default to false 2023-09-08 12:54:32 -04:00
Dan Funk 948c633b2c Feature/better form nav (#474)
* Detect focus loss/return in the Diagram Editor - so that we can reload the process model and assure that we know about any changed files.

Allow for looking specifically for json SCHEMA files (those files that are named -schema.json or .schema.json (as is the convention).  Only show these in the dropdown for the form.

* * Run descriptions through the markdown processor so you can use bold/italic etc... in your description fields within a form.
* Move ExampleTable into it's own view component to keep the size of the form builder sane.
* Assure markdown within jrsf forms have reasonable styling that follows the containers style, rather than setting to some other default.
* Add a couple of example forms so people can get a sense of what is possible.
* Connect up the new Json Schema Editor Component to the process model edit diagram.
* Just select the schema file - not the ui file when selecting the form for a component - we may revert this to just a text box.
*

* Cleanup the formatting of arrays, so that they are sligtly intended, do not contain an awkward unneeded heading, and have some tighter css.

* Connect the form editing in the modal back to the BPMN-JS editor

Auto-Save edits in the Form Builder

Lots and lots of tweaks to the react form builder ui

* various fixes.

* test for prepare_schema

* minor fix for run_pyl

* css cleanup
less issues with reloading and jumping about when in the editor
Don't sort keys when returning the json.
More intelligent "ready"

* bump package to point to branch of bpmn-js-spiffworkflow so others can check it out.

* Assure that json keys are not sorted during serialization by default.
Allow adding example fields to an existing schema

Create a set of examples.

* db complaints in migration change.

* removed items from interface file that had been moved elsewhere w/ burnettk

* rename prepare_form to prepare-form

* rename prepare_form to prepare-form

* Remove commented out code.

* typo

* add a comment about the empty column

* move back to the main branch

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-08 11:07:43 -04:00
jasquat d99054b3a6 make sure we show the go button on the pi show page for tasks that the user can complete w/ burnettk 2023-09-08 11:07:25 -04:00
jasquat 161a0bceb6 do not run the background scheduler in ci for cypress tests 2023-09-08 10:03:36 -04:00
jasquat a7556dc958 remove the publish button if backend is not configured to publish w/ burnettk (#473)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 16:03:47 -04:00
jasquat f0fdf51a87 some improvements to cypress tests w/ burnettk 2023-09-07 15:31:31 -04:00
jasquat 3ba3b5448a runtime_info can be None so check for it w/ burnettk 2023-09-07 15:11:06 -04:00
jasquat 4cf33b62fc Feature/user preference extension (#472)
* added ability to display navigation items in user profile toggle

* updated naming of some extension elements

* added user property table and updates for extensions to use it w/ burnettk

* moved extension ui interfaces to own file and linting issues

* some updates to render markdown results on load w/ burnettk

* added migration merge file w/ burnettk

* moved code to fix linting issues w/ burnettk

* resolved db migration conflict

* removed unnecessary migrations and added just one w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 11:22:40 -07:00
jasquat 655d384645 removed debug print statement 2023-09-07 14:07:46 -04:00
Elizabeth Esswein 75e6007ef3 multiinstance ui (#469)
* multiinstance ui

* fix black

* added migration merge file

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 14:00:09 -04:00
Elizabeth Esswein ef297b1eeb add page titles for most routes (#468) 2023-09-07 13:53:10 -04:00
jasquat beb0449a5a set overflow to auto so the scrollbar only appears when necessary 2023-09-07 13:48:01 -04:00
jasquat a774589748 updated with tasks waiting for me query to include tasks manually assigned to the user w/ burnettk (#467)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 13:41:41 -04:00
jasquat 69e2fef0b1 updated checkbox widget to use carbon and added tooltip options w/ burnettk (#466)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 13:41:06 -04:00
jbirddog f9e4cf577a Allow cycle timers to cycle when a human task is in play (#465)
* Refactor to prep for manual task handling

* Fix for manual tasks that complete workflows with cycle timer events

* Getting bin_pyl to pass
2023-09-07 13:40:38 -04:00
jasquat 5a6031b3d7 fixed failing cypress test w/ burnettk 2023-09-07 12:41:50 -04:00
jasquat 6944f87c8a Feature/view completed user forms (#464)
* added modal and table to view completed forms w/ burnettk

* avoid making api calls for tab components on instance show page w/ burnettk

* show id when no task name and fix cognitive complexity warning in an embarrassing way

* removed some commented out code

* made human task attributes optional and noted them in frontend interfaces w/ burnettk

* removed draft completed tasks component w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-07 12:04:10 -04:00
jasquat 25540f32e0 added a widget to allow markdown fields for rjsf (#461)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 11:51:24 -04:00
jasquat f2cddc1e3b Feature/avoid repredicting tasks (#460)
* removed commented out smart task prediction code from after_engine_steps and removed code to predict tasks again from within backend

* build images for this branch

* removed commented out debug code

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 11:50:38 -04:00
jasquat 4f20f97317 show an error message and render the remaining page if a bpmn diagram cannot load w/ burnettk (#458)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 11:20:58 -04:00
jasquat c056b89006 Feature/group mapping from keycloak (#457)
* some basics to set a user groups based on info in keycloak w/ burnettk

* test for adding groups from token now passes

* do not remove users from groups when running refresh_permissions if specified

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 11:17:40 -04:00
jasquat bc4e475809 when we replace variables in enum list in jsonschema ensure it is actually a non-empty list w/ burnettk (#455)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 11:13:27 -04:00
jasquat 9ea90a94bf updated the support user permissions to disallow authentications as well and updated webui to nav to auth page if auth is available but secrets are not w/ burnettk (#454)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 10:33:56 -04:00
jbirddog 9925105a5e Support lazy loading call activities with human tasks (#450)
* Switch to local wheel

* Fix to load the call activity by spec

* Added log

* Logging

* WIP - getting the right tasks it seems from the db, need to get into the workflow

* Clean up, revert things

* Working thanks dan

* Getting bin_pyl to pass

* run_pyl.

* Re-poet install

* Revert file

* Remove logging lines

* Getting bin_pyl to pass

* Clean up, revert things

* Bump wheel

* Use version off pypi

---------

Co-authored-by: danfunk <daniel.h.funk@gmail.com>
2023-09-07 10:33:38 -04:00
jasquat ffe2a18ce9 Feature/guest form submission (#447)
* WIP: some initial code to allow anonymous users get a task w/ burnettk

* added scripts to get the url for a given human task w/ burnettk

* users can complete a task anonymously

* pyl

* fixed up login flow and added submission confirmation message for guest tasks w/ burnettk

* added only_guest_task_completion to guest token so we can remove items from the ui with it

* renamed anonymous to guest

* force logout guest users when verifying the token if certain criteria are met and do not do it random controller methods

* also allow saving draft data to use guest users w/ burnettk

* updated bpmn-js-spiffworkflow and added test to test allow guest

* pyl

* fix typo and remove bad file

* remove allow_guest column and moved allow guest check to TaskModel

* removed unnecessary comment

* missing import

* do not allow guest users to see completed tasks and remove save and close button for guest users w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-07 10:33:02 -04:00
Dan Funk 80ad92a0c3 Threads (#439)
* WIP - threading with dan

* WIP - cleanup with dan

* Fixing a minor bug and adding a comment and taking the win, even though it was all actually done by @jbirddog with help from @essweine

* adding a couple of simple tests

* * Threaded execution of multiple ready engine tasks is now the default behavior for all execution strategies by default (the skip-one strategry does not do it)
* Assure that tasks in the db match those in the spiffworkflow bpmn on save (remove all predicted and pruned tasks)

with @jbirddog, @jlantz, @burnettk

* run_pyl

---------

Co-authored-by: Jon Herron <jon.herron@yahoo.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-07 10:12:56 -04:00
jasquat c747c4be56 Feature/UI tweaks (#419)
* some initial ui tweaks w/ burnettk

* left align more items as per the figma page w/ burnettk

* pyl w/ burnettk

* left align additional pages w/ burnettk

* use carbon components for the rjsf forms as well w/ burnettk

* do not raise if the app cannot load an env specific config file w/ burnettk

* attempting to center all the main elements except the diagram page WIP w/ burnettk

* fix build issue

* document media query

* fixed centering of elements in webui w/ burnettk

* some tweaks to taskshow markdown w/ burnettk

* make filter button smaller as a medium size

* medium styles for these buttons to the top right of tables

* inscreased cap for metadata key when displayed and allow word-wrapping w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-07 10:12:13 -04:00
jasquat 9bb9ce47f8 Feature/business end states (#333)
* WIP: some updates to support new spiff w/ burnettk

* unit tests are passing

* all tests except message tests are passing

* fixed usage of catch message event w/ burnettk

* messages are working again w/ burnettk

* uncommented remaining message tests w/ burnettk

* fixed cypress tests w/ burnettk

* use main for spiffworkflow

* translated mysql last milestone query to sqlalchemy w/ burnettk

* fixed last milestone query so instances still return if no milestone found and moved some code from the main report method to own methods

* added some comments

* added last milestone column to process instances table

* display last milestone in instance list table w/ burnettk

* remove 3 characters when truncating last milestone for ellipsis

* make sure we have a current processor so we don't return null

* remove sleep

* The background processor now only picks up processes that were last updated more than a minute ago to avoid conflicting with the interstitial page.  With the understanding that we can rmeove this limitation when we can refactor to allow the backend processes to provide updates on what they are doing.

* pyl w/ burnettk

* cache last milestone on instances

* pyl

* added test for last milestone and added it to the proces instance show page w/ burnettk

* fixed broken test w/ burnettk

* fixed last milestone header

* removed duplicated column

* fixed broken test

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: Kevin Burnett <18027+burnettk@users.noreply.github.com>
Co-authored-by: danfunk <daniel.h.funk@gmail.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-07 10:10:44 -04:00
burnettk f218805a2d try to make invalid tokens easier to debug 2023-09-02 19:33:09 -04:00
Violet 98a4aa4b0c Update README.md with information about docker (#459)
* Update README.md with information about docker

point to spiffworkflow.org docker guide and mention the differences between docker-compose.yml and editor.docker-compose.yml

* fixes to README.md about description of `editor.docker-compose.yml` following feedback from @jbirddog
2023-09-02 16:18:47 -07:00
danfunk 2d14dac106 bumping version of BPMN-JS to 13.2.2 2023-09-01 14:14:40 -04:00
burnettk 0667436c15 cleanup and log SPIFFWORKFLOW_BACKEND_BPMN_SPEC_ABSOLUTE_DIR 2023-08-31 21:01:11 -04:00
burnettk b60b620f16 kill some duplication and just go ahead and get a process model repo if there is none 2023-08-31 20:52:09 -04:00
jasquat 5ff85b3706 added script in frontend to use local version of bpmn-js-spiffworkflow w/ burnettk 2023-08-31 16:27:02 -04:00
burnettk e5e9349c14 use chromium 2023-08-31 16:16:48 -04:00
jasquat d41b08e810 feature/fix-run-scheduler-config (#456)
* updated scheduler config name to make sense and updated docker-compose file to use the local_docker env

* added sample command to boot server in docker

* removed terraform configs since they are no longer used

* fixed snyk issue

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-31 16:09:26 -04:00
burnettk b4dac1d825 update bpmn-js-spiffworkflow in frontend 2023-08-31 14:36:47 -04:00
Dan Funk 8c53432ee6 Feature/bug fixes for quick merge on mi ca (#462)
* upgrade to correct multi-instance error bug in BPMN-JS-Spiffworkflow

* update the git service to re-build cache after doing a git pull when a web-hook is called.

* update to SpiffWorkflow - which includes 'replace root with spec start'

* updating the lock file.
2023-08-31 21:10:03 +05:30