sa2kit 3.1.0 → 3.2.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/README.md +5 -5
- package/dist/AliyunOSSProvider-7IOT5U6M.js +15 -0
- package/dist/{AliyunOSSProvider-4GRL2FJB.js.map → AliyunOSSProvider-7IOT5U6M.js.map} +1 -1
- package/dist/AliyunOSSProvider-ZXZM7OQA.mjs +6 -0
- package/dist/{AliyunOSSProvider-QNVFIZ7Q.mjs.map → AliyunOSSProvider-ZXZM7OQA.mjs.map} +1 -1
- package/dist/LocalStorageProvider-KJKRCKBS.js +15 -0
- package/dist/{LocalStorageProvider-PFA2DMIJ.js.map → LocalStorageProvider-KJKRCKBS.js.map} +1 -1
- package/dist/LocalStorageProvider-O22465NY.mjs +6 -0
- package/dist/{LocalStorageProvider-J5RHV37G.mjs.map → LocalStorageProvider-O22465NY.mjs.map} +1 -1
- package/dist/{chunk-SLKOEYFH.js → chunk-2234T4A6.js} +5 -5
- package/dist/chunk-2234T4A6.js.map +1 -0
- package/dist/{chunk-HQLKOXG7.js → chunk-36KGNXKW.js} +3 -3
- package/dist/{chunk-HQLKOXG7.js.map → chunk-36KGNXKW.js.map} +1 -1
- package/dist/{chunk-BCE6RUZV.js → chunk-375C7WL7.js} +19 -19
- package/dist/chunk-375C7WL7.js.map +1 -0
- package/dist/{chunk-VMTEDX5H.js → chunk-3J24Z4MB.js} +34 -318
- package/dist/chunk-3J24Z4MB.js.map +1 -0
- package/dist/{chunk-PBI7FKMB.js → chunk-3QCATFQV.js} +3 -3
- package/dist/chunk-3QCATFQV.js.map +1 -0
- package/dist/{chunk-FXQOXLDE.js → chunk-3R6JHA6D.js} +4 -4
- package/dist/chunk-3R6JHA6D.js.map +1 -0
- package/dist/{chunk-ZRAW3HXA.js → chunk-4OXKHV7J.js} +3 -3
- package/dist/chunk-4OXKHV7J.js.map +1 -0
- package/dist/chunk-4PJM4752.js +4 -0
- package/dist/{chunk-5USIS3UM.js.map → chunk-4PJM4752.js.map} +1 -1
- package/dist/{chunk-3Z43XGA4.mjs → chunk-65JRVC3F.mjs} +4 -4
- package/dist/{chunk-3Z43XGA4.mjs.map → chunk-65JRVC3F.mjs.map} +1 -1
- package/dist/{chunk-Q5EDCKQA.js → chunk-6HL54I2B.js} +16 -16
- package/dist/chunk-6HL54I2B.js.map +1 -0
- package/dist/chunk-6V2MIQPF.mjs +77 -0
- package/dist/chunk-6V2MIQPF.mjs.map +1 -0
- package/dist/{chunk-C6KV7VTZ.mjs → chunk-7CRU2Y5X.mjs} +5 -5
- package/dist/chunk-7CRU2Y5X.mjs.map +1 -0
- package/dist/chunk-7PMT4L4I.js +324 -0
- package/dist/chunk-7PMT4L4I.js.map +1 -0
- package/dist/{chunk-XJ7ZAGC5.js → chunk-7VVZHFEM.js} +3 -3
- package/dist/chunk-7VVZHFEM.js.map +1 -0
- package/dist/chunk-AWHGIKTQ.js +56 -0
- package/dist/{chunk-FHLTPXAR.js.map → chunk-AWHGIKTQ.js.map} +1 -1
- package/dist/chunk-B3GYF6TY.js +37 -0
- package/dist/{chunk-2Y7BKFKZ.js.map → chunk-B3GYF6TY.js.map} +1 -1
- package/dist/{chunk-5FUAQLGC.mjs → chunk-BDBJFOXM.mjs} +3 -3
- package/dist/{chunk-5FUAQLGC.mjs.map → chunk-BDBJFOXM.mjs.map} +1 -1
- package/dist/{chunk-ZGVB35L2.mjs → chunk-BTW3SWQN.mjs} +3 -3
- package/dist/chunk-BTW3SWQN.mjs.map +1 -0
- package/dist/{chunk-I5ZPEDNR.mjs → chunk-CHYSSZ4E.mjs} +10 -10
- package/dist/chunk-CHYSSZ4E.mjs.map +1 -0
- package/dist/{chunk-FIUBFREP.mjs → chunk-DO6QYAZV.mjs} +5 -5
- package/dist/chunk-DO6QYAZV.mjs.map +1 -0
- package/dist/{chunk-MBANGIG3.mjs → chunk-DTR53LQO.mjs} +6 -6
- package/dist/chunk-DTR53LQO.mjs.map +1 -0
- package/dist/{chunk-EQXPL7TN.mjs → chunk-EI2S4XDG.mjs} +16 -5
- package/dist/chunk-EI2S4XDG.mjs.map +1 -0
- package/dist/{chunk-GSNGCENJ.js → chunk-EOZHUI46.js} +16 -4
- package/dist/chunk-EOZHUI46.js.map +1 -0
- package/dist/{chunk-25OFOKNF.js → chunk-F2BZIU67.js} +18 -5
- package/dist/chunk-F2BZIU67.js.map +1 -0
- package/dist/{chunk-AQPU2AXH.js → chunk-F2TEJSCP.js} +10 -10
- package/dist/chunk-F2TEJSCP.js.map +1 -0
- package/dist/{chunk-UCOE6SET.js → chunk-FCLS5R24.js} +3 -3
- package/dist/chunk-FCLS5R24.js.map +1 -0
- package/dist/{chunk-3NHAT7D4.mjs → chunk-FUA6ZGMI.mjs} +27 -12
- package/dist/chunk-FUA6ZGMI.mjs.map +1 -0
- package/dist/chunk-FY2X3LYR.mjs +3 -0
- package/dist/{chunk-VRN76M56.mjs.map → chunk-FY2X3LYR.mjs.map} +1 -1
- package/dist/{chunk-V7EVKD5G.mjs → chunk-GS4SAW25.mjs} +4 -4
- package/dist/chunk-GS4SAW25.mjs.map +1 -0
- package/dist/chunk-H56ICWUO.js +321 -0
- package/dist/chunk-H56ICWUO.js.map +1 -0
- package/dist/{chunk-HDMIOOZY.mjs → chunk-HG34SGMN.mjs} +4 -4
- package/dist/chunk-HG34SGMN.mjs.map +1 -0
- package/dist/chunk-HL4H2HF6.js +279 -0
- package/dist/chunk-HL4H2HF6.js.map +1 -0
- package/dist/chunk-IJIQUMAK.mjs +272 -0
- package/dist/chunk-IJIQUMAK.mjs.map +1 -0
- package/dist/{imageCrop/index.mjs → chunk-KEZFTDZT.mjs} +24 -6
- package/dist/chunk-KEZFTDZT.mjs.map +1 -0
- package/dist/{chunk-KQ643L7Z.js → chunk-KHOVC2KL.js} +3 -3
- package/dist/chunk-KHOVC2KL.js.map +1 -0
- package/dist/{chunk-6PMXAK7F.js → chunk-KRBSTLKC.js} +57 -57
- package/dist/chunk-KRBSTLKC.js.map +1 -0
- package/dist/chunk-KVYHCGRY.js +2011 -0
- package/dist/chunk-KVYHCGRY.js.map +1 -0
- package/dist/{chunk-G7UBMCUT.mjs → chunk-LZ5YTMMP.mjs} +3 -3
- package/dist/chunk-LZ5YTMMP.mjs.map +1 -0
- package/dist/{chunk-WW4GE6CZ.js → chunk-MJ6XJGAL.js} +23 -119
- package/dist/chunk-MJ6XJGAL.js.map +1 -0
- package/dist/{chunk-NCRP2YHY.mjs → chunk-MKLXCV4Z.mjs} +8 -96
- package/dist/chunk-MKLXCV4Z.mjs.map +1 -0
- package/dist/chunk-MMDSZIXD.mjs +286 -0
- package/dist/chunk-MMDSZIXD.mjs.map +1 -0
- package/dist/{chunk-TC5YU6A4.mjs → chunk-N2O3OX5Y.mjs} +3 -3
- package/dist/chunk-N2O3OX5Y.mjs.map +1 -0
- package/dist/{chunk-3FRAIS4T.mjs → chunk-O6NNSPWD.mjs} +5 -5
- package/dist/{chunk-3FRAIS4T.mjs.map → chunk-O6NNSPWD.mjs.map} +1 -1
- package/dist/chunk-OIRZXSYM.js +80 -0
- package/dist/chunk-OIRZXSYM.js.map +1 -0
- package/dist/{chunk-Q5VFBPMG.mjs → chunk-P7JQRNBJ.mjs} +3 -3
- package/dist/chunk-P7JQRNBJ.mjs.map +1 -0
- package/dist/{chunk-BIHYZA67.mjs → chunk-PLIG5257.mjs} +18 -18
- package/dist/chunk-PLIG5257.mjs.map +1 -0
- package/dist/chunk-QIF4MG5V.mjs +283 -0
- package/dist/chunk-QIF4MG5V.mjs.map +1 -0
- package/dist/{chunk-4OOANEJV.mjs → chunk-RHECN4E2.mjs} +21 -21
- package/dist/chunk-RHECN4E2.mjs.map +1 -0
- package/dist/{chunk-YOTQG4NP.mjs → chunk-RHHTZTIN.mjs} +4 -4
- package/dist/chunk-RHHTZTIN.mjs.map +1 -0
- package/dist/{chunk-G6NSKJMH.js → chunk-RRQ2X26Z.js} +4 -4
- package/dist/chunk-RRQ2X26Z.js.map +1 -0
- package/dist/{chunk-4WBCWJSN.js → chunk-RST2T54Y.js} +7 -7
- package/dist/chunk-RST2T54Y.js.map +1 -0
- package/dist/{chunk-R2DXTE2L.js → chunk-RVNQI6BI.js} +4 -4
- package/dist/chunk-RVNQI6BI.js.map +1 -0
- package/dist/{chunk-SKFEJPMJ.mjs → chunk-S3K4LTRI.mjs} +6 -6
- package/dist/chunk-S3K4LTRI.mjs.map +1 -0
- package/dist/{chunk-ZM2SZJTZ.js → chunk-SWZ5XNF6.js} +9 -9
- package/dist/chunk-SWZ5XNF6.js.map +1 -0
- package/dist/{chunk-QSKLQX6H.js → chunk-U7HNBCBS.js} +16 -16
- package/dist/chunk-U7HNBCBS.js.map +1 -0
- package/dist/{chunk-CIVO4R6N.mjs → chunk-UJS3YSD3.mjs} +3 -3
- package/dist/chunk-UJS3YSD3.mjs.map +1 -0
- package/dist/{chunk-G6HXNQ2U.mjs → chunk-UJUWDF7M.mjs} +8 -8
- package/dist/chunk-UJUWDF7M.mjs.map +1 -0
- package/dist/{chunk-CAYOQDBR.js → chunk-UR5NENGE.js} +3 -3
- package/dist/chunk-UR5NENGE.js.map +1 -0
- package/dist/{chunk-QXAOXBVB.mjs → chunk-V7HGBDCB.mjs} +3 -3
- package/dist/chunk-V7HGBDCB.mjs.map +1 -0
- package/dist/{chunk-ATUCZXJY.js → chunk-V7RLIZMN.js} +14 -4
- package/dist/chunk-V7RLIZMN.js.map +1 -0
- package/dist/{chunk-ACUFEDVQ.js → chunk-VCKXK6V5.js} +9 -9
- package/dist/chunk-VCKXK6V5.js.map +1 -0
- package/dist/{chunk-XUS5ACKR.mjs → chunk-VIEXDTNF.mjs} +3 -3
- package/dist/chunk-VIEXDTNF.mjs.map +1 -0
- package/dist/{imageCrop/index.js → chunk-VN2DULIA.js} +24 -5
- package/dist/chunk-VN2DULIA.js.map +1 -0
- package/dist/{chunk-S6YSGVWD.js → chunk-VNWMRUY6.js} +31 -87
- package/dist/chunk-VNWMRUY6.js.map +1 -0
- package/dist/{chunk-3DXPQ4YV.mjs → chunk-VYK4M2D6.mjs} +18 -6
- package/dist/chunk-VYK4M2D6.mjs.map +1 -0
- package/dist/{chunk-WEEXCPSE.mjs → chunk-WB4H6ZUW.mjs} +3 -3
- package/dist/chunk-WB4H6ZUW.mjs.map +1 -0
- package/dist/{chunk-GWNBVGDT.mjs → chunk-WM3AEJ2E.mjs} +6 -257
- package/dist/chunk-WM3AEJ2E.mjs.map +1 -0
- package/dist/{chunk-CX2GHCAI.mjs → chunk-X5GINUGI.mjs} +26 -81
- package/dist/chunk-X5GINUGI.mjs.map +1 -0
- package/dist/{chunk-DIF5VRL3.mjs → chunk-XB7GUEHZ.mjs} +14 -5
- package/dist/chunk-XB7GUEHZ.mjs.map +1 -0
- package/dist/{chunk-ZLYPALF3.js → chunk-XE5RGZ3B.js} +11 -11
- package/dist/chunk-XE5RGZ3B.js.map +1 -0
- package/dist/{chunk-WJ7IMUEJ.mjs → chunk-XNTIMVSL.mjs} +7 -7
- package/dist/chunk-XNTIMVSL.mjs.map +1 -0
- package/dist/{chunk-ZWQJSZEY.js → chunk-Y7WHUKJF.js} +28 -12
- package/dist/chunk-Y7WHUKJF.js.map +1 -0
- package/dist/{components/index.mjs → chunk-YIRPPMCN.mjs} +305 -785
- package/dist/chunk-YIRPPMCN.mjs.map +1 -0
- package/dist/{chunk-KH6RQ4J5.js → chunk-Z2SNB5LJ.js} +3 -3
- package/dist/chunk-Z2SNB5LJ.js.map +1 -0
- package/dist/{chunk-HJ6MH7J7.js → chunk-ZOP7YIVX.js} +17 -17
- package/dist/chunk-ZOP7YIVX.js.map +1 -0
- package/dist/{chunk-HJZHQW5R.mjs → chunk-ZUZLWHH5.mjs} +3 -3
- package/dist/chunk-ZUZLWHH5.mjs.map +1 -0
- package/dist/{ai → common/ai}/llm/core/index.d.mts +3 -3
- package/dist/{ai → common/ai}/llm/core/index.d.ts +3 -3
- package/dist/{ai/llm → common/ai/llm/core}/index.js +14 -14
- package/dist/{ai/llm → common/ai/llm/core}/index.mjs +3 -3
- package/dist/{ai → common/ai}/llm/electron/index.d.mts +3 -3
- package/dist/{ai/llm/web → common/ai/llm/electron}/index.d.ts +3 -3
- package/dist/common/ai/llm/electron/index.js +67 -0
- package/dist/common/ai/llm/electron/index.mjs +10 -0
- package/dist/{ai → common/ai}/llm/index.d.mts +2 -2
- package/dist/{ai → common/ai}/llm/index.d.ts +2 -2
- package/dist/{ai/llm/core → common/ai/llm}/index.js +13 -13
- package/dist/{ai/llm/core → common/ai/llm}/index.mjs +2 -2
- package/dist/{ai → common/ai}/llm/miniapp/index.d.mts +3 -3
- package/dist/{ai → common/ai}/llm/miniapp/index.d.ts +3 -3
- package/dist/{ai/llm/rn → common/ai/llm/miniapp}/index.js +16 -16
- package/dist/{ai/llm/rn → common/ai/llm/miniapp}/index.mjs +4 -4
- package/dist/{ai → common/ai}/llm/rn/index.d.mts +3 -3
- package/dist/{ai → common/ai}/llm/rn/index.d.ts +3 -3
- package/dist/{ai/llm/miniapp → common/ai/llm/rn}/index.js +16 -16
- package/dist/{ai/llm/miniapp → common/ai/llm/rn}/index.mjs +4 -4
- package/dist/common/ai/llm/ui/electron/index.d.mts +5 -0
- package/dist/common/ai/llm/ui/electron/index.d.ts +5 -0
- package/dist/common/ai/llm/ui/electron/index.js +22 -0
- package/dist/common/ai/llm/ui/electron/index.mjs +9 -0
- package/dist/common/ai/llm/ui/miniapp/index.d.mts +9 -0
- package/dist/common/ai/llm/ui/miniapp/index.d.ts +9 -0
- package/dist/common/ai/llm/ui/miniapp/index.js +14 -0
- package/dist/common/ai/llm/ui/miniapp/index.mjs +5 -0
- package/dist/common/ai/llm/ui/rn/index.d.mts +9 -0
- package/dist/common/ai/llm/ui/rn/index.d.ts +9 -0
- package/dist/common/ai/llm/ui/rn/index.js +14 -0
- package/dist/common/ai/llm/ui/rn/index.mjs +5 -0
- package/dist/{ai → common/ai}/llm/ui/web/index.d.mts +7 -7
- package/dist/{ai → common/ai}/llm/ui/web/index.d.ts +7 -7
- package/dist/common/ai/llm/ui/web/index.js +21 -0
- package/dist/common/ai/llm/ui/web/index.mjs +8 -0
- package/dist/{ai → common/ai}/llm/web/index.d.mts +3 -3
- package/dist/{ai/llm/electron → common/ai/llm/web}/index.d.ts +3 -3
- package/dist/common/ai/llm/web/index.js +66 -0
- package/dist/common/ai/llm/web/index.mjs +9 -0
- package/dist/{analytics → common/analytics}/index.d.mts +1 -1
- package/dist/{analytics → common/analytics}/index.d.ts +1 -1
- package/dist/{analytics → common/analytics}/index.js +79 -79
- package/dist/{analytics → common/analytics}/index.mjs +3 -3
- package/dist/{analytics → common/analytics}/server/index.js +2 -2
- package/dist/common/analytics/server/index.js.map +1 -0
- package/dist/{analytics → common/analytics}/server/index.mjs +2 -2
- package/dist/common/analytics/server/index.mjs.map +1 -0
- package/dist/{api → common/api}/index.d.mts +3 -3
- package/dist/{api → common/api}/index.d.ts +3 -3
- package/dist/common/api/index.js +21 -0
- package/dist/common/api/index.mjs +4 -0
- package/dist/common/auth/components/index.d.mts +9 -9
- package/dist/common/auth/components/index.d.ts +9 -9
- package/dist/common/auth/index.js +6 -6
- package/dist/common/auth/index.mjs +2 -2
- package/dist/common/auth/react/index.d.mts +3 -3
- package/dist/common/auth/react/index.d.ts +3 -3
- package/dist/common/auth/rn/index.d.mts +2 -2
- package/dist/common/auth/rn/index.d.ts +2 -2
- package/dist/common/auth/rn/index.js +2 -2
- package/dist/common/auth/rn/index.js.map +1 -1
- package/dist/common/auth/rn/index.mjs +1 -1
- package/dist/common/auth/rn/index.mjs.map +1 -1
- package/dist/common/components/index.d.mts +4 -0
- package/dist/common/components/index.d.ts +4 -0
- package/dist/common/components/index.js +414 -0
- package/dist/common/components/index.mjs +9 -0
- package/dist/{config → common/config}/index.d.mts +1 -1
- package/dist/{config → common/config}/index.d.ts +1 -1
- package/dist/common/config/index.js +21 -0
- package/dist/common/config/index.mjs +4 -0
- package/dist/{config → common/config}/server/index.js +5 -5
- package/dist/common/config/server/index.js.map +1 -0
- package/dist/{config → common/config}/server/index.mjs +5 -5
- package/dist/common/config/server/index.mjs.map +1 -0
- package/dist/common/export/index.d.mts +2 -2
- package/dist/common/export/index.d.ts +2 -2
- package/dist/common/export/index.js +67 -67
- package/dist/common/export/index.mjs +3 -3
- package/dist/common/export/server/index.d.mts +2 -2
- package/dist/common/export/server/index.d.ts +2 -2
- package/dist/common/export/server/index.js +76 -48
- package/dist/common/export/server/index.mjs +3 -3
- package/dist/common/file/index.d.mts +2 -2
- package/dist/common/file/index.d.ts +2 -2
- package/dist/common/file/index.js +27 -27
- package/dist/common/file/index.mjs +5 -5
- package/dist/common/file/server/index.d.mts +2 -2
- package/dist/common/file/server/index.d.ts +2 -2
- package/dist/common/file/server/index.js +58 -50
- package/dist/common/file/server/index.mjs +8 -8
- package/dist/{i18n → common/i18n}/index.d.mts +1 -1
- package/dist/{i18n → common/i18n}/index.d.ts +1 -1
- package/dist/{i18n → common/i18n}/index.js +18 -18
- package/dist/{i18n → common/i18n}/index.mjs +2 -2
- package/dist/common/imageCrop/index.d.mts +2 -0
- package/dist/common/imageCrop/index.d.ts +2 -0
- package/dist/common/imageCrop/index.js +61 -0
- package/dist/common/imageCrop/index.mjs +4 -0
- package/dist/common/index.d.mts +16 -16
- package/dist/common/index.d.ts +16 -16
- package/dist/common/index.js +75 -67
- package/dist/common/index.mjs +26 -26
- package/dist/common/logger/index.d.mts +1 -1
- package/dist/common/logger/index.d.ts +1 -1
- package/dist/common/logger/index.js +6 -7
- package/dist/common/logger/index.mjs +1 -2
- package/dist/{ossFile → common/ossFile}/index.d.mts +6 -6
- package/dist/{ossFile → common/ossFile}/index.d.ts +6 -6
- package/dist/{ossFile → common/ossFile}/index.js +26 -26
- package/dist/{ossFile → common/ossFile}/index.mjs +5 -5
- package/dist/{ossFile/server/index.d.ts → common/ossFile/server/index.d.mts} +7 -7
- package/dist/{ossFile/server/index.d.mts → common/ossFile/server/index.d.ts} +7 -7
- package/dist/{ossFile → common/ossFile}/server/index.js +60 -52
- package/dist/{ossFile → common/ossFile}/server/index.mjs +10 -10
- package/dist/common/platform/index.js +8 -8
- package/dist/common/platform/index.mjs +4 -4
- package/dist/common/request/index.d.mts +1 -1
- package/dist/common/request/index.d.ts +1 -1
- package/dist/common/request/index.js +5 -6
- package/dist/common/request/index.mjs +2 -3
- package/dist/common/storage/index.d.mts +1 -1
- package/dist/common/storage/index.d.ts +1 -1
- package/dist/common/storage/index.js +17 -17
- package/dist/common/storage/index.mjs +5 -5
- package/dist/{universalExport → common/universalExport}/index.d.mts +6 -86
- package/dist/{universalExport → common/universalExport}/index.d.ts +6 -86
- package/dist/{universalExport → common/universalExport}/index.js +67 -67
- package/dist/common/universalExport/index.mjs +5 -0
- package/dist/{universalExport → common/universalExport}/server/index.d.mts +3 -84
- package/dist/{universalExport → common/universalExport}/server/index.d.ts +3 -84
- package/dist/common/universalExport/server/index.js +151 -0
- package/dist/common/universalExport/server/index.mjs +6 -0
- package/dist/{universalFile/index.d.ts → common/universalFile/index.d.mts} +9 -9
- package/dist/{universalFile/index.d.mts → common/universalFile/index.d.ts} +9 -9
- package/dist/{universalFile → common/universalFile}/index.js +63 -63
- package/dist/common/universalFile/index.js.map +1 -0
- package/dist/{universalFile → common/universalFile}/index.mjs +4 -4
- package/dist/common/universalFile/index.mjs.map +1 -0
- package/dist/{universalFile → common/universalFile}/server/index.d.mts +5 -5
- package/dist/{universalFile → common/universalFile}/server/index.d.ts +5 -5
- package/dist/{universalFile → common/universalFile}/server/index.js +68 -68
- package/dist/{universalFile → common/universalFile}/server/index.mjs +8 -8
- package/dist/common/utils/index.d.mts +1 -1
- package/dist/common/utils/index.d.ts +1 -1
- package/dist/common/utils/index.js +11 -12
- package/dist/common/utils/index.mjs +2 -3
- package/dist/{index-WrR57hKT.d.ts → index-BRLygK4h.d.ts} +2 -2
- package/dist/{request/index.d.mts → index-BWNK5mH2.d.ts} +19 -2
- package/dist/{utils/index.d.mts → index-BiCK6gg6.d.mts} +19 -1
- package/dist/{utils/index.d.ts → index-BiCK6gg6.d.ts} +19 -1
- package/dist/{index-DoUo8IrU.d.mts → index-BxZauNN_.d.mts} +8 -8
- package/dist/{index-DoUo8IrU.d.ts → index-BxZauNN_.d.ts} +8 -8
- package/dist/{request/index.d.ts → index-C-P2yBTH.d.mts} +19 -2
- package/dist/{index-D0cqaQEH.d.mts → index-CLB80GCP.d.mts} +5 -5
- package/dist/{index-D0cqaQEH.d.ts → index-CLB80GCP.d.ts} +5 -5
- package/dist/{index-2G9Dxjvt.d.ts → index-CT4K2z-O.d.ts} +2 -2
- package/dist/{index-qcOvRVuN.d.mts → index-D6RJTGce.d.mts} +2 -2
- package/dist/{storage/index.d.ts → index-DA7L9JlE.d.mts} +26 -3
- package/dist/{imageCrop/index.d.mts → index-DXVph21C.d.mts} +40 -4
- package/dist/{imageCrop/index.d.ts → index-DXVph21C.d.ts} +40 -4
- package/dist/{index-CYuUB8aF.d.mts → index-DzyK789B.d.mts} +2 -2
- package/dist/{logger/index.d.mts → index-FVJZCEtm.d.mts} +21 -1
- package/dist/{logger/index.d.ts → index-FVJZCEtm.d.ts} +21 -1
- package/dist/{storage/index.d.mts → index-nD9vPCZT.d.ts} +26 -3
- package/dist/{components/index.d.mts → index-nOmIv2BG.d.mts} +159 -5
- package/dist/{components/index.d.ts → index-nOmIv2BG.d.ts} +159 -5
- package/dist/{path-qjVnH8qU.d.ts → path-Bzc7hj1N.d.ts} +5 -1
- package/dist/{path-DkaHQSyW.d.mts → path-DN_65vhO.d.mts} +5 -1
- package/dist/{types-3ujSNAXb.d.mts → utils-Dm3O1rAa.d.mts} +81 -1
- package/dist/{types-3ujSNAXb.d.ts → utils-Dm3O1rAa.d.ts} +81 -1
- package/package.json +292 -312
- package/dist/AliyunOSSProvider-4GRL2FJB.js +0 -15
- package/dist/AliyunOSSProvider-QNVFIZ7Q.mjs +0 -6
- package/dist/CollisionBalls-BpHufX3H.d.mts +0 -41
- package/dist/CollisionBalls-BpHufX3H.d.ts +0 -41
- package/dist/ConfigService-BxK06xP6.d.mts +0 -262
- package/dist/ConfigService-BxK06xP6.d.ts +0 -262
- package/dist/LocalStorageProvider-J5RHV37G.mjs +0 -6
- package/dist/LocalStorageProvider-PFA2DMIJ.js +0 -15
- package/dist/UniversalFileService-CC4d3wkc.d.ts +0 -139
- package/dist/UniversalFileService-CzAE_G4V.d.mts +0 -139
- package/dist/ai/llm/electron/index.js +0 -66
- package/dist/ai/llm/electron/index.mjs +0 -9
- package/dist/ai/llm/ui/electron/index.d.mts +0 -5
- package/dist/ai/llm/ui/electron/index.d.ts +0 -5
- package/dist/ai/llm/ui/electron/index.js +0 -21
- package/dist/ai/llm/ui/electron/index.mjs +0 -8
- package/dist/ai/llm/ui/miniapp/index.d.mts +0 -9
- package/dist/ai/llm/ui/miniapp/index.d.ts +0 -9
- package/dist/ai/llm/ui/miniapp/index.js +0 -14
- package/dist/ai/llm/ui/miniapp/index.mjs +0 -5
- package/dist/ai/llm/ui/rn/index.d.mts +0 -9
- package/dist/ai/llm/ui/rn/index.d.ts +0 -9
- package/dist/ai/llm/ui/rn/index.js +0 -14
- package/dist/ai/llm/ui/rn/index.mjs +0 -5
- package/dist/ai/llm/ui/web/index.js +0 -20
- package/dist/ai/llm/ui/web/index.mjs +0 -7
- package/dist/ai/llm/web/index.js +0 -65
- package/dist/ai/llm/web/index.mjs +0 -8
- package/dist/analytics/server/index.js.map +0 -1
- package/dist/analytics/server/index.mjs.map +0 -1
- package/dist/api/index.js +0 -21
- package/dist/api/index.mjs +0 -4
- package/dist/audioDetection/index.d.mts +0 -449
- package/dist/audioDetection/index.d.ts +0 -449
- package/dist/audioDetection/index.js +0 -1244
- package/dist/audioDetection/index.js.map +0 -1
- package/dist/audioDetection/index.mjs +0 -1227
- package/dist/audioDetection/index.mjs.map +0 -1
- package/dist/boothVaultService-Cn4WPhjg.d.mts +0 -83
- package/dist/boothVaultService-Cn4WPhjg.d.ts +0 -83
- package/dist/business/index.d.mts +0 -2
- package/dist/business/index.d.ts +0 -2
- package/dist/business/index.js +0 -581
- package/dist/business/index.js.map +0 -1
- package/dist/business/index.mjs +0 -575
- package/dist/business/index.mjs.map +0 -1
- package/dist/calendar/index.d.mts +0 -1325
- package/dist/calendar/index.d.ts +0 -1325
- package/dist/calendar/index.js +0 -5964
- package/dist/calendar/index.js.map +0 -1
- package/dist/calendar/index.mjs +0 -5878
- package/dist/calendar/index.mjs.map +0 -1
- package/dist/calendar/routes/index.d.mts +0 -191
- package/dist/calendar/routes/index.d.ts +0 -191
- package/dist/calendar/routes/index.js +0 -844
- package/dist/calendar/routes/index.js.map +0 -1
- package/dist/calendar/routes/index.mjs +0 -826
- package/dist/calendar/routes/index.mjs.map +0 -1
- package/dist/chunk-25OFOKNF.js.map +0 -1
- package/dist/chunk-2Y7BKFKZ.js +0 -37
- package/dist/chunk-3CSCIRQY.js +0 -17
- package/dist/chunk-3CSCIRQY.js.map +0 -1
- package/dist/chunk-3DXPQ4YV.mjs.map +0 -1
- package/dist/chunk-3NHAT7D4.mjs.map +0 -1
- package/dist/chunk-4FDUURSD.js +0 -22
- package/dist/chunk-4FDUURSD.js.map +0 -1
- package/dist/chunk-4OOANEJV.mjs.map +0 -1
- package/dist/chunk-4WBCWJSN.js.map +0 -1
- package/dist/chunk-5GBDDXYL.mjs +0 -23
- package/dist/chunk-5GBDDXYL.mjs.map +0 -1
- package/dist/chunk-5USIS3UM.js +0 -4
- package/dist/chunk-6PMXAK7F.js.map +0 -1
- package/dist/chunk-7B5SI4OF.mjs +0 -15
- package/dist/chunk-7B5SI4OF.mjs.map +0 -1
- package/dist/chunk-ACUFEDVQ.js.map +0 -1
- package/dist/chunk-AQPU2AXH.js.map +0 -1
- package/dist/chunk-ATUCZXJY.js.map +0 -1
- package/dist/chunk-BCE6RUZV.js.map +0 -1
- package/dist/chunk-BIHYZA67.mjs.map +0 -1
- package/dist/chunk-C6KV7VTZ.mjs.map +0 -1
- package/dist/chunk-CAYOQDBR.js.map +0 -1
- package/dist/chunk-CIVO4R6N.mjs.map +0 -1
- package/dist/chunk-CX2GHCAI.mjs.map +0 -1
- package/dist/chunk-DIF5VRL3.mjs.map +0 -1
- package/dist/chunk-EQXPL7TN.mjs.map +0 -1
- package/dist/chunk-FCEBAWN6.js +0 -18
- package/dist/chunk-FCEBAWN6.js.map +0 -1
- package/dist/chunk-FHIE5MTC.mjs +0 -541
- package/dist/chunk-FHIE5MTC.mjs.map +0 -1
- package/dist/chunk-FHLTPXAR.js +0 -56
- package/dist/chunk-FIUBFREP.mjs.map +0 -1
- package/dist/chunk-FXQOXLDE.js.map +0 -1
- package/dist/chunk-G6HXNQ2U.mjs.map +0 -1
- package/dist/chunk-G6NSKJMH.js.map +0 -1
- package/dist/chunk-G7UBMCUT.mjs.map +0 -1
- package/dist/chunk-GSNGCENJ.js.map +0 -1
- package/dist/chunk-GWNBVGDT.mjs.map +0 -1
- package/dist/chunk-HDMIOOZY.mjs.map +0 -1
- package/dist/chunk-HJ6MH7J7.js.map +0 -1
- package/dist/chunk-HJZHQW5R.mjs.map +0 -1
- package/dist/chunk-I5ZPEDNR.mjs.map +0 -1
- package/dist/chunk-KH6RQ4J5.js.map +0 -1
- package/dist/chunk-KQ643L7Z.js.map +0 -1
- package/dist/chunk-LFB5EIIM.mjs +0 -31
- package/dist/chunk-LFB5EIIM.mjs.map +0 -1
- package/dist/chunk-MBANGIG3.mjs.map +0 -1
- package/dist/chunk-NCRP2YHY.mjs.map +0 -1
- package/dist/chunk-NDGHXVGS.js +0 -25
- package/dist/chunk-NDGHXVGS.js.map +0 -1
- package/dist/chunk-NDPO5OMC.js +0 -563
- package/dist/chunk-NDPO5OMC.js.map +0 -1
- package/dist/chunk-PBI7FKMB.js.map +0 -1
- package/dist/chunk-Q5EDCKQA.js.map +0 -1
- package/dist/chunk-Q5VFBPMG.mjs.map +0 -1
- package/dist/chunk-QSKLQX6H.js.map +0 -1
- package/dist/chunk-QXAOXBVB.mjs.map +0 -1
- package/dist/chunk-R2DXTE2L.js.map +0 -1
- package/dist/chunk-RTD2WHQQ.mjs +0 -16
- package/dist/chunk-RTD2WHQQ.mjs.map +0 -1
- package/dist/chunk-S6YSGVWD.js.map +0 -1
- package/dist/chunk-SKFEJPMJ.mjs.map +0 -1
- package/dist/chunk-SLKOEYFH.js.map +0 -1
- package/dist/chunk-TC5YU6A4.mjs.map +0 -1
- package/dist/chunk-UCOE6SET.js.map +0 -1
- package/dist/chunk-UIYKZ73N.js +0 -36
- package/dist/chunk-UIYKZ73N.js.map +0 -1
- package/dist/chunk-V7EVKD5G.mjs.map +0 -1
- package/dist/chunk-VMTEDX5H.js.map +0 -1
- package/dist/chunk-VRN76M56.mjs +0 -3
- package/dist/chunk-VXFUXZN5.mjs +0 -20
- package/dist/chunk-VXFUXZN5.mjs.map +0 -1
- package/dist/chunk-WEEXCPSE.mjs.map +0 -1
- package/dist/chunk-WJ7IMUEJ.mjs.map +0 -1
- package/dist/chunk-WW4GE6CZ.js.map +0 -1
- package/dist/chunk-XJ7ZAGC5.js.map +0 -1
- package/dist/chunk-XUS5ACKR.mjs.map +0 -1
- package/dist/chunk-YOTQG4NP.mjs.map +0 -1
- package/dist/chunk-ZGVB35L2.mjs.map +0 -1
- package/dist/chunk-ZLYPALF3.js.map +0 -1
- package/dist/chunk-ZM2SZJTZ.js.map +0 -1
- package/dist/chunk-ZRAW3HXA.js.map +0 -1
- package/dist/chunk-ZWQJSZEY.js.map +0 -1
- package/dist/components/index.js +0 -2516
- package/dist/components/index.js.map +0 -1
- package/dist/components/index.mjs.map +0 -1
- package/dist/config/index.js +0 -21
- package/dist/config/index.mjs +0 -4
- package/dist/config/server/index.js.map +0 -1
- package/dist/config/server/index.mjs.map +0 -1
- package/dist/drizzle-schema-BNhqj2AZ.d.mts +0 -1114
- package/dist/drizzle-schema-BNhqj2AZ.d.ts +0 -1114
- package/dist/festivalCard/index.d.mts +0 -76
- package/dist/festivalCard/index.d.ts +0 -76
- package/dist/festivalCard/index.js +0 -1492
- package/dist/festivalCard/index.js.map +0 -1
- package/dist/festivalCard/index.mjs +0 -1475
- package/dist/festivalCard/index.mjs.map +0 -1
- package/dist/festivalCard/routes/index.d.mts +0 -42
- package/dist/festivalCard/routes/index.d.ts +0 -42
- package/dist/festivalCard/routes/index.js +0 -361
- package/dist/festivalCard/routes/index.js.map +0 -1
- package/dist/festivalCard/routes/index.mjs +0 -356
- package/dist/festivalCard/routes/index.mjs.map +0 -1
- package/dist/festivalCard/server/index.d.mts +0 -120
- package/dist/festivalCard/server/index.d.ts +0 -120
- package/dist/festivalCard/server/index.js +0 -272
- package/dist/festivalCard/server/index.js.map +0 -1
- package/dist/festivalCard/server/index.mjs +0 -265
- package/dist/festivalCard/server/index.mjs.map +0 -1
- package/dist/festivalCardService-B3GsnNpV.d.ts +0 -13
- package/dist/festivalCardService-CWhrLNE9.d.mts +0 -13
- package/dist/imageCrop/index.js.map +0 -1
- package/dist/imageCrop/index.mjs.map +0 -1
- package/dist/index-Bjem5rWn.d.mts +0 -17
- package/dist/index-C5U-2hJq.d.ts +0 -23
- package/dist/index-CifSBBP2.d.ts +0 -17
- package/dist/index-D0K4ehme.d.mts +0 -20
- package/dist/index-DLnfKN-a.d.mts +0 -23
- package/dist/index-DSel44Ke.d.mts +0 -93
- package/dist/index-DSel44Ke.d.ts +0 -93
- package/dist/index-DZ5iJtNO.d.mts +0 -102
- package/dist/index-DZ5iJtNO.d.ts +0 -102
- package/dist/index-Da7qdkgW.d.ts +0 -20
- package/dist/index-DrPcMJPc.d.mts +0 -250
- package/dist/index-DrPcMJPc.d.ts +0 -250
- package/dist/index-oLUvfqT8.d.ts +0 -20
- package/dist/index-pe38RDgC.d.mts +0 -20
- package/dist/index.d.mts +0 -11611
- package/dist/index.d.ts +0 -11611
- package/dist/index.js +0 -17230
- package/dist/index.js.map +0 -1
- package/dist/index.mjs +0 -16954
- package/dist/index.mjs.map +0 -1
- package/dist/logger/index.js +0 -29
- package/dist/logger/index.mjs +0 -4
- package/dist/mikuContest/ui/web/index.d.mts +0 -2
- package/dist/mikuContest/ui/web/index.d.ts +0 -2
- package/dist/mikuContest/ui/web/index.js +0 -353
- package/dist/mikuContest/ui/web/index.js.map +0 -1
- package/dist/mikuContest/ui/web/index.mjs +0 -343
- package/dist/mikuContest/ui/web/index.mjs.map +0 -1
- package/dist/mikuFireworks3D/index.d.mts +0 -268
- package/dist/mikuFireworks3D/index.d.ts +0 -268
- package/dist/mikuFireworks3D/index.js +0 -1267
- package/dist/mikuFireworks3D/index.js.map +0 -1
- package/dist/mikuFireworks3D/index.mjs +0 -1228
- package/dist/mikuFireworks3D/index.mjs.map +0 -1
- package/dist/mikuFusionGame/index.d.mts +0 -117
- package/dist/mikuFusionGame/index.d.ts +0 -117
- package/dist/mikuFusionGame/index.js +0 -1208
- package/dist/mikuFusionGame/index.js.map +0 -1
- package/dist/mikuFusionGame/index.mjs +0 -1195
- package/dist/mikuFusionGame/index.mjs.map +0 -1
- package/dist/mmd/admin/index.d.mts +0 -487
- package/dist/mmd/admin/index.d.ts +0 -487
- package/dist/mmd/admin/index.js +0 -1058
- package/dist/mmd/admin/index.js.map +0 -1
- package/dist/mmd/admin/index.mjs +0 -1027
- package/dist/mmd/admin/index.mjs.map +0 -1
- package/dist/mmd/index.d.mts +0 -2467
- package/dist/mmd/index.d.ts +0 -2467
- package/dist/mmd/index.js +0 -10119
- package/dist/mmd/index.js.map +0 -1
- package/dist/mmd/index.mjs +0 -10028
- package/dist/mmd/index.mjs.map +0 -1
- package/dist/mmd/server/index.d.mts +0 -139
- package/dist/mmd/server/index.d.ts +0 -139
- package/dist/mmd/server/index.js +0 -424
- package/dist/mmd/server/index.js.map +0 -1
- package/dist/mmd/server/index.mjs +0 -404
- package/dist/mmd/server/index.mjs.map +0 -1
- package/dist/music/index.d.mts +0 -74
- package/dist/music/index.d.ts +0 -74
- package/dist/music/index.js +0 -830
- package/dist/music/index.js.map +0 -1
- package/dist/music/index.mjs +0 -809
- package/dist/music/index.mjs.map +0 -1
- package/dist/music/server/index.d.mts +0 -1
- package/dist/music/server/index.d.ts +0 -1
- package/dist/music/server/index.js +0 -194
- package/dist/music/server/index.js.map +0 -1
- package/dist/music/server/index.mjs +0 -182
- package/dist/music/server/index.mjs.map +0 -1
- package/dist/navigation/index.d.mts +0 -93
- package/dist/navigation/index.d.ts +0 -93
- package/dist/navigation/index.js +0 -453
- package/dist/navigation/index.js.map +0 -1
- package/dist/navigation/index.mjs +0 -443
- package/dist/navigation/index.mjs.map +0 -1
- package/dist/portfolio/index.d.mts +0 -66
- package/dist/portfolio/index.d.ts +0 -66
- package/dist/portfolio/index.js +0 -736
- package/dist/portfolio/index.js.map +0 -1
- package/dist/portfolio/index.mjs +0 -724
- package/dist/portfolio/index.mjs.map +0 -1
- package/dist/qqbot/server/index.d.mts +0 -216
- package/dist/qqbot/server/index.d.ts +0 -216
- package/dist/qqbot/server/index.js +0 -394
- package/dist/qqbot/server/index.js.map +0 -1
- package/dist/qqbot/server/index.mjs +0 -385
- package/dist/qqbot/server/index.mjs.map +0 -1
- package/dist/qqbot/ui/web/index.d.mts +0 -10
- package/dist/qqbot/ui/web/index.d.ts +0 -10
- package/dist/qqbot/ui/web/index.js +0 -105
- package/dist/qqbot/ui/web/index.js.map +0 -1
- package/dist/qqbot/ui/web/index.mjs +0 -99
- package/dist/qqbot/ui/web/index.mjs.map +0 -1
- package/dist/request/index.js +0 -22
- package/dist/request/index.mjs +0 -5
- package/dist/screenReceiver/index.d.mts +0 -86
- package/dist/screenReceiver/index.d.ts +0 -86
- package/dist/screenReceiver/index.js +0 -281
- package/dist/screenReceiver/index.js.map +0 -1
- package/dist/screenReceiver/index.mjs +0 -273
- package/dist/screenReceiver/index.mjs.map +0 -1
- package/dist/storage/index.js +0 -48
- package/dist/storage/index.mjs +0 -7
- package/dist/testYourself/admin/index.d.mts +0 -58
- package/dist/testYourself/admin/index.d.ts +0 -58
- package/dist/testYourself/admin/index.js +0 -1009
- package/dist/testYourself/admin/index.js.map +0 -1
- package/dist/testYourself/admin/index.mjs +0 -1002
- package/dist/testYourself/admin/index.mjs.map +0 -1
- package/dist/testYourself/index.d.mts +0 -53
- package/dist/testYourself/index.d.ts +0 -53
- package/dist/testYourself/index.js +0 -2551
- package/dist/testYourself/index.js.map +0 -1
- package/dist/testYourself/index.mjs +0 -2531
- package/dist/testYourself/index.mjs.map +0 -1
- package/dist/testYourself/server/index.d.mts +0 -1029
- package/dist/testYourself/server/index.d.ts +0 -1029
- package/dist/testYourself/server/index.js +0 -825
- package/dist/testYourself/server/index.js.map +0 -1
- package/dist/testYourself/server/index.mjs +0 -816
- package/dist/testYourself/server/index.mjs.map +0 -1
- package/dist/types-B6B210gX.d.mts +0 -270
- package/dist/types-B6B210gX.d.ts +0 -270
- package/dist/types-Bdnte5EN.d.mts +0 -292
- package/dist/types-Cs0CLvrH.d.mts +0 -70
- package/dist/types-Cs0CLvrH.d.ts +0 -70
- package/dist/types-HorDyIRv.d.mts +0 -303
- package/dist/types-HorDyIRv.d.ts +0 -303
- package/dist/types-_rFX1atk.d.ts +0 -292
- package/dist/universalExport/index.mjs +0 -5
- package/dist/universalExport/server/index.js +0 -123
- package/dist/universalExport/server/index.mjs +0 -6
- package/dist/universalFile/index.js.map +0 -1
- package/dist/universalFile/index.mjs.map +0 -1
- package/dist/universalFile/server/index.js.map +0 -1
- package/dist/universalFile/server/index.mjs.map +0 -1
- package/dist/utils/index.js +0 -46
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/index.mjs +0 -5
- package/dist/utils/index.mjs.map +0 -1
- package/dist/vocaloidBooth/index.d.mts +0 -64
- package/dist/vocaloidBooth/index.d.ts +0 -64
- package/dist/vocaloidBooth/index.js +0 -376
- package/dist/vocaloidBooth/index.js.map +0 -1
- package/dist/vocaloidBooth/index.mjs +0 -362
- package/dist/vocaloidBooth/index.mjs.map +0 -1
- package/dist/vocaloidBooth/server/index.d.mts +0 -111
- package/dist/vocaloidBooth/server/index.d.ts +0 -111
- package/dist/vocaloidBooth/server/index.js +0 -247
- package/dist/vocaloidBooth/server/index.js.map +0 -1
- package/dist/vocaloidBooth/server/index.mjs +0 -237
- package/dist/vocaloidBooth/server/index.mjs.map +0 -1
- package/dist/vocaloidBooth/web/index.d.mts +0 -3
- package/dist/vocaloidBooth/web/index.d.ts +0 -3
- package/dist/vocaloidBooth/web/index.js +0 -376
- package/dist/vocaloidBooth/web/index.js.map +0 -1
- package/dist/vocaloidBooth/web/index.mjs +0 -362
- package/dist/vocaloidBooth/web/index.mjs.map +0 -1
- /package/dist/{ai → common/ai}/llm/core/index.js.map +0 -0
- /package/dist/{ai → common/ai}/llm/core/index.mjs.map +0 -0
- /package/dist/{ai → common/ai}/llm/electron/index.js.map +0 -0
- /package/dist/{ai → common/ai}/llm/electron/index.mjs.map +0 -0
- /package/dist/{ai → common/ai}/llm/index.js.map +0 -0
- /package/dist/{ai → common/ai}/llm/index.mjs.map +0 -0
- /package/dist/{ai → common/ai}/llm/miniapp/index.js.map +0 -0
- /package/dist/{ai → common/ai}/llm/miniapp/index.mjs.map +0 -0
- /package/dist/{ai → common/ai}/llm/rn/index.js.map +0 -0
- /package/dist/{ai → common/ai}/llm/rn/index.mjs.map +0 -0
- /package/dist/{ai → common/ai}/llm/ui/electron/index.js.map +0 -0
- /package/dist/{ai → common/ai}/llm/ui/electron/index.mjs.map +0 -0
- /package/dist/{ai → common/ai}/llm/ui/miniapp/index.js.map +0 -0
- /package/dist/{ai → common/ai}/llm/ui/miniapp/index.mjs.map +0 -0
- /package/dist/{ai → common/ai}/llm/ui/rn/index.js.map +0 -0
- /package/dist/{ai → common/ai}/llm/ui/rn/index.mjs.map +0 -0
- /package/dist/{ai → common/ai}/llm/ui/web/index.js.map +0 -0
- /package/dist/{ai → common/ai}/llm/ui/web/index.mjs.map +0 -0
- /package/dist/{ai → common/ai}/llm/web/index.js.map +0 -0
- /package/dist/{ai → common/ai}/llm/web/index.mjs.map +0 -0
- /package/dist/{analytics → common/analytics}/index.js.map +0 -0
- /package/dist/{analytics → common/analytics}/index.mjs.map +0 -0
- /package/dist/{analytics → common/analytics}/server/index.d.mts +0 -0
- /package/dist/{analytics → common/analytics}/server/index.d.ts +0 -0
- /package/dist/{api → common/api}/index.js.map +0 -0
- /package/dist/{api → common/api}/index.mjs.map +0 -0
- /package/dist/{config → common/components}/index.js.map +0 -0
- /package/dist/{config → common/components}/index.mjs.map +0 -0
- /package/dist/{i18n → common/config}/index.js.map +0 -0
- /package/dist/{i18n → common/config}/index.mjs.map +0 -0
- /package/dist/{config → common/config}/server/index.d.mts +0 -0
- /package/dist/{config → common/config}/server/index.d.ts +0 -0
- /package/dist/{logger → common/i18n}/index.js.map +0 -0
- /package/dist/{logger → common/i18n}/index.mjs.map +0 -0
- /package/dist/{ossFile → common/imageCrop}/index.js.map +0 -0
- /package/dist/{ossFile → common/imageCrop}/index.mjs.map +0 -0
- /package/dist/{ossFile/server → common/ossFile}/index.js.map +0 -0
- /package/dist/{ossFile/server → common/ossFile}/index.mjs.map +0 -0
- /package/dist/{request → common/ossFile/server}/index.js.map +0 -0
- /package/dist/{request → common/ossFile/server}/index.mjs.map +0 -0
- /package/dist/{storage → common/universalExport}/index.js.map +0 -0
- /package/dist/{storage → common/universalExport}/index.mjs.map +0 -0
- /package/dist/{universalExport → common/universalExport/server}/index.js.map +0 -0
- /package/dist/{universalExport → common/universalExport/server}/index.mjs.map +0 -0
- /package/dist/{universalExport → common/universalFile}/server/index.js.map +0 -0
- /package/dist/{universalExport → common/universalFile}/server/index.mjs.map +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/testYourself/server/ConfigService.ts","../../../src/testYourself/server/drizzle-schema.ts","../../../src/testYourself/server/DatabaseConfigAdapter.ts"],"names":["index","pgTable","uuid","varchar","text","json","integer","boolean","timestamp","eq","sql","and","or","desc"],"mappings":"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","file":"index.js","sourcesContent":["/**\n * 测测你是什么 - 配置管理服务\n * Test Yourself - Configuration Management Service\n * \n * 服务端逻辑:配置的增删改查\n */\n\nimport type { SavedConfig, TestConfig, ConfigListItem } from '../types';\n\nexport interface ConfigServiceOptions {\n /** 存储类型 */\n storageType?: 'localStorage' | 'memory' | 'custom';\n /** 自定义存储适配器 */\n customStorage?: IConfigStorage;\n /** 是否启用缓存 */\n enableCache?: boolean;\n}\n\n/**\n * 配置存储适配器接口\n */\nexport interface IConfigStorage {\n /** 保存配置 */\n saveConfig(config: SavedConfig): Promise<void>;\n /** 获取配置 */\n getConfig(id: string): Promise<SavedConfig | null>;\n /** 获取所有配置列表 */\n getAllConfigs(): Promise<SavedConfig[]>;\n /** 删除配置 */\n deleteConfig(id: string): Promise<void>;\n /** 更新配置 */\n updateConfig(id: string, config: SavedConfig): Promise<void>;\n /** 设置默认配置 */\n setDefaultConfig(id: string): Promise<void>;\n /** 获取默认配置 */\n getDefaultConfig(): Promise<SavedConfig | null>;\n}\n\n/**\n * LocalStorage 存储适配器\n */\nclass LocalStorageAdapter implements IConfigStorage {\n private readonly STORAGE_KEY = 'test-yourself-configs';\n private readonly DEFAULT_KEY = 'test-yourself-default-config';\n\n private async getAllConfigsData(): Promise<SavedConfig[]> {\n if (typeof window === 'undefined') return [];\n \n try {\n const data = localStorage.getItem(this.STORAGE_KEY);\n return data ? JSON.parse(data) : [];\n } catch (error) {\n console.error('读取配置失败:', error);\n return [];\n }\n }\n\n private async saveAllConfigsData(configs: SavedConfig[]): Promise<void> {\n if (typeof window === 'undefined') return;\n \n try {\n localStorage.setItem(this.STORAGE_KEY, JSON.stringify(configs));\n } catch (error) {\n console.error('保存配置失败:', error);\n throw error;\n }\n }\n\n async saveConfig(config: SavedConfig): Promise<void> {\n const configs = await this.getAllConfigsData();\n const existingIndex = configs.findIndex(c => c.id === config.id);\n \n if (existingIndex >= 0) {\n configs[existingIndex] = config;\n } else {\n configs.push(config);\n }\n \n await this.saveAllConfigsData(configs);\n }\n\n async getConfig(id: string): Promise<SavedConfig | null> {\n const configs = await this.getAllConfigsData();\n return configs.find(c => c.id === id) || null;\n }\n\n async getAllConfigs(): Promise<SavedConfig[]> {\n return this.getAllConfigsData();\n }\n\n async deleteConfig(id: string): Promise<void> {\n const configs = await this.getAllConfigsData();\n const filtered = configs.filter(c => c.id !== id);\n await this.saveAllConfigsData(filtered);\n }\n\n async updateConfig(id: string, config: SavedConfig): Promise<void> {\n const configs = await this.getAllConfigsData();\n const index = configs.findIndex(c => c.id === id);\n \n if (index >= 0) {\n configs[index] = { ...config, updatedAt: Date.now() };\n await this.saveAllConfigsData(configs);\n } else {\n throw new Error('配置不存在: ' + (id));\n }\n }\n\n async setDefaultConfig(id: string): Promise<void> {\n if (typeof window === 'undefined') return;\n \n const config = await this.getConfig(id);\n if (!config) {\n throw new Error('配置不存在: ' + (id));\n }\n \n // 清除其他配置的默认标记\n const configs = await this.getAllConfigsData();\n configs.forEach(c => c.isDefault = c.id === id);\n await this.saveAllConfigsData(configs);\n \n // 保存默认配置ID\n localStorage.setItem(this.DEFAULT_KEY, id);\n }\n\n async getDefaultConfig(): Promise<SavedConfig | null> {\n if (typeof window === 'undefined') return null;\n \n try {\n const defaultId = localStorage.getItem(this.DEFAULT_KEY);\n if (defaultId) {\n return await this.getConfig(defaultId);\n }\n \n // 如果没有设置默认配置,返回第一个标记为默认的配置\n const configs = await this.getAllConfigsData();\n return configs.find(c => c.isDefault) || null;\n } catch (error) {\n console.error('获取默认配置失败:', error);\n return null;\n }\n }\n}\n\n/**\n * 内存存储适配器(用于测试或SSR)\n */\nclass MemoryStorageAdapter implements IConfigStorage {\n private configs: Map<string, SavedConfig> = new Map();\n private defaultConfigId: string | null = null;\n\n async saveConfig(config: SavedConfig): Promise<void> {\n this.configs.set(config.id, config);\n }\n\n async getConfig(id: string): Promise<SavedConfig | null> {\n return this.configs.get(id) || null;\n }\n\n async getAllConfigs(): Promise<SavedConfig[]> {\n return Array.from(this.configs.values());\n }\n\n async deleteConfig(id: string): Promise<void> {\n this.configs.delete(id);\n if (this.defaultConfigId === id) {\n this.defaultConfigId = null;\n }\n }\n\n async updateConfig(id: string, config: SavedConfig): Promise<void> {\n if (!this.configs.has(id)) {\n throw new Error('配置不存在: ' + (id));\n }\n this.configs.set(id, { ...config, updatedAt: Date.now() });\n }\n\n async setDefaultConfig(id: string): Promise<void> {\n if (!this.configs.has(id)) {\n throw new Error('配置不存在: ' + (id));\n }\n \n // 清除其他配置的默认标记\n this.configs.forEach(c => c.isDefault = c.id === id);\n this.defaultConfigId = id;\n }\n\n async getDefaultConfig(): Promise<SavedConfig | null> {\n if (this.defaultConfigId) {\n return this.configs.get(this.defaultConfigId) || null;\n }\n \n // 返回第一个标记为默认的配置\n for (const config of this.configs.values()) {\n if (config.isDefault) {\n return config;\n }\n }\n \n return null;\n }\n}\n\n/**\n * 配置管理服务\n */\nexport class ConfigService {\n private storage: IConfigStorage;\n private cache: Map<string, SavedConfig> = new Map();\n private enableCache: boolean;\n\n constructor(options: ConfigServiceOptions = {}) {\n const {\n storageType = 'localStorage',\n customStorage,\n enableCache = true,\n } = options;\n\n this.enableCache = enableCache;\n\n if (customStorage) {\n this.storage = customStorage;\n } else if (storageType === 'memory') {\n this.storage = new MemoryStorageAdapter();\n } else {\n this.storage = new LocalStorageAdapter();\n }\n }\n\n /**\n * 初始化服务(如果需要)\n */\n async init(): Promise<void> {\n // 基础类不需要初始化,但子类或适配器可能需要\n }\n\n /**\n * 生成唯一ID\n */\n private generateId(): string {\n return 'config_' + (Date.now()) + '_' + (Math.random().toString(36).substring(2, 9));\n }\n\n /**\n * 保存配置\n */\n async saveConfig(config: SavedConfig): Promise<void> {\n await this.storage.saveConfig(config);\n\n if (config.isDefault) {\n await this.storage.setDefaultConfig(config.id);\n }\n\n if (this.enableCache) {\n this.cache.set(config.id, config);\n }\n }\n\n /**\n * 创建新配置\n */\n async createConfig(\n name: string,\n config: TestConfig,\n description?: string,\n isDefault = false\n ): Promise<SavedConfig> {\n const savedConfig: SavedConfig = {\n id: this.generateId(),\n name,\n description,\n config,\n createdAt: Date.now(),\n updatedAt: Date.now(),\n isDefault,\n };\n\n await this.storage.saveConfig(savedConfig);\n\n if (isDefault) {\n await this.storage.setDefaultConfig(savedConfig.id);\n }\n\n if (this.enableCache) {\n this.cache.set(savedConfig.id, savedConfig);\n }\n\n return savedConfig;\n }\n\n /**\n * 获取配置\n */\n async getConfig(id: string): Promise<SavedConfig | null> {\n // 先查缓存\n if (this.enableCache && this.cache.has(id)) {\n return this.cache.get(id)!;\n }\n\n const config = await this.storage.getConfig(id);\n\n if (config && this.enableCache) {\n this.cache.set(id, config);\n }\n\n return config;\n }\n\n /**\n * 获取所有配置列表\n */\n async getAllConfigs(): Promise<SavedConfig[]> {\n return await this.storage.getAllConfigs();\n }\n\n /**\n * 获取配置列表(精简版)\n */\n async getConfigList(): Promise<ConfigListItem[]> {\n const configs = await this.getAllConfigs();\n return configs.map(c => ({\n id: c.id,\n name: c.name,\n description: c.description,\n resultCount: c.config.results.length,\n createdAt: c.createdAt,\n updatedAt: c.updatedAt,\n isDefault: c.isDefault,\n }));\n }\n\n /**\n * 更新配置\n */\n async updateConfig(\n id: string,\n updates: {\n name?: string;\n description?: string;\n config?: TestConfig;\n isDefault?: boolean;\n }\n ): Promise<SavedConfig> {\n const existing = await this.getConfig(id);\n if (!existing) {\n throw new Error('配置不存在: ' + (id));\n }\n\n const updated: SavedConfig = {\n ...existing,\n ...updates,\n updatedAt: Date.now(),\n };\n\n await this.storage.updateConfig(id, updated);\n\n if (updates.isDefault) {\n await this.storage.setDefaultConfig(id);\n }\n\n if (this.enableCache) {\n this.cache.set(id, updated);\n }\n\n return updated;\n }\n\n /**\n * 删除配置\n */\n async deleteConfig(id: string): Promise<void> {\n await this.storage.deleteConfig(id);\n\n if (this.enableCache) {\n this.cache.delete(id);\n }\n }\n\n /**\n * 设置默认配置\n */\n async setDefaultConfig(id: string): Promise<void> {\n await this.storage.setDefaultConfig(id);\n\n // 清理缓存,让下次获取时重新加载\n if (this.enableCache) {\n this.cache.clear();\n }\n }\n\n /**\n * 获取默认配置\n */\n async getDefaultConfig(): Promise<SavedConfig | null> {\n return await this.storage.getDefaultConfig();\n }\n\n /**\n * 清空缓存\n */\n clearCache(): void {\n this.cache.clear();\n }\n\n /**\n * 导出配置(JSON格式)\n */\n async exportConfig(id: string): Promise<string> {\n const config = await this.getConfig(id);\n if (!config) {\n throw new Error('配置不存在: ' + (id));\n }\n return JSON.stringify(config, null, 2);\n }\n\n /**\n * 导入配置\n */\n async importConfig(jsonString: string): Promise<SavedConfig> {\n try {\n const data = JSON.parse(jsonString) as SavedConfig;\n \n // 生成新ID,避免冲突\n const newConfig: SavedConfig = {\n ...data,\n id: this.generateId(),\n createdAt: Date.now(),\n updatedAt: Date.now(),\n isDefault: false, // 导入的配置不设为默认\n };\n\n await this.storage.saveConfig(newConfig);\n\n if (this.enableCache) {\n this.cache.set(newConfig.id, newConfig);\n }\n\n return newConfig;\n } catch (error) {\n throw new Error('导入配置失败: ' + (error));\n }\n }\n\n /**\n * 复制配置\n */\n async duplicateConfig(id: string, newName?: string): Promise<SavedConfig> {\n const original = await this.getConfig(id);\n if (!original) {\n throw new Error('配置不存在: ' + (id));\n }\n\n const duplicated: SavedConfig = {\n ...original,\n id: this.generateId(),\n name: newName || (original.name) + ' (副本)',\n createdAt: Date.now(),\n updatedAt: Date.now(),\n isDefault: false,\n };\n\n await this.storage.saveConfig(duplicated);\n\n if (this.enableCache) {\n this.cache.set(duplicated.id, duplicated);\n }\n\n return duplicated;\n }\n\n /**\n * 批量删除配置\n */\n async deleteConfigs(ids: string[]): Promise<void> {\n for (const id of ids) {\n await this.deleteConfig(id);\n }\n }\n}\n\n/**\n * 创建默认配置服务实例\n */\nexport function createConfigService(options?: ConfigServiceOptions): ConfigService {\n return new ConfigService(options);\n}\n\n/**\n * 默认配置服务实例(单例)\n */\nlet defaultServiceInstance: ConfigService | null = null;\n\nexport function getDefaultConfigService(): ConfigService {\n if (!defaultServiceInstance) {\n defaultServiceInstance = createConfigService();\n }\n return defaultServiceInstance;\n}\n\n\n","/**\n * TestYourself 模块数据库表结构定义\n * Database Schema for TestYourself Module\n * \n * 使用 Drizzle ORM 定义配置表\n */\n\nimport {\n pgTable,\n uuid,\n varchar,\n text,\n timestamp,\n boolean,\n json,\n integer,\n index,\n} from 'drizzle-orm/pg-core';\nimport type { TestConfig } from '../types';\n\n/**\n * 测试配置表 (test_yourself_configs)\n * \n * 存储所有测试配置,支持多租户、版本控制等企业级功能\n */\nexport const testYourselfConfigs = pgTable(\n 'test_yourself_configs',\n {\n // ========== 主键 ==========\n /** 配置唯一ID */\n id: uuid('id').primaryKey().defaultRandom(),\n\n // ========== 基本信息 ==========\n /** 配置名称 */\n name: varchar('name', { length: 255 }).notNull(),\n \n /** 配置描述 */\n description: text('description'),\n \n /** 配置标签(用于分类和搜索) */\n tags: json('tags').$type<string[]>().default([]),\n\n // ========== 配置数据 ==========\n /** 测试配置内容(JSON格式) */\n config: json('config').$type<TestConfig>().notNull(),\n \n /** 结果数量(冗余字段,便于查询) */\n resultCount: integer('result_count').notNull().default(0),\n\n // ========== 状态字段 ==========\n /** 是否为默认配置 */\n isDefault: boolean('is_default').notNull().default(false),\n \n /** 是否已发布(草稿/发布) */\n isPublished: boolean('is_published').notNull().default(true),\n \n /** 是否已归档 */\n isArchived: boolean('is_archived').notNull().default(false),\n \n /** 是否已删除(软删除) */\n isDeleted: boolean('is_deleted').notNull().default(false),\n\n // ========== 权限和所有权 ==========\n /** 创建者ID */\n createdBy: varchar('created_by', { length: 255 }).notNull(),\n \n /** 最后更新者ID */\n updatedBy: varchar('updated_by', { length: 255 }),\n \n /** 所属组织/租户ID(多租户支持) */\n organizationId: varchar('organization_id', { length: 255 }),\n\n // ========== 统计信息 ==========\n /** 使用次数 */\n usageCount: integer('usage_count').notNull().default(0),\n \n /** 最后使用时间 */\n lastUsedAt: timestamp('last_used_at'),\n \n /** 浏览次数 */\n viewCount: integer('view_count').notNull().default(0),\n\n // ========== 版本控制 ==========\n /** 配置版本号 */\n version: integer('version').notNull().default(1),\n \n /** 父配置ID(用于版本追踪) */\n parentId: uuid('parent_id'),\n\n // ========== 自定义字段 ==========\n /** 自定义元数据(扩展字段) */\n metadata: json('metadata').$type<Record<string, any>>(),\n \n /** 配置来源(web/api/import) */\n source: varchar('source', { length: 50 }),\n\n // ========== 时间戳 ==========\n /** 创建时间 */\n createdAt: timestamp('created_at').defaultNow().notNull(),\n \n /** 更新时间 */\n updatedAt: timestamp('updated_at').defaultNow().notNull(),\n \n /** 发布时间 */\n publishedAt: timestamp('published_at'),\n \n /** 归档时间 */\n archivedAt: timestamp('archived_at'),\n \n /** 删除时间 */\n deletedAt: timestamp('deleted_at'),\n },\n (table) => ({\n // ========== 索引设计 ==========\n \n /** 名称搜索索引 */\n nameIndex: index('test_configs_name_idx').on(table.name),\n \n /** 创建者索引 */\n createdByIndex: index('test_configs_created_by_idx').on(table.createdBy),\n \n /** 组织索引(多租户) */\n organizationIndex: index('test_configs_organization_idx').on(table.organizationId),\n \n /** 默认配置索引 */\n isDefaultIndex: index('test_configs_is_default_idx').on(table.isDefault),\n \n /** 发布状态索引 */\n isPublishedIndex: index('test_configs_is_published_idx').on(table.isPublished),\n \n /** 删除状态索引 */\n isDeletedIndex: index('test_configs_is_deleted_idx').on(table.isDeleted),\n \n /** 创建时间索引 */\n createdAtIndex: index('test_configs_created_at_idx').on(table.createdAt),\n \n /** 最后使用时间索引 */\n lastUsedAtIndex: index('test_configs_last_used_at_idx').on(table.lastUsedAt),\n \n /** 组合索引:组织+删除状态+发布状态 */\n orgDeletedPublishedIndex: index('test_configs_org_deleted_published_idx').on(\n table.organizationId,\n table.isDeleted,\n table.isPublished\n ),\n \n /** 组合索引:创建者+删除状态 */\n createdByDeletedIndex: index('test_configs_created_by_deleted_idx').on(\n table.createdBy,\n table.isDeleted\n ),\n })\n);\n\n/**\n * 配置使用记录表 (test_yourself_config_usage)\n * \n * 记录配置的每次使用情况,用于统计分析\n */\nexport const testYourselfConfigUsage = pgTable(\n 'test_yourself_config_usage',\n {\n /** 记录ID */\n id: uuid('id').primaryKey().defaultRandom(),\n \n /** 配置ID */\n configId: uuid('config_id')\n .references(() => testYourselfConfigs.id, { onDelete: 'cascade' })\n .notNull(),\n \n /** 用户ID */\n userId: varchar('user_id', { length: 255 }),\n \n /** 设备指纹 */\n fingerprint: text('fingerprint'),\n \n /** 测试结果ID */\n resultId: varchar('result_id', { length: 255 }),\n \n /** IP地址 */\n ipAddress: varchar('ip_address', { length: 45 }),\n \n /** User Agent */\n userAgent: text('user_agent'),\n \n /** 来源页面 */\n referer: text('referer'),\n \n /** 使用时间 */\n usedAt: timestamp('used_at').defaultNow().notNull(),\n \n /** 完成时间(毫秒) */\n completionTime: integer('completion_time'),\n \n /** 额外数据 */\n metadata: json('metadata').$type<Record<string, any>>(),\n },\n (table) => ({\n /** 配置ID索引 */\n configIndex: index('test_usage_config_idx').on(table.configId),\n \n /** 用户ID索引 */\n userIndex: index('test_usage_user_idx').on(table.userId),\n \n /** 使用时间索引 */\n usedAtIndex: index('test_usage_used_at_idx').on(table.usedAt),\n \n /** 指纹索引 */\n fingerprintIndex: index('test_usage_fingerprint_idx').on(table.fingerprint),\n })\n);\n\n/**\n * 配置分享表 (test_yourself_config_shares)\n * \n * 管理配置的公开分享功能\n */\nexport const testYourselfConfigShares = pgTable(\n 'test_yourself_config_shares',\n {\n /** 分享ID */\n id: uuid('id').primaryKey().defaultRandom(),\n \n /** 分享代码(短链接标识) */\n shareCode: varchar('share_code', { length: 20 }).notNull().unique(),\n \n /** 配置ID */\n configId: uuid('config_id')\n .references(() => testYourselfConfigs.id, { onDelete: 'cascade' })\n .notNull(),\n \n /** 分享标题 */\n title: varchar('title', { length: 255 }),\n \n /** 分享描述 */\n description: text('description'),\n \n /** 访问密码 */\n password: varchar('password', { length: 100 }),\n \n /** 最大访问次数 */\n maxAccess: integer('max_access'),\n \n /** 当前访问次数 */\n accessCount: integer('access_count').notNull().default(0),\n \n /** 是否启用 */\n isActive: boolean('is_active').notNull().default(true),\n \n /** 过期时间 */\n expiresAt: timestamp('expires_at'),\n \n /** 创建者ID */\n createdBy: varchar('created_by', { length: 255 }).notNull(),\n \n /** 创建时间 */\n createdAt: timestamp('created_at').defaultNow().notNull(),\n \n /** 更新时间 */\n updatedAt: timestamp('updated_at').defaultNow().notNull(),\n },\n (table) => ({\n /** 分享代码索引 */\n shareCodeIndex: index('test_shares_share_code_idx').on(table.shareCode),\n \n /** 配置ID索引 */\n configIndex: index('test_shares_config_idx').on(table.configId),\n \n /** 创建者索引 */\n createdByIndex: index('test_shares_created_by_idx').on(table.createdBy),\n \n /** 活跃状态索引 */\n isActiveIndex: index('test_shares_is_active_idx').on(table.isActive),\n })\n);\n\n// ========== 类型导出 ==========\n\nexport type TestYourselfConfig = typeof testYourselfConfigs.$inferSelect;\nexport type NewTestYourselfConfig = typeof testYourselfConfigs.$inferInsert;\n\nexport type TestYourselfConfigUsage = typeof testYourselfConfigUsage.$inferSelect;\nexport type NewTestYourselfConfigUsage = typeof testYourselfConfigUsage.$inferInsert;\n\nexport type TestYourselfConfigShare = typeof testYourselfConfigShares.$inferSelect;\nexport type NewTestYourselfConfigShare = typeof testYourselfConfigShares.$inferInsert;\n","/**\n * TestYourself 数据库配置适配器\n * Database Configuration Adapter\n * \n * 实现基于数据库的配置存储\n */\n\nimport { eq, and, desc, sql, or } from 'drizzle-orm';\nimport type { IConfigStorage } from './ConfigService';\nimport type { SavedConfig } from '../types';\nimport { testYourselfConfigs } from './drizzle-schema';\nimport type { TestYourselfConfig } from './drizzle-schema';\n\n/**\n * Drizzle 数据库连接类型\n */\nexport type DrizzleDb = any;\n\n/**\n * 数据库适配器配置\n */\nexport interface DatabaseConfigAdapterOptions {\n /** Drizzle 数据库实例 */\n db: DrizzleDb;\n /** 当前用户ID(用于创建和更新) */\n userId?: string;\n /** 组织ID(多租户支持) */\n organizationId?: string;\n /** 是否启用软删除(默认 true) */\n softDelete?: boolean;\n}\n\n/**\n * 数据库配置适配器\n * \n * 实现 IConfigStorage 接口,将配置存储在数据库中\n */\nexport class DatabaseConfigAdapter implements IConfigStorage {\n private db: DrizzleDb;\n private userId: string;\n private organizationId?: string;\n private softDelete: boolean;\n\n constructor(options: DatabaseConfigAdapterOptions) {\n this.db = options.db;\n this.userId = options.userId || 'system';\n this.organizationId = options.organizationId;\n this.softDelete = options.softDelete !== false;\n }\n\n /**\n * 设置当前用户ID\n */\n setUserId(userId: string): void {\n this.userId = userId;\n }\n\n /**\n * 设置组织ID\n */\n setOrganizationId(organizationId: string): void {\n this.organizationId = organizationId;\n }\n\n /**\n * 将数据库记录转换为 SavedConfig\n */\n private toSavedConfig(dbConfig: TestYourselfConfig): SavedConfig {\n return {\n id: dbConfig.id,\n name: dbConfig.name,\n description: dbConfig.description || undefined,\n config: dbConfig.config,\n createdAt: dbConfig.createdAt.getTime(),\n updatedAt: dbConfig.updatedAt.getTime(),\n isDefault: dbConfig.isDefault,\n };\n }\n\n /**\n * 保存配置\n */\n async saveConfig(config: SavedConfig): Promise<void> {\n try {\n // 检查是否已存在\n const existing = await this.db\n .select()\n .from(testYourselfConfigs)\n .where(eq(testYourselfConfigs.id, config.id))\n .limit(1);\n\n const resultCount = config.config.results?.length || 0;\n\n if (existing && existing.length > 0) {\n // 更新现有配置\n await this.db\n .update(testYourselfConfigs)\n .set({\n name: config.name,\n description: config.description || null,\n config: config.config,\n resultCount,\n isDefault: config.isDefault || false,\n updatedBy: this.userId,\n updatedAt: new Date(),\n version: sql`${testYourselfConfigs.version} + 1`, // 版本号递增\n })\n .where(eq(testYourselfConfigs.id, config.id));\n\n console.log('✅ [DatabaseAdapter] 配置已更新:', config.id);\n } else {\n // 插入新配置\n await this.db.insert(testYourselfConfigs).values({\n id: config.id,\n name: config.name,\n description: config.description || null,\n config: config.config,\n resultCount,\n isDefault: config.isDefault || false,\n createdBy: this.userId,\n organizationId: this.organizationId,\n createdAt: new Date(config.createdAt),\n updatedAt: new Date(config.updatedAt),\n });\n\n console.log('✅ [DatabaseAdapter] 配置已创建:', config.id);\n }\n } catch (error) {\n console.error('❌ [DatabaseAdapter] 保存配置失败:', error);\n throw error;\n }\n }\n\n /**\n * 获取配置\n */\n async getConfig(id: string): Promise<SavedConfig | null> {\n try {\n const conditions = [eq(testYourselfConfigs.id, id)];\n\n // 如果启用软删除,过滤已删除的记录\n if (this.softDelete) {\n conditions.push(eq(testYourselfConfigs.isDeleted, false));\n }\n\n const result = await this.db\n .select()\n .from(testYourselfConfigs)\n .where(and(...conditions))\n .limit(1);\n\n if (!result || result.length === 0) {\n return null;\n }\n\n return this.toSavedConfig(result[0]);\n } catch (error) {\n console.error('❌ [DatabaseAdapter] 获取配置失败:', error);\n throw error;\n }\n }\n\n /**\n * 获取所有配置列表\n */\n async getAllConfigs(): Promise<SavedConfig[]> {\n try {\n const conditions = [];\n\n // 如果启用软删除,过滤已删除的记录\n if (this.softDelete) {\n conditions.push(eq(testYourselfConfigs.isDeleted, false));\n }\n\n // 如果设置了组织ID,只查询该组织的配置\n if (this.organizationId) {\n conditions.push(\n or(\n eq(testYourselfConfigs.organizationId, this.organizationId),\n sql`${testYourselfConfigs.organizationId} IS NULL` // 包含全局配置\n )\n );\n }\n\n const result = await this.db\n .select()\n .from(testYourselfConfigs)\n .where(conditions.length > 0 ? and(...conditions) : undefined)\n .orderBy(desc(testYourselfConfigs.createdAt));\n\n return result.map((config: TestYourselfConfig) => this.toSavedConfig(config));\n } catch (error) {\n console.error('❌ [DatabaseAdapter] 获取配置列表失败:', error);\n throw error;\n }\n }\n\n /**\n * 删除配置\n */\n async deleteConfig(id: string): Promise<void> {\n try {\n if (this.softDelete) {\n // 软删除\n await this.db\n .update(testYourselfConfigs)\n .set({\n isDeleted: true,\n deletedAt: new Date(),\n updatedBy: this.userId,\n updatedAt: new Date(),\n })\n .where(eq(testYourselfConfigs.id, id));\n\n console.log('🗑️ [DatabaseAdapter] 配置已软删除:', id);\n } else {\n // 硬删除\n await this.db\n .delete(testYourselfConfigs)\n .where(eq(testYourselfConfigs.id, id));\n\n console.log('🗑️ [DatabaseAdapter] 配置已硬删除:', id);\n }\n } catch (error) {\n console.error('❌ [DatabaseAdapter] 删除配置失败:', error);\n throw error;\n }\n }\n\n /**\n * 更新配置\n */\n async updateConfig(id: string, config: SavedConfig): Promise<void> {\n try {\n const resultCount = config.config.results?.length || 0;\n\n await this.db\n .update(testYourselfConfigs)\n .set({\n name: config.name,\n description: config.description || null,\n config: config.config,\n resultCount,\n isDefault: config.isDefault || false,\n updatedBy: this.userId,\n updatedAt: new Date(config.updatedAt),\n version: sql`${testYourselfConfigs.version} + 1`,\n })\n .where(eq(testYourselfConfigs.id, id));\n\n console.log('✅ [DatabaseAdapter] 配置已更新:', id);\n } catch (error) {\n console.error('❌ [DatabaseAdapter] 更新配置失败:', error);\n throw error;\n }\n }\n\n /**\n * 设置默认配置\n */\n async setDefaultConfig(id: string): Promise<void> {\n try {\n // 使用事务确保原子性\n await this.db.transaction(async (tx: any) => {\n // 1. 清除所有默认配置标记\n const conditions = [eq(testYourselfConfigs.isDefault, true)];\n \n if (this.organizationId) {\n conditions.push(\n eq(testYourselfConfigs.organizationId, this.organizationId)\n );\n }\n\n await tx\n .update(testYourselfConfigs)\n .set({\n isDefault: false,\n updatedBy: this.userId,\n updatedAt: new Date(),\n })\n .where(and(...conditions));\n\n // 2. 设置新的默认配置\n await tx\n .update(testYourselfConfigs)\n .set({\n isDefault: true,\n updatedBy: this.userId,\n updatedAt: new Date(),\n })\n .where(eq(testYourselfConfigs.id, id));\n });\n\n console.log('✅ [DatabaseAdapter] 默认配置已设置:', id);\n } catch (error) {\n console.error('❌ [DatabaseAdapter] 设置默认配置失败:', error);\n throw error;\n }\n }\n\n /**\n * 获取默认配置\n */\n async getDefaultConfig(): Promise<SavedConfig | null> {\n try {\n const conditions = [eq(testYourselfConfigs.isDefault, true)];\n\n // 如果启用软删除,过滤已删除的记录\n if (this.softDelete) {\n conditions.push(eq(testYourselfConfigs.isDeleted, false));\n }\n\n // 如果设置了组织ID,只查询该组织的配置\n if (this.organizationId) {\n conditions.push(\n eq(testYourselfConfigs.organizationId, this.organizationId)\n );\n }\n\n const result = await this.db\n .select()\n .from(testYourselfConfigs)\n .where(and(...conditions))\n .limit(1);\n\n if (!result || result.length === 0) {\n return null;\n }\n\n return this.toSavedConfig(result[0]);\n } catch (error) {\n console.error('❌ [DatabaseAdapter] 获取默认配置失败:', error);\n throw error;\n }\n }\n\n /**\n * 恢复已删除的配置(软删除时可用)\n */\n async restoreConfig(id: string): Promise<void> {\n if (!this.softDelete) {\n throw new Error('恢复功能仅在启用软删除时可用');\n }\n\n try {\n await this.db\n .update(testYourselfConfigs)\n .set({\n isDeleted: false,\n deletedAt: null,\n updatedBy: this.userId,\n updatedAt: new Date(),\n })\n .where(eq(testYourselfConfigs.id, id));\n\n console.log('♻️ [DatabaseAdapter] 配置已恢复:', id);\n } catch (error) {\n console.error('❌ [DatabaseAdapter] 恢复配置失败:', error);\n throw error;\n }\n }\n\n /**\n * 归档配置\n */\n async archiveConfig(id: string): Promise<void> {\n try {\n await this.db\n .update(testYourselfConfigs)\n .set({\n isArchived: true,\n archivedAt: new Date(),\n updatedBy: this.userId,\n updatedAt: new Date(),\n })\n .where(eq(testYourselfConfigs.id, id));\n\n console.log('📦 [DatabaseAdapter] 配置已归档:', id);\n } catch (error) {\n console.error('❌ [DatabaseAdapter] 归档配置失败:', error);\n throw error;\n }\n }\n\n /**\n * 取消归档\n */\n async unarchiveConfig(id: string): Promise<void> {\n try {\n await this.db\n .update(testYourselfConfigs)\n .set({\n isArchived: false,\n archivedAt: null,\n updatedBy: this.userId,\n updatedAt: new Date(),\n })\n .where(eq(testYourselfConfigs.id, id));\n\n console.log('📂 [DatabaseAdapter] 配置已取消归档:', id);\n } catch (error) {\n console.error('❌ [DatabaseAdapter] 取消归档失败:', error);\n throw error;\n }\n }\n\n /**\n * 记录使用次数\n */\n async incrementUsageCount(id: string): Promise<void> {\n try {\n await this.db\n .update(testYourselfConfigs)\n .set({\n usageCount: sql`${testYourselfConfigs.usageCount} + 1`,\n lastUsedAt: new Date(),\n })\n .where(eq(testYourselfConfigs.id, id));\n } catch (error) {\n console.error('❌ [DatabaseAdapter] 更新使用次数失败:', error);\n // 不抛出错误,避免影响主流程\n }\n }\n}\n\n/**\n * 创建数据库配置适配器\n * \n * @example\n * ```typescript\n * import { drizzle } from 'drizzle-orm/postgres-js';\n * import { createDatabaseConfigAdapter } from './DatabaseConfigAdapter';\n * \n * const db = drizzle(connection);\n * const adapter = createDatabaseConfigAdapter({\n * db,\n * userId: 'user-123',\n * organizationId: 'org-456',\n * });\n * \n * // 在 ConfigService 中使用\n * const configService = new ConfigService({\n * storageType: 'custom',\n * customStorage: adapter,\n * });\n * ```\n */\nexport function createDatabaseConfigAdapter(\n options: DatabaseConfigAdapterOptions\n): DatabaseConfigAdapter {\n return new DatabaseConfigAdapter(options);\n}\n"]}
|