@carlonicora/nextjs-jsonapi 3.24.2 → 3.26.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 (220) hide show
  1. package/dist/{AssistantMessageInterface-1Kbz8RVs.d.ts → AssistantMessageInterface-CubxuBIJ.d.ts} +1 -1
  2. package/dist/{AssistantMessageInterface-CoxJyuFM.d.mts → AssistantMessageInterface-sHjI2zPN.d.mts} +1 -1
  3. package/dist/{BlockNoteEditor-35D4R7HJ.js → BlockNoteEditor-4EIKMNY3.js} +31 -21
  4. package/dist/BlockNoteEditor-4EIKMNY3.js.map +1 -0
  5. package/dist/{BlockNoteEditor-65HR6ULV.mjs → BlockNoteEditor-AXYVDDXM.mjs} +16 -6
  6. package/dist/{BlockNoteEditor-65HR6ULV.mjs.map → BlockNoteEditor-AXYVDDXM.mjs.map} +1 -1
  7. package/dist/{BlockNoteViewer-QDXDVYEM.js → BlockNoteViewer-7BFNTN4E.js} +4 -4
  8. package/dist/{BlockNoteViewer-QDXDVYEM.js.map → BlockNoteViewer-7BFNTN4E.js.map} +1 -1
  9. package/dist/{BlockNoteViewer-KDKGUIG5.mjs → BlockNoteViewer-KRTAFTUX.mjs} +3 -3
  10. package/dist/{HandbookSectionInterface-OePKPbqN.d.ts → HandbookSectionInterface-Ck1wZJ81.d.ts} +1 -1
  11. package/dist/{HandbookSectionInterface-BYsmnPEz.d.mts → HandbookSectionInterface-DgYH--Ik.d.mts} +1 -1
  12. package/dist/JsonApiRequest-TE5WD3WS.js +26 -0
  13. package/dist/{JsonApiRequest-G625QAH5.js.map → JsonApiRequest-TE5WD3WS.js.map} +1 -1
  14. package/dist/{JsonApiRequest-RRMNV7YE.mjs → JsonApiRequest-UHOWNI3O.mjs} +2 -2
  15. package/dist/analytics.modules-CfczU12P.d.ts +25 -0
  16. package/dist/analytics.modules-pzGwMASI.d.mts +25 -0
  17. package/dist/{auth.interface-BC1jp_ni.d.ts → auth.interface-BzI4onI_.d.ts} +1 -1
  18. package/dist/{auth.interface-dR2-6gPM.d.mts → auth.interface-Df4vXbNz.d.mts} +1 -1
  19. package/dist/billing/index.js +402 -402
  20. package/dist/billing/index.mjs +4 -4
  21. package/dist/{chunk-YXRVPEEJ.js → chunk-26MQIJNB.js} +1 -1
  22. package/dist/{chunk-YXRVPEEJ.js.map → chunk-26MQIJNB.js.map} +1 -1
  23. package/dist/{chunk-T76WLDE5.mjs → chunk-37DMFVLN.mjs} +1 -1
  24. package/dist/{chunk-3AR4KA5D.js → chunk-4Z45NYPR.js} +13 -13
  25. package/dist/{chunk-3AR4KA5D.js.map → chunk-4Z45NYPR.js.map} +1 -1
  26. package/dist/chunk-7B4E42R5.mjs +280 -0
  27. package/dist/chunk-7B4E42R5.mjs.map +1 -0
  28. package/dist/{chunk-2XCUAHQT.js → chunk-ABVTYQIJ.js} +1563 -1336
  29. package/dist/chunk-ABVTYQIJ.js.map +1 -0
  30. package/dist/{chunk-U7QVISQS.js → chunk-CAKOFJZD.js} +450 -40
  31. package/dist/chunk-CAKOFJZD.js.map +1 -0
  32. package/dist/{chunk-IBVKPLHT.mjs → chunk-E3I4MT53.mjs} +422 -12
  33. package/dist/chunk-E3I4MT53.mjs.map +1 -0
  34. package/dist/chunk-GHFMKH3M.js +280 -0
  35. package/dist/chunk-GHFMKH3M.js.map +1 -0
  36. package/dist/chunk-GKDHYB2R.js +110 -0
  37. package/dist/chunk-GKDHYB2R.js.map +1 -0
  38. package/dist/{chunk-ZJI5ZZW5.mjs → chunk-Q6J2ICKO.mjs} +3 -3
  39. package/dist/{chunk-4O7R2Z2O.mjs → chunk-QWZAGQWJ.mjs} +2175 -1948
  40. package/dist/chunk-QWZAGQWJ.mjs.map +1 -0
  41. package/dist/chunk-U65JPKO3.mjs +110 -0
  42. package/dist/chunk-U65JPKO3.mjs.map +1 -0
  43. package/dist/client/index.d.mts +6 -5
  44. package/dist/client/index.d.ts +6 -5
  45. package/dist/client/index.js +5 -5
  46. package/dist/client/index.js.map +1 -1
  47. package/dist/client/index.mjs +4 -4
  48. package/dist/components/index.d.mts +33 -10
  49. package/dist/components/index.d.ts +33 -10
  50. package/dist/components/index.js +7 -5
  51. package/dist/components/index.js.map +1 -1
  52. package/dist/components/index.mjs +6 -4
  53. package/dist/{config-B6UB7j69.d.ts → config-3N1LSrcC.d.ts} +1 -1
  54. package/dist/{config-Cd5xTEfZ.d.ts → config-AVtuvfM1.d.ts} +1 -1
  55. package/dist/{config-n-ZpPmOL.d.mts → config-BSKTYDoh.d.mts} +1 -1
  56. package/dist/{config-YyhFHxkU.d.mts → config-BmufyEj6.d.mts} +1 -1
  57. package/dist/contexts/index.d.mts +5 -4
  58. package/dist/contexts/index.d.ts +5 -4
  59. package/dist/contexts/index.js +5 -5
  60. package/dist/contexts/index.mjs +4 -4
  61. package/dist/core/index.d.mts +31 -14
  62. package/dist/core/index.d.ts +31 -14
  63. package/dist/core/index.js +9 -5
  64. package/dist/core/index.js.map +1 -1
  65. package/dist/core/index.mjs +8 -4
  66. package/dist/features/analytics/index.css +30 -0
  67. package/dist/features/analytics/index.css.map +1 -0
  68. package/dist/features/analytics/index.d.mts +508 -0
  69. package/dist/features/analytics/index.d.ts +508 -0
  70. package/dist/features/analytics/index.js +1166 -0
  71. package/dist/features/analytics/index.js.map +1 -0
  72. package/dist/features/analytics/index.mjs +1166 -0
  73. package/dist/features/analytics/index.mjs.map +1 -0
  74. package/dist/features/analytics/server.d.mts +28 -0
  75. package/dist/features/analytics/server.d.ts +28 -0
  76. package/dist/features/analytics/server.js +41 -0
  77. package/dist/features/analytics/server.js.map +1 -0
  78. package/dist/features/analytics/server.mjs +41 -0
  79. package/dist/features/analytics/server.mjs.map +1 -0
  80. package/dist/features/help/index.d.mts +2 -2
  81. package/dist/features/help/index.d.ts +2 -2
  82. package/dist/features/help/index.js +43 -43
  83. package/dist/features/help/index.js.map +1 -1
  84. package/dist/features/help/index.mjs +9 -9
  85. package/dist/features/help/index.mjs.map +1 -1
  86. package/dist/features/tokenusage/index.d.mts +2 -2
  87. package/dist/features/tokenusage/index.d.ts +2 -2
  88. package/dist/features/tokenusage/index.js +141 -223
  89. package/dist/features/tokenusage/index.js.map +1 -1
  90. package/dist/features/tokenusage/index.mjs +28 -110
  91. package/dist/features/tokenusage/index.mjs.map +1 -1
  92. package/dist/index.d.mts +11 -9
  93. package/dist/index.d.ts +11 -9
  94. package/dist/index.js +10 -6
  95. package/dist/index.js.map +1 -1
  96. package/dist/index.mjs +9 -5
  97. package/dist/notification.interface-BNCvnVCW.d.ts +34 -0
  98. package/dist/notification.interface-P_pNfzZQ.d.mts +34 -0
  99. package/dist/{s3.service-Bqr-fQmi.d.ts → s3.service-CbUa6a-8.d.ts} +3 -2
  100. package/dist/{s3.service-Buiy1ncj.d.mts → s3.service-DAp8FbuG.d.mts} +3 -2
  101. package/dist/server/index.d.mts +5 -4
  102. package/dist/server/index.d.ts +5 -4
  103. package/dist/server/index.js +39 -279
  104. package/dist/server/index.js.map +1 -1
  105. package/dist/server/index.mjs +20 -260
  106. package/dist/server/index.mjs.map +1 -1
  107. package/dist/{types-bsm8Fp55.d.ts → types-Cn153-mH.d.ts} +1 -1
  108. package/dist/{types-Bq_UA8Lg.d.mts → types-D0uLYV2P.d.mts} +1 -1
  109. package/dist/{usePageUrlGenerator-J_ECv-oQ.d.ts → usePageUrlGenerator-B-3FRKBD.d.ts} +1 -1
  110. package/dist/{usePageUrlGenerator-uKBjAKqC.d.mts → usePageUrlGenerator-CCJ_cdQy.d.mts} +1 -1
  111. package/dist/{useSocket-BcH7l7B8.d.mts → useSocket-B9gTbuCj.d.mts} +1 -1
  112. package/dist/{useSocket-DCZd_eJk.d.ts → useSocket-BHVIyigI.d.ts} +1 -1
  113. package/dist/{notification.interface-MnRt1Tjm.d.mts → user.interface-CSaGWFbg.d.mts} +1 -31
  114. package/dist/{notification.interface-CjzV_KII.d.ts → user.interface-CrmwJLYW.d.ts} +1 -31
  115. package/package.json +11 -1
  116. package/src/client/index.ts +2 -0
  117. package/src/components/containers/PageContainer.tsx +1 -1
  118. package/src/components/containers/RoundPageContainer.tsx +60 -16
  119. package/src/components/containers/RoundPageContainerTitle.tsx +75 -35
  120. package/src/components/editors/BlockNoteEditor.tsx +13 -1
  121. package/src/components/forms/EntityMultiSelector.tsx +4 -4
  122. package/src/components/forms/EntitySelector.tsx +4 -4
  123. package/src/components/forms/FormBlockNote.tsx +21 -1
  124. package/src/components/forms/FormCheckbox.tsx +6 -2
  125. package/src/components/forms/__tests__/useEditorDialog.test.ts +47 -0
  126. package/src/components/forms/useEditorDialog.ts +22 -0
  127. package/src/components/navigations/Breadcrumb.tsx +45 -16
  128. package/src/components/navigations/Header.tsx +16 -3
  129. package/src/components/navigations/MobileNavigationBar.tsx +12 -0
  130. package/src/components/navigations/__tests__/MobileNavigationBar.spec.tsx +17 -0
  131. package/src/components/tables/ContentListTable.tsx +52 -32
  132. package/src/core/index.ts +4 -0
  133. package/src/core/registry/ModuleRegistry.ts +7 -0
  134. package/src/features/__tests__/i18n-keys.contract.spec.ts +1 -0
  135. package/src/features/analytics/__tests__/server-entry.spec.tsx +64 -0
  136. package/src/features/analytics/analytics.modules.ts +30 -0
  137. package/src/features/analytics/components/AnalyticsAdminContainer.tsx +97 -0
  138. package/src/features/analytics/components/AnalyticsAdminFilterBar.tsx +120 -0
  139. package/src/features/analytics/components/AnalyticsAdminPageContainer.tsx +25 -0
  140. package/src/features/analytics/components/AnalyticsAdminTiles.tsx +191 -0
  141. package/src/features/analytics/components/AnalyticsBreakdownTable.tsx +105 -0
  142. package/src/features/analytics/components/AnalyticsJourneyContainer.tsx +246 -0
  143. package/src/features/analytics/components/AnalyticsJourneyPageContainer.tsx +14 -0
  144. package/src/features/analytics/components/AnalyticsSessionsTable.tsx +107 -0
  145. package/src/features/analytics/components/AnalyticsTimelineChart.tsx +175 -0
  146. package/src/features/analytics/components/AnalyticsTracker.tsx +112 -0
  147. package/src/features/analytics/components/__tests__/AnalyticsAdminTiles.spec.tsx +39 -0
  148. package/src/features/analytics/components/__tests__/AnalyticsBreakdownTable.spec.tsx +39 -0
  149. package/src/features/analytics/components/__tests__/AnalyticsJourneyContainer.spec.tsx +124 -0
  150. package/src/features/analytics/components/__tests__/AnalyticsPageContainers.spec.tsx +117 -0
  151. package/src/features/analytics/components/__tests__/AnalyticsSessionsTable.spec.tsx +121 -0
  152. package/src/features/analytics/components/__tests__/AnalyticsTimelineChart.spec.tsx +35 -0
  153. package/src/features/analytics/components/__tests__/AnalyticsTracker.spec.tsx +248 -0
  154. package/src/features/analytics/components/server/AnalyticsAdminPage.tsx +28 -0
  155. package/src/features/analytics/components/server/AnalyticsJourneyPage.tsx +25 -0
  156. package/src/features/analytics/contexts/AnalyticsAdminContext.tsx +273 -0
  157. package/src/features/analytics/contexts/__tests__/AnalyticsAdminContext.spec.tsx +140 -0
  158. package/src/features/analytics/data/AnalyticsAdminService.ts +91 -0
  159. package/src/features/analytics/data/AnalyticsService.ts +23 -0
  160. package/src/features/analytics/data/__tests__/AnalyticsAdminService.spec.ts +117 -0
  161. package/src/features/analytics/data/__tests__/AnalyticsService.spec.ts +56 -0
  162. package/src/features/analytics/data/__tests__/models.spec.ts +300 -0
  163. package/src/features/analytics/data/analytics-breakdown.interface.ts +9 -0
  164. package/src/features/analytics/data/analytics-breakdown.ts +65 -0
  165. package/src/features/analytics/data/analytics-event.interface.ts +7 -0
  166. package/src/features/analytics/data/analytics-event.ts +63 -0
  167. package/src/features/analytics/data/analytics-page-view.interface.ts +9 -0
  168. package/src/features/analytics/data/analytics-page-view.ts +57 -0
  169. package/src/features/analytics/data/analytics-session.interface.ts +23 -0
  170. package/src/features/analytics/data/analytics-session.ts +144 -0
  171. package/src/features/analytics/data/analytics-summary.interface.ts +11 -0
  172. package/src/features/analytics/data/analytics-summary.ts +79 -0
  173. package/src/features/analytics/data/analytics-timeline.interface.ts +10 -0
  174. package/src/features/analytics/data/analytics-timeline.ts +67 -0
  175. package/src/features/analytics/data/analytics.types.ts +97 -0
  176. package/src/features/analytics/data/index.ts +15 -0
  177. package/src/features/analytics/i18n-keys.ts +76 -0
  178. package/src/features/analytics/index.ts +31 -0
  179. package/src/features/analytics/lib/__tests__/utm.spec.ts +20 -0
  180. package/src/features/analytics/lib/__tests__/visitorCookie.spec.ts +63 -0
  181. package/src/features/analytics/lib/utm.ts +29 -0
  182. package/src/features/analytics/lib/visitorCookie.ts +32 -0
  183. package/src/features/analytics/server-entry.ts +8 -0
  184. package/src/features/assistant/components/parts/AssistantBlockNoteComposer.tsx +1 -1
  185. package/src/features/assistant/components/parts/AssistantComposer.tsx +1 -1
  186. package/src/features/assistant-message/components/MessageItem.tsx +2 -2
  187. package/src/features/assistant-message/components/parts/tabs/CitationsTab.tsx +23 -5
  188. package/src/features/auth/components/containers/AuthContainer.tsx +8 -1
  189. package/src/features/company/components/details/CompanyContent.tsx +3 -1
  190. package/src/features/company/components/details/CompanyDetails.tsx +9 -1
  191. package/src/features/company/components/details/TokenStatusIndicator.tsx +42 -13
  192. package/src/features/help/components/HelpHeader.tsx +7 -5
  193. package/src/features/tokenusage/components/TokenUsageAdminFilterBar.tsx +9 -6
  194. package/src/features/tokenusage/lib/__tests__/formatters.spec.ts +21 -0
  195. package/src/features/tokenusage/lib/formatters.ts +5 -1
  196. package/src/features/waitlist/components/lists/WaitlistList.tsx +68 -121
  197. package/src/features/waitlist/data/WaitlistService.ts +2 -2
  198. package/src/features/waitlist/data/index.ts +1 -0
  199. package/src/features/waitlist/data/waitlist.fields.ts +8 -0
  200. package/src/features/waitlist/hooks/useWaitlistTableStructure.tsx +69 -30
  201. package/src/shadcnui/ui/button.tsx +1 -1
  202. package/src/shadcnui/ui/checkbox.tsx +1 -1
  203. package/src/shadcnui/ui/command.tsx +4 -4
  204. package/src/shadcnui/ui/dialog.tsx +2 -0
  205. package/src/shadcnui/ui/input.tsx +1 -1
  206. package/src/shadcnui/ui/popover.tsx +9 -0
  207. package/src/shadcnui/ui/select.tsx +1 -1
  208. package/src/shadcnui/ui/sheet.tsx +8 -1
  209. package/src/shadcnui/ui/table.tsx +2 -2
  210. package/src/shadcnui/ui/textarea.tsx +1 -1
  211. package/dist/BlockNoteEditor-35D4R7HJ.js.map +0 -1
  212. package/dist/JsonApiRequest-G625QAH5.js +0 -26
  213. package/dist/chunk-2XCUAHQT.js.map +0 -1
  214. package/dist/chunk-4O7R2Z2O.mjs.map +0 -1
  215. package/dist/chunk-IBVKPLHT.mjs.map +0 -1
  216. package/dist/chunk-U7QVISQS.js.map +0 -1
  217. /package/dist/{BlockNoteViewer-KDKGUIG5.mjs.map → BlockNoteViewer-KRTAFTUX.mjs.map} +0 -0
  218. /package/dist/{JsonApiRequest-RRMNV7YE.mjs.map → JsonApiRequest-UHOWNI3O.mjs.map} +0 -0
  219. /package/dist/{chunk-T76WLDE5.mjs.map → chunk-37DMFVLN.mjs.map} +0 -0
  220. /package/dist/{chunk-ZJI5ZZW5.mjs.map → chunk-Q6J2ICKO.mjs.map} +0 -0
@@ -1,11 +1,24 @@
1
- "use strict";Object.defineProperty(exports, "__esModule", {value: true}); function _nullishCoalesce(lhs, rhsFn) { if (lhs != null) { return lhs; } else { return rhsFn(); } } function _optionalChain(ops) { let lastAccessLHS = undefined; let value = ops[0]; let i = 1; while (i < ops.length) { const op = ops[i]; const fn = ops[i + 1]; i += 2; if ((op === 'optionalAccess' || op === 'optionalCall') && value == null) { return undefined; } if (op === 'access' || op === 'optionalAccess') { lastAccessLHS = value; value = fn(value); } else if (op === 'call' || op === 'optionalCall') { value = fn((...args) => value.call(lastAccessLHS, ...args)); lastAccessLHS = undefined; } } return value; }
1
+ "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
+
3
+
4
+
5
+
6
+
7
+
8
+
9
+
2
10
 
3
- var _chunkYUO55Q5Ajs = require('../chunk-YUO55Q5A.js');
11
+
12
+
13
+
14
+ var _chunkGHFMKH3Mjs = require('../chunk-GHFMKH3M.js');
4
15
 
5
16
 
6
17
  var _chunk5TRFNKJSjs = require('../chunk-5TRFNKJS.js');
7
18
 
8
19
 
20
+ var _chunkYUO55Q5Ajs = require('../chunk-YUO55Q5A.js');
21
+
9
22
 
10
23
 
11
24
 
@@ -15,287 +28,34 @@ var _chunk5TRFNKJSjs = require('../chunk-5TRFNKJS.js');
15
28
 
16
29
 
17
30
 
18
- var _chunkU7QVISQSjs = require('../chunk-U7QVISQS.js');
31
+ var _chunkCAKOFJZDjs = require('../chunk-CAKOFJZD.js');
32
+ require('../chunk-26MQIJNB.js');
19
33
  require('../chunk-LXKSUWAV.js');
20
34
  require('../chunk-JTPRJNT2.js');
35
+ require('../chunk-7QVYU63E.js');
36
+
37
+
38
+
39
+
40
+
41
+
42
+
43
+
44
+
45
+
46
+
47
+
48
+
49
+
50
+
51
+
52
+
53
+
54
+
55
+
21
56
 
22
57
 
23
58
 
24
59
 
25
- var _chunkYXRVPEEJjs = require('../chunk-YXRVPEEJ.js');
26
-
27
-
28
- var _chunk7QVYU63Ejs = require('../chunk-7QVYU63E.js');
29
-
30
- // src/server/cache.ts
31
- var _cache = require('next/cache');
32
- async function invalidateCacheTag(tag, profile = "max") {
33
- _cache.revalidateTag.call(void 0, tag, profile);
34
- }
35
- _chunk7QVYU63Ejs.__name.call(void 0, invalidateCacheTag, "invalidateCacheTag");
36
- async function invalidateCacheTags(tags, profile = "max") {
37
- for (const tag of tags) {
38
- _cache.revalidateTag.call(void 0, tag, profile);
39
- }
40
- }
41
- _chunk7QVYU63Ejs.__name.call(void 0, invalidateCacheTags, "invalidateCacheTags");
42
-
43
- // src/server/ServerSession.ts
44
- var _headers = require('next/headers');
45
- var _navigation = require('next/navigation');
46
- var _pako = require('pako');
47
- var ServerSession = class {
48
- static {
49
- _chunk7QVYU63Ejs.__name.call(void 0, this, "ServerSession");
50
- }
51
- static async isLogged() {
52
- const cookieStore = await _headers.cookies.call(void 0, );
53
- const token = cookieStore.get("token");
54
- if (!token || !token.value) return false;
55
- return true;
56
- }
57
- static async companyId() {
58
- const cookieStore = await _headers.cookies.call(void 0, );
59
- return _nullishCoalesce(_optionalChain([cookieStore, 'access', _ => _.get, 'call', _2 => _2("companyId"), 'optionalAccess', _3 => _3.value]), () => ( ""));
60
- }
61
- static async userId() {
62
- const cookieStore = await _headers.cookies.call(void 0, );
63
- return _nullishCoalesce(_optionalChain([cookieStore, 'access', _4 => _4.get, 'call', _5 => _5("userId"), 'optionalAccess', _6 => _6.value]), () => ( ""));
64
- }
65
- static async checkPermission(params) {
66
- if (!await this.hasPermissionToModule(params)) _navigation.redirect.call(void 0, `/401`);
67
- }
68
- static async hasRole(roleId) {
69
- const cookieStore = await _headers.cookies.call(void 0, );
70
- const roles = _optionalChain([cookieStore, 'access', _7 => _7.get, 'call', _8 => _8("roles"), 'optionalAccess', _9 => _9.value]);
71
- if (!roles || !roles.includes(roleId)) return false;
72
- return true;
73
- }
74
- static async hasFeature(featureId) {
75
- const cookieStore = await _headers.cookies.call(void 0, );
76
- const features = _optionalChain([cookieStore, 'access', _10 => _10.get, 'call', _11 => _11("features"), 'optionalAccess', _12 => _12.value]);
77
- if (!features || !features.includes(featureId)) return false;
78
- return true;
79
- }
80
- static async hasPermissionToModule(params) {
81
- const cookieStore = await _headers.cookies.call(void 0, );
82
- if (params.module.feature) {
83
- const features = _optionalChain([cookieStore, 'access', _13 => _13.get, 'call', _14 => _14("features"), 'optionalAccess', _15 => _15.value]);
84
- if (features && !features.includes(params.module.feature)) return false;
85
- }
86
- const rawModules = _optionalChain([cookieStore, 'access', _16 => _16.get, 'call', _17 => _17("modules"), 'optionalAccess', _18 => _18.value]);
87
- if (!rawModules) return false;
88
- const modules = JSON.parse(_pako.ungzip.call(void 0, Buffer.from(rawModules, "base64"), { toText: true }));
89
- const selectedModule = modules.find((module) => module.id === params.module.moduleId);
90
- return _chunkU7QVISQSjs.checkPermissionsFromServer.call(void 0, {
91
- module: params.module,
92
- action: params.action,
93
- data: params.data,
94
- userId: await this.userId(),
95
- selectedModule
96
- });
97
- }
98
- };
99
-
100
- // src/server/JsonApiServer.ts
101
- var _serverConfig = null;
102
- function configureServerJsonApi(config) {
103
- _serverConfig = config;
104
- if (config.bootstrapper) {
105
- config.bootstrapper();
106
- }
107
- }
108
- _chunk7QVYU63Ejs.__name.call(void 0, configureServerJsonApi, "configureServerJsonApi");
109
- function getServerApiUrl() {
110
- if (_optionalChain([_serverConfig, 'optionalAccess', _19 => _19.apiUrl])) {
111
- return _serverConfig.apiUrl;
112
- }
113
- const envUrl = _chunkYXRVPEEJjs.ENV.API_URL;
114
- if (!envUrl) {
115
- throw new Error(
116
- "API URL not configured. Use configureServerJsonApi() or set NEXT_PUBLIC_API_URL environment variable."
117
- );
118
- }
119
- return envUrl;
120
- }
121
- _chunk7QVYU63Ejs.__name.call(void 0, getServerApiUrl, "getServerApiUrl");
122
- function getServerAppUrl() {
123
- if (_optionalChain([_serverConfig, 'optionalAccess', _20 => _20.appUrl])) {
124
- return _serverConfig.appUrl;
125
- }
126
- const envUrl = _chunkYXRVPEEJjs.ENV.APP_URL;
127
- if (!envUrl) {
128
- throw new Error(
129
- "App URL not configured. Use configureServerJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable."
130
- );
131
- }
132
- return envUrl.trim().replace(/\/+$/, "");
133
- }
134
- _chunk7QVYU63Ejs.__name.call(void 0, getServerAppUrl, "getServerAppUrl");
135
- function getServerTrackablePages() {
136
- return _nullishCoalesce(_optionalChain([_serverConfig, 'optionalAccess', _21 => _21.trackablePages]), () => ( []));
137
- }
138
- _chunk7QVYU63Ejs.__name.call(void 0, getServerTrackablePages, "getServerTrackablePages");
139
- function runServerBootstrapper() {
140
- if (_optionalChain([_serverConfig, 'optionalAccess', _22 => _22.bootstrapper])) {
141
- _serverConfig.bootstrapper();
142
- }
143
- }
144
- _chunk7QVYU63Ejs.__name.call(void 0, runServerBootstrapper, "runServerBootstrapper");
145
- function buildServerUrl(endpoint) {
146
- const apiUrl = getServerApiUrl();
147
- return endpoint.startsWith("http") ? endpoint : `${apiUrl}${endpoint}`;
148
- }
149
- _chunk7QVYU63Ejs.__name.call(void 0, buildServerUrl, "buildServerUrl");
150
- async function ServerJsonApiGet(params) {
151
- runServerBootstrapper();
152
- const token = await _chunkYUO55Q5Ajs.getServerToken.call(void 0, );
153
- const apiResponse = await _chunk5TRFNKJSjs.serverRequest.call(void 0, {
154
- method: "GET",
155
- url: buildServerUrl(params.endpoint),
156
- token,
157
- cache: params.classKey.cache,
158
- companyId: params.companyId,
159
- language: params.language,
160
- additionalHeaders: _optionalChain([_serverConfig, 'optionalAccess', _23 => _23.additionalHeaders])
161
- });
162
- return _chunkYXRVPEEJjs.translateResponse.call(void 0, {
163
- classKey: params.classKey,
164
- apiResponse,
165
- companyId: params.companyId,
166
- language: params.language,
167
- paginationHandler: /* @__PURE__ */ _chunk7QVYU63Ejs.__name.call(void 0, async (endpoint) => ServerJsonApiGet({
168
- classKey: params.classKey,
169
- endpoint,
170
- companyId: params.companyId,
171
- language: params.language
172
- }), "paginationHandler")
173
- });
174
- }
175
- _chunk7QVYU63Ejs.__name.call(void 0, ServerJsonApiGet, "ServerJsonApiGet");
176
- async function ServerJsonApiPost(params) {
177
- runServerBootstrapper();
178
- const token = await _chunkYUO55Q5Ajs.getServerToken.call(void 0, );
179
- let body = params.body;
180
- if (!body) {
181
- body = {};
182
- } else if (params.overridesJsonApiCreation !== true) {
183
- body = _chunkYXRVPEEJjs.JsonApiDataFactory.create(params.classKey, body);
184
- }
185
- const apiResponse = await _chunk5TRFNKJSjs.serverRequest.call(void 0, {
186
- method: "POST",
187
- url: buildServerUrl(params.endpoint),
188
- token,
189
- body,
190
- files: params.files,
191
- companyId: params.companyId,
192
- language: params.language,
193
- additionalHeaders: _optionalChain([_serverConfig, 'optionalAccess', _24 => _24.additionalHeaders])
194
- });
195
- return _chunkYXRVPEEJjs.translateResponse.call(void 0, {
196
- classKey: _nullishCoalesce(params.responseType, () => ( params.classKey)),
197
- apiResponse,
198
- companyId: params.companyId,
199
- language: params.language
200
- });
201
- }
202
- _chunk7QVYU63Ejs.__name.call(void 0, ServerJsonApiPost, "ServerJsonApiPost");
203
- async function ServerJsonApiPut(params) {
204
- runServerBootstrapper();
205
- const token = await _chunkYUO55Q5Ajs.getServerToken.call(void 0, );
206
- let body = params.body;
207
- if (!body) {
208
- body = {};
209
- } else {
210
- body = _chunkYXRVPEEJjs.JsonApiDataFactory.create(params.classKey, body);
211
- }
212
- const apiResponse = await _chunk5TRFNKJSjs.serverRequest.call(void 0, {
213
- method: "PUT",
214
- url: buildServerUrl(params.endpoint),
215
- token,
216
- body,
217
- files: params.files,
218
- companyId: params.companyId,
219
- language: params.language,
220
- additionalHeaders: _optionalChain([_serverConfig, 'optionalAccess', _25 => _25.additionalHeaders])
221
- });
222
- return _chunkYXRVPEEJjs.translateResponse.call(void 0, {
223
- classKey: _nullishCoalesce(params.responseType, () => ( params.classKey)),
224
- apiResponse,
225
- companyId: params.companyId,
226
- language: params.language
227
- });
228
- }
229
- _chunk7QVYU63Ejs.__name.call(void 0, ServerJsonApiPut, "ServerJsonApiPut");
230
- async function ServerJsonApiPatch(params) {
231
- runServerBootstrapper();
232
- const token = await _chunkYUO55Q5Ajs.getServerToken.call(void 0, );
233
- let body = params.body;
234
- if (!body) {
235
- body = {};
236
- } else if (params.overridesJsonApiCreation !== true) {
237
- body = _chunkYXRVPEEJjs.JsonApiDataFactory.create(params.classKey, body);
238
- }
239
- const apiResponse = await _chunk5TRFNKJSjs.serverRequest.call(void 0, {
240
- method: "PATCH",
241
- url: buildServerUrl(params.endpoint),
242
- token,
243
- body,
244
- files: params.files,
245
- companyId: params.companyId,
246
- language: params.language,
247
- additionalHeaders: _optionalChain([_serverConfig, 'optionalAccess', _26 => _26.additionalHeaders])
248
- });
249
- return _chunkYXRVPEEJjs.translateResponse.call(void 0, {
250
- classKey: _nullishCoalesce(params.responseType, () => ( params.classKey)),
251
- apiResponse,
252
- companyId: params.companyId,
253
- language: params.language
254
- });
255
- }
256
- _chunk7QVYU63Ejs.__name.call(void 0, ServerJsonApiPatch, "ServerJsonApiPatch");
257
- async function ServerJsonApiDelete(params) {
258
- runServerBootstrapper();
259
- const token = await _chunkYUO55Q5Ajs.getServerToken.call(void 0, );
260
- const apiResponse = await _chunk5TRFNKJSjs.serverRequest.call(void 0, {
261
- method: "DELETE",
262
- url: buildServerUrl(params.endpoint),
263
- token,
264
- companyId: params.companyId,
265
- language: params.language,
266
- additionalHeaders: _optionalChain([_serverConfig, 'optionalAccess', _27 => _27.additionalHeaders])
267
- });
268
- return _chunkYXRVPEEJjs.translateResponse.call(void 0, {
269
- classKey: _nullishCoalesce(params.responseType, () => ( params.classKey)),
270
- apiResponse,
271
- companyId: params.companyId,
272
- language: params.language
273
- });
274
- }
275
- _chunk7QVYU63Ejs.__name.call(void 0, ServerJsonApiDelete, "ServerJsonApiDelete");
276
-
277
-
278
-
279
-
280
-
281
-
282
-
283
-
284
-
285
-
286
-
287
-
288
-
289
-
290
-
291
-
292
-
293
-
294
-
295
-
296
-
297
-
298
-
299
-
300
- exports.ServerAuthService = _chunkU7QVISQSjs.AuthService; exports.ServerCompanyService = _chunkU7QVISQSjs.CompanyService; exports.ServerContentService = _chunkU7QVISQSjs.ContentService; exports.ServerFeatureService = _chunkU7QVISQSjs.FeatureService; exports.ServerJsonApiDelete = ServerJsonApiDelete; exports.ServerJsonApiGet = ServerJsonApiGet; exports.ServerJsonApiPatch = ServerJsonApiPatch; exports.ServerJsonApiPost = ServerJsonApiPost; exports.ServerJsonApiPut = ServerJsonApiPut; exports.ServerNotificationService = _chunkU7QVISQSjs.NotificationService; exports.ServerPushService = _chunkU7QVISQSjs.PushService; exports.ServerRoleService = _chunkU7QVISQSjs.RoleService; exports.ServerS3Service = _chunkU7QVISQSjs.S3Service; exports.ServerSession = ServerSession; exports.ServerUserService = _chunkU7QVISQSjs.UserService; exports.configureServerJsonApi = configureServerJsonApi; exports.getServerApiUrl = getServerApiUrl; exports.getServerAppUrl = getServerAppUrl; exports.getServerToken = _chunkYUO55Q5Ajs.getServerToken; exports.getServerTrackablePages = getServerTrackablePages; exports.invalidateCacheTag = invalidateCacheTag; exports.invalidateCacheTags = invalidateCacheTags; exports.serverRequest = _chunk5TRFNKJSjs.serverRequest;
60
+ exports.ServerAuthService = _chunkCAKOFJZDjs.AuthService; exports.ServerCompanyService = _chunkCAKOFJZDjs.CompanyService; exports.ServerContentService = _chunkCAKOFJZDjs.ContentService; exports.ServerFeatureService = _chunkCAKOFJZDjs.FeatureService; exports.ServerJsonApiDelete = _chunkGHFMKH3Mjs.ServerJsonApiDelete; exports.ServerJsonApiGet = _chunkGHFMKH3Mjs.ServerJsonApiGet; exports.ServerJsonApiPatch = _chunkGHFMKH3Mjs.ServerJsonApiPatch; exports.ServerJsonApiPost = _chunkGHFMKH3Mjs.ServerJsonApiPost; exports.ServerJsonApiPut = _chunkGHFMKH3Mjs.ServerJsonApiPut; exports.ServerNotificationService = _chunkCAKOFJZDjs.NotificationService; exports.ServerPushService = _chunkCAKOFJZDjs.PushService; exports.ServerRoleService = _chunkCAKOFJZDjs.RoleService; exports.ServerS3Service = _chunkCAKOFJZDjs.S3Service; exports.ServerSession = _chunkGHFMKH3Mjs.ServerSession; exports.ServerUserService = _chunkCAKOFJZDjs.UserService; exports.configureServerJsonApi = _chunkGHFMKH3Mjs.configureServerJsonApi; exports.getServerApiUrl = _chunkGHFMKH3Mjs.getServerApiUrl; exports.getServerAppUrl = _chunkGHFMKH3Mjs.getServerAppUrl; exports.getServerToken = _chunkYUO55Q5Ajs.getServerToken; exports.getServerTrackablePages = _chunkGHFMKH3Mjs.getServerTrackablePages; exports.invalidateCacheTag = _chunkGHFMKH3Mjs.invalidateCacheTag; exports.invalidateCacheTags = _chunkGHFMKH3Mjs.invalidateCacheTags; exports.serverRequest = _chunk5TRFNKJSjs.serverRequest;
301
61
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/server/index.js","../../src/server/cache.ts","../../src/server/ServerSession.ts","../../src/server/JsonApiServer.ts"],"names":[],"mappings":"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IAAA;AAC2B,IAAA;AACnC,IAAA;AACA,IAAA;AACc,IAAA;AACI,IAAA;AACD,IAAA;AACiB,IAAA;AACnC,EAAA;AAEwB,EAAA;AACiB,IAAA;AACxC,IAAA;AACkB,IAAA;AACD,IAAA;AAClB,EAAA;AACH;AApCsB;AA+CY;AACV,EAAA;AACa,EAAA;AAEjB,EAAA;AACP,EAAA;AACD,IAAA;AACqC,EAAA;AACL,IAAA;AAC1C,EAAA;AAEwC,EAAA;AAC9B,IAAA;AAC2B,IAAA;AACnC,IAAA;AACA,IAAA;AACc,IAAA;AACI,IAAA;AACD,IAAA;AACiB,IAAA;AACnC,EAAA;AAEwB,EAAA;AACiB,IAAA;AACxC,IAAA;AACkB,IAAA;AACD,IAAA;AAClB,EAAA;AACH;AArCsB;AA6CY;AACV,EAAA;AACa,EAAA;AAEK,EAAA;AAC9B,IAAA;AAC2B,IAAA;AACnC,IAAA;AACkB,IAAA;AACD,IAAA;AACiB,IAAA;AACnC,EAAA;AAEwB,EAAA;AACiB,IAAA;AACxC,IAAA;AACkB,IAAA;AACD,IAAA;AAClB,EAAA;AACH;AAzBsB;AH+C6B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/server/index.js","sourcesContent":[null,"// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { revalidateTag } from \"next/cache\";\n\nexport type CacheProfile = \"seconds\" | \"minutes\" | \"hours\" | \"days\" | \"weeks\" | \"max\" | \"default\";\n\n/**\n * Revalidate a cache tag to invalidate cached data.\n * Next.js 16+ requires a profile parameter.\n *\n * @param tag - The cache tag to invalidate\n * @param profile - The cache profile (defaults to \"max\" for immediate invalidation)\n */\nexport async function invalidateCacheTag(tag: string, profile: CacheProfile = \"max\"): Promise<void> {\n revalidateTag(tag, profile);\n}\n\n/**\n * Revalidate multiple cache tags.\n *\n * @param tags - Array of cache tags to invalidate\n * @param profile - The cache profile (defaults to \"max\" for immediate invalidation)\n */\nexport async function invalidateCacheTags(tags: string[], profile: CacheProfile = \"max\"): Promise<void> {\n for (const tag of tags) {\n revalidateTag(tag, profile);\n }\n}\n","import { cookies } from \"next/headers\";\nimport { redirect } from \"next/navigation\";\nimport { ungzip } from \"pako\";\nimport { Action, checkPermissionsFromServer, ModuleWithPermissions } from \"../permissions\";\n\nexport class ServerSession {\n static async isLogged() {\n const cookieStore = await cookies();\n const token = cookieStore.get(\"token\");\n\n if (!token || !token.value) return false;\n return true;\n }\n\n static async companyId() {\n const cookieStore = await cookies();\n return cookieStore.get(\"companyId\")?.value ?? \"\";\n }\n\n static async userId() {\n const cookieStore = await cookies();\n return cookieStore.get(\"userId\")?.value ?? \"\";\n }\n\n static async checkPermission<M extends ModuleWithPermissions>(params: { module: M; action: Action; data?: any }) {\n if (!(await this.hasPermissionToModule(params))) redirect(`/401`);\n }\n\n static async hasRole(roleId: string): Promise<boolean> {\n const cookieStore = await cookies();\n const roles = cookieStore.get(\"roles\")?.value;\n\n if (!roles || !roles.includes(roleId)) return false;\n\n return true;\n }\n\n static async hasFeature(featureId: string): Promise<boolean> {\n const cookieStore = await cookies();\n const features = cookieStore.get(\"features\")?.value;\n\n if (!features || !features.includes(featureId)) return false;\n\n return true;\n }\n\n static async hasPermissionToModule<M extends ModuleWithPermissions>(params: {\n module: M;\n action: Action;\n data?: any;\n }): Promise<boolean> {\n const cookieStore = await cookies();\n\n if (params.module.feature) {\n const features = cookieStore.get(\"features\")?.value;\n\n if (features && !features.includes(params.module.feature)) return false;\n }\n\n const rawModules = cookieStore.get(\"modules\")?.value;\n if (!rawModules) return false;\n\n const modules: {\n id: string;\n permissions: {\n create: boolean | string;\n read: boolean | string;\n update: boolean | string;\n delete: boolean | string;\n };\n }[] = JSON.parse(ungzip(Buffer.from(rawModules, \"base64\"), { toText: true }));\n\n const selectedModule = modules.find((module) => module.id === params.module.moduleId);\n\n return checkPermissionsFromServer({\n module: params.module,\n action: params.action,\n data: params.data,\n userId: await this.userId(),\n selectedModule: selectedModule,\n });\n\n // if (!selectedModule) return false;\n\n // if (!selectedModule.permissions[params.action]) return false;\n // if (typeof selectedModule.permissions[params.action] === \"boolean\")\n // return selectedModule.permissions[params.action] as boolean;\n\n // if (!params.data) return false;\n\n // return params.data[selectedModule.permissions[params.action] as string] === this.userId;\n }\n}\n","// Server-only utilities (NOT server actions - these cannot be called from client components)\n\nimport { ENV } from \"../core/env\";\nimport { JsonApiDataFactory } from \"../core/factories/JsonApiDataFactory\";\nimport { ApiRequestDataTypeInterface } from \"../core/interfaces/ApiRequestDataTypeInterface\";\nimport { ApiResponseInterface } from \"../core/interfaces/ApiResponseInterface\";\nimport { translateResponse } from \"../core/utils/translateResponse\";\nimport { ModuleWithPermissions } from \"../permissions/types\";\nimport { serverRequest } from \"./request\";\nimport { getServerToken } from \"./token\";\n\n// Config storage for server contexts\nlet _serverConfig: {\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 server client.\n * Call this in your Bootstrapper or server initialization.\n */\nexport function configureServerJsonApi(config: {\n apiUrl: string;\n appUrl?: string;\n trackablePages?: ModuleWithPermissions[];\n bootstrapper?: () => void;\n additionalHeaders?: Record<string, string>;\n}): void {\n _serverConfig = config;\n if (config.bootstrapper) {\n config.bootstrapper();\n }\n}\n\nexport function getServerApiUrl(): string {\n if (_serverConfig?.apiUrl) {\n return _serverConfig.apiUrl;\n }\n const envUrl = ENV.API_URL;\n if (!envUrl) {\n throw new Error(\n \"API URL not configured. Use configureServerJsonApi() or set NEXT_PUBLIC_API_URL environment variable.\",\n );\n }\n return envUrl;\n}\n\nexport function getServerAppUrl(): string {\n if (_serverConfig?.appUrl) {\n return _serverConfig.appUrl;\n }\n const envUrl = ENV.APP_URL;\n if (!envUrl) {\n throw new Error(\n \"App URL not configured. Use configureServerJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable.\",\n );\n }\n return envUrl.trim().replace(/\\/+$/, \"\");\n}\n\nexport function getServerTrackablePages(): ModuleWithPermissions[] {\n return _serverConfig?.trackablePages ?? [];\n}\n\nfunction runServerBootstrapper(): void {\n if (_serverConfig?.bootstrapper) {\n _serverConfig.bootstrapper();\n }\n}\n\nfunction buildServerUrl(endpoint: string): string {\n const apiUrl = getServerApiUrl();\n return endpoint.startsWith(\"http\") ? endpoint : `${apiUrl}${endpoint}`;\n}\n\nexport async function ServerJsonApiGet(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n const apiResponse = await serverRequest({\n method: \"GET\",\n url: buildServerUrl(params.endpoint),\n token,\n cache: params.classKey.cache,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.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 ServerJsonApiGet({\n classKey: params.classKey,\n endpoint,\n companyId: params.companyId,\n language: params.language,\n }),\n });\n}\n\nexport async function ServerJsonApiPost(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 runServerBootstrapper();\n const token = await getServerToken();\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 serverRequest({\n method: \"POST\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.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 ServerJsonApiPut(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 runServerBootstrapper();\n const token = await getServerToken();\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 serverRequest({\n method: \"PUT\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.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 ServerJsonApiPatch(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 runServerBootstrapper();\n const token = await getServerToken();\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 serverRequest({\n method: \"PATCH\",\n url: buildServerUrl(params.endpoint),\n token,\n body,\n files: params.files,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.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 ServerJsonApiDelete(params: {\n classKey: ApiRequestDataTypeInterface;\n endpoint: string;\n companyId?: string;\n language: string;\n responseType?: ApiRequestDataTypeInterface;\n}): Promise<ApiResponseInterface> {\n runServerBootstrapper();\n const token = await getServerToken();\n\n const apiResponse = await serverRequest({\n method: \"DELETE\",\n url: buildServerUrl(params.endpoint),\n token,\n companyId: params.companyId,\n language: params.language,\n additionalHeaders: _serverConfig?.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/server/index.js"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,uDAA6B;AAC7B;AACE;AACF,uDAA6B;AAC7B;AACE;AACF,uDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,uDAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;AAC7B,gCAA6B;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;AACF,u6CAAC","file":"/home/runner/work/nextjs-jsonapi/nextjs-jsonapi/dist/server/index.js"}
@@ -1,9 +1,23 @@
1
1
  import {
2
- getServerToken
3
- } from "../chunk-F5UNXZ3J.mjs";
2
+ ServerJsonApiDelete,
3
+ ServerJsonApiGet,
4
+ ServerJsonApiPatch,
5
+ ServerJsonApiPost,
6
+ ServerJsonApiPut,
7
+ ServerSession,
8
+ configureServerJsonApi,
9
+ getServerApiUrl,
10
+ getServerAppUrl,
11
+ getServerTrackablePages,
12
+ invalidateCacheTag,
13
+ invalidateCacheTags
14
+ } from "../chunk-7B4E42R5.mjs";
4
15
  import {
5
16
  serverRequest
6
17
  } from "../chunk-SJLXPHK5.mjs";
18
+ import {
19
+ getServerToken
20
+ } from "../chunk-F5UNXZ3J.mjs";
7
21
  import {
8
22
  AuthService,
9
23
  CompanyService,
@@ -13,266 +27,12 @@ import {
13
27
  PushService,
14
28
  RoleService,
15
29
  S3Service,
16
- UserService,
17
- checkPermissionsFromServer
18
- } from "../chunk-IBVKPLHT.mjs";
30
+ UserService
31
+ } from "../chunk-E3I4MT53.mjs";
32
+ import "../chunk-37DMFVLN.mjs";
19
33
  import "../chunk-AUXK7QSA.mjs";
20
34
  import "../chunk-PI56A4DG.mjs";
21
- import {
22
- ENV,
23
- JsonApiDataFactory,
24
- translateResponse
25
- } from "../chunk-T76WLDE5.mjs";
26
- import {
27
- __name
28
- } from "../chunk-PAWJFY3S.mjs";
29
-
30
- // src/server/cache.ts
31
- import { revalidateTag } from "next/cache";
32
- async function invalidateCacheTag(tag, profile = "max") {
33
- revalidateTag(tag, profile);
34
- }
35
- __name(invalidateCacheTag, "invalidateCacheTag");
36
- async function invalidateCacheTags(tags, profile = "max") {
37
- for (const tag of tags) {
38
- revalidateTag(tag, profile);
39
- }
40
- }
41
- __name(invalidateCacheTags, "invalidateCacheTags");
42
-
43
- // src/server/ServerSession.ts
44
- import { cookies } from "next/headers";
45
- import { redirect } from "next/navigation";
46
- import { ungzip } from "pako";
47
- var ServerSession = class {
48
- static {
49
- __name(this, "ServerSession");
50
- }
51
- static async isLogged() {
52
- const cookieStore = await cookies();
53
- const token = cookieStore.get("token");
54
- if (!token || !token.value) return false;
55
- return true;
56
- }
57
- static async companyId() {
58
- const cookieStore = await cookies();
59
- return cookieStore.get("companyId")?.value ?? "";
60
- }
61
- static async userId() {
62
- const cookieStore = await cookies();
63
- return cookieStore.get("userId")?.value ?? "";
64
- }
65
- static async checkPermission(params) {
66
- if (!await this.hasPermissionToModule(params)) redirect(`/401`);
67
- }
68
- static async hasRole(roleId) {
69
- const cookieStore = await cookies();
70
- const roles = cookieStore.get("roles")?.value;
71
- if (!roles || !roles.includes(roleId)) return false;
72
- return true;
73
- }
74
- static async hasFeature(featureId) {
75
- const cookieStore = await cookies();
76
- const features = cookieStore.get("features")?.value;
77
- if (!features || !features.includes(featureId)) return false;
78
- return true;
79
- }
80
- static async hasPermissionToModule(params) {
81
- const cookieStore = await cookies();
82
- if (params.module.feature) {
83
- const features = cookieStore.get("features")?.value;
84
- if (features && !features.includes(params.module.feature)) return false;
85
- }
86
- const rawModules = cookieStore.get("modules")?.value;
87
- if (!rawModules) return false;
88
- const modules = JSON.parse(ungzip(Buffer.from(rawModules, "base64"), { toText: true }));
89
- const selectedModule = modules.find((module) => module.id === params.module.moduleId);
90
- return checkPermissionsFromServer({
91
- module: params.module,
92
- action: params.action,
93
- data: params.data,
94
- userId: await this.userId(),
95
- selectedModule
96
- });
97
- }
98
- };
99
-
100
- // src/server/JsonApiServer.ts
101
- var _serverConfig = null;
102
- function configureServerJsonApi(config) {
103
- _serverConfig = config;
104
- if (config.bootstrapper) {
105
- config.bootstrapper();
106
- }
107
- }
108
- __name(configureServerJsonApi, "configureServerJsonApi");
109
- function getServerApiUrl() {
110
- if (_serverConfig?.apiUrl) {
111
- return _serverConfig.apiUrl;
112
- }
113
- const envUrl = ENV.API_URL;
114
- if (!envUrl) {
115
- throw new Error(
116
- "API URL not configured. Use configureServerJsonApi() or set NEXT_PUBLIC_API_URL environment variable."
117
- );
118
- }
119
- return envUrl;
120
- }
121
- __name(getServerApiUrl, "getServerApiUrl");
122
- function getServerAppUrl() {
123
- if (_serverConfig?.appUrl) {
124
- return _serverConfig.appUrl;
125
- }
126
- const envUrl = ENV.APP_URL;
127
- if (!envUrl) {
128
- throw new Error(
129
- "App URL not configured. Use configureServerJsonApi({ appUrl }) or set NEXT_PUBLIC_ADDRESS environment variable."
130
- );
131
- }
132
- return envUrl.trim().replace(/\/+$/, "");
133
- }
134
- __name(getServerAppUrl, "getServerAppUrl");
135
- function getServerTrackablePages() {
136
- return _serverConfig?.trackablePages ?? [];
137
- }
138
- __name(getServerTrackablePages, "getServerTrackablePages");
139
- function runServerBootstrapper() {
140
- if (_serverConfig?.bootstrapper) {
141
- _serverConfig.bootstrapper();
142
- }
143
- }
144
- __name(runServerBootstrapper, "runServerBootstrapper");
145
- function buildServerUrl(endpoint) {
146
- const apiUrl = getServerApiUrl();
147
- return endpoint.startsWith("http") ? endpoint : `${apiUrl}${endpoint}`;
148
- }
149
- __name(buildServerUrl, "buildServerUrl");
150
- async function ServerJsonApiGet(params) {
151
- runServerBootstrapper();
152
- const token = await getServerToken();
153
- const apiResponse = await serverRequest({
154
- method: "GET",
155
- url: buildServerUrl(params.endpoint),
156
- token,
157
- cache: params.classKey.cache,
158
- companyId: params.companyId,
159
- language: params.language,
160
- additionalHeaders: _serverConfig?.additionalHeaders
161
- });
162
- return translateResponse({
163
- classKey: params.classKey,
164
- apiResponse,
165
- companyId: params.companyId,
166
- language: params.language,
167
- paginationHandler: /* @__PURE__ */ __name(async (endpoint) => ServerJsonApiGet({
168
- classKey: params.classKey,
169
- endpoint,
170
- companyId: params.companyId,
171
- language: params.language
172
- }), "paginationHandler")
173
- });
174
- }
175
- __name(ServerJsonApiGet, "ServerJsonApiGet");
176
- async function ServerJsonApiPost(params) {
177
- runServerBootstrapper();
178
- const token = await getServerToken();
179
- let body = params.body;
180
- if (!body) {
181
- body = {};
182
- } else if (params.overridesJsonApiCreation !== true) {
183
- body = JsonApiDataFactory.create(params.classKey, body);
184
- }
185
- const apiResponse = await serverRequest({
186
- method: "POST",
187
- url: buildServerUrl(params.endpoint),
188
- token,
189
- body,
190
- files: params.files,
191
- companyId: params.companyId,
192
- language: params.language,
193
- additionalHeaders: _serverConfig?.additionalHeaders
194
- });
195
- return translateResponse({
196
- classKey: params.responseType ?? params.classKey,
197
- apiResponse,
198
- companyId: params.companyId,
199
- language: params.language
200
- });
201
- }
202
- __name(ServerJsonApiPost, "ServerJsonApiPost");
203
- async function ServerJsonApiPut(params) {
204
- runServerBootstrapper();
205
- const token = await getServerToken();
206
- let body = params.body;
207
- if (!body) {
208
- body = {};
209
- } else {
210
- body = JsonApiDataFactory.create(params.classKey, body);
211
- }
212
- const apiResponse = await serverRequest({
213
- method: "PUT",
214
- url: buildServerUrl(params.endpoint),
215
- token,
216
- body,
217
- files: params.files,
218
- companyId: params.companyId,
219
- language: params.language,
220
- additionalHeaders: _serverConfig?.additionalHeaders
221
- });
222
- return translateResponse({
223
- classKey: params.responseType ?? params.classKey,
224
- apiResponse,
225
- companyId: params.companyId,
226
- language: params.language
227
- });
228
- }
229
- __name(ServerJsonApiPut, "ServerJsonApiPut");
230
- async function ServerJsonApiPatch(params) {
231
- runServerBootstrapper();
232
- const token = await getServerToken();
233
- let body = params.body;
234
- if (!body) {
235
- body = {};
236
- } else if (params.overridesJsonApiCreation !== true) {
237
- body = JsonApiDataFactory.create(params.classKey, body);
238
- }
239
- const apiResponse = await serverRequest({
240
- method: "PATCH",
241
- url: buildServerUrl(params.endpoint),
242
- token,
243
- body,
244
- files: params.files,
245
- companyId: params.companyId,
246
- language: params.language,
247
- additionalHeaders: _serverConfig?.additionalHeaders
248
- });
249
- return translateResponse({
250
- classKey: params.responseType ?? params.classKey,
251
- apiResponse,
252
- companyId: params.companyId,
253
- language: params.language
254
- });
255
- }
256
- __name(ServerJsonApiPatch, "ServerJsonApiPatch");
257
- async function ServerJsonApiDelete(params) {
258
- runServerBootstrapper();
259
- const token = await getServerToken();
260
- const apiResponse = await serverRequest({
261
- method: "DELETE",
262
- url: buildServerUrl(params.endpoint),
263
- token,
264
- companyId: params.companyId,
265
- language: params.language,
266
- additionalHeaders: _serverConfig?.additionalHeaders
267
- });
268
- return translateResponse({
269
- classKey: params.responseType ?? params.classKey,
270
- apiResponse,
271
- companyId: params.companyId,
272
- language: params.language
273
- });
274
- }
275
- __name(ServerJsonApiDelete, "ServerJsonApiDelete");
35
+ import "../chunk-PAWJFY3S.mjs";
276
36
  export {
277
37
  AuthService as ServerAuthService,
278
38
  CompanyService as ServerCompanyService,