Commit Graph

1175 Commits

Author SHA1 Message Date
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
jasquat c086817810 upgraded cypress and moved code in helpers to ensure we do not need app code for cypress w/ burnettk (#431)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-03 15:08:45 -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 09794e9302 column names for tables in frontend should only have the first letter… (#425)
* column names for tables in frontend should only have the first letter of the first word capitalized

* forgot a couple field names w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-02 14:06:19 +05:30
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 8427f9d2fb Feature/metadata filtering (#418)
* added ability to filter metadata by is and contains w/ burnettk

* added the empty options for metadata filtering

* remove the filter when removing the corresponding column on the frontend

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-08-02 14:01:38 +05:30
jasquat 1bc8ffc47d allow setting a failed process instance to the suspended status w/ burnettk (#416)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-08-02 13:59:12 +05:30
jasquat 299f4a6823 return the process instance when interstitial process is complete and… (#421)
* return the process instance when interstitial process is complete and favor redirecting to it on the frontend

* upgrade certifi for snyk check

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-28 20:34:39 +05:30
jasquat 865c89e80f display the potential task owners or group in the interstitial info message w/ burnettk (#415)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-27 22:30:32 +05:30
jasquat cdaf2ea6c5 added a loading icon on task show page to avoid blank page when loadi… (#411)
* added a loading icon on task show page to avoid blank page when loading large datasets w/ burnettk

* fixed broken tests w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-27 17:00:16 +05:30
jbirddog 43beb916a3 Basic scaffolding for onboarding (#400)
* Wedge between InProgressInstances for default view customization

* Rename to OnboardingView, stubbed out api in the backend

* Flip between InProgressInstances and MyTasks via the backend

* WIP

* WIP

* Basic human task handling

* FE lint

* Getting ./bin/pyl to pass

* Suppress any exceptions during onboarding request

* Script to skip onboarding if already started

* Getting ./bin/pyl to pass

* Better default location

* PR feedback

* PR feedback

* PR feedback - add new endpoint to basic permissions

* Fix basic permissions test

* Add integration tests

* Getting bin_pyl to pass
2023-07-27 11:54:30 +05:30
jasquat 148bf386e3 attempt to save again if deadlock given for draft data save w/ burnettk (#410)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-26 20:38:17 +05:30
jasquat 58cc0d9c14 use the task_updated_at_in_seconds column on the pi show page like we do for the pi tables (#409)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-25 22:58:21 +05:30
jasquat c6b57c98fa Feature/date range validations (#406)
* added ability to compare date field against a date range field start or end

* added a couple of comments

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-25 22:57:07 +05:30
jasquat 755943d89d use editor when navigating to a process model file (#405)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-25 22:56:03 +05:30
Kevin Burnett 23e5fde06e make perspective dropdown bigger (#403)
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-25 22:55:11 +05:30
burnettk 2afced3a51 Revert "Run event payloads data migration from background processor (#399)"
This reverts commit ab5926aab1.
2023-07-19 11:43:42 -04:00
Kevin Burnett ab5926aab1 Run event payloads data migration from background processor (#399)
* move data migration code out of bin so it can be reused in background processor

* sleep for 5 minutes and update bpmn js to pull in some fixes from elizabeth

* update spiff to pull in parser update to make it act like before

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-18 10:50:07 -07:00
jasquat 9a1c23f22b fixed how button sets are displayed and removed test date range picker from secret list w/ burnettk (#397)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-17 22:14:10 +05:30
jasquat 78bffc8459 just ensure we have a value when creating date range objects w/ burnettk 2023-07-14 12:04:07 -04:00
jasquat 4e6ba9eb9d set the default date format back to y-m-d w/ burnettk 2023-07-14 11:33:12 -04:00
jasquat 8c9a4be4aa ensure we convert date ranges to ymd before saving to the task-data w/ burnettk 2023-07-14 11:28:00 -04:00
jasquat c1e0b58c07 only show helper text in the start date range and not both w/ burnettk 2023-07-14 10:41:18 -04:00
jasquat 72d5a16cbf alighn reset tooltip to top-left 2023-07-14 08:48:35 -04:00
jasquat bc8efc54a3 added a date range widget to frontend w/ burnettk (#392)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-14 15:46:34 +05:30
danfunk 8cfdcf4212 fixing the navigation bar highlight for data-stores 2023-07-13 13:23:46 -04:00
Dan Funk 73aed82f24 Feature/view data stores (#388)
* * Added /data-stores/ endpoint accessible by privileged users that will return a list of all data stores known to the system.
* Added a /data-stores/[type]/[name] endpoint that will return a list of all data stored within a data-store.
* Granted users with "elevated permissions" the right to access the data store.
* Added a "Data Store" link to the navigation bar beside messages.
* And a few useful tests.
* Still a little front end work to do to get it all looking pretty.

* Added a Data Store List component that, well, displays, you guessed it! A list of data stores and their contents.

Also, Carbon's paginator doesn't care how many pages you have, it's going to build the mother of all drop down lists - you got 60,000,000 records? Showing 5 at a time? It's going to be a dropdown list that contains all numbers between 1 and 12,000,000, because that makes sense! So, yea, not doing that, cutting it off at 1000 pages - you got more pages than that, the paginator can't take you there.  As you can show 100 items per page, that means you can access 100,000 items instantly.

* renaming data_store_items_list => data_store_item_list
2023-07-13 20:54:10 +05:30
jasquat 68acac0fce Feature/ignore save draft errors (#387)
* ignore it if the task cannot be submitted for saving draft data

* changed to handle the error on the frontend instead and do not save draft data if a manaul task

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-12 22:03:00 +05:30
jasquat dac2e28672 fixed ButtonSet import 2023-07-12 10:55:18 -04:00
jasquat 285294967d Feature/error to suspended state (#384)
* fixed suspended message w/ burnettk

* allow manually executing errored tasks when suspended w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-12 19:50:24 +05:30
jasquat 841f3ccc8c Feature/task assignment (#352)
* added an api to assign a list of users to a task w/ burnettk

* use the modal submit and close buttons when saving task data on the instance show page w/ burnettk

* switch save and cancel buttons on secrets new page w/ burnettk

* add some icons, tho still missing event stuff

* finished adding imporoved icons and fixing up task modal w/ burnettk

* added some user search options to assig tasks to w/ burnettk

* cleaned up task details modal and added call to backend to add potential users w/ burnettk

* fixed broken tests w/ burnettk

* removed some merge comments w/ burnettk

* process instance id is an int not a str w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-12 19:44:01 +05:30
jasquat 93b8c09e90 fixed linting issue 2023-07-12 08:38:38 -04:00
jasquat e2e7808f09 display the validation error message the user input w/ burnettk (#386)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-12 11:40:48 +05:30
jasquat 800b61cf36 fixed pagination of log tables and broken cypress tests w/ burnettk (#382)
* fixed pagination of log tables and broken cypress tests w/ burnettk

* wait before clicking the profile button instead of after w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-10 14:06:55 -04:00
burnettk 9285358e69 Merge remote-tracking branch 'origin/main' into deploy-app-dev 2023-07-08 11:58:23 -04:00
burnettk 417fe51faf fix compilation issue 2023-07-08 11:57:51 -04:00
Madhurya Liyanage 11ab2ff883 Merge branch 'main' into deploy-app-dev 2023-07-08 10:11:23 +05:30
Dan Funk 18ea7510c6 Feature/fix_action_column (#357)
* removing action column.

* adding the action column back in, and making it work.
2023-07-07 16:02:27 -04:00
jasquat b7627716df Merge remote-tracking branch 'origin/main' into deploy-app-dev 2023-07-07 11:18:52 -04:00
jasquat c112e65232 fixed linting issue w/ burnettk 2023-07-07 11:18:45 -04:00
jasquat 19d7a008d9 merged in main and resolved conflicts w/ burnettk 2023-07-07 11:04:11 -04:00
jasquat 90bfc53380 use a sha256 value as the id of the page when checking active-users w/ burnettk (#356)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-07 20:24:57 +05:30
Kevin Burnett e6094a83a8 do not convert null to a string when clearing out a typeahead field w/ burnettk (#373)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-07-07 20:21:22 +05:30
Dan Funk 1a6a2c0ae9 Feature/fix diagram zoom (#378)
* Revert "set undefined values to null rjsf form data w/ burnettk (#336)"

This reverts commit cca9b147f6.

* Quick test to check if calls are happening correctly to resize the diagram.

* Quick test to check if calls are happening correctly to resize the diagram.

* remove all the logic around fitviewport limitations, which doesn't seem to be requured.  For some reason (modeler as any).constructor.name return '_9' on the dev server, rather than returning 'Modeler', 'Viewer' etal ...

* drop console log

* Clean up comments.

---------

Co-authored-by: Jakub Sokołowski <jakub@status.im>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: Madhurya Liyanage <liyanagemadhurya@gmail.com>
2023-07-07 10:11:12 -04:00
danfunk e099fc0edc remove all the logic around fitviewport limitations, which doesn't seem to be requured. For some reason (modeler as any).constructor.name return '_9' on the dev server, rather than returning 'Modeler', 'Viewer' etal ... 2023-07-06 20:03:30 -04:00
danfunk 475417b9a6 Quick test to check if calls are happening correctly to resize the diagram. 2023-07-06 18:30:44 -04:00
danfunk 1b5c3b54cb Quick test to check if calls are happening correctly to resize the diagram. 2023-07-06 17:29:16 -04:00
Dan Funk 746a41c524 Feature/never ending UI tweaks 2 (#377)
* Using a rem based measurement rather than pixels, to better handle 4k displays and their adjusted font sizes - and setting relatively large breakpoints and page width limits that should result in a better view of the tables on the home page.

* Here is the latest:

    * Improved metadata display on the process instance page, with better widths, grayed out text (which I lost at some point).
    * Reduced the End Task "instructions for end user" size, and added a fade out on the bottom.
    * Improved the "chicken buttons" for custom columns on the process instance list filters, which can now accommodate very long names for the columns.
    * Removed the "show-page" which is more consistently handled by the content wrappers for the different routers.
2023-07-06 16:38:44 -04:00
Dan Funk dbe52af9f4 Feature/never ending UI edits (#374)
* Basically shift our ui to something similar to Google's search results page - where we have a strong left padding that offsets against our logo, and a fixed width for our content, that can be breached in some circumstances (such as when tables are very large).  This breaking can happen for both our standard tables, as well as markdown tables.   This does not include the fix for locking - which is still in progress.

* modified routes so that most routes are within a "fixed-width-container" but our BPMN editor can still take up 100% of the screen.
* fixed-width-container has breakpoints at 1056 (remove all padding) and 1400 (limit width to a max of 1280)  but in all cases allow for an overflow of visible - so tables can extend beyond this limit when needed,
* Removed "Messages" as a heading from the tab view - but left on the /messages route.

* Lint fixing
2023-07-06 09:41:18 +05:30
danfunk d56809b141 Lint fixing 2023-07-04 10:22:14 -04:00
Dan Funk 771f54b7b4 Bug/UI fixes (#369)
* re-enable the move canvas and zoom modules, and try like hell to get the !@#$! display to zoom to fit consistently. As the from_xml does not trigger the "import.done" where the resize is happening.

* Clicking on timestamp should reload the page so we are observing the diagram at the correct point in time.

* Use a grid rather than a stack for the filter buttons, make them a consistent width, and force the close "x" button to the far right.

* Better handling the lots and lots of metadata fields in both the process instance list table, and in the metadata information on the process instance view page.

* Using DL rather than Carbon's grid, because my mind was starting to break.
* Process instance List Tables are set to optimize their max width for readability.

* assure the diagram editor is top aligned - otherwise when the proprties pannel get's super duper long (as with recent additions to multi-instance) we don't end up with weird spaces showing up above a center aligned canvas.
2023-07-04 09:29:46 +05:30
jasquat e4bf22f5cf Feature/interstitial summary part 3 (#367)
* throw an error if backend gives a 500 from interstitial page w/ burnettk

* turn unexpected errors for the interstitial page into event stream responses to avoid error misdirection

* pyl

* raise the api_error from the original and make the render_data method private

* Feature/interstitial summary (#337)

* * Process instance logs and messages are now components rather than pages, and are included within tabs on the process instance page, along with the diagram.
* Removed the Zoom and Move modules when showing the readonly
  Diagram.  Assured this readonly view is resized to fit the space when possible.
* Checkbox Widget no longer displays a duplicate label.
* CSS Tweaks
  * All pages are limited to a max display width of 1440, with auto margins to center the main content on the page.
  * "Show" pages, like ProcessInstanceShow, TaskShow have the primary content limited to 1000, also with auto-margins.
  * Paragraphs, headings, blockquotes, list items are limited to a width of 640.
  * Reduced margin bottom on all breadcrumbs.
  * Slightly reduced the width and margin of tiles
  * ordered lists and unordered lists show numbers and bullets now.
* End user Instructions component can, optionally, auto-collapse, so that only a portion is displayed, along with a toggle.  This is how it is set up for the ProcessInstanceShow page.
* Greatly reduced the lag in the interstitial page when doing a re-direct.

* run_pyl

* kill console

* wait for permissionsLoaded too since we are using ability.can

* Previous change removed the top level Messages page - this re-adds it.

* I am always, ALWAYS shocked at how I can not wrap my head around when and where to use "useEffect".

This should cause the show/hide Instructions toggle to only show when useful.

* Minor cleanup on the process instance properties display.

* linting

---------

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

* Fix a linting error.

* minor permissions related fixes for the new ui.

* Revert "Revert "Feature/better subworkflow management (#331)""

This reverts commit 48dcde8faf.

* do not execute tasks from the process instance show page w/ burnettk

* pyl w/ burnettk

* Very minor UI tweak to resolve a number of issues mentioned in SPIFF-316 Notion Ticket:

* Markdown links now open in a new window
* Tables on the home pages are now contained within Grids to better align them with the other content that is in a grid.
* Right aligned the "process instance list link" button to it is flush right with the table underneath
* Gave a little more breathing room the content on the info/metadata in the process instance view .

* updated docker image build action to contain the appropriate version info w/ burnettk

* properly resize to the available columns depending on s/m/l

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: Dan Funk <daniel.h.funk@gmail.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-07-03 10:54:54 +05:30
Dan Funk 532c0f841f bumping version of BPMN-JS-Spiffworkflow (#366) 2023-06-30 23:17:58 +05:30
Kevin Burnett d52e4dae75 when creating a process instance, use for-me path for perms (#354)
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-06-29 16:37:19 +05:30
jasquat 3a8cfd2642 disable form submit buttons when appropriate, lock process instance when sending events, and ensure return events match ones associated with desired guids w/ burnettk (#359)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-29 09:36:47 +05:30
jasquat 15b2947107 Feature/draft data in join table (#355)
* added a new model to store task draft data in a join table

* cleaned up using the join table for draft table w/ burnettk

* created new single migration for changes w/ burnettk

* added hidden form which autosaves without validations w/ burnettk

* change close button name since it does indeed save on close now

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-28 22:23:39 +05:30
jasquat 51cfcfa2a5 Feature/autosave and null form data (#346)
* autosave form data on change w/ burnettk

* tests are now passing and pyl

* do not do anything on autosave success w/ burnettk

* merged autosave and null form data branches together w/ burnettk

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-26 18:26:56 +05:30
jasquat a9cc15177f updated usages of task_spec.spec for new spiff (#345)
* updated usages of task_spec.spec for new spiff

* removed unused attributes referring to call activities

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-26 11:57:32 +05:30
jasquat 3d113409b9 fixed lint issues 2023-06-23 08:50:48 -04:00
jbirddog 2c99e17381 Show callers for non primary files (#334)
* WIP - working with multiple process ids, need to return a file's process ids

* Send bpmn process ids back with bpmn files

* Getting ./bin/pyl to pass

* Fix up unit test

* Wire up the front end

* Pre pr cleanup
2023-06-23 11:45:23 +05:30
Kevin Burnett 7de0d97303 Feature/better subworkflow management part 2 (#341)
* Revert "Revert "Feature/better subworkflow management (#331)""

This reverts commit 48dcde8faf.

* updated SpiffWorkflow to fix infinite loop in task trace w/ burnettk

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-20 10:37:49 -04:00
burnettk ecf0a423be Revert "processes to process models"
This reverts commit 294eff7873.
2023-06-19 09:08:46 -04:00
burnettk 294eff7873 processes to process models 2023-06-19 08:27:06 -04:00
burnettk 87f32ac687 Revert "set undefined values to null rjsf form data w/ burnettk (#336)"
This reverts commit cca9b147f6.
2023-06-19 08:19:49 -04:00
burnettk 53d73e13a3 Revert "Feature/interstitial summary (#337)"
This reverts commit c48f3a458b.
2023-06-19 08:19:36 -04:00
burnettk 916324404e Revert "Fix a linting error."
This reverts commit d1a1e40f29.
2023-06-19 08:19:29 -04:00
burnettk 5b7a4c10e2 Revert "minor permissions related fixes for the new ui."
This reverts commit 284d12e32c.
2023-06-19 08:19:23 -04:00
danfunk 284d12e32c minor permissions related fixes for the new ui. 2023-06-16 12:00:27 -04:00
danfunk d1a1e40f29 Fix a linting error. 2023-06-16 10:22:50 -04:00
Dan Funk c48f3a458b Feature/interstitial summary (#337)
* * Process instance logs and messages are now components rather than pages, and are included within tabs on the process instance page, along with the diagram.
* Removed the Zoom and Move modules when showing the readonly
  Diagram.  Assured this readonly view is resized to fit the space when possible.
* Checkbox Widget no longer displays a duplicate label.
* CSS Tweaks
  * All pages are limited to a max display width of 1440, with auto margins to center the main content on the page.
  * "Show" pages, like ProcessInstanceShow, TaskShow have the primary content limited to 1000, also with auto-margins.
  * Paragraphs, headings, blockquotes, list items are limited to a width of 640.
  * Reduced margin bottom on all breadcrumbs.
  * Slightly reduced the width and margin of tiles
  * ordered lists and unordered lists show numbers and bullets now.
* End user Instructions component can, optionally, auto-collapse, so that only a portion is displayed, along with a toggle.  This is how it is set up for the ProcessInstanceShow page.
* Greatly reduced the lag in the interstitial page when doing a re-direct.

* run_pyl

* kill console

* wait for permissionsLoaded too since we are using ability.can

* Previous change removed the top level Messages page - this re-adds it.

* I am always, ALWAYS shocked at how I can not wrap my head around when and where to use "useEffect".

This should cause the show/hide Instructions toggle to only show when useful.

* Minor cleanup on the process instance properties display.

* linting

---------

Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-06-16 09:53:20 -04:00
jasquat cca9b147f6 set undefined values to null rjsf form data w/ burnettk (#336)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-16 09:52:29 +05:30
burnettk 48dcde8faf Revert "Feature/better subworkflow management (#331)"
This reverts commit 23af5cbbe4.
2023-06-15 15:10:48 -04:00
jasquat 23af5cbbe4 Feature/better subworkflow management (#331)
* 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

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-15 10:31:42 -04:00
jasquat 9b9ec335b3 format date picker helper text width to match the date widget itself … (#330)
* format date picker helper text width to match the date widget itself w/ burnettk

* not sure we need xdoctest

---------

Co-authored-by: jasquat <jasquat@users.noreply.github.com>
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-06-13 20:16:26 +05:30
Elizabeth Esswein 5652f3981b restore loop collection references (#328)
* restore loop collection references

* ignore dmn files when restoring references
2023-06-12 18:32:16 -04:00
Kevin Burnett 7ab4d40ff4 make primary file use font style italics (#324)
Co-authored-by: burnettk <burnettk@users.noreply.github.com>
2023-06-12 06:42:30 -07:00
jasquat 121b3c7cc9 some fixes and updates to help with running an acceptance test model (#323)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-09 11:19:02 -07:00
jasquat ee18052be9 added css to make the hr elements look like they do for bootstrap w/ burnettk (#320)
Co-authored-by: jasquat <jasquat@users.noreply.github.com>
2023-06-09 11:50:42 -04:00