@omnizap-system/omnizap 2.6.0 → 2.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (261) hide show
  1. package/.env.example +58 -13
  2. package/.github/workflows/ci.yml +5 -5
  3. package/.github/workflows/codeql.yml +1 -1
  4. package/.github/workflows/db-migration-check.yml +2 -2
  5. package/.github/workflows/dependency-review.yml +1 -1
  6. package/.github/workflows/deploy.yml +2 -2
  7. package/.github/workflows/release.yml +2 -2
  8. package/.github/workflows/security-attest-provenance.yml +2 -2
  9. package/.github/workflows/security-gitleaks.yml +13 -4
  10. package/.github/workflows/security-runner-hardening.yml +2 -2
  11. package/.github/workflows/security-scorecard.yml +1 -1
  12. package/.github/workflows/security-zap-baseline.yml +1 -1
  13. package/.github/workflows/security-zap-full-scan.yml +2 -1
  14. package/.github/workflows/security-zizmor.yml +1 -1
  15. package/.github/workflows/wiki-sync.yml +1 -1
  16. package/.gitleaksignore +9 -0
  17. package/CODE_OF_CONDUCT.md +2 -2
  18. package/GEMINI.md +64 -0
  19. package/README.md +52 -82
  20. package/SECURITY.md +1 -1
  21. package/app/config/index.js +2 -0
  22. package/app/configParts/adminIdentity.js +5 -5
  23. package/app/configParts/baileysConfig.js +230 -58
  24. package/app/configParts/groupUtils.js +5 -0
  25. package/app/configParts/messagePersistenceService.js +145 -4
  26. package/app/configParts/sessionConfig.js +157 -0
  27. package/app/connection/baileysCompatibility.test.js +1 -1
  28. package/app/connection/groupOwnerWriteStateResolver.js +109 -0
  29. package/app/connection/socketController.js +660 -158
  30. package/app/connection/socketController.multiSession.test.js +108 -0
  31. package/app/controllers/messageController.js +1 -1
  32. package/app/controllers/messagePipeline/commandMiddleware.js +12 -10
  33. package/app/controllers/messagePipeline/conversationMiddleware.js +2 -1
  34. package/app/controllers/messagePipeline/messagePipelineMiddlewares.test.js +104 -0
  35. package/app/controllers/messagePipeline/preProcessingMiddlewares.js +80 -2
  36. package/app/controllers/messageProcessingPipeline.js +93 -13
  37. package/app/controllers/messageProcessingPipeline.test.js +200 -0
  38. package/app/modules/adminModule/AGENT.md +1 -1
  39. package/app/modules/adminModule/commandConfig.json +3318 -1347
  40. package/app/modules/adminModule/groupCommandHandlers.js +858 -15
  41. package/app/modules/adminModule/groupCommandHandlers.test.js +378 -11
  42. package/app/modules/adminModule/groupWarningRepository.js +152 -0
  43. package/app/modules/aiModule/AGENT.md +47 -30
  44. package/app/modules/aiModule/aiConfigRuntime.js +1 -0
  45. package/app/modules/aiModule/catCommand.js +135 -27
  46. package/app/modules/aiModule/commandConfig.json +114 -28
  47. package/app/modules/analyticsModule/messageAnalysisEventRepository.js +54 -6
  48. package/app/modules/gameModule/AGENT.md +1 -1
  49. package/app/modules/gameModule/commandConfig.json +29 -0
  50. package/app/modules/menuModule/AGENT.md +1 -1
  51. package/app/modules/menuModule/commandConfig.json +45 -10
  52. package/app/modules/menuModule/menuCatalogService.js +190 -0
  53. package/app/modules/menuModule/menuCommandUsageRepository.js +109 -0
  54. package/app/modules/menuModule/menuDynamicService.js +511 -0
  55. package/app/modules/menuModule/menuDynamicService.test.js +141 -0
  56. package/app/modules/menuModule/menus.js +36 -5
  57. package/app/modules/playModule/AGENT.md +10 -5
  58. package/app/modules/playModule/commandConfig.json +140 -12
  59. package/app/modules/playModule/playCommand.js +1 -1417
  60. package/app/modules/playModule/playCommandConstants.js +80 -0
  61. package/app/modules/playModule/playCommandCore.js +361 -0
  62. package/app/modules/playModule/playCommandHandlers.js +41 -0
  63. package/app/modules/playModule/playCommandMediaClient.js +1872 -0
  64. package/app/modules/playModule/playConfigRuntime.js +245 -4
  65. package/app/modules/playModule/playModuleCriticalFlows.test.js +152 -0
  66. package/app/modules/quoteModule/AGENT.md +1 -1
  67. package/app/modules/quoteModule/commandConfig.json +29 -0
  68. package/app/modules/quoteModule/quoteCommand.js +3 -2
  69. package/app/modules/rpgPokemonModule/AGENT.md +1 -1
  70. package/app/modules/rpgPokemonModule/commandConfig.json +29 -0
  71. package/app/modules/rpgPokemonModule/rpgBattleCanvasRenderer.js +5 -4
  72. package/app/modules/rpgPokemonModule/rpgBattleService.test.js +2 -1
  73. package/app/modules/rpgPokemonModule/rpgPokemonDomain.js +2 -1
  74. package/app/modules/rpgPokemonModule/rpgPokemonService.js +38 -37
  75. package/app/modules/rpgPokemonModule/rpgProfileCanvasRenderer.js +4 -3
  76. package/app/modules/statsModule/AGENT.md +1 -1
  77. package/app/modules/statsModule/commandConfig.json +58 -0
  78. package/app/modules/statsModule/rankingCommon.js +5 -4
  79. package/app/modules/stickerModule/AGENT.md +1 -1
  80. package/app/modules/stickerModule/addStickerMetadata.js +4 -3
  81. package/app/modules/stickerModule/commandConfig.json +145 -0
  82. package/app/modules/stickerModule/stickerCommand.js +1 -1
  83. package/app/modules/stickerPackModule/AGENT.md +1 -1
  84. package/app/modules/stickerPackModule/autoPackCollectorService.js +5 -1
  85. package/app/modules/stickerPackModule/commandConfig.json +29 -0
  86. package/app/modules/stickerPackModule/semanticThemeClusterService.js +7 -6
  87. package/app/modules/stickerPackModule/stickerAutoPackByTagsRuntime.js +10 -9
  88. package/app/modules/stickerPackModule/stickerClassificationBackgroundRuntime.js +9 -8
  89. package/app/modules/stickerPackModule/stickerDomainEventConsumerRuntime.js +3 -2
  90. package/app/modules/stickerPackModule/stickerMarketplaceDriftService.js +2 -1
  91. package/app/modules/stickerPackModule/stickerPackCommandHandlers.js +80 -58
  92. package/app/modules/stickerPackModule/stickerPackMarketplaceService.js +2 -1
  93. package/app/modules/stickerPackModule/stickerPackRepository.js +2 -1
  94. package/app/modules/stickerPackModule/stickerPackScoreSnapshotRuntime.js +5 -4
  95. package/app/modules/stickerPackModule/stickerPackService.js +13 -6
  96. package/app/modules/stickerPackModule/stickerStorageService.js +3 -2
  97. package/app/modules/stickerPackModule/stickerWorkerPipelineRuntime.js +2 -1
  98. package/app/modules/systemMetricsModule/AGENT.md +1 -1
  99. package/app/modules/systemMetricsModule/commandConfig.json +29 -0
  100. package/app/modules/systemMetricsModule/pingCommand.js +6 -5
  101. package/app/modules/tiktokModule/AGENT.md +1 -1
  102. package/app/modules/tiktokModule/commandConfig.json +29 -0
  103. package/app/modules/tiktokModule/tiktokCommand.js +2 -1
  104. package/app/modules/userModule/AGENT.md +1 -1
  105. package/app/modules/userModule/commandConfig.json +29 -0
  106. package/app/modules/userModule/userCommand.js +72 -23
  107. package/app/modules/waifuPicsModule/AGENT.md +57 -27
  108. package/app/modules/waifuPicsModule/commandConfig.json +87 -0
  109. package/app/modules/waifuPicsModule/waifuPicsCommand.js +3 -2
  110. package/app/observability/metrics.js +136 -0
  111. package/app/services/ai/commandConfigEnrichmentService.js +229 -47
  112. package/app/services/ai/conversationRouterService.js +4 -3
  113. package/app/services/ai/geminiService.js +132 -7
  114. package/app/services/ai/geminiService.test.js +59 -2
  115. package/app/services/ai/globalModuleAiHelpService.js +3 -2
  116. package/app/services/ai/messageCommandExecutionService.js +2 -1
  117. package/app/services/ai/moduleAiHelpCoreService.js +45 -14
  118. package/app/services/ai/moduleToolExecutorService.js +3 -2
  119. package/app/services/ai/moduleToolRegistryService.js +2 -1
  120. package/app/services/ai/toolCandidateSelectorService.js +6 -5
  121. package/app/services/auth/googleWebLinkService.js +3 -2
  122. package/app/services/auth/whatsappLoginLinkService.js +3 -2
  123. package/app/services/external/pokeApiService.js +4 -3
  124. package/app/services/group/groupMetadataService.js +24 -1
  125. package/app/services/infra/dbWriteQueue.js +57 -26
  126. package/app/services/infra/featureFlagService.js +2 -1
  127. package/app/services/messaging/captchaService.js +3 -2
  128. package/app/services/messaging/newsBroadcastService.js +846 -29
  129. package/app/services/multiSession/assignmentBalancerService.js +457 -0
  130. package/app/services/multiSession/groupOwnershipRepository.js +381 -0
  131. package/app/services/multiSession/groupOwnershipService.js +890 -0
  132. package/app/services/multiSession/groupOwnershipService.test.js +309 -0
  133. package/app/services/multiSession/sessionRegistryService.js +293 -0
  134. package/app/services/sticker/stickerFocusService.js +11 -10
  135. package/app/store/aiPromptStore.js +36 -19
  136. package/app/store/conversationSessionStore.js +7 -6
  137. package/app/store/groupConfigStore.js +41 -5
  138. package/app/store/premiumUserStore.js +21 -7
  139. package/app/utils/antiLink/antiLinkModule.js +352 -16
  140. package/app/workers/aiHelperContinuousLearningWorker.js +512 -0
  141. package/app/workers/aiLearningWorker.js +6 -5
  142. package/app/workers/commandConfigEnrichmentWorker.js +4 -3
  143. package/database/index.js +14 -8
  144. package/database/migrations/20260307_d0_hardening_down.sql +1 -1
  145. package/database/migrations/20260314_d7_canonical_sender_down.sql +1 -1
  146. package/database/migrations/20260406_d30_security_analytics_down.sql +1 -1
  147. package/database/migrations/20260411_d35_group_community_metadata_down.sql +59 -0
  148. package/database/migrations/20260411_d35_group_community_metadata_up.sql +62 -0
  149. package/database/migrations/20260412_d36_system_config_tables_down.sql +32 -0
  150. package/database/migrations/20260412_d36_system_config_tables_up.sql +66 -0
  151. package/database/migrations/20260413_d37_group_user_warnings_down.sql +11 -0
  152. package/database/migrations/20260413_d37_group_user_warnings_up.sql +24 -0
  153. package/database/migrations/20260414_d38_multi_session_foundation_down.sql +72 -0
  154. package/database/migrations/20260414_d38_multi_session_foundation_up.sql +125 -0
  155. package/database/migrations/20260414_d39_multi_session_cutover_down.sql +103 -0
  156. package/database/migrations/20260414_d39_multi_session_cutover_up.sql +83 -0
  157. package/database/schema.sql +102 -1
  158. package/docker-compose.yml +4 -1
  159. package/docs/compliance/acceptable-use-policy-2026-03-07.md +1 -1
  160. package/docs/compliance/dpa-b2b-standard-2026-03-07.md +1 -1
  161. package/docs/compliance/privacy-policy-2026-03-07.md +4 -4
  162. package/docs/security/dsar-lgpd-runbook-2026-03-07.md +1 -1
  163. package/docs/security/incident-response-lgpd-anpd-runbook-2026-03-07.md +1 -1
  164. package/docs/security/network-hardening-runbook-2026-03-07.md +53 -0
  165. package/docs/security/omnizap-static-security-headers.conf +25 -0
  166. package/docs/wiki/Home.md +1 -1
  167. package/ecosystem.prod.config.cjs +32 -12
  168. package/index.js +57 -23
  169. package/observability/alert-rules.yml +20 -0
  170. package/observability/grafana/dashboards/omnizap-system-admin.json +229 -0
  171. package/observability/mysql-setup.sql +4 -4
  172. package/observability/system-admin-observability.md +26 -0
  173. package/package.json +20 -6
  174. package/public/apple-touch-icon.png +0 -0
  175. package/public/comandos/commands-catalog.json +2853 -3326
  176. package/public/favicon-16x16.png +0 -0
  177. package/public/favicon-32x32.png +0 -0
  178. package/public/favicon.ico +0 -0
  179. package/public/js/apps/apiDocsApp.js +3 -2
  180. package/public/js/apps/commandsReactApp.js +280 -99
  181. package/public/js/apps/createPackApp.js +11 -10
  182. package/public/js/apps/homeReactApp.js +181 -130
  183. package/public/js/apps/loginReactApp.js +1 -1
  184. package/public/js/apps/stickersApp.js +263 -110
  185. package/public/js/apps/termsReactApp.js +73 -24
  186. package/public/js/apps/userApp.js +4 -3
  187. package/public/js/apps/userPasswordResetReactApp.js +406 -0
  188. package/public/js/apps/userReactApp.js +355 -280
  189. package/public/js/apps/userSystemAdmReactApp.js +1506 -0
  190. package/public/pages/api-docs.html +1 -1
  191. package/public/pages/aup.html +2 -2
  192. package/public/pages/dpa.html +3 -3
  193. package/public/pages/licenca.html +4 -4
  194. package/public/pages/login.html +1 -1
  195. package/public/pages/notice-and-takedown.html +2 -2
  196. package/public/pages/politica-de-privacidade.html +6 -6
  197. package/public/pages/seo-bot-whatsapp-para-grupo.html +3 -3
  198. package/public/pages/seo-bot-whatsapp-sem-programar.html +3 -3
  199. package/public/pages/seo-como-automatizar-avisos-no-whatsapp.html +3 -3
  200. package/public/pages/seo-como-criar-comandos-whatsapp.html +3 -3
  201. package/public/pages/seo-como-evitar-spam-no-whatsapp.html +3 -3
  202. package/public/pages/seo-como-moderar-grupo-whatsapp.html +3 -3
  203. package/public/pages/seo-como-organizar-comunidade-whatsapp.html +3 -3
  204. package/public/pages/seo-melhor-bot-whatsapp-para-grupos.html +3 -3
  205. package/public/pages/stickers-admin.html +1 -1
  206. package/public/pages/stickers-create.html +1 -1
  207. package/public/pages/stickers.html +6 -6
  208. package/public/pages/suboperadores.html +2 -2
  209. package/public/pages/termos-de-uso-texto-integral.html +6 -6
  210. package/public/pages/termos-de-uso.html +3 -3
  211. package/public/pages/user-password-reset.html +4 -5
  212. package/public/pages/user-systemadm.html +9 -463
  213. package/public/pages/user.html +2 -2
  214. package/scripts/clear-whatsapp-session.sh +123 -0
  215. package/scripts/core-ai-mode.mjs +163 -0
  216. package/scripts/deploy.sh +11 -1
  217. package/scripts/email-broadcast-terms-update.mjs +2 -1
  218. package/scripts/enrich-command-config-ux-openai.mjs +492 -0
  219. package/scripts/generate-commands-catalog.mjs +166 -2
  220. package/scripts/generate-module-agents.mjs +2 -1
  221. package/scripts/generate-seo-satellite-pages.mjs +5 -4
  222. package/scripts/github-deploy-notify.mjs +2 -1
  223. package/scripts/github-release-notify.mjs +25 -10
  224. package/scripts/new-whatsapp-session.sh +317 -0
  225. package/scripts/release.sh +2 -19
  226. package/scripts/security-smoketest.mjs +6 -5
  227. package/scripts/security-web-surface-check.mjs +218 -0
  228. package/scripts/sticker-catalog-loadtest.mjs +5 -4
  229. package/server/auth/googleWebAuth/googleWebAuthService.js +8 -7
  230. package/server/auth/jwt/webJwtService.js +1 -1
  231. package/server/auth/stickerCatalogAuthContext.js +2 -1
  232. package/server/auth/termsAcceptance/termsAcceptanceHandler.js +2 -1
  233. package/server/auth/userPassword/userPasswordAuthService.js +2 -1
  234. package/server/auth/userPassword/userPasswordRecoveryService.js +4 -3
  235. package/server/auth/webAccount/webAccountHandlers.js +9 -10
  236. package/server/controllers/admin/adminPanelHandlers.js +267 -16
  237. package/server/controllers/admin/systemAdminController.js +267 -0
  238. package/server/controllers/seo/stickerCatalogSeoContext.js +10 -9
  239. package/server/controllers/sticker/nonCatalogHandlers.js +2 -1
  240. package/server/controllers/sticker/stickerCatalogController.js +23 -36
  241. package/server/controllers/system/contactController.js +9 -17
  242. package/server/controllers/system/githubController.js +3 -2
  243. package/server/controllers/system/stickerCatalogSystemContext.js +41 -19
  244. package/server/controllers/system/systemController.js +254 -1
  245. package/server/controllers/system/systemMetricsController.js +2 -1
  246. package/server/controllers/userController.js +6 -0
  247. package/server/email/emailTemplateService.js +5 -3
  248. package/server/http/httpServer.js +11 -6
  249. package/server/middleware/rateLimit.js +2 -1
  250. package/server/middleware/securityHeaders.js +20 -1
  251. package/server/routes/admin/systemAdminRouter.js +6 -0
  252. package/server/routes/indexRouter.js +30 -6
  253. package/server/routes/observability/grafanaProxyRouter.js +254 -0
  254. package/server/routes/static/staticPageRouter.js +27 -1
  255. package/server/utils/publicContact.js +31 -0
  256. package/utils/time/timeModule.js +135 -0
  257. package/utils/time/timeModule.test.js +65 -0
  258. package/utils/whatsapp/contactEnv.js +39 -0
  259. package/vite.config.mjs +7 -1
  260. package/public/assets/images/brand-icon-192.png +0 -0
  261. package/scripts/sync-readme-snapshot.mjs +0 -133
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>API Docs | OmniZap System</title>
6
+ <title>API Docs | Omnizap</title>
7
7
  <meta name="description" content="Documentação técnica da API OmniZap para desenvolvedores: endpoints, autenticação e integração de bots." />
8
8
  <meta name="robots" content="index, follow" />
9
9
  <meta name="theme-color" content="#020617" />
@@ -131,7 +131,7 @@
131
131
  <section class="glass-card">
132
132
  <h1>Política de Uso Aceitável</h1>
133
133
  <p>Versão: 07/03/2026</p>
134
- <p>Esta política define as diretrizes para o uso ético e legal do OmniZap System.</p>
134
+ <p>Esta política define as diretrizes para o uso ético e legal do Omnizap.</p>
135
135
  </section>
136
136
 
137
137
  <section class="glass-card">
@@ -152,7 +152,7 @@
152
152
  </section>
153
153
  </main>
154
154
 
155
- <footer class="footer">© 2026 OMNIZAP SYSTEM · AUP V2</footer>
155
+ <footer class="footer">© 2026 OMNIZAP · AUP V2</footer>
156
156
  </div>
157
157
  </body>
158
158
  </html>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>DPA Padrão B2B | OmniZap System</title>
6
+ <title>DPA Padrão B2B | Omnizap</title>
7
7
  <meta name="description" content="DPA padrão para clientes B2B com anexos técnicos de suboperadores, segurança, incidente e SLA de cooperação." />
8
8
  <meta name="robots" content="index, follow" />
9
9
  <link rel="canonical" href="https://omnizap.shop/dpa/" />
@@ -179,7 +179,7 @@
179
179
  <section class="glass-card">
180
180
  <h1>DPA Padrão para Clientes B2B</h1>
181
181
  <p>Versão: 07/03/2026</p>
182
- <p>Este documento regula o processamento de dados pessoais em relações empresariais (Business-to-Business) no contexto do OmniZap System.</p>
182
+ <p>Este documento regula o processamento de dados pessoais em relações empresariais (Business-to-Business) no contexto do Omnizap.</p>
183
183
  </section>
184
184
 
185
185
  <section class="glass-card">
@@ -221,7 +221,7 @@
221
221
  </section>
222
222
  </main>
223
223
 
224
- <footer class="footer">© 2026 OMNIZAP SYSTEM · DPA B2B V2</footer>
224
+ <footer class="footer">© 2026 OMNIZAP · DPA B2B V2</footer>
225
225
  </div>
226
226
  </body>
227
227
  </html>
@@ -3,8 +3,8 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Licença MIT | OmniZap System</title>
7
- <meta name="description" content="Informações jurídicas de licença do OmniZap System (MIT License)." />
6
+ <title>Licença MIT | Omnizap</title>
7
+ <meta name="description" content="Informações jurídicas de licença do Omnizap (MIT License)." />
8
8
  <meta name="robots" content="index, follow" />
9
9
  <link rel="canonical" href="https://omnizap.shop/licenca/" />
10
10
  <link rel="preconnect" href="https://fonts.googleapis.com" />
@@ -142,7 +142,7 @@
142
142
  <main>
143
143
  <section class="glass-card">
144
144
  <h1>Licença de Software</h1>
145
- <p>O OmniZap System é distribuído sob a licença <strong>MIT</strong>. Isso significa que você é livre para usar, copiar, modificar e distribuir o código, desde que mantenha os créditos originais.</p>
145
+ <p>O Omnizap é distribuído sob a licença <strong>MIT</strong>. Isso significa que você é livre para usar, copiar, modificar e distribuir o código, desde que mantenha os créditos originais.</p>
146
146
  </section>
147
147
 
148
148
  <section class="glass-card">
@@ -176,7 +176,7 @@ SOFTWARE.</pre
176
176
  </section>
177
177
  </main>
178
178
 
179
- <footer class="footer">© 2026 OMNIZAP SYSTEM · MIT LICENSE V2</footer>
179
+ <footer class="footer">© 2026 OMNIZAP · MIT LICENSE V2</footer>
180
180
  </div>
181
181
  </body>
182
182
  </html>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Entrar | OmniZap System</title>
6
+ <title>Entrar | Omnizap</title>
7
7
  <meta name="description" content="Acesse sua conta no OmniZap de forma segura via WhatsApp e Google." />
8
8
  <meta name="robots" content="noindex, nofollow" />
9
9
  <meta name="theme-color" content="#020617" />
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Notice-and-Takedown | OmniZap System</title>
6
+ <title>Notice-and-Takedown | Omnizap</title>
7
7
  <meta name="description" content="Canal formal de notice-and-takedown com formulário, requisitos mínimos de prova e SLA público." />
8
8
  <meta name="robots" content="index, follow" />
9
9
  <link rel="canonical" href="https://omnizap.shop/notice-and-takedown/" />
@@ -228,7 +228,7 @@
228
228
  </section>
229
229
  </main>
230
230
 
231
- <footer class="footer">© 2026 OMNIZAP SYSTEM · TAKEDOWN V2</footer>
231
+ <footer class="footer">© 2026 OMNIZAP · TAKEDOWN V2</footer>
232
232
  </div>
233
233
  </body>
234
234
  </html>
@@ -3,8 +3,8 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Política de Privacidade | OmniZap System</title>
7
- <meta name="description" content="Política de Privacidade do OmniZap System com tabela de dados, base legal, retenção e transferências internacionais." />
6
+ <title>Política de Privacidade | Omnizap</title>
7
+ <meta name="description" content="Política de Privacidade do Omnizap com tabela de dados, base legal, retenção e transferências internacionais." />
8
8
  <meta name="robots" content="index, follow" />
9
9
  <link rel="canonical" href="https://omnizap.shop/politica-de-privacidade/" />
10
10
  <link rel="preconnect" href="https://fonts.googleapis.com" />
@@ -182,13 +182,13 @@
182
182
  <section class="glass-card" style="border-bottom: 4px solid hsla(142, 71%, 45%, 0.3)">
183
183
  <h1>Política de Privacidade</h1>
184
184
  <p><span class="accent">Última atualização:</span> 07/03/2026</p>
185
- <p>Esta Política descreve como o OmniZap System trata dados pessoais no site, login web, painel e API. Nosso compromisso é com a transparência e a segurança da sua informação.</p>
185
+ <p>Esta Política descreve como o Omnizap trata dados pessoais no site, login web, painel e API. Nosso compromisso é com a transparência e a segurança da sua informação.</p>
186
186
  </section>
187
187
 
188
188
  <section class="glass-card">
189
189
  <h2>Escopo desta política</h2>
190
190
  <ul>
191
- <li>Esta política se aplica ao serviço oficial operado pelos canais do OmniZap System (incluindo domínio omnizap.shop e endpoints oficiais).</li>
191
+ <li>Esta política se aplica ao serviço oficial operado pelos canais do Omnizap (incluindo domínio omnizap.shop e endpoints oficiais).</li>
192
192
  <li>Forks, redistribuições e instâncias auto-hospedadas por terceiros não se vinculam automaticamente a este documento.</li>
193
193
  <li>Em instância derivada/self-host, o operador da instância atua como controlador independente.</li>
194
194
  </ul>
@@ -198,7 +198,7 @@
198
198
  <h2>Controlador e contato</h2>
199
199
  <ul>
200
200
  <li><span class="accent">Controlador:</span> 59.034.123 KAIKY BRITO RIBEIRO (CNPJ 59.034.123/0001-96).</li>
201
- <li><span class="accent">Contato:</span> <a href="https://wa.me/559591122954" style="color: inherit">WhatsApp Oficial</a>.</li>
201
+ <li><span class="accent">Contato:</span> <a href="__WHATSAPP_SUPPORT_URL__" style="color: inherit">WhatsApp Oficial</a>.</li>
202
202
  <li><span class="accent">DSAR/LGPD:</span> Informe o assunto "DSAR LGPD" no contato oficial.</li>
203
203
  </ul>
204
204
  </section>
@@ -245,7 +245,7 @@
245
245
  </section>
246
246
  </main>
247
247
 
248
- <footer class="footer">© 2026 OMNIZAP SYSTEM · PRIVACY POLICY V2</footer>
248
+ <footer class="footer">© 2026 OMNIZAP · PRIVACY POLICY V2</footer>
249
249
  </div>
250
250
  </body>
251
251
  </html>
@@ -15,7 +15,7 @@
15
15
 
16
16
  <meta property="og:type" content="article" />
17
17
  <meta property="og:locale" content="pt_BR" />
18
- <meta property="og:site_name" content="OmniZap System" />
18
+ <meta property="og:site_name" content="Omnizap" />
19
19
  <meta property="og:title" content="Bot para Grupo de WhatsApp | OmniZap pronto para usar" />
20
20
  <meta property="og:description" content="Descubra como usar um bot para grupo de WhatsApp sem configuração técnica. Adicione o OmniZap, organize conversas e ative automações em minutos." />
21
21
  <meta property="og:url" content="https://omnizap.shop/seo/bot-whatsapp-para-grupo/" />
@@ -27,7 +27,7 @@
27
27
  <meta name="twitter:image" content="https://omnizap.shop/assets/images/hero-banner-1280.jpg" />
28
28
 
29
29
  <script type="application/ld+json">
30
- { "@context": "https://schema.org", "@type": "WebPage", "name": "Bot para Grupo de WhatsApp | OmniZap pronto para usar", "description": "Descubra como usar um bot para grupo de WhatsApp sem configuração técnica. Adicione o OmniZap, organize conversas e ative automações em minutos.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/bot-whatsapp-para-grupo/", "isPartOf": { "@type": "WebSite", "name": "OmniZap System", "url": "https://omnizap.shop" } }
30
+ { "@context": "https://schema.org", "@type": "WebPage", "name": "Bot para Grupo de WhatsApp | OmniZap pronto para usar", "description": "Descubra como usar um bot para grupo de WhatsApp sem configuração técnica. Adicione o OmniZap, organize conversas e ative automações em minutos.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/bot-whatsapp-para-grupo/", "isPartOf": { "@type": "WebSite", "name": "Omnizap", "url": "https://omnizap.shop" } }
31
31
  </script>
32
32
  <script type="application/ld+json">
33
33
  {
@@ -344,7 +344,7 @@
344
344
  </section>
345
345
  </main>
346
346
 
347
- <footer class="footer-meta">© 2026 OMNIZAP SYSTEM · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
347
+ <footer class="footer-meta">© 2026 OMNIZAP · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
348
348
  </div>
349
349
  </body>
350
350
  </html>
@@ -15,7 +15,7 @@
15
15
 
16
16
  <meta property="og:type" content="article" />
17
17
  <meta property="og:locale" content="pt_BR" />
18
- <meta property="og:site_name" content="OmniZap System" />
18
+ <meta property="og:site_name" content="Omnizap" />
19
19
  <meta property="og:title" content="Bot para WhatsApp sem programar | OmniZap" />
20
20
  <meta property="og:description" content="Use bot para WhatsApp sem programar. Adicione no grupo, ative recursos prontos e automatize moderação, avisos e organização em poucos passos." />
21
21
  <meta property="og:url" content="https://omnizap.shop/seo/bot-whatsapp-sem-programar/" />
@@ -27,7 +27,7 @@
27
27
  <meta name="twitter:image" content="https://omnizap.shop/assets/images/hero-banner-1280.jpg" />
28
28
 
29
29
  <script type="application/ld+json">
30
- { "@context": "https://schema.org", "@type": "WebPage", "name": "Bot para WhatsApp sem programar | OmniZap", "description": "Use bot para WhatsApp sem programar. Adicione no grupo, ative recursos prontos e automatize moderação, avisos e organização em poucos passos.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/bot-whatsapp-sem-programar/", "isPartOf": { "@type": "WebSite", "name": "OmniZap System", "url": "https://omnizap.shop" } }
30
+ { "@context": "https://schema.org", "@type": "WebPage", "name": "Bot para WhatsApp sem programar | OmniZap", "description": "Use bot para WhatsApp sem programar. Adicione no grupo, ative recursos prontos e automatize moderação, avisos e organização em poucos passos.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/bot-whatsapp-sem-programar/", "isPartOf": { "@type": "WebSite", "name": "Omnizap", "url": "https://omnizap.shop" } }
31
31
  </script>
32
32
  <script type="application/ld+json">
33
33
  {
@@ -344,7 +344,7 @@
344
344
  </section>
345
345
  </main>
346
346
 
347
- <footer class="footer-meta">© 2026 OMNIZAP SYSTEM · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
347
+ <footer class="footer-meta">© 2026 OMNIZAP · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
348
348
  </div>
349
349
  </body>
350
350
  </html>
@@ -15,7 +15,7 @@
15
15
 
16
16
  <meta property="og:type" content="article" />
17
17
  <meta property="og:locale" content="pt_BR" />
18
- <meta property="og:site_name" content="OmniZap System" />
18
+ <meta property="og:site_name" content="Omnizap" />
19
19
  <meta property="og:title" content="Como automatizar avisos no WhatsApp | Guia rápido" />
20
20
  <meta property="og:description" content="Aprenda como automatizar avisos no WhatsApp para grupos e comunidades. Envie lembretes com consistência e reduza falhas de comunicação." />
21
21
  <meta property="og:url" content="https://omnizap.shop/seo/como-automatizar-avisos-no-whatsapp/" />
@@ -27,7 +27,7 @@
27
27
  <meta name="twitter:image" content="https://omnizap.shop/assets/images/hero-banner-1280.jpg" />
28
28
 
29
29
  <script type="application/ld+json">
30
- { "@context": "https://schema.org", "@type": "WebPage", "name": "Como automatizar avisos no WhatsApp | Guia rápido", "description": "Aprenda como automatizar avisos no WhatsApp para grupos e comunidades. Envie lembretes com consistência e reduza falhas de comunicação.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/como-automatizar-avisos-no-whatsapp/", "isPartOf": { "@type": "WebSite", "name": "OmniZap System", "url": "https://omnizap.shop" } }
30
+ { "@context": "https://schema.org", "@type": "WebPage", "name": "Como automatizar avisos no WhatsApp | Guia rápido", "description": "Aprenda como automatizar avisos no WhatsApp para grupos e comunidades. Envie lembretes com consistência e reduza falhas de comunicação.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/como-automatizar-avisos-no-whatsapp/", "isPartOf": { "@type": "WebSite", "name": "Omnizap", "url": "https://omnizap.shop" } }
31
31
  </script>
32
32
  <script type="application/ld+json">
33
33
  {
@@ -344,7 +344,7 @@
344
344
  </section>
345
345
  </main>
346
346
 
347
- <footer class="footer-meta">© 2026 OMNIZAP SYSTEM · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
347
+ <footer class="footer-meta">© 2026 OMNIZAP · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
348
348
  </div>
349
349
  </body>
350
350
  </html>
@@ -15,7 +15,7 @@
15
15
 
16
16
  <meta property="og:type" content="article" />
17
17
  <meta property="og:locale" content="pt_BR" />
18
- <meta property="og:site_name" content="OmniZap System" />
18
+ <meta property="og:site_name" content="Omnizap" />
19
19
  <meta property="og:title" content="Como criar comandos no WhatsApp com bot pronto" />
20
20
  <meta property="og:description" content="Entenda como criar e usar comandos no WhatsApp para acelerar atendimento e organização de grupos com bot pronto para uso." />
21
21
  <meta property="og:url" content="https://omnizap.shop/seo/como-criar-comandos-whatsapp/" />
@@ -27,7 +27,7 @@
27
27
  <meta name="twitter:image" content="https://omnizap.shop/assets/images/hero-banner-1280.jpg" />
28
28
 
29
29
  <script type="application/ld+json">
30
- { "@context": "https://schema.org", "@type": "WebPage", "name": "Como criar comandos no WhatsApp com bot pronto", "description": "Entenda como criar e usar comandos no WhatsApp para acelerar atendimento e organização de grupos com bot pronto para uso.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/como-criar-comandos-whatsapp/", "isPartOf": { "@type": "WebSite", "name": "OmniZap System", "url": "https://omnizap.shop" } }
30
+ { "@context": "https://schema.org", "@type": "WebPage", "name": "Como criar comandos no WhatsApp com bot pronto", "description": "Entenda como criar e usar comandos no WhatsApp para acelerar atendimento e organização de grupos com bot pronto para uso.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/como-criar-comandos-whatsapp/", "isPartOf": { "@type": "WebSite", "name": "Omnizap", "url": "https://omnizap.shop" } }
31
31
  </script>
32
32
  <script type="application/ld+json">
33
33
  {
@@ -344,7 +344,7 @@
344
344
  </section>
345
345
  </main>
346
346
 
347
- <footer class="footer-meta">© 2026 OMNIZAP SYSTEM · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
347
+ <footer class="footer-meta">© 2026 OMNIZAP · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
348
348
  </div>
349
349
  </body>
350
350
  </html>
@@ -15,7 +15,7 @@
15
15
 
16
16
  <meta property="og:type" content="article" />
17
17
  <meta property="og:locale" content="pt_BR" />
18
- <meta property="og:site_name" content="OmniZap System" />
18
+ <meta property="og:site_name" content="Omnizap" />
19
19
  <meta property="og:title" content="Como evitar spam no WhatsApp com bot pronto" />
20
20
  <meta property="og:description" content="Guia rápido para reduzir spam em grupos de WhatsApp com bot pronto. Veja regras essenciais e práticas para manter o grupo limpo e produtivo." />
21
21
  <meta property="og:url" content="https://omnizap.shop/seo/como-evitar-spam-no-whatsapp/" />
@@ -27,7 +27,7 @@
27
27
  <meta name="twitter:image" content="https://omnizap.shop/assets/images/hero-banner-1280.jpg" />
28
28
 
29
29
  <script type="application/ld+json">
30
- { "@context": "https://schema.org", "@type": "WebPage", "name": "Como evitar spam no WhatsApp com bot pronto", "description": "Guia rápido para reduzir spam em grupos de WhatsApp com bot pronto. Veja regras essenciais e práticas para manter o grupo limpo e produtivo.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/como-evitar-spam-no-whatsapp/", "isPartOf": { "@type": "WebSite", "name": "OmniZap System", "url": "https://omnizap.shop" } }
30
+ { "@context": "https://schema.org", "@type": "WebPage", "name": "Como evitar spam no WhatsApp com bot pronto", "description": "Guia rápido para reduzir spam em grupos de WhatsApp com bot pronto. Veja regras essenciais e práticas para manter o grupo limpo e produtivo.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/como-evitar-spam-no-whatsapp/", "isPartOf": { "@type": "WebSite", "name": "Omnizap", "url": "https://omnizap.shop" } }
31
31
  </script>
32
32
  <script type="application/ld+json">
33
33
  {
@@ -344,7 +344,7 @@
344
344
  </section>
345
345
  </main>
346
346
 
347
- <footer class="footer-meta">© 2026 OMNIZAP SYSTEM · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
347
+ <footer class="footer-meta">© 2026 OMNIZAP · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
348
348
  </div>
349
349
  </body>
350
350
  </html>
@@ -15,7 +15,7 @@
15
15
 
16
16
  <meta property="og:type" content="article" />
17
17
  <meta property="og:locale" content="pt_BR" />
18
- <meta property="og:site_name" content="OmniZap System" />
18
+ <meta property="og:site_name" content="Omnizap" />
19
19
  <meta property="og:title" content="Como moderar grupo no WhatsApp com bot | Guia prático" />
20
20
  <meta property="og:description" content="Aprenda como moderar grupo no WhatsApp com menos trabalho manual. Use bot pronto para bloquear spam, organizar regras e manter conversa produtiva." />
21
21
  <meta property="og:url" content="https://omnizap.shop/seo/como-moderar-grupo-whatsapp/" />
@@ -27,7 +27,7 @@
27
27
  <meta name="twitter:image" content="https://omnizap.shop/assets/images/hero-banner-1280.jpg" />
28
28
 
29
29
  <script type="application/ld+json">
30
- { "@context": "https://schema.org", "@type": "WebPage", "name": "Como moderar grupo no WhatsApp com bot | Guia prático", "description": "Aprenda como moderar grupo no WhatsApp com menos trabalho manual. Use bot pronto para bloquear spam, organizar regras e manter conversa produtiva.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/como-moderar-grupo-whatsapp/", "isPartOf": { "@type": "WebSite", "name": "OmniZap System", "url": "https://omnizap.shop" } }
30
+ { "@context": "https://schema.org", "@type": "WebPage", "name": "Como moderar grupo no WhatsApp com bot | Guia prático", "description": "Aprenda como moderar grupo no WhatsApp com menos trabalho manual. Use bot pronto para bloquear spam, organizar regras e manter conversa produtiva.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/como-moderar-grupo-whatsapp/", "isPartOf": { "@type": "WebSite", "name": "Omnizap", "url": "https://omnizap.shop" } }
31
31
  </script>
32
32
  <script type="application/ld+json">
33
33
  {
@@ -344,7 +344,7 @@
344
344
  </section>
345
345
  </main>
346
346
 
347
- <footer class="footer-meta">© 2026 OMNIZAP SYSTEM · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
347
+ <footer class="footer-meta">© 2026 OMNIZAP · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
348
348
  </div>
349
349
  </body>
350
350
  </html>
@@ -15,7 +15,7 @@
15
15
 
16
16
  <meta property="og:type" content="article" />
17
17
  <meta property="og:locale" content="pt_BR" />
18
- <meta property="og:site_name" content="OmniZap System" />
18
+ <meta property="og:site_name" content="Omnizap" />
19
19
  <meta property="og:title" content="Como organizar comunidade no WhatsApp com automação" />
20
20
  <meta property="og:description" content="Veja como organizar comunidade no WhatsApp com bot pronto: regras claras, avisos automáticos e menos ruído nas conversas." />
21
21
  <meta property="og:url" content="https://omnizap.shop/seo/como-organizar-comunidade-whatsapp/" />
@@ -27,7 +27,7 @@
27
27
  <meta name="twitter:image" content="https://omnizap.shop/assets/images/hero-banner-1280.jpg" />
28
28
 
29
29
  <script type="application/ld+json">
30
- { "@context": "https://schema.org", "@type": "WebPage", "name": "Como organizar comunidade no WhatsApp com automação", "description": "Veja como organizar comunidade no WhatsApp com bot pronto: regras claras, avisos automáticos e menos ruído nas conversas.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/como-organizar-comunidade-whatsapp/", "isPartOf": { "@type": "WebSite", "name": "OmniZap System", "url": "https://omnizap.shop" } }
30
+ { "@context": "https://schema.org", "@type": "WebPage", "name": "Como organizar comunidade no WhatsApp com automação", "description": "Veja como organizar comunidade no WhatsApp com bot pronto: regras claras, avisos automáticos e menos ruído nas conversas.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/como-organizar-comunidade-whatsapp/", "isPartOf": { "@type": "WebSite", "name": "Omnizap", "url": "https://omnizap.shop" } }
31
31
  </script>
32
32
  <script type="application/ld+json">
33
33
  {
@@ -344,7 +344,7 @@
344
344
  </section>
345
345
  </main>
346
346
 
347
- <footer class="footer-meta">© 2026 OMNIZAP SYSTEM · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
347
+ <footer class="footer-meta">© 2026 OMNIZAP · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
348
348
  </div>
349
349
  </body>
350
350
  </html>
@@ -15,7 +15,7 @@
15
15
 
16
16
  <meta property="og:type" content="article" />
17
17
  <meta property="og:locale" content="pt_BR" />
18
- <meta property="og:site_name" content="OmniZap System" />
18
+ <meta property="og:site_name" content="Omnizap" />
19
19
  <meta property="og:title" content="Melhor bot para WhatsApp em grupos | Como escolher" />
20
20
  <meta property="og:description" content="Compare critérios para escolher o melhor bot para grupos de WhatsApp. Veja o que avaliar em moderação, automação e facilidade de uso." />
21
21
  <meta property="og:url" content="https://omnizap.shop/seo/melhor-bot-whatsapp-para-grupos/" />
@@ -27,7 +27,7 @@
27
27
  <meta name="twitter:image" content="https://omnizap.shop/assets/images/hero-banner-1280.jpg" />
28
28
 
29
29
  <script type="application/ld+json">
30
- { "@context": "https://schema.org", "@type": "WebPage", "name": "Melhor bot para WhatsApp em grupos | Como escolher", "description": "Compare critérios para escolher o melhor bot para grupos de WhatsApp. Veja o que avaliar em moderação, automação e facilidade de uso.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/melhor-bot-whatsapp-para-grupos/", "isPartOf": { "@type": "WebSite", "name": "OmniZap System", "url": "https://omnizap.shop" } }
30
+ { "@context": "https://schema.org", "@type": "WebPage", "name": "Melhor bot para WhatsApp em grupos | Como escolher", "description": "Compare critérios para escolher o melhor bot para grupos de WhatsApp. Veja o que avaliar em moderação, automação e facilidade de uso.", "inLanguage": "pt-BR", "url": "https://omnizap.shop/seo/melhor-bot-whatsapp-para-grupos/", "isPartOf": { "@type": "WebSite", "name": "Omnizap", "url": "https://omnizap.shop" } }
31
31
  </script>
32
32
  <script type="application/ld+json">
33
33
  {
@@ -344,7 +344,7 @@
344
344
  </section>
345
345
  </main>
346
346
 
347
- <footer class="footer-meta">© 2026 OMNIZAP SYSTEM · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
347
+ <footer class="footer-meta">© 2026 OMNIZAP · SEO SATELLITE V2 · ATUALIZADO EM 2026-02-28</footer>
348
348
  </div>
349
349
  </body>
350
350
  </html>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Admin Stickers | OmniZap System</title>
6
+ <title>Admin Stickers | Omnizap</title>
7
7
  <meta name="robots" content="noindex, nofollow" />
8
8
  <meta name="theme-color" content="#020617" />
9
9
  <link rel="icon" href="/favicon.ico" sizes="any" />
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Criar Pack de Stickers | OmniZap System</title>
6
+ <title>Criar Pack de Stickers | Omnizap</title>
7
7
  <meta name="description" content="Crie seus próprios pacotes de figurinhas para WhatsApp de forma simples e integrada." />
8
8
  <meta name="robots" content="noindex, nofollow" />
9
9
  <meta name="theme-color" content="#020617" />
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Marketplace de Stickers | OmniZap System</title>
6
+ <title>Marketplace de Stickers | Omnizap</title>
7
7
  <meta name="description" content="Explore e integre packs de figurinhas no seu bot de WhatsApp via API oficial do OmniZap." />
8
8
  <meta name="robots" content="index, follow" />
9
9
  <meta name="theme-color" content="#020617" />
@@ -11,16 +11,16 @@
11
11
  <link rel="icon" href="/favicon.ico" sizes="any" />
12
12
  <link rel="manifest" href="/site.webmanifest" />
13
13
  <link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />
14
+ <link rel="preconnect" href="https://fonts.googleapis.com" />
15
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
16
+ <link href="https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@400;500;700&display=swap" rel="stylesheet" />
14
17
  <link rel="stylesheet" href="/assets/css/stickers-react.css" />
15
18
  <style>
16
19
  body {
17
20
  margin: 0;
18
- background: #020617;
21
+ background: radial-gradient(46rem 26rem at 6% -8%, rgb(16 185 129 / 0.14), transparent 62%), radial-gradient(38rem 22rem at 92% -6%, rgb(14 165 233 / 0.16), transparent 58%), #020617;
19
22
  color: #f8fafc;
20
- font-family:
21
- system-ui,
22
- -apple-system,
23
- sans-serif;
23
+ font-family: 'Space Grotesk', 'Manrope', 'Segoe UI', sans-serif;
24
24
  }
25
25
  #stickers-react-root {
26
26
  min-height: 100vh;
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Inventário de Suboperadores | OmniZap System</title>
6
+ <title>Inventário de Suboperadores | Omnizap</title>
7
7
  <meta name="description" content="Inventário público de suboperadores do OmniZap (cloud, e-mail e monitoramento)." />
8
8
  <meta name="robots" content="index, follow" />
9
9
  <link rel="canonical" href="https://omnizap.shop/suboperadores/" />
@@ -231,7 +231,7 @@
231
231
  </section>
232
232
  </main>
233
233
 
234
- <footer class="footer">© 2026 OMNIZAP SYSTEM · SUBPROCESSORS V2</footer>
234
+ <footer class="footer">© 2026 OMNIZAP · SUBPROCESSORS V2</footer>
235
235
  </div>
236
236
  </body>
237
237
  </html>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Termos de Uso (Texto Integral) | OmniZap System</title>
6
+ <title>Termos de Uso (Texto Integral) | Omnizap</title>
7
7
  <meta name="robots" content="noindex, follow" />
8
8
  <link rel="canonical" href="https://omnizap.shop/termos-de-uso/" />
9
9
  <link rel="preconnect" href="https://fonts.googleapis.com" />
@@ -191,16 +191,16 @@
191
191
  <section class="glass-card" style="border-bottom: 4px solid hsla(142, 71%, 45%, 0.3)">
192
192
  <h1>Termos de Uso</h1>
193
193
  <p><span class="accent">Última atualização:</span> 07/03/2026</p>
194
- <p>Este instrumento regula o acesso e uso do site, API, painel e funcionalidades de automação disponibilizadas pelo OmniZap System.</p>
194
+ <p>Este instrumento regula o acesso e uso do site, API, painel e funcionalidades de automação disponibilizadas pelo Omnizap.</p>
195
195
  <div class="contact-actions">
196
- <a class="contact-btn wa" href="https://wa.me/559591122954" target="_blank">WhatsApp Oficial</a>
196
+ <a class="contact-btn wa" href="__WHATSAPP_SUPPORT_URL__" target="_blank">WhatsApp Oficial</a>
197
197
  <a class="contact-btn ig" href="https://www.instagram.com/kaikybrofc/" target="_blank">Instagram</a>
198
198
  </div>
199
199
  </section>
200
200
 
201
201
  <section class="glass-card">
202
202
  <h2>1. Identificação</h2>
203
- <p>Responsável: <strong>Kaiky Brito Ribeiro</strong> (CNPJ 59.034.123/0001-96). O OmniZap System é um projeto independente e não oficial da Meta Platforms, Inc.</p>
203
+ <p>Responsável: <strong>Kaiky Brito Ribeiro</strong> (CNPJ 59.034.123/0001-96). O Omnizap é um projeto independente e não oficial da Meta Platforms, Inc.</p>
204
204
  </section>
205
205
 
206
206
  <section class="glass-card">
@@ -231,11 +231,11 @@
231
231
 
232
232
  <section class="glass-card">
233
233
  <h2>5. Responsabilidades</h2>
234
- <p>O usuário é integralmente responsável pelas operações executadas por sua conta. O OmniZap System não garante disponibilidade ininterrupta ou invulnerabilidade absoluta.</p>
234
+ <p>O usuário é integralmente responsável pelas operações executadas por sua conta. O Omnizap não garante disponibilidade ininterrupta ou invulnerabilidade absoluta.</p>
235
235
  </section>
236
236
  </main>
237
237
 
238
- <footer class="footer">© 2026 OMNIZAP SYSTEM · FULL TERMS V2</footer>
238
+ <footer class="footer">© 2026 OMNIZAP · FULL TERMS V2</footer>
239
239
  </div>
240
240
  </body>
241
241
  </html>
@@ -3,8 +3,8 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Termos de Uso | OmniZap System</title>
7
- <meta name="description" content="Termos de Uso oficiais do OmniZap System: regras de acesso, condutas proibidas, privacidade e responsabilidades." />
6
+ <title>Termos de Uso | Omnizap</title>
7
+ <meta name="description" content="Termos de Uso oficiais do Omnizap: regras de acesso, condutas proibidas, privacidade e responsabilidades." />
8
8
  <meta name="robots" content="index, follow" />
9
9
  <link rel="canonical" href="https://omnizap.shop/termos-de-uso/" />
10
10
  <link rel="icon" href="/favicon.ico" sizes="any" />
@@ -26,7 +26,7 @@
26
26
  </style>
27
27
  </head>
28
28
  <body>
29
- <div id="terms-react-root"></div>
29
+ <div id="terms-react-root" data-whatsapp-support-number="__WHATSAPP_SUPPORT_NUMBER__" data-whatsapp-support-url="__WHATSAPP_SUPPORT_URL__" data-whatsapp-support-display="__WHATSAPP_SUPPORT_DISPLAY__" data-whatsapp-support-lgpd-url="__WHATSAPP_SUPPORT_URL_LGPD__"></div>
30
30
  <noscript>
31
31
  <main style="max-width: 800px; margin: 50px auto; padding: 20px; text-align: center">
32
32
  <h1>OmniZap - Termos de Uso</h1>
@@ -3,7 +3,7 @@
3
3
  <head>
4
4
  <meta charset="utf-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Redefinir Senha | OmniZap System</title>
6
+ <title>Redefinir Senha | Omnizap</title>
7
7
  <meta name="robots" content="noindex, nofollow" />
8
8
  <meta name="theme-color" content="#020617" />
9
9
  <link rel="icon" href="/favicon.ico" sizes="any" />
@@ -19,14 +19,13 @@
19
19
  -apple-system,
20
20
  sans-serif;
21
21
  }
22
- #login-react-root {
22
+ #user-password-reset-root {
23
23
  min-height: 100vh;
24
24
  }
25
25
  </style>
26
26
  </head>
27
27
  <body>
28
- <!-- Reaproveita o bundle de login para o fluxo de reset -->
29
- <div id="login-react-root" data-api-base-path="/api" data-panel-path="/user/"></div>
30
- <script type="module" src="/assets/js/login-react.bundle.js"></script>
28
+ <div id="user-password-reset-root" data-api-base-path="/api" data-login-path="/login" data-panel-path="/user" data-password-reset-web-path="/user/password-reset"></div>
29
+ <script type="module" src="/assets/js/user-password-reset-react.bundle.js"></script>
31
30
  </body>
32
31
  </html>