Layout DT


SUBMITTED BY: terrorxdroid

DATE: March 27, 2024, 5:31 p.m.

UPDATED: Oct. 2, 2024, 8:18 p.m.

FORMAT: Text only

SIZE: 114.3 kB

HITS: 725

  1. [
  2. {
  3. "id": 4884,
  4. "label": "Nome do app",
  5. "name": "APP_NAME",
  6. "value": "DTunnel VPN",
  7. "type": "STRING",
  8. "status": "ACTIVE",
  9. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  10. },
  11. {
  12. "id": 4885,
  13. "label": "Logo do app",
  14. "name": "APP_LOGO",
  15. "value": null,
  16. "type": "IMAGE",
  17. "status": "ACTIVE",
  18. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  19. },
  20. {
  21. "id": 4886,
  22. "label": "Imagem de fundo",
  23. "name": "APP_BACKGROUND_IMAGE",
  24. "value": null,
  25. "type": "IMAGE",
  26. "status": "ACTIVE",
  27. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  28. },
  29. {
  30. "id": 4887,
  31. "label": "Tipo do fundo do app",
  32. "name": "APP_BACKGROUND_TYPE",
  33. "value": {
  34. "options": [
  35. {
  36. "label": "Imagem",
  37. "value": "IMAGE"
  38. },
  39. {
  40. "label": "Cor",
  41. "value": "COLOR"
  42. }
  43. ],
  44. "selected": "COLOR"
  45. },
  46. "type": "SELECT",
  47. "status": "ACTIVE",
  48. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  49. },
  50. {
  51. "id": 4888,
  52. "label": "Cor de fundo",
  53. "name": "APP_BACKGROUND_COLOR",
  54. "value": "#080e16c7",
  55. "type": "COLOR",
  56. "status": "ACTIVE",
  57. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  58. },
  59. {
  60. "id": 4889,
  61. "label": "Cor do card inicial",
  62. "name": "APP_CARD_COLOR",
  63. "value": "#1d242e73",
  64. "type": "COLOR",
  65. "status": "ACTIVE",
  66. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  67. },
  68. {
  69. "id": 7679,
  70. "label": "Raio do card inicial",
  71. "name": "APP_CARD_RADIUS",
  72. "value": 20,
  73. "type": "INTEGER",
  74. "status": "ACTIVE",
  75. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  76. },
  77. {
  78. "id": 7680,
  79. "label": "Cor do card de status",
  80. "name": "APP_CARD_STATUS_COLOR",
  81. "value": "#1d242e73",
  82. "type": "COLOR",
  83. "status": "ACTIVE",
  84. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  85. },
  86. {
  87. "id": 7681,
  88. "label": "Raio do card de status",
  89. "name": "APP_CARD_STATUS_RADIUS",
  90. "value": 25,
  91. "type": "INTEGER",
  92. "status": "ACTIVE",
  93. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  94. },
  95. {
  96. "id": 4890,
  97. "label": "Cor do card de configurações",
  98. "name": "APP_CARD_CONFIG_COLOR",
  99. "value": "#3f055cc9",
  100. "type": "COLOR",
  101. "status": "ACTIVE",
  102. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  103. },
  104. {
  105. "id": 4891,
  106. "label": "Cor do fundo dos dialogs",
  107. "name": "APP_DIALOG_BACKGROUND_COLOR",
  108. "value": "#6e008aaf",
  109. "type": "COLOR",
  110. "status": "ACTIVE",
  111. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  112. },
  113. {
  114. "id": 11998,
  115. "label": "Cor do fundo do dialog de log",
  116. "name": "APP_DIALOG_LOGGER_COLOR",
  117. "value": "#3d0757c7",
  118. "type": "COLOR",
  119. "status": "ACTIVE",
  120. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  121. },
  122. {
  123. "id": 4892,
  124. "label": "Cor das bordas",
  125. "name": "APP_BORDER_COLOR",
  126. "value": "#1d242e73",
  127. "type": "COLOR",
  128. "status": "ACTIVE",
  129. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  130. },
  131. {
  132. "id": 7682,
  133. "label": "Cor dos inputs",
  134. "name": "APP_INPUT_COLOR",
  135. "value": "#1d242e73",
  136. "type": "COLOR",
  137. "status": "ACTIVE",
  138. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  139. },
  140. {
  141. "id": 7683,
  142. "label": "Raio dos inputs",
  143. "name": "APP_INPUT_RADIUS",
  144. "value": 25,
  145. "type": "INTEGER",
  146. "status": "ACTIVE",
  147. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  148. },
  149. {
  150. "id": 4893,
  151. "label": "Cor dos textos",
  152. "name": "APP_TEXT_COLOR",
  153. "value": "#FFFFFFFF",
  154. "type": "COLOR",
  155. "status": "ACTIVE",
  156. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  157. },
  158. {
  159. "id": 4894,
  160. "label": "Cor dos botões",
  161. "name": "APP_BUTTON_COLOR",
  162. "value": "#1d242e73",
  163. "type": "COLOR",
  164. "status": "ACTIVE",
  165. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  166. },
  167. {
  168. "id": 7684,
  169. "label": "Raio dos botões",
  170. "name": "APP_BUTTON_RADIUS",
  171. "value": 25,
  172. "type": "INTEGER",
  173. "status": "ACTIVE",
  174. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  175. },
  176. {
  177. "id": 4895,
  178. "label": "Cor dos icones",
  179. "name": "APP_ICON_COLOR",
  180. "value": "#FFFFFFFF",
  181. "type": "COLOR",
  182. "status": "ACTIVE",
  183. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  184. },
  185. {
  186. "id": 4896,
  187. "label": "Exibir modo de conexão",
  188. "name": "APP_SHOW_CONNECTION_MODE",
  189. "value": false,
  190. "type": "BOOLEAN",
  191. "status": "ACTIVE",
  192. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  193. },
  194. {
  195. "id": 23755,
  196. "label": "Atualizar automaticamente as configurações ao lançar uma atualização.",
  197. "name": "APP_CONFIG_AUTO_UPDATE",
  198. "value": true,
  199. "type": "BOOLEAN",
  200. "status": "ACTIVE",
  201. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  202. },
  203. {
  204. "id": 4897,
  205. "label": "Iniciar o app automaticamente ao reiniciar o dispositivo",
  206. "name": "APP_AUTO_START",
  207. "value": false,
  208. "type": "BOOLEAN",
  209. "status": "ACTIVE",
  210. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  211. },
  212. {
  213. "id": 7685,
  214. "label": "Usar limiter de conexão",
  215. "name": "APP_CONNECTION_LIMITER",
  216. "value": true,
  217. "type": "BOOLEAN",
  218. "status": "ACTIVE",
  219. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  220. },
  221. {
  222. "id": 12496,
  223. "label": "Usar botão de atualizações",
  224. "name": "APP_BTN_UPDATE_ENABLED",
  225. "value": false,
  226. "type": "BOOLEAN",
  227. "status": "ACTIVE",
  228. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  229. },
  230. {
  231. "id": 12497,
  232. "label": "Usar botão de registros",
  233. "name": "APP_BTN_LOGGER_ENABLED",
  234. "value": false,
  235. "type": "BOOLEAN",
  236. "status": "ACTIVE",
  237. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  238. },
  239. {
  240. "id": 12498,
  241. "label": "Usar botão de pagina webview",
  242. "name": "APP_BTN_PAGE_ENABLED",
  243. "value": false,
  244. "type": "BOOLEAN",
  245. "status": "ACTIVE",
  246. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  247. },
  248. {
  249. "id": 14144,
  250. "label": "Ativar dialog de erros",
  251. "name": "APP_DIALOG_ERROR_ENABLED",
  252. "value": false,
  253. "type": "BOOLEAN",
  254. "status": "ACTIVE",
  255. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  256. },
  257. {
  258. "id": 14145,
  259. "label": "Ativar dialog de checkuser",
  260. "name": "APP_CHECKUSER_DIALOG_ENABLED",
  261. "value": false,
  262. "type": "BOOLEAN",
  263. "status": "ACTIVE",
  264. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  265. },
  266. {
  267. "id": 14146,
  268. "label": "Ativar toast de sucesso",
  269. "name": "APP_SUCCESS_TOAST_ENABLED",
  270. "value": true,
  271. "type": "BOOLEAN",
  272. "status": "ACTIVE",
  273. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  274. },
  275. {
  276. "id": 14147,
  277. "label": "Ativar toast de erro",
  278. "name": "APP_ERROR_TOAST_ENABLED",
  279. "value": true,
  280. "type": "BOOLEAN",
  281. "status": "ACTIVE",
  282. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  283. },
  284. {
  285. "id": 14148,
  286. "label": "Usar layout webview",
  287. "name": "APP_LAYOUT_WEBVIEW_ENABLED",
  288. "value": true,
  289. "type": "BOOLEAN",
  290. "status": "ACTIVE",
  291. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  292. },
  293. {
  294. "id": 4898,
  295. "label": "Mensagem",
  296. "name": "APP_MESSAGE",
  297. "value": null,
  298. "type": "TEXT",
  299. "status": "ACTIVE",
  300. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  301. },
  302. {
  303. "id": 8645,
  304. "label": "URL de atualização do aplicativo",
  305. "name": "APP_UPDATE_URL",
  306. "value": null,
  307. "type": "URL",
  308. "status": "ACTIVE",
  309. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  310. },
  311. {
  312. "id": 4899,
  313. "label": "Tipo de mensagem",
  314. "name": "APP_MESSAGE_TYPE",
  315. "value": {
  316. "options": [
  317. {
  318. "label": "Alerta",
  319. "value": "ALERT"
  320. },
  321. {
  322. "label": "Informação",
  323. "value": "INFO"
  324. },
  325. {
  326. "label": "Boas vindas",
  327. "value": "WELCOME"
  328. },
  329. {
  330. "label": "Sem mensagem",
  331. "value": "NONE"
  332. }
  333. ],
  334. "selected": "NONE"
  335. },
  336. "type": "SELECT",
  337. "status": "ACTIVE",
  338. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  339. },
  340. {
  341. "id": 14149,
  342. "label": "LAYOUT WEBVIEW (POR SUA CONTA E RISCO)",
  343. "name": "APP_LAYOUT_WEBVIEW",
  344. "value": "<!DOCTYPE html>\n<html lang=\"pt-br\">\n <head>\n <meta charset=\"UTF-8\" />\n <meta http-equiv=\"X-UA-Compatible\" content=\"IE=edge\" />\n <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\" />\n\n <title>5777879193 - @PoggVpn</title>\n\n <style>\n :root {\n font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif;\n line-height: 1.5;\n font-weight: 400;\n\n font-synthesis: none;\n text-rendering: optimizeLegibility;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n text-size-adjust: 100%;\n -webkit-text-size-adjust: 100%;\n\n /*-------->MENU<--------*/\n\n /*IMAGEM DE FUNDO PRINCIPAL*/\n --imagem-de-fundo: url('https://bafkreighln2izjgvidrzifz2qrk2hk5ww7gt4m7kw3ffd3tfzoknr7hdyu.ipfs.w3s.link');\n\n /*CONTAINER DE STATUS VPN*/\n --cor-de-fundo-do-container-de-status-da-vpn: rgba(161, 42, 246, 0.1);\n --cor-do-icone-do-container-de-status-da-vpn: rgba(255, 255, 255, 1);\n --cor-do-texto-do-container-de-status-da-vpn: rgba(255, 255, 255, 1);\n\n /*CONTAINER DE SELECIONAR OPERADORA*/\n --cor-de-fundo-do-campo-de-selecionar-operadora: rgba(161, 42, 246, 0.5);\n --borda-do-container-de-selecionar-operadora: rgba(68, 60, 119, 1);\n --cor-do-icone-de-chip-do-campo-de-selecionar-operadora: rgba(255, 255, 255, 1);\n --cor-do-texto-do-campo-de-selecionar-operadora: rgba(255, 255, 255, 1);\n\n /*CONTAINER PRINCIPAL*/\n --cor-de-fundo-do-container-principal: rgba(161, 42, 246, 0.5);\n --borda-do-container-principal: rgba(68, 60, 119, 1);\n\n --borda-do-header-do-container-principal: rgba(68, 60, 119, 1);\n\n --cor-de-fundo-dos-input-do-container-principal: rgba(187, 127, 243, 0.2);\n --cor-da-borda-dos-input-do-container-principal: rgba(68, 60, 119, 1);\n --cor-dos-icones-dos-input-do-container-principal: rgba(255, 255, 255, 1);\n --cor-do-texto-dos-input-do-container-principal: rgba(255, 255, 255, 1);\n --cor-do-texto-dos-input-do-container-principal-quando-nao-ta-selecionado: rgba(\n 255,\n 255,\n 255,\n 1\n );\n\n --cor-de-fundo-do-botao-do-container-principal: rgba(187, 127, 243, 0.2);\n --cor-da-borda-do-botao-do-container-principal: rgba(68, 60, 119, 1);\n --cor-do-icone-do-botao-do-container-principal: rgba(255, 255, 255, 1);\n --cor-do-texto-do-botao-do-container-principal: rgba(255, 255, 255, 1);\n\n /*CONTAINER DOS CONTROLES*/\n --cor-de-fundo-do-container-de-controles: rgba(161, 42, 246, 0.5);\n --cor-da-borda-do-container-de-controles: rgba(68, 60, 119, 1);\n\n --cor-de-fundo-do-botao-do-container-de-controles: rgba(104, 3, 202, 1);\n --cor-da-borda-do-botao-do-container-de-controles: rgba(68, 60, 119, 1);\n --cor-do-icone-do-botao-do-container-de-controles: rgba(255, 255, 255, 1);\n\n --cor-de-fundo-do-botao-do-meio-do-container-de-controles: rgba(68, 60, 119, 1);\n --cor-da-borda-do-botao-do-meio-do-container-de-controles: rgba(161, 42, 246, 0.5);\n\n /* CONTAINER DAS CONFIGURAÇÕES */\n --cor-de-fundo-do-container-da-lista-de-configuracoes: rgba(161, 42, 246, 0.4);\n --cor-da-borda-do-container-da-lista-de-configuracoes: rgba(68, 60, 119, 0.5);\n\n --cor-de-fundo-do-header-do-container-da-lista-de-configuracoes: rgba(187, 127, 243, 1);\n --cor-do-icone-de-fechar-do-header-do-container-da-lista-de-configuracoes: rgba(\n 255,\n 255,\n 255,\n 1\n );\n\n --cor-de-fundo-do-container-da-lista-de-categorias-de-configuracoes: transparent;\n\n --cor-de-fundo-da-categoria: transparent;\n --cor-de-fundo-do-header-da-categoria: rgba(187, 127, 243, 1);\n --cor-da-borda-do-header-da-categoria: rgba(127, 71, 203, 1);\n --cor-do-text-do-header-da-categoria: rgba(255, 255, 255, 1);\n --cor-do-icone-do-header-da-categoria: rgba(255, 255, 255, 1);\n\n --cor-de-fundo-da-lista-de-configuracoes: transparent;\n --cor-de-fundo-do-item-da-configuracao: rgba(187, 127, 243, 1);\n --cor-do-texto-do-titulo-do-item-da-configuracao: rgba(255, 255, 255, 1);\n --cor-do-texto-da-descricao-do-item-da-configuracao: rgba(255, 255, 255, 1);\n --cor-do-modo-da-conexao-do-item-da-configuracao: rgba(255, 255, 255, 1);\n\n /* CHECKUSER PRINCIPAL */\n --cor-de-fundo-do-container-do-checkuser-principal: rgba(161, 42, 246, 0.8);\n --cor-de-fundo-do-header-do-container-do-checkuser-principal: rgba(187, 127, 243, 1);\n --cor-do-icone-do-header-do-container-do-checkuser-principal: rgba(255, 255, 255, 1);\n\n --cor-da-borda-do-icone-de-sucesso: rgba(255, 255, 255, 1);\n --cor-do-icone-de-sucesso: rgba(255, 255, 255, 1);\n\n --cor-de-fundo-da-lista-de-dados-de-login: transparent;\n --cor-de-fundo-dos-dados-de-login: rgba(187, 127, 243, 1);\n --cor-dos-icones-dos-dados-de-login: rgba(255, 255, 255, 1);\n --cor-dos-textos-dos-dados-de-login: rgba(255, 255, 255, 1);\n\n /* CONTAINER DE CARREGAMENTO */\n --cor-de-fundo-do-container-de-carregamento: rgba(161, 42, 246, 0.8);\n --cor-de-fundo-do-header-do-container-de-carregamento: rgba(187, 127, 243, 1);\n --cor-do-icone-do-header-do-container-de-carregamento: rgba(255, 255, 255, 1);\n\n /* CONTAINER DE PERFIL DO USUÁRIO */\n --cor-de-fundo-do-container-do-perfil-do-usuario: rgba(161, 42, 246, 0.8);\n --cor-de-fundo-do-header-do-container-do-perfil-do-usuario: transparent;\n --cor-da-borda-do-header-do-container-do-perfil-do-usuario: rgba(187, 127, 243, 1);\n\n --cor-de-fundo-da-lista-do-container-do-perfil-do-usuario: transparent;\n --cor-de-fundo-dos-items-do-container-do-perfil-do-usuario: rgba(187, 127, 243, 1);\n --cor-de-fundo-dos-icones-do-container-do-perfil-do-usuario: rgba(187, 127, 243, 1);\n\n --cor-da-borda-de-nao-ver-o-usuario-do-container-do-perfil-do-usuario: rgba(\n 255,\n 255,\n 255,\n 1\n );\n --cor-do-icone-de-dentro-do-close-do-container-do-perfil-do-usuario: rgba(255, 255, 255, 1);\n --cor-do-titulo-de-nao-ver-o-usuario-do-container-do-perfil-do-usuario: rgba(\n 255,\n 255,\n 255,\n 1\n );\n --cor-da-descricao-de-nao-ver-o-usuario-do-container-do-perfil-do-usuario: rgba(\n 255,\n 255,\n 255,\n 1\n );\n\n --cor-de-fundo-dos-termos-do-container-do-perfil-do-usuario: rgba(11, 26, 59, 0.5);\n\n /* CONTAINER DE FERRAMENTAS */\n --cor-da-borda-do-titulo-do-container-de-ferramentas: rgba(255, 255, 255, 1);\n --cor-do-texto-do-titulo-do-container-de-ferramentas: rgba(255, 255, 255, 1);\n\n --cor-da-borda-dos-botoes-do-container-de-ferramentas: #cc60ff;\n --cor-de-fundo-dos-botoes-do-container-de-ferramentas: rgba(161, 42, 246, 0.5);\n --cor-da-sombra-dos-botoes-do-container-de-ferramentas: rgba(0, 0, 0, 0.25);\n --cor-dos-icones-dos-botoes-do-container-de-ferramentas: rgba(255, 255, 255, 1);\n --cor-dos-textos-dos-botoes-do-container-de-ferramentas: rgba(255, 255, 255, 1);\n\n /* MODAL SPEEDTEST */\n --cor-do-header-do-modal-do-speedtest: rgba(187, 127, 243, 1);\n --cor-de-fundo-do-modal-do-speedtest: rgba(187, 127, 243, 1);\n --cor-do-icone-do-header-do-modal-do-speedtest: rgba(255, 255, 255, 1);\n\n /* MODAL ERROR */\n --cor-do-header-do-modal-de-error: rgba(158, 36, 36, 0.8);\n --cor-de-fundo-do-modal-de-error: rgba(53, 46, 57, 0.9);\n --cor-do-icone-do-header-do-modal-de-error: rgba(255, 255, 255, 1);\n\n /* MODAL LOGS */\n --cor-do-header-do-modal-de-logs: rgba(187, 127, 243, 1);\n --cor-de-fundo-do-modal-de-logs: rgba(53, 46, 57, 0.9);\n --cor-do-texto-do-registro-do-modal-de-logs: rgba(255, 255, 255, 1);\n }\n\n * {\n margin: 0;\n padding: 0;\n\n box-sizing: border-box;\n }\n\n html,\n body,\n main {\n width: 100%;\n height: 100%;\n }\n\n body {\n background: var(--imagem-de-fundo);\n background-repeat: no-repeat;\n background-position: center;\n background-size: cover;\n }\n\n main {\n max-width: 500px;\n\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 10px;\n\n margin: auto;\n\n position: relative;\n\n overflow: hidden;\n }\n\n main section.vpnStatus {\n width: auto;\n height: 40px;\n\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 5px;\n\n margin-top: 5%;\n padding: 0px 10px;\n\n border-radius: 20px;\n\n background-color: var(--cor-de-fundo-do-container-de-status-da-vpn);\n }\n\n main section.vpnStatus svg {\n color: var(--cor-do-icone-do-container-de-status-da-vpn);\n }\n\n main section.vpnStatus span {\n color: var(--cor-do-texto-do-container-de-status-da-vpn);\n }\n\n section.local-ip {\n width: auto;\n height: 40px;\n\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 5px;\n\n margin-top: 5%;\n padding: 0px 10px;\n\n border-radius: 20px;\n\n background-color: var(--cor-de-fundo-do-container-de-status-da-vpn);\n }\n\n section.local-ip svg {\n color: var(--cor-do-icone-do-container-de-status-da-vpn);\n }\n\n section.local-ip span {\n text-align: center;\n color: var(--cor-do-texto-do-container-de-status-da-vpn);\n }\n\n main section.home {\n width: 100%;\n max-width: 500px;\n height: auto;\n\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 10px;\n\n position: relative;\n\n padding: 0px 10px;\n }\n\n main section.home header {\n width: 100%;\n height: auto;\n\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n main section.home header img.logo {\n width: 60%;\n max-width: 100px;\n height: auto;\n }\n\n main section.home div.carrierSelector {\n width: 100%;\n height: 50px;\n\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 20px;\n\n padding: 0px 10px;\n\n border: 1px solid var(--borda-do-container-de-selecionar-operadora);\n border-radius: 10px;\n\n overflow: hidden;\n\n background-color: var(--cor-de-fundo-do-campo-de-selecionar-operadora);\n }\n\n main section.home div.carrierSelector svg {\n width: 20px;\n height: 20px;\n\n color: var(--cor-do-icone-de-chip-do-campo-de-selecionar-operadora);\n }\n\n main section.home div.carrierSelector span {\n width: 100%;\n max-width: 100%;\n height: 100%;\n max-height: 100%;\n\n display: flex;\n justify-content: center;\n align-items: center;\n\n color: var(--cor-do-texto-do-campo-de-selecionar-operadora);\n\n overflow: none;\n }\n\n main section.home div.container {\n width: 100%;\n height: 200px;\n\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n\n border: 1px solid var(--borda-do-container-principal);\n border-radius: 10px;\n\n background: var(--cor-de-fundo-do-container-principal);\n }\n\n main section.home div.container header {\n width: 100%;\n height: 50px;\n\n display: flex;\n align-items: center;\n\n padding: 0px 5px;\n\n border-bottom: 1px solid var(--borda-do-header-do-container-principal);\n\n overflow: hidden;\n }\n\n main section.home div.container form {\n width: 100%;\n height: auto;\n\n display: flex;\n flex-direction: column;\n align-items: center;\n gap: 10px;\n\n padding: 10px;\n }\n\n main section.home div.container form div {\n width: 90%;\n height: 40px;\n\n display: flex;\n align-items: center;\n\n position: relative;\n\n padding: 0px 0px 0px 5px;\n\n border-radius: 20px;\n border: 1px solid var(--cor-da-borda-dos-input-do-container-principal);\n\n overflow: hidden;\n\n background-color: var(--cor-de-fundo-dos-input-do-container-principal);\n }\n\n main section.home div.container form div svg {\n width: 40px;\n height: 40px;\n\n padding: 10px;\n\n color: var(--cor-dos-icones-dos-input-do-container-principal);\n }\n\n main section.home div.container form div input {\n width: calc(100% - 40px);\n height: 100%;\n\n border: 0;\n outline: none;\n\n color: var(--cor-do-texto-dos-input-do-container-principal);\n\n background-color: transparent;\n }\n\n main section.home div.container form div svg.eye {\n position: absolute;\n right: 0;\n }\n\n .eye-none {\n display: none;\n }\n .eye-block {\n display: block;\n }\n\n main section.home div.container form div input::placeholder {\n color: var(--cor-do-texto-dos-input-do-container-principal-quando-nao-ta-selecionado);\n }\n\n main section.home div.container form div.buttons {\n height: 40px;\n\n display: flex;\n justify-content: center;\n align-items: center;\n gap: 10px;\n\n border: 0;\n padding-left: 3px;\n\n background: transparent;\n }\n\n main section.home div.container form div button#startStopVpn {\n flex: 1;\n height: 40px;\n\n display: flex;\n align-items: center;\n justify-content: center;\n gap: 10px;\n\n padding: 10px;\n\n border: 1px solid var(--cor-da-borda-do-botao-do-container-principal);\n border-radius: 20px;\n\n background: var(--cor-de-fundo-do-botao-do-container-principal);\n }\n\n main section.home div.container form div button#buttonLogs {\n width: 40px;\n height: 40px;\n\n display: flex;\n justify-content: center;\n align-items: center;\n\n border: 1px solid var(--cor-da-borda-do-botao-do-container-principal);\n border-radius: 50%;\n\n background: var(--cor-de-fundo-do-botao-do-container-principal);\n }\n\n main section.home div.container form button svg {\n color: var(--cor-do-icone-do-botao-do-container-principal);\n }\n\n main section.home div.container form button span {\n color: var(--cor-do-texto-do-botao-do-container-principal);\n }\n\n main section.controls {\n width: 90%;\n height: 50px;\n\n display: flex;\n align-items: center;\n gap: 15px;\n\n position: absolute;\n bottom: 10px;\n z-index: 999;\n\n padding: 0px 10px;\n\n border: 1px solid var(--cor-da-borda-do-container-de-controles);\n border-radius: 25px;\n\n background: var(--cor-de-fundo-do-container-de-controles);\n }\n\n main section.controls button {\n width: 40px;\n height: 40px;\n\n display: flex;\n align-items: center;\n justify-content: center;\n\n border: 0px solid var(--cor-da-borda-do-botao-do-container-de-controles);\n border-radius: 50%;\n\n background: var(--cor-de-fundo-do-botao-do-container-de-controles);\n }\n\n main section.controls button:nth-child(2) {\n margin-right: auto;\n }\n\n main section.controls button svg {\n color: var(--cor-do-icone-do-botao-do-container-de-controles);\n }\n\n main section.controls button#backToHome {\n width: 60px;\n height: 60px;\n\n margin-left: auto;\n margin-right: auto;\n\n position: absolute;\n top: -50%;\n left: 0;\n right: 0;\n\n border: 1px solid var(--cor-da-borda-do-botao-do-meio-do-container-de-controles);\n\n background: var(--cor-de-fundo-do-botao-do-meio-do-container-de-controles);\n }\n\n main section.controls button#backToHome::before {\n width: 60px;\n height: 60px;\n\n content: '';\n\n position: absolute;\n top: -6px;\n left: -6px;\n right: 0;\n bottom: 0px;\n z-index: 2;\n\n margin-left: auto;\n margin-right: auto;\n\n border: 5px solid var(--cor-da-borda-do-botao-do-meio-do-container-de-controles);\n border-radius: 50%;\n }\n\n main section.listOfCarriers {\n width: calc(100% - 10px);\n height: 70%;\n\n display: flex;\n flex-direction: column;\n align-items: center;\n\n position: absolute;\n top: 13%;\n\n border: 1px solid var(--cor-da-borda-do-container-da-lista-de-configuracoes);\n border-radius: 10px;\n\n overflow-y: auto;\n\n opacity: 0;\n transform: scale(0);\n transform-origin: center;\n transition: all 0.3s ease 0.1s;\n\n background: var(--cor-de-fundo-do-container-da-lista-de-configuracoes);\n backdrop-filter: blur(10px);\n }\n\n main section.listOfCarriers.active {\n opacity: 1;\n transform: scale(1);\n }\n\n main section.listOfCarriers .header-list {\n width: 100%;\n height: 50px;\n\n display: flex;\n align-items: center;\n\n padding: 10px;\n\n border: 1px solid var();\n\n background: var(--cor-de-fundo-do-header-do-container-da-lista-de-configuracoes);\n }\n\n main section.listOfCarriers header svg.bi-x-lg {\n margin: 0px 0px 0px auto;\n\n color: var(--cor-do-icone-de-fechar-do-header-do-container-da-lista-de-configuracoes);\n }\n\n main section.listOfCarriers section.list-container {\n width: 100%;\n height: 100%;\n\n display: flex;\n flex-direction: column;\n gap: 20px;\n\n margin: 10px 0px;\n padding: 0px 10px;\n\n overflow-y: auto;\n\n background: var(--cor-de-fundo-do-container-da-lista-de-categorias-de-configuracoes);\n }\n\n main section.listOfCarriers section.list-container div.category {\n width: 100%;\n height: auto;\n\n display: flex;\n flex-direction: column;\n gap: 10px;\n\n border-radius: 5px;\n\n background: var(--cor-de-fundo-da-categoria);\n }\n\n main section.listOfCarriers section.list-container div.category header {\n width: 100%;\n height: 50px;\n min-height: 50px;\n\n display: flex;\n justify-content: space-between;\n align-items: center;\n\n padding: 0px 5px;\n\n border-bottom: 1px solid var(--cor-da-borda-do-header-da-categoria);\n border-radius: 5px;\n\n background: var(--cor-de-fundo-do-header-da-categoria);\n }\n\n main section.listOfCarriers section.list-container div.category header h1 {\n color: var(--cor-do-text-do-header-da-categoria);\n font-weight: 400;\n font-size: 1rem;\n }\n\n main section.listOfCarriers section.list-container div.category header svg {\n color: var(--cor-do-icone-do-header-da-categoria);\n transition: all 0.3s ease 0.3s;\n }\n\n main section.listOfCarriers section.list-container div.category ul.configs {\n width: 100%;\n max-height: 0px;\n\n display: flex;\n flex-direction: column;\n gap: 10px;\n\n overflow-y: auto;\n overflow-x: hidden;\n\n background: var(--cor-de-fundo-da-lista-de-configuracoes);\n\n transition: all 0.3s ease 0.3s;\n }\n\n main section.listOfCarriers section.list-container div.category ul.configs li {\n width: 100%;\n height: 60px;\n\n display: flex;\n align-items: center;\n gap: 3px;\n\n padding: 5px;\n\n border-radius: 5px;\n\n background: var(--cor-de-fundo-do-item-da-configuracao);\n }\n\n main section.listOfCarriers section.list-container div.category ul.configs li div.logo {\n width: auto;\n height: 100%;\n\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n main section.listOfCarriers section.list-container div.category ul.configs li div.logo img {\n width: 40px;\n height: auto;\n }\n\n main\n section.listOfCarriers\n section.list-container\n div.category\n ul.configs\n li\n div.description {\n width: 150px;\n height: 100%;\n\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n justify-items: center;\n align-content: center;\n\n overflow: hidden;\n }\n\n main\n section.listOfCarriers\n section.list-container\n div.category\n ul.configs\n li\n div.description\n h1 {\n width: 100%;\n height: 30px;\n\n display: flex;\n justify-content: center;\n\n color: var(--cor-do-texto-do-titulo-do-item-da-configuracao);\n font-size: 0.6rem;\n font-weight: 400;\n\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n main\n section.listOfCarriers\n section.list-container\n div.category\n ul.configs\n li\n div.description\n p {\n width: 100%;\n height: 30px;\n\n display: flex;\n justify-content: flex-end;\n align-items: end;\n\n color: var(--cor-do-texto-da-descricao-do-item-da-configuracao);\n font-size: 0.6rem;\n\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n }\n\n main section.listOfCarriers section.list-container div.category ul.configs li div.mode {\n width: 50px;\n height: 100%;\n\n margin-left: auto;\n\n display: flex;\n justify-content: flex-end;\n align-items: end;\n }\n\n main section.listOfCarriers section.list-container div.category ul.configs li div.mode p {\n color: var(--cor-do-modo-da-conexao-do-item-da-configuracao);\n font-size: 0.6rem;\n }\n\n section.main-checkuser {\n width: 95%;\n height: 70%;\n\n position: absolute;\n top: 8%;\n\n margin: auto;\n\n border-radius: 5px;\n\n overflow: hidden;\n\n background: var(--cor-de-fundo-do-container-do-checkuser-principal);\n\n opacity: 0;\n transform: scale(0);\n transform-origin: center;\n transition: all 0.3s ease 0.1s;\n }\n\n section.main-checkuser.show {\n opacity: 1;\n transform: scale(1);\n }\n\n @media (min-width: 320px) {\n section.main-checkuser {\n height: 55%;\n\n top: 50%;\n bottom: 50%;\n }\n }\n\n section.main-checkuser header {\n width: 100%;\n height: 10%;\n max-height: 50px;\n\n display: flex;\n align-items: center;\n justify-content: flex-end;\n\n padding: 10px;\n\n background: var(--cor-de-fundo-do-header-do-container-do-checkuser-principal);\n }\n\n section.main-checkuser header svg {\n color: var(--cor-do-icone-do-header-do-container-do-checkuser-principal);\n }\n\n section.main-checkuser section.container-content-checkuser {\n width: 100%;\n height: 100%;\n\n display: flex;\n flex-direction: column;\n align-items: center;\n }\n\n section.main-checkuser section.container-content-checkuser div.connected-success {\n width: 50%;\n max-width: 100px;\n height: 50%;\n max-height: 100px;\n\n display: flex;\n justify-content: center;\n align-items: center;\n\n margin-top: 20px;\n margin-bottom: 20px;\n\n border: 1px solid var(--cor-da-borda-do-icone-de-sucesso);\n border-radius: 50%;\n\n animation: pulse 1s infinite;\n }\n\n section.main-checkuser section.container-content-checkuser div.connected-success svg {\n width: 50%;\n height: 50%;\n\n color: var(--cor-do-icone-de-sucesso);\n }\n\n @keyframes pulse {\n 0% {\n box-shadow: 0 0 0 0 rgba(0, 255, 0, 0.7);\n }\n 70% {\n box-shadow: 0 0 0 20px rgba(0, 255, 0, 0);\n }\n 100% {\n box-shadow: 0 0 0 0 rgba(0, 255, 0, 0);\n }\n }\n\n section.main-checkuser section.container-content-checkuser ul {\n width: 100%;\n height: auto;\n\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n\n gap: 10px;\n\n padding: 0px 10px;\n\n list-style: none;\n }\n\n section.main-checkuser section.container-content-checkuser ul li {\n width: 100%;\n height: 50px;\n\n display: flex;\n align-items: center;\n\n padding: 0px 10px;\n\n border-radius: 5px;\n\n background: var(--cor-de-fundo-dos-dados-de-login);\n }\n\n section.main-checkuser section.container-content-checkuser ul li svg {\n margin-right: 10px;\n\n color: var(--cor-dos-icones-dos-dados-de-login);\n }\n\n section.main-checkuser section.container-content-checkuser ul li span {\n color: var(--cor-dos-textos-dos-dados-de-login);\n }\n\n section.loading {\n width: 95%;\n height: auto;\n\n position: absolute;\n top: 50%;\n left: 0;\n right: 0;\n transform: translateY(-50%);\n\n margin: auto;\n\n border-radius: 5px;\n\n overflow-x: hidden;\n\n opacity: 0;\n transform: scale(0);\n transform-origin: center;\n transition: all 0.3s ease 0.1s;\n\n background: var(--cor-de-fundo-do-container-de-carregamento);\n }\n\n section.loading.show {\n opacity: 1;\n transform: scale(1);\n }\n\n section.loading header {\n width: 100%;\n height: 10%;\n max-height: 50px;\n\n display: flex;\n align-items: center;\n justify-content: flex-end;\n\n padding: 10px;\n\n background: var(--cor-de-fundo-do-header-do-container-de-carregamento);\n }\n\n section.loading header svg {\n color: var(--cor-do-icone-do-header-do-container-de-carregamento);\n }\n\n section.loading div.loading-container {\n width: 100px;\n height: 100px;\n\n margin: 30px auto;\n\n border: 4px solid #ffffff;\n border-top: 4px solid transparent;\n border-radius: 50%;\n\n animation: spin 0.5s linear infinite;\n }\n\n @keyframes spin {\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n }\n\n section.profile-checkuser {\n width: 100%;\n height: 100%;\n\n display: flex;\n flex-direction: column;\n\n position: absolute;\n top: 0;\n left: 100%;\n right: 0;\n bottom: 0;\n\n background: var(--imagem-de-fundo);\n background-repeat: no-repeat;\n background-position: center;\n background-size: cover;\n\n transition: transform 0.5s ease-in-out;\n }\n\n section.profile-checkuser.show {\n transform: translateX(-100%);\n }\n\n section.profile-checkuser header,\n section.profile-checkuser section.terms header {\n width: 95%;\n height: 40px;\n\n display: flex;\n align-items: center;\n\n margin: 0 auto;\n\n background: var(--cor-de-fundo-do-header-do-container-do-perfil-do-usuario);\n }\n\n section.profile-checkuser header h1,\n section.profile-checkuser section.terms header h1 {\n width: 95%;\n\n color: #ffffff;\n font-weight: 400;\n font-size: 1rem;\n text-align: center;\n\n margin: 0 auto;\n\n border-bottom: 4px solid var(--cor-da-borda-do-header-do-container-do-perfil-do-usuario);\n }\n\n section.profile-checkuser div.not-view-user {\n display: none;\n flex-direction: column;\n align-items: center;\n gap: 15px;\n\n padding: 15px 10px;\n }\n\n section.profile-checkuser div.not-view-user.show {\n display: flex;\n }\n\n section.profile-checkuser div.not-view-user div.circle {\n width: 100px;\n height: 100px;\n\n display: flex;\n justify-content: center;\n align-items: center;\n\n border: 2px solid var(--cor-da-borda-de-nao-ver-o-usuario-do-container-do-perfil-do-usuario);\n border-radius: 50%;\n }\n\n section.profile-checkuser div.not-view-user div.circle svg {\n width: 50%;\n height: 50%;\n\n color: var(--cor-do-icone-de-dentro-do-close-do-container-do-perfil-do-usuario);\n }\n\n section.profile-checkuser div.not-view-user h2 {\n width: 100%;\n\n color: var(--cor-do-titulo-de-nao-ver-o-usuario-do-container-do-perfil-do-usuario);\n text-align: center;\n font-size: 1rem;\n }\n\n section.profile-checkuser div.not-view-user p {\n color: var(--cor-da-descricao-de-nao-ver-o-usuario-do-container-do-perfil-do-usuario);\n text-align: center;\n font-size: 0.8rem;\n }\n\n section.profile-checkuser ul {\n width: 100%;\n height: auto;\n\n display: none;\n flex-direction: column;\n gap: 20px;\n\n list-style: none;\n\n padding: 10px;\n\n background: var(--cor-de-fundo-da-lista-do-container-do-perfil-do-usuario);\n }\n\n section.profile-checkuser ul.show {\n display: grid;\n }\n\n section.profile-checkuser ul li {\n width: 95%;\n height: 40px;\n\n display: grid;\n align-items: center;\n\n margin: 0px auto;\n\n position: relative;\n\n border-radius: 20px;\n\n background: var(--cor-de-fundo-dos-items-do-container-do-perfil-do-usuario);\n }\n\n section.profile-checkuser ul li svg {\n width: 50px;\n height: 50px;\n\n position: absolute;\n left: -10px;\n\n padding: 10px;\n\n border-radius: 50%;\n box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);\n\n color: #ffffff;\n\n background: var(--cor-de-fundo-dos-icones-do-container-do-perfil-do-usuario);\n }\n\n section.profile-checkuser ul li svg.even {\n box-shadow: -1px 1px 2px rgba(0, 0, 0, 0.2);\n position: absolute;\n left: initial;\n right: -10px;\n }\n\n section.profile-checkuser ul li svg path {\n transform: scale(0.6);\n transform-origin: center;\n }\n\n section.profile-checkuser ul li span {\n margin-left: 45px;\n\n color: #ffffff;\n font-size: 0.8rem;\n }\n\n section.profile-checkuser ul li span.even {\n margin-left: auto;\n margin-right: 45px;\n }\n\n section.profile-checkuser section.terms {\n display: flex;\n flex-direction: column;\n\n width: 100%;\n height: auto;\n margin-top: 5%;\n }\n\n section.profile-checkuser section.terms p {\n width: 95%;\n height: auto;\n max-height: 210px;\n\n margin: 0 auto;\n padding: 10px;\n\n border-radius: 5px;\n\n overflow-y: auto;\n\n color: #ffffff;\n text-align: center;\n\n background: var(--cor-de-fundo-dos-termos-do-container-do-perfil-do-usuario);\n }\n\n @media (min-height: 700px) {\n section.profile-checkuser section.terms p {\n max-height: 350px;\n }\n }\n\n section.tools {\n width: 100%;\n height: 100%;\n\n display: flex;\n flex-direction: column;\n\n position: absolute;\n top: 0;\n left: 100%;\n right: 0;\n\n background: var(--imagem-de-fundo);\n background-repeat: no-repeat;\n background-position: center;\n background-size: cover;\n\n transition: transform 0.5s ease-in-out;\n }\n\n section.tools.show {\n transform: translateX(-100%);\n }\n\n section.tools header {\n width: 100%;\n height: auto;\n\n display: flex;\n justify-content: center;\n }\n\n section.tools header h1 {\n width: 90%;\n height: auto;\n\n padding: 10px;\n\n border-bottom: 3px solid var(--cor-da-borda-do-titulo-do-container-de-ferramentas);\n text-shadow: 0px 4px 4px var(--cor-da-sombra-dos-botoes-do-container-de-ferramentas);\n\n color: var(--cor-do-texto-do-titulo-do-container-de-ferramentas);\n font-weight: bold;\n font-size: 1rem;\n text-align: center;\n }\n\n section.tools section.container-tools {\n width: 100%;\n height: auto;\n\n display: flex;\n flex-direction: column;\n gap: 20px;\n\n margin: 40px 0px 0px 0px;\n padding: 0px 10px;\n }\n\n section.tools section.container-tools button {\n width: 100%;\n height: 50px;\n\n display: flex;\n align-items: center;\n gap: 9.5px;\n\n padding: 0px 16px;\n\n border: 1px solid var(--cor-da-borda-dos-botoes-do-container-de-ferramentas);\n border-radius: 25px;\n box-shadow: 0px 4px 4px var(--cor-da-sombra-dos-botoes-do-container-de-ferramentas);\n\n background: var(--cor-de-fundo-dos-botoes-do-container-de-ferramentas);\n }\n\n section.tools section.container-tools button svg {\n width: 20px;\n height: 20px;\n\n color: var(--cor-dos-icones-dos-botoes-do-container-de-ferramentas);\n }\n\n section.tools section.container-tools button span {\n color: var(--cor-dos-textos-dos-botoes-do-container-de-ferramentas);\n }\n\n section.modal-speedtest,\n section.modal-error-alert {\n width: 95%;\n max-width: 450px;\n height: 50%;\n\n position: absolute;\n top: 25%;\n transform: translate(-50%, -50%);\n\n z-index: 2;\n\n display: flex;\n flex-direction: column;\n\n border-radius: 5px;\n\n overflow-x: hidden;\n\n opacity: 0;\n transform: scale(0);\n transform-origin: center;\n transition: all 0.3s ease 0.1s;\n }\n\n section.modal-speedtest.show,\n section.modal-error-alert.show,\n section.modal-logs.show {\n opacity: 1;\n transform: scale(1);\n }\n\n section.modal-speedtest header,\n section.modal-error-alert header {\n width: 100%;\n height: 40px;\n\n display: flex;\n align-items: center;\n\n padding: 0px 10px;\n }\n\n section.modal-speedtest header {\n background-color: var(--cor-do-header-do-modal-do-speedtest);\n }\n\n section.modal-speedtest header h1,\n section.modal-error-alert header h1 {\n flex: 1;\n display: flex;\n justify-content: center;\n align-items: center;\n\n color: #ffffff;\n font-family: 'Roboto', sans-serif;\n font-weight: bolder;\n }\n\n section.modal-speedtest header svg,\n section.modal-error-alert header svg {\n margin-left: auto;\n\n color: var(--cor-do-icone-do-header-do-modal-do-speedtest);\n }\n\n section.modal-speedtest section,\n section.modal-error-alert section {\n width: 100%;\n height: calc(100% - 40px);\n\n position: relative;\n\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n }\n\n section.modal-speedtest section {\n background: var(--cor-de-fundo-do-modal-do-speedtest);\n }\n\n section.modal-speedtest section iframe {\n width: 100%;\n height: 100%;\n\n border: 0;\n\n overflow: hidden;\n }\n\n section.modal-error-alert header {\n background: var(--cor-do-header-do-modal-de-error);\n }\n\n section.modal-error-alert section {\n background: var(--cor-de-fundo-do-modal-de-error);\n }\n\n section.modal-error-alert section h1 {\n padding: 0px 10px;\n color: #ffffff;\n }\n\n section.modal-error-alert section p {\n margin-top: 10px;\n padding: 0px 10px;\n\n color: #ffffff;\n text-align: center;\n }\n\n section.modal-logs {\n width: 95%;\n max-width: 450px;\n height: auto;\n\n position: absolute;\n top: 15%;\n transform: translate(-50%, -50%);\n\n z-index: 2;\n\n display: flex;\n flex-direction: column;\n\n border-radius: 5px;\n\n overflow-x: hidden;\n\n opacity: 0;\n transform: scale(0);\n transform-origin: center;\n transition: all 0.3s ease 0.1s;\n }\n\n section.modal-logs header {\n width: 100%;\n height: 40px;\n\n display: flex;\n align-items: center;\n justify-content: flex-start;\n\n padding: 0px 10px;\n\n background: var(--cor-de-fundo-do-modal-de-logs);\n }\n\n section.modal-logs header h1 {\n font-size: 14px;\n color: #ffffff;\n }\n\n section.modal-logs p {\n height: 100%;\n /* min-height: 200px;\n max-height: 400px; */\n\n padding: 10px;\n\n font-size: 12px;\n text-align: left;\n color: var(--cor-do-texto-do-registro-do-modal-de-logs);\n\n overflow-y: auto;\n\n background: var(--cor-de-fundo-do-modal-de-logs);\n }\n\n section.modal-logs section {\n width: 100%;\n height: auto;\n\n display: flex;\n align-items: center;\n justify-content: space-between;\n\n padding: 10px 10px;\n\n border-top: 3px solid rgba(161, 161, 161, 1);\n\n background: var(--cor-de-fundo-do-modal-de-logs);\n }\n\n section.modal-logs section button {\n width: 45%;\n min-width: 115px;\n height: 40px;\n\n display: flex;\n align-items: center;\n justify-content: center;\n\n border: 1px solid rgba(97, 97, 97, 1);\n border-radius: 3px;\n\n color: #ffffff;\n\n background: rgba(46, 46, 46, 1);\n }\n\n section.renew-window {\n width: 100%;\n height: 100%;\n\n display: flex;\n flex-direction: column;\n\n position: absolute;\n top: 0;\n left: -100%;\n right: 100%;\n\n background: var(--imagem-de-fundo);\n background-repeat: no-repeat;\n background-position: center;\n background-size: cover;\n\n transition: transform 0.5s ease-in-out;\n }\n\n section.renew-window.show {\n transform: translateX(100%);\n }\n\n section.renew-window header {\n width: 100%;\n height: auto;\n\n display: flex;\n justify-content: center;\n }\n\n section.renew-window header h1 {\n width: 90%;\n height: auto;\n\n padding: 10px;\n\n border-bottom: 3px solid var(--cor-da-borda-do-titulo-do-container-de-ferramentas);\n text-shadow: 0px 4px 4px var(--cor-da-sombra-dos-botoes-do-container-de-ferramentas);\n\n color: var(--cor-do-texto-do-titulo-do-container-de-ferramentas);\n font-weight: bold;\n font-size: 1rem;\n text-align: center;\n }\n\n section.renew-window section {\n width: 100%;\n height: 100%;\n\n display: flex;\n justify-content: center;\n align-items: center;\n }\n\n section.renew-window section div {\n width: 90%;\n height: auto;\n\n display: flex;\n flex-direction: column;\n align-items: center;\n\n padding: 10px;\n margin: 0px 0px 40px 0px;\n\n border: 1px solid rgba(219, 142, 255, 1);\n border-radius: 37px;\n\n background: rgba(161, 42, 246, 0.5);\n }\n\n section.renew-window section div h1 {\n color: #ffffff;\n }\n\n section.renew-window section div p {\n width: 100%;\n\n display: flex;\n justify-content: center;\n align-items: center;\n\n margin-top: 15%;\n\n color: #ffffff;\n text-align: center;\n }\n </style>\n </head>\n <body>\n <main>\n <section class=\"home\">\n <header>\n <img\n class=\"logo\"\n src=\"https://bafkreihrtmmarih3ke6ho2upycwb7wvsr26pqfc22h53cwizduh37heamy.ipfs.w3s.link\"\n alt=\"logo\"\n />\n </header>\n\n <div class=\"carrierSelector\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-sd-card\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M6.25 3.5a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2zm2 0a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2zm2 0a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2zm2 0a.75.75 0 0 0-1.5 0v2a.75.75 0 0 0 1.5 0v-2z\"\n />\n <path\n fill-rule=\"evenodd\"\n d=\"M5.914 0H12.5A1.5 1.5 0 0 1 14 1.5v13a1.5 1.5 0 0 1-1.5 1.5h-9A1.5 1.5 0 0 1 2 14.5V3.914c0-.398.158-.78.44-1.06L4.853.439A1.5 1.5 0 0 1 5.914 0zM13 1.5a.5.5 0 0 0-.5-.5H5.914a.5.5 0 0 0-.353.146L3.146 3.561A.5.5 0 0 0 3 3.914V14.5a.5.5 0 0 0 .5.5h9a.5.5 0 0 0 .5-.5v-13z\"\n />\n </svg>\n\n <span>Selecione uma operadora</span>\n </div>\n\n <div class=\"container\">\n <form>\n <div>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-person\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10Z\"\n />\n </svg>\n\n <input id=\"inputUser\" type=\"text\" placeholder=\"Usuário\" />\n </div>\n\n <div>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-key\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M0 8a4 4 0 0 1 7.465-2H14a.5.5 0 0 1 .354.146l1.5 1.5a.5.5 0 0 1 0 .708l-1.5 1.5a.5.5 0 0 1-.708 0L13 9.207l-.646.647a.5.5 0 0 1-.708 0L11 9.207l-.646.647a.5.5 0 0 1-.708 0L9 9.207l-.646.647A.5.5 0 0 1 8 10h-.535A4 4 0 0 1 0 8zm4-3a3 3 0 1 0 2.712 4.285A.5.5 0 0 1 7.163 9h.63l.853-.854a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708 0l.646.647.646-.647a.5.5 0 0 1 .708 0l.646.647.793-.793-1-1h-6.63a.5.5 0 0 1-.451-.285A3 3 0 0 0 4 5z\"\n />\n <path d=\"M4 8a1 1 0 1 1-2 0 1 1 0 0 1 2 0z\" />\n </svg>\n\n <input id=\"inputPassword\" type=\"password\" placeholder=\"Senha\" />\n\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-eye-slash eye-hidden\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M13.359 11.238C15.06 9.72 16 8 16 8s-3-5.5-8-5.5a7.028 7.028 0 0 0-2.79.588l.77.771A5.944 5.944 0 0 1 8 3.5c2.12 0 3.879 1.168 5.168 2.457A13.134 13.134 0 0 1 14.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755-.165.165-.337.328-.517.486l.708.709z\"\n />\n <path\n d=\"M11.297 9.176a3.5 3.5 0 0 0-4.474-4.474l.823.823a2.5 2.5 0 0 1 2.829 2.829l.822.822zm-2.943 1.299.822.822a3.5 3.5 0 0 1-4.474-4.474l.823.823a2.5 2.5 0 0 0 2.829 2.829z\"\n />\n <path\n d=\"M3.35 5.47c-.18.16-.353.322-.518.487A13.134 13.134 0 0 0 1.172 8l.195.288c.335.48.83 1.12 1.465 1.755C4.121 11.332 5.881 12.5 8 12.5c.716 0 1.39-.133 2.02-.36l.77.772A7.029 7.029 0 0 1 8 13.5C3 13.5 0 8 0 8s.939-1.721 2.641-3.238l.708.709zm10.296 8.884-12-12 .708-.708 12 12-.708.708z\"\n />\n </svg>\n\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-eye eye-show eye-none\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M16 8s-3-5.5-8-5.5S0 8 0 8s3 5.5 8 5.5S16 8 16 8zM1.173 8a13.133 13.133 0 0 1 1.66-2.043C4.12 4.668 5.88 3.5 8 3.5c2.12 0 3.879 1.168 5.168 2.457A13.133 13.133 0 0 1 14.828 8c-.058.087-.122.183-.195.288-.335.48-.83 1.12-1.465 1.755C11.879 11.332 10.119 12.5 8 12.5c-2.12 0-3.879-1.168-5.168-2.457A13.134 13.134 0 0 1 1.172 8z\"\n />\n <path\n d=\"M8 5.5a2.5 2.5 0 1 0 0 5 2.5 2.5 0 0 0 0-5zM4.5 8a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0z\"\n />\n </svg>\n </div>\n\n <div class=\"buttons\">\n <button id=\"startStopVpn\" type=\"button\">\n <span id=\"startStopVpnButtonValue\">Conectar</span>\n </button>\n\n <button id=\"buttonLogs\" type=\"button\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-file-earmark-text\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M5.5 7a.5.5 0 0 0 0 1h5a.5.5 0 0 0 0-1h-5zM5 9.5a.5.5 0 0 1 .5-.5h5a.5.5 0 0 1 0 1h-5a.5.5 0 0 1-.5-.5zm0 2a.5.5 0 0 1 .5-.5h2a.5.5 0 0 1 0 1h-2a.5.5 0 0 1-.5-.5z\"\n />\n <path\n d=\"M9.5 0H4a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h8a2 2 0 0 0 2-2V4.5L9.5 0zm0 1v2A1.5 1.5 0 0 0 11 4.5h2V14a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1h5.5z\"\n />\n </svg>\n </button>\n </div>\n </form>\n </div>\n </section>\n\n <section class=\"vpnStatus\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-plug\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M6 0a.5.5 0 0 1 .5.5V3h3V.5a.5.5 0 0 1 1 0V3h1a.5.5 0 0 1 .5.5v3A3.5 3.5 0 0 1 8.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.083 2.083 0 0 1-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.922 1.922 0 0 0 3 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 0 1 4 6.5v-3a.5.5 0 0 1 .5-.5h1V.5A.5.5 0 0 1 6 0zM5 4v2.5A2.5 2.5 0 0 0 7.5 9h1A2.5 2.5 0 0 0 11 6.5V4H5z\"\n />\n </svg>\n\n <span>Desconectado</span>\n </section>\n\n <section class=\"local-ip\">\n <span>TIM: 192.168.0.1</span>\n </section>\n\n <section class=\"listOfCarriers\">\n <header class=\"header-list\">\n <svg\n id=\"close-modal-configs\"\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-x-lg\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8 2.146 2.854Z\"\n />\n </svg>\n </header>\n\n <section class=\"list-container\"></section>\n </section>\n\n <section class=\"loading\">\n <header>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-x-lg\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8 2.146 2.854Z\"\n />\n </svg>\n </header>\n\n <div class=\"loading-container\"></div>\n </section>\n\n <section class=\"main-checkuser\">\n <header>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-x-lg\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8 2.146 2.854Z\"\n />\n </svg>\n </header>\n\n <section class=\"container-content-checkuser\">\n <div class=\"connected-success\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-check2\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M13.854 3.646a.5.5 0 0 1 0 .708l-7 7a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6.5 10.293l6.646-6.647a.5.5 0 0 1 .708 0z\"\n />\n </svg>\n </div>\n\n <ul></ul>\n </section>\n </section>\n\n <section class=\"profile-checkuser\">\n <header>\n <h1>INFORMAÇÕES DO PERFIL</h1>\n </header>\n\n <div id=\"not-profile-user\" class=\"not-view-user\">\n <div class=\"circle\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-x-lg\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8 2.146 2.854Z\"\n />\n </svg>\n </div>\n\n <h2>NÃO FOI POSSÍVEL CARREGAR AS INFORMAÇÕES DO PERFIL</h2>\n <p>Tente conectar o seu usuário antes de verificar as informações do seu perfil</p>\n </div>\n\n <ul id=\"list-profile\">\n <li>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-person\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10Z\"\n />\n </svg>\n\n <span>NOME DE USUÁRIO: fulano</span>\n </li>\n\n <li>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-calendar3-week even\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z\"\n />\n <path\n d=\"M12 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-5 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm2-3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-5 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2z\"\n />\n </svg>\n\n <span class=\"even\">EXPIRAÇÃO: dd/mm/aaaa</span>\n </li>\n\n <li>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-hourglass-split\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M2.5 15a.5.5 0 1 1 0-1h1v-1a4.5 4.5 0 0 1 2.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 0 1 3.5 3V2h-1a.5.5 0 0 1 0-1h11a.5.5 0 0 1 0 1h-1v1a4.5 4.5 0 0 1-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0 1 12.5 13v1h1a.5.5 0 0 1 0 1h-11zm2-13v1c0 .537.12 1.045.337 1.5h6.326c.216-.455.337-.963.337-1.5V2h-7zm3 6.35c0 .701-.478 1.236-1.011 1.492A3.5 3.5 0 0 0 4.5 13s.866-1.299 3-1.48V8.35zm1 0v3.17c2.134.181 3 1.48 3 1.48a3.5 3.5 0 0 0-1.989-3.158C8.978 9.586 8.5 9.052 8.5 8.351z\"\n />\n </svg>\n\n <span>DIAS RESTANTES: 99</span>\n </li>\n\n <li>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-phone-flip even\"\n viewBox=\"0 0 16 16\"\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M11 1H5a1 1 0 0 0-1 1v6a.5.5 0 0 1-1 0V2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v6a.5.5 0 0 1-1 0V2a1 1 0 0 0-1-1Zm1 13a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-2a.5.5 0 0 0-1 0v2a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2v-2a.5.5 0 0 0-1 0v2ZM1.713 7.954a.5.5 0 1 0-.419-.908c-.347.16-.654.348-.882.57C.184 7.842 0 8.139 0 8.5c0 .546.408.94.823 1.201.44.278 1.043.51 1.745.696C3.978 10.773 5.898 11 8 11c.099 0 .197 0 .294-.002l-1.148 1.148a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708l-2-2a.5.5 0 1 0-.708.708l1.145 1.144L8 10c-2.04 0-3.87-.221-5.174-.569-.656-.175-1.151-.374-1.47-.575C1.012 8.639 1 8.506 1 8.5c0-.003 0-.059.112-.17.115-.112.31-.242.6-.376Zm12.993-.908a.5.5 0 0 0-.419.908c.292.134.486.264.6.377.113.11.113.166.113.169 0 .003 0 .065-.13.187-.132.122-.352.26-.677.4-.645.28-1.596.523-2.763.687a.5.5 0 0 0 .14.99c1.212-.17 2.26-.43 3.02-.758.38-.164.713-.357.96-.587.246-.229.45-.537.45-.919 0-.362-.184-.66-.412-.883-.228-.223-.535-.411-.882-.571ZM7.5 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1Z\"\n />\n </svg>\n\n <span class=\"even\">CONECTADOS: 01/03</span>\n </li>\n </ul>\n\n <section class=\"terms\">\n <header>\n <h1>TERMOS DE USO</h1>\n </header>\n\n <p>\n Ao comprar o acesso você aceita todos os nossos termos!\n <br />\n --------------------------------------------------------------\n <br />\n <br />\n 1- Todo e qualquer conteúdo acessado através do aplicativo é de responsabilidade do\n usuário! caso o usuário aproveitar-se de nosso vpn para cometer qualquer ato ilegal,\n será de total responsabilidade do usuário!\n <br />\n <br />\n 2- Em casos de falha na conexão entre em contato com ovendedor que lhe forneceu o acesso\n ao aplicativo!\n <br />\n <br />\n 3- NÃO realizamos a prática de REEMBOLSO, então realize o teste grátis antes de comprar!\n <br />\n <br />\n 4- Caso ocorra queda no sinal da operadora os dias offline serão adicionados de bônus.\n Peça esses dias ao seu vendedor! (Somente quedas geral, quedas de forma especifica, não\n nos responsabilizamos!)\n <br />\n <br />\n 5- Caso houver alguma falhas de conexão por negligencia do usuário em não saber\n configurar o aplicativo ou falha na rede móvel do usuário não disponibilizamos dias\n bônus para estes casos. Porém disponibilizamos suporte especializado para ajudar a\n solucionar esses problemas. Então em caso de falha de conexão entre em contato com seu\n vendedor!\n <br />\n <br />\n 6- Método de pagamento é pré-pago, ou seja você paga para usar. Caso desejar cancelar\n basta não renovar no próximo mês, que seu login será deletado automaticamente. Não temos\n termo de fidelidade em nossos serviços!\n <br />\n <br />\n 7- Não temos vínculos algum com a operadora do seu chip. Vendemos apenas a conexão SSH,\n que pode te liberar internet ilimitada através da conexão realizada no aplicativo!\n <br />\n <br />\n 8- Nosso produto é a conexão SSH, não vendemos internet, caso a operadora que você está\n utilizando não estiver conectando, você pode utilizar outra opção de operadora para\n realizar a conexão!\n <br />\n <br />\n 9- Ao utilizar nossa vpn você navegara de forma anônima na internet, dito isso você\n concorda em não acessar qualquer conteúdo ilegal ou não permitidos em seu estado!\n Atenciosamente Pogg corporation\n <br />\n --------------------------------------------------------------\n </p>\n </section>\n </section>\n\n <section class=\"tools\">\n <header>\n <h1>FERRAMENTAS</h1>\n </header>\n\n <section class=\"container-tools\">\n <button id=\"config-apn\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-tools\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M1 0 0 1l2.2 3.081a1 1 0 0 0 .815.419h.07a1 1 0 0 1 .708.293l2.675 2.675-2.617 2.654A3.003 3.003 0 0 0 0 13a3 3 0 1 0 5.878-.851l2.654-2.617.968.968-.305.914a1 1 0 0 0 .242 1.023l3.27 3.27a.997.997 0 0 0 1.414 0l1.586-1.586a.997.997 0 0 0 0-1.414l-3.27-3.27a1 1 0 0 0-1.023-.242L10.5 9.5l-.96-.96 2.68-2.643A3.005 3.005 0 0 0 16 3c0-.269-.035-.53-.102-.777l-2.14 2.141L12 4l-.364-1.757L13.777.102a3 3 0 0 0-3.675 3.68L7.462 6.46 4.793 3.793a1 1 0 0 1-.293-.707v-.071a1 1 0 0 0-.419-.814L1 0Zm9.646 10.646a.5.5 0 0 1 .708 0l2.914 2.915a.5.5 0 0 1-.707.707l-2.915-2.914a.5.5 0 0 1 0-.708ZM3 11l.471.242.529.026.287.445.445.287.026.529L5 13l-.242.471-.026.529-.445.287-.287.445-.529.026L3 15l-.471-.242L2 14.732l-.287-.445L1.268 14l-.026-.529L1 13l.242-.471.026-.529.445-.287.287-.445.529-.026L3 11Z\"\n />\n </svg>\n <span>CONFIGURAR APN</span>\n </button>\n\n <button id=\"battery-optimization\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-battery-half\"\n viewBox=\"0 0 16 16\"\n >\n <path d=\"M2 6h5v4H2V6z\" />\n <path\n d=\"M2 4a2 2 0 0 0-2 2v4a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V6a2 2 0 0 0-2-2H2zm10 1a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1H2a1 1 0 0 1-1-1V6a1 1 0 0 1 1-1h10zm4 3a1.5 1.5 0 0 1-1.5 1.5v-3A1.5 1.5 0 0 1 16 8z\"\n />\n </svg>\n <span> OTIMIZAÇÃO DE BATERIA </span>\n </button>\n\n <button id=\"speedtest\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-speedometer2\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M8 4a.5.5 0 0 1 .5.5V6a.5.5 0 0 1-1 0V4.5A.5.5 0 0 1 8 4zM3.732 5.732a.5.5 0 0 1 .707 0l.915.914a.5.5 0 1 1-.708.708l-.914-.915a.5.5 0 0 1 0-.707zM2 10a.5.5 0 0 1 .5-.5h1.586a.5.5 0 0 1 0 1H2.5A.5.5 0 0 1 2 10zm9.5 0a.5.5 0 0 1 .5-.5h1.5a.5.5 0 0 1 0 1H12a.5.5 0 0 1-.5-.5zm.754-4.246a.389.389 0 0 0-.527-.02L7.547 9.31a.91.91 0 1 0 1.302 1.258l3.434-4.297a.389.389 0 0 0-.029-.518z\"\n />\n <path\n fill-rule=\"evenodd\"\n d=\"M0 10a8 8 0 1 1 15.547 2.661c-.442 1.253-1.845 1.602-2.932 1.25C11.309 13.488 9.475 13 8 13c-1.474 0-3.31.488-4.615.911-1.087.352-2.49.003-2.932-1.25A7.988 7.988 0 0 1 0 10zm8-7a7 7 0 0 0-6.603 9.329c.203.575.923.876 1.68.63C4.397 12.533 6.358 12 8 12s3.604.532 4.923.96c.757.245 1.477-.056 1.68-.631A7 7 0 0 0 8 3z\"\n />\n </svg>\n <span> SPEED TESTE </span>\n </button>\n\n <button id=\"clean-data-app\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-trash\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M5.5 5.5A.5.5 0 0 1 6 6v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5Zm2.5 0a.5.5 0 0 1 .5.5v6a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5Zm3 .5a.5.5 0 0 0-1 0v6a.5.5 0 0 0 1 0V6Z\"\n />\n <path\n d=\"M14.5 3a1 1 0 0 1-1 1H13v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V4h-.5a1 1 0 0 1-1-1V2a1 1 0 0 1 1-1H6a1 1 0 0 1 1-1h2a1 1 0 0 1 1 1h3.5a1 1 0 0 1 1 1v1ZM4.118 4 4 4.059V13a1 1 0 0 0 1 1h6a1 1 0 0 0 1-1V4.059L11.882 4H4.118ZM2.5 3h11V2h-11v1Z\"\n />\n </svg>\n <span>RESETAR/LIMPAR APP</span>\n </button>\n </section>\n </section>\n\n <section class=\"renew-window\">\n <header>\n <h1>RENOVAR USUARIO</h1>\n </header>\n\n <section>\n <div>\n <h1>ATUALMENTE NÃO DISPONIVEL</h1>\n\n <p>\n ESTA FUNÇÃO SERVIRÁ PARA VOCÊ RENOVAR SEU LOGIN DE FORMA AUTOMATICA E TUDO DENTRO DO\n APP!\n </p>\n </div>\n </section>\n </section>\n\n <section class=\"modal-speedtest\">\n <header>\n <h1>SPEED TESTE</h1>\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-x-lg\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8 2.146 2.854Z\"\n />\n </svg>\n </header>\n\n <section>\n <iframe src=\"\"></iframe>\n </section>\n </section>\n\n <section class=\"modal-error-alert\">\n <header>\n <h1>ERROR</h1>\n\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-x-lg\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M2.146 2.854a.5.5 0 1 1 .708-.708L8 7.293l5.146-5.147a.5.5 0 0 1 .708.708L8.707 8l5.147 5.146a.5.5 0 0 1-.708.708L8 8.707l-5.146 5.147a.5.5 0 0 1-.708-.708L7.293 8 2.146 2.854Z\"\n />\n </svg>\n </header>\n\n <section>\n <h1>TITULO DO ERRO</h1>\n <p></p>\n </section>\n </section>\n\n <section class=\"modal-logs\">\n <header>\n <h1>REGISTRO</h1>\n </header>\n\n <p></p>\n\n <section>\n <button id=\"clean-data-logs\">LIMPAR</button>\n <button id=\"hidden-modal-logs\">FECHAR</button>\n </section>\n </section>\n\n <section class=\"controls\">\n <button id=\"refresh-button\" type=\"button\" title=\"Atualizar as configurações do app\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-arrow-clockwise\"\n viewBox=\"0 0 16 16\"\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M8 3a5 5 0 1 0 4.546 2.914.5.5 0 0 1 .908-.417A6 6 0 1 1 8 2v1z\"\n />\n <path\n d=\"M8 4.466V.534a.25.25 0 0 1 .41-.192l2.36 1.966c.12.1.12.284 0 .384L8.41 4.658A.25.25 0 0 1 8 4.466z\"\n />\n </svg>\n </button>\n\n <button id=\"renew\" type=\"button\" title=\"Renovar pagamento\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-cash-coin\"\n viewBox=\"0 0 16 16\"\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M11 15a4 4 0 1 0 0-8 4 4 0 0 0 0 8zm5-4a5 5 0 1 1-10 0 5 5 0 0 1 10 0z\"\n />\n <path\n d=\"M9.438 11.944c.047.596.518 1.06 1.363 1.116v.44h.375v-.443c.875-.061 1.386-.529 1.386-1.207 0-.618-.39-.936-1.09-1.1l-.296-.07v-1.2c.376.043.614.248.671.532h.658c-.047-.575-.54-1.024-1.329-1.073V8.5h-.375v.45c-.747.073-1.255.522-1.255 1.158 0 .562.378.92 1.007 1.066l.248.061v1.272c-.384-.058-.639-.27-.696-.563h-.668zm1.36-1.354c-.369-.085-.569-.26-.569-.522 0-.294.216-.514.572-.578v1.1h-.003zm.432.746c.449.104.655.272.655.569 0 .339-.257.571-.709.614v-1.195l.054.012z\"\n />\n <path\n d=\"M1 0a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h4.083c.058-.344.145-.678.258-1H3a2 2 0 0 0-2-2V3a2 2 0 0 0 2-2h10a2 2 0 0 0 2 2v3.528c.38.34.717.728 1 1.154V1a1 1 0 0 0-1-1H1z\"\n />\n <path d=\"M9.998 5.083 10 5a2 2 0 1 0-3.132 1.65 5.982 5.982 0 0 1 3.13-1.567z\" />\n </svg>\n </button>\n\n <button id=\"backToHome\" type=\"button\" title=\"Voltar para a página inicial\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-house\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M8.707 1.5a1 1 0 0 0-1.414 0L.646 8.146a.5.5 0 0 0 .708.708L2 8.207V13.5A1.5 1.5 0 0 0 3.5 15h9a1.5 1.5 0 0 0 1.5-1.5V8.207l.646.647a.5.5 0 0 0 .708-.708L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.707 1.5ZM13 7.207V13.5a.5.5 0 0 1-.5.5h-9a.5.5 0 0 1-.5-.5V7.207l5-5 5 5Z\"\n />\n </svg>\n </button>\n\n <button id=\"utilitys\" type=\"button\" title=\"utilidades\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-gear\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M8 4.754a3.246 3.246 0 1 0 0 6.492 3.246 3.246 0 0 0 0-6.492zM5.754 8a2.246 2.246 0 1 1 4.492 0 2.246 2.246 0 0 1-4.492 0z\"\n />\n <path\n d=\"M9.796 1.343c-.527-1.79-3.065-1.79-3.592 0l-.094.319a.873.873 0 0 1-1.255.52l-.292-.16c-1.64-.892-3.433.902-2.54 2.541l.159.292a.873.873 0 0 1-.52 1.255l-.319.094c-1.79.527-1.79 3.065 0 3.592l.319.094a.873.873 0 0 1 .52 1.255l-.16.292c-.892 1.64.901 3.434 2.541 2.54l.292-.159a.873.873 0 0 1 1.255.52l.094.319c.527 1.79 3.065 1.79 3.592 0l.094-.319a.873.873 0 0 1 1.255-.52l.292.16c1.64.893 3.434-.902 2.54-2.541l-.159-.292a.873.873 0 0 1 .52-1.255l.319-.094c1.79-.527 1.79-3.065 0-3.592l-.319-.094a.873.873 0 0 1-.52-1.255l.16-.292c.893-1.64-.902-3.433-2.541-2.54l-.292.159a.873.873 0 0 1-1.255-.52l-.094-.319zm-2.633.283c.246-.835 1.428-.835 1.674 0l.094.319a1.873 1.873 0 0 0 2.693 1.115l.291-.16c.764-.415 1.6.42 1.184 1.185l-.159.292a1.873 1.873 0 0 0 1.116 2.692l.318.094c.835.246.835 1.428 0 1.674l-.319.094a1.873 1.873 0 0 0-1.115 2.693l.16.291c.415.764-.42 1.6-1.185 1.184l-.291-.159a1.873 1.873 0 0 0-2.693 1.116l-.094.318c-.246.835-1.428.835-1.674 0l-.094-.319a1.873 1.873 0 0 0-2.692-1.115l-.292.16c-.764.415-1.6-.42-1.184-1.185l.159-.291A1.873 1.873 0 0 0 1.945 8.93l-.319-.094c-.835-.246-.835-1.428 0-1.674l.319-.094A1.873 1.873 0 0 0 3.06 4.377l-.16-.292c-.415-.764.42-1.6 1.185-1.184l.292.159a1.873 1.873 0 0 0 2.692-1.115l.094-.319z\"\n />\n </svg>\n </button>\n\n <button id=\"profile-button\" type=\"button\" title=\"Detalhes do usuário\">\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-person\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10Z\"\n />\n </svg>\n </button>\n </section>\n </main>\n\n <!-- VARIAVEIS DE CONSULTA -->\n <script>\n let dataCheckuser\n let zIndexContainers\n </script>\n\n <!-- FUNÇÕES DO APP -->\n <script>\n const dtStatusBarHeight = () => DtGetStatusBarHeight.execute()\n const dtNavHeight = () => DtGetNavigationBarHeight.execute()\n\n const dtGetLogs = () => DtGetLogs.execute()\n const dtClearLogs = () => DtClearLogs.execute()\n\n const dtVpnState = () => DtGetVpnState.execute()\n\n const dtTranslateText = (label) => DtTranslateText.execute(label)\n\n const dtStartVpn = () => DtExecuteVpnStart.execute()\n const dtStopVpn = () => DtExecuteVpnStop.execute()\n\n const dtUpdate = () => DtStartAppUpdate.execute()\n\n const dtAllConfigs = () => DtGetConfigs.execute()\n const dtSetConfig = (id) => DtSetConfig.execute(id)\n const dtGetDefaultConfig = () => DtGetDefaultConfig.execute()\n\n const dtGetUsername = () => DtUsername.get()\n const dtSetUsername = (username) => DtUsername.set(username)\n const dtGetPassword = () => DtPassword.get()\n const dtSetPassword = (password) => DtPassword.set(password)\n\n const dtApnConfig = () => DtStartApnActivity.execute()\n const dtBatteryOptimization = () => DtIgnoreBatteryOptimizations.execute()\n const dtCleanApp = () => DtCleanApp.execute()\n\n const dtGetNetworkName = () => Android.getNetworkName()\n const dtGetNetworkLocalIp = () => Android.getLocalIP()\n </script>\n\n <!-- FUNÇÕES PARA O APP -->\n <script>\n const dtVpnStateListener = (state) => {\n const stateVpn = vpnState(state)\n\n vpnStatus.html(stateVpn)\n }\n\n const dtOnNewLogListener = () => writeModalLogger()\n\n const dtConfigClickListener = () => {\n const user = dtGetUsername()\n const pass = dtGetPassword()\n const value = areaCarrierSelector()\n\n CarrierTextValue.html(value)\n\n inputUser.attr({ placeholder: inputUserPlaceholder(), value: inputUserValue() })\n inputPassword.attr({ placeholder: inputPasswordPlaceholder(), value: inputPasswordValue() })\n }\n\n const dtCheckUserModelListener = (model) => {\n dataCheckuser = model\n\n writeMainCheckuser(dataCheckuser)\n writeProfileCheckuser(dataCheckuser)\n\n loadingContainer.toggleClass('show')\n\n mainCheckuser.addClass('show')\n }\n\n const dtCheckUserStartedListener = () => {\n loadingContainer.addClass('show')\n }\n\n const dtMessageErrorListener = (model) => writeModalError(model)\n </script>\n\n <!-- HELPERS -->\n <script>\n const createSvgIcon = (iconPath, Class = '') => {\n const svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg')\n svg.setAttribute('xmlns', 'http://www.w3.org/2000/svg')\n svg.setAttribute('width', '16')\n svg.setAttribute('height', '16')\n svg.setAttribute('fill', 'currentColor')\n svg.setAttribute('viewBox', '0 0 16 16')\n svg.setAttribute('class', Class)\n\n const path = document.createElementNS('http://www.w3.org/2000/svg', 'path')\n path.setAttribute('d', iconPath)\n\n svg.appendChild(path)\n return svg\n }\n\n const createListItem = (iconPath, Class = '', text) => {\n const li = document.createElement('li')\n const svg = createSvgIcon(iconPath, Class)\n const span = document.createElement('span')\n span.setAttribute('class', Class)\n span.innerHTML = text\n li.appendChild(svg)\n li.appendChild(span)\n return li\n }\n </script>\n\n <!-- FUNÇÕES DO LAYOUT -->\n <script>\n const vpnState = (state) => {\n const stateLabel = state || dtVpnState()\n\n switch (stateLabel) {\n case 'DISCONNECTED':\n writeStartStopVpnButton(dtTranslateText('LBL_BTN_START'))\n return disconnected()\n case 'CONNECTING':\n writeStartStopVpnButton(dtTranslateText('LBL_BTN_STOP'))\n return connecting()\n case 'CONNECTED':\n writeStartStopVpnButton(dtTranslateText('LBL_BTN_STOP'))\n return connected()\n case 'STOPPING':\n writeStartStopVpnButton(dtTranslateText('LBL_BTN_STOPPING'))\n return stopping()\n case 'NO_NETWORK':\n writeStartStopVpnButton(dtTranslateText('LBL_BTN_STOP'))\n return noNetwork()\n case 'AUTH':\n writeStartStopVpnButton(dtTranslateText('LBL_BTN_STOP'))\n return auth()\n case 'AUTH_FAILED':\n writeStartStopVpnButton(dtTranslateText('LBL_BTN_STOP'))\n return authFailed()\n default:\n return 'Não foi possível obter o status da conexão'\n }\n }\n\n const writeNetworkStatus = () => {\n let span = '<span>Localizando rede...</span>'\n\n setInterval(() => {\n if (dtGetNetworkName() && dtGetNetworkLocalIp()) {\n const carrierName = `${dtGetNetworkName()}`\n const localIP = `${dtGetNetworkLocalIp()}`\n\n span = `<span>${carrierName}: ${localIP}</span>`\n\n networkStatus.html(span)\n } else {\n span = `<span>Não foi possível carregar informações da rede</span>`\n }\n }, 500)\n\n return span\n }\n\n const allConfigs = () => {\n const ListContainer = document.querySelector('section.list-container')\n ListContainer.innerHTML = ''\n\n const configs = JSON.parse(dtAllConfigs())\n configs.sort((a, b) => a.sorter - b.sorter)\n configs.forEach((item) => item.items.sort((a, b) => a.sorter - b.sorter))\n\n configs.forEach((category) => {\n const defaultColor = category.color\n const categoryColor = `#${defaultColor.substr(3)}${defaultColor.substr(1, 2)}`\n\n document.documentElement.style.setProperty(\n '--cor-de-fundo-do-header-da-categoria',\n categoryColor\n )\n document.documentElement.style.setProperty(\n '--cor-de-fundo-do-item-da-configuracao',\n categoryColor\n )\n\n const div = document.createElement('div')\n const header = document.createElement('header')\n const h1 = document.createElement('h1')\n const svg = document.createElementNS('http://www.w3.org/2000/svg', 'svg')\n const path = document.createElementNS('http://www.w3.org/2000/svg', 'path')\n const ul = document.createElement('ul')\n\n div.classList.add('category')\n ul.classList.add('configs')\n\n h1.textContent = category.name\n\n svg.setAttribute('xmlns', 'http://www.w3.org/2000/svg')\n svg.setAttribute('width', '16')\n svg.setAttribute('height', '16')\n svg.setAttribute('fill', 'currentColor')\n svg.setAttribute('class', 'bi bi-caret-right')\n svg.setAttribute('viewBox', '0 0 16 16')\n\n path.setAttribute(\n 'd',\n 'M6 12.796V3.204L11.481 8 6 12.796zm.659.753 5.48-4.796a1 1 0 0 0 0-1.506L6.66 2.451C6.011 1.885 5 2.345 5 3.204v9.592a1 1 0 0 0 1.659.753'\n )\n\n svg.appendChild(path)\n header.appendChild(h1)\n header.appendChild(svg)\n div.appendChild(header)\n\n category.items.forEach((item) => {\n const li = document.createElement('li')\n const img = document.createElement('img')\n const h1Item = document.createElement('h1')\n const pItem = document.createElement('p')\n const pMode = document.createElement('p')\n const divLogo = document.createElement('div')\n const divDescription = document.createElement('div')\n const divMode = document.createElement('div')\n\n divLogo.classList.add('logo')\n divDescription.classList.add('description')\n divMode.classList.add('mode')\n\n h1Item.textContent = item.name\n pItem.textContent = item.description\n pMode.textContent = item.mode\n\n img.setAttribute('src', item.icon)\n\n divLogo.appendChild(img)\n divDescription.appendChild(h1Item)\n divDescription.appendChild(pItem)\n divMode.appendChild(pMode)\n\n li.appendChild(divLogo)\n li.appendChild(divDescription)\n li.appendChild(divMode)\n\n ul.appendChild(li)\n div.appendChild(ul)\n\n li.addEventListener('click', () => {\n dtSetConfig(item.id)\n listOfCarriers.toggleClass('active')\n })\n })\n\n header.addEventListener('click', () => {\n if (ul.offsetHeight <= 0) {\n ul.style.maxHeight = `${ul.scrollHeight}px`\n svg.style.transform = 'rotate(90deg)'\n } else {\n ul.style.maxHeight = '0px'\n svg.style.transform = 'rotate(0deg)'\n }\n })\n\n ListContainer.appendChild(div)\n })\n }\n\n const showPassword = () => {\n const inputPassword = document.querySelector('#inputPassword')\n\n if (inputPassword.type === 'password') {\n inputPassword.type = 'text'\n eyeHidden.toggleClass('.eye-none').style({ display: 'none' })\n eyeShow.style({ display: 'block' })\n } else {\n inputPassword.type = 'password'\n eyeShow.toggleClass('.eye-none').style({ display: 'none' })\n eyeHidden.toggleClass('.eye-none').style({ display: 'block' })\n }\n }\n\n const startStopVpn = () => {\n const state = dtVpnState()\n\n state === 'CONNECTED' ? dtStopVpn() : dtStartVpn()\n }\n\n const writeStartStopVpnButton = (status) => {\n buttonStartStopVpnValue.html(status)\n }\n\n const writeMainCheckuser = (model) => {\n const data = JSON.parse(model)\n\n const ul = document.querySelector(\n 'section.main-checkuser section.container-content-checkuser ul'\n )\n\n const username = createListItem(\n 'M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10Z',\n '',\n `NOME DE USUÁRIO: ${data.username}`\n )\n\n const expiration = createListItem(\n 'M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z\"/><path d=\"M12 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-5 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm2-3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-5 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2z',\n '',\n `EXPIRAÇÃO: ${data.expiration_date}`\n )\n\n const remainingDays = createListItem(\n 'M2.5 15a.5.5 0 1 1 0-1h1v-1a4.5 4.5 0 0 1 2.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 0 1 3.5 3V2h-1a.5.5 0 0 1 0-1h11a.5.5 0 0 1 0 1h-1v1a4.5 4.5 0 0 1-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0 1 12.5 13v1h1a.5.5 0 0 1 0 1h-11zm2-13v1c0 .537.12 1.045.337 1.5h6.326c.216-.455.337-.963.337-1.5V2h-7zm3 6.35c0 .701-.478 1.236-1.011 1.492A3.5 3.5 0 0 0 4.5 13s.866-1.299 3-1.48V8.35zm1 0v3.17c2.134.181 3 1.48 3 1.48a3.5 3.5 0 0 0-1.989-3.158C8.978 9.586 8.5 9.052 8.5 8.351z',\n '',\n `DIAS RESTANTES: ${data.expiration_days}`\n )\n\n const connecteds = createListItem(\n 'M11 1H5a1 1 0 0 0-1 1v6a.5.5 0 0 1-1 0V2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v6a.5.5 0 0 1-1 0V2a1 1 0 0 0-1-1Zm1 13a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-2a.5.5 0 0 0-1 0v2a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2v-2a.5.5 0 0 0-1 0v2ZM1.713 7.954a.5.5 0 1 0-.419-.908c-.347.16-.654.348-.882.57C.184 7.842 0 8.139 0 8.5c0 .546.408.94.823 1.201.44.278 1.043.51 1.745.696C3.978 10.773 5.898 11 8 11c.099 0 .197 0 .294-.002l-1.148 1.148a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708l-2-2a.5.5 0 1 0-.708.708l1.145 1.144L8 10c-2.04 0-3.87-.221-5.174-.569-.656-.175-1.151-.374-1.47-.575C1.012 8.639 1 8.506 1 8.5c0-.003 0-.059.112-.17.115-.112.31-.242.6-.376Zm12.993-.908a.5.5 0 0 0-.419.908c.292.134.486.264.6.377.113.11.113.166.113.169 0 .003 0 .065-.13.187-.132.122-.352.26-.677.4-.645.28-1.596.523-2.763.687a.5.5 0 0 0 .14.99c1.212-.17 2.26-.43 3.02-.758.38-.164.713-.357.96-.587.246-.229.45-.537.45-.919 0-.362-.184-.66-.412-.883-.228-.223-.535-.411-.882-.571ZM7.5 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1Z',\n '',\n `CONECTADOS: ${data.count_connections}/${data.limit_connections}`\n )\n\n ul.innerHTML =\n username.outerHTML + expiration.outerHTML + remainingDays.outerHTML + connecteds.outerHTML\n }\n\n const showProfile = (model) => {\n hiddenAll()\n const data = model\n\n const main = document.querySelector('section.profile-checkuser')\n const zIndexMain = window.getComputedStyle(main).getPropertyValue('z-index')\n\n if (data !== undefined) {\n notViewUser.removeClass('show')\n viewUser.addClass('show')\n mainProfile.addClass('show')\n } else {\n viewUser.removeClass('show')\n notViewUser.addClass('show')\n mainProfile.addClass('show')\n }\n }\n const hiddenProfile = () => {\n mainProfile.removeClass('show')\n mainProfile.style({ 'z-index': 0 })\n }\n\n const writeProfileCheckuser = (model) => {\n const data = JSON.parse(model)\n\n const username = createListItem(\n 'M8 8a3 3 0 1 0 0-6 3 3 0 0 0 0 6Zm2-3a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm4 8c0 1-1 1-1 1H3s-1 0-1-1 1-4 6-4 6 3 6 4Zm-1-.004c-.001-.246-.154-.986-.832-1.664C11.516 10.68 10.289 10 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h10Z',\n '',\n `NOME DE USUÁRIO: ${data.username}`\n )\n\n const expiration = createListItem(\n 'M14 0H2a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2zM1 3.857C1 3.384 1.448 3 2 3h12c.552 0 1 .384 1 .857v10.286c0 .473-.448.857-1 .857H2c-.552 0-1-.384-1-.857V3.857z\"/><path d=\"M12 7a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-5 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm2-3a1 1 0 1 0 0-2 1 1 0 0 0 0 2zm-5 3a1 1 0 1 0 0-2 1 1 0 0 0 0 2z',\n 'even',\n `EXPIRAÇÃO: ${data.expiration_date}`\n )\n\n const remainingDays = createListItem(\n 'M2.5 15a.5.5 0 1 1 0-1h1v-1a4.5 4.5 0 0 1 2.557-4.06c.29-.139.443-.377.443-.59v-.7c0-.213-.154-.451-.443-.59A4.5 4.5 0 0 1 3.5 3V2h-1a.5.5 0 0 1 0-1h11a.5.5 0 0 1 0 1h-1v1a4.5 4.5 0 0 1-2.557 4.06c-.29.139-.443.377-.443.59v.7c0 .213.154.451.443.59A4.5 4.5 0 0 1 12.5 13v1h1a.5.5 0 0 1 0 1h-11zm2-13v1c0 .537.12 1.045.337 1.5h6.326c.216-.455.337-.963.337-1.5V2h-7zm3 6.35c0 .701-.478 1.236-1.011 1.492A3.5 3.5 0 0 0 4.5 13s.866-1.299 3-1.48V8.35zm1 0v3.17c2.134.181 3 1.48 3 1.48a3.5 3.5 0 0 0-1.989-3.158C8.978 9.586 8.5 9.052 8.5 8.351z',\n '',\n `DIAS RESTANTES: ${data.expiration_days}`\n )\n\n const connecteds = createListItem(\n 'M11 1H5a1 1 0 0 0-1 1v6a.5.5 0 0 1-1 0V2a2 2 0 0 1 2-2h6a2 2 0 0 1 2 2v6a.5.5 0 0 1-1 0V2a1 1 0 0 0-1-1Zm1 13a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-2a.5.5 0 0 0-1 0v2a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2v-2a.5.5 0 0 0-1 0v2ZM1.713 7.954a.5.5 0 1 0-.419-.908c-.347.16-.654.348-.882.57C.184 7.842 0 8.139 0 8.5c0 .546.408.94.823 1.201.44.278 1.043.51 1.745.696C3.978 10.773 5.898 11 8 11c.099 0 .197 0 .294-.002l-1.148 1.148a.5.5 0 0 0 .708.708l2-2a.5.5 0 0 0 0-.708l-2-2a.5.5 0 1 0-.708.708l1.145 1.144L8 10c-2.04 0-3.87-.221-5.174-.569-.656-.175-1.151-.374-1.47-.575C1.012 8.639 1 8.506 1 8.5c0-.003 0-.059.112-.17.115-.112.31-.242.6-.376Zm12.993-.908a.5.5 0 0 0-.419.908c.292.134.486.264.6.377.113.11.113.166.113.169 0 .003 0 .065-.13.187-.132.122-.352.26-.677.4-.645.28-1.596.523-2.763.687a.5.5 0 0 0 .14.99c1.212-.17 2.26-.43 3.02-.758.38-.164.713-.357.96-.587.246-.229.45-.537.45-.919 0-.362-.184-.66-.412-.883-.228-.223-.535-.411-.882-.571ZM7.5 2a.5.5 0 0 0 0 1h1a.5.5 0 0 0 0-1h-1Z',\n 'even',\n `CONECTADOS: ${data.count_connections}/${data.limit_connections}`\n )\n\n viewUser.html(\n username.outerHTML + expiration.outerHTML + remainingDays.outerHTML + connecteds.outerHTML\n )\n }\n\n const hiddenLoadContainer = () => {\n loadingContainer.removeClass('show')\n }\n\n const showMainTools = () => {\n hiddenAll()\n MainTools.style({ 'z-index': 1 })\n MainTools.addClass('show')\n }\n const hiddenMainTools = () => {\n MainTools.style({ 'z-index': 0 })\n MainTools.removeClass('show')\n }\n\n const showModalSpeedtest = () => {\n ModalSpeedtest.addClass('show')\n IframeModalSpeedtest.attr({ src: 'https://fiber.google.com/speedtest/' })\n }\n const hiddenModalSpeedtest = () => {\n ModalSpeedtest.removeClass('show')\n IframeModalSpeedtest.attr({ src: '' })\n }\n\n const writeModalError = (model) => {\n const data = JSON.parse(model)\n\n const h1 = `<h1>${data.title}</h1>`\n const p = `<p>${data.content}</p>`\n\n ContentModalError.html(h1 + p)\n\n hiddenAll()\n showModalError()\n }\n const showModalError = () => {\n ModalError.addClass('show')\n }\n const hiddenModalError = () => {\n ModalError.removeClass('show')\n }\n\n const writeModalLogger = () => {\n const data = JSON.parse(dtGetLogs())\n const p = document.querySelector('section.modal-logs p')\n\n let content = ''\n\n data.forEach((item) => {\n content += `${Object.keys(item)} ${item[Object.keys(item)]} <br>`\n })\n\n ModalLoggerContent.html(content)\n p.scrollTop = p.scrollHeight\n\n return content\n }\n const showModalLogger = () => {\n ModalLogger.addClass('show')\n }\n const hiddenModalRegister = () => {\n ModalLogger.removeClass('show')\n }\n\n const showRenew = () => {\n hiddenAll()\n MainRenew.addClass('show')\n }\n const hiddenRenew = () => {\n MainRenew.removeClass('show')\n }\n\n const hiddenAll = () => {\n hiddenProfile()\n hiddenMainTools()\n hiddenModalSpeedtest()\n hiddenModalError()\n hiddenModalRegister()\n hiddenRenew()\n }\n </script>\n\n <!-- ESTADOS DE CONEXÃO -->\n <script>\n const disconnected = () => {\n const icon = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-outlet\" viewBox=\"0 0 16 16\"><path d=\"M3.34 2.994c.275-.338.68-.494 1.074-.494h7.172c.393 0 .798.156 1.074.494.578.708 1.84 2.534 1.84 5.006 0 2.472-1.262 4.297-1.84 5.006-.276.338-.68.494-1.074.494H4.414c-.394 0-.799-.156-1.074-.494C2.762 12.297 1.5 10.472 1.5 8c0-2.472 1.262-4.297 1.84-5.006zm1.074.506a.376.376 0 0 0-.299.126C3.599 4.259 2.5 5.863 2.5 8c0 2.137 1.099 3.74 1.615 4.374.06.073.163.126.3.126h7.17c.137 0 .24-.053.3-.126.516-.633 1.615-2.237 1.615-4.374 0-2.137-1.099-3.74-1.615-4.374a.376.376 0 0 0-.3-.126h-7.17z\"/><path d=\"M6 5.5a.5.5 0 0 1 .5.5v1.5a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5zm4 0a.5.5 0 0 1 .5.5v1.5a.5.5 0 0 1-1 0V6a.5.5 0 0 1 .5-.5zM7 10v1h2v-1a1 1 0 0 0-2 0z\"/></svg>`\n const text = `<span>${dtTranslateText('LBL_STATE_DISCONNECTED')}</span>`\n\n return icon + text\n }\n\n const connecting = () => {\n const icon = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-plug\" viewBox=\"0 0 16 16\"><path d=\"M6 0a.5.5 0 0 1 .5.5V3h3V.5a.5.5 0 0 1 1 0V3h1a.5.5 0 0 1 .5.5v3A3.5 3.5 0 0 1 8.5 10c-.002.434-.01.845-.04 1.22-.041.514-.126 1.003-.317 1.424a2.083 2.083 0 0 1-.97 1.028C6.725 13.9 6.169 14 5.5 14c-.998 0-1.61.33-1.974.718A1.922 1.922 0 0 0 3 16H2c0-.616.232-1.367.797-1.968C3.374 13.42 4.261 13 5.5 13c.581 0 .962-.088 1.218-.219.241-.123.4-.3.514-.55.121-.266.193-.621.23-1.09.027-.34.035-.718.037-1.141A3.5 3.5 0 0 1 4 6.5v-3a.5.5 0 0 1 .5-.5h1V.5A.5.5 0 0 1 6 0zM5 4v2.5A2.5 2.5 0 0 0 7.5 9h1A2.5 2.5 0 0 0 11 6.5V4H5z\"/></svg>`\n const text = `<span>${dtTranslateText('LBL_STATE_CONNECTING')}</span>`\n\n return icon + text\n }\n\n const connected = () => {\n const icon = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-plugin\" viewBox=\"0 0 16 16\"><path fill-rule=\"evenodd\" d=\"M1 8a7 7 0 1 1 2.898 5.673c-.167-.121-.216-.406-.002-.62l1.8-1.8a3.5 3.5 0 0 0 4.572-.328l1.414-1.415a.5.5 0 0 0 0-.707l-.707-.707 1.559-1.563a.5.5 0 1 0-.708-.706l-1.559 1.562-1.414-1.414 1.56-1.562a.5.5 0 1 0-.707-.706l-1.56 1.56-.707-.706a.5.5 0 0 0-.707 0L5.318 5.975a3.5 3.5 0 0 0-.328 4.571l-1.8 1.8c-.58.58-.62 1.6.121 2.137A8 8 0 1 0 0 8a.5.5 0 0 0 1 0Z\"/></svg>`\n const text = `<span>${dtTranslateText('LBL_STATE_CONNECTED')}</span>`\n\n return icon + text\n }\n\n const stopping = () => {\n const icon = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-stop\" viewBox=\"0 0 16 16\"><path d=\"M3.5 5A1.5 1.5 0 0 1 5 3.5h6A1.5 1.5 0 0 1 12.5 5v6a1.5 1.5 0 0 1-1.5 1.5H5A1.5 1.5 0 0 1 3.5 11V5zM5 4.5a.5.5 0 0 0-.5.5v6a.5.5 0 0 0 .5.5h6a.5.5 0 0 0 .5-.5V5a.5.5 0 0 0-.5-.5H5z\"/></svg>`\n const text = `<span>${dtTranslateText('LBL_STATE_STOPPING')}</span>`\n\n return icon + text\n }\n\n const noNetwork = () => {\n const icon = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-wifi-off\" viewBox=\"0 0 16 16\"><path d=\"M10.706 3.294A12.545 12.545 0 0 0 8 3C5.259 3 2.723 3.882.663 5.379a.485.485 0 0 0-.048.736.518.518 0 0 0 .668.05A11.448 11.448 0 0 1 8 4c.63 0 1.249.05 1.852.148l.854-.854zM8 6c-1.905 0-3.68.56-5.166 1.526a.48.48 0 0 0-.063.745.525.525 0 0 0 .652.065 8.448 8.448 0 0 1 3.51-1.27L8 6zm2.596 1.404.785-.785c.63.24 1.227.545 1.785.907a.482.482 0 0 1 .063.745.525.525 0 0 1-.652.065 8.462 8.462 0 0 0-1.98-.932zM8 10l.933-.933a6.455 6.455 0 0 1 2.013.637c.285.145.326.524.1.75l-.015.015a.532.532 0 0 1-.611.09A5.478 5.478 0 0 0 8 10zm4.905-4.905.747-.747c.59.3 1.153.645 1.685 1.03a.485.485 0 0 1 .047.737.518.518 0 0 1-.668.05 11.493 11.493 0 0 0-1.811-1.07zM9.02 11.78c.238.14.236.464.04.66l-.707.706a.5.5 0 0 1-.707 0l-.707-.707c-.195-.195-.197-.518.04-.66A1.99 1.99 0 0 1 8 11.5c.374 0 .723.102 1.021.28zm4.355-9.905a.53.53 0 0 1 .75.75l-10.75 10.75a.53.53 0 0 1-.75-.75l10.75-10.75z\"/></svg>`\n const text = `<span>${dtTranslateText('LBL_STATE_NO_NETWORK')}</span>`\n\n return icon + text\n }\n\n const auth = () => {\n const icon = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-person-lock\" viewBox=\"0 0 16 16\"><path d=\"M11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4Zm0 5.996V14H3s-1 0-1-1 1-4 6-4c.564 0 1.077.038 1.544.107a4.524 4.524 0 0 0-.803.918A10.46 10.46 0 0 0 8 10c-2.29 0-3.516.68-4.168 1.332-.678.678-.83 1.418-.832 1.664h5ZM9 13a1 1 0 0 1 1-1v-1a2 2 0 1 1 4 0v1a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-4a1 1 0 0 1-1-1v-2Zm3-3a1 1 0 0 0-1 1v1h2v-1a1 1 0 0 0-1-1Z\"/></svg>`\n const text = `<span>${dtTranslateText('LBL_STATE_AUTH')}</span>`\n\n return icon + text\n }\n\n const authFailed = () => {\n const icon = `<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"16\" height=\"16\" fill=\"currentColor\" class=\"bi bi-person-slash\" viewBox=\"0 0 16 16\"><path d=\"M13.879 10.414a2.501 2.501 0 0 0-3.465 3.465l3.465-3.465Zm.707.707-3.465 3.465a2.501 2.501 0 0 0 3.465-3.465Zm-4.56-1.096a3.5 3.5 0 1 1 4.949 4.95 3.5 3.5 0 0 1-4.95-4.95ZM11 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0ZM8 7a2 2 0 1 0 0-4 2 2 0 0 0 0 4Zm.256 7a4.474 4.474 0 0 1-.229-1.004H3c.001-.246.154-.986.832-1.664C4.484 10.68 5.711 10 8 10c.26 0 .507.009.74.025.226-.341.496-.65.804-.918C9.077 9.038 8.564 9 8 9c-5 0-6 3-6 4s1 1 1 1h5.256Z\"/></svg>`\n const text = `<span>${dtTranslateText('LBL_STATE_AUTH_FAILED')}</span>`\n\n return icon + text\n }\n </script>\n\n <!-- VALOR DE EXIBIÇÃO DO CAMPO DE SELECIONAR OPERADORA -->\n <script>\n const areaCarrierSelector = () => {\n const data = dtGetDefaultConfig()\n\n if (data !== undefined) {\n return JSON.parse(data).name\n } else {\n return dtTranslateText('LBL_CHOOSE_CONFIG')\n }\n }\n </script>\n\n <!-- VALOR DE EXIBIÇÃO DO INPUT USUÁRIO DO USUÁRIO -->\n <script>\n const inputUserPlaceholder = () => dtTranslateText('LBL_USERNAME')\n const inputUserValue = () => {\n if (dtGetUsername()) {\n return dtGetUsername()\n } else {\n return ''\n }\n }\n </script>\n\n <!-- VALOR DE EXIBIÇÃO DO INPUT DA SENHA DO USUÁRIO -->\n <script>\n const inputPasswordPlaceholder = () => dtTranslateText('LBL_PASSWORD')\n const inputPasswordValue = () => {\n if (dtGetPassword()) {\n return dtGetPassword()\n } else {\n return ''\n }\n }\n </script>\n\n <!-- DOM WRAPPER -->\n <script>\n const Dom = (selector) => {\n const _elements = document.querySelectorAll(selector)\n\n const wrapper = {\n on(listeners) {\n for (const [event, listener] of Object.entries(listeners)) {\n _elements.forEach((element) => {\n element.addEventListener(event, listener)\n })\n }\n\n return wrapper\n },\n addClass: (...tokens) => {\n _elements.forEach((element) => {\n element.classList.add(...tokens)\n })\n\n return wrapper\n },\n removeClass: (...tokens) => {\n _elements.forEach((element) => {\n element.classList.remove(...tokens)\n })\n\n return wrapper\n },\n toggleClass: (token, force) => {\n _elements.forEach((element) => {\n element.classList.toggle(token, force)\n })\n\n return wrapper\n },\n style(styles) {\n for (const [property, value] of Object.entries(styles)) {\n console.log(value)\n _elements.forEach((element) => {\n element.style[property] = value\n })\n }\n\n return wrapper\n },\n attr(attrs) {\n for (const [name, value] of Object.entries(attrs)) {\n _elements.forEach((element) => element.setAttribute(name, value))\n }\n\n return wrapper\n },\n html(value) {\n _elements.forEach((element) => (element.innerHTML = value))\n return wrapper\n },\n }\n\n return wrapper\n }\n </script>\n\n <!-- VÁRIAVIES -->\n <script>\n const main = Dom('main')\n\n const vpnStatus = Dom('section.vpnStatus')\n\n const networkStatus = Dom('section.local-ip')\n\n const carrierSelector = Dom('div.carrierSelector')\n const listOfCarriers = Dom('section.listOfCarriers')\n const closeModalCarriers = Dom('#close-modal-configs')\n const CarrierCategoryContainer = Dom('section.list-container')\n const CarrierTextValue = Dom('div.carrierSelector span')\n\n const buttonControl = Dom('section.controls')\n const refreshButton = Dom('#refresh-button')\n const renewButton = Dom('#renew')\n const backToHome = Dom('#backToHome')\n const ToolsButton = Dom('#utilitys')\n const profileButton = Dom('#profile-button')\n\n const inputUser = Dom('#inputUser')\n const inputPassword = Dom('#inputPassword')\n\n const buttonStartStopVpn = Dom('#startStopVpn')\n const buttonLogs = Dom('#buttonLogs')\n const buttonStartStopVpnValue = Dom('#startStopVpnButtonValue')\n\n const mainCheckuser = Dom('section.main-checkuser')\n const mainCheckuserClose = Dom('section.main-checkuser header svg')\n const mainCheckuserContent = Dom('section.main-checkuser section.container-content-checkuser')\n\n const loadingContainer = Dom('section.loading')\n const loadingContainerClose = Dom('section.loading header svg')\n\n const mainProfile = Dom('section.profile-checkuser')\n const notViewUser = Dom('#not-profile-user')\n const viewUser = Dom('#list-profile')\n\n const MainTools = Dom('section.tools')\n const ConfigApnButton = Dom('#config-apn')\n const BatteryOptimizeButton = Dom('#battery-optimization')\n const SpeedtestButton = Dom('#speedtest')\n const ClearDataAppButton = Dom('#clean-data-app')\n\n const MainRenew = Dom('section.renew-window')\n\n const ModalSpeedtest = Dom('section.modal-speedtest')\n const CloseModalSpeedtest = Dom('section.modal-speedtest header svg')\n const IframeModalSpeedtest = Dom('section.modal-speedtest section iframe')\n\n const ModalError = Dom('section.modal-error-alert')\n const CloseModalError = Dom('section.modal-error-alert header svg')\n const ContentModalError = Dom('section.modal-error-alert section')\n\n const ModalLogger = Dom('section.modal-logs')\n const CloseModalLogger = Dom('#hidden-modal-logs')\n const ModalLoggerContent = Dom('section.modal-logs p')\n const CleanLoggerContent = Dom('#clean-data-logs')\n\n const eyeHidden = Dom('svg.eye-hidden')\n const eyeShow = Dom('svg.eye-show')\n </script>\n\n <!-- AÇÕES -->\n <script>\n main.style({ padding: `${dtStatusBarHeight() + 100}px 0px 0px 0px` })\n mainProfile.style({\n padding: `${dtStatusBarHeight() + 10}px 0px ${dtNavHeight() + 90}px 0px`,\n })\n\n MainTools.style({ padding: `${dtStatusBarHeight() + 10}px 0px ${dtNavHeight() + 90}px 0px` })\n\n MainRenew.style({ padding: `${dtStatusBarHeight() + 10}px 0px ${dtNavHeight() + 90}px 0px` })\n\n ModalLogger.style({\n top: `${dtStatusBarHeight() + 95}px`,\n bottom: `${dtNavHeight() + 95}px`,\n })\n\n vpnStatus.html(vpnState())\n networkStatus.html(writeNetworkStatus())\n\n carrierSelector.on({\n click: () => {\n allConfigs()\n listOfCarriers.toggleClass('active')\n },\n })\n closeModalCarriers.on({ click: () => listOfCarriers.toggleClass('active') })\n CarrierTextValue.html(areaCarrierSelector())\n\n inputUser.on({ input: (e) => dtSetUsername(e.target.value) })\n inputPassword.on({ input: (e) => dtSetPassword(e.target.value) })\n eyeHidden.on({ click: () => showPassword() })\n eyeShow.on({ click: () => showPassword() })\n\n inputUser.attr({ placeholder: inputUserPlaceholder(), value: inputUserValue() })\n inputPassword.attr({ placeholder: inputPasswordPlaceholder(), value: inputPasswordValue() })\n\n buttonControl.style({ bottom: `${dtNavHeight() + 10}px` })\n refreshButton.on({ click: () => dtUpdate() })\n renewButton.on({ click: () => showRenew() })\n backToHome.on({\n click: () => {\n hiddenAll()\n },\n })\n ToolsButton.on({ click: () => showMainTools() })\n profileButton.on({ click: () => showProfile(dataCheckuser) })\n\n buttonStartStopVpn.on({ click: () => startStopVpn() })\n buttonLogs.on({ click: () => showModalLogger() })\n\n loadingContainerClose.on({ click: () => hiddenLoadContainer() })\n\n mainCheckuserClose.on({ click: () => mainCheckuser.toggleClass('show') })\n\n ConfigApnButton.on({ click: () => dtApnConfig() })\n BatteryOptimizeButton.on({ click: () => dtBatteryOptimization() })\n SpeedtestButton.on({ click: () => showModalSpeedtest() })\n CloseModalSpeedtest.on({ click: () => hiddenModalSpeedtest() })\n ClearDataAppButton.on({ click: () => dtCleanApp() })\n\n CloseModalError.on({ click: () => hiddenModalError() })\n\n ModalLoggerContent.html(writeModalLogger())\n CleanLoggerContent.on({ click: () => dtClearLogs() })\n CloseModalLogger.on({ click: () => hiddenModalRegister() })\n </script>\n </body>\n</html>\n",
  345. "type": "HTML",
  346. "status": "ACTIVE",
  347. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  348. },
  349. {
  350. "id": 4901,
  351. "label": "ANDROID WEBVIEW (POR SUA CONTA E RISCO)",
  352. "name": "APP_SUPPORT_BUTTON",
  353. "value": null,
  354. "type": "HTML",
  355. "status": "ACTIVE",
  356. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  357. },
  358. {
  359. "id": 4902,
  360. "label": "PAGINA WEBVIEW (POR SUA CONTA E RISCO)",
  361. "name": "APP_WEB_VIEW",
  362. "value": null,
  363. "type": "HTML",
  364. "status": "ACTIVE",
  365. "user_id": "90052ac4-0651-408d-8d8a-e851ecfd4922"
  366. }
  367. ]

comments powered by Disqus