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.
Files changed (712) hide show
  1. package/README.md +5 -5
  2. package/dist/AliyunOSSProvider-7IOT5U6M.js +15 -0
  3. package/dist/{AliyunOSSProvider-4GRL2FJB.js.map → AliyunOSSProvider-7IOT5U6M.js.map} +1 -1
  4. package/dist/AliyunOSSProvider-ZXZM7OQA.mjs +6 -0
  5. package/dist/{AliyunOSSProvider-QNVFIZ7Q.mjs.map → AliyunOSSProvider-ZXZM7OQA.mjs.map} +1 -1
  6. package/dist/LocalStorageProvider-KJKRCKBS.js +15 -0
  7. package/dist/{LocalStorageProvider-PFA2DMIJ.js.map → LocalStorageProvider-KJKRCKBS.js.map} +1 -1
  8. package/dist/LocalStorageProvider-O22465NY.mjs +6 -0
  9. package/dist/{LocalStorageProvider-J5RHV37G.mjs.map → LocalStorageProvider-O22465NY.mjs.map} +1 -1
  10. package/dist/{chunk-SLKOEYFH.js → chunk-2234T4A6.js} +5 -5
  11. package/dist/chunk-2234T4A6.js.map +1 -0
  12. package/dist/{chunk-HQLKOXG7.js → chunk-36KGNXKW.js} +3 -3
  13. package/dist/{chunk-HQLKOXG7.js.map → chunk-36KGNXKW.js.map} +1 -1
  14. package/dist/{chunk-BCE6RUZV.js → chunk-375C7WL7.js} +19 -19
  15. package/dist/chunk-375C7WL7.js.map +1 -0
  16. package/dist/{chunk-VMTEDX5H.js → chunk-3J24Z4MB.js} +34 -318
  17. package/dist/chunk-3J24Z4MB.js.map +1 -0
  18. package/dist/{chunk-PBI7FKMB.js → chunk-3QCATFQV.js} +3 -3
  19. package/dist/chunk-3QCATFQV.js.map +1 -0
  20. package/dist/{chunk-FXQOXLDE.js → chunk-3R6JHA6D.js} +4 -4
  21. package/dist/chunk-3R6JHA6D.js.map +1 -0
  22. package/dist/{chunk-ZRAW3HXA.js → chunk-4OXKHV7J.js} +3 -3
  23. package/dist/chunk-4OXKHV7J.js.map +1 -0
  24. package/dist/chunk-4PJM4752.js +4 -0
  25. package/dist/{chunk-5USIS3UM.js.map → chunk-4PJM4752.js.map} +1 -1
  26. package/dist/{chunk-3Z43XGA4.mjs → chunk-65JRVC3F.mjs} +4 -4
  27. package/dist/{chunk-3Z43XGA4.mjs.map → chunk-65JRVC3F.mjs.map} +1 -1
  28. package/dist/{chunk-Q5EDCKQA.js → chunk-6HL54I2B.js} +16 -16
  29. package/dist/chunk-6HL54I2B.js.map +1 -0
  30. package/dist/chunk-6V2MIQPF.mjs +77 -0
  31. package/dist/chunk-6V2MIQPF.mjs.map +1 -0
  32. package/dist/{chunk-C6KV7VTZ.mjs → chunk-7CRU2Y5X.mjs} +5 -5
  33. package/dist/chunk-7CRU2Y5X.mjs.map +1 -0
  34. package/dist/chunk-7PMT4L4I.js +324 -0
  35. package/dist/chunk-7PMT4L4I.js.map +1 -0
  36. package/dist/{chunk-XJ7ZAGC5.js → chunk-7VVZHFEM.js} +3 -3
  37. package/dist/chunk-7VVZHFEM.js.map +1 -0
  38. package/dist/chunk-AWHGIKTQ.js +56 -0
  39. package/dist/{chunk-FHLTPXAR.js.map → chunk-AWHGIKTQ.js.map} +1 -1
  40. package/dist/chunk-B3GYF6TY.js +37 -0
  41. package/dist/{chunk-2Y7BKFKZ.js.map → chunk-B3GYF6TY.js.map} +1 -1
  42. package/dist/{chunk-5FUAQLGC.mjs → chunk-BDBJFOXM.mjs} +3 -3
  43. package/dist/{chunk-5FUAQLGC.mjs.map → chunk-BDBJFOXM.mjs.map} +1 -1
  44. package/dist/{chunk-ZGVB35L2.mjs → chunk-BTW3SWQN.mjs} +3 -3
  45. package/dist/chunk-BTW3SWQN.mjs.map +1 -0
  46. package/dist/{chunk-I5ZPEDNR.mjs → chunk-CHYSSZ4E.mjs} +10 -10
  47. package/dist/chunk-CHYSSZ4E.mjs.map +1 -0
  48. package/dist/{chunk-FIUBFREP.mjs → chunk-DO6QYAZV.mjs} +5 -5
  49. package/dist/chunk-DO6QYAZV.mjs.map +1 -0
  50. package/dist/{chunk-MBANGIG3.mjs → chunk-DTR53LQO.mjs} +6 -6
  51. package/dist/chunk-DTR53LQO.mjs.map +1 -0
  52. package/dist/{chunk-EQXPL7TN.mjs → chunk-EI2S4XDG.mjs} +16 -5
  53. package/dist/chunk-EI2S4XDG.mjs.map +1 -0
  54. package/dist/{chunk-GSNGCENJ.js → chunk-EOZHUI46.js} +16 -4
  55. package/dist/chunk-EOZHUI46.js.map +1 -0
  56. package/dist/{chunk-25OFOKNF.js → chunk-F2BZIU67.js} +18 -5
  57. package/dist/chunk-F2BZIU67.js.map +1 -0
  58. package/dist/{chunk-AQPU2AXH.js → chunk-F2TEJSCP.js} +10 -10
  59. package/dist/chunk-F2TEJSCP.js.map +1 -0
  60. package/dist/{chunk-UCOE6SET.js → chunk-FCLS5R24.js} +3 -3
  61. package/dist/chunk-FCLS5R24.js.map +1 -0
  62. package/dist/{chunk-3NHAT7D4.mjs → chunk-FUA6ZGMI.mjs} +27 -12
  63. package/dist/chunk-FUA6ZGMI.mjs.map +1 -0
  64. package/dist/chunk-FY2X3LYR.mjs +3 -0
  65. package/dist/{chunk-VRN76M56.mjs.map → chunk-FY2X3LYR.mjs.map} +1 -1
  66. package/dist/{chunk-V7EVKD5G.mjs → chunk-GS4SAW25.mjs} +4 -4
  67. package/dist/chunk-GS4SAW25.mjs.map +1 -0
  68. package/dist/chunk-H56ICWUO.js +321 -0
  69. package/dist/chunk-H56ICWUO.js.map +1 -0
  70. package/dist/{chunk-HDMIOOZY.mjs → chunk-HG34SGMN.mjs} +4 -4
  71. package/dist/chunk-HG34SGMN.mjs.map +1 -0
  72. package/dist/chunk-HL4H2HF6.js +279 -0
  73. package/dist/chunk-HL4H2HF6.js.map +1 -0
  74. package/dist/chunk-IJIQUMAK.mjs +272 -0
  75. package/dist/chunk-IJIQUMAK.mjs.map +1 -0
  76. package/dist/{imageCrop/index.mjs → chunk-KEZFTDZT.mjs} +24 -6
  77. package/dist/chunk-KEZFTDZT.mjs.map +1 -0
  78. package/dist/{chunk-KQ643L7Z.js → chunk-KHOVC2KL.js} +3 -3
  79. package/dist/chunk-KHOVC2KL.js.map +1 -0
  80. package/dist/{chunk-6PMXAK7F.js → chunk-KRBSTLKC.js} +57 -57
  81. package/dist/chunk-KRBSTLKC.js.map +1 -0
  82. package/dist/chunk-KVYHCGRY.js +2011 -0
  83. package/dist/chunk-KVYHCGRY.js.map +1 -0
  84. package/dist/{chunk-G7UBMCUT.mjs → chunk-LZ5YTMMP.mjs} +3 -3
  85. package/dist/chunk-LZ5YTMMP.mjs.map +1 -0
  86. package/dist/{chunk-WW4GE6CZ.js → chunk-MJ6XJGAL.js} +23 -119
  87. package/dist/chunk-MJ6XJGAL.js.map +1 -0
  88. package/dist/{chunk-NCRP2YHY.mjs → chunk-MKLXCV4Z.mjs} +8 -96
  89. package/dist/chunk-MKLXCV4Z.mjs.map +1 -0
  90. package/dist/chunk-MMDSZIXD.mjs +286 -0
  91. package/dist/chunk-MMDSZIXD.mjs.map +1 -0
  92. package/dist/{chunk-TC5YU6A4.mjs → chunk-N2O3OX5Y.mjs} +3 -3
  93. package/dist/chunk-N2O3OX5Y.mjs.map +1 -0
  94. package/dist/{chunk-3FRAIS4T.mjs → chunk-O6NNSPWD.mjs} +5 -5
  95. package/dist/{chunk-3FRAIS4T.mjs.map → chunk-O6NNSPWD.mjs.map} +1 -1
  96. package/dist/chunk-OIRZXSYM.js +80 -0
  97. package/dist/chunk-OIRZXSYM.js.map +1 -0
  98. package/dist/{chunk-Q5VFBPMG.mjs → chunk-P7JQRNBJ.mjs} +3 -3
  99. package/dist/chunk-P7JQRNBJ.mjs.map +1 -0
  100. package/dist/{chunk-BIHYZA67.mjs → chunk-PLIG5257.mjs} +18 -18
  101. package/dist/chunk-PLIG5257.mjs.map +1 -0
  102. package/dist/chunk-QIF4MG5V.mjs +283 -0
  103. package/dist/chunk-QIF4MG5V.mjs.map +1 -0
  104. package/dist/{chunk-4OOANEJV.mjs → chunk-RHECN4E2.mjs} +21 -21
  105. package/dist/chunk-RHECN4E2.mjs.map +1 -0
  106. package/dist/{chunk-YOTQG4NP.mjs → chunk-RHHTZTIN.mjs} +4 -4
  107. package/dist/chunk-RHHTZTIN.mjs.map +1 -0
  108. package/dist/{chunk-G6NSKJMH.js → chunk-RRQ2X26Z.js} +4 -4
  109. package/dist/chunk-RRQ2X26Z.js.map +1 -0
  110. package/dist/{chunk-4WBCWJSN.js → chunk-RST2T54Y.js} +7 -7
  111. package/dist/chunk-RST2T54Y.js.map +1 -0
  112. package/dist/{chunk-R2DXTE2L.js → chunk-RVNQI6BI.js} +4 -4
  113. package/dist/chunk-RVNQI6BI.js.map +1 -0
  114. package/dist/{chunk-SKFEJPMJ.mjs → chunk-S3K4LTRI.mjs} +6 -6
  115. package/dist/chunk-S3K4LTRI.mjs.map +1 -0
  116. package/dist/{chunk-ZM2SZJTZ.js → chunk-SWZ5XNF6.js} +9 -9
  117. package/dist/chunk-SWZ5XNF6.js.map +1 -0
  118. package/dist/{chunk-QSKLQX6H.js → chunk-U7HNBCBS.js} +16 -16
  119. package/dist/chunk-U7HNBCBS.js.map +1 -0
  120. package/dist/{chunk-CIVO4R6N.mjs → chunk-UJS3YSD3.mjs} +3 -3
  121. package/dist/chunk-UJS3YSD3.mjs.map +1 -0
  122. package/dist/{chunk-G6HXNQ2U.mjs → chunk-UJUWDF7M.mjs} +8 -8
  123. package/dist/chunk-UJUWDF7M.mjs.map +1 -0
  124. package/dist/{chunk-CAYOQDBR.js → chunk-UR5NENGE.js} +3 -3
  125. package/dist/chunk-UR5NENGE.js.map +1 -0
  126. package/dist/{chunk-QXAOXBVB.mjs → chunk-V7HGBDCB.mjs} +3 -3
  127. package/dist/chunk-V7HGBDCB.mjs.map +1 -0
  128. package/dist/{chunk-ATUCZXJY.js → chunk-V7RLIZMN.js} +14 -4
  129. package/dist/chunk-V7RLIZMN.js.map +1 -0
  130. package/dist/{chunk-ACUFEDVQ.js → chunk-VCKXK6V5.js} +9 -9
  131. package/dist/chunk-VCKXK6V5.js.map +1 -0
  132. package/dist/{chunk-XUS5ACKR.mjs → chunk-VIEXDTNF.mjs} +3 -3
  133. package/dist/chunk-VIEXDTNF.mjs.map +1 -0
  134. package/dist/{imageCrop/index.js → chunk-VN2DULIA.js} +24 -5
  135. package/dist/chunk-VN2DULIA.js.map +1 -0
  136. package/dist/{chunk-S6YSGVWD.js → chunk-VNWMRUY6.js} +31 -87
  137. package/dist/chunk-VNWMRUY6.js.map +1 -0
  138. package/dist/{chunk-3DXPQ4YV.mjs → chunk-VYK4M2D6.mjs} +18 -6
  139. package/dist/chunk-VYK4M2D6.mjs.map +1 -0
  140. package/dist/{chunk-WEEXCPSE.mjs → chunk-WB4H6ZUW.mjs} +3 -3
  141. package/dist/chunk-WB4H6ZUW.mjs.map +1 -0
  142. package/dist/{chunk-GWNBVGDT.mjs → chunk-WM3AEJ2E.mjs} +6 -257
  143. package/dist/chunk-WM3AEJ2E.mjs.map +1 -0
  144. package/dist/{chunk-CX2GHCAI.mjs → chunk-X5GINUGI.mjs} +26 -81
  145. package/dist/chunk-X5GINUGI.mjs.map +1 -0
  146. package/dist/{chunk-DIF5VRL3.mjs → chunk-XB7GUEHZ.mjs} +14 -5
  147. package/dist/chunk-XB7GUEHZ.mjs.map +1 -0
  148. package/dist/{chunk-ZLYPALF3.js → chunk-XE5RGZ3B.js} +11 -11
  149. package/dist/chunk-XE5RGZ3B.js.map +1 -0
  150. package/dist/{chunk-WJ7IMUEJ.mjs → chunk-XNTIMVSL.mjs} +7 -7
  151. package/dist/chunk-XNTIMVSL.mjs.map +1 -0
  152. package/dist/{chunk-ZWQJSZEY.js → chunk-Y7WHUKJF.js} +28 -12
  153. package/dist/chunk-Y7WHUKJF.js.map +1 -0
  154. package/dist/{components/index.mjs → chunk-YIRPPMCN.mjs} +305 -785
  155. package/dist/chunk-YIRPPMCN.mjs.map +1 -0
  156. package/dist/{chunk-KH6RQ4J5.js → chunk-Z2SNB5LJ.js} +3 -3
  157. package/dist/chunk-Z2SNB5LJ.js.map +1 -0
  158. package/dist/{chunk-HJ6MH7J7.js → chunk-ZOP7YIVX.js} +17 -17
  159. package/dist/chunk-ZOP7YIVX.js.map +1 -0
  160. package/dist/{chunk-HJZHQW5R.mjs → chunk-ZUZLWHH5.mjs} +3 -3
  161. package/dist/chunk-ZUZLWHH5.mjs.map +1 -0
  162. package/dist/{ai → common/ai}/llm/core/index.d.mts +3 -3
  163. package/dist/{ai → common/ai}/llm/core/index.d.ts +3 -3
  164. package/dist/{ai/llm → common/ai/llm/core}/index.js +14 -14
  165. package/dist/{ai/llm → common/ai/llm/core}/index.mjs +3 -3
  166. package/dist/{ai → common/ai}/llm/electron/index.d.mts +3 -3
  167. package/dist/{ai/llm/web → common/ai/llm/electron}/index.d.ts +3 -3
  168. package/dist/common/ai/llm/electron/index.js +67 -0
  169. package/dist/common/ai/llm/electron/index.mjs +10 -0
  170. package/dist/{ai → common/ai}/llm/index.d.mts +2 -2
  171. package/dist/{ai → common/ai}/llm/index.d.ts +2 -2
  172. package/dist/{ai/llm/core → common/ai/llm}/index.js +13 -13
  173. package/dist/{ai/llm/core → common/ai/llm}/index.mjs +2 -2
  174. package/dist/{ai → common/ai}/llm/miniapp/index.d.mts +3 -3
  175. package/dist/{ai → common/ai}/llm/miniapp/index.d.ts +3 -3
  176. package/dist/{ai/llm/rn → common/ai/llm/miniapp}/index.js +16 -16
  177. package/dist/{ai/llm/rn → common/ai/llm/miniapp}/index.mjs +4 -4
  178. package/dist/{ai → common/ai}/llm/rn/index.d.mts +3 -3
  179. package/dist/{ai → common/ai}/llm/rn/index.d.ts +3 -3
  180. package/dist/{ai/llm/miniapp → common/ai/llm/rn}/index.js +16 -16
  181. package/dist/{ai/llm/miniapp → common/ai/llm/rn}/index.mjs +4 -4
  182. package/dist/common/ai/llm/ui/electron/index.d.mts +5 -0
  183. package/dist/common/ai/llm/ui/electron/index.d.ts +5 -0
  184. package/dist/common/ai/llm/ui/electron/index.js +22 -0
  185. package/dist/common/ai/llm/ui/electron/index.mjs +9 -0
  186. package/dist/common/ai/llm/ui/miniapp/index.d.mts +9 -0
  187. package/dist/common/ai/llm/ui/miniapp/index.d.ts +9 -0
  188. package/dist/common/ai/llm/ui/miniapp/index.js +14 -0
  189. package/dist/common/ai/llm/ui/miniapp/index.mjs +5 -0
  190. package/dist/common/ai/llm/ui/rn/index.d.mts +9 -0
  191. package/dist/common/ai/llm/ui/rn/index.d.ts +9 -0
  192. package/dist/common/ai/llm/ui/rn/index.js +14 -0
  193. package/dist/common/ai/llm/ui/rn/index.mjs +5 -0
  194. package/dist/{ai → common/ai}/llm/ui/web/index.d.mts +7 -7
  195. package/dist/{ai → common/ai}/llm/ui/web/index.d.ts +7 -7
  196. package/dist/common/ai/llm/ui/web/index.js +21 -0
  197. package/dist/common/ai/llm/ui/web/index.mjs +8 -0
  198. package/dist/{ai → common/ai}/llm/web/index.d.mts +3 -3
  199. package/dist/{ai/llm/electron → common/ai/llm/web}/index.d.ts +3 -3
  200. package/dist/common/ai/llm/web/index.js +66 -0
  201. package/dist/common/ai/llm/web/index.mjs +9 -0
  202. package/dist/{analytics → common/analytics}/index.d.mts +1 -1
  203. package/dist/{analytics → common/analytics}/index.d.ts +1 -1
  204. package/dist/{analytics → common/analytics}/index.js +79 -79
  205. package/dist/{analytics → common/analytics}/index.mjs +3 -3
  206. package/dist/{analytics → common/analytics}/server/index.js +2 -2
  207. package/dist/common/analytics/server/index.js.map +1 -0
  208. package/dist/{analytics → common/analytics}/server/index.mjs +2 -2
  209. package/dist/common/analytics/server/index.mjs.map +1 -0
  210. package/dist/{api → common/api}/index.d.mts +3 -3
  211. package/dist/{api → common/api}/index.d.ts +3 -3
  212. package/dist/common/api/index.js +21 -0
  213. package/dist/common/api/index.mjs +4 -0
  214. package/dist/common/auth/components/index.d.mts +9 -9
  215. package/dist/common/auth/components/index.d.ts +9 -9
  216. package/dist/common/auth/index.js +6 -6
  217. package/dist/common/auth/index.mjs +2 -2
  218. package/dist/common/auth/react/index.d.mts +3 -3
  219. package/dist/common/auth/react/index.d.ts +3 -3
  220. package/dist/common/auth/rn/index.d.mts +2 -2
  221. package/dist/common/auth/rn/index.d.ts +2 -2
  222. package/dist/common/auth/rn/index.js +2 -2
  223. package/dist/common/auth/rn/index.js.map +1 -1
  224. package/dist/common/auth/rn/index.mjs +1 -1
  225. package/dist/common/auth/rn/index.mjs.map +1 -1
  226. package/dist/common/components/index.d.mts +4 -0
  227. package/dist/common/components/index.d.ts +4 -0
  228. package/dist/common/components/index.js +414 -0
  229. package/dist/common/components/index.mjs +9 -0
  230. package/dist/{config → common/config}/index.d.mts +1 -1
  231. package/dist/{config → common/config}/index.d.ts +1 -1
  232. package/dist/common/config/index.js +21 -0
  233. package/dist/common/config/index.mjs +4 -0
  234. package/dist/{config → common/config}/server/index.js +5 -5
  235. package/dist/common/config/server/index.js.map +1 -0
  236. package/dist/{config → common/config}/server/index.mjs +5 -5
  237. package/dist/common/config/server/index.mjs.map +1 -0
  238. package/dist/common/export/index.d.mts +2 -2
  239. package/dist/common/export/index.d.ts +2 -2
  240. package/dist/common/export/index.js +67 -67
  241. package/dist/common/export/index.mjs +3 -3
  242. package/dist/common/export/server/index.d.mts +2 -2
  243. package/dist/common/export/server/index.d.ts +2 -2
  244. package/dist/common/export/server/index.js +76 -48
  245. package/dist/common/export/server/index.mjs +3 -3
  246. package/dist/common/file/index.d.mts +2 -2
  247. package/dist/common/file/index.d.ts +2 -2
  248. package/dist/common/file/index.js +27 -27
  249. package/dist/common/file/index.mjs +5 -5
  250. package/dist/common/file/server/index.d.mts +2 -2
  251. package/dist/common/file/server/index.d.ts +2 -2
  252. package/dist/common/file/server/index.js +58 -50
  253. package/dist/common/file/server/index.mjs +8 -8
  254. package/dist/{i18n → common/i18n}/index.d.mts +1 -1
  255. package/dist/{i18n → common/i18n}/index.d.ts +1 -1
  256. package/dist/{i18n → common/i18n}/index.js +18 -18
  257. package/dist/{i18n → common/i18n}/index.mjs +2 -2
  258. package/dist/common/imageCrop/index.d.mts +2 -0
  259. package/dist/common/imageCrop/index.d.ts +2 -0
  260. package/dist/common/imageCrop/index.js +61 -0
  261. package/dist/common/imageCrop/index.mjs +4 -0
  262. package/dist/common/index.d.mts +16 -16
  263. package/dist/common/index.d.ts +16 -16
  264. package/dist/common/index.js +75 -67
  265. package/dist/common/index.mjs +26 -26
  266. package/dist/common/logger/index.d.mts +1 -1
  267. package/dist/common/logger/index.d.ts +1 -1
  268. package/dist/common/logger/index.js +6 -7
  269. package/dist/common/logger/index.mjs +1 -2
  270. package/dist/{ossFile → common/ossFile}/index.d.mts +6 -6
  271. package/dist/{ossFile → common/ossFile}/index.d.ts +6 -6
  272. package/dist/{ossFile → common/ossFile}/index.js +26 -26
  273. package/dist/{ossFile → common/ossFile}/index.mjs +5 -5
  274. package/dist/{ossFile/server/index.d.ts → common/ossFile/server/index.d.mts} +7 -7
  275. package/dist/{ossFile/server/index.d.mts → common/ossFile/server/index.d.ts} +7 -7
  276. package/dist/{ossFile → common/ossFile}/server/index.js +60 -52
  277. package/dist/{ossFile → common/ossFile}/server/index.mjs +10 -10
  278. package/dist/common/platform/index.js +8 -8
  279. package/dist/common/platform/index.mjs +4 -4
  280. package/dist/common/request/index.d.mts +1 -1
  281. package/dist/common/request/index.d.ts +1 -1
  282. package/dist/common/request/index.js +5 -6
  283. package/dist/common/request/index.mjs +2 -3
  284. package/dist/common/storage/index.d.mts +1 -1
  285. package/dist/common/storage/index.d.ts +1 -1
  286. package/dist/common/storage/index.js +17 -17
  287. package/dist/common/storage/index.mjs +5 -5
  288. package/dist/{universalExport → common/universalExport}/index.d.mts +6 -86
  289. package/dist/{universalExport → common/universalExport}/index.d.ts +6 -86
  290. package/dist/{universalExport → common/universalExport}/index.js +67 -67
  291. package/dist/common/universalExport/index.mjs +5 -0
  292. package/dist/{universalExport → common/universalExport}/server/index.d.mts +3 -84
  293. package/dist/{universalExport → common/universalExport}/server/index.d.ts +3 -84
  294. package/dist/common/universalExport/server/index.js +151 -0
  295. package/dist/common/universalExport/server/index.mjs +6 -0
  296. package/dist/{universalFile/index.d.ts → common/universalFile/index.d.mts} +9 -9
  297. package/dist/{universalFile/index.d.mts → common/universalFile/index.d.ts} +9 -9
  298. package/dist/{universalFile → common/universalFile}/index.js +63 -63
  299. package/dist/common/universalFile/index.js.map +1 -0
  300. package/dist/{universalFile → common/universalFile}/index.mjs +4 -4
  301. package/dist/common/universalFile/index.mjs.map +1 -0
  302. package/dist/{universalFile → common/universalFile}/server/index.d.mts +5 -5
  303. package/dist/{universalFile → common/universalFile}/server/index.d.ts +5 -5
  304. package/dist/{universalFile → common/universalFile}/server/index.js +68 -68
  305. package/dist/{universalFile → common/universalFile}/server/index.mjs +8 -8
  306. package/dist/common/utils/index.d.mts +1 -1
  307. package/dist/common/utils/index.d.ts +1 -1
  308. package/dist/common/utils/index.js +11 -12
  309. package/dist/common/utils/index.mjs +2 -3
  310. package/dist/{index-WrR57hKT.d.ts → index-BRLygK4h.d.ts} +2 -2
  311. package/dist/{request/index.d.mts → index-BWNK5mH2.d.ts} +19 -2
  312. package/dist/{utils/index.d.mts → index-BiCK6gg6.d.mts} +19 -1
  313. package/dist/{utils/index.d.ts → index-BiCK6gg6.d.ts} +19 -1
  314. package/dist/{index-DoUo8IrU.d.mts → index-BxZauNN_.d.mts} +8 -8
  315. package/dist/{index-DoUo8IrU.d.ts → index-BxZauNN_.d.ts} +8 -8
  316. package/dist/{request/index.d.ts → index-C-P2yBTH.d.mts} +19 -2
  317. package/dist/{index-D0cqaQEH.d.mts → index-CLB80GCP.d.mts} +5 -5
  318. package/dist/{index-D0cqaQEH.d.ts → index-CLB80GCP.d.ts} +5 -5
  319. package/dist/{index-2G9Dxjvt.d.ts → index-CT4K2z-O.d.ts} +2 -2
  320. package/dist/{index-qcOvRVuN.d.mts → index-D6RJTGce.d.mts} +2 -2
  321. package/dist/{storage/index.d.ts → index-DA7L9JlE.d.mts} +26 -3
  322. package/dist/{imageCrop/index.d.mts → index-DXVph21C.d.mts} +40 -4
  323. package/dist/{imageCrop/index.d.ts → index-DXVph21C.d.ts} +40 -4
  324. package/dist/{index-CYuUB8aF.d.mts → index-DzyK789B.d.mts} +2 -2
  325. package/dist/{logger/index.d.mts → index-FVJZCEtm.d.mts} +21 -1
  326. package/dist/{logger/index.d.ts → index-FVJZCEtm.d.ts} +21 -1
  327. package/dist/{storage/index.d.mts → index-nD9vPCZT.d.ts} +26 -3
  328. package/dist/{components/index.d.mts → index-nOmIv2BG.d.mts} +159 -5
  329. package/dist/{components/index.d.ts → index-nOmIv2BG.d.ts} +159 -5
  330. package/dist/{path-qjVnH8qU.d.ts → path-Bzc7hj1N.d.ts} +5 -1
  331. package/dist/{path-DkaHQSyW.d.mts → path-DN_65vhO.d.mts} +5 -1
  332. package/dist/{types-3ujSNAXb.d.mts → utils-Dm3O1rAa.d.mts} +81 -1
  333. package/dist/{types-3ujSNAXb.d.ts → utils-Dm3O1rAa.d.ts} +81 -1
  334. package/package.json +292 -312
  335. package/dist/AliyunOSSProvider-4GRL2FJB.js +0 -15
  336. package/dist/AliyunOSSProvider-QNVFIZ7Q.mjs +0 -6
  337. package/dist/CollisionBalls-BpHufX3H.d.mts +0 -41
  338. package/dist/CollisionBalls-BpHufX3H.d.ts +0 -41
  339. package/dist/ConfigService-BxK06xP6.d.mts +0 -262
  340. package/dist/ConfigService-BxK06xP6.d.ts +0 -262
  341. package/dist/LocalStorageProvider-J5RHV37G.mjs +0 -6
  342. package/dist/LocalStorageProvider-PFA2DMIJ.js +0 -15
  343. package/dist/UniversalFileService-CC4d3wkc.d.ts +0 -139
  344. package/dist/UniversalFileService-CzAE_G4V.d.mts +0 -139
  345. package/dist/ai/llm/electron/index.js +0 -66
  346. package/dist/ai/llm/electron/index.mjs +0 -9
  347. package/dist/ai/llm/ui/electron/index.d.mts +0 -5
  348. package/dist/ai/llm/ui/electron/index.d.ts +0 -5
  349. package/dist/ai/llm/ui/electron/index.js +0 -21
  350. package/dist/ai/llm/ui/electron/index.mjs +0 -8
  351. package/dist/ai/llm/ui/miniapp/index.d.mts +0 -9
  352. package/dist/ai/llm/ui/miniapp/index.d.ts +0 -9
  353. package/dist/ai/llm/ui/miniapp/index.js +0 -14
  354. package/dist/ai/llm/ui/miniapp/index.mjs +0 -5
  355. package/dist/ai/llm/ui/rn/index.d.mts +0 -9
  356. package/dist/ai/llm/ui/rn/index.d.ts +0 -9
  357. package/dist/ai/llm/ui/rn/index.js +0 -14
  358. package/dist/ai/llm/ui/rn/index.mjs +0 -5
  359. package/dist/ai/llm/ui/web/index.js +0 -20
  360. package/dist/ai/llm/ui/web/index.mjs +0 -7
  361. package/dist/ai/llm/web/index.js +0 -65
  362. package/dist/ai/llm/web/index.mjs +0 -8
  363. package/dist/analytics/server/index.js.map +0 -1
  364. package/dist/analytics/server/index.mjs.map +0 -1
  365. package/dist/api/index.js +0 -21
  366. package/dist/api/index.mjs +0 -4
  367. package/dist/audioDetection/index.d.mts +0 -449
  368. package/dist/audioDetection/index.d.ts +0 -449
  369. package/dist/audioDetection/index.js +0 -1244
  370. package/dist/audioDetection/index.js.map +0 -1
  371. package/dist/audioDetection/index.mjs +0 -1227
  372. package/dist/audioDetection/index.mjs.map +0 -1
  373. package/dist/boothVaultService-Cn4WPhjg.d.mts +0 -83
  374. package/dist/boothVaultService-Cn4WPhjg.d.ts +0 -83
  375. package/dist/business/index.d.mts +0 -2
  376. package/dist/business/index.d.ts +0 -2
  377. package/dist/business/index.js +0 -581
  378. package/dist/business/index.js.map +0 -1
  379. package/dist/business/index.mjs +0 -575
  380. package/dist/business/index.mjs.map +0 -1
  381. package/dist/calendar/index.d.mts +0 -1325
  382. package/dist/calendar/index.d.ts +0 -1325
  383. package/dist/calendar/index.js +0 -5964
  384. package/dist/calendar/index.js.map +0 -1
  385. package/dist/calendar/index.mjs +0 -5878
  386. package/dist/calendar/index.mjs.map +0 -1
  387. package/dist/calendar/routes/index.d.mts +0 -191
  388. package/dist/calendar/routes/index.d.ts +0 -191
  389. package/dist/calendar/routes/index.js +0 -844
  390. package/dist/calendar/routes/index.js.map +0 -1
  391. package/dist/calendar/routes/index.mjs +0 -826
  392. package/dist/calendar/routes/index.mjs.map +0 -1
  393. package/dist/chunk-25OFOKNF.js.map +0 -1
  394. package/dist/chunk-2Y7BKFKZ.js +0 -37
  395. package/dist/chunk-3CSCIRQY.js +0 -17
  396. package/dist/chunk-3CSCIRQY.js.map +0 -1
  397. package/dist/chunk-3DXPQ4YV.mjs.map +0 -1
  398. package/dist/chunk-3NHAT7D4.mjs.map +0 -1
  399. package/dist/chunk-4FDUURSD.js +0 -22
  400. package/dist/chunk-4FDUURSD.js.map +0 -1
  401. package/dist/chunk-4OOANEJV.mjs.map +0 -1
  402. package/dist/chunk-4WBCWJSN.js.map +0 -1
  403. package/dist/chunk-5GBDDXYL.mjs +0 -23
  404. package/dist/chunk-5GBDDXYL.mjs.map +0 -1
  405. package/dist/chunk-5USIS3UM.js +0 -4
  406. package/dist/chunk-6PMXAK7F.js.map +0 -1
  407. package/dist/chunk-7B5SI4OF.mjs +0 -15
  408. package/dist/chunk-7B5SI4OF.mjs.map +0 -1
  409. package/dist/chunk-ACUFEDVQ.js.map +0 -1
  410. package/dist/chunk-AQPU2AXH.js.map +0 -1
  411. package/dist/chunk-ATUCZXJY.js.map +0 -1
  412. package/dist/chunk-BCE6RUZV.js.map +0 -1
  413. package/dist/chunk-BIHYZA67.mjs.map +0 -1
  414. package/dist/chunk-C6KV7VTZ.mjs.map +0 -1
  415. package/dist/chunk-CAYOQDBR.js.map +0 -1
  416. package/dist/chunk-CIVO4R6N.mjs.map +0 -1
  417. package/dist/chunk-CX2GHCAI.mjs.map +0 -1
  418. package/dist/chunk-DIF5VRL3.mjs.map +0 -1
  419. package/dist/chunk-EQXPL7TN.mjs.map +0 -1
  420. package/dist/chunk-FCEBAWN6.js +0 -18
  421. package/dist/chunk-FCEBAWN6.js.map +0 -1
  422. package/dist/chunk-FHIE5MTC.mjs +0 -541
  423. package/dist/chunk-FHIE5MTC.mjs.map +0 -1
  424. package/dist/chunk-FHLTPXAR.js +0 -56
  425. package/dist/chunk-FIUBFREP.mjs.map +0 -1
  426. package/dist/chunk-FXQOXLDE.js.map +0 -1
  427. package/dist/chunk-G6HXNQ2U.mjs.map +0 -1
  428. package/dist/chunk-G6NSKJMH.js.map +0 -1
  429. package/dist/chunk-G7UBMCUT.mjs.map +0 -1
  430. package/dist/chunk-GSNGCENJ.js.map +0 -1
  431. package/dist/chunk-GWNBVGDT.mjs.map +0 -1
  432. package/dist/chunk-HDMIOOZY.mjs.map +0 -1
  433. package/dist/chunk-HJ6MH7J7.js.map +0 -1
  434. package/dist/chunk-HJZHQW5R.mjs.map +0 -1
  435. package/dist/chunk-I5ZPEDNR.mjs.map +0 -1
  436. package/dist/chunk-KH6RQ4J5.js.map +0 -1
  437. package/dist/chunk-KQ643L7Z.js.map +0 -1
  438. package/dist/chunk-LFB5EIIM.mjs +0 -31
  439. package/dist/chunk-LFB5EIIM.mjs.map +0 -1
  440. package/dist/chunk-MBANGIG3.mjs.map +0 -1
  441. package/dist/chunk-NCRP2YHY.mjs.map +0 -1
  442. package/dist/chunk-NDGHXVGS.js +0 -25
  443. package/dist/chunk-NDGHXVGS.js.map +0 -1
  444. package/dist/chunk-NDPO5OMC.js +0 -563
  445. package/dist/chunk-NDPO5OMC.js.map +0 -1
  446. package/dist/chunk-PBI7FKMB.js.map +0 -1
  447. package/dist/chunk-Q5EDCKQA.js.map +0 -1
  448. package/dist/chunk-Q5VFBPMG.mjs.map +0 -1
  449. package/dist/chunk-QSKLQX6H.js.map +0 -1
  450. package/dist/chunk-QXAOXBVB.mjs.map +0 -1
  451. package/dist/chunk-R2DXTE2L.js.map +0 -1
  452. package/dist/chunk-RTD2WHQQ.mjs +0 -16
  453. package/dist/chunk-RTD2WHQQ.mjs.map +0 -1
  454. package/dist/chunk-S6YSGVWD.js.map +0 -1
  455. package/dist/chunk-SKFEJPMJ.mjs.map +0 -1
  456. package/dist/chunk-SLKOEYFH.js.map +0 -1
  457. package/dist/chunk-TC5YU6A4.mjs.map +0 -1
  458. package/dist/chunk-UCOE6SET.js.map +0 -1
  459. package/dist/chunk-UIYKZ73N.js +0 -36
  460. package/dist/chunk-UIYKZ73N.js.map +0 -1
  461. package/dist/chunk-V7EVKD5G.mjs.map +0 -1
  462. package/dist/chunk-VMTEDX5H.js.map +0 -1
  463. package/dist/chunk-VRN76M56.mjs +0 -3
  464. package/dist/chunk-VXFUXZN5.mjs +0 -20
  465. package/dist/chunk-VXFUXZN5.mjs.map +0 -1
  466. package/dist/chunk-WEEXCPSE.mjs.map +0 -1
  467. package/dist/chunk-WJ7IMUEJ.mjs.map +0 -1
  468. package/dist/chunk-WW4GE6CZ.js.map +0 -1
  469. package/dist/chunk-XJ7ZAGC5.js.map +0 -1
  470. package/dist/chunk-XUS5ACKR.mjs.map +0 -1
  471. package/dist/chunk-YOTQG4NP.mjs.map +0 -1
  472. package/dist/chunk-ZGVB35L2.mjs.map +0 -1
  473. package/dist/chunk-ZLYPALF3.js.map +0 -1
  474. package/dist/chunk-ZM2SZJTZ.js.map +0 -1
  475. package/dist/chunk-ZRAW3HXA.js.map +0 -1
  476. package/dist/chunk-ZWQJSZEY.js.map +0 -1
  477. package/dist/components/index.js +0 -2516
  478. package/dist/components/index.js.map +0 -1
  479. package/dist/components/index.mjs.map +0 -1
  480. package/dist/config/index.js +0 -21
  481. package/dist/config/index.mjs +0 -4
  482. package/dist/config/server/index.js.map +0 -1
  483. package/dist/config/server/index.mjs.map +0 -1
  484. package/dist/drizzle-schema-BNhqj2AZ.d.mts +0 -1114
  485. package/dist/drizzle-schema-BNhqj2AZ.d.ts +0 -1114
  486. package/dist/festivalCard/index.d.mts +0 -76
  487. package/dist/festivalCard/index.d.ts +0 -76
  488. package/dist/festivalCard/index.js +0 -1492
  489. package/dist/festivalCard/index.js.map +0 -1
  490. package/dist/festivalCard/index.mjs +0 -1475
  491. package/dist/festivalCard/index.mjs.map +0 -1
  492. package/dist/festivalCard/routes/index.d.mts +0 -42
  493. package/dist/festivalCard/routes/index.d.ts +0 -42
  494. package/dist/festivalCard/routes/index.js +0 -361
  495. package/dist/festivalCard/routes/index.js.map +0 -1
  496. package/dist/festivalCard/routes/index.mjs +0 -356
  497. package/dist/festivalCard/routes/index.mjs.map +0 -1
  498. package/dist/festivalCard/server/index.d.mts +0 -120
  499. package/dist/festivalCard/server/index.d.ts +0 -120
  500. package/dist/festivalCard/server/index.js +0 -272
  501. package/dist/festivalCard/server/index.js.map +0 -1
  502. package/dist/festivalCard/server/index.mjs +0 -265
  503. package/dist/festivalCard/server/index.mjs.map +0 -1
  504. package/dist/festivalCardService-B3GsnNpV.d.ts +0 -13
  505. package/dist/festivalCardService-CWhrLNE9.d.mts +0 -13
  506. package/dist/imageCrop/index.js.map +0 -1
  507. package/dist/imageCrop/index.mjs.map +0 -1
  508. package/dist/index-Bjem5rWn.d.mts +0 -17
  509. package/dist/index-C5U-2hJq.d.ts +0 -23
  510. package/dist/index-CifSBBP2.d.ts +0 -17
  511. package/dist/index-D0K4ehme.d.mts +0 -20
  512. package/dist/index-DLnfKN-a.d.mts +0 -23
  513. package/dist/index-DSel44Ke.d.mts +0 -93
  514. package/dist/index-DSel44Ke.d.ts +0 -93
  515. package/dist/index-DZ5iJtNO.d.mts +0 -102
  516. package/dist/index-DZ5iJtNO.d.ts +0 -102
  517. package/dist/index-Da7qdkgW.d.ts +0 -20
  518. package/dist/index-DrPcMJPc.d.mts +0 -250
  519. package/dist/index-DrPcMJPc.d.ts +0 -250
  520. package/dist/index-oLUvfqT8.d.ts +0 -20
  521. package/dist/index-pe38RDgC.d.mts +0 -20
  522. package/dist/index.d.mts +0 -11611
  523. package/dist/index.d.ts +0 -11611
  524. package/dist/index.js +0 -17230
  525. package/dist/index.js.map +0 -1
  526. package/dist/index.mjs +0 -16954
  527. package/dist/index.mjs.map +0 -1
  528. package/dist/logger/index.js +0 -29
  529. package/dist/logger/index.mjs +0 -4
  530. package/dist/mikuContest/ui/web/index.d.mts +0 -2
  531. package/dist/mikuContest/ui/web/index.d.ts +0 -2
  532. package/dist/mikuContest/ui/web/index.js +0 -353
  533. package/dist/mikuContest/ui/web/index.js.map +0 -1
  534. package/dist/mikuContest/ui/web/index.mjs +0 -343
  535. package/dist/mikuContest/ui/web/index.mjs.map +0 -1
  536. package/dist/mikuFireworks3D/index.d.mts +0 -268
  537. package/dist/mikuFireworks3D/index.d.ts +0 -268
  538. package/dist/mikuFireworks3D/index.js +0 -1267
  539. package/dist/mikuFireworks3D/index.js.map +0 -1
  540. package/dist/mikuFireworks3D/index.mjs +0 -1228
  541. package/dist/mikuFireworks3D/index.mjs.map +0 -1
  542. package/dist/mikuFusionGame/index.d.mts +0 -117
  543. package/dist/mikuFusionGame/index.d.ts +0 -117
  544. package/dist/mikuFusionGame/index.js +0 -1208
  545. package/dist/mikuFusionGame/index.js.map +0 -1
  546. package/dist/mikuFusionGame/index.mjs +0 -1195
  547. package/dist/mikuFusionGame/index.mjs.map +0 -1
  548. package/dist/mmd/admin/index.d.mts +0 -487
  549. package/dist/mmd/admin/index.d.ts +0 -487
  550. package/dist/mmd/admin/index.js +0 -1058
  551. package/dist/mmd/admin/index.js.map +0 -1
  552. package/dist/mmd/admin/index.mjs +0 -1027
  553. package/dist/mmd/admin/index.mjs.map +0 -1
  554. package/dist/mmd/index.d.mts +0 -2467
  555. package/dist/mmd/index.d.ts +0 -2467
  556. package/dist/mmd/index.js +0 -10119
  557. package/dist/mmd/index.js.map +0 -1
  558. package/dist/mmd/index.mjs +0 -10028
  559. package/dist/mmd/index.mjs.map +0 -1
  560. package/dist/mmd/server/index.d.mts +0 -139
  561. package/dist/mmd/server/index.d.ts +0 -139
  562. package/dist/mmd/server/index.js +0 -424
  563. package/dist/mmd/server/index.js.map +0 -1
  564. package/dist/mmd/server/index.mjs +0 -404
  565. package/dist/mmd/server/index.mjs.map +0 -1
  566. package/dist/music/index.d.mts +0 -74
  567. package/dist/music/index.d.ts +0 -74
  568. package/dist/music/index.js +0 -830
  569. package/dist/music/index.js.map +0 -1
  570. package/dist/music/index.mjs +0 -809
  571. package/dist/music/index.mjs.map +0 -1
  572. package/dist/music/server/index.d.mts +0 -1
  573. package/dist/music/server/index.d.ts +0 -1
  574. package/dist/music/server/index.js +0 -194
  575. package/dist/music/server/index.js.map +0 -1
  576. package/dist/music/server/index.mjs +0 -182
  577. package/dist/music/server/index.mjs.map +0 -1
  578. package/dist/navigation/index.d.mts +0 -93
  579. package/dist/navigation/index.d.ts +0 -93
  580. package/dist/navigation/index.js +0 -453
  581. package/dist/navigation/index.js.map +0 -1
  582. package/dist/navigation/index.mjs +0 -443
  583. package/dist/navigation/index.mjs.map +0 -1
  584. package/dist/portfolio/index.d.mts +0 -66
  585. package/dist/portfolio/index.d.ts +0 -66
  586. package/dist/portfolio/index.js +0 -736
  587. package/dist/portfolio/index.js.map +0 -1
  588. package/dist/portfolio/index.mjs +0 -724
  589. package/dist/portfolio/index.mjs.map +0 -1
  590. package/dist/qqbot/server/index.d.mts +0 -216
  591. package/dist/qqbot/server/index.d.ts +0 -216
  592. package/dist/qqbot/server/index.js +0 -394
  593. package/dist/qqbot/server/index.js.map +0 -1
  594. package/dist/qqbot/server/index.mjs +0 -385
  595. package/dist/qqbot/server/index.mjs.map +0 -1
  596. package/dist/qqbot/ui/web/index.d.mts +0 -10
  597. package/dist/qqbot/ui/web/index.d.ts +0 -10
  598. package/dist/qqbot/ui/web/index.js +0 -105
  599. package/dist/qqbot/ui/web/index.js.map +0 -1
  600. package/dist/qqbot/ui/web/index.mjs +0 -99
  601. package/dist/qqbot/ui/web/index.mjs.map +0 -1
  602. package/dist/request/index.js +0 -22
  603. package/dist/request/index.mjs +0 -5
  604. package/dist/screenReceiver/index.d.mts +0 -86
  605. package/dist/screenReceiver/index.d.ts +0 -86
  606. package/dist/screenReceiver/index.js +0 -281
  607. package/dist/screenReceiver/index.js.map +0 -1
  608. package/dist/screenReceiver/index.mjs +0 -273
  609. package/dist/screenReceiver/index.mjs.map +0 -1
  610. package/dist/storage/index.js +0 -48
  611. package/dist/storage/index.mjs +0 -7
  612. package/dist/testYourself/admin/index.d.mts +0 -58
  613. package/dist/testYourself/admin/index.d.ts +0 -58
  614. package/dist/testYourself/admin/index.js +0 -1009
  615. package/dist/testYourself/admin/index.js.map +0 -1
  616. package/dist/testYourself/admin/index.mjs +0 -1002
  617. package/dist/testYourself/admin/index.mjs.map +0 -1
  618. package/dist/testYourself/index.d.mts +0 -53
  619. package/dist/testYourself/index.d.ts +0 -53
  620. package/dist/testYourself/index.js +0 -2551
  621. package/dist/testYourself/index.js.map +0 -1
  622. package/dist/testYourself/index.mjs +0 -2531
  623. package/dist/testYourself/index.mjs.map +0 -1
  624. package/dist/testYourself/server/index.d.mts +0 -1029
  625. package/dist/testYourself/server/index.d.ts +0 -1029
  626. package/dist/testYourself/server/index.js +0 -825
  627. package/dist/testYourself/server/index.js.map +0 -1
  628. package/dist/testYourself/server/index.mjs +0 -816
  629. package/dist/testYourself/server/index.mjs.map +0 -1
  630. package/dist/types-B6B210gX.d.mts +0 -270
  631. package/dist/types-B6B210gX.d.ts +0 -270
  632. package/dist/types-Bdnte5EN.d.mts +0 -292
  633. package/dist/types-Cs0CLvrH.d.mts +0 -70
  634. package/dist/types-Cs0CLvrH.d.ts +0 -70
  635. package/dist/types-HorDyIRv.d.mts +0 -303
  636. package/dist/types-HorDyIRv.d.ts +0 -303
  637. package/dist/types-_rFX1atk.d.ts +0 -292
  638. package/dist/universalExport/index.mjs +0 -5
  639. package/dist/universalExport/server/index.js +0 -123
  640. package/dist/universalExport/server/index.mjs +0 -6
  641. package/dist/universalFile/index.js.map +0 -1
  642. package/dist/universalFile/index.mjs.map +0 -1
  643. package/dist/universalFile/server/index.js.map +0 -1
  644. package/dist/universalFile/server/index.mjs.map +0 -1
  645. package/dist/utils/index.js +0 -46
  646. package/dist/utils/index.js.map +0 -1
  647. package/dist/utils/index.mjs +0 -5
  648. package/dist/utils/index.mjs.map +0 -1
  649. package/dist/vocaloidBooth/index.d.mts +0 -64
  650. package/dist/vocaloidBooth/index.d.ts +0 -64
  651. package/dist/vocaloidBooth/index.js +0 -376
  652. package/dist/vocaloidBooth/index.js.map +0 -1
  653. package/dist/vocaloidBooth/index.mjs +0 -362
  654. package/dist/vocaloidBooth/index.mjs.map +0 -1
  655. package/dist/vocaloidBooth/server/index.d.mts +0 -111
  656. package/dist/vocaloidBooth/server/index.d.ts +0 -111
  657. package/dist/vocaloidBooth/server/index.js +0 -247
  658. package/dist/vocaloidBooth/server/index.js.map +0 -1
  659. package/dist/vocaloidBooth/server/index.mjs +0 -237
  660. package/dist/vocaloidBooth/server/index.mjs.map +0 -1
  661. package/dist/vocaloidBooth/web/index.d.mts +0 -3
  662. package/dist/vocaloidBooth/web/index.d.ts +0 -3
  663. package/dist/vocaloidBooth/web/index.js +0 -376
  664. package/dist/vocaloidBooth/web/index.js.map +0 -1
  665. package/dist/vocaloidBooth/web/index.mjs +0 -362
  666. package/dist/vocaloidBooth/web/index.mjs.map +0 -1
  667. /package/dist/{ai → common/ai}/llm/core/index.js.map +0 -0
  668. /package/dist/{ai → common/ai}/llm/core/index.mjs.map +0 -0
  669. /package/dist/{ai → common/ai}/llm/electron/index.js.map +0 -0
  670. /package/dist/{ai → common/ai}/llm/electron/index.mjs.map +0 -0
  671. /package/dist/{ai → common/ai}/llm/index.js.map +0 -0
  672. /package/dist/{ai → common/ai}/llm/index.mjs.map +0 -0
  673. /package/dist/{ai → common/ai}/llm/miniapp/index.js.map +0 -0
  674. /package/dist/{ai → common/ai}/llm/miniapp/index.mjs.map +0 -0
  675. /package/dist/{ai → common/ai}/llm/rn/index.js.map +0 -0
  676. /package/dist/{ai → common/ai}/llm/rn/index.mjs.map +0 -0
  677. /package/dist/{ai → common/ai}/llm/ui/electron/index.js.map +0 -0
  678. /package/dist/{ai → common/ai}/llm/ui/electron/index.mjs.map +0 -0
  679. /package/dist/{ai → common/ai}/llm/ui/miniapp/index.js.map +0 -0
  680. /package/dist/{ai → common/ai}/llm/ui/miniapp/index.mjs.map +0 -0
  681. /package/dist/{ai → common/ai}/llm/ui/rn/index.js.map +0 -0
  682. /package/dist/{ai → common/ai}/llm/ui/rn/index.mjs.map +0 -0
  683. /package/dist/{ai → common/ai}/llm/ui/web/index.js.map +0 -0
  684. /package/dist/{ai → common/ai}/llm/ui/web/index.mjs.map +0 -0
  685. /package/dist/{ai → common/ai}/llm/web/index.js.map +0 -0
  686. /package/dist/{ai → common/ai}/llm/web/index.mjs.map +0 -0
  687. /package/dist/{analytics → common/analytics}/index.js.map +0 -0
  688. /package/dist/{analytics → common/analytics}/index.mjs.map +0 -0
  689. /package/dist/{analytics → common/analytics}/server/index.d.mts +0 -0
  690. /package/dist/{analytics → common/analytics}/server/index.d.ts +0 -0
  691. /package/dist/{api → common/api}/index.js.map +0 -0
  692. /package/dist/{api → common/api}/index.mjs.map +0 -0
  693. /package/dist/{config → common/components}/index.js.map +0 -0
  694. /package/dist/{config → common/components}/index.mjs.map +0 -0
  695. /package/dist/{i18n → common/config}/index.js.map +0 -0
  696. /package/dist/{i18n → common/config}/index.mjs.map +0 -0
  697. /package/dist/{config → common/config}/server/index.d.mts +0 -0
  698. /package/dist/{config → common/config}/server/index.d.ts +0 -0
  699. /package/dist/{logger → common/i18n}/index.js.map +0 -0
  700. /package/dist/{logger → common/i18n}/index.mjs.map +0 -0
  701. /package/dist/{ossFile → common/imageCrop}/index.js.map +0 -0
  702. /package/dist/{ossFile → common/imageCrop}/index.mjs.map +0 -0
  703. /package/dist/{ossFile/server → common/ossFile}/index.js.map +0 -0
  704. /package/dist/{ossFile/server → common/ossFile}/index.mjs.map +0 -0
  705. /package/dist/{request → common/ossFile/server}/index.js.map +0 -0
  706. /package/dist/{request → common/ossFile/server}/index.mjs.map +0 -0
  707. /package/dist/{storage → common/universalExport}/index.js.map +0 -0
  708. /package/dist/{storage → common/universalExport}/index.mjs.map +0 -0
  709. /package/dist/{universalExport → common/universalExport/server}/index.js.map +0 -0
  710. /package/dist/{universalExport → common/universalExport/server}/index.mjs.map +0 -0
  711. /package/dist/{universalExport → common/universalFile}/server/index.js.map +0 -0
  712. /package/dist/{universalExport → common/universalFile}/server/index.mjs.map +0 -0
@@ -1,272 +0,0 @@
1
- 'use strict';
2
-
3
- var pgCore = require('drizzle-orm/pg-core');
4
- var drizzleOrm = require('drizzle-orm');
5
-
6
- // src/festivalCard/server/db.ts
7
- var dbAdapter = null;
8
- var initializeFestivalCardDb = (adapter) => {
9
- dbAdapter = adapter;
10
- };
11
- var getFestivalCardDb = () => dbAdapter;
12
-
13
- // src/festivalCard/core/defaults.ts
14
- var DEFAULT_FESTIVAL_CARD_CONFIG = {
15
- id: "default-festival-card",
16
- name: "Holiday Card",
17
- theme: "winter",
18
- coverTitle: "Happy Holidays",
19
- coverSubtitle: "Warm wishes for you",
20
- background: {
21
- colorA: "#0c1a34",
22
- colorB: "#1f4f8a"
23
- },
24
- backgroundMusic: {
25
- src: "",
26
- loop: true,
27
- autoPlay: false,
28
- volume: 0.5
29
- },
30
- pages: [
31
- {
32
- id: "page-1",
33
- title: "\u5C01\u9762",
34
- background: { color: "#11284d" },
35
- elements: [
36
- {
37
- id: "p1-text-1",
38
- type: "text",
39
- x: 50,
40
- y: 20,
41
- content: "\u65B0\u5E74\u5FEB\u4E50",
42
- fontSize: 34,
43
- fontWeight: 700,
44
- align: "center",
45
- color: "#f8fafc"
46
- },
47
- {
48
- id: "p1-text-2",
49
- type: "text",
50
- x: 50,
51
- y: 36,
52
- content: "\u613F\u8FD9\u4E00\u5E74\u5E73\u5B89\u559C\u4E50",
53
- fontSize: 18,
54
- fontWeight: 500,
55
- align: "center",
56
- color: "#dbeafe"
57
- },
58
- {
59
- id: "p1-image-1",
60
- type: "image",
61
- x: 50,
62
- y: 68,
63
- width: 72,
64
- height: 42,
65
- src: "https://images.unsplash.com/photo-1512389142860-9c449e58a543?auto=format&fit=crop&w=1200&q=80",
66
- fit: "cover",
67
- borderRadius: 16,
68
- alt: "holiday",
69
- isBackground: false
70
- }
71
- ]
72
- },
73
- {
74
- id: "page-2",
75
- title: "\u795D\u798F",
76
- background: { color: "#1a3766" },
77
- elements: [
78
- {
79
- id: "p2-text-1",
80
- type: "text",
81
- x: 50,
82
- y: 28,
83
- content: "\u613F\u4F60\u65B0\u5C81\uFF1A",
84
- fontSize: 28,
85
- fontWeight: 700,
86
- align: "center",
87
- color: "#fef3c7"
88
- },
89
- {
90
- id: "p2-text-2",
91
- type: "text",
92
- x: 50,
93
- y: 42,
94
- content: "\u6240\u5F97\u7686\u6240\u671F\uFF0C\u6240\u5931\u4EA6\u65E0\u788D",
95
- fontSize: 18,
96
- fontWeight: 500,
97
- align: "center",
98
- color: "#f8fafc"
99
- },
100
- {
101
- id: "p2-text-3",
102
- type: "text",
103
- x: 50,
104
- y: 55,
105
- content: "\u613F\u4F60\u7684\u6BCF\u4E00\u6B65\u90FD\u8D70\u5411\u5149\u4EAE",
106
- fontSize: 16,
107
- fontWeight: 400,
108
- align: "center",
109
- color: "#dbeafe"
110
- }
111
- ]
112
- },
113
- {
114
- id: "page-3",
115
- title: "\u843D\u6B3E",
116
- background: { color: "#11284d" },
117
- elements: [
118
- {
119
- id: "p3-image-1",
120
- type: "image",
121
- x: 50,
122
- y: 34,
123
- width: 60,
124
- height: 42,
125
- src: "https://images.unsplash.com/photo-1456324504439-367cee3b3c32?auto=format&fit=crop&w=1200&q=80",
126
- fit: "cover",
127
- borderRadius: 14,
128
- alt: "gift",
129
- isBackground: false
130
- },
131
- {
132
- id: "p3-text-1",
133
- type: "text",
134
- x: 50,
135
- y: 72,
136
- content: "Best wishes, from SA2Kit",
137
- fontSize: 18,
138
- fontWeight: 600,
139
- align: "center",
140
- color: "#f8fafc"
141
- }
142
- ]
143
- }
144
- ]
145
- };
146
-
147
- // src/festivalCard/core/normalize.ts
148
- var ensurePage = (page, index) => ({
149
- id: page.id || `page-${index + 1}`,
150
- title: page.title || `\u7B2C ${index + 1} \u9875`,
151
- elements: Array.isArray(page.elements) ? page.elements : [],
152
- background: page.background || {}
153
- });
154
- var normalizeFestivalCardConfig = (config) => {
155
- const pages = config?.pages && config.pages.length > 0 ? config.pages : DEFAULT_FESTIVAL_CARD_CONFIG.pages;
156
- return {
157
- ...DEFAULT_FESTIVAL_CARD_CONFIG,
158
- ...config,
159
- background: {
160
- ...DEFAULT_FESTIVAL_CARD_CONFIG.background,
161
- ...config?.background || {}
162
- },
163
- backgroundMusic: {
164
- ...DEFAULT_FESTIVAL_CARD_CONFIG.backgroundMusic,
165
- ...config?.backgroundMusic || {},
166
- src: config?.backgroundMusic?.src ?? DEFAULT_FESTIVAL_CARD_CONFIG.backgroundMusic?.src ?? ""
167
- },
168
- pages: pages.map(ensurePage)
169
- };
170
- };
171
-
172
- // src/festivalCard/services/festivalCardService.ts
173
- var memoryStore = /* @__PURE__ */ new Map();
174
- var defaultId = DEFAULT_FESTIVAL_CARD_CONFIG.id || "default-festival-card";
175
- if (!memoryStore.has(defaultId)) {
176
- memoryStore.set(defaultId, DEFAULT_FESTIVAL_CARD_CONFIG);
177
- }
178
- var createInMemoryFestivalCardDb = () => ({
179
- listConfigs() {
180
- return Promise.resolve(
181
- Array.from(memoryStore.entries()).map(([id, config]) => ({
182
- id,
183
- name: config.name || id
184
- }))
185
- );
186
- },
187
- getConfig(id) {
188
- return Promise.resolve(memoryStore.get(id) || null);
189
- },
190
- saveConfig(id, config) {
191
- memoryStore.set(id, config);
192
- return Promise.resolve();
193
- },
194
- deleteConfig(id) {
195
- memoryStore.delete(id);
196
- return Promise.resolve();
197
- }
198
- });
199
- var festivalCardConfigs = pgCore.pgTable("festival_card_configs", {
200
- id: pgCore.text("id").primaryKey(),
201
- name: pgCore.text("name"),
202
- config: pgCore.jsonb("config").$type().notNull(),
203
- createdAt: pgCore.timestamp("created_at", { withTimezone: true }).defaultNow().notNull(),
204
- updatedAt: pgCore.timestamp("updated_at", { withTimezone: true }).defaultNow().notNull()
205
- });
206
- var toStoredConfig = (id, config) => ({
207
- ...config,
208
- id
209
- });
210
- var FestivalCardDbService = class {
211
- constructor(db) {
212
- this.db = db;
213
- }
214
- async listConfigs() {
215
- const rows = await this.db.select({
216
- id: festivalCardConfigs.id,
217
- name: festivalCardConfigs.name
218
- }).from(festivalCardConfigs).orderBy(drizzleOrm.desc(festivalCardConfigs.updatedAt));
219
- return rows;
220
- }
221
- async getConfig(id) {
222
- const rows = await this.db.select().from(festivalCardConfigs).where(drizzleOrm.eq(festivalCardConfigs.id, id)).limit(1);
223
- const row = rows[0];
224
- if (!row) return null;
225
- const raw = row.config;
226
- return normalizeFestivalCardConfig({
227
- ...raw,
228
- id: row.id,
229
- name: row.name || raw.name
230
- });
231
- }
232
- async saveConfig(id, config) {
233
- const normalized = normalizeFestivalCardConfig(toStoredConfig(id, config));
234
- const existing = await this.db.select({ id: festivalCardConfigs.id }).from(festivalCardConfigs).where(drizzleOrm.eq(festivalCardConfigs.id, id)).limit(1);
235
- if (existing[0]) {
236
- await this.db.update(festivalCardConfigs).set({
237
- name: normalized.name || id,
238
- config: normalized,
239
- updatedAt: /* @__PURE__ */ new Date()
240
- }).where(drizzleOrm.eq(festivalCardConfigs.id, id));
241
- return;
242
- }
243
- await this.db.insert(festivalCardConfigs).values({
244
- id,
245
- name: normalized.name || id,
246
- config: normalized
247
- });
248
- }
249
- async deleteConfig(id) {
250
- await this.db.delete(festivalCardConfigs).where(drizzleOrm.eq(festivalCardConfigs.id, id));
251
- }
252
- };
253
-
254
- // src/festivalCard/server/services/drizzleDbAdapter.ts
255
- var createFestivalCardDrizzleDbAdapter = (db) => {
256
- const service = new FestivalCardDbService(db);
257
- return {
258
- listConfigs: () => service.listConfigs(),
259
- getConfig: (id) => service.getConfig(id),
260
- saveConfig: (id, config) => service.saveConfig(id, config),
261
- deleteConfig: (id) => service.deleteConfig(id)
262
- };
263
- };
264
-
265
- exports.FestivalCardDbService = FestivalCardDbService;
266
- exports.createFestivalCardDrizzleDbAdapter = createFestivalCardDrizzleDbAdapter;
267
- exports.createInMemoryFestivalCardDb = createInMemoryFestivalCardDb;
268
- exports.festivalCardConfigs = festivalCardConfigs;
269
- exports.getFestivalCardDb = getFestivalCardDb;
270
- exports.initializeFestivalCardDb = initializeFestivalCardDb;
271
- //# sourceMappingURL=index.js.map
272
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/festivalCard/server/db.ts","../../../src/festivalCard/core/defaults.ts","../../../src/festivalCard/core/normalize.ts","../../../src/festivalCard/services/festivalCardService.ts","../../../src/festivalCard/server/schema/festivalCards.ts","../../../src/festivalCard/server/services/festivalCardDbService.ts","../../../src/festivalCard/server/services/drizzleDbAdapter.ts"],"names":["pgTable","text","jsonb","timestamp","desc","eq"],"mappings":"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","file":"index.js","sourcesContent":["import type { FestivalCardDbAdapter } from '../types';\n\nlet dbAdapter: FestivalCardDbAdapter | null = null;\n\nexport const initializeFestivalCardDb = (adapter: FestivalCardDbAdapter): void => {\n dbAdapter = adapter;\n};\n\nexport const getFestivalCardDb = (): FestivalCardDbAdapter | null => dbAdapter;\n","import type { FestivalCardConfig } from '../types';\n\nexport const DEFAULT_FESTIVAL_CARD_CONFIG: FestivalCardConfig = {\n id: 'default-festival-card',\n name: 'Holiday Card',\n theme: 'winter',\n coverTitle: 'Happy Holidays',\n coverSubtitle: 'Warm wishes for you',\n background: {\n colorA: '#0c1a34',\n colorB: '#1f4f8a',\n },\n backgroundMusic: {\n src: '',\n loop: true,\n autoPlay: false,\n volume: 0.5,\n },\n pages: [\n {\n id: 'page-1',\n title: '封面',\n background: { color: '#11284d' },\n elements: [\n {\n id: 'p1-text-1',\n type: 'text',\n x: 50,\n y: 20,\n content: '新年快乐',\n fontSize: 34,\n fontWeight: 700,\n align: 'center',\n color: '#f8fafc',\n },\n {\n id: 'p1-text-2',\n type: 'text',\n x: 50,\n y: 36,\n content: '愿这一年平安喜乐',\n fontSize: 18,\n fontWeight: 500,\n align: 'center',\n color: '#dbeafe',\n },\n {\n id: 'p1-image-1',\n type: 'image',\n x: 50,\n y: 68,\n width: 72,\n height: 42,\n src: 'https://images.unsplash.com/photo-1512389142860-9c449e58a543?auto=format&fit=crop&w=1200&q=80',\n fit: 'cover',\n borderRadius: 16,\n alt: 'holiday',\n isBackground: false,\n },\n ],\n },\n {\n id: 'page-2',\n title: '祝福',\n background: { color: '#1a3766' },\n elements: [\n {\n id: 'p2-text-1',\n type: 'text',\n x: 50,\n y: 28,\n content: '愿你新岁:',\n fontSize: 28,\n fontWeight: 700,\n align: 'center',\n color: '#fef3c7',\n },\n {\n id: 'p2-text-2',\n type: 'text',\n x: 50,\n y: 42,\n content: '所得皆所期,所失亦无碍',\n fontSize: 18,\n fontWeight: 500,\n align: 'center',\n color: '#f8fafc',\n },\n {\n id: 'p2-text-3',\n type: 'text',\n x: 50,\n y: 55,\n content: '愿你的每一步都走向光亮',\n fontSize: 16,\n fontWeight: 400,\n align: 'center',\n color: '#dbeafe',\n },\n ],\n },\n {\n id: 'page-3',\n title: '落款',\n background: { color: '#11284d' },\n elements: [\n {\n id: 'p3-image-1',\n type: 'image',\n x: 50,\n y: 34,\n width: 60,\n height: 42,\n src: 'https://images.unsplash.com/photo-1456324504439-367cee3b3c32?auto=format&fit=crop&w=1200&q=80',\n fit: 'cover',\n borderRadius: 14,\n alt: 'gift',\n isBackground: false,\n },\n {\n id: 'p3-text-1',\n type: 'text',\n x: 50,\n y: 72,\n content: 'Best wishes, from SA2Kit',\n fontSize: 18,\n fontWeight: 600,\n align: 'center',\n color: '#f8fafc',\n },\n ],\n },\n ],\n};\n","import { DEFAULT_FESTIVAL_CARD_CONFIG } from './defaults';\nimport type { FestivalCardConfig, FestivalCardPage } from '../types';\n\nconst ensurePage = (page: FestivalCardPage, index: number): FestivalCardPage => ({\n id: page.id || `page-${index + 1}`,\n title: page.title || `第 ${index + 1} 页`,\n elements: Array.isArray(page.elements) ? page.elements : [],\n background: page.background || {},\n});\n\nexport const normalizeFestivalCardConfig = (\n config?: Partial<FestivalCardConfig> | null\n): FestivalCardConfig => {\n const pages = config?.pages && config.pages.length > 0 ? config.pages : DEFAULT_FESTIVAL_CARD_CONFIG.pages;\n\n return {\n ...DEFAULT_FESTIVAL_CARD_CONFIG,\n ...config,\n background: {\n ...DEFAULT_FESTIVAL_CARD_CONFIG.background,\n ...(config?.background || {}),\n },\n backgroundMusic: {\n ...DEFAULT_FESTIVAL_CARD_CONFIG.backgroundMusic,\n ...(config?.backgroundMusic || {}),\n src: config?.backgroundMusic?.src ?? DEFAULT_FESTIVAL_CARD_CONFIG.backgroundMusic?.src ?? '',\n },\n pages: pages.map(ensurePage),\n };\n};\n\nexport const resizeFestivalCardPages = (config: FestivalCardConfig, pageCount: number): FestivalCardConfig => {\n const safeCount = Math.max(1, Math.min(12, Math.floor(pageCount || 1)));\n const nextPages = [...config.pages];\n\n while (nextPages.length < safeCount) {\n const idx = nextPages.length;\n nextPages.push({\n id: `page-${idx + 1}`,\n title: `第 ${idx + 1} 页`,\n elements: [],\n background: {},\n });\n }\n\n return {\n ...config,\n pages: nextPages.slice(0, safeCount),\n };\n};\n","import { DEFAULT_FESTIVAL_CARD_CONFIG, normalizeFestivalCardConfig } from '../core';\nimport { getFestivalCardDb } from '../server/db';\nimport type {\n FestivalCardConfig,\n FestivalCardConfigSummary,\n FestivalCardDbAdapter,\n FestivalCardServiceOptions,\n} from '../types';\n\nexport class FestivalCardService {\n private db: FestivalCardDbAdapter | null;\n\n constructor(options?: FestivalCardServiceOptions) {\n this.db = options?.db || getFestivalCardDb();\n }\n\n async listConfigs(): Promise<FestivalCardConfigSummary[]> {\n if (!this.db) {\n return [{ id: DEFAULT_FESTIVAL_CARD_CONFIG.id || 'default-festival-card', name: DEFAULT_FESTIVAL_CARD_CONFIG.name }];\n }\n\n if (this.db.listConfigs) {\n const list = await this.db.listConfigs();\n return list.length > 0\n ? list\n : [{ id: DEFAULT_FESTIVAL_CARD_CONFIG.id || 'default-festival-card', name: DEFAULT_FESTIVAL_CARD_CONFIG.name }];\n }\n\n return [{ id: DEFAULT_FESTIVAL_CARD_CONFIG.id || 'default-festival-card', name: DEFAULT_FESTIVAL_CARD_CONFIG.name }];\n }\n\n async getConfig(cardId = 'default-festival-card'): Promise<FestivalCardConfig> {\n if (!this.db) return DEFAULT_FESTIVAL_CARD_CONFIG;\n const config = await this.db.getConfig(cardId);\n return normalizeFestivalCardConfig(config);\n }\n\n async saveConfig(cardId: string, config: FestivalCardConfig): Promise<FestivalCardConfig> {\n const normalized = normalizeFestivalCardConfig(config);\n if (!this.db) return normalized;\n await this.db.saveConfig(cardId, normalized);\n return normalized;\n }\n\n async deleteConfig(cardId: string): Promise<void> {\n if (!this.db?.deleteConfig) return;\n await this.db.deleteConfig(cardId);\n }\n}\n\nconst memoryStore = new Map<string, FestivalCardConfig>();\nconst defaultId = DEFAULT_FESTIVAL_CARD_CONFIG.id || 'default-festival-card';\nif (!memoryStore.has(defaultId)) {\n memoryStore.set(defaultId, DEFAULT_FESTIVAL_CARD_CONFIG);\n}\n\nexport const createInMemoryFestivalCardDb = (): FestivalCardDbAdapter => ({\n listConfigs() {\n return Promise.resolve(\n Array.from(memoryStore.entries()).map(([id, config]) => ({\n id,\n name: config.name || id,\n }))\n );\n },\n getConfig(id: string) {\n return Promise.resolve(memoryStore.get(id) || null);\n },\n saveConfig(id: string, config: FestivalCardConfig) {\n memoryStore.set(id, config);\n return Promise.resolve();\n },\n deleteConfig(id: string) {\n memoryStore.delete(id);\n return Promise.resolve();\n },\n});\n","import { pgTable, text, timestamp, jsonb } from 'drizzle-orm/pg-core';\nimport type { FestivalCardConfig } from '../../types';\n\nexport const festivalCardConfigs = pgTable('festival_card_configs', {\n id: text('id').primaryKey(),\n name: text('name'),\n config: jsonb('config').$type<FestivalCardConfig>().notNull(),\n createdAt: timestamp('created_at', { withTimezone: true }).defaultNow().notNull(),\n updatedAt: timestamp('updated_at', { withTimezone: true }).defaultNow().notNull(),\n});\n\n","import { desc, eq } from 'drizzle-orm';\nimport { normalizeFestivalCardConfig } from '../../core';\nimport type { FestivalCardConfig, FestivalCardConfigSummary } from '../../types';\nimport { festivalCardConfigs } from '../schema/festivalCards';\n\nexport type DrizzleLikeDb = {\n select: (...args: any[]) => any;\n insert: (...args: any[]) => any;\n update: (...args: any[]) => any;\n delete: (...args: any[]) => any;\n};\n\nconst toStoredConfig = (id: string, config: FestivalCardConfig): FestivalCardConfig => ({\n ...config,\n id,\n});\n\nexport class FestivalCardDbService {\n constructor(private readonly db: DrizzleLikeDb) {}\n\n async listConfigs(): Promise<FestivalCardConfigSummary[]> {\n const rows = await this.db\n .select({\n id: festivalCardConfigs.id,\n name: festivalCardConfigs.name,\n })\n .from(festivalCardConfigs)\n .orderBy(desc(festivalCardConfigs.updatedAt));\n return rows;\n }\n\n async getConfig(id: string): Promise<FestivalCardConfig | null> {\n const rows = await this.db\n .select()\n .from(festivalCardConfigs)\n .where(eq(festivalCardConfigs.id, id))\n .limit(1);\n const row = rows[0];\n if (!row) return null;\n const raw = row.config as FestivalCardConfig;\n return normalizeFestivalCardConfig({\n ...raw,\n id: row.id,\n name: row.name || raw.name,\n });\n }\n\n async saveConfig(id: string, config: FestivalCardConfig): Promise<void> {\n const normalized = normalizeFestivalCardConfig(toStoredConfig(id, config));\n const existing = await this.db\n .select({ id: festivalCardConfigs.id })\n .from(festivalCardConfigs)\n .where(eq(festivalCardConfigs.id, id))\n .limit(1);\n\n if (existing[0]) {\n await this.db\n .update(festivalCardConfigs)\n .set({\n name: normalized.name || id,\n config: normalized,\n updatedAt: new Date(),\n })\n .where(eq(festivalCardConfigs.id, id));\n return;\n }\n\n await this.db.insert(festivalCardConfigs).values({\n id,\n name: normalized.name || id,\n config: normalized,\n });\n }\n\n async deleteConfig(id: string): Promise<void> {\n await this.db.delete(festivalCardConfigs).where(eq(festivalCardConfigs.id, id));\n }\n}\n","import type { FestivalCardConfig, FestivalCardDbAdapter } from '../../types';\nimport { FestivalCardDbService } from './festivalCardDbService';\nimport type { DrizzleLikeDb } from './festivalCardDbService';\n\nexport type { DrizzleLikeDb } from './festivalCardDbService';\n\nexport const createFestivalCardDrizzleDbAdapter = (db: DrizzleLikeDb): FestivalCardDbAdapter => {\n const service = new FestivalCardDbService(db);\n\n return {\n listConfigs: () => service.listConfigs(),\n getConfig: (id: string) => service.getConfig(id),\n saveConfig: (id: string, config: FestivalCardConfig) => service.saveConfig(id, config),\n deleteConfig: (id: string) => service.deleteConfig(id),\n };\n};\n"]}
@@ -1,265 +0,0 @@
1
- import { pgTable, timestamp, jsonb, text } from 'drizzle-orm/pg-core';
2
- import { desc, eq } from 'drizzle-orm';
3
-
4
- // src/festivalCard/server/db.ts
5
- var dbAdapter = null;
6
- var initializeFestivalCardDb = (adapter) => {
7
- dbAdapter = adapter;
8
- };
9
- var getFestivalCardDb = () => dbAdapter;
10
-
11
- // src/festivalCard/core/defaults.ts
12
- var DEFAULT_FESTIVAL_CARD_CONFIG = {
13
- id: "default-festival-card",
14
- name: "Holiday Card",
15
- theme: "winter",
16
- coverTitle: "Happy Holidays",
17
- coverSubtitle: "Warm wishes for you",
18
- background: {
19
- colorA: "#0c1a34",
20
- colorB: "#1f4f8a"
21
- },
22
- backgroundMusic: {
23
- src: "",
24
- loop: true,
25
- autoPlay: false,
26
- volume: 0.5
27
- },
28
- pages: [
29
- {
30
- id: "page-1",
31
- title: "\u5C01\u9762",
32
- background: { color: "#11284d" },
33
- elements: [
34
- {
35
- id: "p1-text-1",
36
- type: "text",
37
- x: 50,
38
- y: 20,
39
- content: "\u65B0\u5E74\u5FEB\u4E50",
40
- fontSize: 34,
41
- fontWeight: 700,
42
- align: "center",
43
- color: "#f8fafc"
44
- },
45
- {
46
- id: "p1-text-2",
47
- type: "text",
48
- x: 50,
49
- y: 36,
50
- content: "\u613F\u8FD9\u4E00\u5E74\u5E73\u5B89\u559C\u4E50",
51
- fontSize: 18,
52
- fontWeight: 500,
53
- align: "center",
54
- color: "#dbeafe"
55
- },
56
- {
57
- id: "p1-image-1",
58
- type: "image",
59
- x: 50,
60
- y: 68,
61
- width: 72,
62
- height: 42,
63
- src: "https://images.unsplash.com/photo-1512389142860-9c449e58a543?auto=format&fit=crop&w=1200&q=80",
64
- fit: "cover",
65
- borderRadius: 16,
66
- alt: "holiday",
67
- isBackground: false
68
- }
69
- ]
70
- },
71
- {
72
- id: "page-2",
73
- title: "\u795D\u798F",
74
- background: { color: "#1a3766" },
75
- elements: [
76
- {
77
- id: "p2-text-1",
78
- type: "text",
79
- x: 50,
80
- y: 28,
81
- content: "\u613F\u4F60\u65B0\u5C81\uFF1A",
82
- fontSize: 28,
83
- fontWeight: 700,
84
- align: "center",
85
- color: "#fef3c7"
86
- },
87
- {
88
- id: "p2-text-2",
89
- type: "text",
90
- x: 50,
91
- y: 42,
92
- content: "\u6240\u5F97\u7686\u6240\u671F\uFF0C\u6240\u5931\u4EA6\u65E0\u788D",
93
- fontSize: 18,
94
- fontWeight: 500,
95
- align: "center",
96
- color: "#f8fafc"
97
- },
98
- {
99
- id: "p2-text-3",
100
- type: "text",
101
- x: 50,
102
- y: 55,
103
- content: "\u613F\u4F60\u7684\u6BCF\u4E00\u6B65\u90FD\u8D70\u5411\u5149\u4EAE",
104
- fontSize: 16,
105
- fontWeight: 400,
106
- align: "center",
107
- color: "#dbeafe"
108
- }
109
- ]
110
- },
111
- {
112
- id: "page-3",
113
- title: "\u843D\u6B3E",
114
- background: { color: "#11284d" },
115
- elements: [
116
- {
117
- id: "p3-image-1",
118
- type: "image",
119
- x: 50,
120
- y: 34,
121
- width: 60,
122
- height: 42,
123
- src: "https://images.unsplash.com/photo-1456324504439-367cee3b3c32?auto=format&fit=crop&w=1200&q=80",
124
- fit: "cover",
125
- borderRadius: 14,
126
- alt: "gift",
127
- isBackground: false
128
- },
129
- {
130
- id: "p3-text-1",
131
- type: "text",
132
- x: 50,
133
- y: 72,
134
- content: "Best wishes, from SA2Kit",
135
- fontSize: 18,
136
- fontWeight: 600,
137
- align: "center",
138
- color: "#f8fafc"
139
- }
140
- ]
141
- }
142
- ]
143
- };
144
-
145
- // src/festivalCard/core/normalize.ts
146
- var ensurePage = (page, index) => ({
147
- id: page.id || `page-${index + 1}`,
148
- title: page.title || `\u7B2C ${index + 1} \u9875`,
149
- elements: Array.isArray(page.elements) ? page.elements : [],
150
- background: page.background || {}
151
- });
152
- var normalizeFestivalCardConfig = (config) => {
153
- const pages = config?.pages && config.pages.length > 0 ? config.pages : DEFAULT_FESTIVAL_CARD_CONFIG.pages;
154
- return {
155
- ...DEFAULT_FESTIVAL_CARD_CONFIG,
156
- ...config,
157
- background: {
158
- ...DEFAULT_FESTIVAL_CARD_CONFIG.background,
159
- ...config?.background || {}
160
- },
161
- backgroundMusic: {
162
- ...DEFAULT_FESTIVAL_CARD_CONFIG.backgroundMusic,
163
- ...config?.backgroundMusic || {},
164
- src: config?.backgroundMusic?.src ?? DEFAULT_FESTIVAL_CARD_CONFIG.backgroundMusic?.src ?? ""
165
- },
166
- pages: pages.map(ensurePage)
167
- };
168
- };
169
-
170
- // src/festivalCard/services/festivalCardService.ts
171
- var memoryStore = /* @__PURE__ */ new Map();
172
- var defaultId = DEFAULT_FESTIVAL_CARD_CONFIG.id || "default-festival-card";
173
- if (!memoryStore.has(defaultId)) {
174
- memoryStore.set(defaultId, DEFAULT_FESTIVAL_CARD_CONFIG);
175
- }
176
- var createInMemoryFestivalCardDb = () => ({
177
- listConfigs() {
178
- return Promise.resolve(
179
- Array.from(memoryStore.entries()).map(([id, config]) => ({
180
- id,
181
- name: config.name || id
182
- }))
183
- );
184
- },
185
- getConfig(id) {
186
- return Promise.resolve(memoryStore.get(id) || null);
187
- },
188
- saveConfig(id, config) {
189
- memoryStore.set(id, config);
190
- return Promise.resolve();
191
- },
192
- deleteConfig(id) {
193
- memoryStore.delete(id);
194
- return Promise.resolve();
195
- }
196
- });
197
- var festivalCardConfigs = pgTable("festival_card_configs", {
198
- id: text("id").primaryKey(),
199
- name: text("name"),
200
- config: jsonb("config").$type().notNull(),
201
- createdAt: timestamp("created_at", { withTimezone: true }).defaultNow().notNull(),
202
- updatedAt: timestamp("updated_at", { withTimezone: true }).defaultNow().notNull()
203
- });
204
- var toStoredConfig = (id, config) => ({
205
- ...config,
206
- id
207
- });
208
- var FestivalCardDbService = class {
209
- constructor(db) {
210
- this.db = db;
211
- }
212
- async listConfigs() {
213
- const rows = await this.db.select({
214
- id: festivalCardConfigs.id,
215
- name: festivalCardConfigs.name
216
- }).from(festivalCardConfigs).orderBy(desc(festivalCardConfigs.updatedAt));
217
- return rows;
218
- }
219
- async getConfig(id) {
220
- const rows = await this.db.select().from(festivalCardConfigs).where(eq(festivalCardConfigs.id, id)).limit(1);
221
- const row = rows[0];
222
- if (!row) return null;
223
- const raw = row.config;
224
- return normalizeFestivalCardConfig({
225
- ...raw,
226
- id: row.id,
227
- name: row.name || raw.name
228
- });
229
- }
230
- async saveConfig(id, config) {
231
- const normalized = normalizeFestivalCardConfig(toStoredConfig(id, config));
232
- const existing = await this.db.select({ id: festivalCardConfigs.id }).from(festivalCardConfigs).where(eq(festivalCardConfigs.id, id)).limit(1);
233
- if (existing[0]) {
234
- await this.db.update(festivalCardConfigs).set({
235
- name: normalized.name || id,
236
- config: normalized,
237
- updatedAt: /* @__PURE__ */ new Date()
238
- }).where(eq(festivalCardConfigs.id, id));
239
- return;
240
- }
241
- await this.db.insert(festivalCardConfigs).values({
242
- id,
243
- name: normalized.name || id,
244
- config: normalized
245
- });
246
- }
247
- async deleteConfig(id) {
248
- await this.db.delete(festivalCardConfigs).where(eq(festivalCardConfigs.id, id));
249
- }
250
- };
251
-
252
- // src/festivalCard/server/services/drizzleDbAdapter.ts
253
- var createFestivalCardDrizzleDbAdapter = (db) => {
254
- const service = new FestivalCardDbService(db);
255
- return {
256
- listConfigs: () => service.listConfigs(),
257
- getConfig: (id) => service.getConfig(id),
258
- saveConfig: (id, config) => service.saveConfig(id, config),
259
- deleteConfig: (id) => service.deleteConfig(id)
260
- };
261
- };
262
-
263
- export { FestivalCardDbService, createFestivalCardDrizzleDbAdapter, createInMemoryFestivalCardDb, festivalCardConfigs, getFestivalCardDb, initializeFestivalCardDb };
264
- //# sourceMappingURL=index.mjs.map
265
- //# sourceMappingURL=index.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/festivalCard/server/db.ts","../../../src/festivalCard/core/defaults.ts","../../../src/festivalCard/core/normalize.ts","../../../src/festivalCard/services/festivalCardService.ts","../../../src/festivalCard/server/schema/festivalCards.ts","../../../src/festivalCard/server/services/festivalCardDbService.ts","../../../src/festivalCard/server/services/drizzleDbAdapter.ts"],"names":[],"mappings":"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","file":"index.mjs","sourcesContent":["import type { FestivalCardDbAdapter } from '../types';\n\nlet dbAdapter: FestivalCardDbAdapter | null = null;\n\nexport const initializeFestivalCardDb = (adapter: FestivalCardDbAdapter): void => {\n dbAdapter = adapter;\n};\n\nexport const getFestivalCardDb = (): FestivalCardDbAdapter | null => dbAdapter;\n","import type { FestivalCardConfig } from '../types';\n\nexport const DEFAULT_FESTIVAL_CARD_CONFIG: FestivalCardConfig = {\n id: 'default-festival-card',\n name: 'Holiday Card',\n theme: 'winter',\n coverTitle: 'Happy Holidays',\n coverSubtitle: 'Warm wishes for you',\n background: {\n colorA: '#0c1a34',\n colorB: '#1f4f8a',\n },\n backgroundMusic: {\n src: '',\n loop: true,\n autoPlay: false,\n volume: 0.5,\n },\n pages: [\n {\n id: 'page-1',\n title: '封面',\n background: { color: '#11284d' },\n elements: [\n {\n id: 'p1-text-1',\n type: 'text',\n x: 50,\n y: 20,\n content: '新年快乐',\n fontSize: 34,\n fontWeight: 700,\n align: 'center',\n color: '#f8fafc',\n },\n {\n id: 'p1-text-2',\n type: 'text',\n x: 50,\n y: 36,\n content: '愿这一年平安喜乐',\n fontSize: 18,\n fontWeight: 500,\n align: 'center',\n color: '#dbeafe',\n },\n {\n id: 'p1-image-1',\n type: 'image',\n x: 50,\n y: 68,\n width: 72,\n height: 42,\n src: 'https://images.unsplash.com/photo-1512389142860-9c449e58a543?auto=format&fit=crop&w=1200&q=80',\n fit: 'cover',\n borderRadius: 16,\n alt: 'holiday',\n isBackground: false,\n },\n ],\n },\n {\n id: 'page-2',\n title: '祝福',\n background: { color: '#1a3766' },\n elements: [\n {\n id: 'p2-text-1',\n type: 'text',\n x: 50,\n y: 28,\n content: '愿你新岁:',\n fontSize: 28,\n fontWeight: 700,\n align: 'center',\n color: '#fef3c7',\n },\n {\n id: 'p2-text-2',\n type: 'text',\n x: 50,\n y: 42,\n content: '所得皆所期,所失亦无碍',\n fontSize: 18,\n fontWeight: 500,\n align: 'center',\n color: '#f8fafc',\n },\n {\n id: 'p2-text-3',\n type: 'text',\n x: 50,\n y: 55,\n content: '愿你的每一步都走向光亮',\n fontSize: 16,\n fontWeight: 400,\n align: 'center',\n color: '#dbeafe',\n },\n ],\n },\n {\n id: 'page-3',\n title: '落款',\n background: { color: '#11284d' },\n elements: [\n {\n id: 'p3-image-1',\n type: 'image',\n x: 50,\n y: 34,\n width: 60,\n height: 42,\n src: 'https://images.unsplash.com/photo-1456324504439-367cee3b3c32?auto=format&fit=crop&w=1200&q=80',\n fit: 'cover',\n borderRadius: 14,\n alt: 'gift',\n isBackground: false,\n },\n {\n id: 'p3-text-1',\n type: 'text',\n x: 50,\n y: 72,\n content: 'Best wishes, from SA2Kit',\n fontSize: 18,\n fontWeight: 600,\n align: 'center',\n color: '#f8fafc',\n },\n ],\n },\n ],\n};\n","import { DEFAULT_FESTIVAL_CARD_CONFIG } from './defaults';\nimport type { FestivalCardConfig, FestivalCardPage } from '../types';\n\nconst ensurePage = (page: FestivalCardPage, index: number): FestivalCardPage => ({\n id: page.id || `page-${index + 1}`,\n title: page.title || `第 ${index + 1} 页`,\n elements: Array.isArray(page.elements) ? page.elements : [],\n background: page.background || {},\n});\n\nexport const normalizeFestivalCardConfig = (\n config?: Partial<FestivalCardConfig> | null\n): FestivalCardConfig => {\n const pages = config?.pages && config.pages.length > 0 ? config.pages : DEFAULT_FESTIVAL_CARD_CONFIG.pages;\n\n return {\n ...DEFAULT_FESTIVAL_CARD_CONFIG,\n ...config,\n background: {\n ...DEFAULT_FESTIVAL_CARD_CONFIG.background,\n ...(config?.background || {}),\n },\n backgroundMusic: {\n ...DEFAULT_FESTIVAL_CARD_CONFIG.backgroundMusic,\n ...(config?.backgroundMusic || {}),\n src: config?.backgroundMusic?.src ?? DEFAULT_FESTIVAL_CARD_CONFIG.backgroundMusic?.src ?? '',\n },\n pages: pages.map(ensurePage),\n };\n};\n\nexport const resizeFestivalCardPages = (config: FestivalCardConfig, pageCount: number): FestivalCardConfig => {\n const safeCount = Math.max(1, Math.min(12, Math.floor(pageCount || 1)));\n const nextPages = [...config.pages];\n\n while (nextPages.length < safeCount) {\n const idx = nextPages.length;\n nextPages.push({\n id: `page-${idx + 1}`,\n title: `第 ${idx + 1} 页`,\n elements: [],\n background: {},\n });\n }\n\n return {\n ...config,\n pages: nextPages.slice(0, safeCount),\n };\n};\n","import { DEFAULT_FESTIVAL_CARD_CONFIG, normalizeFestivalCardConfig } from '../core';\nimport { getFestivalCardDb } from '../server/db';\nimport type {\n FestivalCardConfig,\n FestivalCardConfigSummary,\n FestivalCardDbAdapter,\n FestivalCardServiceOptions,\n} from '../types';\n\nexport class FestivalCardService {\n private db: FestivalCardDbAdapter | null;\n\n constructor(options?: FestivalCardServiceOptions) {\n this.db = options?.db || getFestivalCardDb();\n }\n\n async listConfigs(): Promise<FestivalCardConfigSummary[]> {\n if (!this.db) {\n return [{ id: DEFAULT_FESTIVAL_CARD_CONFIG.id || 'default-festival-card', name: DEFAULT_FESTIVAL_CARD_CONFIG.name }];\n }\n\n if (this.db.listConfigs) {\n const list = await this.db.listConfigs();\n return list.length > 0\n ? list\n : [{ id: DEFAULT_FESTIVAL_CARD_CONFIG.id || 'default-festival-card', name: DEFAULT_FESTIVAL_CARD_CONFIG.name }];\n }\n\n return [{ id: DEFAULT_FESTIVAL_CARD_CONFIG.id || 'default-festival-card', name: DEFAULT_FESTIVAL_CARD_CONFIG.name }];\n }\n\n async getConfig(cardId = 'default-festival-card'): Promise<FestivalCardConfig> {\n if (!this.db) return DEFAULT_FESTIVAL_CARD_CONFIG;\n const config = await this.db.getConfig(cardId);\n return normalizeFestivalCardConfig(config);\n }\n\n async saveConfig(cardId: string, config: FestivalCardConfig): Promise<FestivalCardConfig> {\n const normalized = normalizeFestivalCardConfig(config);\n if (!this.db) return normalized;\n await this.db.saveConfig(cardId, normalized);\n return normalized;\n }\n\n async deleteConfig(cardId: string): Promise<void> {\n if (!this.db?.deleteConfig) return;\n await this.db.deleteConfig(cardId);\n }\n}\n\nconst memoryStore = new Map<string, FestivalCardConfig>();\nconst defaultId = DEFAULT_FESTIVAL_CARD_CONFIG.id || 'default-festival-card';\nif (!memoryStore.has(defaultId)) {\n memoryStore.set(defaultId, DEFAULT_FESTIVAL_CARD_CONFIG);\n}\n\nexport const createInMemoryFestivalCardDb = (): FestivalCardDbAdapter => ({\n listConfigs() {\n return Promise.resolve(\n Array.from(memoryStore.entries()).map(([id, config]) => ({\n id,\n name: config.name || id,\n }))\n );\n },\n getConfig(id: string) {\n return Promise.resolve(memoryStore.get(id) || null);\n },\n saveConfig(id: string, config: FestivalCardConfig) {\n memoryStore.set(id, config);\n return Promise.resolve();\n },\n deleteConfig(id: string) {\n memoryStore.delete(id);\n return Promise.resolve();\n },\n});\n","import { pgTable, text, timestamp, jsonb } from 'drizzle-orm/pg-core';\nimport type { FestivalCardConfig } from '../../types';\n\nexport const festivalCardConfigs = pgTable('festival_card_configs', {\n id: text('id').primaryKey(),\n name: text('name'),\n config: jsonb('config').$type<FestivalCardConfig>().notNull(),\n createdAt: timestamp('created_at', { withTimezone: true }).defaultNow().notNull(),\n updatedAt: timestamp('updated_at', { withTimezone: true }).defaultNow().notNull(),\n});\n\n","import { desc, eq } from 'drizzle-orm';\nimport { normalizeFestivalCardConfig } from '../../core';\nimport type { FestivalCardConfig, FestivalCardConfigSummary } from '../../types';\nimport { festivalCardConfigs } from '../schema/festivalCards';\n\nexport type DrizzleLikeDb = {\n select: (...args: any[]) => any;\n insert: (...args: any[]) => any;\n update: (...args: any[]) => any;\n delete: (...args: any[]) => any;\n};\n\nconst toStoredConfig = (id: string, config: FestivalCardConfig): FestivalCardConfig => ({\n ...config,\n id,\n});\n\nexport class FestivalCardDbService {\n constructor(private readonly db: DrizzleLikeDb) {}\n\n async listConfigs(): Promise<FestivalCardConfigSummary[]> {\n const rows = await this.db\n .select({\n id: festivalCardConfigs.id,\n name: festivalCardConfigs.name,\n })\n .from(festivalCardConfigs)\n .orderBy(desc(festivalCardConfigs.updatedAt));\n return rows;\n }\n\n async getConfig(id: string): Promise<FestivalCardConfig | null> {\n const rows = await this.db\n .select()\n .from(festivalCardConfigs)\n .where(eq(festivalCardConfigs.id, id))\n .limit(1);\n const row = rows[0];\n if (!row) return null;\n const raw = row.config as FestivalCardConfig;\n return normalizeFestivalCardConfig({\n ...raw,\n id: row.id,\n name: row.name || raw.name,\n });\n }\n\n async saveConfig(id: string, config: FestivalCardConfig): Promise<void> {\n const normalized = normalizeFestivalCardConfig(toStoredConfig(id, config));\n const existing = await this.db\n .select({ id: festivalCardConfigs.id })\n .from(festivalCardConfigs)\n .where(eq(festivalCardConfigs.id, id))\n .limit(1);\n\n if (existing[0]) {\n await this.db\n .update(festivalCardConfigs)\n .set({\n name: normalized.name || id,\n config: normalized,\n updatedAt: new Date(),\n })\n .where(eq(festivalCardConfigs.id, id));\n return;\n }\n\n await this.db.insert(festivalCardConfigs).values({\n id,\n name: normalized.name || id,\n config: normalized,\n });\n }\n\n async deleteConfig(id: string): Promise<void> {\n await this.db.delete(festivalCardConfigs).where(eq(festivalCardConfigs.id, id));\n }\n}\n","import type { FestivalCardConfig, FestivalCardDbAdapter } from '../../types';\nimport { FestivalCardDbService } from './festivalCardDbService';\nimport type { DrizzleLikeDb } from './festivalCardDbService';\n\nexport type { DrizzleLikeDb } from './festivalCardDbService';\n\nexport const createFestivalCardDrizzleDbAdapter = (db: DrizzleLikeDb): FestivalCardDbAdapter => {\n const service = new FestivalCardDbService(db);\n\n return {\n listConfigs: () => service.listConfigs(),\n getConfig: (id: string) => service.getConfig(id),\n saveConfig: (id: string, config: FestivalCardConfig) => service.saveConfig(id, config),\n deleteConfig: (id: string) => service.deleteConfig(id),\n };\n};\n"]}
@@ -1,13 +0,0 @@
1
- import { c as FestivalCardServiceOptions, a as FestivalCardConfigSummary, b as FestivalCardConfig, F as FestivalCardDbAdapter } from './types-Cs0CLvrH.js';
2
-
3
- declare class FestivalCardService {
4
- private db;
5
- constructor(options?: FestivalCardServiceOptions);
6
- listConfigs(): Promise<FestivalCardConfigSummary[]>;
7
- getConfig(cardId?: string): Promise<FestivalCardConfig>;
8
- saveConfig(cardId: string, config: FestivalCardConfig): Promise<FestivalCardConfig>;
9
- deleteConfig(cardId: string): Promise<void>;
10
- }
11
- declare const createInMemoryFestivalCardDb: () => FestivalCardDbAdapter;
12
-
13
- export { FestivalCardService as F, createInMemoryFestivalCardDb as c };
@@ -1,13 +0,0 @@
1
- import { c as FestivalCardServiceOptions, a as FestivalCardConfigSummary, b as FestivalCardConfig, F as FestivalCardDbAdapter } from './types-Cs0CLvrH.mjs';
2
-
3
- declare class FestivalCardService {
4
- private db;
5
- constructor(options?: FestivalCardServiceOptions);
6
- listConfigs(): Promise<FestivalCardConfigSummary[]>;
7
- getConfig(cardId?: string): Promise<FestivalCardConfig>;
8
- saveConfig(cardId: string, config: FestivalCardConfig): Promise<FestivalCardConfig>;
9
- deleteConfig(cardId: string): Promise<void>;
10
- }
11
- declare const createInMemoryFestivalCardDb: () => FestivalCardDbAdapter;
12
-
13
- export { FestivalCardService as F, createInMemoryFestivalCardDb as c };