@windrun-huaiin/backend-core 15.0.0 → 16.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.
- package/LICENSE +1 -1
- package/dist/app/api/stripe/checkout/route.js +2 -2
- package/dist/app/api/stripe/checkout/route.mjs +1 -1
- package/dist/app/api/stripe/customer-portal/route.js +2 -2
- package/dist/app/api/stripe/customer-portal/route.mjs +1 -1
- package/dist/app/api/user/anonymous/init/route.js +6 -6
- package/dist/app/api/user/anonymous/init/route.mjs +1 -1
- package/dist/app/api/webhook/clerk/user/route.js +4 -4
- package/dist/app/api/webhook/clerk/user/route.mjs +1 -1
- package/dist/app/api/webhook/stripe/route.js +2 -2
- package/dist/app/api/webhook/stripe/route.mjs +1 -1
- package/dist/auth/auth-middleware.js +3 -3
- package/dist/auth/auth-middleware.mjs +1 -1
- package/dist/auth/auth-utils.js +10 -10
- package/dist/auth/auth-utils.mjs +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +44 -0
- package/dist/index.mjs +8 -1
- package/dist/lib/index.js +19 -0
- package/dist/lib/index.mjs +1 -1
- package/dist/lib/money-price-helper.js +3 -3
- package/dist/lib/money-price-helper.mjs +1 -1
- package/dist/lib/stripe-config.js +8 -8
- package/dist/lib/stripe-config.mjs +1 -1
- package/dist/lib/upstash/qstash.d.ts +20 -7
- package/dist/lib/upstash/qstash.d.ts.map +1 -1
- package/dist/lib/upstash/qstash.js +45 -19
- package/dist/lib/upstash/qstash.mjs +35 -9
- package/dist/lib/upstash/redis-counter.js +7 -7
- package/dist/lib/upstash/redis-counter.mjs +1 -1
- package/dist/lib/upstash/redis-favorite.js +9 -9
- package/dist/lib/upstash/redis-favorite.mjs +1 -1
- package/dist/lib/upstash/redis-like.js +9 -9
- package/dist/lib/upstash/redis-like.mjs +1 -1
- package/dist/lib/upstash/redis-lock.js +6 -6
- package/dist/lib/upstash/redis-lock.mjs +1 -1
- package/dist/lib/upstash/redis-structures.d.ts +83 -0
- package/dist/lib/upstash/redis-structures.d.ts.map +1 -1
- package/dist/lib/upstash/redis-structures.js +245 -25
- package/dist/lib/upstash/redis-structures.mjs +203 -2
- package/dist/lib/upstash-config.d.ts.map +1 -1
- package/dist/lib/upstash-config.js +90 -18
- package/dist/lib/upstash-config.mjs +80 -8
- package/dist/prisma/prisma-transaction-util.js +2 -2
- package/dist/prisma/prisma-transaction-util.mjs +1 -1
- package/dist/services/aggregate/anonymous.aggregate.service.js +6 -6
- package/dist/services/aggregate/anonymous.aggregate.service.mjs +1 -1
- package/dist/services/aggregate/billing.aggregate.service.js +21 -21
- package/dist/services/aggregate/billing.aggregate.service.mjs +1 -1
- package/dist/services/aggregate/user.aggregate.service.js +10 -10
- package/dist/services/aggregate/user.aggregate.service.mjs +1 -1
- package/dist/services/ai/abort.d.ts +2 -0
- package/dist/services/ai/abort.d.ts.map +1 -0
- package/dist/services/ai/abort.js +24 -0
- package/dist/services/ai/abort.mjs +22 -0
- package/dist/services/ai/env.d.ts +21 -0
- package/dist/services/ai/env.d.ts.map +1 -0
- package/dist/services/ai/env.js +85 -0
- package/dist/services/ai/env.mjs +80 -0
- package/dist/services/ai/error.d.ts +3 -0
- package/dist/services/ai/error.d.ts.map +1 -0
- package/dist/services/ai/error.js +54 -0
- package/dist/services/ai/error.mjs +52 -0
- package/dist/services/ai/index.d.ts +9 -0
- package/dist/services/ai/index.d.ts.map +1 -0
- package/dist/services/ai/index.js +30 -0
- package/dist/services/ai/index.mjs +7 -0
- package/dist/services/ai/message-builder.d.ts +4 -0
- package/dist/services/ai/message-builder.d.ts.map +1 -0
- package/dist/services/ai/message-builder.js +15 -0
- package/dist/services/ai/message-builder.mjs +13 -0
- package/dist/services/ai/mock.d.ts +30 -0
- package/dist/services/ai/mock.d.ts.map +1 -0
- package/dist/services/ai/mock.js +314 -0
- package/dist/services/ai/mock.mjs +308 -0
- package/dist/services/ai/openrouter-client.d.ts +12 -0
- package/dist/services/ai/openrouter-client.d.ts.map +1 -0
- package/dist/services/ai/openrouter-client.js +81 -0
- package/dist/services/ai/openrouter-client.mjs +78 -0
- package/dist/services/ai/route.d.ts +6 -0
- package/dist/services/ai/route.d.ts.map +1 -0
- package/dist/services/ai/route.js +178 -0
- package/dist/services/ai/route.mjs +173 -0
- package/dist/services/ai/types.d.ts +98 -0
- package/dist/services/ai/types.d.ts.map +1 -0
- package/dist/services/context/user-context-service.js +3 -3
- package/dist/services/context/user-context-service.mjs +1 -1
- package/dist/services/database/apilog.service.js +14 -14
- package/dist/services/database/apilog.service.mjs +1 -1
- package/dist/services/database/credit.service.js +20 -20
- package/dist/services/database/credit.service.mjs +1 -1
- package/dist/services/database/creditAuditLog.service.js +13 -13
- package/dist/services/database/creditAuditLog.service.mjs +1 -1
- package/dist/services/database/subscription.service.js +16 -16
- package/dist/services/database/subscription.service.mjs +1 -1
- package/dist/services/database/transaction.service.js +18 -18
- package/dist/services/database/transaction.service.mjs +1 -1
- package/dist/services/database/user.service.js +14 -14
- package/dist/services/database/user.service.mjs +1 -1
- package/dist/services/database/userBackup.service.js +15 -15
- package/dist/services/database/userBackup.service.mjs +1 -1
- package/dist/services/stripe/webhook-handler.js +13 -13
- package/dist/services/stripe/webhook-handler.mjs +3 -3
- package/package.json +14 -4
- package/src/index.ts +1 -0
- package/src/lib/upstash/qstash.ts +55 -15
- package/src/lib/upstash/redis-structures.ts +248 -0
- package/src/lib/upstash-config.ts +106 -4
- package/src/services/ai/abort.ts +26 -0
- package/src/services/ai/env.ts +120 -0
- package/src/services/ai/error.ts +64 -0
- package/src/services/ai/index.ts +8 -0
- package/src/services/ai/message-builder.ts +17 -0
- package/src/services/ai/mock.ts +378 -0
- package/src/services/ai/openrouter-client.ts +94 -0
- package/src/services/ai/route.ts +218 -0
- package/src/services/ai/types.ts +131 -0
- package/dist/_virtual/_commonjs-dynamic-modules.js +0 -7
- package/dist/_virtual/_commonjs-dynamic-modules.mjs +0 -5
- package/dist/_virtual/_commonjsHelpers.js +0 -10
- package/dist/_virtual/_commonjsHelpers.mjs +0 -7
- package/dist/_virtual/aes.js +0 -5
- package/dist/_virtual/aes.mjs +0 -3
- package/dist/_virtual/blowfish.js +0 -5
- package/dist/_virtual/blowfish.mjs +0 -3
- package/dist/_virtual/cipher-core.js +0 -5
- package/dist/_virtual/cipher-core.mjs +0 -3
- package/dist/_virtual/core.js +0 -5
- package/dist/_virtual/core.mjs +0 -3
- package/dist/_virtual/enc-base64.js +0 -5
- package/dist/_virtual/enc-base64.mjs +0 -3
- package/dist/_virtual/enc-base64url.js +0 -5
- package/dist/_virtual/enc-base64url.mjs +0 -3
- package/dist/_virtual/enc-utf16.js +0 -5
- package/dist/_virtual/enc-utf16.mjs +0 -3
- package/dist/_virtual/evpkdf.js +0 -5
- package/dist/_virtual/evpkdf.mjs +0 -3
- package/dist/_virtual/format-hex.js +0 -5
- package/dist/_virtual/format-hex.mjs +0 -3
- package/dist/_virtual/hmac.js +0 -5
- package/dist/_virtual/hmac.mjs +0 -3
- package/dist/_virtual/index.js +0 -11
- package/dist/_virtual/index.mjs +0 -7
- package/dist/_virtual/index2.js +0 -5
- package/dist/_virtual/index2.mjs +0 -3
- package/dist/_virtual/lib-typedarrays.js +0 -5
- package/dist/_virtual/lib-typedarrays.mjs +0 -3
- package/dist/_virtual/md5.js +0 -5
- package/dist/_virtual/md5.mjs +0 -3
- package/dist/_virtual/mode-cfb.js +0 -5
- package/dist/_virtual/mode-cfb.mjs +0 -3
- package/dist/_virtual/mode-ctr-gladman.js +0 -5
- package/dist/_virtual/mode-ctr-gladman.mjs +0 -3
- package/dist/_virtual/mode-ctr.js +0 -5
- package/dist/_virtual/mode-ctr.mjs +0 -3
- package/dist/_virtual/mode-ecb.js +0 -5
- package/dist/_virtual/mode-ecb.mjs +0 -3
- package/dist/_virtual/mode-ofb.js +0 -5
- package/dist/_virtual/mode-ofb.mjs +0 -3
- package/dist/_virtual/pad-ansix923.js +0 -5
- package/dist/_virtual/pad-ansix923.mjs +0 -3
- package/dist/_virtual/pad-iso10126.js +0 -5
- package/dist/_virtual/pad-iso10126.mjs +0 -3
- package/dist/_virtual/pad-iso97971.js +0 -5
- package/dist/_virtual/pad-iso97971.mjs +0 -3
- package/dist/_virtual/pad-nopadding.js +0 -5
- package/dist/_virtual/pad-nopadding.mjs +0 -3
- package/dist/_virtual/pad-zeropadding.js +0 -5
- package/dist/_virtual/pad-zeropadding.mjs +0 -3
- package/dist/_virtual/pbkdf2.js +0 -5
- package/dist/_virtual/pbkdf2.mjs +0 -3
- package/dist/_virtual/rabbit-legacy.js +0 -5
- package/dist/_virtual/rabbit-legacy.mjs +0 -3
- package/dist/_virtual/rabbit.js +0 -5
- package/dist/_virtual/rabbit.mjs +0 -3
- package/dist/_virtual/rc4.js +0 -5
- package/dist/_virtual/rc4.mjs +0 -3
- package/dist/_virtual/ripemd160.js +0 -5
- package/dist/_virtual/ripemd160.mjs +0 -3
- package/dist/_virtual/sha1.js +0 -5
- package/dist/_virtual/sha1.mjs +0 -3
- package/dist/_virtual/sha224.js +0 -5
- package/dist/_virtual/sha224.mjs +0 -3
- package/dist/_virtual/sha256.js +0 -5
- package/dist/_virtual/sha256.mjs +0 -3
- package/dist/_virtual/sha3.js +0 -5
- package/dist/_virtual/sha3.mjs +0 -3
- package/dist/_virtual/sha384.js +0 -5
- package/dist/_virtual/sha384.mjs +0 -3
- package/dist/_virtual/sha512.js +0 -5
- package/dist/_virtual/sha512.mjs +0 -3
- package/dist/_virtual/tripledes.js +0 -5
- package/dist/_virtual/tripledes.mjs +0 -3
- package/dist/_virtual/x64-core.js +0 -5
- package/dist/_virtual/x64-core.mjs +0 -3
- package/dist/node_modules/.pnpm/@rollup_plugin-typescript@12.1.4_rollup@4.46.2_tslib@2.8.1_typescript@5.9.3/node_modules/tslib/tslib.es6.js +0 -48
- package/dist/node_modules/.pnpm/@rollup_plugin-typescript@12.1.4_rollup@4.46.2_tslib@2.8.1_typescript@5.9.3/node_modules/tslib/tslib.es6.mjs +0 -45
- package/dist/node_modules/.pnpm/@upstash_qstash@2.10.1/node_modules/@upstash/qstash/chunk-35B33QW3.js +0 -1848
- package/dist/node_modules/.pnpm/@upstash_qstash@2.10.1/node_modules/@upstash/qstash/chunk-35B33QW3.mjs +0 -1830
- package/dist/node_modules/.pnpm/@upstash_redis@1.37.0/node_modules/@upstash/redis/chunk-IH7W44G6.js +0 -5308
- package/dist/node_modules/.pnpm/@upstash_redis@1.37.0/node_modules/@upstash/redis/chunk-IH7W44G6.mjs +0 -5302
- package/dist/node_modules/.pnpm/@upstash_redis@1.37.0/node_modules/@upstash/redis/nodejs.js +0 -116
- package/dist/node_modules/.pnpm/@upstash_redis@1.37.0/node_modules/@upstash/redis/nodejs.mjs +0 -113
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/aes.js +0 -248
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/aes.mjs +0 -246
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/blowfish.js +0 -485
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/blowfish.mjs +0 -483
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/cipher-core.js +0 -906
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/cipher-core.mjs +0 -904
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/core.js +0 -818
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/core.mjs +0 -816
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/enc-base64.js +0 -146
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/enc-base64.mjs +0 -144
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/enc-base64url.js +0 -158
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/enc-base64url.mjs +0 -156
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/enc-utf16.js +0 -159
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/enc-utf16.mjs +0 -157
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/evpkdf.js +0 -146
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/evpkdf.mjs +0 -144
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/format-hex.js +0 -77
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/format-hex.mjs +0 -75
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/hmac.js +0 -153
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/hmac.mjs +0 -151
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/index.js +0 -62
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/index.mjs +0 -60
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/lib-typedarrays.js +0 -86
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/lib-typedarrays.mjs +0 -84
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/md5.js +0 -278
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/md5.mjs +0 -276
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/mode-cfb.js +0 -91
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/mode-cfb.mjs +0 -89
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/mode-ctr-gladman.js +0 -127
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/mode-ctr-gladman.mjs +0 -125
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/mode-ctr.js +0 -69
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/mode-ctr.mjs +0 -67
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/mode-ecb.js +0 -51
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/mode-ecb.mjs +0 -49
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/mode-ofb.js +0 -65
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/mode-ofb.mjs +0 -63
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pad-ansix923.js +0 -60
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pad-ansix923.mjs +0 -58
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pad-iso10126.js +0 -55
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pad-iso10126.mjs +0 -53
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pad-iso97971.js +0 -51
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pad-iso97971.mjs +0 -49
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pad-nopadding.js +0 -41
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pad-nopadding.mjs +0 -39
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pad-zeropadding.js +0 -58
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pad-zeropadding.mjs +0 -56
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pbkdf2.js +0 -157
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/pbkdf2.mjs +0 -155
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/rabbit-legacy.js +0 -204
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/rabbit-legacy.mjs +0 -202
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/rabbit.js +0 -206
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/rabbit.mjs +0 -204
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/rc4.js +0 -153
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/rc4.mjs +0 -151
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/ripemd160.js +0 -277
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/ripemd160.mjs +0 -275
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha1.js +0 -160
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha1.mjs +0 -158
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha224.js +0 -91
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha224.mjs +0 -89
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha256.js +0 -209
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha256.mjs +0 -207
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha3.js +0 -337
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha3.mjs +0 -335
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha384.js +0 -95
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha384.mjs +0 -93
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha512.js +0 -337
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/sha512.mjs +0 -335
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/tripledes.js +0 -793
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/tripledes.mjs +0 -791
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/x64-core.js +0 -314
- package/dist/node_modules/.pnpm/crypto-js@4.2.0/node_modules/crypto-js/x64-core.mjs +0 -312
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/jws/compact/verify.js +0 -26
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/jws/compact/verify.mjs +0 -24
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/jws/flattened/verify.js +0 -127
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/jws/flattened/verify.mjs +0 -125
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/jwt/verify.js +0 -20
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/jwt/verify.mjs +0 -18
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/key/import.js +0 -31
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/key/import.mjs +0 -29
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/buffer_utils.js +0 -18
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/buffer_utils.mjs +0 -14
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/check_key_type.js +0 -82
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/check_key_type.mjs +0 -80
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/crypto_key.js +0 -103
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/crypto_key.mjs +0 -101
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/epoch.js +0 -7
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/epoch.mjs +0 -3
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/invalid_key_input.js +0 -38
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/invalid_key_input.mjs +0 -33
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/is_disjoint.js +0 -27
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/is_disjoint.mjs +0 -23
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/is_jwk.js +0 -21
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/is_jwk.mjs +0 -16
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/is_object.js +0 -22
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/is_object.mjs +0 -18
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/jwt_claims_set.js +0 -111
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/jwt_claims_set.mjs +0 -107
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/secs.js +0 -61
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/secs.mjs +0 -57
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/validate_algorithms.js +0 -16
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/validate_algorithms.mjs +0 -12
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/validate_crit.js +0 -40
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/lib/validate_crit.mjs +0 -36
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/base64url.js +0 -15
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/base64url.mjs +0 -13
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/check_key_length.js +0 -23
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/check_key_length.mjs +0 -19
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/dsa_digest.js +0 -30
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/dsa_digest.mjs +0 -26
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/get_named_curve.js +0 -60
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/get_named_curve.mjs +0 -56
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/get_sign_verify_key.js +0 -35
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/get_sign_verify_key.mjs +0 -31
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/hmac_digest.js +0 -20
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/hmac_digest.mjs +0 -16
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/is_key_like.js +0 -15
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/is_key_like.mjs +0 -10
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/is_key_object.js +0 -28
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/is_key_object.mjs +0 -5
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/jwk_to_key.js +0 -14
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/jwk_to_key.mjs +0 -10
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/node_key.js +0 -115
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/node_key.mjs +0 -111
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/sign.js +0 -42
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/sign.mjs +0 -19
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/verify.js +0 -54
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/verify.mjs +0 -31
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/webcrypto.js +0 -32
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/runtime/webcrypto.mjs +0 -7
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/util/errors.js +0 -69
- package/dist/node_modules/.pnpm/jose@5.10.0/node_modules/jose/dist/node/esm/util/errors.mjs +0 -60
- package/dist/node_modules/.pnpm/neverthrow@7.2.0/node_modules/neverthrow/dist/index.es.js +0 -422
- package/dist/node_modules/.pnpm/neverthrow@7.2.0/node_modules/neverthrow/dist/index.es.mjs +0 -415
- package/dist/node_modules/.pnpm/uncrypto@0.1.3/node_modules/uncrypto/dist/crypto.web.js +0 -6
- package/dist/node_modules/.pnpm/uncrypto@0.1.3/node_modules/uncrypto/dist/crypto.web.mjs +0 -4
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var tslib = require('tslib');
|
|
4
4
|
var client = require('@prisma/client');
|
|
5
5
|
var constants = require('./constants.js');
|
|
6
6
|
var prisma = require('../../prisma/prisma.js');
|
|
@@ -9,7 +9,7 @@ var prisma = require('../../prisma/prisma.js');
|
|
|
9
9
|
class TransactionService {
|
|
10
10
|
// Create transaction order
|
|
11
11
|
createTransaction(data, tx) {
|
|
12
|
-
return
|
|
12
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
13
13
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
14
14
|
return yield client.transaction.create({
|
|
15
15
|
data: {
|
|
@@ -42,7 +42,7 @@ class TransactionService {
|
|
|
42
42
|
}
|
|
43
43
|
// Find transaction by order ID
|
|
44
44
|
findByOrderId(orderId, tx) {
|
|
45
|
-
return
|
|
45
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
46
46
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
47
47
|
return yield client.transaction.findUnique({
|
|
48
48
|
where: { orderId, deleted: 0 }
|
|
@@ -51,7 +51,7 @@ class TransactionService {
|
|
|
51
51
|
}
|
|
52
52
|
// Find transaction by pay session ID
|
|
53
53
|
findByPaySessionId(paySessionId, tx) {
|
|
54
|
-
return
|
|
54
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
55
55
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
56
56
|
return yield client.transaction.findFirst({
|
|
57
57
|
where: { paySessionId, deleted: 0 }
|
|
@@ -60,7 +60,7 @@ class TransactionService {
|
|
|
60
60
|
}
|
|
61
61
|
// Find transaction by pay transaction ID
|
|
62
62
|
findByPayTransactionId(payTransactionId, tx) {
|
|
63
|
-
return
|
|
63
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
64
64
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
65
65
|
return yield client.transaction.findFirst({
|
|
66
66
|
where: { payTransactionId, deleted: 0 },
|
|
@@ -69,7 +69,7 @@ class TransactionService {
|
|
|
69
69
|
}
|
|
70
70
|
// Find transactions by user ID
|
|
71
71
|
findByUserId(userId, params, tx) {
|
|
72
|
-
return
|
|
72
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
73
73
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
74
74
|
const where = { userId, deleted: 0 };
|
|
75
75
|
if (params === null || params === void 0 ? void 0 : params.orderStatus) {
|
|
@@ -92,7 +92,7 @@ class TransactionService {
|
|
|
92
92
|
}
|
|
93
93
|
// Update transaction status
|
|
94
94
|
updateStatus(orderId, orderStatus, additionalData, tx) {
|
|
95
|
-
return
|
|
95
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
96
96
|
const updateData = Object.assign({ orderStatus }, additionalData);
|
|
97
97
|
console.log(`orderId: ${orderId}\n updateData: ${JSON.stringify(updateData)}`);
|
|
98
98
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
@@ -103,7 +103,7 @@ class TransactionService {
|
|
|
103
103
|
});
|
|
104
104
|
}
|
|
105
105
|
update(orderId, data, tx) {
|
|
106
|
-
return
|
|
106
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
107
107
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
108
108
|
return yield client.transaction.update({
|
|
109
109
|
where: { orderId },
|
|
@@ -113,7 +113,7 @@ class TransactionService {
|
|
|
113
113
|
}
|
|
114
114
|
// Complete payment
|
|
115
115
|
completePayment(orderId, paymentData, tx) {
|
|
116
|
-
return
|
|
116
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
117
117
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
118
118
|
return yield client.transaction.update({
|
|
119
119
|
where: { orderId },
|
|
@@ -132,7 +132,7 @@ class TransactionService {
|
|
|
132
132
|
}
|
|
133
133
|
// Process refund
|
|
134
134
|
processRefund(orderId, refundData, tx) {
|
|
135
|
-
return
|
|
135
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
136
136
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
137
137
|
const transaction = yield this.findByOrderId(orderId, tx);
|
|
138
138
|
if (!transaction) {
|
|
@@ -156,7 +156,7 @@ class TransactionService {
|
|
|
156
156
|
}
|
|
157
157
|
// Cancel order
|
|
158
158
|
cancelOrder(orderId, reason, tx) {
|
|
159
|
-
return
|
|
159
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
160
160
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
161
161
|
return yield client.transaction.update({
|
|
162
162
|
where: { orderId },
|
|
@@ -170,7 +170,7 @@ class TransactionService {
|
|
|
170
170
|
}
|
|
171
171
|
// Get expired orders
|
|
172
172
|
getExpiredOrders(tx) {
|
|
173
|
-
return
|
|
173
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
174
174
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
175
175
|
return yield client.transaction.findMany({
|
|
176
176
|
where: {
|
|
@@ -185,7 +185,7 @@ class TransactionService {
|
|
|
185
185
|
}
|
|
186
186
|
// Update expired orders status
|
|
187
187
|
updateExpiredOrders(tx) {
|
|
188
|
-
return
|
|
188
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
189
189
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
190
190
|
const result = yield client.transaction.updateMany({
|
|
191
191
|
where: {
|
|
@@ -206,7 +206,7 @@ class TransactionService {
|
|
|
206
206
|
}
|
|
207
207
|
// Get subscription related transactions
|
|
208
208
|
getSubscriptionTransactions(paySubscriptionId, tx) {
|
|
209
|
-
return
|
|
209
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
210
210
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
211
211
|
return yield client.transaction.findMany({
|
|
212
212
|
where: { paySubscriptionId, deleted: 0 },
|
|
@@ -216,7 +216,7 @@ class TransactionService {
|
|
|
216
216
|
}
|
|
217
217
|
// Get revenue statistics
|
|
218
218
|
getRevenueStats(startDate, endDate, tx) {
|
|
219
|
-
return
|
|
219
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
220
220
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
221
221
|
const where = {
|
|
222
222
|
orderStatus: constants.OrderStatus.SUCCESS,
|
|
@@ -276,7 +276,7 @@ class TransactionService {
|
|
|
276
276
|
}
|
|
277
277
|
// Get daily revenue
|
|
278
278
|
getDailyRevenue() {
|
|
279
|
-
return
|
|
279
|
+
return tslib.__awaiter(this, arguments, void 0, function* (days = 30, tx) {
|
|
280
280
|
const startDate = new Date();
|
|
281
281
|
startDate.setDate(startDate.getDate() - days);
|
|
282
282
|
const client$1 = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
@@ -300,7 +300,7 @@ class TransactionService {
|
|
|
300
300
|
}
|
|
301
301
|
// Soft Delete transaction
|
|
302
302
|
deleteTransaction(orderId, tx) {
|
|
303
|
-
return
|
|
303
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
304
304
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
305
305
|
yield client.transaction.update({
|
|
306
306
|
where: { orderId },
|
|
@@ -310,7 +310,7 @@ class TransactionService {
|
|
|
310
310
|
}
|
|
311
311
|
// Create batch transactions
|
|
312
312
|
createBatchTransactions(transactions, tx) {
|
|
313
|
-
return
|
|
313
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
314
314
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
315
315
|
const result = yield client.transaction.createMany({
|
|
316
316
|
data: transactions,
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __awaiter } from '
|
|
1
|
+
import { __awaiter } from 'tslib';
|
|
2
2
|
import { Prisma } from '@prisma/client';
|
|
3
3
|
import { PaymentStatus, OrderStatus, TransactionType } from './constants.mjs';
|
|
4
4
|
import { checkAndFallbackWithNonTCClient } from '../../prisma/prisma.mjs';
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var tslib = require('tslib');
|
|
4
4
|
var constants = require('./constants.js');
|
|
5
5
|
var prisma = require('../../prisma/prisma.js');
|
|
6
6
|
|
|
@@ -8,7 +8,7 @@ var prisma = require('../../prisma/prisma.js');
|
|
|
8
8
|
class UserService {
|
|
9
9
|
// Create user
|
|
10
10
|
createUser(data, tx) {
|
|
11
|
-
return
|
|
11
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
12
12
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
13
13
|
return yield client.user.create({
|
|
14
14
|
data: {
|
|
@@ -25,7 +25,7 @@ class UserService {
|
|
|
25
25
|
}
|
|
26
26
|
// Find user by ID
|
|
27
27
|
findByUserId(userId, tx) {
|
|
28
|
-
return
|
|
28
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
29
29
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
30
30
|
return yield client.user.findUnique({
|
|
31
31
|
where: { userId },
|
|
@@ -34,7 +34,7 @@ class UserService {
|
|
|
34
34
|
}
|
|
35
35
|
// Find user by email
|
|
36
36
|
findByEmail(email, tx) {
|
|
37
|
-
return
|
|
37
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
38
38
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
39
39
|
return yield client.user.findFirst({
|
|
40
40
|
where: { email },
|
|
@@ -43,7 +43,7 @@ class UserService {
|
|
|
43
43
|
}
|
|
44
44
|
// Find users by Fingerprint ID, fp_id can be used for multi user_ids
|
|
45
45
|
findListByFingerprintId(fingerprintId, tx) {
|
|
46
|
-
return
|
|
46
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
47
47
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
48
48
|
return yield client.user.findMany({
|
|
49
49
|
where: {
|
|
@@ -58,7 +58,7 @@ class UserService {
|
|
|
58
58
|
}
|
|
59
59
|
// Find user by Clerk user ID
|
|
60
60
|
findByClerkUserId(clerkUserId, tx) {
|
|
61
|
-
return
|
|
61
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
62
62
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
63
63
|
// DB的部分索引与这里的状态查询相对应,因而可以使用findUnique
|
|
64
64
|
return yield client.user.findUnique({
|
|
@@ -73,7 +73,7 @@ class UserService {
|
|
|
73
73
|
}
|
|
74
74
|
// Update user
|
|
75
75
|
updateUser(userId, data, tx) {
|
|
76
|
-
return
|
|
76
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
77
77
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
78
78
|
return yield client.user.update({
|
|
79
79
|
where: { userId },
|
|
@@ -82,7 +82,7 @@ class UserService {
|
|
|
82
82
|
});
|
|
83
83
|
}
|
|
84
84
|
updateStripeCustomerId(userId, stripeCusId, tx) {
|
|
85
|
-
return
|
|
85
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
86
86
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
87
87
|
return yield client.user.update({
|
|
88
88
|
where: { userId },
|
|
@@ -92,7 +92,7 @@ class UserService {
|
|
|
92
92
|
}
|
|
93
93
|
// Upgrade anonymous user to registered user
|
|
94
94
|
upgradeToRegistered(userId, data, tx) {
|
|
95
|
-
return
|
|
95
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
96
96
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
97
97
|
return yield client.user.update({
|
|
98
98
|
where: { userId },
|
|
@@ -106,7 +106,7 @@ class UserService {
|
|
|
106
106
|
});
|
|
107
107
|
}
|
|
108
108
|
unregister(userId, tx) {
|
|
109
|
-
return
|
|
109
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
110
110
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
111
111
|
return yield client.user.update({
|
|
112
112
|
where: { userId },
|
|
@@ -118,7 +118,7 @@ class UserService {
|
|
|
118
118
|
}
|
|
119
119
|
// Get user list
|
|
120
120
|
listUsers(params, tx) {
|
|
121
|
-
return
|
|
121
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
122
122
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
123
123
|
const { skip = 0, take = 10, status, orderBy = { createdAt: 'desc' } } = params;
|
|
124
124
|
const where = status ? { status } : {};
|
|
@@ -136,7 +136,7 @@ class UserService {
|
|
|
136
136
|
}
|
|
137
137
|
// 批量创建匿名用户
|
|
138
138
|
createBatchAnonymousUsers(fingerprintIds, tx) {
|
|
139
|
-
return
|
|
139
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
140
140
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
141
141
|
const data = fingerprintIds.map((fingerprintId) => ({
|
|
142
142
|
fingerprintId,
|
|
@@ -151,7 +151,7 @@ class UserService {
|
|
|
151
151
|
}
|
|
152
152
|
// Check if user exists
|
|
153
153
|
exists(userId, tx) {
|
|
154
|
-
return
|
|
154
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
155
155
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
156
156
|
const count = yield client.user.count({
|
|
157
157
|
where: { userId },
|
|
@@ -161,7 +161,7 @@ class UserService {
|
|
|
161
161
|
}
|
|
162
162
|
// Get user statistics
|
|
163
163
|
getUserStats(tx) {
|
|
164
|
-
return
|
|
164
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
165
165
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
166
166
|
const [total, anonymous, registered, frozen, deleted] = yield Promise.all([
|
|
167
167
|
client.user.count(),
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __awaiter } from '
|
|
1
|
+
import { __awaiter } from 'tslib';
|
|
2
2
|
import { UserStatus } from './constants.mjs';
|
|
3
3
|
import { checkAndFallbackWithNonTCClient } from '../../prisma/prisma.mjs';
|
|
4
4
|
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var tslib = require('tslib');
|
|
4
4
|
var prisma = require('../../prisma/prisma.js');
|
|
5
5
|
|
|
6
6
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
7
7
|
class UserBackupService {
|
|
8
8
|
// Create user backup
|
|
9
9
|
createBackup(data, tx) {
|
|
10
|
-
return
|
|
10
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
11
11
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
12
12
|
return yield client.userBackup.create({
|
|
13
13
|
data: {
|
|
@@ -25,7 +25,7 @@ class UserBackupService {
|
|
|
25
25
|
}
|
|
26
26
|
// Backup user basic data
|
|
27
27
|
backupUserData(userId, tx) {
|
|
28
|
-
return
|
|
28
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
29
29
|
var _a, _b;
|
|
30
30
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
31
31
|
// Get user basic data
|
|
@@ -57,7 +57,7 @@ class UserBackupService {
|
|
|
57
57
|
}
|
|
58
58
|
// Find backup by original user ID
|
|
59
59
|
findByOriginalUserId(originalUserId, tx) {
|
|
60
|
-
return
|
|
60
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
61
61
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
62
62
|
return yield client.userBackup.findMany({
|
|
63
63
|
where: { originalUserId, deleted: 0 },
|
|
@@ -67,7 +67,7 @@ class UserBackupService {
|
|
|
67
67
|
}
|
|
68
68
|
// Find backup by email
|
|
69
69
|
findByEmail(email, tx) {
|
|
70
|
-
return
|
|
70
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
71
71
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
72
72
|
return yield client.userBackup.findMany({
|
|
73
73
|
where: { email, deleted: 0 },
|
|
@@ -77,7 +77,7 @@ class UserBackupService {
|
|
|
77
77
|
}
|
|
78
78
|
// Find backup by Fingerprint ID
|
|
79
79
|
findByFingerprintId(fingerprintId, tx) {
|
|
80
|
-
return
|
|
80
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
81
81
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
82
82
|
return yield client.userBackup.findMany({
|
|
83
83
|
where: { fingerprintId, deleted: 0 },
|
|
@@ -87,7 +87,7 @@ class UserBackupService {
|
|
|
87
87
|
}
|
|
88
88
|
// Find backup by Clerk user ID
|
|
89
89
|
findByClerkUserId(clerkUserId, tx) {
|
|
90
|
-
return
|
|
90
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
91
91
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
92
92
|
return yield client.userBackup.findMany({
|
|
93
93
|
where: { clerkUserId, deleted: 0 },
|
|
@@ -97,7 +97,7 @@ class UserBackupService {
|
|
|
97
97
|
}
|
|
98
98
|
// Find backup by backup ID
|
|
99
99
|
getBackupById(id, tx) {
|
|
100
|
-
return
|
|
100
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
101
101
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
102
102
|
return yield client.userBackup.findFirst({
|
|
103
103
|
where: { id, deleted: 0 },
|
|
@@ -106,7 +106,7 @@ class UserBackupService {
|
|
|
106
106
|
}
|
|
107
107
|
// Restore user data from backup
|
|
108
108
|
restoreUserData(backupId, tx) {
|
|
109
|
-
return
|
|
109
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
110
110
|
const backup = yield this.getBackupById(backupId, tx);
|
|
111
111
|
if (!backup) {
|
|
112
112
|
throw new Error('Backup not found');
|
|
@@ -115,7 +115,7 @@ class UserBackupService {
|
|
|
115
115
|
if (!backupData) {
|
|
116
116
|
throw new Error('No backup data available');
|
|
117
117
|
}
|
|
118
|
-
const restore = (client) =>
|
|
118
|
+
const restore = (client) => tslib.__awaiter(this, void 0, void 0, function* () {
|
|
119
119
|
const user = yield client.user.create({
|
|
120
120
|
data: {
|
|
121
121
|
fingerprintId: backupData.fingerprintId,
|
|
@@ -133,7 +133,7 @@ class UserBackupService {
|
|
|
133
133
|
}
|
|
134
134
|
// List backups
|
|
135
135
|
listBackups(params, tx) {
|
|
136
|
-
return
|
|
136
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
137
137
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
138
138
|
const where = { deleted: 0 };
|
|
139
139
|
if (params.startDate || params.endDate) {
|
|
@@ -157,7 +157,7 @@ class UserBackupService {
|
|
|
157
157
|
}
|
|
158
158
|
// Soft Delete old backups (data cleanup)
|
|
159
159
|
deleteOldBackups() {
|
|
160
|
-
return
|
|
160
|
+
return tslib.__awaiter(this, arguments, void 0, function* (daysToKeep = 90, tx) {
|
|
161
161
|
const cutoffDate = new Date();
|
|
162
162
|
cutoffDate.setDate(cutoffDate.getDate() - daysToKeep);
|
|
163
163
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
@@ -177,7 +177,7 @@ class UserBackupService {
|
|
|
177
177
|
}
|
|
178
178
|
// Get backup statistics
|
|
179
179
|
getBackupStats(tx) {
|
|
180
|
-
return
|
|
180
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
181
181
|
const client = prisma.checkAndFallbackWithNonTCClient(tx);
|
|
182
182
|
const now = new Date();
|
|
183
183
|
const oneDayAgo = new Date(now.getTime() - 24 * 60 * 60 * 1000);
|
|
@@ -218,7 +218,7 @@ class UserBackupService {
|
|
|
218
218
|
}
|
|
219
219
|
// Export backup data as JSON
|
|
220
220
|
exportBackup(backupId, tx) {
|
|
221
|
-
return
|
|
221
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
222
222
|
const backup = yield this.getBackupById(backupId, tx);
|
|
223
223
|
if (!backup) {
|
|
224
224
|
throw new Error('Backup not found');
|
|
@@ -228,7 +228,7 @@ class UserBackupService {
|
|
|
228
228
|
}
|
|
229
229
|
// Batch backup users (for scheduled backup tasks)
|
|
230
230
|
batchBackupUsers(userIds, tx) {
|
|
231
|
-
return
|
|
231
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
232
232
|
let successCount = 0;
|
|
233
233
|
for (const userId of userIds) {
|
|
234
234
|
try {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { __awaiter } from '
|
|
1
|
+
import { __awaiter } from 'tslib';
|
|
2
2
|
import { checkAndFallbackWithNonTCClient } from '../../prisma/prisma.mjs';
|
|
3
3
|
|
|
4
4
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var tslib = require('tslib');
|
|
4
4
|
var billing_aggregate_service = require('../aggregate/billing.aggregate.service.js');
|
|
5
5
|
var constants = require('../database/constants.js');
|
|
6
6
|
require('../../prisma/prisma.js');
|
|
@@ -31,7 +31,7 @@ const isPaymentSettled = (paymentStatus) => paymentStatus === constants.PaymentS
|
|
|
31
31
|
* Main event handler - routes events to specific handlers
|
|
32
32
|
*/
|
|
33
33
|
function handleStripeEvent(event) {
|
|
34
|
-
return
|
|
34
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
35
35
|
console.log(`Processing Stripe event: ${event.type}`);
|
|
36
36
|
try {
|
|
37
37
|
switch (event.type) {
|
|
@@ -76,7 +76,7 @@ function handleStripeEvent(event) {
|
|
|
76
76
|
});
|
|
77
77
|
}
|
|
78
78
|
function handleCheckoutCompleted(session) {
|
|
79
|
-
return
|
|
79
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
80
80
|
var _a;
|
|
81
81
|
console.log(`Checkout session completed: ${session.id}`);
|
|
82
82
|
// 1. Get transaction by session ID or order ID
|
|
@@ -114,7 +114,7 @@ function handleCheckoutCompleted(session) {
|
|
|
114
114
|
});
|
|
115
115
|
}
|
|
116
116
|
function handleSubscriptionCheckoutInit(session, transaction) {
|
|
117
|
-
return
|
|
117
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
118
118
|
var _a, _b, _c, _d;
|
|
119
119
|
console.log(`Processing subscription checkout: ${session.id}`);
|
|
120
120
|
// 1. Get subscription ID from session
|
|
@@ -158,7 +158,7 @@ function handleSubscriptionCheckoutInit(session, transaction) {
|
|
|
158
158
|
});
|
|
159
159
|
}
|
|
160
160
|
function handleOneTimeCheckout(session, transaction, paymentStatus) {
|
|
161
|
-
return
|
|
161
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
162
162
|
var _a;
|
|
163
163
|
console.log(`Processing one-time payment checkout: ${session.id}`);
|
|
164
164
|
// 1. Calculate one-time credit expiration
|
|
@@ -182,7 +182,7 @@ function handleOneTimeCheckout(session, transaction, paymentStatus) {
|
|
|
182
182
|
});
|
|
183
183
|
}
|
|
184
184
|
function handleInvoicePaid(invoice) {
|
|
185
|
-
return
|
|
185
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
186
186
|
var _a, _b, _c, _d, _e, _f;
|
|
187
187
|
console.log(`Invoice paid: ${invoice.id}`);
|
|
188
188
|
// ===== STEP 1: EXTRACT AND VALIDATE DATA FROM INVOICE (BEFORE TRANSACTION) =====
|
|
@@ -310,7 +310,7 @@ function handleInvoicePaid(invoice) {
|
|
|
310
310
|
* Handle customer.subscription.deleted
|
|
311
311
|
*/
|
|
312
312
|
function handleSubscriptionDeleted(stripeSubscription) {
|
|
313
|
-
return
|
|
313
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
314
314
|
const subscriptionId = stripeSubscription.id;
|
|
315
315
|
console.log(`Subscription deleted: ${subscriptionId}`);
|
|
316
316
|
const userCanceledAt = stripeSubscription.canceled_at;
|
|
@@ -342,7 +342,7 @@ function handleSubscriptionDeleted(stripeSubscription) {
|
|
|
342
342
|
});
|
|
343
343
|
}
|
|
344
344
|
function handleAsyncPaymentSucceeded(session) {
|
|
345
|
-
return
|
|
345
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
346
346
|
console.log(`Async payment succeeded: ${session.id}`);
|
|
347
347
|
const stripe = stripeConfig.getStripe();
|
|
348
348
|
// Retrieve the latest session state to ensure payment_status is up to date
|
|
@@ -351,7 +351,7 @@ function handleAsyncPaymentSucceeded(session) {
|
|
|
351
351
|
});
|
|
352
352
|
}
|
|
353
353
|
function handleAsyncPaymentFailed(session) {
|
|
354
|
-
return
|
|
354
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
355
355
|
var _a;
|
|
356
356
|
console.log(`Async payment failed: ${session.id}`);
|
|
357
357
|
const orderId = (_a = session.metadata) === null || _a === void 0 ? void 0 : _a.order_id;
|
|
@@ -372,7 +372,7 @@ function handleAsyncPaymentFailed(session) {
|
|
|
372
372
|
});
|
|
373
373
|
}
|
|
374
374
|
function handleInvoicePaymentFailed(invoice) {
|
|
375
|
-
return
|
|
375
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
376
376
|
var _a;
|
|
377
377
|
console.log(`Invoice payment-failed event: ${invoice.id}`);
|
|
378
378
|
const parentDetails = (_a = invoice.parent) === null || _a === void 0 ? void 0 : _a.subscription_details;
|
|
@@ -452,7 +452,7 @@ function handleInvoicePaymentFailed(invoice) {
|
|
|
452
452
|
});
|
|
453
453
|
}
|
|
454
454
|
function handleSubscriptionCreated(stripeSubscription) {
|
|
455
|
-
return
|
|
455
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
456
456
|
console.log(`Subscription created: ${stripeSubscription.id}`);
|
|
457
457
|
// Usually handled by checkout.session.completed
|
|
458
458
|
});
|
|
@@ -461,7 +461,7 @@ function handleSubscriptionCreated(stripeSubscription) {
|
|
|
461
461
|
* Handle subscription updated TODO
|
|
462
462
|
*/
|
|
463
463
|
function handleSubscriptionUpdated(stripeSubscription) {
|
|
464
|
-
return
|
|
464
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
465
465
|
var _a, _b, _c, _d;
|
|
466
466
|
console.log(`Subscription updated: ${stripeSubscription.id}`);
|
|
467
467
|
const orderId = (_a = stripeSubscription.metadata) === null || _a === void 0 ? void 0 : _a.order_id;
|
|
@@ -493,7 +493,7 @@ function handleSubscriptionUpdated(stripeSubscription) {
|
|
|
493
493
|
});
|
|
494
494
|
}
|
|
495
495
|
function handleChargeRefunded(charge) {
|
|
496
|
-
return
|
|
496
|
+
return tslib.__awaiter(this, void 0, void 0, function* () {
|
|
497
497
|
var _a;
|
|
498
498
|
console.log(`Charge refunded: ${charge.id}`);
|
|
499
499
|
// Find transaction by payment intent
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { __awaiter } from '
|
|
1
|
+
import { __awaiter } from 'tslib';
|
|
2
2
|
import { billingAggregateService } from '../aggregate/billing.aggregate.service.mjs';
|
|
3
|
-
import { OrderStatus, TransactionType,
|
|
3
|
+
import { OrderStatus, TransactionType, PaymentStatus, BillingReason } from '../database/constants.mjs';
|
|
4
4
|
import '../../prisma/prisma.mjs';
|
|
5
5
|
import { subscriptionService } from '../database/subscription.service.mjs';
|
|
6
6
|
import '../database/credit.service.mjs';
|
|
@@ -9,7 +9,7 @@ import '@prisma/client';
|
|
|
9
9
|
import { Apilogger } from '../database/apilog.service.mjs';
|
|
10
10
|
import { oneTimeExpiredDays } from '../../lib/credit-init.mjs';
|
|
11
11
|
import { getCreditsFromPriceId } from '../../lib/money-price-config.mjs';
|
|
12
|
-
import {
|
|
12
|
+
import { fetchPaymentId, getStripe } from '../../lib/stripe-config.mjs';
|
|
13
13
|
import { viewLocalTime } from '@windrun-huaiin/lib/utils';
|
|
14
14
|
|
|
15
15
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@windrun-huaiin/backend-core",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "16.0.0",
|
|
4
4
|
"description": "Shared backend primitives: Prisma schema/client, database services, routing helpers",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -37,6 +37,11 @@
|
|
|
37
37
|
"import": "./dist/services/stripe/index.mjs",
|
|
38
38
|
"require": "./dist/services/stripe/index.js"
|
|
39
39
|
},
|
|
40
|
+
"./ai": {
|
|
41
|
+
"types": "./dist/services/ai/index.d.ts",
|
|
42
|
+
"import": "./dist/services/ai/index.mjs",
|
|
43
|
+
"require": "./dist/services/ai/index.js"
|
|
44
|
+
},
|
|
40
45
|
"./lib": {
|
|
41
46
|
"types": "./dist/lib/index.d.ts",
|
|
42
47
|
"import": "./dist/lib/index.mjs",
|
|
@@ -86,6 +91,8 @@
|
|
|
86
91
|
},
|
|
87
92
|
"files": [
|
|
88
93
|
"dist",
|
|
94
|
+
"!dist/node_modules",
|
|
95
|
+
"!dist/node_modules/**",
|
|
89
96
|
"src",
|
|
90
97
|
"prisma",
|
|
91
98
|
"migrations",
|
|
@@ -103,9 +110,11 @@
|
|
|
103
110
|
"prisma": "^6.19.0",
|
|
104
111
|
"stripe": "20.0.0",
|
|
105
112
|
"svix": "^1.86.0",
|
|
113
|
+
"tslib": "^2.8.1",
|
|
106
114
|
"zod": "^4.3.6",
|
|
107
|
-
"@windrun-huaiin/
|
|
108
|
-
"@windrun-huaiin/
|
|
115
|
+
"@windrun-huaiin/contracts": "^1.0.0",
|
|
116
|
+
"@windrun-huaiin/lib": "^16.0.0",
|
|
117
|
+
"@windrun-huaiin/third-ui": "^16.0.0"
|
|
109
118
|
},
|
|
110
119
|
"devDependencies": {
|
|
111
120
|
"@rollup/plugin-alias": "^5.1.1",
|
|
@@ -122,7 +131,8 @@
|
|
|
122
131
|
"next": "16.1.6",
|
|
123
132
|
"prisma": "^6.19.0",
|
|
124
133
|
"stripe": "20.0.0",
|
|
125
|
-
"svix": "^1.86.0"
|
|
134
|
+
"svix": "^1.86.0",
|
|
135
|
+
"@windrun-huaiin/contracts": "^1.0.0"
|
|
126
136
|
},
|
|
127
137
|
"publishConfig": {
|
|
128
138
|
"access": "public"
|