[{"data":1,"prerenderedAt":5201},["ShallowReactive",2],{"cmdk-index":3,"content:\u002Fcomponents\u002Fsegmented-control":260},[4,8,12,16,20,24,28,32,36,40,44,48,52,56,60,64,68,72,76,80,84,88,92,96,100,104,108,112,116,120,124,128,132,136,140,144,148,152,156,160,164,168,172,176,180,184,188,192,196,200,204,208,212,216,220,224,228,232,236,240,244,248,252,256],{"path":5,"title":6,"description":7},"\u002Fcomponents\u002Faccordion","Accordion","A disclosure list built entirely on native \u003Cdetails>\u002F\u003Csummary> elements — zero JavaScript, zero\nARIA reinvention. The browser supplies the disclosure role, aria-expanded, Enter\u002FSpace toggling,\nfocus, and find-in-page expansion for free. Single-open (exclusive) mode uses the platform\nexclusive-accordion feature (Baseline 2024): every \u003Cdetails> shares one auto-generated name, so\nthe browser closes siblings when one opens. multiple drops the shared name so each item opens\nindependently.",{"path":9,"title":10,"description":11},"\u002Fcomponents\u002Falert","Alert","A styled, accessible notification banner. Its live-region politeness is derived from the color —\nurgent danger \u002F warning render role=\"alert\" (assertive), everything else role=\"status\" (polite) —\nso a non-urgent banner isn't announced assertively (override with the live prop). It supports an\noptional icon, a title, body text, an actions row, and a dismiss button.",{"path":13,"title":14,"description":15},"\u002Fcomponents\u002Favatar","Avatar","A data-display component that shows an image, or initials derived from name when there is no\nimage (or while it loads). Supports a title \u002F subtitle column for list and profile UIs.",{"path":17,"title":18,"description":19},"\u002Fcomponents\u002Fbadge","Badge","A small status or count indicator. Attach it to any element as a floating pip, drop it inline next\nto text, or render it standalone — all three modes share the same class surface.",{"path":21,"title":22,"description":23},"\u002Fcomponents\u002Fbutton","Button","A styled, accessible button. Dynamic state is expressed through real attributes — disabled becomes\na true disabled (or aria-disabled for link buttons), loading sets aria-busy, and it ships a\nvisible :focus-visible ring.",{"path":25,"title":26,"description":27},"\u002Fcomponents\u002Fcard","Card","A surface container for grouping related content — a header (prepend slot · title · subtitle ·\nappend slot), a body, and optional action rows. It is the most composed styled component, yet the\nstandalone markup is just nested .ori-card__* elements, so it works without Vue.",{"path":29,"title":30,"description":31},"\u002Fcomponents\u002Fcheckbox","Checkbox","A styled, accessible checkbox built on a real \u003Cinput type=\"checkbox\"> — kept in the DOM\n(visually hidden over a custom box) so keyboard, focus, and native form submission work for free.\nThe accent color and :focus-visible ring are driven by the ori-color token; invalid sets\naria-invalid; disabled is the native attribute.",{"path":33,"title":34,"description":35},"\u002Fcomponents\u002Fcolor-picker","Color picker","An accessible color picker: a 2D saturation × brightness area, a hue slider, a hex field, and\noptional preset swatches — an inline panel you compose into an OriPopover for a\nswatch-triggered flow. Behavior lives in the framework-agnostic useColorPicker (a zero-dependency sRGB +\n2D-area engine, no adapter or machine); the styled component reuses OriSlider for the\nhue channel and OriInput for the hex field. v-model carries a lowercase color\nstring; the internal working model is HSVA, so the hue survives when you drag into a corner and back.",{"path":37,"title":38,"description":39},"\u002Fcomponents\u002Fcombobox","Combobox","A filterable single-select listbox — type to filter, navigate with the keyboard, pick one. It is the\nfirst component driven end-to-end by @oriui\u002Fheadless: the state machine + prop-getters own the\nbehavior (open\u002Fclose, filtering, the active-descendant highlight, selection, and the full\nWAI-ARIA keyboard), and OriCombobox renders the styled shell on top. Unlike the pure-CSS\ncomponents, the behavior needs JavaScript — the standalone classes give you the look, and\nuseCombobox gives you the behavior for any UI.",{"path":41,"title":42,"description":43},"\u002Fcomponents\u002Fdialog","Dialog","A modal dialog — the library's first genuinely interactive component, built on the native\n\u003Cdialog> element. Unlike the styled-only components, a dialog needs behavior: focus trap, scroll\nlock, Esc-to-close, click-outside dismissal, and the full WAI-ARIA keyboard contract. All of it comes\nfrom the platform via showModal() — no state-machine dependency and no adapter to wire. The styled\nOriDialog supplies only the markup and tokens.",{"path":45,"title":46,"description":47},"\u002Fcomponents\u002Fdivider","Divider","A horizontal (default) or vertical rule that separates content. An optional centered label turns it\ninto a visual break like the classic \"OR\" between form sections. A pure layout\u002Fstructure primitive —\nno interactive behavior, no variants, no size scale.",{"path":49,"title":50,"description":51},"\u002Fcomponents\u002Fdrawer","Drawer","A panel docked to one edge of the viewport: a filter sheet, a settings pane, a cart, the navigation on a phone.\nIt runs on the same useDialog engine and the same native \u003Cdialog> element as OriDialog,\nso what a dialog gets from the platform, a drawer gets too. Opened modally (the default) it uses\nshowModal(): a backdrop, a focus trap, an inert page, Esc to close and focus returned to whatever opened it.\nOpened non-modally it is a manual popover, so it still sits in the top layer while the page behind stays\nlive. Swipe to dismiss, snap points and nested drawers are not in this version.",{"path":53,"title":54,"description":55},"\u002Fcomponents\u002Ffield","Field","The shared shell for form controls — one source of truth for the label \u002F hint \u002F error \u002F\nrequired contract that Input, Select,\nTextarea, Combobox, Slider,\nRadioGroup, SegmentedControl and\nColorPicker otherwise each wire\nby hand. Wrap a control in OriField and it adopts the field's id, aria-describedby,\naria-invalid, required, disabled, and size — and stops rendering its own label and helper, so\nthere is exactly one of each, wired identically every time. Group and composite controls (RadioGroup,\nSegmentedControl, Combobox's listbox, ColorPicker) name themselves via aria-labelledby pointing at the field's label.",{"path":57,"title":58,"description":59},"\u002Fcomponents\u002Ficon","Icon","A styled, accessible SVG icon. Decorative by default — renders with aria-hidden=\"true\" and no\nrole. Pass a label to expose it to assistive technology as an image: the icon switches to\nrole=\"img\" + aria-label automatically.",{"path":61,"title":62,"description":63},"\u002Fcomponents\u002Finput","Input","A labeled, accessible text field with v-model. State is expressed through real attributes — the\nnative disabled, aria-invalid when there is an error, and an aria-describedby that points at\nthe rendered hint or error. The label is wired to the field with for\u002Fid (auto-generated via\nuseId when you don't pass one), and arbitrary native attributes (name, autocomplete,\ninputmode, …) fall through to the underlying \u003Cinput>.",{"path":65,"title":66,"description":67},"\u002Fcomponents\u002Fjoin","Join","A thin wrapper that collapses the shared radii and borders of adjacent controls so they read as one\nsegmented unit — button groups, input+button combos, segmented toolbars. No visual styling of its\nown: all color, size, and variant tokens live on the children.",{"path":69,"title":70,"description":71},"\u002Fcomponents\u002Fkbd","Kbd","A keyboard-key chip — a semantic \u003Ckbd> element styled as a monospace bordered chip. Use it to\nrepresent individual keys, modifier keys, or multi-key shortcuts inline in prose or UI hints.",{"path":73,"title":74,"description":75},"\u002Fcomponents\u002Flink","Link","An inline prose link — the right choice when a destination lives in running text. Distinct from\nOriButton rendered as=\"a\": a button that navigates is still a button; a link in a sentence is\nOriLink. Underlined by default (the affordance survives without color), with a _hover mode that\nhides the underline at rest and reveals it on hover. A visible :focus-visible ring uses the same\ncolor as the text.",{"path":77,"title":78,"description":79},"\u002Fcomponents\u002Flist","List","A vertical list of rows for settings panels, action panels and navigation. Each row reads prepend → label →\nappend: an icon, a label with an optional subtitle, and at the end short meta text such as a shortcut, a\nchevron into a sub-panel, or a control of your own.",{"path":81,"title":82,"description":83},"\u002Fcomponents\u002Fmenu","Menu","A WAI-ARIA menu button: a trigger opens a roving-tabindex action list. Unlike the Popover, open\u002Fclose,\nfocus movement, and click-outside dismissal are driven entirely by the @oriui\u002Fheadless menu\nmachine in JavaScript. OriMenu still opens the panel in the top layer (popover=\"manual\" +\nshowPopover()), so an ancestor's transform, overflow or z-index cannot displace or clip it, and\nplaces it with the same CSS Anchor Positioning primitive as the Popover (ori-anchored), zero\npositioning JS. In your own markup, do the same; without popover the panel falls back to its z-index.",{"path":85,"title":86,"description":87},"\u002Fcomponents\u002Fpopover","Popover","A positioned overlay for supplementary content — a menu, a filter panel, a rich hint — tethered to a\ntrigger. It runs entirely on the platform: the trigger opens the panel through the Popover API\n(top-layer, light-dismiss, Esc — zero JS), and the panel is placed with CSS Anchor Positioning\n(anchor-name \u002F position-anchor + position-area, with a collision flip via\nposition-try-fallbacks) — zero positioning JS, no scroll\u002Fresize listeners. Baseline 2026, with\ngraceful degradation: an older engine still opens the panel and places it, just without the\ncollision-aware flip.",{"path":89,"title":90,"description":91},"\u002Fcomponents\u002Fprogress","Progress","A horizontal progress bar that communicates task completion. It supports a determinate mode (a\nknown value out of a max) and an indeterminate mode (animated sweep) for tasks with no\nmeasurable progress. State is expressed through ARIA attributes — aria-valuenow is omitted when\nindeterminate, giving screen readers the correct cue automatically.",{"path":93,"title":94,"description":95},"\u002Fcomponents\u002Fradio","Radio","A \"choose one\" compound control. A role=\"radiogroup\" container names the set via\naria-labelledby; each option is a real \u003Cinput type=\"radio\"> sharing a single name — so the\nbrowser enforces single-select and native form submission — visually hidden behind a styled circle.\nPass the options as an array; per-option disabled is supported.\nFor a short pick shown as one compact row of buttons (Light \u002F Dark \u002F Auto), use\nSegmentedControl: the same radio semantics, styled as segments.",{"path":97,"title":98,"description":99},"\u002Fcomponents\u002Fsegmented-control","Segmented control","A compact \"choose one\" row — Light \u002F Dark \u002F Auto. It is built like RadioGroup: a\nrole=\"radiogroup\" of real \u003Cinput type=\"radio\"> sharing one name, each input hidden over its segment.\nSo the browser gives you the behavior — arrow keys that move and select, a single Tab stop on the checked\nsegment, native form submission and RTL — and the CSS layer carries no JavaScript at all.",{"path":101,"title":102,"description":103},"\u002Fcomponents\u002Fselect","Select","A native-first styled select control with v-model. The browser owns the dropdown, full keyboard\ninteraction, type-ahead, and all ARIA semantics — oriUI only styles the closed control and draws a\ndecorative chevron. It shares the form-control contract of Input and\nTextarea: a built-in label, hint, error, and required asterisk, all\nwired for accessibility. State is expressed through real attributes — native disabled and\naria-invalid=\"true\" (not classes) — and arbitrary native attrs (name, autocomplete, …) fall\nthrough to the \u003Cselect> via inheritAttrs:false.",{"path":105,"title":106,"description":107},"\u002Fcomponents\u002Fskeleton","Skeleton","A loading placeholder that signals content is on its way. An animated shimmer sweep sweeps across the\nblock; on devices that request reduced motion the shimmer stops and the tinted block alone signals the\nloading state. Size it with an inline style or a utility class — the skeleton itself carries no\nintrinsic width or height beyond a 1em minimum height.",{"path":109,"title":110,"description":111},"\u002Fcomponents\u002Fslider","Slider","A styled, accessible range control built on a native \u003Cinput type=\"range\">. Because the\nunderlying element is real HTML, the browser supplies role=\"slider\", the full keyboard contract\n(arrow keys, Home\u002FEnd, PageUp\u002FPageDown), and screen-reader value announcements for free — no\nJavaScript bridge needed. Color and the filled-track portion are driven by CSS custom properties;\nv-model carries a number.",{"path":113,"title":114,"description":115},"\u002Fcomponents\u002Fspinner","Spinner","An accessible loading indicator — renders role=\"status\" with an aria-label (default \"Loading\")\nso assistive technology announces the busy state without any extra work. Use it standalone for a\npage-level or section-level loader, or embed it inline inside a button or label.",{"path":117,"title":118,"description":119},"\u002Fcomponents\u002Fstack","Stack","The workhorse layout primitive — two flex modes in one component. A stack (ori-stack) is a\nflex column: children flow top-to-bottom with a consistent gap. A cluster (ori-cluster) is a\nwrapping flex row: children flow left-to-right, wrap onto new lines, and are centered on the\ncross-axis — ideal for tag clouds, button groups, and badge sets.",{"path":121,"title":122,"description":123},"\u002Fcomponents\u002Fsurface","Surface","An elevated floating surface — a lifted panel with a surface background, an optional hairline, a\ncorner radius, and a mode-aware shadow, and nothing else. No padding, no header\u002Ftitle semantics: it\nis just the box, and the caller owns the layout inside. It's the building block for chrome that floats\nover content — a toolbar island, a zoom control, a side panel, a menu popout's container — and the\nelevation counterpart to Card, which is a content card (padding + header \u002F\ntitle \u002F body \u002F actions).",{"path":125,"title":126,"description":127},"\u002Fcomponents\u002Fswitch","Switch","An on\u002Foff toggle built on a real \u003Cinput type=\"checkbox\" role=\"switch\"> — kept in the DOM\n(visually hidden over a track + thumb) so keyboard, focus, and form submission work for free, and\nassistive technology announces it as a switch. v-model is a boolean. The \"on\" track color and the\n:focus-visible ring both come from the ori-color token; the track and thumb scale with\nori-font-size so size is a single prop.",{"path":129,"title":130,"description":131},"\u002Fcomponents\u002Ftable","Table","A styled native \u003Ctable>: a rule under the header row, hairlines between body rows, start-aligned cells, and a few\nmodifiers for stripes, a hover tint, a sticky header and cell density. The CSS layer works on any \u003Ctable> with\nno JavaScript; OriTable adds the caption and the accessibility of the box a wide table scrolls in.",{"path":133,"title":134,"description":135},"\u002Fcomponents\u002Ftabs","Tabs","An accessible tabs widget with automatic activation. The tablist holds a roving tabindex so\nTab \u002F Shift+Tab enter and leave the group as a single keyboard stop; arrow keys move between\ntabs and immediately select them. State is expressed through real ARIA attributes — aria-selected\ndrives both the active indicator and the label color; disabled is the native button attribute.",{"path":137,"title":138,"description":139},"\u002Fcomponents\u002Ftag","Tag","A compact label for categorizing, filtering, or annotating content — status chips, keyword\nbadges, and removable filter pills. State is expressed through real attributes: aria-disabled\ndisables the tag and its close button without removing it from the DOM.",{"path":141,"title":142,"description":143},"\u002Fcomponents\u002Ftextarea","Textarea","A labeled, accessible multiline text field with v-model. State is expressed through real\nattributes — the native disabled, aria-invalid when there is an error, and an aria-describedby\nthat points at the rendered hint or error. The label is wired to the field with for\u002Fid\n(auto-generated via useId when you don't pass one). Unlike a single-line input the field has no\nfixed height — it grows from a rows-based min-height and stays user-resizable.",{"path":145,"title":146,"description":147},"\u002Fcomponents\u002Ftoast","Toast","An imperative notification system. Push a toast from anywhere with useToast() and render\n\u003COriToaster \u002F> once near the app root to display the queue. No event bus, no Vuex, no provide\u002Finject —\njust a module-level reactive queue that every call site shares.",{"path":149,"title":150,"description":151},"\u002Fcomponents\u002Ftoolbar","Toolbar","A WAI-ARIA toolbar: a set of related controls that share a single Tab stop, navigated internally\nwith the arrow keys via roving tabindex (real DOM focus, not aria-activedescendant). Five\ncomponents make it up — OriToolbar (the root, role=\"toolbar\"), OriToolbarButton (an item —\ncomposes OriButton), OriToolbarSeparator (a perpendicular divider), and a paired\nOriToolbarToggleGroup \u002F OriToolbarToggleItem for a segmented single- or multi-select toggle.\nUnlike the data-driven OriMenu (an items array plus a machine), a toolbar is compositional —\nyou assemble it from slotted components in whatever order and combination you need — so the behavior\nunderneath, useToolbar from @oriui\u002Fheadless, is a provide\u002Finject\nroving-focus context rather than a state machine over an array.",{"path":153,"title":154,"description":155},"\u002Fcomponents\u002Ftooltip","Tooltip","A CSS-driven tooltip that shows additional context when a control is focused or hovered. The bubble\nis always in the DOM (so the aria-describedby reference is never dangling) and shown\u002Fhidden in CSS —\nno state machine, no positioning engine. Show is :focus-visible (keyboard focus) and :hover wrapped\nin @media (hover: hover) (pointer, without sticking open on touch); a click or a tap that focuses the\ntrigger does not show it. A press of the trigger hides it, the pointer can move onto the bubble, and\nEscape hides it without moving focus or the pointer (WCAG 1.4.13).",{"path":157,"title":158,"description":159},"\u002Fguides\u002Fcss","Using the CSS layer","The @oriui\u002Fcss package is oriUI's foundation: standalone .ori-* classes plus the token theming — no Vue, no build step, no Tailwind. You\nship the stylesheet and write classes. This is how oriUI works with htmx, Astro, or plain HTML —\nthe daisyUI niche, minus Tailwind.",{"path":161,"title":162,"description":163},"\u002Fguides\u002Fcustomization","Customization","Make it yours — without authoring a whole skin. Most products need one thing: their brand color and\ntheir corner radius on top of accessible, ready-made components. oriUI lets you do that by repointing\na handful of design tokens — a few CSS custom properties in your own stylesheet, no rewrite, no fork.\nThe same \u003COriButton> you shipped on day one becomes on-brand by the time you ship to users, and\nnothing about the component changes.",{"path":165,"title":166,"description":167},"\u002Fguides\u002Fdesign-tokens","Design tokens","Every oriUI package reads one set of design tokens. This page is the\ncatalog — every token, and the resolution model that turns a raw value into the color a component\npaints. The chain is short and deliberate: a primitive feeds a semantic role, a role feeds a\nper-instance alias, and components read only the alias. That indirection is what lets a single\nclass repoint a single token — the whole zero-runtime theming story rests on it.",{"path":169,"title":170,"description":171},"\u002Fguides\u002Frtl","Writing direction (RTL)","oriUI's style layer is written in logical properties — margin-inline, border-block,\ninset-inline-end, position-area — so it follows the writing direction the platform gives it. You\nturn RTL on the platform way, and the layer mirrors itself:",{"path":173,"title":174,"description":175},"\u002Fguides\u002Fskins","Skin gallery","A skin is a named palette — a set of token overrides applied with one attribute on \u003Chtml>\n(data-ori-skin). Every skin repoints only the four skinnable roles (primary · secondary ·\nsurface · background, each with a -light and -dark source); the status hues (success ·\nwarning · danger · info) stay shared, and every pairing targets WCAG AA for body text. Switching\na skin is a single attribute write — zero runtime, no recompute, no flash.",{"path":177,"title":178,"description":179},"\u002Fguides\u002Ftheming","Theming","A theme is a mode (light or dark) layered over a skin (a named palette). Both are pure\nattribute toggles on \u003Chtml> — flipping either repoints the active --ori-color-* aliases through\nCSS custom properties, so everything reskins at once with no JavaScript, no recompute, no flash.\nThis is the same zero-runtime story across every layer: a Vue app, the standalone @oriui\u002Fcss\nclasses, htmx fragments, or hand-written HTML all theme identically.",{"path":181,"title":182,"description":183},"\u002Fheadless\u002Fcore","Core","The framework-agnostic heart of the headless layer: a behavior contract plus a zero-dependency\nnative engine, written in vanilla TypeScript. Every framework binding consumes the same contract,\nso a primitive behaves identically wherever it runs — and the behavior stays swappable per primitive,\nwithout touching markup.",{"path":185,"title":186,"description":187},"\u002Fheadless\u002Fuse-color-picker","useColorPicker","A headless sRGB color picker — a 2D saturation × brightness area, a hue channel, an optional\nalpha channel, a hex field, and optional preset swatches, assembled from ready-to-bind\nprop-getters. It owns the working color as an internal HSVA object (so the hue survives a grayscale\nround-trip when you drag into a corner and back). Underneath is a zero-dependency sRGB engine — a loose\nparser and a lowercase formatter, hex \u002F rgb \u002F hsv \u002F hsl conversion, readable ink over a swatch by WCAG\nluminance — and the 2D-area math for pointer and keyboard. That engine is internal: it ships inside this\ncomposable, not as exports of its own.",{"path":189,"title":190,"description":191},"\u002Fheadless\u002Fuse-combobox","useCombobox","A headless combobox primitive — an editable text input paired with a popup listbox — implementing\nthe WAI-ARIA combobox with listbox popup pattern: type to filter, navigate with the keyboard via\nactive-descendant, and pick a single option. It owns the behavior (open\u002Fclose, filtering, the\nhighlight, selection, and the full keyboard) and the ARIA wiring as ready-to-bind prop bags; you own\nthe markup and styles.",{"path":193,"title":194,"description":195},"\u002Fheadless\u002Fuse-dialog","useDialog","A headless modal dialog primitive built on the native \u003Cdialog> element — focus trap, Escape to\nclose, focus return, and aria-modal semantics all come from the platform via showModal(). It owns the open state and the ARIA wiring as ready-to-bind prop bags; you own the\nmarkup and styles (you render the \u003Cdialog> and drive showModal() \u002F close() from open).",{"path":197,"title":198,"description":199},"\u002Fheadless\u002Fuse-disclosure","useDisclosure","A headless show \u002F hide primitive for disclosure widgets — expandable panels, accordions, menus,\nthe collapsible sidebar groups on this very site. It owns the open state, the WAI-ARIA wiring, and the\ntoggle handler; you own the markup and the styles.",{"path":201,"title":202,"description":203},"\u002Fheadless\u002Fuse-dismissable","useDismissable","A headless dismiss layer — the \"close the overlay on an outside interaction\" glue a non-platform\noverlay needs, the pattern Radix DismissableLayer \u002F Floating-UI useDismiss standardize. While\nenabled, it attaches document listeners and calls onDismiss() when an interaction lands outside\nthe overlay's own elements. Both triggers are on by default — a pointerdown outside\n(pointerDownOutside) and focus moving outside (focusOutside) — and an overlay turns off the one that\ndoes not fit it:",{"path":205,"title":206,"description":207},"\u002Fheadless\u002Fuse-menu","useMenu","A headless menu button primitive built on the WAI-ARIA menu-button pattern — a trigger that opens a\npopup menu of actions, with roving tabindex, arrow \u002F Home \u002F End navigation, and Enter \u002F Space\nactivation. It owns the open state and the highlighted item and exposes the ARIA wiring as ready-to-bind\nprop bags; you own the markup, the styles, and the DOM focus (roving needs real focus, and\nclick-outside \u002F focus-return are host concerns a state projection can't reach).",{"path":209,"title":210,"description":211},"\u002Fheadless\u002Fuse-tabs","useTabs","A headless WAI-ARIA tabs widget with automatic activation — a tablist of tabs behind a single\nTab stop, navigated with the arrow keys via roving tabindex (real DOM focus, not\naria-activedescendant), where moving focus also selects. It is data-driven: you pass the tabs\narray plus the selected value, and it returns the tablist prop bag plus per-tab and per-panel\nprop-getters (ids, aria-selected, aria-controls, aria-labelledby, roving tabindex, hidden).",{"path":213,"title":214,"description":215},"\u002Fheadless\u002Fuse-theme","useTheme","A headless light \u002F dark theme controller — it owns the mode setting, resolves auto against the OS\nscheme live, persists the choice, and applies it to the DOM. It applies through applyTheme, which sets\nthe ori-theme_{light,dark} class (removing the opposite — exactly one is on at a time) and works\naround a bug in current Chromium where a runtime theme toggle otherwise leaves styled components\npainting the previous theme's colors until they re-render.",{"path":217,"title":218,"description":219},"\u002Fheadless\u002Fuse-toast","useToast","A headless toast queue — an imperative notification store you call from anywhere (toast('Saved'))\nand render once near the app root. The behavior is a framework-agnostic engine (a plain array + a Set\nof listeners + auto-dismiss timers) projected into the host framework's reactivity (in Vue, a reactive\narray). It is a client-side singleton — every useToast() call shares the one queue, so a push from\nanywhere reaches the single renderer.",{"path":221,"title":222,"description":223},"\u002Fheadless\u002Fuse-token","useToken","A reactive token bridge — it resolves an --ori-* design token to its computed value in JS, for\ncanvas \u002F WebGL \u002F chart painters (Konva, ECharts, …) that draw outside the CSS cascade yet must follow the\nactive skin. It reads through a hidden probe, because the obvious API is a trap: getComputedStyle(el).getPropertyValue('--x') hands back the unresolved var() chain (oriUI aliases chain), not a color —\nsubstitution only happens at a real property's computed-value time.",{"path":225,"title":226,"description":227},"\u002Fheadless\u002Fuse-toolbar","useToolbar","A headless WAI-ARIA toolbar — a set of related controls behind a single Tab stop, navigated\ninternally with the arrow keys via roving tabindex (real DOM focus, not aria-activedescendant).\nThe root owns orientation \u002F loop \u002F direction and a single keydown handler; each item registers itself\nand receives its roving tabindex, so a toolbar is assembled from arbitrary slotted components\nrather than a fixed data array.",{"path":229,"title":230,"description":231},"\u002Foverview\u002Faccessibility","Accessibility","Accessibility in oriUI is structural, not a coat of polish on top. The same decisions that make\nthe components correct for assistive technology also make them themeable and framework-agnostic — they\nare the same source of truth, not a separate effort.",{"path":233,"title":234,"description":235},"\u002Foverview\u002Fapplicability","Applicability","Where each oriUI package runs. The CSS works everywhere, the components are Vue, and the headless\ncomposables have a Vue adapter.",{"path":237,"title":238,"description":239},"\u002Foverview\u002Fcheat-sheet","Cheat sheet","Everything in one page — install, the class model, every component, and the design tokens. For the\nmachine-readable version (e.g. to paste into an AI), fetch \u002Fllms.txt (index) or\n\u002Fllms-full.txt (every page concatenated).",{"path":241,"title":242,"description":243},"\u002Foverview\u002Fcomparisons","Comparisons","oriUI combines three things that usually come separately: a CSS design system that needs no JavaScript,\nstyled Vue components, and headless behavior. This page sets it next to the libraries it learns from.\nIt has fewer components than most of them: we add one when an app built on oriUI needs it.",{"path":245,"title":246,"description":247},"\u002Foverview\u002Fget-started","Get started","Install oriUI and put a component on screen. Use only the packages you need.",{"path":249,"title":250,"description":251},"\u002Foverview\u002Finstallation","Installation","oriUI is three layers, one package each. Install only the layer you need — they share one token\ncontract, so you can add another later without reworking what you built.",{"path":253,"title":254,"description":255},"\u002Foverview\u002Fintroduction","Introduction","oriUI (織り, ori, \"weaving\") is a design system in plain CSS, with accessible Vue 3 components built\non it. It is made for our own apps first, so a component is added when one of them needs it.",{"path":257,"title":258,"description":259},"\u002Foverview\u002Fshowcase","Showcase","Apps built with oriUI. Each entry says what the app does and which parts of oriUI it uses, so you can see the\nlibrary inside a whole product, not one component at a time.",{"id":261,"title":98,"body":262,"description":99,"extension":462,"meta":5197,"navigation":1970,"path":97,"seo":5198,"stem":5199,"__hash__":5200},"docs\u002Fcomponents\u002Fsegmented-control.md",{"type":263,"value":264,"toc":5174},"minimark",[265,270,297,303,340,345,406,410,416,420,453,475,479,489,493,496,995,1008,1012,1015,1026,1290,1294,1325,1548,1552,1557,1901,1905,1916,2301,2311,2315,2322,2548,2555,2559,2566,2766,2770,2780,2933,2937,2971,3221,3225,3252,3560,3564,3575,4138,4142,4149,4485,4488,4491,4614,4685,4688,4697,4702,4924,4933,5019,5030,5034,5052,5078,5122,5126,5171],[266,267,269],"h1",{"id":268},"segmentedcontrol","SegmentedControl",[271,272,273,274,278,279,283,284,287,288,291,292,296],"p",{},"A compact \"choose one\" row — Light \u002F Dark \u002F Auto. It is built like ",[275,276,277],"a",{"href":93},"RadioGroup",": a\n",[280,281,282],"code",{},"role=\"radiogroup\""," of real ",[280,285,286],{},"\u003Cinput type=\"radio\">"," sharing one ",[280,289,290],{},"name",", each input hidden over its segment.\nSo the browser gives you the behavior — arrow keys that move ",[293,294,295],"strong",{},"and"," select, a single Tab stop on the checked\nsegment, native form submission and RTL — and the CSS layer carries no JavaScript at all.",[271,298,299,300,302],{},"Once a segment is picked, one stays picked: a radio cannot be unchecked, so there is no deselect. A row you\ncan switch fully off is a toggle group — use the ",[275,301,150],{"href":149},"'s.",[271,304,305,306,309,310,314,315,320,321,325,326,331,332,335,336,339],{},"The examples are organized by ",[293,307,308],{},"layer",": the ",[275,311,313],{"href":312},"#classes","class reference"," is the standalone\n",[293,316,317],{},[280,318,319],{},"@oriui\u002Fcss"," layer, and the ",[275,322,324],{"href":323},"#framework-api","Framework API"," is the ",[293,327,328],{},[280,329,330],{},"@oriui\u002Fvue"," component. Every\nexample is live — flip its code between ",[293,333,334],{},"HTML"," (the standalone classes, also your htmx \u002F Astro \u002F Svelte \u002F\nplain-HTML usage), ",[293,337,338],{},"Vue","; HTML is the default.",[341,342,344],"h2",{"id":343},"when-to-use","When to use",[346,347,348,361],"table",{},[349,350,351],"thead",{},[352,353,354,358],"tr",{},[355,356,357],"th",{},"Control",[355,359,360],{},"Pick it when",[362,363,364,374,383,396],"tbody",{},[352,365,366,371],{},[367,368,369],"td",{},[293,370,269],{},[367,372,373],{},"A short row (two to five) of one-word choices, all visible at once — a mode, a view, a range.",[352,375,376,380],{},[367,377,378],{},[275,379,277],{"href":93},[367,381,382],{},"A list of labeled circles of any length, stacked vertically, with room for a longer label.",[352,384,385,389],{},[367,386,387],{},[275,388,134],{"href":133},[367,390,391,392,395],{},"Segments that switch ",[293,393,394],{},"panels"," of content; the selection is navigation, not a setting.",[352,397,398,403],{},[367,399,400,402],{},[275,401,150],{"href":149}," toggles",[367,404,405],{},"A row where nothing may be selected, or several things at once.",[341,407,409],{"id":408},"classes","Classes",[271,411,412,413,415],{},"The control is a block class plus single-class token utilities — one class repoints one token, no base\nclass needed. The Vue props in ",[275,414,324],{"href":323}," map 1:1 to these.",[417,418],"class-table",{":rows":419},"[{\"class\":\"ori-segmented-control\",\"type\":\"Block\",\"description\":\"Required base class on the container; carries role=radiogroup.\"},{\"class\":\"ori-color_*\",\"type\":\"Color\",\"description\":\"\u003Cb>primary\u003C\u002Fb> · secondary · success · warning · danger · info · surface — the checked fill, its edge tone and the focus ring.\"},{\"class\":\"ori-segmented-control_* (size)\",\"type\":\"Size\",\"description\":\"inherit · xs · sm · \u003Cb>md\u003C\u002Fb> · lg · xl · xxl — the control height, from the action-size scale.\"},{\"class\":\"ori-font-size_*\",\"type\":\"Font\",\"description\":\"xs · sm · \u003Cb>md\u003C\u002Fb> · lg · xl · xxl — scales the text; segment padding and gap follow in em.\"},{\"class\":\"ori-size-radius_*\",\"type\":\"Radius\",\"description\":\"none · xs · sm · \u003Cb>md\u003C\u002Fb> · lg · xl · full — the track radius; segments sit 3px inside it.\"},{\"class\":\"ori-segmented-control_fluid\",\"type\":\"Layout\",\"description\":\"Stretches to the container width; segments stay equal.\"},{\"class\":\"ori-segmented-control__label\",\"type\":\"Part\",\"description\":\"Group label element; referenced by aria-labelledby.\"},{\"class\":\"ori-segmented-control__track\",\"type\":\"Part\",\"description\":\"The tinted track; an equal-column grid that holds the segments.\"},{\"class\":\"ori-segmented-control__item\",\"type\":\"Part\",\"description\":\"Wrapping \u003Clabel> for each segment.\"},{\"class\":\"ori-segmented-control__input · ori-segmented-control__icon · ori-segmented-control__text\",\"type\":\"Part\",\"description\":\"Hidden native radio laid over the segment \u002F optional leading icon \u002F segment text.\"},{\"class\":\"disabled · checked · aria-required\",\"type\":\"State\",\"description\":\"Real attributes on the native input \u002F container, not extra classes.\"}]",[271,421,422,425,426,429,430,433,434,437,438,441,442,445,446,448,449,452],{},[293,423,424],{},"À la carte:"," the classes above ship in ",[280,427,428],{},"@oriui\u002Fcss\u002Fcomponents\u002Fsegmented-control.css",". Import a foundation\n(",[280,431,432],{},"@oriui\u002Fcss\u002Fbase.css"," or ",[280,435,436],{},"@oriui\u002Fcss\u002Ftokens.css",") first — the token utilities (",[280,439,440],{},"ori-color_*",",\n",[280,443,444],{},"ori-size-radius_*",", …) live there, not in the component file. The full bundle ",[280,447,319],{}," is the default and\nalready carries both; see ",[275,450,451],{"href":157},"à-la-carte imports",".",[271,454,455,456,459,460,463,464,466,467,470,471,474],{},"Accent ",[280,457,458],{},"primary",", size ",[280,461,462],{},"md"," and radius ",[280,465,462],{}," are baked in at zero specificity, so a bare ",[280,468,469],{},"ori-segmented-control","\nis already complete and one utility class repoints any of them. The checked fill, the focus ring and the\ndisabled dimming read the input's real state through ",[280,472,473],{},":has()"," — Chrome 105, Safari 15.4, Firefox 121 and later.",[341,476,478],{"id":477},"anatomy","Anatomy",[480,481,486],"pre",{"className":482,"code":484,"language":485},[483],"language-text","div.ori-segmented-control  [role=\"radiogroup\", aria-labelledby]\n  div.ori-segmented-control__label        ← group heading (optional)\n  div.ori-segmented-control__track        ← tinted track, equal-width grid\n    label.ori-segmented-control__item     ← one per segment\n      input.ori-segmented-control__input  ← visually hidden real radio, laid over the segment\n      i.ori-segmented-control__icon       ← leading icon (optional, aria-hidden)\n      span.ori-segmented-control__text    ← visible segment text\n","text",[280,487,484],{"__ignoreMap":488},"",[341,490,492],{"id":491},"basic","Basic",[271,494,495],{},"Equal-width segments, as wide as the widest one, on a tinted track. The checked segment is filled with the\naccent.",[497,498,499,504,637],"example",{},[469,500],{":options":501,"model-value":502,"label":503},"[{\"label\":\"Light\",\"value\":\"light\"},{\"label\":\"Dark\",\"value\":\"dark\"},{\"label\":\"Auto\",\"value\":\"auto\"}]","light","Theme",[505,506,507],"template",{"v-slot:vue":488},[480,508,512],{"className":509,"code":510,"language":511,"meta":488,"style":488},"language-vue shiki shiki-themes github-light github-dark","\u003COriSegmentedControl\n    v-model=\"theme\"\n    label=\"Theme\"\n    :options=\"[\n        { label: 'Light', value: 'light' },\n        { label: 'Dark', value: 'dark' },\n        { label: 'Auto', value: 'auto' }\n    ]\"\n\u002F>\n","vue",[280,513,514,527,547,558,574,592,607,623,631],{"__ignoreMap":488},[515,516,519,523],"span",{"class":517,"line":518},"line",1,[515,520,522],{"class":521},"sVt8B","\u003C",[515,524,526],{"class":525},"s9eBZ","OriSegmentedControl\n",[515,528,530,534,537,541,544],{"class":517,"line":529},2,[515,531,533],{"class":532},"sScJk","    v-model",[515,535,536],{"class":521},"=",[515,538,540],{"class":539},"sZZnC","\"",[515,542,543],{"class":521},"theme",[515,545,546],{"class":539},"\"\n",[515,548,550,553,555],{"class":517,"line":549},3,[515,551,552],{"class":532},"    label",[515,554,536],{"class":521},[515,556,557],{"class":539},"\"Theme\"\n",[515,559,561,564,567,569,571],{"class":517,"line":560},4,[515,562,563],{"class":521},"    :",[515,565,566],{"class":532},"options",[515,568,536],{"class":521},[515,570,540],{"class":539},[515,572,573],{"class":521},"[\n",[515,575,577,580,583,586,589],{"class":517,"line":576},5,[515,578,579],{"class":521},"        { label: ",[515,581,582],{"class":539},"'Light'",[515,584,585],{"class":521},", value: ",[515,587,588],{"class":539},"'light'",[515,590,591],{"class":521}," },\n",[515,593,595,597,600,602,605],{"class":517,"line":594},6,[515,596,579],{"class":521},[515,598,599],{"class":539},"'Dark'",[515,601,585],{"class":521},[515,603,604],{"class":539},"'dark'",[515,606,591],{"class":521},[515,608,610,612,615,617,620],{"class":517,"line":609},7,[515,611,579],{"class":521},[515,613,614],{"class":539},"'Auto'",[515,616,585],{"class":521},[515,618,619],{"class":539},"'auto'",[515,621,622],{"class":521}," }\n",[515,624,626,629],{"class":517,"line":625},8,[515,627,628],{"class":521},"    ]",[515,630,546],{"class":539},[515,632,634],{"class":517,"line":633},9,[515,635,636],{"class":521},"\u002F>\n",[505,638,639],{"v-slot:html":488},[480,640,644],{"className":641,"code":642,"language":643,"meta":488,"style":488},"language-html shiki shiki-themes github-light github-dark","\u003C!-- accent primary, size md and radius md are the baked defaults -->\n\u003Cdiv class=\"ori-segmented-control\" role=\"radiogroup\" aria-labelledby=\"theme-label\">\n    \u003Cdiv id=\"theme-label\" class=\"ori-segmented-control__label\">Theme\u003C\u002Fdiv>\n    \u003Cdiv class=\"ori-segmented-control__track\">\n        \u003Clabel class=\"ori-segmented-control__item\">\n            \u003Cinput class=\"ori-segmented-control__input\" type=\"radio\" name=\"theme\" value=\"light\" checked \u002F>\n            \u003Cspan class=\"ori-segmented-control__text\">Light\u003C\u002Fspan>\n        \u003C\u002Flabel>\n        \u003Clabel class=\"ori-segmented-control__item\">\n            \u003Cinput class=\"ori-segmented-control__input\" type=\"radio\" name=\"theme\" value=\"dark\" \u002F>\n            \u003Cspan class=\"ori-segmented-control__text\">Dark\u003C\u002Fspan>\n        \u003C\u002Flabel>\n        \u003Clabel class=\"ori-segmented-control__item\">\n            \u003Cinput class=\"ori-segmented-control__input\" type=\"radio\" name=\"theme\" value=\"auto\" \u002F>\n            \u003Cspan class=\"ori-segmented-control__text\">Auto\u003C\u002Fspan>\n        \u003C\u002Flabel>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n","html",[280,645,646,652,686,714,729,746,791,811,820,834,868,888,897,912,946,966,975,985],{"__ignoreMap":488},[515,647,648],{"class":517,"line":518},[515,649,651],{"class":650},"sJ8bj","\u003C!-- accent primary, size md and radius md are the baked defaults -->\n",[515,653,654,656,659,662,664,667,670,672,675,678,680,683],{"class":517,"line":529},[515,655,522],{"class":521},[515,657,658],{"class":525},"div",[515,660,661],{"class":532}," class",[515,663,536],{"class":521},[515,665,666],{"class":539},"\"ori-segmented-control\"",[515,668,669],{"class":532}," role",[515,671,536],{"class":521},[515,673,674],{"class":539},"\"radiogroup\"",[515,676,677],{"class":532}," aria-labelledby",[515,679,536],{"class":521},[515,681,682],{"class":539},"\"theme-label\"",[515,684,685],{"class":521},">\n",[515,687,688,691,693,696,698,700,702,704,707,710,712],{"class":517,"line":549},[515,689,690],{"class":521},"    \u003C",[515,692,658],{"class":525},[515,694,695],{"class":532}," id",[515,697,536],{"class":521},[515,699,682],{"class":539},[515,701,661],{"class":532},[515,703,536],{"class":521},[515,705,706],{"class":539},"\"ori-segmented-control__label\"",[515,708,709],{"class":521},">Theme\u003C\u002F",[515,711,658],{"class":525},[515,713,685],{"class":521},[515,715,716,718,720,722,724,727],{"class":517,"line":560},[515,717,690],{"class":521},[515,719,658],{"class":525},[515,721,661],{"class":532},[515,723,536],{"class":521},[515,725,726],{"class":539},"\"ori-segmented-control__track\"",[515,728,685],{"class":521},[515,730,731,734,737,739,741,744],{"class":517,"line":576},[515,732,733],{"class":521},"        \u003C",[515,735,736],{"class":525},"label",[515,738,661],{"class":532},[515,740,536],{"class":521},[515,742,743],{"class":539},"\"ori-segmented-control__item\"",[515,745,685],{"class":521},[515,747,748,751,754,756,758,761,764,766,769,772,774,777,780,782,785,788],{"class":517,"line":594},[515,749,750],{"class":521},"            \u003C",[515,752,753],{"class":525},"input",[515,755,661],{"class":532},[515,757,536],{"class":521},[515,759,760],{"class":539},"\"ori-segmented-control__input\"",[515,762,763],{"class":532}," type",[515,765,536],{"class":521},[515,767,768],{"class":539},"\"radio\"",[515,770,771],{"class":532}," name",[515,773,536],{"class":521},[515,775,776],{"class":539},"\"theme\"",[515,778,779],{"class":532}," value",[515,781,536],{"class":521},[515,783,784],{"class":539},"\"light\"",[515,786,787],{"class":532}," checked",[515,789,790],{"class":521}," \u002F>\n",[515,792,793,795,797,799,801,804,807,809],{"class":517,"line":609},[515,794,750],{"class":521},[515,796,515],{"class":525},[515,798,661],{"class":532},[515,800,536],{"class":521},[515,802,803],{"class":539},"\"ori-segmented-control__text\"",[515,805,806],{"class":521},">Light\u003C\u002F",[515,808,515],{"class":525},[515,810,685],{"class":521},[515,812,813,816,818],{"class":517,"line":625},[515,814,815],{"class":521},"        \u003C\u002F",[515,817,736],{"class":525},[515,819,685],{"class":521},[515,821,822,824,826,828,830,832],{"class":517,"line":633},[515,823,733],{"class":521},[515,825,736],{"class":525},[515,827,661],{"class":532},[515,829,536],{"class":521},[515,831,743],{"class":539},[515,833,685],{"class":521},[515,835,837,839,841,843,845,847,849,851,853,855,857,859,861,863,866],{"class":517,"line":836},10,[515,838,750],{"class":521},[515,840,753],{"class":525},[515,842,661],{"class":532},[515,844,536],{"class":521},[515,846,760],{"class":539},[515,848,763],{"class":532},[515,850,536],{"class":521},[515,852,768],{"class":539},[515,854,771],{"class":532},[515,856,536],{"class":521},[515,858,776],{"class":539},[515,860,779],{"class":532},[515,862,536],{"class":521},[515,864,865],{"class":539},"\"dark\"",[515,867,790],{"class":521},[515,869,871,873,875,877,879,881,884,886],{"class":517,"line":870},11,[515,872,750],{"class":521},[515,874,515],{"class":525},[515,876,661],{"class":532},[515,878,536],{"class":521},[515,880,803],{"class":539},[515,882,883],{"class":521},">Dark\u003C\u002F",[515,885,515],{"class":525},[515,887,685],{"class":521},[515,889,891,893,895],{"class":517,"line":890},12,[515,892,815],{"class":521},[515,894,736],{"class":525},[515,896,685],{"class":521},[515,898,900,902,904,906,908,910],{"class":517,"line":899},13,[515,901,733],{"class":521},[515,903,736],{"class":525},[515,905,661],{"class":532},[515,907,536],{"class":521},[515,909,743],{"class":539},[515,911,685],{"class":521},[515,913,915,917,919,921,923,925,927,929,931,933,935,937,939,941,944],{"class":517,"line":914},14,[515,916,750],{"class":521},[515,918,753],{"class":525},[515,920,661],{"class":532},[515,922,536],{"class":521},[515,924,760],{"class":539},[515,926,763],{"class":532},[515,928,536],{"class":521},[515,930,768],{"class":539},[515,932,771],{"class":532},[515,934,536],{"class":521},[515,936,776],{"class":539},[515,938,779],{"class":532},[515,940,536],{"class":521},[515,942,943],{"class":539},"\"auto\"",[515,945,790],{"class":521},[515,947,949,951,953,955,957,959,962,964],{"class":517,"line":948},15,[515,950,750],{"class":521},[515,952,515],{"class":525},[515,954,661],{"class":532},[515,956,536],{"class":521},[515,958,803],{"class":539},[515,960,961],{"class":521},">Auto\u003C\u002F",[515,963,515],{"class":525},[515,965,685],{"class":521},[515,967,969,971,973],{"class":517,"line":968},16,[515,970,815],{"class":521},[515,972,736],{"class":525},[515,974,685],{"class":521},[515,976,978,981,983],{"class":517,"line":977},17,[515,979,980],{"class":521},"    \u003C\u002F",[515,982,658],{"class":525},[515,984,685],{"class":521},[515,986,988,991,993],{"class":517,"line":987},18,[515,989,990],{"class":521},"\u003C\u002F",[515,992,658],{"class":525},[515,994,685],{"class":521},[271,996,997,998,1000,1001,1004,1005,1007],{},"Every group on a page needs its own ",[280,999,290],{}," — it is what makes the radios one group. The component generates\none (",[280,1002,1003],{},"useId",") when you do not pass ",[280,1006,290],{},"; in plain HTML you write it.",[341,1009,1011],{"id":1010},"colors","Colors",[271,1013,1014],{},"Every semantic role. The accent paints the checked segment's fill and the focus ring.",[271,1016,1017,1018,1021,1022,1025],{},"The checked segment also gets an ",[293,1019,1020],{},"edge in the role's text tone"," (",[280,1023,1024],{},"--ori-color-text","). That edge is not\ndecoration: the fill alone does not stand out 3:1 from the track in every role and theme — a warning fill, or\nany role in dark mode, measures under 3:1 — so without the edge the checked state would fail WCAG 1.4.11\n(non-text contrast). Do not remove it when restyling.",[497,1027,1028,1032,1036,1040,1044,1048,1052,1055,1245],{},[469,1029],{":options":1030,"model-value":275,"label":1031,"color":458},"[{\"label\":\"Option A\",\"value\":\"a\"},{\"label\":\"Option B\",\"value\":\"b\"}]","Primary",[469,1033],{":options":1030,"model-value":275,"label":1034,"color":1035},"Secondary","secondary",[469,1037],{":options":1030,"model-value":275,"label":1038,"color":1039},"Success","success",[469,1041],{":options":1030,"model-value":275,"label":1042,"color":1043},"Warning","warning",[469,1045],{":options":1030,"model-value":275,"label":1046,"color":1047},"Danger","danger",[469,1049],{":options":1030,"model-value":275,"label":1050,"color":1051},"Info","info",[469,1053],{":options":1030,"model-value":275,"label":122,"color":1054},"surface",[505,1056,1057],{"v-slot:vue":488},[480,1058,1060],{"className":509,"code":1059,"language":511,"meta":488,"style":488},"\u003COriSegmentedControl v-model=\"val\" label=\"Primary\" color=\"primary\" :options=\"opts\" \u002F>\n\u003COriSegmentedControl v-model=\"val\" label=\"Success\" color=\"success\" :options=\"opts\" \u002F>\n\u003COriSegmentedControl v-model=\"val\" label=\"Warning\" color=\"warning\" :options=\"opts\" \u002F>\n\u003COriSegmentedControl v-model=\"val\" label=\"Danger\" color=\"danger\" :options=\"opts\" \u002F>\n",[280,1061,1062,1113,1157,1201],{"__ignoreMap":488},[515,1063,1064,1066,1069,1072,1074,1076,1079,1081,1084,1086,1089,1092,1094,1097,1100,1102,1104,1106,1109,1111],{"class":517,"line":518},[515,1065,522],{"class":521},[515,1067,1068],{"class":525},"OriSegmentedControl",[515,1070,1071],{"class":532}," v-model",[515,1073,536],{"class":521},[515,1075,540],{"class":539},[515,1077,1078],{"class":521},"val",[515,1080,540],{"class":539},[515,1082,1083],{"class":532}," label",[515,1085,536],{"class":521},[515,1087,1088],{"class":539},"\"Primary\"",[515,1090,1091],{"class":532}," color",[515,1093,536],{"class":521},[515,1095,1096],{"class":539},"\"primary\"",[515,1098,1099],{"class":521}," :",[515,1101,566],{"class":532},[515,1103,536],{"class":521},[515,1105,540],{"class":539},[515,1107,1108],{"class":521},"opts",[515,1110,540],{"class":539},[515,1112,790],{"class":521},[515,1114,1115,1117,1119,1121,1123,1125,1127,1129,1131,1133,1136,1138,1140,1143,1145,1147,1149,1151,1153,1155],{"class":517,"line":529},[515,1116,522],{"class":521},[515,1118,1068],{"class":525},[515,1120,1071],{"class":532},[515,1122,536],{"class":521},[515,1124,540],{"class":539},[515,1126,1078],{"class":521},[515,1128,540],{"class":539},[515,1130,1083],{"class":532},[515,1132,536],{"class":521},[515,1134,1135],{"class":539},"\"Success\"",[515,1137,1091],{"class":532},[515,1139,536],{"class":521},[515,1141,1142],{"class":539},"\"success\"",[515,1144,1099],{"class":521},[515,1146,566],{"class":532},[515,1148,536],{"class":521},[515,1150,540],{"class":539},[515,1152,1108],{"class":521},[515,1154,540],{"class":539},[515,1156,790],{"class":521},[515,1158,1159,1161,1163,1165,1167,1169,1171,1173,1175,1177,1180,1182,1184,1187,1189,1191,1193,1195,1197,1199],{"class":517,"line":549},[515,1160,522],{"class":521},[515,1162,1068],{"class":525},[515,1164,1071],{"class":532},[515,1166,536],{"class":521},[515,1168,540],{"class":539},[515,1170,1078],{"class":521},[515,1172,540],{"class":539},[515,1174,1083],{"class":532},[515,1176,536],{"class":521},[515,1178,1179],{"class":539},"\"Warning\"",[515,1181,1091],{"class":532},[515,1183,536],{"class":521},[515,1185,1186],{"class":539},"\"warning\"",[515,1188,1099],{"class":521},[515,1190,566],{"class":532},[515,1192,536],{"class":521},[515,1194,540],{"class":539},[515,1196,1108],{"class":521},[515,1198,540],{"class":539},[515,1200,790],{"class":521},[515,1202,1203,1205,1207,1209,1211,1213,1215,1217,1219,1221,1224,1226,1228,1231,1233,1235,1237,1239,1241,1243],{"class":517,"line":560},[515,1204,522],{"class":521},[515,1206,1068],{"class":525},[515,1208,1071],{"class":532},[515,1210,536],{"class":521},[515,1212,540],{"class":539},[515,1214,1078],{"class":521},[515,1216,540],{"class":539},[515,1218,1083],{"class":532},[515,1220,536],{"class":521},[515,1222,1223],{"class":539},"\"Danger\"",[515,1225,1091],{"class":532},[515,1227,536],{"class":521},[515,1229,1230],{"class":539},"\"danger\"",[515,1232,1099],{"class":521},[515,1234,566],{"class":532},[515,1236,536],{"class":521},[515,1238,540],{"class":539},[515,1240,1108],{"class":521},[515,1242,540],{"class":539},[515,1244,790],{"class":521},[505,1246,1247],{"v-slot:html":488},[480,1248,1250],{"className":641,"code":1249,"language":643,"meta":488,"style":488},"\u003C!-- swap the color: ori-color_primary → _secondary \u002F _success \u002F _warning \u002F _danger \u002F _info \u002F _surface -->\n\u003Cdiv class=\"ori-segmented-control ori-color_success\" role=\"radiogroup\" aria-labelledby=\"mode-label\">…\u003C\u002Fdiv>\n",[280,1251,1252,1257],{"__ignoreMap":488},[515,1253,1254],{"class":517,"line":518},[515,1255,1256],{"class":650},"\u003C!-- swap the color: ori-color_primary → _secondary \u002F _success \u002F _warning \u002F _danger \u002F _info \u002F _surface -->\n",[515,1258,1259,1261,1263,1265,1267,1270,1272,1274,1276,1278,1280,1283,1286,1288],{"class":517,"line":529},[515,1260,522],{"class":521},[515,1262,658],{"class":525},[515,1264,661],{"class":532},[515,1266,536],{"class":521},[515,1268,1269],{"class":539},"\"ori-segmented-control ori-color_success\"",[515,1271,669],{"class":532},[515,1273,536],{"class":521},[515,1275,674],{"class":539},[515,1277,677],{"class":532},[515,1279,536],{"class":521},[515,1281,1282],{"class":539},"\"mode-label\"",[515,1284,1285],{"class":521},">…\u003C\u002F",[515,1287,658],{"class":525},[515,1289,685],{"class":521},[341,1291,1293],{"id":1292},"sizes","Sizes",[271,1295,1296,1299,1300,1303,1304,1306,1307,1310,1311,1313,1314,1317,1318,1321,1322,1324],{},[280,1297,1298],{},"xs"," → ",[280,1301,1302],{},"xxl",". The size sets the control's height from the action-size scale — ",[280,1305,1298],{}," 1.25rem, ",[280,1308,1309],{},"sm"," 1.5rem, ",[280,1312,462],{},"\n2.75rem, ",[280,1315,1316],{},"lg"," 3rem, ",[280,1319,1320],{},"xl"," 3.75rem, ",[280,1323,1302],{}," 4.25rem — and the text scales with it.",[497,1326,1327,1331,1333,1336,1338,1340,1342,1482],{},[469,1328],{":options":1329,"model-value":1330,"label":1298,"size":1298},"[{\"label\":\"Day\",\"value\":\"day\"},{\"label\":\"Week\",\"value\":\"week\"},{\"label\":\"Month\",\"value\":\"month\"}]","week",[469,1332],{":options":1329,"model-value":1330,"label":1309,"size":1309},[469,1334],{":options":1329,"model-value":1330,"label":1335,"size":462},"md (default)",[469,1337],{":options":1329,"model-value":1330,"label":1316,"size":1316},[469,1339],{":options":1329,"model-value":1330,"label":1320,"size":1320},[469,1341],{":options":1329,"model-value":1330,"label":1302,"size":1302},[505,1343,1344],{"v-slot:vue":488},[480,1345,1347],{"className":509,"code":1346,"language":511,"meta":488,"style":488},"\u003COriSegmentedControl v-model=\"range\" label=\"xs\" size=\"xs\" :options=\"ranges\" \u002F>\n\u003COriSegmentedControl v-model=\"range\" label=\"md (default)\" size=\"md\" :options=\"ranges\" \u002F>\n\u003COriSegmentedControl v-model=\"range\" label=\"xxl\" size=\"xxl\" :options=\"ranges\" \u002F>\n",[280,1348,1349,1395,1439],{"__ignoreMap":488},[515,1350,1351,1353,1355,1357,1359,1361,1364,1366,1368,1370,1373,1376,1378,1380,1382,1384,1386,1388,1391,1393],{"class":517,"line":518},[515,1352,522],{"class":521},[515,1354,1068],{"class":525},[515,1356,1071],{"class":532},[515,1358,536],{"class":521},[515,1360,540],{"class":539},[515,1362,1363],{"class":521},"range",[515,1365,540],{"class":539},[515,1367,1083],{"class":532},[515,1369,536],{"class":521},[515,1371,1372],{"class":539},"\"xs\"",[515,1374,1375],{"class":532}," size",[515,1377,536],{"class":521},[515,1379,1372],{"class":539},[515,1381,1099],{"class":521},[515,1383,566],{"class":532},[515,1385,536],{"class":521},[515,1387,540],{"class":539},[515,1389,1390],{"class":521},"ranges",[515,1392,540],{"class":539},[515,1394,790],{"class":521},[515,1396,1397,1399,1401,1403,1405,1407,1409,1411,1413,1415,1418,1420,1422,1425,1427,1429,1431,1433,1435,1437],{"class":517,"line":529},[515,1398,522],{"class":521},[515,1400,1068],{"class":525},[515,1402,1071],{"class":532},[515,1404,536],{"class":521},[515,1406,540],{"class":539},[515,1408,1363],{"class":521},[515,1410,540],{"class":539},[515,1412,1083],{"class":532},[515,1414,536],{"class":521},[515,1416,1417],{"class":539},"\"md (default)\"",[515,1419,1375],{"class":532},[515,1421,536],{"class":521},[515,1423,1424],{"class":539},"\"md\"",[515,1426,1099],{"class":521},[515,1428,566],{"class":532},[515,1430,536],{"class":521},[515,1432,540],{"class":539},[515,1434,1390],{"class":521},[515,1436,540],{"class":539},[515,1438,790],{"class":521},[515,1440,1441,1443,1445,1447,1449,1451,1453,1455,1457,1459,1462,1464,1466,1468,1470,1472,1474,1476,1478,1480],{"class":517,"line":549},[515,1442,522],{"class":521},[515,1444,1068],{"class":525},[515,1446,1071],{"class":532},[515,1448,536],{"class":521},[515,1450,540],{"class":539},[515,1452,1363],{"class":521},[515,1454,540],{"class":539},[515,1456,1083],{"class":532},[515,1458,536],{"class":521},[515,1460,1461],{"class":539},"\"xxl\"",[515,1463,1375],{"class":532},[515,1465,536],{"class":521},[515,1467,1461],{"class":539},[515,1469,1099],{"class":521},[515,1471,566],{"class":532},[515,1473,536],{"class":521},[515,1475,540],{"class":539},[515,1477,1390],{"class":521},[515,1479,540],{"class":539},[515,1481,790],{"class":521},[505,1483,1484],{"v-slot:html":488},[480,1485,1487],{"className":641,"code":1486,"language":643,"meta":488,"style":488},"\u003C!-- the Vue size prop emits two classes: the height and the text scale. Set both. -->\n\u003Cdiv\n    class=\"ori-segmented-control ori-segmented-control_lg ori-font-size_lg\"\n    role=\"radiogroup\"\n    aria-labelledby=\"range-label\"\n>\n    …\n\u003C\u002Fdiv>\n",[280,1488,1489,1494,1501,1511,1521,1531,1535,1540],{"__ignoreMap":488},[515,1490,1491],{"class":517,"line":518},[515,1492,1493],{"class":650},"\u003C!-- the Vue size prop emits two classes: the height and the text scale. Set both. -->\n",[515,1495,1496,1498],{"class":517,"line":529},[515,1497,522],{"class":521},[515,1499,1500],{"class":525},"div\n",[515,1502,1503,1506,1508],{"class":517,"line":549},[515,1504,1505],{"class":532},"    class",[515,1507,536],{"class":521},[515,1509,1510],{"class":539},"\"ori-segmented-control ori-segmented-control_lg ori-font-size_lg\"\n",[515,1512,1513,1516,1518],{"class":517,"line":560},[515,1514,1515],{"class":532},"    role",[515,1517,536],{"class":521},[515,1519,1520],{"class":539},"\"radiogroup\"\n",[515,1522,1523,1526,1528],{"class":517,"line":576},[515,1524,1525],{"class":532},"    aria-labelledby",[515,1527,536],{"class":521},[515,1529,1530],{"class":539},"\"range-label\"\n",[515,1532,1533],{"class":517,"line":594},[515,1534,685],{"class":521},[515,1536,1537],{"class":517,"line":609},[515,1538,1539],{"class":521},"    …\n",[515,1541,1542,1544,1546],{"class":517,"line":625},[515,1543,990],{"class":521},[515,1545,658],{"class":525},[515,1547,685],{"class":521},[341,1549,1551],{"id":1550},"fluid","Fluid",[271,1553,1554,1556],{},[280,1555,1550],{}," stretches the control to its container. The segments stay equal, so they share the width evenly\ninstead of hugging their text.",[497,1558,1559,1565,1655],{},[469,1560],{":options":1561,"model-value":1562,"label":1563,":fluid":1564},"[{\"label\":\"Monthly\",\"value\":\"monthly\"},{\"label\":\"Yearly\",\"value\":\"yearly\"}]","yearly","Billing","true",[505,1566,1567],{"v-slot:vue":488},[480,1568,1570],{"className":509,"code":1569,"language":511,"meta":488,"style":488},"\u003COriSegmentedControl\n    v-model=\"billing\"\n    label=\"Billing\"\n    fluid\n    :options=\"[\n        { label: 'Monthly', value: 'monthly' },\n        { label: 'Yearly', value: 'yearly' }\n    ]\"\n\u002F>\n",[280,1571,1572,1578,1591,1600,1605,1617,1631,1645,1651],{"__ignoreMap":488},[515,1573,1574,1576],{"class":517,"line":518},[515,1575,522],{"class":521},[515,1577,526],{"class":525},[515,1579,1580,1582,1584,1586,1589],{"class":517,"line":529},[515,1581,533],{"class":532},[515,1583,536],{"class":521},[515,1585,540],{"class":539},[515,1587,1588],{"class":521},"billing",[515,1590,546],{"class":539},[515,1592,1593,1595,1597],{"class":517,"line":549},[515,1594,552],{"class":532},[515,1596,536],{"class":521},[515,1598,1599],{"class":539},"\"Billing\"\n",[515,1601,1602],{"class":517,"line":560},[515,1603,1604],{"class":532},"    fluid\n",[515,1606,1607,1609,1611,1613,1615],{"class":517,"line":576},[515,1608,563],{"class":521},[515,1610,566],{"class":532},[515,1612,536],{"class":521},[515,1614,540],{"class":539},[515,1616,573],{"class":521},[515,1618,1619,1621,1624,1626,1629],{"class":517,"line":594},[515,1620,579],{"class":521},[515,1622,1623],{"class":539},"'Monthly'",[515,1625,585],{"class":521},[515,1627,1628],{"class":539},"'monthly'",[515,1630,591],{"class":521},[515,1632,1633,1635,1638,1640,1643],{"class":517,"line":609},[515,1634,579],{"class":521},[515,1636,1637],{"class":539},"'Yearly'",[515,1639,585],{"class":521},[515,1641,1642],{"class":539},"'yearly'",[515,1644,622],{"class":521},[515,1646,1647,1649],{"class":517,"line":625},[515,1648,628],{"class":521},[515,1650,546],{"class":539},[515,1652,1653],{"class":517,"line":633},[515,1654,636],{"class":521},[505,1656,1657],{"v-slot:html":488},[480,1658,1660],{"className":641,"code":1659,"language":643,"meta":488,"style":488},"\u003C!-- add ori-segmented-control_fluid to the container -->\n\u003Cdiv class=\"ori-segmented-control ori-segmented-control_fluid\" role=\"radiogroup\" aria-labelledby=\"billing-label\">\n    \u003Cdiv id=\"billing-label\" class=\"ori-segmented-control__label\">Billing\u003C\u002Fdiv>\n    \u003Cdiv class=\"ori-segmented-control__track\">\n        \u003Clabel class=\"ori-segmented-control__item\">\n            \u003Cinput class=\"ori-segmented-control__input\" type=\"radio\" name=\"billing\" value=\"monthly\" \u002F>\n            \u003Cspan class=\"ori-segmented-control__text\">Monthly\u003C\u002Fspan>\n        \u003C\u002Flabel>\n        \u003Clabel class=\"ori-segmented-control__item\">\n            \u003Cinput class=\"ori-segmented-control__input\" type=\"radio\" name=\"billing\" value=\"yearly\" checked \u002F>\n            \u003Cspan class=\"ori-segmented-control__text\">Yearly\u003C\u002Fspan>\n        \u003C\u002Flabel>\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n",[280,1661,1662,1667,1695,1720,1734,1748,1782,1801,1809,1823,1858,1877,1885,1893],{"__ignoreMap":488},[515,1663,1664],{"class":517,"line":518},[515,1665,1666],{"class":650},"\u003C!-- add ori-segmented-control_fluid to the container -->\n",[515,1668,1669,1671,1673,1675,1677,1680,1682,1684,1686,1688,1690,1693],{"class":517,"line":529},[515,1670,522],{"class":521},[515,1672,658],{"class":525},[515,1674,661],{"class":532},[515,1676,536],{"class":521},[515,1678,1679],{"class":539},"\"ori-segmented-control ori-segmented-control_fluid\"",[515,1681,669],{"class":532},[515,1683,536],{"class":521},[515,1685,674],{"class":539},[515,1687,677],{"class":532},[515,1689,536],{"class":521},[515,1691,1692],{"class":539},"\"billing-label\"",[515,1694,685],{"class":521},[515,1696,1697,1699,1701,1703,1705,1707,1709,1711,1713,1716,1718],{"class":517,"line":549},[515,1698,690],{"class":521},[515,1700,658],{"class":525},[515,1702,695],{"class":532},[515,1704,536],{"class":521},[515,1706,1692],{"class":539},[515,1708,661],{"class":532},[515,1710,536],{"class":521},[515,1712,706],{"class":539},[515,1714,1715],{"class":521},">Billing\u003C\u002F",[515,1717,658],{"class":525},[515,1719,685],{"class":521},[515,1721,1722,1724,1726,1728,1730,1732],{"class":517,"line":560},[515,1723,690],{"class":521},[515,1725,658],{"class":525},[515,1727,661],{"class":532},[515,1729,536],{"class":521},[515,1731,726],{"class":539},[515,1733,685],{"class":521},[515,1735,1736,1738,1740,1742,1744,1746],{"class":517,"line":576},[515,1737,733],{"class":521},[515,1739,736],{"class":525},[515,1741,661],{"class":532},[515,1743,536],{"class":521},[515,1745,743],{"class":539},[515,1747,685],{"class":521},[515,1749,1750,1752,1754,1756,1758,1760,1762,1764,1766,1768,1770,1773,1775,1777,1780],{"class":517,"line":594},[515,1751,750],{"class":521},[515,1753,753],{"class":525},[515,1755,661],{"class":532},[515,1757,536],{"class":521},[515,1759,760],{"class":539},[515,1761,763],{"class":532},[515,1763,536],{"class":521},[515,1765,768],{"class":539},[515,1767,771],{"class":532},[515,1769,536],{"class":521},[515,1771,1772],{"class":539},"\"billing\"",[515,1774,779],{"class":532},[515,1776,536],{"class":521},[515,1778,1779],{"class":539},"\"monthly\"",[515,1781,790],{"class":521},[515,1783,1784,1786,1788,1790,1792,1794,1797,1799],{"class":517,"line":609},[515,1785,750],{"class":521},[515,1787,515],{"class":525},[515,1789,661],{"class":532},[515,1791,536],{"class":521},[515,1793,803],{"class":539},[515,1795,1796],{"class":521},">Monthly\u003C\u002F",[515,1798,515],{"class":525},[515,1800,685],{"class":521},[515,1802,1803,1805,1807],{"class":517,"line":625},[515,1804,815],{"class":521},[515,1806,736],{"class":525},[515,1808,685],{"class":521},[515,1810,1811,1813,1815,1817,1819,1821],{"class":517,"line":633},[515,1812,733],{"class":521},[515,1814,736],{"class":525},[515,1816,661],{"class":532},[515,1818,536],{"class":521},[515,1820,743],{"class":539},[515,1822,685],{"class":521},[515,1824,1825,1827,1829,1831,1833,1835,1837,1839,1841,1843,1845,1847,1849,1851,1854,1856],{"class":517,"line":836},[515,1826,750],{"class":521},[515,1828,753],{"class":525},[515,1830,661],{"class":532},[515,1832,536],{"class":521},[515,1834,760],{"class":539},[515,1836,763],{"class":532},[515,1838,536],{"class":521},[515,1840,768],{"class":539},[515,1842,771],{"class":532},[515,1844,536],{"class":521},[515,1846,1772],{"class":539},[515,1848,779],{"class":532},[515,1850,536],{"class":521},[515,1852,1853],{"class":539},"\"yearly\"",[515,1855,787],{"class":532},[515,1857,790],{"class":521},[515,1859,1860,1862,1864,1866,1868,1870,1873,1875],{"class":517,"line":870},[515,1861,750],{"class":521},[515,1863,515],{"class":525},[515,1865,661],{"class":532},[515,1867,536],{"class":521},[515,1869,803],{"class":539},[515,1871,1872],{"class":521},">Yearly\u003C\u002F",[515,1874,515],{"class":525},[515,1876,685],{"class":521},[515,1878,1879,1881,1883],{"class":517,"line":890},[515,1880,815],{"class":521},[515,1882,736],{"class":525},[515,1884,685],{"class":521},[515,1886,1887,1889,1891],{"class":517,"line":899},[515,1888,980],{"class":521},[515,1890,658],{"class":525},[515,1892,685],{"class":521},[515,1894,1895,1897,1899],{"class":517,"line":914},[515,1896,990],{"class":521},[515,1898,658],{"class":525},[515,1900,685],{"class":521},[341,1902,1904],{"id":1903},"icons","Icons",[271,1906,1907,1908,1911,1912,1915],{},"Give an option an ",[280,1909,1910],{},"icon"," — an SVG path, drawn by ",[275,1913,1914],{"href":57},"OriIcon"," before the label.",[497,1917,1918,1922,2149],{},[469,1919],{":options":1920,"model-value":1921,"label":503},"[{\"label\":\"Light\",\"value\":\"light\",\"icon\":\"M12 8a4 4 0 1 0 0 8 4 4 0 0 0 0-8zM11 2h2v3h-2zm0 17h2v3h-2zM2 11h3v2H2zm17 0h3v2h-3z\"},{\"label\":\"Dark\",\"value\":\"dark\",\"icon\":\"M12 3a9 9 0 1 0 9 9c0-.46-.04-.92-.1-1.36a5.389 5.389 0 0 1-4.4 2.26 5.403 5.403 0 0 1-3.14-9.8c-.44-.06-.9-.1-1.36-.1z\"},{\"label\":\"Auto\",\"value\":\"auto\",\"icon\":\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18V4c4.41 0 8 3.59 8 8s-3.59 8-8 8z\"}]","auto",[505,1923,1924],{"v-slot:vue":488},[480,1925,1927],{"className":509,"code":1926,"language":511,"meta":488,"style":488},"\u003Cscript setup lang=\"ts\">\nimport type { SegmentedOption } from '@oriui\u002Fvue'\n\nconst sun = 'M12 8a4 4 0 1 0 0 8 4 4 0 0 0 0-8zM11 2h2v3h-2zm0 17h2v3h-2zM2 11h3v2H2zm17 0h3v2h-3z'\nconst moon =\n    'M12 3a9 9 0 1 0 9 9c0-.46-.04-.92-.1-1.36a5.389 5.389 0 0 1-4.4 2.26 5.403 5.403 0 0 1-3.14-9.8c-.44-.06-.9-.1-1.36-.1z'\nconst auto = 'M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18V4c4.41 0 8 3.59 8 8s-3.59 8-8 8z'\n\nconst options: SegmentedOption[] = [\n    { label: 'Light', value: 'light', icon: sun },\n    { label: 'Dark', value: 'dark', icon: moon },\n    { label: 'Auto', value: 'auto', icon: auto }\n]\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n    \u003COriSegmentedControl v-model=\"theme\" label=\"Theme\" :options=\"options\" \u002F>\n\u003C\u002Ftemplate>\n",[280,1928,1929,1949,1966,1972,1987,1997,2002,2014,2018,2039,2053,2066,2079,2084,2092,2096,2104,2141],{"__ignoreMap":488},[515,1930,1931,1933,1936,1939,1942,1944,1947],{"class":517,"line":518},[515,1932,522],{"class":521},[515,1934,1935],{"class":525},"script",[515,1937,1938],{"class":532}," setup",[515,1940,1941],{"class":532}," lang",[515,1943,536],{"class":521},[515,1945,1946],{"class":539},"\"ts\"",[515,1948,685],{"class":521},[515,1950,1951,1955,1957,1960,1963],{"class":517,"line":529},[515,1952,1954],{"class":1953},"szBVR","import",[515,1956,763],{"class":1953},[515,1958,1959],{"class":521}," { SegmentedOption } ",[515,1961,1962],{"class":1953},"from",[515,1964,1965],{"class":539}," '@oriui\u002Fvue'\n",[515,1967,1968],{"class":517,"line":549},[515,1969,1971],{"emptyLinePlaceholder":1970},true,"\n",[515,1973,1974,1977,1981,1984],{"class":517,"line":560},[515,1975,1976],{"class":1953},"const",[515,1978,1980],{"class":1979},"sj4cs"," sun",[515,1982,1983],{"class":1953}," =",[515,1985,1986],{"class":539}," 'M12 8a4 4 0 1 0 0 8 4 4 0 0 0 0-8zM11 2h2v3h-2zm0 17h2v3h-2zM2 11h3v2H2zm17 0h3v2h-3z'\n",[515,1988,1989,1991,1994],{"class":517,"line":576},[515,1990,1976],{"class":1953},[515,1992,1993],{"class":1979}," moon",[515,1995,1996],{"class":1953}," =\n",[515,1998,1999],{"class":517,"line":594},[515,2000,2001],{"class":539},"    'M12 3a9 9 0 1 0 9 9c0-.46-.04-.92-.1-1.36a5.389 5.389 0 0 1-4.4 2.26 5.403 5.403 0 0 1-3.14-9.8c-.44-.06-.9-.1-1.36-.1z'\n",[515,2003,2004,2006,2009,2011],{"class":517,"line":609},[515,2005,1976],{"class":1953},[515,2007,2008],{"class":1979}," auto",[515,2010,1983],{"class":1953},[515,2012,2013],{"class":539}," 'M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18V4c4.41 0 8 3.59 8 8s-3.59 8-8 8z'\n",[515,2015,2016],{"class":517,"line":625},[515,2017,1971],{"emptyLinePlaceholder":1970},[515,2019,2020,2022,2025,2028,2031,2034,2036],{"class":517,"line":633},[515,2021,1976],{"class":1953},[515,2023,2024],{"class":1979}," options",[515,2026,2027],{"class":1953},":",[515,2029,2030],{"class":532}," SegmentedOption",[515,2032,2033],{"class":521},"[] ",[515,2035,536],{"class":1953},[515,2037,2038],{"class":521}," [\n",[515,2040,2041,2044,2046,2048,2050],{"class":517,"line":836},[515,2042,2043],{"class":521},"    { label: ",[515,2045,582],{"class":539},[515,2047,585],{"class":521},[515,2049,588],{"class":539},[515,2051,2052],{"class":521},", icon: sun },\n",[515,2054,2055,2057,2059,2061,2063],{"class":517,"line":870},[515,2056,2043],{"class":521},[515,2058,599],{"class":539},[515,2060,585],{"class":521},[515,2062,604],{"class":539},[515,2064,2065],{"class":521},", icon: moon },\n",[515,2067,2068,2070,2072,2074,2076],{"class":517,"line":890},[515,2069,2043],{"class":521},[515,2071,614],{"class":539},[515,2073,585],{"class":521},[515,2075,619],{"class":539},[515,2077,2078],{"class":521},", icon: auto }\n",[515,2080,2081],{"class":517,"line":899},[515,2082,2083],{"class":521},"]\n",[515,2085,2086,2088,2090],{"class":517,"line":914},[515,2087,990],{"class":521},[515,2089,1935],{"class":525},[515,2091,685],{"class":521},[515,2093,2094],{"class":517,"line":948},[515,2095,1971],{"emptyLinePlaceholder":1970},[515,2097,2098,2100,2102],{"class":517,"line":968},[515,2099,522],{"class":521},[515,2101,505],{"class":525},[515,2103,685],{"class":521},[515,2105,2106,2108,2110,2112,2114,2116,2118,2120,2122,2124,2127,2129,2131,2133,2135,2137,2139],{"class":517,"line":977},[515,2107,690],{"class":521},[515,2109,1068],{"class":525},[515,2111,1071],{"class":532},[515,2113,536],{"class":521},[515,2115,540],{"class":539},[515,2117,543],{"class":521},[515,2119,540],{"class":539},[515,2121,1083],{"class":532},[515,2123,536],{"class":521},[515,2125,2126],{"class":539},"\"Theme\"",[515,2128,1099],{"class":521},[515,2130,566],{"class":532},[515,2132,536],{"class":521},[515,2134,540],{"class":539},[515,2136,566],{"class":521},[515,2138,540],{"class":539},[515,2140,790],{"class":521},[515,2142,2143,2145,2147],{"class":517,"line":987},[515,2144,990],{"class":521},[515,2146,505],{"class":525},[515,2148,685],{"class":521},[505,2150,2151],{"v-slot:html":488},[480,2152,2154],{"className":641,"code":2153,"language":643,"meta":488,"style":488},"\u003C!-- the icon is an OriIcon: a decorative \u003Ci> carrying an inline SVG, laid before the text -->\n\u003Clabel class=\"ori-segmented-control__item\">\n    \u003Cinput class=\"ori-segmented-control__input\" type=\"radio\" name=\"theme\" value=\"light\" \u002F>\n    \u003Ci class=\"ori-icon ori-icon_inherit ori-segmented-control__icon\" aria-hidden=\"true\">\n        \u003Csvg viewBox=\"0 0 24 24\">\u003Cpath d=\"M12 8a4 4 0 1 0 0 8 4 4 0 0 0 0-8zM11 2h2v3h-2z…\" \u002F>\u003C\u002Fsvg>\n    \u003C\u002Fi>\n    \u003Cspan class=\"ori-segmented-control__text\">Light\u003C\u002Fspan>\n\u003C\u002Flabel>\n",[280,2155,2156,2161,2175,2207,2231,2267,2275,2293],{"__ignoreMap":488},[515,2157,2158],{"class":517,"line":518},[515,2159,2160],{"class":650},"\u003C!-- the icon is an OriIcon: a decorative \u003Ci> carrying an inline SVG, laid before the text -->\n",[515,2162,2163,2165,2167,2169,2171,2173],{"class":517,"line":529},[515,2164,522],{"class":521},[515,2166,736],{"class":525},[515,2168,661],{"class":532},[515,2170,536],{"class":521},[515,2172,743],{"class":539},[515,2174,685],{"class":521},[515,2176,2177,2179,2181,2183,2185,2187,2189,2191,2193,2195,2197,2199,2201,2203,2205],{"class":517,"line":549},[515,2178,690],{"class":521},[515,2180,753],{"class":525},[515,2182,661],{"class":532},[515,2184,536],{"class":521},[515,2186,760],{"class":539},[515,2188,763],{"class":532},[515,2190,536],{"class":521},[515,2192,768],{"class":539},[515,2194,771],{"class":532},[515,2196,536],{"class":521},[515,2198,776],{"class":539},[515,2200,779],{"class":532},[515,2202,536],{"class":521},[515,2204,784],{"class":539},[515,2206,790],{"class":521},[515,2208,2209,2211,2214,2216,2218,2221,2224,2226,2229],{"class":517,"line":560},[515,2210,690],{"class":521},[515,2212,2213],{"class":525},"i",[515,2215,661],{"class":532},[515,2217,536],{"class":521},[515,2219,2220],{"class":539},"\"ori-icon ori-icon_inherit ori-segmented-control__icon\"",[515,2222,2223],{"class":532}," aria-hidden",[515,2225,536],{"class":521},[515,2227,2228],{"class":539},"\"true\"",[515,2230,685],{"class":521},[515,2232,2233,2235,2238,2241,2243,2246,2249,2252,2255,2257,2260,2263,2265],{"class":517,"line":576},[515,2234,733],{"class":521},[515,2236,2237],{"class":525},"svg",[515,2239,2240],{"class":532}," viewBox",[515,2242,536],{"class":521},[515,2244,2245],{"class":539},"\"0 0 24 24\"",[515,2247,2248],{"class":521},">\u003C",[515,2250,2251],{"class":525},"path",[515,2253,2254],{"class":532}," d",[515,2256,536],{"class":521},[515,2258,2259],{"class":539},"\"M12 8a4 4 0 1 0 0 8 4 4 0 0 0 0-8zM11 2h2v3h-2z…\"",[515,2261,2262],{"class":521}," \u002F>\u003C\u002F",[515,2264,2237],{"class":525},[515,2266,685],{"class":521},[515,2268,2269,2271,2273],{"class":517,"line":594},[515,2270,980],{"class":521},[515,2272,2213],{"class":525},[515,2274,685],{"class":521},[515,2276,2277,2279,2281,2283,2285,2287,2289,2291],{"class":517,"line":609},[515,2278,690],{"class":521},[515,2280,515],{"class":525},[515,2282,661],{"class":532},[515,2284,536],{"class":521},[515,2286,803],{"class":539},[515,2288,806],{"class":521},[515,2290,515],{"class":525},[515,2292,685],{"class":521},[515,2294,2295,2297,2299],{"class":517,"line":625},[515,2296,990],{"class":521},[515,2298,736],{"class":525},[515,2300,685],{"class":521},[271,2302,2303,2304,2307,2308,452],{},"The icon is decorative (",[280,2305,2306],{},"aria-hidden","); the segment is still named by its text. Keep the text — see\n",[275,2309,230],{"href":2310},"#accessibility",[341,2312,2314],{"id":2313},"disabled-whole-group","Disabled — whole group",[271,2316,2317,2318,2321],{},"Pass ",[280,2319,2320],{},"disabled"," to lock every segment. They dim and the arrows skip them.",[497,2323,2324,2328,2376],{},[469,2325],{":options":501,"model-value":2326,"label":2327,":disabled":1564},"dark","Theme (locked)",[505,2329,2330],{"v-slot:vue":488},[480,2331,2333],{"className":509,"code":2332,"language":511,"meta":488,"style":488},"\u003COriSegmentedControl v-model=\"theme\" label=\"Theme (locked)\" disabled :options=\"themes\" \u002F>\n",[280,2334,2335],{"__ignoreMap":488},[515,2336,2337,2339,2341,2343,2345,2347,2349,2351,2353,2355,2358,2361,2363,2365,2367,2369,2372,2374],{"class":517,"line":518},[515,2338,522],{"class":521},[515,2340,1068],{"class":525},[515,2342,1071],{"class":532},[515,2344,536],{"class":521},[515,2346,540],{"class":539},[515,2348,543],{"class":521},[515,2350,540],{"class":539},[515,2352,1083],{"class":532},[515,2354,536],{"class":521},[515,2356,2357],{"class":539},"\"Theme (locked)\"",[515,2359,2360],{"class":532}," disabled",[515,2362,1099],{"class":521},[515,2364,566],{"class":532},[515,2366,536],{"class":521},[515,2368,540],{"class":539},[515,2370,2371],{"class":521},"themes",[515,2373,540],{"class":539},[515,2375,790],{"class":521},[505,2377,2378],{"v-slot:html":488},[480,2379,2381],{"className":641,"code":2380,"language":643,"meta":488,"style":488},"\u003Cdiv class=\"ori-segmented-control\" role=\"radiogroup\" aria-labelledby=\"theme-label\">\n    \u003Cdiv id=\"theme-label\" class=\"ori-segmented-control__label\">Theme (locked)\u003C\u002Fdiv>\n    \u003Cdiv class=\"ori-segmented-control__track\">\n        \u003C!-- the real disabled attribute on each input drives the dimming -->\n        \u003Clabel class=\"ori-segmented-control__item\">\n            \u003Cinput class=\"ori-segmented-control__input\" type=\"radio\" name=\"theme\" value=\"light\" disabled \u002F>\n            \u003Cspan class=\"ori-segmented-control__text\">Light\u003C\u002Fspan>\n        \u003C\u002Flabel>\n        \u003C!-- … Dark (checked), Auto -->\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n",[280,2382,2383,2409,2434,2448,2453,2467,2501,2519,2527,2532,2540],{"__ignoreMap":488},[515,2384,2385,2387,2389,2391,2393,2395,2397,2399,2401,2403,2405,2407],{"class":517,"line":518},[515,2386,522],{"class":521},[515,2388,658],{"class":525},[515,2390,661],{"class":532},[515,2392,536],{"class":521},[515,2394,666],{"class":539},[515,2396,669],{"class":532},[515,2398,536],{"class":521},[515,2400,674],{"class":539},[515,2402,677],{"class":532},[515,2404,536],{"class":521},[515,2406,682],{"class":539},[515,2408,685],{"class":521},[515,2410,2411,2413,2415,2417,2419,2421,2423,2425,2427,2430,2432],{"class":517,"line":529},[515,2412,690],{"class":521},[515,2414,658],{"class":525},[515,2416,695],{"class":532},[515,2418,536],{"class":521},[515,2420,682],{"class":539},[515,2422,661],{"class":532},[515,2424,536],{"class":521},[515,2426,706],{"class":539},[515,2428,2429],{"class":521},">Theme (locked)\u003C\u002F",[515,2431,658],{"class":525},[515,2433,685],{"class":521},[515,2435,2436,2438,2440,2442,2444,2446],{"class":517,"line":549},[515,2437,690],{"class":521},[515,2439,658],{"class":525},[515,2441,661],{"class":532},[515,2443,536],{"class":521},[515,2445,726],{"class":539},[515,2447,685],{"class":521},[515,2449,2450],{"class":517,"line":560},[515,2451,2452],{"class":650},"        \u003C!-- the real disabled attribute on each input drives the dimming -->\n",[515,2454,2455,2457,2459,2461,2463,2465],{"class":517,"line":576},[515,2456,733],{"class":521},[515,2458,736],{"class":525},[515,2460,661],{"class":532},[515,2462,536],{"class":521},[515,2464,743],{"class":539},[515,2466,685],{"class":521},[515,2468,2469,2471,2473,2475,2477,2479,2481,2483,2485,2487,2489,2491,2493,2495,2497,2499],{"class":517,"line":594},[515,2470,750],{"class":521},[515,2472,753],{"class":525},[515,2474,661],{"class":532},[515,2476,536],{"class":521},[515,2478,760],{"class":539},[515,2480,763],{"class":532},[515,2482,536],{"class":521},[515,2484,768],{"class":539},[515,2486,771],{"class":532},[515,2488,536],{"class":521},[515,2490,776],{"class":539},[515,2492,779],{"class":532},[515,2494,536],{"class":521},[515,2496,784],{"class":539},[515,2498,2360],{"class":532},[515,2500,790],{"class":521},[515,2502,2503,2505,2507,2509,2511,2513,2515,2517],{"class":517,"line":609},[515,2504,750],{"class":521},[515,2506,515],{"class":525},[515,2508,661],{"class":532},[515,2510,536],{"class":521},[515,2512,803],{"class":539},[515,2514,806],{"class":521},[515,2516,515],{"class":525},[515,2518,685],{"class":521},[515,2520,2521,2523,2525],{"class":517,"line":625},[515,2522,815],{"class":521},[515,2524,736],{"class":525},[515,2526,685],{"class":521},[515,2528,2529],{"class":517,"line":633},[515,2530,2531],{"class":650},"        \u003C!-- … Dark (checked), Auto -->\n",[515,2533,2534,2536,2538],{"class":517,"line":836},[515,2535,980],{"class":521},[515,2537,658],{"class":525},[515,2539,685],{"class":521},[515,2541,2542,2544,2546],{"class":517,"line":870},[515,2543,990],{"class":521},[515,2545,658],{"class":525},[515,2547,685],{"class":521},[271,2549,2550,2551,2554],{},"The dimming reads the real control state, so in plain HTML a ",[280,2552,2553],{},"\u003Cfieldset disabled>"," around the control dims it\ntoo — no class to add.",[341,2556,2558],{"id":2557},"disabled-per-segment","Disabled — per segment",[271,2560,2561,2562,2565],{},"Set ",[280,2563,2564],{},"disabled: true"," on individual options to lock only those; the arrows step over a locked segment.",[497,2567,2568,2573,2677],{},[469,2569],{":options":2570,"model-value":2571,"label":2572},"[{\"label\":\"CSV\",\"value\":\"csv\"},{\"label\":\"JSON\",\"value\":\"json\"},{\"label\":\"PDF (soon)\",\"value\":\"pdf\",\"disabled\":true}]","csv","Export as",[505,2574,2575],{"v-slot:vue":488},[480,2576,2578],{"className":509,"code":2577,"language":511,"meta":488,"style":488},"\u003COriSegmentedControl\n    v-model=\"format\"\n    label=\"Export as\"\n    :options=\"[\n        { label: 'CSV', value: 'csv' },\n        { label: 'JSON', value: 'json' },\n        { label: 'PDF (soon)', value: 'pdf', disabled: true }\n    ]\"\n\u002F>\n",[280,2579,2580,2586,2599,2608,2620,2634,2648,2667,2673],{"__ignoreMap":488},[515,2581,2582,2584],{"class":517,"line":518},[515,2583,522],{"class":521},[515,2585,526],{"class":525},[515,2587,2588,2590,2592,2594,2597],{"class":517,"line":529},[515,2589,533],{"class":532},[515,2591,536],{"class":521},[515,2593,540],{"class":539},[515,2595,2596],{"class":521},"format",[515,2598,546],{"class":539},[515,2600,2601,2603,2605],{"class":517,"line":549},[515,2602,552],{"class":532},[515,2604,536],{"class":521},[515,2606,2607],{"class":539},"\"Export as\"\n",[515,2609,2610,2612,2614,2616,2618],{"class":517,"line":560},[515,2611,563],{"class":521},[515,2613,566],{"class":532},[515,2615,536],{"class":521},[515,2617,540],{"class":539},[515,2619,573],{"class":521},[515,2621,2622,2624,2627,2629,2632],{"class":517,"line":576},[515,2623,579],{"class":521},[515,2625,2626],{"class":539},"'CSV'",[515,2628,585],{"class":521},[515,2630,2631],{"class":539},"'csv'",[515,2633,591],{"class":521},[515,2635,2636,2638,2641,2643,2646],{"class":517,"line":594},[515,2637,579],{"class":521},[515,2639,2640],{"class":539},"'JSON'",[515,2642,585],{"class":521},[515,2644,2645],{"class":539},"'json'",[515,2647,591],{"class":521},[515,2649,2650,2652,2655,2657,2660,2663,2665],{"class":517,"line":609},[515,2651,579],{"class":521},[515,2653,2654],{"class":539},"'PDF (soon)'",[515,2656,585],{"class":521},[515,2658,2659],{"class":539},"'pdf'",[515,2661,2662],{"class":521},", disabled: ",[515,2664,1564],{"class":1979},[515,2666,622],{"class":521},[515,2668,2669,2671],{"class":517,"line":625},[515,2670,628],{"class":521},[515,2672,546],{"class":539},[515,2674,2675],{"class":517,"line":633},[515,2676,636],{"class":521},[505,2678,2679],{"v-slot:html":488},[480,2680,2682],{"className":641,"code":2681,"language":643,"meta":488,"style":488},"\u003C!-- only the locked segment's input gets the disabled attribute -->\n\u003Clabel class=\"ori-segmented-control__item\">\n    \u003Cinput class=\"ori-segmented-control__input\" type=\"radio\" name=\"format\" value=\"pdf\" disabled \u002F>\n    \u003Cspan class=\"ori-segmented-control__text\">PDF (soon)\u003C\u002Fspan>\n\u003C\u002Flabel>\n",[280,2683,2684,2689,2703,2739,2758],{"__ignoreMap":488},[515,2685,2686],{"class":517,"line":518},[515,2687,2688],{"class":650},"\u003C!-- only the locked segment's input gets the disabled attribute -->\n",[515,2690,2691,2693,2695,2697,2699,2701],{"class":517,"line":529},[515,2692,522],{"class":521},[515,2694,736],{"class":525},[515,2696,661],{"class":532},[515,2698,536],{"class":521},[515,2700,743],{"class":539},[515,2702,685],{"class":521},[515,2704,2705,2707,2709,2711,2713,2715,2717,2719,2721,2723,2725,2728,2730,2732,2735,2737],{"class":517,"line":549},[515,2706,690],{"class":521},[515,2708,753],{"class":525},[515,2710,661],{"class":532},[515,2712,536],{"class":521},[515,2714,760],{"class":539},[515,2716,763],{"class":532},[515,2718,536],{"class":521},[515,2720,768],{"class":539},[515,2722,771],{"class":532},[515,2724,536],{"class":521},[515,2726,2727],{"class":539},"\"format\"",[515,2729,779],{"class":532},[515,2731,536],{"class":521},[515,2733,2734],{"class":539},"\"pdf\"",[515,2736,2360],{"class":532},[515,2738,790],{"class":521},[515,2740,2741,2743,2745,2747,2749,2751,2754,2756],{"class":517,"line":560},[515,2742,690],{"class":521},[515,2744,515],{"class":525},[515,2746,661],{"class":532},[515,2748,536],{"class":521},[515,2750,803],{"class":539},[515,2752,2753],{"class":521},">PDF (soon)\u003C\u002F",[515,2755,515],{"class":525},[515,2757,685],{"class":521},[515,2759,2760,2762,2764],{"class":517,"line":576},[515,2761,990],{"class":521},[515,2763,736],{"class":525},[515,2765,685],{"class":521},[341,2767,2769],{"id":2768},"radius","Radius",[271,2771,2772,2773,2775,2776,2779],{},"The track radius is the shared ",[280,2774,444],{}," token and the segments follow it, three pixels inside. The\ncomponent has no radius prop — put the utility on the root, where a fall-through ",[280,2777,2778],{},"class"," lands.",[497,2781,2782,2789,2794,2889],{},[469,2783],{":options":2784,"model-value":2785,"label":2786,"className":2787},"[{\"label\":\"One\",\"value\":\"a\"},{\"label\":\"Two\",\"value\":\"b\"},{\"label\":\"Three\",\"value\":\"c\"}]","b","Square",[2788],"ori-size-radius_none",[469,2790],{":options":2784,"model-value":2785,"label":2791,"className":2792},"Pill",[2793],"ori-size-radius_full",[505,2795,2796],{"v-slot:vue":488},[480,2797,2799],{"className":509,"code":2798,"language":511,"meta":488,"style":488},"\u003COriSegmentedControl v-model=\"val\" label=\"Square\" class=\"ori-size-radius_none\" :options=\"opts\" \u002F>\n\u003COriSegmentedControl v-model=\"val\" label=\"Pill\" class=\"ori-size-radius_full\" :options=\"opts\" \u002F>\n",[280,2800,2801,2845],{"__ignoreMap":488},[515,2802,2803,2805,2807,2809,2811,2813,2815,2817,2819,2821,2824,2826,2828,2831,2833,2835,2837,2839,2841,2843],{"class":517,"line":518},[515,2804,522],{"class":521},[515,2806,1068],{"class":525},[515,2808,1071],{"class":532},[515,2810,536],{"class":521},[515,2812,540],{"class":539},[515,2814,1078],{"class":521},[515,2816,540],{"class":539},[515,2818,1083],{"class":532},[515,2820,536],{"class":521},[515,2822,2823],{"class":539},"\"Square\"",[515,2825,661],{"class":532},[515,2827,536],{"class":521},[515,2829,2830],{"class":539},"\"ori-size-radius_none\"",[515,2832,1099],{"class":521},[515,2834,566],{"class":532},[515,2836,536],{"class":521},[515,2838,540],{"class":539},[515,2840,1108],{"class":521},[515,2842,540],{"class":539},[515,2844,790],{"class":521},[515,2846,2847,2849,2851,2853,2855,2857,2859,2861,2863,2865,2868,2870,2872,2875,2877,2879,2881,2883,2885,2887],{"class":517,"line":529},[515,2848,522],{"class":521},[515,2850,1068],{"class":525},[515,2852,1071],{"class":532},[515,2854,536],{"class":521},[515,2856,540],{"class":539},[515,2858,1078],{"class":521},[515,2860,540],{"class":539},[515,2862,1083],{"class":532},[515,2864,536],{"class":521},[515,2866,2867],{"class":539},"\"Pill\"",[515,2869,661],{"class":532},[515,2871,536],{"class":521},[515,2873,2874],{"class":539},"\"ori-size-radius_full\"",[515,2876,1099],{"class":521},[515,2878,566],{"class":532},[515,2880,536],{"class":521},[515,2882,540],{"class":539},[515,2884,1108],{"class":521},[515,2886,540],{"class":539},[515,2888,790],{"class":521},[505,2890,2891],{"v-slot:html":488},[480,2892,2894],{"className":641,"code":2893,"language":643,"meta":488,"style":488},"\u003C!-- ori-size-radius_*: none · xs · sm · md · lg · xl · full -->\n\u003Cdiv class=\"ori-segmented-control ori-size-radius_full\" role=\"radiogroup\" aria-labelledby=\"pill-label\">…\u003C\u002Fdiv>\n",[280,2895,2896,2901],{"__ignoreMap":488},[515,2897,2898],{"class":517,"line":518},[515,2899,2900],{"class":650},"\u003C!-- ori-size-radius_*: none · xs · sm · md · lg · xl · full -->\n",[515,2902,2903,2905,2907,2909,2911,2914,2916,2918,2920,2922,2924,2927,2929,2931],{"class":517,"line":529},[515,2904,522],{"class":521},[515,2906,658],{"class":525},[515,2908,661],{"class":532},[515,2910,536],{"class":521},[515,2912,2913],{"class":539},"\"ori-segmented-control ori-size-radius_full\"",[515,2915,669],{"class":532},[515,2917,536],{"class":521},[515,2919,674],{"class":539},[515,2921,677],{"class":532},[515,2923,536],{"class":521},[515,2925,2926],{"class":539},"\"pill-label\"",[515,2928,1285],{"class":521},[515,2930,658],{"class":525},[515,2932,685],{"class":521},[341,2934,2936],{"id":2935},"in-a-field","In a Field",[271,2938,2939,2940,2943,2944,2946,2947,2950,2951,2954,2955,2958,2959,2958,2961,2964,2965,2968,2969,452],{},"Wrap the control in ",[275,2941,2942],{"href":53},"OriField"," and the field owns the label, the hint and the error\nwiring: the control drops its own ",[280,2945,736],{},", names itself by the field's label (",[280,2948,2949],{},"aria-labelledby","), joins the\nfield's hint or error into ",[280,2952,2953],{},"aria-describedby",", and takes the field's ",[280,2956,2957],{},"required",", ",[280,2960,2320],{},[280,2962,2963],{},"size"," and\n",[280,2966,2967],{},"invalid",". Inside a field the control is always ",[280,2970,1550],{},[497,2972,2973,2980,2985,3069],{},[2974,2975,2978],"ori-field",{"label":2976,"hint":2977},"Appearance","Applies to this device only.",[469,2979],{":options":501,"model-value":1921},[2974,2981,2983],{"label":2976,":required":1564,"error":2982},"Choose an appearance.",[469,2984],{":options":501},[505,2986,2987],{"v-slot:vue":488},[480,2988,2990],{"className":509,"code":2989,"language":511,"meta":488,"style":488},"\u003COriField label=\"Appearance\" hint=\"Applies to this device only.\">\n    \u003COriSegmentedControl v-model=\"theme\" :options=\"themes\" \u002F>\n\u003C\u002FOriField>\n\n\u003COriField label=\"Appearance\" required error=\"Choose an appearance.\">\n    \u003COriSegmentedControl v-model=\"theme\" :options=\"themes\" \u002F>\n\u003C\u002FOriField>\n",[280,2991,2992,3015,3020,3028,3032,3057,3061],{"__ignoreMap":488},[515,2993,2994,2996,2998,3000,3002,3005,3008,3010,3013],{"class":517,"line":518},[515,2995,522],{"class":521},[515,2997,2942],{"class":525},[515,2999,1083],{"class":532},[515,3001,536],{"class":521},[515,3003,3004],{"class":539},"\"Appearance\"",[515,3006,3007],{"class":532}," hint",[515,3009,536],{"class":521},[515,3011,3012],{"class":539},"\"Applies to this device only.\"",[515,3014,685],{"class":521},[515,3016,3017],{"class":517,"line":529},[515,3018,3019],{"class":521},"    \u003COriSegmentedControl v-model=\"theme\" :options=\"themes\" \u002F>\n",[515,3021,3022,3024,3026],{"class":517,"line":549},[515,3023,990],{"class":521},[515,3025,2942],{"class":525},[515,3027,685],{"class":521},[515,3029,3030],{"class":517,"line":560},[515,3031,1971],{"emptyLinePlaceholder":1970},[515,3033,3034,3036,3038,3040,3042,3044,3047,3050,3052,3055],{"class":517,"line":576},[515,3035,522],{"class":521},[515,3037,2942],{"class":525},[515,3039,1083],{"class":532},[515,3041,536],{"class":521},[515,3043,3004],{"class":539},[515,3045,3046],{"class":532}," required",[515,3048,3049],{"class":532}," error",[515,3051,536],{"class":521},[515,3053,3054],{"class":539},"\"Choose an appearance.\"",[515,3056,685],{"class":521},[515,3058,3059],{"class":517,"line":594},[515,3060,3019],{"class":521},[515,3062,3063,3065,3067],{"class":517,"line":609},[515,3064,990],{"class":521},[515,3066,2942],{"class":525},[515,3068,685],{"class":521},[505,3070,3071],{"v-slot:html":488},[480,3072,3074],{"className":641,"code":3073,"language":643,"meta":488,"style":488},"\u003C!-- a group cannot be targeted by for\u002Fid, so it names itself with aria-labelledby on the field label -->\n\u003Cdiv class=\"ori-field ori-field_fluid ori-font-size_md\">\n    \u003Clabel id=\"appearance-label\" class=\"ori-field__label\">Appearance\u003C\u002Flabel>\n    \u003Cdiv\n        class=\"ori-segmented-control ori-segmented-control_fluid\"\n        role=\"radiogroup\"\n        aria-labelledby=\"appearance-label\"\n        aria-describedby=\"appearance-hint\"\n    >\n        …\n    \u003C\u002Fdiv>\n    \u003Cp id=\"appearance-hint\" class=\"ori-field__hint\">Applies to this device only.\u003C\u002Fp>\n\u003C\u002Fdiv>\n",[280,3075,3076,3081,3096,3123,3129,3139,3148,3158,3168,3173,3178,3186,3213],{"__ignoreMap":488},[515,3077,3078],{"class":517,"line":518},[515,3079,3080],{"class":650},"\u003C!-- a group cannot be targeted by for\u002Fid, so it names itself with aria-labelledby on the field label -->\n",[515,3082,3083,3085,3087,3089,3091,3094],{"class":517,"line":529},[515,3084,522],{"class":521},[515,3086,658],{"class":525},[515,3088,661],{"class":532},[515,3090,536],{"class":521},[515,3092,3093],{"class":539},"\"ori-field ori-field_fluid ori-font-size_md\"",[515,3095,685],{"class":521},[515,3097,3098,3100,3102,3104,3106,3109,3111,3113,3116,3119,3121],{"class":517,"line":549},[515,3099,690],{"class":521},[515,3101,736],{"class":525},[515,3103,695],{"class":532},[515,3105,536],{"class":521},[515,3107,3108],{"class":539},"\"appearance-label\"",[515,3110,661],{"class":532},[515,3112,536],{"class":521},[515,3114,3115],{"class":539},"\"ori-field__label\"",[515,3117,3118],{"class":521},">Appearance\u003C\u002F",[515,3120,736],{"class":525},[515,3122,685],{"class":521},[515,3124,3125,3127],{"class":517,"line":560},[515,3126,690],{"class":521},[515,3128,1500],{"class":525},[515,3130,3131,3134,3136],{"class":517,"line":576},[515,3132,3133],{"class":532},"        class",[515,3135,536],{"class":521},[515,3137,3138],{"class":539},"\"ori-segmented-control ori-segmented-control_fluid\"\n",[515,3140,3141,3144,3146],{"class":517,"line":594},[515,3142,3143],{"class":532},"        role",[515,3145,536],{"class":521},[515,3147,1520],{"class":539},[515,3149,3150,3153,3155],{"class":517,"line":609},[515,3151,3152],{"class":532},"        aria-labelledby",[515,3154,536],{"class":521},[515,3156,3157],{"class":539},"\"appearance-label\"\n",[515,3159,3160,3163,3165],{"class":517,"line":625},[515,3161,3162],{"class":532},"        aria-describedby",[515,3164,536],{"class":521},[515,3166,3167],{"class":539},"\"appearance-hint\"\n",[515,3169,3170],{"class":517,"line":633},[515,3171,3172],{"class":521},"    >\n",[515,3174,3175],{"class":517,"line":836},[515,3176,3177],{"class":521},"        …\n",[515,3179,3180,3182,3184],{"class":517,"line":870},[515,3181,980],{"class":521},[515,3183,658],{"class":525},[515,3185,685],{"class":521},[515,3187,3188,3190,3192,3194,3196,3199,3201,3203,3206,3209,3211],{"class":517,"line":890},[515,3189,690],{"class":521},[515,3191,271],{"class":525},[515,3193,695],{"class":532},[515,3195,536],{"class":521},[515,3197,3198],{"class":539},"\"appearance-hint\"",[515,3200,661],{"class":532},[515,3202,536],{"class":521},[515,3204,3205],{"class":539},"\"ori-field__hint\"",[515,3207,3208],{"class":521},">Applies to this device only.\u003C\u002F",[515,3210,271],{"class":525},[515,3212,685],{"class":521},[515,3214,3215,3217,3219],{"class":517,"line":899},[515,3216,990],{"class":521},[515,3218,658],{"class":525},[515,3220,685],{"class":521},[341,3222,3224],{"id":3223},"required-and-forms","Required and forms",[271,3226,3227,3229,3230,3232,3233,3236,3237,3239,3240,3243,3244,3247,3248,3251],{},[280,3228,2957],{}," sets the native ",[280,3231,2957],{}," attribute on every input and ",[280,3234,3235],{},"aria-required=\"true\""," on the group. The\ninputs are real radios sharing one ",[280,3238,290],{},", so the checked segment's ",[280,3241,3242],{},"value"," submits with the surrounding\n",[280,3245,3246],{},"\u003Cform>"," and ",[280,3249,3250],{},"FormData"," reads it — nothing to wire.",[497,3253,3254,3259,3343],{},[469,3255],{":options":3256,"label":3257,":required":1564,"name":3258},"[{\"label\":\"Standard\",\"value\":\"standard\"},{\"label\":\"Express\",\"value\":\"express\"},{\"label\":\"Pickup\",\"value\":\"pickup\"}]","Delivery","delivery",[505,3260,3261],{"v-slot:vue":488},[480,3262,3264],{"className":509,"code":3263,"language":511,"meta":488,"style":488},"\u003Cform @submit.prevent=\"send\">\n    \u003COriSegmentedControl\n        v-model=\"delivery\"\n        label=\"Delivery\"\n        name=\"delivery\"\n        required\n        :options=\"deliveryOptions\"\n    \u002F>\n    \u003COriButton type=\"submit\" label=\"Order\" \u002F>\n\u003C\u002Fform>\n",[280,3265,3266,3295,3300,3305,3310,3315,3320,3325,3330,3335],{"__ignoreMap":488},[515,3267,3268,3270,3273,3276,3279,3281,3284,3286,3288,3291,3293],{"class":517,"line":518},[515,3269,522],{"class":521},[515,3271,3272],{"class":525},"form",[515,3274,3275],{"class":521}," @",[515,3277,3278],{"class":532},"submit",[515,3280,452],{"class":521},[515,3282,3283],{"class":532},"prevent",[515,3285,536],{"class":521},[515,3287,540],{"class":539},[515,3289,3290],{"class":521},"send",[515,3292,540],{"class":539},[515,3294,685],{"class":521},[515,3296,3297],{"class":517,"line":529},[515,3298,3299],{"class":521},"    \u003COriSegmentedControl\n",[515,3301,3302],{"class":517,"line":549},[515,3303,3304],{"class":521},"        v-model=\"delivery\"\n",[515,3306,3307],{"class":517,"line":560},[515,3308,3309],{"class":521},"        label=\"Delivery\"\n",[515,3311,3312],{"class":517,"line":576},[515,3313,3314],{"class":521},"        name=\"delivery\"\n",[515,3316,3317],{"class":517,"line":594},[515,3318,3319],{"class":521},"        required\n",[515,3321,3322],{"class":517,"line":609},[515,3323,3324],{"class":521},"        :options=\"deliveryOptions\"\n",[515,3326,3327],{"class":517,"line":625},[515,3328,3329],{"class":521},"    \u002F>\n",[515,3331,3332],{"class":517,"line":633},[515,3333,3334],{"class":521},"    \u003COriButton type=\"submit\" label=\"Order\" \u002F>\n",[515,3336,3337,3339,3341],{"class":517,"line":836},[515,3338,990],{"class":521},[515,3340,3272],{"class":525},[515,3342,685],{"class":521},[505,3344,3345],{"v-slot:html":488},[480,3346,3348],{"className":641,"code":3347,"language":643,"meta":488,"style":488},"\u003Cform>\n    \u003Cdiv class=\"ori-segmented-control\" role=\"radiogroup\" aria-labelledby=\"delivery-label\" aria-required=\"true\">\n        \u003Cdiv id=\"delivery-label\" class=\"ori-segmented-control__label\">Delivery\u003C\u002Fdiv>\n        \u003Cdiv class=\"ori-segmented-control__track\">\n            \u003Clabel class=\"ori-segmented-control__item\">\n                \u003Cinput class=\"ori-segmented-control__input\" type=\"radio\" name=\"delivery\" value=\"standard\" required \u002F>\n                \u003Cspan class=\"ori-segmented-control__text\">Standard\u003C\u002Fspan>\n            \u003C\u002Flabel>\n            \u003C!-- … Express, Pickup -->\n        \u003C\u002Fdiv>\n    \u003C\u002Fdiv>\n    \u003Cbutton type=\"submit\">Order\u003C\u002Fbutton>\n\u003C\u002Fform>\n",[280,3349,3350,3358,3392,3417,3431,3445,3482,3501,3510,3515,3523,3531,3552],{"__ignoreMap":488},[515,3351,3352,3354,3356],{"class":517,"line":518},[515,3353,522],{"class":521},[515,3355,3272],{"class":525},[515,3357,685],{"class":521},[515,3359,3360,3362,3364,3366,3368,3370,3372,3374,3376,3378,3380,3383,3386,3388,3390],{"class":517,"line":529},[515,3361,690],{"class":521},[515,3363,658],{"class":525},[515,3365,661],{"class":532},[515,3367,536],{"class":521},[515,3369,666],{"class":539},[515,3371,669],{"class":532},[515,3373,536],{"class":521},[515,3375,674],{"class":539},[515,3377,677],{"class":532},[515,3379,536],{"class":521},[515,3381,3382],{"class":539},"\"delivery-label\"",[515,3384,3385],{"class":532}," aria-required",[515,3387,536],{"class":521},[515,3389,2228],{"class":539},[515,3391,685],{"class":521},[515,3393,3394,3396,3398,3400,3402,3404,3406,3408,3410,3413,3415],{"class":517,"line":549},[515,3395,733],{"class":521},[515,3397,658],{"class":525},[515,3399,695],{"class":532},[515,3401,536],{"class":521},[515,3403,3382],{"class":539},[515,3405,661],{"class":532},[515,3407,536],{"class":521},[515,3409,706],{"class":539},[515,3411,3412],{"class":521},">Delivery\u003C\u002F",[515,3414,658],{"class":525},[515,3416,685],{"class":521},[515,3418,3419,3421,3423,3425,3427,3429],{"class":517,"line":560},[515,3420,733],{"class":521},[515,3422,658],{"class":525},[515,3424,661],{"class":532},[515,3426,536],{"class":521},[515,3428,726],{"class":539},[515,3430,685],{"class":521},[515,3432,3433,3435,3437,3439,3441,3443],{"class":517,"line":576},[515,3434,750],{"class":521},[515,3436,736],{"class":525},[515,3438,661],{"class":532},[515,3440,536],{"class":521},[515,3442,743],{"class":539},[515,3444,685],{"class":521},[515,3446,3447,3450,3452,3454,3456,3458,3460,3462,3464,3466,3468,3471,3473,3475,3478,3480],{"class":517,"line":594},[515,3448,3449],{"class":521},"                \u003C",[515,3451,753],{"class":525},[515,3453,661],{"class":532},[515,3455,536],{"class":521},[515,3457,760],{"class":539},[515,3459,763],{"class":532},[515,3461,536],{"class":521},[515,3463,768],{"class":539},[515,3465,771],{"class":532},[515,3467,536],{"class":521},[515,3469,3470],{"class":539},"\"delivery\"",[515,3472,779],{"class":532},[515,3474,536],{"class":521},[515,3476,3477],{"class":539},"\"standard\"",[515,3479,3046],{"class":532},[515,3481,790],{"class":521},[515,3483,3484,3486,3488,3490,3492,3494,3497,3499],{"class":517,"line":609},[515,3485,3449],{"class":521},[515,3487,515],{"class":525},[515,3489,661],{"class":532},[515,3491,536],{"class":521},[515,3493,803],{"class":539},[515,3495,3496],{"class":521},">Standard\u003C\u002F",[515,3498,515],{"class":525},[515,3500,685],{"class":521},[515,3502,3503,3506,3508],{"class":517,"line":625},[515,3504,3505],{"class":521},"            \u003C\u002F",[515,3507,736],{"class":525},[515,3509,685],{"class":521},[515,3511,3512],{"class":517,"line":633},[515,3513,3514],{"class":650},"            \u003C!-- … Express, Pickup -->\n",[515,3516,3517,3519,3521],{"class":517,"line":836},[515,3518,815],{"class":521},[515,3520,658],{"class":525},[515,3522,685],{"class":521},[515,3524,3525,3527,3529],{"class":517,"line":870},[515,3526,980],{"class":521},[515,3528,658],{"class":525},[515,3530,685],{"class":521},[515,3532,3533,3535,3538,3540,3542,3545,3548,3550],{"class":517,"line":890},[515,3534,690],{"class":521},[515,3536,3537],{"class":525},"button",[515,3539,763],{"class":532},[515,3541,536],{"class":521},[515,3543,3544],{"class":539},"\"submit\"",[515,3546,3547],{"class":521},">Order\u003C\u002F",[515,3549,3537],{"class":525},[515,3551,685],{"class":521},[515,3553,3554,3556,3558],{"class":517,"line":899},[515,3555,990],{"class":521},[515,3557,3272],{"class":525},[515,3559,685],{"class":521},[341,3561,3563],{"id":3562},"custom-segment-content","Custom segment content",[271,3565,3566,3567,3570,3571,3574],{},"The selection is plain ",[280,3568,3569],{},"v-model",". The second control fills the ",[280,3572,3573],{},"#option"," slot to carry a count beside each\nlabel — the slot replaces the segment's text and is scoped, so this demo is a small Vue component rather than\ninline markup.",[497,3576,3577,3580,4024],{},[3578,3579],"segmented-control-demo",{},[505,3581,3582],{"v-slot:vue":488},[480,3583,3585],{"className":509,"code":3584,"language":511,"meta":488,"style":488},"\u003Cscript setup lang=\"ts\">\nimport { ref } from 'vue'\n\nconst theme = ref('auto')\nconst themes = [\n    { label: 'Light', value: 'light' },\n    { label: 'Dark', value: 'dark' },\n    { label: 'Auto', value: 'auto' }\n]\n\nconst filter = ref('all')\nconst filters = [\n    { label: 'All', value: 'all' },\n    { label: 'Unread', value: 'unread' },\n    { label: 'Flagged', value: 'flagged' }\n]\nconst counts: Record\u003Cstring, number> = { all: 24, unread: 3, flagged: 1 }\n\u003C\u002Fscript>\n\n\u003Ctemplate>\n    \u003COriSegmentedControl v-model=\"theme\" label=\"Theme\" :options=\"themes\" \u002F>\n    \u003Cp>v-model: {{ theme }}\u003C\u002Fp>\n\n    \u003COriSegmentedControl v-model=\"filter\" label=\"Show\" :options=\"filters\">\n        \u003Ctemplate #option=\"{ option }\">\n            {{ option.label }}\n            \u003Cspan style=\"margin-inline-start: 0.4em; font-variant-numeric: tabular-nums\">{{\n                counts[option.value]\n            }}\u003C\u002Fspan>\n        \u003C\u002Ftemplate>\n    \u003C\u002FOriSegmentedControl>\n\u003C\u002Ftemplate>\n",[280,3586,3587,3603,3615,3619,3639,3650,3662,3674,3686,3690,3694,3712,3723,3736,3750,3764,3768,3815,3823,3828,3837,3874,3888,3893,3933,3957,3963,3981,3987,3997,4006,4015],{"__ignoreMap":488},[515,3588,3589,3591,3593,3595,3597,3599,3601],{"class":517,"line":518},[515,3590,522],{"class":521},[515,3592,1935],{"class":525},[515,3594,1938],{"class":532},[515,3596,1941],{"class":532},[515,3598,536],{"class":521},[515,3600,1946],{"class":539},[515,3602,685],{"class":521},[515,3604,3605,3607,3610,3612],{"class":517,"line":529},[515,3606,1954],{"class":1953},[515,3608,3609],{"class":521}," { ref } ",[515,3611,1962],{"class":1953},[515,3613,3614],{"class":539}," 'vue'\n",[515,3616,3617],{"class":517,"line":549},[515,3618,1971],{"emptyLinePlaceholder":1970},[515,3620,3621,3623,3626,3628,3631,3634,3636],{"class":517,"line":560},[515,3622,1976],{"class":1953},[515,3624,3625],{"class":1979}," theme",[515,3627,1983],{"class":1953},[515,3629,3630],{"class":532}," ref",[515,3632,3633],{"class":521},"(",[515,3635,619],{"class":539},[515,3637,3638],{"class":521},")\n",[515,3640,3641,3643,3646,3648],{"class":517,"line":576},[515,3642,1976],{"class":1953},[515,3644,3645],{"class":1979}," themes",[515,3647,1983],{"class":1953},[515,3649,2038],{"class":521},[515,3651,3652,3654,3656,3658,3660],{"class":517,"line":594},[515,3653,2043],{"class":521},[515,3655,582],{"class":539},[515,3657,585],{"class":521},[515,3659,588],{"class":539},[515,3661,591],{"class":521},[515,3663,3664,3666,3668,3670,3672],{"class":517,"line":609},[515,3665,2043],{"class":521},[515,3667,599],{"class":539},[515,3669,585],{"class":521},[515,3671,604],{"class":539},[515,3673,591],{"class":521},[515,3675,3676,3678,3680,3682,3684],{"class":517,"line":625},[515,3677,2043],{"class":521},[515,3679,614],{"class":539},[515,3681,585],{"class":521},[515,3683,619],{"class":539},[515,3685,622],{"class":521},[515,3687,3688],{"class":517,"line":633},[515,3689,2083],{"class":521},[515,3691,3692],{"class":517,"line":836},[515,3693,1971],{"emptyLinePlaceholder":1970},[515,3695,3696,3698,3701,3703,3705,3707,3710],{"class":517,"line":870},[515,3697,1976],{"class":1953},[515,3699,3700],{"class":1979}," filter",[515,3702,1983],{"class":1953},[515,3704,3630],{"class":532},[515,3706,3633],{"class":521},[515,3708,3709],{"class":539},"'all'",[515,3711,3638],{"class":521},[515,3713,3714,3716,3719,3721],{"class":517,"line":890},[515,3715,1976],{"class":1953},[515,3717,3718],{"class":1979}," filters",[515,3720,1983],{"class":1953},[515,3722,2038],{"class":521},[515,3724,3725,3727,3730,3732,3734],{"class":517,"line":899},[515,3726,2043],{"class":521},[515,3728,3729],{"class":539},"'All'",[515,3731,585],{"class":521},[515,3733,3709],{"class":539},[515,3735,591],{"class":521},[515,3737,3738,3740,3743,3745,3748],{"class":517,"line":914},[515,3739,2043],{"class":521},[515,3741,3742],{"class":539},"'Unread'",[515,3744,585],{"class":521},[515,3746,3747],{"class":539},"'unread'",[515,3749,591],{"class":521},[515,3751,3752,3754,3757,3759,3762],{"class":517,"line":948},[515,3753,2043],{"class":521},[515,3755,3756],{"class":539},"'Flagged'",[515,3758,585],{"class":521},[515,3760,3761],{"class":539},"'flagged'",[515,3763,622],{"class":521},[515,3765,3766],{"class":517,"line":968},[515,3767,2083],{"class":521},[515,3769,3770,3772,3775,3777,3780,3782,3785,3787,3790,3793,3795,3798,3801,3804,3807,3810,3813],{"class":517,"line":977},[515,3771,1976],{"class":1953},[515,3773,3774],{"class":1979}," counts",[515,3776,2027],{"class":1953},[515,3778,3779],{"class":532}," Record",[515,3781,522],{"class":521},[515,3783,3784],{"class":1979},"string",[515,3786,2958],{"class":521},[515,3788,3789],{"class":1979},"number",[515,3791,3792],{"class":521},"> ",[515,3794,536],{"class":1953},[515,3796,3797],{"class":521}," { all: ",[515,3799,3800],{"class":1979},"24",[515,3802,3803],{"class":521},", unread: ",[515,3805,3806],{"class":1979},"3",[515,3808,3809],{"class":521},", flagged: ",[515,3811,3812],{"class":1979},"1",[515,3814,622],{"class":521},[515,3816,3817,3819,3821],{"class":517,"line":987},[515,3818,990],{"class":521},[515,3820,1935],{"class":525},[515,3822,685],{"class":521},[515,3824,3826],{"class":517,"line":3825},19,[515,3827,1971],{"emptyLinePlaceholder":1970},[515,3829,3831,3833,3835],{"class":517,"line":3830},20,[515,3832,522],{"class":521},[515,3834,505],{"class":525},[515,3836,685],{"class":521},[515,3838,3840,3842,3844,3846,3848,3850,3852,3854,3856,3858,3860,3862,3864,3866,3868,3870,3872],{"class":517,"line":3839},21,[515,3841,690],{"class":521},[515,3843,1068],{"class":525},[515,3845,1071],{"class":532},[515,3847,536],{"class":521},[515,3849,540],{"class":539},[515,3851,543],{"class":521},[515,3853,540],{"class":539},[515,3855,1083],{"class":532},[515,3857,536],{"class":521},[515,3859,2126],{"class":539},[515,3861,1099],{"class":521},[515,3863,566],{"class":532},[515,3865,536],{"class":521},[515,3867,540],{"class":539},[515,3869,2371],{"class":521},[515,3871,540],{"class":539},[515,3873,790],{"class":521},[515,3875,3877,3879,3881,3884,3886],{"class":517,"line":3876},22,[515,3878,690],{"class":521},[515,3880,271],{"class":525},[515,3882,3883],{"class":521},">v-model: {{ theme }}\u003C\u002F",[515,3885,271],{"class":525},[515,3887,685],{"class":521},[515,3889,3891],{"class":517,"line":3890},23,[515,3892,1971],{"emptyLinePlaceholder":1970},[515,3894,3896,3898,3900,3902,3904,3906,3909,3911,3913,3915,3918,3920,3922,3924,3926,3929,3931],{"class":517,"line":3895},24,[515,3897,690],{"class":521},[515,3899,1068],{"class":525},[515,3901,1071],{"class":532},[515,3903,536],{"class":521},[515,3905,540],{"class":539},[515,3907,3908],{"class":521},"filter",[515,3910,540],{"class":539},[515,3912,1083],{"class":532},[515,3914,536],{"class":521},[515,3916,3917],{"class":539},"\"Show\"",[515,3919,1099],{"class":521},[515,3921,566],{"class":532},[515,3923,536],{"class":521},[515,3925,540],{"class":539},[515,3927,3928],{"class":521},"filters",[515,3930,540],{"class":539},[515,3932,685],{"class":521},[515,3934,3936,3938,3940,3943,3946,3948,3950,3953,3955],{"class":517,"line":3935},25,[515,3937,733],{"class":521},[515,3939,505],{"class":525},[515,3941,3942],{"class":521}," #",[515,3944,3945],{"class":532},"option",[515,3947,536],{"class":521},[515,3949,540],{"class":539},[515,3951,3952],{"class":521},"{ option }",[515,3954,540],{"class":539},[515,3956,685],{"class":521},[515,3958,3960],{"class":517,"line":3959},26,[515,3961,3962],{"class":521},"            {{ option.label }}\n",[515,3964,3966,3968,3970,3973,3975,3978],{"class":517,"line":3965},27,[515,3967,750],{"class":521},[515,3969,515],{"class":525},[515,3971,3972],{"class":532}," style",[515,3974,536],{"class":521},[515,3976,3977],{"class":539},"\"margin-inline-start: 0.4em; font-variant-numeric: tabular-nums\"",[515,3979,3980],{"class":521},">{{\n",[515,3982,3984],{"class":517,"line":3983},28,[515,3985,3986],{"class":521},"                counts[option.value]\n",[515,3988,3990,3993,3995],{"class":517,"line":3989},29,[515,3991,3992],{"class":521},"            }}\u003C\u002F",[515,3994,515],{"class":525},[515,3996,685],{"class":521},[515,3998,4000,4002,4004],{"class":517,"line":3999},30,[515,4001,815],{"class":521},[515,4003,505],{"class":525},[515,4005,685],{"class":521},[515,4007,4009,4011,4013],{"class":517,"line":4008},31,[515,4010,980],{"class":521},[515,4012,1068],{"class":525},[515,4014,685],{"class":521},[515,4016,4018,4020,4022],{"class":517,"line":4017},32,[515,4019,990],{"class":521},[515,4021,505],{"class":525},[515,4023,685],{"class":521},[505,4025,4026],{"v-slot:html":488},[480,4027,4029],{"className":641,"code":4028,"language":643,"meta":488,"style":488},"\u003C!-- custom segment content goes inside ori-segmented-control__text -->\n\u003Clabel class=\"ori-segmented-control__item\">\n    \u003Cinput class=\"ori-segmented-control__input\" type=\"radio\" name=\"filter\" value=\"unread\" \u002F>\n    \u003Cspan class=\"ori-segmented-control__text\">\n        Unread\n        \u003Cspan style=\"margin-inline-start: 0.4em; font-variant-numeric: tabular-nums\">3\u003C\u002Fspan>\n    \u003C\u002Fspan>\n\u003C\u002Flabel>\n",[280,4030,4031,4036,4050,4084,4098,4103,4122,4130],{"__ignoreMap":488},[515,4032,4033],{"class":517,"line":518},[515,4034,4035],{"class":650},"\u003C!-- custom segment content goes inside ori-segmented-control__text -->\n",[515,4037,4038,4040,4042,4044,4046,4048],{"class":517,"line":529},[515,4039,522],{"class":521},[515,4041,736],{"class":525},[515,4043,661],{"class":532},[515,4045,536],{"class":521},[515,4047,743],{"class":539},[515,4049,685],{"class":521},[515,4051,4052,4054,4056,4058,4060,4062,4064,4066,4068,4070,4072,4075,4077,4079,4082],{"class":517,"line":549},[515,4053,690],{"class":521},[515,4055,753],{"class":525},[515,4057,661],{"class":532},[515,4059,536],{"class":521},[515,4061,760],{"class":539},[515,4063,763],{"class":532},[515,4065,536],{"class":521},[515,4067,768],{"class":539},[515,4069,771],{"class":532},[515,4071,536],{"class":521},[515,4073,4074],{"class":539},"\"filter\"",[515,4076,779],{"class":532},[515,4078,536],{"class":521},[515,4080,4081],{"class":539},"\"unread\"",[515,4083,790],{"class":521},[515,4085,4086,4088,4090,4092,4094,4096],{"class":517,"line":560},[515,4087,690],{"class":521},[515,4089,515],{"class":525},[515,4091,661],{"class":532},[515,4093,536],{"class":521},[515,4095,803],{"class":539},[515,4097,685],{"class":521},[515,4099,4100],{"class":517,"line":576},[515,4101,4102],{"class":521},"        Unread\n",[515,4104,4105,4107,4109,4111,4113,4115,4118,4120],{"class":517,"line":594},[515,4106,733],{"class":521},[515,4108,515],{"class":525},[515,4110,3972],{"class":532},[515,4112,536],{"class":521},[515,4114,3977],{"class":539},[515,4116,4117],{"class":521},">3\u003C\u002F",[515,4119,515],{"class":525},[515,4121,685],{"class":521},[515,4123,4124,4126,4128],{"class":517,"line":609},[515,4125,980],{"class":521},[515,4127,515],{"class":525},[515,4129,685],{"class":521},[515,4131,4132,4134,4136],{"class":517,"line":625},[515,4133,990],{"class":521},[515,4135,736],{"class":525},[515,4137,685],{"class":521},[341,4139,4141],{"id":4140},"common-patterns","Common patterns",[271,4143,4144,4145,4148],{},"A view switcher: a small, pill-shaped, secondary-colored control with icons, named by ",[280,4146,4147],{},"aria-label"," because\nthe surrounding UI already says what it switches.",[497,4150,4151,4157,4274],{},[469,4152],{":options":4153,"model-value":4154,"color":1035,"size":1309,"className":4155,"ariaLabel":4156},"[{\"label\":\"List\",\"value\":\"list\",\"icon\":\"M3 13h2v-2H3v2zm0 4h2v-2H3v2zm0-8h2V7H3v2zm4 4h14v-2H7v2zm0 4h14v-2H7v2zM7 7v2h14V7H7z\"},{\"label\":\"Grid\",\"value\":\"grid\",\"icon\":\"M3 3h8v8H3zm10 0h8v8h-8zM3 13h8v8H3zm10 0h8v8h-8z\"}]","list",[2793],"View",[505,4158,4159],{"v-slot:vue":488},[480,4160,4162],{"className":509,"code":4161,"language":511,"meta":488,"style":488},"\u003COriSegmentedControl\n    v-model=\"view\"\n    aria-label=\"View\"\n    size=\"sm\"\n    color=\"secondary\"\n    class=\"ori-size-radius_full\"\n    :options=\"[\n        { label: 'List', value: 'list', icon: listPath },\n        { label: 'Grid', value: 'grid', icon: gridPath }\n    ]\"\n\u002F>\n",[280,4163,4164,4170,4183,4193,4203,4213,4222,4234,4249,4264,4270],{"__ignoreMap":488},[515,4165,4166,4168],{"class":517,"line":518},[515,4167,522],{"class":521},[515,4169,526],{"class":525},[515,4171,4172,4174,4176,4178,4181],{"class":517,"line":529},[515,4173,533],{"class":532},[515,4175,536],{"class":521},[515,4177,540],{"class":539},[515,4179,4180],{"class":521},"view",[515,4182,546],{"class":539},[515,4184,4185,4188,4190],{"class":517,"line":549},[515,4186,4187],{"class":532},"    aria-label",[515,4189,536],{"class":521},[515,4191,4192],{"class":539},"\"View\"\n",[515,4194,4195,4198,4200],{"class":517,"line":560},[515,4196,4197],{"class":532},"    size",[515,4199,536],{"class":521},[515,4201,4202],{"class":539},"\"sm\"\n",[515,4204,4205,4208,4210],{"class":517,"line":576},[515,4206,4207],{"class":532},"    color",[515,4209,536],{"class":521},[515,4211,4212],{"class":539},"\"secondary\"\n",[515,4214,4215,4217,4219],{"class":517,"line":594},[515,4216,1505],{"class":532},[515,4218,536],{"class":521},[515,4220,4221],{"class":539},"\"ori-size-radius_full\"\n",[515,4223,4224,4226,4228,4230,4232],{"class":517,"line":609},[515,4225,563],{"class":521},[515,4227,566],{"class":532},[515,4229,536],{"class":521},[515,4231,540],{"class":539},[515,4233,573],{"class":521},[515,4235,4236,4238,4241,4243,4246],{"class":517,"line":625},[515,4237,579],{"class":521},[515,4239,4240],{"class":539},"'List'",[515,4242,585],{"class":521},[515,4244,4245],{"class":539},"'list'",[515,4247,4248],{"class":521},", icon: listPath },\n",[515,4250,4251,4253,4256,4258,4261],{"class":517,"line":633},[515,4252,579],{"class":521},[515,4254,4255],{"class":539},"'Grid'",[515,4257,585],{"class":521},[515,4259,4260],{"class":539},"'grid'",[515,4262,4263],{"class":521},", icon: gridPath }\n",[515,4265,4266,4268],{"class":517,"line":836},[515,4267,628],{"class":521},[515,4269,546],{"class":539},[515,4271,4272],{"class":517,"line":870},[515,4273,636],{"class":521},[505,4275,4276],{"v-slot:html":488},[480,4277,4279],{"className":641,"code":4278,"language":643,"meta":488,"style":488},"\u003Cdiv\n    class=\"ori-segmented-control ori-segmented-control_sm ori-font-size_sm ori-color_secondary ori-size-radius_full\"\n    role=\"radiogroup\"\n    aria-label=\"View\"\n>\n    \u003Cdiv class=\"ori-segmented-control__track\">\n        \u003Clabel class=\"ori-segmented-control__item\">\n            \u003Cinput class=\"ori-segmented-control__input\" type=\"radio\" name=\"view\" value=\"list\" checked \u002F>\n            \u003Ci class=\"ori-icon ori-icon_inherit ori-segmented-control__icon\" aria-hidden=\"true\">\n                \u003Csvg viewBox=\"0 0 24 24\">\u003Cpath d=\"M3 13h2v-2H3v2z…\" \u002F>\u003C\u002Fsvg>\n            \u003C\u002Fi>\n            \u003Cspan class=\"ori-segmented-control__text\">List\u003C\u002Fspan>\n        \u003C\u002Flabel>\n        \u003C!-- … Grid -->\n    \u003C\u002Fdiv>\n\u003C\u002Fdiv>\n",[280,4280,4281,4287,4296,4304,4312,4316,4330,4344,4380,4400,4429,4437,4456,4464,4469,4477],{"__ignoreMap":488},[515,4282,4283,4285],{"class":517,"line":518},[515,4284,522],{"class":521},[515,4286,1500],{"class":525},[515,4288,4289,4291,4293],{"class":517,"line":529},[515,4290,1505],{"class":532},[515,4292,536],{"class":521},[515,4294,4295],{"class":539},"\"ori-segmented-control ori-segmented-control_sm ori-font-size_sm ori-color_secondary ori-size-radius_full\"\n",[515,4297,4298,4300,4302],{"class":517,"line":549},[515,4299,1515],{"class":532},[515,4301,536],{"class":521},[515,4303,1520],{"class":539},[515,4305,4306,4308,4310],{"class":517,"line":560},[515,4307,4187],{"class":532},[515,4309,536],{"class":521},[515,4311,4192],{"class":539},[515,4313,4314],{"class":517,"line":576},[515,4315,685],{"class":521},[515,4317,4318,4320,4322,4324,4326,4328],{"class":517,"line":594},[515,4319,690],{"class":521},[515,4321,658],{"class":525},[515,4323,661],{"class":532},[515,4325,536],{"class":521},[515,4327,726],{"class":539},[515,4329,685],{"class":521},[515,4331,4332,4334,4336,4338,4340,4342],{"class":517,"line":609},[515,4333,733],{"class":521},[515,4335,736],{"class":525},[515,4337,661],{"class":532},[515,4339,536],{"class":521},[515,4341,743],{"class":539},[515,4343,685],{"class":521},[515,4345,4346,4348,4350,4352,4354,4356,4358,4360,4362,4364,4366,4369,4371,4373,4376,4378],{"class":517,"line":625},[515,4347,750],{"class":521},[515,4349,753],{"class":525},[515,4351,661],{"class":532},[515,4353,536],{"class":521},[515,4355,760],{"class":539},[515,4357,763],{"class":532},[515,4359,536],{"class":521},[515,4361,768],{"class":539},[515,4363,771],{"class":532},[515,4365,536],{"class":521},[515,4367,4368],{"class":539},"\"view\"",[515,4370,779],{"class":532},[515,4372,536],{"class":521},[515,4374,4375],{"class":539},"\"list\"",[515,4377,787],{"class":532},[515,4379,790],{"class":521},[515,4381,4382,4384,4386,4388,4390,4392,4394,4396,4398],{"class":517,"line":633},[515,4383,750],{"class":521},[515,4385,2213],{"class":525},[515,4387,661],{"class":532},[515,4389,536],{"class":521},[515,4391,2220],{"class":539},[515,4393,2223],{"class":532},[515,4395,536],{"class":521},[515,4397,2228],{"class":539},[515,4399,685],{"class":521},[515,4401,4402,4404,4406,4408,4410,4412,4414,4416,4418,4420,4423,4425,4427],{"class":517,"line":836},[515,4403,3449],{"class":521},[515,4405,2237],{"class":525},[515,4407,2240],{"class":532},[515,4409,536],{"class":521},[515,4411,2245],{"class":539},[515,4413,2248],{"class":521},[515,4415,2251],{"class":525},[515,4417,2254],{"class":532},[515,4419,536],{"class":521},[515,4421,4422],{"class":539},"\"M3 13h2v-2H3v2z…\"",[515,4424,2262],{"class":521},[515,4426,2237],{"class":525},[515,4428,685],{"class":521},[515,4430,4431,4433,4435],{"class":517,"line":870},[515,4432,3505],{"class":521},[515,4434,2213],{"class":525},[515,4436,685],{"class":521},[515,4438,4439,4441,4443,4445,4447,4449,4452,4454],{"class":517,"line":890},[515,4440,750],{"class":521},[515,4442,515],{"class":525},[515,4444,661],{"class":532},[515,4446,536],{"class":521},[515,4448,803],{"class":539},[515,4450,4451],{"class":521},">List\u003C\u002F",[515,4453,515],{"class":525},[515,4455,685],{"class":521},[515,4457,4458,4460,4462],{"class":517,"line":899},[515,4459,815],{"class":521},[515,4461,736],{"class":525},[515,4463,685],{"class":521},[515,4465,4466],{"class":517,"line":914},[515,4467,4468],{"class":650},"        \u003C!-- … Grid -->\n",[515,4470,4471,4473,4475],{"class":517,"line":948},[515,4472,980],{"class":521},[515,4474,658],{"class":525},[515,4476,685],{"class":521},[515,4478,4479,4481,4483],{"class":517,"line":968},[515,4480,990],{"class":521},[515,4482,658],{"class":525},[515,4484,685],{"class":521},[341,4486,230],{"id":4487},"accessibility",[271,4489,4490],{},"The accessibility contract holds across every layer — the standalone classes and the Vue component render the\nsame attributes and keyboard behavior.",[4492,4493,4494,4519,4534,4550,4553,4561,4571,4586,4608],"ul",{},[4495,4496,4497,4498,3247,4500,4503,4504,4506,4507,4509,4510,4512,4513,4515,4516,4518],"li",{},"The root carries ",[280,4499,282],{},[293,4501,4502],{},"must be named",". When ",[280,4505,736],{}," is given, ",[280,4508,2949],{},"\npoints at the rendered label element; without a ",[280,4511,736],{},", pass ",[280,4514,4147],{}," (or your own ",[280,4517,2949],{},")\nas an attribute. An unnamed group is announced as just \"radio group\".",[4495,4520,4521,4522,287,4524,4526,4527,4529,4530,4533],{},"Every segment is a real ",[280,4523,286],{},[280,4525,290],{}," (auto-generated via ",[280,4528,1003],{}," when\nomitted). The browser natively enforces single-select, arrow-key movement that ",[293,4531,4532],{},"selects as it moves",", one\nTab stop for the whole group, form submission and RTL — no JS needed.",[4495,4535,4536,4537,4540,4541,4543,4544,4546,4547,4549],{},"The segment's accessible name is its text, wired through the ",[280,4538,4539],{},"\u003Clabel>"," wrapper. The ",[280,4542,1910],{}," is\n",[280,4545,2306],{},", so an icon never names a segment; keep the text. If you fill the ",[280,4548,3573],{}," slot, the slot\ncontent must still read as the segment's name.",[4495,4551,4552],{},"Selection is shown by more than the fill: the checked segment also gets an edge in the role's text tone and\na shadow, so it clears 3:1 against the track (measured in every skin and both themes).",[4495,4554,4555,4557,4558,4560],{},[280,4556,2320],{}," (group-level or per segment) sets the native ",[280,4559,2320],{}," attribute; disabled segments are\nskipped by the arrows and dim to 45% opacity.",[4495,4562,4563,3229,4565,4567,4568,4570],{},[280,4564,2957],{},[280,4566,2957],{}," attribute on each input and ",[280,4569,3235],{}," on the group.",[4495,4572,4573,4574,4576,4577,4579,4580,4582,4583,4570],{},"Inside an ",[275,4575,2942],{"href":53}," the field owns the label, hint and error: the group is named by the\nfield's label, ",[280,4578,2953],{}," carries the hint or error (a ",[280,4581,2953],{}," you add joins it rather\nthan replacing it), and an error sets ",[280,4584,4585],{},"aria-invalid=\"true\"",[4495,4587,4588,4589,4592,4593,4596,4597,4599,4600,4603,4604,4607],{},"Focus is drawn on the visible segment, not the hidden input: a 2 px ",[280,4590,4591],{},"outline"," in the accent color, offset 2\npx, on ",[280,4594,4595],{},":focus-visible",". Safari drops ",[280,4598,4595],{}," from a radio an arrow key focused, so the component\nsets ",[280,4601,4602],{},"data-ori-keyboard"," on the group while the keyboard is in use and the ring follows ",[280,4605,4606],{},":focus"," under it;\nin plain HTML, set that attribute yourself on keydown and remove it on pointerdown.",[4495,4609,4610,4611,4613],{},"A new control starts with nothing checked unless you give it a value, and a user cannot clear a choice —\ngive ",[280,4612,3569],{}," an initial value when one option is the sensible default.",[346,4615,4616,4626],{},[349,4617,4618],{},[352,4619,4620,4623],{},[355,4621,4622],{},"Key",[355,4624,4625],{},"Action",[362,4627,4628,4642,4660,4675],{},[352,4629,4630,4639],{},[367,4631,4632,4635,4636],{},[280,4633,4634],{},"Tab"," \u002F ",[280,4637,4638],{},"Shift+Tab",[367,4640,4641],{},"Moves focus into \u002F out of the group — one stop, on the checked segment (the browser picks the entry point if none is checked yet).",[352,4643,4644,4653],{},[367,4645,4646,4649,4650],{},[280,4647,4648],{},"ArrowRight"," ",[280,4651,4652],{},"ArrowDown",[367,4654,4655,4656,4659],{},"Checks and focuses the next enabled segment, wrapping at the end (native). In RTL, ",[280,4657,4658],{},"ArrowLeft"," is \"next\" — except in Safari, which keeps the physical arrows.",[352,4661,4662,4669],{},[367,4663,4664,4649,4666],{},[280,4665,4658],{},[280,4667,4668],{},"ArrowUp",[367,4670,4671,4672,4674],{},"Checks and focuses the previous enabled segment (native). In RTL, ",[280,4673,4648],{}," is \"previous\".",[352,4676,4677,4682],{},[367,4678,4679],{},[280,4680,4681],{},"Space",[367,4683,4684],{},"Checks the focused segment if it is not already checked (native).",[341,4686,324],{"id":4687},"framework-api",[271,4689,4690,4691,4693,4694,4696],{},"The props, events, and slots of the ",[293,4692,338],{}," component. The standalone CSS layer has no component API — its\nsurface is the ",[275,4695,408],{"href":312}," above.",[4698,4699,4701],"h3",{"id":4700},"props","Props",[346,4703,4704,4720],{},[349,4705,4706],{},[352,4707,4708,4711,4714,4717],{},[355,4709,4710],{},"Prop",[355,4712,4713],{},"Type",[355,4715,4716],{},"Default",[355,4718,4719],{},"Description",[362,4721,4722,4742,4764,4783,4807,4828,4851,4874,4902],{},[352,4723,4724,4729,4734,4739],{},[367,4725,4726],{},[280,4727,4728],{},"color",[367,4730,4731],{},[280,4732,4733],{},"ThemeColor",[367,4735,4736],{},[280,4737,4738],{},"'primary'",[367,4740,4741],{},"Accent for the checked fill, its edge tone and the focus ring.",[352,4743,4744,4748,4753,4758],{},[367,4745,4746],{},[280,4747,2320],{},[367,4749,4750],{},[280,4751,4752],{},"boolean",[367,4754,4755],{},[280,4756,4757],{},"false",[367,4759,4760,4761,452],{},"Disables every segment; per-segment disable is also supported via ",[280,4762,4763],{},"options[].disabled",[352,4765,4766,4770,4774,4778],{},[367,4767,4768],{},[280,4769,1550],{},[367,4771,4772],{},[280,4773,4752],{},[367,4775,4776],{},[280,4777,4757],{},[367,4779,4780,4781,452],{},"Stretches to the container's width; segments stay equal. Always on inside an ",[280,4782,2942],{},[352,4784,4785,4789,4793,4796],{},[367,4786,4787],{},[280,4788,736],{},[367,4790,4791],{},[280,4792,3784],{},[367,4794,4795],{},"—",[367,4797,4798,4799,4801,4802,4804,4805,452],{},"Visible group label; the group is ",[280,4800,2949],{}," this element. Not rendered inside an ",[280,4803,2942],{}," (the field owns the label). Without it, pass ",[280,4806,4147],{},[352,4808,4809,4813,4817,4819],{},[367,4810,4811],{},[280,4812,290],{},[367,4814,4815],{},[280,4816,3784],{},[367,4818,4795],{},[367,4820,4821,4822,4824,4825,4827],{},"Shared ",[280,4823,290],{}," for all radio inputs. Auto-generated via ",[280,4826,1003],{}," when omitted.",[352,4829,4830,4834,4839,4844],{},[367,4831,4832],{},[280,4833,566],{},[367,4835,4836],{},[280,4837,4838],{},"SegmentedOption[]",[367,4840,4841],{},[280,4842,4843],{},"[]",[367,4845,4846,4847,4850],{},"Array of ",[280,4848,4849],{},"{ label, value, disabled?, icon? }"," objects — the full options-array API.",[352,4852,4853,4857,4861,4865],{},[367,4854,4855],{},[280,4856,2957],{},[367,4858,4859],{},[280,4860,4752],{},[367,4862,4863],{},[280,4864,4757],{},[367,4866,4867,4868,4870,4871,4873],{},"Sets ",[280,4869,3235],{}," on the group and ",[280,4872,2957],{}," on each input.",[352,4875,4876,4880,4885,4890],{},[367,4877,4878],{},[280,4879,2963],{},[367,4881,4882],{},[280,4883,4884],{},"ActionSize",[367,4886,4887],{},[280,4888,4889],{},"'md'",[367,4891,4892,4893,4895,4896,4898,4899,4901],{},"Control height from the action-size scale and the text scale (",[280,4894,1298],{},"–",[280,4897,1302],{},"). Inside an ",[280,4900,2942],{},", the field's size wins.",[352,4903,4904,4909,4914,4916],{},[367,4905,4906],{},[280,4907,4908],{},"modelValue",[367,4910,4911],{},[280,4912,4913],{},"string | number",[367,4915,4795],{},[367,4917,4918,4919,4921,4922,452],{},"The checked segment's ",[280,4920,3242],{},"; bind with ",[280,4923,3569],{},[271,4925,4926,4929,4930,2027],{},[280,4927,4928],{},"SegmentedOption"," is exported — ",[280,4931,4932],{},"import type { SegmentedOption } from '@oriui\u002Fvue'",[480,4934,4938],{"className":4935,"code":4936,"language":4937,"meta":488,"style":488},"language-ts shiki shiki-themes github-light github-dark","import type { SegmentedOption } from '@oriui\u002Fvue'\n\nconst options: SegmentedOption[] = [\n    { label: 'List', value: 'list', icon: listPath },\n    { label: 'Grid', value: 'grid', icon: gridPath },\n    { label: 'Map', value: 'map', disabled: true }\n]\n","ts",[280,4939,4940,4952,4956,4972,4984,4997,5015],{"__ignoreMap":488},[515,4941,4942,4944,4946,4948,4950],{"class":517,"line":518},[515,4943,1954],{"class":1953},[515,4945,763],{"class":1953},[515,4947,1959],{"class":521},[515,4949,1962],{"class":1953},[515,4951,1965],{"class":539},[515,4953,4954],{"class":517,"line":529},[515,4955,1971],{"emptyLinePlaceholder":1970},[515,4957,4958,4960,4962,4964,4966,4968,4970],{"class":517,"line":549},[515,4959,1976],{"class":1953},[515,4961,2024],{"class":1979},[515,4963,2027],{"class":1953},[515,4965,2030],{"class":532},[515,4967,2033],{"class":521},[515,4969,536],{"class":1953},[515,4971,2038],{"class":521},[515,4973,4974,4976,4978,4980,4982],{"class":517,"line":560},[515,4975,2043],{"class":521},[515,4977,4240],{"class":539},[515,4979,585],{"class":521},[515,4981,4245],{"class":539},[515,4983,4248],{"class":521},[515,4985,4986,4988,4990,4992,4994],{"class":517,"line":576},[515,4987,2043],{"class":521},[515,4989,4255],{"class":539},[515,4991,585],{"class":521},[515,4993,4260],{"class":539},[515,4995,4996],{"class":521},", icon: gridPath },\n",[515,4998,4999,5001,5004,5006,5009,5011,5013],{"class":517,"line":594},[515,5000,2043],{"class":521},[515,5002,5003],{"class":539},"'Map'",[515,5005,585],{"class":521},[515,5007,5008],{"class":539},"'map'",[515,5010,2662],{"class":521},[515,5012,1564],{"class":1979},[515,5014,622],{"class":521},[515,5016,5017],{"class":517,"line":609},[515,5018,2083],{"class":521},[271,5020,5021,5023,5024,5026,5027,5029],{},[280,5022,3242],{}," is ",[280,5025,4913],{}," and the model keeps the type you gave it. ",[280,5028,1910],{}," is an SVG path drawn before the\nlabel.",[4698,5031,5033],{"id":5032},"events-attributes","Events & attributes",[271,5035,5036,5038,5039,5041,5042,5044,5045,5048,5049,5051],{},[280,5037,3569],{}," is the public state binding — ",[280,5040,4908],{}," holds the checked ",[280,5043,3242],{},", and the component emits\n",[280,5046,5047],{},"update:modelValue"," when the user picks another segment. Without a ",[280,5050,3569],{}," it keeps its own state.",[271,5053,5054,5055,5058,5059,5062,5063,2958,5065,2958,5068,3247,5071,5074,5075,5077],{},"The component sets ",[280,5056,5057],{},"inheritAttrs: false"," and binds the attributes itself, to the root\n",[280,5060,5061],{},"div.ori-segmented-control"," and not to the inputs, so ",[280,5064,2778],{},[280,5066,5067],{},"style",[280,5069,5070],{},"aria-*",[280,5072,5073],{},"data-*"," land on the\ngroup. An unlabeled group passes ",[280,5076,4147],{}," this way:",[480,5079,5081],{"className":509,"code":5080,"language":511,"meta":488,"style":488},"\u003COriSegmentedControl v-model=\"view\" aria-label=\"View\" :options=\"viewOptions\" \u002F>\n",[280,5082,5083],{"__ignoreMap":488},[515,5084,5085,5087,5089,5091,5093,5095,5097,5099,5102,5104,5107,5109,5111,5113,5115,5118,5120],{"class":517,"line":518},[515,5086,522],{"class":521},[515,5088,1068],{"class":525},[515,5090,1071],{"class":532},[515,5092,536],{"class":521},[515,5094,540],{"class":539},[515,5096,4180],{"class":521},[515,5098,540],{"class":539},[515,5100,5101],{"class":532}," aria-label",[515,5103,536],{"class":521},[515,5105,5106],{"class":539},"\"View\"",[515,5108,1099],{"class":521},[515,5110,566],{"class":532},[515,5112,536],{"class":521},[515,5114,540],{"class":539},[515,5116,5117],{"class":521},"viewOptions",[515,5119,540],{"class":539},[515,5121,790],{"class":521},[4698,5123,5125],{"id":5124},"slots","Slots",[346,5127,5128,5139],{},[349,5129,5130],{},[352,5131,5132,5135,5137],{},[355,5133,5134],{},"Slot",[355,5136,4701],{},[355,5138,4719],{},[362,5140,5141],{},[352,5142,5143,5147,5151],{},[367,5144,5145],{},[280,5146,3945],{},[367,5148,5149],{},[280,5150,3952],{},[367,5152,5153,5154,5157,5158,325,5160,5163,5164,5167,5168,5170],{},"Scoped, rendered once per segment inside ",[280,5155,5156],{},"ori-segmented-control__text"," to replace its text — a count, a badge, rich markup. ",[280,5159,3945],{},[280,5161,5162],{},"{ label, value, … }"," entry; falls back to ",[280,5165,5166],{},"option.label",". The ",[280,5169,1910],{}," is drawn separately, before it.",[5067,5172,5173],{},"html pre.shiki code .sVt8B, html code.shiki .sVt8B{--shiki-default:#24292E;--shiki-dark:#E1E4E8}html pre.shiki code .s9eBZ, html code.shiki .s9eBZ{--shiki-default:#22863A;--shiki-dark:#85E89D}html pre.shiki code .sScJk, html code.shiki .sScJk{--shiki-default:#6F42C1;--shiki-dark:#B392F0}html pre.shiki code .sZZnC, html code.shiki .sZZnC{--shiki-default:#032F62;--shiki-dark:#9ECBFF}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sJ8bj, html code.shiki .sJ8bj{--shiki-default:#6A737D;--shiki-dark:#6A737D}html pre.shiki code .szBVR, html code.shiki .szBVR{--shiki-default:#D73A49;--shiki-dark:#F97583}html pre.shiki code .sj4cs, html code.shiki .sj4cs{--shiki-default:#005CC5;--shiki-dark:#79B8FF}",{"title":488,"searchDepth":529,"depth":529,"links":5175},[5176,5177,5178,5179,5180,5181,5182,5183,5184,5185,5186,5187,5188,5189,5190,5191,5192],{"id":343,"depth":529,"text":344},{"id":408,"depth":529,"text":409},{"id":477,"depth":529,"text":478},{"id":491,"depth":529,"text":492},{"id":1010,"depth":529,"text":1011},{"id":1292,"depth":529,"text":1293},{"id":1550,"depth":529,"text":1551},{"id":1903,"depth":529,"text":1904},{"id":2313,"depth":529,"text":2314},{"id":2557,"depth":529,"text":2558},{"id":2768,"depth":529,"text":2769},{"id":2935,"depth":529,"text":2936},{"id":3223,"depth":529,"text":3224},{"id":3562,"depth":529,"text":3563},{"id":4140,"depth":529,"text":4141},{"id":4487,"depth":529,"text":230},{"id":4687,"depth":529,"text":324,"children":5193},[5194,5195,5196],{"id":4700,"depth":549,"text":4701},{"id":5032,"depth":549,"text":5033},{"id":5124,"depth":549,"text":5125},{},{"title":98,"description":99},"components\u002Fsegmented-control","OPoyobSIL5wO0yCA3G3K9AqBLzcidcDyDJFABO9IiJ8",1791706811833]