3541 Commits

Author SHA1 Message Date
Tom Hykel c88d5122c3 Merge pull request #23673 from opf/task/64251-comments-show-wrong-date-in-their-headli
[STC-337] Fix rendered date of edited comments
2026-06-13 17:19:49 +02:00
Alexander Brandon Coles a8a9f2a176 Merge pull request #23558 from opf/bug/OP-19459-notifications-center-clipped-count-badges
[OP-19459] Use Primer Counter in notifications menu, fixing clipped counts
2026-06-13 13:10:39 +01:00
Tomas Hykel 07eca6d8cd [STC-337] Fix rendered date of edited comments 2026-06-12 16:37:36 +02:00
Alexander Brandon Coles 8cf44ef496 [OP-19459] Use Primer Counter in notifications menu
Switches from custom CSS implementation to `Primer::Beta::Counter` for
rendering counters in menu on Notifications page. Fixes clipping of
larger notification numbers (≥ 3 digits), including applying rounding
of very large numbers (e.g. `4k+`).

https://community.openproject.org/wp/OP-19459
2026-06-11 16:53:08 +01:00
Klaus Zanders 24a5b24bcd Merge pull request #23661 from opf/wire-up-edit-work-package
[Resource Management] Allow editing Work on the WP from the Resource Planner
2026-06-11 16:19:17 +02:00
Henriette Darge 454bf70b0e Merge pull request #23651 from opf/bug/dream-724-search-input-is-not-initially-focused
[DREAM-724] Search input is not initially focused
2026-06-11 07:50:46 +02:00
Klaus Zanders 1d91460c84 Extract progress modal form glue into a shared ModalParams concern 2026-06-10 15:40:15 +02:00
Oliver Günther d851d25524 Merge remote-tracking branch 'origin/release/17.5' into dev 2026-06-10 11:29:44 +02:00
Henriette Darge fa766e315f Automatically focus the search input when the project selector is opened 2026-06-10 08:01:25 +02:00
Mir Bhatia 9f89ecda16 Merge pull request #23166 from opf/implementation/74725-build-select-panel-quickfilter
[#74725] Build select panel quickfilter
2026-06-09 15:38:06 +02:00
Kabiru Mwenja bb317278ba Merge pull request #23582 from opf/bug/stc-811-documents-pagination-breaks-upon-filtering-the-list
[STC-811] Fix pagination for filtered Documents & Reserved identifiers
2026-06-09 14:32:29 +03:00
ulferts db815d0d22 Merge remote-tracking branch 'origin/dev' into merge-release/17.5-20260609045502 2026-06-09 09:32:19 +02:00
Mir Bhatia 6f0e53f406 Please rubocop 2026-06-09 09:05:28 +02:00
Mir Bhatia 6f207589ef Update label to change colours and include counter conditionally 2026-06-09 08:53:15 +02:00
Mir Bhatia 7957079830 Add clear button and turbo navigate instead of full page reload 2026-06-09 08:53:14 +02:00
Mir Bhatia eaf8eb0c17 Add single select version 2026-06-09 08:53:12 +02:00
Mir Bhatia 141f4b1669 Improve async version 2026-06-09 08:53:11 +02:00
Mir Bhatia 1d8329c220 Try async fetch 2026-06-09 08:53:08 +02:00
Mir Bhatia cc3c3fbdf6 Add component specs 2026-06-09 08:51:19 +02:00
Mir Bhatia addc37c0ff Rename QuickFilter::SegmentedControlComponent 2026-06-09 08:51:17 +02:00
Mir Bhatia e0d7aff43a Add QuickFilter::SelectPanelComponent 2026-06-09 08:45:13 +02:00
Tomas Hykel e9f0615e51 apply the index overload via optional pagination_params 2026-06-08 21:54:28 +02:00
Henriette Darge 7411f1d985 Set min-height to avoid label being cut off 2026-06-08 11:01:35 +02:00
Henriette Darge 396de9362f [74625] Make project hierarchy collapsable in the global project selector (#23137)
* Use new async FilterableTreeView for global project selector

* Remove replaced angular component

* Fine tune sorting and expansion state of the new project selector

* Update primer to 0.86.1

* Add workspace information and filter results hierarchy information to project selector

* Include review feedback: Harmonize I18n keys, fix visible scope, use guarded local storage

* Add a turboFrame in the project select overlay to only load the projects when it is actually opened

* Restore BIM tab styles which were broken for a while already but the new project selector changes made it so bad that the test broke because the plus icon was overlapping the checkbox

* Clarify spec expectation
2026-06-08 08:14:47 +02:00
Kabiru Mwenja fd22629702 Code Maintenance/STC-462: Tidy the activity-tab paginator and centralise filter modes (#23552)
https://community.openproject.org/wp/STC-462

Two readability passes over the work package activity tab, no behaviour change. The paginator's private methods are reordered to follow their call order so the file reads top-down from `#call`, and the three activity filter modes (`:all`, `:only_comments`, `:only_changes`) — until now bare symbols duplicated across the controller, paginator, journal components and the hidden form — move into a single `WorkPackages::ActivitiesTab::Filters` module so the modes have one source of truth and can't drift apart. The diff reaches beyond the paginator into the controller, several components and a form, since that's where the symbols were scattered.
2026-06-05 16:50:08 +03:00
Tomas Hykel 285f3381a9 [STC-811] Fix pagination for filtered Documents & Reserved identifiers 2026-06-05 14:18:05 +02:00
Kabiru Mwenja 5fdf57df69 Defer activity-tab sequence_version to anchor resolution
The work package activity tab computed a per-journal sequence_version on
every render — a ROW_NUMBER() window function over a LATERAL join — only to
stamp the legacy data-anchor-activity-id that #activity-N deep links rely on.
Nothing mints those links anymore; copy and share links use
#comment-<journal id>, which needs no extra query.

The activity number is now resolved on demand. Only a request carrying
?anchor=activity-N runs the window function, mapping the number to a journal
id the paginator exposes as resolved_anchor. The view hands that to the
client, which rewrites #activity-N to the canonical #comment-<id> and scrolls
using the comment anchor already present in the DOM. Default renders no longer
touch the window function.

References WP #68063.
2026-06-05 14:26:04 +03:00
Alexander Brandon Coles 71c3cec789 Merge pull request #23488 from opf/code-maintenance/75446-filters-form-component-rework
[OP-19415] Convert FilterForm to ViewComponent
2026-06-03 15:58:36 +02:00
OpenProject Actions CI 13c2ee75ba Merge branch 'release/17.5' into dev 2026-06-03 12:57:00 +00:00
Behrokh Satarnejad 78f5124afd [OP-19404] Section cannot be dragged and dropped outside of current view (#23527)
Fix type form section drag auto-scroll
2026-06-03 14:53:34 +02:00
Kabiru Mwenja 07029e9f26 Merge pull request #23514 from opf/bug/stc-742-admin-page-for-semantic-ids-long-ids-cause-overflow
Bug/STC-742: Fix column overflow in semantic ID autofix preview table
2026-06-03 12:13:22 +03:00
Kabiru Mwenja 284e62abbf Switch to inline message component as the more conventional structure
Discussed in UX meeting an accepted:
https://community.openproject.org/meetings/10359#outcome-3654
2026-06-03 11:27:28 +03:00
Pavel Balashou 5f962c1831 Merge pull request #23482 from opf/bug/75436-jira-migrator-project-selector-ui-state-is-wrong-when-server-response-is-slow-for-some-request
[#75436] Jira Migrator Project Selector: UI state is wrong when server response is slow
2026-06-03 08:36:33 +02:00
Alexander Brandon Coles e7b2215248 Preserve caller data-controller on form wrapper
Use OpPrimer::AttributesHelper so a caller-supplied data-controller is
concatenated with the required filter--filters-form controller instead of
being overwritten. The wrapper spec now asserts both controllers survive.
2026-06-02 19:05:56 +02:00
Alexander Brandon Coles 1a623ddf4b Add controller-aware OpPrimer::AttributesHelper
Stimulus supports multiple controllers on one element, but Primer's
`merge_data` is not controller-aware and silently drops a caller's
`data-controller` when a component merges in its own. Treat `controller`
as a plural data attribute so the values concatenate instead.
2026-06-02 19:05:56 +02:00
Alexander Brandon Coles 8572a3c7be [OP-19415] Primer patterns in FilterFormComponent
Uses `ConditionalWrapper` to eliminate template duplication in the
`wrap_with_controller` branch, and `merge_data` from
`Primer::AttributesHelper` for Stimulus data attributes.

https://community.openproject.org/wp/OP-19415
2026-06-02 18:51:05 +02:00
Alexander Brandon Coles e7a01b741f [OP-19415] Convert FilterForm to ViewComponent
Replaces `Filters::FilterForm` (an `ApplicationForm` subclass) with
`Filters::FilterFormComponent` (an `ApplicationComponent`). The old form
overrode `:nodoc:` Primer hooks (`before_render`, `perform_render`) and
read semi-public ivars (`@builder`, `@view_context`). The new component
receives the builder as an explicit keyword arg and uses a standard ERB
template, reducing Primer internal coupling from five semi-public APIs
to one (`FormList`).

https://community.openproject.org/wp/OP-19415
2026-06-02 18:50:35 +02:00
Kabiru Mwenja 23736a12bd Add bottom spacing below the autofix preview table
The Convert identifiers button sat flush against the preview table.
The table now carries its own bottom margin (mb: 3, via Primer::Box),
matching the spacing the previous hand-rolled box had.
2026-06-02 17:23:35 +03:00
Oliver Günther 11dc79a74d Merge remote-tracking branch 'origin/release/17.5' into dev 2026-06-02 16:22:39 +02:00
Kabiru Mwenja e6a49517cd Render semantic ID autofix preview via BorderBoxTableComponent
Long identifiers overflowed into the neighbouring column. Replace the
hand-rolled flex table with the design-system BorderBoxTableComponent,
which handles column spacing, wrapping, and responsive stacking; the
project and previous-identifier columns wrap as main columns.
2026-06-02 16:56:12 +03:00
Henriette Darge c7cec8d567 Merge pull request #23492 from opf/op-19403-User-cannot-scroll-down-on-page-when-enterprise-banner-is-showing
[19403] User cannot scroll down on page when enterprise banner is showing
2026-06-02 14:58:54 +02:00
Henriette Darge f3207d5a02 Merge pull request #23455 from opf/75387-rename-section-action-is-called-rename-group
[75387] Updates the type form configuration labels to use the Figma terminology
2026-06-02 14:54:13 +02:00
Jens Ulferts bfd971bf3d Merge pull request #23443 from opf/bug/75241-no-undisclosed-mention-for-the-parent-work-package-on-the-wp-card-for-a-user-without-permissions-to-see-the-parent
[#75241] No "Undisclosed" mention for the parent work package on the wp card
2026-06-02 10:39:28 +02:00
Behrokh Satarnejad 74183943d5 Use test selectors instead of text selector 2026-06-01 18:58:47 +02:00
OpenProject Actions CI 523ef39065 Merge branch 'release/17.5' into dev 2026-06-01 14:42:29 +00:00
Behrokh Satarnejad 9f0cb66e43 Move EE banners into active configuration pane 2026-06-01 16:13:17 +02:00
Behrokh Satarnejad b28412185e [75384] Section cannot be dragged and dropped outside of current view (#23460)
Fix form configuration sections drag-and-drop scrolling
2026-06-01 16:04:52 +02:00
Henriette Darge 3e05ccb74d Merge pull request #23414 from opf/fix/73968-card-truncation
[73968] Add truncation rules for WPCard component
2026-06-01 14:15:04 +02:00
Alexander Brandon Coles ba80c908ca Merge pull request #21480 from opf/dependabot/bundler/dev/capybara_accessible_selectors-v0.16.0
Bump capybara_accessible_selectors from v0.15.0 to v0.16.0
2026-06-01 12:31:49 +02:00
Andrej 177ea97d6b Merge branch 'release/17.5' into bug/75436-jira-migrator-project-selector-ui-state-is-wrong-when-server-response-is-slow-for-some-request 2026-06-01 11:39:07 +02:00