Commit Graph

67 Commits

Author SHA1 Message Date
Kevin Burnett 991759deee
Generate markdown table (#1738)
* script for markdown table

* refactor

* refactor

* allow kwargs

* tests

* refactor tests

* sanitize markdown

* Update spiffworkflow-backend/src/spiffworkflow_backend/scripts/generate_markdown_table.py

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Update spiffworkflow-backend/src/spiffworkflow_backend/scripts/generate_markdown_table.py

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* lint

* allow turning off sanitization for a column w/ burnettk

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2024-06-17 13:33:53 -07:00
jasquat 709a0c8492
Merge guest flow into unauth flow (#1233)
* removed some portions of the guest access flow in favor of the unauthed flow w/ burnettk

* removed guest access from auth flow in backend w/ burnettk

* updated frontend to use new public api for guest tasks

* fixed tests and updated get task url script to choose between public and non public urls

* removed old guest task support from frontend

* return 404 when a task cannot be found w/ burnettk

* fixed typo in group list tiles w/ burnettk

* added cypress tests for public formg w/ burnettk

* display metadata key for urls instead of values w/ burnettk

* updated permissions for acceptance testss w/ burnettk

* set up permissions for public group if it is in the list and login and logout admin user in ci to ensure permissions are set w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2024-03-19 11:52:27 -07:00
jasquat f0f4bcce12
Feature/homepage extension filter refactor (#919)
* WIP: initial work to have a home page created from an extension w/ burnettk

* added support to display an extension as the root page w/ burnettk

* allow extensions to add new routes to base routes w/ burnettk

* use page instead of creating new key route w/ burnettk

* added components to support pi tables in extensions w/ burnettk

* allow using asterisks to mark words as bold in process instance list table

* moved table component from InstancesListTable to own component w/ burnettk

* filters are somewhat working again w/ burnettk

* default homepage uses the table without filters component now w/ burnettk

* renamed instance list tables to be more appropriate w/ burnettk

* display errors if list table is used incorrectly w/ burnettk

* fixed issue where columns were not displaying in the filter list

* pyl

* rely on changes in report hash to determine if report hash state needs updating

* only show link to report if there are instances to show

* many updates for filtering to remove the apply button and clean things up w/ burnettk

* some more fixes for too many renderings w/ burnettk

* advanced filters are working again w/ burnettk

* clear is working again w/ burnettk

* fixed a few linting errors and warnings w/ burnettk

* fixed some cypress tests

* if there are errors then display them right away instead of trying to put together the other elements

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2024-01-26 11:41:07 -05:00
jasquat 18600189c8 Feature/background proc with celery (#788)
* WIP: some initial test code to test out celery w/ burnettk

* some cleanup for celery and added base model to put tasks waiting on timers

* removed dup bpmn file

* some more cleanup and added strategy to queue instructions

* some minor code changes w/ burnettk

* remove the unused next_task key from api calls since nobody uses it w/ burnettk essweine

* added migration for future tasks and added test to make sure we are inserting into it w/ burnettk essweine

* ensure future task run at time can be updated w/ burnettk

* added table to queue instructions for end user in w/ burnettk

* added test to ensure we are storing instructions for end users w/ burnettk

* added progress page to display new instructions to user

* ignore dup instructions on db insert w/ burnettk

* some more updates for celery w/ burnettk

* some pyl and test fixes w/ burnettk

* fixed tests w/ burnettk

* WIP: added in page to show instructions on pi show page w/ burnettk

* pi show page is fully using not interstitial now w/ burnettk

* fixed broken test w/ burnettk

* moved background processing items to own module w/ burnettk

* fixed apscheduler start script

* updated celery task queue to handle future tasks and upgraded black and set its line-length to match ruff w/ burnettk

* added support to run future tasks using countdown w/ burnettk

* build image for celery branch w/ burnettk

* poet does not exist in the image w/ burnettk

* start blocking scheduler should always start the scheduler w/ burnettk

* add init and stuff for this branch

* make this work not just on my mac

* send other args to only

* added running status for process instance and use that on fe to go to show page and added additional identifier to locking system to isolate celery workers better w/ burnettk

* fixed typing error that typeguard found, not sure why mypy did not w/ burnettk

* do not check for no instructions on interstitial page for cypress tests on frontend w/ burnettk

* do not queue process instances twice w/ burnettk

* removed bad file w/ burnettk

* queue tasks using strings to avoid circular imports when attmepting to queue w/ burnettk

* only queue imminent new timer events and mock celery

* some keyboard shortcut support on frontend and added ability to force run a process instance over the api w/ burnettk

* some styles added for the shortcut menu w/ burnettk

* pyl w/ burnettk

* fixed test w/ burnettk

* removed temporary celery script and added support for celery worker in run server locally w/ burnettk

* cleaned up migrations w/ burnettk

* created new migration to clean up old migrations

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-12-05 11:41:59 -05: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 b446aad184 Minor tweaks t othe onboarding page. (#430)
* * Display the instructions_for_user directly on the home page (no redirects to alternate pages)
* Moved the onboarding view above the tabs on the home page.
* Added a "times_executed_by_user" script - not sure if we should keep it, but maybe handy.
* Assure that the display_name for the user is returned consistently (it was not being returned by the get_current_user function).

With @jbirddog

* remove pointless comment.
2023-08-03 15:08:25 -04:00
jasquat 796dc9dbec Feature/extensions api (#423)
* added api and test to run a process model and return task data synchronously w/ burnettk

* added test to make sure we can access db models from extensions api w/ burnettk

* added extensions api to elevated permissions

* fixed permission tests

* do not add extensions permission to all permission for a pg or pm w/ burnettk

* added configs for extensions api w/ burnettk

* added the basis for an extensions list api w/ burnettk

* added tests for extenstions api and do not use serialized as a property

* allow giving a body to an extension when running and some support in frontend to use extensions

* added ability to display markdown and rjsf on extensions page

* added ability to submit the extension form and display the resulting task data

* made frontend extension urls have 2 pieces of information so we can specify multiple routes for the same process-model w/ burnettk

* do not save process instances when running extensions w/ burnettk

* add extension input to a task not the process w/ burnettk

* pyl w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-08-02 14:02:53 +05:30
jasquat d50fb61bb9 added a script task script to get a task data value based on key name… (#353)
* added a script task script to get a task data value based on key name w/ burnettk

* pyl

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-27 10:04:04 -04:00
jasquat 43f23cd630 removed useless class and def comments from python code w/ burnettk 2023-05-31 16:28:06 -04:00
burnettk 2b2875cb6f let ruff sort imports and ditch duplicative pre-commit linters 2023-05-26 20:01:08 -04:00
jasquat 3124c5451a remove api usages from script tests and pyl w/ burnettk 2023-05-22 14:09:17 -04:00
jasquat 04864692b6 added typeahead search for bpmn name and identifier in process instance event list w/ burnettk 2023-04-25 15:30:26 -04:00
jasquat 2297477044 fixed broken auth tests w/ burnettk 2023-04-24 15:59:30 -04:00
jasquat 92c21f2c11 fixed tests and added test to ensure we are saving error events to the db on error w/ burnettk 2023-04-20 13:32:45 -04:00
burnettk a263696758 add test for filtering columns and clarify that we are doing unit tests with api, whoops 2023-03-24 18:11:11 -04:00
jasquat e305b22b5a increase line length from 88 to 119 for black w/ burnettk 2023-03-15 16:24:08 -04:00
jasquat 90b1772215 do not require task to be given to evaluate a task unless that script specifically needs it w/ burnettk 2023-03-01 17:18:58 -05:00
jasquat 09a46712d4 added debug logging when adding spiff step details w/ burnettk 2023-02-27 15:53:56 -05:00
jasquat 29ada38904 added script to get process initiator w/ burnettk 2023-02-27 14:28:19 -05:00
jasquat 9f84564457 script to get last user completing a task is working w/ burnettk 2023-02-27 12:08:07 -05:00
jasquat c5d611f03b disable strict host checking for git commands w/ burnettk 2023-02-21 16:42:11 -05:00
jasquat e5b83d0919 fixed tests w/ burnettk 2023-02-21 15:28:54 -05:00
jasquat 5452b48d08 use our json encoder to dump the user for get_current_user script w/ burnettk 2023-02-06 14:11:15 -05:00
burnettk 2c3b88042e move towards returning dict in get_current_user 2023-02-06 10:30:38 -05:00
jbirddog a815863727 Allow for different Python Environments when executing scripts within SpiffWorkflow (#121) 2023-02-02 10:24:55 -05:00
burnettk cb4429e837 folks who can start instances can also view their logs 2023-01-31 17:11:11 -05:00
jasquat 4e0ddc7ea5 removed uniqueness constraint from human task so we can loopback to a previous task with a gateway w/ burnettk 2023-01-24 11:03:55 -05:00
jasquat 6371703637 ensure order of permissions in tests 2023-01-24 10:23:47 -05:00
Dan 3c12e8ad35 Lots of adjustments from running pyl
Main change is in the ErrorDisplay.tsx to assure all error information is provided. and index.css to make it "pretty"
2023-01-19 12:36:45 -05:00
Dan 28a28e353b Removing dependency on flask-bpmn and taking it out of SpiffArena
Slightly updating the APIError code for recent updates to SpiffWorkflow's error refactoring.
2023-01-17 12:56:06 -05:00
burnettk 09e012674a upgrade black, give it the preview flag, and let it rip on long strings 2022-12-30 23:08:00 -05:00
jasquat b62d9f8867 delete human tasks when process instance is deleted w/ burnettk 2022-12-28 14:02:39 -05:00
burnettk 804d3c1052 trim down granted permissions to just the ones that exist in the API, improve output of permissions 2022-12-23 16:49:15 -05:00
burnettk 5a73ba20c1 lint and regen schema 2022-12-22 21:15:10 -05:00
jasquat 1dd32da9e4 added test to check only privileged users can call refresh_permissions w/ burnettk 2022-12-22 17:12:21 -05:00
jasquat 197a823220 pyl passes w/ burnettk 2022-12-22 16:42:52 -05:00
jasquat ff61026ff5 pyl w/ burnettk 2022-12-22 12:32:26 -05:00
jasquat a855df858b added script to get all permissions for the confirmation page when adding permissions from a process model w/ burnettk 2022-12-22 12:20:34 -05:00
jasquat 84bf70e2f2 do not force permissions to use the v1.0 path prefix but it can be used if desired w/ burnettk 2022-12-21 12:13:33 -05:00
jasquat 74eccab994 pyl w/ burnettk 2022-12-21 11:42:45 -05:00
jasquat da603ffef7 added permission to run privileged scripts w/ burnettk 2022-12-21 11:24:38 -05:00
jasquat 3e4ab0145e pyl fixed w/ burnettk 2022-12-20 16:14:55 -05:00
jasquat 92258c6f9a pyl w/ burnettk 2022-12-20 15:47:30 -05:00
jasquat 5a6e181a99 merged in main and resolved conflicts w/ burnettk 2022-12-20 15:06:34 -05:00
jasquat 2a73e23b3c renamed active task to human task since we are no longer deleting them w/ burnettk 2022-12-19 16:23:02 -05:00
Dan 160e19bb8c When loading permissions and the user does not exist, add records to the UserGroupAssignmentWaiting table that can be picked up later.
Request "profile" scope over OpenID so we can get a few more bits of information when avilable.
Add a "clear_perissions" script
Add an "add_permissions" script
Add an "add_permissions" script
When logging in for the first time, check for any awaiting permissions and assign them.
Add "enumerate" as a whitelisted function to React Schema
Add a "display_name" to the user table

Add a test for adding a new permission
Add a test for adding a user to group
Adding a test for deleting all permissions.
Adding a display name for the user table
2022-12-15 14:40:31 -05:00
jasquat cee726e8b0 pyl passes 2022-12-08 13:47:30 -05:00
Dan 3a09b45765 running py_pl -- mainly reordering imports. 2022-12-05 12:29:19 -05:00
jasquat b761f0289d fixed issue ensuring active tasks are up to date w/ burnettk cullerton 2022-11-28 15:47:56 -05:00
jasquat 0eeb096d43 added script to save process instance metadata and fixed permissions issue w/ burnettk cullerton 2022-11-28 15:26:50 -05:00