@unchainedshop/plugins 4.3.3 → 4.3.4

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 (98) hide show
  1. package/lib/payment/braintree.js +11 -6
  2. package/lib/payment/braintree.js.map +1 -1
  3. package/lib/payment/paypal-checkout.js +2 -1
  4. package/lib/payment/paypal-checkout.js.map +1 -1
  5. package/lib/payment/stripe/handler-express.d.ts.map +1 -1
  6. package/lib/payment/stripe/handler-express.js +1 -2
  7. package/lib/payment/stripe/handler-express.js.map +1 -1
  8. package/lib/payment/stripe/handler-fastify.d.ts.map +1 -1
  9. package/lib/payment/stripe/handler-fastify.js +1 -2
  10. package/lib/payment/stripe/handler-fastify.js.map +1 -1
  11. package/lib/payment/stripe/index.js +2 -9
  12. package/lib/payment/stripe/index.js.map +1 -1
  13. package/lib/payment/stripe/stripe.d.ts +5 -6
  14. package/lib/payment/stripe/stripe.d.ts.map +1 -1
  15. package/lib/payment/stripe/stripe.js +12 -20
  16. package/lib/payment/stripe/stripe.js.map +1 -1
  17. package/lib/pricing/order-round.js +1 -1
  18. package/lib/pricing/order-round.js.map +1 -1
  19. package/package.json +3 -3
  20. package/src/payment/braintree.ts +11 -7
  21. package/src/payment/paypal-checkout.ts +5 -2
  22. package/src/payment/stripe/handler-express.ts +1 -2
  23. package/src/payment/stripe/handler-fastify.ts +1 -2
  24. package/src/payment/stripe/index.ts +2 -9
  25. package/src/payment/stripe/stripe.ts +14 -26
  26. package/src/pricing/order-round.ts +1 -1
  27. package/lib/accounts/google-oauth.d.ts +0 -4
  28. package/lib/accounts/google-oauth.d.ts.map +0 -1
  29. package/lib/accounts/google-oauth.js +0 -145
  30. package/lib/accounts/google-oauth.js.map +0 -1
  31. package/lib/accounts/linkedin-oauth.d.ts +0 -4
  32. package/lib/accounts/linkedin-oauth.d.ts.map +0 -1
  33. package/lib/accounts/linkedin-oauth.js +0 -82
  34. package/lib/accounts/linkedin-oauth.js.map +0 -1
  35. package/lib/delivery/pick-mup.d.ts +0 -2
  36. package/lib/delivery/pick-mup.d.ts.map +0 -1
  37. package/lib/delivery/pick-mup.js +0 -94
  38. package/lib/delivery/pick-mup.js.map +0 -1
  39. package/lib/files/gridfs/gridfs-adapter.d.ts +0 -3
  40. package/lib/files/gridfs/gridfs-adapter.d.ts.map +0 -1
  41. package/lib/files/gridfs/gridfs-adapter.js +0 -97
  42. package/lib/files/gridfs/gridfs-adapter.js.map +0 -1
  43. package/lib/files/gridfs/gridfs-webhook.d.ts +0 -11
  44. package/lib/files/gridfs/gridfs-webhook.d.ts.map +0 -1
  45. package/lib/files/gridfs/gridfs-webhook.js +0 -84
  46. package/lib/files/gridfs/gridfs-webhook.js.map +0 -1
  47. package/lib/files/minio/minio-adapter.d.ts +0 -6
  48. package/lib/files/minio/minio-adapter.d.ts.map +0 -1
  49. package/lib/files/minio/minio-adapter.js +0 -181
  50. package/lib/files/minio/minio-adapter.js.map +0 -1
  51. package/lib/files/minio/minio-webhook.d.ts +0 -2
  52. package/lib/files/minio/minio-webhook.d.ts.map +0 -1
  53. package/lib/files/minio/minio-webhook.js +0 -33
  54. package/lib/files/minio/minio-webhook.js.map +0 -1
  55. package/lib/payment/apple-iap/module/configureAppleTransactionsModule.d.ts +0 -9
  56. package/lib/payment/apple-iap/module/configureAppleTransactionsModule.d.ts.map +0 -1
  57. package/lib/payment/apple-iap/module/configureAppleTransactionsModule.js +0 -17
  58. package/lib/payment/apple-iap/module/configureAppleTransactionsModule.js.map +0 -1
  59. package/lib/payment/cryptopay/middleware.d.ts +0 -2
  60. package/lib/payment/cryptopay/middleware.d.ts.map +0 -1
  61. package/lib/payment/cryptopay/middleware.js +0 -75
  62. package/lib/payment/cryptopay/middleware.js.map +0 -1
  63. package/lib/payment/cryptopay/module/configureCryptopayModule.d.ts +0 -25
  64. package/lib/payment/cryptopay/module/configureCryptopayModule.d.ts.map +0 -1
  65. package/lib/payment/cryptopay/module/configureCryptopayModule.js +0 -75
  66. package/lib/payment/cryptopay/module/configureCryptopayModule.js.map +0 -1
  67. package/lib/payment/datatrans-v2/middleware.d.ts +0 -2
  68. package/lib/payment/datatrans-v2/middleware.d.ts.map +0 -1
  69. package/lib/payment/datatrans-v2/middleware.js +0 -68
  70. package/lib/payment/datatrans-v2/middleware.js.map +0 -1
  71. package/lib/payment/payrexx/middleware.d.ts +0 -2
  72. package/lib/payment/payrexx/middleware.d.ts.map +0 -1
  73. package/lib/payment/payrexx/middleware.js +0 -86
  74. package/lib/payment/payrexx/middleware.js.map +0 -1
  75. package/lib/payment/postfinance-checkout/middleware.d.ts +0 -2
  76. package/lib/payment/postfinance-checkout/middleware.d.ts.map +0 -1
  77. package/lib/payment/postfinance-checkout/middleware.js +0 -38
  78. package/lib/payment/postfinance-checkout/middleware.js.map +0 -1
  79. package/lib/payment/saferpay/middleware.d.ts +0 -2
  80. package/lib/payment/saferpay/middleware.d.ts.map +0 -1
  81. package/lib/payment/saferpay/middleware.js +0 -57
  82. package/lib/payment/saferpay/middleware.js.map +0 -1
  83. package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.d.ts +0 -10
  84. package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.d.ts.map +0 -1
  85. package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.js +0 -24
  86. package/lib/payment/saferpay/module/configureSaferpayTransactionsModule.js.map +0 -1
  87. package/lib/payment/stripe/middleware.d.ts +0 -6
  88. package/lib/payment/stripe/middleware.d.ts.map +0 -1
  89. package/lib/payment/stripe/middleware.js +0 -114
  90. package/lib/payment/stripe/middleware.js.map +0 -1
  91. package/lib/plugins-index.d.ts +0 -48
  92. package/lib/plugins-index.d.ts.map +0 -1
  93. package/lib/plugins-index.js +0 -107
  94. package/lib/plugins-index.js.map +0 -1
  95. package/lib/worker/sms.d.ts +0 -2
  96. package/lib/worker/sms.d.ts.map +0 -1
  97. package/lib/worker/sms.js +0 -73
  98. package/lib/worker/sms.js.map +0 -1
@@ -1,107 +0,0 @@
1
- import { useMiddlewareWithCurrentContext } from '@unchainedshop/api/express/index.js';
2
- import express from 'express';
3
- // Delivery
4
- import './delivery/post.js';
5
- import './delivery/pick-mup.js';
6
- import './delivery/send-message.js';
7
- import './delivery/stores.js';
8
- // Payment
9
- import './payment/invoice.js';
10
- import './payment/invoice-prepaid.js';
11
- import './payment/paypal-checkout.js';
12
- import { datatransHandler } from './payment/datatrans-v2/index.js';
13
- import { configureCryptopayModule, cryptopayHandler } from './payment/cryptopay/index.js';
14
- import { appleIAPHandler, configureAppleTransactionsModule } from './payment/apple-iap/index.js';
15
- import { stripeHandler } from './payment/stripe/index.js';
16
- import { postfinanceCheckoutHandler } from './payment/postfinance-checkout/index.js';
17
- import { configureSaferpayTransactionsModule, saferpayHandler } from './payment/saferpay/index.js';
18
- import { payrexxHandler } from './payment/payrexx/index.js';
19
- // Warehousing
20
- import './warehousing/store.js';
21
- import './warehousing/eth-minter.js';
22
- // Pricing
23
- import './pricing/free-payment.js';
24
- import './pricing/free-delivery.js';
25
- import './pricing/order-items.js';
26
- import './pricing/order-discount.js';
27
- import './pricing/order-delivery.js';
28
- import './pricing/order-payment.js';
29
- import './pricing/product-catalog-price.js';
30
- import './pricing/product-price-rateconversion.js';
31
- import './pricing/product-discount.js';
32
- import './pricing/product-swiss-tax.js';
33
- import './pricing/delivery-swiss-tax.js';
34
- // Filter & Search
35
- import './filters/strict-equal.js';
36
- import './filters/local-search.js';
37
- // Quotations
38
- import './quotations/manual.js';
39
- // Enrollments
40
- import './enrollments/licensed.js';
41
- // Event Queue
42
- import './events/node-event-emitter.js';
43
- // Workers
44
- import './worker/bulk-import.js';
45
- import './worker/zombie-killer.js';
46
- import './worker/message.js';
47
- import './worker/external.js';
48
- import './worker/http-request.js';
49
- import './worker/heartbeat.js';
50
- import './worker/email.js';
51
- import './worker/sms.js';
52
- import './worker/push-notification.js';
53
- import './worker/update-ecb-rates.js';
54
- import './worker/error-notifications.js';
55
- import './worker/update-coinbase-rates.js';
56
- import { configureExportToken } from './worker/export-token.js';
57
- import { configureGenerateOrderAutoscheduling } from './worker/enrollment-order-generator.js';
58
- // Asset Management
59
- import './files/gridfs/gridfs-adapter.js';
60
- import { gridfsHandler } from './files/gridfs/gridfs-webhook.js';
61
- import { configureGridFSFileUploadModule } from './files/gridfs/index.js';
62
- import './accounts/google-oauth.js';
63
- import './accounts/linkedin-oauth.js';
64
- const { CRYPTOPAY_WEBHOOK_PATH = '/payment/cryptopay', STRIPE_WEBHOOK_PATH = '/payment/stripe', PAYREXX_WEBHOOK_PATH = '/payment/payrexx', PFCHECKOUT_WEBHOOK_PATH = '/payment/postfinance-checkout', DATATRANS_WEBHOOK_PATH = '/payment/datatrans/webhook', APPLE_IAP_WEBHOOK_PATH = '/payment/apple-iap',
65
- // MINIO_PUT_SERVER_PATH = '/minio',
66
- GRIDFS_PUT_SERVER_PATH = '/gridfs', SAFERPAY_WEBHOOK_PATH = '/payment/saferpay/webhook', } = process.env;
67
- // import './files/minio/minio-adapter';
68
- // import { minioHandler } from './files/minio/minio-webhook';
69
- export const defaultModules = {
70
- appleTransactions: {
71
- configure: configureAppleTransactionsModule,
72
- },
73
- saferpayTransactions: {
74
- configure: configureSaferpayTransactionsModule,
75
- },
76
- gridfsFileUploads: {
77
- configure: configureGridFSFileUploadModule,
78
- },
79
- cryptopay: {
80
- configure: configureCryptopayModule,
81
- },
82
- };
83
- export const connectDefaultPluginsToExpress4 = (app, { unchainedAPI }) => {
84
- useMiddlewareWithCurrentContext(app, GRIDFS_PUT_SERVER_PATH, gridfsHandler);
85
- useMiddlewareWithCurrentContext(app, CRYPTOPAY_WEBHOOK_PATH, express.json(), cryptopayHandler);
86
- useMiddlewareWithCurrentContext(app, STRIPE_WEBHOOK_PATH, express.raw({ type: 'application/json' }), stripeHandler);
87
- useMiddlewareWithCurrentContext(app, PFCHECKOUT_WEBHOOK_PATH, express.json(), postfinanceCheckoutHandler);
88
- useMiddlewareWithCurrentContext(app, DATATRANS_WEBHOOK_PATH, express.text({
89
- type: 'application/json',
90
- }), datatransHandler);
91
- useMiddlewareWithCurrentContext(app, APPLE_IAP_WEBHOOK_PATH, express.json({
92
- strict: false,
93
- }), appleIAPHandler);
94
- useMiddlewareWithCurrentContext(app, PAYREXX_WEBHOOK_PATH, express.json({ type: 'application/json' }), payrexxHandler);
95
- useMiddlewareWithCurrentContext(app, SAFERPAY_WEBHOOK_PATH, saferpayHandler);
96
- // useMiddlewareWithCurrentContext(
97
- // app,
98
- // MINIO_PUT_SERVER_PATH,
99
- // express.json({
100
- // strict: false,
101
- // }),
102
- // minioHandler
103
- // );
104
- configureExportToken(unchainedAPI);
105
- configureGenerateOrderAutoscheduling();
106
- };
107
- //# sourceMappingURL=plugins-index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"plugins-index.js","sourceRoot":"","sources":["../src/plugins-index.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=sms.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sms.d.ts","sourceRoot":"","sources":["../../src/worker/sms.ts"],"names":[],"mappings":""}
package/lib/worker/sms.js DELETED
@@ -1,73 +0,0 @@
1
- import { WorkerDirector, WorkerAdapter } from '@unchainedshop/core-worker';
2
- import Twilio from 'twilio';
3
- const { TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN, TWILIO_SMS_FROM } = process.env;
4
- /* Potential: no need for twilio npm
5
- curl -X POST "https://api.twilio.com/2010-04-01/Accounts/$TWILIO_ACCOUNT_SID/Messages.json" \
6
- --data-urlencode "From=+15017122661" \
7
- --data-urlencode "Body=Hi there" \
8
- --data-urlencode "To=+15558675310" \
9
- -u $TWILIO_ACCOUNT_SID:$TWILIO_AUTH_TOKEN
10
- */
11
- const SmsWorkerPlugin = {
12
- ...WorkerAdapter,
13
- key: 'shop.unchained.worker-plugin.sms',
14
- label: 'Send a SMS through Twilio',
15
- version: '1.0.0',
16
- type: 'SMS',
17
- doWork: async ({ from, to, text }) => {
18
- if (!TWILIO_SMS_FROM && !from) {
19
- return {
20
- success: false,
21
- error: {
22
- name: 'SENDER_REQUIRED',
23
- message: 'SMS requires a from, TWILIO_SMS_FROM not set',
24
- },
25
- };
26
- }
27
- if (!to) {
28
- return {
29
- success: false,
30
- error: {
31
- name: 'RECIPIENT_REQUIRED',
32
- message: 'SMS requires a to',
33
- },
34
- };
35
- }
36
- try {
37
- const client = Twilio(TWILIO_ACCOUNT_SID, TWILIO_AUTH_TOKEN);
38
- const { sid, errorMessage } = await client.messages.create({
39
- body: text,
40
- from: from || TWILIO_SMS_FROM,
41
- to,
42
- });
43
- if (errorMessage) {
44
- return {
45
- success: false,
46
- error: {
47
- name: 'TWILIO_ERROR',
48
- message: errorMessage.toString(),
49
- },
50
- };
51
- }
52
- return {
53
- success: true,
54
- result: {
55
- sid,
56
- },
57
- error: null,
58
- };
59
- }
60
- catch (err) {
61
- return {
62
- success: false,
63
- error: {
64
- name: err.name,
65
- message: err.message,
66
- stack: err.stack,
67
- },
68
- };
69
- }
70
- },
71
- };
72
- WorkerDirector.registerAdapter(SmsWorkerPlugin);
73
- //# sourceMappingURL=sms.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sms.js","sourceRoot":"","sources":["../../src/worker/sms.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE3E,OAAO,MAAM,MAAM,QAAQ,CAAC;AAE5B,MAAM,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC;AAE/E;;;;;;EAME;AAEF,MAAM,eAAe,GAOjB;IACF,GAAG,aAAa;IAEhB,GAAG,EAAE,kCAAkC;IACvC,KAAK,EAAE,2BAA2B;IAClC,OAAO,EAAE,OAAO;IAEhB,IAAI,EAAE,KAAK;IAEX,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;QACnC,IAAI,CAAC,eAAe,IAAI,CAAC,IAAI,EAAE,CAAC;YAC9B,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,iBAAiB;oBACvB,OAAO,EAAE,8CAA8C;iBACxD;aACF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,EAAE,EAAE,CAAC;YACR,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,oBAAoB;oBAC1B,OAAO,EAAE,mBAAmB;iBAC7B;aACF,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,CAAC,kBAAkB,EAAE,iBAAiB,CAAC,CAAC;YAC7D,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC;gBACzD,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,IAAI,IAAI,eAAe;gBAC7B,EAAE;aACH,CAAC,CAAC;YACH,IAAI,YAAY,EAAE,CAAC;gBACjB,OAAO;oBACL,OAAO,EAAE,KAAK;oBACd,KAAK,EAAE;wBACL,IAAI,EAAE,cAAc;wBACpB,OAAO,EAAE,YAAY,CAAC,QAAQ,EAAE;qBACjC;iBACF,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE;oBACN,GAAG;iBACJ;gBACD,KAAK,EAAE,IAAI;aACZ,CAAC;QACJ,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE;oBACL,IAAI,EAAE,GAAG,CAAC,IAAI;oBACd,OAAO,EAAE,GAAG,CAAC,OAAO;oBACpB,KAAK,EAAE,GAAG,CAAC,KAAK;iBACjB;aACF,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAC;AAEF,cAAc,CAAC,eAAe,CAAC,eAAe,CAAC,CAAC"}