@solidxai/core-ui 0.1.8-beta.9 → 0.1.9-alpha.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 (457) hide show
  1. package/README.md +2 -2
  2. package/dist/adapters/auth/getSession.d.ts.map +1 -1
  3. package/dist/adapters/auth/getSession.js +1 -1
  4. package/dist/adapters/auth/getSession.js.map +1 -1
  5. package/dist/adapters/auth/getSession.ts +1 -0
  6. package/dist/adapters/auth/helper.d.ts.map +1 -1
  7. package/dist/adapters/auth/helper.js +1 -0
  8. package/dist/adapters/auth/helper.js.map +1 -1
  9. package/dist/adapters/auth/helper.ts +3 -1
  10. package/dist/adapters/auth/signIn.d.ts.map +1 -1
  11. package/dist/adapters/auth/signIn.js +1 -0
  12. package/dist/adapters/auth/signIn.js.map +1 -1
  13. package/dist/adapters/auth/signIn.ts +3 -1
  14. package/dist/adapters/auth/signInWithOAuthAccessCode.d.ts +1 -0
  15. package/dist/adapters/auth/signInWithOAuthAccessCode.d.ts.map +1 -1
  16. package/dist/adapters/auth/signInWithOAuthAccessCode.js +10 -9
  17. package/dist/adapters/auth/signInWithOAuthAccessCode.js.map +1 -1
  18. package/dist/adapters/auth/signInWithOAuthAccessCode.ts +6 -3
  19. package/dist/adapters/auth/signOut.d.ts.map +1 -1
  20. package/dist/adapters/auth/signOut.js +7 -1
  21. package/dist/adapters/auth/signOut.js.map +1 -1
  22. package/dist/adapters/auth/signOut.ts +7 -1
  23. package/dist/adapters/auth/types.d.ts +1 -0
  24. package/dist/adapters/auth/types.d.ts.map +1 -1
  25. package/dist/adapters/auth/types.js.map +1 -1
  26. package/dist/adapters/auth/types.ts +1 -0
  27. package/dist/components/auth/AuthLayout.d.ts +1 -1
  28. package/dist/components/auth/AuthLayout.d.ts.map +1 -1
  29. package/dist/components/auth/AuthLayout.js +92 -22
  30. package/dist/components/auth/AuthLayout.js.map +1 -1
  31. package/dist/components/auth/AuthLayout.tsx +38 -12
  32. package/dist/components/auth/AuthSettingsContext.d.ts +10 -0
  33. package/dist/components/auth/AuthSettingsContext.d.ts.map +1 -0
  34. package/dist/components/auth/AuthSettingsContext.js +49 -0
  35. package/dist/components/auth/AuthSettingsContext.js.map +1 -0
  36. package/dist/components/auth/AuthSettingsContext.tsx +19 -0
  37. package/dist/components/auth/FacebookAuthChecking.d.ts +2 -0
  38. package/dist/components/auth/FacebookAuthChecking.d.ts.map +1 -0
  39. package/dist/components/auth/FacebookAuthChecking.js +98 -0
  40. package/dist/components/auth/FacebookAuthChecking.js.map +1 -0
  41. package/dist/components/auth/FacebookAuthChecking.tsx +59 -0
  42. package/dist/components/auth/ForgotPasswordThankYou.d.ts.map +1 -1
  43. package/dist/components/auth/ForgotPasswordThankYou.js +3 -7
  44. package/dist/components/auth/ForgotPasswordThankYou.js.map +1 -1
  45. package/dist/components/auth/ForgotPasswordThankYou.tsx +4 -9
  46. package/dist/components/auth/GoogleAuthChecking.d.ts.map +1 -1
  47. package/dist/components/auth/GoogleAuthChecking.js +10 -16
  48. package/dist/components/auth/GoogleAuthChecking.js.map +1 -1
  49. package/dist/components/auth/GoogleAuthChecking.tsx +2 -7
  50. package/dist/components/auth/MicrosoftAuthChecking.d.ts +2 -0
  51. package/dist/components/auth/MicrosoftAuthChecking.d.ts.map +1 -0
  52. package/dist/components/auth/MicrosoftAuthChecking.js +98 -0
  53. package/dist/components/auth/MicrosoftAuthChecking.js.map +1 -0
  54. package/dist/components/auth/MicrosoftAuthChecking.tsx +59 -0
  55. package/dist/components/auth/SolidForgotPassword.d.ts.map +1 -1
  56. package/dist/components/auth/SolidForgotPassword.js +3 -7
  57. package/dist/components/auth/SolidForgotPassword.js.map +1 -1
  58. package/dist/components/auth/SolidForgotPassword.tsx +4 -9
  59. package/dist/components/auth/SolidInitialLoginOtp.d.ts.map +1 -1
  60. package/dist/components/auth/SolidInitialLoginOtp.js +21 -30
  61. package/dist/components/auth/SolidInitialLoginOtp.js.map +1 -1
  62. package/dist/components/auth/SolidInitialLoginOtp.tsx +5 -13
  63. package/dist/components/auth/SolidInitiateRegisterOtp.d.ts.map +1 -1
  64. package/dist/components/auth/SolidInitiateRegisterOtp.js +35 -22
  65. package/dist/components/auth/SolidInitiateRegisterOtp.js.map +1 -1
  66. package/dist/components/auth/SolidInitiateRegisterOtp.tsx +28 -16
  67. package/dist/components/auth/SolidLogin.d.ts.map +1 -1
  68. package/dist/components/auth/SolidLogin.js +25 -31
  69. package/dist/components/auth/SolidLogin.js.map +1 -1
  70. package/dist/components/auth/SolidLogin.tsx +19 -16
  71. package/dist/components/auth/SolidRegister.d.ts.map +1 -1
  72. package/dist/components/auth/SolidRegister.js +59 -31
  73. package/dist/components/auth/SolidRegister.js.map +1 -1
  74. package/dist/components/auth/SolidRegister.tsx +91 -38
  75. package/dist/components/auth/SolidResetPassword.d.ts.map +1 -1
  76. package/dist/components/auth/SolidResetPassword.js +2 -6
  77. package/dist/components/auth/SolidResetPassword.js.map +1 -1
  78. package/dist/components/auth/SolidResetPassword.tsx +2 -6
  79. package/dist/components/common/AuthBanner.js.map +1 -1
  80. package/dist/components/common/GeneralSettings.d.ts.map +1 -1
  81. package/dist/components/common/GeneralSettings.js +235 -151
  82. package/dist/components/common/GeneralSettings.js.map +1 -1
  83. package/dist/components/common/GeneralSettings.tsx +1109 -776
  84. package/dist/components/common/SettingsComponent.d.ts +2 -0
  85. package/dist/components/common/SettingsComponent.d.ts.map +1 -0
  86. package/dist/components/common/SettingsComponent.js +351 -0
  87. package/dist/components/common/SettingsComponent.js.map +1 -0
  88. package/dist/components/common/SettingsComponent.module.css +421 -0
  89. package/dist/components/common/SettingsComponent.tsx +582 -0
  90. package/dist/components/common/SocialMediaLogin.d.ts +8 -1
  91. package/dist/components/common/SocialMediaLogin.d.ts.map +1 -1
  92. package/dist/components/common/SocialMediaLogin.js +6 -13
  93. package/dist/components/common/SocialMediaLogin.js.map +1 -1
  94. package/dist/components/common/SocialMediaLogin.tsx +120 -58
  95. package/dist/components/common/SolidExport.d.ts.map +1 -1
  96. package/dist/components/common/SolidExport.js +1 -1
  97. package/dist/components/common/SolidExport.js.map +1 -1
  98. package/dist/components/common/SolidExport.tsx +2 -1
  99. package/dist/components/common/SolidFormStepper.d.ts.map +1 -1
  100. package/dist/components/common/SolidFormStepper.js +2 -1
  101. package/dist/components/common/SolidFormStepper.js.map +1 -1
  102. package/dist/components/common/SolidFormStepper.tsx +2 -1
  103. package/dist/components/common/solid-export.css +26 -0
  104. package/dist/components/core/card/SolidCardView.d.ts.map +1 -1
  105. package/dist/components/core/card/SolidCardView.js +24 -25
  106. package/dist/components/core/card/SolidCardView.js.map +1 -1
  107. package/dist/components/core/card/SolidCardView.tsx +22 -27
  108. package/dist/components/core/card/SolidCardViewConfigure.js +1 -1
  109. package/dist/components/core/card/SolidCardViewConfigure.js.map +1 -1
  110. package/dist/components/core/card/SolidCardViewConfigure.tsx +1 -1
  111. package/dist/components/core/chatter/SolidChatter.d.ts.map +1 -1
  112. package/dist/components/core/chatter/SolidChatter.js +39 -9
  113. package/dist/components/core/chatter/SolidChatter.js.map +1 -1
  114. package/dist/components/core/chatter/SolidChatter.tsx +42 -7
  115. package/dist/components/core/chatter/SolidChatterAuditMessage.d.ts.map +1 -1
  116. package/dist/components/core/chatter/SolidChatterAuditMessage.js +19 -1
  117. package/dist/components/core/chatter/SolidChatterAuditMessage.js.map +1 -1
  118. package/dist/components/core/chatter/SolidChatterAuditMessage.tsx +22 -1
  119. package/dist/components/core/chatter/SolidChatterMessageBox.d.ts +3 -0
  120. package/dist/components/core/chatter/SolidChatterMessageBox.d.ts.map +1 -1
  121. package/dist/components/core/chatter/SolidChatterMessageBox.js +68 -4
  122. package/dist/components/core/chatter/SolidChatterMessageBox.js.map +1 -1
  123. package/dist/components/core/chatter/SolidChatterMessageBox.tsx +45 -3
  124. package/dist/components/core/chatter/chatter.module.css +0 -3
  125. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.d.ts.map +1 -1
  126. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.js +3 -1
  127. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.js.map +1 -1
  128. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.module.css +149 -0
  129. package/dist/components/core/common/SolidAccountSettings/SolidAccountSettings.tsx +3 -1
  130. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.d.ts.map +1 -1
  131. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js +9 -8
  132. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.js.map +1 -1
  133. package/dist/components/core/common/SolidAccountSettings/SolidNotifications.tsx +4 -2
  134. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.d.ts.map +1 -1
  135. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.js +21 -4
  136. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.js.map +1 -1
  137. package/dist/components/core/common/SolidAccountSettings/SolidVersionInfo.tsx +128 -1
  138. package/dist/components/core/common/SolidGlobalSearchElement.js +1 -1
  139. package/dist/components/core/common/SolidGlobalSearchElement.js.map +1 -1
  140. package/dist/components/core/common/SolidGlobalSearchElement.tsx +1 -1
  141. package/dist/components/core/extension/solid-core/scheduled-job/scheduleFrequencyOnFieldChangeHandler.d.ts +7 -0
  142. package/dist/components/core/extension/solid-core/scheduled-job/scheduleFrequencyOnFieldChangeHandler.d.ts.map +1 -0
  143. package/dist/components/core/extension/solid-core/scheduled-job/scheduleFrequencyOnFieldChangeHandler.js +75 -0
  144. package/dist/components/core/extension/solid-core/scheduled-job/scheduleFrequencyOnFieldChangeHandler.js.map +1 -0
  145. package/dist/components/core/extension/solid-core/scheduled-job/scheduleFrequencyOnFieldChangeHandler.ts +45 -0
  146. package/dist/components/core/extension/solid-core/settings/solidXGenAiCodeBuilderConfigWidget.d.ts +3 -0
  147. package/dist/components/core/extension/solid-core/settings/solidXGenAiCodeBuilderConfigWidget.d.ts.map +1 -0
  148. package/dist/components/core/extension/solid-core/settings/solidXGenAiCodeBuilderConfigWidget.js +81 -0
  149. package/dist/components/core/extension/solid-core/settings/solidXGenAiCodeBuilderConfigWidget.js.map +1 -0
  150. package/dist/components/core/extension/solid-core/settings/solidXGenAiCodeBuilderConfigWidget.tsx +114 -0
  151. package/dist/components/core/form/SolidFormActionHeader.d.ts +1 -1
  152. package/dist/components/core/form/SolidFormActionHeader.d.ts.map +1 -1
  153. package/dist/components/core/form/SolidFormActionHeader.js +10 -5
  154. package/dist/components/core/form/SolidFormActionHeader.js.map +1 -1
  155. package/dist/components/core/form/SolidFormActionHeader.tsx +33 -4
  156. package/dist/components/core/form/SolidFormLayouts.js +1 -1
  157. package/dist/components/core/form/SolidFormLayouts.js.map +1 -1
  158. package/dist/components/core/form/SolidFormLayouts.tsx +1 -1
  159. package/dist/components/core/form/SolidFormView.d.ts.map +1 -1
  160. package/dist/components/core/form/SolidFormView.js +122 -28
  161. package/dist/components/core/form/SolidFormView.js.map +1 -1
  162. package/dist/components/core/form/SolidFormView.tsx +111 -10
  163. package/dist/components/core/form/fields/SolidComputedField.d.ts +25 -0
  164. package/dist/components/core/form/fields/SolidComputedField.d.ts.map +1 -0
  165. package/dist/components/core/form/fields/SolidComputedField.js +128 -0
  166. package/dist/components/core/form/fields/SolidComputedField.js.map +1 -0
  167. package/dist/components/core/form/fields/SolidComputedField.tsx +134 -0
  168. package/dist/components/core/form/fields/SolidDateTimeField.js +1 -1
  169. package/dist/components/core/form/fields/SolidDateTimeField.js.map +1 -1
  170. package/dist/components/core/form/fields/SolidDateTimeField.tsx +1 -1
  171. package/dist/components/core/form/fields/SolidJsonField.d.ts.map +1 -1
  172. package/dist/components/core/form/fields/SolidJsonField.js +4 -1
  173. package/dist/components/core/form/fields/SolidJsonField.js.map +1 -1
  174. package/dist/components/core/form/fields/SolidJsonField.tsx +4 -1
  175. package/dist/components/core/form/fields/SolidSelectionDynamicField.d.ts.map +1 -1
  176. package/dist/components/core/form/fields/SolidSelectionDynamicField.js +35 -24
  177. package/dist/components/core/form/fields/SolidSelectionDynamicField.js.map +1 -1
  178. package/dist/components/core/form/fields/SolidSelectionDynamicField.tsx +30 -14
  179. package/dist/components/core/form/fields/SolidSelectionStaticField.d.ts.map +1 -1
  180. package/dist/components/core/form/fields/SolidSelectionStaticField.js +29 -28
  181. package/dist/components/core/form/fields/SolidSelectionStaticField.js.map +1 -1
  182. package/dist/components/core/form/fields/SolidSelectionStaticField.tsx +17 -12
  183. package/dist/components/core/form/fields/SolidTimeField.js +1 -1
  184. package/dist/components/core/form/fields/SolidTimeField.js.map +1 -1
  185. package/dist/components/core/form/fields/SolidTimeField.tsx +1 -1
  186. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js +2 -2
  187. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.js.map +1 -1
  188. package/dist/components/core/form/fields/relations/SolidRelationManyToOneField.tsx +2 -2
  189. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.d.ts.map +1 -1
  190. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js +3 -3
  191. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.js.map +1 -1
  192. package/dist/components/core/form/fields/relations/widgets/helpers/InlineRelationEntityDialog.tsx +0 -5
  193. package/dist/components/core/kanban/KanbanBoard.js +1 -1
  194. package/dist/components/core/kanban/KanbanBoard.js.map +1 -1
  195. package/dist/components/core/kanban/KanbanBoard.tsx +1 -1
  196. package/dist/components/core/kanban/SolidKanbanView.d.ts.map +1 -1
  197. package/dist/components/core/kanban/SolidKanbanView.js +216 -102
  198. package/dist/components/core/kanban/SolidKanbanView.js.map +1 -1
  199. package/dist/components/core/kanban/SolidKanbanView.tsx +204 -72
  200. package/dist/components/core/kanban/SolidKanbanViewConfigure.js +1 -1
  201. package/dist/components/core/kanban/SolidKanbanViewConfigure.js.map +1 -1
  202. package/dist/components/core/kanban/SolidKanbanViewConfigure.tsx +1 -1
  203. package/dist/components/core/kanban/SolidManyToOneFilterElement.d.ts.map +1 -1
  204. package/dist/components/core/kanban/SolidManyToOneFilterElement.js.map +1 -1
  205. package/dist/components/core/kanban/SolidManyToOneFilterElement.tsx +1 -2
  206. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.d.ts.map +1 -1
  207. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js +2 -2
  208. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.js.map +1 -1
  209. package/dist/components/core/kanban/kanban-fields/SolidMediaMultipleKanbanField.tsx +21 -10
  210. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.d.ts.map +1 -1
  211. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js +2 -2
  212. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.js.map +1 -1
  213. package/dist/components/core/kanban/kanban-fields/SolidMediaSingleKanbanField.tsx +18 -10
  214. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.d.ts.map +1 -1
  215. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js +3 -6
  216. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.js.map +1 -1
  217. package/dist/components/core/kanban/kanban-fields/SolidShortTextKanbanField.tsx +30 -24
  218. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.js.map +1 -1
  219. package/dist/components/core/kanban/kanban-fields/relations/SolidRelationManyToOneKanbanField.tsx +2 -2
  220. package/dist/components/core/list/SolidDataTable.d.ts.map +1 -1
  221. package/dist/components/core/list/SolidDataTable.js +6 -5
  222. package/dist/components/core/list/SolidDataTable.js.map +1 -1
  223. package/dist/components/core/list/SolidDataTable.tsx +6 -5
  224. package/dist/components/core/list/SolidDataTablePagination.d.ts +15 -0
  225. package/dist/components/core/list/SolidDataTablePagination.d.ts.map +1 -0
  226. package/dist/components/core/list/SolidDataTablePagination.js +22 -0
  227. package/dist/components/core/list/SolidDataTablePagination.js.map +1 -0
  228. package/dist/components/core/list/SolidDataTablePagination.tsx +71 -0
  229. package/dist/components/core/list/SolidEmptyListViewPlaceholder.d.ts.map +1 -1
  230. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js +3 -3
  231. package/dist/components/core/list/SolidEmptyListViewPlaceholder.js.map +1 -1
  232. package/dist/components/core/list/SolidEmptyListViewPlaceholder.tsx +1 -0
  233. package/dist/components/core/list/SolidListView.d.ts.map +1 -1
  234. package/dist/components/core/list/SolidListView.js +60 -63
  235. package/dist/components/core/list/SolidListView.js.map +1 -1
  236. package/dist/components/core/list/SolidListView.tsx +43 -48
  237. package/dist/components/core/list/SolidListViewConfigure.d.ts.map +1 -1
  238. package/dist/components/core/list/SolidListViewConfigure.js +32 -3
  239. package/dist/components/core/list/SolidListViewConfigure.js.map +1 -1
  240. package/dist/components/core/list/SolidListViewConfigure.tsx +35 -3
  241. package/dist/components/core/list/SolidListViewRowActionsMenu.js +2 -2
  242. package/dist/components/core/list/SolidListViewRowActionsMenu.js.map +1 -1
  243. package/dist/components/core/list/SolidListViewRowActionsMenu.tsx +2 -2
  244. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts +1 -1
  245. package/dist/components/core/list/SolidListViewRowButtonContextMenu.d.ts.map +1 -1
  246. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js +6 -7
  247. package/dist/components/core/list/SolidListViewRowButtonContextMenu.js.map +1 -1
  248. package/dist/components/core/list/SolidListViewRowButtonContextMenu.tsx +9 -10
  249. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js +1 -1
  250. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.js.map +1 -1
  251. package/dist/components/core/list/columns/relations/SolidRelationManyToOneColumn.tsx +1 -1
  252. package/dist/components/core/tree/SolidTreeTable.d.ts +1 -1
  253. package/dist/components/core/tree/SolidTreeTable.d.ts.map +1 -1
  254. package/dist/components/core/tree/SolidTreeTable.js +78 -78
  255. package/dist/components/core/tree/SolidTreeTable.js.map +1 -1
  256. package/dist/components/core/tree/SolidTreeTable.tsx +1 -10
  257. package/dist/components/core/users/CreateUser.css +27 -2
  258. package/dist/components/core/users/CreateUser.d.ts.map +1 -1
  259. package/dist/components/core/users/CreateUser.js +14 -12
  260. package/dist/components/core/users/CreateUser.js.map +1 -1
  261. package/dist/components/core/users/CreateUser.tsx +18 -2
  262. package/dist/components/layout/user-profile-menu.d.ts.map +1 -1
  263. package/dist/components/layout/user-profile-menu.js +17 -15
  264. package/dist/components/layout/user-profile-menu.js.map +1 -1
  265. package/dist/components/layout/user-profile-menu.tsx +30 -33
  266. package/dist/components/shad-cn-ui/SolidAutocomplete.d.ts.map +1 -1
  267. package/dist/components/shad-cn-ui/SolidAutocomplete.js +9 -1
  268. package/dist/components/shad-cn-ui/SolidAutocomplete.js.map +1 -1
  269. package/dist/components/shad-cn-ui/SolidAutocomplete.tsx +10 -1
  270. package/dist/components/shad-cn-ui/SolidButton.d.ts +14 -15
  271. package/dist/components/shad-cn-ui/SolidButton.d.ts.map +1 -1
  272. package/dist/components/shad-cn-ui/SolidButton.js +13 -3
  273. package/dist/components/shad-cn-ui/SolidButton.js.map +1 -1
  274. package/dist/components/shad-cn-ui/SolidButton.tsx +24 -4
  275. package/dist/components/shad-cn-ui/SolidDatePicker.d.ts.map +1 -1
  276. package/dist/components/shad-cn-ui/SolidDatePicker.js +1 -1
  277. package/dist/components/shad-cn-ui/SolidDatePicker.js.map +1 -1
  278. package/dist/components/shad-cn-ui/SolidDatePicker.tsx +2 -0
  279. package/dist/components/shad-cn-ui/SolidDialog.d.ts +1 -1
  280. package/dist/components/shad-cn-ui/SolidDialog.d.ts.map +1 -1
  281. package/dist/components/shad-cn-ui/SolidDialog.js.map +1 -1
  282. package/dist/components/shad-cn-ui/SolidDialog.tsx +1 -1
  283. package/dist/components/shad-cn-ui/SolidIcon.d.ts +2 -2
  284. package/dist/components/shad-cn-ui/SolidIcon.d.ts.map +1 -1
  285. package/dist/components/shad-cn-ui/SolidIcon.js +3 -4
  286. package/dist/components/shad-cn-ui/SolidIcon.js.map +1 -1
  287. package/dist/components/shad-cn-ui/SolidIcon.tsx +12 -15
  288. package/dist/components/shad-cn-ui/SolidRichTextEditor.d.ts.map +1 -1
  289. package/dist/components/shad-cn-ui/SolidRichTextEditor.js +9 -1
  290. package/dist/components/shad-cn-ui/SolidRichTextEditor.js.map +1 -1
  291. package/dist/components/shad-cn-ui/SolidRichTextEditor.tsx +8 -1
  292. package/dist/components/shad-cn-ui/SolidTabs.d.ts +2 -1
  293. package/dist/components/shad-cn-ui/SolidTabs.d.ts.map +1 -1
  294. package/dist/components/shad-cn-ui/SolidTabs.js +2 -2
  295. package/dist/components/shad-cn-ui/SolidTabs.js.map +1 -1
  296. package/dist/components/shad-cn-ui/SolidTabs.tsx +12 -1
  297. package/dist/components/solid-ui/SolidButton.d.ts +14 -0
  298. package/dist/components/solid-ui/SolidButton.d.ts.map +1 -0
  299. package/dist/components/solid-ui/SolidButton.js +36 -0
  300. package/dist/components/solid-ui/SolidButton.js.map +1 -0
  301. package/dist/components/solid-ui/SolidButton.tsx +54 -0
  302. package/dist/components/solid-ui/SolidTabs.d.ts +18 -0
  303. package/dist/components/solid-ui/SolidTabs.d.ts.map +1 -0
  304. package/dist/components/solid-ui/SolidTabs.js +22 -0
  305. package/dist/components/solid-ui/SolidTabs.js.map +1 -0
  306. package/dist/components/solid-ui/SolidTabs.tsx +73 -0
  307. package/dist/components/solid-ui/index.d.ts +3 -0
  308. package/dist/components/solid-ui/index.d.ts.map +1 -0
  309. package/dist/components/solid-ui/index.js +3 -0
  310. package/dist/components/solid-ui/index.js.map +1 -0
  311. package/dist/components/solid-ui/index.ts +2 -0
  312. package/dist/helpers/hydrateRelationRules.js +1 -1
  313. package/dist/helpers/hydrateRelationRules.js.map +1 -1
  314. package/dist/helpers/hydrateRelationRules.ts +1 -1
  315. package/dist/helpers/permissions.js +2 -2
  316. package/dist/helpers/permissions.js.map +1 -1
  317. package/dist/helpers/permissions.ts +2 -2
  318. package/dist/helpers/registry.d.ts +2 -2
  319. package/dist/helpers/registry.d.ts.map +1 -1
  320. package/dist/helpers/registry.js +6 -0
  321. package/dist/helpers/registry.js.map +1 -1
  322. package/dist/helpers/registry.ts +9 -2
  323. package/dist/helpers/settingsPayload.d.ts +32 -0
  324. package/dist/helpers/settingsPayload.d.ts.map +1 -0
  325. package/dist/helpers/settingsPayload.js +72 -0
  326. package/dist/helpers/settingsPayload.js.map +1 -0
  327. package/dist/helpers/settingsPayload.ts +125 -0
  328. package/dist/index.d.ts +7 -0
  329. package/dist/index.d.ts.map +1 -1
  330. package/dist/index.js +6 -0
  331. package/dist/index.js.map +1 -1
  332. package/dist/index.ts +7 -0
  333. package/dist/redux/api/solidChatterMessageApi.d.ts +2 -1
  334. package/dist/redux/api/solidChatterMessageApi.d.ts.map +1 -1
  335. package/dist/redux/api/solidChatterMessageApi.js +11 -1
  336. package/dist/redux/api/solidChatterMessageApi.js.map +1 -1
  337. package/dist/redux/api/solidChatterMessageApi.ts +10 -1
  338. package/dist/redux/api/solidEntityApi.d.ts.map +1 -1
  339. package/dist/redux/api/solidEntityApi.js +14 -1
  340. package/dist/redux/api/solidEntityApi.js.map +1 -1
  341. package/dist/redux/api/solidEntityApi.tsx +17 -1
  342. package/dist/redux/store/createSolidStore.d.ts +1 -1
  343. package/dist/redux/store/createSolidStore.d.ts.map +1 -1
  344. package/dist/redux/store/createSolidStore.js +20 -11
  345. package/dist/redux/store/createSolidStore.js.map +1 -1
  346. package/dist/redux/store/createSolidStore.ts +20 -11
  347. package/dist/redux/store/defaultStoreConfig.d.ts +1 -0
  348. package/dist/redux/store/defaultStoreConfig.d.ts.map +1 -1
  349. package/dist/redux/store/dynamicEntityApiMiddleware.d.ts +10 -0
  350. package/dist/redux/store/dynamicEntityApiMiddleware.d.ts.map +1 -0
  351. package/dist/redux/store/dynamicEntityApiMiddleware.js +44 -0
  352. package/dist/redux/store/dynamicEntityApiMiddleware.js.map +1 -0
  353. package/dist/redux/store/dynamicEntityApiMiddleware.ts +58 -0
  354. package/dist/redux/store/dynamicReducerManager.d.ts +10 -0
  355. package/dist/redux/store/dynamicReducerManager.d.ts.map +1 -0
  356. package/dist/redux/store/dynamicReducerManager.js +51 -0
  357. package/dist/redux/store/dynamicReducerManager.js.map +1 -0
  358. package/dist/redux/store/dynamicReducerManager.ts +51 -0
  359. package/dist/redux/store/solidEntityApiPool.d.ts +31 -0
  360. package/dist/redux/store/solidEntityApiPool.d.ts.map +1 -0
  361. package/dist/redux/store/solidEntityApiPool.js +123 -0
  362. package/dist/redux/store/solidEntityApiPool.js.map +1 -0
  363. package/dist/redux/store/solidEntityApiPool.ts +167 -0
  364. package/dist/resources/globals.css +26 -6
  365. package/dist/resources/shadcn-base.css +269 -92
  366. package/dist/resources/solid-responsive.css +22 -4
  367. package/dist/routes/AppEventListener.js +1 -1
  368. package/dist/routes/AppEventListener.js.map +1 -1
  369. package/dist/routes/AppEventListener.tsx +1 -1
  370. package/dist/routes/SolidRouteMetadataBoundary.d.ts +5 -0
  371. package/dist/routes/SolidRouteMetadataBoundary.d.ts.map +1 -0
  372. package/dist/routes/SolidRouteMetadataBoundary.js +72 -0
  373. package/dist/routes/SolidRouteMetadataBoundary.js.map +1 -0
  374. package/dist/routes/SolidRouteMetadataBoundary.tsx +77 -0
  375. package/dist/routes/pages/admin/core/CardPage.js +1 -1
  376. package/dist/routes/pages/admin/core/CardPage.js.map +1 -1
  377. package/dist/routes/pages/admin/core/CardPage.tsx +1 -1
  378. package/dist/routes/pages/admin/core/DiagnosticsPage.d.ts +2 -0
  379. package/dist/routes/pages/admin/core/DiagnosticsPage.d.ts.map +1 -0
  380. package/dist/routes/pages/admin/core/DiagnosticsPage.js +48 -0
  381. package/dist/routes/pages/admin/core/DiagnosticsPage.js.map +1 -0
  382. package/dist/routes/pages/admin/core/DiagnosticsPage.tsx +167 -0
  383. package/dist/routes/pages/admin/core/FormPage.js +1 -1
  384. package/dist/routes/pages/admin/core/FormPage.js.map +1 -1
  385. package/dist/routes/pages/admin/core/FormPage.tsx +1 -1
  386. package/dist/routes/pages/admin/core/KanbanPage.js +1 -1
  387. package/dist/routes/pages/admin/core/KanbanPage.js.map +1 -1
  388. package/dist/routes/pages/admin/core/KanbanPage.tsx +1 -1
  389. package/dist/routes/pages/admin/core/ListPage.js +1 -1
  390. package/dist/routes/pages/admin/core/ListPage.js.map +1 -1
  391. package/dist/routes/pages/admin/core/ListPage.tsx +1 -1
  392. package/dist/routes/pages/admin/core/SettingsPage.js +2 -2
  393. package/dist/routes/pages/admin/core/SettingsPage.js.map +1 -1
  394. package/dist/routes/pages/admin/core/SettingsPage.tsx +2 -2
  395. package/dist/routes/pages/admin/core/TreePage.js +1 -1
  396. package/dist/routes/pages/admin/core/TreePage.js.map +1 -1
  397. package/dist/routes/pages/admin/core/TreePage.tsx +1 -1
  398. package/dist/routes/pages/auth/InitiateFacebookOauthPage.d.ts +2 -0
  399. package/dist/routes/pages/auth/InitiateFacebookOauthPage.d.ts.map +1 -0
  400. package/dist/routes/pages/auth/InitiateFacebookOauthPage.js +6 -0
  401. package/dist/routes/pages/auth/InitiateFacebookOauthPage.js.map +1 -0
  402. package/dist/routes/pages/auth/InitiateFacebookOauthPage.tsx +5 -0
  403. package/dist/routes/pages/auth/InitiateMicrosoftOauthPage.d.ts +2 -0
  404. package/dist/routes/pages/auth/InitiateMicrosoftOauthPage.d.ts.map +1 -0
  405. package/dist/routes/pages/auth/InitiateMicrosoftOauthPage.js +6 -0
  406. package/dist/routes/pages/auth/InitiateMicrosoftOauthPage.js.map +1 -0
  407. package/dist/routes/pages/auth/InitiateMicrosoftOauthPage.tsx +5 -0
  408. package/dist/routes/pages/studio/StudioLandingPage.d.ts.map +1 -1
  409. package/dist/routes/pages/studio/StudioLandingPage.js +35 -7
  410. package/dist/routes/pages/studio/StudioLandingPage.js.map +1 -1
  411. package/dist/routes/pages/studio/StudioLandingPage.tsx +42 -6
  412. package/dist/routes/solidRoutes.d.ts.map +1 -1
  413. package/dist/routes/solidRoutes.js +49 -24
  414. package/dist/routes/solidRoutes.js.map +1 -1
  415. package/dist/routes/solidRoutes.tsx +49 -24
  416. package/dist/routes/types.d.ts +8 -1
  417. package/dist/routes/types.d.ts.map +1 -1
  418. package/dist/routes/types.js.map +1 -1
  419. package/dist/routes/types.ts +10 -0
  420. package/dist/types/extension-registry.d.ts +1 -0
  421. package/dist/types/extension-registry.d.ts.map +1 -1
  422. package/dist/types/extension-registry.js +1 -0
  423. package/dist/types/extension-registry.js.map +1 -1
  424. package/dist/types/extension-registry.ts +1 -0
  425. package/dist/types/index.d.ts +2 -0
  426. package/dist/types/solid-core.d.ts +11 -0
  427. package/package.json +1 -2
  428. package/dist/components/auth/SolidOTPVerify.d.ts +0 -3
  429. package/dist/components/auth/SolidOTPVerify.d.ts.map +0 -1
  430. package/dist/components/auth/SolidOTPVerify.js +0 -67
  431. package/dist/components/auth/SolidOTPVerify.js.map +0 -1
  432. package/dist/components/auth/SolidOTPVerify.tsx +0 -133
  433. package/dist/components/core/common/LoadDynamicJsxComponent.d.ts +0 -2
  434. package/dist/components/core/common/LoadDynamicJsxComponent.d.ts.map +0 -1
  435. package/dist/components/core/common/LoadDynamicJsxComponent.js +0 -50
  436. package/dist/components/core/common/LoadDynamicJsxComponent.js.map +0 -1
  437. package/dist/components/core/common/LoadDynamicJsxComponent.tsx +0 -70
  438. package/dist/nextAuth/authProviders.d.ts +0 -4
  439. package/dist/nextAuth/authProviders.d.ts.map +0 -1
  440. package/dist/nextAuth/authProviders.js +0 -198
  441. package/dist/nextAuth/authProviders.js.map +0 -1
  442. package/dist/nextAuth/authProviders.tsx +0 -232
  443. package/dist/nextAuth/handleLogout.d.ts +0 -2
  444. package/dist/nextAuth/handleLogout.d.ts.map +0 -1
  445. package/dist/nextAuth/handleLogout.js +0 -36
  446. package/dist/nextAuth/handleLogout.js.map +0 -1
  447. package/dist/nextAuth/handleLogout.tsx +0 -39
  448. package/dist/nextAuth/refreshAccessToken.d.ts +0 -2
  449. package/dist/nextAuth/refreshAccessToken.d.ts.map +0 -1
  450. package/dist/nextAuth/refreshAccessToken.js +0 -24
  451. package/dist/nextAuth/refreshAccessToken.js.map +0 -1
  452. package/dist/nextAuth/refreshAccessToken.tsx +0 -28
  453. package/dist/redux/features/settingsSlice.d.ts +0 -20
  454. package/dist/redux/features/settingsSlice.d.ts.map +0 -1
  455. package/dist/redux/features/settingsSlice.js +0 -39
  456. package/dist/redux/features/settingsSlice.js.map +0 -1
  457. package/dist/redux/features/settingsSlice.ts +0 -60
@@ -18,8 +18,17 @@ export const solidChatterMessageApi = createApi({
18
18
  body: data
19
19
  }
20
20
  }
21
+ }),
22
+ patchChatterMessage: builder.mutation({
23
+ query: ({ id, data }) => {
24
+ return {
25
+ url: `/chatter-message/${id}/complete`,
26
+ method: 'PATCH',
27
+ body: data
28
+ }
29
+ }
21
30
  })
22
31
  })
23
32
  });
24
33
 
25
- export const { useGetchatterMessageQuery, useLazyGetchatterMessageQuery, useCreateChatterMessageMutation } = solidChatterMessageApi;
34
+ export const { useGetchatterMessageQuery, useLazyGetchatterMessageQuery, useCreateChatterMessageMutation, usePatchChatterMessageMutation } = solidChatterMessageApi;
@@ -1 +1 @@
1
- {"version":3,"file":"solidEntityApi.d.ts","sourceRoot":"","sources":["../../../src/redux/api/solidEntityApi.tsx"],"names":[],"mappings":"AAIA,eAAO,MAAM,oBAAoB,eAAgB,MAAM;;;;;;;;;;;;;;;;;;;;;;yKAmJtD,CAAC"}
1
+ {"version":3,"file":"solidEntityApi.d.ts","sourceRoot":"","sources":["../../../src/redux/api/solidEntityApi.tsx"],"names":[],"mappings":"AAOA,eAAO,MAAM,oBAAoB,eAAgB,MAAM;;;;;;;;;;;;;;;;;;;;;;yKAWtD,CAAC"}
@@ -9,8 +9,21 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
9
9
  };
10
10
  import { createApi } from '@reduxjs/toolkit/query/react';
11
11
  import { baseQueryWithAuth } from './fetchBaseQuery';
12
- import { kebabCase } from 'change-case';
12
+ import { kebabCase } from 'lodash';
13
+ import { ensureSolidEntityApiRegistered } from '../store/solidEntityApiPool';
14
+ var solidEntityApiCache = new Map();
13
15
  export var createSolidEntityApi = function (entityName) {
16
+ var cachedApi = solidEntityApiCache.get(entityName);
17
+ if (cachedApi) {
18
+ ensureSolidEntityApiRegistered(entityName, cachedApi);
19
+ return cachedApi;
20
+ }
21
+ var api = createSolidEntityApiInternal(entityName);
22
+ solidEntityApiCache.set(entityName, api);
23
+ ensureSolidEntityApiRegistered(entityName, api);
24
+ return api;
25
+ };
26
+ var createSolidEntityApiInternal = function (entityName) {
14
27
  var kebabEntityName = kebabCase(entityName);
15
28
  return createApi({
16
29
  reducerPath: "genericSolid".concat(entityName, "Api"),
@@ -1 +1 @@
1
- {"version":3,"file":"solidEntityApi.js","sourceRoot":"","sources":["../../../src/redux/api/solidEntityApi.tsx"],"names":[],"mappings":"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","sourcesContent":["import { createApi } from '@reduxjs/toolkit/query/react';\nimport { baseQueryWithAuth } from './fetchBaseQuery';\nimport { kebabCase } from 'change-case';\n\nexport const createSolidEntityApi = (entityName: string) => {\n const kebabEntityName = kebabCase(entityName);\n\n return createApi({\n reducerPath: `genericSolid${entityName}Api`,\n baseQuery: baseQueryWithAuth,\n tagTypes: [entityName],\n endpoints: (builder) => ({\n getSolidEntities: builder.query({\n query: (qs) => {\n return `/${kebabEntityName}?&${qs}`\n },\n transformResponse: (response: any) => {\n if (response.error) {\n throw new Error(response.error);\n }\n return {\n records: response.data.records,\n meta: response.data.meta,\n groupMeta: response?.data?.groupMeta,\n groupRecords: response?.data?.groupRecords ? response.data.groupRecords : [],\n }\n },\n providesTags: (result) =>\n result?.records\n ? [\n ...result.records.map((record: { id: any; }) => ({\n type: entityName,\n id: record.id,\n })),\n { type: entityName, id: 'LIST' },\n ]\n : [{ type: entityName, id: 'LIST' }]\n }),\n getSolidKanbanEntities: builder.query({\n query: (qs) => {\n return `/${kebabEntityName}/group-kanban?&${qs}`\n },\n transformResponse: (response: any) => {\n if (response.error) {\n throw new Error(response.error);\n }\n return {\n records: response.data.records.groupedData,\n meta: response.data.meta\n }\n },\n providesTags: [{ type: entityName, id: 'KANBAN' }],\n }),\n getSolidEntityById: builder.query({\n query: ({ id, qs }) => {\n return `/${kebabEntityName}/${id}?${qs}`\n },\n // providesTags: () => [{ type: entityName }],\n providesTags: (_result, _error, { id }) => [{ type: entityName, id }],\n }),\n createSolidEntity: builder.mutation({\n query: (entity) => ({\n url: `/${kebabEntityName}`,\n method: 'POST',\n body: entity\n }),\n invalidatesTags: [{ type: entityName, id: 'LIST' }],\n }),\n upsertSolidEntity: builder.mutation({\n query: (entity) => ({\n url: `/${kebabEntityName}/upsert`,\n method: 'POST',\n body: entity\n }),\n invalidatesTags: [{ type: entityName, id: 'LIST' }],\n }),\n updateSolidEntity: builder.mutation({\n query: ({ id, data }) => ({\n url: `/${kebabEntityName}/${id}`,\n method: 'PUT',\n body: data,\n }),\n invalidatesTags: (_result, _error, { id }) => [\n { type: entityName, id },\n { type: entityName, id: 'LIST' },\n ],\n }),\n deleteMultipleSolidEntities: builder.mutation({\n query: (data) => ({\n url: `/${kebabEntityName}/bulk/`,\n method: 'DELETE',\n body: data\n }),\n invalidatesTags: [{ type: entityName, id: 'LIST' }]\n }),\n deleteSolidEntity: builder.mutation({\n query: (id) => ({\n url: `/${kebabEntityName}/${id}`,\n method: 'DELETE',\n }),\n invalidatesTags: (_result, _error, id) => [\n { type: entityName, id },\n { type: entityName, id: 'LIST' },\n ],\n }),\n recoverSolidEntityById: builder.query({\n query: (id) => `/${kebabEntityName}/recover/${id}`,\n providesTags: (_result, _error, id) => [{ type: entityName, id }],\n }),\n recoverSolidEntity: builder.mutation({\n query: (data) => ({\n url: `/${kebabEntityName}/bulk-recover/`,\n method: 'POST',\n body: data\n }),\n invalidatesTags: [{ type: entityName, id: 'LIST' }],\n }),\n patchUpdateSolidEntity: builder.mutation({\n query: ({ id, data }) => ({\n url: `/${kebabEntityName}/${id}`,\n method: 'PATCH',\n body: data,\n }),\n invalidatesTags: (_result, _error, { id }) => [\n { type: entityName, id },\n { type: entityName, id: 'LIST' },\n ],\n }),\n publishSolidEntity: builder.mutation({\n query: (id) => ({\n url: `/${kebabEntityName}/${id}/publish`,\n method: 'POST'\n }),\n invalidatesTags: (_result, _error, id) => [\n { type: entityName, id },\n { type: entityName, id: 'LIST' }\n ]\n }),\n unpublishSolidEntity: builder.mutation({\n query: (id) => ({\n url: `/${kebabEntityName}/${id}/unpublish`,\n method: 'POST'\n }),\n invalidatesTags: (_result, _error, id) => [\n { type: entityName, id },\n { type: entityName, id: 'LIST' }\n ]\n }),\n\n }),\n });\n};\n\n// export const {\n// useCreateSolidEntityMutation,\n// useDeleteMultipleSolidEntitiesMutation,\n// useDeleteSolidEntityMutation,\n// useGetSolidEntitiesQuery,\n// useGetSolidEntityByIdQuery,\n// useLazyGetSolidEntitiesQuery,\n// useLazyGetSolidEntityByIdQuery,\n// usePrefetch,\n// useUpdateSolidEntityMutation\n// } = solidEntityApi;\n"]}
1
+ {"version":3,"file":"solidEntityApi.js","sourceRoot":"","sources":["../../../src/redux/api/solidEntityApi.tsx"],"names":[],"mappings":"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","sourcesContent":["import { createApi } from '@reduxjs/toolkit/query/react';\nimport { baseQueryWithAuth } from './fetchBaseQuery';\nimport { kebabCase } from 'lodash';\nimport { ensureSolidEntityApiRegistered } from '../store/solidEntityApiPool';\n\nconst solidEntityApiCache = new Map<string, ReturnType<typeof createSolidEntityApiInternal>>();\n\nexport const createSolidEntityApi = (entityName: string) => {\n const cachedApi = solidEntityApiCache.get(entityName);\n if (cachedApi) {\n ensureSolidEntityApiRegistered(entityName, cachedApi);\n return cachedApi;\n }\n\n const api = createSolidEntityApiInternal(entityName);\n solidEntityApiCache.set(entityName, api);\n ensureSolidEntityApiRegistered(entityName, api);\n return api;\n};\n\nconst createSolidEntityApiInternal = (entityName: string) => {\n const kebabEntityName = kebabCase(entityName);\n\n return createApi({\n reducerPath: `genericSolid${entityName}Api`,\n baseQuery: baseQueryWithAuth,\n tagTypes: [entityName],\n endpoints: (builder) => ({\n getSolidEntities: builder.query({\n query: (qs) => {\n return `/${kebabEntityName}?&${qs}`\n },\n transformResponse: (response: any) => {\n if (response.error) {\n throw new Error(response.error);\n }\n return {\n records: response.data.records,\n meta: response.data.meta,\n groupMeta: response?.data?.groupMeta,\n groupRecords: response?.data?.groupRecords ? response.data.groupRecords : [],\n }\n },\n providesTags: (result) =>\n result?.records\n ? [\n ...result.records.map((record: { id: any; }) => ({\n type: entityName,\n id: record.id,\n })),\n { type: entityName, id: 'LIST' },\n ]\n : [{ type: entityName, id: 'LIST' }]\n }),\n getSolidKanbanEntities: builder.query({\n query: (qs) => {\n return `/${kebabEntityName}/group-kanban?&${qs}`\n },\n transformResponse: (response: any) => {\n if (response.error) {\n throw new Error(response.error);\n }\n return {\n records: response.data.records.groupedData,\n meta: response.data.meta\n }\n },\n providesTags: [{ type: entityName, id: 'KANBAN' }],\n }),\n getSolidEntityById: builder.query({\n query: ({ id, qs }) => {\n return `/${kebabEntityName}/${id}?${qs}`\n },\n // providesTags: () => [{ type: entityName }],\n providesTags: (_result, _error, { id }) => [{ type: entityName, id }],\n }),\n createSolidEntity: builder.mutation({\n query: (entity) => ({\n url: `/${kebabEntityName}`,\n method: 'POST',\n body: entity\n }),\n invalidatesTags: [{ type: entityName, id: 'LIST' }],\n }),\n upsertSolidEntity: builder.mutation({\n query: (entity) => ({\n url: `/${kebabEntityName}/upsert`,\n method: 'POST',\n body: entity\n }),\n invalidatesTags: [{ type: entityName, id: 'LIST' }],\n }),\n updateSolidEntity: builder.mutation({\n query: ({ id, data }) => ({\n url: `/${kebabEntityName}/${id}`,\n method: 'PUT',\n body: data,\n }),\n invalidatesTags: (_result, _error, { id }) => [\n { type: entityName, id },\n { type: entityName, id: 'LIST' },\n ],\n }),\n deleteMultipleSolidEntities: builder.mutation({\n query: (data) => ({\n url: `/${kebabEntityName}/bulk/`,\n method: 'DELETE',\n body: data\n }),\n invalidatesTags: [{ type: entityName, id: 'LIST' }]\n }),\n deleteSolidEntity: builder.mutation({\n query: (id) => ({\n url: `/${kebabEntityName}/${id}`,\n method: 'DELETE',\n }),\n invalidatesTags: (_result, _error, id) => [\n { type: entityName, id },\n { type: entityName, id: 'LIST' },\n ],\n }),\n recoverSolidEntityById: builder.query({\n query: (id) => `/${kebabEntityName}/recover/${id}`,\n providesTags: (_result, _error, id) => [{ type: entityName, id }],\n }),\n recoverSolidEntity: builder.mutation({\n query: (data) => ({\n url: `/${kebabEntityName}/bulk-recover/`,\n method: 'POST',\n body: data\n }),\n invalidatesTags: [{ type: entityName, id: 'LIST' }],\n }),\n patchUpdateSolidEntity: builder.mutation({\n query: ({ id, data }) => ({\n url: `/${kebabEntityName}/${id}`,\n method: 'PATCH',\n body: data,\n }),\n invalidatesTags: (_result, _error, { id }) => [\n { type: entityName, id },\n { type: entityName, id: 'LIST' },\n ],\n }),\n publishSolidEntity: builder.mutation({\n query: (id) => ({\n url: `/${kebabEntityName}/${id}/publish`,\n method: 'POST'\n }),\n invalidatesTags: (_result, _error, id) => [\n { type: entityName, id },\n { type: entityName, id: 'LIST' }\n ]\n }),\n unpublishSolidEntity: builder.mutation({\n query: (id) => ({\n url: `/${kebabEntityName}/${id}/unpublish`,\n method: 'POST'\n }),\n invalidatesTags: (_result, _error, id) => [\n { type: entityName, id },\n { type: entityName, id: 'LIST' }\n ]\n }),\n\n }),\n });\n};\n\n// export const {\n// useCreateSolidEntityMutation,\n// useDeleteMultipleSolidEntitiesMutation,\n// useDeleteSolidEntityMutation,\n// useGetSolidEntitiesQuery,\n// useGetSolidEntityByIdQuery,\n// useLazyGetSolidEntitiesQuery,\n// useLazyGetSolidEntityByIdQuery,\n// usePrefetch,\n// useUpdateSolidEntityMutation\n// } = solidEntityApi;\n"]}
@@ -1,8 +1,24 @@
1
1
  import { createApi } from '@reduxjs/toolkit/query/react';
2
2
  import { baseQueryWithAuth } from './fetchBaseQuery';
3
- import { kebabCase } from 'change-case';
3
+ import { kebabCase } from 'lodash';
4
+ import { ensureSolidEntityApiRegistered } from '../store/solidEntityApiPool';
5
+
6
+ const solidEntityApiCache = new Map<string, ReturnType<typeof createSolidEntityApiInternal>>();
4
7
 
5
8
  export const createSolidEntityApi = (entityName: string) => {
9
+ const cachedApi = solidEntityApiCache.get(entityName);
10
+ if (cachedApi) {
11
+ ensureSolidEntityApiRegistered(entityName, cachedApi);
12
+ return cachedApi;
13
+ }
14
+
15
+ const api = createSolidEntityApiInternal(entityName);
16
+ solidEntityApiCache.set(entityName, api);
17
+ ensureSolidEntityApiRegistered(entityName, api);
18
+ return api;
19
+ };
20
+
21
+ const createSolidEntityApiInternal = (entityName: string) => {
6
22
  const kebabEntityName = kebabCase(entityName);
7
23
 
8
24
  return createApi({
@@ -18,7 +18,7 @@ export type CreateSolidStoreOptions = {
18
18
  * middlewares: [myMiddleware],
19
19
  * });
20
20
  */
21
- export declare function createSolidStore(options?: CreateSolidStoreOptions): import("@reduxjs/toolkit/dist/configureStore").ToolkitStore<any, import("@reduxjs/toolkit").Action<any>, import("@reduxjs/toolkit").MiddlewareArray<[import("@reduxjs/toolkit").ThunkMiddleware<any, import("@reduxjs/toolkit").AnyAction>, ...Middleware<{}, any, import("@reduxjs/toolkit").Dispatch<import("@reduxjs/toolkit").AnyAction>>[]]>>;
21
+ export declare function createSolidStore(options?: CreateSolidStoreOptions): import("@reduxjs/toolkit/dist/configureStore").ToolkitStore<any, import("@reduxjs/toolkit").AnyAction, import("@reduxjs/toolkit").MiddlewareArray<[import("@reduxjs/toolkit").ThunkMiddleware<any, import("@reduxjs/toolkit").AnyAction>, ...Middleware<{}, any, import("@reduxjs/toolkit").Dispatch<import("@reduxjs/toolkit").AnyAction>>[], Middleware<{}, any, import("@reduxjs/toolkit").Dispatch<import("@reduxjs/toolkit").AnyAction>>]>>;
22
22
  export type SolidStore = ReturnType<typeof createSolidStore>;
23
23
  export type SolidRootState = ReturnType<SolidStore["getState"]>;
24
24
  export type SolidDispatch = SolidStore["dispatch"];
@@ -1 +1 @@
1
- {"version":3,"file":"createSolidStore.d.ts","sourceRoot":"","sources":["../../../src/redux/store/createSolidStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAItE,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;CAC5B,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,uBAA4B,sVAyBrE;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC7D,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;AAChE,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC"}
1
+ {"version":3,"file":"createSolidStore.d.ts","sourceRoot":"","sources":["../../../src/redux/store/createSolidStore.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAMtE,MAAM,MAAM,uBAAuB,GAAG;IACpC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,CAAC,EAAE,iBAAiB,CAAC;IAC7B,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;CAC5B,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,uBAA4B,obAgCrE;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC7D,MAAM,MAAM,cAAc,GAAG,UAAU,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC;AAChE,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC"}
@@ -20,7 +20,9 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
20
20
  };
21
21
  import { configureStore } from "@reduxjs/toolkit";
22
22
  import { solidApiSlices, solidReducers } from "./defaultStoreConfig";
23
- import { createSolidEntityApi } from "../api/solidEntityApi";
23
+ import { createDynamicReducerManager } from "./dynamicReducerManager";
24
+ import { createDynamicEntityApiMiddlewareManager } from "./dynamicEntityApiMiddleware";
25
+ import { setSolidEntityApiStore } from "./solidEntityApiPool";
24
26
  /**
25
27
  * createSolidStore builds the default SolidX store and lets consumers extend it.
26
28
  *
@@ -37,18 +39,25 @@ import { createSolidEntityApi } from "../api/solidEntityApi";
37
39
  */
38
40
  export function createSolidStore(options) {
39
41
  if (options === void 0) { options = {}; }
40
- var _a = options.entities, entities = _a === void 0 ? [] : _a, _b = options.reducers, reducers = _b === void 0 ? {} : _b, _c = options.middlewares, middlewares = _c === void 0 ? [] : _c;
42
+ var _a = options.reducers, reducers = _a === void 0 ? {} : _a, _b = options.middlewares, middlewares = _b === void 0 ? [] : _b;
41
43
  var rootReducers = __assign(__assign(__assign({}, solidReducers), Object.fromEntries(solidApiSlices.map(function (api) { return [api.reducerPath, api.reducer]; }))), reducers);
42
44
  var rootMiddlewares = __spreadArray(__spreadArray([], solidApiSlices.map(function (api) { return api.middleware; }), true), middlewares, true);
43
- for (var i = 0; i < entities.length; i += 1) {
44
- var entity = entities[i];
45
- var apiSlice = createSolidEntityApi(entity);
46
- rootReducers[apiSlice.reducerPath] = apiSlice.reducer;
47
- rootMiddlewares.push(apiSlice.middleware);
48
- }
49
- return configureStore({
50
- reducer: rootReducers,
51
- middleware: function (getDefaultMiddleware) { return getDefaultMiddleware().concat(rootMiddlewares); },
45
+ var reducerManager = createDynamicReducerManager(rootReducers);
46
+ var entityApiMiddlewareManager = createDynamicEntityApiMiddlewareManager();
47
+ var store = configureStore({
48
+ reducer: reducerManager.reduce,
49
+ middleware: function (getDefaultMiddleware) {
50
+ var _a;
51
+ return (_a = getDefaultMiddleware()).concat.apply(_a, __spreadArray(__spreadArray([], rootMiddlewares, false), [entityApiMiddlewareManager.middleware], false));
52
+ },
53
+ });
54
+ setSolidEntityApiStore({
55
+ dispatch: store.dispatch,
56
+ getState: store.getState,
57
+ replaceReducer: store.replaceReducer,
58
+ reducerManager: reducerManager,
59
+ middlewareManager: entityApiMiddlewareManager,
52
60
  });
61
+ return store;
53
62
  }
54
63
  //# sourceMappingURL=createSolidStore.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"createSolidStore.js","sourceRoot":"","sources":["../../../src/redux/store/createSolidStore.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAQ7D;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAqC;IAArC,wBAAA,EAAA,YAAqC;IAC5D,IAAA,KAAmD,OAAO,SAA7C,EAAb,QAAQ,mBAAG,EAAE,KAAA,EAAE,KAAoC,OAAO,SAA9B,EAAb,QAAQ,mBAAG,EAAE,KAAA,EAAE,KAAqB,OAAO,YAAZ,EAAhB,WAAW,mBAAG,EAAE,KAAA,CAAa;IAEnE,IAAM,YAAY,GAAsB,+BACnC,aAAa,GACb,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,EAA9B,CAA8B,CAAC,CAAC,GAC/E,QAAQ,CACS,CAAC;IAEvB,IAAM,eAAe,mCAChB,cAAc,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,UAAwB,EAA5B,CAA4B,CAAC,SACzD,WAAW,OACf,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,IAAI,CAAC,EAAE;QAC3C,IAAM,MAAM,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAM,QAAQ,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC;QAC9C,YAAY,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,QAAQ,CAAC,OAAO,CAAC;QACtD,eAAe,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAwB,CAAC,CAAC;KACzD;IAED,OAAO,cAAc,CAAC;QACpB,OAAO,EAAE,YAAY;QACrB,UAAU,EAAE,UAAC,oBAAoB,IAAK,OAAA,oBAAoB,EAAE,CAAC,MAAM,CAAC,eAAe,CAAC,EAA9C,CAA8C;KACrF,CAAC,CAAC;AACL,CAAC","sourcesContent":["import { configureStore } from \"@reduxjs/toolkit\";\nimport type { Middleware, ReducersMapObject } from \"@reduxjs/toolkit\";\nimport { solidApiSlices, solidReducers } from \"./defaultStoreConfig\";\nimport { createSolidEntityApi } from \"../api/solidEntityApi\";\n\nexport type CreateSolidStoreOptions = {\n entities?: string[];\n reducers?: ReducersMapObject;\n middlewares?: Middleware[];\n};\n\n/**\n * createSolidStore builds the default SolidX store and lets consumers extend it.\n *\n * To add custom slices/middlewares in a consuming app:\n * import { createSolidStore } from \"@solidxai/core-ui\";\n * import myReducer from \"./myReducer\";\n * import myMiddleware from \"./myMiddleware\";\n *\n * const store = createSolidStore({\n * entities,\n * reducers: { mySlice: myReducer },\n * middlewares: [myMiddleware],\n * });\n */\nexport function createSolidStore(options: CreateSolidStoreOptions = {}) {\n const { entities = [], reducers = {}, middlewares = [] } = options;\n\n const rootReducers: ReducersMapObject = {\n ...solidReducers,\n ...Object.fromEntries(solidApiSlices.map((api) => [api.reducerPath, api.reducer])),\n ...reducers,\n } as ReducersMapObject;\n\n const rootMiddlewares: Middleware[] = [\n ...solidApiSlices.map((api) => api.middleware as Middleware),\n ...middlewares,\n ];\n\n for (let i = 0; i < entities.length; i += 1) {\n const entity = entities[i];\n const apiSlice = createSolidEntityApi(entity);\n rootReducers[apiSlice.reducerPath] = apiSlice.reducer;\n rootMiddlewares.push(apiSlice.middleware as Middleware);\n }\n\n return configureStore({\n reducer: rootReducers,\n middleware: (getDefaultMiddleware) => getDefaultMiddleware().concat(rootMiddlewares),\n });\n}\n\nexport type SolidStore = ReturnType<typeof createSolidStore>;\nexport type SolidRootState = ReturnType<SolidStore[\"getState\"]>;\nexport type SolidDispatch = SolidStore[\"dispatch\"];\n"]}
1
+ {"version":3,"file":"createSolidStore.js","sourceRoot":"","sources":["../../../src/redux/store/createSolidStore.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAElD,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,2BAA2B,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EAAE,uCAAuC,EAAE,MAAM,8BAA8B,CAAC;AACvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAQ9D;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAAC,OAAqC;IAArC,wBAAA,EAAA,YAAqC;IAC5D,IAAA,KAAoC,OAAO,SAA9B,EAAb,QAAQ,mBAAG,EAAE,KAAA,EAAE,KAAqB,OAAO,YAAZ,EAAhB,WAAW,mBAAG,EAAE,KAAA,CAAa;IAEpD,IAAM,YAAY,GAAsB,+BACnC,aAAa,GACb,MAAM,CAAC,WAAW,CAAC,cAAc,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,EAA9B,CAA8B,CAAC,CAAC,GAC/E,QAAQ,CACS,CAAC;IAEvB,IAAM,eAAe,mCAChB,cAAc,CAAC,GAAG,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,UAAwB,EAA5B,CAA4B,CAAC,SACzD,WAAW,OACf,CAAC;IAEF,IAAM,cAAc,GAAG,2BAA2B,CAAC,YAAY,CAAC,CAAC;IACjE,IAAM,0BAA0B,GAAG,uCAAuC,EAAE,CAAC;IAE7E,IAAM,KAAK,GAAG,cAAc,CAAC;QAC3B,OAAO,EAAE,cAAc,CAAC,MAAM;QAC9B,UAAU,EAAE,UAAC,oBAAoB;;YAC/B,OAAA,CAAA,KAAA,oBAAoB,EAAE,CAAA,CAAC,MAAM,2CAAI,eAAe,WAAE,0BAA0B,CAAC,UAAU;QAAvF,CAAwF;KAC3F,CAAC,CAAC;IAEH,sBAAsB,CAAC;QACrB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,cAAc,EAAE,KAAK,CAAC,cAAc;QACpC,cAAc,gBAAA;QACd,iBAAiB,EAAE,0BAA0B;KAC9C,CAAC,CAAC;IAEH,OAAO,KAAK,CAAC;AACf,CAAC","sourcesContent":["import { configureStore } from \"@reduxjs/toolkit\";\nimport type { Middleware, ReducersMapObject } from \"@reduxjs/toolkit\";\nimport { solidApiSlices, solidReducers } from \"./defaultStoreConfig\";\nimport { createDynamicReducerManager } from \"./dynamicReducerManager\";\nimport { createDynamicEntityApiMiddlewareManager } from \"./dynamicEntityApiMiddleware\";\nimport { setSolidEntityApiStore } from \"./solidEntityApiPool\";\n\nexport type CreateSolidStoreOptions = {\n entities?: string[];\n reducers?: ReducersMapObject;\n middlewares?: Middleware[];\n};\n\n/**\n * createSolidStore builds the default SolidX store and lets consumers extend it.\n *\n * To add custom slices/middlewares in a consuming app:\n * import { createSolidStore } from \"@solidxai/core-ui\";\n * import myReducer from \"./myReducer\";\n * import myMiddleware from \"./myMiddleware\";\n *\n * const store = createSolidStore({\n * entities,\n * reducers: { mySlice: myReducer },\n * middlewares: [myMiddleware],\n * });\n */\nexport function createSolidStore(options: CreateSolidStoreOptions = {}) {\n const { reducers = {}, middlewares = [] } = options;\n\n const rootReducers: ReducersMapObject = {\n ...solidReducers,\n ...Object.fromEntries(solidApiSlices.map((api) => [api.reducerPath, api.reducer])),\n ...reducers,\n } as ReducersMapObject;\n\n const rootMiddlewares: Middleware[] = [\n ...solidApiSlices.map((api) => api.middleware as Middleware),\n ...middlewares,\n ];\n\n const reducerManager = createDynamicReducerManager(rootReducers);\n const entityApiMiddlewareManager = createDynamicEntityApiMiddlewareManager();\n\n const store = configureStore({\n reducer: reducerManager.reduce,\n middleware: (getDefaultMiddleware) =>\n getDefaultMiddleware().concat(...rootMiddlewares, entityApiMiddlewareManager.middleware),\n });\n\n setSolidEntityApiStore({\n dispatch: store.dispatch,\n getState: store.getState,\n replaceReducer: store.replaceReducer,\n reducerManager,\n middlewareManager: entityApiMiddlewareManager,\n });\n\n return store;\n}\n\nexport type SolidStore = ReturnType<typeof createSolidStore>;\nexport type SolidRootState = ReturnType<SolidStore[\"getState\"]>;\nexport type SolidDispatch = SolidStore[\"dispatch\"];\n"]}
@@ -1,7 +1,9 @@
1
1
  import { configureStore } from "@reduxjs/toolkit";
2
2
  import type { Middleware, ReducersMapObject } from "@reduxjs/toolkit";
3
3
  import { solidApiSlices, solidReducers } from "./defaultStoreConfig";
4
- import { createSolidEntityApi } from "../api/solidEntityApi";
4
+ import { createDynamicReducerManager } from "./dynamicReducerManager";
5
+ import { createDynamicEntityApiMiddlewareManager } from "./dynamicEntityApiMiddleware";
6
+ import { setSolidEntityApiStore } from "./solidEntityApiPool";
5
7
 
6
8
  export type CreateSolidStoreOptions = {
7
9
  entities?: string[];
@@ -24,7 +26,7 @@ export type CreateSolidStoreOptions = {
24
26
  * });
25
27
  */
26
28
  export function createSolidStore(options: CreateSolidStoreOptions = {}) {
27
- const { entities = [], reducers = {}, middlewares = [] } = options;
29
+ const { reducers = {}, middlewares = [] } = options;
28
30
 
29
31
  const rootReducers: ReducersMapObject = {
30
32
  ...solidReducers,
@@ -37,17 +39,24 @@ export function createSolidStore(options: CreateSolidStoreOptions = {}) {
37
39
  ...middlewares,
38
40
  ];
39
41
 
40
- for (let i = 0; i < entities.length; i += 1) {
41
- const entity = entities[i];
42
- const apiSlice = createSolidEntityApi(entity);
43
- rootReducers[apiSlice.reducerPath] = apiSlice.reducer;
44
- rootMiddlewares.push(apiSlice.middleware as Middleware);
45
- }
42
+ const reducerManager = createDynamicReducerManager(rootReducers);
43
+ const entityApiMiddlewareManager = createDynamicEntityApiMiddlewareManager();
46
44
 
47
- return configureStore({
48
- reducer: rootReducers,
49
- middleware: (getDefaultMiddleware) => getDefaultMiddleware().concat(rootMiddlewares),
45
+ const store = configureStore({
46
+ reducer: reducerManager.reduce,
47
+ middleware: (getDefaultMiddleware) =>
48
+ getDefaultMiddleware().concat(...rootMiddlewares, entityApiMiddlewareManager.middleware),
50
49
  });
50
+
51
+ setSolidEntityApiStore({
52
+ dispatch: store.dispatch,
53
+ getState: store.getState,
54
+ replaceReducer: store.replaceReducer,
55
+ reducerManager,
56
+ middlewareManager: entityApiMiddlewareManager,
57
+ });
58
+
59
+ return store;
51
60
  }
52
61
 
53
62
  export type SolidStore = ReturnType<typeof createSolidStore>;
@@ -69,6 +69,7 @@ export declare const solidApiSlices: (import("@reduxjs/toolkit/query").Api<impor
69
69
  }, "importTransactionApi", never, typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/query/react").reactHooksModuleName> | import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, {
70
70
  getchatterMessage: import("@reduxjs/toolkit/query").QueryDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, never, any, "solidChatterMessageApi">;
71
71
  createChatterMessage: import("@reduxjs/toolkit/query").MutationDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, never, any, "solidChatterMessageApi">;
72
+ patchChatterMessage: import("@reduxjs/toolkit/query").MutationDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, never, any, "solidChatterMessageApi">;
72
73
  }, "solidChatterMessageApi", never, typeof import("@reduxjs/toolkit/query").coreModuleName | typeof import("@reduxjs/toolkit/query/react").reactHooksModuleName> | import("@reduxjs/toolkit/query").Api<import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, {
73
74
  createSolidSettings: import("@reduxjs/toolkit/query").MutationDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, never, any, "solidSettingsApi">;
74
75
  getSolidSettings: import("@reduxjs/toolkit/query").QueryDefinition<any, import("@reduxjs/toolkit/query").BaseQueryFn<string | import("@reduxjs/toolkit/query").FetchArgs, unknown, import("@reduxjs/toolkit/query").FetchBaseQueryError, {}, import("@reduxjs/toolkit/query").FetchBaseQueryMeta>, never, any, "solidSettingsApi">;
@@ -1 +1 @@
1
- {"version":3,"file":"defaultStoreConfig.d.ts","sourceRoot":"","sources":["../../../src/redux/store/defaultStoreConfig.ts"],"names":[],"mappings":"AA+BA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yJAsB1B,CAAC;AAGF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;CASzB,CAAC"}
1
+ {"version":3,"file":"defaultStoreConfig.d.ts","sourceRoot":"","sources":["../../../src/redux/store/defaultStoreConfig.ts"],"names":[],"mappings":"AA+BA,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;yJAsB1B,CAAC;AAGF,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;CASzB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import type { Middleware } from "@reduxjs/toolkit";
2
+ export type DynamicEntityApiMiddlewareManager = {
3
+ middleware: Middleware;
4
+ add: (key: string, middleware: Middleware) => boolean;
5
+ remove: (key: string) => boolean;
6
+ has: (key: string) => boolean;
7
+ keys: () => string[];
8
+ };
9
+ export declare function createDynamicEntityApiMiddlewareManager(): DynamicEntityApiMiddlewareManager;
10
+ //# sourceMappingURL=dynamicEntityApiMiddleware.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamicEntityApiMiddleware.d.ts","sourceRoot":"","sources":["../../../src/redux/store/dynamicEntityApiMiddleware.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAiB,MAAM,kBAAkB,CAAC;AAIlE,MAAM,MAAM,iCAAiC,GAAG;IAC9C,UAAU,EAAE,UAAU,CAAC;IACvB,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,KAAK,OAAO,CAAC;IACtD,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IACjC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAC9B,IAAI,EAAE,MAAM,MAAM,EAAE,CAAC;CACtB,CAAC;AAEF,wBAAgB,uCAAuC,IAAI,iCAAiC,CA6C3F"}
@@ -0,0 +1,44 @@
1
+ export function createDynamicEntityApiMiddlewareManager() {
2
+ var middlewares = new Map();
3
+ var middlewareApi = null;
4
+ var handlers = new Map();
5
+ var manager = {
6
+ middleware: function (api) {
7
+ middlewareApi = api;
8
+ middlewares.forEach(function (middleware, key) {
9
+ if (!handlers.has(key)) {
10
+ handlers.set(key, middleware(api));
11
+ }
12
+ });
13
+ return function (next) { return function (action) {
14
+ var chain = Array.from(handlers.values());
15
+ var dynamicNext = chain.reduceRight(function (nextHandler, handler) { return handler(nextHandler); }, next);
16
+ return dynamicNext(action);
17
+ }; };
18
+ },
19
+ add: function (key, middleware) {
20
+ if (!key || middlewares.has(key))
21
+ return false;
22
+ middlewares.set(key, middleware);
23
+ if (middlewareApi) {
24
+ handlers.set(key, middleware(middlewareApi));
25
+ }
26
+ return true;
27
+ },
28
+ remove: function (key) {
29
+ if (!middlewares.has(key))
30
+ return false;
31
+ middlewares.delete(key);
32
+ handlers.delete(key);
33
+ return true;
34
+ },
35
+ has: function (key) {
36
+ return middlewares.has(key);
37
+ },
38
+ keys: function () {
39
+ return Array.from(middlewares.keys());
40
+ },
41
+ };
42
+ return manager;
43
+ }
44
+ //# sourceMappingURL=dynamicEntityApiMiddleware.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamicEntityApiMiddleware.js","sourceRoot":"","sources":["../../../src/redux/store/dynamicEntityApiMiddleware.ts"],"names":[],"mappings":"AAYA,MAAM,UAAU,uCAAuC;IACrD,IAAM,WAAW,GAAG,IAAI,GAAG,EAAsB,CAAC;IAClD,IAAI,aAAa,GAAyB,IAAI,CAAC;IAC/C,IAAM,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAC;IAEtD,IAAM,OAAO,GAAsC;QACjD,UAAU,EAAE,UAAC,GAAG;YACd,aAAa,GAAG,GAAG,CAAC;YACpB,WAAW,CAAC,OAAO,CAAC,UAAC,UAAU,EAAE,GAAG;gBAClC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE;oBACtB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC;iBACpC;YACH,CAAC,CAAC,CAAC;YAEH,OAAO,UAAC,IAAI,IAAK,OAAA,UAAC,MAAM;gBACtB,IAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC5C,IAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,UAAC,WAAW,EAAE,OAAO,IAAK,OAAA,OAAO,CAAC,WAAW,CAAC,EAApB,CAAoB,EAAE,IAAI,CAAC,CAAC;gBAC5F,OAAO,WAAW,CAAC,MAAM,CAAC,CAAC;YAC7B,CAAC,EAJgB,CAIhB,CAAC;QACJ,CAAC;QACD,GAAG,YAAC,GAAG,EAAE,UAAU;YACjB,IAAI,CAAC,GAAG,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;YAE/C,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YACjC,IAAI,aAAa,EAAE;gBACjB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC;aAC9C;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,YAAC,GAAG;YACR,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;YAExC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACxB,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACrB,OAAO,IAAI,CAAC;QACd,CAAC;QACD,GAAG,YAAC,GAAG;YACL,OAAO,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QAC9B,CAAC;QACD,IAAI;YACF,OAAO,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,CAAC;QACxC,CAAC;KACF,CAAC;IAEF,OAAO,OAAO,CAAC;AACjB,CAAC","sourcesContent":["import type { Middleware, MiddlewareAPI } from \"@reduxjs/toolkit\";\n\ntype MiddlewareWithApi = ReturnType<Middleware>;\n\nexport type DynamicEntityApiMiddlewareManager = {\n middleware: Middleware;\n add: (key: string, middleware: Middleware) => boolean;\n remove: (key: string) => boolean;\n has: (key: string) => boolean;\n keys: () => string[];\n};\n\nexport function createDynamicEntityApiMiddlewareManager(): DynamicEntityApiMiddlewareManager {\n const middlewares = new Map<string, Middleware>();\n let middlewareApi: MiddlewareAPI | null = null;\n const handlers = new Map<string, MiddlewareWithApi>();\n\n const manager: DynamicEntityApiMiddlewareManager = {\n middleware: (api) => {\n middlewareApi = api;\n middlewares.forEach((middleware, key) => {\n if (!handlers.has(key)) {\n handlers.set(key, middleware(api));\n }\n });\n\n return (next) => (action) => {\n const chain = Array.from(handlers.values());\n const dynamicNext = chain.reduceRight((nextHandler, handler) => handler(nextHandler), next);\n return dynamicNext(action);\n };\n },\n add(key, middleware) {\n if (!key || middlewares.has(key)) return false;\n\n middlewares.set(key, middleware);\n if (middlewareApi) {\n handlers.set(key, middleware(middlewareApi));\n }\n return true;\n },\n remove(key) {\n if (!middlewares.has(key)) return false;\n\n middlewares.delete(key);\n handlers.delete(key);\n return true;\n },\n has(key) {\n return middlewares.has(key);\n },\n keys() {\n return Array.from(middlewares.keys());\n },\n };\n\n return manager;\n}\n"]}
@@ -0,0 +1,58 @@
1
+ import type { Middleware, MiddlewareAPI } from "@reduxjs/toolkit";
2
+
3
+ type MiddlewareWithApi = ReturnType<Middleware>;
4
+
5
+ export type DynamicEntityApiMiddlewareManager = {
6
+ middleware: Middleware;
7
+ add: (key: string, middleware: Middleware) => boolean;
8
+ remove: (key: string) => boolean;
9
+ has: (key: string) => boolean;
10
+ keys: () => string[];
11
+ };
12
+
13
+ export function createDynamicEntityApiMiddlewareManager(): DynamicEntityApiMiddlewareManager {
14
+ const middlewares = new Map<string, Middleware>();
15
+ let middlewareApi: MiddlewareAPI | null = null;
16
+ const handlers = new Map<string, MiddlewareWithApi>();
17
+
18
+ const manager: DynamicEntityApiMiddlewareManager = {
19
+ middleware: (api) => {
20
+ middlewareApi = api;
21
+ middlewares.forEach((middleware, key) => {
22
+ if (!handlers.has(key)) {
23
+ handlers.set(key, middleware(api));
24
+ }
25
+ });
26
+
27
+ return (next) => (action) => {
28
+ const chain = Array.from(handlers.values());
29
+ const dynamicNext = chain.reduceRight((nextHandler, handler) => handler(nextHandler), next);
30
+ return dynamicNext(action);
31
+ };
32
+ },
33
+ add(key, middleware) {
34
+ if (!key || middlewares.has(key)) return false;
35
+
36
+ middlewares.set(key, middleware);
37
+ if (middlewareApi) {
38
+ handlers.set(key, middleware(middlewareApi));
39
+ }
40
+ return true;
41
+ },
42
+ remove(key) {
43
+ if (!middlewares.has(key)) return false;
44
+
45
+ middlewares.delete(key);
46
+ handlers.delete(key);
47
+ return true;
48
+ },
49
+ has(key) {
50
+ return middlewares.has(key);
51
+ },
52
+ keys() {
53
+ return Array.from(middlewares.keys());
54
+ },
55
+ };
56
+
57
+ return manager;
58
+ }
@@ -0,0 +1,10 @@
1
+ import type { Reducer, ReducersMapObject } from "@reduxjs/toolkit";
2
+ export type DynamicReducerManager = {
3
+ reduce: Reducer;
4
+ add: (key: string, reducer: Reducer) => boolean;
5
+ remove: (key: string) => boolean;
6
+ has: (key: string) => boolean;
7
+ getReducerMap: () => ReducersMapObject;
8
+ };
9
+ export declare function createDynamicReducerManager(initialReducers: ReducersMapObject): DynamicReducerManager;
10
+ //# sourceMappingURL=dynamicReducerManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamicReducerManager.d.ts","sourceRoot":"","sources":["../../../src/redux/store/dynamicReducerManager.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAa,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE9E,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,OAAO,CAAC;IAChB,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,OAAO,CAAC;IAChD,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IACjC,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC;IAC9B,aAAa,EAAE,MAAM,iBAAiB,CAAC;CACxC,CAAC;AAEF,wBAAgB,2BAA2B,CAAC,eAAe,EAAE,iBAAiB,GAAG,qBAAqB,CAuCrG"}
@@ -0,0 +1,51 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { combineReducers } from "@reduxjs/toolkit";
13
+ export function createDynamicReducerManager(initialReducers) {
14
+ var reducers = __assign({}, initialReducers);
15
+ var combinedReducer = combineReducers(reducers);
16
+ var keysToRemove = [];
17
+ return {
18
+ reduce: function (state, action) {
19
+ if (keysToRemove.length > 0 && state) {
20
+ state = __assign({}, state);
21
+ keysToRemove.forEach(function (key) {
22
+ delete state[key];
23
+ });
24
+ keysToRemove = [];
25
+ }
26
+ return combinedReducer(state, action);
27
+ },
28
+ add: function (key, reducer) {
29
+ if (!key || reducers[key])
30
+ return false;
31
+ reducers[key] = reducer;
32
+ combinedReducer = combineReducers(reducers);
33
+ return true;
34
+ },
35
+ remove: function (key) {
36
+ if (!key || !reducers[key])
37
+ return false;
38
+ delete reducers[key];
39
+ keysToRemove.push(key);
40
+ combinedReducer = combineReducers(reducers);
41
+ return true;
42
+ },
43
+ has: function (key) {
44
+ return Boolean(reducers[key]);
45
+ },
46
+ getReducerMap: function () {
47
+ return __assign({}, reducers);
48
+ },
49
+ };
50
+ }
51
+ //# sourceMappingURL=dynamicReducerManager.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dynamicReducerManager.js","sourceRoot":"","sources":["../../../src/redux/store/dynamicReducerManager.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAWnD,MAAM,UAAU,2BAA2B,CAAC,eAAkC;IAC5E,IAAM,QAAQ,gBAA2B,eAAe,CAAE,CAAC;IAC3D,IAAI,eAAe,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,YAAY,GAAa,EAAE,CAAC;IAEhC,OAAO;QACL,MAAM,YAAC,KAAU,EAAE,MAAiB;YAClC,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,EAAE;gBACpC,KAAK,gBAAQ,KAAK,CAAE,CAAC;gBACrB,YAAY,CAAC,OAAO,CAAC,UAAC,GAAG;oBACvB,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC;gBACpB,CAAC,CAAC,CAAC;gBACH,YAAY,GAAG,EAAE,CAAC;aACnB;YAED,OAAO,eAAe,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACxC,CAAC;QACD,GAAG,YAAC,GAAW,EAAE,OAAgB;YAC/B,IAAI,CAAC,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;YAExC,QAAQ,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC;YACxB,eAAe,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,MAAM,YAAC,GAAW;YAChB,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;YAEzC,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC;YACrB,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACvB,eAAe,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;YAC5C,OAAO,IAAI,CAAC;QACd,CAAC;QACD,GAAG,YAAC,GAAW;YACb,OAAO,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QAChC,CAAC;QACD,aAAa;YACX,oBAAY,QAAQ,EAAG;QACzB,CAAC;KACF,CAAC;AACJ,CAAC","sourcesContent":["import { combineReducers } from \"@reduxjs/toolkit\";\nimport type { AnyAction, Reducer, ReducersMapObject } from \"@reduxjs/toolkit\";\n\nexport type DynamicReducerManager = {\n reduce: Reducer;\n add: (key: string, reducer: Reducer) => boolean;\n remove: (key: string) => boolean;\n has: (key: string) => boolean;\n getReducerMap: () => ReducersMapObject;\n};\n\nexport function createDynamicReducerManager(initialReducers: ReducersMapObject): DynamicReducerManager {\n const reducers: ReducersMapObject = { ...initialReducers };\n let combinedReducer = combineReducers(reducers);\n let keysToRemove: string[] = [];\n\n return {\n reduce(state: any, action: AnyAction) {\n if (keysToRemove.length > 0 && state) {\n state = { ...state };\n keysToRemove.forEach((key) => {\n delete state[key];\n });\n keysToRemove = [];\n }\n\n return combinedReducer(state, action);\n },\n add(key: string, reducer: Reducer) {\n if (!key || reducers[key]) return false;\n\n reducers[key] = reducer;\n combinedReducer = combineReducers(reducers);\n return true;\n },\n remove(key: string) {\n if (!key || !reducers[key]) return false;\n\n delete reducers[key];\n keysToRemove.push(key);\n combinedReducer = combineReducers(reducers);\n return true;\n },\n has(key: string) {\n return Boolean(reducers[key]);\n },\n getReducerMap() {\n return { ...reducers };\n },\n };\n}\n"]}
@@ -0,0 +1,51 @@
1
+ import { combineReducers } from "@reduxjs/toolkit";
2
+ import type { AnyAction, Reducer, ReducersMapObject } from "@reduxjs/toolkit";
3
+
4
+ export type DynamicReducerManager = {
5
+ reduce: Reducer;
6
+ add: (key: string, reducer: Reducer) => boolean;
7
+ remove: (key: string) => boolean;
8
+ has: (key: string) => boolean;
9
+ getReducerMap: () => ReducersMapObject;
10
+ };
11
+
12
+ export function createDynamicReducerManager(initialReducers: ReducersMapObject): DynamicReducerManager {
13
+ const reducers: ReducersMapObject = { ...initialReducers };
14
+ let combinedReducer = combineReducers(reducers);
15
+ let keysToRemove: string[] = [];
16
+
17
+ return {
18
+ reduce(state: any, action: AnyAction) {
19
+ if (keysToRemove.length > 0 && state) {
20
+ state = { ...state };
21
+ keysToRemove.forEach((key) => {
22
+ delete state[key];
23
+ });
24
+ keysToRemove = [];
25
+ }
26
+
27
+ return combinedReducer(state, action);
28
+ },
29
+ add(key: string, reducer: Reducer) {
30
+ if (!key || reducers[key]) return false;
31
+
32
+ reducers[key] = reducer;
33
+ combinedReducer = combineReducers(reducers);
34
+ return true;
35
+ },
36
+ remove(key: string) {
37
+ if (!key || !reducers[key]) return false;
38
+
39
+ delete reducers[key];
40
+ keysToRemove.push(key);
41
+ combinedReducer = combineReducers(reducers);
42
+ return true;
43
+ },
44
+ has(key: string) {
45
+ return Boolean(reducers[key]);
46
+ },
47
+ getReducerMap() {
48
+ return { ...reducers };
49
+ },
50
+ };
51
+ }
@@ -0,0 +1,31 @@
1
+ import type { AnyAction, Dispatch, Middleware, Reducer } from "@reduxjs/toolkit";
2
+ import type { DynamicEntityApiMiddlewareManager } from "./dynamicEntityApiMiddleware";
3
+ import type { DynamicReducerManager } from "./dynamicReducerManager";
4
+ export declare const SOLID_ENTITY_API_POOL_LIMIT = 64;
5
+ type SolidEntityApi = {
6
+ reducerPath: string;
7
+ reducer: Reducer;
8
+ middleware: Middleware;
9
+ util?: {
10
+ resetApiState?: () => AnyAction;
11
+ };
12
+ };
13
+ type SolidEntityApiStore = {
14
+ dispatch: Dispatch;
15
+ getState: () => any;
16
+ replaceReducer: (nextReducer: Reducer) => void;
17
+ reducerManager: DynamicReducerManager;
18
+ middlewareManager: DynamicEntityApiMiddlewareManager;
19
+ };
20
+ export declare function setSolidEntityApiStore(store: SolidEntityApiStore): void;
21
+ export declare function ensureSolidEntityApiRegistered(entityName: string, api: SolidEntityApi): void;
22
+ export declare function getSolidEntityApiPoolSnapshot(): {
23
+ entityName: string;
24
+ reducerPath: string;
25
+ registeredAt: number;
26
+ lastAccessedAt: number;
27
+ active: boolean;
28
+ }[];
29
+ export declare function resetSolidEntityApiPoolForTests(): void;
30
+ export {};
31
+ //# sourceMappingURL=solidEntityApiPool.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"solidEntityApiPool.d.ts","sourceRoot":"","sources":["../../../src/redux/store/solidEntityApiPool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,kBAAkB,CAAC;AACjF,OAAO,KAAK,EAAE,iCAAiC,EAAE,MAAM,8BAA8B,CAAC;AACtF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAErE,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAE9C,KAAK,cAAc,GAAG;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,UAAU,EAAE,UAAU,CAAC;IACvB,IAAI,CAAC,EAAE;QACL,aAAa,CAAC,EAAE,MAAM,SAAS,CAAC;KACjC,CAAC;CACH,CAAC;AASF,KAAK,mBAAmB,GAAG;IACzB,QAAQ,EAAE,QAAQ,CAAC;IACnB,QAAQ,EAAE,MAAM,GAAG,CAAC;IACpB,cAAc,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,CAAC;IAC/C,cAAc,EAAE,qBAAqB,CAAC;IACtC,iBAAiB,EAAE,iCAAiC,CAAC;CACtD,CAAC;AA4FF,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,mBAAmB,QAEhE;AAED,wBAAgB,8BAA8B,CAAC,UAAU,EAAE,MAAM,EAAE,GAAG,EAAE,cAAc,QAgCrF;AAED,wBAAgB,6BAA6B;;;;;;IAE5C;AAED,wBAAgB,+BAA+B,SAI9C"}