@kaikybrofc/omnizap-system 2.2.10 → 2.3.1

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 (123) hide show
  1. package/README.md +13 -13
  2. package/app/config/adminIdentity.js +1 -3
  3. package/app/connection/socketController.js +10 -20
  4. package/app/controllers/messageController.js +7 -28
  5. package/app/modules/aiModule/catCommand.js +29 -192
  6. package/app/modules/broadcastModule/noticeCommand.js +28 -97
  7. package/app/modules/gameModule/diceCommand.js +6 -32
  8. package/app/modules/playModule/playCommand.js +57 -258
  9. package/app/modules/quoteModule/quoteCommand.js +2 -4
  10. package/app/modules/rpgPokemonModule/rpgPokemonRepository.js +1 -13
  11. package/app/modules/statsModule/noMessageCommand.js +16 -84
  12. package/app/modules/statsModule/rankingCommand.js +5 -25
  13. package/app/modules/statsModule/rankingCommon.js +1 -9
  14. package/app/modules/stickerModule/convertToWebp.js +4 -27
  15. package/app/modules/stickerModule/stickerCommand.js +13 -24
  16. package/app/modules/stickerModule/stickerTextCommand.js +13 -25
  17. package/app/modules/stickerPackModule/autoPackCollectorService.js +16 -7
  18. package/app/modules/stickerPackModule/domainEventOutboxRepository.js +20 -36
  19. package/app/modules/stickerPackModule/domainEvents.js +2 -11
  20. package/app/modules/stickerPackModule/semanticReclassificationEngine.js +13 -50
  21. package/app/modules/stickerPackModule/semanticReclassificationEngine.test.js +2 -15
  22. package/app/modules/stickerPackModule/semanticThemeClusterService.js +14 -41
  23. package/app/modules/stickerPackModule/stickerAssetClassificationRepository.js +25 -95
  24. package/app/modules/stickerPackModule/stickerAssetRepository.js +12 -31
  25. package/app/modules/stickerPackModule/stickerAssetReprocessQueueRepository.js +13 -18
  26. package/app/modules/stickerPackModule/stickerAutoPackByTagsRuntime.js +284 -709
  27. package/app/modules/stickerPackModule/stickerClassificationBackgroundRuntime.js +27 -106
  28. package/app/modules/stickerPackModule/stickerClassificationService.js +46 -77
  29. package/app/modules/stickerPackModule/stickerDedicatedTaskWorkerRuntime.js +13 -53
  30. package/app/modules/stickerPackModule/stickerDomainEventBus.js +10 -16
  31. package/app/modules/stickerPackModule/stickerDomainEventConsumerRuntime.js +40 -39
  32. package/app/modules/stickerPackModule/stickerMarketplaceDriftService.js +1 -4
  33. package/app/modules/stickerPackModule/stickerObjectStorageService.js +26 -26
  34. package/app/modules/stickerPackModule/stickerPackCommandHandlers.js +32 -187
  35. package/app/modules/stickerPackModule/stickerPackInteractionEventRepository.js +6 -15
  36. package/app/modules/stickerPackModule/stickerPackItemRepository.js +6 -32
  37. package/app/modules/stickerPackModule/stickerPackMarketplaceService.js +12 -36
  38. package/app/modules/stickerPackModule/stickerPackMessageService.js +12 -40
  39. package/app/modules/stickerPackModule/stickerPackRepository.js +23 -66
  40. package/app/modules/stickerPackModule/stickerPackScoreSnapshotRepository.js +9 -21
  41. package/app/modules/stickerPackModule/stickerPackScoreSnapshotRuntime.js +10 -40
  42. package/app/modules/stickerPackModule/stickerPackService.js +50 -115
  43. package/app/modules/stickerPackModule/stickerPackServiceRuntime.js +2 -21
  44. package/app/modules/stickerPackModule/stickerPackUtils.js +13 -3
  45. package/app/modules/stickerPackModule/stickerStorageService.js +16 -65
  46. package/app/modules/stickerPackModule/stickerWorkerPipelineRuntime.js +4 -22
  47. package/app/modules/stickerPackModule/stickerWorkerTaskQueueRepository.js +14 -29
  48. package/app/modules/systemMetricsModule/pingCommand.js +9 -39
  49. package/app/modules/tiktokModule/tiktokCommand.js +17 -109
  50. package/app/modules/userModule/userCommand.js +2 -88
  51. package/app/observability/metrics.js +5 -16
  52. package/app/services/captchaService.js +1 -6
  53. package/app/services/dbWriteQueue.js +3 -18
  54. package/app/services/featureFlagService.js +2 -8
  55. package/app/services/newsBroadcastService.js +0 -1
  56. package/app/services/queueUtils.js +2 -4
  57. package/app/services/whatsappLoginLinkService.js +7 -9
  58. package/app/store/premiumUserStore.js +1 -2
  59. package/app/utils/antiLink/antiLinkModule.js +3 -233
  60. package/app/utils/logger/loggerModule.js +9 -34
  61. package/app/utils/systemMetrics/systemMetricsModule.js +1 -4
  62. package/database/index.js +1 -0
  63. package/database/init.js +1 -8
  64. package/database/migrations/20260228_0027_web_visit_event.sql +15 -0
  65. package/docker-compose.yml +27 -27
  66. package/docs/seo/omnizap-seo-playbook-br-2026-02-28.md +26 -0
  67. package/docs/seo/satellite-page-template.md +2 -0
  68. package/docs/seo/satellite-pages-phase1.json +40 -177
  69. package/eslint.config.js +2 -15
  70. package/index.js +8 -36
  71. package/ml/clip_classifier/README.md +4 -6
  72. package/observability/alert-rules.yml +12 -12
  73. package/observability/grafana/provisioning/dashboards/dashboards.yml +1 -1
  74. package/package.json +6 -3
  75. package/public/api-docs/index.html +220 -193
  76. package/public/bot-whatsapp-para-grupo/index.html +291 -261
  77. package/public/bot-whatsapp-sem-programar/index.html +291 -261
  78. package/public/comandos/index.html +421 -406
  79. package/public/como-automatizar-avisos-no-whatsapp/index.html +291 -261
  80. package/public/como-criar-comandos-whatsapp/index.html +291 -261
  81. package/public/como-evitar-spam-no-whatsapp/index.html +291 -261
  82. package/public/como-moderar-grupo-whatsapp/index.html +291 -261
  83. package/public/como-organizar-comunidade-whatsapp/index.html +291 -261
  84. package/public/css/github-project-panel.css +13 -8
  85. package/public/css/stickers-admin.css +25 -9
  86. package/public/css/styles.css +23 -16
  87. package/public/index.html +1106 -993
  88. package/public/js/apps/apiDocsApp.js +17 -167
  89. package/public/js/apps/createPackApp.js +69 -332
  90. package/public/js/apps/homeApp.js +274 -101
  91. package/public/js/apps/loginApp.js +3 -12
  92. package/public/js/apps/stickersAdminApp.js +190 -181
  93. package/public/js/apps/stickersApp.js +482 -1411
  94. package/public/js/apps/userApp.js +217 -1
  95. package/public/js/catalog.js +11 -74
  96. package/public/js/github-panel/components/ErrorState.js +1 -8
  97. package/public/js/github-panel/components/GithubProjectPanel.js +2 -9
  98. package/public/js/github-panel/components/SkeletonPanel.js +1 -11
  99. package/public/js/github-panel/components/StatCard.js +1 -7
  100. package/public/js/github-panel/vendor/react.js +1 -9
  101. package/public/js/runtime/react-runtime.js +1 -9
  102. package/public/licenca/index.html +200 -86
  103. package/public/login/index.html +315 -325
  104. package/public/melhor-bot-whatsapp-para-grupos/index.html +291 -261
  105. package/public/stickers/admin/index.html +14 -19
  106. package/public/stickers/create/index.html +39 -44
  107. package/public/stickers/index.html +96 -107
  108. package/public/termos-de-uso/index.html +369 -122
  109. package/public/user/index.html +527 -350
  110. package/scripts/cache-bust.mjs +5 -24
  111. package/scripts/generate-seo-satellite-pages.mjs +10 -13
  112. package/scripts/run-prettier-all.mjs +25 -0
  113. package/scripts/sticker-catalog-loadtest.mjs +13 -11
  114. package/scripts/sticker-worker-task.mjs +1 -4
  115. package/scripts/sync-readme-snapshot.mjs +3 -2
  116. package/server/auth/googleWebAuth/googleWebAuthService.js +614 -0
  117. package/server/controllers/stickerCatalogController.js +297 -632
  118. package/server/http/httpServer.js +2 -10
  119. package/server/routes/stickerCatalog/catalogHandlers/catalogAdminHttp.js +1 -8
  120. package/server/routes/stickerCatalog/catalogHandlers/catalogAuthHttp.js +1 -9
  121. package/server/routes/stickerCatalog/catalogHandlers/catalogPublicHttp.js +10 -11
  122. package/server/routes/stickerCatalog/catalogHandlers/catalogUploadHttp.js +1 -10
  123. package/server/routes/stickerCatalog/catalogRouter.js +11 -13
@@ -1,89 +1,194 @@
1
1
  <!doctype html>
2
2
  <html lang="pt-BR">
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Licença | OmniZap System</title>
7
- <meta name="description" content="Informações de licença do OmniZap System (MIT License)." />
8
- <meta name="robots" content="index, follow" />
9
- <link rel="canonical" href="https://omnizap.shop/licenca/" />
10
- <link rel="icon" type="image/jpeg" href="https://iili.io/FC3FABe.jpg" />
11
- <link rel="apple-touch-icon" href="https://iili.io/FC3FABe.jpg" />
12
- <style>
13
- :root {
14
- --bg: #0f172a;
15
- --bg-2: #111827;
16
- --line: rgba(255, 255, 255, 0.05);
17
- --text: #f8fafc;
18
- --muted: #94a3b8;
19
- --card: #1e293bcc;
20
- }
21
- * { box-sizing: border-box; }
22
- body {
23
- margin: 0;
24
- font-family: "Manrope", system-ui, -apple-system, sans-serif;
25
- color: var(--text);
26
- background:
27
- radial-gradient(58rem 24rem at -8% -12%, #2563eb26, transparent 60%),
28
- radial-gradient(58rem 24rem at 112% -10%, #7c3aed22, transparent 58%),
29
- linear-gradient(165deg, var(--bg), var(--bg-2));
30
- }
31
- .wrap { width: min(960px, 92vw); margin: 0 auto; padding: 24px 0 42px; }
32
- .top {
33
- display: flex;
34
- gap: 10px;
35
- flex-wrap: wrap;
36
- margin-bottom: 16px;
37
- }
38
- .top a {
39
- color: var(--text);
40
- text-decoration: none;
41
- border: 1px solid var(--line);
42
- border-radius: 10px;
43
- padding: 8px 12px;
44
- background: #111827;
45
- }
46
- .card {
47
- border: 1px solid var(--line);
48
- border-radius: 14px;
49
- background: var(--card);
50
- padding: 18px;
51
- margin-bottom: 12px;
52
- }
53
- h1, h2 { margin: 0 0 10px; }
54
- h1 { font-size: clamp(28px, 4.2vw, 38px); }
55
- p { color: var(--muted); line-height: 1.6; margin: 0 0 10px; }
56
- pre {
57
- margin: 0;
58
- white-space: pre-wrap;
59
- line-height: 1.5;
60
- color: #d6e4fa;
61
- border: 1px solid #314669;
62
- border-radius: 12px;
63
- background: #0f1729;
64
- padding: 14px;
65
- overflow: auto;
66
- }
67
- </style>
68
- </head>
69
- <body>
70
- <main class="wrap">
71
- <nav class="top" aria-label="Navegação">
72
- <a href="/">Início</a>
73
- <a href="/stickers/">Stickers</a>
74
- <a href="/api-docs/">API</a>
75
- <a href="/termos-de-uso/">Termos de Uso</a>
76
- </nav>
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>Licença | OmniZap System</title>
7
+ <meta name="description" content="Informações de licença do OmniZap System (MIT License)." />
8
+ <meta name="robots" content="index, follow" />
9
+ <link rel="canonical" href="https://omnizap.shop/licenca/" />
10
+ <link rel="icon" type="image/jpeg" href="https://iili.io/FC3FABe.jpg" />
11
+ <link rel="apple-touch-icon" href="https://iili.io/FC3FABe.jpg" />
12
+ <style>
13
+ :root {
14
+ --bg: #0f172a;
15
+ --bg-2: #111827;
16
+ --line: rgba(255, 255, 255, 0.05);
17
+ --text: #f8fafc;
18
+ --muted: #94a3b8;
19
+ --card: #1e293bcc;
20
+ }
21
+ * {
22
+ box-sizing: border-box;
23
+ }
24
+ body {
25
+ margin: 0;
26
+ font-family:
27
+ 'Manrope',
28
+ system-ui,
29
+ -apple-system,
30
+ sans-serif;
31
+ color: var(--text);
32
+ background: radial-gradient(58rem 24rem at -8% -12%, #2563eb26, transparent 60%), radial-gradient(58rem 24rem at 112% -10%, #7c3aed22, transparent 58%), linear-gradient(165deg, var(--bg), var(--bg-2));
33
+ }
34
+ .wrap {
35
+ width: min(960px, 92vw);
36
+ margin: 0 auto;
37
+ padding: 24px 0 42px;
38
+ }
39
+ .top {
40
+ display: flex;
41
+ gap: 10px;
42
+ flex-wrap: wrap;
43
+ margin-bottom: 16px;
44
+ }
45
+ .top a {
46
+ color: var(--text);
47
+ text-decoration: none;
48
+ border: 1px solid var(--line);
49
+ border-radius: 10px;
50
+ padding: 8px 12px;
51
+ background: #111827;
52
+ }
53
+ .card {
54
+ border: 1px solid var(--line);
55
+ border-radius: 14px;
56
+ background: var(--card);
57
+ padding: 18px;
58
+ margin-bottom: 12px;
59
+ }
60
+ h1,
61
+ h2 {
62
+ margin: 0 0 10px;
63
+ }
64
+ h1 {
65
+ font-size: clamp(28px, 4.2vw, 38px);
66
+ }
67
+ h2 {
68
+ font-size: 20px;
69
+ margin-top: 8px;
70
+ }
71
+ p {
72
+ color: var(--muted);
73
+ line-height: 1.6;
74
+ margin: 0 0 10px;
75
+ }
76
+ li {
77
+ color: var(--muted);
78
+ line-height: 1.6;
79
+ }
80
+ ul {
81
+ margin: 0;
82
+ padding-left: 18px;
83
+ }
84
+ a {
85
+ color: #2563eb;
86
+ }
87
+ .note {
88
+ font-size: 14px;
89
+ color: #c7d8f4;
90
+ }
91
+ .updated {
92
+ color: #bcd1ef;
93
+ font-size: 14px;
94
+ }
95
+ .contact-actions {
96
+ display: flex;
97
+ gap: 10px;
98
+ flex-wrap: wrap;
99
+ margin: 10px 0 6px;
100
+ }
101
+ .contact-btn {
102
+ text-decoration: none;
103
+ border-radius: 999px;
104
+ padding: 8px 12px;
105
+ font-size: 14px;
106
+ font-weight: 700;
107
+ border: 1px solid var(--line);
108
+ display: inline-flex;
109
+ align-items: center;
110
+ }
111
+ .contact-btn.wa {
112
+ background: linear-gradient(180deg, #163528, #112a1f);
113
+ color: #ddffec;
114
+ border-color: #2ba66b88;
115
+ }
116
+ .contact-btn.ig {
117
+ background: linear-gradient(180deg, #3f1d29, #2f1720);
118
+ color: #ffe5ef;
119
+ border-color: #d14b7888;
120
+ }
121
+ pre {
122
+ margin: 0;
123
+ white-space: pre-wrap;
124
+ line-height: 1.5;
125
+ color: #d6e4fa;
126
+ border: 1px solid #314669;
127
+ border-radius: 12px;
128
+ background: #0f1729;
129
+ padding: 14px;
130
+ overflow: auto;
131
+ }
132
+ </style>
133
+ </head>
134
+ <body>
135
+ <main class="wrap">
136
+ <nav class="top" aria-label="Navegação">
137
+ <a href="/">Início</a>
138
+ <a href="/stickers/">Stickers</a>
139
+ <a href="/api-docs/">API</a>
140
+ <a href="/termos-de-uso/">Termos de Uso</a>
141
+ </nav>
77
142
 
78
- <section class="card">
79
- <h1>Licença</h1>
80
- <p>Este projeto é distribuído sob a licença MIT. Abaixo está o texto da licença usada no repositório.</p>
81
- <p>Copyright (c) 2025 Kaiky Brito</p>
82
- </section>
143
+ <section class="card">
144
+ <h1>Licença</h1>
145
+ <p class="updated">Última atualização: 28/02/2026</p>
146
+ <p><strong>Resumo rápido:</strong> o código deste projeto é disponibilizado sob a licença MIT, que permite uso, cópia, modificação e distribuição.</p>
147
+ <p class="note"><strong>Para usar este projeto, você precisa estar ciente de que:</strong> ele é um projeto não oficial para estudo, sem autorização, afiliação ou endosso da Meta.</p>
148
+ <div class="contact-actions" aria-label="Canais oficiais de contato">
149
+ <a class="contact-btn wa" href="https://wa.me/559591122954" target="_blank" rel="noreferrer noopener">WhatsApp oficial</a>
150
+ <a class="contact-btn ig" href="https://www.instagram.com/kaikybrofc/" target="_blank" rel="noreferrer noopener">Instagram @kaikybrofc</a>
151
+ </div>
152
+ <p class="note"><strong>Contato direto:</strong> +55 95 9112-2954 (número no link: 559591122954).</p>
153
+ <p>Copyright (c) 2025 Kaiky Brito</p>
154
+ </section>
83
155
 
84
- <section class="card">
85
- <h2>MIT License (texto original)</h2>
86
- <pre>Permission is hereby granted, free of charge, to any person obtaining a copy
156
+ <section class="card">
157
+ <h2>1. O que a licença MIT permite</h2>
158
+ <ul>
159
+ <li>Usar o software para fins pessoais, estudo e comerciais.</li>
160
+ <li>Copiar, modificar, publicar e distribuir o código.</li>
161
+ <li>Incluir o software em outros projetos, inclusive proprietários.</li>
162
+ </ul>
163
+ </section>
164
+
165
+ <section class="card">
166
+ <h2>2. O que você precisa manter</h2>
167
+ <ul>
168
+ <li>Manter o aviso de copyright e o texto da licença MIT em cópias ou partes relevantes do software.</li>
169
+ <li>Respeitar leis aplicáveis e direitos de terceiros ao usar ou distribuir versões modificadas.</li>
170
+ </ul>
171
+ </section>
172
+
173
+ <section class="card">
174
+ <h2>3. Limites importantes da licença</h2>
175
+ <ul>
176
+ <li>O software é fornecido "como está", sem garantias de funcionamento contínuo, desempenho ou adequação a um objetivo específico.</li>
177
+ <li>Os autores não se responsabilizam por danos indiretos, perdas financeiras, interrupções ou falhas decorrentes do uso do software.</li>
178
+ <li>A licença MIT cobre o código do projeto; marcas, nomes de terceiros, APIs externas e plataformas como WhatsApp/Meta seguem seus próprios termos.</li>
179
+ </ul>
180
+ <p class="note"><strong>Em termos simples:</strong> você pode usar e adaptar o código livremente, mas assume os riscos do uso e deve manter os avisos da licença.</p>
181
+ </section>
182
+
183
+ <section class="card">
184
+ <h2>4. Projeto não oficial</h2>
185
+ <p>O OmniZap System é um projeto independente e não oficial, criado para estudo, aprendizado e experimentação técnica. Não há vínculo, autorização formal, parceria comercial ou endosso da Meta Platforms.</p>
186
+ </section>
187
+
188
+ <section class="card">
189
+ <h2>5. Texto oficial da MIT License</h2>
190
+ <pre>
191
+ Permission is hereby granted, free of charge, to any person obtaining a copy
87
192
  of this software and associated documentation files (the "Software"), to deal
88
193
  in the Software without restriction, including without limitation the rights
89
194
  to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
@@ -99,8 +204,17 @@ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
99
204
  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
100
205
  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
101
206
  OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
102
- SOFTWARE.</pre>
103
- </section>
104
- </main>
105
- </body>
207
+ SOFTWARE.</pre
208
+ >
209
+ </section>
210
+
211
+ <section class="card">
212
+ <h2>6. Histórico de alterações</h2>
213
+ <ul>
214
+ <li><strong>28/02/2026:</strong> revisão da página de licença com resumo em linguagem simples, direitos/obrigações da MIT, limites legais, aviso de projeto não oficial e contatos rápidos.</li>
215
+ <li><strong>26/02/2026:</strong> versão inicial da página de licença publicada.</li>
216
+ </ul>
217
+ </section>
218
+ </main>
219
+ </body>
106
220
  </html>