@bprotsyk/aso-core 1.2.236 → 1.2.238

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 (263) hide show
  1. package/README.md +1 -1
  2. package/docs/assets/highlight.css +22 -22
  3. package/docs/assets/main.js +58 -58
  4. package/docs/assets/style.css +1279 -1279
  5. package/docs/enums/PanelUserAccessScope.html +126 -126
  6. package/docs/functions/ASO_v0.toDefault.html +80 -80
  7. package/docs/functions/ASO_v1.toDefault.html +80 -80
  8. package/docs/functions/ASO_v2.toDefault.html +78 -78
  9. package/docs/functions/ASO_v3.toDefault.html +77 -77
  10. package/docs/functions/ASO_v4.toDefault.html +75 -75
  11. package/docs/functions/ASO_v5.toDefault.html +76 -76
  12. package/docs/functions/ColoredText.html +92 -92
  13. package/docs/functions/ShapeDiv.html +109 -109
  14. package/docs/index.html +82 -82
  15. package/docs/interfaces/ASOConfigFetch.IUsageLogEntry.html +1413 -1413
  16. package/docs/interfaces/ASOConfigFetch.IUsageLogRequest.html +103 -103
  17. package/docs/interfaces/ASOConfigFetch.IUsageLogResponse.html +108 -108
  18. package/docs/interfaces/ASO_v0.IAuthorizationActionMapping.html +145 -145
  19. package/docs/interfaces/ASO_v0.IColoredSpan.html +89 -89
  20. package/docs/interfaces/ASO_v0.IColoredSpanMapping.html +89 -89
  21. package/docs/interfaces/ASO_v0.IColoredString.html +89 -89
  22. package/docs/interfaces/ASO_v0.IColoredStringMapping.html +89 -89
  23. package/docs/interfaces/ASO_v0.IConfig.html +556 -556
  24. package/docs/interfaces/ASO_v0.IConfigMapping.html +229 -229
  25. package/docs/interfaces/ASO_v0.ILocalization.html +516 -516
  26. package/docs/interfaces/ASO_v0.ILocalizationMap.html +77 -77
  27. package/docs/interfaces/ASO_v0.ILocalizationMapping.html +502 -502
  28. package/docs/interfaces/ASO_v0.IOfferResult.html +103 -103
  29. package/docs/interfaces/ASO_v0.IOfferResultEmoji.html +82 -82
  30. package/docs/interfaces/ASO_v0.IOfferResultMapping.html +117 -117
  31. package/docs/interfaces/ASO_v0.IOfferSectionMapping.html +108 -108
  32. package/docs/interfaces/ASO_v0.IOffersSection.html +96 -96
  33. package/docs/interfaces/ASO_v0.ISectionPalette.html +152 -152
  34. package/docs/interfaces/ASO_v0.ISectionPaletteMapping.html +152 -152
  35. package/docs/interfaces/ASO_v1.IAuthorizationActionMapping.html +145 -145
  36. package/docs/interfaces/ASO_v1.IColoredSpan.html +89 -89
  37. package/docs/interfaces/ASO_v1.IColoredSpanMapping.html +89 -89
  38. package/docs/interfaces/ASO_v1.IColoredString.html +89 -89
  39. package/docs/interfaces/ASO_v1.IColoredStringMapping.html +89 -89
  40. package/docs/interfaces/ASO_v1.IConfig.html +549 -549
  41. package/docs/interfaces/ASO_v1.IConfigMapping.html +229 -229
  42. package/docs/interfaces/ASO_v1.ILocalization.html +481 -481
  43. package/docs/interfaces/ASO_v1.ILocalizationMap.html +77 -77
  44. package/docs/interfaces/ASO_v1.ILocalizationMapping.html +481 -481
  45. package/docs/interfaces/ASO_v1.IOfferResult.html +103 -103
  46. package/docs/interfaces/ASO_v1.IOfferResultEmoji.html +82 -82
  47. package/docs/interfaces/ASO_v1.IOfferResultMapping.html +117 -117
  48. package/docs/interfaces/ASO_v1.IOfferSectionMapping.html +108 -108
  49. package/docs/interfaces/ASO_v1.IOffersSection.html +101 -101
  50. package/docs/interfaces/ASO_v1.ISectionPalette.html +152 -152
  51. package/docs/interfaces/ASO_v1.ISectionPaletteMapping.html +152 -152
  52. package/docs/interfaces/ASO_v2.IAuthorizationActionMapping.html +138 -138
  53. package/docs/interfaces/ASO_v2.IColoredSpanMapping.html +89 -89
  54. package/docs/interfaces/ASO_v2.IColoredString.html +89 -89
  55. package/docs/interfaces/ASO_v2.IColoredStringMapping.html +89 -89
  56. package/docs/interfaces/ASO_v2.IConfig.html +493 -493
  57. package/docs/interfaces/ASO_v2.IConfigMapping.html +201 -201
  58. package/docs/interfaces/ASO_v2.ILocalization.html +474 -474
  59. package/docs/interfaces/ASO_v2.ILocalizationMap.html +75 -75
  60. package/docs/interfaces/ASO_v2.ILocalizationMapping.html +362 -362
  61. package/docs/interfaces/ASO_v2.IOfferResult.html +110 -110
  62. package/docs/interfaces/ASO_v2.IOfferResultMapping.html +117 -117
  63. package/docs/interfaces/ASO_v2.IOfferSectionMapping.html +108 -108
  64. package/docs/interfaces/ASO_v2.IOffersSection.html +101 -101
  65. package/docs/interfaces/ASO_v2.ISectionPalette.html +152 -152
  66. package/docs/interfaces/ASO_v2.ISectionPaletteMapping.html +152 -152
  67. package/docs/interfaces/ASO_v3.IAuthorizationActionMapping.html +138 -138
  68. package/docs/interfaces/ASO_v3.IColoredSpanMapping.html +89 -89
  69. package/docs/interfaces/ASO_v3.IColoredString.html +89 -89
  70. package/docs/interfaces/ASO_v3.IColoredStringMapping.html +89 -89
  71. package/docs/interfaces/ASO_v3.IConfig.html +514 -514
  72. package/docs/interfaces/ASO_v3.IConfigMapping.html +208 -208
  73. package/docs/interfaces/ASO_v3.ILocalization.html +446 -446
  74. package/docs/interfaces/ASO_v3.ILocalizationMap.html +74 -74
  75. package/docs/interfaces/ASO_v3.ILocalizationMapping.html +341 -341
  76. package/docs/interfaces/ASO_v3.IOfferResultMapping.html +117 -117
  77. package/docs/interfaces/ASO_v3.IOfferSectionMapping.html +108 -108
  78. package/docs/interfaces/ASO_v3.IOffersSection.html +101 -101
  79. package/docs/interfaces/ASO_v3.ISectionPalette.html +152 -152
  80. package/docs/interfaces/ASO_v3.ISectionPaletteMapping.html +152 -152
  81. package/docs/interfaces/ASO_v4.IAuthorizationActionMapping.html +138 -138
  82. package/docs/interfaces/ASO_v4.IColoredSpanMapping.html +89 -89
  83. package/docs/interfaces/ASO_v4.IColoredString.html +89 -89
  84. package/docs/interfaces/ASO_v4.IColoredStringMapping.html +89 -89
  85. package/docs/interfaces/ASO_v4.IConfig.html +514 -514
  86. package/docs/interfaces/ASO_v4.IConfigMapping.html +131 -131
  87. package/docs/interfaces/ASO_v4.ILocalization.html +369 -369
  88. package/docs/interfaces/ASO_v4.ILocalizationMap.html +72 -72
  89. package/docs/interfaces/ASO_v4.ILocalizationMapping.html +257 -257
  90. package/docs/interfaces/ASO_v4.IOfferResultMapping.html +117 -117
  91. package/docs/interfaces/ASO_v4.IOfferSectionMapping.html +89 -89
  92. package/docs/interfaces/ASO_v4.LocalizedString.html +82 -82
  93. package/docs/interfaces/ASO_v5.IAuthorizationActionMapping.html +138 -138
  94. package/docs/interfaces/ASO_v5.IColoredSpan.html +89 -89
  95. package/docs/interfaces/ASO_v5.IColoredSpanMapping.html +89 -89
  96. package/docs/interfaces/ASO_v5.IColoredString.html +89 -89
  97. package/docs/interfaces/ASO_v5.IColoredStringMapping.html +89 -89
  98. package/docs/interfaces/ASO_v5.IConfig.html +542 -542
  99. package/docs/interfaces/ASO_v5.IConfigMapping.html +159 -159
  100. package/docs/interfaces/ASO_v5.ILocalization.html +411 -411
  101. package/docs/interfaces/ASO_v5.ILocalizationMap.html +73 -73
  102. package/docs/interfaces/ASO_v5.ILocalizationMapping.html +299 -299
  103. package/docs/interfaces/ASO_v5.IOfferResultMapping.html +117 -117
  104. package/docs/interfaces/ASO_v5.IOfferSectionMapping.html +89 -89
  105. package/docs/interfaces/ASO_v5.LocalizedString.html +82 -82
  106. package/docs/interfaces/IAsoConfigResponse.html +81 -81
  107. package/docs/interfaces/IAsoCustomizedOffer.html +116 -116
  108. package/docs/interfaces/IAsoDefaultConfig.html +443 -443
  109. package/docs/interfaces/IAsoOfferResponse.html +81 -81
  110. package/docs/interfaces/IAsoSection.html +88 -88
  111. package/docs/interfaces/IAsoSingleOffer.html +88 -88
  112. package/docs/interfaces/IAuthToken.html +102 -102
  113. package/docs/interfaces/IColoredTextProps.html +74 -74
  114. package/docs/interfaces/IFlashApp.html +144 -144
  115. package/docs/interfaces/IFlashAppListItem.html +88 -88
  116. package/docs/interfaces/IGradient.html +95 -95
  117. package/docs/interfaces/IOffer.html +137 -137
  118. package/docs/interfaces/IOfferWallAuthConfig.html +130 -130
  119. package/docs/interfaces/IOfferWallAuthLocalization.html +102 -102
  120. package/docs/interfaces/IOfferWallAuthSubmitRequest.html +74 -74
  121. package/docs/interfaces/IOfferWallAuthSubmitResponse.html +74 -74
  122. package/docs/interfaces/IOfferWallHomeDialogData.html +95 -95
  123. package/docs/interfaces/IOfferWallOffer.html +109 -109
  124. package/docs/interfaces/IOfferWallResponse.html +81 -81
  125. package/docs/interfaces/IOfferWallSection.html +88 -88
  126. package/docs/interfaces/IPanelUser.html +1405 -1405
  127. package/docs/interfaces/IPush.html +95 -95
  128. package/docs/interfaces/IShape.html +102 -102
  129. package/docs/interfaces/IStroke.html +81 -81
  130. package/docs/interfaces/IUpsertFlashAppRequest.html +214 -214
  131. package/docs/interfaces/IUpsertFlashAppResponse.html +81 -81
  132. package/docs/modules/ASOConfigFetch.html +63 -63
  133. package/docs/modules/ASO_v0.html +96 -96
  134. package/docs/modules/ASO_v1.html +96 -96
  135. package/docs/modules/ASO_v2.html +92 -92
  136. package/docs/modules/ASO_v3.html +90 -90
  137. package/docs/modules/ASO_v4.html +86 -86
  138. package/docs/modules/ASO_v5.html +88 -88
  139. package/docs/modules.html +133 -133
  140. package/docs/variables/FlashAppSchema.html +83 -83
  141. package/docs/variables/PanelUserSchema.html +83 -83
  142. package/lib/app/app-integration.d.ts +53 -53
  143. package/lib/app/app-integration.js +63 -63
  144. package/lib/app/app-list-item.d.ts +5 -5
  145. package/lib/app/app-list-item.js +2 -2
  146. package/lib/app/app-type.d.ts +4 -4
  147. package/lib/app/app-type.js +8 -8
  148. package/lib/app/app.d.ts +178 -178
  149. package/lib/app/app.js +216 -216
  150. package/lib/general/cloudflare-domain.d.ts +42 -42
  151. package/lib/general/cloudflare-domain.js +12 -12
  152. package/lib/general/colored-text.d.ts +7 -7
  153. package/lib/general/colored-text.js +28 -28
  154. package/lib/general/domain.d.ts +92 -92
  155. package/lib/general/domain.js +38 -38
  156. package/lib/general/namecheap-domain.d.ts +80 -80
  157. package/lib/general/namecheap-domain.js +14 -14
  158. package/lib/general/push.d.ts +6 -6
  159. package/lib/general/push.js +2 -2
  160. package/lib/general/queue.d.ts +2 -2
  161. package/lib/general/queue.js +1 -1
  162. package/lib/general/shape.d.ts +18 -18
  163. package/lib/general/shape.js +33 -33
  164. package/lib/index.d.ts +25 -25
  165. package/lib/index.js +42 -42
  166. package/lib/keitaro/keitaro-campaign.d.ts +31 -31
  167. package/lib/keitaro/keitaro-campaign.js +5 -5
  168. package/lib/keitaro/keitaro-domain.d.ts +6 -6
  169. package/lib/keitaro/keitaro-domain.js +2 -2
  170. package/lib/keitaro/keitaro-offer.d.ts +7 -7
  171. package/lib/keitaro/keitaro-offer.js +2 -2
  172. package/lib/keitaro/keitaro-stream.d.ts +20 -20
  173. package/lib/keitaro/keitaro-stream.js +2 -2
  174. package/lib/models/cloudflare-domain.d.ts +42 -42
  175. package/lib/models/cloudflare-domain.js +12 -12
  176. package/lib/models/domain.d.ts +92 -92
  177. package/lib/models/domain.js +38 -38
  178. package/lib/models/namecheap-domain.d.ts +80 -80
  179. package/lib/models/namecheap-domain.js +14 -14
  180. package/lib/network/keitaro/http.d.ts +2 -2
  181. package/lib/network/keitaro/http.js +9 -9
  182. package/lib/network/keitaro/keitaro-service.d.ts +50 -50
  183. package/lib/network/keitaro/keitaro-service.js +257 -257
  184. package/lib/offers/list.d.ts +37 -37
  185. package/lib/offers/list.js +12 -12
  186. package/lib/offers/offer.d.ts +91 -91
  187. package/lib/offers/offer.js +42 -42
  188. package/lib/offers/offerwall/offerwall-home-dialog-data.d.ts +6 -6
  189. package/lib/offers/offerwall/offerwall-home-dialog-data.js +2 -2
  190. package/lib/offers/offerwall/offerwall-offer.d.ts +12 -12
  191. package/lib/offers/offerwall/offerwall-offer.js +2 -2
  192. package/lib/offers/offerwall/offerwall-response.d.ts +6 -6
  193. package/lib/offers/offerwall/offerwall-response.js +2 -2
  194. package/lib/offers/offerwall/offerwall-section.d.ts +6 -6
  195. package/lib/offers/offerwall/offerwall-section.js +2 -2
  196. package/lib/offers/section.d.ts +47 -47
  197. package/lib/offers/section.js +20 -20
  198. package/lib/panel/auth.d.ts +8 -8
  199. package/lib/panel/auth.js +2 -2
  200. package/lib/panel/flash/create-flash-app-request.d.ts +28 -28
  201. package/lib/panel/flash/create-flash-app-request.js +2 -2
  202. package/lib/panel/flash/upsert-flash-app-request.d.ts +27 -27
  203. package/lib/panel/flash/upsert-flash-app-request.js +2 -2
  204. package/lib/panel/user.d.ts +46 -46
  205. package/lib/panel/user.js +28 -28
  206. package/lib/shared/colored-text.d.ts +7 -7
  207. package/lib/shared/colored-text.js +28 -28
  208. package/lib/shared/offer.d.ts +12 -12
  209. package/lib/shared/offer.js +2 -2
  210. package/lib/shared/push.d.ts +6 -6
  211. package/lib/shared/push.js +2 -2
  212. package/lib/shared/queue.d.ts +1 -1
  213. package/lib/shared/queue.js +2 -2
  214. package/lib/shared/shape.d.ts +18 -18
  215. package/lib/shared/shape.js +36 -36
  216. package/lib/shared/single-offer.d.ts +5 -5
  217. package/lib/shared/single-offer.js +2 -2
  218. package/lib/utils/app-gathering-utils.d.ts +15 -15
  219. package/lib/utils/app-gathering-utils.js +2 -2
  220. package/lib/utils/general.d.ts +11 -11
  221. package/lib/utils/general.js +40 -40
  222. package/lib/utils/huawei/converter.d.ts +2 -2
  223. package/lib/utils/huawei/converter.js +53 -53
  224. package/lib/utils/keitaro-utils.d.ts +15 -15
  225. package/lib/utils/keitaro-utils.js +541 -541
  226. package/lib/utils/server-util.d.ts +19 -19
  227. package/lib/utils/server-util.js +115 -115
  228. package/package.json +46 -46
  229. package/src/app/app-integration.ts +66 -66
  230. package/src/app/app-list-item.ts +4 -4
  231. package/src/app/app-type.ts +3 -3
  232. package/src/app/app.ts +353 -353
  233. package/src/general/cloudflare-domain.ts +44 -44
  234. package/src/general/domain.ts +91 -75
  235. package/src/general/namecheap-domain.ts +56 -56
  236. package/src/general/push.ts +5 -5
  237. package/src/general/queue.ts +4 -4
  238. package/src/general/shape.tsx +55 -55
  239. package/src/index.ts +31 -31
  240. package/src/keitaro/keitaro-campaign.ts +35 -35
  241. package/src/keitaro/keitaro-domain.ts +5 -5
  242. package/src/keitaro/keitaro-offer.ts +6 -6
  243. package/src/keitaro/keitaro-stream.ts +19 -19
  244. package/src/network/keitaro/http.ts +8 -8
  245. package/src/network/keitaro/keitaro-service.ts +322 -322
  246. package/src/offers/list.ts +19 -19
  247. package/src/offers/offer.ts +80 -80
  248. package/src/offers/offerwall/offerwall-home-dialog-data.ts +6 -6
  249. package/src/offers/offerwall/offerwall-offer.ts +12 -12
  250. package/src/offers/offerwall/offerwall-response.ts +7 -7
  251. package/src/offers/offerwall/offerwall-section.ts +7 -7
  252. package/src/offers/section.ts +29 -29
  253. package/src/panel/auth.ts +8 -8
  254. package/src/panel/flash/upsert-flash-app-request.ts +37 -37
  255. package/src/panel/user.ts +38 -38
  256. package/src/utils/data.csv +65 -65
  257. package/src/utils/general.ts +36 -36
  258. package/src/utils/huawei/converter.ts +55 -55
  259. package/src/utils/keitaro-utils.ts +626 -626
  260. package/src/utils/map-apps.json +4747 -4747
  261. package/src/utils/server-util.ts +123 -123
  262. package/src/utils/update-postbacks.js +27 -27
  263. package/tsconfig.json +16 -16
@@ -1,123 +1,123 @@
1
- import { NodeSSH } from "node-ssh";
2
- import ChildProcess from 'child_process'
3
- const { promisify } = require('util');
4
- const execPromise = promisify(ChildProcess.exec)
5
-
6
- export let IP = "185.123.53.227"
7
- export let PASSWORD = "xUA3oOX06Kfc9m12rZ"
8
- export let HOST = "cg-main-server.com"
9
- export let PORT = 56777
10
-
11
- export class ServerUtil {
12
- DOMAIN_HOME = "/etc/nginx/sites-enabled"
13
-
14
- ssh?: NodeSSH
15
-
16
- constructor(ssh?: NodeSSH) {
17
- this.ssh = ssh
18
- }
19
-
20
- // Выконує команду або по SSH або локально, повертаючи текст незалежно від результату (помилка чи успіх)
21
- async exec(command: string, options?: any): Promise<string> {
22
- if (this.ssh) {
23
- return (await this.ssh.execCommand(command, options)).stdout
24
- } else {
25
- return await new Promise<string>((resolve) => {
26
- execPromise(command, (err: string, stdout: string) => {
27
- resolve(stdout)
28
- });
29
- });
30
- }
31
- }
32
-
33
- // Nginx
34
- async isNginxActive(): Promise<boolean> {
35
- try {
36
- let result = await this.exec('systemctl status nginx')
37
- if (result.includes("Active: active")) return true
38
- } catch (e) { console.error(e) }
39
-
40
- return false
41
- }
42
-
43
- // Mongo
44
- async isMongoActive(): Promise<boolean> {
45
- try {
46
- let result = await this.exec('systemctl status mongod')
47
- if (result.includes("Active: active")) return true
48
- } catch (e) { console.error(e) }
49
-
50
- return false
51
- }
52
-
53
- mongoInstallCommand = `
54
- echo "deb http://security.ubuntu.com/ubuntu focal-security main" | tee /etc/apt/sources.list.d/focal-security.list;
55
- apt-get update;
56
- apt-get install libssl1.1;
57
- rm /etc/apt/sources.list.d/focal-security.list;
58
-
59
- curl -fsSL https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add -;
60
- echo "deb http://security.ubuntu.com/ubuntu impish-security main" | tee /etc/apt/sources.list.d/impish-security.list;
61
- echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list;
62
- apt-get update;
63
- apt-get install -y mongodb-org;
64
- systemctl enable mongod.service;
65
- systemctl start mongod;
66
- `
67
-
68
-
69
-
70
- // Domains
71
-
72
- async domainNginxConfigExists(host: string): Promise<boolean> {
73
- try {
74
- let result = await this.exec(`ls ${this.DOMAIN_HOME}/${host}.nginx.ssl.conf`)
75
- if (result.includes("No such file or directory")) return false
76
- } catch (e) { console.error(e) }
77
-
78
- return true
79
- }
80
-
81
- async domainNginxCertsExist(host: string): Promise<boolean> {
82
-
83
- }
84
-
85
- // Certbot CRON
86
- async isCerbotActive(): Promise<boolean> {
87
- try {
88
- let result = await this.exec('which certbot')
89
- if (result.includes("/usr/bin/certbot")) return true
90
- } catch (e) { console.error(e) }
91
-
92
- return false
93
- }
94
-
95
- async setupCertbot(): Promise<boolean> {
96
- await this.exec(`apt-get install -y certbot python3-certbot-nginx;`)
97
-
98
- return true
99
- }
100
-
101
- // Git
102
- async refresh(): Promise<boolean> {
103
- // git stash; rm-rf built; git pull
104
- }
105
- }
106
-
107
-
108
- // (async () => {
109
- // const ssh = new NodeSSH()
110
-
111
- // await ssh.connect({
112
- // host: IP,
113
- // port: PORT,
114
- // username: `root`,
115
- // password: PASSWORD
116
- // })
117
-
118
- // let util = new ServerUtil(ssh)
119
-
120
- // console.log(`Nginx is active: ${await util.isNginxActive()}`)
121
-
122
- // process.exit(0)
123
- // })()
1
+ import { NodeSSH } from "node-ssh";
2
+ import ChildProcess from 'child_process'
3
+ const { promisify } = require('util');
4
+ const execPromise = promisify(ChildProcess.exec)
5
+
6
+ export let IP = "185.123.53.227"
7
+ export let PASSWORD = "xUA3oOX06Kfc9m12rZ"
8
+ export let HOST = "cg-main-server.com"
9
+ export let PORT = 56777
10
+
11
+ export class ServerUtil {
12
+ DOMAIN_HOME = "/etc/nginx/sites-enabled"
13
+
14
+ ssh?: NodeSSH
15
+
16
+ constructor(ssh?: NodeSSH) {
17
+ this.ssh = ssh
18
+ }
19
+
20
+ // Выконує команду або по SSH або локально, повертаючи текст незалежно від результату (помилка чи успіх)
21
+ async exec(command: string, options?: any): Promise<string> {
22
+ if (this.ssh) {
23
+ return (await this.ssh.execCommand(command, options)).stdout
24
+ } else {
25
+ return await new Promise<string>((resolve) => {
26
+ execPromise(command, (err: string, stdout: string) => {
27
+ resolve(stdout)
28
+ });
29
+ });
30
+ }
31
+ }
32
+
33
+ // Nginx
34
+ async isNginxActive(): Promise<boolean> {
35
+ try {
36
+ let result = await this.exec('systemctl status nginx')
37
+ if (result.includes("Active: active")) return true
38
+ } catch (e) { console.error(e) }
39
+
40
+ return false
41
+ }
42
+
43
+ // Mongo
44
+ async isMongoActive(): Promise<boolean> {
45
+ try {
46
+ let result = await this.exec('systemctl status mongod')
47
+ if (result.includes("Active: active")) return true
48
+ } catch (e) { console.error(e) }
49
+
50
+ return false
51
+ }
52
+
53
+ mongoInstallCommand = `
54
+ echo "deb http://security.ubuntu.com/ubuntu focal-security main" | tee /etc/apt/sources.list.d/focal-security.list;
55
+ apt-get update;
56
+ apt-get install libssl1.1;
57
+ rm /etc/apt/sources.list.d/focal-security.list;
58
+
59
+ curl -fsSL https://www.mongodb.org/static/pgp/server-4.4.asc | apt-key add -;
60
+ echo "deb http://security.ubuntu.com/ubuntu impish-security main" | tee /etc/apt/sources.list.d/impish-security.list;
61
+ echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.4 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.4.list;
62
+ apt-get update;
63
+ apt-get install -y mongodb-org;
64
+ systemctl enable mongod.service;
65
+ systemctl start mongod;
66
+ `
67
+
68
+
69
+
70
+ // Domains
71
+
72
+ async domainNginxConfigExists(host: string): Promise<boolean> {
73
+ try {
74
+ let result = await this.exec(`ls ${this.DOMAIN_HOME}/${host}.nginx.ssl.conf`)
75
+ if (result.includes("No such file or directory")) return false
76
+ } catch (e) { console.error(e) }
77
+
78
+ return true
79
+ }
80
+
81
+ async domainNginxCertsExist(host: string): Promise<boolean> {
82
+
83
+ }
84
+
85
+ // Certbot CRON
86
+ async isCerbotActive(): Promise<boolean> {
87
+ try {
88
+ let result = await this.exec('which certbot')
89
+ if (result.includes("/usr/bin/certbot")) return true
90
+ } catch (e) { console.error(e) }
91
+
92
+ return false
93
+ }
94
+
95
+ async setupCertbot(): Promise<boolean> {
96
+ await this.exec(`apt-get install -y certbot python3-certbot-nginx;`)
97
+
98
+ return true
99
+ }
100
+
101
+ // Git
102
+ async refresh(): Promise<boolean> {
103
+ // git stash; rm-rf built; git pull
104
+ }
105
+ }
106
+
107
+
108
+ // (async () => {
109
+ // const ssh = new NodeSSH()
110
+
111
+ // await ssh.connect({
112
+ // host: IP,
113
+ // port: PORT,
114
+ // username: `root`,
115
+ // password: PASSWORD
116
+ // })
117
+
118
+ // let util = new ServerUtil(ssh)
119
+
120
+ // console.log(`Nginx is active: ${await util.isNginxActive()}`)
121
+
122
+ // process.exit(0)
123
+ // })()
@@ -1,28 +1,28 @@
1
- const fs = require('fs');
2
- const axios = require('axios');
3
-
4
- async function fetchDataFromCSVFile(filePath) {
5
- fs.readFile(filePath, 'utf8', async (error, csvData) => {
6
- if (error) {
7
- console.error(error);
8
- return;
9
- }
10
-
11
- const rows = csvData.split('\n');
12
- const firstValues = rows.map(row => {
13
- const columns = row.split(';');
14
- return columns[0];
15
- });
16
-
17
- for (let value of firstValues) {
18
- const url = `https://aibprtsk.com/bab2832/postback?subid=${value}&status=sale&payout=70`; // Modify the URL pattern as per your requirements
19
- console.log(value)
20
- await axios.get(url)
21
- }
22
- });
23
- }
24
-
25
- // Example usage
26
- console.log(__dirname)
27
- const filePath = `${__dirname}/data.csv`;
1
+ const fs = require('fs');
2
+ const axios = require('axios');
3
+
4
+ async function fetchDataFromCSVFile(filePath) {
5
+ fs.readFile(filePath, 'utf8', async (error, csvData) => {
6
+ if (error) {
7
+ console.error(error);
8
+ return;
9
+ }
10
+
11
+ const rows = csvData.split('\n');
12
+ const firstValues = rows.map(row => {
13
+ const columns = row.split(';');
14
+ return columns[0];
15
+ });
16
+
17
+ for (let value of firstValues) {
18
+ const url = `https://aibprtsk.com/bab2832/postback?subid=${value}&status=sale&payout=70`; // Modify the URL pattern as per your requirements
19
+ console.log(value)
20
+ await axios.get(url)
21
+ }
22
+ });
23
+ }
24
+
25
+ // Example usage
26
+ console.log(__dirname)
27
+ const filePath = `${__dirname}/data.csv`;
28
28
  fetchDataFromCSVFile(filePath);
package/tsconfig.json CHANGED
@@ -1,16 +1,16 @@
1
- {
2
- "compilerOptions": {
3
- "target": "esnext",
4
- "lib": ["esnext"],
5
- "module": "commonjs",
6
- "declaration": true,
7
- "outDir": "./lib",
8
- "baseUrl": "./src",
9
- "rootDir": "./src",
10
- "jsx": "react-jsx",
11
- "strict": true,
12
- "moduleResolution": "node"
13
- },
14
- "include": ["src"],
15
- "exclude": ["node_modules", "**/__tests__/*"]
16
- }
1
+ {
2
+ "compilerOptions": {
3
+ "target": "esnext",
4
+ "lib": ["esnext"],
5
+ "module": "commonjs",
6
+ "declaration": true,
7
+ "outDir": "./lib",
8
+ "baseUrl": "./src",
9
+ "rootDir": "./src",
10
+ "jsx": "react-jsx",
11
+ "strict": true,
12
+ "moduleResolution": "node"
13
+ },
14
+ "include": ["src"],
15
+ "exclude": ["node_modules", "**/__tests__/*"]
16
+ }