import{n as e}from"./rolldown-runtime-C0FnF6B9.js";import{n as t}from"./iframe-GrlyTB2d.js";import{i as n,r}from"./react-qN2cStNd.js";import{a as i,d as a,f as o,l as s,m as c,n as l,p as u,r as d,u as f}from"./blocks-DkLPipTQ.js";import{a as p,i as m,n as h,o as g,r as _,t as v}from"./MultiSelect.stories-BaLHVCAU.js";function y(e){let t={code:`code`,h2:`h2`,h3:`h3`,li:`li`,p:`p`,pre:`pre`,ul:`ul`,...n(),...e.components};return(0,x.jsxs)(x.Fragment,{children:[(0,x.jsx)(s,{of:p,parameters:{docs:{toc:!0}}}),`
`,(0,x.jsx)(u,{children:`MultiSelect`}),`
`,(0,x.jsx)(o,{children:`Мультиселект для локальных коллекций с токенами, поиском и состояниями загрузки`}),`
`,(0,x.jsx)(t.p,{children:`MultiSelect уже имеет живые stories, а эта страница собирает их в структурированную документацию с краткими рекомендациями, примерами подключения и API.
Ниже можно быстро проверить базовый сценарий, а затем перейти к отдельным режимам использования и состояниям компонента. Отдельно разобраны загрузку, ошибочные состояния.`}),`
`,(0,x.jsx)(t.h2,{id:`основной-сценарий`,children:`Основной сценарий`}),`
`,(0,x.jsx)(f,{}),`
`,(0,x.jsx)(i,{of:v}),`
`,(0,x.jsx)(t.pre,{children:(0,x.jsx)(t.code,{className:`language-tsx`,children:`import { useState } from "react";

import { MultiSelect } from "@/shared/ui";

const items = [
	{ code: "MOW", label: "Москва" },
	{ code: "EKB", label: "Екатеринбург" }
];

export function Example() {
	const [value, setValue] = useState([]);
	const [query, setQuery] = useState("");

	return (
		<MultiSelect
			label="Города"
			items={items}
			value={value}
			query={query}
			onQuery={setQuery}
			onChange={setValue}
			codeKey="code"
			textKey="label"
		/>
	);
}
`})}),`
`,(0,x.jsx)(t.h2,{id:`практические-рекомендации`,children:`Практические рекомендации`}),`
`,(0,x.jsxs)(t.ul,{children:[`
`,(0,x.jsx)(t.li,{children:`Для асинхронных сценариев предусмотрите не только успешный путь, но и загрузку, пустой результат и ошибку.`}),`
`]}),`
`,(0,x.jsx)(t.h2,{id:`сценарии-использования`,children:`Сценарии использования`}),`
`,(0,x.jsx)(t.h3,{id:`базовый-сценарий-без-дополнительной-логики`,children:`Базовый сценарий без дополнительной логики`}),`
`,(0,x.jsx)(t.p,{children:`Базовый сценарий без дополнительной логики.`}),`
`,(0,x.jsx)(d,{of:v}),`
`,(0,x.jsx)(t.h3,{id:`состояние-загрузки`,children:`Состояние загрузки`}),`
`,(0,x.jsx)(t.p,{children:`Состояние загрузки.`}),`
`,(0,x.jsx)(d,{of:m}),`
`,(0,x.jsx)(t.h3,{id:`состояние-ошибки`,children:`Состояние ошибки`}),`
`,(0,x.jsx)(t.p,{children:`Состояние ошибки.`}),`
`,(0,x.jsx)(d,{of:_}),`
`,(0,x.jsx)(t.h3,{id:`пустое-состояние`,children:`Пустое состояние`}),`
`,(0,x.jsx)(t.p,{children:`Пустое состояние.`}),`
`,(0,x.jsx)(d,{of:h}),`
`,(0,x.jsx)(t.h2,{id:`api`,children:`API`}),`
`,(0,x.jsx)(l,{of:p}),`
`,(0,x.jsx)(t.h2,{id:`все-сторисы`,children:`Все сторисы`}),`
`,(0,x.jsx)(a,{includePrimary:!1})]})}function b(e={}){let{wrapper:t}={...n(),...e.components};return t?(0,x.jsx)(t,{...e,children:(0,x.jsx)(y,{...e})}):y(e)}var x;function S(){return(S=e((()=>{x=t(),r(),c(),g()})))()}S();export{b as default};