Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Investigation into Svelte re-write #1005

Draft
wants to merge 200 commits into
base: develop
Choose a base branch
from
Draft

Investigation into Svelte re-write #1005

wants to merge 200 commits into from

Conversation

chrisvire
Copy link
Member

No description provided.

@chrisvire chrisvire self-assigned this Nov 1, 2023
@chrisvire chrisvire force-pushed the develop branch 2 times, most recently from b3d0511 to eb5224e Compare February 29, 2024 17:05
@@ -51,5 +51,8 @@
"type": "module",
"volta": {
"node": "18.16.1"
},
"dependencies": {
"zod": "^3.23.8"
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Normally, all dependencies with Svelte-kit are devDependencies.

@@ -4,19 +4,31 @@

-->
<script lang="ts">
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

FYI, "Internationalized" is probably not needed in the component name. Everything should internationalized.

FyreByrd and others added 30 commits November 18, 2024 08:48
* Wrap organization dropdown in label instead of span

* Verify user route permissions and update TODOs

* Smaller organizations query in root layout

* Compress loaded data for users page

* Allow user to be locked and unlocked

* Server-side search and pagination for users

* Move user minification to users/common
* Add projectFilter and projectSearchSchema to lib/projects/common

* Dispatch event from LanguageCodeTypeahead

* Paginate project directory

* Add tooltip to directory search

* Fix line breaks in directory message
* Add projectFilter and projectSearchSchema to lib/projects/common

* Add i18n for Scriptoria appName in transitions on /projects

* Paginate projects/filter

* Reset action button layout
* Fix sort direction picker

* Move SortTable to lib

* Better configuration and styling for SortTable

* Change prop items to data

* Add id field to columns

* Add dispatch for server-side sorting

* Tweak the render method slightly

* Use updated SortTable

* Add i18n to tables

* Add documentation comments to SortTable

* Break bytesToHumanSize to lib/utils
Now that the codebase has been upgraded to depend on Node 22, Set operations are supported server-side.
This is a remnant of when the size selector for the Pagination component was a text input, rather than a dropdown.
…1-1 (#1053)

* Reset WorkflowInstances to 1-1 with Products

* Switch workflow methods back for 1-1

* Only write snapshot if needed

* Delete instance if terminal
* Update job execution to Micah's suggestion

* Rename/Reorganize jobs

* Create configuration object for default retries

* Reorganize queues

* Add a worker to actually process the default recurring queue

* Change queue name to enum type

* Add third queue for repeating jobs

While testing with actual builds, I noticed that we would get close to 20 individual check jobs, which really clogged up the administration dashboard.

* Rename queues per Micah's suggestion

* Disable namespace warning

* Remove bullmq page from admin settings

* Reorganize queues again

One queue/worker for each category of job

* Import workers as package

* Fix adapter issues

* Pass queue name to super constructor

* Remove queue name from child constructors

* Allow any return type for BullMQ jobs (only for debugging)

* Switch job executors to be just functions

---------

Co-authored-by: 7dev7urandom <30197373+7dev7urandom@users.noreply.github.com>
Handle old user logins
Many bug fixes
Cleanup and refactor code
Remove unnecessary components from project view
* Use SortTable for workflow-instances

* Server-side sort and search

* Fix i18n for workflow instances

* Add Project and Organization to display

* Add relative time to display

* Return instance and definition IDs in snapshot

* Simplify instances i18n

* Display org, project, workflow for specific

* Reorder columns, add project link

* Use product definitions

* Move workflow instances to own route

* Hide non-authorized routes in sidebar

* Componentize product details modal

* Add product details and change data layout

* Add link to Organization Projects

* Remove unnecessary check against page.size

* Fix horizontal scroll on mobile
* Add handler to get project access token

Any queries against this route are currently returning the login page instead of the expected response, so I have been unable to test this further. Will need to figure out later.

* Move api to unauthenticated endpoint

* Move original function behind wall, add proxy

* Attempt redirect

* Add legacy token verification

* Add project access token back to api

* Match output to SAB

* Reshape error messages to SAB expectations

* Write name for user access

* Return correct format for SAB to print error

---------

Co-authored-by: 7dev7urandom <30197373+7dev7urandom@users.noreply.github.com>
* Add stub for recurring system status check job

* SystemStatusCheck Job
* Rewrite ReassignUserTasks to ModifyUserTasks

Handles multiple potential use cases:
- Reassign tasks from one list of users to another.
- Delete all tasks for a product/project, optionally limit by user or user role.
- Create new tasks, optionally by user or role.
- Update tasks, optionally by user or role. (This is the main one used by workflow)

In all cases, can be applied to either a single product, or all products within a project. Will also refresh the PreExecuteEntries (i.e. blank-ish ProductTransitions that show the ideal path beyond the current workflow state).

Updated `databaseWrites/Projects.ts` and `workflow/index.ts` to use the new code.

* Remove UserTasks for deleted author

Will this result in the desired behavior if a user has multiple roles? What if, for some unfathomable reason, a user is both a project owner and an Author on the same project? As of right now, all tasks for that user in that project will be deleted, regardless of role. Should a user be prevented from having more than one role for a project?

* Improve return value

* Fixed a few things in the workflow logic for usertasks

Moved the delete tasks up so that they are properly deleted if the workflow is terminated.
Removed unneeded call to create ProductTransitions entries.

* Add roles column to UserTasks

* Properly handle task creation and deletion for authors

* Add/Remove tasks for OrgAdmins

* Fix orgadmin tasks

* Remove unnecessary data select

* Fix default for UserTasks.Role

* Show tasks in UI without duplicates
* Break bytesToHumanSize to lib/utils

* Display artifacts in product files

* Order builds correctly in display

* Break versionString into local function

* Show multiple, collapsable builds

* Close all but latest build by default

* Fix scrollbar

* Fix vertical layout

* X scroll for tables on mobile

* Paginate product files

* Show three builds per page by default

* Lighten active background on Pagination

* Collapse with click anywhere on header

* Don't collapse BuildArtifacts

* Add temporary fix for pluralization of product files

3 cheers for RegEx
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants