@opengis/fastify-table 2.3.5 → 2.4.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 (291) hide show
  1. package/dist/errors.d.ts +38 -0
  2. package/dist/errors.d.ts.map +1 -0
  3. package/dist/errors.js +10 -0
  4. package/dist/index.d.ts.map +1 -1
  5. package/dist/index.js +30 -9
  6. package/dist/server/plugins/access/funcs/getAdminAccess.d.ts +1 -4
  7. package/dist/server/plugins/access/funcs/getAdminAccess.d.ts.map +1 -1
  8. package/dist/server/plugins/access/funcs/getAdminAccess.js +3 -2
  9. package/dist/server/plugins/auth/funcs/getQuery.d.ts.map +1 -1
  10. package/dist/server/plugins/auth/funcs/getQuery.js +2 -1
  11. package/dist/server/plugins/auth/funcs/loginFile.d.ts +1 -4
  12. package/dist/server/plugins/auth/funcs/loginFile.d.ts.map +1 -1
  13. package/dist/server/plugins/auth/funcs/loginFile.js +10 -5
  14. package/dist/server/plugins/auth/funcs/loginUser.d.ts.map +1 -1
  15. package/dist/server/plugins/auth/funcs/loginUser.js +25 -18
  16. package/dist/server/plugins/auth/index.d.ts.map +1 -1
  17. package/dist/server/plugins/auth/index.js +3 -4
  18. package/dist/server/plugins/crud/funcs/dataInsert.js +1 -1
  19. package/dist/server/plugins/extra/extraData.d.ts.map +1 -1
  20. package/dist/server/plugins/extra/extraData.js +3 -2
  21. package/dist/server/plugins/extra/extraDataGet.d.ts +1 -4
  22. package/dist/server/plugins/extra/extraDataGet.d.ts.map +1 -1
  23. package/dist/server/plugins/extra/extraDataGet.js +4 -6
  24. package/dist/server/plugins/file/uploadMultiPart.js +1 -1
  25. package/dist/server/plugins/grpc/utils/html2doc.d.ts +0 -6
  26. package/dist/server/plugins/grpc/utils/html2doc.d.ts.map +1 -1
  27. package/dist/server/plugins/grpc/utils/html2doc.js +3 -8
  28. package/dist/server/plugins/grpc/utils/html2img.d.ts +0 -6
  29. package/dist/server/plugins/grpc/utils/html2img.d.ts.map +1 -1
  30. package/dist/server/plugins/grpc/utils/html2img.js +3 -8
  31. package/dist/server/plugins/grpc/utils/html2pdf.d.ts +0 -6
  32. package/dist/server/plugins/grpc/utils/html2pdf.d.ts.map +1 -1
  33. package/dist/server/plugins/grpc/utils/html2pdf.js +7 -12
  34. package/dist/server/plugins/grpc/utils/mergePdf.d.ts +0 -7
  35. package/dist/server/plugins/grpc/utils/mergePdf.d.ts.map +1 -1
  36. package/dist/server/plugins/grpc/utils/mergePdf.js +4 -9
  37. package/dist/server/plugins/logger/checkUserAccess.d.ts +1 -4
  38. package/dist/server/plugins/logger/checkUserAccess.d.ts.map +1 -1
  39. package/dist/server/plugins/logger/checkUserAccess.js +4 -6
  40. package/dist/server/plugins/logger/errorMessage.d.ts +1 -1
  41. package/dist/server/plugins/logger/errorMessage.d.ts.map +1 -1
  42. package/dist/server/plugins/logger/errorMessage.js +7 -8
  43. package/dist/server/plugins/logger/errorStatus.d.ts.map +1 -1
  44. package/dist/server/plugins/logger/errorStatus.js +6 -0
  45. package/dist/server/plugins/logger/index.d.ts +2 -2
  46. package/dist/server/plugins/logger/index.d.ts.map +1 -1
  47. package/dist/server/plugins/logger/index.js +16 -18
  48. package/dist/server/plugins/pg/funcs/getMeta.d.ts.map +1 -1
  49. package/dist/server/plugins/pg/funcs/getMeta.js +5 -3
  50. package/dist/server/plugins/policy/funcs/checkJWT.d.ts +0 -9
  51. package/dist/server/plugins/policy/funcs/checkJWT.d.ts.map +1 -1
  52. package/dist/server/plugins/policy/funcs/checkJWT.js +6 -5
  53. package/dist/server/plugins/policy/funcs/checkPermissions.d.ts +1 -4
  54. package/dist/server/plugins/policy/funcs/checkPermissions.d.ts.map +1 -1
  55. package/dist/server/plugins/policy/funcs/checkPermissions.js +2 -1
  56. package/dist/server/plugins/policy/funcs/checkPolicy.d.ts +1 -4
  57. package/dist/server/plugins/policy/funcs/checkPolicy.d.ts.map +1 -1
  58. package/dist/server/plugins/policy/funcs/checkPolicy.js +8 -7
  59. package/dist/server/plugins/policy/index.d.ts.map +1 -1
  60. package/dist/server/plugins/policy/index.js +2 -11
  61. package/dist/server/plugins/table/funcs/getFilterSQL/index.d.ts +1 -15
  62. package/dist/server/plugins/table/funcs/getFilterSQL/index.d.ts.map +1 -1
  63. package/dist/server/plugins/table/funcs/getFilterSQL/index.js +6 -4
  64. package/dist/server/plugins/table/funcs/gisIRColumn.d.ts +0 -22
  65. package/dist/server/plugins/table/funcs/gisIRColumn.d.ts.map +1 -1
  66. package/dist/server/plugins/table/funcs/gisIRColumn.js +5 -3
  67. package/dist/server/plugins/upload/index.d.ts.map +1 -1
  68. package/dist/server/plugins/upload/index.js +7 -0
  69. package/dist/server/plugins/upload/s3.d.ts +7 -1
  70. package/dist/server/plugins/upload/s3.d.ts.map +1 -1
  71. package/dist/server/plugins/upload/s3.js +54 -10
  72. package/dist/server/plugins/upload/s3minio.d.ts +59 -0
  73. package/dist/server/plugins/upload/s3minio.d.ts.map +1 -0
  74. package/dist/server/plugins/upload/s3minio.js +199 -0
  75. package/dist/server/plugins/upload/startUpload.d.ts.map +1 -1
  76. package/dist/server/plugins/upload/startUpload.js +16 -8
  77. package/dist/server/plugins/upload/uploadChunk.d.ts.map +1 -1
  78. package/dist/server/plugins/upload/uploadChunk.js +14 -9
  79. package/dist/server/plugins/usercls/index.js +1 -1
  80. package/dist/server/routes/access/controllers/access.group.d.ts.map +1 -1
  81. package/dist/server/routes/access/controllers/access.group.js +3 -5
  82. package/dist/server/routes/access/controllers/access.group.post.d.ts.map +1 -1
  83. package/dist/server/routes/access/controllers/access.group.post.js +3 -5
  84. package/dist/server/routes/access/controllers/access.interface.d.ts.map +1 -1
  85. package/dist/server/routes/access/controllers/access.interface.js +1 -4
  86. package/dist/server/routes/access/controllers/access.user.d.ts +5 -1
  87. package/dist/server/routes/access/controllers/access.user.d.ts.map +1 -1
  88. package/dist/server/routes/access/controllers/access.user.js +4 -5
  89. package/dist/server/routes/access/controllers/access.user.post.d.ts.map +1 -1
  90. package/dist/server/routes/access/controllers/access.user.post.js +4 -5
  91. package/dist/server/routes/access/index.d.ts.map +1 -1
  92. package/dist/server/routes/access/index.js +10 -6
  93. package/dist/server/routes/auth/controllers/2factor/providers/totp.d.ts.map +1 -1
  94. package/dist/server/routes/auth/controllers/2factor/providers/totp.js +4 -3
  95. package/dist/server/routes/auth/controllers/2factor/qrcode.d.ts.map +1 -1
  96. package/dist/server/routes/auth/controllers/2factor/qrcode.js +6 -10
  97. package/dist/server/routes/auth/controllers/2factor/recovery.d.ts.map +1 -1
  98. package/dist/server/routes/auth/controllers/2factor/recovery.js +14 -23
  99. package/dist/server/routes/auth/controllers/2factor/reset.d.ts.map +1 -1
  100. package/dist/server/routes/auth/controllers/2factor/reset.js +3 -5
  101. package/dist/server/routes/auth/controllers/2factor/verify.d.ts.map +1 -1
  102. package/dist/server/routes/auth/controllers/2factor/verify.js +30 -43
  103. package/dist/server/routes/auth/controllers/core/login.d.ts +1 -4
  104. package/dist/server/routes/auth/controllers/core/login.d.ts.map +1 -1
  105. package/dist/server/routes/auth/controllers/core/passwordRecovery.d.ts.map +1 -1
  106. package/dist/server/routes/auth/controllers/core/passwordRecovery.js +7 -8
  107. package/dist/server/routes/auth/controllers/core/registration.d.ts +1 -4
  108. package/dist/server/routes/auth/controllers/core/registration.d.ts.map +1 -1
  109. package/dist/server/routes/auth/controllers/core/registration.js +10 -24
  110. package/dist/server/routes/auth/controllers/core/updateUserInfo.d.ts +1 -2
  111. package/dist/server/routes/auth/controllers/core/updateUserInfo.d.ts.map +1 -1
  112. package/dist/server/routes/auth/controllers/core/updateUserInfo.js +3 -2
  113. package/dist/server/routes/auth/controllers/euSign/authByData.d.ts.map +1 -1
  114. package/dist/server/routes/auth/controllers/euSign/authByData.js +4 -7
  115. package/dist/server/routes/auth/controllers/jwt/authorize.d.ts.map +1 -1
  116. package/dist/server/routes/auth/controllers/jwt/authorize.js +6 -9
  117. package/dist/server/routes/auth/controllers/jwt/token.d.ts.map +1 -1
  118. package/dist/server/routes/auth/controllers/jwt/token.js +9 -12
  119. package/dist/server/routes/auth/controllers/page/login2faTemplate.d.ts.map +1 -1
  120. package/dist/server/routes/auth/controllers/page/login2faTemplate.js +3 -2
  121. package/dist/server/routes/auth/index.d.ts +1 -2
  122. package/dist/server/routes/auth/index.d.ts.map +1 -1
  123. package/dist/server/routes/auth/index.js +4 -3
  124. package/dist/server/routes/cron/controllers/cronApi.d.ts.map +1 -1
  125. package/dist/server/routes/cron/controllers/cronApi.js +3 -4
  126. package/dist/server/routes/cron/index.js +1 -1
  127. package/dist/server/routes/crud/controllers/deleteCrud.d.ts.map +1 -1
  128. package/dist/server/routes/crud/controllers/deleteCrud.js +11 -33
  129. package/dist/server/routes/crud/controllers/insert.d.ts +1 -1
  130. package/dist/server/routes/crud/controllers/insert.d.ts.map +1 -1
  131. package/dist/server/routes/crud/controllers/insert.js +17 -31
  132. package/dist/server/routes/crud/controllers/table.d.ts.map +1 -1
  133. package/dist/server/routes/crud/controllers/table.js +14 -18
  134. package/dist/server/routes/crud/controllers/update.d.ts.map +1 -1
  135. package/dist/server/routes/crud/controllers/update.js +16 -28
  136. package/dist/server/routes/crud/index.d.ts.map +1 -1
  137. package/dist/server/routes/crud/index.js +14 -4
  138. package/dist/server/routes/dblist/controllers/setItem.d.ts +0 -6
  139. package/dist/server/routes/dblist/controllers/setItem.d.ts.map +1 -1
  140. package/dist/server/routes/dblist/controllers/setItem.js +3 -2
  141. package/dist/server/routes/dblist/index.d.ts.map +1 -1
  142. package/dist/server/routes/dblist/index.js +5 -3
  143. package/dist/server/routes/file/controllers/delete.d.ts +4 -1
  144. package/dist/server/routes/file/controllers/delete.d.ts.map +1 -1
  145. package/dist/server/routes/file/controllers/delete.js +8 -8
  146. package/dist/server/routes/file/controllers/download.d.ts.map +1 -1
  147. package/dist/server/routes/file/controllers/download.js +5 -8
  148. package/dist/server/routes/file/controllers/export.d.ts.map +1 -1
  149. package/dist/server/routes/file/controllers/export.js +8 -8
  150. package/dist/server/routes/file/controllers/files.d.ts.map +1 -1
  151. package/dist/server/routes/file/controllers/files.js +6 -8
  152. package/dist/server/routes/file/controllers/resize.d.ts.map +1 -1
  153. package/dist/server/routes/file/controllers/resize.js +4 -12
  154. package/dist/server/routes/file/index.d.ts.map +1 -1
  155. package/dist/server/routes/file/index.js +10 -7
  156. package/dist/server/routes/grpc/controllers/file2geojson.d.ts.map +1 -1
  157. package/dist/server/routes/grpc/controllers/file2geojson.js +7 -7
  158. package/dist/server/routes/grpc/controllers/filePreview.d.ts.map +1 -1
  159. package/dist/server/routes/grpc/controllers/filePreview.js +5 -4
  160. package/dist/server/routes/grpc/index.d.ts.map +1 -1
  161. package/dist/server/routes/grpc/index.js +3 -2
  162. package/dist/server/routes/logger/controllers/logger.file.d.ts +1 -1
  163. package/dist/server/routes/logger/controllers/logger.file.d.ts.map +1 -1
  164. package/dist/server/routes/logger/controllers/logger.file.js +4 -5
  165. package/dist/server/routes/logger/controllers/logger.metrics.d.ts.map +1 -1
  166. package/dist/server/routes/logger/controllers/logger.metrics.js +1 -4
  167. package/dist/server/routes/logger/index.d.ts.map +1 -1
  168. package/dist/server/routes/logger/index.js +4 -2
  169. package/dist/server/routes/menu/controllers/getMenu.d.ts.map +1 -1
  170. package/dist/server/routes/menu/controllers/getMenu.js +2 -1
  171. package/dist/server/routes/menu/index.d.ts.map +1 -1
  172. package/dist/server/routes/menu/index.js +9 -2
  173. package/dist/server/routes/notifications/controllers/addUserNotification.d.ts +1 -2
  174. package/dist/server/routes/notifications/controllers/addUserNotification.d.ts.map +1 -1
  175. package/dist/server/routes/notifications/controllers/addUserNotification.js +5 -6
  176. package/dist/server/routes/notifications/controllers/deleteUserNotification.d.ts +1 -2
  177. package/dist/server/routes/notifications/controllers/deleteUserNotification.d.ts.map +1 -1
  178. package/dist/server/routes/notifications/controllers/deleteUserNotification.js +5 -6
  179. package/dist/server/routes/notifications/controllers/editUserNotification.d.ts +1 -2
  180. package/dist/server/routes/notifications/controllers/editUserNotification.d.ts.map +1 -1
  181. package/dist/server/routes/notifications/controllers/editUserNotification.js +6 -9
  182. package/dist/server/routes/notifications/controllers/readNotifications.d.ts +4 -2
  183. package/dist/server/routes/notifications/controllers/readNotifications.d.ts.map +1 -1
  184. package/dist/server/routes/notifications/controllers/readNotifications.js +4 -3
  185. package/dist/server/routes/notifications/controllers/userNotifications.d.ts +5 -2
  186. package/dist/server/routes/notifications/controllers/userNotifications.d.ts.map +1 -1
  187. package/dist/server/routes/notifications/controllers/userNotifications.js +4 -5
  188. package/dist/server/routes/notifications/index.d.ts +1 -2
  189. package/dist/server/routes/notifications/index.d.ts.map +1 -1
  190. package/dist/server/routes/notifications/index.js +3 -1
  191. package/dist/server/routes/properties/controllers/properties.get.d.ts +5 -2
  192. package/dist/server/routes/properties/controllers/properties.get.d.ts.map +1 -1
  193. package/dist/server/routes/properties/controllers/properties.get.js +6 -5
  194. package/dist/server/routes/properties/controllers/properties.post.d.ts +1 -1
  195. package/dist/server/routes/properties/controllers/properties.post.d.ts.map +1 -1
  196. package/dist/server/routes/properties/controllers/properties.post.js +7 -6
  197. package/dist/server/routes/properties/index.d.ts.map +1 -1
  198. package/dist/server/routes/properties/index.js +4 -7
  199. package/dist/server/routes/table/controllers/card.d.ts +1 -1
  200. package/dist/server/routes/table/controllers/card.d.ts.map +1 -1
  201. package/dist/server/routes/table/controllers/card.js +9 -7
  202. package/dist/server/routes/table/controllers/cardData.d.ts.map +1 -1
  203. package/dist/server/routes/table/controllers/cardData.js +4 -6
  204. package/dist/server/routes/table/controllers/cardTabData.d.ts.map +1 -1
  205. package/dist/server/routes/table/controllers/cardTabData.js +3 -2
  206. package/dist/server/routes/table/controllers/dataInfo.d.ts.map +1 -1
  207. package/dist/server/routes/table/controllers/dataInfo.js +4 -3
  208. package/dist/server/routes/table/controllers/filter.d.ts.map +1 -1
  209. package/dist/server/routes/table/controllers/filter.js +3 -2
  210. package/dist/server/routes/table/controllers/form.d.ts +1 -1
  211. package/dist/server/routes/table/controllers/form.d.ts.map +1 -1
  212. package/dist/server/routes/table/controllers/form.js +7 -5
  213. package/dist/server/routes/table/controllers/getFormByTable.d.ts.map +1 -1
  214. package/dist/server/routes/table/controllers/getFormByTable.js +12 -12
  215. package/dist/server/routes/table/controllers/suggest.d.ts +1 -1
  216. package/dist/server/routes/table/controllers/suggest.d.ts.map +1 -1
  217. package/dist/server/routes/table/controllers/suggest.js +14 -29
  218. package/dist/server/routes/table/controllers/tableInfo.d.ts +1 -2
  219. package/dist/server/routes/table/controllers/tableInfo.d.ts.map +1 -1
  220. package/dist/server/routes/table/controllers/tableInfo.js +9 -8
  221. package/dist/server/routes/table/controllers/tokenInfo.d.ts.map +1 -1
  222. package/dist/server/routes/table/controllers/tokenInfo.js +2 -1
  223. package/dist/server/routes/table/functions/getData.d.ts.map +1 -1
  224. package/dist/server/routes/table/functions/getData.js +19 -25
  225. package/dist/server/routes/table/index.d.ts.map +1 -1
  226. package/dist/server/routes/table/index.js +15 -13
  227. package/dist/server/routes/templates/controllers/getTemplate.d.ts.map +1 -1
  228. package/dist/server/routes/templates/controllers/getTemplate.js +9 -5
  229. package/dist/server/routes/templates/index.d.ts.map +1 -1
  230. package/dist/server/routes/templates/index.js +2 -1
  231. package/dist/server/routes/upload/index.d.ts.map +1 -1
  232. package/dist/server/routes/upload/index.js +31 -20
  233. package/dist/server/routes/usercls/controllers/addUserCls.d.ts.map +1 -1
  234. package/dist/server/routes/usercls/controllers/addUserCls.js +2 -1
  235. package/dist/server/routes/usercls/controllers/deleteUserCls.d.ts.map +1 -1
  236. package/dist/server/routes/usercls/controllers/deleteUserCls.js +2 -1
  237. package/dist/server/routes/usercls/controllers/editUserCls.d.ts.map +1 -1
  238. package/dist/server/routes/usercls/controllers/editUserCls.js +2 -1
  239. package/dist/server/routes/usercls/controllers/getUserCls.d.ts +1 -1
  240. package/dist/server/routes/usercls/controllers/getUserCls.d.ts.map +1 -1
  241. package/dist/server/routes/usercls/controllers/getUserCls.js +4 -3
  242. package/dist/server/routes/usercls/index.d.ts.map +1 -1
  243. package/dist/server/routes/usercls/index.js +12 -5
  244. package/dist/server/routes/util/controllers/api.list.d.ts +19 -0
  245. package/dist/server/routes/util/controllers/api.list.d.ts.map +1 -0
  246. package/dist/server/routes/util/controllers/api.list.js +58 -0
  247. package/dist/server/routes/util/controllers/code.generator.d.ts.map +1 -1
  248. package/dist/server/routes/util/controllers/code.generator.js +7 -6
  249. package/dist/server/routes/util/controllers/user.tokens.d.ts +1 -2
  250. package/dist/server/routes/util/controllers/user.tokens.d.ts.map +1 -1
  251. package/dist/server/routes/util/controllers/user.tokens.js +6 -5
  252. package/dist/server/routes/util/index.d.ts.map +1 -1
  253. package/dist/server/routes/util/index.js +8 -7
  254. package/dist/server/routes/widget/controllers/file.edit.d.ts.map +1 -1
  255. package/dist/server/routes/widget/controllers/file.edit.js +5 -4
  256. package/dist/server/routes/widget/controllers/widget.del.d.ts.map +1 -1
  257. package/dist/server/routes/widget/controllers/widget.del.js +6 -7
  258. package/dist/server/routes/widget/controllers/widget.get.d.ts.map +1 -1
  259. package/dist/server/routes/widget/controllers/widget.get.js +4 -3
  260. package/dist/server/routes/widget/controllers/widget.set.d.ts.map +1 -1
  261. package/dist/server/routes/widget/controllers/widget.set.js +5 -4
  262. package/dist/server/routes/widget/index.d.ts.map +1 -1
  263. package/dist/server/routes/widget/index.js +3 -2
  264. package/package.json +3 -1
  265. package/dist/module/core/cls/constraint_type.json +0 -14
  266. package/dist/module/core/cls/constraint_type_table.json +0 -18
  267. package/dist/server/migrations/oauth.sql.sql +0 -77
  268. package/dist/server/plugins/auth/funcs/getUserPermissions.d.ts +0 -2
  269. package/dist/server/plugins/auth/funcs/getUserPermissions.d.ts.map +0 -1
  270. package/dist/server/plugins/auth/funcs/getUserPermissions.js +0 -24
  271. package/dist/server/plugins/auth/onRequest.d.ts +0 -4
  272. package/dist/server/plugins/auth/onRequest.d.ts.map +0 -1
  273. package/dist/server/plugins/auth/onRequest.js +0 -104
  274. package/dist/server/plugins/migration/index.d.ts +0 -3
  275. package/dist/server/plugins/migration/index.d.ts.map +0 -1
  276. package/dist/server/plugins/migration/index.js +0 -5
  277. package/dist/server/plugins/policy/funcs/checkAuth.d.ts +0 -4
  278. package/dist/server/plugins/policy/funcs/checkAuth.d.ts.map +0 -1
  279. package/dist/server/plugins/policy/funcs/checkAuth.js +0 -104
  280. package/dist/server/routes/access/controllers/access.resources.d.ts +0 -6
  281. package/dist/server/routes/access/controllers/access.resources.d.ts.map +0 -1
  282. package/dist/server/routes/access/controllers/access.resources.js +0 -14
  283. package/dist/server/routes/access/controllers/resources.d.ts +0 -11
  284. package/dist/server/routes/access/controllers/resources.d.ts.map +0 -1
  285. package/dist/server/routes/access/controllers/resources.js +0 -14
  286. package/dist/server/routes/access/functions/resources.d.ts +0 -6
  287. package/dist/server/routes/access/functions/resources.d.ts.map +0 -1
  288. package/dist/server/routes/access/functions/resources.js +0 -11
  289. package/dist/server/types/errors.d.ts +0 -14
  290. package/dist/server/types/errors.d.ts.map +0 -1
  291. package/dist/server/types/errors.js +0 -4
@@ -4,6 +4,7 @@ import widgetSet from "./controllers/widget.set.js";
4
4
  import widgetGet from "./controllers/widget.get.js";
5
5
  import fileEdit from "./controllers/file.edit.js";
6
6
  import onWidgetSet from "./hook/onWidgetSet.js";
7
+ const tags = ["core", "widget"];
7
8
  const tableSchema = {
8
9
  params: {
9
10
  type: "object",
@@ -32,10 +33,10 @@ const tableSchema = {
32
33
  };
33
34
  addHook("onWidgetSet", onWidgetSet);
34
35
  const policy = "L0";
35
- const params = { config: { policy }, schema: tableSchema };
36
+ const params = { config: { tags, policy }, schema: tableSchema };
36
37
  export default function route(app, opt = {}) {
37
38
  app.delete("/widget/:type/:objectid/:id", params, widgetDel);
38
39
  app.post("/widget/:type/:objectid/:id?", params, widgetSet);
39
40
  app.put("/file-edit/:id", params, fileEdit);
40
- app.get("/widget/:type/:objectid", { config: { policy }, schema: tableSchema }, widgetGet);
41
+ app.get("/widget/:type/:objectid", params, widgetGet);
41
42
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opengis/fastify-table",
3
- "version": "2.3.5",
3
+ "version": "2.4.0",
4
4
  "type": "module",
5
5
  "description": "core-plugins",
6
6
  "keywords": [
@@ -15,6 +15,7 @@
15
15
  "exports": {
16
16
  ".": "./dist/index.js",
17
17
  "./index.js": "./dist/index.js",
18
+ "./errors.js": "./dist/errors.js",
18
19
  "./utils.js": "./dist/utils.js",
19
20
  "./package.json": "./package.json"
20
21
  },
@@ -62,6 +63,7 @@
62
63
  "ioredis": "5.10.1",
63
64
  "js-yaml": "4.1.1",
64
65
  "markdown-it": "14.1.1",
66
+ "minio": "^8.0.7",
65
67
  "nodemailer": "8.0.4",
66
68
  "otplib": "13.4.0",
67
69
  "pg": "8.20.0",
@@ -1,14 +0,0 @@
1
- [
2
- {
3
- "id": "u",
4
- "text": "UK"
5
- },
6
- {
7
- "id": "p",
8
- "text": "PK"
9
- },
10
- {
11
- "id": "f",
12
- "text": "FK"
13
- }
14
- ]
@@ -1,18 +0,0 @@
1
- [
2
- {
3
- "id": "u",
4
- "text": "UK"
5
- },
6
- {
7
- "id": "p",
8
- "text": "PK"
9
- },
10
- {
11
- "id": "f",
12
- "text": "FK"
13
- },
14
- {
15
- "id": "c",
16
- "text": "CHECK"
17
- }
18
- ]
@@ -1,77 +0,0 @@
1
- CREATE schema if not exists oauth;
2
-
3
- CREATE TABLE if not exists oauth.clients (
4
- client_id text PRIMARY KEY DEFAULT next_id(), -- ID клієнта (публічний ідентифікатор)
5
- client_secret_hash text, -- Хеш секрету (NULL для public-клієнтів)
6
- name text NOT NULL, -- Назва застосунку
7
- type text NOT NULL CHECK (type IN ('public','confidential')),
8
- token_endpoint_auth_method text NOT NULL CHECK (token_endpoint_auth_method IN ('client_secret_basic','client_secret_post','private_key_jwt','none')),
9
- owner_user_id text, -- Власник/адміністратор клієнта (посилання на users.id or other id)
10
-
11
- redirect_uris text[], -- Дозволені redirect_uri
12
- grant_types text[] CHECK (case when grant_types is not null then grant_types <@ ARRAY['authorization_code','refresh_token','client_credentials','device_code']::text[] else true end),
13
- require_pkce boolean NOT NULL DEFAULT true,
14
- scopes text[],
15
- allowed_cors_origins text[],
16
- jwks jsonb, -- Вбудований JWK Set (опційно)
17
-
18
- created_at timestamptz NOT NULL DEFAULT now(),
19
- updated_at timestamptz NOT NULL DEFAULT now()
20
- );
21
-
22
- CREATE TABLE if not exists oauth.tokens (
23
- id text PRIMARY KEY DEFAULT next_id(),
24
- token_type text NOT NULL CHECK (token_type IN ('access','refresh')),
25
- token_hash text NOT NULL UNIQUE, -- Argon2/bcrypt/SCrypt (хеш у застосунку)
26
- token_hint text, -- останні 6-8 символів для діагностики (необов’язково)
27
- jti text UNIQUE, -- JWT ID, якщо токен — JWT
28
- client_id text NOT NULL REFERENCES oauth.clients(client_id) ON DELETE CASCADE,
29
- user_id text, -- NULL для client_credentials
30
- issuer text, -- iss
31
- scopes text[],
32
- claims jsonb, -- додаткові клейми
33
- issued_at timestamptz NOT NULL DEFAULT now(),
34
- expires_at timestamptz NOT NULL,
35
- revoked_at timestamptz,
36
- revocation_reason text,
37
- ip inet -- IP видачі/використання (опційно)
38
- );
39
-
40
- COMMENT ON SCHEMA oauth IS 'Schema for OAuth2 / OpenID Connect clients and tokens';
41
-
42
- -- Comments for oauth.clients
43
- COMMENT ON TABLE oauth.clients IS 'OAuth 2.0 clients (applications) that can request tokens';
44
-
45
- COMMENT ON COLUMN oauth.clients.client_id IS 'Client identifier (public ID, generated by next_id())';
46
- COMMENT ON COLUMN oauth.clients.client_secret_hash IS 'Hashed client secret (NULL for public clients)';
47
- COMMENT ON COLUMN oauth.clients.name IS 'Name of the application/client';
48
- COMMENT ON COLUMN oauth.clients.type IS 'Client type: public or confidential';
49
- COMMENT ON COLUMN oauth.clients.token_endpoint_auth_method IS 'Authentication method at token endpoint (client_secret_basic, client_secret_post, private_key_jwt, none)';
50
- COMMENT ON COLUMN oauth.clients.owner_user_id IS 'Owner/administrator of the client (reference to users.id or external id)';
51
- COMMENT ON COLUMN oauth.clients.redirect_uris IS 'Allowed redirect URIs';
52
- COMMENT ON COLUMN oauth.clients.grant_types IS 'Allowed grant types (authorization_code, refresh_token, client_credentials, device_code)';
53
- COMMENT ON COLUMN oauth.clients.require_pkce IS 'Whether PKCE is required (default true)';
54
- COMMENT ON COLUMN oauth.clients.scopes IS 'Allowed OAuth2 scopes';
55
- COMMENT ON COLUMN oauth.clients.allowed_cors_origins IS 'Allowed CORS origins for browser-based apps';
56
- COMMENT ON COLUMN oauth.clients.jwks IS 'Embedded JSON Web Key Set (optional)';
57
- COMMENT ON COLUMN oauth.clients.created_at IS 'Creation timestamp';
58
- COMMENT ON COLUMN oauth.clients.updated_at IS 'Last update timestamp';
59
-
60
- -- Comments for oauth.tokens
61
- COMMENT ON TABLE oauth.tokens IS 'Issued OAuth 2.0 tokens (access or refresh)';
62
-
63
- COMMENT ON COLUMN oauth.tokens.id IS 'Internal token ID (generated by next_id())';
64
- COMMENT ON COLUMN oauth.tokens.token_type IS 'Type of token: access or refresh';
65
- COMMENT ON COLUMN oauth.tokens.token_hash IS 'Secure hash of the token (Argon2/bcrypt/SCrypt)';
66
- COMMENT ON COLUMN oauth.tokens.token_hint IS 'Optional hint (last 6–8 characters of token) for diagnostics';
67
- COMMENT ON COLUMN oauth.tokens.jti IS 'JWT ID if token is a JWT (unique)';
68
- COMMENT ON COLUMN oauth.tokens.client_id IS 'Reference to oauth.clients (issuing client)';
69
- COMMENT ON COLUMN oauth.tokens.user_id IS 'User ID if bound to user (NULL for client_credentials flow)';
70
- COMMENT ON COLUMN oauth.tokens.issuer IS 'Token issuer (iss claim)';
71
- COMMENT ON COLUMN oauth.tokens.scopes IS 'Granted OAuth2 scopes for this token';
72
- COMMENT ON COLUMN oauth.tokens.claims IS 'Additional claims (JSONB)';
73
- COMMENT ON COLUMN oauth.tokens.issued_at IS 'Timestamp when issued';
74
- COMMENT ON COLUMN oauth.tokens.expires_at IS 'Timestamp when token expires';
75
- COMMENT ON COLUMN oauth.tokens.revoked_at IS 'Timestamp when revoked';
76
- COMMENT ON COLUMN oauth.tokens.revocation_reason IS 'Reason for revocation (if any)';
77
- COMMENT ON COLUMN oauth.tokens.ip IS 'IP address of issuance/usage (optional)';
@@ -1,2 +0,0 @@
1
- export default function getUserPermissions(uid?: string, pg?: any): Promise<any>;
2
- //# sourceMappingURL=getUserPermissions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"getUserPermissions.d.ts","sourceRoot":"","sources":["../../../../../server/plugins/auth/funcs/getUserPermissions.ts"],"names":[],"mappings":"AAUA,wBAA8B,kBAAkB,CAC9C,GAAG,CAAC,EAAE,MAAM,EACZ,EAAE,MAAmB,gBAoBtB"}
@@ -1,24 +0,0 @@
1
- import pgClients from "../../pg/pgClients.js";
2
- const q = `select resource_id as name,
3
- array_intersect(coalesce(a.actions, array['read']), coalesce(c.actions, array['create', 'read','update','delete'])) as actions,
4
- b.name as role
5
- from admin.role_access a
6
- left join admin.roles b on a.role_id=b.role_id and b.enabled
7
- left join admin.user_roles c on a.role_id=c.role_id
8
- where resource_id is not null and $1 in (a.user_uid, c.user_uid)`;
9
- export default async function getUserPermissions(uid, pg = pgClients.client) {
10
- if (!uid)
11
- return [];
12
- // ? in case pg.pk not set yet
13
- const pks = await pg
14
- .query(`SELECT json_object_agg(conrelid::regclass, (SELECT attname FROM pg_attribute WHERE attrelid = c.conrelid AND attnum = c.conkey[1]) )
15
- FROM pg_constraint c WHERE contype = 'p' AND connamespace::regnamespace::text = 'admin'`)
16
- .then((el) => el.rows?.[0]?.json_object_agg || {});
17
- const permissions = pks["admin.role_access"] &&
18
- pks["admin.user_roles"] &&
19
- pks["admin.users"] &&
20
- uid
21
- ? await pg.query(q, [uid]).then((el) => el.rows || [])
22
- : [];
23
- return permissions;
24
- }
@@ -1,4 +0,0 @@
1
- import { FastifyReply } from "fastify";
2
- import { ExtendedRequest } from "../../types/core.js";
3
- export default function onRequest(req: ExtendedRequest, reply: FastifyReply): Promise<null>;
4
- //# sourceMappingURL=onRequest.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"onRequest.d.ts","sourceRoot":"","sources":["../../../../server/plugins/auth/onRequest.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAMvC,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAItD,wBAA8B,SAAS,CACrC,GAAG,EAAE,eAAe,EACpB,KAAK,EAAE,YAAY,iBA+HpB"}
@@ -1,104 +0,0 @@
1
- import { existsSync } from "node:fs";
2
- import config from "../../../config.js";
3
- const { prefix = "/api" } = config;
4
- export default async function onRequest(req, reply) {
5
- const { hostname, headers, routeOptions } = req;
6
- const { config: routeConfig, method, handler, url } = routeOptions || {};
7
- const { policy } = routeConfig || {};
8
- const isApi = method && url && typeof handler === "function" && url !== "*";
9
- // handle non-api at vite/vike
10
- if (!isApi) {
11
- return null;
12
- }
13
- // proxy from old apps to editor, bi etc.
14
- const validToken = (req.ip === "193.239.152.181" ||
15
- req.ip === "127.0.0.1" ||
16
- req.ip?.startsWith?.("192.168.") ||
17
- config.debug) &&
18
- req.headers?.token &&
19
- config.auth?.tokens?.includes?.(headers.token);
20
- if (validToken && !req?.user?.uid) {
21
- req.user = {
22
- uid: req.headers?.uid?.toString?.(),
23
- user_type: req.headers?.user_type?.toString?.() || "regular",
24
- };
25
- }
26
- const isAdmin = process.env.NODE_ENV === "admin" ||
27
- hostname?.split?.(":")?.shift?.() === config.adminDomain ||
28
- config.admin ||
29
- hostname?.startsWith?.("admin");
30
- const isPublic = Array.isArray(policy)
31
- ? policy.includes("public")
32
- : policy === "L0";
33
- if (req.cookies?.["session_auth"] &&
34
- !req.session?.passport?.user?.uid &&
35
- (config.auth?.disable || config.auth?.user)) {
36
- req.session = req.session || {};
37
- req.session.passport = req.session.passport || {}; // ensure passport session exists
38
- req.session.passport.user = {
39
- ...(config.auth?.user || {}),
40
- uid: config.auth?.user?.uid?.toString?.() || "1",
41
- user_rnokpp: config.auth?.user?.rnokpp,
42
- user_type: config.auth?.user?.type || "regular",
43
- };
44
- req.user = req.session.passport.user;
45
- }
46
- // ! intentional: null || undefined > undefined
47
- req.user = req.user || req.session?.passport?.user || undefined; // fix for user.uid errors, by default user is null, while with express passport it was {}, unauthorized user does not trigger serializer
48
- // currently 2factor + auth with passwd file not supported
49
- const ispasswd = (existsSync("passwd") && !config.auth?.["2factor"]) || config.auth?.passwd;
50
- const loginPageUrl = config.auth?.link?.core?.login || config?.auth?.redirect || "/login";
51
- if (!req.user?.uid &&
52
- !config.auth?.disable &&
53
- isAdmin &&
54
- !isPublic &&
55
- !config.auth?.disableRedirect &&
56
- !req.url.startsWith(prefix) &&
57
- !req.url.startsWith("/api") &&
58
- !req.url.includes(loginPageUrl) &&
59
- !req.url.includes(".") &&
60
- !req.url.includes("@")) {
61
- if (isApi) {
62
- return reply.status(401).send({ error: "unauthorized", code: 401 });
63
- }
64
- return reply.redirect(`${loginPageUrl}` + `?redirect=${req.url}`);
65
- }
66
- // by default, disable 2factor for id.gov.ua auth
67
- const check = req.user?.auth_type === "govid" ? config.auth?.["2factor"]?.govid : true;
68
- const login2faPage = config.auth?.link?.["2fa"]?.login || "/2factor";
69
- // example: 2factor for admin env only, while public env does not require it
70
- const checkEnv = () => {
71
- if (!config.auth?.["2factorEnv"])
72
- return true;
73
- if ((config.auth?.["2factorEnv"] &&
74
- process.env.NODE_ENV === config.auth?.["2factorEnv"]) ||
75
- (config.auth?.["2factorEnv"] === "admin" && isAdmin)) {
76
- return true;
77
- }
78
- return false;
79
- };
80
- // if 2factor is enabled globally + for user and secondFactorPassed not true => redirect to 2factor login page
81
- if (req.user?.uid &&
82
- req.user?.twofa &&
83
- // config.auth?.["2factor"] &&
84
- // !isPublic &&
85
- (routeOptions?.method || "GET") === "GET" &&
86
- !req.session?.secondFactorPassed &&
87
- !ispasswd &&
88
- !config.auth?.disableRedirect &&
89
- !config.auth?.disable &&
90
- check &&
91
- checkEnv() &&
92
- !req.url.startsWith(login2faPage) &&
93
- !routeOptions.url?.includes?.("/logout") &&
94
- !routeOptions.url?.includes?.("/2fa") &&
95
- !routeOptions.url?.includes?.("/assets")) {
96
- if (isApi) {
97
- return reply
98
- .status(403)
99
- .send({ error: "access restricted: twofa", code: 403 });
100
- }
101
- return reply.redirect(login2faPage);
102
- }
103
- return null;
104
- }
@@ -1,3 +0,0 @@
1
- declare function plugin(): Promise<void>;
2
- export default plugin;
3
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../server/plugins/migration/index.ts"],"names":[],"mappings":"AAEA,iBAAe,MAAM,kBAEpB;AAED,eAAe,MAAM,CAAC"}
@@ -1,5 +0,0 @@
1
- // import execMigrations from './funcs/exec.migrations.js';
2
- async function plugin() {
3
- // fastify.decorate('execMigrations', execMigrations);
4
- }
5
- export default plugin;
@@ -1,4 +0,0 @@
1
- import { FastifyReply } from "fastify";
2
- import { ExtendedRequest } from "../../../types/core.js";
3
- export default function onRequest(req: ExtendedRequest, reply: FastifyReply): Promise<null>;
4
- //# sourceMappingURL=checkAuth.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"checkAuth.d.ts","sourceRoot":"","sources":["../../../../../server/plugins/policy/funcs/checkAuth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAMvC,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAIzD,wBAA8B,SAAS,CACrC,GAAG,EAAE,eAAe,EACpB,KAAK,EAAE,YAAY,iBA+HpB"}
@@ -1,104 +0,0 @@
1
- import { existsSync } from "node:fs";
2
- import config from "../../../../config.js";
3
- const { prefix = "/api" } = config;
4
- export default async function onRequest(req, reply) {
5
- const { hostname, headers, routeOptions } = req;
6
- const { config: routeConfig, method, handler, url } = routeOptions || {};
7
- const { policy } = routeConfig || {};
8
- const isApi = method && url && typeof handler === "function" && url !== "*";
9
- // handle non-api at vite/vike
10
- if (!isApi) {
11
- return null;
12
- }
13
- // proxy from old apps to editor, bi etc.
14
- const validToken = (req.ip === "193.239.152.181" ||
15
- req.ip === "127.0.0.1" ||
16
- req.ip?.startsWith?.("192.168.") ||
17
- config.debug) &&
18
- req.headers?.token &&
19
- config.auth?.tokens?.includes?.(headers.token);
20
- if (validToken && !req?.user?.uid) {
21
- req.user = {
22
- uid: req.headers?.uid?.toString?.(),
23
- user_type: req.headers?.user_type?.toString?.() || "regular",
24
- };
25
- }
26
- const isAdmin = process.env.NODE_ENV === "admin" ||
27
- hostname?.split?.(":")?.shift?.() === config.adminDomain ||
28
- config.admin ||
29
- hostname?.startsWith?.("admin");
30
- const isPublic = Array.isArray(policy)
31
- ? policy.includes("public")
32
- : policy === "L0";
33
- if (req.cookies?.["session_auth"] &&
34
- !req.session?.passport?.user?.uid &&
35
- (config.auth?.disable || config.auth?.user)) {
36
- req.session = req.session || {};
37
- req.session.passport = req.session.passport || {}; // ensure passport session exists
38
- req.session.passport.user = {
39
- ...(config.auth?.user || {}),
40
- uid: config.auth?.user?.uid?.toString?.() || "1",
41
- user_rnokpp: config.auth?.user?.rnokpp,
42
- user_type: config.auth?.user?.type || "regular",
43
- };
44
- req.user = req.session.passport.user;
45
- }
46
- // ! intentional: null || undefined > undefined
47
- req.user = req.user || req.session?.passport?.user || undefined; // fix for user.uid errors, by default user is null, while with express passport it was {}, unauthorized user does not trigger serializer
48
- // currently 2factor + auth with passwd file not supported
49
- const ispasswd = (existsSync("passwd") && !config.auth?.["2factor"]) || config.auth?.passwd;
50
- const loginPageUrl = config.auth?.link?.core?.login || config?.auth?.redirect || "/login";
51
- if (!req.user?.uid &&
52
- !config.auth?.disable &&
53
- isAdmin &&
54
- !isPublic &&
55
- !config.auth?.disableRedirect &&
56
- !req.url.startsWith(prefix) &&
57
- !req.url.startsWith("/api") &&
58
- !req.url.includes(loginPageUrl) &&
59
- !req.url.includes(".") &&
60
- !req.url.includes("@")) {
61
- if (isApi) {
62
- return reply.status(401).send({ error: "unauthorized", code: 401 });
63
- }
64
- return reply.redirect(`${loginPageUrl}` + `?redirect=${req.url}`);
65
- }
66
- // by default, disable 2factor for id.gov.ua auth
67
- const check = req.user?.auth_type === "govid" ? config.auth?.["2factor"]?.govid : true;
68
- const login2faPage = config.auth?.link?.["2fa"]?.login || "/2factor";
69
- // example: 2factor for admin env only, while public env does not require it
70
- const checkEnv = () => {
71
- if (!config.auth?.["2factorEnv"])
72
- return true;
73
- if ((config.auth?.["2factorEnv"] &&
74
- process.env.NODE_ENV === config.auth?.["2factorEnv"]) ||
75
- (config.auth?.["2factorEnv"] === "admin" && isAdmin)) {
76
- return true;
77
- }
78
- return false;
79
- };
80
- // if 2factor is enabled globally + for user and secondFactorPassed not true => redirect to 2factor login page
81
- if (req.user?.uid &&
82
- req.user?.twofa &&
83
- // config.auth?.["2factor"] &&
84
- // !isPublic &&
85
- (routeOptions?.method || "GET") === "GET" &&
86
- !req.session?.secondFactorPassed &&
87
- !ispasswd &&
88
- !config.auth?.disableRedirect &&
89
- !config.auth?.disable &&
90
- check &&
91
- checkEnv() &&
92
- !req.url.startsWith(login2faPage) &&
93
- !routeOptions.url?.includes?.("/logout") &&
94
- !routeOptions.url?.includes?.("/2fa") &&
95
- !routeOptions.url?.includes?.("/assets")) {
96
- if (isApi) {
97
- return reply
98
- .status(403)
99
- .send({ error: "access restricted: twofa", code: 403 });
100
- }
101
- return reply.redirect(login2faPage);
102
- }
103
- return null;
104
- }
@@ -1,6 +0,0 @@
1
- declare const arr: any;
2
- declare const publicResources: any[];
3
- declare const accessResources: (req?: any) => Promise<any[]>;
4
- export { arr as resources, publicResources };
5
- export default accessResources;
6
- //# sourceMappingURL=access.resources.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"access.resources.d.ts","sourceRoot":"","sources":["../../../../../server/routes/access/controllers/access.resources.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,GAAG,KAEH,CAAC;AAEP,QAAA,MAAM,eAAe,EAAE,GAAG,EAIvB,CAAC;AAEJ,QAAA,MAAM,eAAe,GAAU,MAAM,GAAG,KAAG,OAAO,CAAC,GAAG,EAAE,CAEvD,CAAC;AAEF,OAAO,EAAE,GAAG,IAAI,SAAS,EAAE,eAAe,EAAE,CAAC;AAC7C,eAAe,eAAe,CAAC"}
@@ -1,14 +0,0 @@
1
- import { existsSync, readFileSync } from "node:fs";
2
- const arr = existsSync("config/resources.json")
3
- ? JSON.parse(readFileSync("config/resources.json", "utf-8") || "[]")
4
- : [];
5
- const publicResources = arr.map(({ name, actions, feature }) => ({
6
- name,
7
- actions,
8
- feature,
9
- }));
10
- const accessResources = async (req) => {
11
- return publicResources;
12
- };
13
- export { arr as resources, publicResources };
14
- export default accessResources;
@@ -1,11 +0,0 @@
1
- declare const arr: any;
2
- interface Resource {
3
- name: string;
4
- actions: string[];
5
- feature: string;
6
- }
7
- declare const publicResources: Resource[];
8
- declare const resources: (req?: any) => Promise<Resource[]>;
9
- export { arr as resources, publicResources };
10
- export default resources;
11
- //# sourceMappingURL=resources.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../../../../server/routes/access/controllers/resources.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,GAAG,KAEH,CAAC;AAEP,UAAU,QAAQ;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,QAAA,MAAM,eAAe,EAAE,QAAQ,EAM9B,CAAC;AAEF,QAAA,MAAM,SAAS,GAAU,MAAM,GAAG,KAAG,OAAO,CAAC,QAAQ,EAAE,CAEtD,CAAC;AAEF,OAAO,EAAE,GAAG,IAAI,SAAS,EAAE,eAAe,EAAE,CAAC;AAC7C,eAAe,SAAS,CAAC"}
@@ -1,14 +0,0 @@
1
- import { existsSync, readFileSync } from "node:fs";
2
- const arr = existsSync("config/resources.json")
3
- ? JSON.parse(readFileSync("config/resources.json", "utf-8") || "[]")
4
- : [];
5
- const publicResources = arr.map(({ name, actions, feature }) => ({
6
- name,
7
- actions,
8
- feature,
9
- }));
10
- const resources = async (req) => {
11
- return publicResources;
12
- };
13
- export { arr as resources, publicResources };
14
- export default resources;
@@ -1,6 +0,0 @@
1
- declare const resourcesList: any;
2
- declare const publicResourcesList: any[];
3
- export { resourcesList, publicResourcesList };
4
- declare const _default: null;
5
- export default _default;
6
- //# sourceMappingURL=resources.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resources.d.ts","sourceRoot":"","sources":["../../../../../server/routes/access/functions/resources.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,aAAa,KAEb,CAAC;AAEP,QAAA,MAAM,mBAAmB,EAAE,GAAG,EAM7B,CAAC;AAEF,OAAO,EAAE,aAAa,EAAE,mBAAmB,EAAE,CAAC;;AAC9C,wBAAoB"}
@@ -1,11 +0,0 @@
1
- import { existsSync, readFileSync } from "node:fs";
2
- const resourcesList = existsSync("config/resources.json")
3
- ? JSON.parse(readFileSync("config/resources.json", "utf-8") || "[]")
4
- : [];
5
- const publicResourcesList = resourcesList.map(({ name, actions, feature }) => ({
6
- name,
7
- actions,
8
- feature,
9
- }));
10
- export { resourcesList, publicResourcesList };
11
- export default null;
@@ -1,14 +0,0 @@
1
- import createError from "@fastify/error";
2
- export declare const NotFoundError: createError.FastifyErrorConstructor<{
3
- code: "NOT_FOUND_ERROR";
4
- statusCode: 404;
5
- }, [any?, any?, any?]>;
6
- export declare const BadRequestError: createError.FastifyErrorConstructor<{
7
- code: "BAD_REQUEST_ERROR";
8
- statusCode: 400;
9
- }, [any?, any?, any?]>;
10
- export declare const PayloadTooLargeError: createError.FastifyErrorConstructor<{
11
- code: "PAYLOAD_TOO_LARGE_ERROR";
12
- statusCode: 413;
13
- }, [any?, any?, any?]>;
14
- //# sourceMappingURL=errors.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../../server/types/errors.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,gBAAgB,CAAC;AACzC,eAAO,MAAM,aAAa;;;sBAIzB,CAAC;AACF,eAAO,MAAM,eAAe;;;sBAI3B,CAAC;AACF,eAAO,MAAM,oBAAoB;;;sBAIhC,CAAC"}
@@ -1,4 +0,0 @@
1
- import createError from "@fastify/error";
2
- export const NotFoundError = createError("NOT_FOUND_ERROR", "Resource not found: %s", 404);
3
- export const BadRequestError = createError("BAD_REQUEST_ERROR", "Bad request: %s", 400);
4
- export const PayloadTooLargeError = createError("PAYLOAD_TOO_LARGE_ERROR", "Payload Too Large: %s", 413);