@scbt-ecom/ui 0.94.0 → 0.95.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/lib/shared/ui/formElements/controlled/dadata/address/DadataAddress.js +1 -1
  2. package/dist/lib/shared/ui/formElements/controlled/dadata/address/DadataAddress.js.map +1 -1
  3. package/dist/lib/shared/ui/formElements/controlled/dadata/auto/DadataAuto.js +1 -1
  4. package/dist/lib/shared/ui/formElements/controlled/dadata/auto/DadataAuto.js.map +1 -1
  5. package/dist/lib/shared/ui/formElements/controlled/dadata/country/DadataCountry.js +1 -1
  6. package/dist/lib/shared/ui/formElements/controlled/dadata/country/DadataCountry.js.map +1 -1
  7. package/dist/lib/shared/ui/formElements/controlled/dadata/fio/DadataFio.js +1 -1
  8. package/dist/lib/shared/ui/formElements/controlled/dadata/fio/DadataFio.js.map +1 -1
  9. package/dist/lib/shared/ui/formElements/controlled/dadata/party/DadataOrganization.js.map +1 -1
  10. package/dist/lib/shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js.map +1 -1
  11. package/dist/lib/shared/ui/formElements/uncontrolled/autocomplete/types.js +2 -0
  12. package/dist/lib/shared/ui/formElements/uncontrolled/autocomplete/types.js.map +1 -0
  13. package/dist/lib/shared/ui/formElements/uncontrolled/index.js.map +1 -1
  14. package/dist/lib/widgets/breadcrumbs/Breadcrumb.js +1 -1
  15. package/dist/lib/widgets/breadcrumbs/Breadcrumb.js.map +1 -1
  16. package/dist/lib/widgets/breadcrumbs/Breadcrumbs.js +1 -1
  17. package/dist/lib/widgets/breadcrumbs/Breadcrumbs.js.map +1 -1
  18. package/dist/stats.html +1 -1
  19. package/dist/types/lib/shared/ui/formElements/controlled/dadata/address/DadataAddress.d.ts +2 -2
  20. package/dist/types/lib/shared/ui/formElements/controlled/dadata/auto/DadataAuto.d.ts +2 -2
  21. package/dist/types/lib/shared/ui/formElements/controlled/dadata/country/DadataCountry.d.ts +2 -2
  22. package/dist/types/lib/shared/ui/formElements/controlled/dadata/fio/DadataFio.d.ts +2 -2
  23. package/dist/types/lib/shared/ui/formElements/controlled/dadata/party/DadataOrganization.d.ts +2 -2
  24. package/dist/types/lib/shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.d.ts +3 -2
  25. package/dist/types/lib/shared/ui/formElements/uncontrolled/autocomplete/index.d.ts +1 -0
  26. package/dist/types/lib/shared/ui/formElements/uncontrolled/autocomplete/types.d.ts +4 -0
  27. package/dist/types/lib/shared/ui/formElements/uncontrolled/index.d.ts +1 -1
  28. package/dist/types/lib/widgets/breadcrumbs/Breadcrumb.d.ts +3 -2
  29. package/package.json +1 -1
@@ -1,2 +1,2 @@
1
- import{jsx as e}from"react/jsx-runtime";import{AutocompleteControl as l}from"../../autocomplete/Autocomplete.js";import{useDadataQueryAddress as n}from"./query.js";const t=r=>({value:(r==null?void 0:r.value)||"",label:(r==null?void 0:r.value)||""}),v=({formatter:r=t,dadataBaseUrl:o,queryClient:a,...s})=>{const u=n;return e(l,{query:d=>u(d,o,{},a),formatter:r,...s})};export{v as DadataAddress};
1
+ import{jsx as l}from"react/jsx-runtime";import{AutocompleteControl as e}from"../../autocomplete/Autocomplete.js";import{useDadataQueryAddress as n}from"./query.js";const t=r=>({value:(r==null?void 0:r.value)||"",label:(r==null?void 0:r.value)||"",data:r}),v=({formatter:r=t,dadataBaseUrl:o,queryClient:a,...s})=>{const d=n;return l(e,{query:u=>d(u,o,{},a),formatter:r,...s})};export{v as DadataAddress};
2
2
  //# sourceMappingURL=DadataAddress.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DadataAddress.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dadata/address/DadataAddress.tsx"],"sourcesContent":["import { type FieldValues } from 'react-hook-form'\nimport { type QueryClient } from '@tanstack/react-query'\nimport { AutocompleteControl, type AutocompleteControlProps } from '../../autocomplete'\nimport { type IDadataCacheOption } from '../types'\nimport { useDadataQueryAddress } from './query'\nimport { type SelectItemOption } from '$/shared/ui'\n\nconst addressFormatter = (item: IDadataCacheOption<unknown>): SelectItemOption => ({\n value: item?.value || '',\n label: item?.value || ''\n})\n\nexport type DadataAddressProps<TFieldValues extends FieldValues> = Omit<\n AutocompleteControlProps<TFieldValues, IDadataCacheOption<unknown>>,\n 'query' | 'formatter'\n> & {\n dadataBaseUrl: string\n formatter?: (item: IDadataCacheOption<unknown>) => SelectItemOption\n queryClient?: QueryClient\n}\n\n/**\n * DADATA_BASE_CACHE_URL - нужно использовать этот url\n */\nexport const DadataAddress = <TFieldValues extends FieldValues>({\n formatter = addressFormatter,\n dadataBaseUrl,\n queryClient,\n ...props\n}: DadataAddressProps<TFieldValues>) => {\n const queryFn = useDadataQueryAddress\n\n return (\n <AutocompleteControl query={(query) => queryFn(query, dadataBaseUrl, {}, queryClient)} formatter={formatter} {...props} />\n )\n}\n"],"names":["addressFormatter","item","DadataAddress","formatter","dadataBaseUrl","queryClient","props","queryFn","useDadataQueryAddress","jsx","AutocompleteControl","query"],"mappings":"oKAOA,MAAMA,EAAoBC,IAAyD,CACjF,OAAOA,GAAA,YAAAA,EAAM,QAAS,GACtB,OAAOA,GAAA,YAAAA,EAAM,QAAS,EACxB,GAcaC,EAAgB,CAAmC,CAC9D,UAAAC,EAAYH,EACZ,cAAAI,EACA,YAAAC,EACA,GAAGC,CACL,IAAwC,CACtC,MAAMC,EAAUC,EAEhB,OACEC,EAACC,EAAA,CAAoB,MAAQC,GAAUJ,EAAQI,EAAOP,EAAe,CAAA,EAAIC,CAAW,EAAG,UAAAF,EAAuB,GAAGG,CAAA,CAAO,CAE5H"}
1
+ {"version":3,"file":"DadataAddress.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dadata/address/DadataAddress.tsx"],"sourcesContent":["import { type FieldValues } from 'react-hook-form'\nimport { type QueryClient } from '@tanstack/react-query'\nimport { AutocompleteControl, type AutocompleteControlProps } from '../../autocomplete'\nimport { type IDadataCacheOption } from '../types'\nimport { useDadataQueryAddress } from './query'\nimport { type AutocompleteItemOption } from '$/shared/ui'\n\nconst addressFormatter = (item: IDadataCacheOption<unknown>): AutocompleteItemOption<typeof item> => ({\n value: item?.value || '',\n label: item?.value || '',\n data: item\n})\n\nexport type DadataAddressProps<TFieldValues extends FieldValues> = Omit<\n AutocompleteControlProps<TFieldValues, IDadataCacheOption<unknown>>,\n 'query' | 'formatter'\n> & {\n dadataBaseUrl: string\n formatter?: (item: IDadataCacheOption<unknown>) => AutocompleteItemOption<typeof item>\n queryClient?: QueryClient\n}\n\n/**\n * DADATA_BASE_CACHE_URL - нужно использовать этот url\n */\nexport const DadataAddress = <TFieldValues extends FieldValues>({\n formatter = addressFormatter,\n dadataBaseUrl,\n queryClient,\n ...props\n}: DadataAddressProps<TFieldValues>) => {\n const queryFn = useDadataQueryAddress\n\n return (\n <AutocompleteControl query={(query) => queryFn(query, dadataBaseUrl, {}, queryClient)} formatter={formatter} {...props} />\n )\n}\n"],"names":["addressFormatter","item","DadataAddress","formatter","dadataBaseUrl","queryClient","props","queryFn","useDadataQueryAddress","jsx","AutocompleteControl","query"],"mappings":"oKAOA,MAAMA,EAAoBC,IAA4E,CACpG,OAAOA,GAAA,YAAAA,EAAM,QAAS,GACtB,OAAOA,GAAA,YAAAA,EAAM,QAAS,GACtB,KAAMA,CACR,GAcaC,EAAgB,CAAmC,CAC9D,UAAAC,EAAYH,EACZ,cAAAI,EACA,YAAAC,EACA,GAAGC,CACL,IAAwC,CACtC,MAAMC,EAAUC,EAEhB,OACEC,EAACC,EAAA,CAAoB,MAAQC,GAAUJ,EAAQI,EAAOP,EAAe,CAAA,EAAIC,CAAW,EAAG,UAAAF,EAAuB,GAAGG,CAAA,CAAO,CAE5H"}
@@ -1,2 +1,2 @@
1
- import{jsx as n}from"react/jsx-runtime";import{AutocompleteControl as p}from"../../autocomplete/Autocomplete.js";import{useDadataQueryAuto as s}from"./query.js";const c=o=>({value:(o==null?void 0:o.model_mark)||"",label:(o==null?void 0:o.model_mark)||""}),m=({formatter:o=c,dadataBaseUrl:r,queryClient:a,...u})=>{const t=s;return n(p,{query:l=>t(l,r,{},a),formatter:o,...u})};export{m as DadataAuto};
1
+ import{jsx as n}from"react/jsx-runtime";import{AutocompleteControl as d}from"../../autocomplete/Autocomplete.js";import{useDadataQueryAuto as p}from"./query.js";const s=o=>({value:(o==null?void 0:o.model_mark)||"",label:(o==null?void 0:o.model_mark)||"",data:o}),y=({formatter:o=s,dadataBaseUrl:r,queryClient:a,...u})=>{const t=p;return n(d,{query:l=>t(l,r,{},a),formatter:o,...u})};export{y as DadataAuto};
2
2
  //# sourceMappingURL=DadataAuto.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DadataAuto.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dadata/auto/DadataAuto.tsx"],"sourcesContent":["import { type FieldValues } from 'react-hook-form'\nimport { type QueryClient } from '@tanstack/react-query'\nimport { AutocompleteControl, type AutocompleteControlProps } from '../../autocomplete'\nimport { type IDadataAutoOption } from '../types'\nimport { useDadataQueryAuto } from './query'\nimport { type SelectItemOption } from '$/shared/ui'\n\nconst autoFormatter = (item: IDadataAutoOption): SelectItemOption => ({\n value: item?.model_mark || '',\n label: item?.model_mark || ''\n})\n\nexport type DadataAutoProps<TFieldValues extends FieldValues> = Omit<\n AutocompleteControlProps<TFieldValues, IDadataAutoOption>,\n 'query' | 'formatter'\n> & {\n dadataBaseUrl: string\n formatter?: (item: IDadataAutoOption) => SelectItemOption\n queryClient?: QueryClient\n}\n\n/**\n * DADATA_BASE_CONSTANTS_URL - нужно использовать этот url\n */\nexport const DadataAuto = <TFieldValues extends FieldValues>({\n formatter = autoFormatter,\n dadataBaseUrl,\n queryClient,\n ...props\n}: DadataAutoProps<TFieldValues>) => {\n const queryFn = useDadataQueryAuto\n\n return (\n <AutocompleteControl query={(query) => queryFn(query, dadataBaseUrl, {}, queryClient)} formatter={formatter} {...props} />\n )\n}\n"],"names":["autoFormatter","item","DadataAuto","formatter","dadataBaseUrl","queryClient","props","queryFn","useDadataQueryAuto","jsx","AutocompleteControl","query"],"mappings":"iKAOA,MAAMA,EAAiBC,IAA+C,CACpE,OAAOA,GAAA,YAAAA,EAAM,aAAc,GAC3B,OAAOA,GAAA,YAAAA,EAAM,aAAc,EAC7B,GAcaC,EAAa,CAAmC,CAC3D,UAAAC,EAAYH,EACZ,cAAAI,EACA,YAAAC,EACA,GAAGC,CACL,IAAqC,CACnC,MAAMC,EAAUC,EAEhB,OACEC,EAACC,EAAA,CAAoB,MAAQC,GAAUJ,EAAQI,EAAOP,EAAe,CAAA,EAAIC,CAAW,EAAG,UAAAF,EAAuB,GAAGG,CAAA,CAAO,CAE5H"}
1
+ {"version":3,"file":"DadataAuto.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dadata/auto/DadataAuto.tsx"],"sourcesContent":["import { type FieldValues } from 'react-hook-form'\nimport { type QueryClient } from '@tanstack/react-query'\nimport { AutocompleteControl, type AutocompleteControlProps } from '../../autocomplete'\nimport { type IDadataAutoOption } from '../types'\nimport { useDadataQueryAuto } from './query'\nimport { type AutocompleteItemOption } from '$/shared/ui'\n\nconst autoFormatter = (item: IDadataAutoOption): AutocompleteItemOption<typeof item> => ({\n value: item?.model_mark || '',\n label: item?.model_mark || '',\n data: item\n})\n\nexport type DadataAutoProps<TFieldValues extends FieldValues> = Omit<\n AutocompleteControlProps<TFieldValues, IDadataAutoOption>,\n 'query' | 'formatter'\n> & {\n dadataBaseUrl: string\n formatter?: (item: IDadataAutoOption) => AutocompleteItemOption<typeof item>\n queryClient?: QueryClient\n}\n\n/**\n * DADATA_BASE_CONSTANTS_URL - нужно использовать этот url\n */\nexport const DadataAuto = <TFieldValues extends FieldValues>({\n formatter = autoFormatter,\n dadataBaseUrl,\n queryClient,\n ...props\n}: DadataAutoProps<TFieldValues>) => {\n const queryFn = useDadataQueryAuto\n\n return (\n <AutocompleteControl query={(query) => queryFn(query, dadataBaseUrl, {}, queryClient)} formatter={formatter} {...props} />\n )\n}\n"],"names":["autoFormatter","item","DadataAuto","formatter","dadataBaseUrl","queryClient","props","queryFn","useDadataQueryAuto","jsx","AutocompleteControl","query"],"mappings":"iKAOA,MAAMA,EAAiBC,IAAkE,CACvF,OAAOA,GAAA,YAAAA,EAAM,aAAc,GAC3B,OAAOA,GAAA,YAAAA,EAAM,aAAc,GAC3B,KAAMA,CACR,GAcaC,EAAa,CAAmC,CAC3D,UAAAC,EAAYH,EACZ,cAAAI,EACA,YAAAC,EACA,GAAGC,CACL,IAAqC,CACnC,MAAMC,EAAUC,EAEhB,OACEC,EAACC,EAAA,CAAoB,MAAQC,GAAUJ,EAAQI,EAAOP,EAAe,CAAA,EAAIC,CAAW,EAAG,UAAAF,EAAuB,GAAGG,CAAA,CAAO,CAE5H"}
@@ -1,2 +1,2 @@
1
- import{jsx as y}from"react/jsx-runtime";import{AutocompleteControl as c}from"../../autocomplete/Autocomplete.js";import{useDadataQueryCountry as l}from"./query.js";const p=o=>({value:(o==null?void 0:o.country_name)||"",label:(o==null?void 0:o.country_name)||""}),C=({formatter:o=p,dadataBaseUrl:r,queryClient:n,...u})=>{const a=l;return y(c,{query:t=>a(t,r,{},n),formatter:o,...u})};export{C as DadataCountry};
1
+ import{jsx as y}from"react/jsx-runtime";import{AutocompleteControl as c}from"../../autocomplete/Autocomplete.js";import{useDadataQueryCountry as l}from"./query.js";const p=o=>({value:(o==null?void 0:o.country_name)||"",label:(o==null?void 0:o.country_name)||"",data:o}),f=({formatter:o=p,dadataBaseUrl:r,queryClient:a,...n})=>{const u=l;return y(c,{query:t=>u(t,r,{},a),formatter:o,...n})};export{f as DadataCountry};
2
2
  //# sourceMappingURL=DadataCountry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DadataCountry.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dadata/country/DadataCountry.tsx"],"sourcesContent":["import { type FieldValues } from 'react-hook-form'\nimport { type QueryClient } from '@tanstack/react-query'\nimport { AutocompleteControl, type AutocompleteControlProps } from '../../autocomplete'\nimport { type IDadataCountryOption } from '../types'\nimport { useDadataQueryCountry } from './query'\nimport { type SelectItemOption } from '$/shared/ui'\n\nconst countryFormatter = (item: IDadataCountryOption): SelectItemOption => ({\n value: item?.country_name || '',\n label: item?.country_name || ''\n})\n\nexport type DadataCountryProps<TFieldValues extends FieldValues> = Omit<\n AutocompleteControlProps<TFieldValues, IDadataCountryOption>,\n 'query' | 'formatter'\n> & {\n dadataBaseUrl: string\n formatter?: (item: IDadataCountryOption) => SelectItemOption\n queryClient?: QueryClient\n}\n\n/**\n * DADATA_BASE_CONSTANTS_URL - нужно использовать этот url\n */\nexport const DadataCountry = <TFieldValues extends FieldValues>({\n formatter = countryFormatter,\n dadataBaseUrl,\n queryClient,\n ...props\n}: DadataCountryProps<TFieldValues>) => {\n const queryFn = useDadataQueryCountry\n\n return (\n <AutocompleteControl query={(query) => queryFn(query, dadataBaseUrl, {}, queryClient)} formatter={formatter} {...props} />\n )\n}\n"],"names":["countryFormatter","item","DadataCountry","formatter","dadataBaseUrl","queryClient","props","queryFn","useDadataQueryCountry","jsx","AutocompleteControl","query"],"mappings":"oKAOA,MAAMA,EAAoBC,IAAkD,CAC1E,OAAOA,GAAA,YAAAA,EAAM,eAAgB,GAC7B,OAAOA,GAAA,YAAAA,EAAM,eAAgB,EAC/B,GAcaC,EAAgB,CAAmC,CAC9D,UAAAC,EAAYH,EACZ,cAAAI,EACA,YAAAC,EACA,GAAGC,CACL,IAAwC,CACtC,MAAMC,EAAUC,EAEhB,OACEC,EAACC,EAAA,CAAoB,MAAQC,GAAUJ,EAAQI,EAAOP,EAAe,CAAA,EAAIC,CAAW,EAAG,UAAAF,EAAuB,GAAGG,CAAA,CAAO,CAE5H"}
1
+ {"version":3,"file":"DadataCountry.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dadata/country/DadataCountry.tsx"],"sourcesContent":["import { type FieldValues } from 'react-hook-form'\nimport { type QueryClient } from '@tanstack/react-query'\nimport { AutocompleteControl, type AutocompleteControlProps } from '../../autocomplete'\nimport { type IDadataCountryOption } from '../types'\nimport { useDadataQueryCountry } from './query'\nimport { type AutocompleteItemOption } from '$/shared/ui'\n\nconst countryFormatter = (item: IDadataCountryOption): AutocompleteItemOption<typeof item> => ({\n value: item?.country_name || '',\n label: item?.country_name || '',\n data: item\n})\n\nexport type DadataCountryProps<TFieldValues extends FieldValues> = Omit<\n AutocompleteControlProps<TFieldValues, IDadataCountryOption>,\n 'query' | 'formatter'\n> & {\n dadataBaseUrl: string\n formatter?: (item: IDadataCountryOption) => AutocompleteItemOption<typeof item>\n queryClient?: QueryClient\n}\n\n/**\n * DADATA_BASE_CONSTANTS_URL - нужно использовать этот url\n */\nexport const DadataCountry = <TFieldValues extends FieldValues>({\n formatter = countryFormatter,\n dadataBaseUrl,\n queryClient,\n ...props\n}: DadataCountryProps<TFieldValues>) => {\n const queryFn = useDadataQueryCountry\n\n return (\n <AutocompleteControl query={(query) => queryFn(query, dadataBaseUrl, {}, queryClient)} formatter={formatter} {...props} />\n )\n}\n"],"names":["countryFormatter","item","DadataCountry","formatter","dadataBaseUrl","queryClient","props","queryFn","useDadataQueryCountry","jsx","AutocompleteControl","query"],"mappings":"oKAOA,MAAMA,EAAoBC,IAAqE,CAC7F,OAAOA,GAAA,YAAAA,EAAM,eAAgB,GAC7B,OAAOA,GAAA,YAAAA,EAAM,eAAgB,GAC7B,KAAMA,CACR,GAcaC,EAAgB,CAAmC,CAC9D,UAAAC,EAAYH,EACZ,cAAAI,EACA,YAAAC,EACA,GAAGC,CACL,IAAwC,CACtC,MAAMC,EAAUC,EAEhB,OACEC,EAACC,EAAA,CAAoB,MAAQC,GAAUJ,EAAQI,EAAOP,EAAe,CAAA,EAAIC,CAAW,EAAG,UAAAF,EAAuB,GAAGG,CAAA,CAAO,CAE5H"}
@@ -1,2 +1,2 @@
1
- import{jsx as t}from"react/jsx-runtime";import{AutocompleteControl as p}from"../../autocomplete/Autocomplete.js";import{useDadataQueryFio as s}from"./query.js";const c=o=>({value:(o==null?void 0:o.value)||"",label:(o==null?void 0:o.value)||""}),v=({formatter:o=c,dadataBaseUrl:r,queryClient:a,...u})=>{const l=s;return t(p,{query:n=>l(n,r,{},a),formatter:o,...u})};export{v as DadataFio};
1
+ import{jsx as t}from"react/jsx-runtime";import{AutocompleteControl as p}from"../../autocomplete/Autocomplete.js";import{useDadataQueryFio as s}from"./query.js";const c=o=>({value:(o==null?void 0:o.value)||"",label:(o==null?void 0:o.value)||"",data:o}),e=({formatter:o=c,dadataBaseUrl:r,queryClient:a,...u})=>{const l=s;return t(p,{query:n=>l(n,r,{},a),formatter:o,...u})};export{e as DadataFio};
2
2
  //# sourceMappingURL=DadataFio.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DadataFio.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dadata/fio/DadataFio.tsx"],"sourcesContent":["import { type FieldValues } from 'react-hook-form'\nimport { type QueryClient } from '@tanstack/react-query'\nimport { AutocompleteControl, type AutocompleteControlProps } from '../../autocomplete'\nimport { type IDadataCacheOption } from '../types'\nimport { useDadataQueryFio } from './query'\nimport { type SelectItemOption } from '$/shared/ui'\n\nconst fioFormatter = (item: IDadataCacheOption<unknown>): SelectItemOption => ({\n value: item?.value || '',\n label: item?.value || ''\n})\n\nexport type DadataFioProps<TFieldValues extends FieldValues> = Omit<\n AutocompleteControlProps<TFieldValues, IDadataCacheOption<unknown>>,\n 'query' | 'formatter'\n> & {\n dadataBaseUrl: string\n formatter?: (item: IDadataCacheOption<unknown>) => SelectItemOption\n queryClient?: QueryClient\n}\n\n/**\n * DADATA_BASE_CACHE_URL - нужно использовать этот url\n */\nexport const DadataFio = <TFieldValues extends FieldValues>({\n formatter = fioFormatter,\n dadataBaseUrl,\n queryClient,\n ...props\n}: DadataFioProps<TFieldValues>) => {\n const queryFn = useDadataQueryFio\n\n return (\n <AutocompleteControl query={(query) => queryFn(query, dadataBaseUrl, {}, queryClient)} formatter={formatter} {...props} />\n )\n}\n"],"names":["fioFormatter","item","DadataFio","formatter","dadataBaseUrl","queryClient","props","queryFn","useDadataQueryFio","jsx","AutocompleteControl","query"],"mappings":"gKAOA,MAAMA,EAAgBC,IAAyD,CAC7E,OAAOA,GAAA,YAAAA,EAAM,QAAS,GACtB,OAAOA,GAAA,YAAAA,EAAM,QAAS,EACxB,GAcaC,EAAY,CAAmC,CAC1D,UAAAC,EAAYH,EACZ,cAAAI,EACA,YAAAC,EACA,GAAGC,CACL,IAAoC,CAClC,MAAMC,EAAUC,EAEhB,OACEC,EAACC,EAAA,CAAoB,MAAQC,GAAUJ,EAAQI,EAAOP,EAAe,CAAA,EAAIC,CAAW,EAAG,UAAAF,EAAuB,GAAGG,CAAA,CAAO,CAE5H"}
1
+ {"version":3,"file":"DadataFio.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dadata/fio/DadataFio.tsx"],"sourcesContent":["import { type FieldValues } from 'react-hook-form'\nimport { type QueryClient } from '@tanstack/react-query'\nimport { AutocompleteControl, type AutocompleteControlProps } from '../../autocomplete'\nimport { type IDadataCacheOption } from '../types'\nimport { useDadataQueryFio } from './query'\nimport { type AutocompleteItemOption } from '$/shared/ui'\n\nconst fioFormatter = (item: IDadataCacheOption<unknown>): AutocompleteItemOption<typeof item> => ({\n value: item?.value || '',\n label: item?.value || '',\n data: item\n})\n\nexport type DadataFioProps<TFieldValues extends FieldValues> = Omit<\n AutocompleteControlProps<TFieldValues, IDadataCacheOption<unknown>>,\n 'query' | 'formatter'\n> & {\n dadataBaseUrl: string\n formatter?: (item: IDadataCacheOption<unknown>) => AutocompleteItemOption<typeof item>\n queryClient?: QueryClient\n}\n\n/**\n * DADATA_BASE_CACHE_URL - нужно использовать этот url\n */\nexport const DadataFio = <TFieldValues extends FieldValues>({\n formatter = fioFormatter,\n dadataBaseUrl,\n queryClient,\n ...props\n}: DadataFioProps<TFieldValues>) => {\n const queryFn = useDadataQueryFio\n\n return (\n <AutocompleteControl query={(query) => queryFn(query, dadataBaseUrl, {}, queryClient)} formatter={formatter} {...props} />\n )\n}\n"],"names":["fioFormatter","item","DadataFio","formatter","dadataBaseUrl","queryClient","props","queryFn","useDadataQueryFio","jsx","AutocompleteControl","query"],"mappings":"gKAOA,MAAMA,EAAgBC,IAA4E,CAChG,OAAOA,GAAA,YAAAA,EAAM,QAAS,GACtB,OAAOA,GAAA,YAAAA,EAAM,QAAS,GACtB,KAAMA,CACR,GAcaC,EAAY,CAAmC,CAC1D,UAAAC,EAAYH,EACZ,cAAAI,EACA,YAAAC,EACA,GAAGC,CACL,IAAoC,CAClC,MAAMC,EAAUC,EAEhB,OACEC,EAACC,EAAA,CAAoB,MAAQC,GAAUJ,EAAQI,EAAOP,EAAe,CAAA,EAAIC,CAAW,EAAG,UAAAF,EAAuB,GAAGG,CAAA,CAAO,CAE5H"}
@@ -1 +1 @@
1
- {"version":3,"file":"DadataOrganization.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dadata/party/DadataOrganization.tsx"],"sourcesContent":["import { type FieldValues } from 'react-hook-form'\nimport { type QueryClient } from '@tanstack/react-query'\nimport { AutocompleteControl, type AutocompleteControlProps } from '../../autocomplete'\nimport { type IDadataOrganizationOption } from '../types'\nimport { useDadataQueryParty } from './query'\nimport { type SelectItemOption } from '$/shared/ui'\n\nconst organizationFormatter = (item: IDadataOrganizationOption): SelectItemOption => ({\n value: item?.value || '',\n label: item?.value || ''\n})\n\nexport type DadataOrganizationProps<TFieldValues extends FieldValues> = Omit<\n AutocompleteControlProps<TFieldValues, IDadataOrganizationOption>,\n 'query' | 'formatter'\n> & {\n dadataBaseUrl: string\n formatter?: (item: IDadataOrganizationOption) => SelectItemOption\n queryClient?: QueryClient\n}\n\n/**\n * DADATA_BASE_CACHE_URL - нужно использовать этот url\n */\nexport const DadataOrganization = <TFieldValues extends FieldValues>({\n formatter = organizationFormatter,\n dadataBaseUrl,\n queryClient,\n ...props\n}: DadataOrganizationProps<TFieldValues>) => {\n const queryFn = useDadataQueryParty\n\n return (\n <AutocompleteControl query={(query) => queryFn(query, dadataBaseUrl, {}, queryClient)} formatter={formatter} {...props} />\n )\n}\n"],"names":["organizationFormatter","item","DadataOrganization","formatter","dadataBaseUrl","queryClient","props","queryFn","useDadataQueryParty","jsx","AutocompleteControl","query"],"mappings":"kKAOA,MAAMA,EAAyBC,IAAuD,CACpF,OAAOA,GAAA,YAAAA,EAAM,QAAS,GACtB,OAAOA,GAAA,YAAAA,EAAM,QAAS,EACxB,GAcaC,EAAqB,CAAmC,CACnE,UAAAC,EAAYH,EACZ,cAAAI,EACA,YAAAC,EACA,GAAGC,CACL,IAA6C,CAC3C,MAAMC,EAAUC,EAEhB,OACEC,EAACC,EAAA,CAAoB,MAAQC,GAAUJ,EAAQI,EAAOP,EAAe,CAAA,EAAIC,CAAW,EAAG,UAAAF,EAAuB,GAAGG,CAAA,CAAO,CAE5H"}
1
+ {"version":3,"file":"DadataOrganization.js","sources":["../../../../../../../../lib/shared/ui/formElements/controlled/dadata/party/DadataOrganization.tsx"],"sourcesContent":["import { type FieldValues } from 'react-hook-form'\nimport { type QueryClient } from '@tanstack/react-query'\nimport { AutocompleteControl, type AutocompleteControlProps } from '../../autocomplete'\nimport { type IDadataOrganizationOption } from '../types'\nimport { useDadataQueryParty } from './query'\nimport { type AutocompleteItemOption } from '$/shared/ui'\n\nconst organizationFormatter = (item: IDadataOrganizationOption): AutocompleteItemOption<typeof item> => ({\n value: item?.value || '',\n label: item?.value || ''\n})\n\nexport type DadataOrganizationProps<TFieldValues extends FieldValues> = Omit<\n AutocompleteControlProps<TFieldValues, IDadataOrganizationOption>,\n 'query' | 'formatter'\n> & {\n dadataBaseUrl: string\n formatter?: (item: IDadataOrganizationOption) => AutocompleteItemOption<typeof item>\n queryClient?: QueryClient\n}\n\n/**\n * DADATA_BASE_CACHE_URL - нужно использовать этот url\n */\nexport const DadataOrganization = <TFieldValues extends FieldValues>({\n formatter = organizationFormatter,\n dadataBaseUrl,\n queryClient,\n ...props\n}: DadataOrganizationProps<TFieldValues>) => {\n const queryFn = useDadataQueryParty\n\n return (\n <AutocompleteControl query={(query) => queryFn(query, dadataBaseUrl, {}, queryClient)} formatter={formatter} {...props} />\n )\n}\n"],"names":["organizationFormatter","item","DadataOrganization","formatter","dadataBaseUrl","queryClient","props","queryFn","useDadataQueryParty","jsx","AutocompleteControl","query"],"mappings":"kKAOA,MAAMA,EAAyBC,IAA0E,CACvG,OAAOA,GAAA,YAAAA,EAAM,QAAS,GACtB,OAAOA,GAAA,YAAAA,EAAM,QAAS,EACxB,GAcaC,EAAqB,CAAmC,CACnE,UAAAC,EAAYH,EACZ,cAAAI,EACA,YAAAC,EACA,GAAGC,CACL,IAA6C,CAC3C,MAAMC,EAAUC,EAEhB,OACEC,EAACC,EAAA,CAAoB,MAAQC,GAAUJ,EAAQI,EAAOP,EAAe,CAAA,EAAIC,CAAW,EAAG,UAAAF,EAAuB,GAAGG,CAAA,CAAO,CAE5H"}
@@ -1 +1 @@
1
- {"version":3,"file":"Autocomplete.js","sources":["../../../../../../../lib/shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport { type UseQueryResult } from '@tanstack/react-query'\nimport { useDebounceValue } from '$/shared/hooks'\nimport { SelectBase, type SelectBaseProps, type SelectItemOption } from '$/shared/ui'\n\nexport interface AutocompleteBaseProps<TData>\n extends Omit<\n SelectBaseProps<boolean>,\n 'options' | 'inputValue' | 'onInputChange' | 'isSearchable' | 'isMulti' | 'value' | 'onChange'\n > {\n /**\n * Функция для запроса основанная на [@tanstack/query](https://tanstack.com/query/latest/docs/framework/react/overview)\n */\n query: (query: string) => UseQueryResult<TData[]>\n /**\n * Позволяет форматировать данные\n */\n formatter: (item: TData, index: number, array: TData[]) => SelectItemOption\n /**\n * Значение инпута\n */\n value?: string\n /**\n * Handler инпута\n */\n onChange?: (value: string) => void\n}\n\nexport const AutocompleteBase = forwardRef(\n <TData,>(\n { formatter, query, value, displayValue, onChange, externalHandlers, ...props }: AutocompleteBaseProps<TData>,\n ref: React.ForwardedRef<HTMLInputElement>\n ) => {\n const debounceSearch = useDebounceValue(value || '', 100)\n\n const { data } = query(debounceSearch)\n\n const options = data ? data.map(formatter) : []\n\n const onValueChange = (value?: SelectItemOption | SelectItemOption[]) => {\n if (!value || Array.isArray(value)) return\n\n if (onChange) onChange(displayValue ? displayValue(value) : value.label)\n }\n\n return (\n <SelectBase\n {...props}\n ref={ref}\n options={options}\n filterDisabled\n inputValue={value}\n onInputChange={onChange}\n isSearchable\n isMulti={false}\n displayValue={displayValue}\n externalHandlers={{\n onChange: (value) => {\n onValueChange(value)\n if (externalHandlers?.onChange) externalHandlers?.onChange(value)\n },\n ...externalHandlers\n }}\n />\n )\n }\n) as <TData>(props: AutocompleteBaseProps<TData> & { ref: React.Ref<HTMLInputElement> }) => React.JSX.Element\n"],"names":["AutocompleteBase","forwardRef","formatter","query","value","displayValue","onChange","externalHandlers","props","ref","debounceSearch","useDebounceValue","data","options","onValueChange","jsx","SelectBase"],"mappings":"8rCA4BO,MAAMA,EAAmBC,EAC9B,CACE,CAAE,UAAAC,EAAW,MAAAC,EAAO,MAAAC,EAAO,aAAAC,EAAc,SAAAC,EAAU,iBAAAC,EAAkB,GAAGC,CAAA,EACxEC,IACG,CACH,MAAMC,EAAiBC,EAAiBP,GAAS,GAAI,GAAG,EAElD,CAAE,KAAAQ,CAAA,EAAST,EAAMO,CAAc,EAE/BG,EAAUD,EAAOA,EAAK,IAAIV,CAAS,EAAI,CAAA,EAEvCY,EAAiBV,GAAkD,CACnE,CAACA,GAAS,MAAM,QAAQA,CAAK,GAE7BE,GAAUA,EAASD,EAAeA,EAAaD,CAAK,EAAIA,EAAM,KAAK,CACzE,EAEA,OACEW,EAACC,EAAA,CACE,GAAGR,EACJ,IAAAC,EACA,QAAAI,EACA,eAAc,GACd,WAAYT,EACZ,cAAeE,EACf,aAAY,GACZ,QAAS,GACT,aAAAD,EACA,iBAAkB,CAChB,SAAWD,GAAU,CACnBU,EAAcV,CAAK,EACfG,GAAA,MAAAA,EAAkB,WAAUA,GAAA,MAAAA,EAAkB,SAASH,GAC7D,EACA,GAAGG,CAAA,CACL,CAAA,CAGN,CACF"}
1
+ {"version":3,"file":"Autocomplete.js","sources":["../../../../../../../lib/shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.tsx"],"sourcesContent":["import { forwardRef } from 'react'\nimport { type UseQueryResult } from '@tanstack/react-query'\nimport type { AutocompleteItemOption } from './types'\nimport { useDebounceValue } from '$/shared/hooks'\nimport { SelectBase, type SelectBaseProps } from '$/shared/ui'\n\nexport interface AutocompleteBaseProps<TData>\n extends Omit<\n SelectBaseProps<boolean>,\n 'options' | 'inputValue' | 'onInputChange' | 'isSearchable' | 'isMulti' | 'value' | 'onChange'\n > {\n /**\n * Функция для запроса основанная на [@tanstack/query](https://tanstack.com/query/latest/docs/framework/react/overview)\n */\n query: (query: string) => UseQueryResult<TData[]>\n /**\n * Позволяет форматировать данные\n */\n formatter: (item: TData, index: number, array: TData[]) => AutocompleteItemOption<TData>\n /**\n * Значение инпута\n */\n value?: string\n /**\n * Handler инпута\n */\n onChange?: (value: string) => void\n}\n\nexport const AutocompleteBase = forwardRef(\n <TData,>(\n { formatter, query, value, displayValue, onChange, externalHandlers, ...props }: AutocompleteBaseProps<TData>,\n ref: React.ForwardedRef<HTMLInputElement>\n ) => {\n const debounceSearch = useDebounceValue(value || '', 100)\n\n const { data } = query(debounceSearch)\n\n const options = data ? data.map(formatter) : []\n\n const onValueChange = (value?: AutocompleteItemOption<TData> | AutocompleteItemOption<TData>[]) => {\n if (!value || Array.isArray(value)) return\n\n if (onChange) onChange(displayValue ? displayValue(value) : value.label)\n }\n\n return (\n <SelectBase\n {...props}\n ref={ref}\n options={options}\n filterDisabled\n inputValue={value}\n onInputChange={onChange}\n isSearchable\n isMulti={false}\n displayValue={displayValue}\n externalHandlers={{\n onChange: (value) => {\n onValueChange(value)\n if (externalHandlers?.onChange) externalHandlers?.onChange(value)\n },\n ...externalHandlers\n }}\n />\n )\n }\n) as <TData>(props: AutocompleteBaseProps<TData> & { ref: React.Ref<HTMLInputElement> }) => React.JSX.Element\n"],"names":["AutocompleteBase","forwardRef","formatter","query","value","displayValue","onChange","externalHandlers","props","ref","debounceSearch","useDebounceValue","data","options","onValueChange","jsx","SelectBase"],"mappings":"8rCA6BO,MAAMA,EAAmBC,EAC9B,CACE,CAAE,UAAAC,EAAW,MAAAC,EAAO,MAAAC,EAAO,aAAAC,EAAc,SAAAC,EAAU,iBAAAC,EAAkB,GAAGC,CAAA,EACxEC,IACG,CACH,MAAMC,EAAiBC,EAAiBP,GAAS,GAAI,GAAG,EAElD,CAAE,KAAAQ,CAAA,EAAST,EAAMO,CAAc,EAE/BG,EAAUD,EAAOA,EAAK,IAAIV,CAAS,EAAI,CAAA,EAEvCY,EAAiBV,GAA4E,CAC7F,CAACA,GAAS,MAAM,QAAQA,CAAK,GAE7BE,GAAUA,EAASD,EAAeA,EAAaD,CAAK,EAAIA,EAAM,KAAK,CACzE,EAEA,OACEW,EAACC,EAAA,CACE,GAAGR,EACJ,IAAAC,EACA,QAAAI,EACA,eAAc,GACd,WAAYT,EACZ,cAAeE,EACf,aAAY,GACZ,QAAS,GACT,aAAAD,EACA,iBAAkB,CAChB,SAAWD,GAAU,CACnBU,EAAcV,CAAK,EACfG,GAAA,MAAAA,EAAkB,WAAUA,GAAA,MAAAA,EAAkB,SAASH,GAC7D,EACA,GAAGG,CAAA,CACL,CAAA,CAGN,CACF"}
@@ -0,0 +1,2 @@
1
+
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../../lib/shared/ui/formElements/uncontrolled/index.ts"],"sourcesContent":["import { InputBase } from './input'\nexport type { InputBaseProps } from './input'\nimport { MaskInput } from './maskInput'\nexport type { MaskInputProps } from './maskInput'\nimport { SelectBase } from './select'\nexport type { SelectBaseProps, SelectItemOption } from './select'\nimport { CheckboxBase } from './checkbox'\nexport type { CheckboxBaseProps, CheckedState } from './checkbox'\nimport { DayPickerBase } from './dayPicker'\nexport type { DayPickerProps } from './dayPicker'\nimport { SwitchBase } from './switch'\nexport type { SwitchBaseProps } from './switch'\nimport { AutocompleteBase } from './autocomplete'\nimport { SliderBase } from './slider'\nexport type { AutocompleteBaseProps } from './autocomplete'\nimport { RadioGroupBase } from './radio'\nexport type { RadioGroupBaseProps, RadioOption } from './radio'\nimport { TextareaBase } from './textarea'\nimport { UploaderBase } from './uploader'\nexport type { TextareaBaseProps } from './textarea'\nexport { isSingleOption } from './select'\nimport { InputOtpBase } from './inputOtp'\nexport type { InputOtpBaseProps } from './inputOtp'\nimport { Combobox } from './combobox'\nexport type { ComboboxProps, ComboboxItemOption } from './combobox'\n\n/**\n * @example\n * ```ts\n * It's ok\n * import { InputBase } from '@scbt-ecom/ui'\n *\n * Not ok (tree shaking doesn't work)\n * import { Uncontrolled } from '@scbt-ecom/ui'\n * ```\n * @deprecated use Select instead\n */\nexport const Uncontrolled = {\n InputBase,\n SliderBase,\n AutocompleteBase,\n MaskInput,\n SelectBase,\n CheckboxBase,\n DayPickerBase,\n SwitchBase,\n RadioGroupBase,\n TextareaBase,\n InputOtpBase,\n UploaderBase,\n Combobox\n}\n"],"names":["Uncontrolled","InputBase","SliderBase","AutocompleteBase","MaskInput","SelectBase","CheckboxBase","DayPickerBase","SwitchBase","RadioGroupBase","TextareaBase","InputOtpBase","UploaderBase","Combobox"],"mappings":"u1BAqCO,MAAMA,EAAe,CAC1B,UAAAC,EACA,WAAAC,EACA,iBAAAC,EACA,UAAAC,EACA,WAAAC,EACA,aAAAC,EACA,cAAAC,EACA,WAAAC,EACA,eAAAC,EACA,aAAAC,EACA,aAAAC,EACA,aAAAC,EACA,SAAAC,CACF"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../../lib/shared/ui/formElements/uncontrolled/index.ts"],"sourcesContent":["import { InputBase } from './input'\nexport type { InputBaseProps } from './input'\nimport { MaskInput } from './maskInput'\nexport type { MaskInputProps } from './maskInput'\nimport { SelectBase } from './select'\nexport type { SelectBaseProps, SelectItemOption } from './select'\nimport { CheckboxBase } from './checkbox'\nexport type { CheckboxBaseProps, CheckedState } from './checkbox'\nimport { DayPickerBase } from './dayPicker'\nexport type { DayPickerProps } from './dayPicker'\nimport { SwitchBase } from './switch'\nexport type { SwitchBaseProps } from './switch'\nimport { AutocompleteBase } from './autocomplete'\nimport { SliderBase } from './slider'\nexport type { AutocompleteBaseProps, AutocompleteItemOption } from './autocomplete'\nimport { RadioGroupBase } from './radio'\nexport type { RadioGroupBaseProps, RadioOption } from './radio'\nimport { TextareaBase } from './textarea'\nimport { UploaderBase } from './uploader'\nexport type { TextareaBaseProps } from './textarea'\nexport { isSingleOption } from './select'\nimport { InputOtpBase } from './inputOtp'\nexport type { InputOtpBaseProps } from './inputOtp'\nimport { Combobox } from './combobox'\nexport type { ComboboxProps, ComboboxItemOption } from './combobox'\n\n/**\n * @example\n * ```ts\n * It's ok\n * import { InputBase } from '@scbt-ecom/ui'\n *\n * Not ok (tree shaking doesn't work)\n * import { Uncontrolled } from '@scbt-ecom/ui'\n * ```\n * @deprecated use Select instead\n */\nexport const Uncontrolled = {\n InputBase,\n SliderBase,\n AutocompleteBase,\n MaskInput,\n SelectBase,\n CheckboxBase,\n DayPickerBase,\n SwitchBase,\n RadioGroupBase,\n TextareaBase,\n InputOtpBase,\n UploaderBase,\n Combobox\n}\n"],"names":["Uncontrolled","InputBase","SliderBase","AutocompleteBase","MaskInput","SelectBase","CheckboxBase","DayPickerBase","SwitchBase","RadioGroupBase","TextareaBase","InputOtpBase","UploaderBase","Combobox"],"mappings":"u1BAqCO,MAAMA,EAAe,CAC1B,UAAAC,EACA,WAAAC,EACA,iBAAAC,EACA,UAAAC,EACA,WAAAC,EACA,aAAAC,EACA,cAAAC,EACA,WAAAC,EACA,eAAAC,EACA,aAAAC,EACA,aAAAC,EACA,aAAAC,EACA,SAAAC,CACF"}
@@ -1,2 +1,2 @@
1
- import{jsx as a}from"react/jsx-runtime";import{cn as m}from"../../shared/utils/cn.js";const t=({breadcrumb:r,className:e,...o})=>a("a",{href:r.path,className:m("desk-body-regular-m",e),...o,children:r.label});export{t as Breadcrumb};
1
+ import{jsx as r,Fragment as a}from"react/jsx-runtime";import{cn as o}from"../../shared/utils/cn.js";const m=({breadcrumb:e,className:l,isLast:t,...n})=>r(a,{children:t?r("p",{className:o("desk-body-regular-m pointer-events-none text-color-primary-disabled",l),...n,children:e.label}):r("a",{href:e.path,className:o("desk-body-regular-m",l),...n,children:e.label})});export{m as Breadcrumb};
2
2
  //# sourceMappingURL=Breadcrumb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumb.js","sources":["../../../../lib/widgets/breadcrumbs/Breadcrumb.tsx"],"sourcesContent":["import type { Breadcrumb as BreadcrumbType } from './hooks'\nimport { cn } from '$/shared/utils'\n\ntype BreadcrumbProps = React.AnchorHTMLAttributes<HTMLAnchorElement> & {\n breadcrumb: BreadcrumbType\n}\n\nexport const Breadcrumb = ({ breadcrumb, className, ...props }: BreadcrumbProps) => (\n <a href={breadcrumb.path} className={cn('desk-body-regular-m', className)} {...props}>\n {breadcrumb.label}\n </a>\n)\n"],"names":["Breadcrumb","breadcrumb","className","props","jsx","cn"],"mappings":"sFAOO,MAAMA,EAAa,CAAC,CAAE,WAAAC,EAAY,UAAAC,EAAW,GAAGC,CAAA,IACrDC,EAAC,IAAA,CAAE,KAAMH,EAAW,KAAM,UAAWI,EAAG,sBAAuBH,CAAS,EAAI,GAAGC,EAC5E,SAAAF,EAAW,KAAA,CACd"}
1
+ {"version":3,"file":"Breadcrumb.js","sources":["../../../../lib/widgets/breadcrumbs/Breadcrumb.tsx"],"sourcesContent":["import type { Breadcrumb as BreadcrumbType } from './hooks'\nimport { cn } from '$/shared/utils'\n\ntype BreadcrumbProps = React.AnchorHTMLAttributes<HTMLAnchorElement | HTMLDivElement> & {\n breadcrumb: BreadcrumbType\n isLast?: boolean\n}\n\nexport const Breadcrumb = ({ breadcrumb, className, isLast, ...props }: BreadcrumbProps) => {\n return (\n <>\n {isLast ? (\n <p className={cn('desk-body-regular-m pointer-events-none text-color-primary-disabled', className)} {...props}>\n {breadcrumb.label}\n </p>\n ) : (\n <a href={breadcrumb.path} className={cn('desk-body-regular-m', className)} {...props}>\n {breadcrumb.label}\n </a>\n )}\n </>\n )\n}\n"],"names":["Breadcrumb","breadcrumb","className","isLast","props","jsx","Fragment","cn"],"mappings":"oGAQO,MAAMA,EAAa,CAAC,CAAE,WAAAC,EAAY,UAAAC,EAAW,OAAAC,EAAQ,GAAGC,KAE3DC,EAAAC,EAAA,CACG,SAAAH,EACCE,EAAC,IAAA,CAAE,UAAWE,EAAG,sEAAuEL,CAAS,EAAI,GAAGE,EACrG,SAAAH,EAAW,KAAA,CACd,EAEAI,EAAC,IAAA,CAAE,KAAMJ,EAAW,KAAM,UAAWM,EAAG,sBAAuBL,CAAS,EAAI,GAAGE,EAC5E,SAAAH,EAAW,KAAA,CACd,EAEJ"}
@@ -1,2 +1,2 @@
1
- import{jsx as i,Fragment as g,jsxs as f}from"react/jsx-runtime";import{useState as c,useRef as k,useMemo as C}from"react";import{Breadcrumb as w}from"./Breadcrumb.js";import{defaultBreadcrumbs as b}from"./hooks/constants.js";import{useClickOutside as B}from"../../shared/hooks/useClickOutside.js";import"@hookform/resolvers";import{cn as d}from"../../shared/utils/cn.js";import"../../shared/ui/button/Button.js";import"../../shared/ui/buttonIcon/ButtonIcon.js";import"../../shared/ui/calendar/Calendar.js";import"../../shared/ui/calendar/model/utils.js";import"../../shared/ui/accordion/Accordion.js";import"react-dom";import"../../shared/ui/modal/ui/IframeModalContent.js";import"../../../node_modules/react-hot-toast/dist/index.js";import{Icon as O}from"../../shared/ui/icon/Icon.js";import"../../shared/ui/table/ui/primitives/Primitives.js";import"../../shared/ui/carousel/ui/CarouselContent.js";import"../../shared/ui/slot/Slot.js";import"../../shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../shared/ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../shared/ui/dropdownList/ui/dropdownItem/DropdownItem.js";import"../../shared/ui/formElements/uncontrolled/input/Input.js";import"../../shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../shared/ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../shared/ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../shared/ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../shared/ui/formElements/uncontrolled/select/Select.js";import"../../shared/ui/formElements/uncontrolled/slider/SliderBase.js";import"../../shared/ui/formElements/uncontrolled/switch/Switch.js";import"../../shared/ui/formElements/uncontrolled/textarea/Textarea.js";import"../../shared/ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../shared/ui/formElements/controlled/editor/ui/Editor.js";import"../../shared/ui/formElements/controlled/input/MaskInputControl.js";const h=(l,o,t,r)=>l.map((e,n)=>f("div",{className:"flex items-center gap-x-1",children:[i(w,{breadcrumb:e,className:d(t,{"pointer-events-none text-color-primary-disabled":n===r,"text-color-blue-grey-600":e.disabled})}),n!==l.length-1&&o]},e.label)),pt=({separator:l,ellipsis:o,classes:t,breadcrumbs:r=b})=>{const[e,n]=c(!1),u=k(null);B(u,()=>n(!1));const{first:N,middle:a,last:x}=C(()=>{let p=[],y=[],v=[];return o&&(p=r.slice(0,o),y=r.slice(o,r.length-o),v=r.slice(r.length-o)),{first:p,middle:y,last:v}},[r,o]),m=l??i(O,{name:"arrows/arrowRight",className:d("size-4",t==null?void 0:t.separator)});return i("div",{className:d("flex max-w-[840px] flex-wrap items-center","gap-x-2 gap-y-1 py-4 text-color-primary-default",t==null?void 0:t.root),children:o?i(g,{children:r.length>o*2+1?f(g,{children:[h(N,m,t==null?void 0:t.breadcrumb),m,a.length>0&&f(g,{children:[f("div",{className:"relative",children:[i("button",{onClick:()=>n(!0),children:"..."}),i("ul",{ref:u,className:d("invisible absolute max-h-[264px] overflow-y-auto","w-[280px] rounded-sm bg-color-white","customScrollbar-y p-1 opacity-0 shadow-sm",{"visible opacity-100":e}),children:a.map(p=>i("li",{children:i(w,{breadcrumb:p,className:d("desk-body-regular-l inline-block py-3","w-full rounded-sm bg-color-white px-2","text-color-dark hover:bg-color-primary-tr-hover",t==null?void 0:t.breadcrumb)})},p.label))})]}),m]}),h(x,m,t==null?void 0:t.breadcrumb,x.length-1)]}):h(r,m,t==null?void 0:t.breadcrumb,r.length-1)}):h(r,m,t==null?void 0:t.breadcrumb,r.length-1)})};export{pt as Breadcrumbs};
1
+ import{jsx as i,Fragment as g,jsxs as f}from"react/jsx-runtime";import{useState as k,useRef as C,useMemo as c}from"react";import{Breadcrumb as v}from"./Breadcrumb.js";import{defaultBreadcrumbs as B}from"./hooks/constants.js";import{useClickOutside as b}from"../../shared/hooks/useClickOutside.js";import"@hookform/resolvers";import{cn as d}from"../../shared/utils/cn.js";import"../../shared/ui/button/Button.js";import"../../shared/ui/buttonIcon/ButtonIcon.js";import"../../shared/ui/calendar/Calendar.js";import"../../shared/ui/calendar/model/utils.js";import"../../shared/ui/accordion/Accordion.js";import"react-dom";import"../../shared/ui/modal/ui/IframeModalContent.js";import"../../../node_modules/react-hot-toast/dist/index.js";import{Icon as O}from"../../shared/ui/icon/Icon.js";import"../../shared/ui/table/ui/primitives/Primitives.js";import"../../shared/ui/carousel/ui/CarouselContent.js";import"../../shared/ui/slot/Slot.js";import"../../shared/ui/formElements/uncontrolled/autocomplete/Autocomplete.js";import"../../shared/ui/formElements/uncontrolled/checkbox/Checkbox.js";import"../../shared/ui/dropdownList/ui/dropdownItem/DropdownItem.js";import"../../shared/ui/formElements/uncontrolled/input/Input.js";import"../../shared/ui/formElements/uncontrolled/dayPicker/DayPicker.js";import"../../shared/ui/formElements/uncontrolled/inputOtp/InputOtpBase.js";import"../../shared/ui/formElements/uncontrolled/maskInput/MaskInput.js";import"../../shared/ui/formElements/uncontrolled/radio/RadioGroup.js";import"../../shared/ui/formElements/uncontrolled/radio/ui/RadioItem.js";import"../../shared/ui/formElements/uncontrolled/select/Select.js";import"../../shared/ui/formElements/uncontrolled/slider/SliderBase.js";import"../../shared/ui/formElements/uncontrolled/switch/Switch.js";import"../../shared/ui/formElements/uncontrolled/textarea/Textarea.js";import"../../shared/ui/formElements/uncontrolled/uploader/UploaderBase.js";import"../../shared/ui/formElements/controlled/editor/ui/Editor.js";import"../../shared/ui/formElements/controlled/input/MaskInputControl.js";const h=(l,o,t,r)=>l.map((e,p)=>f("div",{className:"flex items-center gap-x-1",children:[i(v,{isLast:p===r,breadcrumb:e,className:d(t,{"text-color-blue-grey-600":e.disabled})}),p!==l.length-1&&o]},e.label)),nt=({separator:l,ellipsis:o,classes:t,breadcrumbs:r=B})=>{const[e,p]=k(!1),u=C(null);b(u,()=>p(!1));const{first:N,middle:x,last:a}=c(()=>{let n=[],y=[],w=[];return o&&(n=r.slice(0,o),y=r.slice(o,r.length-o),w=r.slice(r.length-o)),{first:n,middle:y,last:w}},[r,o]),m=l??i(O,{name:"arrows/arrowRight",className:d("size-4",t==null?void 0:t.separator)});return i("div",{className:d("flex max-w-[840px] flex-wrap items-center","gap-x-2 gap-y-1 py-4 text-color-primary-default",t==null?void 0:t.root),children:o?i(g,{children:r.length>o*2+1?f(g,{children:[h(N,m,t==null?void 0:t.breadcrumb),m,x.length>0&&f(g,{children:[f("div",{className:"relative",children:[i("button",{onClick:()=>p(!0),children:"..."}),i("ul",{ref:u,className:d("invisible absolute max-h-[264px] overflow-y-auto","w-[280px] rounded-sm bg-color-white","customScrollbar-y p-1 opacity-0 shadow-sm",{"visible opacity-100":e}),children:x.map(n=>i("li",{children:i(v,{breadcrumb:n,className:d("desk-body-regular-l inline-block py-3","w-full rounded-sm bg-color-white px-2","text-color-dark hover:bg-color-primary-tr-hover",t==null?void 0:t.breadcrumb)})},n.label))})]}),m]}),h(a,m,t==null?void 0:t.breadcrumb,a.length-1)]}):h(r,m,t==null?void 0:t.breadcrumb,r.length-1)}):h(r,m,t==null?void 0:t.breadcrumb,r.length-1)})};export{nt as Breadcrumbs};
2
2
  //# sourceMappingURL=Breadcrumbs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Breadcrumbs.js","sources":["../../../../lib/widgets/breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import { useMemo, useRef, useState } from 'react'\nimport { Breadcrumb } from './Breadcrumb'\nimport { type Breadcrumb as BreadcrumbType, defaultBreadcrumbs, type UseBreadcrumbsOptions } from './hooks'\nimport { useClickOutside } from '$/shared/hooks'\nimport { Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype BreadcrumbsClasses = {\n root?: string\n separator?: string\n breadcrumb?: string\n}\n\ntype BreadcrumbsProps = UseBreadcrumbsOptions & {\n /**\n * произвольный сепаратор, разделяющий элементы\n */\n separator?: React.ReactElement | string\n /**\n * указывает, сколько элементов отображать перед/после сужения\n */\n ellipsis?: number\n /**\n * дополнительные стили компонента\n */\n classes?: BreadcrumbsClasses\n /**\n * Массив хлебных крошек\n */\n breadcrumbs: BreadcrumbType[]\n}\n\nconst renderBreadcrumbs = (\n breadcrumbs: BreadcrumbType[],\n separator: BreadcrumbsProps['separator'],\n classes?: BreadcrumbsClasses['breadcrumb'],\n lastIndex?: number\n) => {\n return breadcrumbs.map((breadcrumb, index) => {\n const isLast = index === lastIndex\n\n return (\n <div key={breadcrumb.label} className='flex items-center gap-x-1'>\n <Breadcrumb\n breadcrumb={breadcrumb}\n className={cn(classes, {\n 'pointer-events-none text-color-primary-disabled': isLast,\n 'text-color-blue-grey-600': breadcrumb.disabled\n })}\n />\n {index !== breadcrumbs.length - 1 && separator}\n </div>\n )\n })\n}\n\nexport const Breadcrumbs = ({ separator, ellipsis, classes, breadcrumbs = defaultBreadcrumbs }: BreadcrumbsProps) => {\n const [hiddenCrumbsOpen, setHiddenCrumbsOpen] = useState<boolean>(false)\n\n const hiddenCrumbsRef = useRef<HTMLUListElement>(null)\n\n useClickOutside(hiddenCrumbsRef, () => setHiddenCrumbsOpen(false))\n\n // separated crumbs while ellipsis provided\n const { first, middle, last } = useMemo(() => {\n let first: BreadcrumbType[] = []\n let middle: BreadcrumbType[] = []\n let last: BreadcrumbType[] = []\n\n if (ellipsis) {\n first = breadcrumbs.slice(0, ellipsis)\n middle = breadcrumbs.slice(ellipsis, breadcrumbs.length - ellipsis)\n last = breadcrumbs.slice(breadcrumbs.length - ellipsis)\n }\n\n return { first, middle, last }\n }, [breadcrumbs, ellipsis])\n\n const separatedElement = separator ?? <Icon name='arrows/arrowRight' className={cn('size-4', classes?.separator)} />\n\n return (\n <div\n className={cn(\n 'flex max-w-[840px] flex-wrap items-center',\n 'gap-x-2 gap-y-1 py-4 text-color-primary-default',\n classes?.root\n )}\n >\n {ellipsis ? (\n // if ellipsis provided, render hidden breadcrumbs\n <>\n {breadcrumbs.length > ellipsis * 2 + 1 ? (\n // if we have more than ellipsis (visible crumbs) + available hidden crumbs\n // render hidden breadcrumbs\n <>\n {renderBreadcrumbs(first, separatedElement, classes?.breadcrumb)}\n {separatedElement}\n {middle.length > 0 && (\n <>\n <div className='relative'>\n <button onClick={() => setHiddenCrumbsOpen(true)}>...</button>\n <ul\n ref={hiddenCrumbsRef}\n className={cn(\n 'invisible absolute max-h-[264px] overflow-y-auto',\n 'w-[280px] rounded-sm bg-color-white',\n 'customScrollbar-y p-1 opacity-0 shadow-sm',\n {\n 'visible opacity-100': hiddenCrumbsOpen\n }\n )}\n >\n {middle.map((breadcrumb) => (\n <li key={breadcrumb.label}>\n <Breadcrumb\n breadcrumb={breadcrumb}\n className={cn(\n 'desk-body-regular-l inline-block py-3',\n 'w-full rounded-sm bg-color-white px-2',\n 'text-color-dark hover:bg-color-primary-tr-hover',\n classes?.breadcrumb\n )}\n />\n </li>\n ))}\n </ul>\n </div>\n {separatedElement}\n </>\n )}\n {renderBreadcrumbs(last, separatedElement, classes?.breadcrumb, last.length - 1)}\n </>\n ) : (\n // otherwise render all breadcrumbs\n renderBreadcrumbs(breadcrumbs, separatedElement, classes?.breadcrumb, breadcrumbs.length - 1)\n )}\n </>\n ) : (\n // if ellipsis doesn't provided render all breadcrumbs\n renderBreadcrumbs(breadcrumbs, separatedElement, classes?.breadcrumb, breadcrumbs.length - 1)\n )}\n </div>\n )\n}\n"],"names":["renderBreadcrumbs","breadcrumbs","separator","classes","lastIndex","breadcrumb","index","jsxs","jsx","Breadcrumb","cn","Breadcrumbs","ellipsis","defaultBreadcrumbs","hiddenCrumbsOpen","setHiddenCrumbsOpen","useState","hiddenCrumbsRef","useRef","useClickOutside","first","middle","last","useMemo","separatedElement","Icon","Fragment"],"mappings":"4hEAgCA,MAAMA,EAAoB,CACxBC,EACAC,EACAC,EACAC,IAEOH,EAAY,IAAI,CAACI,EAAYC,IAIhCC,EAAC,MAAA,CAA2B,UAAU,4BACpC,SAAA,CAAAC,EAACC,EAAA,CACC,WAAAJ,EACA,UAAWK,EAAGP,EAAS,CACrB,kDAPOG,IAAUF,EAQjB,2BAA4BC,EAAW,QAAA,CACxC,CAAA,CAAA,EAEFC,IAAUL,EAAY,OAAS,GAAKC,CAAA,CAAA,EAR7BG,EAAW,KASrB,CAEH,EAGUM,GAAc,CAAC,CAAE,UAAAT,EAAW,SAAAU,EAAU,QAAAT,EAAS,YAAAF,EAAcY,KAA2C,CACnH,KAAM,CAACC,EAAkBC,CAAmB,EAAIC,EAAkB,EAAK,EAEjEC,EAAkBC,EAAyB,IAAI,EAErDC,EAAgBF,EAAiB,IAAMF,EAAoB,EAAK,CAAC,EAGjE,KAAM,CAAE,MAAAK,EAAO,OAAAC,EAAQ,KAAAC,CAAA,EAASC,EAAQ,IAAM,CAC5C,IAAIH,EAA0B,CAAA,EAC1BC,EAA2B,CAAA,EAC3BC,EAAyB,CAAA,EAE7B,OAAIV,IACFQ,EAAQnB,EAAY,MAAM,EAAGW,CAAQ,EACrCS,EAASpB,EAAY,MAAMW,EAAUX,EAAY,OAASW,CAAQ,EAClEU,EAAOrB,EAAY,MAAMA,EAAY,OAASW,CAAQ,GAGjD,CAAE,MAAAQ,EAAO,OAAAC,EAAQ,KAAAC,CAAAA,CAC1B,EAAG,CAACrB,EAAaW,CAAQ,CAAC,EAEpBY,EAAmBtB,GAAaM,EAACiB,EAAA,CAAK,KAAK,oBAAoB,UAAWf,EAAG,SAAUP,GAAA,YAAAA,EAAS,SAAS,CAAA,CAAG,EAElH,OACEK,EAAC,MAAA,CACC,UAAWE,EACT,4CACA,kDACAP,GAAA,YAAAA,EAAS,IAAA,EAGV,SAAAS,EAECJ,EAAAkB,EAAA,CACG,SAAAzB,EAAY,OAASW,EAAW,EAAI,EAGnCL,EAAAmB,EAAA,CACG,SAAA,CAAA1B,EAAkBoB,EAAOI,EAAkBrB,GAAA,YAAAA,EAAS,UAAU,EAC9DqB,EACAH,EAAO,OAAS,GACfd,EAAAmB,EAAA,CACE,SAAA,CAAAnB,EAAC,MAAA,CAAI,UAAU,WACb,SAAA,CAAAC,EAAC,UAAO,QAAS,IAAMO,EAAoB,EAAI,EAAG,SAAA,MAAG,EACrDP,EAAC,KAAA,CACC,IAAKS,EACL,UAAWP,EACT,mDACA,sCACA,4CACA,CACE,sBAAuBI,CAAA,CACzB,EAGD,SAAAO,EAAO,IAAKhB,KACV,KAAA,CACC,SAAAG,EAACC,EAAA,CACC,WAAAJ,EACA,UAAWK,EACT,wCACA,wCACA,kDACAP,GAAA,YAAAA,EAAS,UAAA,CACX,CAAA,CACF,EATOE,EAAW,KAUpB,CACD,CAAA,CAAA,CACH,EACF,EACCmB,CAAA,EACH,EAEDxB,EAAkBsB,EAAME,EAAkBrB,GAAA,YAAAA,EAAS,WAAYmB,EAAK,OAAS,CAAC,CAAA,CAAA,CACjF,EAGAtB,EAAkBC,EAAauB,EAAkBrB,GAAA,YAAAA,EAAS,WAAYF,EAAY,OAAS,CAAC,CAAA,CAEhG,EAGAD,EAAkBC,EAAauB,EAAkBrB,GAAA,YAAAA,EAAS,WAAYF,EAAY,OAAS,CAAC,CAAA,CAAA,CAIpG"}
1
+ {"version":3,"file":"Breadcrumbs.js","sources":["../../../../lib/widgets/breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import { useMemo, useRef, useState } from 'react'\nimport { Breadcrumb } from './Breadcrumb'\nimport { type Breadcrumb as BreadcrumbType, defaultBreadcrumbs, type UseBreadcrumbsOptions } from './hooks'\nimport { useClickOutside } from '$/shared/hooks'\nimport { Icon } from '$/shared/ui'\nimport { cn } from '$/shared/utils'\n\ntype BreadcrumbsClasses = {\n root?: string\n separator?: string\n breadcrumb?: string\n}\n\ntype BreadcrumbsProps = UseBreadcrumbsOptions & {\n /**\n * произвольный сепаратор, разделяющий элементы\n */\n separator?: React.ReactElement | string\n /**\n * указывает, сколько элементов отображать перед/после сужения\n */\n ellipsis?: number\n /**\n * дополнительные стили компонента\n */\n classes?: BreadcrumbsClasses\n /**\n * Массив хлебных крошек\n */\n breadcrumbs: BreadcrumbType[]\n}\n\nconst renderBreadcrumbs = (\n breadcrumbs: BreadcrumbType[],\n separator: BreadcrumbsProps['separator'],\n classes?: BreadcrumbsClasses['breadcrumb'],\n lastIndex?: number\n) => {\n return breadcrumbs.map((breadcrumb, index) => {\n const isLast = index === lastIndex\n\n return (\n <div key={breadcrumb.label} className='flex items-center gap-x-1'>\n <Breadcrumb\n isLast={isLast}\n breadcrumb={breadcrumb}\n className={cn(classes, {\n 'text-color-blue-grey-600': breadcrumb.disabled\n })}\n />\n {index !== breadcrumbs.length - 1 && separator}\n </div>\n )\n })\n}\n\nexport const Breadcrumbs = ({ separator, ellipsis, classes, breadcrumbs = defaultBreadcrumbs }: BreadcrumbsProps) => {\n const [hiddenCrumbsOpen, setHiddenCrumbsOpen] = useState<boolean>(false)\n\n const hiddenCrumbsRef = useRef<HTMLUListElement>(null)\n\n useClickOutside(hiddenCrumbsRef, () => setHiddenCrumbsOpen(false))\n\n // separated crumbs while ellipsis provided\n const { first, middle, last } = useMemo(() => {\n let first: BreadcrumbType[] = []\n let middle: BreadcrumbType[] = []\n let last: BreadcrumbType[] = []\n\n if (ellipsis) {\n first = breadcrumbs.slice(0, ellipsis)\n middle = breadcrumbs.slice(ellipsis, breadcrumbs.length - ellipsis)\n last = breadcrumbs.slice(breadcrumbs.length - ellipsis)\n }\n\n return { first, middle, last }\n }, [breadcrumbs, ellipsis])\n\n const separatedElement = separator ?? <Icon name='arrows/arrowRight' className={cn('size-4', classes?.separator)} />\n\n return (\n <div\n className={cn(\n 'flex max-w-[840px] flex-wrap items-center',\n 'gap-x-2 gap-y-1 py-4 text-color-primary-default',\n classes?.root\n )}\n >\n {ellipsis ? (\n // if ellipsis provided, render hidden breadcrumbs\n <>\n {breadcrumbs.length > ellipsis * 2 + 1 ? (\n // if we have more than ellipsis (visible crumbs) + available hidden crumbs\n // render hidden breadcrumbs\n <>\n {renderBreadcrumbs(first, separatedElement, classes?.breadcrumb)}\n {separatedElement}\n {middle.length > 0 && (\n <>\n <div className='relative'>\n <button onClick={() => setHiddenCrumbsOpen(true)}>...</button>\n <ul\n ref={hiddenCrumbsRef}\n className={cn(\n 'invisible absolute max-h-[264px] overflow-y-auto',\n 'w-[280px] rounded-sm bg-color-white',\n 'customScrollbar-y p-1 opacity-0 shadow-sm',\n {\n 'visible opacity-100': hiddenCrumbsOpen\n }\n )}\n >\n {middle.map((breadcrumb) => (\n <li key={breadcrumb.label}>\n <Breadcrumb\n breadcrumb={breadcrumb}\n className={cn(\n 'desk-body-regular-l inline-block py-3',\n 'w-full rounded-sm bg-color-white px-2',\n 'text-color-dark hover:bg-color-primary-tr-hover',\n classes?.breadcrumb\n )}\n />\n </li>\n ))}\n </ul>\n </div>\n {separatedElement}\n </>\n )}\n {renderBreadcrumbs(last, separatedElement, classes?.breadcrumb, last.length - 1)}\n </>\n ) : (\n // otherwise render all breadcrumbs\n renderBreadcrumbs(breadcrumbs, separatedElement, classes?.breadcrumb, breadcrumbs.length - 1)\n )}\n </>\n ) : (\n // if ellipsis doesn't provided render all breadcrumbs\n renderBreadcrumbs(breadcrumbs, separatedElement, classes?.breadcrumb, breadcrumbs.length - 1)\n )}\n </div>\n )\n}\n"],"names":["renderBreadcrumbs","breadcrumbs","separator","classes","lastIndex","breadcrumb","index","jsxs","jsx","Breadcrumb","cn","Breadcrumbs","ellipsis","defaultBreadcrumbs","hiddenCrumbsOpen","setHiddenCrumbsOpen","useState","hiddenCrumbsRef","useRef","useClickOutside","first","middle","last","useMemo","separatedElement","Icon","Fragment"],"mappings":"4hEAgCA,MAAMA,EAAoB,CACxBC,EACAC,EACAC,EACAC,IAEOH,EAAY,IAAI,CAACI,EAAYC,IAIhCC,EAAC,MAAA,CAA2B,UAAU,4BACpC,SAAA,CAAAC,EAACC,EAAA,CACC,OALSH,IAAUF,EAMnB,WAAAC,EACA,UAAWK,EAAGP,EAAS,CACrB,2BAA4BE,EAAW,QAAA,CACxC,CAAA,CAAA,EAEFC,IAAUL,EAAY,OAAS,GAAKC,CAAA,CAAA,EAR7BG,EAAW,KASrB,CAEH,EAGUM,GAAc,CAAC,CAAE,UAAAT,EAAW,SAAAU,EAAU,QAAAT,EAAS,YAAAF,EAAcY,KAA2C,CACnH,KAAM,CAACC,EAAkBC,CAAmB,EAAIC,EAAkB,EAAK,EAEjEC,EAAkBC,EAAyB,IAAI,EAErDC,EAAgBF,EAAiB,IAAMF,EAAoB,EAAK,CAAC,EAGjE,KAAM,CAAE,MAAAK,EAAO,OAAAC,EAAQ,KAAAC,CAAA,EAASC,EAAQ,IAAM,CAC5C,IAAIH,EAA0B,CAAA,EAC1BC,EAA2B,CAAA,EAC3BC,EAAyB,CAAA,EAE7B,OAAIV,IACFQ,EAAQnB,EAAY,MAAM,EAAGW,CAAQ,EACrCS,EAASpB,EAAY,MAAMW,EAAUX,EAAY,OAASW,CAAQ,EAClEU,EAAOrB,EAAY,MAAMA,EAAY,OAASW,CAAQ,GAGjD,CAAE,MAAAQ,EAAO,OAAAC,EAAQ,KAAAC,CAAAA,CAC1B,EAAG,CAACrB,EAAaW,CAAQ,CAAC,EAEpBY,EAAmBtB,GAAaM,EAACiB,EAAA,CAAK,KAAK,oBAAoB,UAAWf,EAAG,SAAUP,GAAA,YAAAA,EAAS,SAAS,CAAA,CAAG,EAElH,OACEK,EAAC,MAAA,CACC,UAAWE,EACT,4CACA,kDACAP,GAAA,YAAAA,EAAS,IAAA,EAGV,SAAAS,EAECJ,EAAAkB,EAAA,CACG,SAAAzB,EAAY,OAASW,EAAW,EAAI,EAGnCL,EAAAmB,EAAA,CACG,SAAA,CAAA1B,EAAkBoB,EAAOI,EAAkBrB,GAAA,YAAAA,EAAS,UAAU,EAC9DqB,EACAH,EAAO,OAAS,GACfd,EAAAmB,EAAA,CACE,SAAA,CAAAnB,EAAC,MAAA,CAAI,UAAU,WACb,SAAA,CAAAC,EAAC,UAAO,QAAS,IAAMO,EAAoB,EAAI,EAAG,SAAA,MAAG,EACrDP,EAAC,KAAA,CACC,IAAKS,EACL,UAAWP,EACT,mDACA,sCACA,4CACA,CACE,sBAAuBI,CAAA,CACzB,EAGD,SAAAO,EAAO,IAAKhB,KACV,KAAA,CACC,SAAAG,EAACC,EAAA,CACC,WAAAJ,EACA,UAAWK,EACT,wCACA,wCACA,kDACAP,GAAA,YAAAA,EAAS,UAAA,CACX,CAAA,CACF,EATOE,EAAW,KAUpB,CACD,CAAA,CAAA,CACH,EACF,EACCmB,CAAA,EACH,EAEDxB,EAAkBsB,EAAME,EAAkBrB,GAAA,YAAAA,EAAS,WAAYmB,EAAK,OAAS,CAAC,CAAA,CAAA,CACjF,EAGAtB,EAAkBC,EAAauB,EAAkBrB,GAAA,YAAAA,EAAS,WAAYF,EAAY,OAAS,CAAC,CAAA,CAEhG,EAGAD,EAAkBC,EAAauB,EAAkBrB,GAAA,YAAAA,EAAS,WAAYF,EAAY,OAAS,CAAC,CAAA,CAAA,CAIpG"}