@ryuzaki13/react-foundation-ui 1.1.9 → 1.2.1

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 (250) hide show
  1. package/dist/advanced-search/index.js +1 -1
  2. package/dist/check-box/CheckBox.d.ts +3 -1
  3. package/dist/check-box/CheckBox.d.ts.map +1 -1
  4. package/dist/check-box/index.js +1 -1
  5. package/dist/chunks/{CheckBox.module-D0Ze9qh3.js → CheckBox.module-C5SjPwSj.js} +2 -1
  6. package/dist/chunks/{CheckBox.module-D0Ze9qh3.js.map → CheckBox.module-C5SjPwSj.js.map} +1 -1
  7. package/dist/chunks/{TextEditorLexicalClient-DeBA6fQX.js → TextEditorLexicalClient-D2P2VLL0.js} +2 -2
  8. package/dist/chunks/{TextEditorLexicalClient-DeBA6fQX.js.map → TextEditorLexicalClient-D2P2VLL0.js.map} +1 -1
  9. package/dist/chunks/check-box-Dd3YFuxd.js +51 -0
  10. package/dist/chunks/check-box-Dd3YFuxd.js.map +1 -0
  11. package/dist/chunks/{multi-select-BCpRct-k.js → multi-select-Bg7Psslp.js} +56 -81
  12. package/dist/chunks/multi-select-Bg7Psslp.js.map +1 -0
  13. package/dist/chunks/{picker-DTZk09Ag.js → picker-BAQ9NeHe.js} +117 -88
  14. package/dist/chunks/picker-BAQ9NeHe.js.map +1 -0
  15. package/dist/chunks/{select-Bd48kVI3.js → select-DKbSVCp4.js} +16 -16
  16. package/dist/chunks/{select-Bd48kVI3.js.map → select-DKbSVCp4.js.map} +1 -1
  17. package/dist/layout-picker/index.js +11 -11
  18. package/dist/layout-picker/index.js.map +1 -1
  19. package/dist/multi-select/index.js +1 -1
  20. package/dist/multi-select/ui/defaultRenderers.d.ts.map +1 -1
  21. package/dist/picker/PickerPopup.d.ts +4 -1
  22. package/dist/picker/PickerPopup.d.ts.map +1 -1
  23. package/dist/picker/PickerSelectionToolbar.d.ts +13 -0
  24. package/dist/picker/PickerSelectionToolbar.d.ts.map +1 -0
  25. package/dist/picker/index.d.ts +1 -0
  26. package/dist/picker/index.d.ts.map +1 -1
  27. package/dist/picker/index.js +2 -2
  28. package/dist/picker/model/usePickerFloatingListbox.d.ts +3 -0
  29. package/dist/picker/model/usePickerFloatingListbox.d.ts.map +1 -1
  30. package/dist/preset-select/index.js +1 -1
  31. package/dist/radio-button/index.js +1 -1
  32. package/dist/select/index.js +1 -1
  33. package/dist/slider/index.js +1 -1
  34. package/dist/state-select/index.js +1 -1
  35. package/dist/styles.css +1 -1
  36. package/dist/text-editor/index.js +1 -1
  37. package/dist/tree-select/ODataTreeMultiSelect.d.ts +4 -2
  38. package/dist/tree-select/ODataTreeMultiSelect.d.ts.map +1 -1
  39. package/dist/tree-select/TreeMultiSelect.d.ts +4 -2
  40. package/dist/tree-select/TreeMultiSelect.d.ts.map +1 -1
  41. package/dist/tree-select/TreeNodeContent.d.ts +4 -2
  42. package/dist/tree-select/TreeNodeContent.d.ts.map +1 -1
  43. package/dist/tree-select/TreePickerBase.d.ts +8 -2
  44. package/dist/tree-select/TreePickerBase.d.ts.map +1 -1
  45. package/dist/tree-select/index.js +341 -235
  46. package/dist/tree-select/index.js.map +1 -1
  47. package/dist/tree-select/model/resolveBalancedTreeColumnsLayout.d.ts +22 -0
  48. package/dist/tree-select/model/resolveBalancedTreeColumnsLayout.d.ts.map +1 -0
  49. package/dist/tree-select/model/treeUtils.d.ts +6 -0
  50. package/dist/tree-select/model/treeUtils.d.ts.map +1 -1
  51. package/dist/tree-select/types.d.ts +2 -0
  52. package/dist/tree-select/types.d.ts.map +1 -1
  53. package/package.json +2 -2
  54. package/storybook-static/assets/{Badge-CYUtks4i.js → Badge-DGkAgQtD.js} +1 -1
  55. package/storybook-static/assets/{Badge.stories-CiwiuZND.js → Badge.stories-BNnfMijp.js} +1 -1
  56. package/storybook-static/assets/{Button-DxBLrgCb.js → Button-2V7cFs7U.js} +1 -1
  57. package/storybook-static/assets/{Button-GcMG_GZZ.js → Button-vNsY1Xgh.js} +1 -1
  58. package/storybook-static/assets/{Button.stories-Cd0Os334.js → Button.stories-qrLBulWZ.js} +1 -1
  59. package/storybook-static/assets/{CheckBox-B1xm2kwz.css → CheckBox-CT1_Mjc0.css} +1 -1
  60. package/storybook-static/assets/{CheckBox-DFUUkGhT.js → CheckBox-DeEGRsNS.js} +1 -1
  61. package/storybook-static/assets/CheckBox-Dnxk4w_M.js +2 -0
  62. package/storybook-static/assets/CheckBox.module-ezWPE2pa.js +1 -0
  63. package/storybook-static/assets/{CheckBox.stories-CJ_3y5UH.js → CheckBox.stories-CuPBzuQf.js} +1 -1
  64. package/storybook-static/assets/{Color-KMSTOMOX-D_F5kPOR.js → Color-KMSTOMOX-3kWYdPbk.js} +1 -1
  65. package/storybook-static/assets/{ContextMenu-Bwi_RCid.js → ContextMenu-C1EU4pnG.js} +1 -1
  66. package/storybook-static/assets/{ContextMenu.stories-CD3V_TkA.js → ContextMenu.stories-BWOdu8nd.js} +1 -1
  67. package/storybook-static/assets/{DateInput-D838WG9k.js → DateInput-D1rE9ZF6.js} +1 -1
  68. package/storybook-static/assets/{DateInput-BLOXukhB.js → DateInput-Qi0iElov.js} +1 -1
  69. package/storybook-static/assets/{DateInput.stories-B5IcEl_E.js → DateInput.stories-DfNzJVzP.js} +1 -1
  70. package/storybook-static/assets/{DateRangePresetSelect-nV0sOrrq.js → DateRangePresetSelect-B5FJLqSK.js} +1 -1
  71. package/storybook-static/assets/{DateRangePresetSelect-D-5OmKVI.js → DateRangePresetSelect-DASkcMx3.js} +1 -1
  72. package/storybook-static/assets/{DateRangePresetSelect.stories-B0OEeGyM.js → DateRangePresetSelect.stories-3ZcfGTpo.js} +1 -1
  73. package/storybook-static/assets/{Detail-BoRol63k.js → Detail-B02ATDwL.js} +1 -1
  74. package/storybook-static/assets/{Detail.stories-Bvoc4JyH.js → Detail.stories-ehMtdhKV.js} +1 -1
  75. package/storybook-static/assets/{Dialog-6f4X_UF_.js → Dialog-CB0KyNOp.js} +1 -1
  76. package/storybook-static/assets/{Dialog.stories-DupxCJ26.js → Dialog.stories-CO5-c6KC.js} +1 -1
  77. package/storybook-static/assets/{Disclosure-mjTMcSOm.js → Disclosure-CWvegL_8.js} +1 -1
  78. package/storybook-static/assets/{Disclosure.stories-BXY5v1i7.js → Disclosure.stories-_0z-uGCF.js} +1 -1
  79. package/storybook-static/assets/{DocsRenderer-JROSPFPF-B5gLF2_w.js → DocsRenderer-JROSPFPF-e6fFOpcs.js} +2 -2
  80. package/storybook-static/assets/{DropZone-BWidhx3w.js → DropZone-BQryB_S-.js} +1 -1
  81. package/storybook-static/assets/{DropZone.stories-DdzxEO58.js → DropZone.stories-viPFVTfL.js} +1 -1
  82. package/storybook-static/assets/{DropdownMenu-CTP2q7WN.js → DropdownMenu-CJiWiCWO.js} +1 -1
  83. package/storybook-static/assets/{ExpandableActionPanel.stories-zrVipsOg.js → ExpandableActionPanel.stories-DwL1eUl0.js} +1 -1
  84. package/storybook-static/assets/{Flex-BOdbeJ0I.js → Flex-HhZPENBj.js} +1 -1
  85. package/storybook-static/assets/{Flex-DZrPfPl7.js → Flex-c2FgZKph.js} +1 -1
  86. package/storybook-static/assets/{Flex.stories-BXa9Ld3i.js → Flex.stories-BdEfqTKQ.js} +1 -1
  87. package/storybook-static/assets/{Grid-BHcgytfy.js → Grid-CMUBLPOI.js} +1 -1
  88. package/storybook-static/assets/{Grid-JvQFWmt_.js → Grid-CXYJrcNO.js} +1 -1
  89. package/storybook-static/assets/{Grid.stories-B5poAGUr.js → Grid.stories-CSo_R9bk.js} +1 -1
  90. package/storybook-static/assets/{ImageCropper.stories-DddyTDWa.js → ImageCropper.stories-DPUCdwDr.js} +1 -1
  91. package/storybook-static/assets/{ImageRenderer-VdBmXv1k.js → ImageRenderer-DIEFIwlO.js} +1 -1
  92. package/storybook-static/assets/{ImageRenderer.stories-B5W5SEMP.js → ImageRenderer.stories-BAzbbd54.js} +1 -1
  93. package/storybook-static/assets/{ImageView.stories-Bxdytr0W.js → ImageView.stories-d6p9XR7R.js} +1 -1
  94. package/storybook-static/assets/{ImageViewer.stories-BXJN4esR.js → ImageViewer.stories-DqBkvrje.js} +2 -2
  95. package/storybook-static/assets/{ImageViewerRuntime-DLzkYOMn.js → ImageViewerRuntime-DVM6ctfF.js} +1 -1
  96. package/storybook-static/assets/{Input-D6FlpB4Y.js → Input-KjqYLUEq.js} +1 -1
  97. package/storybook-static/assets/{Input-DoKDcdGf.js → Input-v-SWe_uB.js} +1 -1
  98. package/storybook-static/assets/{Input.stories-tR41eQh7.js → Input.stories-0dcZXgca.js} +1 -1
  99. package/storybook-static/assets/{InputDateTime-BpvZYBm8.js → InputDateTime-BMM480ZM.js} +1 -1
  100. package/storybook-static/assets/{InputDateTime.stories-BOVClwU1.js → InputDateTime.stories-B8BnTwZN.js} +1 -1
  101. package/storybook-static/assets/{InputFile-BGHb93zX.js → InputFile-vetf3pm3.js} +1 -1
  102. package/storybook-static/assets/{InputFile.stories-CmhCmMX6.js → InputFile.stories-DCg1YCRD.js} +1 -1
  103. package/storybook-static/assets/{InputFiles-CLnOm0x9.js → InputFiles-B3lJfRWZ.js} +1 -1
  104. package/storybook-static/assets/{InputFiles-Bsatbrje.js → InputFiles-DsMZLICv.js} +1 -1
  105. package/storybook-static/assets/{InputFiles.stories-BOH1-zD8.js → InputFiles.stories-DwLeAv35.js} +1 -1
  106. package/storybook-static/assets/{InputImage-CZAwib3W.js → InputImage-DMMraEzR.js} +1 -1
  107. package/storybook-static/assets/{InputImage.stories-BobdHmpf.js → InputImage.stories-CMOZu1f6.js} +1 -1
  108. package/storybook-static/assets/{LayoutPicker-BNQIVp3u.js → LayoutPicker-CoTbJOK9.js} +1 -1
  109. package/storybook-static/assets/{LayoutPicker.stories-Du0HfXjJ.js → LayoutPicker.stories-BXk3mwYX.js} +1 -1
  110. package/storybook-static/assets/{Listbox-Cup327ne.js → Listbox-BQHunK7L.js} +1 -1
  111. package/storybook-static/assets/{Listbox.stories-BlrBt5zM.js → Listbox.stories-DxGIgwKd.js} +1 -1
  112. package/storybook-static/assets/{Modal-d1loZR-M.js → Modal-wvQf3E-t.js} +1 -1
  113. package/storybook-static/assets/{Modal.stories-ClQnn-f_.js → Modal.stories-CV9fGbCP.js} +1 -1
  114. package/storybook-static/assets/{MultiSelect-CUQV67Ev.css → MultiSelect-BoIwmje6.css} +1 -1
  115. package/storybook-static/assets/{MultiSelect-DydDWE0p.js → MultiSelect-BwIbw9ss.js} +1 -1
  116. package/storybook-static/assets/MultiSelect-DMbWfmcw.js +2 -0
  117. package/storybook-static/assets/{MultiSelect.stories-iBixjG7e.js → MultiSelect.stories-CKbPYanW.js} +1 -1
  118. package/storybook-static/assets/{NotificationsHost-C86XqiWb.js → NotificationsHost-v6O42GH9.js} +1 -1
  119. package/storybook-static/assets/{NotificationsHost.stories-B1zhHRl_.js → NotificationsHost.stories-DWtIwIMT.js} +1 -1
  120. package/storybook-static/assets/{ODataMultiSelect-wVgBQ88Z.js → ODataMultiSelect-B7VmCCyD.js} +1 -1
  121. package/storybook-static/assets/{ODataMultiSelect.stories-Cv2ibcVz.js → ODataMultiSelect.stories-B_GztBj9.js} +1 -1
  122. package/storybook-static/assets/{ODataSelect-BMymfHVd.js → ODataSelect-BCq3J8js.js} +1 -1
  123. package/storybook-static/assets/{ODataSelect-Rq48Ismc.js → ODataSelect-CHD3MCHd.js} +1 -1
  124. package/storybook-static/assets/{ODataSelect.stories-DFID1Uev.js → ODataSelect.stories-C3G6df2Y.js} +1 -1
  125. package/storybook-static/assets/{ODataTreeMultiSelect-y1_5XOhF.js → ODataTreeMultiSelect-CFEzZtem.js} +1 -1
  126. package/storybook-static/assets/ODataTreeMultiSelect.stories-BJpkyABJ.js +28 -0
  127. package/storybook-static/assets/{ODataTreeSelect-Dxo-54Zi.js → ODataTreeSelect-Dmk59MWR.js} +1 -1
  128. package/storybook-static/assets/{ODataTreeSelect.stories-B3SQ3ubn.js → ODataTreeSelect.stories-KV2ngm1a.js} +1 -1
  129. package/storybook-static/assets/{PeriodSelect-B2brJahg.js → PeriodSelect-xv0hygbe.js} +1 -1
  130. package/storybook-static/assets/{PeriodSelect.stories-Je8sNgoc.js → PeriodSelect.stories-D9VNWc-J.js} +1 -1
  131. package/storybook-static/assets/{Popover-Dqyna8Ub.js → Popover-DI7zaH4O.js} +1 -1
  132. package/storybook-static/assets/{Popover.stories-DHGRJd3v.js → Popover.stories-CA57v2N3.js} +1 -1
  133. package/storybook-static/assets/{PresetRangeDateInput-Bq32kP8I.js → PresetRangeDateInput-3AIccdEE.js} +1 -1
  134. package/storybook-static/assets/{PresetRangeDateInput.stories-C34e4bWa.js → PresetRangeDateInput.stories-7pPiYINM.js} +1 -1
  135. package/storybook-static/assets/{RadioButton-D6gcuP42.js → RadioButton-BGfGiK2D.js} +1 -1
  136. package/storybook-static/assets/{RadioButton.stories-CcupC0LJ.js → RadioButton.stories-BOeSQ7Qy.js} +1 -1
  137. package/storybook-static/assets/{RadioGroup-BfsMzoOg.js → RadioGroup-BXdWvE2x.js} +1 -1
  138. package/storybook-static/assets/{RadioGroup-B1nKl71P.js → RadioGroup-BteZ8Zfh.js} +1 -1
  139. package/storybook-static/assets/{RadioGroup.stories-WojhAYJm.js → RadioGroup.stories-DdCAD6fi.js} +1 -1
  140. package/storybook-static/assets/{Select-_QFx3i7X.js → Select-BA_oiGy1.js} +1 -1
  141. package/storybook-static/assets/{Select-BxZr4NfI.js → Select-S1Kq352p.js} +1 -1
  142. package/storybook-static/assets/{Select.stories-2_XweKMH.js → Select.stories-0y2Tbi0E.js} +1 -1
  143. package/storybook-static/assets/{SelectOptionContent-YY3Lf4SM.js → SelectOptionContent-DNO6pn8i.js} +1 -1
  144. package/storybook-static/assets/{SerializableSelect-BxIcA2AU.js → SerializableSelect-DLLMZfeg.js} +1 -1
  145. package/storybook-static/assets/{SerializableSelect-CDQfz0rk.js → SerializableSelect-d1Emzd9y.js} +1 -1
  146. package/storybook-static/assets/{SerializableSelect.stories-D23YkoRX.js → SerializableSelect.stories-DlrUNt98.js} +1 -1
  147. package/storybook-static/assets/{SingleDateTimeInput-Ds1pL3ge.js → SingleDateTimeInput-PZjf5coN.js} +1 -1
  148. package/storybook-static/assets/{SingleDateTimeInput.stories-DaHEQhiz.js → SingleDateTimeInput.stories-D-LF20Xf.js} +1 -1
  149. package/storybook-static/assets/{Slider-D4sBhVAB.js → Slider-Cnt-h4QU.js} +1 -1
  150. package/storybook-static/assets/{Slider.stories-BsM03Rby.js → Slider.stories-CspORXQq.js} +1 -1
  151. package/storybook-static/assets/{SliderInput-cP0GSpO-.js → SliderInput-DKEzvdee.js} +1 -1
  152. package/storybook-static/assets/{SliderInput.stories-BGk9ZIYB.js → SliderInput.stories-Ds7ENz3W.js} +1 -1
  153. package/storybook-static/assets/{Sortable-CW9mxBpj.js → Sortable-Boktuyds.js} +1 -1
  154. package/storybook-static/assets/{Sortable.stories-CkFOw5CW.js → Sortable.stories-DVP9I-8-.js} +1 -1
  155. package/storybook-static/assets/{Splitter-BFbFbn0X.js → Splitter-DjjitTJC.js} +1 -1
  156. package/storybook-static/assets/{Splitter.stories-Dj4bWJtu.js → Splitter.stories-TONEtB2o.js} +1 -1
  157. package/storybook-static/assets/{StateSelect-CHvxD1oY.js → StateSelect-CKS5OKFD.js} +1 -1
  158. package/storybook-static/assets/{StateSelect.stories-DiAdGF8Q.js → StateSelect.stories-1PpI7sB7.js} +1 -1
  159. package/storybook-static/assets/{Switch-DzE9B2Ue.js → Switch-DJpASzdE.js} +1 -1
  160. package/storybook-static/assets/{Switch.stories-DmRSgOsO.js → Switch.stories-DFrplfI2.js} +1 -1
  161. package/storybook-static/assets/{Table-DgbZNzAp.js → Table-BhHNM7kb.js} +1 -1
  162. package/storybook-static/assets/{Table.stories-DqYHNHnR.js → Table.stories-BifwgPO8.js} +1 -1
  163. package/storybook-static/assets/{Tabs-DSUhNbam.js → Tabs-p9UXYlyD.js} +1 -1
  164. package/storybook-static/assets/{Tabs.stories-DKsEFwhg.js → Tabs.stories-Fiib2sS7.js} +1 -1
  165. package/storybook-static/assets/{TagInput.stories-B8x2doJL.js → TagInput.stories-Gg038VKV.js} +1 -1
  166. package/storybook-static/assets/{Textarea-ZqM5o8fk.js → Textarea-SlgV7esV.js} +1 -1
  167. package/storybook-static/assets/{Textarea.stories-B0IBcsuI.js → Textarea.stories-DBFORAfY.js} +1 -1
  168. package/storybook-static/assets/{TimePanel-DFVpYrKi.js → TimePanel-C0P98Tt-.js} +1 -1
  169. package/storybook-static/assets/{TimePanel.stories-Dah8MdEV.js → TimePanel.stories-Dp993HaV.js} +1 -1
  170. package/storybook-static/assets/{Toggle-CE93J6yJ.js → Toggle-CWy__Mll.js} +1 -1
  171. package/storybook-static/assets/{Toggle.stories-DQSLZ16I.js → Toggle.stories-BvLgd3ea.js} +1 -1
  172. package/storybook-static/assets/TreeMultiSelect-CDFFjZnT.js +1 -0
  173. package/storybook-static/assets/{TreeMultiSelect-DtUozmC9.js → TreeMultiSelect-CrDJlnbX.js} +1 -1
  174. package/storybook-static/assets/TreeMultiSelect.stories-C3zkS-ak.js +31 -0
  175. package/storybook-static/assets/TreePickerBase-B35lReuv.css +1 -0
  176. package/storybook-static/assets/TreePickerBase-Bn8pSo-u.js +22 -0
  177. package/storybook-static/assets/{TreeSelect-C1dHJDVC.js → TreeSelect-BrFxwiBP.js} +1 -1
  178. package/storybook-static/assets/TreeSelect-CuaoMlYe.js +1 -0
  179. package/storybook-static/assets/{TreeSelect.stories-C_fffAaM.js → TreeSelect.stories-rzd0vNoK.js} +1 -1
  180. package/storybook-static/assets/{TreeTable-mGpVE4fE.js → TreeTable-uvfUlKoJ.js} +1 -1
  181. package/storybook-static/assets/{TreeTable.stories-on_ck1LO.js → TreeTable.stories-FUOaBB9J.js} +1 -1
  182. package/storybook-static/assets/{WithTooltip-7X4HQR7L-BP3dvWMO.js → WithTooltip-7X4HQR7L-LW5ygQJA.js} +1 -1
  183. package/storybook-static/assets/base-table-DPs5qte-.js +18 -0
  184. package/storybook-static/assets/{blocks-CdNjp0UR.js → blocks-C6uFFMmb.js} +6 -6
  185. package/storybook-static/assets/{button-mxhQ6kpI.js → button-DyEbX-UX.js} +1 -1
  186. package/storybook-static/assets/{check-box-CuugSv5K.js → check-box-ByXAYB_w.js} +1 -1
  187. package/storybook-static/assets/{chunk-3LY4VQVK-CNZt5fIP.js → chunk-3LY4VQVK-D0GJRVS7.js} +1 -1
  188. package/storybook-static/assets/{chunk-LITCR56V--UakKRHa.js → chunk-LITCR56V-CElM9plZ.js} +1 -1
  189. package/storybook-static/assets/{contextMenu-DRYHg4YV.js → contextMenu-BQKOQzU1.js} +1 -1
  190. package/storybook-static/assets/{error-s5vKL37a.js → error-SC0Oqs6M.js} +1 -1
  191. package/storybook-static/assets/{flex-4NGrP0a9.js → flex-BOqV4dzk.js} +1 -1
  192. package/storybook-static/assets/floating-ui.react-CiEPwtuP.js +1 -0
  193. package/storybook-static/assets/formatter-L2YTDE3Q-DfQ24eKP.js +1 -0
  194. package/storybook-static/assets/{formatters-D4nD5Nic.js → formatters-C29y1vJ_.js} +1 -1
  195. package/storybook-static/assets/grid-DNJaN2X3.js +1 -0
  196. package/storybook-static/assets/hooks-4Gvtb540.js +5 -0
  197. package/storybook-static/assets/{iframe-BxBCFrOJ.js → iframe-Cqdlb8-A.js} +3 -3
  198. package/storybook-static/assets/{input-CjJ-AgIT.js → input-BcaISJRy.js} +1 -1
  199. package/storybook-static/assets/{lucide-react-BmnaUuit.js → lucide-react-BdqrDz6_.js} +1 -1
  200. package/storybook-static/assets/{mdx-react-shim-BEzdmfRR.js → mdx-react-shim-Rn_bm6Wj.js} +1 -1
  201. package/storybook-static/assets/{media-NSeJNB4V.js → media-dmdQkM5d.js} +1 -1
  202. package/storybook-static/assets/{misc-_2j1xxm-.js → misc-C1Uf9TI0.js} +1 -1
  203. package/storybook-static/assets/{notifications-Bb4NwpnZ.js → notifications-Br3lffDl.js} +1 -1
  204. package/storybook-static/assets/{odata-DkCpE6Ui.js → odata-BT-Vuah1.js} +1 -1
  205. package/storybook-static/assets/odata-service-QOs47Qvv.js +1 -0
  206. package/storybook-static/assets/{odataStoryFixtures-h0MkHLcZ.js → odataStoryFixtures-CEQgZ8Ju.js} +1 -1
  207. package/storybook-static/assets/{picker-BmTTr59E.css → picker-DzBkX15M.css} +1 -1
  208. package/storybook-static/assets/picker-eODRzsH5.js +2 -0
  209. package/storybook-static/assets/{popover-DBec4vEA.js → popover-Cf-d9CBe.js} +2 -2
  210. package/storybook-static/assets/{preset-select-CaY8SOYT.js → preset-select-Divqvyhr.js} +1 -1
  211. package/storybook-static/assets/{react-18-DPMOLLe1.js → react-18-C8ZBY1Ky.js} +1 -1
  212. package/storybook-static/assets/{react-dom-BKRiX1TT.js → react-dom-DEo6Vc1z.js} +1 -1
  213. package/storybook-static/assets/{react-0gkFNWVQ.js → react-oW-8yUPs.js} +1 -1
  214. package/storybook-static/assets/select-B2Yo9S2f.js +1 -0
  215. package/storybook-static/assets/{slider-BqG2yvL2.js → slider-BgZTddiR.js} +1 -1
  216. package/storybook-static/assets/{sortable-Viqf8wuB.js → sortable-BZttsbB-.js} +1 -1
  217. package/storybook-static/assets/{syntaxhighlighter-RTCFPKCB-DuzwRVHO.js → syntaxhighlighter-RTCFPKCB-DHMad3_O.js} +1 -1
  218. package/storybook-static/assets/{text-B62c97-X.js → text-DX5yXvyz.js} +1 -1
  219. package/storybook-static/assets/{theming-CG2b7751.js → theming-x5D2-3Wh.js} +1 -1
  220. package/storybook-static/assets/ui-CuulZK-0.js +1 -0
  221. package/storybook-static/assets/{useODataSelectBase-J0YKxol4.js → useODataSelectBase-ByD_yhA4.js} +1 -1
  222. package/storybook-static/assets/{useODataTreeData-wlNQaI0p.js → useODataTreeData-C-pt6PNC.js} +1 -1
  223. package/storybook-static/assets/{utils-CMnxoKbT.js → utils-238J8rpj.js} +1 -1
  224. package/storybook-static/iframe.html +1 -1
  225. package/storybook-static/index.json +1 -1
  226. package/storybook-static/project.json +1 -1
  227. package/dist/chunks/check-box-BowNqqd3.js +0 -48
  228. package/dist/chunks/check-box-BowNqqd3.js.map +0 -1
  229. package/dist/chunks/multi-select-BCpRct-k.js.map +0 -1
  230. package/dist/chunks/picker-DTZk09Ag.js.map +0 -1
  231. package/dist/multi-select/ui/MultiSelectOptionsToolbar.d.ts +0 -8
  232. package/dist/multi-select/ui/MultiSelectOptionsToolbar.d.ts.map +0 -1
  233. package/storybook-static/assets/CheckBox-m8RUUjvq.js +0 -2
  234. package/storybook-static/assets/CheckBox.module-Hr3mvdAC.js +0 -1
  235. package/storybook-static/assets/MultiSelect-BUWlGDnx.js +0 -2
  236. package/storybook-static/assets/ODataTreeMultiSelect.stories-Be4AaF8U.js +0 -24
  237. package/storybook-static/assets/TreeMultiSelect-Cm8XLcaB.js +0 -1
  238. package/storybook-static/assets/TreeMultiSelect.stories-DKd_qDqk.js +0 -14
  239. package/storybook-static/assets/TreePickerBase-qreyVjhY.css +0 -1
  240. package/storybook-static/assets/TreePickerBase-xFkOCgy0.js +0 -19
  241. package/storybook-static/assets/TreeSelect-C0Oxcp_s.js +0 -1
  242. package/storybook-static/assets/base-table-XPKfaZOF.js +0 -18
  243. package/storybook-static/assets/floating-ui.react-DV6_xxif.js +0 -1
  244. package/storybook-static/assets/formatter-L2YTDE3Q-BC5xVOel.js +0 -1
  245. package/storybook-static/assets/grid-DZrPQELi.js +0 -1
  246. package/storybook-static/assets/hooks-hqscBU_x.js +0 -5
  247. package/storybook-static/assets/odata-service-BO_9B-Az.js +0 -1
  248. package/storybook-static/assets/picker-CxN205s6.js +0 -1
  249. package/storybook-static/assets/select-C23Vd0JX.js +0 -1
  250. package/storybook-static/assets/ui-CAk1ISqX.js +0 -1
@@ -1,25 +1,26 @@
1
1
  import { t as e } from "./ui.module-BisoTevy.js";
2
- import { i as t, l as n, s as r } from "./input-BCJfUdK_.js";
3
- import { t as i } from "./separator-B72Aq-6a.js";
4
- import { forwardRef as a, useEffect as o, useEffectEvent as s, useMemo as c, useRef as l, useState as u } from "react";
5
- import { cn as d } from "@ryuzaki13/react-foundation-lib/utils";
6
- import { ChevronDownIcon as f } from "lucide-react";
7
- import { jsx as p, jsxs as m } from "react/jsx-runtime";
8
- import { normalizeTextToLower as h } from "@ryuzaki13/react-foundation-lib/formatters";
9
- import { FloatingFocusManager as g, FloatingPortal as _ } from "@floating-ui/react";
10
- import { useFloatingListbox as v } from "@ryuzaki13/react-foundation-lib/hooks";
11
- import { AnimatePresence as y, motion as b } from "motion/react";
2
+ import { t } from "./grid-dI94AAbi.js";
3
+ import { i as n, l as r, s as i } from "./input-BCJfUdK_.js";
4
+ import { t as a } from "./separator-B72Aq-6a.js";
5
+ import { forwardRef as o, useEffect as s, useEffectEvent as c, useMemo as l, useRef as u, useState as d } from "react";
6
+ import { cn as f } from "@ryuzaki13/react-foundation-lib/utils";
7
+ import { ChevronDownIcon as p } from "lucide-react";
8
+ import { jsx as m, jsxs as h } from "react/jsx-runtime";
9
+ import { normalizeTextToLower as g } from "@ryuzaki13/react-foundation-lib/formatters";
10
+ import { FloatingFocusManager as _, FloatingPortal as v } from "@floating-ui/react";
11
+ import { useFloatingListbox as y } from "@ryuzaki13/react-foundation-lib/hooks";
12
+ import { AnimatePresence as b, motion as x } from "motion/react";
12
13
  //#region src/picker/PickerField.tsx
13
- function x({ id: e, label: t, description: i, disabled: a, size: o, className: s, error: c, children: l }) {
14
- let { controlId: u, labelId: d, descriptionId: f, errorId: m, describedBy: h } = n({
14
+ function S({ id: e, label: t, description: n, disabled: a, size: o, className: s, error: c, children: l }) {
15
+ let { controlId: u, labelId: d, descriptionId: f, errorId: p, describedBy: h } = r({
15
16
  id: e,
16
17
  hasLabel: t != null,
17
- hasDescription: !!i,
18
+ hasDescription: !!n,
18
19
  hasError: !!c
19
20
  });
20
- return /* @__PURE__ */ p(r, {
21
+ return /* @__PURE__ */ m(i, {
21
22
  label: t,
22
- description: i,
23
+ description: n,
23
24
  disabled: a,
24
25
  size: o,
25
26
  className: s,
@@ -27,39 +28,40 @@ function x({ id: e, label: t, description: i, disabled: a, size: o, className: s
27
28
  controlId: u,
28
29
  labelId: d,
29
30
  descriptionId: f,
30
- errorId: m,
31
+ errorId: p,
31
32
  children: l({
32
33
  controlId: u,
33
34
  labelId: d,
34
35
  descriptionId: f,
35
- errorId: m,
36
+ errorId: p,
36
37
  describedBy: h
37
38
  })
38
39
  });
39
40
  }
40
- var S = {
41
+ var C = {
41
42
  popupLayout: "DRJ4hy",
42
43
  popupBody: "U4CULi",
43
44
  status: "bupTWA",
44
45
  statusError: "GkeyGF",
45
- triggerContainer: "_8F667e"
46
+ triggerContainer: "_8F667e",
47
+ selectionActionButton: "OGMk6I"
46
48
  };
47
49
  //#endregion
48
50
  //#region src/picker/PickerPopup.tsx
49
- function C(e) {
51
+ function w(e) {
50
52
  e.stopPropagation();
51
53
  }
52
- function w({ open: e, context: t, floatingStyles: n, listId: r, labelId: a, descriptionId: o, activeOptionId: s, setFloating: c, getFloatingProps: l, onKeyDown: u, initialFocus: f = -1, returnFocus: h = !1, tabIndex: v = 0, className: x, maxWidth: w, layoutClassName: T, headerClassName: E, bodyClassName: D, header: O, children: k }) {
53
- return /* @__PURE__ */ p(y, { children: e && /* @__PURE__ */ p(_, { children: /* @__PURE__ */ p(g, {
54
+ function T({ open: e, context: t, floatingStyles: n, listId: r, labelId: i, popupAriaLabel: o, descriptionId: s, activeOptionId: c, ariaMultiselectable: l, popupRole: u = "listbox", setFloating: d, getFloatingProps: p, onKeyDown: g, initialFocus: y = -1, returnFocus: S = !1, tabIndex: T = 0, className: E, maxWidth: D, layoutClassName: O, headerClassName: k, bodyClassName: A, header: j, children: M }) {
55
+ return /* @__PURE__ */ m(b, { children: e && /* @__PURE__ */ m(v, { children: /* @__PURE__ */ m(_, {
54
56
  context: t,
55
57
  modal: !1,
56
- initialFocus: f,
57
- returnFocus: h,
58
- children: /* @__PURE__ */ p(b.div, {
59
- ref: c,
58
+ initialFocus: y,
59
+ returnFocus: S,
60
+ children: /* @__PURE__ */ m(x.div, {
61
+ ref: d,
60
62
  style: {
61
63
  ...n,
62
- maxWidth: w
64
+ maxWidth: D
63
65
  },
64
66
  initial: {
65
67
  opacity: 0,
@@ -73,77 +75,104 @@ function w({ open: e, context: t, floatingStyles: n, listId: r, labelId: a, desc
73
75
  opacity: 0,
74
76
  scale: .95
75
77
  },
76
- ...l({
78
+ ...p({
77
79
  id: r,
78
- tabIndex: v,
79
- "aria-labelledby": a,
80
- "aria-describedby": o,
81
- "aria-activedescendant": s,
82
- onMouseDown: C,
83
- onKeyDown: u,
84
- className: x
80
+ role: u,
81
+ tabIndex: T,
82
+ "aria-labelledby": i,
83
+ "aria-label": i ? void 0 : o,
84
+ "aria-describedby": s,
85
+ "aria-activedescendant": c,
86
+ "aria-multiselectable": l || void 0,
87
+ onMouseDown: w,
88
+ onKeyDown: g,
89
+ className: E
85
90
  }),
86
- children: /* @__PURE__ */ m("div", {
87
- className: d(S.popupLayout, T),
88
- children: [O ? /* @__PURE__ */ m("div", {
89
- className: E,
90
- children: [O, /* @__PURE__ */ p(i, { className: "marginBlockSm" })]
91
- }) : /* @__PURE__ */ p("div", {}), /* @__PURE__ */ p("div", {
92
- className: d(S.popupBody, D),
93
- children: k
91
+ children: /* @__PURE__ */ h("div", {
92
+ className: f(C.popupLayout, O),
93
+ children: [j ? /* @__PURE__ */ h("div", {
94
+ className: k,
95
+ children: [j, /* @__PURE__ */ m(a, { className: "marginBlockSm" })]
96
+ }) : /* @__PURE__ */ m("div", {}), /* @__PURE__ */ m("div", {
97
+ className: f(C.popupBody, A),
98
+ children: M
94
99
  })]
95
100
  })
96
101
  })
97
102
  }) }) });
98
103
  }
99
104
  //#endregion
105
+ //#region src/picker/PickerSelectionToolbar.tsx
106
+ function E({ onSelectAll: e, onDeselectAll: n, selectAllButtonRef: r }) {
107
+ return /* @__PURE__ */ h(t.Container, {
108
+ gap: "xs",
109
+ templateColumns: "1fr 1fr",
110
+ children: [/* @__PURE__ */ m("button", {
111
+ ref: r,
112
+ type: "button",
113
+ className: C.selectionActionButton,
114
+ onClick: e,
115
+ "data-ui": "picker-select-all",
116
+ "data-action": "select-all",
117
+ children: "Выбрать все"
118
+ }), /* @__PURE__ */ m("button", {
119
+ type: "button",
120
+ className: C.selectionActionButton,
121
+ onClick: n,
122
+ "data-ui": "picker-deselect-all",
123
+ "data-action": "deselect-all",
124
+ children: "Снять выбор"
125
+ })]
126
+ });
127
+ }
128
+ //#endregion
100
129
  //#region src/picker/PickerStatus.tsx
101
- function T({ emptyState: t, loadingState: n, errorState: r }) {
130
+ function D({ emptyState: t, loadingState: n, errorState: r }) {
102
131
  let i = r ?? n ?? t;
103
- return i == null ? null : /* @__PURE__ */ p("div", {
104
- className: d(e.uiPopupOption, S.status, r !== void 0 && S.statusError),
132
+ return i == null ? null : /* @__PURE__ */ m("div", {
133
+ className: f(e.uiPopupOption, C.status, r !== void 0 && C.statusError),
105
134
  "aria-disabled": !0,
106
135
  children: i
107
136
  });
108
137
  }
109
138
  //#endregion
110
139
  //#region src/picker/PickerTriggerActions.tsx
111
- function E({ open: t, disabled: n, children: r, onToggleMouseDown: i, onToggleClick: a, openAriaLabel: o = "Открыть список", closeAriaLabel: s = "Закрыть список" }) {
112
- return /* @__PURE__ */ m("div", {
140
+ function O({ open: t, disabled: n, children: r, onToggleMouseDown: i, onToggleClick: a, openAriaLabel: o = "Открыть список", closeAriaLabel: s = "Закрыть список" }) {
141
+ return /* @__PURE__ */ h("div", {
113
142
  className: e.uiToggleButtonContainer,
114
143
  "data-disabled": n || void 0,
115
144
  children: [
116
145
  r,
117
- /* @__PURE__ */ p("div", { className: e.uiButtonSeparator }),
118
- /* @__PURE__ */ p("button", {
146
+ /* @__PURE__ */ m("div", { className: e.uiButtonSeparator }),
147
+ /* @__PURE__ */ m("button", {
119
148
  type: "button",
120
149
  "aria-label": t ? s : o,
121
150
  className: e.uiToggleButton,
122
151
  onMouseDown: i,
123
152
  onClick: a,
124
- children: /* @__PURE__ */ p(f, { className: d(e.uiToggleIcon, t && e.uiToggleIconOpen) })
153
+ children: /* @__PURE__ */ m(p, { className: f(e.uiToggleIcon, t && e.uiToggleIconOpen) })
125
154
  })
126
155
  ]
127
156
  });
128
157
  }
129
158
  //#endregion
130
159
  //#region src/picker/PickerTriggerInput.tsx
131
- var D = a(({ rootRef: n, endAdornment: r, overlay: i, rootClassName: a, inputClassName: o, ...s }, c) => /* @__PURE__ */ m("div", {
132
- ref: n,
133
- className: d(e.uiInputContainer, S.triggerContainer, a),
134
- children: [/* @__PURE__ */ p(t, {
160
+ var k = o(({ rootRef: t, endAdornment: r, overlay: i, rootClassName: a, inputClassName: o, ...s }, c) => /* @__PURE__ */ h("div", {
161
+ ref: t,
162
+ className: f(e.uiInputContainer, C.triggerContainer, a),
163
+ children: [/* @__PURE__ */ m(n, {
135
164
  endAdornment: r,
136
- children: ({ controlClassName: t }) => /* @__PURE__ */ p("input", {
165
+ children: ({ controlClassName: t }) => /* @__PURE__ */ m("input", {
137
166
  ...s,
138
167
  ref: c,
139
- className: d(e.uiInputWithToggle, t, o)
168
+ className: f(e.uiInputWithToggle, t, o)
140
169
  })
141
170
  }), i]
142
171
  }));
143
- D.displayName = "PickerTriggerInput";
172
+ k.displayName = "PickerTriggerInput";
144
173
  //#endregion
145
174
  //#region src/picker/model/createPickerTriggerPolicy.ts
146
- function O(e) {
175
+ function A(e) {
147
176
  switch (e) {
148
177
  case "search-single": return {
149
178
  focusFloatingOnOpen: !1,
@@ -176,21 +205,21 @@ function O(e) {
176
205
  }
177
206
  //#endregion
178
207
  //#region src/picker/model/extractPickerTextContent.ts
179
- function k(e) {
208
+ function j(e) {
180
209
  if (typeof e == "string" || typeof e == "number") return String(e);
181
210
  if (Array.isArray(e)) {
182
- let t = e.map(k).filter((e) => !!e);
211
+ let t = e.map(j).filter((e) => !!e);
183
212
  return t.length ? t.join(" ") : void 0;
184
213
  }
185
214
  }
186
215
  //#endregion
187
216
  //#region src/picker/model/usePickerDefaultFilter.ts
188
- function A(e) {
189
- return h((Array.isArray(e) ? e : [e]).filter(Boolean).join(" "));
217
+ function M(e) {
218
+ return g((Array.isArray(e) ? e : [e]).filter(Boolean).join(" "));
190
219
  }
191
- function j({ options: e, query: t, enabled: n = !0, getSearchText: r }) {
192
- let i = h(t);
193
- return c(() => !n || !i ? [...e] : e.filter((e) => A(r(e)).includes(i)), [
220
+ function N({ options: e, query: t, enabled: n = !0, getSearchText: r }) {
221
+ let i = g(t);
222
+ return l(() => !n || !i ? [...e] : e.filter((e) => M(r(e)).includes(i)), [
194
223
  n,
195
224
  r,
196
225
  i,
@@ -199,9 +228,9 @@ function j({ options: e, query: t, enabled: n = !0, getSearchText: r }) {
199
228
  }
200
229
  //#endregion
201
230
  //#region src/picker/model/usePickerFloatingListbox.ts
202
- function M(e) {
203
- let t = e.triggerMode ? O(e.triggerMode) : void 0;
204
- return v({
231
+ function P(e) {
232
+ let t = e.triggerMode ? A(e.triggerMode) : void 0;
233
+ return y({
205
234
  ...e,
206
235
  focusFloatingOnOpen: e.focusFloatingOnOpen ?? t?.focusFloatingOnOpen,
207
236
  restoreFocusOnClose: e.restoreFocusOnClose ?? t?.restoreFocusOnClose
@@ -209,18 +238,18 @@ function M(e) {
209
238
  }
210
239
  //#endregion
211
240
  //#region src/picker/model/usePickerQuery.ts
212
- function N({ open: e, query: t, defaultQuery: n, onQuery: r, resetOnClose: i, triggerMode: a }) {
213
- let c = l(!1), d = t !== void 0, [f, p] = u(n ?? ""), m = d ? t ?? "" : f, h = s(() => p("")), g = i ?? (a ? O(a).resetQueryOnClose : !0);
214
- o(() => {
215
- c.current && !e && g && (d || h(), r?.("")), c.current = e;
241
+ function F({ open: e, query: t, defaultQuery: n, onQuery: r, resetOnClose: i, triggerMode: a }) {
242
+ let o = u(!1), l = t !== void 0, [f, p] = d(n ?? ""), m = l ? t ?? "" : f, h = c(() => p("")), g = i ?? (a ? A(a).resetQueryOnClose : !0);
243
+ s(() => {
244
+ o.current && !e && g && (l || h(), r?.("")), o.current = e;
216
245
  }, [
217
- d,
246
+ l,
218
247
  r,
219
248
  e,
220
249
  g
221
250
  ]);
222
251
  let _ = (e) => {
223
- d || p(e), r?.(e);
252
+ l || p(e), r?.(e);
224
253
  };
225
254
  return {
226
255
  query: m,
@@ -230,21 +259,21 @@ function N({ open: e, query: t, defaultQuery: n, onQuery: r, resetOnClose: i, tr
230
259
  }
231
260
  //#endregion
232
261
  //#region src/picker/model/usePickerSelectionLifecycle.ts
233
- function P({ value: e, open: t, onCommit: n, onOpen: r, onClose: i, isEqual: a }) {
234
- let c = l(!1), [d, f] = u(e), p = s((e) => f(e));
235
- return o(() => {
262
+ function I({ value: e, open: t, onCommit: n, onOpen: r, onClose: i, isEqual: a }) {
263
+ let o = u(!1), [l, f] = d(e), p = c((e) => f(e));
264
+ return s(() => {
236
265
  t || p(e);
237
- }, [t, e]), o(() => {
238
- c.current && !t && (a(d, e) || n(d), i?.(d)), c.current = t;
266
+ }, [t, e]), s(() => {
267
+ o.current && !t && (a(l, e) || n(l), i?.(l)), o.current = t;
239
268
  }, [
240
- d,
269
+ l,
241
270
  a,
242
271
  i,
243
272
  n,
244
273
  t,
245
274
  e
246
275
  ]), {
247
- draftValue: d,
276
+ draftValue: l,
248
277
  setDraftValue: f,
249
278
  prepareOpen: () => {
250
279
  f(e), r?.();
@@ -253,13 +282,13 @@ function P({ value: e, open: t, onCommit: n, onOpen: r, onClose: i, isEqual: a }
253
282
  }
254
283
  //#endregion
255
284
  //#region src/picker/model/usePickerTriggerController.ts
256
- function F(e) {
285
+ function L(e) {
257
286
  requestAnimationFrame(() => {
258
287
  e.current?.focus();
259
288
  });
260
289
  }
261
- function I({ mode: e, open: t, currentQuery: n, hasDisplayValue: r, inputRef: i, setQuery: a, openList: o, close: s, toggleOpen: c, onBeforeOpen: l }) {
262
- let u = O(e), d = () => {
290
+ function R({ mode: e, open: t, currentQuery: n, hasDisplayValue: r, inputRef: i, setQuery: a, openList: o, close: s, toggleOpen: c, onBeforeOpen: l }) {
291
+ let u = A(e), d = () => {
263
292
  if (l?.(), o) {
264
293
  o();
265
294
  return;
@@ -272,7 +301,7 @@ function I({ mode: e, open: t, currentQuery: n, hasDisplayValue: r, inputRef: i,
272
301
  }
273
302
  c?.();
274
303
  }, p = () => {
275
- t ? f() : d(), u.shouldFocusReferenceOnToggle(t) && F(i);
304
+ t ? f() : d(), u.shouldFocusReferenceOnToggle(t) && L(i);
276
305
  };
277
306
  return {
278
307
  policy: u,
@@ -316,6 +345,6 @@ function I({ mode: e, open: t, currentQuery: n, hasDisplayValue: r, inputRef: i,
316
345
  };
317
346
  }
318
347
  //#endregion
319
- export { j as a, D as c, w as d, x as f, M as i, E as l, P as n, k as o, N as r, O as s, I as t, T as u };
348
+ export { N as a, k as c, E as d, T as f, P as i, O as l, I as n, j as o, S as p, F as r, A as s, R as t, D as u };
320
349
 
321
- //# sourceMappingURL=picker-DTZk09Ag.js.map
350
+ //# sourceMappingURL=picker-BAQ9NeHe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"picker-BAQ9NeHe.js","names":[],"sources":["../../src/picker/PickerField.tsx","../../src/picker/Picker.module.scss","../../src/picker/PickerPopup.tsx","../../src/picker/PickerSelectionToolbar.tsx","../../src/picker/PickerStatus.tsx","../../src/picker/PickerTriggerActions.tsx","../../src/picker/PickerTriggerInput.tsx","../../src/picker/model/createPickerTriggerPolicy.ts","../../src/picker/model/extractPickerTextContent.ts","../../src/picker/model/usePickerDefaultFilter.ts","../../src/picker/model/usePickerFloatingListbox.ts","../../src/picker/model/usePickerQuery.ts","../../src/picker/model/usePickerSelectionLifecycle.ts","../../src/picker/model/usePickerTriggerController.ts"],"sourcesContent":["import { InputType } from \"@ryuzaki13/react-foundation-lib/types\";\n\nimport { InputUI } from \"../input\";\nimport { useInputFieldIds } from \"../input/lib/useInputFieldIds\";\n\nimport { PickerFieldProps } from \"./types\";\n\nexport function PickerField<TValue extends InputType>({\n\tid,\n\tlabel,\n\tdescription,\n\tdisabled,\n\tsize,\n\tclassName,\n\terror,\n\tchildren\n}: PickerFieldProps<TValue>) {\n\tconst { controlId, labelId, descriptionId, errorId, describedBy } = useInputFieldIds({\n\t\tid,\n\t\thasLabel: label !== undefined && label !== null,\n\t\thasDescription: !!description,\n\t\thasError: !!error\n\t});\n\n\treturn (\n\t\t<InputUI\n\t\t\tlabel={label}\n\t\t\tdescription={description}\n\t\t\tdisabled={disabled}\n\t\t\tsize={size}\n\t\t\tclassName={className}\n\t\t\terror={error}\n\t\t\tcontrolId={controlId}\n\t\t\tlabelId={labelId}\n\t\t\tdescriptionId={descriptionId}\n\t\t\terrorId={errorId}>\n\t\t\t{children({ controlId, labelId, descriptionId, errorId, describedBy })}\n\t\t</InputUI>\n\t);\n}\n",".popupLayout {\n\tdisplay: grid;\n\tgrid-template-rows: auto 1fr;\n\tmin-height: 0;\n\tmax-height: 75vh;\n\toverflow: hidden;\n\n\tflex: 1 1 auto;\n}\n\n.popupBody {\n\tmin-height: 0;\n}\n\n.status {\n\tpadding: var(--space-xs) var(--space-sm);\n\tcolor: var(--content-2);\n}\n\n.statusError {\n\tcolor: var(--status-error-text);\n}\n\n.triggerContainer {\n\tposition: relative;\n}\n\n.selectionActionButton {\n\tpadding-block: var(--space-xs);\n\tborder-radius: var(--radius-sm);\n\n\t&:hover {\n\t\tbackground-color: var(--surface-2);\n\t}\n}\n","import { type CSSProperties, type KeyboardEvent, type MouseEvent, type ReactNode } from \"react\";\n\nimport { FloatingContext, FloatingFocusManager, FloatingPortal } from \"@floating-ui/react\";\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { AnimatePresence, motion } from \"motion/react\";\n\nimport { Separator } from \"../separator\";\n\nimport styles from \"./Picker.module.scss\";\n\ninterface PickerPopupProps {\n\topen: boolean;\n\tcontext: FloatingContext;\n\tfloatingStyles: CSSProperties;\n\tlistId: string;\n\tlabelId?: string;\n\tpopupAriaLabel?: string;\n\tdescriptionId?: string;\n\tactiveOptionId?: string;\n\tariaMultiselectable?: boolean;\n\tpopupRole?: \"listbox\" | \"dialog\";\n\tsetFloating: (node: HTMLElement | null) => void;\n\tgetFloatingProps: (userProps?: Record<string, unknown>) => Record<string, unknown>;\n\tonKeyDown: (event: KeyboardEvent<HTMLElement>) => void;\n\tinitialFocus?: number;\n\treturnFocus?: boolean;\n\ttabIndex?: number;\n\tclassName?: string;\n\tmaxWidth?: CSSProperties[\"maxWidth\"];\n\tlayoutClassName?: string;\n\theaderClassName?: string;\n\tbodyClassName?: string;\n\theader?: ReactNode;\n\tchildren: ReactNode;\n}\n\nfunction stopNestedFloatingMouseDown(event: MouseEvent<HTMLElement>): void {\n\tevent.stopPropagation();\n}\n\nexport function PickerPopup({\n\topen,\n\tcontext,\n\tfloatingStyles,\n\tlistId,\n\tlabelId,\n\tpopupAriaLabel,\n\tdescriptionId,\n\tactiveOptionId,\n\tariaMultiselectable,\n\tpopupRole = \"listbox\",\n\tsetFloating,\n\tgetFloatingProps,\n\tonKeyDown,\n\tinitialFocus = -1,\n\treturnFocus = false,\n\ttabIndex = 0,\n\tclassName,\n\tmaxWidth,\n\tlayoutClassName,\n\theaderClassName,\n\tbodyClassName,\n\theader,\n\tchildren\n}: PickerPopupProps) {\n\treturn (\n\t\t<AnimatePresence>\n\t\t\t{open && (\n\t\t\t\t<FloatingPortal>\n\t\t\t\t\t<FloatingFocusManager context={context} modal={false} initialFocus={initialFocus} returnFocus={returnFocus}>\n\t\t\t\t\t\t<motion.div\n\t\t\t\t\t\t\tref={setFloating}\n\t\t\t\t\t\t\tstyle={{ ...floatingStyles, maxWidth }}\n\t\t\t\t\t\t\tinitial={{ opacity: 0, scale: 0.95 }}\n\t\t\t\t\t\t\tanimate={{ opacity: 1, scale: 1 }}\n\t\t\t\t\t\t\texit={{ opacity: 0, scale: 0.95 }}\n\t\t\t\t\t\t\t{...getFloatingProps({\n\t\t\t\t\t\t\t\tid: listId,\n\t\t\t\t\t\t\t\trole: popupRole,\n\t\t\t\t\t\t\t\ttabIndex,\n\t\t\t\t\t\t\t\t\"aria-labelledby\": labelId,\n\t\t\t\t\t\t\t\t\"aria-label\": labelId ? undefined : popupAriaLabel,\n\t\t\t\t\t\t\t\t\"aria-describedby\": descriptionId,\n\t\t\t\t\t\t\t\t\"aria-activedescendant\": activeOptionId,\n\t\t\t\t\t\t\t\t\"aria-multiselectable\": ariaMultiselectable || undefined,\n\t\t\t\t\t\t\t\tonMouseDown: stopNestedFloatingMouseDown,\n\t\t\t\t\t\t\t\tonKeyDown,\n\t\t\t\t\t\t\t\tclassName\n\t\t\t\t\t\t\t})}>\n\t\t\t\t\t\t\t<div className={cn(styles.popupLayout, layoutClassName)}>\n\t\t\t\t\t\t\t\t{header ? (\n\t\t\t\t\t\t\t\t\t<div className={headerClassName}>\n\t\t\t\t\t\t\t\t\t\t{header}\n\t\t\t\t\t\t\t\t\t\t<Separator className=\"marginBlockSm\" />\n\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<div />\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t\t<div className={cn(styles.popupBody, bodyClassName)}>{children}</div>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t</motion.div>\n\t\t\t\t\t</FloatingFocusManager>\n\t\t\t\t</FloatingPortal>\n\t\t\t)}\n\t\t</AnimatePresence>\n\t);\n}\n","import { type Ref } from \"react\";\n\nimport { Grid } from \"../grid\";\n\nimport styles from \"./Picker.module.scss\";\n\ntype PickerSelectionToolbarProps = {\n\tonSelectAll: () => void;\n\tonDeselectAll: () => void;\n\tselectAllButtonRef?: Ref<HTMLButtonElement>;\n};\n\n/**\n * Общая панель массовых действий для picker-компонентов с множественным выбором.\n * Компонент не знает формат значения и делегирует изменение владельцу selection-модели.\n */\nexport function PickerSelectionToolbar({ onSelectAll, onDeselectAll, selectAllButtonRef }: PickerSelectionToolbarProps) {\n\treturn (\n\t\t<Grid.Container gap=\"xs\" templateColumns=\"1fr 1fr\">\n\t\t\t<button\n\t\t\t\tref={selectAllButtonRef}\n\t\t\t\ttype=\"button\"\n\t\t\t\tclassName={styles.selectionActionButton}\n\t\t\t\tonClick={onSelectAll}\n\t\t\t\tdata-ui=\"picker-select-all\"\n\t\t\t\tdata-action=\"select-all\">\n\t\t\t\tВыбрать все\n\t\t\t</button>\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\tclassName={styles.selectionActionButton}\n\t\t\t\tonClick={onDeselectAll}\n\t\t\t\tdata-ui=\"picker-deselect-all\"\n\t\t\t\tdata-action=\"deselect-all\">\n\t\t\t\tСнять выбор\n\t\t\t</button>\n\t\t</Grid.Container>\n\t);\n}\n","import { ReactNode } from \"react\";\n\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\n\nimport uiStyles from \"../ui.module.scss\";\n\nimport styles from \"./Picker.module.scss\";\n\ninterface PickerStatusProps {\n\temptyState?: ReactNode;\n\tloadingState?: ReactNode;\n\terrorState?: ReactNode;\n}\n\nexport function PickerStatus({ emptyState, loadingState, errorState }: PickerStatusProps) {\n\tconst content = errorState ?? loadingState ?? emptyState;\n\n\tif (content === undefined || content === null) {\n\t\treturn null;\n\t}\n\n\treturn (\n\t\t<div className={cn(uiStyles.uiPopupOption, styles.status, errorState !== undefined && styles.statusError)} aria-disabled={true}>\n\t\t\t{content}\n\t\t</div>\n\t);\n}\n","import { MouseEvent, ReactNode } from \"react\";\n\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { ChevronDownIcon } from \"lucide-react\";\n\nimport uiStyles from \"../ui.module.scss\";\n\ninterface PickerTriggerActionsProps {\n\topen: boolean;\n\tdisabled?: boolean;\n\tchildren?: ReactNode;\n\tonToggleMouseDown?: (event: MouseEvent<HTMLButtonElement>) => void;\n\tonToggleClick: () => void;\n\topenAriaLabel?: string;\n\tcloseAriaLabel?: string;\n}\n\nexport function PickerTriggerActions({\n\topen,\n\tdisabled,\n\tchildren,\n\tonToggleMouseDown,\n\tonToggleClick,\n\topenAriaLabel = \"Открыть список\",\n\tcloseAriaLabel = \"Закрыть список\"\n}: PickerTriggerActionsProps) {\n\treturn (\n\t\t<div className={uiStyles.uiToggleButtonContainer} data-disabled={disabled || undefined}>\n\t\t\t{children}\n\n\t\t\t<div className={uiStyles.uiButtonSeparator} />\n\n\t\t\t<button\n\t\t\t\ttype=\"button\"\n\t\t\t\taria-label={open ? closeAriaLabel : openAriaLabel}\n\t\t\t\tclassName={uiStyles.uiToggleButton}\n\t\t\t\tonMouseDown={onToggleMouseDown}\n\t\t\t\tonClick={onToggleClick}>\n\t\t\t\t<ChevronDownIcon className={cn(uiStyles.uiToggleIcon, open && uiStyles.uiToggleIconOpen)} />\n\t\t\t</button>\n\t\t</div>\n\t);\n}\n","import { ComponentPropsWithoutRef, forwardRef, ReactNode } from \"react\";\n\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\n\nimport { InputControl } from \"../input\";\nimport uiStyles from \"../ui.module.scss\";\n\nimport styles from \"./Picker.module.scss\";\n\ninterface PickerTriggerInputProps extends Omit<ComponentPropsWithoutRef<\"input\">, \"size\"> {\n\trootRef?: (node: HTMLDivElement | null) => void;\n\tendAdornment?: ReactNode;\n\toverlay?: ReactNode;\n\trootClassName?: string;\n\tinputClassName?: string;\n}\n\nexport const PickerTriggerInput = forwardRef<HTMLInputElement, PickerTriggerInputProps>(\n\t({ rootRef, endAdornment, overlay, rootClassName, inputClassName, ...props }, ref) => {\n\t\treturn (\n\t\t\t<div ref={rootRef} className={cn(uiStyles.uiInputContainer, styles.triggerContainer, rootClassName)}>\n\t\t\t\t<InputControl endAdornment={endAdornment}>\n\t\t\t\t\t{({ controlClassName }) => (\n\t\t\t\t\t\t<input {...props} ref={ref} className={cn(uiStyles.uiInputWithToggle, controlClassName, inputClassName)} />\n\t\t\t\t\t)}\n\t\t\t\t</InputControl>\n\t\t\t\t{overlay}\n\t\t\t</div>\n\t\t);\n\t}\n);\n\nPickerTriggerInput.displayName = \"PickerTriggerInput\";\n","export type PickerTriggerMode = \"display\" | \"search-single\" | \"search-multi\";\n\ninterface PickerTriggerTextFocusParams {\n\topen: boolean;\n\tcurrentQuery: string;\n\thasDisplayValue: boolean;\n}\n\nexport interface PickerTriggerPolicy {\n\tfocusFloatingOnOpen: boolean;\n\trestoreFocusOnClose: boolean;\n\tresetQueryOnClose: boolean;\n\tshouldOpenOnTriggerClick: (open: boolean) => boolean;\n\tshouldOpenOnInputChange: (open: boolean) => boolean;\n\tshouldFocusReferenceOnToggle: (open: boolean) => boolean;\n\tshouldSelectTriggerTextOnFocus: (params: PickerTriggerTextFocusParams) => boolean;\n}\n\n/**\n * Единая политика поведения trigger-input для picker-компонентов.\n * Нормализует различия между display-режимом, single-search и multi-search.\n */\nexport function createPickerTriggerPolicy(mode: PickerTriggerMode): PickerTriggerPolicy {\n\tswitch (mode) {\n\t\tcase \"search-single\":\n\t\t\treturn {\n\t\t\t\tfocusFloatingOnOpen: false,\n\t\t\t\trestoreFocusOnClose: false,\n\t\t\t\tresetQueryOnClose: true,\n\t\t\t\tshouldOpenOnTriggerClick: () => false,\n\t\t\t\tshouldOpenOnInputChange: (open) => !open,\n\t\t\t\tshouldFocusReferenceOnToggle: (open) => !open,\n\t\t\t\tshouldSelectTriggerTextOnFocus: ({ open, currentQuery, hasDisplayValue }) =>\n\t\t\t\t\t!open && currentQuery.length === 0 && hasDisplayValue\n\t\t\t};\n\t\tcase \"search-multi\":\n\t\t\treturn {\n\t\t\t\tfocusFloatingOnOpen: false,\n\t\t\t\trestoreFocusOnClose: false,\n\t\t\t\tresetQueryOnClose: true,\n\t\t\t\tshouldOpenOnTriggerClick: () => false,\n\t\t\t\tshouldOpenOnInputChange: (open) => !open,\n\t\t\t\tshouldFocusReferenceOnToggle: (open) => !open,\n\t\t\t\tshouldSelectTriggerTextOnFocus: () => false\n\t\t\t};\n\t\tcase \"display\":\n\t\tdefault:\n\t\t\treturn {\n\t\t\t\tfocusFloatingOnOpen: true,\n\t\t\t\trestoreFocusOnClose: true,\n\t\t\t\tresetQueryOnClose: false,\n\t\t\t\tshouldOpenOnTriggerClick: (open) => !open,\n\t\t\t\tshouldOpenOnInputChange: () => false,\n\t\t\t\tshouldFocusReferenceOnToggle: () => false,\n\t\t\t\tshouldSelectTriggerTextOnFocus: () => false\n\t\t\t};\n\t}\n}\n","import { ReactNode } from \"react\";\n\nexport function extractPickerTextContent(node: ReactNode): string | undefined {\n\tif (typeof node === \"string\" || typeof node === \"number\") {\n\t\treturn String(node);\n\t}\n\n\tif (Array.isArray(node)) {\n\t\tconst values = node.map(extractPickerTextContent).filter((value): value is string => Boolean(value));\n\t\treturn values.length ? values.join(\" \") : undefined;\n\t}\n\n\treturn undefined;\n}\n","import { useMemo } from \"react\";\n\nimport { normalizeTextToLower } from \"@ryuzaki13/react-foundation-lib/formatters\";\n\ninterface UsePickerDefaultFilterOptions<T> {\n\toptions: readonly T[];\n\tquery: string;\n\tenabled?: boolean;\n\tgetSearchText: (option: T) => unknown;\n}\n\nfunction normalizeSearchText(value: unknown) {\n\tconst parts = Array.isArray(value) ? value : [value];\n\n\treturn normalizeTextToLower(parts.filter(Boolean).join(\" \"));\n}\n\nexport function usePickerDefaultFilter<T>({ options, query, enabled = true, getSearchText }: UsePickerDefaultFilterOptions<T>) {\n\tconst normalizedQuery = normalizeTextToLower(query);\n\n\treturn useMemo(() => {\n\t\tif (!enabled || !normalizedQuery) {\n\t\t\treturn [...options];\n\t\t}\n\n\t\treturn options.filter((option) => normalizeSearchText(getSearchText(option)).includes(normalizedQuery));\n\t}, [enabled, getSearchText, normalizedQuery, options]);\n}\n","import { Placement } from \"@floating-ui/react\";\nimport {\n\ttype FloatingListboxPlacementStrategy,\n\ttype FloatingListboxSizeResolver,\n\tuseFloatingListbox\n} from \"@ryuzaki13/react-foundation-lib/hooks\";\n\nimport { PickerTriggerMode, createPickerTriggerPolicy } from \"./createPickerTriggerPolicy\";\n\ninterface UsePickerFloatingListboxParams<T> {\n\toptions: readonly T[];\n\tselectedIndex: number;\n\topen?: boolean;\n\tonOpenChange?: (open: boolean) => void;\n\tgetOptionDisabled?: (option: T) => boolean;\n\tonSelect?: (option: T) => void;\n\tdisabled?: boolean;\n\tplacement?: Placement;\n\tplacementStrategy?: FloatingListboxPlacementStrategy;\n\tcloseOnSelect?: boolean;\n\tfocusFloatingOnOpen?: boolean;\n\tallowOpenWithoutOptions?: boolean;\n\trestoreFocusOnClose?: boolean;\n\ttriggerMode?: PickerTriggerMode;\n\tresolveFloatingSize?: FloatingListboxSizeResolver;\n}\n\n/**\n * Единая точка входа для popup/listbox поведения во всех picker-компонентах.\n */\nexport function usePickerFloatingListbox<T>(params: UsePickerFloatingListboxParams<T>) {\n\tconst triggerPolicy = params.triggerMode ? createPickerTriggerPolicy(params.triggerMode) : undefined;\n\n\treturn useFloatingListbox({\n\t\t...params,\n\t\tfocusFloatingOnOpen: params.focusFloatingOnOpen ?? triggerPolicy?.focusFloatingOnOpen,\n\t\trestoreFocusOnClose: params.restoreFocusOnClose ?? triggerPolicy?.restoreFocusOnClose\n\t});\n}\n","import { useEffect, useEffectEvent, useRef, useState } from \"react\";\n\nimport { PickerTriggerMode, createPickerTriggerPolicy } from \"./createPickerTriggerPolicy\";\n\ninterface UsePickerQueryOptions {\n\topen: boolean;\n\tquery?: string;\n\tdefaultQuery?: string;\n\tonQuery?: (value: string) => void;\n\tresetOnClose?: boolean;\n\ttriggerMode?: PickerTriggerMode;\n}\n\nexport function usePickerQuery({ open, query, defaultQuery, onQuery, resetOnClose, triggerMode }: UsePickerQueryOptions) {\n\tconst previousOpenRef = useRef(false);\n\tconst isControlled = query !== undefined;\n\tconst [internalQuery, setInternalQuery] = useState(defaultQuery ?? \"\");\n\tconst currentQuery = isControlled ? (query ?? \"\") : internalQuery;\n\tconst syncResetInternalQuery = useEffectEvent(() => setInternalQuery(\"\"));\n\tconst resolvedResetOnClose = resetOnClose ?? (triggerMode ? createPickerTriggerPolicy(triggerMode).resetQueryOnClose : true);\n\n\tuseEffect(() => {\n\t\tif (previousOpenRef.current && !open && resolvedResetOnClose) {\n\t\t\tif (!isControlled) {\n\t\t\t\tsyncResetInternalQuery();\n\t\t\t}\n\n\t\t\tonQuery?.(\"\");\n\t\t}\n\n\t\tpreviousOpenRef.current = open;\n\t}, [isControlled, onQuery, open, resolvedResetOnClose]);\n\n\tconst setQuery = (nextValue: string) => {\n\t\tif (!isControlled) {\n\t\t\tsetInternalQuery(nextValue);\n\t\t}\n\n\t\tonQuery?.(nextValue);\n\t};\n\n\treturn {\n\t\tquery: currentQuery,\n\t\tsetQuery,\n\t\tclearQuery: () => setQuery(\"\")\n\t};\n}\n","import { useEffect, useEffectEvent, useRef, useState } from \"react\";\n\ninterface UsePickerSelectionLifecycleOptions<TValue> {\n\tvalue: TValue;\n\topen: boolean;\n\tonCommit: (value: TValue) => void;\n\tonOpen?: () => void;\n\tonClose?: (value: TValue) => void;\n\tisEqual: (left: TValue, right: TValue) => boolean;\n}\n\n/**\n * Общий жизненный цикл чернового выбора для picker-компонентов,\n * где изменения подтверждаются при закрытии popup.\n */\nexport function usePickerSelectionLifecycle<TValue>({\n\tvalue,\n\topen,\n\tonCommit,\n\tonOpen,\n\tonClose,\n\tisEqual\n}: UsePickerSelectionLifecycleOptions<TValue>) {\n\tconst previousOpenRef = useRef(false);\n\tconst [draftValue, setDraftValue] = useState(value);\n\tconst syncDraftValue = useEffectEvent((value: TValue) => setDraftValue(value));\n\n\tuseEffect(() => {\n\t\tif (!open) {\n\t\t\tsyncDraftValue(value);\n\t\t}\n\t}, [open, value]);\n\n\tuseEffect(() => {\n\t\tif (previousOpenRef.current && !open) {\n\t\t\tif (!isEqual(draftValue, value)) {\n\t\t\t\tonCommit(draftValue);\n\t\t\t}\n\n\t\t\tonClose?.(draftValue);\n\t\t}\n\n\t\tpreviousOpenRef.current = open;\n\t}, [draftValue, isEqual, onClose, onCommit, open, value]);\n\n\tconst prepareOpen = () => {\n\t\tsetDraftValue(value);\n\t\tonOpen?.();\n\t};\n\n\treturn {\n\t\tdraftValue,\n\t\tsetDraftValue,\n\t\tprepareOpen\n\t};\n}\n","import { MouseEvent, RefObject } from \"react\";\n\nimport { PickerTriggerMode, createPickerTriggerPolicy } from \"./createPickerTriggerPolicy\";\n\ninterface UsePickerTriggerControllerOptions {\n\tmode: PickerTriggerMode;\n\topen: boolean;\n\tcurrentQuery: string;\n\thasDisplayValue: boolean;\n\tinputRef: RefObject<HTMLInputElement | null>;\n\tsetQuery?: (value: string) => void;\n\topenList?: () => void;\n\tclose?: () => void;\n\ttoggleOpen?: () => void;\n\tonBeforeOpen?: () => void;\n}\n\ninterface HandleTriggerKeyDownOptions {\n\tevent: React.KeyboardEvent<HTMLElement>;\n\tonActivateWhenOpen?: () => void;\n\tenableSpaceActivation?: boolean;\n\tenableClosedArrowDownOpen?: boolean;\n\tsuppressClosedArrowUp?: boolean;\n}\n\nfunction focusInput(inputRef: RefObject<HTMLInputElement | null>) {\n\trequestAnimationFrame(() => {\n\t\tinputRef.current?.focus();\n\t});\n}\n\n/**\n * Единый контроллер пользовательских действий на trigger-input.\n * Держит поведение display/search-single/search-multi в одном месте.\n */\nexport function usePickerTriggerController({\n\tmode,\n\topen,\n\tcurrentQuery,\n\thasDisplayValue,\n\tinputRef,\n\tsetQuery,\n\topenList,\n\tclose,\n\ttoggleOpen,\n\tonBeforeOpen\n}: UsePickerTriggerControllerOptions) {\n\tconst policy = createPickerTriggerPolicy(mode);\n\n\tconst openTrigger = () => {\n\t\tonBeforeOpen?.();\n\n\t\tif (openList) {\n\t\t\topenList();\n\t\t\treturn;\n\t\t}\n\n\t\ttoggleOpen?.();\n\t};\n\n\tconst closeTrigger = () => {\n\t\tif (close) {\n\t\t\tclose();\n\t\t\treturn;\n\t\t}\n\n\t\ttoggleOpen?.();\n\t};\n\n\tconst toggleTrigger = () => {\n\t\tif (open) {\n\t\t\tcloseTrigger();\n\t\t} else {\n\t\t\topenTrigger();\n\t\t}\n\n\t\tif (policy.shouldFocusReferenceOnToggle(open)) {\n\t\t\tfocusInput(inputRef);\n\t\t}\n\t};\n\n\treturn {\n\t\tpolicy,\n\t\thandleTriggerInputChange: (nextValue: string) => {\n\t\t\tsetQuery?.(nextValue);\n\n\t\t\tif (policy.shouldOpenOnInputChange(open)) {\n\t\t\t\topenTrigger();\n\t\t\t}\n\t\t},\n\t\thandleTriggerClick: () => {\n\t\t\tif (policy.shouldOpenOnTriggerClick(open)) {\n\t\t\t\topenTrigger();\n\t\t\t}\n\t\t},\n\t\thandleTriggerFocus: (input: HTMLInputElement) => {\n\t\t\tif (\n\t\t\t\tpolicy.shouldSelectTriggerTextOnFocus({\n\t\t\t\t\topen,\n\t\t\t\t\tcurrentQuery,\n\t\t\t\t\thasDisplayValue\n\t\t\t\t})\n\t\t\t) {\n\t\t\t\trequestAnimationFrame(() => {\n\t\t\t\t\tinput.select();\n\t\t\t\t});\n\t\t\t}\n\t\t},\n\t\thandleToggleMouseDown: (event: MouseEvent<HTMLButtonElement>) => {\n\t\t\tevent.preventDefault();\n\t\t},\n\t\thandleToggleClick: () => {\n\t\t\ttoggleTrigger();\n\t\t},\n\t\thandleTriggerKeyDown: ({\n\t\t\tevent,\n\t\t\tonActivateWhenOpen,\n\t\t\tenableSpaceActivation = false,\n\t\t\tenableClosedArrowDownOpen = false,\n\t\t\tsuppressClosedArrowUp = false\n\t\t}: HandleTriggerKeyDownOptions) => {\n\t\t\tif (!open && suppressClosedArrowUp && event.key === \"ArrowUp\") {\n\t\t\t\tevent.preventDefault();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (!open && enableClosedArrowDownOpen && event.key === \"ArrowDown\") {\n\t\t\t\tevent.preventDefault();\n\t\t\t\ttoggleTrigger();\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (event.key === \"Enter\") {\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tif (open) {\n\t\t\t\t\tonActivateWhenOpen?.();\n\t\t\t\t} else {\n\t\t\t\t\ttoggleTrigger();\n\t\t\t\t}\n\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tif (enableSpaceActivation && event.key === \" \") {\n\t\t\t\tevent.preventDefault();\n\n\t\t\t\tif (open) {\n\t\t\t\t\tonActivateWhenOpen?.();\n\t\t\t\t} else {\n\t\t\t\t\ttoggleTrigger();\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\ttoggleTrigger\n\t};\n}\n"],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { t as e } from "./ui.module-BisoTevy.js";
2
2
  import { c as t } from "./input-BCJfUdK_.js";
3
- import { a as n, c as r, d as i, f as a, i as o, l as s, o as c, r as l, t as u, u as d } from "./picker-DTZk09Ag.js";
3
+ import { a as n, c as r, f as i, i as a, l as o, o as s, p as c, r as l, t as u, u as d } from "./picker-BAQ9NeHe.js";
4
4
  import { t as f } from "./SelectOptionContent-CI7wq9Oi.js";
5
5
  import { n as p } from "./useODataSelectBase-wZ07hQFv.js";
6
6
  import { Fragment as m, useCallback as h, useMemo as g, useRef as ee, useState as te } from "react";
@@ -11,9 +11,9 @@ import { Fragment as y, jsx as b, jsxs as x } from "react/jsx-runtime";
11
11
  //#region src/select/lib/getOptionSearchText.ts
12
12
  function ie({ option: e, getOptionLabel: t, getOptionCode: n, getOptionGroup: r }) {
13
13
  return [
14
- c(t(e)),
15
- c(n?.(e)),
16
- c(r?.(e)?.label)
14
+ s(t(e)),
15
+ s(n?.(e)),
16
+ s(r?.(e)?.label)
17
17
  ].filter((e) => !!e).join(" ").toLowerCase();
18
18
  }
19
19
  function S(e, t, n) {
@@ -87,7 +87,7 @@ function T(t) {
87
87
  query: U,
88
88
  enabled: F && pe,
89
89
  getSearchText: Ce
90
- }), K = g(() => M ? ae(G, M) : void 0, [M, G]), { activeIndex: we, context: Te, floatingStyles: Ee, getFloatingProps: De, setReference: Oe, setFloating: ke, setOptionRef: Ae, close: q, openList: je, toggleOpen: Me, selectOption: Ne, selectActiveOption: Pe, handleReferenceKeyDown: Fe, handleFloatingKeyDown: Ie, getOptionId: Le, getActiveOptionId: J } = o({
90
+ }), K = g(() => M ? ae(G, M) : void 0, [M, G]), { activeIndex: we, context: Te, floatingStyles: Ee, getFloatingProps: De, setReference: Oe, setFloating: ke, setOptionRef: Ae, close: q, openList: je, toggleOpen: Me, selectOption: Ne, selectActiveOption: Pe, handleReferenceKeyDown: Fe, handleFloatingKeyDown: Ie, getOptionId: Le, getActiveOptionId: J } = a({
91
91
  options: G,
92
92
  selectedIndex: V === void 0 ? -1 : G.findIndex((e) => O(e) === V),
93
93
  open: z,
@@ -97,7 +97,7 @@ function T(t) {
97
97
  disabled: _,
98
98
  placement: xe,
99
99
  triggerMode: B
100
- }), Y = G.length > 0, X = H === void 0 ? void 0 : k(H), Z = H === void 0 ? void 0 : P ? P(H) : X, Re = c(X), ze = H === void 0 ? void 0 : c(A?.(H)), Be = c(Z) ?? Re ?? ze ?? (V === void 0 ? "" : String(V)), Q = F && (z || U.length > 0), Ve = Q ? U : H === void 0 ? "" : Be, He = H !== void 0 && Z !== void 0 && c(Z) === void 0 && !Q, $ = u({
100
+ }), Y = G.length > 0, X = H === void 0 ? void 0 : k(H), Z = H === void 0 ? void 0 : P ? P(H) : X, Re = s(X), ze = H === void 0 ? void 0 : s(A?.(H)), Be = s(Z) ?? Re ?? ze ?? (V === void 0 ? "" : String(V)), Q = F && (z || U.length > 0), Ve = Q ? U : H === void 0 ? "" : Be, He = H !== void 0 && Z !== void 0 && s(Z) === void 0 && !Q, $ = u({
101
101
  mode: B,
102
102
  open: z,
103
103
  currentQuery: U,
@@ -139,7 +139,7 @@ function T(t) {
139
139
  ] })
140
140
  }, i);
141
141
  };
142
- return /* @__PURE__ */ b(a, {
142
+ return /* @__PURE__ */ b(c, {
143
143
  label: f,
144
144
  description: p,
145
145
  disabled: _,
@@ -147,7 +147,7 @@ function T(t) {
147
147
  size: C,
148
148
  className: ce,
149
149
  children: ({ controlId: t, labelId: n, describedBy: a }) => {
150
- let o = `${t}-listbox`;
150
+ let s = `${t}-listbox`;
151
151
  return /* @__PURE__ */ x(y, { children: [/* @__PURE__ */ b(r, {
152
152
  ref: Ue,
153
153
  rootRef: Oe,
@@ -163,15 +163,15 @@ function T(t) {
163
163
  "aria-describedby": a,
164
164
  "aria-haspopup": "listbox",
165
165
  "aria-expanded": z,
166
- "aria-controls": z ? o : void 0,
166
+ "aria-controls": z ? s : void 0,
167
167
  "aria-autocomplete": F ? "list" : "none",
168
- "aria-activedescendant": z ? J(o) : void 0,
168
+ "aria-activedescendant": z ? J(s) : void 0,
169
169
  inputClassName: v(He && w.inputWithOverlay, le, "textOverflow"),
170
170
  overlay: He ? /* @__PURE__ */ b("div", {
171
171
  className: w.valueOverlay,
172
172
  children: Z
173
173
  }) : void 0,
174
- endAdornment: /* @__PURE__ */ b(s, {
174
+ endAdornment: /* @__PURE__ */ b(o, {
175
175
  open: z,
176
176
  disabled: _,
177
177
  onToggleMouseDown: $.handleToggleMouseDown,
@@ -209,10 +209,10 @@ function T(t) {
209
209
  open: z,
210
210
  context: Te,
211
211
  floatingStyles: Ee,
212
- listId: o,
212
+ listId: s,
213
213
  labelId: n,
214
214
  descriptionId: a,
215
- activeOptionId: Y ? J(o) : void 0,
215
+ activeOptionId: Y ? J(s) : void 0,
216
216
  setFloating: ke,
217
217
  getFloatingProps: De,
218
218
  onKeyDown: Ie,
@@ -222,7 +222,7 @@ function T(t) {
222
222
  children: /* @__PURE__ */ b("div", {
223
223
  className: v(fe, "h100 scrollable"),
224
224
  children: Y ? K ? K.map((t, n) => {
225
- let r = t.group ? `${o}-group-${n}` : void 0, i = t.items.map(({ option: e, index: t }) => Ge(o, e, t));
225
+ let r = t.group ? `${s}-group-${n}` : void 0, i = t.items.map(({ option: e, index: t }) => Ge(s, e, t));
226
226
  return t.group ? /* @__PURE__ */ x("div", {
227
227
  role: "group",
228
228
  "aria-labelledby": r,
@@ -232,7 +232,7 @@ function T(t) {
232
232
  children: t.group.label
233
233
  }), i]
234
234
  }, `group-${String(t.group.key)}-${n}`) : /* @__PURE__ */ b(m, { children: i }, `options-${n}`);
235
- }) : G.map((e, t) => Ge(o, e, t)) : /* @__PURE__ */ b(d, {
235
+ }) : G.map((e, t) => Ge(s, e, t)) : /* @__PURE__ */ b(d, {
236
236
  emptyState: ve,
237
237
  loadingState: ye,
238
238
  errorState: be
@@ -325,4 +325,4 @@ function A({ label: e, description: t, disabled: n, placeholder: r, size: i, opt
325
325
  //#endregion
326
326
  export { S as i, D as n, T as r, A as t };
327
327
 
328
- //# sourceMappingURL=select-Bd48kVI3.js.map
328
+ //# sourceMappingURL=select-DKbSVCp4.js.map