@unchainedshop/plugins 3.0.0-rc9 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (282) hide show
  1. package/lib/files/gridfs/{gridfs-adapter.d.ts → adapter.d.ts} +2 -4
  2. package/lib/files/gridfs/adapter.d.ts.map +1 -0
  3. package/lib/files/gridfs/{gridfs-adapter.js → adapter.js} +1 -1
  4. package/lib/files/gridfs/adapter.js.map +1 -0
  5. package/lib/files/gridfs/handler-express.d.ts +10 -0
  6. package/lib/files/gridfs/handler-express.d.ts.map +1 -0
  7. package/lib/files/gridfs/{gridfs-webhook.js → handler-express.js} +3 -2
  8. package/lib/files/gridfs/handler-express.js.map +1 -0
  9. package/lib/files/gridfs/handler-fastify.d.ts +4 -0
  10. package/lib/files/gridfs/handler-fastify.d.ts.map +1 -0
  11. package/lib/files/gridfs/handler-fastify.js +91 -0
  12. package/lib/files/gridfs/handler-fastify.js.map +1 -0
  13. package/lib/files/gridfs/index.d.ts +4 -10
  14. package/lib/files/gridfs/index.d.ts.map +1 -1
  15. package/lib/files/gridfs/index.js +3 -27
  16. package/lib/files/gridfs/index.js.map +1 -1
  17. package/lib/files/gridfs/module.d.ts +26 -0
  18. package/lib/files/gridfs/module.d.ts.map +1 -0
  19. package/lib/files/gridfs/module.js +33 -0
  20. package/lib/files/gridfs/module.js.map +1 -0
  21. package/lib/files/minio/handler-express.d.ts +3 -0
  22. package/lib/files/minio/handler-express.d.ts.map +1 -0
  23. package/lib/files/minio/{minio-webhook.js → handler-express.js} +3 -2
  24. package/lib/files/minio/handler-express.js.map +1 -0
  25. package/lib/files/minio/handler-fastify.d.ts +4 -0
  26. package/lib/files/minio/handler-fastify.d.ts.map +1 -0
  27. package/lib/files/minio/handler-fastify.js +34 -0
  28. package/lib/files/minio/handler-fastify.js.map +1 -0
  29. package/lib/files/minio/{minio-adapter.d.ts → index.d.ts} +1 -1
  30. package/lib/files/minio/index.d.ts.map +1 -0
  31. package/lib/files/minio/{minio-adapter.js → index.js} +1 -1
  32. package/lib/files/minio/index.js.map +1 -0
  33. package/lib/filters/local-search.d.ts.map +1 -1
  34. package/lib/filters/local-search.js +3 -23
  35. package/lib/filters/local-search.js.map +1 -1
  36. package/lib/payment/apple-iap/adapter.d.ts +1 -1
  37. package/lib/payment/apple-iap/adapter.d.ts.map +1 -1
  38. package/lib/payment/apple-iap/adapter.js +5 -155
  39. package/lib/payment/apple-iap/adapter.js.map +1 -1
  40. package/lib/payment/apple-iap/fix-periods.d.ts +8 -0
  41. package/lib/payment/apple-iap/fix-periods.d.ts.map +1 -0
  42. package/lib/payment/apple-iap/fix-periods.js +22 -0
  43. package/lib/payment/apple-iap/fix-periods.js.map +1 -0
  44. package/lib/payment/apple-iap/handler-express.d.ts +3 -0
  45. package/lib/payment/apple-iap/handler-express.d.ts.map +1 -0
  46. package/lib/payment/apple-iap/handler-express.js +110 -0
  47. package/lib/payment/apple-iap/handler-express.js.map +1 -0
  48. package/lib/payment/apple-iap/handler-fastify.d.ts +4 -0
  49. package/lib/payment/apple-iap/handler-fastify.d.ts.map +1 -0
  50. package/lib/payment/apple-iap/handler-fastify.js +104 -0
  51. package/lib/payment/apple-iap/handler-fastify.js.map +1 -0
  52. package/lib/payment/apple-iap/index.d.ts +3 -1
  53. package/lib/payment/apple-iap/index.d.ts.map +1 -1
  54. package/lib/payment/apple-iap/index.js +2 -1
  55. package/lib/payment/apple-iap/index.js.map +1 -1
  56. package/lib/payment/apple-iap/module.d.ts +22 -0
  57. package/lib/payment/apple-iap/module.d.ts.map +1 -0
  58. package/lib/payment/apple-iap/{module/configureAppleTransactionsModule.js → module.js} +7 -2
  59. package/lib/payment/apple-iap/module.js.map +1 -0
  60. package/lib/payment/apple-iap/verify-receipt.d.ts +5 -0
  61. package/lib/payment/apple-iap/verify-receipt.d.ts.map +1 -0
  62. package/lib/payment/apple-iap/verify-receipt.js +26 -0
  63. package/lib/payment/apple-iap/verify-receipt.js.map +1 -0
  64. package/lib/payment/cryptopay/handler-express.d.ts +3 -0
  65. package/lib/payment/cryptopay/handler-express.d.ts.map +1 -0
  66. package/lib/payment/cryptopay/{middleware.js → handler-express.js} +3 -2
  67. package/lib/payment/cryptopay/{middleware.js.map → handler-express.js.map} +1 -1
  68. package/lib/payment/cryptopay/handler-fastify.d.ts +4 -0
  69. package/lib/payment/cryptopay/handler-fastify.d.ts.map +1 -0
  70. package/lib/payment/cryptopay/handler-fastify.js +69 -0
  71. package/lib/payment/cryptopay/handler-fastify.js.map +1 -0
  72. package/lib/payment/cryptopay/index.d.ts +4 -4
  73. package/lib/payment/cryptopay/index.d.ts.map +1 -1
  74. package/lib/payment/cryptopay/index.js +3 -4
  75. package/lib/payment/cryptopay/index.js.map +1 -1
  76. package/lib/payment/cryptopay/module.d.ts +54 -0
  77. package/lib/payment/cryptopay/module.d.ts.map +1 -0
  78. package/lib/payment/cryptopay/{module/configureCryptopayModule.js → module.js} +8 -3
  79. package/lib/payment/cryptopay/module.js.map +1 -0
  80. package/lib/payment/cryptopay/plugin.js +1 -1
  81. package/lib/payment/cryptopay/plugin.js.map +1 -1
  82. package/lib/payment/datatrans-v2/{middleware.d.ts → handler-express.d.ts} +1 -1
  83. package/lib/payment/datatrans-v2/handler-express.d.ts.map +1 -0
  84. package/lib/payment/datatrans-v2/{middleware.js → handler-express.js} +2 -2
  85. package/lib/payment/datatrans-v2/handler-express.js.map +1 -0
  86. package/lib/payment/datatrans-v2/handler-fastify.d.ts +3 -0
  87. package/lib/payment/datatrans-v2/handler-fastify.d.ts.map +1 -0
  88. package/lib/payment/datatrans-v2/handler-fastify.js +66 -0
  89. package/lib/payment/datatrans-v2/handler-fastify.js.map +1 -0
  90. package/lib/payment/datatrans-v2/index.d.ts +1 -1
  91. package/lib/payment/datatrans-v2/index.d.ts.map +1 -1
  92. package/lib/payment/datatrans-v2/index.js +0 -1
  93. package/lib/payment/datatrans-v2/index.js.map +1 -1
  94. package/lib/payment/payrexx/{middleware.d.ts → handler-express.d.ts} +1 -1
  95. package/lib/payment/payrexx/handler-express.d.ts.map +1 -0
  96. package/lib/payment/payrexx/{middleware.js → handler-express.js} +2 -2
  97. package/lib/payment/payrexx/handler-express.js.map +1 -0
  98. package/lib/payment/payrexx/handler-fastify.d.ts +3 -0
  99. package/lib/payment/payrexx/handler-fastify.d.ts.map +1 -0
  100. package/lib/payment/payrexx/handler-fastify.js +87 -0
  101. package/lib/payment/payrexx/handler-fastify.js.map +1 -0
  102. package/lib/payment/payrexx/index.d.ts +1 -1
  103. package/lib/payment/payrexx/index.d.ts.map +1 -1
  104. package/lib/payment/payrexx/index.js +0 -1
  105. package/lib/payment/payrexx/index.js.map +1 -1
  106. package/lib/payment/postfinance-checkout/{middleware.d.ts → handler-express.d.ts} +1 -1
  107. package/lib/payment/postfinance-checkout/handler-express.d.ts.map +1 -0
  108. package/lib/payment/postfinance-checkout/{middleware.js → handler-express.js} +1 -1
  109. package/lib/payment/postfinance-checkout/handler-express.js.map +1 -0
  110. package/lib/payment/postfinance-checkout/handler-fastify.d.ts +3 -0
  111. package/lib/payment/postfinance-checkout/handler-fastify.d.ts.map +1 -0
  112. package/lib/payment/postfinance-checkout/handler-fastify.js +39 -0
  113. package/lib/payment/postfinance-checkout/handler-fastify.js.map +1 -0
  114. package/lib/payment/postfinance-checkout/index.d.ts +1 -1
  115. package/lib/payment/postfinance-checkout/index.d.ts.map +1 -1
  116. package/lib/payment/postfinance-checkout/index.js +0 -1
  117. package/lib/payment/postfinance-checkout/index.js.map +1 -1
  118. package/lib/payment/saferpay/adapter.d.ts +0 -1
  119. package/lib/payment/saferpay/adapter.d.ts.map +1 -1
  120. package/lib/payment/saferpay/adapter.js +0 -1
  121. package/lib/payment/saferpay/adapter.js.map +1 -1
  122. package/lib/payment/saferpay/{middleware.d.ts → handler-express.d.ts} +1 -1
  123. package/lib/payment/saferpay/handler-express.d.ts.map +1 -0
  124. package/lib/payment/saferpay/{middleware.js → handler-express.js} +2 -2
  125. package/lib/payment/saferpay/handler-express.js.map +1 -0
  126. package/lib/payment/saferpay/handler-fastify.d.ts +3 -0
  127. package/lib/payment/saferpay/handler-fastify.d.ts.map +1 -0
  128. package/lib/payment/saferpay/handler-fastify.js +56 -0
  129. package/lib/payment/saferpay/handler-fastify.js.map +1 -0
  130. package/lib/payment/saferpay/index.d.ts +3 -2
  131. package/lib/payment/saferpay/index.d.ts.map +1 -1
  132. package/lib/payment/saferpay/index.js +2 -2
  133. package/lib/payment/saferpay/index.js.map +1 -1
  134. package/lib/payment/saferpay/module.d.ts +24 -0
  135. package/lib/payment/saferpay/module.d.ts.map +1 -0
  136. package/lib/payment/saferpay/{module/configureSaferpayTransactionsModule.js → module.js} +8 -3
  137. package/lib/payment/saferpay/module.js.map +1 -0
  138. package/lib/payment/stripe/{middleware.d.ts → handler-express.d.ts} +1 -1
  139. package/lib/payment/stripe/handler-express.d.ts.map +1 -0
  140. package/lib/payment/stripe/{middleware.js → handler-express.js} +2 -2
  141. package/lib/payment/stripe/handler-express.js.map +1 -0
  142. package/lib/payment/stripe/handler-fastify.d.ts +7 -0
  143. package/lib/payment/stripe/handler-fastify.d.ts.map +1 -0
  144. package/lib/payment/stripe/handler-fastify.js +112 -0
  145. package/lib/payment/stripe/handler-fastify.js.map +1 -0
  146. package/lib/payment/stripe/index.d.ts +1 -1
  147. package/lib/payment/stripe/index.d.ts.map +1 -1
  148. package/lib/payment/stripe/index.js +0 -1
  149. package/lib/payment/stripe/index.js.map +1 -1
  150. package/lib/presets/all-express.d.ts +7 -0
  151. package/lib/presets/all-express.d.ts.map +1 -0
  152. package/lib/presets/all-express.js +27 -0
  153. package/lib/presets/all-express.js.map +1 -0
  154. package/lib/presets/all-fastify.d.ts +7 -0
  155. package/lib/presets/all-fastify.d.ts.map +1 -0
  156. package/lib/presets/all-fastify.js +64 -0
  157. package/lib/presets/all-fastify.js.map +1 -0
  158. package/lib/presets/all.d.ts +69 -0
  159. package/lib/presets/all.d.ts.map +1 -0
  160. package/lib/presets/all.js +30 -0
  161. package/lib/presets/all.js.map +1 -0
  162. package/lib/presets/base-express.js +2 -2
  163. package/lib/presets/base-express.js.map +1 -1
  164. package/lib/presets/base-fastify.d.ts +4 -0
  165. package/lib/presets/base-fastify.d.ts.map +1 -0
  166. package/lib/presets/base-fastify.js +18 -0
  167. package/lib/presets/base-fastify.js.map +1 -0
  168. package/lib/presets/{base-modules.d.ts → base.d.ts} +3 -7
  169. package/lib/presets/base.d.ts.map +1 -0
  170. package/lib/presets/{base-modules.js → base.js} +3 -9
  171. package/lib/presets/base.js.map +1 -0
  172. package/lib/presets/crypto-express.js +2 -2
  173. package/lib/presets/crypto-express.js.map +1 -1
  174. package/lib/presets/crypto-fastify.d.ts +4 -0
  175. package/lib/presets/crypto-fastify.d.ts.map +1 -0
  176. package/lib/presets/crypto-fastify.js +12 -0
  177. package/lib/presets/crypto-fastify.js.map +1 -0
  178. package/lib/presets/crypto.d.ts +8 -0
  179. package/lib/presets/crypto.d.ts.map +1 -0
  180. package/lib/presets/crypto.js +9 -0
  181. package/lib/presets/crypto.js.map +1 -0
  182. package/lib/pricing/product-discount.js +2 -0
  183. package/lib/pricing/product-discount.js.map +1 -1
  184. package/lib/warehousing/eth-minter.js +2 -2
  185. package/lib/warehousing/eth-minter.js.map +1 -1
  186. package/lib/worker/zombie-killer.js +4 -1
  187. package/lib/worker/zombie-killer.js.map +1 -1
  188. package/package.json +41 -37
  189. package/src/files/gridfs/{gridfs-adapter.ts → adapter.ts} +1 -3
  190. package/src/files/gridfs/{gridfs-webhook.ts → handler-express.ts} +5 -3
  191. package/src/files/gridfs/handler-fastify.ts +122 -0
  192. package/src/files/gridfs/index.ts +4 -29
  193. package/src/files/gridfs/module.ts +39 -0
  194. package/src/files/minio/{minio-webhook.ts → handler-express.ts} +3 -1
  195. package/src/files/minio/handler-fastify.ts +44 -0
  196. package/src/filters/local-search.ts +3 -25
  197. package/src/payment/apple-iap/adapter.ts +6 -193
  198. package/src/payment/apple-iap/fix-periods.ts +34 -0
  199. package/src/payment/apple-iap/handler-express.ts +134 -0
  200. package/src/payment/apple-iap/handler-fastify.ts +137 -0
  201. package/src/payment/apple-iap/index.ts +5 -1
  202. package/src/payment/apple-iap/module.ts +29 -0
  203. package/src/payment/apple-iap/verify-receipt.ts +27 -0
  204. package/src/payment/cryptopay/{middleware.ts → handler-express.ts} +5 -5
  205. package/src/payment/cryptopay/handler-fastify.ts +89 -0
  206. package/src/payment/cryptopay/index.ts +5 -4
  207. package/src/payment/cryptopay/{module/configureCryptopayModule.ts → module.ts} +38 -39
  208. package/src/payment/cryptopay/plugin.ts +3 -3
  209. package/src/payment/datatrans-v2/{middleware.ts → handler-express.ts} +1 -1
  210. package/src/payment/datatrans-v2/handler-fastify.ts +88 -0
  211. package/src/payment/datatrans-v2/index.ts +0 -2
  212. package/src/payment/payrexx/{middleware.ts → handler-express.ts} +1 -1
  213. package/src/payment/payrexx/handler-fastify.ts +105 -0
  214. package/src/payment/payrexx/index.ts +0 -2
  215. package/src/payment/postfinance-checkout/handler-fastify.ts +52 -0
  216. package/src/payment/postfinance-checkout/index.ts +0 -2
  217. package/src/payment/saferpay/adapter.ts +2 -4
  218. package/src/payment/saferpay/{middleware.ts → handler-express.ts} +3 -3
  219. package/src/payment/saferpay/handler-fastify.ts +75 -0
  220. package/src/payment/saferpay/index.ts +5 -2
  221. package/src/payment/saferpay/{module/configureSaferpayTransactionsModule.ts → module.ts} +11 -3
  222. package/src/payment/stripe/{middleware.ts → handler-express.ts} +1 -1
  223. package/src/payment/stripe/handler-fastify.ts +139 -0
  224. package/src/payment/stripe/index.ts +0 -2
  225. package/src/presets/all-express.ts +51 -0
  226. package/src/presets/all-fastify.ts +87 -0
  227. package/src/presets/all.ts +35 -0
  228. package/src/presets/base-express.ts +2 -2
  229. package/src/presets/base-fastify.ts +20 -0
  230. package/src/presets/{base-modules.ts → base.ts} +3 -17
  231. package/src/presets/crypto-express.ts +2 -2
  232. package/src/presets/crypto-fastify.ts +15 -0
  233. package/src/presets/crypto.ts +11 -0
  234. package/src/pricing/product-discount.ts +2 -0
  235. package/src/warehousing/eth-minter.ts +2 -2
  236. package/src/worker/zombie-killer.ts +4 -4
  237. package/lib/files/gridfs/gridfs-adapter.d.ts.map +0 -1
  238. package/lib/files/gridfs/gridfs-adapter.js.map +0 -1
  239. package/lib/files/gridfs/gridfs-webhook.d.ts +0 -11
  240. package/lib/files/gridfs/gridfs-webhook.d.ts.map +0 -1
  241. package/lib/files/gridfs/gridfs-webhook.js.map +0 -1
  242. package/lib/files/minio/minio-adapter.d.ts.map +0 -1
  243. package/lib/files/minio/minio-adapter.js.map +0 -1
  244. package/lib/files/minio/minio-webhook.d.ts +0 -2
  245. package/lib/files/minio/minio-webhook.d.ts.map +0 -1
  246. package/lib/files/minio/minio-webhook.js.map +0 -1
  247. package/lib/payment/apple-iap/module/configureAppleTransactionsModule.d.ts +0 -9
  248. package/lib/payment/apple-iap/module/configureAppleTransactionsModule.d.ts.map +0 -1
  249. package/lib/payment/apple-iap/module/configureAppleTransactionsModule.js.map +0 -1
  250. package/lib/payment/cryptopay/middleware.d.ts +0 -2
  251. package/lib/payment/cryptopay/middleware.d.ts.map +0 -1
  252. package/lib/payment/cryptopay/module/configureCryptopayModule.d.ts +0 -25
  253. package/lib/payment/cryptopay/module/configureCryptopayModule.d.ts.map +0 -1
  254. package/lib/payment/cryptopay/module/configureCryptopayModule.js.map +0 -1
  255. package/lib/payment/datatrans-v2/middleware.d.ts.map +0 -1
  256. package/lib/payment/datatrans-v2/middleware.js.map +0 -1
  257. package/lib/payment/payrexx/middleware.d.ts.map +0 -1
  258. package/lib/payment/payrexx/middleware.js.map +0 -1
  259. package/lib/payment/postfinance-checkout/middleware.d.ts.map +0 -1
  260. package/lib/payment/postfinance-checkout/middleware.js.map +0 -1
  261. package/lib/payment/saferpay/middleware.d.ts.map +0 -1
  262. package/lib/payment/saferpay/middleware.js.map +0 -1
  263. package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.d.ts +0 -10
  264. package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.d.ts.map +0 -1
  265. package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.js.map +0 -1
  266. package/lib/payment/stripe/middleware.d.ts.map +0 -1
  267. package/lib/payment/stripe/middleware.js.map +0 -1
  268. package/lib/plugins-index.d.ts +0 -18
  269. package/lib/plugins-index.d.ts.map +0 -1
  270. package/lib/plugins-index.js +0 -52
  271. package/lib/plugins-index.js.map +0 -1
  272. package/lib/presets/base-modules.d.ts.map +0 -1
  273. package/lib/presets/base-modules.js.map +0 -1
  274. package/lib/presets/crypto-modules.d.ts +0 -11
  275. package/lib/presets/crypto-modules.d.ts.map +0 -1
  276. package/lib/presets/crypto-modules.js +0 -14
  277. package/lib/presets/crypto-modules.js.map +0 -1
  278. package/src/payment/apple-iap/module/configureAppleTransactionsModule.ts +0 -25
  279. package/src/plugins-index.ts +0 -90
  280. package/src/presets/crypto-modules.ts +0 -23
  281. /package/src/files/minio/{minio-adapter.ts → index.ts} +0 -0
  282. /package/src/payment/postfinance-checkout/{middleware.ts → handler-express.ts} +0 -0
@@ -2,8 +2,6 @@ import { IFileAdapter } from '@unchainedshop/file-upload';
2
2
  import { UnchainedCore } from '@unchainedshop/core';
3
3
  import { GridFSFileUploadsModule } from './index.js';
4
4
  export declare const GridFSAdapter: IFileAdapter<UnchainedCore & {
5
- modules: {
6
- gridfsFileUploads: GridFSFileUploadsModule;
7
- };
5
+ modules: GridFSFileUploadsModule;
8
6
  }>;
9
- //# sourceMappingURL=gridfs-adapter.d.ts.map
7
+ //# sourceMappingURL=adapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/files/gridfs/adapter.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,YAAY,EACb,MAAM,4BAA4B,CAAC;AAIpC,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,uBAAuB,EAAE,MAAM,YAAY,CAAC;AAYrD,eAAO,MAAM,aAAa,EAAE,YAAY,CACtC,aAAa,GAAG;IACd,OAAO,EAAE,uBAAuB,CAAC;CAClC,CA6HF,CAAC"}
@@ -102,4 +102,4 @@ export const GridFSAdapter = {
102
102
  },
103
103
  };
104
104
  FileDirector.registerAdapter(GridFSAdapter);
105
- //# sourceMappingURL=gridfs-adapter.js.map
105
+ //# sourceMappingURL=adapter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adapter.js","sourceRoot":"","sources":["../../../src/files/gridfs/adapter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,10 @@
1
+ import express from 'express';
2
+ import { GridFSFileUploadsModule } from './module.js';
3
+ import { Context } from '@unchainedshop/api';
4
+ declare const gridfsHandler: (req: express.Request & {
5
+ unchainedContext: Context & {
6
+ modules: GridFSFileUploadsModule;
7
+ };
8
+ }, res: express.Response) => Promise<void>;
9
+ export default gridfsHandler;
10
+ //# sourceMappingURL=handler-express.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler-express.d.ts","sourceRoot":"","sources":["../../../src/files/gridfs/handler-express.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACtD,OAAO,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAQ7C,QAAA,MAAM,aAAa,QACZ,OAAO,CAAC,OAAO,GAAG;IACrB,gBAAgB,EAAE,OAAO,GAAG;QAC1B,OAAO,EAAE,uBAAuB,CAAC;KAClC,CAAC;CACH,OACI,OAAO,CAAC,QAAQ,kBA4GtB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -6,7 +6,7 @@ import { createLogger } from '@unchainedshop/logger';
6
6
  import { getFileAdapter } from '@unchainedshop/core-files';
7
7
  const { ROOT_URL } = process.env;
8
8
  const logger = createLogger('unchained:plugins:gridfs');
9
- export const gridfsHandler = async (req, res) => {
9
+ const gridfsHandler = async (req, res) => {
10
10
  try {
11
11
  const { services, modules } = req.unchainedContext;
12
12
  const url = new URL(req.url, ROOT_URL);
@@ -100,4 +100,5 @@ export const gridfsHandler = async (req, res) => {
100
100
  }
101
101
  }
102
102
  };
103
- //# sourceMappingURL=gridfs-webhook.js.map
103
+ export default gridfsHandler;
104
+ //# sourceMappingURL=handler-express.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler-express.js","sourceRoot":"","sources":["../../../src/files/gridfs/handler-express.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import { RouteHandlerMethod } from 'fastify';
2
+ declare const gridfsHandler: RouteHandlerMethod;
3
+ export default gridfsHandler;
4
+ //# sourceMappingURL=handler-fastify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler-fastify.d.ts","sourceRoot":"","sources":["../../../src/files/gridfs/handler-fastify.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAU7D,QAAA,MAAM,aAAa,EAAE,kBA2GpB,CAAC;AAEF,eAAe,aAAa,CAAC"}
@@ -0,0 +1,91 @@
1
+ import { pipeline } from 'node:stream/promises';
2
+ import { PassThrough } from 'node:stream';
3
+ import { buildHashedFilename } from '@unchainedshop/file-upload';
4
+ import sign from './sign.js';
5
+ import { createLogger } from '@unchainedshop/logger';
6
+ import { getFileAdapter } from '@unchainedshop/core-files';
7
+ const logger = createLogger('unchained:plugins:gridfs');
8
+ const gridfsHandler = async (req, reply) => {
9
+ try {
10
+ const { services, modules } = req.unchainedContext;
11
+ const { directoryName, fileName } = req.params;
12
+ /* This is a file upload endpoint, and thus we need to allow CORS.
13
+ else we'd need proxies for all kinds of things for storefronts */
14
+ reply.header('Access-Control-Allow-Methods', 'GET, PUT');
15
+ reply.header('Access-Control-Allow-Headers', 'content-type');
16
+ reply.header('Access-Control-Allow-Origin', '*');
17
+ if (req.method === 'OPTIONS') {
18
+ reply.status(200);
19
+ return reply.send();
20
+ }
21
+ if (req.method === 'PUT') {
22
+ const { s: signature, e: expiryTimestamp } = req.query;
23
+ const expiryDate = new Date(parseInt(expiryTimestamp, 10));
24
+ const fileId = await buildHashedFilename(directoryName, fileName, expiryDate);
25
+ if ((await sign(directoryName, fileId, expiryDate.getTime())) === signature) {
26
+ const file = await modules.files.findFile({ fileId });
27
+ if (file.expires === null) {
28
+ reply.status(400);
29
+ return reply.send('File already linked');
30
+ }
31
+ // If the type is octet-stream, prefer mimetype lookup from the filename
32
+ // Else prefer the content-type header
33
+ const type = req.headers['content-type'] === 'application/octet-stream'
34
+ ? file.type || req.headers['content-type']
35
+ : req.headers['content-type'] || file.type;
36
+ const writeStream = await modules.gridfsFileUploads.createWriteStream(directoryName, fileId, fileName, { 'content-type': type });
37
+ await pipeline(req.raw, new PassThrough(), writeStream);
38
+ const { length } = writeStream;
39
+ await services.files.linkFile({ fileId, size: length, type });
40
+ reply.status(200);
41
+ return reply.send();
42
+ }
43
+ reply.status(403);
44
+ return reply.send();
45
+ }
46
+ if (req.method === 'GET') {
47
+ const fileId = fileName;
48
+ const { s: signature, e: expiryTimestamp } = req.query;
49
+ const file = await modules.gridfsFileUploads.getFileInfo(directoryName, fileId);
50
+ const fileDocument = await modules.files.findFile({ fileId });
51
+ if (fileDocument?.meta?.isPrivate) {
52
+ const expiry = parseInt(expiryTimestamp, 10);
53
+ if (expiry <= Date.now()) {
54
+ reply.status(403);
55
+ return reply.send('Access restricted: Expired.');
56
+ }
57
+ const fileUploadAdapter = getFileAdapter();
58
+ const signedUrl = await fileUploadAdapter.createDownloadURL(fileDocument, expiry);
59
+ if (new URL(signedUrl, 'file://').searchParams.get('s') !== signature) {
60
+ reply.status(403);
61
+ return reply.send('Access restricted: Invalid signature.');
62
+ }
63
+ }
64
+ if (file?.metadata?.['content-type']) {
65
+ reply.header('content-type', file.metadata['content-type']);
66
+ }
67
+ if (file?.length) {
68
+ reply.header('content-length', file?.length.toString());
69
+ }
70
+ const readStream = await modules.gridfsFileUploads.createReadStream(directoryName, fileId);
71
+ reply.status(200);
72
+ return reply.send(readStream);
73
+ }
74
+ reply.status(404);
75
+ return reply.send();
76
+ }
77
+ catch (e) {
78
+ if (e.code === 'ENOENT') {
79
+ logger.warn(e);
80
+ reply.status(404);
81
+ return reply.send({ name: e.name, code: e.code, message: e.message });
82
+ }
83
+ else {
84
+ logger.warn(e);
85
+ reply.status(504);
86
+ return reply.send({ name: e.name, code: e.code, message: e.message });
87
+ }
88
+ }
89
+ };
90
+ export default gridfsHandler;
91
+ //# sourceMappingURL=handler-fastify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler-fastify.js","sourceRoot":"","sources":["../../../src/files/gridfs/handler-fastify.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,5 @@
1
- import { mongodb } from '@unchainedshop/mongodb';
2
- export declare const configureGridFSFileUploadModule: ({ db }: {
3
- db: any;
4
- }) => {
5
- createWriteStream: (directoryName: any, fileId: any, fileName: any, metadata: any) => Promise<mongodb.GridFSBucketWriteStream>;
6
- getFileInfo: (directoryName: any, fileId: any) => Promise<mongodb.GridFSFile>;
7
- createReadStream: (directoryName: any, fileId: any) => Promise<mongodb.GridFSBucketReadStream>;
8
- removeFileFromBucket: (directoryName: any, fileId: any) => Promise<void>;
9
- };
10
- export type GridFSFileUploadsModule = ReturnType<typeof configureGridFSFileUploadModule>;
1
+ import './adapter.js';
2
+ import gridfsModules, { type GridFSFileUploadsModule } from './module.js';
3
+ export type { GridFSFileUploadsModule };
4
+ export default gridfsModules;
11
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/files/gridfs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,eAAO,MAAM,+BAA+B;;;;;;;CA0B3C,CAAC;AAEF,MAAM,MAAM,uBAAuB,GAAG,UAAU,CAAC,OAAO,+BAA+B,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/files/gridfs/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAC;AAEtB,OAAO,aAAa,EAAE,EAAE,KAAK,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAE1E,YAAY,EAAE,uBAAuB,EAAE,CAAC;AACxC,eAAe,aAAa,CAAC"}
@@ -1,28 +1,4 @@
1
- import { mongodb } from '@unchainedshop/mongodb';
2
- export const configureGridFSFileUploadModule = ({ db }) => {
3
- // eslint-disable-next-line
4
- let { GridFSBucket } = mongodb;
5
- return {
6
- createWriteStream: async (directoryName, fileId, fileName, metadata) => {
7
- const options = { bucketName: `file_uploads_${directoryName}` };
8
- const bucket = new GridFSBucket(db, options);
9
- return bucket.openUploadStreamWithId(fileId, fileName, { metadata });
10
- },
11
- getFileInfo: async (directoryName, fileId) => {
12
- const options = { bucketName: `file_uploads_${directoryName}` };
13
- const bucket = new GridFSBucket(db, options);
14
- return bucket.find({ _id: fileId }).next();
15
- },
16
- createReadStream: async (directoryName, fileId) => {
17
- const options = { bucketName: `file_uploads_${directoryName}` };
18
- const bucket = new GridFSBucket(db, options);
19
- return bucket.openDownloadStream(fileId);
20
- },
21
- removeFileFromBucket: async (directoryName, fileId) => {
22
- const options = { bucketName: `file_uploads_${directoryName}` };
23
- const bucket = new GridFSBucket(db, options);
24
- return bucket.delete(fileId);
25
- },
26
- };
27
- };
1
+ import './adapter.js';
2
+ import gridfsModules from './module.js';
3
+ export default gridfsModules;
28
4
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/files/gridfs/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;IACxD,2BAA2B;IAC3B,IAAI,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IAE/B,OAAO;QACL,iBAAiB,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YACrE,MAAM,OAAO,GAAG,EAAE,UAAU,EAAE,gBAAgB,aAAa,EAAE,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE;YAC3C,MAAM,OAAO,GAAG,EAAE,UAAU,EAAE,gBAAgB,aAAa,EAAE,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7C,CAAC;QACD,gBAAgB,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE;YAChD,MAAM,OAAO,GAAG,EAAE,UAAU,EAAE,gBAAgB,aAAa,EAAE,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC;QACD,oBAAoB,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE;YACpD,MAAM,OAAO,GAAG,EAAE,UAAU,EAAE,gBAAgB,aAAa,EAAE,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;KACF,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/files/gridfs/index.ts"],"names":[],"mappings":"AAAA,OAAO,cAAc,CAAC;AAEtB,OAAO,aAA+C,MAAM,aAAa,CAAC;AAG1E,eAAe,aAAa,CAAC"}
@@ -0,0 +1,26 @@
1
+ import { mongodb } from '@unchainedshop/mongodb';
2
+ export declare const configureGridFSFileUploadModule: ({ db }: {
3
+ db: any;
4
+ }) => {
5
+ createWriteStream: (directoryName: any, fileId: any, fileName: any, metadata: any) => Promise<mongodb.GridFSBucketWriteStream>;
6
+ getFileInfo: (directoryName: any, fileId: any) => Promise<mongodb.GridFSFile>;
7
+ createReadStream: (directoryName: any, fileId: any) => Promise<mongodb.GridFSBucketReadStream>;
8
+ removeFileFromBucket: (directoryName: any, fileId: any) => Promise<void>;
9
+ };
10
+ declare const _default: {
11
+ gridfsFileUploads: {
12
+ configure: ({ db }: {
13
+ db: any;
14
+ }) => {
15
+ createWriteStream: (directoryName: any, fileId: any, fileName: any, metadata: any) => Promise<mongodb.GridFSBucketWriteStream>;
16
+ getFileInfo: (directoryName: any, fileId: any) => Promise<mongodb.GridFSFile>;
17
+ createReadStream: (directoryName: any, fileId: any) => Promise<mongodb.GridFSBucketReadStream>;
18
+ removeFileFromBucket: (directoryName: any, fileId: any) => Promise<void>;
19
+ };
20
+ };
21
+ };
22
+ export default _default;
23
+ export type GridFSFileUploadsModule = {
24
+ gridfsFileUploads: ReturnType<typeof configureGridFSFileUploadModule>;
25
+ };
26
+ //# sourceMappingURL=module.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../../src/files/gridfs/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,eAAO,MAAM,+BAA+B;;;;;;;CA0B3C,CAAC;;;;;;;;;;;;;AAEF,wBAIE;AAEF,MAAM,MAAM,uBAAuB,GAAG;IACpC,iBAAiB,EAAE,UAAU,CAAC,OAAO,+BAA+B,CAAC,CAAC;CACvE,CAAC"}
@@ -0,0 +1,33 @@
1
+ import { mongodb } from '@unchainedshop/mongodb';
2
+ export const configureGridFSFileUploadModule = ({ db }) => {
3
+ // eslint-disable-next-line
4
+ let { GridFSBucket } = mongodb;
5
+ return {
6
+ createWriteStream: async (directoryName, fileId, fileName, metadata) => {
7
+ const options = { bucketName: `file_uploads_${directoryName}` };
8
+ const bucket = new GridFSBucket(db, options);
9
+ return bucket.openUploadStreamWithId(fileId, fileName, { metadata });
10
+ },
11
+ getFileInfo: async (directoryName, fileId) => {
12
+ const options = { bucketName: `file_uploads_${directoryName}` };
13
+ const bucket = new GridFSBucket(db, options);
14
+ return bucket.find({ _id: fileId }).next();
15
+ },
16
+ createReadStream: async (directoryName, fileId) => {
17
+ const options = { bucketName: `file_uploads_${directoryName}` };
18
+ const bucket = new GridFSBucket(db, options);
19
+ return bucket.openDownloadStream(fileId);
20
+ },
21
+ removeFileFromBucket: async (directoryName, fileId) => {
22
+ const options = { bucketName: `file_uploads_${directoryName}` };
23
+ const bucket = new GridFSBucket(db, options);
24
+ return bucket.delete(fileId);
25
+ },
26
+ };
27
+ };
28
+ export default {
29
+ gridfsFileUploads: {
30
+ configure: configureGridFSFileUploadModule,
31
+ },
32
+ };
33
+ //# sourceMappingURL=module.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"module.js","sourceRoot":"","sources":["../../../src/files/gridfs/module.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;IACxD,2BAA2B;IAC3B,IAAI,EAAE,YAAY,EAAE,GAAG,OAAO,CAAC;IAE/B,OAAO;QACL,iBAAiB,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE;YACrE,MAAM,OAAO,GAAG,EAAE,UAAU,EAAE,gBAAgB,aAAa,EAAE,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,MAAM,CAAC,sBAAsB,CAAC,MAAM,EAAE,QAAQ,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACvE,CAAC;QACD,WAAW,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE;YAC3C,MAAM,OAAO,GAAG,EAAE,UAAU,EAAE,gBAAgB,aAAa,EAAE,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,MAAM,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAC7C,CAAC;QACD,gBAAgB,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE;YAChD,MAAM,OAAO,GAAG,EAAE,UAAU,EAAE,gBAAgB,aAAa,EAAE,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,MAAM,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAC;QAC3C,CAAC;QACD,oBAAoB,EAAE,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE;YACpD,MAAM,OAAO,GAAG,EAAE,UAAU,EAAE,gBAAgB,aAAa,EAAE,EAAE,CAAC;YAChE,MAAM,MAAM,GAAG,IAAI,YAAY,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;YAC7C,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/B,CAAC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF,eAAe;IACb,iBAAiB,EAAE;QACjB,SAAS,EAAE,+BAA+B;KAC3C;CACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const minioHandler: (req: any, res: any) => Promise<void>;
2
+ export default minioHandler;
3
+ //# sourceMappingURL=handler-express.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler-express.d.ts","sourceRoot":"","sources":["../../../src/files/minio/handler-express.ts"],"names":[],"mappings":"AAWA,QAAA,MAAM,YAAY,uCAwBjB,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -5,7 +5,7 @@ const isAuthorized = ({ authorization = '' }) => {
5
5
  const [type, token] = authorization.split(' ');
6
6
  return type === 'Bearer' && token === MINIO_WEBHOOK_AUTH_TOKEN;
7
7
  };
8
- export const minioHandler = async (req, res) => {
8
+ const minioHandler = async (req, res) => {
9
9
  try {
10
10
  if (req.method === 'POST' && req.body) {
11
11
  const { headers } = req;
@@ -31,4 +31,5 @@ export const minioHandler = async (req, res) => {
31
31
  res.end(JSON.stringify({ name: e.name, code: e.code, message: e.message }));
32
32
  }
33
33
  };
34
- //# sourceMappingURL=minio-webhook.js.map
34
+ export default minioHandler;
35
+ //# sourceMappingURL=handler-express.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler-express.js","sourceRoot":"","sources":["../../../src/files/minio/handler-express.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAErD,MAAM,MAAM,GAAG,YAAY,CAAC,yBAAyB,CAAC,CAAC;AAEvD,MAAM,EAAE,wBAAwB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;AAEjD,MAAM,YAAY,GAAG,CAAC,EAAE,aAAa,GAAG,EAAE,EAAE,EAAE,EAAE;IAC9C,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/C,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,KAAK,wBAAwB,CAAC;AACjE,CAAC,CAAC;AAEF,MAAM,YAAY,GAAG,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;IACtC,IAAI,CAAC;QACH,IAAI,GAAG,CAAC,MAAM,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YACtC,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;YACxB,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,IAAI,CAAC;YAC7C,IAAI,SAAS,KAAK,sBAAsB,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC;gBACzB,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;gBACtB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;gBAC3C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACvC,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,gBAAgB,CAAC;gBAC1C,MAAM,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBACtD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;gBACnB,GAAG,CAAC,GAAG,EAAE,CAAC;gBACV,OAAO;YACT,CAAC;QACH,CAAC;QACD,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACnB,GAAG,CAAC,GAAG,EAAE,CAAC;IACZ,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChB,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;QACnB,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IAC9E,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { RouteHandlerMethod } from 'fastify';
2
+ declare const minioHandler: RouteHandlerMethod;
3
+ export default minioHandler;
4
+ //# sourceMappingURL=handler-fastify.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler-fastify.d.ts","sourceRoot":"","sources":["../../../src/files/minio/handler-fastify.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAW7D,QAAA,MAAM,YAAY,EAAE,kBA4BnB,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { createLogger } from '@unchainedshop/logger';
2
+ const logger = createLogger('unchained:plugins:minio');
3
+ const { MINIO_WEBHOOK_AUTH_TOKEN } = process.env;
4
+ const isAuthorized = ({ authorization = '' }) => {
5
+ const [type, token] = authorization.split(' ');
6
+ return type === 'Bearer' && token === MINIO_WEBHOOK_AUTH_TOKEN;
7
+ };
8
+ const minioHandler = async (req, res) => {
9
+ try {
10
+ if (req.body) {
11
+ const { headers } = req;
12
+ const { Records = [], EventName } = req.body;
13
+ if (EventName === 's3:ObjectCreated:Put' && isAuthorized(headers)) {
14
+ const [{ s3 }] = Records;
15
+ const { object } = s3;
16
+ const { size, contentType: type } = object;
17
+ const [fileId] = object.key.split('.');
18
+ const { services } = req.unchainedContext;
19
+ await services.files.linkFile({ fileId, type, size });
20
+ res.status(200);
21
+ return res.send();
22
+ }
23
+ }
24
+ res.status(404);
25
+ return res.send();
26
+ }
27
+ catch (e) {
28
+ logger.error(e);
29
+ res.status(503);
30
+ return res.send(JSON.stringify({ name: e.name, code: e.code, message: e.message }));
31
+ }
32
+ };
33
+ export default minioHandler;
34
+ //# sourceMappingURL=handler-fastify.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"handler-fastify.js","sourceRoot":"","sources":["../../../src/files/minio/handler-fastify.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAGrD,MAAM,MAAM,GAAG,YAAY,CAAC,yBAAyB,CAAC,CAAC;AAEvD,MAAM,EAAE,wBAAwB,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;AAEjD,MAAM,YAAY,GAAG,CAAC,EAAE,aAAa,GAAG,EAAE,EAAE,EAAE,EAAE;IAC9C,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,aAAa,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAC/C,OAAO,IAAI,KAAK,QAAQ,IAAI,KAAK,KAAK,wBAAwB,CAAC;AACjE,CAAC,CAAC;AAEF,MAAM,YAAY,GAAuB,KAAK,EAC5C,GAEC,EACD,GAAG,EACH,EAAE;IACF,IAAI,CAAC;QACH,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;YACb,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,CAAC;YACxB,MAAM,EAAE,OAAO,GAAG,EAAE,EAAE,SAAS,EAAE,GAAG,GAAG,CAAC,IAA2B,CAAC;YACpE,IAAI,SAAS,KAAK,sBAAsB,IAAI,YAAY,CAAC,OAAO,CAAC,EAAE,CAAC;gBAClE,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,OAAO,CAAC;gBACzB,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;gBACtB,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;gBAC3C,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACvC,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC,gBAAgB,CAAC;gBAC1C,MAAM,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;gBACtD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;gBAChB,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;YACpB,CAAC;QACH,CAAC;QACD,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChB,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;IACpB,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAChB,OAAO,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;IACtF,CAAC;AACH,CAAC,CAAC;AAEF,eAAe,YAAY,CAAC"}
@@ -3,4 +3,4 @@ import { Client } from 'minio';
3
3
  export declare function connectToMinio(): Promise<Client>;
4
4
  export declare const MinioAdapter: IFileAdapter;
5
5
  export default MinioAdapter;
6
- //# sourceMappingURL=minio-adapter.d.ts.map
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/files/minio/index.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,YAAY,EACb,MAAM,4BAA4B,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AAqB/B,wBAAsB,cAAc,oBAsCnC;AA6BD,eAAO,MAAM,YAAY,EAAE,YAgI1B,CAAC;AAIF,eAAe,YAAY,CAAC"}
@@ -165,4 +165,4 @@ export const MinioAdapter = {
165
165
  };
166
166
  FileDirector.registerAdapter(MinioAdapter);
167
167
  export default MinioAdapter;
168
- //# sourceMappingURL=minio-adapter.js.map
168
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/files/minio/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"local-search.d.ts","sourceRoot":"","sources":["../../src/filters/local-search.ts"],"names":[],"mappings":"AAGA,OAAO,EAAiC,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAapF,QAAA,MAAM,WAAW,EAAE,cA6FlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"local-search.d.ts","sourceRoot":"","sources":["../../src/filters/local-search.ts"],"names":[],"mappings":"AAGA,OAAO,EAAiC,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAEpF,QAAA,MAAM,WAAW,EAAE,cAkFlB,CAAC;AAEF,eAAe,WAAW,CAAC"}
@@ -1,13 +1,4 @@
1
1
  import { FilterDirector, FilterAdapter } from '@unchainedshop/core';
2
- function escapeStringRegexp(string) {
3
- if (typeof string !== 'string') {
4
- throw new TypeError('Expected a string');
5
- }
6
- // Escape characters with special meaning either inside or outside character sets.
7
- // Use a simple backslash escape when it’s always valid, and a `\xnn` escape when the simpler form would be disallowed by Unicode patterns’ stricter grammar.
8
- return string.replace(/[|\\{}()[\]^$+*?.]/g, '\\$&').replace(/-/g, '\\x2d');
9
- }
10
- const { AMAZON_DOCUMENTDB_COMPAT_MODE } = process.env;
11
2
  const LocalSearch = {
12
3
  ...FilterAdapter,
13
4
  key: 'shop.unchained.filters.local-search',
@@ -22,20 +13,9 @@ const LocalSearch = {
22
13
  const { queryString } = params.searchQuery;
23
14
  if (!queryString)
24
15
  return productIds;
25
- const selector = AMAZON_DOCUMENTDB_COMPAT_MODE
26
- ? {
27
- $or: [
28
- { title: { $regex: `${escapeStringRegexp(queryString)}`, $options: 'im' } },
29
- { subtitle: { $regex: `${escapeStringRegexp(queryString)}`, $options: 'im' } },
30
- { vendor: { $regex: `${escapeStringRegexp(queryString)}`, $options: 'im' } },
31
- { brand: { $regex: `${escapeStringRegexp(queryString)}`, $options: 'im' } },
32
- { description: { $regex: `${escapeStringRegexp(queryString)}`, $options: 'im' } },
33
- { labels: { $regex: `${escapeStringRegexp(queryString)}`, $options: 'im' } },
34
- ],
35
- }
36
- : {
37
- $text: { $search: queryString },
38
- };
16
+ const selector = {
17
+ $text: { $search: queryString },
18
+ };
39
19
  if (productIds) {
40
20
  selector.productId = { $in: [...new Set(productIds)] };
41
21
  }
@@ -1 +1 @@
1
- {"version":3,"file":"local-search.js","sourceRoot":"","sources":["../../src/filters/local-search.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAkB,MAAM,qBAAqB,CAAC;AAEpF,SAAS,kBAAkB,CAAC,MAAM;IAChC,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;QAC/B,MAAM,IAAI,SAAS,CAAC,mBAAmB,CAAC,CAAC;IAC3C,CAAC;IACD,kFAAkF;IAClF,6JAA6J;IAC7J,OAAO,MAAM,CAAC,OAAO,CAAC,qBAAqB,EAAE,MAAM,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAC9E,CAAC;AAED,MAAM,EAAE,6BAA6B,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;AAEtD,MAAM,WAAW,GAAmB;IAClC,GAAG,aAAa;IAEhB,GAAG,EAAE,qCAAqC;IAC1C,KAAK,EAAE,qCAAqC;IAC5C,OAAO,EAAE,OAAO;IAChB,UAAU,EAAE,EAAE;IAEd,OAAO,EAAE,CAAC,MAAM,EAAE,EAAE;QAClB,OAAO;YACL,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC;YAEhC,cAAc,EAAE,KAAK,EAAE,EAAE,UAAU,EAAE,EAAE,EAAE;gBACvC,kBAAkB;gBAClB,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;gBAE3C,IAAI,CAAC,WAAW;oBAAE,OAAO,UAAU,CAAC;gBAEpC,MAAM,QAAQ,GAAgC,6BAA6B;oBACzE,CAAC,CAAC;wBACE,GAAG,EAAE;4BACH,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;4BAC3E,EAAE,QAAQ,EAAE,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;4BAC9E,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;4BAC5E,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;4BAC3E,EAAE,WAAW,EAAE,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;4BACjF,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,GAAG,kBAAkB,CAAC,WAAW,CAAC,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE;yBAC7E;qBACF;oBACH,CAAC,CAAC;wBACE,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;qBAChC,CAAC;gBAEN,IAAI,UAAU,EAAE,CAAC;oBACf,QAAQ,CAAC,SAAS,GAAG,EAAE,GAAG,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAQ,EAAE,CAAC;gBAChE,CAAC;gBAED,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE;oBACvE,UAAU,EAAE;wBACV,SAAS,EAAE,CAAC;qBACb;iBACF,CAAC,CAAC;gBAEH,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC;YACpD,CAAC;YAED,2BAA2B;YAC3B,iBAAiB,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,EAAE,EAAE;gBAC7C,MAAM,EAAE,WAAW,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;gBAE3C,IAAI,CAAC,WAAW,EAAE,CAAC;oBACjB,OAAO,aAAa,CAAC;gBACvB,CAAC;gBAED,MAAM,QAAQ,GAAmC;oBAC/C,KAAK,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE;iBAChC,CAAC;gBAEF,IAAI,aAAa,EAAE,CAAC;oBAClB,QAAQ,CAAC,YAAY,GAAG,EAAE,GAAG,EAAE,aAAa,EAAE,CAAC;gBACjD,CAAC;gBAED,MAAM,WAAW,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,QAAQ,EAAE;oBAC7E,UAAU,EAAE;wBACV,YAAY,EAAE,CAAC;qBAChB;iBACF,CAAC,CAAC;gBAEH,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,EAAE,YAAY,EAAE,EAAE,EAAE,CAAC,YAAY,CAAC,CAAC;YAC7D,CAAC;YAED,KAAK,CAAC,uBAAuB,CAAC,IAAI;gBAChC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,eAAe,EAAE,GAAG,MAAM,CAAC,WAAW,CAAC;gBAEvE,IAAI,WAAW,IAAI,CAAC,SAAS,EAAE,CAAC;oBAC9B,0CAA0C;oBAC1C,qBAAqB;oBACrB,MAAM,QAAQ,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC;oBAC7B,IAAI,QAAQ,EAAE,GAAG,EAAE,CAAC;wBAClB,0BAA0B;wBAC1B,OAAO,QAAQ,CAAC,GAAG,CAAC;oBACtB,CAAC;oBACD,IAAI,CAAC,eAAe,EAAE,CAAC;wBACrB,8BAA8B;wBAC9B,QAAQ,CAAC,QAAQ,GAAG,IAAI,CAAC;oBAC3B,CAAC;oBACD,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC;SACF,CAAC;IACJ,CAAC;CACF,CAAC;AAEF,eAAe,WAAW,CAAC;AAE3B,cAAc,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC"}
1
+ {"version":3,"file":"local-search.js","sourceRoot":"","sources":["../../src/filters/local-search.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- export declare const appleIAPHandler: (req: any, res: any) => Promise<void>;
1
+ export {};
2
2
  //# sourceMappingURL=adapter.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/payment/apple-iap/adapter.ts"],"names":[],"mappings":"AA8EA,eAAO,MAAM,eAAe,uCAkH3B,CAAC"}
1
+ {"version":3,"file":"adapter.d.ts","sourceRoot":"","sources":["../../../src/payment/apple-iap/adapter.ts"],"names":[],"mappings":""}