Skip to content

Release 0.31.2#1166

Merged
Tim020 merged 5 commits into
mainfrom
dev
Jun 8, 2026
Merged

Release 0.31.2#1166
Tim020 merged 5 commits into
mainfrom
dev

Conversation

@Tim020

@Tim020 Tim020 commented Jun 7, 2026

Copy link
Copy Markdown
Contributor

No description provided.

Replicates the cue editor's CSS :has() pattern — when the user hovers
the Edit button or dropdown caret in the script viewer, the full row
gets a subtle background highlight to make the target line clear.

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions github-actions Bot added small-diff Small pull request client Pull requests changing front end code client-v3 labels Jun 7, 2026
@Tim020 Tim020 added release Pull requests for creating a new release and removed small-diff Small pull request client Pull requests changing front end code client-v3 labels Jun 7, 2026
* Fix cut mode in V3 script editor: clickable links and clean exit

Bug 1: canEdit was computed as `isEditor && !cutMode`, so lines were
never rendered as clickable cut anchors (required canEdit && isCutMode).
Fix: canEdit = isEditor only (matching V2 behaviour); all edit-only
surfaces already have independent !isCutMode guards.

Bug 2: stopEditing() always called emptyScript() + loadPage() causing a
blank-page flash. Also, currentEditor was not cleared synchronously, so
edit buttons briefly appeared after setCutMode(false) before the WS
response arrived. Fix: skip the reload in cut mode (tmpScript is never
modified), and clear currentEditor synchronously before sending
STOP_SCRIPT_EDIT.

Adds 6 Playwright E2E tests covering the full cut mode workflow.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Fix Prettier formatting in ScriptEditor.vue

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions github-actions Bot added small-diff Small pull request client Pull requests changing front end code client-v3 labels Jun 7, 2026
@github-actions

github-actions Bot commented Jun 7, 2026

Copy link
Copy Markdown

Client Test Results

128 tests   128 ✅  0s ⏱️
  6 suites    0 💤
  1 files      0 ❌

Results for commit 9f519f6.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Jun 7, 2026

Copy link
Copy Markdown

Client V3 Test Results

23 tests   23 ✅  0s ⏱️
 2 suites   0 💤
 1 files     0 ❌

Results for commit 9f519f6.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Jun 7, 2026

Copy link
Copy Markdown

Python Test Results

  1 files    1 suites   2m 7s ⏱️
662 tests 662 ✅ 0 💤 0 ❌
667 runs  667 ✅ 0 💤 0 ❌

Results for commit 9f519f6.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Jun 7, 2026

Copy link
Copy Markdown

Playwright E2E Results (chromium)

175 tests   175 ✅  1m 52s ⏱️
 14 suites    0 💤
  1 files      0 ❌

Results for commit 9f519f6.

♻️ This comment has been updated with latest results.

@github-actions

github-actions Bot commented Jun 7, 2026

Copy link
Copy Markdown

Playwright E2E Results (firefox)

175 tests   175 ✅  1m 50s ⏱️
 14 suites    0 💤
  1 files      0 ❌

Results for commit 9f519f6.

♻️ This comment has been updated with latest results.

* Add rows per page selector to all paginated tables (#1164)

Adds a PaginationControls shared component to every paginated table in both
client/ (Vue 2) and client-v3/ (Vue 3) — options 10, 15, 25, 50, All with
15 as the default. Selecting "All" (value 0) shows all rows and hides the
page navigation. A usePagination composable bundles perPage + currentPage
refs with an auto-reset watcher for the Vue 3 client.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Extract pagination watch into paginationMixin (client/)

The rowsPerPage→currentPage reset watcher was duplicated across all
single-table components. A new paginationMixin centralises rowsPerPage,
currentPage and the watch in one place; components just declare
mixins: [paginationMixin] and drop the duplicated data/watch blocks.
ConfigSystem's non-standard perPage/currentPageClients fields were also
renamed to match the mixin, standardising its default from 5 to 15.
Multi-table components (PropsList, SceneryList, StageManager) retain
their own watches as they reset multiple independent page counters.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Fix pagination controls alignment and E2E test locators

- Add mb-0 to b-pagination in client/ (Bootstrap 4 reboot gives <ul>
  margin-bottom:1rem; applying mb-0 directly to the rendered <ul> removes it)
- Add :deep(.pagination){margin-bottom:0} in client-v3/ (BPagination wraps
  the <ul> in a <nav>; class on BPagination targets the nav, so the child
  ul's margin must be reset via scoped CSS to prevent it inflating the flex
  item's height and pushing the buttons above the centre line)
- Fix E2E strict-mode violation: scope 'Rows per page' label assertion to
  the PaginationControls container via nav[aria-controls="character-table"]
  parent, since BTabs keeps all tab panes in the DOM simultaneously
- Fix E2E third test: use nav[aria-controls="character-table"] directly
  (the nav IS the element with aria-controls; previous locator searched
  for a nav inside the nav, trivially matching zero elements)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Restore bottom spacing on PaginationControls via mb-3 on wrapper

The pagination ul's margin-bottom:1rem was removed to fix flex alignment,
but it was also providing visual breathing room below the controls. Add
mb-3 (=1rem) to the outer wrapper div to restore that spacing explicitly,
separating the two concerns.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* Hide pagination controls when rows don't warrant them; fix E2E locators

Component behaviour:
- Entire PaginationControls hidden when totalRows ≤ smallest option (10);
  no point offering a rows-per-page selector when there isn't enough data
  to paginate even at the tightest setting
- Pagination nav hidden when totalRows ≤ perPage (all rows fit on one page)
  or when perPage = 0 (All selected)
- Both conditions derived from PER_PAGE_OPTIONS so the threshold stays in
  sync with the options array automatically

E2E fixes (06-show-config-characters.spec.ts):
- BVN renders BPagination as <ul role="menubar">, not <nav> — aria-controls
  lives on each <button class="page-link">, not on a nav wrapper; replaced
  all nav[aria-controls] locators with select#<id> and button[aria-controls]
- Added test verifying controls are hidden with 1 character (below threshold)
- Added loop that creates 10 extra characters (11 total) to bring totalRows
  above the minimum, then tests selector visibility, options, and nav
  show/hide behaviour end-to-end

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
@github-actions github-actions Bot added large-diff and removed small-diff Small pull request labels Jun 8, 2026
@Tim020 Tim020 enabled auto-merge June 8, 2026 00:15
@github-actions github-actions Bot added the server Pull requests changing back end code label Jun 8, 2026
@sonarqubecloud

sonarqubecloud Bot commented Jun 8, 2026

Copy link
Copy Markdown

@Tim020 Tim020 merged commit d74631c into main Jun 8, 2026
41 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

client Pull requests changing front end code client-v3 large-diff release Pull requests for creating a new release server Pull requests changing back end code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant