@carlonicora/nextjs-jsonapi 1.5.0 → 1.6.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 (282) hide show
  1. package/dist/{ApiResponseInterface-DDI7QQPR.d.ts → ApiResponseInterface-CfcC7pPC.d.mts} +11 -2
  2. package/dist/{ApiResponseInterface-BHN5D9r5.d.mts → ApiResponseInterface-DTBJaV5R.d.ts} +11 -2
  3. package/dist/AuthComponent-hxOPs9o8.d.mts +11 -0
  4. package/dist/AuthComponent-hxOPs9o8.d.ts +11 -0
  5. package/dist/{BlockNoteEditor-G6AK2NWA.js → BlockNoteEditor-7FM7B737.js} +19 -22
  6. package/dist/BlockNoteEditor-7FM7B737.js.map +1 -0
  7. package/dist/{BlockNoteEditor-AIEEQM6A.mjs → BlockNoteEditor-RVL76ZAS.mjs} +11 -14
  8. package/dist/BlockNoteEditor-RVL76ZAS.mjs.map +1 -0
  9. package/dist/JsonApiRequest-KOKGVPBI.js +25 -0
  10. package/dist/{JsonApiRequest-UJ7FGIVI.js.map → JsonApiRequest-KOKGVPBI.js.map} +1 -1
  11. package/dist/{JsonApiRequest-6UR7DIAR.mjs → JsonApiRequest-VCCRO732.mjs} +2 -2
  12. package/dist/chunk-2Z56AS2S.js +2723 -0
  13. package/dist/chunk-2Z56AS2S.js.map +1 -0
  14. package/dist/chunk-37NJZ2VD.mjs +637 -0
  15. package/dist/chunk-37NJZ2VD.mjs.map +1 -0
  16. package/dist/{chunk-2K3Q24UF.js → chunk-3ZPK4QOB.js} +24 -14
  17. package/dist/chunk-3ZPK4QOB.js.map +1 -0
  18. package/dist/chunk-AGWQ75PQ.js +142 -0
  19. package/dist/chunk-AGWQ75PQ.js.map +1 -0
  20. package/dist/{chunk-32HM6MDD.js → chunk-CSM6AIAP.js} +1 -1
  21. package/dist/{chunk-32HM6MDD.js.map → chunk-CSM6AIAP.js.map} +1 -1
  22. package/dist/{chunk-IKBA4AHN.mjs → chunk-F4Y3GZG4.mjs} +3 -3
  23. package/dist/{chunk-YF5XQZDR.mjs → chunk-F5UNXZ3J.mjs} +1 -1
  24. package/dist/chunk-F5UNXZ3J.mjs.map +1 -0
  25. package/dist/chunk-IGOWVLJH.mjs +142 -0
  26. package/dist/chunk-IGOWVLJH.mjs.map +1 -0
  27. package/dist/{chunk-HAG77QBV.mjs → chunk-K4W5QXL5.mjs} +1 -1
  28. package/dist/chunk-KFL5ZFM4.mjs +2723 -0
  29. package/dist/chunk-KFL5ZFM4.mjs.map +1 -0
  30. package/dist/{chunk-HR4H2FP7.mjs → chunk-KJ4ETLJB.mjs} +24 -14
  31. package/dist/chunk-KJ4ETLJB.mjs.map +1 -0
  32. package/dist/chunk-LOSPCUCF.js +637 -0
  33. package/dist/chunk-LOSPCUCF.js.map +1 -0
  34. package/dist/{chunk-VET55IZO.js → chunk-SVX7E6RR.js} +10293 -7536
  35. package/dist/chunk-SVX7E6RR.js.map +1 -0
  36. package/dist/{chunk-EFJEWLRL.js → chunk-YUO55Q5A.js} +1 -1
  37. package/dist/chunk-YUO55Q5A.js.map +1 -0
  38. package/dist/chunk-ZQTFZKLJ.mjs +12089 -0
  39. package/dist/chunk-ZQTFZKLJ.mjs.map +1 -0
  40. package/dist/{chunk-PMXG5WBC.js → chunk-ZUEEIQHW.js} +3 -3
  41. package/dist/{chunk-PMXG5WBC.js.map → chunk-ZUEEIQHW.js.map} +1 -1
  42. package/dist/client/index.d.mts +161 -11
  43. package/dist/client/index.d.ts +161 -11
  44. package/dist/client/index.js +74 -11
  45. package/dist/client/index.js.map +1 -1
  46. package/dist/client/index.mjs +73 -10
  47. package/dist/components/index.d.mts +763 -11
  48. package/dist/components/index.d.ts +763 -11
  49. package/dist/components/index.js +465 -11
  50. package/dist/components/index.js.map +1 -1
  51. package/dist/components/index.mjs +466 -12
  52. package/dist/config-B43zxEvn.d.mts +69 -0
  53. package/dist/config-D2OUrI_G.d.ts +69 -0
  54. package/dist/content.fields-Ck5lkQ5d.d.mts +47 -0
  55. package/dist/content.fields-Ck5lkQ5d.d.ts +47 -0
  56. package/dist/{content.interface-CR2aBeAW.d.ts → content.interface-Bs8a7uW6.d.mts} +2 -3
  57. package/dist/{content.interface-FpLfsaRm.d.mts → content.interface-UtsJ-mzs.d.ts} +2 -3
  58. package/dist/contexts/index.d.mts +13 -6
  59. package/dist/contexts/index.d.ts +13 -6
  60. package/dist/contexts/index.js +10 -11
  61. package/dist/contexts/index.js.map +1 -1
  62. package/dist/contexts/index.mjs +9 -10
  63. package/dist/core/index.d.mts +539 -8
  64. package/dist/core/index.d.ts +539 -8
  65. package/dist/core/index.js +104 -2
  66. package/dist/core/index.js.map +1 -1
  67. package/dist/core/index.mjs +105 -3
  68. package/dist/index.d.mts +131 -70
  69. package/dist/index.d.ts +131 -70
  70. package/dist/index.js +97 -7
  71. package/dist/index.js.map +1 -1
  72. package/dist/index.mjs +118 -28
  73. package/dist/notification.interface-BdcwkuQE.d.mts +228 -0
  74. package/dist/notification.interface-BdcwkuQE.d.ts +228 -0
  75. package/dist/request-GBLBPYFM.js +8 -0
  76. package/dist/request-GBLBPYFM.js.map +1 -0
  77. package/dist/request-XABCMU25.mjs +8 -0
  78. package/dist/{AbstractService-wLid8dB0.d.ts → s3.interface-D7ttGatc.d.ts} +36 -26
  79. package/dist/{AbstractService-BsY6W3Ej.d.mts → s3.interface-DlaMDRTn.d.mts} +36 -26
  80. package/dist/server/index.d.mts +299 -4
  81. package/dist/server/index.d.ts +299 -4
  82. package/dist/server/index.js +215 -5
  83. package/dist/server/index.js.map +1 -1
  84. package/dist/server/index.mjs +214 -4
  85. package/dist/server/index.mjs.map +1 -1
  86. package/dist/token-2UWQJY5T.js +8 -0
  87. package/dist/token-2UWQJY5T.js.map +1 -0
  88. package/dist/token-EOK3N45S.mjs +8 -0
  89. package/dist/{useSocket-BV6yMdWS.d.ts → useSocket-8vwK_R_c.d.ts} +1 -1
  90. package/dist/{useSocket-L-An7_Mr.d.mts → useSocket-BWJUXuOl.d.mts} +1 -1
  91. package/package.json +12 -52
  92. package/src/client/JsonApiClient.ts +248 -0
  93. package/src/client/config.ts +78 -0
  94. package/src/client/index.ts +6 -1
  95. package/src/components/containers/TabsContainer.tsx +1 -1
  96. package/src/components/editors/BlockNoteEditor.tsx +3 -1
  97. package/src/components/index.ts +4 -0
  98. package/src/components/navigations/Breadcrumb.tsx +1 -1
  99. package/src/components/navigations/Header.tsx +2 -2
  100. package/src/contexts/CommonContext.tsx +1 -1
  101. package/src/contexts/SocketContext.tsx +1 -1
  102. package/src/contexts/index.ts +3 -0
  103. package/src/core/abstracts/ClientAbstractService.ts +255 -0
  104. package/src/core/abstracts/ServerAbstractService.ts +180 -0
  105. package/src/core/abstracts/index.ts +2 -0
  106. package/src/core/index.ts +32 -3
  107. package/src/discord/config.ts +15 -0
  108. package/src/discord/index.ts +1 -0
  109. package/src/features/auth/components/details/LandingComponent.tsx +2 -2
  110. package/src/features/auth/components/forms/AcceptInvitation.tsx +1 -1
  111. package/src/features/auth/components/forms/ActivateAccount.tsx +1 -1
  112. package/src/features/auth/components/forms/Cookies.tsx +2 -1
  113. package/src/features/auth/components/forms/ForgotPassword.tsx +1 -1
  114. package/src/features/auth/components/forms/Login.tsx +1 -1
  115. package/src/features/auth/components/forms/Logout.tsx +1 -1
  116. package/src/features/auth/components/forms/RefreshUser.tsx +2 -1
  117. package/src/features/auth/components/forms/Register.tsx +1 -1
  118. package/src/features/auth/components/forms/ResetPassword.tsx +1 -1
  119. package/src/features/auth/data/auth.service.ts +1 -1
  120. package/src/features/auth/data/index.ts +0 -1
  121. package/src/features/auth/utils/AuthCookies.ts +1 -1
  122. package/src/features/company/components/forms/CompanyConfigurationEditor.tsx +4 -2
  123. package/src/features/company/components/forms/CompanyDeleter.tsx +2 -1
  124. package/src/features/company/components/forms/CompanyEditor.tsx +6 -3
  125. package/src/features/company/components/forms/CompanyLicense.tsx +4 -2
  126. package/src/features/company/components/lists/CompaniesList.tsx +2 -1
  127. package/src/features/company/data/index.ts +0 -1
  128. package/src/features/content/components/lists/ContentsListById.tsx +2 -1
  129. package/src/features/content/components/lists/RelevantContentsList.tsx +2 -1
  130. package/src/features/content/data/index.ts +0 -1
  131. package/src/features/feature/data/index.ts +0 -1
  132. package/src/features/notification/components/lists/NotificationsList.tsx +2 -1
  133. package/src/features/notification/contexts/NotificationContext.tsx +2 -1
  134. package/src/features/notification/data/index.ts +0 -1
  135. package/src/features/push/data/index.ts +0 -1
  136. package/src/features/role/components/forms/RemoveUserFromRole.tsx +4 -2
  137. package/src/features/role/components/forms/UserRoleAdd.tsx +2 -1
  138. package/src/features/role/components/lists/RolesList.tsx +2 -1
  139. package/src/features/role/components/lists/UserRolesList.tsx +2 -1
  140. package/src/features/role/data/index.ts +0 -1
  141. package/src/features/s3/data/index.ts +0 -1
  142. package/src/features/user/components/forms/RoleUserAdd.tsx +4 -2
  143. package/src/features/user/components/forms/UserDeleter.tsx +2 -1
  144. package/src/features/user/components/forms/UserEditor.tsx +6 -3
  145. package/src/features/user/components/forms/UserMultiSelect.tsx +2 -1
  146. package/src/features/user/components/forms/UserReactivator.tsx +2 -1
  147. package/src/features/user/components/forms/UserResentInvitationEmail.tsx +2 -1
  148. package/src/features/user/components/forms/UserSelector.tsx +2 -1
  149. package/src/features/user/components/lists/AdminUsersList.tsx +2 -1
  150. package/src/features/user/components/lists/CompanyUsersList.tsx +2 -1
  151. package/src/features/user/components/lists/RelevantUsersList.tsx +2 -1
  152. package/src/features/user/components/lists/RoleUsersList.tsx +2 -1
  153. package/src/features/user/components/lists/UsersListByContentIds.tsx +2 -1
  154. package/src/features/user/data/index.ts +0 -1
  155. package/src/features/user/hooks/useUserSearch.ts +2 -1
  156. package/src/hooks/useDataListRetriever.ts +4 -4
  157. package/src/hooks/usePageTracker.ts +1 -1
  158. package/src/hooks/usePushNotifications.ts +3 -2
  159. package/src/hooks/useSocket.ts +1 -1
  160. package/src/index.ts +7 -2
  161. package/src/roles/config.ts +0 -15
  162. package/src/roles/index.ts +1 -9
  163. package/src/server/JsonApiServer.ts +249 -0
  164. package/src/server/cache.ts +1 -1
  165. package/src/server/index.ts +13 -0
  166. package/src/server/request.ts +32 -18
  167. package/src/server/token.ts +1 -1
  168. package/dist/ApiData-DPKNfY-9.d.mts +0 -10
  169. package/dist/ApiData-DPKNfY-9.d.ts +0 -10
  170. package/dist/ApiDataInterface-DPP8s46n.d.mts +0 -21
  171. package/dist/ApiDataInterface-DPP8s46n.d.ts +0 -21
  172. package/dist/AuthComponent-B_Ps2Vb9.d.ts +0 -78
  173. package/dist/AuthComponent-CxnGgvoh.d.mts +0 -78
  174. package/dist/BlockNoteEditor-AIEEQM6A.mjs.map +0 -1
  175. package/dist/BlockNoteEditor-G6AK2NWA.js.map +0 -1
  176. package/dist/JsonApiRequest-UJ7FGIVI.js +0 -25
  177. package/dist/atoms/index.d.mts +0 -12
  178. package/dist/atoms/index.d.ts +0 -12
  179. package/dist/atoms/index.js +0 -9
  180. package/dist/atoms/index.js.map +0 -1
  181. package/dist/atoms/index.mjs +0 -9
  182. package/dist/chunk-2K3Q24UF.js.map +0 -1
  183. package/dist/chunk-3FBCC4G3.js +0 -8
  184. package/dist/chunk-3FBCC4G3.js.map +0 -1
  185. package/dist/chunk-3UELCPIN.js +0 -46
  186. package/dist/chunk-3UELCPIN.js.map +0 -1
  187. package/dist/chunk-5IET37O4.js +0 -4210
  188. package/dist/chunk-5IET37O4.js.map +0 -1
  189. package/dist/chunk-AYHKQWHH.js +0 -68
  190. package/dist/chunk-AYHKQWHH.js.map +0 -1
  191. package/dist/chunk-DEYKTLA3.js +0 -1131
  192. package/dist/chunk-DEYKTLA3.js.map +0 -1
  193. package/dist/chunk-EFJEWLRL.js.map +0 -1
  194. package/dist/chunk-FMBQZAIP.mjs +0 -490
  195. package/dist/chunk-FMBQZAIP.mjs.map +0 -1
  196. package/dist/chunk-HR4H2FP7.mjs.map +0 -1
  197. package/dist/chunk-J7YDGYSW.mjs +0 -9332
  198. package/dist/chunk-J7YDGYSW.mjs.map +0 -1
  199. package/dist/chunk-JGFWIT2E.mjs +0 -1131
  200. package/dist/chunk-JGFWIT2E.mjs.map +0 -1
  201. package/dist/chunk-P2F54I7Q.mjs +0 -4210
  202. package/dist/chunk-P2F54I7Q.mjs.map +0 -1
  203. package/dist/chunk-Q2N6SQYW.mjs +0 -8
  204. package/dist/chunk-Q2N6SQYW.mjs.map +0 -1
  205. package/dist/chunk-Q4FXESVT.js +0 -490
  206. package/dist/chunk-Q4FXESVT.js.map +0 -1
  207. package/dist/chunk-SM63SZCP.mjs +0 -68
  208. package/dist/chunk-SM63SZCP.mjs.map +0 -1
  209. package/dist/chunk-SZZYEG3P.mjs +0 -46
  210. package/dist/chunk-SZZYEG3P.mjs.map +0 -1
  211. package/dist/chunk-VET55IZO.js.map +0 -1
  212. package/dist/chunk-YF5XQZDR.mjs.map +0 -1
  213. package/dist/config-BmnK65TD.d.mts +0 -35
  214. package/dist/config-BmnK65TD.d.ts +0 -35
  215. package/dist/config-DQeAo9Kf.d.mts +0 -49
  216. package/dist/config-DQeAo9Kf.d.ts +0 -49
  217. package/dist/content.fields-cHPdM8GJ.d.mts +0 -27
  218. package/dist/content.fields-cHPdM8GJ.d.ts +0 -27
  219. package/dist/d3.link.interface-ClC4Irqp.d.mts +0 -21
  220. package/dist/d3.link.interface-ClC4Irqp.d.ts +0 -21
  221. package/dist/features/index.d.mts +0 -477
  222. package/dist/features/index.d.ts +0 -477
  223. package/dist/features/index.js +0 -108
  224. package/dist/features/index.js.map +0 -1
  225. package/dist/features/index.mjs +0 -108
  226. package/dist/hooks/index.d.mts +0 -69
  227. package/dist/hooks/index.d.ts +0 -69
  228. package/dist/hooks/index.js +0 -55
  229. package/dist/hooks/index.js.map +0 -1
  230. package/dist/hooks/index.mjs +0 -55
  231. package/dist/hooks/index.mjs.map +0 -1
  232. package/dist/interfaces/index.d.mts +0 -4
  233. package/dist/interfaces/index.d.ts +0 -4
  234. package/dist/interfaces/index.js +0 -2
  235. package/dist/interfaces/index.js.map +0 -1
  236. package/dist/interfaces/index.mjs +0 -2
  237. package/dist/interfaces/index.mjs.map +0 -1
  238. package/dist/notification.interface-B2BrLoDA.d.mts +0 -14
  239. package/dist/notification.interface-DlZLnAfg.d.ts +0 -14
  240. package/dist/permissions/index.d.mts +0 -41
  241. package/dist/permissions/index.d.ts +0 -41
  242. package/dist/permissions/index.js +0 -14
  243. package/dist/permissions/index.js.map +0 -1
  244. package/dist/permissions/index.mjs +0 -14
  245. package/dist/permissions/index.mjs.map +0 -1
  246. package/dist/request-7FE3LJLV.mjs +0 -9
  247. package/dist/request-7FE3LJLV.mjs.map +0 -1
  248. package/dist/request-QFS7NEIE.js +0 -9
  249. package/dist/request-QFS7NEIE.js.map +0 -1
  250. package/dist/roles/index.d.mts +0 -39
  251. package/dist/roles/index.d.ts +0 -39
  252. package/dist/roles/index.js +0 -18
  253. package/dist/roles/index.js.map +0 -1
  254. package/dist/roles/index.mjs +0 -18
  255. package/dist/roles/index.mjs.map +0 -1
  256. package/dist/shadcnui/index.d.mts +0 -698
  257. package/dist/shadcnui/index.d.ts +0 -698
  258. package/dist/shadcnui/index.js +0 -468
  259. package/dist/shadcnui/index.js.map +0 -1
  260. package/dist/shadcnui/index.mjs +0 -467
  261. package/dist/shadcnui/index.mjs.map +0 -1
  262. package/dist/token-IJSPOMW6.mjs +0 -9
  263. package/dist/token-IJSPOMW6.mjs.map +0 -1
  264. package/dist/token-UYE7CV6X.js +0 -9
  265. package/dist/token-UYE7CV6X.js.map +0 -1
  266. package/dist/types-B2QRyqyK.d.ts +0 -39
  267. package/dist/types-CgvNmxTd.d.mts +0 -39
  268. package/dist/types-t2PyXhDu.d.mts +0 -116
  269. package/dist/types-t2PyXhDu.d.ts +0 -116
  270. package/dist/user.interface-CooB1R79.d.mts +0 -85
  271. package/dist/user.interface-KnIT9pVY.d.ts +0 -85
  272. package/dist/utils/index.d.mts +0 -224
  273. package/dist/utils/index.d.ts +0 -224
  274. package/dist/utils/index.js +0 -46
  275. package/dist/utils/index.js.map +0 -1
  276. package/dist/utils/index.mjs +0 -46
  277. package/dist/utils/index.mjs.map +0 -1
  278. /package/dist/{JsonApiRequest-6UR7DIAR.mjs.map → JsonApiRequest-VCCRO732.mjs.map} +0 -0
  279. /package/dist/{chunk-IKBA4AHN.mjs.map → chunk-F4Y3GZG4.mjs.map} +0 -0
  280. /package/dist/{chunk-HAG77QBV.mjs.map → chunk-K4W5QXL5.mjs.map} +0 -0
  281. /package/dist/{atoms/index.mjs.map → request-XABCMU25.mjs.map} +0 -0
  282. /package/dist/{features/index.mjs.map → token-EOK3N45S.mjs.map} +0 -0
@@ -22,7 +22,7 @@ _chunk7QVYU63Ejs.__name.call(void 0, configureJsonApi, "configureJsonApi");
22
22
  async function getToken() {
23
23
  if (typeof window === "undefined") {
24
24
  if (!_getServerToken) {
25
- const serverModule = await Promise.resolve().then(() => _interopRequireWildcard(require("./token-UYE7CV6X.js")));
25
+ const serverModule = await Promise.resolve().then(() => _interopRequireWildcard(require("./token-2UWQJY5T.js")));
26
26
  _getServerToken = serverModule.getServerToken;
27
27
  }
28
28
  return _getServerToken();
@@ -53,7 +53,7 @@ async function makeRequest(params) {
53
53
  });
54
54
  } else {
55
55
  if (!_serverRequest) {
56
- const serverModule = await Promise.resolve().then(() => _interopRequireWildcard(require("./request-QFS7NEIE.js")));
56
+ const serverModule = await Promise.resolve().then(() => _interopRequireWildcard(require("./request-GBLBPYFM.js")));
57
57
  _serverRequest = serverModule.serverRequest;
58
58
  }
59
59
  return _serverRequest({
@@ -247,4 +247,4 @@ _chunk7QVYU63Ejs.__name.call(void 0, JsonApiDelete, "JsonApiDelete");
247
247
 
248
248
 
249
249
  exports.configureJsonApi = configureJsonApi; exports.getApiUrl = getApiUrl; exports.getAppUrl = getAppUrl; exports.getTrackablePages = getTrackablePages; exports.JsonApiGet = JsonApiGet; exports.JsonApiPost = JsonApiPost; exports.JsonApiPut = JsonApiPut; exports.JsonApiPatch = JsonApiPatch; exports.JsonApiDelete = JsonApiDelete;
250
- //# sourceMappingURL=chunk-PMXG5WBC.js.map
250
+ //# sourceMappingURL=chunk-ZUEEIQHW.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/chunk-PMXG5WBC.js","../src/unified/JsonApiRequest.ts"],"names":[],"mappings":"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","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/chunk-PMXG5WBC.js","sourcesContent":[null,"import { JsonApiDataFactory } from \"../core/factories/JsonApiDataFactory\";\nimport { ApiData } from \"../core/interfaces/ApiData\";\nimport { ApiRequestDataTypeInterface } from \"../core/interfaces/ApiRequestDataTypeInterface\";\nimport { ApiResponseInterface } from \"../core/interfaces/ApiResponseInterface\";\nimport { translateResponse } from \"../core/utils/translateResponse\";\nimport { ModuleWithPermissions } from \"../permissions/types\";\n\n// Type definitions for dynamically imported functions (avoiding typeof import to prevent bundling)\ntype DirectFetchFn = (params: {\n method: string;\n url: string;\n token?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n companyId?: string;\n language: string;\n additionalHeaders?: Record<string, string>;\n}) => Promise<ApiData>;\n\ntype ServerRequestFn = (params: {\n method: string;\n url: string;\n token?: string;\n cache?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n companyId?: string;\n language: string;\n additionalHeaders?: Record<string, string>;\n}) => Promise<ApiData>;\n\ntype GetTokenFn = () => Promise<string | undefined>;\n\n// These will be dynamically imported based on environment\nlet _directFetch: DirectFetchFn;\nlet _serverRequest: ServerRequestFn;\nlet _getClientToken: GetTokenFn;\nlet _getServerToken: GetTokenFn;\n\n// Config storage for non-React contexts\nlet _staticConfig: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n} | null = null;\n\n/**\n * Configure the JSON:API client for non-React contexts (e.g., server components).\n * For React contexts, use JsonApiProvider instead.\n */\nexport function configureJsonApi(config: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n}): void {\n _staticConfig = config;\n // Call bootstrapper immediately to register all modules\n if (config.bootstrapper) {\n config.bootstrapper();\n }\n}\n\nasync function getToken(): Promise<string | undefined> {\n if (typeof window === \"undefined\") {\n // Server-side\n if (!_getServerToken) {\n const serverModule = await import(\"../server/token\");\n _getServerToken = serverModule.getServerToken;\n }\n return _getServerToken();\n } else {\n // Client-side\n if (!_getClientToken) {\n const clientModule = await import(\"../client/token\");\n _getClientToken = clientModule.getClientToken;\n }\n return _getClientToken();\n }\n}\n\nasync function makeRequest(params: {\n method: string;\n url: string;\n token?: string;\n cache?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n companyId?: string;\n language: string;\n additionalHeaders?: Record<string, string>;\n}): Promise<ApiData> {\n if (typeof window !== \"undefined\") {\n // Client-side: use direct fetch\n if (!_directFetch) {\n const clientModule = await import(\"../client/request\");\n _directFetch = clientModule.directFetch;\n }\n return _directFetch({\n method: params.method,\n url: params.url,\n token: params.token,\n body: params.body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: params.additionalHeaders,\n });\n } else {\n // Server-side: use server request with caching\n if (!_serverRequest) {\n const serverModule = await import(\"../server/request\");\n _serverRequest = serverModule.serverRequest;\n }\n return _serverRequest({\n method: params.method,\n url: params.url,\n token: params.token,\n cache: params.cache,\n body: params.body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: params.additionalHeaders,\n });\n }\n}\n\nexport function getApiUrl(): string {\n if (_staticConfig?.apiUrl) {\n return _staticConfig.apiUrl;\n }\n // Fallback to environment variable\n const envUrl = process.env.NEXT_PUBLIC_API_URL;\n if (!envUrl) {\n throw new Error(\"API URL not configured. Use configureJsonApi() or set NEXT_PUBLIC_API_URL environment variable.\");\n }\n return envUrl;\n}\n\nexport function getAppUrl(): string {\n if (_staticConfig?.appUrl) {\n return _staticConfig.appUrl;\n }\n // Fallback to environment variable\n const envUrl = process.env.NEXT_PUBLIC_ADDRESS;\n if (!envUrl) {\n throw new Error(\n \"App URL not configured. Use configureJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable.\",\n );\n }\n return envUrl.trim().replace(/\\/+$/, \"\");\n}\n\nexport function getTrackablePages(): ModuleWithPermissions[] {\n return _staticConfig?.trackablePages ?? [];\n}\n\nfunction runBootstrapper(): void {\n if (_staticConfig?.bootstrapper) {\n _staticConfig.bootstrapper();\n }\n}\n\nfunction buildUrl(endpoint: string): string {\n const apiUrl = getApiUrl();\n return endpoint.startsWith(\"http\") ? endpoint : `${apiUrl}${endpoint}`;\n}\n\nexport async function JsonApiGet(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n}): Promise<ApiResponseInterface> {\n runBootstrapper();\n const token = await getToken();\n\n const apiResponse = await makeRequest({\n method: \"GET\",\n url: buildUrl(params.endpoint),\n token,\n cache: params.classKey.cache,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _staticConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n paginationHandler: async (endpoint: string) =>\n JsonApiGet({\n classKey: params.classKey,\n endpoint,\n companyId: params.companyId,\n language: params.language,\n }),\n });\n}\n\nexport async function JsonApiPost(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n overridesJsonApiCreation?: boolean;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runBootstrapper();\n const token = await getToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await makeRequest({\n method: \"POST\",\n url: buildUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _staticConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function JsonApiPut(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runBootstrapper();\n const token = await getToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await makeRequest({\n method: \"PUT\",\n url: buildUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _staticConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function JsonApiPatch(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n overridesJsonApiCreation?: boolean;\n responseType?: ApiRequestDataTypeInterface;\n language: string;\n}): Promise<ApiResponseInterface> {\n runBootstrapper();\n const token = await getToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await makeRequest({\n method: \"PATCH\",\n url: buildUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _staticConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function JsonApiDelete(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runBootstrapper();\n const token = await getToken();\n\n const apiResponse = await makeRequest({\n method: \"DELETE\",\n url: buildUrl(params.endpoint),\n token,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _staticConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/chunk-ZUEEIQHW.js","../src/unified/JsonApiRequest.ts"],"names":[],"mappings":"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","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/chunk-ZUEEIQHW.js","sourcesContent":[null,"import { JsonApiDataFactory } from \"../core/factories/JsonApiDataFactory\";\nimport { ApiData } from \"../core/interfaces/ApiData\";\nimport { ApiRequestDataTypeInterface } from \"../core/interfaces/ApiRequestDataTypeInterface\";\nimport { ApiResponseInterface } from \"../core/interfaces/ApiResponseInterface\";\nimport { translateResponse } from \"../core/utils/translateResponse\";\nimport { ModuleWithPermissions } from \"../permissions/types\";\n\n// Type definitions for dynamically imported functions (avoiding typeof import to prevent bundling)\ntype DirectFetchFn = (params: {\n method: string;\n url: string;\n token?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n companyId?: string;\n language: string;\n additionalHeaders?: Record<string, string>;\n}) => Promise<ApiData>;\n\ntype ServerRequestFn = (params: {\n method: string;\n url: string;\n token?: string;\n cache?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n companyId?: string;\n language: string;\n additionalHeaders?: Record<string, string>;\n}) => Promise<ApiData>;\n\ntype GetTokenFn = () => Promise<string | undefined>;\n\n// These will be dynamically imported based on environment\nlet _directFetch: DirectFetchFn;\nlet _serverRequest: ServerRequestFn;\nlet _getClientToken: GetTokenFn;\nlet _getServerToken: GetTokenFn;\n\n// Config storage for non-React contexts\nlet _staticConfig: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n} | null = null;\n\n/**\n * Configure the JSON:API client for non-React contexts (e.g., server components).\n * For React contexts, use JsonApiProvider instead.\n */\nexport function configureJsonApi(config: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n}): void {\n _staticConfig = config;\n // Call bootstrapper immediately to register all modules\n if (config.bootstrapper) {\n config.bootstrapper();\n }\n}\n\nasync function getToken(): Promise<string | undefined> {\n if (typeof window === \"undefined\") {\n // Server-side\n if (!_getServerToken) {\n const serverModule = await import(\"../server/token\");\n _getServerToken = serverModule.getServerToken;\n }\n return _getServerToken();\n } else {\n // Client-side\n if (!_getClientToken) {\n const clientModule = await import(\"../client/token\");\n _getClientToken = clientModule.getClientToken;\n }\n return _getClientToken();\n }\n}\n\nasync function makeRequest(params: {\n method: string;\n url: string;\n token?: string;\n cache?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n companyId?: string;\n language: string;\n additionalHeaders?: Record<string, string>;\n}): Promise<ApiData> {\n if (typeof window !== \"undefined\") {\n // Client-side: use direct fetch\n if (!_directFetch) {\n const clientModule = await import(\"../client/request\");\n _directFetch = clientModule.directFetch;\n }\n return _directFetch({\n method: params.method,\n url: params.url,\n token: params.token,\n body: params.body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: params.additionalHeaders,\n });\n } else {\n // Server-side: use server request with caching\n if (!_serverRequest) {\n const serverModule = await import(\"../server/request\");\n _serverRequest = serverModule.serverRequest;\n }\n return _serverRequest({\n method: params.method,\n url: params.url,\n token: params.token,\n cache: params.cache,\n body: params.body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: params.additionalHeaders,\n });\n }\n}\n\nexport function getApiUrl(): string {\n if (_staticConfig?.apiUrl) {\n return _staticConfig.apiUrl;\n }\n // Fallback to environment variable\n const envUrl = process.env.NEXT_PUBLIC_API_URL;\n if (!envUrl) {\n throw new Error(\"API URL not configured. Use configureJsonApi() or set NEXT_PUBLIC_API_URL environment variable.\");\n }\n return envUrl;\n}\n\nexport function getAppUrl(): string {\n if (_staticConfig?.appUrl) {\n return _staticConfig.appUrl;\n }\n // Fallback to environment variable\n const envUrl = process.env.NEXT_PUBLIC_ADDRESS;\n if (!envUrl) {\n throw new Error(\n \"App URL not configured. Use configureJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable.\",\n );\n }\n return envUrl.trim().replace(/\\/+$/, \"\");\n}\n\nexport function getTrackablePages(): ModuleWithPermissions[] {\n return _staticConfig?.trackablePages ?? [];\n}\n\nfunction runBootstrapper(): void {\n if (_staticConfig?.bootstrapper) {\n _staticConfig.bootstrapper();\n }\n}\n\nfunction buildUrl(endpoint: string): string {\n const apiUrl = getApiUrl();\n return endpoint.startsWith(\"http\") ? endpoint : `${apiUrl}${endpoint}`;\n}\n\nexport async function JsonApiGet(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n}): Promise<ApiResponseInterface> {\n runBootstrapper();\n const token = await getToken();\n\n const apiResponse = await makeRequest({\n method: \"GET\",\n url: buildUrl(params.endpoint),\n token,\n cache: params.classKey.cache,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _staticConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n paginationHandler: async (endpoint: string) =>\n JsonApiGet({\n classKey: params.classKey,\n endpoint,\n companyId: params.companyId,\n language: params.language,\n }),\n });\n}\n\nexport async function JsonApiPost(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n overridesJsonApiCreation?: boolean;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runBootstrapper();\n const token = await getToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await makeRequest({\n method: \"POST\",\n url: buildUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _staticConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function JsonApiPut(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runBootstrapper();\n const token = await getToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await makeRequest({\n method: \"PUT\",\n url: buildUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _staticConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function JsonApiPatch(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n body?: any;\n files?: { [key: string]: File | Blob } | File | Blob;\n overridesJsonApiCreation?: boolean;\n responseType?: ApiRequestDataTypeInterface;\n language: string;\n}): Promise<ApiResponseInterface> {\n runBootstrapper();\n const token = await getToken();\n\n let body = params.body;\n if (!body) {\n body = {};\n } else if (params.overridesJsonApiCreation !== true) {\n body = JsonApiDataFactory.create(params.classKey, body);\n }\n\n const apiResponse = await makeRequest({\n method: \"PATCH\",\n url: buildUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _staticConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n\nexport async function JsonApiDelete(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runBootstrapper();\n const token = await getToken();\n\n const apiResponse = await makeRequest({\n method: \"DELETE\",\n url: buildUrl(params.endpoint),\n token,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _staticConfig?.additionalHeaders,\n });\n\n return translateResponse({\n classKey: params.responseType ?? params.classKey,\n apiResponse,\n companyId: params.companyId,\n language: params.language,\n });\n}\n"]}
@@ -1,17 +1,17 @@
1
1
  import * as React from 'react';
2
2
  import React__default from 'react';
3
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
4
- import { A as ApiDataInterface, J as JsonApiHydratedDataInterface } from '../ApiDataInterface-DPP8s46n.mjs';
5
- import { A as ApiRequestDataTypeInterface } from '../types-t2PyXhDu.mjs';
6
- import { A as ApiResponseInterface } from '../ApiResponseInterface-BHN5D9r5.mjs';
7
- import { A as ApiData } from '../ApiData-DPKNfY-9.mjs';
8
- import { U as UseTableStructureHook } from '../types-CgvNmxTd.mjs';
9
- import { C as ContentInterface } from '../content.interface-FpLfsaRm.mjs';
10
- import { C as ContentFields, R as RoleFields, U as UserFields } from '../content.fields-cHPdM8GJ.mjs';
11
- import { R as RoleInterface, U as UserInterface } from '../user.interface-CooB1R79.mjs';
4
+ import { A as ApiDataInterface, a as ApiRequestDataTypeInterface, J as JsonApiHydratedDataInterface, M as ModuleWithPermissions, l as PageUrl, i as RoleInterface, U as UserInterface } from '../notification.interface-BdcwkuQE.mjs';
5
+ import { a as ApiResponseInterface, A as ApiData } from '../ApiResponseInterface-CfcC7pPC.mjs';
6
+ export { I as I18nConfig, k as I18nRouter, L as LinkComponent, U as UseDateFnsLocaleHook, l as UseLocaleHook, m as UseRouterHook, n as UseTranslationsHook, e as configureClientConfig, d as configureI18n, c as configureJsonApi, g as getApiUrl, a as getAppUrl, f as getI18nLink, b as getTrackablePages, u as useI18nDateFnsLocale, h as useI18nLocale, i as useI18nRouter, j as useI18nTranslations } from '../config-B43zxEvn.mjs';
7
+ import { ColumnDef } from '@tanstack/react-table';
8
+ import { D as DataListRetriever } from '../useDataListRetriever-futhx3OP.mjs';
9
+ export { u as useDataListRetriever } from '../useDataListRetriever-futhx3OP.mjs';
10
+ import { a as D3Node, D as D3Link, C as ContentFields, R as RoleFields, U as UserFields } from '../content.fields-Ck5lkQ5d.mjs';
11
+ export { u as useSocket } from '../useSocket-BWJUXuOl.mjs';
12
+ import { a as ContentInterface } from '../content.interface-Bs8a7uW6.mjs';
12
13
  import 'lucide-react';
13
- import '@tanstack/react-table';
14
- import '../useDataListRetriever-futhx3OP.mjs';
14
+ import 'd3';
15
15
 
16
16
  type CacheProfile = "seconds" | "minutes" | "hours" | "days" | "weeks" | "max" | "default";
17
17
  interface JsonApiConfig {
@@ -256,6 +256,156 @@ declare function directFetch(params: DirectFetchParams): Promise<ApiData>;
256
256
  */
257
257
  declare function getClientToken(): Promise<string | undefined>;
258
258
 
259
+ /**
260
+ * Configure the JSON:API client for browser contexts.
261
+ * Call this in your client-side initialization or use JsonApiProvider.
262
+ */
263
+ declare function configureClientJsonApi(config: {
264
+ apiUrl: string;
265
+ appUrl?: string;
266
+ trackablePages?: ModuleWithPermissions[];
267
+ bootstrapper?: () => void;
268
+ additionalHeaders?: Record<string, string>;
269
+ }): void;
270
+ declare function getClientApiUrl(): string;
271
+ declare function getClientAppUrl(): string;
272
+ declare function getClientTrackablePages(): ModuleWithPermissions[];
273
+ declare function ClientJsonApiGet(params: {
274
+ classKey: ApiRequestDataTypeInterface;
275
+ endpoint: string;
276
+ companyId?: string;
277
+ language: string;
278
+ }): Promise<ApiResponseInterface>;
279
+ declare function ClientJsonApiPost(params: {
280
+ classKey: ApiRequestDataTypeInterface;
281
+ endpoint: string;
282
+ companyId?: string;
283
+ body?: any;
284
+ overridesJsonApiCreation?: boolean;
285
+ files?: {
286
+ [key: string]: File | Blob;
287
+ } | File | Blob;
288
+ language: string;
289
+ responseType?: ApiRequestDataTypeInterface;
290
+ }): Promise<ApiResponseInterface>;
291
+ declare function ClientJsonApiPut(params: {
292
+ classKey: ApiRequestDataTypeInterface;
293
+ endpoint: string;
294
+ companyId?: string;
295
+ body?: any;
296
+ files?: {
297
+ [key: string]: File | Blob;
298
+ } | File | Blob;
299
+ language: string;
300
+ responseType?: ApiRequestDataTypeInterface;
301
+ }): Promise<ApiResponseInterface>;
302
+ declare function ClientJsonApiPatch(params: {
303
+ classKey: ApiRequestDataTypeInterface;
304
+ endpoint: string;
305
+ companyId?: string;
306
+ body?: any;
307
+ files?: {
308
+ [key: string]: File | Blob;
309
+ } | File | Blob;
310
+ overridesJsonApiCreation?: boolean;
311
+ responseType?: ApiRequestDataTypeInterface;
312
+ language: string;
313
+ }): Promise<ApiResponseInterface>;
314
+ declare function ClientJsonApiDelete(params: {
315
+ classKey: ApiRequestDataTypeInterface;
316
+ endpoint: string;
317
+ companyId?: string;
318
+ language: string;
319
+ responseType?: ApiRequestDataTypeInterface;
320
+ }): Promise<ApiResponseInterface>;
321
+
322
+ type TableContent<T> = {
323
+ jsonApiData: T;
324
+ [key: string]: any;
325
+ };
326
+ interface TableStructureGeneratorInterface<T, U> {
327
+ generateTableStructure: (params: {
328
+ t: (key: string) => string;
329
+ generateUrl: (params: {
330
+ page: string | PageUrl | string;
331
+ id?: string;
332
+ }) => string;
333
+ data: T[];
334
+ fields: Array<U>;
335
+ checkedIds?: string[];
336
+ toggleId?: (id: string) => void;
337
+ }) => {
338
+ data: TableContent<T>[];
339
+ columns: ColumnDef<TableContent<T>>[];
340
+ };
341
+ }
342
+ type UseTableStructureHookParams<T, U> = {
343
+ data: T[];
344
+ fields: Array<U>;
345
+ checkedIds?: string[];
346
+ toggleId?: (id: string) => void;
347
+ dataRetriever?: DataListRetriever<T>;
348
+ context?: Record<string, any>;
349
+ };
350
+ type UseTableStructureHookReturn<T> = {
351
+ data: TableContent<T>[];
352
+ columns: ColumnDef<TableContent<T>>[];
353
+ };
354
+ type UseTableStructureHook<T, U> = (params: UseTableStructureHookParams<T, U>) => UseTableStructureHookReturn<T>;
355
+
356
+ declare class TableGeneratorRegistry {
357
+ private static instance;
358
+ private registry;
359
+ private constructor();
360
+ static getInstance(): TableGeneratorRegistry;
361
+ register<T, U>(type: string, hook: UseTableStructureHook<T, U>): void;
362
+ get<T, U>(type: string, params: UseTableStructureHookParams<T, U>): UseTableStructureHookReturn<T>;
363
+ isRegistered(type: string): boolean;
364
+ getRegisteredTypes(): string[];
365
+ unregister(type: string): boolean;
366
+ clear(): void;
367
+ }
368
+ declare const tableGeneratorRegistry: TableGeneratorRegistry;
369
+
370
+ declare function useUrlRewriter(): (params: {
371
+ page: ModuleWithPermissions | string;
372
+ id?: string;
373
+ childPage?: string;
374
+ }) => void;
375
+
376
+ declare function useDebounce<T extends (...args: any[]) => any>(callback: T, delay: number): T & {
377
+ cancel: () => void;
378
+ };
379
+
380
+ declare function usePageUrlGenerator(): (params: {
381
+ page?: PageUrl | string;
382
+ id?: string;
383
+ childPage?: PageUrl | string;
384
+ childId?: string;
385
+ additionalParameters?: {
386
+ [key: string]: string | string[] | undefined;
387
+ };
388
+ language?: string;
389
+ }) => string;
390
+
391
+ declare function registerTableGenerator<T, U>(type: string | ModuleWithPermissions, hook: UseTableStructureHook<T, U>): void;
392
+ declare function useTableGenerator<T, U>(type: ModuleWithPermissions, params: UseTableStructureHookParams<T, U>): UseTableStructureHookReturn<T>;
393
+
394
+ /**
395
+ * Custom hook for D3 graph visualization with larger circles and more interactive features
396
+ */
397
+ declare function useCustomD3Graph(nodes: D3Node[], links: D3Link[], onNodeClick: (nodeId: string) => void, visibleNodeIds?: Set<string>, loadingNodeIds?: Set<string>, containerKey?: string | number): {
398
+ svgRef: React.RefObject<SVGSVGElement | null>;
399
+ zoomIn: () => void;
400
+ zoomOut: () => void;
401
+ zoomToNode: (nodeId: string, childIds?: string[]) => void;
402
+ zoomToFitAll: () => void;
403
+ };
404
+
405
+ declare function useNotificationSync(): void;
406
+
407
+ declare function usePageTracker(): void;
408
+
259
409
  declare const useContentTableStructure: <U extends string = ContentFields>(params: Parameters<UseTableStructureHook<ContentInterface, U>>[0]) => ReturnType<UseTableStructureHook<ContentInterface, U>>;
260
410
 
261
411
  declare const useRoleTableStructure: UseTableStructureHook<RoleInterface, RoleFields>;
@@ -272,4 +422,4 @@ declare const useUserSearch: () => {
272
422
 
273
423
  declare const useUserTableStructure: UseTableStructureHook<UserInterface, UserFields>;
274
424
 
275
- export { type CacheProfile, type DirectFetchParams, type JsonApiConfig, JsonApiContext, JsonApiProvider, type JsonApiProviderProps, type MutationMethod, type MutationParams, type UseJsonApiGetOptions, type UseJsonApiGetResult, type UseJsonApiMutationResult, directFetch, getClientToken, useContentTableStructure, useJsonApiConfig, useJsonApiConfigOptional, useJsonApiGet, useJsonApiMutation, useRehydration, useRehydrationList, useRoleTableStructure, useUserSearch, useUserTableStructure };
425
+ export { type CacheProfile, ClientJsonApiDelete, ClientJsonApiGet, ClientJsonApiPatch, ClientJsonApiPost, ClientJsonApiPut, DataListRetriever, type DirectFetchParams, type JsonApiConfig, JsonApiContext, JsonApiProvider, type JsonApiProviderProps, type MutationMethod, type MutationParams, type TableContent, TableGeneratorRegistry, type TableStructureGeneratorInterface, type UseJsonApiGetOptions, type UseJsonApiGetResult, type UseJsonApiMutationResult, type UseTableStructureHook, type UseTableStructureHookParams, type UseTableStructureHookReturn, configureClientJsonApi, directFetch, getClientApiUrl, getClientAppUrl, getClientToken, getClientTrackablePages, registerTableGenerator, tableGeneratorRegistry, useContentTableStructure, useCustomD3Graph, useDebounce, useJsonApiConfig, useJsonApiConfigOptional, useJsonApiGet, useJsonApiMutation, useNotificationSync, usePageTracker, usePageUrlGenerator, useRehydration, useRehydrationList, useRoleTableStructure, useTableGenerator, useUrlRewriter, useUserSearch, useUserTableStructure };
@@ -1,17 +1,17 @@
1
1
  import * as React from 'react';
2
2
  import React__default from 'react';
3
3
  import * as react_jsx_runtime from 'react/jsx-runtime';
4
- import { A as ApiDataInterface, J as JsonApiHydratedDataInterface } from '../ApiDataInterface-DPP8s46n.js';
5
- import { A as ApiRequestDataTypeInterface } from '../types-t2PyXhDu.js';
6
- import { A as ApiResponseInterface } from '../ApiResponseInterface-DDI7QQPR.js';
7
- import { A as ApiData } from '../ApiData-DPKNfY-9.js';
8
- import { U as UseTableStructureHook } from '../types-B2QRyqyK.js';
9
- import { C as ContentInterface } from '../content.interface-CR2aBeAW.js';
10
- import { C as ContentFields, R as RoleFields, U as UserFields } from '../content.fields-cHPdM8GJ.js';
11
- import { R as RoleInterface, U as UserInterface } from '../user.interface-KnIT9pVY.js';
4
+ import { A as ApiDataInterface, a as ApiRequestDataTypeInterface, J as JsonApiHydratedDataInterface, M as ModuleWithPermissions, l as PageUrl, i as RoleInterface, U as UserInterface } from '../notification.interface-BdcwkuQE.js';
5
+ import { a as ApiResponseInterface, A as ApiData } from '../ApiResponseInterface-DTBJaV5R.js';
6
+ export { I as I18nConfig, k as I18nRouter, L as LinkComponent, U as UseDateFnsLocaleHook, l as UseLocaleHook, m as UseRouterHook, n as UseTranslationsHook, e as configureClientConfig, d as configureI18n, c as configureJsonApi, g as getApiUrl, a as getAppUrl, f as getI18nLink, b as getTrackablePages, u as useI18nDateFnsLocale, h as useI18nLocale, i as useI18nRouter, j as useI18nTranslations } from '../config-D2OUrI_G.js';
7
+ import { ColumnDef } from '@tanstack/react-table';
8
+ import { D as DataListRetriever } from '../useDataListRetriever-futhx3OP.js';
9
+ export { u as useDataListRetriever } from '../useDataListRetriever-futhx3OP.js';
10
+ import { a as D3Node, D as D3Link, C as ContentFields, R as RoleFields, U as UserFields } from '../content.fields-Ck5lkQ5d.js';
11
+ export { u as useSocket } from '../useSocket-8vwK_R_c.js';
12
+ import { a as ContentInterface } from '../content.interface-UtsJ-mzs.js';
12
13
  import 'lucide-react';
13
- import '@tanstack/react-table';
14
- import '../useDataListRetriever-futhx3OP.js';
14
+ import 'd3';
15
15
 
16
16
  type CacheProfile = "seconds" | "minutes" | "hours" | "days" | "weeks" | "max" | "default";
17
17
  interface JsonApiConfig {
@@ -256,6 +256,156 @@ declare function directFetch(params: DirectFetchParams): Promise<ApiData>;
256
256
  */
257
257
  declare function getClientToken(): Promise<string | undefined>;
258
258
 
259
+ /**
260
+ * Configure the JSON:API client for browser contexts.
261
+ * Call this in your client-side initialization or use JsonApiProvider.
262
+ */
263
+ declare function configureClientJsonApi(config: {
264
+ apiUrl: string;
265
+ appUrl?: string;
266
+ trackablePages?: ModuleWithPermissions[];
267
+ bootstrapper?: () => void;
268
+ additionalHeaders?: Record<string, string>;
269
+ }): void;
270
+ declare function getClientApiUrl(): string;
271
+ declare function getClientAppUrl(): string;
272
+ declare function getClientTrackablePages(): ModuleWithPermissions[];
273
+ declare function ClientJsonApiGet(params: {
274
+ classKey: ApiRequestDataTypeInterface;
275
+ endpoint: string;
276
+ companyId?: string;
277
+ language: string;
278
+ }): Promise<ApiResponseInterface>;
279
+ declare function ClientJsonApiPost(params: {
280
+ classKey: ApiRequestDataTypeInterface;
281
+ endpoint: string;
282
+ companyId?: string;
283
+ body?: any;
284
+ overridesJsonApiCreation?: boolean;
285
+ files?: {
286
+ [key: string]: File | Blob;
287
+ } | File | Blob;
288
+ language: string;
289
+ responseType?: ApiRequestDataTypeInterface;
290
+ }): Promise<ApiResponseInterface>;
291
+ declare function ClientJsonApiPut(params: {
292
+ classKey: ApiRequestDataTypeInterface;
293
+ endpoint: string;
294
+ companyId?: string;
295
+ body?: any;
296
+ files?: {
297
+ [key: string]: File | Blob;
298
+ } | File | Blob;
299
+ language: string;
300
+ responseType?: ApiRequestDataTypeInterface;
301
+ }): Promise<ApiResponseInterface>;
302
+ declare function ClientJsonApiPatch(params: {
303
+ classKey: ApiRequestDataTypeInterface;
304
+ endpoint: string;
305
+ companyId?: string;
306
+ body?: any;
307
+ files?: {
308
+ [key: string]: File | Blob;
309
+ } | File | Blob;
310
+ overridesJsonApiCreation?: boolean;
311
+ responseType?: ApiRequestDataTypeInterface;
312
+ language: string;
313
+ }): Promise<ApiResponseInterface>;
314
+ declare function ClientJsonApiDelete(params: {
315
+ classKey: ApiRequestDataTypeInterface;
316
+ endpoint: string;
317
+ companyId?: string;
318
+ language: string;
319
+ responseType?: ApiRequestDataTypeInterface;
320
+ }): Promise<ApiResponseInterface>;
321
+
322
+ type TableContent<T> = {
323
+ jsonApiData: T;
324
+ [key: string]: any;
325
+ };
326
+ interface TableStructureGeneratorInterface<T, U> {
327
+ generateTableStructure: (params: {
328
+ t: (key: string) => string;
329
+ generateUrl: (params: {
330
+ page: string | PageUrl | string;
331
+ id?: string;
332
+ }) => string;
333
+ data: T[];
334
+ fields: Array<U>;
335
+ checkedIds?: string[];
336
+ toggleId?: (id: string) => void;
337
+ }) => {
338
+ data: TableContent<T>[];
339
+ columns: ColumnDef<TableContent<T>>[];
340
+ };
341
+ }
342
+ type UseTableStructureHookParams<T, U> = {
343
+ data: T[];
344
+ fields: Array<U>;
345
+ checkedIds?: string[];
346
+ toggleId?: (id: string) => void;
347
+ dataRetriever?: DataListRetriever<T>;
348
+ context?: Record<string, any>;
349
+ };
350
+ type UseTableStructureHookReturn<T> = {
351
+ data: TableContent<T>[];
352
+ columns: ColumnDef<TableContent<T>>[];
353
+ };
354
+ type UseTableStructureHook<T, U> = (params: UseTableStructureHookParams<T, U>) => UseTableStructureHookReturn<T>;
355
+
356
+ declare class TableGeneratorRegistry {
357
+ private static instance;
358
+ private registry;
359
+ private constructor();
360
+ static getInstance(): TableGeneratorRegistry;
361
+ register<T, U>(type: string, hook: UseTableStructureHook<T, U>): void;
362
+ get<T, U>(type: string, params: UseTableStructureHookParams<T, U>): UseTableStructureHookReturn<T>;
363
+ isRegistered(type: string): boolean;
364
+ getRegisteredTypes(): string[];
365
+ unregister(type: string): boolean;
366
+ clear(): void;
367
+ }
368
+ declare const tableGeneratorRegistry: TableGeneratorRegistry;
369
+
370
+ declare function useUrlRewriter(): (params: {
371
+ page: ModuleWithPermissions | string;
372
+ id?: string;
373
+ childPage?: string;
374
+ }) => void;
375
+
376
+ declare function useDebounce<T extends (...args: any[]) => any>(callback: T, delay: number): T & {
377
+ cancel: () => void;
378
+ };
379
+
380
+ declare function usePageUrlGenerator(): (params: {
381
+ page?: PageUrl | string;
382
+ id?: string;
383
+ childPage?: PageUrl | string;
384
+ childId?: string;
385
+ additionalParameters?: {
386
+ [key: string]: string | string[] | undefined;
387
+ };
388
+ language?: string;
389
+ }) => string;
390
+
391
+ declare function registerTableGenerator<T, U>(type: string | ModuleWithPermissions, hook: UseTableStructureHook<T, U>): void;
392
+ declare function useTableGenerator<T, U>(type: ModuleWithPermissions, params: UseTableStructureHookParams<T, U>): UseTableStructureHookReturn<T>;
393
+
394
+ /**
395
+ * Custom hook for D3 graph visualization with larger circles and more interactive features
396
+ */
397
+ declare function useCustomD3Graph(nodes: D3Node[], links: D3Link[], onNodeClick: (nodeId: string) => void, visibleNodeIds?: Set<string>, loadingNodeIds?: Set<string>, containerKey?: string | number): {
398
+ svgRef: React.RefObject<SVGSVGElement | null>;
399
+ zoomIn: () => void;
400
+ zoomOut: () => void;
401
+ zoomToNode: (nodeId: string, childIds?: string[]) => void;
402
+ zoomToFitAll: () => void;
403
+ };
404
+
405
+ declare function useNotificationSync(): void;
406
+
407
+ declare function usePageTracker(): void;
408
+
259
409
  declare const useContentTableStructure: <U extends string = ContentFields>(params: Parameters<UseTableStructureHook<ContentInterface, U>>[0]) => ReturnType<UseTableStructureHook<ContentInterface, U>>;
260
410
 
261
411
  declare const useRoleTableStructure: UseTableStructureHook<RoleInterface, RoleFields>;
@@ -272,4 +422,4 @@ declare const useUserSearch: () => {
272
422
 
273
423
  declare const useUserTableStructure: UseTableStructureHook<UserInterface, UserFields>;
274
424
 
275
- export { type CacheProfile, type DirectFetchParams, type JsonApiConfig, JsonApiContext, JsonApiProvider, type JsonApiProviderProps, type MutationMethod, type MutationParams, type UseJsonApiGetOptions, type UseJsonApiGetResult, type UseJsonApiMutationResult, directFetch, getClientToken, useContentTableStructure, useJsonApiConfig, useJsonApiConfigOptional, useJsonApiGet, useJsonApiMutation, useRehydration, useRehydrationList, useRoleTableStructure, useUserSearch, useUserTableStructure };
425
+ export { type CacheProfile, ClientJsonApiDelete, ClientJsonApiGet, ClientJsonApiPatch, ClientJsonApiPost, ClientJsonApiPut, DataListRetriever, type DirectFetchParams, type JsonApiConfig, JsonApiContext, JsonApiProvider, type JsonApiProviderProps, type MutationMethod, type MutationParams, type TableContent, TableGeneratorRegistry, type TableStructureGeneratorInterface, type UseJsonApiGetOptions, type UseJsonApiGetResult, type UseJsonApiMutationResult, type UseTableStructureHook, type UseTableStructureHookParams, type UseTableStructureHookReturn, configureClientJsonApi, directFetch, getClientApiUrl, getClientAppUrl, getClientToken, getClientTrackablePages, registerTableGenerator, tableGeneratorRegistry, useContentTableStructure, useCustomD3Graph, useDebounce, useJsonApiConfig, useJsonApiConfigOptional, useJsonApiGet, useJsonApiMutation, useNotificationSync, usePageTracker, usePageUrlGenerator, useRehydration, useRehydrationList, useRoleTableStructure, useTableGenerator, useUrlRewriter, useUserSearch, useUserTableStructure };
@@ -13,22 +13,53 @@
13
13
 
14
14
 
15
15
 
16
- var _chunkVET55IZOjs = require('../chunk-VET55IZO.js');
16
+
17
+
18
+
19
+
20
+
21
+
22
+
23
+
24
+
25
+
26
+
27
+
28
+ var _chunkSVX7E6RRjs = require('../chunk-SVX7E6RR.js');
29
+
30
+
31
+
32
+
33
+
34
+
35
+
36
+
37
+
38
+
39
+
40
+
41
+ var _chunkAGWQ75PQjs = require('../chunk-AGWQ75PQ.js');
42
+ require('../chunk-LOSPCUCF.js');
43
+ require('../chunk-ZUEEIQHW.js');
44
+ require('../chunk-CSM6AIAP.js');
45
+
46
+
47
+
48
+
49
+
50
+
51
+
52
+
53
+
54
+
55
+ var _chunk2Z56AS2Sjs = require('../chunk-2Z56AS2S.js');
17
56
 
18
57
 
19
58
  var _chunkIBS6NI7Djs = require('../chunk-IBS6NI7D.js');
20
- require('../chunk-5IET37O4.js');
21
- require('../chunk-DEYKTLA3.js');
59
+ require('../chunk-AGAJMJ4T.js');
22
60
 
23
61
 
24
62
  var _chunkLXKSUWAVjs = require('../chunk-LXKSUWAV.js');
25
- require('../chunk-AYHKQWHH.js');
26
- require('../chunk-PMXG5WBC.js');
27
- require('../chunk-3UELCPIN.js');
28
- require('../chunk-3FBCC4G3.js');
29
- require('../chunk-Q4FXESVT.js');
30
- require('../chunk-AGAJMJ4T.js');
31
- require('../chunk-32HM6MDD.js');
32
63
  require('../chunk-7QVYU63E.js');
33
64
 
34
65
 
@@ -45,5 +76,37 @@ require('../chunk-7QVYU63E.js');
45
76
 
46
77
 
47
78
 
48
- exports.JsonApiContext = _chunkVET55IZOjs.JsonApiContext; exports.JsonApiProvider = _chunkVET55IZOjs.JsonApiProvider; exports.directFetch = _chunkIBS6NI7Djs.directFetch; exports.getClientToken = _chunkLXKSUWAVjs.getClientToken; exports.useContentTableStructure = _chunkVET55IZOjs.useContentTableStructure; exports.useJsonApiConfig = _chunkVET55IZOjs.useJsonApiConfig; exports.useJsonApiConfigOptional = _chunkVET55IZOjs.useJsonApiConfigOptional; exports.useJsonApiGet = _chunkVET55IZOjs.useJsonApiGet; exports.useJsonApiMutation = _chunkVET55IZOjs.useJsonApiMutation; exports.useRehydration = _chunkVET55IZOjs.useRehydration; exports.useRehydrationList = _chunkVET55IZOjs.useRehydrationList; exports.useRoleTableStructure = _chunkVET55IZOjs.useRoleTableStructure; exports.useUserSearch = _chunkVET55IZOjs.useUserSearch; exports.useUserTableStructure = _chunkVET55IZOjs.useUserTableStructure;
79
+
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+
90
+
91
+
92
+
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+
103
+
104
+
105
+
106
+
107
+
108
+
109
+
110
+
111
+ exports.ClientJsonApiDelete = _chunk2Z56AS2Sjs.ClientJsonApiDelete; exports.ClientJsonApiGet = _chunk2Z56AS2Sjs.ClientJsonApiGet; exports.ClientJsonApiPatch = _chunk2Z56AS2Sjs.ClientJsonApiPatch; exports.ClientJsonApiPost = _chunk2Z56AS2Sjs.ClientJsonApiPost; exports.ClientJsonApiPut = _chunk2Z56AS2Sjs.ClientJsonApiPut; exports.JsonApiContext = _chunkSVX7E6RRjs.JsonApiContext; exports.JsonApiProvider = _chunkSVX7E6RRjs.JsonApiProvider; exports.TableGeneratorRegistry = _chunkSVX7E6RRjs.TableGeneratorRegistry; exports.configureClientConfig = _chunkAGWQ75PQjs.configureClientConfig; exports.configureClientJsonApi = _chunk2Z56AS2Sjs.configureClientJsonApi; exports.configureI18n = _chunkAGWQ75PQjs.configureI18n; exports.configureJsonApi = _chunkAGWQ75PQjs.configureJsonApi; exports.directFetch = _chunkIBS6NI7Djs.directFetch; exports.getApiUrl = _chunkAGWQ75PQjs.getApiUrl; exports.getAppUrl = _chunkAGWQ75PQjs.getAppUrl; exports.getClientApiUrl = _chunk2Z56AS2Sjs.getClientApiUrl; exports.getClientAppUrl = _chunk2Z56AS2Sjs.getClientAppUrl; exports.getClientToken = _chunkLXKSUWAVjs.getClientToken; exports.getClientTrackablePages = _chunk2Z56AS2Sjs.getClientTrackablePages; exports.getI18nLink = _chunkAGWQ75PQjs.getI18nLink; exports.getTrackablePages = _chunkAGWQ75PQjs.getTrackablePages; exports.registerTableGenerator = _chunkSVX7E6RRjs.registerTableGenerator; exports.tableGeneratorRegistry = _chunkSVX7E6RRjs.tableGeneratorRegistry; exports.useContentTableStructure = _chunkSVX7E6RRjs.useContentTableStructure; exports.useCustomD3Graph = _chunkSVX7E6RRjs.useCustomD3Graph; exports.useDataListRetriever = _chunkSVX7E6RRjs.useDataListRetriever; exports.useDebounce = _chunkSVX7E6RRjs.useDebounce; exports.useI18nDateFnsLocale = _chunkAGWQ75PQjs.useI18nDateFnsLocale; exports.useI18nLocale = _chunkAGWQ75PQjs.useI18nLocale; exports.useI18nRouter = _chunkAGWQ75PQjs.useI18nRouter; exports.useI18nTranslations = _chunkAGWQ75PQjs.useI18nTranslations; exports.useJsonApiConfig = _chunkSVX7E6RRjs.useJsonApiConfig; exports.useJsonApiConfigOptional = _chunkSVX7E6RRjs.useJsonApiConfigOptional; exports.useJsonApiGet = _chunkSVX7E6RRjs.useJsonApiGet; exports.useJsonApiMutation = _chunkSVX7E6RRjs.useJsonApiMutation; exports.useNotificationSync = _chunkSVX7E6RRjs.useNotificationSync; exports.usePageTracker = _chunkSVX7E6RRjs.usePageTracker; exports.usePageUrlGenerator = _chunkSVX7E6RRjs.usePageUrlGenerator; exports.useRehydration = _chunkSVX7E6RRjs.useRehydration; exports.useRehydrationList = _chunkSVX7E6RRjs.useRehydrationList; exports.useRoleTableStructure = _chunkSVX7E6RRjs.useRoleTableStructure; exports.useSocket = _chunkSVX7E6RRjs.useSocket; exports.useTableGenerator = _chunkSVX7E6RRjs.useTableGenerator; exports.useUrlRewriter = _chunkSVX7E6RRjs.useUrlRewriter; exports.useUserSearch = _chunkSVX7E6RRjs.useUserSearch; exports.useUserTableStructure = _chunkSVX7E6RRjs.useUserTableStructure;
49
112
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/client/index.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,uDAA6B;AAC7B;AACE;AACF,uDAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACF,uDAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,23BAAC","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/client/index.js"}
1
+ {"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/client/index.js"],"names":[],"mappings":"AAAA,qFAAY;AACZ;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,uDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,uDAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,uDAA6B;AAC7B;AACE;AACF,uDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACF,uDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,y1FAAC","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/client/index.js"}