[pull] latest from ag-grid:latest - #854
Merged
Merged
Conversation
…ormatter docs (#14648) * [AG-17044] Test(advanced-filter): bigint custom parser coverage and formatter docs Adds regression coverage for the QA reproduction paths and documents `bigintFormatter`, which had no prose documentation. - Advanced Filter: a decimal operand entered in the Filter Builder is stored canonically, matches, and is displayed through the column's `bigintFormatter`. - BigInt Filter: hex `from`/`to` values are both parsed for a range condition. - Docs: `bigintFormatter` is the inverse of `bigintParser`; the model stores a canonical decimal string, so entered values are echoed back in the formatter's format in the floating filter and the Advanced Filter. * [AG-17044] Test(advanced-filter): assert builder value pill formatting before apply * [AG-17044] Fix(advanced-filter): open builder value editor with the formatted bigint operand The builder value editor seeded its input from the raw model value, so a bigint operand stored as canonical decimal replaced the formatted text shown on the pill as soon as the editor opened. Edit the displayed text instead for bigint columns, whose bigintFormatter output the column's parser accepts. * [AG-17044] Fix(advanced-filter): keep the typed bigint operand syntax in the builder The builder rebuilt its pills from the canonical model value, so a bigint operand typed in a syntax only the column's bigintParser understands showed as decimal while the filter text bar still showed what was typed. Seed the builder from the expression parser's operand text so the two surfaces agree across an apply. * [AG-17044] Refactor(advanced-filter): gate builder operand editing on a data type capability Replace the two hardcoded bigint comparisons with a single isOperandModelValueEditable predicate on AdvancedFilterExpressionService, and take forBuilder off the bean's getModel in favour of a named getBuilderModel.
…a11y and sandbox IDs (#14660) * AG-17996 - clear contact form errors as soon as a field is corrected QA TC1: tabbing past the unchecked data processing consent checkbox showed the required-consent error, and ticking the box left the error on screen until focus moved away again. react-hook-form's 'onBlur' mode validates on blur but does not re-validate on change before the first submit, so the error state went stale. 'onTouched' keeps the same first-validation-on-blur behaviour and adds re-validation on change, so the message clears immediately. This applies to every field on the form, not just the checkbox - correcting an invalid email now clears its error without needing to blur first. * AG-17996 - Update default values for consent fields * AG-17996 - address review findings on the consent field PRs Studio trial form (P1): the privacy notice was removed without the form gaining the consent controls that justified removing it elsewhere, leaving it collecting name and email with no disclosure at all. It now gets the same treatment as the other trial form - required data processing consent, optional marketing consent, and a France/Italy declaration that reveals optional email tracking consent - and sends all four in its JSON payload. Consent errors are now exposed to assistive technology (P2): the checkbox gets aria-invalid and aria-describedby pointing at the message, which carries a matching id and role=alert. Previously the error was an unassociated paragraph, so screen reader users had no way to learn why submission failed. Also fixes two pre-existing issues the review picked up (P2): - submitUrl was missing from the submit callback dependencies, so a changed prop would have kept posting to the previous endpoint - both trial forms were typed FunctionComponent rather than FunctionComponent<Props>, so the exported type was FunctionComponent<{}> and consumers could not type-check the submitUrl prop
… data types (#14662) * Updated the calculatedColumns examples to enable selecting matching formatting via cellDataTypes * Add a more detail cross link to calculated columns from formulas * Drop redundant see also entry * Declare the cost column in the dataTypes snippet
…filter input (#14587) * AG-17967 - [Side Bar] Columns Tool Panel: restore Enter-to-toggle in filter input Re-add a keydown listener on the Columns Tool Panel filter input so pressing Enter toggles visibility of the columns matching the current filter text, mirroring the still-present Set Filter mini-filter handler. Dropped in the v33 refactor. The toggle is deferred by the filter debounce delay so it targets the freshly-filtered set. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * AG-17967 - guard Enter-to-toggle against IME composition and suppressColumnSelectAll Codex review found the Columns Tool Panel filter Enter shortcut fired during IME composition and while the select-all capability was suppressed. Gate the shortcut on !e.isComposing and !suppressColumnSelectAll, mirroring the select-all UI visibility and the sibling Set Filter mini-filter handler. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * AG-17967 - replace Enter-to-toggle setTimeout race with event-driven filter flush On Enter in the Columns Tool Panel filter, flush any pending debounced filter change synchronously and then toggle, instead of deferring the toggle behind a DEBOUNCE_DELAY timer that guessed when the filter had settled. Matches the Set Filter mini-filter, which applies its filter immediately on Enter. A pending-flag guards the trailing debounce so it no-ops after a flush; the IME and suppressColumnSelectAll guards are kept. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * AG-17967 - preventDefault on Enter-to-toggle to avoid enclosing form submit Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * AG-17967 - guard FakeHScrollComp deferred scrollbar apply against teardown Leaked setTimeout fired after test teardown (document is not defined), surfaced in the unit-test shard by this branch's new test file. Out-of-scope CI unblock kept in its own commit. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * AG-17967 - track IME composition explicitly for Enter-to-toggle Safari guard Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…14664) * AG-18019 Suppress Edit Column Name menu item on calculated columns Add a !isCalculatedCol guard to the two default menu surfaces that offer editColumnName (the main column menu and the Columns Tool Panel context menu) so a calculated column exposes only the modal as its rename route, removing the two-source-of-truth conflict with the inline header editor. * AG-18019 Move calc-column edit guard into ColumnHeaderEditService.isEditable Consolidate the "hide Edit Column Name on calculated columns" guard into the single chokepoint both menu surfaces funnel through: ColumnHeaderEditService. isEditable (now public, exposed on IColumnHeaderEditService). The column menu factory and the Columns Tool Panel context menu delegate to it instead of recomputing headerNameEditable / isCalculatedCol locally. This also suppresses the item on the explicit-config path (array-form mainMenuItems / columnMenuItems), which the per-site guards missed: a developer opting the item in still gets the default of it being hidden for calculated columns, keeping the rename modal the single source of truth for the header. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> * AG-18019 Document Edit Column Name suppression on calculated columns Add the editColumnName built-in item to the Column Menu items list (it was a public DefaultColumnMenuItem token but absent from the list), noting it is never shown on a calculated column. Add a matching note to the Editable Header Name docs so both rename surfaces are covered. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> --------- Co-authored-by: claude[bot] <41898282+claude[bot]@users.noreply.github.com> Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )