@bprotsyk/aso-core 1.2.237 → 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 (86) hide show
  1. package/lib/app/app.d.ts +3 -2
  2. package/lib/app/app.js +2 -2
  3. package/lib/general/namecheap-domain.d.ts +1 -0
  4. package/lib/general/queue.d.ts +2 -1
  5. package/lib/general/queue.js +0 -1
  6. package/lib/general/shape.js +1 -4
  7. package/lib/index.d.ts +1 -1
  8. package/lib/index.js +1 -24
  9. package/lib/network/keitaro/http.d.ts +1 -2
  10. package/lib/network/keitaro/http.js +1 -4
  11. package/lib/network/keitaro/keitaro-service.js +1 -4
  12. package/lib/utils/keitaro-utils.js +1 -4
  13. package/lib/utils/server-util.d.ts +0 -7
  14. package/lib/utils/server-util.js +7 -68
  15. package/package.json +6 -6
  16. package/src/app/app.ts +3 -3
  17. package/src/general/domain.ts +17 -1
  18. package/src/index.ts +2 -3
  19. package/src/utils/server-util.ts +71 -194
  20. package/tsconfig.json +6 -7
  21. package/lib/aso/config/aso-config-v0.d.ts +0 -333
  22. package/lib/aso/config/aso-config-v0.js +0 -59
  23. package/lib/aso/config/aso-config-v1.d.ts +0 -330
  24. package/lib/aso/config/aso-config-v1.js +0 -58
  25. package/lib/aso/config/aso-config-v2.d.ts +0 -297
  26. package/lib/aso/config/aso-config-v2.js +0 -57
  27. package/lib/aso/config/aso-config-v3.d.ts +0 -294
  28. package/lib/aso/config/aso-config-v3.js +0 -58
  29. package/lib/aso/config/aso-config-v4.d.ts +0 -208
  30. package/lib/aso/config/aso-config-v4.js +0 -58
  31. package/lib/aso/config/aso-config-v5.d.ts +0 -227
  32. package/lib/aso/config/aso-config-v5.js +0 -58
  33. package/lib/aso/config/aso-default-config.d.ts +0 -57
  34. package/lib/aso/config/aso-default-config.js +0 -2
  35. package/lib/aso/config/aso-single-response.d.ts +0 -5
  36. package/lib/aso/config/aso-single-response.js +0 -2
  37. package/lib/aso/offer/aso-customized-offer.d.ts +0 -11
  38. package/lib/aso/offer/aso-customized-offer.js +0 -2
  39. package/lib/aso/offer/aso-offer-response.d.ts +0 -6
  40. package/lib/aso/offer/aso-offer-response.js +0 -2
  41. package/lib/aso/offer/aso-offer-section.d.ts +0 -6
  42. package/lib/aso/offer/aso-offer-section.js +0 -2
  43. package/lib/aso/offer/aso-single-offer.d.ts +0 -5
  44. package/lib/aso/offer/aso-single-offer.js +0 -2
  45. package/lib/aso/offer/config/aso-config-v0.d.ts +0 -271
  46. package/lib/aso/offer/config/aso-config-v0.js +0 -57
  47. package/lib/aso/offer/config/aso-config-v1.d.ts +0 -263
  48. package/lib/aso/offer/config/aso-config-v1.js +0 -57
  49. package/lib/aso/offer/config/aso-config-v2.d.ts +0 -230
  50. package/lib/aso/offer/config/aso-config-v2.js +0 -55
  51. package/lib/aso/offer/config/aso-config-v3.d.ts +0 -227
  52. package/lib/aso/offer/config/aso-config-v3.js +0 -56
  53. package/lib/aso/offer/config/aso-config-v4.d.ts +0 -205
  54. package/lib/aso/offer/config/aso-config-v4.js +0 -56
  55. package/lib/aso/offer/config/aso-default-config.d.ts +0 -56
  56. package/lib/aso/offer/config/aso-default-config.js +0 -2
  57. package/lib/aso/offer/config/aso-single-response.d.ts +0 -5
  58. package/lib/aso/offer/config/aso-single-response.js +0 -2
  59. package/lib/aso/offerwall/auth/offerwall-auth-config.d.ts +0 -14
  60. package/lib/aso/offerwall/auth/offerwall-auth-config.js +0 -2
  61. package/lib/aso/offerwall/auth/offerwall-auth-localization.d.ts +0 -8
  62. package/lib/aso/offerwall/auth/offerwall-auth-localization.js +0 -2
  63. package/lib/aso/offerwall/auth/offerwall-auth-submit-request.d.ts +0 -3
  64. package/lib/aso/offerwall/auth/offerwall-auth-submit-request.js +0 -2
  65. package/lib/aso/offerwall/auth/offerwall-auth-submit-response.d.ts +0 -3
  66. package/lib/aso/offerwall/auth/offerwall-auth-submit-response.js +0 -2
  67. package/lib/aso/offerwall/offerwall-home-dialog-data.d.ts +0 -6
  68. package/lib/aso/offerwall/offerwall-home-dialog-data.js +0 -2
  69. package/lib/aso/offerwall/offerwall-offer.d.ts +0 -8
  70. package/lib/aso/offerwall/offerwall-offer.js +0 -2
  71. package/lib/aso/offerwall/offerwall-response.d.ts +0 -6
  72. package/lib/aso/offerwall/offerwall-response.js +0 -2
  73. package/lib/aso/offerwall/offerwall-section.d.ts +0 -6
  74. package/lib/aso/offerwall/offerwall-section.js +0 -2
  75. package/lib/aso/usage-logs/aso-config-fetch-entry.d.ts +0 -28
  76. package/lib/aso/usage-logs/aso-config-fetch-entry.js +0 -2
  77. package/lib/flash/flash-app-integration.d.ts +0 -53
  78. package/lib/flash/flash-app-integration.js +0 -63
  79. package/lib/flash/flash-app-list-item.d.ts +0 -5
  80. package/lib/flash/flash-app-list-item.js +0 -2
  81. package/lib/flash/flash-app-type.d.ts +0 -4
  82. package/lib/flash/flash-app-type.js +0 -8
  83. package/lib/flash/flash-app.d.ts +0 -169
  84. package/lib/flash/flash-app.js +0 -215
  85. package/src/templates/nginx-template.conf +0 -35
  86. package/src/types/ssh2-sftp-client.d.ts +0 -59
@@ -1,120 +1,56 @@
1
1
  import { NodeSSH } from "node-ssh";
2
- import ChildProcess from "child_process";
3
- import Client from "ssh2-sftp-client";
4
- import fs from "fs";
5
- import mustache from "mustache";
6
- const { promisify } = require("util");
7
- const execPromise = promisify(ChildProcess.exec);
8
-
9
- export let IP = "185.123.53.227";
10
- export let PASSWORD = "xUA3oOX06Kfc9m12rZ";
11
- export let HOST = "cg-main-server.com";
12
- export let PORT = 56777;
2
+ import ChildProcess from 'child_process'
3
+ const { promisify } = require('util');
4
+ const execPromise = promisify(ChildProcess.exec)
13
5
 
14
- export class ServerUtil {
15
- DOMAIN_HOME = "/etc/nginx/sites-enabled";
16
-
17
- ssh?: NodeSSH;
18
-
19
- constructor(ssh?: NodeSSH) {
20
- this.ssh = ssh;
21
- }
22
-
23
- // Выконує команду або по SSH або локально, повертаючи текст незалежно від результату (помилка чи успіх)
24
- async exec(command: string, options?: any): Promise<string> {
25
- if (this.ssh) {
26
- return (await this.ssh.execCommand(command, options)).stdout;
27
- } else {
28
- return await new Promise<string>((resolve) => {
29
- execPromise(command, (err: string, stdout: string) => {
30
- resolve(stdout);
31
- });
32
- });
33
- }
34
- }
35
-
36
- // SSH
37
- async generateSSHKey(): Promise<string> {
38
- await this.exec(`ssh-keygen -t rsa -N '' -f ~/.ssh/id_rsa <<< n`);
39
- let sshFingerprint = await this.exec(`cat ~/.ssh/id_rsa.pub`);
40
- return sshFingerprint;
41
- }
42
-
43
- // create Directories in /Var
44
- async createDirectories(): Promise<void> {
45
- await this.exec(`mkdir -p /var/www/ai`);
46
- }
47
-
48
- // install git
49
- async installGit(): Promise<void> {
50
- await this.exec(`apt-get update; apt-get install -y git`);
51
- }
52
-
53
- // add ssh to bitbucket
54
- async addBitbucketToKnownHosts(): Promise<void> {
55
- await this.exec(`ssh-keyscan bitbucket.org >> ~/.ssh/known_hosts`);
56
- }
57
-
58
- // clone bitbucket Repository
59
- async cloneRepository(repoName: string, targetPath: string): Promise<void> {
60
- let gitResponse = await this.exec(
61
- `git clone git@bitbucket.org:bprtsk/${repoName}.git`,
62
- { cwd: targetPath }
63
- );
64
- if (
65
- gitResponse.includes(
66
- `Please make sure you have the correct access rights`
67
- )
68
- ) {
69
- throw new Error(`No access to the remote repository!`);
70
- }
71
- }
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
72
10
 
73
- // не знаю чи треба але додав ?
74
-
75
- // async checkoutBranch(branch: string, repoPath: string): Promise<void> {
76
- // await this.exec(`git checkout -b ${branch}; git branch --set-upstream-to=origin/${branch} ${branch}; git reset --hard origin/${branch};`, { cwd: repoPath });
77
- // }
11
+ export class ServerUtil {
12
+ DOMAIN_HOME = "/etc/nginx/sites-enabled"
78
13
 
79
- // не знаю чи треба але додав ?
14
+ ssh?: NodeSSH
80
15
 
81
- // async installJava(): Promise<void> {
82
- // await this.exec(`apt-get update; apt-get install -y default-jre default-jdk`);
83
- // }
16
+ constructor(ssh?: NodeSSH) {
17
+ this.ssh = ssh
18
+ }
84
19
 
85
- // install Nginx
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
+ }
86
32
 
87
- async installNginx(): Promise<void> {
88
- await this.exec(`apt-get update; apt-get install -y nginx`);
89
- await this.exec(`systemctl enable nginx`);
90
- await this.exec(`systemctl start nginx`);
91
- }
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) }
92
39
 
93
- // Nginx
94
- async isNginxActive(): Promise<boolean> {
95
- try {
96
- let result = await this.exec("systemctl status nginx");
97
- if (result.includes("Active: active")) return true;
98
- } catch (e) {
99
- console.error(e);
40
+ return false
100
41
  }
101
42
 
102
- return false;
103
- }
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) }
104
49
 
105
- // Mongo
106
- async isMongoActive(): Promise<boolean> {
107
- try {
108
- let result = await this.exec("systemctl status mongod");
109
- if (result.includes("Active: active")) return true;
110
- } catch (e) {
111
- console.error(e);
50
+ return false
112
51
  }
113
52
 
114
- return false;
115
- }
116
-
117
- mongoInstallCommand = `
53
+ mongoInstallCommand = `
118
54
  echo "deb http://security.ubuntu.com/ubuntu focal-security main" | tee /etc/apt/sources.list.d/focal-security.list;
119
55
  apt-get update;
120
56
  apt-get install libssl1.1;
@@ -127,103 +63,45 @@ export class ServerUtil {
127
63
  apt-get install -y mongodb-org;
128
64
  systemctl enable mongod.service;
129
65
  systemctl start mongod;
130
- `;
131
-
132
- // checking if nginx configuration exists
133
- async domainNginxConfigExists(host: string): Promise<boolean> {
134
- try {
135
- let result = await this.exec(
136
- `ls ${this.DOMAIN_HOME}/${host}.nginx.ssl.conf`
137
- );
138
- if (result.includes("No such file or directory")) return false;
139
- } catch (e) {
140
- console.error(e);
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
141
79
  }
142
80
 
143
- return true;
144
- }
81
+ async domainNginxCertsExist(host: string): Promise<boolean> {
145
82
 
146
- // checking if the ssl certificate exists
147
- async domainNginxCertsExist(host: string): Promise<boolean> {
148
- try {
149
- let result = await this.exec(`ls /etc/letsencrypt/live/${host}`);
150
- if (result.includes("No such file or directory")) return false;
151
- } catch (e) {
152
- console.error(e);
153
83
  }
154
- return true;
155
- }
156
-
157
- // Certbot CRON
158
- async isCerbotActive(): Promise<boolean> {
159
- try {
160
- let result = await this.exec("which certbot");
161
- if (result.includes("/usr/bin/certbot")) return true;
162
- } catch (e) {
163
- console.error(e);
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
164
93
  }
165
94
 
166
- return false;
167
- }
168
-
169
- // install certbot
170
- async setupCertbot(): Promise<boolean> {
171
- await this.exec(`apt-get install -y certbot python3-certbot-nginx;`);
172
-
173
- return true;
174
- }
175
- // creating a SSL certificate
176
- async setupSSL(email: string, host: string): Promise<void> {
177
- let certbotResponse = await this.exec(
178
- `certbot --non-interactive --agree-tos --nginx -m "${email}" -d "${host}"`
179
- );
180
- if (certbotResponse.includes(`Some challenges have failed.`)) {
181
- throw new Error("Certbot encountered an error");
95
+ async setupCertbot(): Promise<boolean> {
96
+ await this.exec(`apt-get install -y certbot python3-certbot-nginx;`)
97
+
98
+ return true
182
99
  }
183
- await this.exec(
184
- `echo "0 12 * * * /usr/bin/certbot renew --quiet" | crontab -`
185
- );
186
- }
187
-
188
- // Git
189
- async refresh(): Promise<boolean> {
190
- await this.exec(`git stash; rm-rf built; git pull`);
191
-
192
- return true;
193
- }
194
-
195
-
196
-
197
- async deployLandingPage(
198
- host: string,
199
- username: string,
200
- password: string,
201
- remotePath: string,
202
- files: any
203
- ): Promise<void> {
204
- let sftp = new Client();
205
- try {
206
- //connection to the server via sftp
207
- await sftp.connect({ host, username, password });
208
-
209
- // Завантажити файли на сервер
210
- for (const file of files) {
211
- await sftp.put(
212
- Buffer.from(file.content, "base64"),
213
- `${remotePath}/${file.name}`
214
- );
215
- }
216
- } finally {
217
- sftp.end();
100
+
101
+ // Git
102
+ async refresh(): Promise<boolean> {
103
+ // git stash; rm-rf built; git pull
218
104
  }
219
- }
220
-
221
- async generateNginxConfig(domain: string, rootPath: string): Promise<string> {
222
- const template = fs.readFileSync("templates/nginx-template.conf", "utf8");
223
- const config = mustache.render(template, { domain, rootPath });
224
- return config;
225
- }
226
-
227
105
  }
228
106
 
229
107
 
@@ -243,4 +121,3 @@ export class ServerUtil {
243
121
 
244
122
  // process.exit(0)
245
123
  // })()
246
-
package/tsconfig.json CHANGED
@@ -1,17 +1,16 @@
1
1
  {
2
2
  "compilerOptions": {
3
- "target": "esnext", /* Set the JavaScript language version for emitted JavaScript and include compatible library declarations. */
4
- "lib": [ "esnext"],
5
- "module": "NodeNext",
3
+ "target": "esnext",
4
+ "lib": ["esnext"],
5
+ "module": "commonjs",
6
6
  "declaration": true,
7
7
  "outDir": "./lib",
8
8
  "baseUrl": "./src",
9
- "rootDir": "src",
9
+ "rootDir": "./src",
10
10
  "jsx": "react-jsx",
11
11
  "strict": true,
12
- "moduleResolution": "nodenext"
12
+ "moduleResolution": "node"
13
13
  },
14
-
15
14
  "include": ["src"],
16
15
  "exclude": ["node_modules", "**/__tests__/*"]
17
- }
16
+ }
@@ -1,333 +0,0 @@
1
- import { IAsoDefaultConfig } from "./aso-default-config";
2
- export interface IConfig {
3
- id: number;
4
- name: string;
5
- email: string;
6
- bundle: string;
7
- skipping?: boolean;
8
- alghoritm?: string;
9
- ip: string;
10
- sshPassword: string;
11
- sshPort?: string;
12
- trackingLink: string;
13
- newTrackingLink?: string;
14
- clientSideValidation: boolean;
15
- host: string;
16
- fullAccess: boolean;
17
- appsflyerKey: string;
18
- onesignalKey: string;
19
- onesignalRestApiKey?: string;
20
- showVideo: boolean;
21
- appsflyerEnabled: boolean;
22
- singleFirst: boolean;
23
- authAdEnabled: boolean;
24
- allowedCountries: string;
25
- excludedCountries: string;
26
- supportUrl?: string;
27
- support?: {
28
- [key: string]: string;
29
- };
30
- privacyPolicyUrl: string;
31
- callCoolDown: number;
32
- smsCoolDown: number;
33
- maxSmsTries: number;
34
- maxCallTries: number;
35
- smscLogin: string;
36
- smscPassword: string;
37
- autoSmsCodeCatch: boolean;
38
- autoCallCodeCatch: boolean;
39
- localization?: ILocalizationMap | ILocalization;
40
- authorizationActionMapping: IAuthorizationActionMapping;
41
- offersSectionMapping: IOfferSectionMapping;
42
- configMapping: IConfigMapping;
43
- configEndpoint: string;
44
- offersEndpoint: string;
45
- offerEndpoint: string;
46
- nextActionEndpoint: string;
47
- currentActionEndpoint: string;
48
- codeValidationEndpoint: string;
49
- changeNumberEndpoint: string;
50
- imageEndpoint: string;
51
- categoriesQuery: string;
52
- phoneQuery: string;
53
- nameQuery: string;
54
- codeQuery: string;
55
- validityQuery: string;
56
- resetUserQuery: string;
57
- oldPhoneQuery: string;
58
- newPhoneQuery: string;
59
- appsflyerDataQuery: string;
60
- offerIdParameter: string;
61
- countryCodeParameter?: string;
62
- redirectHtmlName: string;
63
- redirectJsName: string;
64
- redirectFolderName?: string;
65
- redirectJsCustomNumberParameter?: string;
66
- apiPrefix?: string;
67
- emptyEmojiRequired?: boolean;
68
- skipCode: boolean;
69
- externalIpGeo: boolean;
70
- exportedTranslations?: boolean;
71
- readyForPanel?: boolean;
72
- oldHosts?: string[];
73
- version: number;
74
- }
75
- export interface IAuthorizationActionMapping {
76
- nextActionIn: string;
77
- hasNextAction: string;
78
- changeNumberCaption: string;
79
- nextActionCaption: string;
80
- nextActionPatternCaption: string;
81
- actualTitlePattern: string;
82
- expiredTitlePattern: string;
83
- subtitle: string;
84
- when: string;
85
- authorized: string;
86
- canChangeNumber: string;
87
- }
88
- export interface ILocalizationMap {
89
- [key: string]: ILocalization;
90
- }
91
- export interface ISectionPalette {
92
- titleBorder: string;
93
- titleText: string;
94
- offerBorder: string;
95
- buttonBorder: string;
96
- buttonBackground: string;
97
- buttonBackgroundPressed: string;
98
- buttonText: string;
99
- emojiBackground: string;
100
- emojiBorder: string;
101
- emojiCaptionBorder: string;
102
- emojiCaptionBackground: string;
103
- emojiCaption: string;
104
- }
105
- export interface IOfferResult {
106
- id: string;
107
- backgroundImage: string;
108
- foregroundImage: string;
109
- emoji: IOfferResultEmoji | null;
110
- buttonText: string;
111
- }
112
- export interface IOfferResultEmoji {
113
- emoji: string | null;
114
- caption: string | null;
115
- }
116
- export interface IOffersSection {
117
- id: number;
118
- offers: IOfferResult[];
119
- title: string;
120
- palette: ISectionPalette;
121
- }
122
- export interface ISectionPaletteMapping {
123
- titleBorder: string;
124
- titleText: string;
125
- offerBorder: string;
126
- buttonBorder: string;
127
- buttonBackground: string;
128
- buttonBackgroundPressed: string;
129
- buttonText: string;
130
- emojiBackground: string;
131
- emojiBorder: string;
132
- emojiCaptionBorder: string;
133
- emojiCaptionBackground: string;
134
- emojiCaption: string;
135
- }
136
- export interface IOfferSectionMapping {
137
- id: string;
138
- offers: string;
139
- title: string;
140
- palette: string;
141
- internal: [string, any][];
142
- }
143
- export interface IOfferResultMapping {
144
- id: string;
145
- backgroundImage: string;
146
- foregroundImage: string;
147
- emoji: string;
148
- emojiCaption: string;
149
- buttonText: string;
150
- mappingName: string;
151
- }
152
- export interface IOfferSectionMapping {
153
- id: string;
154
- offers: string;
155
- title: string;
156
- internal: [string, any][];
157
- }
158
- export interface ILocalization {
159
- numberWillReceiveACallPattern: string;
160
- numberReceivedACallPattern: string;
161
- numberReceivedASmsPattern: string;
162
- numberWillReceiveASmsPattern: string;
163
- enterLastFourDigits: string;
164
- enterCodeFromSms: string;
165
- callAgainSPattern: string;
166
- callAgain: string;
167
- smsAgain: string;
168
- smsAgainSPattern: string;
169
- changeNumber: string;
170
- sendSms: string;
171
- sendSmsSPattern: string;
172
- hhMm: string;
173
- unfortunatelyYourTriesLeft: string;
174
- introDialog_title: string;
175
- introDialog_message: string;
176
- introDialog_exit: string;
177
- introDialog_yes: string;
178
- introDialog_cancel: string;
179
- error_phone: string;
180
- error_name: string;
181
- error_server: string;
182
- error_invalidCode: string;
183
- changeNumber_title: string;
184
- changeNumber_message: string;
185
- changeNumber_no: string;
186
- changeNumber_yes: string;
187
- next_title: string;
188
- next_message: string;
189
- next_yes: string;
190
- next_no: string;
191
- yes: string;
192
- no: string;
193
- cancel: string;
194
- mainButton: string;
195
- codeButton: string;
196
- getFullAccess: string;
197
- guestPlay: string;
198
- guestLocked: string;
199
- yourLevel: string;
200
- supportCaption: string;
201
- somethingWentWrong: string;
202
- game_spin: string;
203
- game_balance: string;
204
- game_balance_pattern: string;
205
- game_win: string;
206
- game_win_pattern: string;
207
- game_authorize: string;
208
- game_demo_welcome: string;
209
- game_demo_available_after_auth: string;
210
- game_min_rate_error_pattern: string;
211
- auth_changeTitle: string;
212
- auth_changeMessage: string;
213
- auth_titleTop: IColoredString;
214
- auth_titleBottom: IColoredString;
215
- auth_getAccess: string;
216
- auth_subtitle: IColoredString;
217
- auth_cantBeEmpty: string;
218
- auth_nameHint: string;
219
- auth_changeNumber: IColoredString;
220
- auth_enterAsGuest: string;
221
- auth_privacyPolicyAcceptance: string;
222
- auth_privacyPolicy: IColoredString;
223
- }
224
- export interface IColoredString {
225
- text: string;
226
- colors: IColoredSpan[];
227
- mappingName?: string;
228
- }
229
- export interface IColoredSpan {
230
- from: number;
231
- to: number;
232
- color: string;
233
- }
234
- export interface IColoredStringMapping {
235
- text: string;
236
- colors: string;
237
- internal: [string, IColoredSpanMapping][];
238
- }
239
- export interface IColoredSpanMapping {
240
- from: string;
241
- to: string;
242
- color: string;
243
- }
244
- export interface IConfigMapping {
245
- id: string;
246
- fullAccess: string;
247
- showVideo: string;
248
- skipping?: string;
249
- alghoritm?: string;
250
- appsflyerEnabled: string;
251
- appsflyerKey: string;
252
- onesignalKey: string;
253
- singleFirst: string;
254
- allowedCountries: string;
255
- excludedCountries: string;
256
- supportUrl: string;
257
- privacyPolicyUrl: string;
258
- callCoolDown: string;
259
- smsCoolDown: string;
260
- maxSmsTries: string;
261
- maxCallTries: string;
262
- smscLogin: string;
263
- smscPassword: string;
264
- autoSmsCodeCatch: string;
265
- autoCallCodeCatch: string;
266
- localization: string;
267
- internal: [string, ILocalizationMapping][];
268
- }
269
- export interface ILocalizationMapping {
270
- numberWillReceiveACallPattern: string;
271
- numberReceivedACallPattern: string;
272
- numberReceivedASmsPattern: string;
273
- numberWillReceiveASmsPattern: string;
274
- enterLastFourDigits: string;
275
- enterCodeFromSms: string;
276
- callAgainSPattern: string;
277
- callAgain: string;
278
- smsAgain: string;
279
- smsAgainSPattern: string;
280
- sendSms: string;
281
- sendSmsSPattern: string;
282
- hhMm: string;
283
- unfortunatelyYourTriesLeft: string;
284
- game_spin: string;
285
- game_balance: string;
286
- game_balance_pattern: string;
287
- game_win: string;
288
- game_win_pattern: string;
289
- game_authorize: string;
290
- game_demo_welcome: string;
291
- game_demo_available_after_auth: string;
292
- game_min_rate_error_pattern: string;
293
- introDialog_title: string;
294
- introDialog_message: string;
295
- introDialog_yes: string;
296
- introDialog_exit: string;
297
- introDialog_cancel: string;
298
- error_phone: string;
299
- error_name: string;
300
- error_server: string;
301
- error_invalidCode: string;
302
- changeNumber_title: string;
303
- changeNumber_message: string;
304
- changeNumber_no: string;
305
- changeNumber_yes: string;
306
- next_title: string;
307
- next_message: string;
308
- next_yes: string;
309
- next_no: string;
310
- yes: string;
311
- no: string;
312
- cancel: string;
313
- getFullAccess: string;
314
- guestPlay: string;
315
- guestLocked: string;
316
- yourLevel: string;
317
- supportCaption: string;
318
- somethingWentWrong: string;
319
- auth_changeTitle: string;
320
- auth_changeMessage: string;
321
- auth_titleTop: string;
322
- auth_titleBottom: string;
323
- auth_getAccess: string;
324
- auth_cantBeEmpty: string;
325
- auth_subtitle: string;
326
- auth_nameHint: string;
327
- auth_changeNumber: string;
328
- auth_enterAsGuest: string;
329
- auth_privacyPolicyAcceptance: string;
330
- auth_privacyPolicy: string;
331
- internal: [string, IColoredStringMapping][];
332
- }
333
- export declare let toDefault: (config: IConfig) => IAsoDefaultConfig;