deploy-webapp 1.0.14 → 1.0.16

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.
@@ -54,16 +54,21 @@ const runMigration = async () => {
54
54
  (0, console_1.log)(`${constants_1.cor.Yellow}Históricos limpos. Iniciando migração...${constants_1.cor.Reset}`);
55
55
  const access_token_qa = await (0, qa_client_1.loginQA)(constants_1.client, constants_1.serviceKey, constants_1.emailLoginQA, constants_1.passwordLoginQA);
56
56
  const access_token_prod = await (0, prod_client_1.loginPROD)(constants_1.client, constants_1.serviceKey, constants_1.emailLoginPROD, constants_1.passwordLoginPROD);
57
- // Procurar arquivos na raiz do projeto (process.cwd())
57
+ // Procurar arquivos na pasta deployWebapp dentro do projeto (process.cwd())
58
58
  const projectRoot = process.cwd();
59
- const updateWorkflow = path.resolve(projectRoot, "updateWorkflow.json");
60
- const csvFilePath = path.resolve(projectRoot, "ids.csv");
59
+ const deployWebappDir = path.resolve(projectRoot, "deployWebapp");
60
+ const updateWorkflow = path.resolve(deployWebappDir, "updateWorkflow.json");
61
+ const csvFilePath = path.resolve(deployWebappDir, "ids.csv");
62
+ // Verificar se a pasta deployWebapp existe
63
+ if (!fs.existsSync(deployWebappDir)) {
64
+ throw new Error(`Pasta deployWebapp não encontrada em: ${projectRoot}\nCertifique-se de que o pacote foi instalado corretamente.`);
65
+ }
61
66
  // Verificar se os arquivos existem
62
67
  if (!fs.existsSync(updateWorkflow)) {
63
- throw new Error(`Arquivo updateWorkflow.json não encontrado em: ${projectRoot}\nCertifique-se de que o arquivo está na raiz do projeto.`);
68
+ throw new Error(`Arquivo updateWorkflow.json não encontrado em: ${deployWebappDir}\nCertifique-se de que o arquivo está na pasta deployWebapp.`);
64
69
  }
65
70
  if (!fs.existsSync(csvFilePath)) {
66
- throw new Error(`Arquivo ids.csv não encontrado em: ${projectRoot}\nCertifique-se de que o arquivo está na raiz do projeto.`);
71
+ throw new Error(`Arquivo ids.csv não encontrado em: ${deployWebappDir}\nCertifique-se de que o arquivo está na pasta deployWebapp.`);
67
72
  }
68
73
  const getUpdateWorkflow = fs.readFileSync(updateWorkflow, "utf8");
69
74
  const updateWorkflowData = JSON.parse(getUpdateWorkflow);
package/dist/0_index.js CHANGED
@@ -5,10 +5,24 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.runMigration = void 0;
7
7
  const dotenv_1 = __importDefault(require("dotenv"));
8
+ const fs_1 = __importDefault(require("fs"));
9
+ const path_1 = __importDefault(require("path"));
8
10
  const _0_1_migrator_1 = require("./0.1_migrator");
9
11
  Object.defineProperty(exports, "runMigration", { enumerable: true, get: function () { return _0_1_migrator_1.runMigration; } });
10
12
  if (require.main === module) {
11
- dotenv_1.default.config();
13
+ // Carregar .env da pasta deployWebapp se existir, senão da raiz
14
+ const projectRoot = process.cwd();
15
+ const deployWebappEnv = path_1.default.resolve(projectRoot, "deployWebapp", ".env");
16
+ const rootEnv = path_1.default.resolve(projectRoot, ".env");
17
+ if (fs_1.default.existsSync(deployWebappEnv)) {
18
+ dotenv_1.default.config({ path: deployWebappEnv });
19
+ }
20
+ else if (fs_1.default.existsSync(rootEnv)) {
21
+ dotenv_1.default.config({ path: rootEnv });
22
+ }
23
+ else {
24
+ dotenv_1.default.config(); // Fallback para comportamento padrão
25
+ }
12
26
  (0, _0_1_migrator_1.runMigration)().catch(error => {
13
27
  console.error("Migration failed:", error);
14
28
  process.exit(1);
@@ -13,7 +13,19 @@ exports.checkIdCreated = checkIdCreated;
13
13
  const dotenv_1 = __importDefault(require("dotenv"));
14
14
  const fs_1 = __importDefault(require("fs"));
15
15
  const path_1 = __importDefault(require("path"));
16
- dotenv_1.default.config();
16
+ // Carregar .env da pasta deployWebapp se existir, senão da raiz
17
+ const projectRoot = process.cwd();
18
+ const deployWebappEnv = path_1.default.resolve(projectRoot, "deployWebapp", ".env");
19
+ const rootEnv = path_1.default.resolve(projectRoot, ".env");
20
+ if (fs_1.default.existsSync(deployWebappEnv)) {
21
+ dotenv_1.default.config({ path: deployWebappEnv });
22
+ }
23
+ else if (fs_1.default.existsSync(rootEnv)) {
24
+ dotenv_1.default.config({ path: rootEnv });
25
+ }
26
+ else {
27
+ dotenv_1.default.config(); // Fallback para comportamento padrão
28
+ }
17
29
  // Determinar o diretório de trabalho correto
18
30
  // Se estiver em node_modules, usar process.cwd() (raiz do projeto)
19
31
  // Caso contrário, usar __dirname (modo desenvolvimento)
package/install.js CHANGED
@@ -41,15 +41,29 @@ function findProjectRoot(startPath) {
41
41
 
42
42
  const projectRoot = findProjectRoot(packagePath);
43
43
 
44
- // Arquivos a serem copiados (com seus caminhos de origem)
44
+ // Criar pasta deployWebapp na raiz do projeto
45
+ const deployWebappDir = path.join(projectRoot, 'deployWebapp');
46
+ if (!fs.existsSync(deployWebappDir)) {
47
+ try {
48
+ fs.mkdirSync(deployWebappDir, { recursive: true });
49
+ console.log('✅ deploy-webapp: Pasta deployWebapp criada!');
50
+ } catch (error) {
51
+ console.error('❌ deploy-webapp: Erro ao criar pasta deployWebapp:', error.message);
52
+ process.exit(1);
53
+ }
54
+ }
55
+
56
+ // Arquivos a serem copiados (com seus caminhos de origem) - dentro da pasta deployWebapp
45
57
  const filesToCopy = [
46
- { source: path.join(utilsPath, 'ids.csv'), dest: 'ids.csv' },
47
- { source: path.join(utilsPath, 'updateWorkflow.json'), dest: 'updateWorkflow.json' },
48
- { source: path.join(packagePath, 'README.md'), dest: 'README.md' }
58
+ { source: path.join(utilsPath, 'ids.csv'), dest: path.join('deployWebapp', 'ids.csv') },
59
+ { source: path.join(utilsPath, 'updateWorkflow.json'), dest: path.join('deployWebapp', 'updateWorkflow.json') },
60
+ { source: path.join(packagePath, 'README.md'), dest: path.join('deployWebapp', 'README.md') }
49
61
  ];
50
62
 
51
63
  // Conteúdo do arquivo migrate.js a ser criado
52
- const migrateJsContent = "require('dotenv').config();\n" +
64
+ const migrateJsContent = "const path = require('path');\n" +
65
+ "const fs = require('fs');\n" +
66
+ "require('dotenv').config({ path: path.resolve(__dirname, '.env') });\n" +
53
67
  "const { runMigration } = require('deploy-webapp');\n\n" +
54
68
  "console.log('🚀 Iniciando deploy...');\n\n" +
55
69
  "runMigration()\n" +
@@ -127,61 +141,32 @@ filesToCopy.forEach(({ source, dest }) => {
127
141
  }
128
142
  });
129
143
 
130
- // Criar arquivo migrate.js se não existir
131
- const migrateJsPath = path.join(projectRoot, 'migrate.js');
144
+ // Criar arquivo migrate.js dentro da pasta deployWebapp
145
+ const migrateJsPath = path.join(deployWebappDir, 'migrate.js');
132
146
  if (!fs.existsSync(migrateJsPath)) {
133
147
  try {
134
148
  fs.writeFileSync(migrateJsPath, migrateJsContent, 'utf8');
135
- console.log('✅ deploy-webapp: migrate.js criado com sucesso!');
149
+ console.log('✅ deploy-webapp: migrate.js criado em deployWebapp/!');
136
150
  copiedCount++;
137
151
  } catch (error) {
138
152
  console.error('❌ deploy-webapp: Erro ao criar migrate.js:', error.message);
139
153
  }
140
154
  } else {
141
- console.log('ℹ️ deploy-webapp: migrate.js já existe, mantendo arquivo existente.');
155
+ console.log('ℹ️ deploy-webapp: migrate.js já existe em deployWebapp/, mantendo arquivo existente.');
142
156
  }
143
157
 
144
- // Criar arquivo .env se não existir
145
- const envPath = path.join(projectRoot, '.env');
158
+ // Criar arquivo .env dentro da pasta deployWebapp
159
+ const envPath = path.join(deployWebappDir, '.env');
146
160
  if (!fs.existsSync(envPath)) {
147
161
  try {
148
162
  fs.writeFileSync(envPath, envTemplateContent, 'utf8');
149
- console.log('✅ deploy-webapp: .env criado com sucesso!');
163
+ console.log('✅ deploy-webapp: .env criado em deployWebapp/!');
150
164
  copiedCount++;
151
165
  } catch (error) {
152
166
  console.error('❌ deploy-webapp: Erro ao criar .env:', error.message);
153
167
  }
154
168
  } else {
155
- console.log('ℹ️ deploy-webapp: .env já existe, mantendo arquivo existente.');
156
- }
157
-
158
- // Criar configuração do VS Code para ocultar node_modules
159
- const vscodeDir = path.join(projectRoot, '.vscode');
160
- const vscodeSettingsPath = path.join(vscodeDir, 'settings.json');
161
- const vscodeSettingsContent = JSON.stringify({
162
- "files.exclude": {
163
- "**/node_modules": true
164
- },
165
- "explorer.fileNesting.enabled": true,
166
- "explorer.fileNesting.patterns": {
167
- "node_modules": "node_modules"
168
- }
169
- }, null, 2) + '\n';
170
-
171
- if (!fs.existsSync(vscodeSettingsPath)) {
172
- try {
173
- // Criar diretório .vscode se não existir
174
- if (!fs.existsSync(vscodeDir)) {
175
- fs.mkdirSync(vscodeDir, { recursive: true });
176
- }
177
- fs.writeFileSync(vscodeSettingsPath, vscodeSettingsContent, 'utf8');
178
- console.log('✅ deploy-webapp: Configuração do VS Code criada (node_modules será ocultado)!');
179
- copiedCount++;
180
- } catch (error) {
181
- console.error('⚠️ deploy-webapp: Erro ao criar configuração do VS Code:', error.message);
182
- }
183
- } else {
184
- console.log('ℹ️ deploy-webapp: Configuração do VS Code já existe.');
169
+ console.log('ℹ️ deploy-webapp: .env já existe em deployWebapp/, mantendo arquivo existente.');
185
170
  }
186
171
 
187
172
  // Atualizar package.json com scripts se necessário
@@ -218,14 +203,14 @@ if (fs.existsSync(packageJsonPath)) {
218
203
  }
219
204
 
220
205
  // Adicionar script start se não existir ou se for diferente
221
- if (!packageJson.scripts.start || packageJson.scripts.start !== 'node migrate.js') {
222
- packageJson.scripts.start = 'node migrate.js';
206
+ if (!packageJson.scripts.start || packageJson.scripts.start !== 'node deployWebapp/migrate.js') {
207
+ packageJson.scripts.start = 'node deployWebapp/migrate.js';
223
208
  updated = true;
224
209
  }
225
210
 
226
211
  // Adicionar script migrate se não existir ou se for diferente
227
- if (!packageJson.scripts.migrate || packageJson.scripts.migrate !== 'node migrate.js') {
228
- packageJson.scripts.migrate = 'node migrate.js';
212
+ if (!packageJson.scripts.migrate || packageJson.scripts.migrate !== 'node deployWebapp/migrate.js') {
213
+ packageJson.scripts.migrate = 'node deployWebapp/migrate.js';
229
214
  updated = true;
230
215
  }
231
216
 
@@ -253,8 +238,8 @@ if (fs.existsSync(packageJsonPath)) {
253
238
  name: path.basename(projectRoot),
254
239
  version: '1.0.0',
255
240
  scripts: {
256
- start: 'node migrate.js',
257
- migrate: 'node migrate.js'
241
+ start: 'node deployWebapp/migrate.js',
242
+ migrate: 'node deployWebapp/migrate.js'
258
243
  },
259
244
  dependencies: {
260
245
  'deploy-webapp': require(path.join(packagePath, 'package.json')).version || 'latest'
@@ -270,13 +255,13 @@ if (fs.existsSync(packageJsonPath)) {
270
255
 
271
256
  if (copiedCount > 0) {
272
257
  console.log(`\n✨ deploy-webapp: ${copiedCount} arquivo(s) criado(s) automaticamente na raiz do projeto!`);
273
- console.log(`\n📝 Arquivos criados em: ${projectRoot}`);
258
+ console.log(`\n📝 Arquivos criados em: ${deployWebappDir}`);
274
259
  console.log('\n📋 Próximos passos:');
275
- console.log(' 1. 🔐 Edite .env com suas credenciais (substitua os valores de exemplo)');
276
- console.log(' 2. ✏️ Edite ids.csv com os IDs dos workflows que deseja migrar');
277
- console.log(' 3. ✏️ Edite updateWorkflow.json com suas configurações específicas');
260
+ console.log(' 1. 🔐 Edite deployWebapp/.env com suas credenciais (substitua os valores de exemplo)');
261
+ console.log(' 2. ✏️ Edite deployWebapp/ids.csv com os IDs dos workflows que deseja migrar');
262
+ console.log(' 3. ✏️ Edite deployWebapp/updateWorkflow.json com suas configurações específicas');
278
263
  console.log(' 4. 🚀 Execute: yarn start ou npm start\n');
279
- console.log('💡 Dica: Tudo está configurado! Basta preencher os valores e executar yarn start!\n');
264
+ console.log('💡 Dica: Tudo está configurado na pasta deployWebapp/! Basta preencher os valores e executar yarn start!\n');
280
265
  } else {
281
266
  console.log('\nℹ️ deploy-webapp: Todos os arquivos já existem na raiz do projeto.');
282
267
  console.log(' Execute: yarn start ou npm start para iniciar a migração.\n');
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "deploy-webapp",
3
- "version": "1.0.14",
3
+ "version": "1.0.16",
4
4
  "description": "Script para deploy de esteiras no WebApp.",
5
5
  "main": "dist/0_index.js",
6
6
  "bin": {
package/src/utils/ids.csv CHANGED
@@ -1,3 +1,2 @@
1
1
  workflow_id;
2
- d8e1d640-f734-4051-b296-1938cbf47e86
3
- 53553938-df30-46a4-9554-eddd7461c6b1
2
+ cole os ids dos workflows que deseja deployar aqui;
@@ -1,4 +1,4 @@
1
1
  {
2
- "flow_form_id": "6c1d5b15-c4f7-4fd8-97fa-aa8522d0a20a",
3
- "updateWorkflowProtocolFunction": "const tabChatListAreaReclamante = [\r\n \"5b2c64ba-4ca6-4a42-a5de-8f3f069fd0c2\", // Pendencia com reclamante 1 PROD RC\r\n \"48b76281-fea0-434e-b3e4-047a8e38a7d6\", // Pendencia com reclamante 2 PROD RC\r\n \"ba79e84a-70d3-4d86-b18a-d0649b1d368f\", // Pendencia com reclamante 3 PROD RC\r\n];\r\n\r\nconst tabChatListArea = [\r\n \"607b907a-7eb2-4ef2-b902-9513841de41f\", // Pendencia 1 PROD RC\r\n \"1bc17b34-50c8-4f2a-8049-1c5cabda8478\", // Pendencia 2 PROD RC\r\n \"f3682a6b-1f9c-40cb-ab37-efda6953e66a\", // Pendencia 3 PROD RC\r\n \"4d004afb-0ce8-4559-b95b-a9b450f71355\", // Pendenciar Área [Complemento] PROD RC\r\n \"d1eca09d-929e-40c5-9d7f-46ee9abf37dc\", // Pendenciar Área [Resposta Pendente] PROD RC\r\n];\r\n\r\nconst tabChatListReclamante = [\r\n \"75e43640-02b2-4d3a-a1ee-e7158c8c36ca\", // Pendenciar Reclamante PROD RC\r\n];\r\n\r\nconst tabChatListFechado = [\r\n \"8acf65df-6341-4448-ac88-ebac5e7524ba\", // Captura no cartão recusada PROD RC\r\n \"e609ad49-0d58-48fb-8521-932a3b39b450\", // Consulta CPF - LGPD PROD RC\r\n \"89d1b74a-23e1-4357-bb43-cbcce413ef00\", // Erro AWP Reembolso PROD RC\r\n \"6893fa78-6988-4d42-bbe8-56115ad6dafb\", // Perda Parcial PROD RC\r\n \"994b638d-b77c-4382-93d7-8a3c4a68a335\", // Prazo curto PROD RC\r\n \"7cfd92cd-d13a-4aa2-b4bc-1572d827d30f\", // Reativação ou Não reabilitar PROD RC\r\n \"bf053a72-3cca-46c2-adce-efef7249398f\", // Prêmio devido PROD RC\r\n \"0660628b-95db-4b5a-8b61-537711d73e8e\", // Proposta recusada auto PROD RC\r\n \"36987e66-cd0b-41cd-ba09-cb1f4f62ebc0\", // Sinistro 3o sem responsabilidade PROD RC\r\n \"1137350c-dad4-457c-bbf0-1de44bfb4d1c\", // Sinistro atender PROD RC\r\n \"4c1d0f3b-9c8e-41a4-aad0-c402688835a5\", // Sinistro DNC PROD RC\r\n \"356f351e-5f3f-4902-b145-d0e2aa38f5e4\", // Sinistro Datas / Peças PROD RC\r\n \"7301d8f7-5454-4063-aefe-7a6d73dfa90c\", // Sinistro Negativa PROD RC\r\n \"e3999399-d44d-4b02-adb8-a6215a293395\", // Sinistro pagamento PROD RC\r\n \"34e901e9-834b-4c91-82ee-99dc93b44608\", // Sinistro vendaval PROD RC\r\n \"161d59a0-3ead-4f3e-b355-658be1a01759\", // Template padrão PROD RC\r\n \"47507dd8-29c0-4450-8360-c1137cab8a06\", // Vidro homologado PROD RC\r\n \"183bab26-e4a4-4015-822b-2c97ae6304c6\", // Vidro logomarca PROD RC\r\n \"73e90d69-6f4e-4373-9130-446b5e93a1df\", // Vistoria de qualidade PROD RC\r\n]\r\n\r\nconst tabChatListRejeitado = [\r\n \"11ef7acb-44a6-4a69-aa83-ebd496a454fd\", // Rejeitada PROD RC\r\n]\r\n\r\nconst lastTabulation = protocol?.journey[0];\r\n\r\nconst tabChatAreaReclamante =\r\n lastTabulation && tabChatListAreaReclamante.includes(lastTabulation.tab_id);\r\n\r\nconst tabChatArea =\r\n lastTabulation && tabChatListArea.includes(lastTabulation.tab_id);\r\n\r\nconst tabChatReclamante =\r\n lastTabulation && tabChatListReclamante.includes(lastTabulation.tab_id);\r\n\r\nconst tabChatFechado =\r\n lastTabulation && tabChatListFechado.includes(lastTabulation.tab_id);\r\n\r\nconst tabChatRejeitado =\r\n lastTabulation && tabChatListRejeitado.includes(lastTabulation.tab_id);\r\n\r\nlet updatedWorkflowProtocol;\r\n\r\nif (tabChatAreaReclamante) {\r\n return {\r\n user_requested_already_viewed_protocol: true,\r\n // workflow_protocol_solicitation_status_id: \"\",\r\n optional_config: {\r\n ...workflowProtocol.optional_config,\r\n pendency_button: {\r\n clerk: false,\r\n broker: false,\r\n broker_frotas: false,\r\n tech: false,\r\n advisor: false,\r\n seller: false,\r\n backoffice: false,\r\n provider: false,\r\n commercial: false,\r\n frotas: false,\r\n area: true,\r\n reclamante: true,\r\n company: true,\r\n person: true,\r\n },\r\n },\r\n }\r\n} else if (tabChatArea) {\r\n return {\r\n user_requested_already_viewed_protocol: true,\r\n // workflow_protocol_solicitation_status_id: \"\",\r\n optional_config: {\r\n ...workflowProtocol.optional_config,\r\n pendency_button: {\r\n clerk: false,\r\n broker: false,\r\n broker_frotas: false,\r\n tech: false,\r\n advisor: false,\r\n seller: false,\r\n backoffice: false,\r\n provider: false,\r\n commercial: false,\r\n frotas: false,\r\n area: true,\r\n reclamante: false,\r\n company: false,\r\n person: false,\r\n },\r\n },\r\n }\r\n} else if (tabChatReclamante) {\r\n return {\r\n user_requested_already_viewed_protocol: true,\r\n // workflow_protocol_solicitation_status_id: \"\",\r\n optional_config: {\r\n ...workflowProtocol.optional_config,\r\n pendency_button: {\r\n clerk: false,\r\n broker: false,\r\n broker_frotas: false,\r\n tech: false,\r\n advisor: false,\r\n seller: false,\r\n backoffice: false,\r\n provider: false,\r\n commercial: false,\r\n frotas: false,\r\n area: false,\r\n reclamante: true,\r\n company: false,\r\n person: false,\r\n },\r\n },\r\n };\r\n} else if (tabChatFechado) {\r\n return {\r\n user_requested_already_viewed_protocol: true,\r\n // workflow_protocol_solicitation_status_id: \"\",\r\n optional_config: {\r\n ...workflowProtocol.optional_config,\r\n pendency_button: {\r\n clerk: false,\r\n broker: false,\r\n broker_frotas: false,\r\n tech: false,\r\n advisor: false,\r\n seller: false,\r\n backoffice: false,\r\n provider: false,\r\n commercial: false,\r\n frotas: false,\r\n area: false,\r\n reclamante: false,\r\n company: false,\r\n person: false,\r\n },\r\n },\r\n };\r\n} else if (tabChatRejeitado) {\r\n return {\r\n user_requested_already_viewed_protocol: true,\r\n // workflow_protocol_solicitation_status_id: \"\",\r\n optional_config: {\r\n ...workflowProtocol.optional_config,\r\n pendency_button: {\r\n clerk: false,\r\n broker: false,\r\n broker_frotas: false,\r\n tech: false,\r\n advisor: false,\r\n seller: false,\r\n backoffice: false,\r\n provider: false,\r\n commercial: false,\r\n frotas: false,\r\n area: false,\r\n reclamante: false,\r\n company: false,\r\n person: false,\r\n },\r\n },\r\n };\r\n} else {\r\n return {\r\n user_requested_already_viewed_protocol: true,\r\n // workflow_protocol_solicitation_status_id: \"\",\r\n optional_config: {\r\n ...workflowProtocol.optional_config,\r\n pendency_button: {\r\n clerk: false,\r\n broker: false,\r\n broker_frotas: false,\r\n tech: false,\r\n advisor: false,\r\n seller: false,\r\n backoffice: false,\r\n provider: false,\r\n commercial: false,\r\n frotas: false,\r\n area: false,\r\n reclamante: false,\r\n company: false,\r\n person: false,\r\n },\r\n },\r\n };\r\n}\r\n"
2
+ "flow_form_id": "",
3
+ "updateWorkflowProtocolFunction": ""
4
4
  }