Commit Graph

1252 Commits

Author SHA1 Message Date
jasquat d5c5bc12ae
Feature/side by side layout (#858)
* WIP: work for side-by-side layout in json forms w/ burnettk

* added support in ObjectFieldTemplate to support side-by-side layout w/ burnettk

* added a restricted grid template for half width forms

* display the error message if field mentioned in ui:layout but the field does not exist

* added docs for side-by-side layout w/ burnettk

* update script

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2024-01-05 15:49:40 -05:00
jasquat 4f5a590e1e
only attempting converting a date string if it looks like a date without year first w/ burnettk 2024-01-04 17:17:02 -05:00
jasquat c96b4b751a
Merge branch 'main' of github.com:sartography/spiff-arena 2024-01-04 11:12:37 -05:00
jasquat d58e02bed3
NoneTask can also be a human task type w/ burnettk 2024-01-04 11:12:33 -05:00
jbirddog 746a20bc4c
Disable upload button if filesToUpload is null (#856) 2024-01-04 10:35:01 -05:00
jasquat 4c20759e37
fixes the date picker so it does not change the date after selecting it (#855)
* fixes the date picker so it does not change the date after selecting it

* Update spiffworkflow-frontend/src/services/DateAndTimeService.tsx

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

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: Kevin Burnett <18027+burnettk@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2024-01-04 10:23:56 -05:00
jasquat 0b296f4c46
added validation for maximum date w/ burnettk (#851)
* added validation for maximum date w/ burnettk

* Update spiffworkflow-frontend/src/components/CustomForm.tsx

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

* Update spiffworkflow-frontend/src/components/CustomForm.tsx

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

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: Kevin Burnett <18027+burnettk@users.noreply.github.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
2024-01-03 14:37:29 -05:00
jasquat adb53c722a
also specify margin bottom for item-array with rjsf-field (#850)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2024-01-03 13:35:22 -05:00
jasquat 0da550d412
add in better message for unsupported date format 2024-01-03 10:42:54 -05:00
jasquat a81e0b9bda
feature/progress-page-for-me-nav (#846)
* use for-me on progress page when appropriate w/ burnettk

* use a hook for navigate instead of window.location w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2024-01-02 13:27:51 -08:00
jasquat 3c1cf4380d
feature/support-more-date-formats (#835)
* added support for Month names and abbreviations in frontend

* corrections pointed out by coderabbit

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2024-01-02 10:16:00 -05:00
jasquat a7a48ee9fc
feature/get-pg-of-readable-pm (#832)
* get parent process groups of process models that the user has access to w/ burnettk

* use the process group list to get the info we need for the group show page for permissions w/ burnettk

* clear the browser cache when updating a process group w/ burnettk

* fixed broken test w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-12-22 13:17:40 -05:00
jasquat 6b9bfc4ee6
do not restrict li tags within the process model search combobox the same way we do other items 2023-12-21 09:33:03 -05:00
Kayvon-Martinez 0bb4040395
Added asterisk to title when required and fixed validation errors (#829)
* Fixed validation errors for numeric range field and added asterisk when field is required

* Removed unused import
2023-12-20 21:30:14 -06:00
jasquat e161b23a30
updated bpmn-js-spiffworkflow to fix undefined businessObject issue w/ burnettk 2023-12-20 12:15:56 -05:00
jasquat 15d0d788e5
Feature/pi show page diagram (#816)
* get most recent tasks based on last_state_change instead of task_model.id

* added api to get task instances of a task

* some changes to support displaying task instances

* forgot to commit the controller

* updated frontend to display info for other instances of a task w/ burnettk

* some formatting to the selected task instance w/ burnettk

* do not get task instances when selecting different instance w/ burnettk

* added tests for task-instances w/ burnettk

* some ui tweaks for task instance view w/ burnettk

* updates based on coderabbit

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-12-18 14:23:51 -05:00
Kayvon-Martinez 4cb2fa66aa
Updated Min/Max value labels (#813)
Min/Max values fields will now check if a title was passed. If no title was passed the label will be "Minimum" or "Maximum".
2023-12-18 07:30:29 -08:00
jasquat e161c3dede
removed bad file w/ burnettk 2023-12-14 14:49:56 -05:00
Kevin Burnett 5cceb52756 Numeric range field added (#799) (#800)
* Numeric range field added (#799)

Added a custom field to handle numeric ranges. The field checks for the first key in the properties of the schema and will add min and max to it when the values are put in.

* autofix lint stuff

* updates to simplify the code, fix a few ux issues, and make more inline with current conventions w/ burnettk

* removed subkey from numeric range and added validation to ensure max is greater than min w/ burnettk

* added some comments to clarify how to use numeric range w/ burnettk

* added some documentation for the numeric range field w/ burnettk

---------

Co-authored-by: Kayvon-Martinez <142514475+Kayvon-Martinez@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-12-13 12:50:26 -06:00
burnettk d5ea87017f go back to pulling bpmn-js-spiffworkflow from its own separate repo because gitpkg.now.sh for monorepo subdirs is too flaky 2023-12-13 11:00:09 -05:00
jasquat f546290220 updated bpmn-js-spiffworkflow w/ burnettk 2023-12-13 10:40:20 -05:00
jasquat e9dbf8b928 updated bpmn-js-spiffworkflow integrity w/ burnettk 2023-12-13 10:31:15 -05:00
burnettk 4cfe9a5d44 pull in sartography/spiff-arena/bpmn-js-spiffworkflow instead of sartography/bpmn-js-spiffworkflow 2023-12-13 10:28:36 -05:00
jasquat 8e91ef58e6 some changes to support redirecting when loading an extension (#806)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-12-12 16:16:01 -05:00
jasquat c36e342d1e use a state for hotCrumbs with using ProcessBreadCrumb to avoid unnecessary renderings and network calls w/ burnettk 2023-12-11 14:51:04 -05:00
jasquat c00d810704 Feature/data object category (#796)
* WIP: some initial code for category in data objects

* attempt to get the data object for the given bpmn process and instance of it w/ burnettk

* updates for data objects

* fixed tests

* made suggestions by code rabbit and moved logic to get process data file out of shared method since it has a completely different implentation

* remove commented out code

* updated SpiffWorkflow for data object category

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-12-11 07:42:01 -08:00
jasquat 40b02ae488 check that connector-proxy-demo can run when releasing new tags w/ burnettk 2023-12-06 11:21:32 -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 1627f5dd07 bugfix/guest-login-multiple-auths (#782)
* This fixes guest login with using multiple auths, removes empty items from ApiError, and raises if redirect_url given to login does not match expected frontend host w/ burnettk

* get body for debug

* try to get the logs from the correct place to upload w/ burnettk

* mock the openid call instead of actually calling it w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-11-30 13:51:01 -05:00
jasquat ac0c83d695 checking if user can edit a readme file should be a PUT, not a GET 2023-11-30 07:46:40 -05:00
jasquat 7d086a8580 fixed guest user access w/ burnettk 2023-11-29 12:04:49 -05:00
Kevin Burnett cfe00a45d4 reset to page 1 when status changes to fix #765 (#769)
* reset to page 1 when status changes to fix #765 w/ jasquat

* upgrade connexion and werkzeug to fix snyk w/ jasquat

* fix all security issues like a boss w/ jasquat

* whoops, still no resolution for cryptography w/ jasquat

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-11-28 08:58:54 -08:00
burnettk 126ba9512c tweak 2023-11-28 09:54:24 -05:00
burnettk b71ad338e8 turn off autocomplete on date range widget for the love of god 2023-11-16 17:00:53 -05:00
Kevin Burnett 8d85e5ac26 added some updates to help with logging deployments w/ burnettk (#683)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-11-16 13:15:49 -08:00
Kevin Burnett d9203f4d37 curl and procps in container for debugging (#680)
* curl and procps in container for debugging

* added some spacing between from lines in dockerfiles w/ burnettk

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-11-16 07:18:11 -08:00
jasquat 1eed6e2444 feature/full-breadcrumb-on-task-show (#675)
* show the full breadcrumb on task show page w/ burnettk

* check read permission of process model before displaying in breadcrumb on task show page

* in the breadcrumb if the api returns 401 then just ignore the breadcrumb

* pyl

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-11-16 10:05:08 -05:00
Dan Funk 12c8b899f0 Copy and Paste Error (#663)
* We were getting copy and paste errors that an id already existed.  This fixes that problem by assuring we always call the importXML method on the diagram modeller (and don't bypass it with a call to the fromXML of the protected _moddle.
we have to correct for the loop characteristics getting removed in a different way.

* run_pyl.

* eslint fixes

* Cypress caught some errors - I hate it, but it was right, and it caught something critical.
2023-11-14 15:14:07 -05:00
jasquat 18207bcfbd bugfix/fix-refresh-token-error (#668)
* when backend returns 401 also remove cookies and redirect in frontend if cookies are not set w/ burnettk

* added a copule helpful comments w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-11-14 14:54:16 -05:00
jasquat 39852b2894 render the loginHandler if components have not loaded on the extensions page to ensure user can log in 2023-11-14 10:17:25 -05:00
jasquat 1197a1a51a do not tell users to add a process model/group if they do not have access to do so w/ burnettk 2023-11-13 16:56:41 -05:00
jbirddog c122926e01 Support creating unique top level keys for KKV data store (#613) 2023-11-13 11:37:24 -05:00
jasquat 930515ddb9 send default as the auth identifier by default w/ burnettk 2023-11-10 16:07:53 -05:00
jasquat ba8f0a1c74 allow specifying text for the submit butotn in an rjsf form w/ burnettk (#662)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-11-10 15:48:34 -05:00
jasquat 016eafa35d Feature/debug snyk (#660)
* try to debug snyk issue

* try to correct debug env var

* put the debug var in the correct area

* updated autoprefixer to make snyk happy

* put the rest of the ci items back

* run snyk on a schedule w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-11-10 14:13:28 -05:00
jasquat 24bfea9799 allow specifying the default per page value for the tasklisttable instead of hardcoding it for everyone 2023-11-10 09:33:00 -05:00
jasquat fc22425ea2 fixed process model cypress test w/ burnettk 2023-11-09 15:56:53 -05:00
jasquat 1596076a15 updated auth identifier header name to include spiffworkflow w/ burnettk 2023-11-09 15:45:52 -05:00
jasquat 586cb8893d attempting to fix broken cypress test by waiting for page to load before clearing w/ burnettk 2023-11-09 14:59:35 -05:00
jasquat 45bcba172d default other open id configs is url is specified w/ burnettk 2023-11-09 14:31:30 -05:00
jasquat 52b90dd28a show loading screen on login page instead of Log in to spiff when inappropriate w/ burnettk 2023-11-09 12:12:53 -05:00
jasquat 155f07d723 Feature/first five minutes (#601)
* added helpful text if no process groups and models, do not show start button on model tile if no primary file, and do not make unnecessary calls in ListTiles when we already have the info w/ burnettk

* added some help text to process model show page if not files are there w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-11-09 10:49:26 -05:00
jasquat d5b0330609 Feature/support multiple auth (#602)
* added some support for configs to have mutliple auths

* multiple openids services are mostly working - still needs some cleanup

* some cleanup for pyl and fixed login_return for internal openid server w/ burnettk

* if only one auth is returned from backend then just do that w/ burnettk

* login page has been formatted w/ burnettk

* some extra formatting on the login page w/ burnettk

* relabel test openid providers and add user

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-11-09 10:34:07 -05:00
Kevin Burnett 9f3fba3000 handle already logged out case more gracefully (#599)
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-10-31 11:26:17 -04:00
jasquat 8330c5b383 Feature/treat blank task as manual (#598)
* adds basic support to use certain components in extensions w/ burnettk

* treat a blank Task as a manual task on the frontend w/ burnettk

* updated remaining references for ManualTask vs UserTask w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-10-27 15:58:02 -04:00
jasquat 566f383918 adds basic support to use certain components in extensions w/ burnettk (#597)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-10-27 14:54:45 -04:00
jasquat 7e128c5a55 Feature/completed tasks on pi show (#591)
* added api to get all completed tasks for an instance and display it in a table w/ burnettk

* moved completed tasks table on pi show page to sub tabs

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-10-26 11:37:55 -04:00
jasquat 39edd60fd6 Feature/hide private data objects (#581)
* added test and some additional support for deny permissions w/ burnettk

* added support for deny through permissions-check api w/ burnettk

* support DENY at the beginning of a permission target marcro

* do not look up permissions using grant type, only use the uniqueness key

* added support in frontend to display a nice error if user does not have access to a data object value w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-10-25 16:31:06 -04:00
jbirddog 16ae1d9ccd Add support for KKV data stores to the data stores tab (#576) 2023-10-25 12:59:09 -04:00
jasquat ed64a122ac minor formatting to Read and Learn more w/ burnettk 2023-10-23 11:54:42 -04:00
jasquat 4736173f88 updated target links for Read and Learn More in rjsf editor so they pin to different tabs w/ burnettk 2023-10-23 11:52:51 -04:00
jasquat f99e21c63e updated bpmn-js-spiffworkflow to support conditional boundary events w/ burnettk 2023-10-23 11:28:48 -04:00
jasquat f8555c55bb do not remove errors from configuration route useEffect and do not display errors on extensions page if under configuration w/ burnettk 2023-10-20 16:41:48 -04:00
jasquat 5907339918 added a DateAndTimeService on the frontend to get those functions out of helpers w/ burnettk (#560)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-10-20 16:07:00 -04:00
jasquat 54b7c5c3ec feature/formatting-in-extension-md (#559)
* support formatting data client side in markdown and support greater than and less than for metadata column filters w/ burnettk

* moved spiff conversion functions to FormattingService and use it in InstructionsForEndUser w/ burnettk

* added tests for greater than and less than metadata operators and added negative tests w/ burnettk

* removed unneeded useEffect w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-10-20 15:19:26 -04:00
jasquat fe4dc14b8d Feature/docker CVE issues (#558)
* updated Dockerfile to try to remove security vulnerabilities w/ burnettk

* we require curl for health checks w/ burnettk

* try to scan docker image in ci

* use Dockerfile from backend w/ burnettk

* continue-on-error w/ burnettk

* attempt to elevate permissions of snyk w/ burnettk

* added snyk security github workflow w/ burnettk

* fixed location of constraints w/ burnettk

* add in or true for snyk tests w/ burnettk

* sent the snyk token w/ burnettk

* specify the directory for the sarif file w/ burnettk

* updated spiffworkflow-connector-command for snyk issue w/ burnettk

* updated sql statements sanitize input

* ignore issues for debug_controller and check frontend with snyk w/ burnettk

* updated babel and electron for snyk w/ burnettk

* some more updates to fix vulnerabilities w/ burnettk

* prune repeated deps for frontend builds since

* uncomment ci code so it runs again and use node for frontend base image w/ burnettk

* fixed backend image name w/ burnettk

* pyl w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-10-19 14:22:52 -04:00
burnettk baa93f5e2c do not show timestamp links for cancelled events, since you cannot reset to them 2023-10-19 08:10:33 -04:00
jasquat d18e54b02b return false when checking if undefined or null 2023-10-18 14:41:14 -04:00
jasquat ecdabe3f44 put back the handlefileNameSave call w/ burnettk 2023-10-16 11:57:24 -04:00
danfunk d3d677661b misspelling. 2023-10-16 08:12:51 -04:00
burnettk 0551ed8d95 all of these are tasks but not all are forms, given manual tasks 2023-10-13 10:23:19 -04:00
jasquat df1a458be7 updated formatDuration method in frontend to only go as far as days and avoiding date-fns function since it messes up around february w/ burnettk 2023-10-10 12:59:11 -04:00
jasquat 3276fdb579 Feature/metadata column display type (#534)
* some basics to set a display type for a metadata column when displaying w/ burnettk

* added supuport for durations and some clean up

* only display hours and days in duration if they are above 0 to keep it a little cleaner

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-10-10 11:52:59 -04:00
jasquat acc918b664 feature/fix-required-radio-buttons (#525)
* ignore validations for radio booleans from the custom form w/ burnettk

* use carbon for radio buttons

* added comment about error message without label

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-10-04 10:57:15 -04:00
jasquat 3e79fbadf9 added button to copy report links to share w/ burnettk 2023-10-03 10:43:22 -04:00
Elizabeth Esswein 6681899e13 update bpmn js with signal event fix 2023-10-02 17:14:16 -04:00
burnettk 8069ea28e9 make it clearer how the Data View relates to task data 2023-09-30 16:47:44 -04:00
jasquat 8220aa42ef added bin/console command that runs flask shell and align zoom tooltips to the bottom w/ burnettk 2023-09-29 16:00:16 -04:00
jasquat f3e7bbaa02 a couple updates for extensions w/ burnettk 2023-09-28 17:19:37 -04:00
jasquat 8f50749fa0 just look for aborted in the error on interstital page w/ burnettk 2023-09-28 15:58:42 -04:00
jasquat a211f3fd49 ignore was aborted errors on the interstitial page since they do not matter w/ burnettk 2023-09-28 14:57:31 -04:00
wid 5db3ae6b16 fix(oidc): use fallback to get prefered username (#517)
function `getPreferredUsername()` is failed to fetch prefered username when using Google as OpenID
provider because the payload inside the JWT does not contains exact "preferred_username" key

Signed-off-by: widnyana <wid@widnyana.web.id>
2023-09-28 08:36:19 -07:00
jasquat 18fe02f597 allow disabling extensions from the uischema 2023-09-28 07:52:49 -04:00
jasquat ff558388ec updated files table on pm show page to force single line and added migration to increase column size of process-model identifier in message triggerable table w/ burnettk (#515)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-27 09:00:09 -07:00
jasquat 8a717e3431 feature/admin-redirect (#514)
* add in a redirect in frontend for admin pages to redirect without admin

* use a regex to replace admin

* moved the root route to own component to remove routing warnings w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-27 10:24:15 -04:00
jasquat ac1bebeb76 fixed cypress tests 2023-09-26 10:30:11 -04:00
jasquat c3fdbc0f69 remove pilot cypress tests and update others for admin in path removal w/ burnettk 2023-09-25 16:03:46 -04:00
jasquat f50eea4759 some fixes for the error page when backend is down w/ burnettk 2023-09-25 11:31:02 -04:00
jasquat 3a94db8a2e use the correct interface for process callers since backend returns references and print errors to the console in boundary fallback 2023-09-22 17:02:58 -04:00
jasquat e95c093fc2 updated ProcessReference interface in frontend 2023-09-22 15:50:13 -04:00
jasquat 8bf38aaa1c Feature/new reference cache (#511)
* added basic model for new reference cache w/ burnettk

* switched out SpecReferenceCache for ReferenceCacheModel w/ burnettk jbirddog

* pyl w/ burnettk jbirddog

* save items to the db using the new cache with generation table w/ burnettk

* bulk save for performance

* tests are passing

* actually use the new generation table - we still need a test to ensure we are using it

* added test to ensure using new cache generation

* corrected reference interface on frontend w/ burnettk

* do not perform git pull in webhook if the revision is the same as the current w/ burnettk jbirddog

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-22 11:28:59 -04:00
jasquat 1826cc4b6c Improvement/flexible task iteration (#507)
* updated to use new spiff branch and fixed broken tests w/ burnettk essweine

* updated spiffworkflow with new main build w/ burnettk essweine

* initial updates to new spiff branch w/ burnettk essweine

* more updates for new spiff w/ burnettk essweine

* fixed some linting issues w/ burnettk essweine

* fixed some failing tests w/ burnettk

* updated spiffworkflow for cancel fix w/ burnettk

* Improvement/flexible task iteration 2 (#504)

* wip

* consistent failure, mostly

* removing test code and tests

* removing unused test bpmn files

* removing unused test bpmn files

* minor cleanup of commented code

* spaces and unused imports

* go back to spiff on main

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>

* lint

* updated test to reflect storing predicted tasks w/ burnettk

* add some orders so postgres does not do whatever it wants, and clear log

* fix lint

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: danfunk <daniel.h.funk@gmail.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-21 14:47:18 -07:00
jasquat 9cfec3d357 updated completed form modal to have white background and minor changes to table column names 2023-09-21 08:00:14 -04:00
jasquat 439c8abbe2 allow instructions to collapse in view completed form and make items in text fields a little more readable w/ burnettk (#506)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-20 16:03:58 -04:00
jasquat ff9d34fe83 updated milestone table query to include logic similar to caching last_milestone on the pi w/ burnettk (#505)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-20 13:25:42 -04:00
jasquat 025a62aa37 fixed some admin links left behind 2023-09-20 13:20:49 -04:00
jasquat ff83b8c801 Feature/pi short link (#503)
* moved adminroutes to homepage to get rid of /admin from urls

* removed admin prefix from urls

* moved top level base routes to their own routes file w/ burnettk

* added ability to get and use a short link to the process instance show page w/ burnettk

* give the person some feedback

* move about page to baseroutes so it acts like the other pages

* use the normal notificaiton component for the copied link notification

* added 404 page and backend is down page w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-20 12:02:02 -04:00
jasquat 00158df03d Feature/pm readme file (#495)
* refactored process model show page to use tabs

* added ability to view and edit a process model readme file w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-20 11:14:20 -04:00
jasquat 5e19d68d49 create a custom validation for checkboxes instead of trying to set the value to undefined (#501)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-19 06:10:54 -07:00
Dan Funk ce130f4539 Bug/various bugs (#499)
* The ErrorBoundary is super powerful and useful.  There is a default implementation that seems to be recommended now, so dropping our homegrown one for the standard one.

We can now render custom components when an error happens within an error boundary, and we can use error boundaries within sub-components as we now do in the reactFormBuilder which will capture form rendering errors, and allow you to fix the error and retry.

The more global ErrorBoundary set in the "ContainerForExtensions" now users a the ErrorBoundaryFallack to render the error - which looks a little cleaner, and tries to offer a little more information about what went wrong.
2023-09-19 09:08:57 -04:00
jasquat db7f6a64a1 Feature/markdown error fix (#498)
* added widget to edit markdown with rjsf

* build spiffcrm

* updated docker images to build w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-09-19 07:37:05 -04:00
jasquat 4136917a3a default checkbox value to undefined if it is false 2023-09-18 11:45:24 -04:00
Dan Funk 691611c695 Bug/various bugs (#494)
* Don't bug out in older instances that don't have runtime_info

* Add zoom buttons to React Diagram Editor

* This removes some potential features for on-boarding, that we are not currently using, but fixes the issue with 100's of onboarding processes piling up and sitting around.  Hoepfully we can wrap this into the extensions mechanism so everything works the same way eventually.

* Improved error messages on form builder
Don't try to auto-save the file before it is fully loaded.
Example data was not getting saved on update.

* Found several errors with new zooming buttons in DMN, so cleaning that up.

Recent changes prevented creating a new dmn table.

* Errors were not being displyed for the Editor Routes

* Going to disable handling user tasks in the onboarding controller for now.
2023-09-18 11:22:29 -04:00
jasquat d747af2d7a fixed process instance event table on the show page to work a little more intuitively w/ burnettk 2023-09-15 12:29:07 -04:00
jasquat f6d3bc8e73 Feature/api keys (#489)
* some initial work to support user api keys w/ burnettk

* some updates to store and use service accounts - migrations do not work in sqlite atm

* pyl

* minor tweak to the migration

* refactored user route

* this is working if returning user that created the service account

* put back migrations from main w/ burnettk

* tests pass with new migration w/ burnettk

* do not remove service account permissions on refresh_permissions w/ burnettk

* added new component to make some api calls to populate child components and routes w/ burnettk

* allow displaying extensions in configuration tab w/ burnettk

* removed service accounts controller in favor of extension and encrypt the api keys

* add fuzz to username to make deleting and recreating service accounts easier

* allow specifying the process id to use when running an extension w/ burnettk

* allow extensions to navigate to each other on form submit w/ burnettk

* removed commented out debug code

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-09-15 10:10:57 -04:00
danfunk daddf639ad minor typo 2023-09-14 11:13:57 -04:00
jasquat 9b1377fb6a allow view completed manual task forms and show the instructions w/ burnettk 2023-09-13 10:31:34 -04:00
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
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
jasquat ba97518207 only return guest_confirmation if it is a guest task 2023-09-12 11:11:05 -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
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 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 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 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
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 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 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
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
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
danfunk 2d14dac106 bumping version of BPMN-JS to 13.2.2 2023-09-01 14:14:40 -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 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
jasquat f7929a9d8a remove space before colon on metadata display 2023-08-29 09:46:53 -04:00
jasquat a9b6f05e14 lint 2023-08-21 13:33:25 -04:00
Kevin Burnett 68ac5868b7 bump spiff to change task internal data, add new method and new exceptions (#441)
* bump spiff to change task internal data, add new method and new exceptions

* bump bpmn-js-spiffworkflow for MI updates

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-21 22:23:02 +05:30
jasquat dbabdf170b fixed is_empty metadata filter and added test to ensure they all work w/ burnettk (#437)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-21 22:00:01 +05:30
jasquat 48f851e3ff updated the column names for the tables on the process instance show page (#436)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-21 21:59:42 +05:30
jasquat 17309fb7fd Feature/allow markdown in extension results (#435)
* allow markdown in extensions results w/ burnettk

* fixed tests

* moved our rjsf form to component so extensions can also use it w/ burnettk

* added ability to create extensions that can download files w/ burnettk

* added test for extensions-get-data endpoint w/ burnettk

* make user optional when getting process instance reports

* added extensions-get-data to elevated perm macro and raise an error if user is not specified when needed when running a report

* fixed typeguard test

* push extensions branch

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-08-21 21:59:25 +05:30
jbirddog 2b363f4783 Oauth admin (#434)
* Adding dependencies

* Disconnect from /v1/auths for auth list. hardcoded for now.

* Revert changes

* WIP

* Getting hardcoded v2 auths into the frontend

* Better url for v2 oauth

* Pass the auth token from the frontend, don't verify token to start the auth process

* Manually verify the token from the querystring

* WIP

* WIP

* WIP, refactor SPIFF_SECRET handling, move dependencies

* Construct remote_app

* WIP

* WIP

* WIP

* WIP

* Ugly but getting the grant screen

* WIP

* WIP

* Github oauth ok

* Verify token, save access token

* Let secret name work with regex

* Getting bin_pyl to pass

* New component

* Load up the current config in an editor

* Getting bin_pyl to pass

* End point to update auth config

* Linting

* Adding configuration model

* Adding configuration model

* Prep to read config from db

* Read config from the db

* Save/reload poor man's styling

* Getting bin_pyl to pass

* Getting bin_pyl to pass

* Getting bin_pyl to pass

* Better handling of invalid json

* Getting bin_pyl to pass
2023-08-21 21:58:55 +05:30
Dan Funk a0202c6a5b Feature/onboarding ephemeral (#442)
* The onboarding controller should not save the process model to the database.  It creates a pile of pointless noise.  So just cleaning that up.

* run_pyl

* assure we can handle user tasks if they happen during on-boarding, while keeping the list of processes clean.
Lots of weird stuff getting run_pyl going.

* pyl

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-08-16 12:11:38 -04:00
danfunk dff2d56e56 Quick fix - don't display the onboarding instructions on every task page - and we should clean up the routes. 2023-08-14 16:31:28 -04:00
jasquat 224ff3efa2 use TextAreas for description fields in the frontend w/ burnettk 2023-08-10 10:56:16 -04:00
Kevin Burnett 9313a9f73a Feature/event payloads part 2 (#401)
* Revert "Revert "Feature/event payloads (#393)""

This reverts commit 95fafb7af1.

* Revert "Revert "poet not available in container""

This reverts commit 140220498c.

* Revert "Revert "Run event payloads data migration from background processor (#399)""

This reverts commit 2afced3a51.

* Revert "Revert "using new spiff api to get info about events. w/ elizabeth""

This reverts commit af857fee22.

* Revert "Revert "fix tests for waiting_event_can_be_skipped""

This reverts commit 886e6bd42a.

* push image for preview env

* default scripts to localhost w/ burnettk

* use the bugfix/update-split-task-inputs spiffworkflow branch w/ burnettk

* removed debug json files

* use main for spiffworkflow

* do not attempt to highlight non-diagram boundary items w/ burnettk

* updated SpiffWorkflow to fix multiple signal event issue w/ burnettk

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-10 18:24:49 +05:30
Dan Funk cd9cd0d652 minor bug fixes the bpmn-io editor so messages work again. (#433) 2023-08-04 16:17:26 -04:00
danfunk c3132b004b bump to latest version of bpmn-js-spiffworkflow. 2023-08-04 11:25:32 -04:00
danfunk 6ec8a9800c force-off darkmode around markdown. 2023-08-03 16:20:46 -04:00
jasquat 48893cae13 fixed linting issues w/ burnettk 2023-08-03 15:38:02 -04:00
danfunk deb16b80c3 fixing linting errors. 2023-08-03 15:27:45 -04:00