@akanjs/ui 0.0.149 → 0.0.151

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 (405) hide show
  1. package/BottomSheet.d.ts +13 -0
  2. package/Button.d.ts +9 -0
  3. package/ClientSide.d.ts +6 -0
  4. package/Copy.d.ts +6 -0
  5. package/CsrImage.d.ts +11 -0
  6. package/Data/CardList.d.ts +36 -0
  7. package/Data/Dashboard.d.ts +15 -0
  8. package/Data/Insight.d.ts +8 -0
  9. package/Data/Item.d.ts +74 -0
  10. package/Data/ListContainer.d.ts +38 -0
  11. package/Data/Pagination.d.ts +6 -0
  12. package/Data/QueryMaker.d.ts +9 -0
  13. package/Data/TableList.d.ts +26 -0
  14. package/Data/index.d.ts +10 -0
  15. package/Data/index_.d.ts +8 -0
  16. package/DatePicker.d.ts +38 -0
  17. package/Dialog/Action.d.ts +5 -0
  18. package/Dialog/Close.d.ts +5 -0
  19. package/Dialog/Content.d.ts +6 -0
  20. package/Dialog/Modal.d.ts +8 -0
  21. package/Dialog/Provider.d.ts +7 -0
  22. package/Dialog/Title.d.ts +5 -0
  23. package/Dialog/Trigger.d.ts +5 -0
  24. package/Dialog/context.d.ts +10 -0
  25. package/Dialog/index.d.ts +9 -0
  26. package/DragAction.d.ts +24 -0
  27. package/DraggableList.d.ts +25 -0
  28. package/Dropdown.d.ts +10 -0
  29. package/Empty.d.ts +9 -0
  30. package/Field.d.ts +404 -0
  31. package/FontFace.d.ts +6 -0
  32. package/Image.d.ts +17 -0
  33. package/InfiniteScroll.d.ts +10 -0
  34. package/Input.d.ts +85 -0
  35. package/KeyboardAvoiding.d.ts +7 -0
  36. package/Layout/BottomAction.d.ts +5 -0
  37. package/Layout/BottomInset.d.ts +6 -0
  38. package/Layout/BottomTab.d.ts +14 -0
  39. package/Layout/Header.d.ts +7 -0
  40. package/Layout/LeftSider.d.ts +8 -0
  41. package/Layout/Navbar.d.ts +11 -0
  42. package/Layout/RightSider.d.ts +9 -0
  43. package/Layout/Sider.d.ts +6 -0
  44. package/Layout/Template.d.ts +5 -0
  45. package/Layout/TopLeftAction.d.ts +5 -0
  46. package/Layout/Unit.d.ts +6 -0
  47. package/Layout/View.d.ts +5 -0
  48. package/Layout/Zone.d.ts +5 -0
  49. package/Layout/index.d.ts +14 -0
  50. package/Link/Back.d.ts +6 -0
  51. package/Link/Close.d.ts +6 -0
  52. package/Link/CsrLink.d.ts +2 -0
  53. package/Link/NextLink.d.ts +2 -0
  54. package/Link/index.d.ts +8 -0
  55. package/Link/types.d.ts +22 -0
  56. package/Load/Edit.d.ts +4 -0
  57. package/Load/Edit_Client.d.ts +25 -0
  58. package/Load/Page.d.ts +10 -0
  59. package/Load/PageCSR.d.ts +11 -0
  60. package/Load/Pagination.d.ts +8 -0
  61. package/Load/Units.d.ts +34 -0
  62. package/Load/View.d.ts +17 -0
  63. package/Load/index.d.ts +8 -0
  64. package/Load/index_.d.ts +3 -0
  65. package/Loading/Area.d.ts +1 -0
  66. package/Loading/Button.d.ts +7 -0
  67. package/Loading/Input.d.ts +7 -0
  68. package/Loading/ProgressBar.d.ts +6 -0
  69. package/Loading/Skeleton.d.ts +7 -0
  70. package/Loading/Spin.d.ts +7 -0
  71. package/Loading/index.d.ts +8 -0
  72. package/Menu.d.ts +26 -0
  73. package/Modal.d.ts +23 -0
  74. package/Model/Edit.d.ts +15 -0
  75. package/Model/EditModal.d.ts +33 -0
  76. package/Model/EditWrapper.d.ts +11 -0
  77. package/Model/LoadInit.d.ts +10 -0
  78. package/Model/New.d.ts +15 -0
  79. package/Model/NewWrapper.d.ts +12 -0
  80. package/Model/NewWrapper_Client.d.ts +12 -0
  81. package/Model/Remove.d.ts +10 -0
  82. package/Model/RemoveWrapper.d.ts +11 -0
  83. package/Model/SureToRemove.d.ts +10 -0
  84. package/Model/View.d.ts +19 -0
  85. package/Model/ViewEditModal.d.ts +11 -0
  86. package/Model/ViewModal.d.ts +13 -0
  87. package/Model/ViewWrapper.d.ts +11 -0
  88. package/Model/index.d.ts +15 -0
  89. package/Model/index_.d.ts +13 -0
  90. package/More.d.ts +12 -0
  91. package/ObjectId.d.ts +5 -0
  92. package/Pagination.d.ts +14 -0
  93. package/Popconfirm.d.ts +18 -0
  94. package/Portal.d.ts +6 -0
  95. package/Radio.d.ts +19 -0
  96. package/RecentTime.d.ts +7 -0
  97. package/Refresh.d.ts +7 -0
  98. package/ScreenNavigator.d.ts +18 -0
  99. package/Select.d.ts +29 -0
  100. package/Signal/Arg.d.ts +75 -0
  101. package/Signal/Doc.d.ts +19 -0
  102. package/Signal/GraphQL.d.ts +32 -0
  103. package/Signal/Listener.d.ts +9 -0
  104. package/Signal/Message.d.ts +27 -0
  105. package/Signal/Object.d.ts +19 -0
  106. package/Signal/PubSub.d.ts +26 -0
  107. package/Signal/Request.d.ts +8 -0
  108. package/Signal/Response.d.ts +16 -0
  109. package/Signal/RestApi.d.ts +40 -0
  110. package/Signal/WebSocket.d.ts +9 -0
  111. package/Signal/index.d.ts +20 -0
  112. package/System/CSR.d.ts +31 -0
  113. package/System/Client.d.ts +48 -0
  114. package/System/Common.d.ts +66 -0
  115. package/System/DevModeToggle.d.ts +1 -0
  116. package/System/Gtag.d.ts +3 -0
  117. package/System/HealthCheck.d.ts +5 -0
  118. package/System/Messages.d.ts +1 -0
  119. package/System/Reconnect.d.ts +6 -0
  120. package/System/Root.d.ts +5 -0
  121. package/System/SSR.d.ts +26 -0
  122. package/System/SelectLanguage.d.ts +5 -0
  123. package/System/ThemeToggle.d.ts +1 -0
  124. package/System/index.d.ts +11 -0
  125. package/Tab/Menu.d.ts +11 -0
  126. package/Tab/Menus.d.ts +5 -0
  127. package/Tab/Panel.d.ts +7 -0
  128. package/Tab/Provider.d.ts +6 -0
  129. package/Tab/context.d.ts +9 -0
  130. package/Tab/index.d.ts +7 -0
  131. package/Table.d.ts +26 -0
  132. package/ToggleSelect.d.ts +31 -0
  133. package/Unauthorized.d.ts +9 -0
  134. package/cjs/BottomSheet.js +113 -0
  135. package/cjs/Button.js +69 -0
  136. package/cjs/ClientSide.js +26 -0
  137. package/cjs/Copy.js +37 -0
  138. package/cjs/CsrImage.js +50 -0
  139. package/cjs/Data/CardList.js +119 -0
  140. package/cjs/Data/Dashboard.js +54 -0
  141. package/cjs/Data/Insight.js +38 -0
  142. package/cjs/Data/Item.js +204 -0
  143. package/cjs/Data/ListContainer.js +251 -0
  144. package/cjs/Data/Pagination.js +64 -0
  145. package/cjs/Data/QueryMaker.js +304 -0
  146. package/cjs/Data/TableList.js +139 -0
  147. package/cjs/Data/index.js +33 -0
  148. package/cjs/Data/index_.js +49 -0
  149. package/cjs/DatePicker.js +173 -0
  150. package/cjs/Dialog/Action.js +32 -0
  151. package/cjs/Dialog/Close.js +38 -0
  152. package/cjs/Dialog/Content.js +27 -0
  153. package/cjs/Dialog/Modal.js +155 -0
  154. package/cjs/Dialog/Provider.js +46 -0
  155. package/cjs/Dialog/Title.js +32 -0
  156. package/cjs/Dialog/Trigger.js +38 -0
  157. package/cjs/Dialog/context.js +32 -0
  158. package/cjs/Dialog/index.js +36 -0
  159. package/cjs/DragAction.js +111 -0
  160. package/cjs/DraggableList.js +141 -0
  161. package/cjs/Dropdown.js +64 -0
  162. package/cjs/Empty.js +50 -0
  163. package/cjs/Field.js +1109 -0
  164. package/cjs/FontFace.js +77 -0
  165. package/cjs/Image.js +61 -0
  166. package/cjs/InfiniteScroll.js +65 -0
  167. package/cjs/Input.js +440 -0
  168. package/cjs/KeyboardAvoiding.js +65 -0
  169. package/cjs/Layout/BottomAction.js +26 -0
  170. package/cjs/Layout/BottomInset.js +53 -0
  171. package/cjs/Layout/BottomTab.js +56 -0
  172. package/cjs/Layout/Header.js +52 -0
  173. package/cjs/Layout/LeftSider.js +49 -0
  174. package/cjs/Layout/Navbar.js +51 -0
  175. package/cjs/Layout/RightSider.js +52 -0
  176. package/cjs/Layout/Sider.js +39 -0
  177. package/cjs/Layout/Template.js +26 -0
  178. package/cjs/Layout/TopLeftAction.js +39 -0
  179. package/cjs/Layout/Unit.js +27 -0
  180. package/cjs/Layout/View.js +26 -0
  181. package/cjs/Layout/Zone.js +26 -0
  182. package/cjs/Layout/index.js +48 -0
  183. package/cjs/Link/Back.js +27 -0
  184. package/cjs/Link/Close.js +36 -0
  185. package/cjs/Link/CsrLink.js +49 -0
  186. package/cjs/Link/NextLink.js +71 -0
  187. package/cjs/Link/index.js +47 -0
  188. package/cjs/Link/types.js +15 -0
  189. package/cjs/Load/Edit.js +42 -0
  190. package/cjs/Load/Edit_Client.js +93 -0
  191. package/cjs/Load/Page.js +35 -0
  192. package/cjs/Load/PageCSR.js +67 -0
  193. package/cjs/Load/Pagination.js +89 -0
  194. package/cjs/Load/Units.js +232 -0
  195. package/cjs/Load/View.js +88 -0
  196. package/cjs/Load/index.js +42 -0
  197. package/cjs/Load/index_.js +39 -0
  198. package/cjs/Loading/Area.js +25 -0
  199. package/cjs/Loading/Button.js +33 -0
  200. package/cjs/Loading/Input.js +33 -0
  201. package/cjs/Loading/ProgressBar.js +29 -0
  202. package/cjs/Loading/Skeleton.js +27 -0
  203. package/cjs/Loading/Spin.js +27 -0
  204. package/cjs/Loading/index.js +29 -0
  205. package/cjs/Menu.js +215 -0
  206. package/cjs/Modal.js +75 -0
  207. package/cjs/Model/Edit.js +61 -0
  208. package/cjs/Model/EditModal.js +255 -0
  209. package/cjs/Model/EditWrapper.js +48 -0
  210. package/cjs/Model/LoadInit.js +27 -0
  211. package/cjs/Model/New.js +61 -0
  212. package/cjs/Model/NewWrapper.js +28 -0
  213. package/cjs/Model/NewWrapper_Client.js +66 -0
  214. package/cjs/Model/Remove.js +86 -0
  215. package/cjs/Model/RemoveWrapper.js +48 -0
  216. package/cjs/Model/SureToRemove.js +109 -0
  217. package/cjs/Model/View.js +44 -0
  218. package/cjs/Model/ViewEditModal.js +118 -0
  219. package/cjs/Model/ViewModal.js +92 -0
  220. package/cjs/Model/ViewWrapper.js +48 -0
  221. package/cjs/Model/index.js +38 -0
  222. package/cjs/Model/index_.js +58 -0
  223. package/cjs/More.js +67 -0
  224. package/cjs/ObjectId.js +37 -0
  225. package/cjs/Pagination.js +110 -0
  226. package/cjs/Popconfirm.js +116 -0
  227. package/cjs/Portal.js +27 -0
  228. package/cjs/Radio.js +53 -0
  229. package/cjs/RecentTime.js +86 -0
  230. package/cjs/Refresh.js +45 -0
  231. package/cjs/ScreenNavigator.js +121 -0
  232. package/cjs/Select.js +262 -0
  233. package/cjs/Signal/Arg.js +237 -0
  234. package/cjs/Signal/Doc.js +181 -0
  235. package/cjs/Signal/GraphQL.js +177 -0
  236. package/cjs/Signal/Listener.js +59 -0
  237. package/cjs/Signal/Message.js +190 -0
  238. package/cjs/Signal/Object.js +95 -0
  239. package/cjs/Signal/PubSub.js +191 -0
  240. package/cjs/Signal/Request.js +38 -0
  241. package/cjs/Signal/Response.js +53 -0
  242. package/cjs/Signal/RestApi.js +255 -0
  243. package/cjs/Signal/WebSocket.js +68 -0
  244. package/cjs/Signal/index.js +42 -0
  245. package/cjs/System/CSR.js +376 -0
  246. package/cjs/System/Client.js +200 -0
  247. package/cjs/System/Common.js +64 -0
  248. package/cjs/System/DevModeToggle.js +38 -0
  249. package/cjs/System/Gtag.js +67 -0
  250. package/cjs/System/HealthCheck.js +60 -0
  251. package/cjs/System/Messages.js +170 -0
  252. package/cjs/System/Reconnect.js +64 -0
  253. package/cjs/System/Root.js +30 -0
  254. package/cjs/System/SSR.js +144 -0
  255. package/cjs/System/SelectLanguage.js +58 -0
  256. package/cjs/System/ThemeToggle.js +40 -0
  257. package/cjs/System/index.js +55 -0
  258. package/cjs/Tab/Menu.js +70 -0
  259. package/cjs/{src/index.js → Tab/Menus.js} +8 -5
  260. package/cjs/Tab/Panel.js +42 -0
  261. package/cjs/Tab/Provider.js +31 -0
  262. package/cjs/Tab/context.js +30 -0
  263. package/cjs/Tab/index.js +32 -0
  264. package/cjs/Table.js +85 -0
  265. package/cjs/ToggleSelect.js +118 -0
  266. package/cjs/Unauthorized.js +50 -0
  267. package/cjs/index.js +88 -2
  268. package/esm/BottomSheet.js +84 -0
  269. package/esm/Button.js +40 -0
  270. package/esm/ClientSide.js +7 -0
  271. package/esm/Copy.js +18 -0
  272. package/esm/CsrImage.js +31 -0
  273. package/esm/Data/CardList.js +90 -0
  274. package/esm/Data/Dashboard.js +35 -0
  275. package/esm/Data/Insight.js +19 -0
  276. package/esm/Data/Item.js +175 -0
  277. package/esm/Data/ListContainer.js +228 -0
  278. package/esm/Data/Pagination.js +45 -0
  279. package/esm/Data/QueryMaker.js +293 -0
  280. package/esm/Data/TableList.js +110 -0
  281. package/esm/Data/index.js +14 -0
  282. package/esm/Data/index_.js +20 -0
  283. package/esm/DatePicker.js +144 -0
  284. package/esm/Dialog/Action.js +13 -0
  285. package/esm/Dialog/Close.js +19 -0
  286. package/esm/Dialog/Content.js +8 -0
  287. package/esm/Dialog/Modal.js +126 -0
  288. package/esm/Dialog/Provider.js +17 -0
  289. package/esm/Dialog/Title.js +13 -0
  290. package/esm/Dialog/Trigger.js +19 -0
  291. package/esm/Dialog/context.js +13 -0
  292. package/esm/Dialog/index.js +17 -0
  293. package/esm/DragAction.js +92 -0
  294. package/esm/DraggableList.js +112 -0
  295. package/esm/Dropdown.js +45 -0
  296. package/esm/Empty.js +21 -0
  297. package/esm/Field.js +1090 -0
  298. package/esm/FontFace.js +58 -0
  299. package/esm/Image.js +32 -0
  300. package/esm/InfiniteScroll.js +46 -0
  301. package/esm/Input.js +415 -0
  302. package/esm/KeyboardAvoiding.js +46 -0
  303. package/esm/Layout/BottomAction.js +7 -0
  304. package/esm/Layout/BottomInset.js +34 -0
  305. package/esm/Layout/BottomTab.js +37 -0
  306. package/esm/Layout/Header.js +33 -0
  307. package/esm/Layout/LeftSider.js +30 -0
  308. package/esm/Layout/Navbar.js +22 -0
  309. package/esm/Layout/RightSider.js +33 -0
  310. package/esm/Layout/Sider.js +20 -0
  311. package/esm/Layout/Template.js +7 -0
  312. package/esm/Layout/TopLeftAction.js +20 -0
  313. package/esm/Layout/Unit.js +8 -0
  314. package/esm/Layout/View.js +7 -0
  315. package/esm/Layout/Zone.js +7 -0
  316. package/esm/Layout/index.js +29 -0
  317. package/esm/Link/Back.js +8 -0
  318. package/esm/Link/Close.js +17 -0
  319. package/esm/Link/CsrLink.js +30 -0
  320. package/esm/Link/NextLink.js +42 -0
  321. package/esm/Link/index.js +18 -0
  322. package/esm/Link/types.js +0 -0
  323. package/esm/Load/Edit.js +13 -0
  324. package/esm/Load/Edit_Client.js +74 -0
  325. package/esm/Load/Page.js +16 -0
  326. package/esm/Load/PageCSR.js +48 -0
  327. package/esm/Load/Pagination.js +70 -0
  328. package/esm/Load/Units.js +213 -0
  329. package/esm/Load/View.js +69 -0
  330. package/esm/Load/index.js +13 -0
  331. package/esm/Load/index_.js +10 -0
  332. package/esm/Loading/Area.js +6 -0
  333. package/esm/Loading/Button.js +14 -0
  334. package/esm/Loading/Input.js +14 -0
  335. package/esm/Loading/ProgressBar.js +10 -0
  336. package/esm/Loading/Skeleton.js +8 -0
  337. package/esm/Loading/Spin.js +8 -0
  338. package/esm/Loading/index.js +10 -0
  339. package/esm/Menu.js +196 -0
  340. package/esm/Modal.js +46 -0
  341. package/esm/Model/Edit.js +32 -0
  342. package/esm/Model/EditModal.js +226 -0
  343. package/esm/Model/EditWrapper.js +29 -0
  344. package/esm/Model/LoadInit.js +8 -0
  345. package/esm/Model/New.js +32 -0
  346. package/esm/Model/NewWrapper.js +9 -0
  347. package/esm/Model/NewWrapper_Client.js +47 -0
  348. package/esm/Model/Remove.js +67 -0
  349. package/esm/Model/RemoveWrapper.js +29 -0
  350. package/esm/Model/SureToRemove.js +90 -0
  351. package/esm/Model/View.js +25 -0
  352. package/esm/Model/ViewEditModal.js +89 -0
  353. package/esm/Model/ViewModal.js +63 -0
  354. package/esm/Model/ViewWrapper.js +29 -0
  355. package/esm/Model/index.js +33 -0
  356. package/esm/Model/index_.js +29 -0
  357. package/esm/More.js +38 -0
  358. package/esm/ObjectId.js +18 -0
  359. package/esm/Pagination.js +91 -0
  360. package/esm/Popconfirm.js +87 -0
  361. package/esm/Portal.js +8 -0
  362. package/esm/Radio.js +34 -0
  363. package/esm/RecentTime.js +57 -0
  364. package/esm/Refresh.js +16 -0
  365. package/esm/ScreenNavigator.js +102 -0
  366. package/esm/Select.js +243 -0
  367. package/esm/Signal/Arg.js +208 -0
  368. package/esm/Signal/Doc.js +152 -0
  369. package/esm/Signal/GraphQL.js +156 -0
  370. package/esm/Signal/Listener.js +40 -0
  371. package/esm/Signal/Message.js +161 -0
  372. package/esm/Signal/Object.js +76 -0
  373. package/esm/Signal/PubSub.js +162 -0
  374. package/esm/Signal/Request.js +19 -0
  375. package/esm/Signal/Response.js +34 -0
  376. package/esm/Signal/RestApi.js +234 -0
  377. package/esm/Signal/WebSocket.js +39 -0
  378. package/esm/Signal/index.js +13 -0
  379. package/esm/System/CSR.js +357 -0
  380. package/esm/System/Client.js +191 -0
  381. package/esm/System/Common.js +45 -0
  382. package/esm/System/DevModeToggle.js +19 -0
  383. package/esm/System/Gtag.js +48 -0
  384. package/esm/System/HealthCheck.js +41 -0
  385. package/esm/System/Messages.js +156 -0
  386. package/esm/System/Reconnect.js +45 -0
  387. package/esm/System/Root.js +11 -0
  388. package/esm/System/SSR.js +125 -0
  389. package/esm/System/SelectLanguage.js +39 -0
  390. package/esm/System/ThemeToggle.js +21 -0
  391. package/esm/System/index.js +26 -0
  392. package/esm/Tab/Menu.js +51 -0
  393. package/esm/Tab/Menus.js +7 -0
  394. package/esm/Tab/Panel.js +23 -0
  395. package/esm/Tab/Provider.js +12 -0
  396. package/esm/Tab/context.js +11 -0
  397. package/esm/Tab/index.js +13 -0
  398. package/esm/Table.js +56 -0
  399. package/esm/ToggleSelect.js +99 -0
  400. package/esm/Unauthorized.js +21 -0
  401. package/esm/index.js +84 -1
  402. package/index.d.ts +41 -1
  403. package/package.json +23 -2
  404. package/esm/src/index.js +0 -4
  405. package/src/index.d.ts +0 -1
@@ -0,0 +1,204 @@
1
+ "use client";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var Item_exports = {};
30
+ __export(Item_exports, {
31
+ Action: () => Action,
32
+ convToAntdColumn: () => convToAntdColumn,
33
+ default: () => Item
34
+ });
35
+ module.exports = __toCommonJS(Item_exports);
36
+ var import_client = require("@akanjs/client");
37
+ var import_common = require("@akanjs/common");
38
+ var import_next = require("@akanjs/next");
39
+ var import_store = require("@akanjs/store");
40
+ var import_react = __toESM(require("react"));
41
+ var import_ai = require("react-icons/ai");
42
+ var import_Dropdown = require("../Dropdown");
43
+ var import_ObjectId = require("../ObjectId");
44
+ var import_Popconfirm = require("../Popconfirm");
45
+ var import_RecentTime = require("../RecentTime");
46
+ const convToAntdColumn = (column) => {
47
+ if (typeof column !== "string")
48
+ return {
49
+ key: column.key,
50
+ dataIndex: column.key,
51
+ title: (0, import_common.capitalize)(column.key),
52
+ responsive: column.responsive ? ["xs", "sm", "md", "xl"] : void 0,
53
+ render: column.render
54
+ };
55
+ else if ([
56
+ "createdAt",
57
+ "updatedAt",
58
+ "at",
59
+ "At",
60
+ "lastLoginAt",
61
+ "openAt",
62
+ "closeAt",
63
+ "announceAt",
64
+ "startAt",
65
+ "logtime"
66
+ ].includes(column))
67
+ return {
68
+ key: column,
69
+ dataIndex: column,
70
+ title: (0, import_common.capitalize)(column),
71
+ render: (date) => /* @__PURE__ */ import_react.default.createElement("div", null, /* @__PURE__ */ import_react.default.createElement(import_RecentTime.RecentTime, { date }))
72
+ };
73
+ else if (column.includes("status") || column.includes("Status"))
74
+ return {
75
+ key: column,
76
+ dataIndex: column,
77
+ title: (0, import_common.capitalize)(column),
78
+ render: (status) => /* @__PURE__ */ import_react.default.createElement(StatusTag, { status })
79
+ };
80
+ else if (column.includes("role") || column.includes("Role"))
81
+ return {
82
+ key: column,
83
+ dataIndex: column,
84
+ title: (0, import_common.capitalize)(column),
85
+ render: (role) => /* @__PURE__ */ import_react.default.createElement(RoleTags, { role })
86
+ };
87
+ else
88
+ return { key: column, dataIndex: column, title: (0, import_common.capitalize)(column) };
89
+ };
90
+ function Item({
91
+ className,
92
+ model,
93
+ sliceName,
94
+ onClick,
95
+ title,
96
+ actions = [],
97
+ columns = [],
98
+ children
99
+ }) {
100
+ const { l } = (0, import_next.usePage)();
101
+ const strActions = actions.filter((action) => typeof action === "string").map((action, idx) => /* @__PURE__ */ import_react.default.createElement(Action, { key: idx, action, outline: false, model, sliceName }));
102
+ const customActions = actions.filter((action) => typeof action !== "string").map((action, idx) => ({
103
+ key: idx,
104
+ label: typeof action !== "string" ? action.render() : null
105
+ }));
106
+ const extraCols = columns.filter((column) => {
107
+ const key = typeof column === "string" ? column : column.key;
108
+ return !["id", "status", "createdAt"].includes(key);
109
+ }).map((column, idx) => {
110
+ const key = typeof column === "string" ? column : column.key;
111
+ const title2 = typeof column !== "string" && column.title ? column.title : l.field(sliceName, key);
112
+ const render = convToAntdColumn(column).render ?? ((v, m, i) => JSON.stringify(v, null, 2));
113
+ const modelKeyLength = model[key]?.length;
114
+ if (convToAntdColumn(column).render) {
115
+ return /* @__PURE__ */ import_react.default.createElement("div", { key: idx, className: "flex-wrap overflow-hidden text-xs" }, !!modelKeyLength && /* @__PURE__ */ import_react.default.createElement("span", { className: "flex items-center gap-3" }, /* @__PURE__ */ import_react.default.createElement("span", { className: "font-semibold whitespace-nowrap" }, title2), /* @__PURE__ */ import_react.default.createElement("span", { className: "text-sm" }, render(model[key], model, idx))));
116
+ }
117
+ return /* @__PURE__ */ import_react.default.createElement("div", { key: idx, className: "flex-wrap overflow-hidden text-xs" }, !!modelKeyLength && /* @__PURE__ */ import_react.default.createElement("span", { className: "flex items-center gap-3" }, /* @__PURE__ */ import_react.default.createElement("span", { className: "font-semibold whitespace-nowrap" }, title2), /* @__PURE__ */ import_react.default.createElement("span", { className: "text-sm" }, model[key])));
118
+ });
119
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_client.clsx)("flex flex-col", className) }, children ? /* @__PURE__ */ import_react.default.createElement("div", { className: "flex justify-center" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "relative size-full", onClick }, children, /* @__PURE__ */ import_react.default.createElement("div", { className: "absolute inset-0" }))) : title ? /* @__PURE__ */ import_react.default.createElement("div", { className: "font-bold" }, title) : null, /* @__PURE__ */ import_react.default.createElement("div", { className: "bg-primary/5 mt-2 h-full rounded-lg p-2" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "mb-2 flex justify-between" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "[&_.badge]:badge-xs [&_.badge]:p-2" }, columns.find((c) => c === "id") && /* @__PURE__ */ import_react.default.createElement(import_ObjectId.ObjectId, { id: model.id })), /* @__PURE__ */ import_react.default.createElement("div", { className: "flex items-end justify-center gap-2" }, columns.find((c) => c === "createdAt") && /* @__PURE__ */ import_react.default.createElement(import_RecentTime.RecentTime, { date: model.createdAt, className: "text-xs opacity-60" }), columns.find((c) => c === "status") && /* @__PURE__ */ import_react.default.createElement(StatusTag, { status: model.status, className: "badge-xs mr-0 p-2" }))), /* @__PURE__ */ import_react.default.createElement("div", { className: "flex flex-col gap-1" }, extraCols), /* @__PURE__ */ import_react.default.createElement("div", { className: "flex w-full justify-around" }, strActions.map((action, idx) => /* @__PURE__ */ import_react.default.createElement("div", { className: "", key: idx }, action)), customActions.length ? /* @__PURE__ */ import_react.default.createElement(
120
+ import_Dropdown.Dropdown,
121
+ {
122
+ buttonClassName: "m-1 text-center btn btn-square btn-ghost btn-sm ",
123
+ value: /* @__PURE__ */ import_react.default.createElement(import_ai.AiOutlineMore, null),
124
+ content: customActions.map((action) => /* @__PURE__ */ import_react.default.createElement("div", { key: action.key }, action.label))
125
+ }
126
+ ) : null)));
127
+ }
128
+ const Action = ({
129
+ action,
130
+ model,
131
+ sliceName,
132
+ outline = true
133
+ }) => {
134
+ const { l } = (0, import_next.usePage)();
135
+ const storeDo = import_store.st.do;
136
+ const storeGet = import_store.st.get;
137
+ const refName = import_store.st.slice[sliceName].refName;
138
+ const [modelName, modelClassName] = [refName, (0, import_common.capitalize)(refName)];
139
+ const names = {
140
+ model: modelName,
141
+ editModel: `edit${modelClassName}`,
142
+ viewModel: `view${modelClassName}`,
143
+ removeModel: `remove${modelClassName}`
144
+ };
145
+ const namesOfSlice = {
146
+ editModel: sliceName.replace(names.model, names.editModel),
147
+ viewModel: sliceName.replace(names.model, names.viewModel),
148
+ removeModel: sliceName.replace(names.model, names.removeModel)
149
+ };
150
+ return action === "edit" ? /* @__PURE__ */ import_react.default.createElement(
151
+ "button",
152
+ {
153
+ className: `btn btn-square btn-ghost btn-sm m-1 text-center ${outline && "btn-outline border-dashed"}`,
154
+ onClick: () => void storeDo[namesOfSlice.editModel](model.id)
155
+ },
156
+ /* @__PURE__ */ import_react.default.createElement(import_ai.AiOutlineEdit, { key: action })
157
+ ) : action === "view" ? /* @__PURE__ */ import_react.default.createElement(
158
+ "button",
159
+ {
160
+ className: `btn btn-square btn-ghost btn-sm m-1 text-center ${outline && "btn-outline border-dashed"}`,
161
+ onClick: () => void storeDo[namesOfSlice.viewModel](model.id)
162
+ },
163
+ /* @__PURE__ */ import_react.default.createElement(import_ai.AiOutlineEye, { key: action })
164
+ ) : action === "remove" ? /* @__PURE__ */ import_react.default.createElement(
165
+ import_Popconfirm.Popconfirm,
166
+ {
167
+ key: action,
168
+ title: l("shared.removeMsg"),
169
+ onConfirm: () => void storeDo[namesOfSlice.removeModel](model.id)
170
+ },
171
+ /* @__PURE__ */ import_react.default.createElement("button", { className: `btn btn-square btn-ghost btn-sm m-1 text-center ${outline && "btn-outline border-dashed"}` }, /* @__PURE__ */ import_react.default.createElement(import_ai.AiOutlineDelete, null))
172
+ ) : action.render();
173
+ };
174
+ const statusColors = {
175
+ active: "badge-info badge-outline",
176
+ applied: "badge-warning",
177
+ approved: "badge-success",
178
+ denied: "badge-error badge-outline",
179
+ failed: "badge-error badge-outline",
180
+ restricted: "badge-error",
181
+ paused: "badge-outline",
182
+ running: "badge-warning badge-outline",
183
+ break: "badge-accent badge-outline",
184
+ rejected: "badge-error badge-outline",
185
+ hidden: "badge-outline",
186
+ inProgress: "badge-accent",
187
+ resolved: "badge-success badge-outline",
188
+ finished: "badge-secondary"
189
+ };
190
+ const StatusTag = ({ status, className }) => {
191
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_client.clsx)(`badge mr-1 p-3 ${statusColors[status] ?? "badge-outline"}`, className) }, status);
192
+ };
193
+ Item.StatusTag = StatusTag;
194
+ const roleColors = {
195
+ user: "badge-success",
196
+ business: "badge-warning",
197
+ admin: "badge-error badge-outline",
198
+ superAdmin: "badge-error",
199
+ root: "badge-primary"
200
+ };
201
+ const RoleTags = ({ role }) => {
202
+ return Array.isArray(role) ? /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, role.map((role2) => /* @__PURE__ */ import_react.default.createElement("div", { className: `badge mr-1 ${roleColors[role2]}`, key: role2 }, role2))) : /* @__PURE__ */ import_react.default.createElement("div", { className: "badge mr-1", style: { backgroundColor: roleColors[role] } }, role);
203
+ };
204
+ Item.RoleTags = RoleTags;
@@ -0,0 +1,251 @@
1
+ "use client";
2
+ var __create = Object.create;
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __getProtoOf = Object.getPrototypeOf;
7
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
8
+ var __export = (target, all) => {
9
+ for (var name in all)
10
+ __defProp(target, name, { get: all[name], enumerable: true });
11
+ };
12
+ var __copyProps = (to, from, except, desc) => {
13
+ if (from && typeof from === "object" || typeof from === "function") {
14
+ for (let key of __getOwnPropNames(from))
15
+ if (!__hasOwnProp.call(to, key) && key !== except)
16
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
+ }
18
+ return to;
19
+ };
20
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
+ // If the importer is in node compatibility mode or this is not an ESM
22
+ // file that has been converted to a CommonJS file using a Babel-
23
+ // compatible transform (i.e. "__esModule" has not been set), then set
24
+ // "default" to the CommonJS "module.exports" for node compatibility.
25
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
+ mod
27
+ ));
28
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
+ var ListContainer_exports = {};
30
+ __export(ListContainer_exports, {
31
+ default: () => ListContainer
32
+ });
33
+ module.exports = __toCommonJS(ListContainer_exports);
34
+ var import_client = require("@akanjs/client");
35
+ var import_common = require("@akanjs/common");
36
+ var import_constant = require("@akanjs/constant");
37
+ var import_next = require("@akanjs/next");
38
+ var import_store = require("@akanjs/store");
39
+ var import_file_saver = require("file-saver");
40
+ var import_react = __toESM(require("react"));
41
+ var import_ai = require("react-icons/ai");
42
+ var import_Dropdown = require("../Dropdown");
43
+ var import_Loading = require("../Loading");
44
+ var import_Model = require("../Model");
45
+ var import_Select = require("../Select");
46
+ var import_CardList = __toESM(require("./CardList"));
47
+ var import_QueryMaker = __toESM(require("./QueryMaker"));
48
+ var import_TableList = __toESM(require("./TableList"));
49
+ function ListContainer({
50
+ className,
51
+ cardListClassName,
52
+ type = "card",
53
+ query,
54
+ init,
55
+ create = true,
56
+ sliceName,
57
+ title,
58
+ sort,
59
+ columns = ["id", "createdAt", "updatedAt"],
60
+ actions,
61
+ tools = [],
62
+ renderDashboard,
63
+ renderItem,
64
+ renderTemplate,
65
+ renderTitle = (model) => model.id ? /* @__PURE__ */ import_react.default.createElement("h2", { className: "flex items-center justify-center py-3 text-lg sm:justify-start md:text-2xl" }, sliceName, " - ", model.id) : /* @__PURE__ */ import_react.default.createElement("h2", { className: "flex items-center justify-center py-3 text-lg sm:justify-start md:text-2xl" }, "New ", sliceName),
66
+ renderView,
67
+ renderQueryMaker = () => /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null),
68
+ renderInsight,
69
+ renderLoading
70
+ }) {
71
+ const { l } = (0, import_next.usePage)();
72
+ const storeUse = import_store.st.use;
73
+ const storeDo = import_store.st.do;
74
+ const storeGet = import_store.st.get;
75
+ const refName = import_store.st.slice[sliceName].refName;
76
+ const [modelName, modelClassName] = [refName, (0, import_common.capitalize)(refName)];
77
+ if (refName !== sliceName)
78
+ throw new Error("ListContainer: sliceName must be the same as refName");
79
+ const names = {
80
+ model: modelName,
81
+ modelList: `${modelName}List`,
82
+ modelListLoading: `${modelName}ListLoading`,
83
+ modelInsight: `${modelName}Insight`,
84
+ limitOfModel: `limitOf${modelClassName}`,
85
+ sortOfModel: `sortOf${modelClassName}`,
86
+ initModel: `init${modelClassName}`,
87
+ newModel: `new${modelClassName}`,
88
+ refreshModel: `refresh${modelClassName}`,
89
+ setSortOfModel: `setSortOf${modelClassName}`,
90
+ setLimitOfModel: `setLimitOf${modelClassName}`
91
+ };
92
+ const namesOfSlice = {
93
+ modelList: sliceName.replace(names.model, names.modelList),
94
+ modelListLoading: sliceName.replace(names.model, names.modelListLoading),
95
+ modelInsight: sliceName.replace(names.model, names.modelInsight),
96
+ limitOfModel: sliceName.replace(names.model, names.limitOfModel),
97
+ sortOfModel: sliceName.replace(names.model, names.sortOfModel),
98
+ initModel: sliceName.replace(names.model, names.initModel),
99
+ newModel: sliceName.replace(names.model, names.newModel),
100
+ refreshModel: sliceName.replace(names.model, names.refreshModel),
101
+ setSortOfModel: sliceName.replace(names.model, names.setSortOfModel),
102
+ setLimitOfModel: sliceName.replace(names.model, names.setLimitOfModel)
103
+ };
104
+ const cnst = (0, import_constant.getCnstMeta)(sliceName);
105
+ const limitOfModel = storeUse[namesOfSlice.limitOfModel]();
106
+ const sortOfModel = storeUse[namesOfSlice.sortOfModel]();
107
+ const ModelDashboard = () => {
108
+ const summary = storeUse.summary();
109
+ const summaryLoading = storeUse.summaryLoading();
110
+ const Stat = renderDashboard;
111
+ if (!Stat)
112
+ return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null);
113
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: "mb-4" }, !summary || summaryLoading ? /* @__PURE__ */ import_react.default.createElement(import_Loading.Loading.Skeleton, { active: true }) : /* @__PURE__ */ import_react.default.createElement(Stat, { summary, hidePresents: true }));
114
+ };
115
+ const RenderQueryMaker = renderQueryMaker;
116
+ const RenderInsight = () => {
117
+ const modelInsight = storeUse[namesOfSlice.modelInsight]();
118
+ return renderInsight ? renderInsight({ insight: modelInsight }) : /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null);
119
+ };
120
+ const RenderTemplate = renderTemplate;
121
+ const RenderTools = () => {
122
+ const modelList = storeUse[namesOfSlice.modelList]();
123
+ const modelListLoading = storeUse[namesOfSlice.modelListLoading]();
124
+ const toolList = modelListLoading ? [] : [
125
+ ...Array.isArray(tools) ? tools : tools([...modelList]),
126
+ {
127
+ render: () => /* @__PURE__ */ import_react.default.createElement(
128
+ "div",
129
+ {
130
+ className: "btn btn-sm btn-ghost flex flex-nowrap justify-start gap-2",
131
+ onClick: () => {
132
+ const header = columns.map((column) => {
133
+ if (typeof column === "string")
134
+ return l.field(sliceName, column);
135
+ else if (column.title)
136
+ return column.title;
137
+ else
138
+ return l.field(sliceName, column.key);
139
+ }).join(" ");
140
+ const body = modelList.map((model) => {
141
+ const line = columns.map((column) => {
142
+ if (typeof column === "string")
143
+ return model[column];
144
+ else if (column.value)
145
+ return column.value(model[column.key], model);
146
+ else if (column.render)
147
+ return column.render(model[column.key], model);
148
+ else
149
+ return model[column.key];
150
+ }).join(" ");
151
+ return line;
152
+ }).join("\n");
153
+ const blob = new Blob([`${header}
154
+ ${body}`], { type: "text/csv;charset=utf-8" });
155
+ (0, import_file_saver.saveAs)(blob, `${sliceName}.csv`);
156
+ }
157
+ },
158
+ /* @__PURE__ */ import_react.default.createElement(import_ai.AiOutlineFileExcel, null),
159
+ /* @__PURE__ */ import_react.default.createElement("span", null, "Export CSV")
160
+ )
161
+ },
162
+ {
163
+ render: () => /* @__PURE__ */ import_react.default.createElement(
164
+ "div",
165
+ {
166
+ className: "btn btn-sm btn-ghost flex flex-nowrap justify-start gap-2",
167
+ onClick: () => {
168
+ const json = JSON.stringify((0, import_common.deepObjectify)([...modelList], { serializable: true }));
169
+ const blob = new Blob([json], { type: "application/json" });
170
+ (0, import_file_saver.saveAs)(blob, `${sliceName}.json`);
171
+ }
172
+ },
173
+ /* @__PURE__ */ import_react.default.createElement(import_ai.AiOutlineFileProtect, null),
174
+ /* @__PURE__ */ import_react.default.createElement("span", null, "Export JSON")
175
+ )
176
+ }
177
+ ];
178
+ return /* @__PURE__ */ import_react.default.createElement(
179
+ import_Dropdown.Dropdown,
180
+ {
181
+ buttonClassName: `btn btn-primary btn-sm ${renderTemplate && create ? "rounded-l-none" : ""}`,
182
+ value: /* @__PURE__ */ import_react.default.createElement(import_ai.AiOutlineEllipsis, null),
183
+ content: /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, toolList.map((tool, idx) => /* @__PURE__ */ import_react.default.createElement(tool.render, { key: idx })))
184
+ }
185
+ );
186
+ };
187
+ const RenderSort = () => {
188
+ const sortMap = (0, import_constant.getFilterSortMap)(cnst.Filter);
189
+ return /* @__PURE__ */ import_react.default.createElement(
190
+ import_Select.Select,
191
+ {
192
+ value: sortOfModel,
193
+ options: Object.keys(sortMap).map((sortKey) => ({
194
+ label: l.field(sliceName, sortKey),
195
+ value: sortKey
196
+ })),
197
+ onChange: (sortKey) => void storeDo[namesOfSlice.setSortOfModel](sortKey)
198
+ }
199
+ );
200
+ };
201
+ return /* @__PURE__ */ import_react.default.createElement("div", { className: (0, import_client.clsx)("m-4", className) }, /* @__PURE__ */ import_react.default.createElement("div", { className: "mb-3 flex flex-wrap justify-between" }, /* @__PURE__ */ import_react.default.createElement("div", { className: "flex pb-1" }, /* @__PURE__ */ import_react.default.createElement("p", { className: "prose text-lg" }, title ?? l.field(sliceName, "modelName")), /* @__PURE__ */ import_react.default.createElement("div", { className: "ml-3 flex items-center" }, renderTemplate && create ? /* @__PURE__ */ import_react.default.createElement(
202
+ "button",
203
+ {
204
+ onClick: () => void storeDo[namesOfSlice.newModel](),
205
+ className: `btn btn-sm btn-primary mr-[0.5px] rounded-r-none`
206
+ },
207
+ /* @__PURE__ */ import_react.default.createElement(import_ai.AiOutlinePlus, null),
208
+ " ",
209
+ l("shared.new")
210
+ ) : null, /* @__PURE__ */ import_react.default.createElement(RenderTools, null))), /* @__PURE__ */ import_react.default.createElement("div", { className: "flex" }, /* @__PURE__ */ import_react.default.createElement(
211
+ "button",
212
+ {
213
+ className: "btn btn-primary btn-sm btn-square mx-1",
214
+ onClick: () => void storeDo[namesOfSlice.refreshModel]()
215
+ },
216
+ /* @__PURE__ */ import_react.default.createElement(import_ai.AiOutlineRedo, { className: "mx-2" })
217
+ ), /* @__PURE__ */ import_react.default.createElement(RenderSort, null), /* @__PURE__ */ import_react.default.createElement(
218
+ import_Select.Select,
219
+ {
220
+ value: limitOfModel,
221
+ options: [10, 20, 50, 100].map((limit) => ({
222
+ label: `${limit} ${l("shared.perPage")}`,
223
+ value: limit
224
+ })),
225
+ onChange: (limit) => void storeDo[namesOfSlice.setLimitOfModel](limit)
226
+ }
227
+ ))), !query && /* @__PURE__ */ import_react.default.createElement(ModelDashboard, null), /* @__PURE__ */ import_react.default.createElement(import_QueryMaker.default, { className: "mb-4", sliceName, query }), /* @__PURE__ */ import_react.default.createElement(RenderQueryMaker, null), /* @__PURE__ */ import_react.default.createElement(RenderInsight, null), type === "card" ? /* @__PURE__ */ import_react.default.createElement(
228
+ import_CardList.default,
229
+ {
230
+ sliceName,
231
+ renderItem: renderItem ?? (({ [sliceName]: model }) => /* @__PURE__ */ import_react.default.createElement("div", { key: model.id }, model.id)),
232
+ renderLoading,
233
+ renderTemplate,
234
+ renderView,
235
+ renderTitle,
236
+ columns,
237
+ actions,
238
+ cardListClassName
239
+ }
240
+ ) : /* @__PURE__ */ import_react.default.createElement(
241
+ import_TableList.default,
242
+ {
243
+ columns,
244
+ sliceName,
245
+ actions,
246
+ renderTemplate,
247
+ renderTitle,
248
+ renderView
249
+ }
250
+ ), /* @__PURE__ */ import_react.default.createElement(import_Model.Model.EditModal, { sliceName, renderTitle }, RenderTemplate ? /* @__PURE__ */ import_react.default.createElement(RenderTemplate, null) : null));
251
+ }
@@ -0,0 +1,64 @@
1
+ "use client";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var Pagination_exports = {};
20
+ __export(Pagination_exports, {
21
+ default: () => Pagination
22
+ });
23
+ module.exports = __toCommonJS(Pagination_exports);
24
+ var import_client = require("@akanjs/client");
25
+ var import_common = require("@akanjs/common");
26
+ var import_store = require("@akanjs/store");
27
+ var import_Pagination = require("../Pagination");
28
+ function Pagination({ className, sliceName }) {
29
+ const storeUse = import_store.st.use;
30
+ const storeDo = import_store.st.do;
31
+ const storeGet = import_store.st.get;
32
+ const refName = import_store.st.slice[sliceName].refName;
33
+ const [modelName, modelClassName] = [refName, (0, import_common.capitalize)(refName)];
34
+ const names = {
35
+ model: modelName,
36
+ modelInsight: `${modelName}Insight`,
37
+ limitOfModel: `limitOf${modelClassName}`,
38
+ lastPageOfModel: `lastPageOf${modelClassName}`,
39
+ pageOfModel: `pageOf${modelClassName}`,
40
+ setPageOfModel: `setPageOf${modelClassName}`
41
+ };
42
+ const namesOfSlice = {
43
+ modelInsight: sliceName.replace(names.model, names.modelInsight),
44
+ limitOfModel: sliceName.replace(names.model, names.limitOfModel),
45
+ lastPageOfModel: sliceName.replace(names.model, names.lastPageOfModel),
46
+ pageOfModel: sliceName.replace(names.model, names.pageOfModel),
47
+ setPageOfModel: sliceName.replace(names.model, names.setPageOfModel)
48
+ };
49
+ const modelInsight = storeUse[namesOfSlice.modelInsight]();
50
+ const limitOfModel = storeUse[namesOfSlice.limitOfModel]();
51
+ const lastPageOfModel = storeUse[namesOfSlice.lastPageOfModel]();
52
+ const pageOfModel = storeUse[namesOfSlice.pageOfModel]();
53
+ return /* @__PURE__ */ React.createElement("div", { className: (0, import_client.clsx)("mt-4 flex flex-wrap justify-center", className) }, /* @__PURE__ */ React.createElement(
54
+ import_Pagination.Pagination,
55
+ {
56
+ currentPage: pageOfModel,
57
+ total: modelInsight.count,
58
+ onPageSelect: (page) => {
59
+ void storeDo[namesOfSlice.setPageOfModel](page);
60
+ },
61
+ itemsPerPage: limitOfModel || modelInsight.count
62
+ }
63
+ ));
64
+ }