nextjs-cms 0.5.9 → 0.5.11

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 (258) hide show
  1. package/dist/api/axios/axiosInstance.d.ts +1 -1
  2. package/dist/api/axios/axiosInstance.js +8 -8
  3. package/dist/api/index.d.ts +855 -855
  4. package/dist/api/index.d.ts.map +1 -1
  5. package/dist/api/index.js +12 -12
  6. package/dist/api/lib/serverActions.d.ts +239 -239
  7. package/dist/api/lib/serverActions.d.ts.map +1 -1
  8. package/dist/api/lib/serverActions.js +834 -834
  9. package/dist/api/root.d.ts +828 -828
  10. package/dist/api/root.js +30 -30
  11. package/dist/api/routers/accountSettings.d.ts +60 -60
  12. package/dist/api/routers/accountSettings.js +108 -108
  13. package/dist/api/routers/admins.d.ts +105 -105
  14. package/dist/api/routers/admins.js +219 -219
  15. package/dist/api/routers/auth.d.ts +47 -47
  16. package/dist/api/routers/auth.js +25 -25
  17. package/dist/api/routers/categorySection.d.ts +103 -103
  18. package/dist/api/routers/categorySection.js +38 -38
  19. package/dist/api/routers/cmsSettings.d.ts +48 -48
  20. package/dist/api/routers/cmsSettings.js +51 -51
  21. package/dist/api/routers/cpanel.d.ts +83 -83
  22. package/dist/api/routers/cpanel.js +216 -216
  23. package/dist/api/routers/files.d.ts +47 -47
  24. package/dist/api/routers/files.js +23 -23
  25. package/dist/api/routers/gallery.d.ts +35 -35
  26. package/dist/api/routers/gallery.js +62 -62
  27. package/dist/api/routers/googleAnalytics.d.ts +30 -30
  28. package/dist/api/routers/googleAnalytics.js +7 -7
  29. package/dist/api/routers/hasItemsSection.d.ts +139 -139
  30. package/dist/api/routers/hasItemsSection.js +34 -34
  31. package/dist/api/routers/navigation.d.ts +51 -51
  32. package/dist/api/routers/navigation.js +11 -11
  33. package/dist/api/routers/simpleSection.d.ts +57 -57
  34. package/dist/api/routers/simpleSection.js +12 -12
  35. package/dist/api/trpc.d.ts +106 -106
  36. package/dist/api/trpc.js +72 -72
  37. package/dist/auth/axios/axiosInstance.d.ts +1 -1
  38. package/dist/auth/axios/axiosInstance.js +8 -8
  39. package/dist/auth/csrf.d.ts +29 -29
  40. package/dist/auth/csrf.js +76 -76
  41. package/dist/auth/hooks/index.d.ts +3 -3
  42. package/dist/auth/hooks/index.d.ts.map +1 -1
  43. package/dist/auth/hooks/index.js +3 -3
  44. package/dist/auth/hooks/useAxiosPrivate.d.ts +4 -4
  45. package/dist/auth/hooks/useAxiosPrivate.js +74 -74
  46. package/dist/auth/hooks/useRefreshToken.d.ts +6 -6
  47. package/dist/auth/hooks/useRefreshToken.js +79 -79
  48. package/dist/auth/index.d.ts +22 -22
  49. package/dist/auth/index.js +44 -44
  50. package/dist/auth/jwt.d.ts +5 -5
  51. package/dist/auth/jwt.js +25 -25
  52. package/dist/auth/lib/actions.d.ts +32 -32
  53. package/dist/auth/lib/actions.d.ts.map +1 -1
  54. package/dist/auth/lib/actions.js +209 -209
  55. package/dist/auth/lib/client.d.ts +3 -3
  56. package/dist/auth/lib/client.js +46 -46
  57. package/dist/auth/lib/index.d.ts +2 -2
  58. package/dist/auth/lib/index.d.ts.map +1 -1
  59. package/dist/auth/lib/index.js +2 -2
  60. package/dist/auth/react.d.ts +105 -105
  61. package/dist/auth/react.d.ts.map +1 -1
  62. package/dist/auth/react.js +347 -347
  63. package/dist/auth/trpc.d.ts +5 -5
  64. package/dist/auth/trpc.d.ts.map +1 -1
  65. package/dist/auth/trpc.js +81 -81
  66. package/dist/core/config/config-loader.d.ts +91 -91
  67. package/dist/core/config/config-loader.js +230 -230
  68. package/dist/core/config/index.d.ts +2 -2
  69. package/dist/core/config/index.d.ts.map +1 -1
  70. package/dist/core/config/index.js +1 -1
  71. package/dist/core/config/loader.d.ts +1 -1
  72. package/dist/core/config/loader.js +42 -42
  73. package/dist/core/db/index.d.ts +1 -1
  74. package/dist/core/db/index.d.ts.map +1 -1
  75. package/dist/core/db/index.js +1 -1
  76. package/dist/core/db/table-checker/DbTable.d.ts +5 -5
  77. package/dist/core/db/table-checker/DbTable.js +5 -5
  78. package/dist/core/db/table-checker/MysqlTable.d.ts +33 -33
  79. package/dist/core/db/table-checker/MysqlTable.d.ts.map +1 -1
  80. package/dist/core/db/table-checker/MysqlTable.js +94 -94
  81. package/dist/core/db/table-checker/index.d.ts +1 -1
  82. package/dist/core/db/table-checker/index.d.ts.map +1 -1
  83. package/dist/core/db/table-checker/index.js +1 -1
  84. package/dist/core/factories/FieldFactory.d.ts +123 -123
  85. package/dist/core/factories/FieldFactory.d.ts.map +1 -1
  86. package/dist/core/factories/FieldFactory.js +411 -411
  87. package/dist/core/factories/SectionFactory.d.ts +109 -109
  88. package/dist/core/factories/SectionFactory.d.ts.map +1 -1
  89. package/dist/core/factories/SectionFactory.js +415 -415
  90. package/dist/core/factories/index.d.ts +2 -2
  91. package/dist/core/factories/index.d.ts.map +1 -1
  92. package/dist/core/factories/index.js +2 -2
  93. package/dist/core/fields/checkbox.d.ts +62 -62
  94. package/dist/core/fields/checkbox.d.ts.map +1 -1
  95. package/dist/core/fields/checkbox.js +62 -62
  96. package/dist/core/fields/color.d.ts +83 -83
  97. package/dist/core/fields/color.d.ts.map +1 -1
  98. package/dist/core/fields/color.js +91 -91
  99. package/dist/core/fields/date.d.ts +99 -99
  100. package/dist/core/fields/date.d.ts.map +1 -1
  101. package/dist/core/fields/date.js +108 -108
  102. package/dist/core/fields/document.d.ts +179 -179
  103. package/dist/core/fields/document.d.ts.map +1 -1
  104. package/dist/core/fields/document.js +277 -277
  105. package/dist/core/fields/field-group.d.ts +17 -17
  106. package/dist/core/fields/field-group.d.ts.map +1 -1
  107. package/dist/core/fields/field-group.js +6 -6
  108. package/dist/core/fields/field.d.ts +125 -125
  109. package/dist/core/fields/field.d.ts.map +1 -1
  110. package/dist/core/fields/field.js +148 -148
  111. package/dist/core/fields/fileField.d.ts +14 -14
  112. package/dist/core/fields/fileField.d.ts.map +1 -1
  113. package/dist/core/fields/fileField.js +5 -5
  114. package/dist/core/fields/index.d.ts +64 -64
  115. package/dist/core/fields/index.d.ts.map +1 -1
  116. package/dist/core/fields/index.js +18 -18
  117. package/dist/core/fields/map.d.ts +166 -166
  118. package/dist/core/fields/map.d.ts.map +1 -1
  119. package/dist/core/fields/map.js +152 -152
  120. package/dist/core/fields/number.d.ts +185 -185
  121. package/dist/core/fields/number.d.ts.map +1 -1
  122. package/dist/core/fields/number.js +241 -241
  123. package/dist/core/fields/password.d.ts +108 -108
  124. package/dist/core/fields/password.d.ts.map +1 -1
  125. package/dist/core/fields/password.js +133 -133
  126. package/dist/core/fields/photo.d.ts +288 -288
  127. package/dist/core/fields/photo.d.ts.map +1 -1
  128. package/dist/core/fields/photo.js +410 -410
  129. package/dist/core/fields/richText.d.ts +294 -294
  130. package/dist/core/fields/richText.d.ts.map +1 -1
  131. package/dist/core/fields/richText.js +338 -338
  132. package/dist/core/fields/select.d.ts +365 -365
  133. package/dist/core/fields/select.d.ts.map +1 -1
  134. package/dist/core/fields/select.js +499 -499
  135. package/dist/core/fields/selectMultiple.d.ts +235 -235
  136. package/dist/core/fields/selectMultiple.d.ts.map +1 -1
  137. package/dist/core/fields/selectMultiple.js +417 -417
  138. package/dist/core/fields/tags.d.ts +130 -130
  139. package/dist/core/fields/tags.d.ts.map +1 -1
  140. package/dist/core/fields/tags.js +105 -105
  141. package/dist/core/fields/text.d.ts +135 -135
  142. package/dist/core/fields/text.d.ts.map +1 -1
  143. package/dist/core/fields/text.js +157 -157
  144. package/dist/core/fields/textArea.d.ts +106 -106
  145. package/dist/core/fields/textArea.d.ts.map +1 -1
  146. package/dist/core/fields/textArea.js +126 -126
  147. package/dist/core/fields/video.d.ts +147 -147
  148. package/dist/core/fields/video.d.ts.map +1 -1
  149. package/dist/core/fields/video.js +248 -248
  150. package/dist/core/helpers/entity.d.ts +7 -7
  151. package/dist/core/helpers/entity.js +27 -27
  152. package/dist/core/helpers/index.d.ts +4 -4
  153. package/dist/core/helpers/index.d.ts.map +1 -1
  154. package/dist/core/helpers/index.js +3 -3
  155. package/dist/core/index.d.ts +7 -7
  156. package/dist/core/index.d.ts.map +1 -1
  157. package/dist/core/index.js +7 -7
  158. package/dist/core/sections/category.d.ts +282 -282
  159. package/dist/core/sections/category.d.ts.map +1 -1
  160. package/dist/core/sections/category.js +147 -147
  161. package/dist/core/sections/hasItems.d.ts +631 -631
  162. package/dist/core/sections/hasItems.d.ts.map +1 -1
  163. package/dist/core/sections/hasItems.js +144 -144
  164. package/dist/core/sections/index.d.ts +4 -4
  165. package/dist/core/sections/index.d.ts.map +1 -1
  166. package/dist/core/sections/index.js +4 -4
  167. package/dist/core/sections/section.d.ts +225 -225
  168. package/dist/core/sections/section.d.ts.map +1 -1
  169. package/dist/core/sections/section.js +341 -341
  170. package/dist/core/sections/simple.d.ts +98 -98
  171. package/dist/core/sections/simple.d.ts.map +1 -1
  172. package/dist/core/sections/simple.js +95 -95
  173. package/dist/core/security/dom.d.ts +10 -10
  174. package/dist/core/security/dom.js +92 -92
  175. package/dist/core/submit/ItemEditSubmit.d.ts +75 -75
  176. package/dist/core/submit/ItemEditSubmit.js +186 -186
  177. package/dist/core/submit/NewItemSubmit.d.ts +13 -13
  178. package/dist/core/submit/NewItemSubmit.js +93 -93
  179. package/dist/core/submit/SimpleSectionSubmit.d.ts +12 -12
  180. package/dist/core/submit/SimpleSectionSubmit.js +93 -93
  181. package/dist/core/submit/index.d.ts +4 -4
  182. package/dist/core/submit/index.js +4 -4
  183. package/dist/core/submit/submit.d.ts +115 -115
  184. package/dist/core/submit/submit.js +479 -479
  185. package/dist/core/types/index.d.ts +279 -279
  186. package/dist/core/types/index.d.ts.map +1 -1
  187. package/dist/core/types/index.js +1 -1
  188. package/dist/db/client.d.ts +8 -8
  189. package/dist/db/client.d.ts.map +1 -1
  190. package/dist/db/client.js +19 -19
  191. package/dist/db/config.d.ts +5 -5
  192. package/dist/db/config.js +22 -22
  193. package/dist/db/drizzle.config.d.ts +5 -5
  194. package/dist/db/drizzle.config.js +18 -18
  195. package/dist/db/index.d.ts +2 -2
  196. package/dist/db/index.js +3 -3
  197. package/dist/db/schema.d.ts +638 -638
  198. package/dist/db/schema.js +73 -73
  199. package/dist/index.d.ts +7 -7
  200. package/dist/index.d.ts.map +1 -1
  201. package/dist/index.js +7 -7
  202. package/dist/translations/index.d.ts +2 -2
  203. package/dist/translations/index.js +15 -15
  204. package/dist/utils/CpanelApi.d.ts +24 -24
  205. package/dist/utils/CpanelApi.js +64 -64
  206. package/dist/utils/constants.d.ts +13 -13
  207. package/dist/utils/constants.js +61 -61
  208. package/dist/utils/index.d.ts +4 -4
  209. package/dist/utils/index.d.ts.map +1 -1
  210. package/dist/utils/index.js +4 -4
  211. package/dist/utils/utils.d.ts +59 -59
  212. package/dist/utils/utils.js +132 -132
  213. package/dist/validators/checkbox.d.ts +3 -3
  214. package/dist/validators/checkbox.d.ts.map +1 -1
  215. package/dist/validators/checkbox.js +12 -12
  216. package/dist/validators/color.d.ts +3 -3
  217. package/dist/validators/color.d.ts.map +1 -1
  218. package/dist/validators/color.js +7 -7
  219. package/dist/validators/date.d.ts +3 -3
  220. package/dist/validators/date.d.ts.map +1 -1
  221. package/dist/validators/date.js +5 -5
  222. package/dist/validators/document.d.ts +3 -3
  223. package/dist/validators/document.d.ts.map +1 -1
  224. package/dist/validators/document.js +57 -57
  225. package/dist/validators/index.d.ts +14 -14
  226. package/dist/validators/index.d.ts.map +1 -1
  227. package/dist/validators/index.js +14 -14
  228. package/dist/validators/map.d.ts +3 -3
  229. package/dist/validators/map.d.ts.map +1 -1
  230. package/dist/validators/map.js +5 -5
  231. package/dist/validators/number.d.ts +3 -3
  232. package/dist/validators/number.d.ts.map +1 -1
  233. package/dist/validators/number.js +20 -20
  234. package/dist/validators/password.d.ts +3 -3
  235. package/dist/validators/password.d.ts.map +1 -1
  236. package/dist/validators/password.js +11 -11
  237. package/dist/validators/photo.d.ts +3 -3
  238. package/dist/validators/photo.d.ts.map +1 -1
  239. package/dist/validators/photo.js +100 -100
  240. package/dist/validators/richText.d.ts +3 -3
  241. package/dist/validators/richText.d.ts.map +1 -1
  242. package/dist/validators/richText.js +8 -8
  243. package/dist/validators/select-multiple.d.ts +9 -9
  244. package/dist/validators/select-multiple.d.ts.map +1 -1
  245. package/dist/validators/select-multiple.js +20 -20
  246. package/dist/validators/select.d.ts +3 -3
  247. package/dist/validators/select.d.ts.map +1 -1
  248. package/dist/validators/select.js +5 -5
  249. package/dist/validators/text.d.ts +3 -3
  250. package/dist/validators/text.d.ts.map +1 -1
  251. package/dist/validators/text.js +7 -7
  252. package/dist/validators/textarea.d.ts +3 -3
  253. package/dist/validators/textarea.d.ts.map +1 -1
  254. package/dist/validators/textarea.js +7 -7
  255. package/dist/validators/video.d.ts +3 -3
  256. package/dist/validators/video.d.ts.map +1 -1
  257. package/dist/validators/video.js +57 -57
  258. package/package.json +4 -5
@@ -1,216 +1,216 @@
1
- import { privateProcedure, router } from "../trpc.js";
2
- import { CpanelAPI } from "../../utils.js";
3
- import * as z from 'zod';
4
- import { TRPCError } from '@trpc/server';
5
- import getString from "../../translations.js";
6
- // import '@/envConfig'
7
- export const cpanelRouter = router({
8
- getData: privateProcedure.query(async ({ ctx, input }) => {
9
- if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
10
- throw new TRPCError({
11
- code: 'BAD_REQUEST',
12
- message: getString('cpanelCredentialsNotSet'),
13
- });
14
- }
15
- const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
16
- const data = await Promise.all([
17
- cPanel.callApi('DomainInfo', 'single_domain_data', {
18
- domain: process.env.CPANEL_DOMAIN,
19
- }),
20
- cPanel.callApi('ResourceUsage', 'get_usages'),
21
- cPanel.callApi('Mysql', 'get_server_information'),
22
- cPanel.callApi('Mysql', 'list_databases'),
23
- // cPanel.callApi('PassengerApps', 'list_applications'),
24
- ]);
25
- // console.log(data)
26
- if (cPanel.isError) {
27
- throw new TRPCError({
28
- code: 'BAD_REQUEST',
29
- message: cPanel.getError(),
30
- });
31
- }
32
- const dbInfo = data[2];
33
- const dbsList = data[3];
34
- // const passengerAppList = data[4]
35
- let bandwidthLimit = 0, bandwidthUsage = 0;
36
- let diskSpaceLimit = 0, usedDiskSpace = 0;
37
- let emailsLimit = 0, emailsCount = 0;
38
- let dbsLimit = 0, dbsCount = 0;
39
- const domainInfoData = data[0].data;
40
- const cpanelUsagesArray = data[1].data;
41
- cpanelUsagesArray.forEach((singleItemUsage) => {
42
- switch (singleItemUsage.id) {
43
- case 'bandwidth':
44
- bandwidthLimit = singleItemUsage.maximum || 1000000000000;
45
- bandwidthUsage = singleItemUsage.usage;
46
- break;
47
- case 'disk_usage':
48
- diskSpaceLimit = singleItemUsage.maximum || 1000000000000;
49
- usedDiskSpace = singleItemUsage.usage;
50
- break;
51
- case 'email_accounts':
52
- emailsLimit = singleItemUsage.maximum || 1000000000000;
53
- emailsCount = singleItemUsage.usage;
54
- break;
55
- case 'mysql_databases':
56
- dbsLimit = singleItemUsage.maximum || 1000000000000;
57
- dbsCount = singleItemUsage.usage;
58
- break;
59
- }
60
- });
61
- /*data[4].data = Object.keys(data[4].data).map((key) => {
62
- const app = data[4].data[key]
63
- return {
64
- name: app.name,
65
- path: app.path,
66
- domain: app.domain,
67
- enabled: app.enabled,
68
- url: app.base_uri,
69
- nodejs: app.nodejs,
70
- deploymentMode: app.deployment_mode,
71
- }
72
- })*/
73
- return {
74
- dbsLimit,
75
- dbsCount,
76
- bandwidthUsage,
77
- bandwidthLimit,
78
- diskSpaceUsage: usedDiskSpace,
79
- diskSpaceLimit,
80
- emailsUsage: emailsCount,
81
- emailsLimit,
82
- dbInfo: dbInfo.data,
83
- dbsList: dbsList.data,
84
- phpVersion: domainInfoData?.phpversion,
85
- passengerAppList: [],
86
- documentRoot: domainInfoData?.documentroot,
87
- };
88
- }),
89
- getEmails: privateProcedure.query(async ({ ctx, input }) => {
90
- if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
91
- throw new TRPCError({
92
- code: 'BAD_REQUEST',
93
- message: getString('cpanelCredentialsNotSet'),
94
- });
95
- }
96
- const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
97
- const data = await cPanel.callApi('Email', 'list_pops_with_disk', {
98
- domain: process.env.CPANEL_DOMAIN,
99
- maxaccounts: 100,
100
- no_validate: 1,
101
- infinitylang: 1,
102
- 'api.sort': '1',
103
- 'api.sort_column': 'mtime',
104
- });
105
- return {
106
- emails: data.data,
107
- };
108
- }),
109
- createEmail: privateProcedure
110
- .input(z.object({
111
- email: z.string(),
112
- password: z.string(),
113
- quota: z.string(),
114
- }))
115
- .mutation(async ({ ctx, input }) => {
116
- if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
117
- throw new TRPCError({
118
- code: 'BAD_REQUEST',
119
- message: getString('cpanelCredentialsNotSet'),
120
- });
121
- }
122
- const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
123
- const data = await cPanel.callApi('Email', 'add_pop', {
124
- domain: process.env.CPANEL_DOMAIN,
125
- email: input.email,
126
- password: input.password,
127
- quota: input.quota,
128
- });
129
- if (cPanel.isError) {
130
- throw new TRPCError({
131
- code: 'BAD_REQUEST',
132
- message: cPanel.getError(),
133
- });
134
- }
135
- return data;
136
- }),
137
- quotaChange: privateProcedure
138
- .input(z.object({
139
- email: z.string(),
140
- quota: z.string(),
141
- }))
142
- .mutation(async ({ ctx, input }) => {
143
- if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
144
- throw new TRPCError({
145
- code: 'BAD_REQUEST',
146
- message: getString('cpanelCredentialsNotSet'),
147
- });
148
- }
149
- const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
150
- const data = await cPanel.callApi('Email', 'edit_pop_quota', {
151
- domain: process.env.CPANEL_DOMAIN,
152
- email: input.email,
153
- quota: input.quota,
154
- });
155
- if (cPanel.isError) {
156
- throw new TRPCError({
157
- code: 'BAD_REQUEST',
158
- message: cPanel.getError(),
159
- });
160
- }
161
- return data;
162
- }),
163
- passwordChange: privateProcedure
164
- .input(z.object({
165
- email: z.string(),
166
- password: z.string(),
167
- passwordConfirm: z.string(),
168
- }))
169
- .mutation(async ({ ctx, input }) => {
170
- if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
171
- throw new TRPCError({
172
- code: 'BAD_REQUEST',
173
- message: getString('cpanelCredentialsNotSet'),
174
- });
175
- }
176
- if (input.password !== input.passwordConfirm) {
177
- throw new TRPCError({
178
- code: 'BAD_REQUEST',
179
- message: getString('passwordsDoNotMatch'),
180
- });
181
- }
182
- const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
183
- const data = await cPanel.callApi('Email', 'passwd_pop', {
184
- domain: process.env.CPANEL_DOMAIN,
185
- email: input.email,
186
- password: input.password,
187
- });
188
- if (cPanel.isError) {
189
- throw new TRPCError({
190
- code: 'BAD_REQUEST',
191
- message: cPanel.getError(),
192
- });
193
- }
194
- return data;
195
- }),
196
- deleteEmail: privateProcedure.input(z.string()).mutation(async ({ ctx, input }) => {
197
- if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
198
- throw new TRPCError({
199
- code: 'BAD_REQUEST',
200
- message: getString('cpanelCredentialsNotSet'),
201
- });
202
- }
203
- const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
204
- const data = await cPanel.callApi('Email', 'delete_pop', {
205
- domain: process.env.CPANEL_DOMAIN,
206
- email: input,
207
- });
208
- if (cPanel.isError) {
209
- throw new TRPCError({
210
- code: 'BAD_REQUEST',
211
- message: cPanel.getError(),
212
- });
213
- }
214
- return data;
215
- }),
216
- });
1
+ import { privateProcedure, router } from '../trpc.js';
2
+ import { CpanelAPI } from '../../utils/index.js';
3
+ import * as z from 'zod';
4
+ import { TRPCError } from '@trpc/server';
5
+ import getString from '../../translations/index.js';
6
+ // import '@/envConfig'
7
+ export const cpanelRouter = router({
8
+ getData: privateProcedure.query(async ({ ctx, input }) => {
9
+ if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
10
+ throw new TRPCError({
11
+ code: 'BAD_REQUEST',
12
+ message: getString('cpanelCredentialsNotSet'),
13
+ });
14
+ }
15
+ const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
16
+ const data = await Promise.all([
17
+ cPanel.callApi('DomainInfo', 'single_domain_data', {
18
+ domain: process.env.CPANEL_DOMAIN,
19
+ }),
20
+ cPanel.callApi('ResourceUsage', 'get_usages'),
21
+ cPanel.callApi('Mysql', 'get_server_information'),
22
+ cPanel.callApi('Mysql', 'list_databases'),
23
+ // cPanel.callApi('PassengerApps', 'list_applications'),
24
+ ]);
25
+ // console.log(data)
26
+ if (cPanel.isError) {
27
+ throw new TRPCError({
28
+ code: 'BAD_REQUEST',
29
+ message: cPanel.getError(),
30
+ });
31
+ }
32
+ const dbInfo = data[2];
33
+ const dbsList = data[3];
34
+ // const passengerAppList = data[4]
35
+ let bandwidthLimit = 0, bandwidthUsage = 0;
36
+ let diskSpaceLimit = 0, usedDiskSpace = 0;
37
+ let emailsLimit = 0, emailsCount = 0;
38
+ let dbsLimit = 0, dbsCount = 0;
39
+ const domainInfoData = data[0].data;
40
+ const cpanelUsagesArray = data[1].data;
41
+ cpanelUsagesArray.forEach((singleItemUsage) => {
42
+ switch (singleItemUsage.id) {
43
+ case 'bandwidth':
44
+ bandwidthLimit = singleItemUsage.maximum || 1000000000000;
45
+ bandwidthUsage = singleItemUsage.usage;
46
+ break;
47
+ case 'disk_usage':
48
+ diskSpaceLimit = singleItemUsage.maximum || 1000000000000;
49
+ usedDiskSpace = singleItemUsage.usage;
50
+ break;
51
+ case 'email_accounts':
52
+ emailsLimit = singleItemUsage.maximum || 1000000000000;
53
+ emailsCount = singleItemUsage.usage;
54
+ break;
55
+ case 'mysql_databases':
56
+ dbsLimit = singleItemUsage.maximum || 1000000000000;
57
+ dbsCount = singleItemUsage.usage;
58
+ break;
59
+ }
60
+ });
61
+ /*data[4].data = Object.keys(data[4].data).map((key) => {
62
+ const app = data[4].data[key]
63
+ return {
64
+ name: app.name,
65
+ path: app.path,
66
+ domain: app.domain,
67
+ enabled: app.enabled,
68
+ url: app.base_uri,
69
+ nodejs: app.nodejs,
70
+ deploymentMode: app.deployment_mode,
71
+ }
72
+ })*/
73
+ return {
74
+ dbsLimit,
75
+ dbsCount,
76
+ bandwidthUsage,
77
+ bandwidthLimit,
78
+ diskSpaceUsage: usedDiskSpace,
79
+ diskSpaceLimit,
80
+ emailsUsage: emailsCount,
81
+ emailsLimit,
82
+ dbInfo: dbInfo.data,
83
+ dbsList: dbsList.data,
84
+ phpVersion: domainInfoData?.phpversion,
85
+ passengerAppList: [],
86
+ documentRoot: domainInfoData?.documentroot,
87
+ };
88
+ }),
89
+ getEmails: privateProcedure.query(async ({ ctx, input }) => {
90
+ if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
91
+ throw new TRPCError({
92
+ code: 'BAD_REQUEST',
93
+ message: getString('cpanelCredentialsNotSet'),
94
+ });
95
+ }
96
+ const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
97
+ const data = await cPanel.callApi('Email', 'list_pops_with_disk', {
98
+ domain: process.env.CPANEL_DOMAIN,
99
+ maxaccounts: 100,
100
+ no_validate: 1,
101
+ infinitylang: 1,
102
+ 'api.sort': '1',
103
+ 'api.sort_column': 'mtime',
104
+ });
105
+ return {
106
+ emails: data.data,
107
+ };
108
+ }),
109
+ createEmail: privateProcedure
110
+ .input(z.object({
111
+ email: z.string(),
112
+ password: z.string(),
113
+ quota: z.string(),
114
+ }))
115
+ .mutation(async ({ ctx, input }) => {
116
+ if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
117
+ throw new TRPCError({
118
+ code: 'BAD_REQUEST',
119
+ message: getString('cpanelCredentialsNotSet'),
120
+ });
121
+ }
122
+ const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
123
+ const data = await cPanel.callApi('Email', 'add_pop', {
124
+ domain: process.env.CPANEL_DOMAIN,
125
+ email: input.email,
126
+ password: input.password,
127
+ quota: input.quota,
128
+ });
129
+ if (cPanel.isError) {
130
+ throw new TRPCError({
131
+ code: 'BAD_REQUEST',
132
+ message: cPanel.getError(),
133
+ });
134
+ }
135
+ return data;
136
+ }),
137
+ quotaChange: privateProcedure
138
+ .input(z.object({
139
+ email: z.string(),
140
+ quota: z.string(),
141
+ }))
142
+ .mutation(async ({ ctx, input }) => {
143
+ if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
144
+ throw new TRPCError({
145
+ code: 'BAD_REQUEST',
146
+ message: getString('cpanelCredentialsNotSet'),
147
+ });
148
+ }
149
+ const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
150
+ const data = await cPanel.callApi('Email', 'edit_pop_quota', {
151
+ domain: process.env.CPANEL_DOMAIN,
152
+ email: input.email,
153
+ quota: input.quota,
154
+ });
155
+ if (cPanel.isError) {
156
+ throw new TRPCError({
157
+ code: 'BAD_REQUEST',
158
+ message: cPanel.getError(),
159
+ });
160
+ }
161
+ return data;
162
+ }),
163
+ passwordChange: privateProcedure
164
+ .input(z.object({
165
+ email: z.string(),
166
+ password: z.string(),
167
+ passwordConfirm: z.string(),
168
+ }))
169
+ .mutation(async ({ ctx, input }) => {
170
+ if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
171
+ throw new TRPCError({
172
+ code: 'BAD_REQUEST',
173
+ message: getString('cpanelCredentialsNotSet'),
174
+ });
175
+ }
176
+ if (input.password !== input.passwordConfirm) {
177
+ throw new TRPCError({
178
+ code: 'BAD_REQUEST',
179
+ message: getString('passwordsDoNotMatch'),
180
+ });
181
+ }
182
+ const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
183
+ const data = await cPanel.callApi('Email', 'passwd_pop', {
184
+ domain: process.env.CPANEL_DOMAIN,
185
+ email: input.email,
186
+ password: input.password,
187
+ });
188
+ if (cPanel.isError) {
189
+ throw new TRPCError({
190
+ code: 'BAD_REQUEST',
191
+ message: cPanel.getError(),
192
+ });
193
+ }
194
+ return data;
195
+ }),
196
+ deleteEmail: privateProcedure.input(z.string()).mutation(async ({ ctx, input }) => {
197
+ if (!process.env.CPANEL_USER || !process.env.CPANEL_PASSWORD || !process.env.CPANEL_DOMAIN) {
198
+ throw new TRPCError({
199
+ code: 'BAD_REQUEST',
200
+ message: getString('cpanelCredentialsNotSet'),
201
+ });
202
+ }
203
+ const cPanel = new CpanelAPI(process.env.CPANEL_USER, process.env.CPANEL_PASSWORD, `cpanel.${process.env.CPANEL_DOMAIN}`);
204
+ const data = await cPanel.callApi('Email', 'delete_pop', {
205
+ domain: process.env.CPANEL_DOMAIN,
206
+ email: input,
207
+ });
208
+ if (cPanel.isError) {
209
+ throw new TRPCError({
210
+ code: 'BAD_REQUEST',
211
+ message: cPanel.getError(),
212
+ });
213
+ }
214
+ return data;
215
+ }),
216
+ });
@@ -1,48 +1,48 @@
1
- import * as z from 'zod';
2
- export declare const filesRouter: import("@trpc/server").TRPCBuiltRouter<{
3
- ctx: {
4
- db: import("drizzle-orm/mysql2").MySql2Database<typeof import("../../db/schema.js")> & {
5
- $client: import("mysql2/promise").Pool;
6
- };
7
- session: import("../...js").Session | null;
8
- opts: {
9
- headers: Headers;
10
- };
11
- };
12
- meta: object;
13
- errorShape: {
14
- data: {
15
- zodError: z.core.$ZodFlattenedError<unknown, string> | null;
16
- code: import("@trpc/server").TRPC_ERROR_CODE_KEY;
17
- httpStatus: number;
18
- path?: string;
19
- stack?: string;
20
- };
21
- message: string;
22
- code: import("@trpc/server").TRPC_ERROR_CODE_NUMBER;
23
- };
24
- transformer: true;
25
- }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
26
- getPhoto: import("@trpc/server").TRPCQueryProcedure<{
27
- input: {
28
- name: string;
29
- folder: string;
30
- isThumb?: boolean | undefined;
31
- };
32
- output: string;
33
- meta: object;
34
- }>;
35
- getDocument: import("@trpc/server").TRPCQueryProcedure<{
36
- input: {
37
- name: string;
38
- sectionName: string;
39
- fieldName: string;
40
- };
41
- output: {
42
- base64: string;
43
- mimeType: string;
44
- };
45
- meta: object;
46
- }>;
47
- }>>;
1
+ import * as z from 'zod';
2
+ export declare const filesRouter: import("@trpc/server").TRPCBuiltRouter<{
3
+ ctx: {
4
+ db: import("drizzle-orm/mysql2").MySql2Database<typeof import("../../db/schema.js")> & {
5
+ $client: import("mysql2/promise").Pool;
6
+ };
7
+ session: import("../../index.js").Session | null;
8
+ opts: {
9
+ headers: Headers;
10
+ };
11
+ };
12
+ meta: object;
13
+ errorShape: {
14
+ data: {
15
+ zodError: z.core.$ZodFlattenedError<unknown, string> | null;
16
+ code: import("@trpc/server").TRPC_ERROR_CODE_KEY;
17
+ httpStatus: number;
18
+ path?: string;
19
+ stack?: string;
20
+ };
21
+ message: string;
22
+ code: import("@trpc/server").TRPC_ERROR_CODE_NUMBER;
23
+ };
24
+ transformer: true;
25
+ }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
26
+ getPhoto: import("@trpc/server").TRPCQueryProcedure<{
27
+ input: {
28
+ name: string;
29
+ folder: string;
30
+ isThumb?: boolean | undefined;
31
+ };
32
+ output: string;
33
+ meta: object;
34
+ }>;
35
+ getDocument: import("@trpc/server").TRPCQueryProcedure<{
36
+ input: {
37
+ name: string;
38
+ sectionName: string;
39
+ fieldName: string;
40
+ };
41
+ output: {
42
+ base64: string;
43
+ mimeType: string;
44
+ };
45
+ meta: object;
46
+ }>;
47
+ }>>;
48
48
  //# sourceMappingURL=files.d.ts.map
@@ -1,23 +1,23 @@
1
- import { privateProcedure, router } from "../trpc.js";
2
- import * as z from 'zod';
3
- import { getPhoto, getDocument } from "../lib/serverActions.js";
4
- export const filesRouter = router({
5
- getPhoto: privateProcedure
6
- .input(z.object({
7
- name: z.string(),
8
- folder: z.string(),
9
- isThumb: z.boolean().optional(),
10
- }))
11
- .query(async ({ ctx, input }) => {
12
- return await getPhoto(input);
13
- }),
14
- getDocument: privateProcedure
15
- .input(z.object({
16
- name: z.string(),
17
- sectionName: z.string(),
18
- fieldName: z.string(),
19
- }))
20
- .query(async ({ ctx, input }) => {
21
- return await getDocument(ctx.session, input);
22
- }),
23
- });
1
+ import { privateProcedure, router } from '../trpc.js';
2
+ import * as z from 'zod';
3
+ import { getPhoto, getDocument } from '../lib/serverActions.js';
4
+ export const filesRouter = router({
5
+ getPhoto: privateProcedure
6
+ .input(z.object({
7
+ name: z.string(),
8
+ folder: z.string(),
9
+ isThumb: z.boolean().optional(),
10
+ }))
11
+ .query(async ({ ctx, input }) => {
12
+ return await getPhoto(input);
13
+ }),
14
+ getDocument: privateProcedure
15
+ .input(z.object({
16
+ name: z.string(),
17
+ sectionName: z.string(),
18
+ fieldName: z.string(),
19
+ }))
20
+ .query(async ({ ctx, input }) => {
21
+ return await getDocument(ctx.session, input);
22
+ }),
23
+ });
@@ -1,36 +1,36 @@
1
- import * as z from 'zod';
2
- export declare const galleryRouter: import("@trpc/server").TRPCBuiltRouter<{
3
- ctx: {
4
- db: import("drizzle-orm/mysql2").MySql2Database<typeof import("../../db/schema.js")> & {
5
- $client: import("mysql2/promise").Pool;
6
- };
7
- session: import("../...js").Session | null;
8
- opts: {
9
- headers: Headers;
10
- };
11
- };
12
- meta: object;
13
- errorShape: {
14
- data: {
15
- zodError: z.core.$ZodFlattenedError<unknown, string> | null;
16
- code: import("@trpc/server").TRPC_ERROR_CODE_KEY;
17
- httpStatus: number;
18
- path?: string;
19
- stack?: string;
20
- };
21
- message: string;
22
- code: import("@trpc/server").TRPC_ERROR_CODE_NUMBER;
23
- };
24
- transformer: true;
25
- }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
26
- deletePhoto: import("@trpc/server").TRPCMutationProcedure<{
27
- input: {
28
- sectionName: string;
29
- photoName: string;
30
- referenceId: string;
31
- };
32
- output: boolean;
33
- meta: object;
34
- }>;
35
- }>>;
1
+ import * as z from 'zod';
2
+ export declare const galleryRouter: import("@trpc/server").TRPCBuiltRouter<{
3
+ ctx: {
4
+ db: import("drizzle-orm/mysql2").MySql2Database<typeof import("../../db/schema.js")> & {
5
+ $client: import("mysql2/promise").Pool;
6
+ };
7
+ session: import("../../index.js").Session | null;
8
+ opts: {
9
+ headers: Headers;
10
+ };
11
+ };
12
+ meta: object;
13
+ errorShape: {
14
+ data: {
15
+ zodError: z.core.$ZodFlattenedError<unknown, string> | null;
16
+ code: import("@trpc/server").TRPC_ERROR_CODE_KEY;
17
+ httpStatus: number;
18
+ path?: string;
19
+ stack?: string;
20
+ };
21
+ message: string;
22
+ code: import("@trpc/server").TRPC_ERROR_CODE_NUMBER;
23
+ };
24
+ transformer: true;
25
+ }, import("@trpc/server").TRPCDecorateCreateRouterOptions<{
26
+ deletePhoto: import("@trpc/server").TRPCMutationProcedure<{
27
+ input: {
28
+ sectionName: string;
29
+ photoName: string;
30
+ referenceId: string;
31
+ };
32
+ output: boolean;
33
+ meta: object;
34
+ }>;
35
+ }>>;
36
36
  //# sourceMappingURL=gallery.d.ts.map