@ryuzaki13/react-foundation-ui 3.4.2 → 3.5.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 (426) hide show
  1. package/dist/badge/index.js +65 -2
  2. package/dist/badge/index.js.map +1 -0
  3. package/dist/barcode-scanner/index.js +18 -18
  4. package/dist/base-table/index.js +2 -2
  5. package/dist/button/index.js +1 -1
  6. package/dist/check-box/index.js +1 -1
  7. package/dist/chunks/{CalendarView-Dm55k0bN.js → CalendarView-CwbPJG2Y.js} +86 -86
  8. package/dist/chunks/{CalendarView-Dm55k0bN.js.map → CalendarView-CwbPJG2Y.js.map} +1 -1
  9. package/dist/chunks/{ImageViewerRuntime-HGBWp9NM.js → ImageViewerRuntime-DZpgxzF1.js} +25 -25
  10. package/dist/chunks/{ImageViewerRuntime-HGBWp9NM.js.map → ImageViewerRuntime-DZpgxzF1.js.map} +1 -1
  11. package/dist/chunks/{TextEditorLexicalClient-C8nSoz85.js → TextEditorLexicalClient-BRp8jHId.js} +354 -354
  12. package/dist/chunks/{TextEditorLexicalClient-C8nSoz85.js.map → TextEditorLexicalClient-BRp8jHId.js.map} +1 -1
  13. package/dist/chunks/{base-table-BWvKfI2W.js → base-table-BHmboNzl.js} +138 -138
  14. package/dist/chunks/{base-table-BWvKfI2W.js.map → base-table-BHmboNzl.js.map} +1 -1
  15. package/dist/chunks/{button-DF21yxVp.js → button-D7GAU2Wa.js} +20 -20
  16. package/dist/chunks/{button-DF21yxVp.js.map → button-D7GAU2Wa.js.map} +1 -1
  17. package/dist/chunks/{check-box-CZyhzmR0.js → check-box-D_Y6iIWv.js} +19 -19
  18. package/dist/chunks/{check-box-CZyhzmR0.js.map → check-box-D_Y6iIWv.js.map} +1 -1
  19. package/dist/chunks/{context-menu-DgvXGCuI.js → context-menu-BQePxRpu.js} +159 -159
  20. package/dist/chunks/{context-menu-DgvXGCuI.js.map → context-menu-BQePxRpu.js.map} +1 -1
  21. package/dist/chunks/{date-input-D7aBsPJc.js → date-input-Crijdmmq.js} +67 -67
  22. package/dist/chunks/{date-input-D7aBsPJc.js.map → date-input-Crijdmmq.js.map} +1 -1
  23. package/dist/chunks/{date-range-preset-select-BLnY47cv.js → date-range-preset-select-CyzGMvVp.js} +6 -6
  24. package/dist/chunks/{date-range-preset-select-BLnY47cv.js.map → date-range-preset-select-CyzGMvVp.js.map} +1 -1
  25. package/dist/chunks/{dialog-1Z1zCNCe.js → dialog-BcQGVNbu.js} +13 -13
  26. package/dist/chunks/{dialog-1Z1zCNCe.js.map → dialog-BcQGVNbu.js.map} +1 -1
  27. package/dist/chunks/{flex-C7njxZ74.js → flex-DtXK7OM4.js} +29 -29
  28. package/dist/chunks/{flex-C7njxZ74.js.map → flex-DtXK7OM4.js.map} +1 -1
  29. package/dist/chunks/{floating-arrow-DPKwJfww.js → floating-arrow-DKUKx2ZQ.js} +7 -7
  30. package/dist/chunks/{floating-arrow-DPKwJfww.js.map → floating-arrow-DKUKx2ZQ.js.map} +1 -1
  31. package/dist/chunks/{input-DSPKgiCK.js → input-CuRK9Vbz.js} +78 -78
  32. package/dist/chunks/{input-DSPKgiCK.js.map → input-CuRK9Vbz.js.map} +1 -1
  33. package/dist/chunks/{input-files-tIS17-zX.js → input-files-B8j6Pb_M.js} +31 -31
  34. package/dist/chunks/{input-files-tIS17-zX.js.map → input-files-B8j6Pb_M.js.map} +1 -1
  35. package/dist/chunks/{misc-DeGboAt-.js → misc-CGQOXXCy.js} +110 -110
  36. package/dist/chunks/{misc-DeGboAt-.js.map → misc-CGQOXXCy.js.map} +1 -1
  37. package/dist/chunks/{modal-dplfAaER.js → modal-febBsMyR.js} +58 -58
  38. package/dist/chunks/{modal-dplfAaER.js.map → modal-febBsMyR.js.map} +1 -1
  39. package/dist/chunks/{picker-lvm82d0A.js → picker-BA6okKnz.js} +91 -91
  40. package/dist/chunks/{picker-lvm82d0A.js.map → picker-BA6okKnz.js.map} +1 -1
  41. package/dist/chunks/popover-yl5DVe06.js +245 -0
  42. package/dist/chunks/{popover-Bne-Ljbs.js.map → popover-yl5DVe06.js.map} +1 -1
  43. package/dist/chunks/radio-group-CW-K1n9c.js +125 -0
  44. package/dist/chunks/{radio-group-sSnlYjAX.js.map → radio-group-CW-K1n9c.js.map} +1 -1
  45. package/dist/chunks/select-DblNSc5H.js +363 -0
  46. package/dist/chunks/{select-aTGupQan.js.map → select-DblNSc5H.js.map} +1 -1
  47. package/dist/chunks/{separator-B72Aq-6a.js → separator-CIqnk2z9.js} +2 -2
  48. package/dist/chunks/{separator-B72Aq-6a.js.map → separator-CIqnk2z9.js.map} +1 -1
  49. package/dist/chunks/{sortable-BKIwlqhI.js → sortable-CQmMHAF8.js} +38 -38
  50. package/dist/chunks/{sortable-BKIwlqhI.js.map → sortable-CQmMHAF8.js.map} +1 -1
  51. package/dist/chunks/{table-DxoSOvQK.js → table-BnvjPaE1.js} +18 -18
  52. package/dist/chunks/{table-DxoSOvQK.js.map → table-BnvjPaE1.js.map} +1 -1
  53. package/dist/chunks/{table-column-interactions-DzEvVuXe.js → table-column-interactions-Do8LFtiv.js} +20 -20
  54. package/dist/chunks/{table-column-interactions-DzEvVuXe.js.map → table-column-interactions-Do8LFtiv.js.map} +1 -1
  55. package/dist/chunks/{types-D9Wj9wrg.js → types-CxXyru6U.js} +21 -21
  56. package/dist/chunks/{types-D9Wj9wrg.js.map → types-CxXyru6U.js.map} +1 -1
  57. package/dist/chunks/ui.module-oRwY3Zli.js.map +1 -1
  58. package/dist/chunks/{useODataSelectBase-DR4PrY1j.js → useODataSelectBase-DwR4Lfv-.js} +5 -5
  59. package/dist/chunks/{useODataSelectBase-DR4PrY1j.js.map → useODataSelectBase-DwR4Lfv-.js.map} +1 -1
  60. package/dist/chunks/{wheel-picker-FS58cRsQ.js → wheel-picker-DUHGy7wE.js} +23 -23
  61. package/dist/chunks/{wheel-picker-FS58cRsQ.js.map → wheel-picker-DUHGy7wE.js.map} +1 -1
  62. package/dist/context-menu/index.js +1 -1
  63. package/dist/date-input/index.js +2 -2
  64. package/dist/date-range-preset-select/index.js +1 -1
  65. package/dist/date-time-input/index.js +122 -122
  66. package/dist/date-time-input/index.js.map +1 -1
  67. package/dist/detail/index.js +22 -22
  68. package/dist/dialog/index.js +1 -1
  69. package/dist/disclosure/index.js +9 -9
  70. package/dist/drop-zone/index.js +21 -21
  71. package/dist/errors/index.js +50 -50
  72. package/dist/expandable-action-panel/index.js +24 -24
  73. package/dist/flex/index.js +1 -1
  74. package/dist/flex/useFlexClasses.d.ts +1 -1
  75. package/dist/floating-arrow/index.js +1 -1
  76. package/dist/fullscreen-portal/index.js +8 -8
  77. package/dist/image/index.js +119 -119
  78. package/dist/input/index.js +1 -1
  79. package/dist/input-date-time/index.js +55 -55
  80. package/dist/input-file/index.js +16 -16
  81. package/dist/input-files/index.js +1 -1
  82. package/dist/input-image/index.js +17 -17
  83. package/dist/input-search/index.js +30 -2
  84. package/dist/input-search/index.js.map +1 -0
  85. package/dist/layout-picker/index.js +93 -93
  86. package/dist/layout-picker/index.js.map +1 -1
  87. package/dist/list/index.js +39 -39
  88. package/dist/listbox/index.js +33 -33
  89. package/dist/misc/index.js +1 -1
  90. package/dist/modal/index.js +1 -1
  91. package/dist/multi-select/index.js +466 -2
  92. package/dist/multi-select/index.js.map +1 -0
  93. package/dist/notifications/index.js +45 -45
  94. package/dist/option/index.js +30 -30
  95. package/dist/period-select/index.js +7 -7
  96. package/dist/picker/index.js +1 -1
  97. package/dist/popover/index.js +1 -1
  98. package/dist/preset-range-date-input/index.js +10 -10
  99. package/dist/preset-select/index.js +1 -1
  100. package/dist/radio-button/index.js +9 -9
  101. package/dist/radio-group/index.js +1 -1
  102. package/dist/select/index.js +1 -1
  103. package/dist/separator/index.js +1 -1
  104. package/dist/simple-table/index.js +5 -5
  105. package/dist/slider/index.js +82 -82
  106. package/dist/slider/index.js.map +1 -1
  107. package/dist/sortable/index.js +1 -1
  108. package/dist/splitter/index.js +55 -55
  109. package/dist/state-select/index.js +17 -17
  110. package/dist/styles.css +1 -1
  111. package/dist/switch/index.js +18 -18
  112. package/dist/table/index.js +1 -1
  113. package/dist/table-column-interactions/index.js +1 -1
  114. package/dist/table-editor/index.js +99 -99
  115. package/dist/table-sorting/index.js +13 -13
  116. package/dist/tabs/index.js +83 -83
  117. package/dist/tag-input/index.js +58 -58
  118. package/dist/tag-input/index.js.map +1 -1
  119. package/dist/text/index.js +18 -18
  120. package/dist/text-editor/index.js +3 -3
  121. package/dist/textarea/index.js +1 -1
  122. package/dist/three-scene/index.js +7 -7
  123. package/dist/toggle/index.js +20 -20
  124. package/dist/toolbar/index.js +16 -16
  125. package/dist/tree/index.js +24 -24
  126. package/dist/tree-select/index.js +189 -189
  127. package/dist/tree-select/index.js.map +1 -1
  128. package/dist/tree-table/index.js +33 -33
  129. package/dist/tree-table/index.js.map +1 -1
  130. package/dist/wheel-picker/index.js +1 -1
  131. package/package.json +1 -5
  132. package/storybook-static/assets/{Badge-2sTQGGbc.js → Badge-BKRvorSi.js} +1 -1
  133. package/storybook-static/assets/{Badge.stories-kpmROzju.js → Badge.stories-19yFfupy.js} +1 -1
  134. package/storybook-static/assets/{BadgeList-C-3k3Saj.js → BadgeList-DMkfxply.js} +1 -1
  135. package/storybook-static/assets/{BarcodeScannerDialog.stories-Cs6XF24f.js → BarcodeScannerDialog.stories-DdnHxu5x.js} +1 -1
  136. package/storybook-static/assets/{Button-DeUhy_Ud.js → Button-CoOZeR_z.js} +1 -1
  137. package/storybook-static/assets/{Button-BeqDnS0L.js → Button-Di-0Ionw.js} +1 -1
  138. package/storybook-static/assets/{Button.stories-gaR8Dnpw.js → Button.stories-Bd1To5BN.js} +1 -1
  139. package/storybook-static/assets/{CalendarView-D6uB72Yq.js → CalendarView-Dz8cY1fo.js} +1 -1
  140. package/storybook-static/assets/{CheckBox-BfXcsEql.js → CheckBox-DSmGYEML.js} +1 -1
  141. package/storybook-static/assets/{CheckBox-CziPDk08.js → CheckBox-DfRTTXg1.js} +1 -1
  142. package/storybook-static/assets/{CheckBox.stories-DUpx14ny.js → CheckBox.stories-DaldWgEI.js} +1 -1
  143. package/storybook-static/assets/{Color-6AOWCN3U-BKoQthNE.js → Color-6AOWCN3U-DIhia6KS.js} +1 -1
  144. package/storybook-static/assets/{ContextMenu-CIOw6SnW.js → ContextMenu-BGMQHT9V.js} +1 -1
  145. package/storybook-static/assets/{ContextMenu-DsCDOqZ-.js → ContextMenu-XS7B8QUC.js} +1 -1
  146. package/storybook-static/assets/{ContextMenu.stories-Dh1xs1Uu.js → ContextMenu.stories-Dp2t2BZa.js} +1 -1
  147. package/storybook-static/assets/{CustomOptionButton-DrXFP09z.js → CustomOptionButton-DNd0GDWp.js} +1 -1
  148. package/storybook-static/assets/{DateInput-ComvHbyD.js → DateInput-DUl5Bb0j.js} +1 -1
  149. package/storybook-static/assets/{DateInput-DUTiYxVQ.js → DateInput-MgdMtvtr.js} +1 -1
  150. package/storybook-static/assets/{DateInput.stories-B35ApFC6.js → DateInput.stories-B6Ol0Ak3.js} +1 -1
  151. package/storybook-static/assets/{DateRangePresetSelect-BgIwqItz.js → DateRangePresetSelect-C4MVqjXa.js} +1 -1
  152. package/storybook-static/assets/{DateRangePresetSelect-bRn8U3vm.js → DateRangePresetSelect-CPj0pSGc.js} +1 -1
  153. package/storybook-static/assets/{DateRangePresetSelect.stories-BUMybnsm.js → DateRangePresetSelect.stories-tPaMURtH.js} +1 -1
  154. package/storybook-static/assets/{Detail-dI6_xrHh.js → Detail-DnHTVRb5.js} +1 -1
  155. package/storybook-static/assets/{Detail.stories-CNX6haXT.js → Detail.stories-CXg_w4qM.js} +1 -1
  156. package/storybook-static/assets/{Dialog-1bEZtlvY.js → Dialog-COpvqcXi.js} +1 -1
  157. package/storybook-static/assets/{Dialog-D6RFj5rJ.js → Dialog-LMnrvBpx.js} +1 -1
  158. package/storybook-static/assets/{Dialog.stories-C9a315UR.js → Dialog.stories-BE2I5ny2.js} +1 -1
  159. package/storybook-static/assets/{Disclosure-B4-Kmeyu.js → Disclosure-BZ3jd5nu.js} +1 -1
  160. package/storybook-static/assets/{Disclosure.stories-vjoHG9v4.js → Disclosure.stories-cMcF8a8I.js} +1 -1
  161. package/storybook-static/assets/{DisclosureGroup-CkDCnUlh.js → DisclosureGroup-JNnTj18G.js} +1 -1
  162. package/storybook-static/assets/{DocsRenderer-JROSPFPF-Bnqn8fXJ.js → DocsRenderer-JROSPFPF-CurHdzu8.js} +1 -1
  163. package/storybook-static/assets/{DropZone-BPeiPXgD.js → DropZone-DGMAbY1z.js} +1 -1
  164. package/storybook-static/assets/{DropZone-X9NvE8DO.js → DropZone-VEmgdfs6.js} +1 -1
  165. package/storybook-static/assets/{DropZone.stories-DLzZAaZu.js → DropZone.stories-B8N17-bV.js} +1 -1
  166. package/storybook-static/assets/{DropdownMenu-Dzukm6bJ.js → DropdownMenu-xjOtBneA.js} +1 -1
  167. package/storybook-static/assets/{ExpandableActionPanel-Cc2iKoo0.js → ExpandableActionPanel-C7CFQZLD.js} +1 -1
  168. package/storybook-static/assets/{ExpandableActionPanel.stories-0y46sYe3.js → ExpandableActionPanel.stories-CnBr0s9R.js} +1 -1
  169. package/storybook-static/assets/{Flex-CWEDnPLk.js → Flex-RpqsC-gQ.js} +1 -1
  170. package/storybook-static/assets/{Flex.stories-D2efArng.js → Flex.stories-CCVNsX23.js} +1 -1
  171. package/storybook-static/assets/{FloatingPopover-CPA1unHt.js → FloatingPopover-D6tO24aO.js} +1 -1
  172. package/storybook-static/assets/{FormattedTableCell-BB70nIi8.js → FormattedTableCell-CDaDfaXy.js} +1 -1
  173. package/storybook-static/assets/{Grid-K6-e83uN.js → Grid-BRnqEtg1.js} +1 -1
  174. package/storybook-static/assets/{Grid.stories-CsGVZuyW.js → Grid.stories-DXY7Cvfu.js} +1 -1
  175. package/storybook-static/assets/{ImageCropper.stories-ByjBQGyU.js → ImageCropper.stories-ZnvbFN71.js} +1 -1
  176. package/storybook-static/assets/{ImageRenderer-B5bMUohk.js → ImageRenderer-DUOhCfac.js} +1 -1
  177. package/storybook-static/assets/{ImageRenderer.stories-DZIJ2Cax.js → ImageRenderer.stories-Dj6NQm2k.js} +1 -1
  178. package/storybook-static/assets/{ImageView.stories-B4NSVfMj.js → ImageView.stories-QTzOsByD.js} +1 -1
  179. package/storybook-static/assets/{ImageViewer.stories-BnnWhgad.js → ImageViewer.stories-CpnUEgZW.js} +2 -2
  180. package/storybook-static/assets/{ImageViewerRuntime-DJk8-mMV.js → ImageViewerRuntime-B1PicLUw.js} +1 -1
  181. package/storybook-static/assets/{Input-C7hd8bju.js → Input-B8eGQXlp.js} +1 -1
  182. package/storybook-static/assets/{Input-C9NNdePo.js → Input-DnFc_Pwx.js} +1 -1
  183. package/storybook-static/assets/{Input.stories-8U_h1Dir.js → Input.stories-C6CbYvZP.js} +1 -1
  184. package/storybook-static/assets/{InputDateTime-BBU37OK4.js → InputDateTime-DoMduRde.js} +1 -1
  185. package/storybook-static/assets/{InputDateTime.stories-DuRCkCMJ.js → InputDateTime.stories--LHpvJjY.js} +1 -1
  186. package/storybook-static/assets/{InputFile-BxgxV2cg.js → InputFile-CunQ8F4s.js} +1 -1
  187. package/storybook-static/assets/{InputFile-iIrq-Xfc.js → InputFile-DFv3WAWa.js} +1 -1
  188. package/storybook-static/assets/{InputFile.stories-BhiqSiFS.js → InputFile.stories-B0WZhic1.js} +1 -1
  189. package/storybook-static/assets/{InputFiles-BfEQYQ2w.js → InputFiles-CKDPmjWY.js} +1 -1
  190. package/storybook-static/assets/{InputFiles-BHVGf3f-.js → InputFiles-DyiPQ_tH.js} +1 -1
  191. package/storybook-static/assets/{InputFiles.stories-esWVcU98.js → InputFiles.stories-BbP_bEnL.js} +1 -1
  192. package/storybook-static/assets/{InputFilesList-DjS5rnuM.js → InputFilesList-BAIGwV7V.js} +1 -1
  193. package/storybook-static/assets/{InputImage-Dbz_y38S.js → InputImage-2G1pRNbw.js} +1 -1
  194. package/storybook-static/assets/{InputImage-BuvjQZxI.js → InputImage-ZvEB_TIT.js} +1 -1
  195. package/storybook-static/assets/{InputImage.stories-D1scam1d.js → InputImage.stories-BiShLRcw.js} +1 -1
  196. package/storybook-static/assets/{InteractiveComponents-CkTp18t3.js → InteractiveComponents-CT99QfHX.js} +1 -1
  197. package/storybook-static/assets/{InteractiveComponents.stories-CucQ0BGN.js → InteractiveComponents.stories-BPTICQZz.js} +1 -1
  198. package/storybook-static/assets/{LayoutPicker-CjvnwTcm.js → LayoutPicker-BDpc8LBa.js} +1 -1
  199. package/storybook-static/assets/{LayoutPicker-CWquZGFb.js → LayoutPicker-Cg_AM-pj.js} +1 -1
  200. package/storybook-static/assets/{LayoutPicker.stories-DJgcqY8p.js → LayoutPicker.stories-Ca9WZdPW.js} +1 -1
  201. package/storybook-static/assets/{Listbox-uFeGwaCi.js → Listbox-3Npc4PI_.js} +1 -1
  202. package/storybook-static/assets/{Listbox-uEULtHhW.js → Listbox-LbbFtte9.js} +1 -1
  203. package/storybook-static/assets/{Listbox.stories-DBvqBHs-.js → Listbox.stories-xDpbFNZk.js} +1 -1
  204. package/storybook-static/assets/{Modal-sVegTd2h.js → Modal-CXd2j0up.js} +1 -1
  205. package/storybook-static/assets/{Modal-Drfce80H.js → Modal-Ddmc8-2-.js} +1 -1
  206. package/storybook-static/assets/{Modal.stories-BZRJ4cqm.js → Modal.stories-cNLvFjmT.js} +1 -1
  207. package/storybook-static/assets/{ModalManagerProvider-78nTQBfn.js → ModalManagerProvider-ClXvSB9a.js} +1 -1
  208. package/storybook-static/assets/{MultiSelect-Bwz9J1Zg.js → MultiSelect-BkLCM22R.js} +1 -1
  209. package/storybook-static/assets/{MultiSelect-BxfSm5Qy.js → MultiSelect-Na2VdNy3.js} +1 -1
  210. package/storybook-static/assets/{MultiSelect.stories-C3yG8A_7.js → MultiSelect.stories-4nFshdtz.js} +1 -1
  211. package/storybook-static/assets/{NoData-BvXwWyJ0.js → NoData-bUonNuRR.js} +1 -1
  212. package/storybook-static/assets/{NotificationsHost-D1UzFm2s.js → NotificationsHost-CrLL4WK9.js} +1 -1
  213. package/storybook-static/assets/{NotificationsHost.stories-DOiJGppm.js → NotificationsHost.stories-Ci2q0W9-.js} +1 -1
  214. package/storybook-static/assets/{ODataMultiSelect-9EzhKm-o.js → ODataMultiSelect-Cc09uTB8.js} +1 -1
  215. package/storybook-static/assets/{ODataMultiSelect.stories-CeJ-N9Nd.js → ODataMultiSelect.stories-CzGzREa9.js} +1 -1
  216. package/storybook-static/assets/{ODataSelect-Dxd_7Sr4.js → ODataSelect-DqoRg5pz.js} +1 -1
  217. package/storybook-static/assets/{ODataSelect.stories-SQFZqYLx.js → ODataSelect.stories-BCcxERn3.js} +1 -1
  218. package/storybook-static/assets/{ODataTreeMultiSelect-MA-QJUsB.js → ODataTreeMultiSelect-qZEcSE5O.js} +1 -1
  219. package/storybook-static/assets/{ODataTreeMultiSelect.stories-YvpwnP4d.js → ODataTreeMultiSelect.stories-Bfees7Qr.js} +1 -1
  220. package/storybook-static/assets/{ODataTreeSelect-BCiiS3IK.js → ODataTreeSelect-IOVS6uQc.js} +1 -1
  221. package/storybook-static/assets/{ODataTreeSelect.stories-Dq1OhGC3.js → ODataTreeSelect.stories-CO7DClzd.js} +1 -1
  222. package/storybook-static/assets/{OneStepScroller-im1C5gSg.js → OneStepScroller-B_IRz2Rw.js} +1 -1
  223. package/storybook-static/assets/{Option-Djau4Ddm.js → Option-fRoOLqLF.js} +1 -1
  224. package/storybook-static/assets/{OptionButton-B3XT6D5q.js → OptionButton--hnpJ-88.js} +1 -1
  225. package/storybook-static/assets/{PeriodSelect-Dr9dmlXS.js → PeriodSelect-BAVDztkI.js} +1 -1
  226. package/storybook-static/assets/{PeriodSelect-pOKCy0SB.js → PeriodSelect-D-jXJf5C.js} +1 -1
  227. package/storybook-static/assets/{PeriodSelect.stories-BTXlGHGk.js → PeriodSelect.stories-CscsENT9.js} +1 -1
  228. package/storybook-static/assets/{PickerField-Bu0d3-ft.js → PickerField-CRtltoce.js} +1 -1
  229. package/storybook-static/assets/{PickerTriggerActions-5-bZTrbi.js → PickerTriggerActions-BDGEQPvP.js} +1 -1
  230. package/storybook-static/assets/{Popover-CbYmPjQB.js → Popover-BYO0DlBg.js} +1 -1
  231. package/storybook-static/assets/{Popover-C0MAHY8E.js → Popover-Byy9_Twt.js} +1 -1
  232. package/storybook-static/assets/{Popover.stories-CNGXHwxk.js → Popover.stories-8RhemIQg.js} +1 -1
  233. package/storybook-static/assets/{PresetRangeDateInput-IyUkzhsJ.js → PresetRangeDateInput-CVPMYlEV.js} +1 -1
  234. package/storybook-static/assets/{PresetRangeDateInput-Do940cTR.js → PresetRangeDateInput-VZnM8RNV.js} +1 -1
  235. package/storybook-static/assets/{PresetRangeDateInput.stories-DAIMF_Y5.js → PresetRangeDateInput.stories-DdBWlSV-.js} +1 -1
  236. package/storybook-static/assets/{PresetSelect-D65v9bUa.js → PresetSelect-C7YYBjlL.js} +1 -1
  237. package/storybook-static/assets/{README-CNeFWQp-.js → README-2NTkucdH.js} +1 -1
  238. package/storybook-static/assets/{README-BRRzrAiY.js → README-6XPUoxFl.js} +1 -1
  239. package/storybook-static/assets/{README-D9nuOSas.js → README-8L1vpZcz.js} +1 -1
  240. package/storybook-static/assets/{README-C81BgOtz.js → README-B0FbTpix.js} +1 -1
  241. package/storybook-static/assets/{README-CGIV17gX.js → README-B0Nb0jf2.js} +1 -1
  242. package/storybook-static/assets/{README-DB__g4Hv.js → README-BD-WSEvQ.js} +1 -1
  243. package/storybook-static/assets/{README-dz31ogQc.js → README-BGBxEe4u.js} +1 -1
  244. package/storybook-static/assets/{README-CmxyJW5E.js → README-BGmO6U9j.js} +1 -1
  245. package/storybook-static/assets/{README-C67zTaqC.js → README-BL8ZNGNi.js} +1 -1
  246. package/storybook-static/assets/{README-DnHSfSZk.js → README-BZlnzGAh.js} +1 -1
  247. package/storybook-static/assets/{README-CnZGcW7V.js → README-BdsFByUw.js} +1 -1
  248. package/storybook-static/assets/{README-D7cjSdE3.js → README-Bk1oSDWQ.js} +1 -1
  249. package/storybook-static/assets/{README-BC_Nb6Pt.js → README-Brn9Tjjc.js} +1 -1
  250. package/storybook-static/assets/{README-DilodlZ3.js → README-Bvo0Qxde.js} +1 -1
  251. package/storybook-static/assets/{README-Bx2ruIF7.js → README-C-IUw1gX.js} +1 -1
  252. package/storybook-static/assets/{README-BbD3YcYe.js → README-C7N5_6-c.js} +1 -1
  253. package/storybook-static/assets/{README-DIMFSBIs.js → README-CB5BpIBF.js} +1 -1
  254. package/storybook-static/assets/{README-zpjWO9SA.js → README-CTF9mVZL.js} +1 -1
  255. package/storybook-static/assets/{README-DENJbcin.js → README-CTwfFqJG.js} +1 -1
  256. package/storybook-static/assets/{README-CuV27eXd.js → README-C_lKreF9.js} +1 -1
  257. package/storybook-static/assets/{README-bnDO0VvU.js → README-CeNQeTK-.js} +1 -1
  258. package/storybook-static/assets/{README-DzYVtS48.js → README-CqiNQGIJ.js} +1 -1
  259. package/storybook-static/assets/{README-BdXitC-v.js → README-CvaizZr1.js} +1 -1
  260. package/storybook-static/assets/{README-0DfYx1x8.js → README-D2AT2-yD.js} +1 -1
  261. package/storybook-static/assets/{README-BRfiEuJl.js → README-DADnaXLy.js} +1 -1
  262. package/storybook-static/assets/{README-Bqi9zL_3.js → README-DC0vNdOD.js} +1 -1
  263. package/storybook-static/assets/{README-CTHg-0Gf.js → README-DIWsYBR7.js} +1 -1
  264. package/storybook-static/assets/{README-CMDYHiZ0.js → README-DMwF_O1R.js} +1 -1
  265. package/storybook-static/assets/{README-kmbY5Eb6.js → README-DOBIWrus.js} +1 -1
  266. package/storybook-static/assets/{README-BJH7K07w.js → README-DOi6rx7n.js} +1 -1
  267. package/storybook-static/assets/{README-B1OZSJPW.js → README-DWzfTSuq.js} +1 -1
  268. package/storybook-static/assets/{README-DF7917zn.js → README-DgXAMdBY.js} +1 -1
  269. package/storybook-static/assets/{README-0zD_mpK7.js → README-DkBG5Azm.js} +1 -1
  270. package/storybook-static/assets/{README-D9F11ksa.js → README-DlfWWC7n.js} +1 -1
  271. package/storybook-static/assets/{README-BOuI52h7.js → README-Dm7CwuVP.js} +1 -1
  272. package/storybook-static/assets/{README-DGEDdKV9.js → README-Dmu5lsNT.js} +1 -1
  273. package/storybook-static/assets/{README-B0Ei6BRU.js → README-DoxVtmRh.js} +1 -1
  274. package/storybook-static/assets/{README-D-EI5fho.js → README-Dr8TxFTe.js} +1 -1
  275. package/storybook-static/assets/{README-QT9W28h_.js → README-DrTR5pSr.js} +1 -1
  276. package/storybook-static/assets/{README-CPkK5x0m.js → README-DyWhmOFY.js} +1 -1
  277. package/storybook-static/assets/{README-Cw9Zfftr.js → README-GChrAHFQ.js} +1 -1
  278. package/storybook-static/assets/{README-BRLYOV1b.js → README-HWuoKwKL.js} +1 -1
  279. package/storybook-static/assets/{README-CkuXmfz0.js → README-UcyyK9jn.js} +1 -1
  280. package/storybook-static/assets/{README-UGL0ffZV.js → README-Wli4AXG5.js} +1 -1
  281. package/storybook-static/assets/{README-BlU-_6sl.js → README-ZxRwqfIH.js} +1 -1
  282. package/storybook-static/assets/{README-Dst0aWPQ.js → README-_KzyG4dS.js} +1 -1
  283. package/storybook-static/assets/{README-B_UsoB-1.js → README-b3wA6wFr.js} +1 -1
  284. package/storybook-static/assets/{README-CHuQw2Qi.js → README-g1VWHzAJ.js} +1 -1
  285. package/storybook-static/assets/{README-D8XXY0zG.js → README-jQcGKqqm.js} +1 -1
  286. package/storybook-static/assets/{README-CTQstqqQ.js → README-jvtwVY_n.js} +1 -1
  287. package/storybook-static/assets/{README-CI191Srw.js → README-na5mQX4V.js} +1 -1
  288. package/storybook-static/assets/{README-BZVyxsw_.js → README-oKLTQYfV.js} +1 -1
  289. package/storybook-static/assets/{README-gvzAURNC.js → README-w9FMhq0X.js} +1 -1
  290. package/storybook-static/assets/{RadioButton-CGoc9W4C.js → RadioButton-DMn-soQD.js} +1 -1
  291. package/storybook-static/assets/{RadioButton-oNRpIXOV.js → RadioButton-Dgkz1EWU.js} +1 -1
  292. package/storybook-static/assets/{RadioButton.stories-Jp8MuGg3.js → RadioButton.stories-DO14jTfm.js} +1 -1
  293. package/storybook-static/assets/{RadioGroup-Bd_jzY95.js → RadioGroup-BSiqjVai.js} +1 -1
  294. package/storybook-static/assets/{RadioGroup-D5LTKyRY.js → RadioGroup-Db0AhiKo.js} +1 -1
  295. package/storybook-static/assets/{RadioGroup.stories-BVu05x_P.js → RadioGroup.stories-C0D6n83q.js} +1 -1
  296. package/storybook-static/assets/{Scrollable-B_XGYKTj.js → Scrollable-BI3OE8gc.js} +1 -1
  297. package/storybook-static/assets/{Select-YeZ4L1bU.js → Select-1MNiFkxm.js} +1 -1
  298. package/storybook-static/assets/{Select-rjczNFii.js → Select-D8X-SkP2.js} +1 -1
  299. package/storybook-static/assets/{Select.stories-Bmu1mJu_.js → Select.stories-8_zvonmc.js} +1 -1
  300. package/storybook-static/assets/{SerializableSelect-ByLziMgM.js → SerializableSelect-ii6T140l.js} +1 -1
  301. package/storybook-static/assets/{SerializableSelect.stories-JlopYf0t.js → SerializableSelect.stories-Ba3ABMGt.js} +1 -1
  302. package/storybook-static/assets/{ShimmerText-CRfaFnl1.js → ShimmerText-C6vkZwUV.js} +1 -1
  303. package/storybook-static/assets/{ShimmerText.stories-BAxJ2D6b.js → ShimmerText.stories-CVpSxXHJ.js} +1 -1
  304. package/storybook-static/assets/{SingleDateTimeInput-Cl4NshG1.js → SingleDateTimeInput-96-mrjq8.js} +1 -1
  305. package/storybook-static/assets/{SingleDateTimeInput-Dr1LEvZ1.js → SingleDateTimeInput-DpETPR89.js} +1 -1
  306. package/storybook-static/assets/{SingleDateTimeInput.stories-_hmTygtJ.js → SingleDateTimeInput.stories-JhviurJO.js} +1 -1
  307. package/storybook-static/assets/{Slider-Du-vgdLs.js → Slider-B27TdvRV.js} +1 -1
  308. package/storybook-static/assets/{Slider-Bb19a7Lr.js → Slider-DbiDvmoV.js} +1 -1
  309. package/storybook-static/assets/{Slider.stories-w_4Lm5ja.js → Slider.stories-d1YeKe5r.js} +1 -1
  310. package/storybook-static/assets/{SliderInput-Lz8YGmmc.js → SliderInput-CzYn9gor.js} +1 -1
  311. package/storybook-static/assets/{SliderInput-sQbNVUtf.js → SliderInput-D2d23mEI.js} +1 -1
  312. package/storybook-static/assets/{SliderInput.stories-Bg7Uzt-r.js → SliderInput.stories-CwqT79oE.js} +1 -1
  313. package/storybook-static/assets/{Sortable-l-Qm6fkT.js → Sortable-DiJuiI6V.js} +1 -1
  314. package/storybook-static/assets/{Sortable.stories-Cf85BSwF.js → Sortable.stories-DFCzTok0.js} +1 -1
  315. package/storybook-static/assets/{Splitter-D9n2NIVi.js → Splitter-QwdfWNbm.js} +1 -1
  316. package/storybook-static/assets/{Splitter.stories-BOPn876G.js → Splitter.stories-C2iDPz8c.js} +1 -1
  317. package/storybook-static/assets/{StateSelect-B2mel1Gs.js → StateSelect-Bw9H1Cus.js} +1 -1
  318. package/storybook-static/assets/{StateSelect-DHXDlB2j.js → StateSelect-D1ZDM6bC.js} +1 -1
  319. package/storybook-static/assets/{StateSelect.stories-DDvGGDOC.js → StateSelect.stories-DEFvQ15O.js} +1 -1
  320. package/storybook-static/assets/{StatusIndicator-B5Gaj4GM.js → StatusIndicator-D6Pbdz37.js} +1 -1
  321. package/storybook-static/assets/{StatusIndicator.stories-BhtR4Hq-.js → StatusIndicator.stories-COgpy5cK.js} +1 -1
  322. package/storybook-static/assets/{StringToggle.stories-uP0F4aSw.js → StringToggle.stories-BFwMh0Yd.js} +1 -1
  323. package/storybook-static/assets/{Switch-CAXoT6wR.js → Switch-Bmj2AItH.js} +1 -1
  324. package/storybook-static/assets/{Switch-HQRPpBm8.js → Switch-DyDk152g.js} +1 -1
  325. package/storybook-static/assets/{Switch.stories-BFiVpNyQ.js → Switch.stories-C10NxPL4.js} +1 -1
  326. package/storybook-static/assets/{Table-6SgVFSck.js → Table-YcEwF4aO.js} +1 -1
  327. package/storybook-static/assets/{Table.stories-CPqSL_ou.js → Table.stories-DgxFS9Sa.js} +1 -1
  328. package/storybook-static/assets/{TableEditor.stories-DTRZRRwP.js → TableEditor.stories-CSMoxO4O.js} +1 -1
  329. package/storybook-static/assets/{Tabs-Dax2siiY.js → Tabs-DOsPN2X1.js} +1 -1
  330. package/storybook-static/assets/{Tabs.stories-DfBmhXDe.js → Tabs.stories-BdZilcp2.js} +1 -1
  331. package/storybook-static/assets/{TabsBox-qxjvoJVK.js → TabsBox-Ovukgo9G.js} +1 -1
  332. package/storybook-static/assets/{TagInput-CsxMyCrG.js → TagInput-BQBOGr9G.js} +1 -1
  333. package/storybook-static/assets/{TagInput.stories-DqbzT-v0.js → TagInput.stories-DAAyJlgm.js} +1 -1
  334. package/storybook-static/assets/{Text-BsN-PQCV.js → Text-fdwuak_J.js} +1 -1
  335. package/storybook-static/assets/{Textarea-BjuUbYsT.js → Textarea-A22Efyk-.js} +1 -1
  336. package/storybook-static/assets/{Textarea-CpmzCUxv.js → Textarea-D80ZPpEy.js} +1 -1
  337. package/storybook-static/assets/{Textarea.stories-CuD6DgcU.js → Textarea.stories-DfaOYMoN.js} +1 -1
  338. package/storybook-static/assets/{TimePanel-CSSXwKRa.js → TimePanel-Bd5T_SfL.js} +1 -1
  339. package/storybook-static/assets/{TimePanel.stories-BMCRRMRa.js → TimePanel.stories-D6TIpKp4.js} +1 -1
  340. package/storybook-static/assets/{Toggle-8kcwuNdV.js → Toggle-BvHMq6f_.js} +1 -1
  341. package/storybook-static/assets/{Toggle-rgYYwuhK.js → Toggle-DUyCRH0o.js} +1 -1
  342. package/storybook-static/assets/{Toggle.stories-DwfF0YoD.js → Toggle.stories-ZPgC-EWw.js} +1 -1
  343. package/storybook-static/assets/{TreeMultiSelect-By8L-bm6.js → TreeMultiSelect-DTMybWfP.js} +1 -1
  344. package/storybook-static/assets/{TreeMultiSelect-BoERAVM0.js → TreeMultiSelect-DTmB9s8s.js} +1 -1
  345. package/storybook-static/assets/{TreeMultiSelect.stories-C3jtxDZI.js → TreeMultiSelect.stories-1_HB74Gf.js} +1 -1
  346. package/storybook-static/assets/{TreePickerBase-DBrjX-bi.js → TreePickerBase-Cu2mneBS.js} +1 -1
  347. package/storybook-static/assets/{TreeSelect-CaNARWLc.js → TreeSelect-CTN6cRRr.js} +1 -1
  348. package/storybook-static/assets/{TreeSelect-vsrnMOeK.js → TreeSelect-UsZGYhUO.js} +1 -1
  349. package/storybook-static/assets/{TreeSelect.stories-BOK-ieA_.js → TreeSelect.stories-B01pZcR9.js} +1 -1
  350. package/storybook-static/assets/{TreeTable-Zvy1Vc8r.js → TreeTable-dr3jK3Ih.js} +1 -1
  351. package/storybook-static/assets/{TreeTable.stories-CKGMANAc.js → TreeTable.stories-B1DPasDc.js} +1 -1
  352. package/storybook-static/assets/{blocks-XON_dw_i.js → blocks-Cw5Dm88b.js} +3 -3
  353. package/storybook-static/assets/{check-R50Hqsjh.js → check-028VTQ8f.js} +1 -1
  354. package/storybook-static/assets/{chevron-down-D2lWkc4k.js → chevron-down-CjXVIhzi.js} +1 -1
  355. package/storybook-static/assets/{chevron-left-DFO06R_I.js → chevron-left-CktI1oFP.js} +1 -1
  356. package/storybook-static/assets/{chevron-right-DYpO1E4w.js → chevron-right-CF10QSRI.js} +1 -1
  357. package/storybook-static/assets/{chunk-W22LQPXL-DgsU6Ho0.js → chunk-W22LQPXL-C0ehDnCq.js} +1 -1
  358. package/storybook-static/assets/{circle-alert-C99j_qdy.js → circle-alert-s0HpHvQO.js} +1 -1
  359. package/storybook-static/assets/{circle-check-BVoaTMGo.js → circle-check-C7Lv1fv9.js} +1 -1
  360. package/storybook-static/assets/{components-D2acFX9a.js → components-ClxgOUq5.js} +3 -3
  361. package/storybook-static/assets/{contextMenu-Rc4xafWY.js → contextMenu-CWGju9qn.js} +1 -1
  362. package/storybook-static/assets/{download-FS-653X-.js → download-B1U5w3LU.js} +1 -1
  363. package/storybook-static/assets/{floating-ui.react-9uiNDESW.js → floating-ui.react-CyNWkXBV.js} +1 -1
  364. package/storybook-static/assets/{foundationApi-hwTxo_aQ.js → foundationApi-CY0sxk8w.js} +1 -1
  365. package/storybook-static/assets/{foundationLib-CdF_K0ss.js → foundationLib-BCpSUA25.js} +1 -1
  366. package/storybook-static/assets/{hooks-BktG1SJq.js → hooks-DjR-EyBl.js} +1 -1
  367. package/storybook-static/assets/iframe-Dyd6jnSv.js +1 -0
  368. package/storybook-static/assets/{iframe-CmDE2WzV.js → iframe-woVbsQH3.js} +3 -3
  369. package/storybook-static/assets/{info-aj3qk4-6.js → info-DKbXBIbQ.js} +1 -1
  370. package/storybook-static/assets/{odata-tQdKpZ8d.js → odata-CMCuN2Rx.js} +1 -1
  371. package/storybook-static/assets/{odataStoryFixtures-Bpcqh4OD.js → odataStoryFixtures-a4Q2PLas.js} +1 -1
  372. package/storybook-static/assets/{react-Ci0XWusa.js → react-D3CyilRt.js} +1 -1
  373. package/storybook-static/assets/{refresh-cw-TDE_PN6T.js → refresh-cw-DXEJelAO.js} +1 -1
  374. package/storybook-static/assets/{settings-2-AgUmNDAs.js → settings-2-CKbiQBX8.js} +1 -1
  375. package/storybook-static/assets/{sortable-ULpdqocx.js → sortable-CXLU2ip-.js} +1 -1
  376. package/storybook-static/assets/{syntaxhighlighter-QEQV7K2Y-Cu4u_nrx.js → syntaxhighlighter-QEQV7K2Y-CLptde2b.js} +1 -1
  377. package/storybook-static/assets/{trash-2-CRAL6xvg.js → trash-2-CPWRIQlJ.js} +1 -1
  378. package/storybook-static/assets/{triangle-alert-D_BUPWKQ.js → triangle-alert-XjzWCHp5.js} +1 -1
  379. package/storybook-static/assets/{ui-Dn5es0s1.css → ui-FA-1R8mO.css} +1 -1
  380. package/storybook-static/assets/{uiClasses-BxxhVVa_.js → uiClasses-DNnVkKPr.js} +1 -1
  381. package/storybook-static/assets/{useODataSelectBase-2vllyrJj.js → useODataSelectBase-ZGFa3pdT.js} +1 -1
  382. package/storybook-static/assets/{useODataTreeData-BZegXh8a.js → useODataTreeData-DAdLowou.js} +1 -1
  383. package/storybook-static/assets/{usePickerQuery-DWBa3-2z.js → usePickerQuery-CaO8hXyH.js} +1 -1
  384. package/storybook-static/assets/{usePickerTriggerController-Co3rQjwS.js → usePickerTriggerController-DWjrt_q_.js} +1 -1
  385. package/storybook-static/assets/{x-DHae85Ss.js → x-D2Q9PGsq.js} +1 -1
  386. package/storybook-static/iframe.html +2 -2
  387. package/storybook-static/project.json +1 -1
  388. package/dist/advanced-search/index.d.ts +0 -3
  389. package/dist/advanced-search/index.d.ts.map +0 -1
  390. package/dist/advanced-search/index.js +0 -399
  391. package/dist/advanced-search/index.js.map +0 -1
  392. package/dist/advanced-search/lib/index.d.ts +0 -2
  393. package/dist/advanced-search/lib/index.d.ts.map +0 -1
  394. package/dist/advanced-search/lib/searchParts.d.ts +0 -3
  395. package/dist/advanced-search/lib/searchParts.d.ts.map +0 -1
  396. package/dist/advanced-search/model/index.d.ts +0 -5
  397. package/dist/advanced-search/model/index.d.ts.map +0 -1
  398. package/dist/advanced-search/model/types.d.ts +0 -55
  399. package/dist/advanced-search/model/types.d.ts.map +0 -1
  400. package/dist/advanced-search/model/useAdvancedSearch.d.ts +0 -11
  401. package/dist/advanced-search/model/useAdvancedSearch.d.ts.map +0 -1
  402. package/dist/advanced-search/model/useAdvancedSearchInitialSelected.d.ts +0 -6
  403. package/dist/advanced-search/model/useAdvancedSearchInitialSelected.d.ts.map +0 -1
  404. package/dist/advanced-search/model/useAdvancedSearchSelection.d.ts +0 -13
  405. package/dist/advanced-search/model/useAdvancedSearchSelection.d.ts.map +0 -1
  406. package/dist/advanced-search/ui/AdvancedSearchModal.d.ts +0 -23
  407. package/dist/advanced-search/ui/AdvancedSearchModal.d.ts.map +0 -1
  408. package/dist/advanced-search/ui/AdvancedSearchModalSession.d.ts +0 -16
  409. package/dist/advanced-search/ui/AdvancedSearchModalSession.d.ts.map +0 -1
  410. package/dist/advanced-search/ui/AdvancedSearchSelect.d.ts +0 -9
  411. package/dist/advanced-search/ui/AdvancedSearchSelect.d.ts.map +0 -1
  412. package/dist/advanced-search/ui/AdvancedSearchSelectUI.d.ts +0 -9
  413. package/dist/advanced-search/ui/AdvancedSearchSelectUI.d.ts.map +0 -1
  414. package/dist/advanced-search/ui/index.d.ts +0 -2
  415. package/dist/advanced-search/ui/index.d.ts.map +0 -1
  416. package/dist/chunks/badge-6mXO9BWP.js +0 -65
  417. package/dist/chunks/badge-6mXO9BWP.js.map +0 -1
  418. package/dist/chunks/input-search-Cat4c7SM.js +0 -30
  419. package/dist/chunks/input-search-Cat4c7SM.js.map +0 -1
  420. package/dist/chunks/multi-select-BZ9N6Dal.js +0 -466
  421. package/dist/chunks/multi-select-BZ9N6Dal.js.map +0 -1
  422. package/dist/chunks/popover-Bne-Ljbs.js +0 -245
  423. package/dist/chunks/radio-group-sSnlYjAX.js +0 -125
  424. package/dist/chunks/select-aTGupQan.js +0 -363
  425. package/storybook-static/assets/iframe-B54uejyY.js +0 -1
  426. /package/storybook-static/assets/{ui.module-BpXamlVr.js → ui.module-CyEEibCu.js} +0 -0
@@ -1,399 +0,0 @@
1
- import { t as e } from "../chunks/ui.module-oRwY3Zli.js";
2
- import { n as t } from "../chunks/button-DF21yxVp.js";
3
- import { c as n, g as r, h as i } from "../chunks/misc-DeGboAt-.js";
4
- import { o as a } from "../chunks/flex-C7njxZ74.js";
5
- import { r as o } from "../chunks/grid-dI94AAbi.js";
6
- import { a as s, i as c, n as l, r as u } from "../chunks/modal-dplfAaER.js";
7
- import { n as d, t as f } from "../chunks/badge-6mXO9BWP.js";
8
- import { d as p, f as m } from "../chunks/input-DSPKgiCK.js";
9
- import { t as h } from "../chunks/input-search-Cat4c7SM.js";
10
- import { n as g } from "../chunks/multi-select-BZ9N6Dal.js";
11
- import { t as _ } from "../chunks/table-DxoSOvQK.js";
12
- import { useCallback as v, useMemo as y, useState as b } from "react";
13
- import { odataQueryFn as x, useODataTableColumns as S } from "@ryuzaki13/react-foundation-api/odata";
14
- import { createFilterContains as C, createFilterEqual as w, unwrapODataQueryResult as T } from "@ryuzaki13/react-foundation-lib/odata-service";
15
- import { useInfiniteQuery as E, useQuery as D } from "@tanstack/react-query";
16
- import { cn as O, stableStringify as k } from "@ryuzaki13/react-foundation-lib/utils";
17
- import { Fragment as A, jsx as j, jsxs as M } from "react/jsx-runtime";
18
- import { ChevronRightIcon as N, XIcon as P } from "lucide-react";
19
- //#region src/advanced-search/lib/searchParts.ts
20
- function F(e) {
21
- let t = e.trim();
22
- return t ? t.split("*").map((e) => e.trim()).filter((e) => e.length) : [];
23
- }
24
- function I(e, t, n) {
25
- let r = t.map((e) => e.toLowerCase());
26
- return e.filter((e) => {
27
- for (let t of n) {
28
- let n = String(e[t] || "").toLowerCase(), i = 0, a = !0;
29
- for (let e of r) {
30
- let t = n.indexOf(e, i);
31
- if (t === -1) {
32
- a = !1;
33
- break;
34
- }
35
- i = t + e.length;
36
- }
37
- if (a) return !0;
38
- }
39
- return !1;
40
- });
41
- }
42
- //#endregion
43
- //#region src/advanced-search/model/useAdvancedSearch.ts
44
- var L = 50;
45
- function R(e) {
46
- let [t, n] = b(""), [r, i] = b(() => Object.keys(e.segments ?? {}).reduce((e, t) => (e[t] = [], e), {})), a = F(t), o = a.length > 1, s = o ? 5e3 : L, c = E({
47
- queryKey: [
48
- "search",
49
- e.odata.service,
50
- e.odata.target,
51
- r,
52
- t
53
- ],
54
- queryFn: async ({ pageParam: t = 0, signal: n, client: i }) => {
55
- let c = e.columns.map((e) => e.key), l = await x({
56
- odata: {
57
- service: e.odata.service,
58
- target: e.odata.target
59
- },
60
- options: {
61
- top: s,
62
- skip: t,
63
- select: c,
64
- expression: {
65
- and: !0,
66
- filters: [{ filters: a ? e.searchKeys.map((e) => ({ filters: a.map((t) => C(e, t)) })) : [] }, {
67
- and: !0,
68
- filters: Object.keys(r).map((e) => w(e, r[e]))
69
- }]
70
- },
71
- sorts: [{ key: e.leadingKey }]
72
- }
73
- })({
74
- signal: n,
75
- client: i
76
- });
77
- return o ? I(l.data, a, e.searchKeys) : l.data;
78
- },
79
- getNextPageParam: (e, t) => {
80
- if (!(e.length < s)) return t.length * s;
81
- },
82
- initialPageParam: 0
83
- }), l = v((e) => {
84
- n(e);
85
- }, []), u = v(() => {
86
- n("");
87
- }, []);
88
- return {
89
- query: c,
90
- items: y(() => c.data?.pages.flatMap((e) => e) ?? [], [c.data?.pages]),
91
- searchTerm: t,
92
- setSearch: l,
93
- clearSearch: u,
94
- filters: r,
95
- setFilters: i
96
- };
97
- }
98
- //#endregion
99
- //#region src/advanced-search/model/useAdvancedSearchInitialSelected.ts
100
- function z(e, t = []) {
101
- let n = D({
102
- queryKey: [
103
- "searchSelected",
104
- e.odata.service,
105
- e.odata.target,
106
- t
107
- ],
108
- queryFn: async ({ client: n, signal: r }) => {
109
- if (t.length === 0) return {
110
- data: [],
111
- totalCount: void 0
112
- };
113
- let i = e.columns.map((e) => e.key);
114
- return await x({
115
- odata: {
116
- service: e.odata.service,
117
- target: e.odata.target
118
- },
119
- options: {
120
- select: i,
121
- expression: { filters: t.map((t) => w(e.leadingKey, t)) }
122
- }
123
- })({
124
- client: n,
125
- signal: r
126
- });
127
- },
128
- enabled: t.length > 0
129
- });
130
- return T(n);
131
- }
132
- //#endregion
133
- //#region src/advanced-search/model/useAdvancedSearchSelection.ts
134
- function B(e, t) {
135
- let n = /* @__PURE__ */ new Map();
136
- for (let r of e) n.set(String(r[t]), r);
137
- return Array.from(n.values());
138
- }
139
- function V(e, t = []) {
140
- let [n, r] = b(() => B(t, e.leadingKey)), i = v((t, n) => {
141
- if (t.length !== n.length) return !1;
142
- let r = new Set(n.map((t) => String(t[e.leadingKey])));
143
- return t.every((t) => r.has(String(t[e.leadingKey])));
144
- }, [e.leadingKey]), a = v((t) => {
145
- r((n) => {
146
- let r = B(t, e.leadingKey);
147
- return i(n, r) ? n : r;
148
- });
149
- }, [i, e.leadingKey]);
150
- return {
151
- selectedItems: n,
152
- select: v((t) => {
153
- r((n) => n.some((n) => n[e.leadingKey] === t[e.leadingKey]) ? n : [...n, t]);
154
- }, [e.leadingKey]),
155
- deselect: v((t) => {
156
- r((n) => n.filter((n) => n[e.leadingKey] !== t));
157
- }, [e.leadingKey]),
158
- replaceSelection: a,
159
- clearSelection: v(() => {
160
- r([]);
161
- }, []),
162
- isSelected: v((t) => n.some((n) => n[e.leadingKey] === t), [e.leadingKey, n])
163
- };
164
- }
165
- //#endregion
166
- //#region src/advanced-search/ui/AdvancedSearchModalSession.tsx
167
- function H({ onClose: e, onItemsSelect: r, title: i, config: p, initialSelectedItems: m }) {
168
- let b = y(() => p.columns.map((e) => ({
169
- id: e.key,
170
- accessorKey: e.key,
171
- header: e.label,
172
- meta: { width: e.width || "auto" }
173
- })), [p.columns]), { columns: x, isLoading: C } = S({
174
- service: p.odata.service,
175
- target: p.odata.target,
176
- mode: "enrich",
177
- columns: b
178
- }), { query: w, items: T, searchTerm: E, setSearch: D, clearSearch: O, filters: k, setFilters: A } = R(p), { selectedItems: N, deselect: P, replaceSelection: F } = V(p, m), I = v((e) => String(e[p.leadingKey]), [p.leadingKey]), L = y(() => N.map((e) => String(e[p.leadingKey])), [N, p.leadingKey]), z = y(() => new Set(T.map((e) => String(e[p.leadingKey]))), [T, p.leadingKey]), B = v(() => {
179
- w.hasNextPage && !w.isFetchingNextPage && w.fetchNextPage();
180
- }, [w]), H = v((e) => {
181
- let t = new Set(e.map((e) => String(e[p.leadingKey]))), n = N.filter((e) => !z.has(String(e[p.leadingKey]))), r = T.filter((e) => t.has(String(e[p.leadingKey])));
182
- F([...n, ...r]);
183
- }, [
184
- p.leadingKey,
185
- T,
186
- F,
187
- N,
188
- z
189
- ]), U = v((e) => {
190
- P(String(e[p.leadingKey]));
191
- }, [p.leadingKey, P]), W = v(() => {
192
- r(N), e();
193
- }, [
194
- N,
195
- r,
196
- e
197
- ]), G = y(() => {
198
- if ("segments" in p && p.segments) {
199
- let e = Object.keys(p.segments);
200
- if (e.length) return {
201
- odata: {
202
- ...p.odata,
203
- limitedKeys: e
204
- },
205
- segments: p.segments,
206
- model: p.model
207
- };
208
- }
209
- }, [p]);
210
- return /* @__PURE__ */ M(l, {
211
- isOpen: !0,
212
- onClose: e,
213
- title: i || p.title,
214
- size: "lg",
215
- height: "min(50em, 80dvh)",
216
- children: [
217
- /* @__PURE__ */ j(s, { children: /* @__PURE__ */ M(a, {
218
- gap: "sm",
219
- children: [G && /* @__PURE__ */ j(g, {
220
- odata: G.odata,
221
- segments: G.segments,
222
- model: G.model,
223
- values: k,
224
- onChange: A
225
- }), /* @__PURE__ */ j(h, {
226
- size: "md",
227
- placeholder: p.searchLabel ?? "Введите поисковый запрос",
228
- value: E,
229
- onChange: D,
230
- onClear: O,
231
- className: "flexGrow"
232
- })]
233
- }) }),
234
- /* @__PURE__ */ j(u, { children: /* @__PURE__ */ M(o, {
235
- gap: "md",
236
- templateRows: "1fr auto",
237
- className: "h100",
238
- children: [/* @__PURE__ */ j(_, {
239
- columns: x,
240
- data: T,
241
- selectionMode: "multi",
242
- selectedRowIds: L,
243
- getRowId: I,
244
- isLoading: w.isLoading || C,
245
- isFetching: w.isFetching,
246
- onRowSelectionChange: H,
247
- onReachEnd: B,
248
- className: "w100"
249
- }), /* @__PURE__ */ j("div", {
250
- className: "marginBlockMd border",
251
- children: /* @__PURE__ */ j(n, {
252
- className: "paddingSm",
253
- height: "6em",
254
- children: /* @__PURE__ */ j(f, { children: N.map((e) => /* @__PURE__ */ j(d, {
255
- size: "md",
256
- tone: "info",
257
- appearance: "outline",
258
- onRemove: () => U(e),
259
- children: p.leadingText && e[p.leadingText] || e[p.leadingKey]
260
- }, e[p.leadingKey])) })
261
- })
262
- })]
263
- }) }),
264
- /* @__PURE__ */ M(c, { children: [/* @__PURE__ */ j(t, {
265
- onClick: e,
266
- children: "Отмена"
267
- }), /* @__PURE__ */ j(t, {
268
- variant: "successOutline",
269
- onClick: W,
270
- children: "Выбрать"
271
- })] })
272
- ]
273
- });
274
- }
275
- //#endregion
276
- //#region src/advanced-search/ui/AdvancedSearchModal.tsx
277
- function U(e, t) {
278
- return k({
279
- leadingKey: String(e.leadingKey),
280
- service: e.odata.service,
281
- target: e.odata.target,
282
- selectedIds: t.map((t) => String(t[e.leadingKey])).sort()
283
- });
284
- }
285
- function W({ onClose: e, onItemsSelect: n, initialSelection: a, title: o, config: s }) {
286
- return a.status === "ready" ? /* @__PURE__ */ j(H, {
287
- title: o,
288
- config: s,
289
- onClose: e,
290
- onItemsSelect: n,
291
- initialSelectedItems: a.items
292
- }, U(s, a.items)) : /* @__PURE__ */ M(l, {
293
- isOpen: !0,
294
- onClose: e,
295
- title: o || s.title,
296
- size: "lg",
297
- height: "min(50em, 80dvh)",
298
- children: [/* @__PURE__ */ j(u, { children: a.status === "loading" ? /* @__PURE__ */ j(i, { text: "Загружаем выбранные элементы..." }) : /* @__PURE__ */ j(r, {
299
- color: "error",
300
- children: "Не удалось загрузить выбранные элементы"
301
- }) }), /* @__PURE__ */ j(c, { children: /* @__PURE__ */ j(t, {
302
- onClick: e,
303
- children: "Закрыть"
304
- }) })]
305
- });
306
- }
307
- //#endregion
308
- //#region src/advanced-search/ui/AdvancedSearchSelectUI.tsx
309
- var G = ({ label: t, description: n, disabled: r, size: i, placeholder: o = "Выбрать", token: s, onOpen: c, onClear: l }) => {
310
- let { controlId: u, labelId: d, descriptionId: f } = p({
311
- hasLabel: t != null,
312
- hasDescription: !!n
313
- }), h = !!s;
314
- return /* @__PURE__ */ M("div", {
315
- "aria-disabled": r || void 0,
316
- className: O(e.uiElement, e.uiSizable, i && e[i]),
317
- children: [
318
- t && /* @__PURE__ */ j("label", {
319
- id: d,
320
- htmlFor: u,
321
- className: e.uiLabel,
322
- children: t
323
- }),
324
- n && /* @__PURE__ */ j("p", {
325
- id: f,
326
- className: e.uiDescription,
327
- children: n
328
- }),
329
- /* @__PURE__ */ M("div", {
330
- className: e.uiInputContainer,
331
- children: [/* @__PURE__ */ j("div", {
332
- className: e.uiInputWithToggle,
333
- children: !h && /* @__PURE__ */ j(a, {
334
- align: "center",
335
- className: "h100",
336
- children: /* @__PURE__ */ j("div", {
337
- className: e.uiPlaceholder,
338
- children: o
339
- })
340
- })
341
- }), /* @__PURE__ */ j("div", {
342
- className: m.controlEndAdornment,
343
- children: /* @__PURE__ */ M("div", {
344
- className: e.uiToggleButtonContainer,
345
- children: [
346
- /* @__PURE__ */ j("div", {
347
- className: "flexEllipsis fontSizeSm",
348
- style: { maxWidth: "100%" },
349
- children: s
350
- }),
351
- /* @__PURE__ */ j("button", {
352
- type: "button",
353
- disabled: !s,
354
- className: e.uiClearButton,
355
- onClick: l,
356
- "aria-label": "Очистить все",
357
- children: /* @__PURE__ */ j(P, {})
358
- }),
359
- /* @__PURE__ */ j("div", { className: e.uiButtonSeparator }),
360
- /* @__PURE__ */ j("button", {
361
- type: "button",
362
- onClick: c,
363
- className: e.uiToggleButton,
364
- children: /* @__PURE__ */ j(N, { className: e.uiToggleIcon })
365
- })
366
- ]
367
- })
368
- })]
369
- })
370
- ]
371
- });
372
- }, K = [];
373
- function q({ value: e = [], onChange: t, title: n, config: r, ...i }) {
374
- let [a, o] = b(!1), s = z(r, e), c = s.data, l = e.length === 0 ? {
375
- status: "ready",
376
- items: K
377
- } : c === void 0 ? s.isError ? { status: "error" } : { status: "loading" } : {
378
- status: "ready",
379
- items: c
380
- }, u = v(() => o(!0), []), d = v(() => o(!1), []), f = v(() => t([]), [t]), p = v((e) => t(e.map((e) => String(e[r.leadingKey]))), [r.leadingKey, t]), m = v((e) => {
381
- if (e?.length) return e.length > 1 ? `Выбрано ${e.length} элем.` : `${r.leadingText && e[0][r.leadingText] || e[0][r.leadingKey]}`;
382
- }, [r.leadingKey, r.leadingText]);
383
- return /* @__PURE__ */ M(A, { children: [/* @__PURE__ */ j(G, {
384
- ...i,
385
- token: m(c),
386
- onOpen: u,
387
- onClear: f
388
- }), a && /* @__PURE__ */ j(W, {
389
- title: n,
390
- config: r,
391
- onClose: d,
392
- onItemsSelect: p,
393
- initialSelection: l
394
- })] });
395
- }
396
- //#endregion
397
- export { q as AdvancedSearchSelect, R as useAdvancedSearch, z as useAdvancedSearchInitialSelected, V as useAdvancedSearchSelection };
398
-
399
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/advanced-search/lib/searchParts.ts","../../src/advanced-search/model/useAdvancedSearch.ts","../../src/advanced-search/model/useAdvancedSearchInitialSelected.ts","../../src/advanced-search/model/useAdvancedSearchSelection.ts","../../src/advanced-search/ui/AdvancedSearchModalSession.tsx","../../src/advanced-search/ui/AdvancedSearchModal.tsx","../../src/advanced-search/ui/AdvancedSearchSelectUI.tsx","../../src/advanced-search/ui/AdvancedSearchSelect.tsx"],"sourcesContent":["export function buildSearchParts(searchTerm: string) {\n\tconst term = searchTerm.trim();\n\tif (!term) {\n\t\treturn [];\n\t}\n\n\tconst searchParts = term\n\t\t.split(\"*\")\n\t\t.map((part) => part.trim())\n\t\t.filter((part) => part.length);\n\n\treturn searchParts;\n\n\t// const filterConditions = searchKeys.map((key) => {\n\t// \treturn searchParts.map((part) => `substringof('${part}',${String(key)})`).join(\" and \");\n\t// });\n\n\t// return `(${filterConditions.join(\" or \")})`;\n}\n\nexport function filterBySearchParts<T extends Record<string, string>>(items: T[], searchParts: string[], searchKeys: (keyof T)[]) {\n\tconst lowerSearchParts = searchParts.map((part) => part.toLowerCase());\n\n\treturn items.filter((item) => {\n\t\tfor (const key of searchKeys) {\n\t\t\tconst value = String(item[key] || \"\").toLowerCase();\n\n\t\t\tlet lastIndex = 0;\n\t\t\tlet allPartsFound = true;\n\n\t\t\t// Ищем каждую часть строго после предыдущей\n\t\t\tfor (const part of lowerSearchParts) {\n\t\t\t\tconst index = value.indexOf(part, lastIndex);\n\t\t\t\tif (index === -1) {\n\t\t\t\t\tallPartsFound = false;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tlastIndex = index + part.length; // следующая часть после найденной\n\t\t\t}\n\n\t\t\tif (allPartsFound) return true;\n\t\t}\n\t\treturn false;\n\t});\n\n\t// С регуляркой медленнее в 2-3 раза\n\n\t// // Паттерн: первая часть, затем любое количество символов, затем вторая часть\n\t// const searchPattern = searchParts.join(\".*?\");\n\t// const regExp = new RegExp(searchPattern, \"i\");\n\n\t// return items.filter((item) => {\n\t// \tfor (const key of searchKeys) {\n\t// \t\tif (regExp.test(item[key])) {\n\t// \t\t\treturn true;\n\t// \t\t}\n\t// \t}\n\t// \treturn false;\n\t// });\n}\n","import { useCallback, useMemo, useState } from \"react\";\n\nimport { odataQueryFn } from \"@ryuzaki13/react-foundation-api/odata\";\nimport { createFilterContains, createFilterEqual } from \"@ryuzaki13/react-foundation-lib/odata-service\";\nimport { useInfiniteQuery } from \"@tanstack/react-query\";\n\nimport { buildSearchParts, filterBySearchParts } from \"../lib\";\n\nimport { SearchConfig } from \"./types\";\n\nconst PAGE_SIZE = 50;\n\nexport function useAdvancedSearch<T extends Record<string, string>>(config: SearchConfig<T>) {\n\tconst [term, setTerm] = useState(\"\");\n\tconst [filters, setFilters] = useState<Record<string, string[]>>(() =>\n\t\tObject.keys(config.segments ?? {}).reduce(\n\t\t\t(acc, key) => {\n\t\t\t\tacc[key] = [];\n\t\t\t\treturn acc;\n\t\t\t},\n\t\t\t{} as Record<string, string[]>\n\t\t)\n\t);\n\n\tconst searchParts = buildSearchParts(term);\n\tconst isComplexSearch = searchParts.length > 1;\n\n\tconst top = isComplexSearch ? 5000 : PAGE_SIZE;\n\n\tconst query = useInfiniteQuery({\n\t\tqueryKey: [\"search\", config.odata.service, config.odata.target, filters, term],\n\t\tqueryFn: async ({ pageParam = 0, signal, client }) => {\n\t\t\tconst columnKeys = config.columns.map((col) => col.key);\n\n\t\t\tconst result = await odataQueryFn<T>({\n\t\t\t\todata: {\n\t\t\t\t\tservice: config.odata.service,\n\t\t\t\t\ttarget: config.odata.target\n\t\t\t\t},\n\t\t\t\toptions: {\n\t\t\t\t\ttop: top,\n\t\t\t\t\tskip: pageParam,\n\t\t\t\t\tselect: columnKeys,\n\t\t\t\t\texpression: {\n\t\t\t\t\t\tand: true,\n\t\t\t\t\t\tfilters: [\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tfilters: searchParts\n\t\t\t\t\t\t\t\t\t? config.searchKeys.map((key) => ({\n\t\t\t\t\t\t\t\t\t\t\tfilters: searchParts.map((part) => createFilterContains(key, part))\n\t\t\t\t\t\t\t\t\t\t}))\n\t\t\t\t\t\t\t\t\t: []\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\tand: true,\n\t\t\t\t\t\t\t\tfilters: Object.keys(filters).map((key) => createFilterEqual(key, filters[key]))\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t]\n\t\t\t\t\t},\n\t\t\t\t\tsorts: [{ key: config.leadingKey }]\n\t\t\t\t}\n\t\t\t})({ signal, client });\n\n\t\t\tif (isComplexSearch) {\n\t\t\t\treturn filterBySearchParts(result.data, searchParts, config.searchKeys);\n\t\t\t}\n\n\t\t\treturn result.data;\n\t\t},\n\t\tgetNextPageParam: (lastPage, allPages) => {\n\t\t\tif (lastPage.length < top) return undefined;\n\t\t\treturn allPages.length * top;\n\t\t},\n\t\tinitialPageParam: 0\n\t});\n\n\tconst search = useCallback((term: string) => {\n\t\tsetTerm(term);\n\t}, []);\n\n\tconst clearSearch = useCallback(() => {\n\t\tsetTerm(\"\");\n\t}, []);\n\n\tconst items = useMemo(() => {\n\t\treturn query.data?.pages.flatMap((page) => page) ?? [];\n\t}, [query.data?.pages]);\n\n\treturn {\n\t\tquery,\n\t\titems,\n\t\tsearchTerm: term,\n\t\tsetSearch: search,\n\t\tclearSearch,\n\t\tfilters,\n\t\tsetFilters\n\t};\n}\n","import { odataQueryFn } from \"@ryuzaki13/react-foundation-api/odata\";\nimport { createFilterEqual, unwrapODataQueryResult } from \"@ryuzaki13/react-foundation-lib/odata-service\";\nimport { useQuery } from \"@tanstack/react-query\";\n\nimport { SearchConfig } from \"./types\";\n\n/**\n * Хук для поиска клиентов с поддержкой бесконечной прокрутки через OData\n */\nexport function useAdvancedSearchInitialSelected<T extends Record<string, string>>(\n\tconfig: SearchConfig<T>,\n\tinitialSelectedKeys: string[] = []\n) {\n\tconst query = useQuery({\n\t\tqueryKey: [\"searchSelected\", config.odata.service, config.odata.target, initialSelectedKeys],\n\t\tqueryFn: async ({ client, signal }) => {\n\t\t\tif (initialSelectedKeys.length === 0) {\n\t\t\t\treturn { data: [] as T[], totalCount: undefined };\n\t\t\t}\n\n\t\t\t// Получаем ключи колонок для select параметра\n\t\t\tconst columnKeys = config.columns.map((col) => col.key);\n\n\t\t\t// Выполняем OData запрос\n\t\t\treturn await odataQueryFn<T>({\n\t\t\t\todata: { service: config.odata.service, target: config.odata.target },\n\t\t\t\toptions: {\n\t\t\t\t\tselect: columnKeys,\n\t\t\t\t\texpression: {\n\t\t\t\t\t\tfilters: initialSelectedKeys.map((key) => createFilterEqual(config.leadingKey, key))\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t})({ client, signal });\n\t\t},\n\t\tenabled: initialSelectedKeys.length > 0\n\t});\n\n\treturn unwrapODataQueryResult(query);\n}\n","import { useCallback, useState } from \"react\";\n\nimport { SearchConfig } from \"./types\";\n\n/**\n * Создаёт независимый набор выбора и сохраняет последнюю строку для каждого ведущего ключа.\n * Это единая структурная граница как для initial snapshot модалки, так и для дальнейших\n * обновлений выбора из таблицы.\n */\nfunction buildAdvancedSearchSelection<T extends Record<string, string>>(items: readonly T[], leadingKey: keyof T): T[] {\n\tconst selectionById = new Map<string, T>();\n\n\tfor (const item of items) {\n\t\tselectionById.set(String(item[leadingKey]), item);\n\t}\n\n\treturn Array.from(selectionById.values());\n}\n\n/**\n * Хук для управления выбором клиентов\n */\nexport function useAdvancedSearchSelection<T extends Record<string, string>>(\n\tconfig: SearchConfig<T>,\n\tinitialSelectedItems: readonly T[] = []\n) {\n\tconst [selectedItems, setSelectedItems] = useState<T[]>(() => buildAdvancedSearchSelection(initialSelectedItems, config.leadingKey));\n\n\t/**\n\t * Сравнивает наборы выбранных элементов по ведущему ключу без учёта порядка.\n\t */\n\tconst areSelectionsEqual = useCallback(\n\t\t(left: readonly T[], right: readonly T[]) => {\n\t\t\tif (left.length !== right.length) {\n\t\t\t\treturn false;\n\t\t\t}\n\n\t\t\tconst rightIds = new Set(right.map((item) => String(item[config.leadingKey])));\n\n\t\t\treturn left.every((item) => rightIds.has(String(item[config.leadingKey])));\n\t\t},\n\t\t[config.leadingKey]\n\t);\n\n\t/**\n\t * Нормализует новый набор выбора и удаляет дубликаты по ведущему ключу.\n\t */\n\tconst replaceSelection = useCallback(\n\t\t(nextItems: readonly T[]) => {\n\t\t\tsetSelectedItems((prev) => {\n\t\t\t\tconst normalizedItems = buildAdvancedSearchSelection(nextItems, config.leadingKey);\n\n\t\t\t\treturn areSelectionsEqual(prev, normalizedItems) ? prev : normalizedItems;\n\t\t\t});\n\t\t},\n\t\t[areSelectionsEqual, config.leadingKey]\n\t);\n\n\tconst select = useCallback(\n\t\t(item: T) => {\n\t\t\tsetSelectedItems((prev) => {\n\t\t\t\t// Проверяем, не выбран ли уже этот клиент\n\t\t\t\tif (prev.some((c) => c[config.leadingKey] === item[config.leadingKey])) {\n\t\t\t\t\treturn prev;\n\t\t\t\t}\n\t\t\t\treturn [...prev, item];\n\t\t\t});\n\t\t},\n\t\t[config.leadingKey]\n\t);\n\n\tconst deselect = useCallback(\n\t\t(id: string) => {\n\t\t\tsetSelectedItems((prev) => prev.filter((item) => item[config.leadingKey] !== id));\n\t\t},\n\t\t[config.leadingKey]\n\t);\n\n\tconst clearSelection = useCallback(() => {\n\t\tsetSelectedItems([]);\n\t}, []);\n\n\tconst isSelected = useCallback(\n\t\t(id: string) => {\n\t\t\treturn selectedItems.some((item) => item[config.leadingKey] === id);\n\t\t},\n\t\t[config.leadingKey, selectedItems]\n\t);\n\n\treturn {\n\t\tselectedItems,\n\t\tselect,\n\t\tdeselect,\n\t\treplaceSelection,\n\t\tclearSelection,\n\t\tisSelected\n\t};\n}\n","import { useCallback, useMemo } from \"react\";\n\nimport { useODataTableColumns } from \"@ryuzaki13/react-foundation-api/odata\";\nimport { type TableColumnDef } from \"@ryuzaki13/react-foundation-lib/table\";\n\nimport { Badge, BadgeList } from \"../../badge\";\nimport { Button } from \"../../button\";\nimport { FlexContainer } from \"../../flex\";\nimport { GridContainer } from \"../../grid\";\nimport { InputSearch } from \"../../input-search\";\nimport { Scrollable } from \"../../misc\";\nimport { Modal, ModalContent, ModalFooter, ModalToolbar } from \"../../modal\";\nimport { ODataDependentMultiSelect } from \"../../multi-select\";\nimport { Table } from \"../../table\";\nimport { SearchConfig, useAdvancedSearch, useAdvancedSearchSelection } from \"../model\";\n\ninterface AdvancedSearchModalSessionProps<T extends Record<string, string>> {\n\tonClose: () => void;\n\tonItemsSelect: (items: T[]) => void;\n\t/** Снимок committed-выбора, с которого начинается текущая сессия модалки. */\n\tinitialSelectedItems: readonly T[];\n\ttitle?: string;\n\tconfig: SearchConfig<T>;\n}\n\n/**\n * Интерактивная сессия расширенного поиска с собственным selection draft.\n * Компонент монтируется только после разрешения initial Query snapshot.\n */\nexport function AdvancedSearchModalSession<T extends Record<string, string>>({\n\tonClose,\n\tonItemsSelect,\n\ttitle,\n\tconfig,\n\tinitialSelectedItems\n}: AdvancedSearchModalSessionProps<T>) {\n\tconst tableColumns: TableColumnDef<T>[] = useMemo(\n\t\t() =>\n\t\t\tconfig.columns.map(\n\t\t\t\t(col) =>\n\t\t\t\t\t({\n\t\t\t\t\t\tid: col.key as keyof T,\n\t\t\t\t\t\taccessorKey: col.key as keyof T,\n\t\t\t\t\t\theader: col.label,\n\t\t\t\t\t\tmeta: {\n\t\t\t\t\t\t\twidth: col.width || \"auto\"\n\t\t\t\t\t\t}\n\t\t\t\t\t}) as TableColumnDef<T>\n\t\t\t),\n\t\t[config.columns]\n\t);\n\n\tconst { columns, isLoading } = useODataTableColumns<T>({\n\t\tservice: config.odata.service,\n\t\ttarget: config.odata.target,\n\t\tmode: \"enrich\",\n\t\tcolumns: tableColumns\n\t});\n\n\tconst { query, items, searchTerm, setSearch, clearSearch, filters, setFilters } = useAdvancedSearch(config);\n\tconst { selectedItems, deselect, replaceSelection } = useAdvancedSearchSelection(config, initialSelectedItems);\n\tconst getRowId = useCallback((item: T) => String(item[config.leadingKey]), [config.leadingKey]);\n\tconst selectedRowIds = useMemo(() => selectedItems.map((item) => String(item[config.leadingKey])), [selectedItems, config.leadingKey]);\n\tconst visibleItemIds = useMemo(() => new Set(items.map((item) => String(item[config.leadingKey]))), [items, config.leadingKey]);\n\n\tconst handleReachEnd = useCallback(() => {\n\t\tif (query.hasNextPage && !query.isFetchingNextPage) {\n\t\t\tquery.fetchNextPage();\n\t\t}\n\t}, [query]);\n\n\t/**\n\t * При изменении видимого выбора сохраняет элементы, которые временно скрыты\n\t * поиском или сегментными фильтрами.\n\t */\n\tconst handleSelect = useCallback(\n\t\t(selectedVisibleItems: T[]) => {\n\t\t\tconst selectedVisibleIds = new Set(selectedVisibleItems.map((item) => String(item[config.leadingKey])));\n\t\t\tconst hiddenSelectedItems = selectedItems.filter((item) => !visibleItemIds.has(String(item[config.leadingKey])));\n\t\t\tconst nextVisibleSelectedItems = items.filter((item) => selectedVisibleIds.has(String(item[config.leadingKey])));\n\n\t\t\treplaceSelection([...hiddenSelectedItems, ...nextVisibleSelectedItems]);\n\t\t},\n\t\t[config.leadingKey, items, replaceSelection, selectedItems, visibleItemIds]\n\t);\n\n\t/** Удаляет отдельный элемент из общего выбора. */\n\tconst handleRemoveSelectedItem = useCallback(\n\t\t(item: T) => {\n\t\t\tdeselect(String(item[config.leadingKey]));\n\t\t},\n\t\t[config.leadingKey, deselect]\n\t);\n\n\t/** Передаёт committed-значение владельцу поля только по явному подтверждению. */\n\tconst handleConfirmSelection = useCallback(() => {\n\t\tonItemsSelect(selectedItems);\n\t\tonClose();\n\t}, [selectedItems, onItemsSelect, onClose]);\n\n\tconst filterConfig = useMemo(() => {\n\t\tif (\"segments\" in config && config.segments) {\n\t\t\tconst limitedKeys = Object.keys(config.segments);\n\t\t\tif (limitedKeys.length) {\n\t\t\t\treturn {\n\t\t\t\t\todata: { ...config.odata, limitedKeys },\n\t\t\t\t\tsegments: config.segments,\n\t\t\t\t\tmodel: config.model\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t}, [config]);\n\n\treturn (\n\t\t<Modal isOpen onClose={onClose} title={title || config.title} size=\"lg\" height=\"min(50em, 80dvh)\">\n\t\t\t<ModalToolbar>\n\t\t\t\t<FlexContainer gap=\"sm\">\n\t\t\t\t\t{filterConfig && (\n\t\t\t\t\t\t<ODataDependentMultiSelect\n\t\t\t\t\t\t\todata={filterConfig.odata}\n\t\t\t\t\t\t\tsegments={filterConfig.segments}\n\t\t\t\t\t\t\tmodel={filterConfig.model}\n\t\t\t\t\t\t\tvalues={filters}\n\t\t\t\t\t\t\tonChange={setFilters}\n\t\t\t\t\t\t/>\n\t\t\t\t\t)}\n\n\t\t\t\t\t<InputSearch\n\t\t\t\t\t\tsize=\"md\"\n\t\t\t\t\t\tplaceholder={config.searchLabel ?? \"Введите поисковый запрос\"}\n\t\t\t\t\t\tvalue={searchTerm}\n\t\t\t\t\t\tonChange={setSearch}\n\t\t\t\t\t\tonClear={clearSearch}\n\t\t\t\t\t\tclassName=\"flexGrow\"\n\t\t\t\t\t/>\n\t\t\t\t</FlexContainer>\n\t\t\t</ModalToolbar>\n\n\t\t\t<ModalContent>\n\t\t\t\t<GridContainer gap=\"md\" templateRows=\"1fr auto\" className=\"h100\">\n\t\t\t\t\t<Table\n\t\t\t\t\t\tcolumns={columns}\n\t\t\t\t\t\tdata={items}\n\t\t\t\t\t\tselectionMode=\"multi\"\n\t\t\t\t\t\tselectedRowIds={selectedRowIds}\n\t\t\t\t\t\tgetRowId={getRowId}\n\t\t\t\t\t\tisLoading={query.isLoading || isLoading}\n\t\t\t\t\t\tisFetching={query.isFetching}\n\t\t\t\t\t\tonRowSelectionChange={handleSelect}\n\t\t\t\t\t\tonReachEnd={handleReachEnd}\n\t\t\t\t\t\tclassName=\"w100\"\n\t\t\t\t\t/>\n\n\t\t\t\t\t<div className=\"marginBlockMd border\">\n\t\t\t\t\t\t<Scrollable className=\"paddingSm\" height=\"6em\">\n\t\t\t\t\t\t\t<BadgeList>\n\t\t\t\t\t\t\t\t{selectedItems.map((item) => (\n\t\t\t\t\t\t\t\t\t<Badge\n\t\t\t\t\t\t\t\t\t\tkey={item[config.leadingKey]}\n\t\t\t\t\t\t\t\t\t\tsize=\"md\"\n\t\t\t\t\t\t\t\t\t\ttone=\"info\"\n\t\t\t\t\t\t\t\t\t\tappearance=\"outline\"\n\t\t\t\t\t\t\t\t\t\tonRemove={() => handleRemoveSelectedItem(item)}>\n\t\t\t\t\t\t\t\t\t\t{config.leadingText ? item[config.leadingText] || item[config.leadingKey] : item[config.leadingKey]}\n\t\t\t\t\t\t\t\t\t</Badge>\n\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t</BadgeList>\n\t\t\t\t\t\t</Scrollable>\n\t\t\t\t\t</div>\n\t\t\t\t</GridContainer>\n\t\t\t</ModalContent>\n\n\t\t\t<ModalFooter>\n\t\t\t\t<Button onClick={onClose}>Отмена</Button>\n\t\t\t\t<Button variant=\"successOutline\" onClick={handleConfirmSelection}>\n\t\t\t\t\tВыбрать\n\t\t\t\t</Button>\n\t\t\t</ModalFooter>\n\t\t</Modal>\n\t);\n}\n","import { stableStringify } from \"@ryuzaki13/react-foundation-lib/utils\";\n\nimport { Button } from \"../../button\";\nimport { LoadingMessage, Message } from \"../../misc\";\nimport { Modal, ModalContent, ModalFooter } from \"../../modal\";\nimport { SearchConfig } from \"../model\";\n\nimport { AdvancedSearchModalSession } from \"./AdvancedSearchModalSession\";\n\nexport type AdvancedSearchInitialSelection<T extends Record<string, string>> =\n\t{ status: \"loading\" } | { status: \"error\" } | { status: \"ready\"; items: readonly T[] };\n\ninterface SearchModalProps<T extends Record<string, string>> {\n\tonClose: () => void;\n\tonItemsSelect: (items: T[]) => void;\n\tinitialSelection: AdvancedSearchInitialSelection<T>;\n\ttitle?: string;\n\tconfig: SearchConfig<T>;\n}\n\n/**\n * Создаёт стабильную identity modal-session по владельцу данных и внешним ключам.\n * Новый Query object с теми же строками не должен пересоздавать пользовательский draft.\n */\nfunction buildAdvancedSearchModalSessionKey<T extends Record<string, string>>(config: SearchConfig<T>, items: readonly T[]) {\n\treturn stableStringify({\n\t\tleadingKey: String(config.leadingKey),\n\t\tservice: config.odata.service,\n\t\ttarget: config.odata.target,\n\t\tselectedIds: items.map((item) => String(item[config.leadingKey])).sort()\n\t});\n}\n\n/**\n * Query boundary начального выбора. Интерактивная сессия монтируется только после\n * успешной загрузки committed snapshot, поэтому поздний ответ не может стереть draft.\n */\nexport function AdvancedSearchModal<T extends Record<string, string>>({\n\tonClose,\n\tonItemsSelect,\n\tinitialSelection,\n\ttitle,\n\tconfig\n}: SearchModalProps<T>) {\n\tif (initialSelection.status === \"ready\") {\n\t\treturn (\n\t\t\t<AdvancedSearchModalSession\n\t\t\t\tkey={buildAdvancedSearchModalSessionKey(config, initialSelection.items)}\n\t\t\t\ttitle={title}\n\t\t\t\tconfig={config}\n\t\t\t\tonClose={onClose}\n\t\t\t\tonItemsSelect={onItemsSelect}\n\t\t\t\tinitialSelectedItems={initialSelection.items}\n\t\t\t/>\n\t\t);\n\t}\n\n\treturn (\n\t\t<Modal isOpen onClose={onClose} title={title || config.title} size=\"lg\" height=\"min(50em, 80dvh)\">\n\t\t\t<ModalContent>\n\t\t\t\t{initialSelection.status === \"loading\" ? (\n\t\t\t\t\t<LoadingMessage text=\"Загружаем выбранные элементы...\" />\n\t\t\t\t) : (\n\t\t\t\t\t<Message color=\"error\">Не удалось загрузить выбранные элементы</Message>\n\t\t\t\t)}\n\t\t\t</ModalContent>\n\n\t\t\t<ModalFooter>\n\t\t\t\t<Button onClick={onClose}>Закрыть</Button>\n\t\t\t</ModalFooter>\n\t\t</Modal>\n\t);\n}\n","import { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { ChevronRightIcon, XIcon } from \"lucide-react\";\n\nimport { FlexContainer } from \"../../flex\";\nimport { useInputFieldIds } from \"../../input\";\nimport inputStyles from \"../../input/Input.module.scss\";\nimport { UiBaseProps } from \"../../types\";\nimport uiStyles from \"../../ui.module.scss\";\n\ninterface AdvancedSearchSelectUIProps extends Omit<UiBaseProps<string[]>, \"value\" | \"onChange\"> {\n\ttoken: string | undefined;\n\tonOpen: () => void;\n\tonClear: () => void;\n}\n\nexport const AdvancedSearchSelectUI = ({\n\tlabel,\n\tdescription,\n\tdisabled,\n\tsize,\n\tplaceholder = \"Выбрать\",\n\ttoken,\n\tonOpen,\n\tonClear\n}: AdvancedSearchSelectUIProps) => {\n\tconst { controlId, labelId, descriptionId } = useInputFieldIds({\n\t\thasLabel: label !== undefined && label !== null,\n\t\thasDescription: !!description\n\t});\n\tconst hasToken = Boolean(token);\n\n\treturn (\n\t\t<div aria-disabled={disabled || undefined} className={cn(uiStyles.uiElement, uiStyles.uiSizable, size && uiStyles[size])}>\n\t\t\t{label && (\n\t\t\t\t<label id={labelId} htmlFor={controlId} className={uiStyles.uiLabel}>\n\t\t\t\t\t{label}\n\t\t\t\t</label>\n\t\t\t)}\n\t\t\t{description && (\n\t\t\t\t<p id={descriptionId} className={uiStyles.uiDescription}>\n\t\t\t\t\t{description}\n\t\t\t\t</p>\n\t\t\t)}\n\n\t\t\t<div className={uiStyles.uiInputContainer}>\n\t\t\t\t<div className={uiStyles.uiInputWithToggle}>\n\t\t\t\t\t{!hasToken && (\n\t\t\t\t\t\t<FlexContainer align=\"center\" className=\"h100\">\n\t\t\t\t\t\t\t<div className={uiStyles.uiPlaceholder}>{placeholder}</div>\n\t\t\t\t\t\t</FlexContainer>\n\t\t\t\t\t)}\n\t\t\t\t</div>\n\n\t\t\t\t<div className={inputStyles.controlEndAdornment}>\n\t\t\t\t\t<div className={uiStyles.uiToggleButtonContainer}>\n\t\t\t\t\t\t<div className=\"flexEllipsis fontSizeSm\" style={{ maxWidth: \"100%\" }}>\n\t\t\t\t\t\t\t{token}\n\t\t\t\t\t\t</div>\n\n\t\t\t\t\t\t<button\n\t\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t\t\tdisabled={!token}\n\t\t\t\t\t\t\tclassName={uiStyles.uiClearButton}\n\t\t\t\t\t\t\tonClick={onClear}\n\t\t\t\t\t\t\taria-label=\"Очистить все\">\n\t\t\t\t\t\t\t<XIcon />\n\t\t\t\t\t\t</button>\n\n\t\t\t\t\t\t<div className={uiStyles.uiButtonSeparator} />\n\n\t\t\t\t\t\t<button type=\"button\" onClick={onOpen} className={uiStyles.uiToggleButton}>\n\t\t\t\t\t\t\t<ChevronRightIcon className={uiStyles.uiToggleIcon} />\n\t\t\t\t\t\t</button>\n\t\t\t\t\t</div>\n\t\t\t\t</div>\n\t\t\t</div>\n\t\t</div>\n\t);\n};\n","import { useCallback, useState } from \"react\";\n\nimport { UiBaseProps } from \"../../types\";\nimport { SearchConfig, useAdvancedSearchInitialSelected } from \"../model\";\n\nimport { AdvancedSearchModal, type AdvancedSearchInitialSelection } from \"./AdvancedSearchModal\";\nimport { AdvancedSearchSelectUI } from \"./AdvancedSearchSelectUI\";\n\ntype AdvancedSearchSelectProps<T extends Record<string, string>> = UiBaseProps<string[]> & {\n\ttitle?: string;\n\tconfig: SearchConfig<T>;\n};\n\nconst EMPTY_INITIAL_SELECTION: readonly never[] = [];\n\nexport function AdvancedSearchSelect<T extends Record<string, string>>({\n\tvalue = [],\n\tonChange,\n\ttitle,\n\tconfig,\n\t...props\n}: AdvancedSearchSelectProps<T>) {\n\tconst [isModalOpen, setIsModalOpen] = useState(false);\n\n\tconst initialSelectionQuery = useAdvancedSearchInitialSelected(config, value);\n\tconst selectedItems = initialSelectionQuery.data;\n\tconst initialSelection: AdvancedSearchInitialSelection<T> =\n\t\tvalue.length === 0\n\t\t\t? { status: \"ready\", items: EMPTY_INITIAL_SELECTION }\n\t\t\t: selectedItems !== undefined\n\t\t\t\t? { status: \"ready\", items: selectedItems }\n\t\t\t\t: initialSelectionQuery.isError\n\t\t\t\t\t? { status: \"error\" }\n\t\t\t\t\t: { status: \"loading\" };\n\n\tconst handleOpen = useCallback(() => setIsModalOpen(true), []);\n\tconst handleClose = useCallback(() => setIsModalOpen(false), []);\n\tconst handleRemove = useCallback(() => onChange([]), [onChange]);\n\tconst handleSelect = useCallback(\n\t\t(items: T[]) => onChange(items.map((item) => String(item[config.leadingKey]))),\n\t\t[config.leadingKey, onChange]\n\t);\n\tconst getDisplayText = useCallback(\n\t\t(items: T[] | undefined) => {\n\t\t\tif (!items?.length) return;\n\t\t\tif (items.length > 1) return `Выбрано ${items.length} элем.`;\n\t\t\treturn `${(config.leadingText && items[0][config.leadingText]) || items[0][config.leadingKey]}`;\n\t\t},\n\t\t[config.leadingKey, config.leadingText]\n\t);\n\n\treturn (\n\t\t<>\n\t\t\t<AdvancedSearchSelectUI {...props} token={getDisplayText(selectedItems)} onOpen={handleOpen} onClear={handleRemove} />\n\n\t\t\t{isModalOpen && (\n\t\t\t\t<AdvancedSearchModal\n\t\t\t\t\ttitle={title}\n\t\t\t\t\tconfig={config}\n\t\t\t\t\tonClose={handleClose}\n\t\t\t\t\tonItemsSelect={handleSelect}\n\t\t\t\t\tinitialSelection={initialSelection}\n\t\t\t\t/>\n\t\t\t)}\n\t\t</>\n\t);\n}\n"],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export * from "./searchParts";
2
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/advanced-search/lib/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
@@ -1,3 +0,0 @@
1
- export declare function buildSearchParts(searchTerm: string): string[];
2
- export declare function filterBySearchParts<T extends Record<string, string>>(items: T[], searchParts: string[], searchKeys: (keyof T)[]): T[];
3
- //# sourceMappingURL=searchParts.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"searchParts.d.ts","sourceRoot":"","sources":["../../../src/advanced-search/lib/searchParts.ts"],"names":[],"mappings":"AAAA,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,MAAM,YAkBlD;AAED,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,OAuC/H"}
@@ -1,5 +0,0 @@
1
- export * from "./types";
2
- export * from "./useAdvancedSearch";
3
- export * from "./useAdvancedSearchInitialSelected";
4
- export * from "./useAdvancedSearchSelection";
5
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/advanced-search/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,qBAAqB,CAAC;AACpC,cAAc,oCAAoC,CAAC;AACnD,cAAc,8BAA8B,CAAC"}
@@ -1,55 +0,0 @@
1
- import { type ODataCollectionConfig, type ODataCollectionModel, type ODataCollectionSegment } from "@ryuzaki13/react-foundation-api/odata";
2
- /**
3
- * Параметры поиска клиентов
4
- */
5
- export type SearchParams = {
6
- searchTerm: string;
7
- filters?: Record<string, unknown>;
8
- top?: number;
9
- skip?: number;
10
- };
11
- /**
12
- * Результат поиска клиентов
13
- */
14
- export type SearchResult<T extends object> = {
15
- clients: T[];
16
- totalCount: number;
17
- hasNextPage: boolean;
18
- };
19
- type BaseSearchConfig<T extends object> = {
20
- /** Заголовок диалогового окна */
21
- title: string;
22
- odata: Omit<ODataCollectionConfig, "limitedKeys">;
23
- /** Главный ключ, значения которого и будут использоваться в итоговом выборе */
24
- leadingKey: keyof T;
25
- /** Текстовый ключ главного ключа, используется для формирования "выбранного ключа" */
26
- leadingText?: keyof T;
27
- /** Список ключей, по которым будет отрабатывать фильтрация таблицы */
28
- searchKeys: (keyof T)[];
29
- /** Подпись для поля ввода поиска */
30
- searchLabel?: string;
31
- /** Список столбцов, которые должны выбираться для формирования таблицы */
32
- columns: Array<{
33
- key: keyof T;
34
- label: string;
35
- width?: number;
36
- }>;
37
- };
38
- type SearchConfigWithoutFilters<T extends object> = BaseSearchConfig<T> & {
39
- segments?: never;
40
- model?: never;
41
- };
42
- type SearchConfigWithFilters<T extends object> = BaseSearchConfig<T> & {
43
- segments: Record<string, ODataCollectionSegment>;
44
- model?: Omit<ODataCollectionModel, "codeKey">;
45
- };
46
- /**
47
- * Интерфейс конфигурации поиска
48
- */
49
- export type SearchConfig<T extends object> = SearchConfigWithoutFilters<T> | (SearchConfigWithFilters<T> & {});
50
- /**
51
- * Интерфейс регистра для конфигураций
52
- */
53
- export type SearchConfigRegistry = Record<string, SearchConfig<Record<string, string>>>;
54
- export {};
55
- //# sourceMappingURL=types.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/advanced-search/model/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAE,KAAK,oBAAoB,EAAE,KAAK,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAE3I;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI;IAC5C,OAAO,EAAE,CAAC,EAAE,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACrB,CAAC;AAEF,KAAK,gBAAgB,CAAC,CAAC,SAAS,MAAM,IAAI;IACzC,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IAEd,KAAK,EAAE,IAAI,CAAC,qBAAqB,EAAE,aAAa,CAAC,CAAC;IAElD,+EAA+E;IAC/E,UAAU,EAAE,MAAM,CAAC,CAAC;IAEpB,sFAAsF;IACtF,WAAW,CAAC,EAAE,MAAM,CAAC,CAAC;IAEtB,sEAAsE;IACtE,UAAU,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC;IAExB,oCAAoC;IACpC,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,0EAA0E;IAC1E,OAAO,EAAE,KAAK,CAAC;QACd,GAAG,EAAE,MAAM,CAAC,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,CAAC,EAAE,MAAM,CAAC;KACf,CAAC,CAAC;CACH,CAAC;AAEF,KAAK,0BAA0B,CAAC,CAAC,SAAS,MAAM,IAAI,gBAAgB,CAAC,CAAC,CAAC,GAAG;IACzE,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB,KAAK,CAAC,EAAE,KAAK,CAAC;CACd,CAAC;AAEF,KAAK,uBAAuB,CAAC,CAAC,SAAS,MAAM,IAAI,gBAAgB,CAAC,CAAC,CAAC,GAAG;IACtE,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC,CAAC;IACjD,KAAK,CAAC,EAAE,IAAI,CAAC,oBAAoB,EAAE,SAAS,CAAC,CAAC;CAC9C,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,YAAY,CAAC,CAAC,SAAS,MAAM,IAAI,0BAA0B,CAAC,CAAC,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;AAE/G;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC"}
@@ -1,11 +0,0 @@
1
- import { SearchConfig } from "./types";
2
- export declare function useAdvancedSearch<T extends Record<string, string>>(config: SearchConfig<T>): {
3
- query: import("@tanstack/react-query").UseInfiniteQueryResult<import("@tanstack/query-core").InfiniteData<T[], unknown>, Error>;
4
- items: T[];
5
- searchTerm: string;
6
- setSearch: (term: string) => void;
7
- clearSearch: () => void;
8
- filters: Record<string, string[]>;
9
- setFilters: import("react").Dispatch<import("react").SetStateAction<Record<string, string[]>>>;
10
- };
11
- //# sourceMappingURL=useAdvancedSearch.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useAdvancedSearch.d.ts","sourceRoot":"","sources":["../../../src/advanced-search/model/useAdvancedSearch.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAIvC,wBAAgB,iBAAiB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC;;;;sBAgExD,MAAM;;;;EAqBxC"}
@@ -1,6 +0,0 @@
1
- import { SearchConfig } from "./types";
2
- /**
3
- * Хук для поиска клиентов с поддержкой бесконечной прокрутки через OData
4
- */
5
- export declare function useAdvancedSearchInitialSelected<T extends Record<string, string>>(config: SearchConfig<T>, initialSelectedKeys?: string[]): import("@ryuzaki13/react-foundation-lib/odata-service").UnwrappedODataQueryResult<T[]>;
6
- //# sourceMappingURL=useAdvancedSearchInitialSelected.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useAdvancedSearchInitialSelected.d.ts","sourceRoot":"","sources":["../../../src/advanced-search/model/useAdvancedSearchInitialSelected.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAChF,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EACvB,mBAAmB,GAAE,MAAM,EAAO,0FA2BlC"}
@@ -1,13 +0,0 @@
1
- import { SearchConfig } from "./types";
2
- /**
3
- * Хук для управления выбором клиентов
4
- */
5
- export declare function useAdvancedSearchSelection<T extends Record<string, string>>(config: SearchConfig<T>, initialSelectedItems?: readonly T[]): {
6
- selectedItems: T[];
7
- select: (item: T) => void;
8
- deselect: (id: string) => void;
9
- replaceSelection: (nextItems: readonly T[]) => void;
10
- clearSelection: () => void;
11
- isSelected: (id: string) => boolean;
12
- };
13
- //# sourceMappingURL=useAdvancedSearchSelection.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useAdvancedSearchSelection.d.ts","sourceRoot":"","sources":["../../../src/advanced-search/model/useAdvancedSearchSelection.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAiBvC;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAC1E,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,EACvB,oBAAoB,GAAE,SAAS,CAAC,EAAO;;mBAmC/B,CAAC;mBAaH,MAAM;kCAxBC,SAAS,CAAC,EAAE;;qBAmCnB,MAAM;EAcZ"}
@@ -1,23 +0,0 @@
1
- import { SearchConfig } from "../model";
2
- export type AdvancedSearchInitialSelection<T extends Record<string, string>> = {
3
- status: "loading";
4
- } | {
5
- status: "error";
6
- } | {
7
- status: "ready";
8
- items: readonly T[];
9
- };
10
- interface SearchModalProps<T extends Record<string, string>> {
11
- onClose: () => void;
12
- onItemsSelect: (items: T[]) => void;
13
- initialSelection: AdvancedSearchInitialSelection<T>;
14
- title?: string;
15
- config: SearchConfig<T>;
16
- }
17
- /**
18
- * Query boundary начального выбора. Интерактивная сессия монтируется только после
19
- * успешной загрузки committed snapshot, поэтому поздний ответ не может стереть draft.
20
- */
21
- export declare function AdvancedSearchModal<T extends Record<string, string>>({ onClose, onItemsSelect, initialSelection, title, config }: SearchModalProps<T>): import("react").JSX.Element;
22
- export {};
23
- //# sourceMappingURL=AdvancedSearchModal.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"AdvancedSearchModal.d.ts","sourceRoot":"","sources":["../../../src/advanced-search/ui/AdvancedSearchModal.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAIxC,MAAM,MAAM,8BAA8B,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAC1E;IAAE,MAAM,EAAE,SAAS,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,SAAS,CAAC,EAAE,CAAA;CAAE,CAAC;AAExF,UAAU,gBAAgB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;IAC1D,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,aAAa,EAAE,CAAC,KAAK,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC;IACpC,gBAAgB,EAAE,8BAA8B,CAAC,CAAC,CAAC,CAAC;IACpD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;CACxB;AAeD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EACrE,OAAO,EACP,aAAa,EACb,gBAAgB,EAChB,KAAK,EACL,MAAM,EACN,EAAE,gBAAgB,CAAC,CAAC,CAAC,+BA6BrB"}