docs(virtual-scroll): close template gaps and fix Angular accuracy issues - #852
viktorkombov wants to merge 16 commits into
Conversation
- Replace the removed igxForRemote input with igxForTotalItemCount in the igxForOf migration table; igxForRemote was removed in 6.1.0. - Set role="presentation" on igx-virtual-scroll inside igx-list so the items are not nested in a second list, and explain it under Screen Readers / ARIA. - Apply the same changes to the JP topic. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
|
@viktorkombov As you asked, I reviewed the JP wording again with an AI agent. I made a few small improvements, mainly to match the terms used in other JP topics and to make some sentences read more naturally. I committed them to a separate branch and opened #855 against Please merge #855 into this PR when it works for you. |
@jsakamotoIGJP, thanks for reviewing the JP wording and for the improvements! I’ll merge #855 into this PR. |
…e-check docs(jp): align Virtual Scroll terms and wording with other JP topics
- Add virtual-scroll-lt-a.png and the virtual-scroll-do / -do-not pair to the xplat assets and mirror them to the Angular en and jp image folders. - Render the anatomy with the Anatomy component and a numbered legend. - Add the Do/Don't image table after the When to use / When not to use labels, capped at 720px like the Avatar topic. - Remove the markdown Do/Don't text table; its rules are already covered in Getting Started, Usage and Troubleshooting. - Apply the same changes to the JP topic. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
…emplate into vkombov/task-851
- Show the Do/Don't pair in two full-width columns with a gap and a colored Do / Don't label under each image, as in the Figma design, instead of the 720px table. The images already carry the panel and the check / cross markers. - Stack the two columns on narrow screens. - Apply the same changes to the JP topic. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Replace the hand-rolled figure grid and its inline styles with the new igniteui-astro-components DoDont component in the EN and JP topics; the When to use / When not to use text moves into its description slots. Swap the Do/Don't screenshots for bare list crops — the component now supplies the canvas, padding and corner badges. Add DoDont/dont to cspell. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Enable React on the topic and add IgrVirtualScroll coverage (igniteui-react 19.9.0, which wraps igniteui-webcomponents 7.4.1): Getting Started, Prerequisites, Item Template, Data, Estimated Item Size, Orientation, Over-Scan, Scroll to Index, Infinite Scroll, Layout Complete, Properties, Events, Dependencies and the remote-data FAQ. Drop React from the toc exclude list in EN and JP. Widen the WebComponents blocks that already hold for React — the anatomy DOM, styling, ARIA, Do/Don't prose and Related Components — instead of duplicating them. React has no dataWindow, so the paged-data model stays Angular-only; the item template is a function returning JSX and the events are onStateChange / onDataRequest carrying a native CustomEvent. Also from the acceptance-criteria audit: - add keyFunction, new in webcomponents 7.4.1, to the props tables - add the defineAllComponents() Troubleshooting entry for 7.3.0 / 7.3.1 - render the Do/Don't pair without the unpublished DoDont component, and restore the When to use / When not to use labels after the image pair - drop the name and description props that <Anatomy> does not accept Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Each panel now carries its own image, label and guidance text, and the separate When to use / When not to use paragraphs are gone. Two layout bugs are fixed with it. The panel filled the whole grid track while the image was capped at the card width and centred in it, so the label sat at the track's left edge instead of under the card. And the tracks were 1fr, so the leftover track width added to the column gap, putting the panels 90px apart instead of 26px. The tracks are now the card width and the grid is start-aligned. Measured across 1920-390: 26px gap, label and text flush with the card, 26px from frame to label, 8px from label to text, no horizontal overflow. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
React 19.9.0 pins igniteui-webcomponents ~7.4.1, so the behaviour it changed is now released and the topic described the old behaviour. Element reuse: Known Limitations and Keyboard Interaction said items are removed from the DOM with their state. Elements are reused, so unbound DOM state shows on whichever item takes the element - the opposite hazard. Angular's @for also reuses the item wrappers, so this wording is shared rather than split. Averaged item size: Estimated Item Size, the scrollbar Troubleshooting answer and the item-size FAQ told readers to tune estimatedItemSize. On React and WebComponents the measured average now replaces the estimate for unmeasured items. Split per platform, since Angular has no equivalent. keyFunction was in the props tables but explained nowhere; Data now covers it, as the answer to sorting, inserting and removing. Also removes the defineAllComponents() Troubleshooting entry added in 2b04648. It was wrong: defineAllComponents() does not list the Virtual Scroll in 7.3.0/7.3.1, but IgcComboComponent declares it as a dependency and registerComponent() calls register() on every dependency, so the element was defined regardless. Alongside it, the Do/Don't section gains a base paragraph in the manner of the Card topic, the pair is centred in the content column instead of leaving its slack on one side, and it keeps 48px before the next section. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Closes #851
Summary
Adds the design team's anatomy and Do/Don't images to the Virtual Scroll topic, adds the React platform (
IgrVirtualScroll, new in igniteui-react 19.9.0), closes the template gaps from the audit, and corrects the prose that igniteui-webcomponents 7.4.1 invalidated. EN and JP are both updated; JP builds on the native check in #855.Changes
Reactfrom the toc exclude list in EN and JP and added React bodies to 14 sections (Getting Started through FAQ). React has nodataWindow, so Paged Data stays Angular-only;itemTemplateis a function returning JSX, and the events areonStateChange/onDataRequestcarrying a nativeCustomEvent. Verified by compiling againstigniteui-react@19.9.0+ React 19, not from the release notes, which document no API. WebComponents blocks that already hold for React (anatomy DOM, styling, ARIA, Do/Don't prose, Related Components) were widened tofor="React, WebComponents"rather than duplicated.anatomy-content-light/virtual-scroll-lt-a.pngrendered with<Anatomy>and a 1–5 legend. Dropped thenameanddescriptionprops, which<Anatomy>does not accept and silently discards.keyFunctionadded to the props tables and explained under Data; the averaged-item-size behaviour split into Angular vs React/WebComponents in Estimated Item Size, Troubleshooting and the FAQ; the element-reuse behaviour corrected in Known Limitations, Keyboard Interaction and the Do/Don't intro.relatedComponents→["List", "Grid", "Card"](D1); WebComponents When not to use redirects to../grids/data-grid.mdx; link textGrid→{Platform} Data Grid(B6); unusedDocsAsideimport removed.igxForRemote→igxForTotalItemCount;role="presentation"onigx-virtual-scrollinsideigx-list(as Combo does), with a matching Screen Readers / ARIA bullet.Acceptance criteria
relatedComponentsmatches the linked siblings; WebComponents and React redirect tabular data to the Data Grid.check-relative-linksreports 0 broken links.defineAllComponents()does not list the Virtual Scroll in 7.3.0/7.3.1, butIgcComboComponentdeclares it as a dependency andregisterComponent()calls.register()on every dependency, soigc-virtual-scrollwas defined regardless. Confirmed by unpackingigniteui-webcomponents@7.3.1. No Troubleshooting entry is warranted.keyFunction, element recycling and the averaged item size are documented;scrollToIndexblock: 'nearest'needed no change, since Angular already matched the corrected behaviour.Decisions
relatedComponents: Angular-only, and a directive rather than a component.badge.mdxandavatar.mdx. The design fixes the card at 537×640 with the caption aligned to the card edge, which the table pattern cannot express. The grid is ~60 lines of inline CSS in the topic.@foralso reuses the item wrappers.Design
Doc Samples Structure — Virtual Scroll. The Do/Don't cards, the 26px gap, the badge geometry and the base paragraph all come from this frame.
Needs product-team confirmation (not changed here)
IgxForOfDirectivehas no@deprecatedtag on master or 22.2.0-rc.1.igx-virtual-scrollis not in igniteui-angular's MIT list.Release dependencies
IgrVirtualScroll— until then the topic's ReactApiLinks degrade to plain<code>, which is a silent fallback and never a build error.overview,variable-size,horizontal,scroll-to-index,infinite-scroll) exist on its branch.vnext.vnext.JP
Updated in this PR on top of #855. New JP text: the anatomy legend, the Do/Don't labels and base paragraph, the React blocks, and the 7.4.1 corrections. Alt text stays in English, per convention.
Validation
DOCS_TOC_STRICT=truebuilds pass for Angular, React EN, React JP and WebComponents.check:llms-metadatapass;check-relative-linksreports 0 broken links.🤖 Generated with Claude Code
Checklist:
preview/beta./page.mdxor../relative/path.mdx(.mdxextension required)IgxSelectComponent,<igx-combo>code blocksfor the names of classes / tags / propertiescode blockscheck-api/mdxnpm commandsllms.descriptionmetadata and runnpm run check:llms-metadata