Toolkit with accessible components, styles, and examples for your next web app
This report summarizes scanner evidence for ariakit/ariakit, a TypeScript project with 8,629 GitHub stars. SynthScan examined 331,191 lines of code across 2778 source files, recording 306 pattern matches distributed across 8 syntactic categories. The legacy adjusted pattern signal is 1.0 (Low pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Payload schema: 1.0.0 · Engine: 2.0.0 · Scoring: heuristic-density-v1 · Scan date: 2026-10-31.
Can maintainers explain intent, assumptions, and trade-offs? 269 finding(s).
Are imports declared and package/API names verified? 37 finding(s).
Are wrappers, guards, and repeated structures necessary? 209 finding(s).
Which changes need focused human review? 306 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 306 distinct pattern matches across 8 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | app/src/test-utils/accessibility.ts | 21 | export async function createMenuAccessibilityReader(page: Page) { | CODE |
| LOW | app/src/test-utils/accessibility.ts | 53 | export async function createDismissAccessibilityReader(page: Page) { | CODE |
| LOW | app/src/test-utils/visual.ts | 258 | async function waitForStableScreenshotClip( | CODE |
| LOW | app/src/test-utils/visual.ts | 296 | async function getPlaywrightScreenshotOptions( | CODE |
| LOW | app/src/test-utils/style.ts | 8 | export async function largestStyleRecalculation( | CODE |
| LOW | app/src/components/preview-card.react.tsx | 497 | function PreviewCardBrowserControls({ frame }: { frame: PreviewFrame }) { | CODE |
| LOW | app/src/sandbox/toolbar-container-focus/test.ts | 4 | async function pressSafariComposingEnter(input: HTMLElement) { | CODE |
| LOW | …rc/sandbox/toolbar-keyboard-navigation/index.react.tsx | 19 | function DisabledActiveItemToolbar() { | CODE |
| LOW | app/src/sandbox/collection-registration/index.react.tsx | 33 | function ControlledProviderCollection() { | CODE |
| LOW | app/src/sandbox/collection-registration/index.react.tsx | 71 | function UnregisteredItemCollection() { | CODE |
| LOW | app/src/sandbox/tooltip-perf/index.react.tsx | 26 | function IndependentTooltipToolbar() { | CODE |
| LOW | app/src/sandbox/popover-anchor-3729/index.react.tsx | 75 | function ChangingDisclosureRefCase() { | CODE |
| LOW | app/src/sandbox/popover-anchor-3729/index.react.tsx | 326 | function NonCompositeComboboxCases() { | CODE |
| LOW | app/src/sandbox/popover-anchor-3729/index.react.tsx | 356 | function ScopedComboboxDisclosureCase() { | CODE |
| LOW | app/src/sandbox/popover-disclosure-7087/test.ts | 8 | async function openFromQuickFormatAndClose() { | CODE |
| LOW | app/src/sandbox/combobox-select-perf/perf-chrome.ts | 45 | async function verifyComboboxSelectClosed(q: Query) { | CODE |
| LOW | app/src/sandbox/combobox-select-perf/perf-chrome.ts | 89 | async function verifyFilteredItemsRestored(q: Query) { | CODE |
| LOW | app/src/sandbox/composite-perf/index.react.tsx | 39 | function ControlledCompositeFixture() { | CODE |
| LOW | app/src/sandbox/composite-perf/perf-chrome.ts | 49 | async function verifyControlledItemsUpdated(q: Query) { | CODE |
| LOW | app/src/sandbox/ariakit-ui-list/index.react.tsx | 43 | function ListDisclosureOptionalButton() { | CODE |
| LOW | …src/sandbox/dialog-persistent-elements/index.react.tsx | 6 | function ComboboxPersistentElement() { | CODE |
| LOW | app/src/sandbox/ariakit-tailwind/test-chrome.ts | 35 | function installSectionLabelHelpers() { | CODE |
| LOW | app/src/sandbox/ariakit-tailwind/test-chrome.ts | 419 | function formatColorContrastViolations( | CODE |
| LOW | app/src/sandbox/collection-renderer-perf/perf-chrome.ts | 42 | async function verifyNestedRenderersUpdated(q: Query) { | CODE |
| LOW | app/src/sandbox/collection-renderer-perf/perf-chrome.ts | 62 | async function verifyRendererItemsVisible(q: Query) { | CODE |
| LOW | app/src/sandbox/select-legacy/test-public-browser.ts | 14 | async function checkLegacyAnimatedSelects( | CODE |
| LOW | …sandbox/select-legacy/public-cases/composite.react.tsx | 22 | export function LegacyPublicSelectAnimatedCase() { | CODE |
| LOW | …sandbox/select-legacy/public-cases/composite.react.tsx | 32 | export function LegacyPublicSelectAnimatedStoreCase() { | CODE |
| LOW | …sandbox/select-legacy/public-cases/composite.react.tsx | 115 | export function LegacyPublicSelectGridCase() { | CODE |
| LOW | …sandbox/select-legacy/public-cases/composite.react.tsx | 130 | export function LegacyPublicSelectGridStoreCase() { | CODE |
| LOW | …sandbox/select-legacy/public-cases/composite.react.tsx | 139 | export function LegacyPublicSelectGroupCase() { | CODE |
| LOW | …sandbox/select-legacy/public-cases/composite.react.tsx | 178 | export function LegacyPublicSelectItemCustomCase() { | CODE |
| LOW | …sandbox/select-legacy/public-cases/composite.react.tsx | 203 | export function LegacyPublicSelectCollapsedHoverCase() { | CODE |
| LOW | …sandbox/select-legacy/public-cases/composite.react.tsx | 236 | export function LegacyPublicSelectHideOnHoverCase() { | CODE |
| LOW | …sandbox/select-legacy/public-cases/composite.react.tsx | 259 | export function LegacyPublicSelectListboxCase() { | CODE |
| LOW | …/sandbox/select-legacy/public-cases/combobox.react.tsx | 41 | export function LegacyPublicSelectComboboxCase() { | CODE |
| LOW | …/sandbox/select-legacy/public-cases/combobox.react.tsx | 67 | export function LegacyPublicSelectComboboxStoreCase() { | CODE |
| LOW | …/sandbox/select-legacy/public-cases/combobox.react.tsx | 145 | export function LegacyPublicSelectComboboxVirtualizedCase() { | CODE |
| LOW⚡ | …/sandbox/select-legacy/public-cases/combobox.react.tsx | 250 | export function LegacyPublicSelectComboboxTabCase() { | CODE |
| LOW⚡ | …/sandbox/select-legacy/public-cases/combobox.react.tsx | 254 | export function LegacyPublicSelectComboboxTabManualCase() { | CODE |
| LOW⚡ | …/sandbox/select-legacy/public-cases/combobox.react.tsx | 260 | export function LegacyPublicSelectComboboxFocusWithinCase() { | CODE |
| LOW | …dbox/select-legacy/public-cases/compositions.react.tsx | 5 | export function LegacyPublicSelectMenuDefaultOpenCase() { | CODE |
| LOW | …dbox/select-legacy/public-cases/compositions.react.tsx | 41 | export function LegacyPublicToolbarSelectCase() { | CODE |
| LOW | …dbox/select-legacy/public-cases/compositions.react.tsx | 100 | export function LegacyPublicFormSelectCase() { | CODE |
| LOW | …dbox/select-legacy/public-cases/compositions.react.tsx | 151 | export function LegacyPublicComboboxMultipleSelectCase() { | CODE |
| LOW | …dbox/select-legacy/public-cases/compositions.react.tsx | 180 | export function LegacyPublicComboboxMultipleStoreCase() { | CODE |
| LOW | …src/sandbox/select-legacy/public-cases/basic.react.tsx | 22 | export function LegacyPublicSelectMultipleCase() { | CODE |
| LOW | …src/sandbox/select-legacy/public-cases/basic.react.tsx | 43 | export function LegacyPublicSelectFormCase() { | CODE |
| LOW | …src/sandbox/select-legacy/public-cases/basic.react.tsx | 61 | export function LegacyPublicSelectAutofillCase() { | CODE |
| LOW | …src/sandbox/select-legacy/public-cases/basic.react.tsx | 79 | export function LegacyPublicSelectFormDisabledCase() { | CODE |
| LOW | …src/sandbox/select-legacy/public-cases/basic.react.tsx | 101 | export function LegacyPublicSelectItemsUnmountCase() { | CODE |
| LOW | …src/sandbox/select-legacy/public-cases/basic.react.tsx | 121 | export function LegacyPublicSelectDefaultOpenCase() { | CODE |
| LOW | …src/sandbox/select-legacy/public-cases/basic.react.tsx | 134 | export function LegacyPublicSelectValuelessItemsCase() { | CODE |
| LOW | app/src/sandbox/checkbox-interactions/index.react.tsx | 66 | function ForwardedUndefinedCheckbox(props: Ariakit.CheckboxProps) { | CODE |
| LOW | …box-select-selected-value-presentation/index.react.tsx | 360 | function RenderCountedComboboxItem() { | CODE |
| LOW | …box-select-selected-value-presentation/index.react.tsx | 434 | function ProgrammaticOpenAfterMoveFixture() { | CODE |
| LOW | …box-select-selected-value-presentation/index.react.tsx | 510 | function NestedInlineScrollportFixture() { | CODE |
| LOW | …box-select-selected-value-presentation/index.react.tsx | 551 | function OversizedInlineOverflowFixture({ | CODE |
| LOW | …andbox/ariakit-ui-combobox/combobox-examples.react.tsx | 132 | export function SelectErrorThatClearsExample() { | CODE |
| LOW | …andbox/ariakit-ui-combobox/combobox-examples.react.tsx | 299 | export function SelectPlaceholdersExample() { | CODE |
| 149 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | app/playwright.config.ts | 161 | }, | COMMENT |
| LOW | app/src/sandbox/popover-arrow/test-browser.ts | 201 | await test.expect(popover).toBeVisible(); | COMMENT |
| LOW | app/src/sandbox/popover-arrow/index.react.tsx | 41 | // `right: 100%` on its arrow element. Later position updates never clear that | COMMENT |
| LOW | app/src/sandbox/popover-arrow/index.react.tsx | 141 | COMMENT | |
| LOW | app/src/sandbox/popover-arrow/test.ts | 41 | // happy-dom does no layout, so the scroll-driven flip from the browser test | COMMENT |
| LOW | …/src/sandbox/dialog-reopen-focus-state/index.react.tsx | 1 | import * as Ariakit from "@ariakit/react"; | COMMENT |
| LOW | …src/sandbox/command-press-state/test-chrome-firefox.ts | 41 | // https://github.com/ariakit/ariakit/issues/6340 | COMMENT |
| LOW | app/src/sandbox/combobox-select-3837/test-browser.ts | 1 | import { flushFrames, withFramework } from "#app/test-utils/preview.ts"; | COMMENT |
| LOW | app/src/sandbox/popover-disclosure-7087/index.react.tsx | 1 | import * as Ariakit from "@ariakit/react"; | COMMENT |
| LOW | app/src/sandbox/combobox-active-id-3914/test-chrome.ts | 81 | ); | COMMENT |
| LOW | app/src/sandbox/form-6307/index.react.tsx | 1 | import * as ak from "@ariakit/react"; | COMMENT |
| LOW | app/src/sandbox/form-names-6308/test.ts | 1 | import { click, q } from "@ariakit/test"; | COMMENT |
| LOW | app/src/sandbox/form-names-6308/test-chrome.ts | 1 | import { withFramework } from "#app/test-utils/preview.ts"; | COMMENT |
| LOW | app/src/sandbox/composite-renderer-6215/index.react.tsx | 1 | import { useCompositeStore } from "@ariakit/react"; | COMMENT |
| LOW | …/src/sandbox/hovercard-nested-listener/index.react.tsx | 1 | import * as Ariakit from "@ariakit/react"; | COMMENT |
| LOW | app/src/sandbox/menu-placing-pass/test-browser.ts | 141 | // proves that half was deferred rather than dropped; it does not tell the | COMMENT |
| LOW | app/src/sandbox/dialog-escape-close/index.react.tsx | 1001 | // Where the invoice goes when the field gets a value: out of its portal to | COMMENT |
| LOW | app/src/sandbox/popover-6310/index.react.tsx | 1 | import * as Ariakit from "@ariakit/react"; | COMMENT |
| LOW | app/src/sandbox/menu-modal-composition/menu.react.tsx | 41 | // There are 3 ways Ariakit can identify nested dialogs (including menu | COMMENT |
| LOW | website/next-env.d.ts | 1 | /// <reference types="next" /> | COMMENT |
| LOW | …xamples)/previews/select-next-router/router-select.tsx | 101 | <Ariakit.ComboboxItem | COMMENT |
| LOW | website/components/global-notification.tsx | 1 | export function GlobalNotification() { | COMMENT |
| LOW | website/components/global-notification.tsx | 21 | // </span>{" "} | COMMENT |
| LOW | website/components/preview.solid.tsx | 1 | // TODO: commented out code will need to be implemented in time. | COMMENT |
| LOW | website/components/preview.solid.tsx | 21 | // if (ignoredExampleIds.includes($id)) { | COMMENT |
| LOW | packages/ariakit-test/src/__init-event.ts | 221 | // UI Events defines these two, but no engine reports either, even when the | COMMENT |
| LOW | packages/ariakit-test/src/dispatch.jsdom.test.ts | 21 | [Symbol.dispose]() { | COMMENT |
| LOW | packages/ariakit-tailwind/src/input.ts | 81 | const TEXT_CONTRAST_CHROMA_HUE_MAX = 220; | COMMENT |
| LOW | …react-components/src/disclosure/disclosure-content.tsx | 201 | const elements = [contentElement]; | COMMENT |
| LOW | …kit-react-components/src/combobox/combobox-popover.tsx | 241 | // Without an input, the popup focuses the selected item by default. It | COMMENT |
| LOW | …kages/ariakit-react-components/src/combobox/__utils.ts | 101 | // item compares against the same opening movement without subscribing. | COMMENT |
| LOW | …akit-react-components/src/composite/composite-item.tsx | 401 | // The composite element may be published a commit later or be temporarily | COMMENT |
| LOW | …s/ariakit-react-components/src/composite/composite.tsx | 421 | const { relatedTarget } = event; | COMMENT |
| LOW | …s/ariakit-react-components/src/composite/composite.tsx | 481 | // container (this element) to the composite item that is being selected. | COMMENT |
| LOW | …s/ariakit-react-components/src/composite/composite.tsx | 501 | // the next active element. | COMMENT |
| LOW | packages/ariakit-react-components/src/dialog/dialog.tsx | 581 | if (!canTakeTreeSnapshot) return; | COMMENT |
| LOW | packages/ariakit-react-components/src/dialog/dialog.tsx | 601 | // a modal dialog that leaves a shadow root still disables them. | COMMENT |
| LOW | packages/ariakit-react-components/src/dialog/dialog.tsx | 621 | treeSnapshotRef.current = null; | COMMENT |
| LOW | packages/ariakit-react-components/src/dialog/dialog.tsx | 721 | // elements to be auto focused. Otherwise, there could be unintended scroll | COMMENT |
| LOW | packages/ariakit-react-components/src/dialog/dialog.tsx | 741 | // If no initial focus is specified, we try to focus the first element | COMMENT |
| LOW | packages/ariakit-react-components/src/dialog/dialog.tsx | 1021 | if (event.cancelBubble) { | COMMENT |
| LOW | …kages/ariakit-react-components/src/popover/popover.tsx | 481 | "--popover-overflow-padding", | COMMENT |
| LOW | …react-components/src/hovercard/__hovercard-trigger.tsx | 41 | COMMENT | |
| LOW | …react-components/src/hovercard/__hovercard-trigger.tsx | 101 | // Let's check again if the mouse is moving. This is to avoid showing | COMMENT |
| LOW | packages/ariakit-ui/src/styles/input.ts | 61 | // nearly white instead of matching the surface around it. | COMMENT |
| LOW | packages/ariakit-ui/src/styles/slot-frame.ts | 141 | // Align slots to the first text row. Stacked cards set --control-inline to | COMMENT |
| LOW | packages/ariakit-ui/src/styles/choice.ts | 221 | // Group-disabled inputs may not pass $disabled to the row. Read their DOM | COMMENT |
| LOW | packages/ariakit-ui/src/styles/disclosure.ts | 81 | "[--disclosure-radius:var(--ak-frame-radius)]", | COMMENT |
| LOW | packages/ariakit-ui/src/styles/kbd.ts | 41 | // box with the lip reads low in large text. | COMMENT |
| LOW | packages/ariakit-ui/src/styles/kbd.ts | 81 | "[.slot-frame-slot>&]:rounded-[max(0.125em,var(--ak-frame-radius))]", | COMMENT |
| LOW | packages/ariakit-ui/src/styles/skeleton.ts | 201 | // Resolve the tint here, before the child's own layer redefines these | COMMENT |
| LOW | packages/ariakit-components/src/tab/tab-store.ts | 161 | // A restore armed right before the store was destroyed (for example, when | COMMENT |
| LOW | packages/ariakit-utils/src/dom.ts | 21 | // A form exposes its listed controls as named properties that override | COMMENT |
| LOW | packages/ariakit-utils/src/events.ts | 141 | > | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | app/src/sandbox/form/index.react.tsx | 23 | placeholder="John Doe" | CODE |
| LOW | …src/sandbox/dialog-scrollable-backdrop/index.react.tsx | 34 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent | CODE |
| LOW | …src/sandbox/dialog-scrollable-backdrop/index.react.tsx | 34 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent | CODE |
| LOW | app/src/sandbox/focusable-textarea-semantics/test.ts | 8 | "placeholder", | CODE |
| LOW | …src/sandbox/dialog-persistent-elements/index.react.tsx | 69 | persistentInput.setAttribute("placeholder", "Persistent shadow field"); | CODE |
| LOW | …src/sandbox/dialog-persistent-elements/index.react.tsx | 84 | outsideInput.setAttribute("placeholder", "Outside shadow field"); | CODE |
| LOW | …src/sandbox/dialog-persistent-elements/index.react.tsx | 97 | "placeholder", | CODE |
| LOW | app/src/sandbox/popover-selection/index.react.tsx | 61 | Lorem ipsum dolor, sit amet consectetur adipisicing elit. Odio, sed fuga | CODE |
| LOW | app/src/sandbox/popover-selection/test.ts | 20 | await click(q.text(/^Lorem ipsum/)); | CODE |
| LOW | …sandbox/select-legacy/public-cases/composite.react.tsx | 164 | ["jane.doe@example.com", "Jane Doe"], | CODE |
| LOW | …sandbox/select-legacy/public-cases/composite.react.tsx | 165 | ["john.doe@example.com", "John Doe"], | CODE |
| LOW | …dbox/select-legacy/public-cases/compositions.react.tsx | 113 | placeholder="John Doe" | CODE |
| LOW⚡ | …ect-legacy/public-tests/composite.react.test-helper.ts | 73 | expect(select).toHaveTextContent("John Doe"); | CODE |
| LOW⚡ | …ect-legacy/public-tests/composite.react.test-helper.ts | 76 | expect(select).toHaveTextContent("Jane Doe"); | CODE |
| LOW⚡ | …ect-legacy/public-tests/composite.react.test-helper.ts | 78 | expect(select).toHaveTextContent("John Doe"); | CODE |
| LOW | …c/sandbox/combobox-select-menu-filters/index.react.tsx | 15 | values: ["John Doe", "Jane Doe"], | CODE |
| LOW | …c/sandbox/combobox-select-menu-filters/index.react.tsx | 15 | values: ["John Doe", "Jane Doe"], | CODE |
| LOW | app/src/sandbox/combobox-select-menu-filters/test.ts | 75 | expect(q.option("Jane Doe")).toHaveFocus(); | CODE |
| LOW | app/src/sandbox/menu-dialog-transitions/index.react.tsx | 169 | Lorem ipsum dolor sit amet consectetur adipisicing elit. Officiis et | CODE |
| LOW | app/src/sandbox/menu-dialog-transitions/index.react.tsx | 169 | Lorem ipsum dolor sit amet consectetur adipisicing elit. Officiis et | CODE |
| LOW | app/src/sandbox/menu-dialog-transitions/index.react.tsx | 192 | Lorem ipsum dolor sit amet consectetur adipisicing elit. Officiis et | CODE |
| LOW | app/src/sandbox/menu-dialog-transitions/index.react.tsx | 192 | Lorem ipsum dolor sit amet consectetur adipisicing elit. Officiis et | CODE |
| LOW | app/src/sandbox/tag-combobox/users.ts | 61 | { name: "John Doe", email: "johndoe1@email.com" }, | CODE |
| LOW | app/src/sandbox/form-select/index.react.tsx | 23 | <FormInput name={$.name} required placeholder="John Doe" /> | CODE |
| LOW | app/src/sandbox/form-valid/index.react.tsx | 25 | placeholder="John Doe" | CODE |
| LOW | app/src/recipes/radio/answer-feedback/index.react.tsx | 18 | { value: "placeholder", label: "A placeholder on the first radio" }, | CODE |
| LOW⚡ | app/src/recipes/text-field/shapes-sizes/test.ts | 5 | expect(q.textbox("Coupon")).toHaveAttribute("placeholder", "SPRING-25"); | CODE |
| LOW⚡ | app/src/recipes/text-field/shapes-sizes/test.ts | 6 | expect(q.textbox("Filter")).toHaveAttribute("placeholder", "Type to filter"); | CODE |
| LOW⚡ | app/src/recipes/text-field/shapes-sizes/test.ts | 9 | "placeholder", | CODE |
| LOW | app/src/recipes/text-field/slots/test.ts | 23 | expect(q.searchbox("الأعضاء")).toHaveAttribute("placeholder", "ابحث بالاسم"); | CODE |
| LOW | website/tests/ariakit-plus.ts | 244 | await q.textbox("Cardholder name").fill("John Doe"); | CODE |
| LOW | examples/form/index.react.tsx | 24 | placeholder="John Doe" | CODE |
| LOW | examples/popover-selection/index.react.tsx | 70 | Lorem ipsum dolor, sit amet consectetur adipisicing elit. Odio, sed fuga | CODE |
| LOW | examples/form-select/index.react.tsx | 24 | <FormInput name={$.name} required placeholder="John Doe" /> | CODE |
| LOW | examples/dialog-backdrop-scrollable/index.react.tsx | 32 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent | CODE |
| LOW | examples/dialog-backdrop-scrollable/index.react.tsx | 32 | Lorem ipsum dolor sit amet, consectetur adipiscing elit. Praesent | CODE |
| LOW | packages/ariakit-test/src/query.ts | 158 | "placeholder" in element && element.placeholder != null | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | examples/dialog-react-router/index.react.tsx | 63 | // We're using MemoryRouter for demonstration purposes. But you can use | COMMENT |
| MEDIUM | examples/tab-react-router/index.react.tsx | 56 | // We're using MemoryRouter for demonstration purposes. But you can use | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | examples/dialog-hide-warning/readme.md | 80 | We can re-trigger the auto focus behavior on the [Dialog](/components/dialog) component even when it's already open by t | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | app/docs/reimplementation/readme.md | 22 | ## Retained scaffold | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | app/src/sandbox/combobox-select-renderer/test.ts | 32 | // the last item keeps the check robust because it stays rendered as a | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | …nents/src/dialog/utils/use-hide-on-interact-outside.ts | 141 | // We need to check if the content element has been focused at least once | COMMENT |