@ryuzaki13/react-foundation-ui 3.6.0 → 3.7.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 (298) hide show
  1. package/dist/notifications/index.d.ts +1 -1
  2. package/dist/notifications/index.d.ts.map +1 -1
  3. package/dist/notifications/index.js +40 -24
  4. package/dist/notifications/index.js.map +1 -1
  5. package/dist/notifications/model/NotificationsProvider.d.ts +2 -18
  6. package/dist/notifications/model/NotificationsProvider.d.ts.map +1 -1
  7. package/dist/notifications/model/index.d.ts +4 -0
  8. package/dist/notifications/model/index.d.ts.map +1 -1
  9. package/dist/notifications/model/notificationsContext.d.ts +4 -0
  10. package/dist/notifications/model/notificationsContext.d.ts.map +1 -0
  11. package/dist/notifications/model/useNotificationById.d.ts +4 -0
  12. package/dist/notifications/model/useNotificationById.d.ts.map +1 -0
  13. package/dist/notifications/model/useNotificationHistory.d.ts +6 -0
  14. package/dist/notifications/model/useNotificationHistory.d.ts.map +1 -0
  15. package/dist/notifications/model/useNotifications.d.ts +3 -0
  16. package/dist/notifications/model/useNotifications.d.ts.map +1 -0
  17. package/dist/notifications/model/useNotificationsStore.d.ts +3 -0
  18. package/dist/notifications/model/useNotificationsStore.d.ts.map +1 -0
  19. package/dist/notifications/model/useNotify.d.ts +17 -0
  20. package/dist/notifications/model/useNotify.d.ts.map +1 -0
  21. package/dist/notifications/ui/NotificationsHost.d.ts +2 -1
  22. package/dist/notifications/ui/NotificationsHost.d.ts.map +1 -1
  23. package/dist/styles.css +1 -1
  24. package/dist/tabs/index.js +20 -13
  25. package/dist/tabs/index.js.map +1 -1
  26. package/dist/tabs/ui/TabsBox.d.ts.map +1 -1
  27. package/dist/tabs/ui/TabsLayout.d.ts.map +1 -1
  28. package/package.json +3 -3
  29. package/storybook-static/assets/{Badge-r7lsdHne.js → Badge-DTUYnjUJ.js} +1 -1
  30. package/storybook-static/assets/{Badge.stories-P4qdQ7cm.js → Badge.stories-rjlZcsBa.js} +1 -1
  31. package/storybook-static/assets/{BadgeList-8NyPAV2Q.js → BadgeList-xlIWwEkW.js} +1 -1
  32. package/storybook-static/assets/{BarcodeScannerDialog.stories--TadwGdZ.js → BarcodeScannerDialog.stories-qfMXeaVE.js} +1 -1
  33. package/storybook-static/assets/{Button-BP0DDcNq.js → Button-CBG6iR1d.js} +1 -1
  34. package/storybook-static/assets/{Button-X3OT5zE7.js → Button-CdRjxwHf.js} +1 -1
  35. package/storybook-static/assets/{Button.stories-CFiUr_xE.js → Button.stories-DbtwVXli.js} +1 -1
  36. package/storybook-static/assets/{CalendarView-nWuZBE9T.js → CalendarView-BX0PAy5V.js} +1 -1
  37. package/storybook-static/assets/{CheckBox-Bde9tud-.js → CheckBox-4raP7tMo.js} +1 -1
  38. package/storybook-static/assets/{CheckBox-BId2Zf_m.js → CheckBox-Dxyvwx9w.js} +1 -1
  39. package/storybook-static/assets/{CheckBox.stories-BVU9Rkai.js → CheckBox.stories-HBKpJ12Q.js} +1 -1
  40. package/storybook-static/assets/{Color-6AOWCN3U-BeUy9gum.js → Color-6AOWCN3U-Bmlc4WNM.js} +1 -1
  41. package/storybook-static/assets/{ContextMenu-Byksyz_8.js → ContextMenu-Cs3dFpcR.js} +1 -1
  42. package/storybook-static/assets/{ContextMenu-BS2UVgbu.js → ContextMenu-CvsCDdTo.js} +1 -1
  43. package/storybook-static/assets/{ContextMenu.stories-DmJPp2YR.js → ContextMenu.stories-DUco2ooo.js} +1 -1
  44. package/storybook-static/assets/{DateInput-CQe_1Dk-.js → DateInput-BzH2yWLd.js} +1 -1
  45. package/storybook-static/assets/{DateInput-CgETMk9B.js → DateInput-C876uAev.js} +1 -1
  46. package/storybook-static/assets/{DateInput.stories-BOst6EKv.js → DateInput.stories-B96RHwnv.js} +1 -1
  47. package/storybook-static/assets/{DateRangePresetSelect-DHJ31vIB.js → DateRangePresetSelect-CDIZjlZR.js} +1 -1
  48. package/storybook-static/assets/{DateRangePresetSelect-CxrNYBTe.js → DateRangePresetSelect-Dt6gakU3.js} +1 -1
  49. package/storybook-static/assets/{DateRangePresetSelect.stories-CiyN1joN.js → DateRangePresetSelect.stories-CowdHg25.js} +1 -1
  50. package/storybook-static/assets/{Detail-V_NYrUJR.js → Detail-5gzUBcgn.js} +1 -1
  51. package/storybook-static/assets/{Detail.stories-B4tf6inN.js → Detail.stories-BmfI0TB_.js} +1 -1
  52. package/storybook-static/assets/{Dialog-DNTx5Unm.js → Dialog-B6cxAYUL.js} +1 -1
  53. package/storybook-static/assets/{Dialog-B6miFej7.js → Dialog-DGjQw2Fl.js} +1 -1
  54. package/storybook-static/assets/{Dialog.stories-BS1dDTLW.js → Dialog.stories-DGN5bZB0.js} +1 -1
  55. package/storybook-static/assets/{Disclosure-4sf5BIn1.js → Disclosure-BD6JU91g.js} +1 -1
  56. package/storybook-static/assets/{Disclosure.stories-DhUQNdEC.js → Disclosure.stories-Blp4sjjH.js} +1 -1
  57. package/storybook-static/assets/{DisclosureGroup-Codiur77.js → DisclosureGroup-DSs17wh1.js} +1 -1
  58. package/storybook-static/assets/{DocsRenderer-JROSPFPF-yT2aWNaF.js → DocsRenderer-JROSPFPF-DjsQFu6U.js} +1 -1
  59. package/storybook-static/assets/{DropZone-D4rl2WEV.js → DropZone-BWY1s904.js} +1 -1
  60. package/storybook-static/assets/{DropZone-Du0BQAyO.js → DropZone-CBJ8D9YW.js} +1 -1
  61. package/storybook-static/assets/{DropZone.stories-B8iPjYH_.js → DropZone.stories-BYg0y5zw.js} +1 -1
  62. package/storybook-static/assets/{DropdownMenu-BcdS3oNz.js → DropdownMenu-DyxhrZHn.js} +1 -1
  63. package/storybook-static/assets/{ExpandableActionPanel-6u6YJanI.js → ExpandableActionPanel-utF3k6nI.js} +1 -1
  64. package/storybook-static/assets/{ExpandableActionPanel.stories-D-CZHUv0.js → ExpandableActionPanel.stories-6eYg64t8.js} +1 -1
  65. package/storybook-static/assets/{Flex-DWi0hQ-f.js → Flex-CpoGbzxR.js} +1 -1
  66. package/storybook-static/assets/{Flex.stories-CKKi33JK.js → Flex.stories-DZ2R5uxU.js} +1 -1
  67. package/storybook-static/assets/{FlexContainer-BMK_YH72.js → FlexContainer-BK3kWiEq.js} +1 -1
  68. package/storybook-static/assets/{FlexItem-DpSHNBxJ.js → FlexItem-CmF4ezss.js} +1 -1
  69. package/storybook-static/assets/{FloatingPopover-D9nTd47B.js → FloatingPopover-beid_uAU.js} +1 -1
  70. package/storybook-static/assets/{FormattedTableCell-DyBhk9rG.js → FormattedTableCell-BCzWQE6v.js} +1 -1
  71. package/storybook-static/assets/{Grid-DbvUGBEN.js → Grid-CbETXUvg.js} +1 -1
  72. package/storybook-static/assets/{Grid-BZgzDCLK.js → Grid-DQAYnIjp.js} +1 -1
  73. package/storybook-static/assets/{Grid.stories-BeEAzTxD.js → Grid.stories-QZi3H8un.js} +1 -1
  74. package/storybook-static/assets/{GridContainer-B82Onj6x.js → GridContainer-Dx_kHFve.js} +1 -1
  75. package/storybook-static/assets/{ImageCropper.stories-SDIt19aO.js → ImageCropper.stories-hu3ETBrw.js} +1 -1
  76. package/storybook-static/assets/{ImageRenderer-Bzg27pq7.js → ImageRenderer-oV4w6Hxt.js} +1 -1
  77. package/storybook-static/assets/{ImageRenderer.stories-C-IE84zV.js → ImageRenderer.stories-DzsFGL36.js} +1 -1
  78. package/storybook-static/assets/{ImageView.stories-DIcx2Krs.js → ImageView.stories-CKQ-ebNE.js} +1 -1
  79. package/storybook-static/assets/{ImageViewer.stories-CQTy0uPX.js → ImageViewer.stories-WppljG-8.js} +2 -2
  80. package/storybook-static/assets/{ImageViewerRuntime-CA5BYQsX.js → ImageViewerRuntime-BPONS1mi.js} +1 -1
  81. package/storybook-static/assets/{Input-D8uMye_9.js → Input-BOFE5lvG.js} +1 -1
  82. package/storybook-static/assets/{Input-DmsN6uC_.js → Input-DMvnYoIe.js} +1 -1
  83. package/storybook-static/assets/{Input.stories-D8QWPnMD.js → Input.stories-BqUmk40r.js} +1 -1
  84. package/storybook-static/assets/{InputDateTime-Cczll-bH.js → InputDateTime-D3pmNdmh.js} +1 -1
  85. package/storybook-static/assets/{InputDateTime.stories-DeZ6XHwa.js → InputDateTime.stories-kvtjuevO.js} +1 -1
  86. package/storybook-static/assets/{InputFile-C0_L0zTd.js → InputFile-CKwYU9U_.js} +1 -1
  87. package/storybook-static/assets/{InputFile-BbPjLN4E.js → InputFile-DBXedT6h.js} +1 -1
  88. package/storybook-static/assets/{InputFile.stories-Di_6BkX1.js → InputFile.stories-ehK-UK6n.js} +1 -1
  89. package/storybook-static/assets/{InputFiles-B3uOwqKF.js → InputFiles-B7Xf4zSp.js} +1 -1
  90. package/storybook-static/assets/{InputFiles-CF60S_qG.js → InputFiles-BuMatkQD.js} +1 -1
  91. package/storybook-static/assets/{InputFiles.stories-BkTiEPX6.js → InputFiles.stories-DqZRcFkG.js} +1 -1
  92. package/storybook-static/assets/{InputFilesList-C9cudcHe.js → InputFilesList-DPPmTQ1K.js} +1 -1
  93. package/storybook-static/assets/{InputImage-Aq_ZXmtw.js → InputImage-XIGsJtM-.js} +1 -1
  94. package/storybook-static/assets/{InputImage-Dx0DIf4l.js → InputImage-YPK4ZSDe.js} +1 -1
  95. package/storybook-static/assets/{InputImage.stories-D7LfEcn4.js → InputImage.stories-CZiBoenh.js} +1 -1
  96. package/storybook-static/assets/{InteractiveComponents-DP5FyU4S.js → InteractiveComponents-CSvun0IP.js} +1 -1
  97. package/storybook-static/assets/{InteractiveComponents.stories-CE5L5PAB.js → InteractiveComponents.stories-DY0ygaRD.js} +1 -1
  98. package/storybook-static/assets/{LayoutPicker-BehxFQsU.js → LayoutPicker-3jtKH77d.js} +1 -1
  99. package/storybook-static/assets/{LayoutPicker-CW1W-CAf.js → LayoutPicker-BXfi7odv.js} +1 -1
  100. package/storybook-static/assets/{LayoutPicker.stories-DtvfpOUS.js → LayoutPicker.stories-CmGAGY2E.js} +1 -1
  101. package/storybook-static/assets/{Listbox-Bn_6WyQc.js → Listbox-B7mjWKH_.js} +1 -1
  102. package/storybook-static/assets/{Listbox-VcD28kxl.js → Listbox-CVPng_Wi.js} +1 -1
  103. package/storybook-static/assets/{Listbox.stories-CL6fJlUm.js → Listbox.stories-DAyqK_9S.js} +1 -1
  104. package/storybook-static/assets/{Modal-D0D5WZ_O.js → Modal-BPnqryDJ.js} +1 -1
  105. package/storybook-static/assets/{Modal-DrSX0i3a.js → Modal-Chsv1ktM.js} +1 -1
  106. package/storybook-static/assets/{Modal.stories-Ch3P8_kY.js → Modal.stories-BrUWLwmT.js} +1 -1
  107. package/storybook-static/assets/{ModalManagerProvider-B0Lf7xX0.js → ModalManagerProvider-Bzz6KbJq.js} +1 -1
  108. package/storybook-static/assets/{MultiSelect-Cmxa5Vho.js → MultiSelect-BZQy9Xsb.js} +1 -1
  109. package/storybook-static/assets/{MultiSelect-Bw3qf8eW.js → MultiSelect-odpQ0Zm5.js} +1 -1
  110. package/storybook-static/assets/{MultiSelect.stories-DKHPBUWD.js → MultiSelect.stories-B2wnVhGS.js} +1 -1
  111. package/storybook-static/assets/{NoData-seFnJNiE.js → NoData-gI3QuiQP.js} +1 -1
  112. package/storybook-static/assets/{NotificationsHost-d770FjSM.js → NotificationsHost-Bp69wBpO.js} +30 -2
  113. package/storybook-static/assets/NotificationsHost.stories-H0M2_6Ql.js +30 -0
  114. package/storybook-static/assets/{ODataMultiSelect-BN0pcCmQ.js → ODataMultiSelect-BWrI3liD.js} +1 -1
  115. package/storybook-static/assets/{ODataMultiSelect.stories-D5zrkaFW.js → ODataMultiSelect.stories-g6CYTf9s.js} +1 -1
  116. package/storybook-static/assets/{ODataSelect-C5DXRRVH.js → ODataSelect-CEoeJfMu.js} +1 -1
  117. package/storybook-static/assets/{ODataSelect.stories-ClYp08JR.js → ODataSelect.stories-BgqAo36O.js} +1 -1
  118. package/storybook-static/assets/{ODataTreeMultiSelect-CsvSq1G1.js → ODataTreeMultiSelect-DP0bwv4M.js} +1 -1
  119. package/storybook-static/assets/{ODataTreeMultiSelect.stories-DFXLQjms.js → ODataTreeMultiSelect.stories-DYdYFhcJ.js} +1 -1
  120. package/storybook-static/assets/{ODataTreeSelect-CdN-NwV7.js → ODataTreeSelect-B_bhHDSr.js} +1 -1
  121. package/storybook-static/assets/{ODataTreeSelect.stories-CDffbvxi.js → ODataTreeSelect.stories-C5ygaR7b.js} +1 -1
  122. package/storybook-static/assets/{OneStepScroller-qXHo2r0J.js → OneStepScroller-Dp5Iva_A.js} +1 -1
  123. package/storybook-static/assets/{Option-tEWfKgN_.js → Option-DtZ6Qlvd.js} +1 -1
  124. package/storybook-static/assets/{OptionButton-DOj_dfd1.js → OptionButton-BQo4zeny.js} +1 -1
  125. package/storybook-static/assets/{OptionContent-6iwuLpQP.js → OptionContent-Yz54kdhn.js} +1 -1
  126. package/storybook-static/assets/{OptionContentContainer-DbdHO42m.js → OptionContentContainer-DL2-HjT2.js} +1 -1
  127. package/storybook-static/assets/{PeriodSelect-Bo_B6jdw.js → PeriodSelect-ClMxvzvw.js} +1 -1
  128. package/storybook-static/assets/{PeriodSelect-DffBuv6v.js → PeriodSelect-iGcNtPrN.js} +1 -1
  129. package/storybook-static/assets/{PeriodSelect.stories-Boq-fBL8.js → PeriodSelect.stories-LNVQiPZe.js} +1 -1
  130. package/storybook-static/assets/{PickerField-fMVQUcBX.js → PickerField-BEMDq9NM.js} +1 -1
  131. package/storybook-static/assets/{PickerTriggerActions-zS0JUD-3.js → PickerTriggerActions-D6nW7xw5.js} +1 -1
  132. package/storybook-static/assets/{Popover-5c_n39x0.js → Popover-BTz7W53N.js} +1 -1
  133. package/storybook-static/assets/{Popover-u02JbpuP.js → Popover-C-MzjE4n.js} +1 -1
  134. package/storybook-static/assets/{Popover.stories-BUVgJJQI.js → Popover.stories-CI98uwbF.js} +1 -1
  135. package/storybook-static/assets/{PresetRangeDateInput-TyV-u0Db.js → PresetRangeDateInput-CA4KuCnV.js} +1 -1
  136. package/storybook-static/assets/{PresetRangeDateInput-EiaEd6Qp.js → PresetRangeDateInput-DPfbbRXi.js} +1 -1
  137. package/storybook-static/assets/{PresetRangeDateInput.stories-jJq5Gkdb.js → PresetRangeDateInput.stories-D5HMDaN8.js} +1 -1
  138. package/storybook-static/assets/{PresetSelect-Cnl_fXjS.js → PresetSelect-CBFkq_MZ.js} +1 -1
  139. package/storybook-static/assets/{README-DT4BWDzj.js → README--OEk0Qmq.js} +14 -8
  140. package/storybook-static/assets/{README-B7f6XRLa.js → README-B6KY4Oml.js} +1 -1
  141. package/storybook-static/assets/{README-tDgobAYS.js → README-B72Uf36c.js} +1 -1
  142. package/storybook-static/assets/{README-W30_dPSQ.js → README-BRKPiLo6.js} +1 -1
  143. package/storybook-static/assets/{README-B-z6znlC.js → README-BY1Kg6xN.js} +1 -1
  144. package/storybook-static/assets/{README-CZaKBu1r.js → README-BZRJIzio.js} +1 -1
  145. package/storybook-static/assets/{README-BPWr_0XE.js → README-BaHSujqA.js} +1 -1
  146. package/storybook-static/assets/{README-BgbmWbpJ.js → README-Bc8GTovB.js} +1 -1
  147. package/storybook-static/assets/{README-WtLMdn_H.js → README-BdyEui6q.js} +1 -1
  148. package/storybook-static/assets/{README-CqCDXjY-.js → README-BhCbRil6.js} +1 -1
  149. package/storybook-static/assets/{README-CoofcGyA.js → README-BiowDKRn.js} +1 -1
  150. package/storybook-static/assets/{README-bJALHbSR.js → README-BtmHHjrx.js} +1 -1
  151. package/storybook-static/assets/{README-BsHrwATK.js → README-By8-yszE.js} +1 -1
  152. package/storybook-static/assets/{README-10_nKrEg.js → README-CE7L7eIW.js} +1 -1
  153. package/storybook-static/assets/{README-7mbN7jNm.js → README-CJOB-kej.js} +1 -1
  154. package/storybook-static/assets/{README-BGEviJbA.js → README-CPUclLXO.js} +1 -1
  155. package/storybook-static/assets/{README-g4l3WFXZ.js → README-CQimRT6Y.js} +1 -1
  156. package/storybook-static/assets/{README-CO0Anr1W.js → README-CRovKmdk.js} +1 -1
  157. package/storybook-static/assets/{README-DZKQ2NbJ.js → README-CT2RZVHo.js} +1 -1
  158. package/storybook-static/assets/{README-DBqb3xHL.js → README-CU0zq6IL.js} +1 -1
  159. package/storybook-static/assets/{README-By7MmJad.js → README-CUuFCVw8.js} +1 -1
  160. package/storybook-static/assets/{README-DB3HzmYa.js → README-CsZoOp9e.js} +1 -1
  161. package/storybook-static/assets/{README-8vaqVs2t.js → README-CtjmyPW7.js} +1 -1
  162. package/storybook-static/assets/{README-BylyIJ4z.js → README-CtvayE8p.js} +1 -1
  163. package/storybook-static/assets/{README-AbbeH5rC.js → README-CuWuOeTb.js} +1 -1
  164. package/storybook-static/assets/{README-BfF9g6q6.js → README-Cy5W56vi.js} +1 -1
  165. package/storybook-static/assets/{README-E09CwLzJ.js → README-D1jzSNUb.js} +1 -1
  166. package/storybook-static/assets/{README-Cc5RUdsX.js → README-D3_68wtX.js} +1 -1
  167. package/storybook-static/assets/{README-BWiCGCpy.js → README-D74YjDJd.js} +1 -1
  168. package/storybook-static/assets/{README-e3Zi9n04.js → README-D8rLYV25.js} +1 -1
  169. package/storybook-static/assets/{README-DXzLMFnF.js → README-DE0GwuA6.js} +1 -1
  170. package/storybook-static/assets/{README-q6R_bF6h.js → README-DGWMICIa.js} +1 -1
  171. package/storybook-static/assets/{README-6n5fAnyG.js → README-DZA9maG5.js} +1 -1
  172. package/storybook-static/assets/{README-ByxHEXaq.js → README-Da6Nl1Ll.js} +1 -1
  173. package/storybook-static/assets/{README-CqMgUXym.js → README-DbhmYFzX.js} +1 -1
  174. package/storybook-static/assets/{README-CXhBUq08.js → README-DcUxIvbg.js} +1 -1
  175. package/storybook-static/assets/{README-DsqwQGJx.js → README-DeBp5e_z.js} +1 -1
  176. package/storybook-static/assets/{README-DLGk_zi3.js → README-DiX-h2b0.js} +1 -1
  177. package/storybook-static/assets/{README-B-K2UPpo.js → README-DiXrdaJ_.js} +1 -1
  178. package/storybook-static/assets/{README-Bn7SBLqL.js → README-Dr92oepc.js} +1 -1
  179. package/storybook-static/assets/{README-BoXMNqUS.js → README-HMss6sQH.js} +1 -1
  180. package/storybook-static/assets/{README-B6uVB1ib.js → README-IU1lQ3yM.js} +1 -1
  181. package/storybook-static/assets/{README-DyhDd6j2.js → README-KCCeREhX.js} +1 -1
  182. package/storybook-static/assets/{README-8qj7XGDa.js → README-KN1rC4P4.js} +6 -3
  183. package/storybook-static/assets/{README-BoZbB8t8.js → README-NVT3zwjJ.js} +1 -1
  184. package/storybook-static/assets/{README-DnIK-CvZ.js → README-O4Hp1X2l.js} +1 -1
  185. package/storybook-static/assets/{README-_UuZJvdY.js → README-PFHdcB2Q.js} +1 -1
  186. package/storybook-static/assets/{README-DKMzvCHg.js → README-bsNRkuj0.js} +1 -1
  187. package/storybook-static/assets/{README-CZBT22Qx.js → README-eAQUctyx.js} +1 -1
  188. package/storybook-static/assets/{README-jb10Ekr5.js → README-iF6KmOih.js} +1 -1
  189. package/storybook-static/assets/{README-CmCyESsg.js → README-vfpe_LWh.js} +1 -1
  190. package/storybook-static/assets/{README-CXlUZ-Tw.js → README-xRzBwPsx.js} +1 -1
  191. package/storybook-static/assets/{README-DsEaeYrz.js → README-xnGLJkj-.js} +1 -1
  192. package/storybook-static/assets/{RadioButton-DGjO61a9.js → RadioButton-4iBITH-x.js} +1 -1
  193. package/storybook-static/assets/{RadioButton-j3O4woG8.js → RadioButton-QWhy6_MB.js} +1 -1
  194. package/storybook-static/assets/{RadioButton.stories-COGMYQcq.js → RadioButton.stories-1zA_8wcS.js} +1 -1
  195. package/storybook-static/assets/{RadioGroup-Cuj2D_RZ.js → RadioGroup-BSIdg5x1.js} +1 -1
  196. package/storybook-static/assets/{RadioGroup-D9samx7D.js → RadioGroup-CN92lZlY.js} +1 -1
  197. package/storybook-static/assets/{RadioGroup.stories-KSDvpgqY.js → RadioGroup.stories-JC6Z3CpL.js} +1 -1
  198. package/storybook-static/assets/{Scrollable-tPrIOchd.js → Scrollable-DbBJQWBv.js} +1 -1
  199. package/storybook-static/assets/{Scrollable-DsOw--4y.js → Scrollable-SCMKAvuD.js} +1 -1
  200. package/storybook-static/assets/{Scrollable.stories-B7d_6eGB.js → Scrollable.stories-CawNbs8Y.js} +1 -1
  201. package/storybook-static/assets/{Select-D0CHiGkz.js → Select-BHTlNaX3.js} +1 -1
  202. package/storybook-static/assets/{Select-h0tWQbii.js → Select-D_kHX5a5.js} +1 -1
  203. package/storybook-static/assets/{Select.stories-GmGbpUoi.js → Select.stories-DcY5-Hlt.js} +1 -1
  204. package/storybook-static/assets/{Separator-Dh8kzf-5.js → Separator-BWje1Oue.js} +1 -1
  205. package/storybook-static/assets/{Separator-C8aQcNns.js → Separator-DOk-N_yT.js} +1 -1
  206. package/storybook-static/assets/{Separator.stories-nQ9bDdo1.js → Separator.stories-DT-_4yle.js} +1 -1
  207. package/storybook-static/assets/{SerializableSelect-BJAxQ8an.js → SerializableSelect-Cg-gWCzu.js} +1 -1
  208. package/storybook-static/assets/{SerializableSelect.stories-CzVCg1_7.js → SerializableSelect.stories-DAg_4E3g.js} +1 -1
  209. package/storybook-static/assets/{ShimmerText-DnEOvvJA.js → ShimmerText-h0A5FdJn.js} +1 -1
  210. package/storybook-static/assets/{ShimmerText.stories-D2XRPcMC.js → ShimmerText.stories-MnbWai5o.js} +1 -1
  211. package/storybook-static/assets/{SingleDateTimeInput-DwY38Bzb.js → SingleDateTimeInput-CqPmAWWa.js} +1 -1
  212. package/storybook-static/assets/{SingleDateTimeInput-Bwn8kqI3.js → SingleDateTimeInput-DOqiD7di.js} +1 -1
  213. package/storybook-static/assets/{SingleDateTimeInput.stories-DKq1_AqA.js → SingleDateTimeInput.stories-C-uI6_Du.js} +1 -1
  214. package/storybook-static/assets/{Slider-KiXLZUpw.js → Slider-Djs-5-SX.js} +1 -1
  215. package/storybook-static/assets/{Slider-CT0jMXMY.js → Slider-p_L-JzII.js} +1 -1
  216. package/storybook-static/assets/{Slider.stories-Cmcm8HlR.js → Slider.stories-fhuweHOJ.js} +1 -1
  217. package/storybook-static/assets/{SliderInput-Unp3YEcU.js → SliderInput-CIVj_06t.js} +1 -1
  218. package/storybook-static/assets/{SliderInput-Dd_yvyMG.js → SliderInput-nagryhRL.js} +1 -1
  219. package/storybook-static/assets/{SliderInput.stories-C0MwvTOV.js → SliderInput.stories-BLikqr-O.js} +1 -1
  220. package/storybook-static/assets/{Sortable-CnCowZw-.js → Sortable-D0KOh-TL.js} +1 -1
  221. package/storybook-static/assets/{Sortable.stories-DCrIurAg.js → Sortable.stories-BGdtffqB.js} +1 -1
  222. package/storybook-static/assets/{Splitter-BErks2lB.js → Splitter-BsvN-OLk.js} +1 -1
  223. package/storybook-static/assets/{Splitter.stories-DyRlCVUo.js → Splitter.stories-cuiQiJ7g.js} +1 -1
  224. package/storybook-static/assets/{StateSelect-DuVzqi0t.js → StateSelect-B29YeAsu.js} +1 -1
  225. package/storybook-static/assets/{StateSelect-DXfsbduM.js → StateSelect-Dbu1AJzp.js} +1 -1
  226. package/storybook-static/assets/{StateSelect.stories-CnIXqGFB.js → StateSelect.stories-ChvBFaM2.js} +1 -1
  227. package/storybook-static/assets/{StatusIndicator-Bz3JF899.js → StatusIndicator-CsQ0EPOR.js} +1 -1
  228. package/storybook-static/assets/{StatusIndicator.stories-B5RMchH3.js → StatusIndicator.stories-CanvyqtM.js} +1 -1
  229. package/storybook-static/assets/{StringToggle.stories-CcR8KHGF.js → StringToggle.stories-D-btA7Hm.js} +1 -1
  230. package/storybook-static/assets/{Switch-Bo-dd4nL.js → Switch-C2aUtr7H.js} +1 -1
  231. package/storybook-static/assets/{Switch-a7GMbDn9.js → Switch-DeDHWbqw.js} +1 -1
  232. package/storybook-static/assets/{Switch.stories-B9c9CAmZ.js → Switch.stories-BcNfmPSy.js} +1 -1
  233. package/storybook-static/assets/{Table-BgmEmcbL.js → Table-D9AgOQn3.js} +1 -1
  234. package/storybook-static/assets/{Table.stories-BByDPmdZ.js → Table.stories-Czm2C6Rx.js} +1 -1
  235. package/storybook-static/assets/{TableEditor.stories-DJi7VPcY.js → TableEditor.stories-CXR7o59m.js} +1 -1
  236. package/storybook-static/assets/{Tabs-CV1ykDlt.js → Tabs-sOp2l3XO.js} +1 -1
  237. package/storybook-static/assets/{Tabs.stories-DOyJdrcR.js → Tabs.stories-YkP11K26.js} +1 -1
  238. package/storybook-static/assets/TabsBox-Cd3niafB.css +1 -0
  239. package/storybook-static/assets/TabsBox-CfOR1G6c.js +2 -0
  240. package/storybook-static/assets/{TagInput-j4mVWIf0.js → TagInput-C_yNW134.js} +1 -1
  241. package/storybook-static/assets/{TagInput.stories-DSU97IRU.js → TagInput.stories-D4vh6Kh3.js} +1 -1
  242. package/storybook-static/assets/{Text-COGTV38X.js → Text-IQqUM-6S.js} +1 -1
  243. package/storybook-static/assets/{Textarea-Byqjr2Ve.js → Textarea-B50-dJyP.js} +1 -1
  244. package/storybook-static/assets/{Textarea-BcgmS9aD.js → Textarea-CQ9_SeR-.js} +1 -1
  245. package/storybook-static/assets/{Textarea.stories-D1gXsWxK.js → Textarea.stories-CpEKjfqY.js} +1 -1
  246. package/storybook-static/assets/{TimePanel-DzFFLXJP.js → TimePanel-CaX_CWTW.js} +1 -1
  247. package/storybook-static/assets/{TimePanel.stories-287q5ipF.js → TimePanel.stories-BHKIw5mZ.js} +1 -1
  248. package/storybook-static/assets/{Toggle-KtpVC-vX.js → Toggle-ADeGxXl0.js} +1 -1
  249. package/storybook-static/assets/{Toggle-CCkzi_xC.js → Toggle-njM2fKQc.js} +1 -1
  250. package/storybook-static/assets/{Toggle.stories-BLKa6Zst.js → Toggle.stories-DDWsGMoy.js} +1 -1
  251. package/storybook-static/assets/{TreeMultiSelect-sYAglJIC.js → TreeMultiSelect-DY7zN0tt.js} +1 -1
  252. package/storybook-static/assets/{TreeMultiSelect-CbnCiXFa.js → TreeMultiSelect-Z4AV1Wgg.js} +1 -1
  253. package/storybook-static/assets/{TreeMultiSelect.stories-DGw_tJQ5.js → TreeMultiSelect.stories-BhkFA2S-.js} +1 -1
  254. package/storybook-static/assets/{TreePickerBase-wz0-Y-eg.js → TreePickerBase-DRCzJjx6.js} +1 -1
  255. package/storybook-static/assets/{TreeSelect-BJ6C_2pM.js → TreeSelect-DQADRaC3.js} +1 -1
  256. package/storybook-static/assets/{TreeSelect-BCOJNrl1.js → TreeSelect-q5pDp_Os.js} +1 -1
  257. package/storybook-static/assets/{TreeSelect.stories-DKdmUNAI.js → TreeSelect.stories-yLxVaaSY.js} +1 -1
  258. package/storybook-static/assets/{TreeTable-DIRsmeC8.js → TreeTable-BeZoDjBE.js} +1 -1
  259. package/storybook-static/assets/{TreeTable.stories-BfqeLJU6.js → TreeTable.stories-B2u51xrR.js} +1 -1
  260. package/storybook-static/assets/{blocks-r6nP1Mk3.js → blocks-D29TdvdI.js} +3 -3
  261. package/storybook-static/assets/{check-CX66-EtS.js → check-B9kjGnTr.js} +1 -1
  262. package/storybook-static/assets/{chevron-down-BpTVPmXw.js → chevron-down-D0ncXJ67.js} +1 -1
  263. package/storybook-static/assets/{chevron-left-BDyvowID.js → chevron-left-CGtvJ_7j.js} +1 -1
  264. package/storybook-static/assets/{chevron-right-PitONC71.js → chevron-right-1d8Q7foW.js} +1 -1
  265. package/storybook-static/assets/{chunk-W22LQPXL-Bd54JRSO.js → chunk-W22LQPXL-KzPuU6n9.js} +1 -1
  266. package/storybook-static/assets/{circle-alert-BxfK632o.js → circle-alert-Dbad7hvh.js} +1 -1
  267. package/storybook-static/assets/{circle-check-CQ0mrCVh.js → circle-check-DvnBN33e.js} +1 -1
  268. package/storybook-static/assets/{components-CJIwocXl.js → components-Pq5w8We2.js} +3 -3
  269. package/storybook-static/assets/{contextMenu-BodN1HdA.js → contextMenu-ChSRpnE7.js} +1 -1
  270. package/storybook-static/assets/{dom-DBd_DWF8.js → dom-D9_dPJ4G.js} +1 -1
  271. package/storybook-static/assets/{download-C_lZf2f4.js → download-Dt_hINTs.js} +1 -1
  272. package/storybook-static/assets/{floating-ui.react-BzwQR5CG.js → floating-ui.react-CFUzDHMb.js} +1 -1
  273. package/storybook-static/assets/{foundationApi-BgE0geET.js → foundationApi-DHs4bOpI.js} +1 -1
  274. package/storybook-static/assets/{foundationLib-6nKeXUFS.js → foundationLib-D1fm6WoY.js} +1 -1
  275. package/storybook-static/assets/{hooks-DDySZJGR.js → hooks-DrbZUNnJ.js} +1 -1
  276. package/storybook-static/assets/{iframe-B9PXVErw.js → iframe-CizMDlW9.js} +3 -3
  277. package/storybook-static/assets/iframe-CrGqOhca.js +1 -0
  278. package/storybook-static/assets/{info-rdW9neC9.js → info-Cjey-oKN.js} +1 -1
  279. package/storybook-static/assets/{odata-D6cOAxLt.js → odata-BEQC_wjB.js} +1 -1
  280. package/storybook-static/assets/{odataStoryFixtures-CGQ31IO_.js → odataStoryFixtures-CmSF4OYc.js} +1 -1
  281. package/storybook-static/assets/{react-BMktiE65.js → react-DlE-cCYf.js} +1 -1
  282. package/storybook-static/assets/{refresh-cw-CfKvrc1N.js → refresh-cw-6kuFzwuj.js} +1 -1
  283. package/storybook-static/assets/{settings-2-Drz-L5J9.js → settings-2-Dp2kvtlU.js} +1 -1
  284. package/storybook-static/assets/{sortable-BMuu2DRC.js → sortable-YgZpYlFI.js} +1 -1
  285. package/storybook-static/assets/{syntaxhighlighter-QEQV7K2Y-eBmofw1l.js → syntaxhighlighter-QEQV7K2Y-Bgf_-1Oe.js} +1 -1
  286. package/storybook-static/assets/{trash-2-DEbF1hh6.js → trash-2-CPnjzHnW.js} +1 -1
  287. package/storybook-static/assets/{triangle-alert--nwD_1ZX.js → triangle-alert-ELZCks0j.js} +1 -1
  288. package/storybook-static/assets/{useODataSelectBase-DSOGiMIw.js → useODataSelectBase-C_9p8iq2.js} +1 -1
  289. package/storybook-static/assets/{useODataTreeData-Cn_XaKz_.js → useODataTreeData-X3d38mxf.js} +1 -1
  290. package/storybook-static/assets/{usePickerQuery-B5ZZQg8g.js → usePickerQuery-Dn0Nghs1.js} +1 -1
  291. package/storybook-static/assets/{usePickerTriggerController-Cqy5IfOJ.js → usePickerTriggerController-BBzr2WZB.js} +1 -1
  292. package/storybook-static/assets/{x-DSHJbBBz.js → x-Buig9MSV.js} +1 -1
  293. package/storybook-static/iframe.html +2 -2
  294. package/storybook-static/project.json +1 -1
  295. package/storybook-static/assets/NotificationsHost.stories-BYmVl44l.js +0 -29
  296. package/storybook-static/assets/TabsBox-DuBKU62M.css +0 -1
  297. package/storybook-static/assets/TabsBox-n38x7_yO.js +0 -2
  298. package/storybook-static/assets/iframe-f5g4GUQw.js +0 -1
@@ -8,6 +8,6 @@ notify as NotificationApi,
8
8
  * @deprecated use `import { notify } from "@ryuzaki13/react-foundation-lib/notifications";`
9
9
  */
10
10
  notify };
11
- export * from "./model/NotificationsProvider";
11
+ export * from "./model";
12
12
  export * from "./ui/NotificationsHost";
13
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/notifications/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACvE,OAAO;AACN;;GAEG;AACH,MAAM,IAAI,eAAe;AACzB;;GAEG;AACH,MAAM,EACN,CAAC;AAEF,cAAc,+BAA+B,CAAC;AAC9C,cAAc,wBAAwB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/notifications/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,+CAA+C,CAAC;AACvE,OAAO;AACN;;GAEG;AACH,MAAM,IAAI,eAAe;AACzB;;GAEG;AACH,MAAM,EACN,CAAC;AAEF,cAAc,SAAS,CAAC;AACxB,cAAc,wBAAwB,CAAC"}
@@ -7,8 +7,10 @@ import { createContext as u, useContext as d, useEffect as f, useMemo as p } fro
7
7
  import { createMissingContextError as m } from "@ryuzaki13/react-foundation-lib/error";
8
8
  import { bindNotifications as h, createNotificationsStore as g, notify as _ } from "@ryuzaki13/react-foundation-lib/notifications";
9
9
  import { useStore as v } from "zustand";
10
- //#region src/notifications/model/NotificationsProvider.tsx
10
+ //#region src/notifications/model/notificationsContext.ts
11
11
  var y = u(null);
12
+ //#endregion
13
+ //#region src/notifications/model/NotificationsProvider.tsx
12
14
  function b({ children: e }) {
13
15
  let t = p(() => g(), []);
14
16
  return f(() => h(t), [t]), /* @__PURE__ */ c(y.Provider, {
@@ -16,19 +18,37 @@ function b({ children: e }) {
16
18
  children: e
17
19
  });
18
20
  }
21
+ //#endregion
22
+ //#region src/notifications/model/useNotificationsStore.ts
19
23
  function x() {
20
24
  let e = d(y);
21
25
  if (!e) throw m({
22
- hookName: "useNotificationApi",
26
+ hookName: "useNotificationsStore",
23
27
  providerName: "NotificationsProvider"
24
28
  });
25
29
  return e;
26
30
  }
27
- function S() {
31
+ //#endregion
32
+ //#region src/notifications/model/useNotificationById.ts
33
+ function S(e) {
34
+ let t = x();
35
+ return v(t, (t) => t.items.find((t) => t.id === e));
36
+ }
37
+ //#endregion
38
+ //#region src/notifications/model/useNotificationHistory.ts
39
+ function C() {
40
+ let e = x();
41
+ return v(e, (e) => e.history);
42
+ }
43
+ //#endregion
44
+ //#region src/notifications/model/useNotifications.ts
45
+ function w() {
28
46
  let e = x();
29
47
  return v(e, (e) => e.items);
30
48
  }
31
- function C() {
49
+ //#endregion
50
+ //#region src/notifications/model/useNotify.ts
51
+ function T() {
32
52
  let e = x(), t = v(e, (e) => e.actions), n = (e) => (n, r) => t.push({
33
53
  type: e,
34
54
  message: n,
@@ -42,11 +62,7 @@ function C() {
42
62
  error: n("error")
43
63
  };
44
64
  }
45
- function w(e) {
46
- let t = x();
47
- return v(t, (t) => t.items.find((t) => t.id === e));
48
- }
49
- var T = {
65
+ var E = {
50
66
  container: "STGQ3g",
51
67
  card: "RaiISE",
52
68
  info: "cM81wO",
@@ -61,7 +77,7 @@ var T = {
61
77
  title: "_4YDLB5",
62
78
  message: "CK3Bqv",
63
79
  actions: "nLmQut"
64
- }, E = {
80
+ }, D = {
65
81
  info: {
66
82
  title: "Информация",
67
83
  Icon: a
@@ -79,47 +95,47 @@ var T = {
79
95
  Icon: r
80
96
  }
81
97
  };
82
- function D() {
83
- let r = S(), { dismiss: i } = C();
98
+ function O() {
99
+ let r = w(), { dismiss: i } = T();
84
100
  return /* @__PURE__ */ c("section", {
85
- className: T.container,
101
+ className: E.container,
86
102
  "aria-label": "Область уведомлений",
87
103
  children: r.map((r) => {
88
- let a = E[r.type], o = r.title ?? a.title, u = a.Icon;
104
+ let a = D[r.type], o = r.title ?? a.title, u = a.Icon;
89
105
  return /* @__PURE__ */ c("div", {
90
106
  role: r.type === "error" ? "alert" : "status",
91
107
  "aria-atomic": "true",
92
- className: n(T.card, T[r.type]),
108
+ className: n(E.card, E[r.type]),
93
109
  children: /* @__PURE__ */ l(e, {
94
110
  align: "start",
95
111
  justify: "between",
96
112
  gap: "sm",
97
- className: T.header,
113
+ className: E.header,
98
114
  children: [/* @__PURE__ */ l(e, {
99
115
  align: "start",
100
116
  gap: "sm",
101
- className: T.content,
117
+ className: E.content,
102
118
  children: [/* @__PURE__ */ c("span", {
103
- className: T.icon,
119
+ className: E.icon,
104
120
  "aria-hidden": "true",
105
121
  children: /* @__PURE__ */ c(u, {})
106
122
  }), /* @__PURE__ */ l("div", {
107
- className: T.copy,
123
+ className: E.copy,
108
124
  children: [
109
125
  /* @__PURE__ */ c("div", {
110
- className: T.kicker,
126
+ className: E.kicker,
111
127
  children: a.title
112
128
  }),
113
129
  r.title ? /* @__PURE__ */ c("div", {
114
- className: T.title,
130
+ className: E.title,
115
131
  children: o
116
132
  }) : null,
117
133
  /* @__PURE__ */ c("div", {
118
- className: T.message,
134
+ className: E.message,
119
135
  children: r.message
120
136
  }),
121
137
  r.actions?.length ? /* @__PURE__ */ c("div", {
122
- className: T.actions,
138
+ className: E.actions,
123
139
  children: r.actions.map((e) => /* @__PURE__ */ c(t, {
124
140
  tone: e.tone ?? r.type,
125
141
  appearance: "outline",
@@ -146,6 +162,6 @@ function D() {
146
162
  });
147
163
  }
148
164
  //#endregion
149
- export { _ as NotificationApi, _ as notify, D as NotificationsHost, b as NotificationsProvider, w as useNotificationById, S as useNotifications, C as useNotify };
165
+ export { _ as NotificationApi, _ as notify, O as NotificationsHost, b as NotificationsProvider, S as useNotificationById, C as useNotificationHistory, w as useNotifications, T as useNotify };
150
166
 
151
167
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":[],"sources":["../../src/notifications/model/NotificationsProvider.tsx","../../src/notifications/ui/Notification.module.scss","../../src/notifications/ui/NotificationsHost.tsx"],"sourcesContent":["/* eslint-disable react-refresh/only-export-components */\nimport { createContext, PropsWithChildren, useContext, useEffect, useMemo } from \"react\";\n\nimport { createMissingContextError } from \"@ryuzaki13/react-foundation-lib/error\";\nimport {\n\tbindNotifications,\n\tcreateNotificationsStore,\n\tNotificationId,\n\tNotificationPushInput,\n\tNotificationsStoreApi,\n\tNotificationType\n} from \"@ryuzaki13/react-foundation-lib/notifications\";\nimport { useStore } from \"zustand\";\n\nconst NotificationsContext = createContext<NotificationsStoreApi | null>(null);\n\n/**\n * Провайдер уведомлений приложения. Хранит состояние списка уведомлений и предоставляет хуки доступа к нему.\n */\nexport function NotificationsProvider({ children }: PropsWithChildren) {\n\tconst store = useMemo(() => createNotificationsStore(), []);\n\n\tuseEffect(() => {\n\t\treturn bindNotifications(store);\n\t}, [store]);\n\n\treturn <NotificationsContext.Provider value={store}>{children}</NotificationsContext.Provider>;\n}\n\nfunction useNotificationApi() {\n\tconst ctx = useContext(NotificationsContext);\n\tif (!ctx) {\n\t\tthrow createMissingContextError({\n\t\t\thookName: \"useNotificationApi\",\n\t\t\tproviderName: \"NotificationsProvider\"\n\t\t});\n\t}\n\treturn ctx;\n}\n\nexport function useNotifications() {\n\tconst api = useNotificationApi();\n\treturn useStore(api, (s) => s.items);\n}\n\nexport function useNotify() {\n\tconst api = useNotificationApi();\n\tconst actions = useStore(api, (s) => s.actions);\n\n\tconst mk = (type: NotificationType) => (message: string, opts?: Omit<NotificationPushInput, \"type\" | \"message\">) =>\n\t\tactions.push({ type, message, ...opts });\n\n\treturn {\n\t\t...actions,\n\t\tsuccess: mk(\"success\"),\n\t\tinfo: mk(\"info\"),\n\t\twarning: mk(\"warning\"),\n\t\terror: mk(\"error\")\n\t};\n}\n\nexport function useNotificationById(id: NotificationId) {\n\tconst api = useNotificationApi();\n\treturn useStore(api, (s) => s.items.find((n) => n.id === id));\n}\n","@use \"@/styles/mixins\" as *;\n@use \"@/styles/tone-derived\" as toneDerived;\n\n.container {\n\tposition: fixed;\n\tz-index: var(--z-notify);\n\tbottom: 0;\n\tleft: 0;\n\tdisplay: grid;\n\tgap: var(--space-sm);\n\tpadding: var(--space-lg);\n\twidth: min(28em, calc(100dvw - var(--space-lg) * 2));\n\tpointer-events: none;\n}\n\n.card {\n\t--notify-accent: var(--border-1);\n\t--notify-accent-surface: var(--surface-1);\n\t--notify-accent-text: var(--accent-text);\n\n\tposition: relative;\n\toverflow: hidden;\n\tpointer-events: auto;\n\twidth: 100%;\n\tpadding: var(--space-md);\n\t// border: var(--border);\n\tborder-left: 0.3125em solid var(--notify-accent);\n\tborder-radius: var(--radius-md);\n\tbackground: linear-gradient(37deg, var(--notify-accent-surface), var(--surface-0));\n\tcolor: var(--content-0);\n\tbox-shadow: var(--shadow-md);\n}\n\n.info {\n\t--notify-accent: var(--info-border);\n\t@include toneDerived.tone-soft-declaration(\"--notify-accent-surface\", \"info\");\n\t--notify-accent-text: var(--info-text);\n}\n\n.success {\n\t--notify-accent: var(--success-border);\n\t@include toneDerived.tone-soft-declaration(\"--notify-accent-surface\", \"success\");\n\t--notify-accent-text: var(--success-text);\n}\n\n.warning {\n\t--notify-accent: var(--warning-border);\n\t@include toneDerived.tone-soft-declaration(\"--notify-accent-surface\", \"warning\");\n\t--notify-accent-text: var(--warning-text);\n}\n\n.error {\n\t--notify-accent: var(--error-border);\n\t@include toneDerived.tone-soft-declaration(\"--notify-accent-surface\", \"error\");\n\t--notify-accent-text: var(--error-text);\n}\n\n.header,\n.content,\n.copy {\n\tmin-width: 0;\n}\n\n.content {\n\tmin-width: 0;\n\tflex: 1;\n}\n\n.icon {\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: center;\n\tflex-shrink: 0;\n\twidth: var(--control-height);\n\theight: var(--control-height);\n\tborder-radius: 50%;\n\tbackground-color: var(--notify-accent-surface);\n\tcolor: var(--notify-accent-text);\n\tborder: var(--border-width) solid color-mix(in srgb, var(--notify-accent) 22%, transparent);\n\n\tsvg {\n\t\twidth: 1.125em;\n\t\theight: 1.125em;\n\t}\n}\n\n.kicker {\n\tmargin-bottom: var(--space-xs);\n\tcolor: var(--notify-accent-text);\n\tfont-size: var(--font-size-xs);\n\tfont-weight: 600;\n\tfont-variation-settings: \"wght\" 600;\n\tletter-spacing: 0.04em;\n\ttext-transform: uppercase;\n}\n\n.title {\n\tcolor: var(--notify-accent-text);\n\tfont-weight: 600;\n\tfont-variation-settings: \"wght\" 600;\n}\n\n.message {\n\tmargin-top: var(--space-xs);\n\tcolor: var(--content-0);\n\twhite-space: pre-wrap;\n\tword-break: break-word;\n}\n\n.actions {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tgap: var(--space-xs);\n\tmargin-top: var(--space-sm);\n}\n\n@include mobile {\n\t.container {\n\t\tpadding: var(--space-md);\n\t\t// Контейнер занимает viewport целиком, а padding задаёт карточкам симметричные отступы от его краёв.\n\t\twidth: 100dvw;\n\t}\n}\n","import { type NotificationType } from \"@ryuzaki13/react-foundation-lib/notifications\";\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { AlertCircleIcon, CheckCircle2Icon, InfoIcon, TriangleAlertIcon, XIcon } from \"lucide-react\";\n\nimport { Button } from \"../../button\";\nimport { FlexContainer } from \"../../flex\";\nimport { useNotifications, useNotify } from \"../model/NotificationsProvider\";\n\nimport styles from \"./Notification.module.scss\";\n\nconst notificationConfig: Record<\n\tNotificationType,\n\t{\n\t\ttitle: string;\n\t\tIcon: typeof InfoIcon;\n\t}\n> = {\n\tinfo: {\n\t\ttitle: \"Информация\",\n\t\tIcon: InfoIcon\n\t},\n\tsuccess: {\n\t\ttitle: \"Успешно\",\n\t\tIcon: CheckCircle2Icon\n\t},\n\twarning: {\n\t\ttitle: \"Предупреждение\",\n\t\tIcon: TriangleAlertIcon\n\t},\n\terror: {\n\t\ttitle: \"Ошибка\",\n\t\tIcon: AlertCircleIcon\n\t}\n};\n\n/**\n * Хост для визуального отображения очереди уведомлений.\n * Обычно монтируется один раз на уровне приложения рядом с провайдером уведомлений.\n */\nexport function NotificationsHost() {\n\tconst items = useNotifications();\n\tconst { dismiss } = useNotify();\n\n\treturn (\n\t\t<section className={styles.container} aria-label=\"Область уведомлений\">\n\t\t\t{items.map((notification) => {\n\t\t\t\tconst config = notificationConfig[notification.type];\n\t\t\t\tconst title = notification.title ?? config.title;\n\t\t\t\tconst Icon = config.Icon;\n\n\t\t\t\treturn (\n\t\t\t\t\t<div\n\t\t\t\t\t\tkey={notification.id}\n\t\t\t\t\t\trole={notification.type === \"error\" ? \"alert\" : \"status\"}\n\t\t\t\t\t\taria-atomic=\"true\"\n\t\t\t\t\t\tclassName={cn(styles.card, styles[notification.type])}>\n\t\t\t\t\t\t<FlexContainer align=\"start\" justify=\"between\" gap=\"sm\" className={styles.header}>\n\t\t\t\t\t\t\t<FlexContainer align=\"start\" gap=\"sm\" className={styles.content}>\n\t\t\t\t\t\t\t\t<span className={styles.icon} aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t<Icon />\n\t\t\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\t\t\t<div className={styles.copy}>\n\t\t\t\t\t\t\t\t\t<div className={styles.kicker}>{config.title}</div>\n\t\t\t\t\t\t\t\t\t{notification.title ? <div className={styles.title}>{title}</div> : null}\n\t\t\t\t\t\t\t\t\t<div className={styles.message}>{notification.message}</div>\n\n\t\t\t\t\t\t\t\t\t{notification.actions?.length ? (\n\t\t\t\t\t\t\t\t\t\t<div className={styles.actions}>\n\t\t\t\t\t\t\t\t\t\t\t{notification.actions.map((action) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={action.label}\n\t\t\t\t\t\t\t\t\t\t\t\t\ttone={action.tone ?? notification.type}\n\t\t\t\t\t\t\t\t\t\t\t\t\tappearance=\"outline\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tdata-ui=\"notification-action-button\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tdata-action=\"notification-action\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => void action.onClick()}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{action.label}\n\t\t\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</FlexContainer>\n\n\t\t\t\t\t\t\t{notification.dismissible !== false ? (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={<XIcon />}\n\t\t\t\t\t\t\t\t\tappearance=\"ghost\"\n\t\t\t\t\t\t\t\t\ttone={notification.type}\n\t\t\t\t\t\t\t\t\tonClick={() => dismiss(notification.id)}\n\t\t\t\t\t\t\t\t\taria-label={`Закрыть уведомление «${title}»`}\n\t\t\t\t\t\t\t\t\tdata-ui=\"notification-dismiss-button\"\n\t\t\t\t\t\t\t\t\tdata-action=\"dismiss-notification\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t</FlexContainer>\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t})}\n\t\t</section>\n\t);\n}\n"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/notifications/model/notificationsContext.ts","../../src/notifications/model/NotificationsProvider.tsx","../../src/notifications/model/useNotificationsStore.ts","../../src/notifications/model/useNotificationById.ts","../../src/notifications/model/useNotificationHistory.ts","../../src/notifications/model/useNotifications.ts","../../src/notifications/model/useNotify.ts","../../src/notifications/ui/Notification.module.scss","../../src/notifications/ui/NotificationsHost.tsx"],"sourcesContent":["import { createContext } from \"react\";\n\nimport { type NotificationsStoreApi } from \"@ryuzaki13/react-foundation-lib/notifications\";\n\n/** Внутренний канал store: публичный доступ host-проект получает через notification-хуки. */\nexport const NotificationsContext = createContext<NotificationsStoreApi | null>(null);\n","import { type PropsWithChildren, useEffect, useMemo } from \"react\";\n\nimport { bindNotifications, createNotificationsStore } from \"@ryuzaki13/react-foundation-lib/notifications\";\n\nimport { NotificationsContext } from \"./notificationsContext\";\n\n/**\n * Провайдер уведомлений приложения. Хранит активный toast-стек и полную историю уведомлений.\n */\nexport function NotificationsProvider({ children }: PropsWithChildren) {\n\tconst store = useMemo(() => createNotificationsStore(), []);\n\n\tuseEffect(() => bindNotifications(store), [store]);\n\n\treturn <NotificationsContext.Provider value={store}>{children}</NotificationsContext.Provider>;\n}\n","import { useContext } from \"react\";\n\nimport { createMissingContextError } from \"@ryuzaki13/react-foundation-lib/error\";\n\nimport { NotificationsContext } from \"./notificationsContext\";\n\n/** Возвращает store ближайшего NotificationsProvider для внутренних notification-хуков. */\nexport function useNotificationsStore() {\n\tconst store = useContext(NotificationsContext);\n\n\tif (!store) {\n\t\tthrow createMissingContextError({\n\t\t\thookName: \"useNotificationsStore\",\n\t\t\tproviderName: \"NotificationsProvider\"\n\t\t});\n\t}\n\n\treturn store;\n}\n","import { type NotificationId } from \"@ryuzaki13/react-foundation-lib/notifications\";\nimport { useStore } from \"zustand\";\n\nimport { useNotificationsStore } from \"./useNotificationsStore\";\n\n/** Возвращает активное toast-уведомление по идентификатору. */\nexport function useNotificationById(id: NotificationId) {\n\tconst store = useNotificationsStore();\n\treturn useStore(store, (state) => state.items.find((notification) => notification.id === id));\n}\n","import { useStore } from \"zustand\";\n\nimport { useNotificationsStore } from \"./useNotificationsStore\";\n\n/**\n * Возвращает полную историю уведомлений за время жизни NotificationsProvider.\n * Hook не задаёт контейнер или разметку: host-проект сам отображает историю на странице, в модалке или диалоге.\n */\nexport function useNotificationHistory() {\n\tconst store = useNotificationsStore();\n\treturn useStore(store, (state) => state.history);\n}\n","import { useStore } from \"zustand\";\n\nimport { useNotificationsStore } from \"./useNotificationsStore\";\n\n/** Возвращает активные уведомления, которые отображает краткоживущий toast-host. */\nexport function useNotifications() {\n\tconst store = useNotificationsStore();\n\treturn useStore(store, (state) => state.items);\n}\n","import { type NotificationPushInput, type NotificationType } from \"@ryuzaki13/react-foundation-lib/notifications\";\nimport { useStore } from \"zustand\";\n\nimport { useNotificationsStore } from \"./useNotificationsStore\";\n\n/** Возвращает действия notification-store и сокращённые методы для каждого типа уведомления. */\nexport function useNotify() {\n\tconst store = useNotificationsStore();\n\tconst actions = useStore(store, (state) => state.actions);\n\n\tconst createShortcut = (type: NotificationType) => (message: string, options?: Omit<NotificationPushInput, \"type\" | \"message\">) =>\n\t\tactions.push({ type, message, ...options });\n\n\treturn {\n\t\t...actions,\n\t\tsuccess: createShortcut(\"success\"),\n\t\tinfo: createShortcut(\"info\"),\n\t\twarning: createShortcut(\"warning\"),\n\t\terror: createShortcut(\"error\")\n\t};\n}\n","@use \"@/styles/mixins\" as *;\n@use \"@/styles/tone-derived\" as toneDerived;\n\n.container {\n\tposition: fixed;\n\tz-index: var(--z-notify);\n\tbottom: 0;\n\tleft: 0;\n\tdisplay: grid;\n\tgap: var(--space-sm);\n\tpadding: var(--space-lg);\n\twidth: min(28em, calc(100dvw - var(--space-lg) * 2));\n\tpointer-events: none;\n}\n\n.card {\n\t--notify-accent: var(--border-1);\n\t--notify-accent-surface: var(--surface-1);\n\t--notify-accent-text: var(--accent-text);\n\n\tposition: relative;\n\toverflow: hidden;\n\tpointer-events: auto;\n\twidth: 100%;\n\tpadding: var(--space-md);\n\t// border: var(--border);\n\tborder-left: 0.3125em solid var(--notify-accent);\n\tborder-radius: var(--radius-md);\n\tbackground: linear-gradient(37deg, var(--notify-accent-surface), var(--surface-0));\n\tcolor: var(--content-0);\n\tbox-shadow: var(--shadow-md);\n}\n\n.info {\n\t--notify-accent: var(--info-border);\n\t@include toneDerived.tone-soft-declaration(\"--notify-accent-surface\", \"info\");\n\t--notify-accent-text: var(--info-text);\n}\n\n.success {\n\t--notify-accent: var(--success-border);\n\t@include toneDerived.tone-soft-declaration(\"--notify-accent-surface\", \"success\");\n\t--notify-accent-text: var(--success-text);\n}\n\n.warning {\n\t--notify-accent: var(--warning-border);\n\t@include toneDerived.tone-soft-declaration(\"--notify-accent-surface\", \"warning\");\n\t--notify-accent-text: var(--warning-text);\n}\n\n.error {\n\t--notify-accent: var(--error-border);\n\t@include toneDerived.tone-soft-declaration(\"--notify-accent-surface\", \"error\");\n\t--notify-accent-text: var(--error-text);\n}\n\n.header,\n.content,\n.copy {\n\tmin-width: 0;\n}\n\n.content {\n\tmin-width: 0;\n\tflex: 1;\n}\n\n.icon {\n\tdisplay: inline-flex;\n\talign-items: center;\n\tjustify-content: center;\n\tflex-shrink: 0;\n\twidth: var(--control-height);\n\theight: var(--control-height);\n\tborder-radius: 50%;\n\tbackground-color: var(--notify-accent-surface);\n\tcolor: var(--notify-accent-text);\n\tborder: var(--border-width) solid color-mix(in srgb, var(--notify-accent) 22%, transparent);\n\n\tsvg {\n\t\twidth: 1.125em;\n\t\theight: 1.125em;\n\t}\n}\n\n.kicker {\n\tmargin-bottom: var(--space-xs);\n\tcolor: var(--notify-accent-text);\n\tfont-size: var(--font-size-xs);\n\tfont-weight: 600;\n\tfont-variation-settings: \"wght\" 600;\n\tletter-spacing: 0.04em;\n\ttext-transform: uppercase;\n}\n\n.title {\n\tcolor: var(--notify-accent-text);\n\tfont-weight: 600;\n\tfont-variation-settings: \"wght\" 600;\n}\n\n.message {\n\tmargin-top: var(--space-xs);\n\tcolor: var(--content-0);\n\twhite-space: pre-wrap;\n\tword-break: break-word;\n}\n\n.actions {\n\tdisplay: flex;\n\tflex-wrap: wrap;\n\tgap: var(--space-xs);\n\tmargin-top: var(--space-sm);\n}\n\n@include mobile {\n\t.container {\n\t\tpadding: var(--space-md);\n\t\t// Контейнер занимает viewport целиком, а padding задаёт карточкам симметричные отступы от его краёв.\n\t\twidth: 100dvw;\n\t}\n}\n","import { type NotificationType } from \"@ryuzaki13/react-foundation-lib/notifications\";\nimport { cn } from \"@ryuzaki13/react-foundation-lib/utils\";\nimport { AlertCircleIcon, CheckCircle2Icon, InfoIcon, TriangleAlertIcon, XIcon } from \"lucide-react\";\n\nimport { Button } from \"../../button\";\nimport { FlexContainer } from \"../../flex\";\nimport { useNotifications, useNotify } from \"../model\";\n\nimport styles from \"./Notification.module.scss\";\n\nconst notificationConfig: Record<\n\tNotificationType,\n\t{\n\t\ttitle: string;\n\t\tIcon: typeof InfoIcon;\n\t}\n> = {\n\tinfo: {\n\t\ttitle: \"Информация\",\n\t\tIcon: InfoIcon\n\t},\n\tsuccess: {\n\t\ttitle: \"Успешно\",\n\t\tIcon: CheckCircle2Icon\n\t},\n\twarning: {\n\t\ttitle: \"Предупреждение\",\n\t\tIcon: TriangleAlertIcon\n\t},\n\terror: {\n\t\ttitle: \"Ошибка\",\n\t\tIcon: AlertCircleIcon\n\t}\n};\n\n/**\n * Хост для визуального отображения активного toast-стека.\n * Обычно монтируется один раз на уровне приложения рядом с провайдером уведомлений.\n * Полную историю host-проект отображает отдельно через useNotificationHistory.\n */\nexport function NotificationsHost() {\n\tconst items = useNotifications();\n\tconst { dismiss } = useNotify();\n\n\treturn (\n\t\t<section className={styles.container} aria-label=\"Область уведомлений\">\n\t\t\t{items.map((notification) => {\n\t\t\t\tconst config = notificationConfig[notification.type];\n\t\t\t\tconst title = notification.title ?? config.title;\n\t\t\t\tconst Icon = config.Icon;\n\n\t\t\t\treturn (\n\t\t\t\t\t<div\n\t\t\t\t\t\tkey={notification.id}\n\t\t\t\t\t\trole={notification.type === \"error\" ? \"alert\" : \"status\"}\n\t\t\t\t\t\taria-atomic=\"true\"\n\t\t\t\t\t\tclassName={cn(styles.card, styles[notification.type])}>\n\t\t\t\t\t\t<FlexContainer align=\"start\" justify=\"between\" gap=\"sm\" className={styles.header}>\n\t\t\t\t\t\t\t<FlexContainer align=\"start\" gap=\"sm\" className={styles.content}>\n\t\t\t\t\t\t\t\t<span className={styles.icon} aria-hidden=\"true\">\n\t\t\t\t\t\t\t\t\t<Icon />\n\t\t\t\t\t\t\t\t</span>\n\n\t\t\t\t\t\t\t\t<div className={styles.copy}>\n\t\t\t\t\t\t\t\t\t<div className={styles.kicker}>{config.title}</div>\n\t\t\t\t\t\t\t\t\t{notification.title ? <div className={styles.title}>{title}</div> : null}\n\t\t\t\t\t\t\t\t\t<div className={styles.message}>{notification.message}</div>\n\n\t\t\t\t\t\t\t\t\t{notification.actions?.length ? (\n\t\t\t\t\t\t\t\t\t\t<div className={styles.actions}>\n\t\t\t\t\t\t\t\t\t\t\t{notification.actions.map((action) => (\n\t\t\t\t\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\t\t\t\t\tkey={action.label}\n\t\t\t\t\t\t\t\t\t\t\t\t\ttone={action.tone ?? notification.type}\n\t\t\t\t\t\t\t\t\t\t\t\t\tappearance=\"outline\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tdata-ui=\"notification-action-button\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tdata-action=\"notification-action\"\n\t\t\t\t\t\t\t\t\t\t\t\t\tonClick={() => void action.onClick()}>\n\t\t\t\t\t\t\t\t\t\t\t\t\t{action.label}\n\t\t\t\t\t\t\t\t\t\t\t\t</Button>\n\t\t\t\t\t\t\t\t\t\t\t))}\n\t\t\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t\t</FlexContainer>\n\n\t\t\t\t\t\t\t{notification.dismissible !== false ? (\n\t\t\t\t\t\t\t\t<Button\n\t\t\t\t\t\t\t\t\ticon={<XIcon />}\n\t\t\t\t\t\t\t\t\tappearance=\"ghost\"\n\t\t\t\t\t\t\t\t\ttone={notification.type}\n\t\t\t\t\t\t\t\t\tonClick={() => dismiss(notification.id)}\n\t\t\t\t\t\t\t\t\taria-label={`Закрыть уведомление «${title}»`}\n\t\t\t\t\t\t\t\t\tdata-ui=\"notification-dismiss-button\"\n\t\t\t\t\t\t\t\t\tdata-action=\"dismiss-notification\"\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t) : null}\n\t\t\t\t\t\t</FlexContainer>\n\t\t\t\t\t</div>\n\t\t\t\t);\n\t\t\t})}\n\t\t</section>\n\t);\n}\n"],"mappings":"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"}
@@ -1,22 +1,6 @@
1
- import { PropsWithChildren } from "react";
2
- import { NotificationId, NotificationPushInput } from "@ryuzaki13/react-foundation-lib/notifications";
1
+ import { type PropsWithChildren } from "react";
3
2
  /**
4
- * Провайдер уведомлений приложения. Хранит состояние списка уведомлений и предоставляет хуки доступа к нему.
3
+ * Провайдер уведомлений приложения. Хранит активный toast-стек и полную историю уведомлений.
5
4
  */
6
5
  export declare function NotificationsProvider({ children }: PropsWithChildren): import("react").JSX.Element;
7
- export declare function useNotifications(): import("@ryuzaki13/react-foundation-lib/notifications").Notification[];
8
- export declare function useNotify(): {
9
- success: (message: string, opts?: Omit<NotificationPushInput, "type" | "message">) => string;
10
- info: (message: string, opts?: Omit<NotificationPushInput, "type" | "message">) => string;
11
- warning: (message: string, opts?: Omit<NotificationPushInput, "type" | "message">) => string;
12
- error: (message: string, opts?: Omit<NotificationPushInput, "type" | "message">) => string;
13
- push: (input: NotificationPushInput) => NotificationId;
14
- update: (id: NotificationId, patch: import("@ryuzaki13/react-foundation-lib/notifications").NotificationUpdatePatch) => boolean;
15
- upsert: (input: NotificationPushInput & {
16
- id: NotificationId;
17
- }) => NotificationId;
18
- dismiss: (id: NotificationId) => void;
19
- clear: () => void;
20
- };
21
- export declare function useNotificationById(id: NotificationId): import("@ryuzaki13/react-foundation-lib/notifications").Notification | undefined;
22
6
  //# sourceMappingURL=NotificationsProvider.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationsProvider.d.ts","sourceRoot":"","sources":["../../../src/notifications/model/NotificationsProvider.tsx"],"names":[],"mappings":"AACA,OAAO,EAAiB,iBAAiB,EAAkC,MAAM,OAAO,CAAC;AAGzF,OAAO,EAGN,cAAc,EACd,qBAAqB,EAGrB,MAAM,+CAA+C,CAAC;AAKvD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,+BAQpE;AAaD,wBAAgB,gBAAgB,2EAG/B;AAED,wBAAgB,SAAS;uBAIyB,MAAM,SAAS,IAAI,CAAC,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;oBAA9D,MAAM,SAAS,IAAI,CAAC,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;uBAA9D,MAAM,SAAS,IAAI,CAAC,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;qBAA9D,MAAM,SAAS,IAAI,CAAC,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;;;;;;;;EAU/G;AAED,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,cAAc,oFAGrD"}
1
+ {"version":3,"file":"NotificationsProvider.d.ts","sourceRoot":"","sources":["../../../src/notifications/model/NotificationsProvider.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,iBAAiB,EAAsB,MAAM,OAAO,CAAC;AAMnE;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,EAAE,QAAQ,EAAE,EAAE,iBAAiB,+BAMpE"}
@@ -1,2 +1,6 @@
1
1
  export * from "./NotificationsProvider";
2
+ export * from "./useNotificationById";
3
+ export * from "./useNotificationHistory";
4
+ export * from "./useNotifications";
5
+ export * from "./useNotify";
2
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/notifications/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/notifications/model/index.ts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,uBAAuB,CAAC;AACtC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type NotificationsStoreApi } from "@ryuzaki13/react-foundation-lib/notifications";
2
+ /** Внутренний канал store: публичный доступ host-проект получает через notification-хуки. */
3
+ export declare const NotificationsContext: import("react").Context<NotificationsStoreApi | null>;
4
+ //# sourceMappingURL=notificationsContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"notificationsContext.d.ts","sourceRoot":"","sources":["../../../src/notifications/model/notificationsContext.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,qBAAqB,EAAE,MAAM,+CAA+C,CAAC;AAE3F,6FAA6F;AAC7F,eAAO,MAAM,oBAAoB,uDAAoD,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { type NotificationId } from "@ryuzaki13/react-foundation-lib/notifications";
2
+ /** Возвращает активное toast-уведомление по идентификатору. */
3
+ export declare function useNotificationById(id: NotificationId): import("@ryuzaki13/react-foundation-lib/notifications").Notification | undefined;
4
+ //# sourceMappingURL=useNotificationById.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useNotificationById.d.ts","sourceRoot":"","sources":["../../../src/notifications/model/useNotificationById.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAKpF,+DAA+D;AAC/D,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,cAAc,oFAGrD"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Возвращает полную историю уведомлений за время жизни NotificationsProvider.
3
+ * Hook не задаёт контейнер или разметку: host-проект сам отображает историю на странице, в модалке или диалоге.
4
+ */
5
+ export declare function useNotificationHistory(): import("@ryuzaki13/react-foundation-lib/notifications").Notification[];
6
+ //# sourceMappingURL=useNotificationHistory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useNotificationHistory.d.ts","sourceRoot":"","sources":["../../../src/notifications/model/useNotificationHistory.ts"],"names":[],"mappings":"AAIA;;;GAGG;AACH,wBAAgB,sBAAsB,2EAGrC"}
@@ -0,0 +1,3 @@
1
+ /** Возвращает активные уведомления, которые отображает краткоживущий toast-host. */
2
+ export declare function useNotifications(): import("@ryuzaki13/react-foundation-lib/notifications").Notification[];
3
+ //# sourceMappingURL=useNotifications.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useNotifications.d.ts","sourceRoot":"","sources":["../../../src/notifications/model/useNotifications.ts"],"names":[],"mappings":"AAIA,oFAAoF;AACpF,wBAAgB,gBAAgB,2EAG/B"}
@@ -0,0 +1,3 @@
1
+ /** Возвращает store ближайшего NotificationsProvider для внутренних notification-хуков. */
2
+ export declare function useNotificationsStore(): import("@ryuzaki13/react-foundation-lib/notifications").NotificationsStoreApi;
3
+ //# sourceMappingURL=useNotificationsStore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useNotificationsStore.d.ts","sourceRoot":"","sources":["../../../src/notifications/model/useNotificationsStore.ts"],"names":[],"mappings":"AAMA,2FAA2F;AAC3F,wBAAgB,qBAAqB,kFAWpC"}
@@ -0,0 +1,17 @@
1
+ import { type NotificationPushInput } from "@ryuzaki13/react-foundation-lib/notifications";
2
+ /** Возвращает действия notification-store и сокращённые методы для каждого типа уведомления. */
3
+ export declare function useNotify(): {
4
+ success: (message: string, options?: Omit<NotificationPushInput, "type" | "message">) => string;
5
+ info: (message: string, options?: Omit<NotificationPushInput, "type" | "message">) => string;
6
+ warning: (message: string, options?: Omit<NotificationPushInput, "type" | "message">) => string;
7
+ error: (message: string, options?: Omit<NotificationPushInput, "type" | "message">) => string;
8
+ push: (input: NotificationPushInput) => import("@ryuzaki13/react-foundation-lib/notifications").NotificationId;
9
+ update: (id: import("@ryuzaki13/react-foundation-lib/notifications").NotificationId, patch: import("@ryuzaki13/react-foundation-lib/notifications").NotificationUpdatePatch) => boolean;
10
+ upsert: (input: NotificationPushInput & {
11
+ id: import("@ryuzaki13/react-foundation-lib/notifications").NotificationId;
12
+ }) => import("@ryuzaki13/react-foundation-lib/notifications").NotificationId;
13
+ dismiss: (id: import("@ryuzaki13/react-foundation-lib/notifications").NotificationId) => void;
14
+ clear: () => void;
15
+ clearHistory: () => void;
16
+ };
17
+ //# sourceMappingURL=useNotify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useNotify.d.ts","sourceRoot":"","sources":["../../../src/notifications/model/useNotify.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,qBAAqB,EAAyB,MAAM,+CAA+C,CAAC;AAKlH,gGAAgG;AAChG,wBAAgB,SAAS;uBAIqC,MAAM,YAAY,IAAI,CAAC,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;oBAAjE,MAAM,YAAY,IAAI,CAAC,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;uBAAjE,MAAM,YAAY,IAAI,CAAC,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;qBAAjE,MAAM,YAAY,IAAI,CAAC,qBAAqB,EAAE,MAAM,GAAG,SAAS,CAAC;;;;;;;;;EAU9H"}
@@ -1,6 +1,7 @@
1
1
  /**
2
- * Хост для визуального отображения очереди уведомлений.
2
+ * Хост для визуального отображения активного toast-стека.
3
3
  * Обычно монтируется один раз на уровне приложения рядом с провайдером уведомлений.
4
+ * Полную историю host-проект отображает отдельно через useNotificationHistory.
4
5
  */
5
6
  export declare function NotificationsHost(): import("react").JSX.Element;
6
7
  //# sourceMappingURL=NotificationsHost.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"NotificationsHost.d.ts","sourceRoot":"","sources":["../../../src/notifications/ui/NotificationsHost.tsx"],"names":[],"mappings":"AAmCA;;;GAGG;AACH,wBAAgB,iBAAiB,gCA+DhC"}
1
+ {"version":3,"file":"NotificationsHost.d.ts","sourceRoot":"","sources":["../../../src/notifications/ui/NotificationsHost.tsx"],"names":[],"mappings":"AAmCA;;;;GAIG;AACH,wBAAgB,iBAAiB,gCA+DhC"}