diff --git a/JAR-inicial/Dockerfile b/JAR-inicial/Dockerfile new file mode 100644 index 0000000..b5a7adb --- /dev/null +++ b/JAR-inicial/Dockerfile @@ -0,0 +1,12 @@ + +# Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license +# Click nbfs://nbhost/SystemFileSystem/Templates/Other/Dockerfile to edit this template + +FROM alpine:latest + +CMD ["/bin/sh"] + +FROM openjdk:keepSwimmingJava +ADD /target/Swing-1.0-SNAPSHOT-jar-with-dependencies.jar Swing-1.0-SNAPSHOT-jar-with-dependencies.jar +expose 8080 +ENTRYPOINT java -jar Swing-1.0-SNAPSHOT-jar-with-dependencies.jar \ No newline at end of file diff --git a/JAR-inicial/pom.xml b/JAR-inicial/pom.xml index 4808c08..6b1ea6d 100644 --- a/JAR-inicial/pom.xml +++ b/JAR-inicial/pom.xml @@ -59,10 +59,15 @@ com.microsoft.sqlserver mssql-jdbc - 7.2.2.jre8 + 7.2.2.jre8 + + com.google.http-client + google-http-client + 1.41.2 + diff --git a/JAR-inicial/sql.sql b/JAR-inicial/sql.sql index c965b5c..1c51e6a 100644 --- a/JAR-inicial/sql.sql +++ b/JAR-inicial/sql.sql @@ -1,21 +1,25 @@ -create database keepSwimming; +<<<<<<< HEAD +//create database keepSwimming; + +======= +>>>>>>> 8d82bbcbc0777436c8ae76173cde357a100ac8a0 use keepSwimming; -create table empresa( - idEmpresa int primary key auto_increment, +create table [dbo].[Empresa]( + idEmpresa int primary key IDENTITY(100,1), cnpj char(18), nome varchar(50), email varchar (45), cep char(9), senha varchar(100) - )auto_increment 100; + ); INSERT INTO empresa VALUES (null,"03.778.130/0001-48", "Keep Swimming", 'Keep@hotmail.com', 06126020,'123'); -CREATE TABLE FUNCIONARIO ( - idFuncionario INT PRIMARY KEY AUTO_INCREMENT, +CREATE TABLE [dbo].[FUNCIONARIO] ( + idFuncionario INT PRIMARY KEY IDENTITY, fkGestor Int, fkEmpresa Int, Nome varchar(50), @@ -24,56 +28,64 @@ CREATE TABLE FUNCIONARIO ( Cargo VARCHAR(50), foreign key (fkGestor) references FUNCIONARIO(idFuncionario), foreign key (fkEmpresa) references empresa(idEmpresa) + on delete cascade ); -INSERT INTO FUNCIONARIO VALUES (null, null, 100, 'Gerson', 'Gerson@hotmail.com', '123', 'Gestor'); -INSERT INTO FUNCIONARIO VALUES (null, 1, 100, "Bruno", "bruno@hotmail.com", '123', 'Desenvolvedor'); +INSERT INTO [dbo].[FUNCIONARIO] VALUES (null, 100, 'Gerson', 'Gerson@hotmail.com', '123', 'Gestor'); +INSERT INTO [dbo].[FUNCIONARIO] VALUES ( 1, 100, 'Bruno', 'bruno@hotmail.com', '123', 'Desenvolvedor'); -CREATE TABLE Maquina ( - idMaquina INT PRIMARY KEY AUTO_INCREMENT, +CREATE TABLE [dbo].[Maquina] ( + idMaquina INT PRIMARY KEY IDENTITY, fkUsuario INT, sistemaOperacional varchar(50), fabricante varchar(50), arquitetura int, + hostName varchar(50), permissoes varchar(50), foreign key (fkUsuario) references FUNCIONARIO(idFuncionario) + on delete cascade ); -CREATE TABLE Processos ( - idProcesso INT PRIMARY KEY AUTO_INCREMENT, +CREATE TABLE [dbo].[Processos] ( + idProcesso INT PRIMARY KEY IDENTITY, fkMaquina INT, PID INT , Nome varchar(45), - usoCPU DOUBLE, - usoMemoria DOUBLE, + usoCPU FLOAT, + usoMemoria FLOAT, bytesUtilizados INT, - memVirtualUtilizada DOUBLE, + memVirtualUtilizada FLOAT, totalProcessos int, threads int, foreign key (fkMaquina) references Maquina(idMaquina) + on delete cascade ); -CREATE TABLE ComponentesHardware ( - ID INT PRIMARY KEY AUTO_INCREMENT, +CREATE TABLE [dbo].[ComponentesHardware] ( + ID INT PRIMARY KEY IDENTITY, fkMaquina INT, nomeDisco varchar(45), - tamanhoDisco DOUBLE, + tamanhoDisco FLOAT, modeloDisco varchar(100), qtdDiscos int, - memoriaTotal Double, + memoriaTotal FLOAT, processadorNome varchar(50), foreign key (fkMaquina) references Maquina(idMaquina) ); -CREATE TABLE Historico ( - ID INT PRIMARY KEY AUTO_INCREMENT, +CREATE TABLE [dbo].[Historico] ( + ID INT PRIMARY KEY IDENTITY, fkMaquina INT, data datetime, tempoInicializado varchar(45), tempoDeAtividade varchar(45), temperaturaAtual varchar(45), - memoriaEmUso Double, - memoriaDisponivel Double, - processadorUso Double, + memoriaEmUso FLOAT, + memoriaDisponivel FLOAT, + processadorUso FLOAT, foreign key (fkMaquina) references Maquina(idMaquina) - ); \ No newline at end of file +<<<<<<< HEAD +======= + on delete cascade +>>>>>>> 8d82bbcbc0777436c8ae76173cde357a100ac8a0 + ); diff --git a/JAR-inicial/src/Dockerfile b/JAR-inicial/src/Dockerfile new file mode 100644 index 0000000..ff29e5c --- /dev/null +++ b/JAR-inicial/src/Dockerfile @@ -0,0 +1,12 @@ + +# Click nbfs://nbhost/SystemFileSystem/Templates/Licenses/license-default.txt to change this license +# Click nbfs://nbhost/SystemFileSystem/Templates/Other/Dockerfile to edit this template + + + +CMD ["/bin/sh"] + +FROM openjdk:8-jre-alpine +ADD /target/Swing-1.0-SNAPSHOT-jar-with-dependencies.jar Swing-1.0-SNAPSHOT-jar-with-dependencies.jar +expose 8080 +ENTRYPOINT java -jar Swing-1.0-SNAPSHOT-jar-with-dependencies.jar \ No newline at end of file diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/Connection.java b/JAR-inicial/src/main/java/com/mycompany/swing/Connection.java index f8d922f..609a582 100644 --- a/JAR-inicial/src/main/java/com/mycompany/swing/Connection.java +++ b/JAR-inicial/src/main/java/com/mycompany/swing/Connection.java @@ -4,42 +4,47 @@ import javax.sql.DataSource; import org.apache.commons.dbcp2.BasicDataSource; - +/** + * + * @author WalderleyNeto e Bruno Henrrigue + */ public class Connection { + private BasicDataSource datasource; - private BasicDataSource dataSourceLocal; public Connection() { - this.datasource = new BasicDataSource(); - // this.datasource.setDriverClassName("org.h2.Driver"); - this.datasource.setDriverClassName("com.mysql.cj.jdbc.Driver"); - //this.datasource.setDriverClassName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); - - // this.datasource.setUrl("jdbc:h2:file:/home/aluno/.m2/repository/com/h2database/h2/1.4.199/meu_banco"); - // usuário padrao H2 - // this.datasource.setUsername("sa"); - // this.datasource.setPassword(""); - - - this.datasource.setUrl("jdbc:sqlserver://keepswimming.database.windows.net:1433;database=KeepSwimming;" - + "user=KeepSwimmin@keepswimming;password=2ads@grupo8;encrypt=true;trustServerCertificate=false;" - + "hostNameInCertificate=*.database.windows.net;loginTimeout=30;"); - this.datasource.setUsername("KeepSwimmin@keepswimming"); - this.datasource.setPassword("2ads@grupo8"); - - - this.dataSourceLocal.setUrl("jdbc:mysql://localhost:3306/KeepSwimming"); - this.dataSourceLocal.setUsername("urubu100"); - this.dataSourceLocal.setPassword("urubu100"); - + // Conexão com banco AZURE + datasource = new BasicDataSource(); + datasource.setDriverClassName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); + datasource.setUrl("jdbc:sqlserver://keepswimming.database.windows.net:1433;" + + "database=KeepSwimming;user=KeepSwimmin@keepswimming;password=2ads@grupo8;" + + "encrypt=true;trustServerCertificate=false;" + + "hostNameInCertificate=*.database.windows.net;loginTimeout=30;"); + datasource.setUsername("KeepSwimmin@keepswimming"); + datasource.setPassword("2ads@grupo8"); + +// Conexão com banco H2 +// this.datasource.setUrl("jdbc:h2:file:/home/aluno/.m2/repository" +// + "/com/h2database/h2/1.4.199/meu_banco"); +// this.datasource.setDriverClassName("org.h2.Driver"); +// this.datasource.setUsername("sa"); +// this.datasource.setPassword(""); + } + + public Connection(Boolean mysql){ + + // Conexão com banco MySQL Local + datasource = new BasicDataSource(); + datasource.setDriverClassName("com.mysql.cj.jdbc.Driver"); + datasource.setUrl("jdbc:mysql://172.17.0.2:3306/keep?autoReconnect=true&useSSL=false"); + datasource.setUsername("root"); + datasource.setPassword("root"); + } public BasicDataSource getDatasource() { return datasource; } - DataSource getDatasourceLocal() { - throw new UnsupportedOperationException("Not supported yet."); // Generated from nbfs://nbhost/SystemFileSystem/Templates/Classes/Code/GeneratedMethodBody - } } diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/EnviaToken.form b/JAR-inicial/src/main/java/com/mycompany/swing/EnviaToken.form index 52fa8b1..674e9f5 100644 --- a/JAR-inicial/src/main/java/com/mycompany/swing/EnviaToken.form +++ b/JAR-inicial/src/main/java/com/mycompany/swing/EnviaToken.form @@ -7,15 +7,9 @@ - - - - - - diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/EnviaToken.java b/JAR-inicial/src/main/java/com/mycompany/swing/EnviaToken.java index ffcb80d..68f087c 100644 --- a/JAR-inicial/src/main/java/com/mycompany/swing/EnviaToken.java +++ b/JAR-inicial/src/main/java/com/mycompany/swing/EnviaToken.java @@ -14,8 +14,14 @@ * @author lucas.alves@VALEMOBI.CORP */ public class EnviaToken extends javax.swing.JFrame { + public Funcionario funcionario; private String guardaCodig =""; + public void setIdsFuncionario(Funcionario idsFuncionario) + { + this.funcionario = idsFuncionario; + } + public Boolean getPassou() { return passou; } @@ -84,7 +90,7 @@ public void actionPerformed(java.awt.event.ActionEvent evt) { } }); getContentPane().add(btnConfereToken); - btnConfereToken.setBounds(140, 250, 83, 22); + btnConfereToken.setBounds(140, 250, 83, 24); jLabel2.setBackground(new java.awt.Color(255, 255, 255)); jLabel2.setForeground(new java.awt.Color(255, 255, 255)); @@ -111,13 +117,12 @@ public void actionPerformed(java.awt.event.ActionEvent evt) { }// //GEN-END:initComponents private void btnReenviaCodigoActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnReenviaCodigoActionPerformed - emiteCodigo (); + emiteCodigo(); System.out.println(getGuardaCodig()); try { TelegramBotsApi telegramBotsApi = new TelegramBotsApi(DefaultBotSession.class); - telegramBotsApi.registerBot(new KeepSwimming_TelegramBot(true)); - + telegramBotsApi.registerBot(new KeepSwimming_TelegramBot(true)); KeepSwimming_TelegramBot.sendToTelegramToken(guardaCodig); } catch (TelegramApiException e) { @@ -132,8 +137,8 @@ private void btnConfereTokenActionPerformed(java.awt.event.ActionEvent evt) {//G lblRespostaToken.setText("Digite um token valido para continuar!!"); } else if(usarioDigitou.equalsIgnoreCase(guardaCodig)){ -// new TelaUsuarioLogado().setVisible(true); - new TelaPrincipal().setVisible(true); +// new TelaUsuarioLogado().setVisible(true); + new TelaPrincipal(funcionario).setVisible(true); this.dispose(); } @@ -150,8 +155,6 @@ public void emiteCodigo (){ */ public static void main(String args[]) { - - try { for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { if ("Nimbus".equals(info.getName())) { @@ -170,11 +173,6 @@ public static void main(String args[]) { } // - - - - - /* Create and display the form */ java.awt.EventQueue.invokeLater(new Runnable() { public void run() { diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/Funcionario.java b/JAR-inicial/src/main/java/com/mycompany/swing/Funcionario.java index 26ea9f0..3ca3d92 100644 --- a/JAR-inicial/src/main/java/com/mycompany/swing/Funcionario.java +++ b/JAR-inicial/src/main/java/com/mycompany/swing/Funcionario.java @@ -3,14 +3,29 @@ public class Funcionario { - public int ID; + public Integer idFuncionario; public String EMAIL; public String SENHA; + public Funcionario() { } + public Integer getIdFuncionario() { + return idFuncionario; + } + + public void setIdFuncionario(Integer idFuncionario) { + this.idFuncionario = idFuncionario; + } + @Override + public String toString() { + return "Funcionario{" + "idFuncionario=" + idFuncionario + ", EMAIL=" + EMAIL + ", SENHA=" + SENHA + '}'; + } + + + public String getEMAIL() { return EMAIL; } diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/GetHardware.java b/JAR-inicial/src/main/java/com/mycompany/swing/GetHardware.java deleted file mode 100644 index 503ff6b..0000000 --- a/JAR-inicial/src/main/java/com/mycompany/swing/GetHardware.java +++ /dev/null @@ -1,92 +0,0 @@ -package com.mycompany.swing; - -import com.github.britooo.looca.api.group.discos.Disco; -import com.github.britooo.looca.api.group.discos.DiscosGroup; -import com.github.britooo.looca.api.group.memoria.Memoria; -import com.github.britooo.looca.api.group.processador.Processador; -import com.github.britooo.looca.api.group.temperatura.Temperatura; -import java.util.List; -import java.util.Timer; -import java.util.TimerTask; -import org.springframework.jdbc.core.BeanPropertyRowMapper; -import org.springframework.jdbc.core.JdbcTemplate; - - -public class GetHardware { - - public static void main(String[] args) { -// -// Timer timer = new Timer(); -// Integer delay = 1000; -// Integer interval = 10000; -// -// -// timer.scheduleAtFixedRate(new TimerTask() { -// @Override -// public void run() { - - Connection con = new Connection(); - - JdbcTemplate template = new JdbcTemplate(con.getDatasource()); - -//----------------------------------------------------------------------------- - - DiscosGroup disco = new DiscosGroup(); - - List listaDeDisco = disco.getDiscos(); - - Memoria memoria = new Memoria(); - - Processador processador = new Processador(); - - Temperatura temperatura = new Temperatura(); - -//----------------------------------------------------------------------------- - - String criarTabelaHardware = "CREATE TABLE IF NOT EXISTS Hardware (\n" - + "ID INT PRIMARY KEY AUTO_INCREMENT,\n" - + "qtdDiscos int,\n" - + "nomeDisco varchar(50),\n" - + "tamanhoDisco Double,\n" - + "memoriaTotal Double,\n" - + "processadorNome varchar(50),\n" - + "temperaturaAtual Double\n" - + ");"; - - //template.execute(criarTabelaHardware); - - for (int i = 0; i < listaDeDisco.size(); i++) { - - Integer qtdDiscos = disco.getQuantidadeDeDiscos(); - String nomeDisco = listaDeDisco.get(i).getNome(); - Long tamanhoDisco = listaDeDisco.get(i).getTamanho(); - Long memoriaTotal = memoria.getTotal(); - String processadorNome = processador.getNome(); - Double temperaturaAtual = temperatura.getTemperatura(); - - String inserirDadosHardware = "Insert into Hardware VALUES " - + "(null,?,?,?,?,?,?);"; - - template.update(inserirDadosHardware, - qtdDiscos, - nomeDisco, - tamanhoDisco, - memoriaTotal, - processadorNome, - temperaturaAtual); - } - - List loocaHardwares = template.query("select * from Hardware", - new BeanPropertyRowMapper<>(LoocaHardware.class)); - - for (LoocaHardware Hardware : loocaHardwares) { - - System.out.println(Hardware); - System.out.println("-".repeat(50)); - } - } -// }, delay, interval); - - } - -//} diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/GetProcessos.java b/JAR-inicial/src/main/java/com/mycompany/swing/GetProcessos.java deleted file mode 100644 index d9cdda4..0000000 --- a/JAR-inicial/src/main/java/com/mycompany/swing/GetProcessos.java +++ /dev/null @@ -1,90 +0,0 @@ - -package com.mycompany.swing; - -import com.github.britooo.looca.api.group.processos.Processo; -import com.github.britooo.looca.api.group.processos.ProcessosGroup; -import java.util.List; -import java.util.Timer; -import java.util.TimerTask; -import org.springframework.jdbc.core.BeanPropertyRowMapper; -import org.springframework.jdbc.core.JdbcTemplate; - - -public class GetProcessos { - - public static void main(String[] args) { - - // Listando e inserindo dados dos processos no banco - - Timer timer = new Timer(); - Integer delay = 1000; - Integer interval = 10000; - - - timer.scheduleAtFixedRate(new TimerTask() { - @Override - public void run() { - - ProcessosGroup processos = new ProcessosGroup(); - - LoocaProcessos processosBD = new LoocaProcessos(); - - List listaProcessos = processos.getProcessos(); - - Connection con = new Connection(); - - JdbcTemplate template = new JdbcTemplate(con.getDatasource()); - - String criarTabelaProcessos = "CREATE TABLE IF NOT EXISTS Processos (\n" - + "ID INT PRIMARY KEY AUTO_INCREMENT,\n" - + "Nome varchar(100),\n" - + "UsoCPU double,\n" - + "UsoMemoria double,\n" - + "BytesUtilizados int,\n" - + "MemVirtual decimal,\n" - + "PID int,\n" - + "totalProcessos int,\n" - + "threads int\n" - + ");"; - - - for (int i = 0; i < listaProcessos.size(); i++) { - - String nome = processos.getProcessos().get(i).getNome(); - Double usoCPU = processos.getProcessos().get(i).getUsoCpu(); - Double usoMem = processos.getProcessos().get(i).getUsoMemoria(); - Long bytesUtilizados = processos.getProcessos().get(i).getBytesUtilizados(); - Long memVirtual = processos.getProcessos().get(i).getMemoriaVirtualUtilizada(); - Integer pid = processos.getProcessos().get(i).getPid(); - Integer totalProcessos = processos.getTotalProcessos(); - Integer threads = processos.getTotalThreads(); - - String inserirDadosProcessos = "Insert into Processos VALUES " - + "(null,?,?,?,?,?,?,?,?);"; - - template.update(inserirDadosProcessos, - nome, - usoCPU, - usoMem, - bytesUtilizados, - memVirtual, - pid, - totalProcessos, - threads); - - } - - List loocaProcessos = template.query("select * from Processos", - new BeanPropertyRowMapper<>(LoocaProcessos.class)); - - for (LoocaProcessos processos1 : loocaProcessos) { - - System.out.println(processos); - System.out.println("-".repeat(50)); - } - } - }, delay, interval); - - } - -} diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming.form b/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming.form index d1c0da6..e0c9edf 100644 --- a/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming.form +++ b/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming.form @@ -56,26 +56,17 @@ - + - - - - - - - - - - - - - - - - - + + + + + + + + @@ -90,11 +81,11 @@ - + - + - + @@ -167,7 +158,6 @@ - diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming.java b/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming.java index 136c137..26c3947 100644 --- a/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming.java +++ b/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming.java @@ -21,7 +21,6 @@ public KeepSwimming() { this.setLocationRelativeTo(null); } - @SuppressWarnings("unchecked") // //GEN-BEGIN:initComponents private void initComponents() { @@ -85,27 +84,21 @@ public void actionPerformed(java.awt.event.ActionEvent evt) { Resultado.setBackground(new java.awt.Color(255, 255, 255)); Resultado.setForeground(new java.awt.Color(255, 255, 255)); - Resultado.setText("resultado"); javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1); jPanel1.setLayout(jPanel1Layout); jPanel1Layout.setHorizontalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(jPanel1Layout.createSequentialGroup() + .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() .addContainerGap(28, Short.MAX_VALUE) - .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() - .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) - .addComponent(TextoEmail) - .addComponent(TextoSenha) - .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING) - .addComponent(btnNavegar, javax.swing.GroupLayout.PREFERRED_SIZE, 409, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(CampoSenha, javax.swing.GroupLayout.PREFERRED_SIZE, 409, javax.swing.GroupLayout.PREFERRED_SIZE) - .addComponent(CampoEmail, javax.swing.GroupLayout.PREFERRED_SIZE, 409, javax.swing.GroupLayout.PREFERRED_SIZE))) - .addGap(21, 21, 21)) - .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup() - .addComponent(Resultado, javax.swing.GroupLayout.PREFERRED_SIZE, 179, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(84, 84, 84)))) + .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false) + .addComponent(TextoEmail) + .addComponent(TextoSenha) + .addComponent(btnNavegar, javax.swing.GroupLayout.DEFAULT_SIZE, 409, Short.MAX_VALUE) + .addComponent(CampoSenha, javax.swing.GroupLayout.DEFAULT_SIZE, 409, Short.MAX_VALUE) + .addComponent(CampoEmail, javax.swing.GroupLayout.DEFAULT_SIZE, 409, Short.MAX_VALUE) + .addComponent(Resultado, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) + .addGap(21, 21, 21)) ); jPanel1Layout.setVerticalGroup( jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) @@ -118,11 +111,11 @@ public void actionPerformed(java.awt.event.ActionEvent evt) { .addComponent(TextoSenha) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(CampoSenha, javax.swing.GroupLayout.PREFERRED_SIZE, 45, javax.swing.GroupLayout.PREFERRED_SIZE) - .addGap(18, 18, 18) + .addGap(27, 27, 27) .addComponent(Resultado) - .addGap(55, 55, 55) + .addGap(46, 46, 46) .addComponent(btnNavegar, javax.swing.GroupLayout.PREFERRED_SIZE, 60, javax.swing.GroupLayout.PREFERRED_SIZE) - .addContainerGap(87, Short.MAX_VALUE)) + .addContainerGap(105, Short.MAX_VALUE)) ); getContentPane().add(jPanel1); @@ -162,22 +155,27 @@ public void actionPerformed(java.awt.event.ActionEvent evt) { private void btnNavegarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnNavegarActionPerformed //////////////Conexão com o banco////////////// - - - //Instancia a classe Connection //Instancia um objeto Jdbc e pega o retorno getDataSource + Connection config = new Connection(); JdbcTemplate con = new JdbcTemplate(config.getDatasource()); List funcionario = new ArrayList(); Funcionario usuario = new Funcionario(); BeanPropertyRowMapper Bean = new BeanPropertyRowMapper(); + /////////////////////////////////////////////// + EMAIL = (CampoEmail.getText()); SENHA = (new String(CampoSenha.getPassword())); - - List Select = con.query("SELECT * FROM FUNCIONARIO", + List Select = con.query("SELECT" + + " idFuncionario," + + " EMAIL, " + + "SENHA, " + + "idMaquina AS Maquina " + + "from [dbo].[FUNCIONARIO] join\n" + + "[dbo].[Maquina] ON idFuncionario = fkUsuario", new BeanPropertyRowMapper(Funcionario.class)); for (Funcionario func : Select) @@ -185,24 +183,14 @@ private void btnNavegarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FI if(func.getEMAIL().equals(EMAIL) && func.getSENHA().equals(SENHA)) { Resultado.setText("LOGADO COM SUCESSO!"); - - new EnviaToken().setVisible(true); - this.dispose(); - - try { - TelegramBotsApi telegramBotsApi = new TelegramBotsApi(DefaultBotSession.class); - telegramBotsApi.registerBot(new KeepSwimming_TelegramBot(true)); - - KeepSwimming_TelegramBot.sendToTelegram(); - - } catch (TelegramApiException e) { - e.printStackTrace(); - } - - + // new EnviaToken().setVisible(true); + EnviaToken token = new EnviaToken(); + token.setVisible(true); + token.setIdsFuncionario(func); + this.dispose(); + } else { - - Resultado.setText("=("); + Resultado.setText("Nome de usuário ou senha errados. Por favor tente outra vez. =( "); } } }//GEN-LAST:event_btnNavegarActionPerformed @@ -215,10 +203,8 @@ private void CampoEmailActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FI }//GEN-LAST:event_CampoEmailActionPerformed - public static void main(String args[]) { - - + /////////////////Padrão do SWING//////////////////////// try { for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { @@ -242,6 +228,7 @@ public void run() { new KeepSwimming().setVisible(true); } }); + ///////////////////////////////////////////////////////////////// } diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming_TelegramBot.java b/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming_TelegramBot.java index 2ddd928..aec1754 100644 --- a/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming_TelegramBot.java +++ b/JAR-inicial/src/main/java/com/mycompany/swing/KeepSwimming_TelegramBot.java @@ -18,14 +18,12 @@ public class KeepSwimming_TelegramBot extends TelegramLongPollingBot { private String token = DadosBot.BOT_TOKEN; - private Boolean seila; public KeepSwimming_TelegramBot(Boolean seila) { this.seila = seila; } - @Override public String getBotUsername() { return DadosBot.BOT_USER_NAME; @@ -58,7 +56,6 @@ private SendMessage responder(Update update) { Integer enviaCodigo = ThreadLocalRandom.current().nextInt(1000, 5000); String codigoFormatado = enviaCodigo.toString(); - if ("/data".equals(textoMensagem)) { resposta = getData(); }else if (textoMensagem.startsWith("/token")) { @@ -90,15 +87,12 @@ private String getHora() { var formatter = new SimpleDateFormat("HH:mm:ss"); return "A hora atual é: " + formatter.format(new Date()); } - - - - + public static void sendToTelegram() { String urlString = "https://api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s"; //Telegram token String apiToken = "5226424793:AAEqECvlTAc_63u7hl702KBKS5HiF7PHrmE"; - + //chatId String chatId = "-667290625"; //Message @@ -115,11 +109,12 @@ public static void sendToTelegram() { e.printStackTrace(); } } + public static void sendToTelegramToken(String txt) { String urlString = "https://api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s"; //Telegram token String apiToken = "5226424793:AAEqECvlTAc_63u7hl702KBKS5HiF7PHrmE"; - + //chatId String chatId = "-667290625"; //Message diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/LoocaProcessos.java b/JAR-inicial/src/main/java/com/mycompany/swing/LoocaProcessos.java index af346df..75470fd 100644 --- a/JAR-inicial/src/main/java/com/mycompany/swing/LoocaProcessos.java +++ b/JAR-inicial/src/main/java/com/mycompany/swing/LoocaProcessos.java @@ -98,13 +98,13 @@ public void setThreads(Integer threads) { this.threads = threads; } - @Override - public String toString() { - return String.format("Total de Processos = %d" - + "\nThreads = %d", - totalProcessos, - threads); + public LoocaProcessos(String Nome, Double usoCPU, Long usoMemoria) { + this.Nome = Nome; + this.usoCPU = usoCPU; + this.usoMemoria = usoMemoria; } + + diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/MainTeste.java b/JAR-inicial/src/main/java/com/mycompany/swing/MainTeste.java new file mode 100644 index 0000000..95c59a6 --- /dev/null +++ b/JAR-inicial/src/main/java/com/mycompany/swing/MainTeste.java @@ -0,0 +1,13 @@ + +package com.mycompany.swing; + +public class MainTeste { + public static void main(String[] args) { + alertaParaTelegram media = new alertaParaTelegram(); + + System.out.println(media.getMedia()); + System.out.println(media.getAbaixoDaMedia()); + System.out.println(media.getTopDezProcessos(1)); + + } +} diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/ProcessosAlerta.java b/JAR-inicial/src/main/java/com/mycompany/swing/ProcessosAlerta.java new file mode 100644 index 0000000..379303d --- /dev/null +++ b/JAR-inicial/src/main/java/com/mycompany/swing/ProcessosAlerta.java @@ -0,0 +1,45 @@ + +package com.mycompany.swing; + +public class ProcessosAlerta { + public String Nome; + public Long usoMemoria; + public Long usoCPU; + + public Long getUsoCPU() { + return usoCPU; + } + + public void setUsoCPU(Long usoCPU) { + this.usoCPU = usoCPU; + } + + public ProcessosAlerta() { + } + + public String getNome() { + return Nome; + } + + public void setNome(String Nome) { + this.Nome = Nome; + } + + public Long getUsoMemoria() { + return usoMemoria; + } + + public void setUsoMemoria(Long usoMemoria) { + this.usoMemoria = usoMemoria; + } + + @Override + public String toString() { + + return "Nome= " + Nome + "\nusoMemoria=" + usoMemoria + "\nuso CPU = " + + usoCPU + "\n\n"; + } + + + +} diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/RegistraBot.java b/JAR-inicial/src/main/java/com/mycompany/swing/RegistraBot.java index 818fab4..c142c25 100644 --- a/JAR-inicial/src/main/java/com/mycompany/swing/RegistraBot.java +++ b/JAR-inicial/src/main/java/com/mycompany/swing/RegistraBot.java @@ -8,8 +8,8 @@ public class RegistraBot { public static void main(String[] args) { try { - TelegramBotsApi telegramBotsApi = new TelegramBotsApi(DefaultBotSession.class); - telegramBotsApi.registerBot(new KeepSwimming_TelegramBot(true)); + TelegramBotsApi telegramBotsApi = new TelegramBotsApi(DefaultBotSession.class); + telegramBotsApi.registerBot(new KeepSwimming_TelegramBot(true)); KeepSwimming_TelegramBot.sendToTelegram(); } catch (TelegramApiException e) { e.printStackTrace(); diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/TelaPrincipal.java b/JAR-inicial/src/main/java/com/mycompany/swing/TelaPrincipal.java index f7a318e..461611c 100644 --- a/JAR-inicial/src/main/java/com/mycompany/swing/TelaPrincipal.java +++ b/JAR-inicial/src/main/java/com/mycompany/swing/TelaPrincipal.java @@ -17,29 +17,40 @@ import org.springframework.jdbc.core.BeanPropertyRowMapper; import org.springframework.jdbc.core.JdbcTemplate; +/** + * + * @author WalderleyNeto e Bruno Henrrigue + */ + public class TelaPrincipal extends javax.swing.JFrame { + public Funcionario funcionario; - public TelaPrincipal() { + public TelaPrincipal(Funcionario idsFuncionario) { + + this.funcionario = idsFuncionario; + initComponents(); java.awt.EventQueue.invokeLater(new Runnable() { public void run() { inicializacao(); - + } }); } - private void inicializacao() - { - // classe de de conexão com o banco - Connection config = new Connection(); + private void inicializacao(){ - //conexão com o banco + // classe de de conexão com o banco + Connection config = new Connection(); JdbcTemplate con = new JdbcTemplate(config.getDatasource()); - JdbcTemplate conLocal = new JdbcTemplate(config.getDatasourceLocal()); + + //conexão com o banco MySQL + Boolean mysql = true; + Connection configMysql = new Connection(mysql); + JdbcTemplate conLocal = new JdbcTemplate(configMysql.getDatasource()); // looca com.github.britooo.looca.api.core.Looca looca = new com.github.britooo.looca.api.core.Looca(); @@ -47,52 +58,61 @@ private void inicializacao() // Insersão dos dados do sistema no banco LoocaSistema loocadb = new LoocaSistema(); - - //---------------------------------------------------------------------------- + //---------------------------- ID DA MAQUINA --------------------------------- - System.out.println("=".repeat(40)); + List idMaquina = con.query("select idMaquina from [dbo].[Maquina] \n" + + "JOIN [dbo].[FUNCIONARIO] on fkUsuario = idFuncionario \n" + + "WHERE idFuncionario = " + funcionario.getIdFuncionario(), + new BeanPropertyRowMapper(maquina.class)); + System.out.println( "pegando o ID MAQUINA" + idMaquina.toString()); + + Integer idDaMaquina = idMaquina.get(0).getIdMaquina(); + + //---------------------------- INSERT DE MAQUINA ----------------------------- + // Listando e inserindo dados do Sistema no banco - String sO = looca.getSistema().getSistemaOperacional(); - String fabricante = looca.getSistema().getFabricante(); - Integer arquitetura = looca.getSistema().getArquitetura(); - String permissao = looca.getSistema().getPermissao().toString(); + // String sO = looca.getSistema().getSistemaOperacional(); + //String fabricante = looca.getSistema().getFabricante(); + //Integer arquitetura = looca.getSistema().getArquitetura(); + //String permissao = looca.getSistema().getPermissao().toString(); - String inserirDadosMaquina = "Insert into Maquina VALUES " - + "(null,2,?,?,?,?);"; + // String inserirDadosMaquina = "Insert into Maquina VALUES " + // + "(null,2,?,?,?,?);"; //AZURE - // String inserirDadosMaquina = "Insert into Maquina VALUES " - // + "(2,?,?,?,?);"; + // String inserirDadosMaquina = "Insert into Maquina VALUES " + // + "(?,?,?,?,?,null);"; - con.update(inserirDadosMaquina, sO, fabricante, arquitetura, permissao); - conLocal.update(inserirDadosMaquina, sO, fabricante, arquitetura, permissao); + //con.update(inserirDadosMaquina,idMaquina, sO, fabricante, arquitetura, permissao); - List LoocaSistema = con.query("select * from Maquina", - new BeanPropertyRowMapper<>(LoocaSistema.class)); + // List LoocaSistema = con.query("select * from Maquina", + // new BeanPropertyRowMapper<>(LoocaSistema.class)); - loocadb.setsistemaOperacional(sO); - loocadb.setfabricante(fabricante); - loocadb.setarquitetura(arquitetura); - loocadb.setpermissoes(permissao); + //loocadb.setsistemaOperacional(sO); + //loocadb.setfabricante(fabricante); + //loocadb.setarquitetura(arquitetura); + //loocadb.setpermissoes(permissao); - dadosMaquina.setText(loocadb.toString()); + //dadosMaquina.setText(loocadb.toString()); - for (LoocaSistema sistema : LoocaSistema) { + //for (LoocaSistema sistema : LoocaSistema) { - System.out.println(sistema); - } -//------------------------------INSERT DE PROCESSOS --------------------------- + // System.out.println(sistema); + //} + +//------------------------------ INSERT DE PROCESSOS --------------------------- System.out.println("=".repeat(40)); + Date dataHoraProcesso = new Date(); List processos = looca.getGrupoDeProcessos().getProcessos(); Timer timer = new Timer(); Integer delay = 1000; - Integer interval = 10000; + Integer interval = 5000; timer.scheduleAtFixedRate(new TimerTask() { @Override @@ -109,47 +129,37 @@ public void run() { Long memVirtualUtilizada = processos.get(i).getMemoriaVirtualUtilizada(); Integer totalProcessos = looca.getGrupoDeProcessos().getTotalProcessos(); Integer threads = looca.getGrupoDeProcessos().getTotalThreads(); - //para Mysql local - String inserirDadosProcessos = "Insert into Processos VALUES " - + "(null,1,?,?,?,?,?,?,?,?);"; - + + //para MySQL local + String inserirDadosProcessosLocal = "Insert into Processos VALUES " + + "(null,1,?,?,?,?,?,?,?,?);"; + conLocal.update(inserirDadosProcessosLocal,idDaMaquina, PID,Nome,UsoCpu,usoMemoria, + bytesUtilizados,memVirtualUtilizada, totalProcessos, threads,dataHoraProcesso); + //Para azure - //String inserirDadosProcessos = "Insert into Processos VALUES " - //+ "(1,?,?,?,?,?,?,?,?);"; + String inserirDadosProcessos = "Insert into Processos VALUES " + + "(?,?,?,?,?,?,?,?,?,?);"; + con.update(inserirDadosProcessos,idDaMaquina, PID,Nome,UsoCpu,usoMemoria, + bytesUtilizados,memVirtualUtilizada, totalProcessos, threads,dataHoraProcesso); + } - con.update(inserirDadosProcessos, PID,Nome,UsoCpu,usoMemoria, - bytesUtilizados,memVirtualUtilizada, totalProcessos, threads); - conLocal.update(inserirDadosProcessos, PID,Nome,UsoCpu,usoMemoria, - bytesUtilizados,memVirtualUtilizada, totalProcessos, threads); } - - } - },delay,interval); - + },delay,interval); - - List processosSelect = con.query("select * from Processos", - new BeanPropertyRowMapper<>(LoocaProcessos.class)); - - for (LoocaProcessos processo : processosSelect) { + for (Processo processo : processos) { System.out.println(processo); } - - // ------------------------------------------------------------------------- //----------------------------INSERT COMPONENTES HARDWARE---------------------- - - + DiscosGroup disco = new DiscosGroup(); Memoria memoria = new Memoria(); Processador processador = new Processador(); List listaDeDisco = disco.getDiscos(); - - - + for (int i = 0; i < listaDeDisco.size(); i++) { String nomeDisco = disco.getDiscos().get(i).getNome(); @@ -159,23 +169,23 @@ public void run() { Long memoriaTotal = memoria.getTotal(); String processadorNome = processador.getNome(); - //Para Mysql local - String inserirDadosHardware = "Insert into ComponentesHardware VALUES" - + "(null,1,?,?,?,?,?,?);"; - - //Para AZURE - //String inserirDadosHardware = "Insert into ComponentesHardware VALUES" - // + "(1,?,?,?,?,?,?);"; - - - con.update(inserirDadosHardware, + //Para Mysql local + String inserirDadosHardwareLocal = "Insert into ComponentesHardware VALUES" + + "(null,1,?,?,?,?,?,?);"; + conLocal.update(inserirDadosHardwareLocal, + idDaMaquina, nomeDisco, tamanhoDisco, modeloDisco, qtdDiscos, memoriaTotal, processadorNome); - conLocal.update(inserirDadosHardware, + + //Para AZURE + String inserirDadosHardware = "Insert into ComponentesHardware VALUES" + + "(?,?,?,?,?,?,?);"; + con.update(inserirDadosHardware, + idDaMaquina, nomeDisco, tamanhoDisco, modeloDisco, @@ -183,6 +193,7 @@ public void run() { memoriaTotal, processadorNome); + System.out.println("nome do disco: " + nomeDisco); System.out.println("tamanho do disco: " + tamanhoDisco); System.out.println("modelo do disco: " + modeloDisco); @@ -190,11 +201,10 @@ public void run() { System.out.println("Memoria total" + memoriaTotal); System.out.println("Nome processador" + processadorNome); } - //-------------------------------INSERT HISTORICO------------------------------ Date data = new Date(); - + // LocalDateTime data = LocalDateTime.now(); String tempoInicializado = looca.getSistema().getInicializado().toString(); @@ -204,24 +214,23 @@ public void run() { Long memoriaDisponível = memoria.getDisponivel(); Double processadorUso = processador.getUso(); - - timer.scheduleAtFixedRate(new TimerTask() { @Override public void run() { + //MySQL local - String inserirHistorico = "Insert into Historico VALUES " + String inserirHistoricoLocal = "Insert into Historico VALUES " + "(null,1,?,?,?,?,?,?,?);"; + conLocal.update(inserirHistoricoLocal,idDaMaquina,data,tempoInicializado,tempoDeAtividade, + temperaturaAtual,memoriaEmUso,memoriaDisponível,processadorUso); //AZURE - // String inserirHistorico = "Insert into Historico VALUES " - // + "(1,?,?,?,?,?,?,?);"; - - con.update(inserirHistorico,data,tempoInicializado,tempoDeAtividade, - temperaturaAtual,memoriaEmUso,memoriaDisponível,processadorUso); - conLocal.update(inserirHistorico,data,tempoInicializado,tempoDeAtividade, + String inserirHistorico = "Insert into Historico VALUES " + + "(?,?,?,?,?,?,?,?);"; + con.update(inserirHistorico,idDaMaquina,data,tempoInicializado,tempoDeAtividade, temperaturaAtual,memoriaEmUso,memoriaDisponível,processadorUso); + System.out.println("Data " + data); System.out.println("Tempo inicializado " + tempoInicializado); System.out.println("Tempo de atividade " + tempoDeAtividade); @@ -229,7 +238,6 @@ public void run() { System.out.println("Memoria em uso " + memoriaEmUso); System.out.println("Memoria disponível " + memoriaDisponível); System.out.println("Uso do processador " + processadorUso); - } },delay,interval); @@ -305,7 +313,6 @@ private void initComponents() { public static void main(String args[]) { - } // Variables declaration - do not modify//GEN-BEGIN:variables diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/alertaParaTelegram.java b/JAR-inicial/src/main/java/com/mycompany/swing/alertaParaTelegram.java new file mode 100644 index 0000000..6688417 --- /dev/null +++ b/JAR-inicial/src/main/java/com/mycompany/swing/alertaParaTelegram.java @@ -0,0 +1,105 @@ + +package com.mycompany.swing; + +import java.util.ArrayList; +import java.util.List; +import org.springframework.jdbc.core.BeanPropertyRowMapper; +import org.springframework.jdbc.core.JdbcTemplate; + +public class alertaParaTelegram { + + private Integer idMaquina; + private Long mediaMemoria; + private List listFuncionarios = new ArrayList<>(); + + + Connection config = new Connection(); + JdbcTemplate con = new JdbcTemplate(config.getDatasource()); + + public Long getMedia() + { + List comandoMedia = con.query( + "select round(avg(memoriaEmUso),0) AS mediaMemoria from [dbo].[Historico]\n" + +"join [dbo].[Maquina] on fkMaquina = idMaquina group by idMaquina", + new BeanPropertyRowMapper(mediaMemoria.class)); + + + for(mediaMemoria media : comandoMedia) + { + mediaMemoria = media.getMediaMemoria(); + } + + + return mediaMemoria + mediaMemoria; + } + + public String getAbaixoDaMedia() + { + + List mediaMemoriaSelect = con.query("select fkMaquina AS idMaquina, " + + "round(avg(memoriaEmUso),0) AS mediaMemoria\n" + + "from [dbo].[Historico] group by fkMaquina", + new BeanPropertyRowMapper(mediaMemoria.class)); + + for(mediaMemoria media : mediaMemoriaSelect) + { + if(media.getMediaMemoria() < getMedia()) + { + // mediaMemoria usuarioOcioso = new mediaMemoria(media.getIdMaquina(), media.getMediaMemoria()); + + getFuncionarioOcioso(media.getIdMaquina()); + } + } + if(listFuncionarios.isEmpty()) + { + return "Nenhum usuário ocioso"; + } + else + { + return listFuncionarios.toString(); + } + + } + + public void getFuncionarioOcioso(Integer idMaquina) + { + + String select = String.format("select top 1 idFuncionario, Nome,Cargo,\n" + + "hostName,\n" + + "tempoInicializado\n" + + " from [dbo].[FUNCIONARIO] join [dbo].[Maquina] " + + "on idFuncionario = fkUsuario\n" + + " join [dbo].[Historico] " + + "on fkMaquina = idMaquina where idMaquina = %d " + + "order by tempoInicializado desc ", idMaquina); + + List funcionario = con.query(select, + new BeanPropertyRowMapper(dadosFuncionarioOcioso.class)); + + for(dadosFuncionarioOcioso dados : funcionario) + { + // dadosFuncionarioOcioso funcionarioToString = new dadosFuncionarioOcioso + //(dados.getIdFuncionario(), dados.getNome(), dados.getCargo(), dados.getHostName(), + // dados.getTempoInicializado()); + + listFuncionarios.add(dados); + + } + // return listFuncionarios; + } + + public List getTopDezProcessos(Integer idMaquina) + { + List selectProcessos = con.query( + "select distinct top 10 Nome,usoMemoria,usoCPU from [dbo].[Processos]\n" + + " join [dbo].[Maquina] on fkMaquina = idMaquina where idMaquina = "+ + idMaquina + " order by usoMemoria desc ", + new BeanPropertyRowMapper(ProcessosAlerta.class)); + + return selectProcessos; + } + +//select top 10 usoMemoria from [dbo].[Processos] +//join [dbo].[Maquina] on fkMaquina = idMaquina where idMaquina = 1 +//order by usoMemoria desc +} diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/dadosFuncionarioOcioso.java b/JAR-inicial/src/main/java/com/mycompany/swing/dadosFuncionarioOcioso.java new file mode 100644 index 0000000..51404ae --- /dev/null +++ b/JAR-inicial/src/main/java/com/mycompany/swing/dadosFuncionarioOcioso.java @@ -0,0 +1,73 @@ + +package com.mycompany.swing; + +public class dadosFuncionarioOcioso { + private Integer idFuncionario; + private String Nome; + private String Cargo; + private String hostName; + private String tempoInicializado; + + public dadosFuncionarioOcioso() { + } + + public dadosFuncionarioOcioso(Integer idFuncionario, String Nome, String Cargo, String hostName, String tempoInicializado) { + this.idFuncionario = idFuncionario; + this.Nome = Nome; + this.Cargo = Cargo; + this.hostName = hostName; + this.tempoInicializado = tempoInicializado; + } + + public Integer getIdFuncionario() { + return idFuncionario; + } + + @Override + public String toString() { + return "Dados Funcionario:" + + "\nidFuncionario=" + idFuncionario + + "\nNome=" + Nome + + "\nCargo=" + Cargo + + "\nhostName=" + hostName + + "\ntempoInicializado=" + tempoInicializado; + } + + public void setIdFuncionario(Integer idFuncionario) { + this.idFuncionario = idFuncionario; + } + + public String getNome() { + return Nome; + } + + public void setNome(String Nome) { + this.Nome = Nome; + } + + public String getCargo() { + return Cargo; + } + + public void setCargo(String Cargo) { + this.Cargo = Cargo; + } + + public String getHostName() { + return hostName; + } + + public void setHostName(String hostName) { + this.hostName = hostName; + } + + public String getTempoInicializado() { + return tempoInicializado; + } + + public void setTempoInicializado(String tempoInicializado) { + this.tempoInicializado = tempoInicializado; + } + + +} diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/maquina.java b/JAR-inicial/src/main/java/com/mycompany/swing/maquina.java new file mode 100644 index 0000000..86acb18 --- /dev/null +++ b/JAR-inicial/src/main/java/com/mycompany/swing/maquina.java @@ -0,0 +1,24 @@ + +package com.mycompany.swing; + +public class maquina { + public Integer idMaquina; + + public maquina() { + } + + public Integer getIdMaquina() { + return idMaquina; + } + + public void setIdMaquina(Integer idMaquina) { + this.idMaquina = idMaquina; + } + + @Override + public String toString() { + return "maquina{" + "idMaquina=" + idMaquina + '}'; + } + + +} diff --git a/JAR-inicial/src/main/java/com/mycompany/swing/mediaMemoria.java b/JAR-inicial/src/main/java/com/mycompany/swing/mediaMemoria.java new file mode 100644 index 0000000..07bbc7b --- /dev/null +++ b/JAR-inicial/src/main/java/com/mycompany/swing/mediaMemoria.java @@ -0,0 +1,41 @@ + +package com.mycompany.swing; + + +public class mediaMemoria { + public Integer idMaquina; + public Long mediaMemoria; + + public mediaMemoria() { + } + + public mediaMemoria(Integer idMaquina, Long mediaMemoria) { + this.idMaquina = idMaquina; + this.mediaMemoria = mediaMemoria; + } + + + + public Integer getIdMaquina() { + return idMaquina; + } + + public void setIdMaquina(Integer idMaquina) { + this.idMaquina = idMaquina; + } + + public Long getMediaMemoria() { + return mediaMemoria; + } + + public void setMediaMemoria(Long mediaMemoria) { + this.mediaMemoria = mediaMemoria; + } + + @Override + public String toString() { + return "mediaMemoria{" + "idMaquina=" + idMaquina + ", mediaMemoria=" + mediaMemoria + '}'; + } + + +} diff --git a/JAR-inicial/target/Swing-1.0-SNAPSHOT-jar-with-dependencies.jar b/JAR-inicial/target/Swing-1.0-SNAPSHOT-jar-with-dependencies.jar index 152f925..ed61e2c 100644 Binary files a/JAR-inicial/target/Swing-1.0-SNAPSHOT-jar-with-dependencies.jar and b/JAR-inicial/target/Swing-1.0-SNAPSHOT-jar-with-dependencies.jar differ diff --git a/JAR-inicial/target/Swing-1.0-SNAPSHOT.jar b/JAR-inicial/target/Swing-1.0-SNAPSHOT.jar index ffe2ced..d051f2e 100644 Binary files a/JAR-inicial/target/Swing-1.0-SNAPSHOT.jar and b/JAR-inicial/target/Swing-1.0-SNAPSHOT.jar differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/Connection.class b/JAR-inicial/target/classes/com/mycompany/swing/Connection.class index 102b206..f35bfdb 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/Connection.class and b/JAR-inicial/target/classes/com/mycompany/swing/Connection.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/DadosBot.class b/JAR-inicial/target/classes/com/mycompany/swing/DadosBot.class index 8108c1e..08b80a0 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/DadosBot.class and b/JAR-inicial/target/classes/com/mycompany/swing/DadosBot.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$1.class b/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$1.class index 6a77272..f56f439 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$1.class and b/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$1.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$2.class b/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$2.class index e827504..29917d3 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$2.class and b/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$2.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$3.class b/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$3.class index b4c5eb1..da8f389 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$3.class and b/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken$3.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken.class b/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken.class index 6d70ccd..77bd914 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken.class and b/JAR-inicial/target/classes/com/mycompany/swing/EnviaToken.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/Funcionario.class b/JAR-inicial/target/classes/com/mycompany/swing/Funcionario.class index 5bccbe7..4ddcf87 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/Funcionario.class and b/JAR-inicial/target/classes/com/mycompany/swing/Funcionario.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/GetHardware.class b/JAR-inicial/target/classes/com/mycompany/swing/GetHardware.class deleted file mode 100644 index 44dd2fa..0000000 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/GetHardware.class and /dev/null differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/GetProcessos$1.class b/JAR-inicial/target/classes/com/mycompany/swing/GetProcessos$1.class deleted file mode 100644 index a08d3ce..0000000 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/GetProcessos$1.class and /dev/null differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/GetProcessos.class b/JAR-inicial/target/classes/com/mycompany/swing/GetProcessos.class deleted file mode 100644 index 093f04d..0000000 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/GetProcessos.class and /dev/null differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$1.class b/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$1.class index 4c63096..c347582 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$1.class and b/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$1.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$2.class b/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$2.class index ae4fb43..b1de0a1 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$2.class and b/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$2.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$3.class b/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$3.class index afe5dcb..043356d 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$3.class and b/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$3.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$4.class b/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$4.class index 57c63a9..5e9344f 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$4.class and b/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming$4.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming.class b/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming.class index f807087..3433ff9 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming.class and b/JAR-inicial/target/classes/com/mycompany/swing/KeepSwimming.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/LoocaHardware.class b/JAR-inicial/target/classes/com/mycompany/swing/LoocaHardware.class index 036e227..ac0c756 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/LoocaHardware.class and b/JAR-inicial/target/classes/com/mycompany/swing/LoocaHardware.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/LoocaProcessos.class b/JAR-inicial/target/classes/com/mycompany/swing/LoocaProcessos.class index b5ee392..19ced06 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/LoocaProcessos.class and b/JAR-inicial/target/classes/com/mycompany/swing/LoocaProcessos.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/LoocaSistema.class b/JAR-inicial/target/classes/com/mycompany/swing/LoocaSistema.class index 1c89e36..3dd07a0 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/LoocaSistema.class and b/JAR-inicial/target/classes/com/mycompany/swing/LoocaSistema.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/MainTeste.class b/JAR-inicial/target/classes/com/mycompany/swing/MainTeste.class new file mode 100644 index 0000000..8c32ec6 Binary files /dev/null and b/JAR-inicial/target/classes/com/mycompany/swing/MainTeste.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$1.class b/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$1.class index 5aeca97..142bf98 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$1.class and b/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$1.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$2.class b/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$2.class index caa4f57..dbb1d35 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$2.class and b/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$2.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$3.class b/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$3.class index 5bf01fc..0d5fe1c 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$3.class and b/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal$3.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal.class b/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal.class index ec6f5df..38fde48 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal.class and b/JAR-inicial/target/classes/com/mycompany/swing/TelaPrincipal.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/TelaUsuarioLogado$1.class b/JAR-inicial/target/classes/com/mycompany/swing/TelaUsuarioLogado$1.class index 18e4369..23b46d5 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/TelaUsuarioLogado$1.class and b/JAR-inicial/target/classes/com/mycompany/swing/TelaUsuarioLogado$1.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/TelaUsuarioLogado.class b/JAR-inicial/target/classes/com/mycompany/swing/TelaUsuarioLogado.class index 5f24c23..8498d5d 100644 Binary files a/JAR-inicial/target/classes/com/mycompany/swing/TelaUsuarioLogado.class and b/JAR-inicial/target/classes/com/mycompany/swing/TelaUsuarioLogado.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/alertaParaTelegram.class b/JAR-inicial/target/classes/com/mycompany/swing/alertaParaTelegram.class new file mode 100644 index 0000000..0111abf Binary files /dev/null and b/JAR-inicial/target/classes/com/mycompany/swing/alertaParaTelegram.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/dadosFuncionarioOcioso.class b/JAR-inicial/target/classes/com/mycompany/swing/dadosFuncionarioOcioso.class new file mode 100644 index 0000000..d9cafbe Binary files /dev/null and b/JAR-inicial/target/classes/com/mycompany/swing/dadosFuncionarioOcioso.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/maquina.class b/JAR-inicial/target/classes/com/mycompany/swing/maquina.class new file mode 100644 index 0000000..0578ccb Binary files /dev/null and b/JAR-inicial/target/classes/com/mycompany/swing/maquina.class differ diff --git a/JAR-inicial/target/classes/com/mycompany/swing/mediaMemoria.class b/JAR-inicial/target/classes/com/mycompany/swing/mediaMemoria.class new file mode 100644 index 0000000..b68ceb9 Binary files /dev/null and b/JAR-inicial/target/classes/com/mycompany/swing/mediaMemoria.class differ diff --git a/JAR-inicial/target/classes/view/gui/img/Captura de tela de 2022-04-24 20-19-11.png b/JAR-inicial/target/classes/view/gui/img/Captura de tela de 2022-04-24 20-19-11.png new file mode 100644 index 0000000..6b32e6d Binary files /dev/null and b/JAR-inicial/target/classes/view/gui/img/Captura de tela de 2022-04-24 20-19-11.png differ diff --git a/JAR-inicial/target/classes/view/gui/img/Token-Swingg.png b/JAR-inicial/target/classes/view/gui/img/Token-Swingg.png new file mode 100644 index 0000000..573bc0c Binary files /dev/null and b/JAR-inicial/target/classes/view/gui/img/Token-Swingg.png differ diff --git a/JAR-inicial/target/maven-archiver/pom.properties b/JAR-inicial/target/maven-archiver/pom.properties index d084aa9..b448861 100644 --- a/JAR-inicial/target/maven-archiver/pom.properties +++ b/JAR-inicial/target/maven-archiver/pom.properties @@ -1,5 +1,5 @@ #Generated by Maven -#Mon May 09 10:26:15 BRT 2022 +#Fri May 27 00:12:11 BRT 2022 groupId=com.mycompany artifactId=Swing version=1.0-SNAPSHOT diff --git a/JAR-inicial/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst b/JAR-inicial/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst index fbbf4ad..a4bd97c 100644 --- a/JAR-inicial/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst +++ b/JAR-inicial/target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst @@ -1,27 +1,30 @@ +com\mycompany\swing\ProcessosAlerta.class com\mycompany\swing\TelaPrincipal$3.class com\mycompany\swing\EnviaToken.class com\mycompany\swing\KeepSwimming_TelegramBot.class +com\mycompany\swing\MainTeste.class com\mycompany\swing\LoocaProcessos.class com\mycompany\swing\EnviaToken$2.class com\mycompany\swing\TelaPrincipal$1.class com\mycompany\swing\TelaPrincipal.class com\mycompany\swing\Funcionario.class com\mycompany\swing\TelaUsuarioLogado.class -com\mycompany\swing\GetHardware.class com\mycompany\swing\LoocaSistema.class com\mycompany\swing\Connection.class com\mycompany\swing\KeepSwimming$2.class com\mycompany\swing\Looca.class com\mycompany\swing\TelaPrincipal$2.class +com\mycompany\swing\alertaParaTelegram.class com\mycompany\swing\KeepSwimming.class +com\mycompany\swing\mediaMemoria.class com\mycompany\swing\DadosBot.class com\mycompany\swing\EnviaToken$3.class com\mycompany\swing\KeepSwimming$3.class com\mycompany\swing\KeepSwimming$4.class +com\mycompany\swing\maquina.class com\mycompany\swing\LoocaHardware.class com\mycompany\swing\RegistraBot.class -com\mycompany\swing\GetProcessos$1.class +com\mycompany\swing\dadosFuncionarioOcioso.class com\mycompany\swing\EnviaToken$1.class -com\mycompany\swing\GetProcessos.class com\mycompany\swing\KeepSwimming$1.class com\mycompany\swing\TelaUsuarioLogado$1.class diff --git a/JAR-inicial/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst b/JAR-inicial/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst index 9260a18..9407e8c 100644 --- a/JAR-inicial/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst +++ b/JAR-inicial/target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst @@ -1,15 +1,19 @@ -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\Funcionario.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\KeepSwimming_TelegramBot.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\Looca.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\KeepSwimming.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\TelaUsuarioLogado.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\EnviaToken.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\LoocaHardware.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\RegistraBot.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\Connection.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\GetProcessos.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\GetHardware.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\LoocaSistema.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\DadosBot.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\TelaPrincipal.java -C:\Users\USER\Downloads\atividades bandtec\2 Semestre\Sprint\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\LoocaProcessos.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\LoocaHardware.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\TelaUsuarioLogado.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\alertaParaTelegram.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\maquina.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\dadosFuncionarioOcioso.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\LoocaSistema.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\MainTeste.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\DadosBot.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\KeepSwimming_TelegramBot.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\LoocaProcessos.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\TelaPrincipal.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\Looca.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\mediaMemoria.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\KeepSwimming.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\Connection.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\ProcessosAlerta.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\RegistraBot.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\Funcionario.java +D:\SPTECH DIGITAL SCHOOL\S02\KEEP SWIMMING\Keep-Swimming\JAR-inicial\src\main\java\com\mycompany\swing\EnviaToken.java diff --git a/JAR-inicial/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst b/JAR-inicial/target/maven-status/maven-compiler-plugin/testCompile/default-testCompile/inputFiles.lst deleted file mode 100644 index e69de29..0000000 diff --git a/Site/app.js b/Site/app.js index a4020ff..bfccc19 100644 --- a/Site/app.js +++ b/Site/app.js @@ -16,6 +16,7 @@ app.use(express.json()); app.use(express.urlencoded({ extended: false })); app.use(express.static(path.join(__dirname, "public"))); + app.use(cors()); app.use("/", indexRouter); diff --git a/Site/package-lock.json b/Site/package-lock.json index e99067f..ba4e096 100644 --- a/Site/package-lock.json +++ b/Site/package-lock.json @@ -1,8 +1,3943 @@ { "name": "projeto-acquatec", "version": "1.0.0", - "lockfileVersion": 1, + "lockfileVersion": 2, "requires": true, + "packages": { + "": { + "name": "projeto-acquatec", + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "cors": "^2.8.5", + "express": "^4.17.1", + "mssql": "^7.1.3", + "mysql": "^2.18.1", + "mysql2": "^2.3.3", + "nodemon": "^2.0.7", + "path": "^0.12.7", + "serialport": "^9.2.8" + } + }, + "node_modules/@azure/abort-controller": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.0.4.tgz", + "integrity": "sha512-lNUmDRVGpanCsiUN3NWxFTdwmdFI53xwhkTFfHDGTYk46ca7Ind3nanJc+U6Zj9Tv+9nTCWRBscWEW1DyKOpTw==", + "dependencies": { + "tslib": "^2.0.0" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@azure/core-asynciterator-polyfill": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@azure/core-asynciterator-polyfill/-/core-asynciterator-polyfill-1.0.2.tgz", + "integrity": "sha512-3rkP4LnnlWawl0LZptJOdXNrT/fHp2eQMadoasa6afspXdpGrtPZuAQc2PD0cpgyuoXtUWyC3tv7xfntjGS5Dw==", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-auth": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.3.2.tgz", + "integrity": "sha512-7CU6DmCHIZp5ZPiZ9r3J17lTKMmYsm/zGvNkjArQwPkrLlZ1TZ+EUYfGgh2X31OLMVAQCTJZW4cXHJi02EbJnA==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-client": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@azure/core-client/-/core-client-1.5.0.tgz", + "integrity": "sha512-YNk8i9LT6YcFdFO+RRU0E4Ef+A8Y5lhXo6lz61rwbG8Uo7kSqh0YqK04OexiilM43xd6n3Y9yBhLnb1NFNI9dA==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-asynciterator-polyfill": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-rest-pipeline": "^1.5.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-client/node_modules/@azure/core-tracing": { + "version": "1.0.0-preview.13", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", + "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", + "dependencies": { + "@opentelemetry/api": "^1.0.1", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-http": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@azure/core-http/-/core-http-2.2.4.tgz", + "integrity": "sha512-QmmJmexXKtPyc3/rsZR/YTLDvMatzbzAypJmLzvlfxgz/SkgnqV/D4f6F2LsK6tBj1qhyp8BoXiOebiej0zz3A==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-asynciterator-polyfill": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "@types/node-fetch": "^2.5.0", + "@types/tunnel": "^0.0.3", + "form-data": "^4.0.0", + "node-fetch": "^2.6.7", + "process": "^0.11.10", + "tough-cookie": "^4.0.0", + "tslib": "^2.2.0", + "tunnel": "^0.0.6", + "uuid": "^8.3.0", + "xml2js": "^0.4.19" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-http/node_modules/@azure/core-tracing": { + "version": "1.0.0-preview.13", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", + "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", + "dependencies": { + "@opentelemetry/api": "^1.0.1", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-lro": { + "version": "2.2.4", + "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.2.4.tgz", + "integrity": "sha512-e1I2v2CZM0mQo8+RSix0x091Av493e4bnT22ds2fcQGslTHzM2oTbswkB65nP4iEpCxBrFxOSDPKExmTmjCVtQ==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-lro/node_modules/@azure/core-tracing": { + "version": "1.0.0-preview.13", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", + "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", + "dependencies": { + "@opentelemetry/api": "^1.0.1", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-paging": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.2.1.tgz", + "integrity": "sha512-UtH5iMlYsvg+nQYIl4UHlvvSrsBjOlRF4fs0j7mxd3rWdAStrKYrh2durOpHs5C9yZbVhsVDaisoyaf/lL1EVA==", + "dependencies": { + "@azure/core-asynciterator-polyfill": "^1.0.0", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-rest-pipeline": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.8.0.tgz", + "integrity": "sha512-o8eZr96erQpiq8EZhZU/SyN6ncOfZ6bexwN2nMm9WpDmZGvaq907kopADt8XvNhbEF7kRA1l901Pg8mXjWp3UQ==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-auth": "^1.3.0", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "form-data": "^4.0.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "tslib": "^2.2.0", + "uuid": "^8.3.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-rest-pipeline/node_modules/@azure/core-tracing": { + "version": "1.0.0-preview.13", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", + "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", + "dependencies": { + "@opentelemetry/api": "^1.0.1", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/core-tracing": { + "version": "1.0.0-preview.12", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.12.tgz", + "integrity": "sha512-nvo2Wc4EKZGN6eFu9n3U7OXmASmL8VxoPIH7xaD6OlQqi44bouF0YIi9ID5rEsKLiAU59IYx6M297nqWVMWPDg==", + "dependencies": { + "@opentelemetry/api": "^1.0.0", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/identity": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/@azure/identity/-/identity-1.5.2.tgz", + "integrity": "sha512-vqyeRbd2i0h9F4mqW5JbkP1xfabqKQ21l/81osKhpOQ2LtwaJW6nw4+0PsVYnxcbPHFCIZt6EWAk74a3OGYZJA==", + "dependencies": { + "@azure/core-auth": "^1.3.0", + "@azure/core-client": "^1.0.0", + "@azure/core-rest-pipeline": "^1.1.0", + "@azure/core-tracing": "1.0.0-preview.12", + "@azure/logger": "^1.0.0", + "@azure/msal-node": "1.0.0-beta.6", + "@types/stoppable": "^1.1.0", + "axios": "^0.21.1", + "events": "^3.0.0", + "jws": "^4.0.0", + "msal": "^1.0.2", + "open": "^7.0.0", + "qs": "^6.7.0", + "stoppable": "^1.1.0", + "tslib": "^2.0.0", + "uuid": "^8.3.0" + }, + "engines": { + "node": ">=12.0.0" + }, + "optionalDependencies": { + "keytar": "^7.3.0" + } + }, + "node_modules/@azure/keyvault-keys": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/@azure/keyvault-keys/-/keyvault-keys-4.4.0.tgz", + "integrity": "sha512-W9sPZebXYa3aar7BGIA+fAsq/sy1nf2TZAETbkv7DRawzVLrWv8QoVVceqNHjy3cigT4HNxXjaPYCI49ez5CUA==", + "dependencies": { + "@azure/abort-controller": "^1.0.0", + "@azure/core-http": "^2.0.0", + "@azure/core-lro": "^2.2.0", + "@azure/core-paging": "^1.1.1", + "@azure/core-tracing": "1.0.0-preview.13", + "@azure/logger": "^1.0.0", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/keyvault-keys/node_modules/@azure/core-tracing": { + "version": "1.0.0-preview.13", + "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.0-preview.13.tgz", + "integrity": "sha512-KxDlhXyMlh2Jhj2ykX6vNEU0Vou4nHr025KoSEiz7cS3BNiHNaZcdECk/DmLkEB0as5T7b/TpRcehJ5yV6NeXQ==", + "dependencies": { + "@opentelemetry/api": "^1.0.1", + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/logger": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.3.tgz", + "integrity": "sha512-aK4s3Xxjrx3daZr3VylxejK3vG5ExXck5WOHDJ8in/k9AqlfIyFMMT1uG7u8mNjX+QRILTIn0/Xgschfh/dQ9g==", + "dependencies": { + "tslib": "^2.2.0" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@azure/ms-rest-azure-env": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@azure/ms-rest-azure-env/-/ms-rest-azure-env-2.0.0.tgz", + "integrity": "sha512-dG76W7ElfLi+fbTjnZVGj+M9e0BIEJmRxU6fHaUQ12bZBe8EJKYb2GV50YWNaP2uJiVQ5+7nXEVj1VN1UQtaEw==" + }, + "node_modules/@azure/ms-rest-js": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/@azure/ms-rest-js/-/ms-rest-js-2.6.1.tgz", + "integrity": "sha512-LLi4jRe/qy5IM8U2CkoDgSZp2OH+MgDe2wePmhz8uY84Svc53EhHaamVyoU6BjjHBxvCRh1vcD1urJDccrxqIw==", + "dependencies": { + "@azure/core-auth": "^1.1.4", + "abort-controller": "^3.0.0", + "form-data": "^2.5.0", + "node-fetch": "^2.6.7", + "tough-cookie": "^3.0.1", + "tslib": "^1.10.0", + "tunnel": "0.0.6", + "uuid": "^8.3.2", + "xml2js": "^0.4.19" + } + }, + "node_modules/@azure/ms-rest-js/node_modules/form-data": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.5.1.tgz", + "integrity": "sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/@azure/ms-rest-js/node_modules/tough-cookie": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-3.0.1.tgz", + "integrity": "sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg==", + "dependencies": { + "ip-regex": "^2.1.0", + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@azure/ms-rest-js/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/@azure/ms-rest-nodeauth": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/@azure/ms-rest-nodeauth/-/ms-rest-nodeauth-3.1.1.tgz", + "integrity": "sha512-UA/8dgLy3+ZiwJjAZHxL4MUB14fFQPkaAOZ94jsTW/Z6WmoOeny2+cLk0+dyIX/iH6qSrEWKwbStEeB970B9pA==", + "dependencies": { + "@azure/ms-rest-azure-env": "^2.0.0", + "@azure/ms-rest-js": "^2.0.4", + "adal-node": "^0.2.2" + } + }, + "node_modules/@azure/msal-common": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-4.5.1.tgz", + "integrity": "sha512-/i5dXM+QAtO+6atYd5oHGBAx48EGSISkXNXViheliOQe+SIFMDo3gSq3lL54W0suOSAsVPws3XnTaIHlla0PIQ==", + "dependencies": { + "debug": "^4.1.1" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/@azure/msal-common/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@azure/msal-common/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/@azure/msal-node": { + "version": "1.0.0-beta.6", + "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-1.0.0-beta.6.tgz", + "integrity": "sha512-ZQI11Uz1j0HJohb9JZLRD8z0moVcPks1AFW4Q/Gcl67+QvH4aKEJti7fjCcipEEZYb/qzLSO8U6IZgPYytsiJQ==", + "dependencies": { + "@azure/msal-common": "^4.0.0", + "axios": "^0.21.1", + "jsonwebtoken": "^8.5.1", + "uuid": "^8.3.0" + } + }, + "node_modules/@js-joda/core": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@js-joda/core/-/core-3.2.0.tgz", + "integrity": "sha512-PMqgJ0sw5B7FKb2d5bWYIoxjri+QlW/Pys7+Rw82jSH0QN3rB05jZ/VrrsUdh1w4+i2kw9JOejXGq/KhDOX7Kg==" + }, + "node_modules/@opentelemetry/api": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.0.4.tgz", + "integrity": "sha512-BuJuXRSJNQ3QoKA6GWWDyuLpOUck+9hAXNMCnrloc1aWVoy6Xq6t9PUV08aBZ4Lutqq2LEHM486bpZqoViScog==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/@serialport/binding-abstract": { + "version": "9.2.3", + "resolved": "https://registry.npmjs.org/@serialport/binding-abstract/-/binding-abstract-9.2.3.tgz", + "integrity": "sha512-cQs9tbIlG3P0IrOWyVirqlhWuJ7Ms2Zh9m2108z6Y5UW/iVj6wEOiW8EmK9QX9jmJXYllE7wgGgvVozP5oCj3w==", + "dependencies": { + "debug": "^4.3.2" + }, + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/@serialport/binding-abstract/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@serialport/binding-abstract/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/@serialport/binding-mock": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@serialport/binding-mock/-/binding-mock-9.2.4.tgz", + "integrity": "sha512-dpEhACCs44oQhh6ajJfJdvQdK38Vq0N4W6iD/gdplglDCK7qXRQCMUjJIeKdS/HSEiWkC3bwumUhUufdsOyT4g==", + "dependencies": { + "@serialport/binding-abstract": "9.2.3", + "debug": "^4.3.2" + }, + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/@serialport/binding-mock/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@serialport/binding-mock/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/@serialport/bindings": { + "version": "9.2.8", + "resolved": "https://registry.npmjs.org/@serialport/bindings/-/bindings-9.2.8.tgz", + "integrity": "sha512-hSLxTe0tADZ3LMMGwvEJWOC/TaFQTyPeFalUCsJ1lSQ0k6bPF04JwrtB/C81GetmDBTNRY0GlD0SNtKCc7Dr5g==", + "hasInstallScript": true, + "dependencies": { + "@serialport/binding-abstract": "9.2.3", + "@serialport/parser-readline": "9.2.4", + "bindings": "^1.5.0", + "debug": "^4.3.2", + "nan": "^2.15.0", + "prebuild-install": "^7.0.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/@serialport/bindings/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@serialport/bindings/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/@serialport/parser-byte-length": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@serialport/parser-byte-length/-/parser-byte-length-9.2.4.tgz", + "integrity": "sha512-sQD/iw4ZMU3xW9PLi0/GlvU6Y623jGeWecbMkO7izUo/6P7gtfv1c9ikd5h0kwL8AoAOpQA1lxdHIKox+umBUg==", + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/@serialport/parser-cctalk": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@serialport/parser-cctalk/-/parser-cctalk-9.2.4.tgz", + "integrity": "sha512-T4TU5vQMwmo9AB3gQLFDWbfJXlW5jd9guEsB/nqKjFHTv0FXPdZ7DQ2TpSp8RnHWxU3GX6kYTaDO20BKzc8GPQ==", + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/@serialport/parser-delimiter": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@serialport/parser-delimiter/-/parser-delimiter-9.2.4.tgz", + "integrity": "sha512-4nvTAoYAgkxFiXrkI+3CA49Yd43CODjeszh89EK+I9c8wOZ+etZduRCzINYPiy26g7zO+GRAb9FoPCsY+sYcbQ==", + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/@serialport/parser-inter-byte-timeout": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@serialport/parser-inter-byte-timeout/-/parser-inter-byte-timeout-9.2.4.tgz", + "integrity": "sha512-SOAdvr0oBQIOCXX198hiTlxs4JTKg9j5piapw5tNq52fwDOWdbYrFneT/wN04UTMKaDrJuEvXq6T4rv4j7nJ5A==", + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/@serialport/parser-readline": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@serialport/parser-readline/-/parser-readline-9.2.4.tgz", + "integrity": "sha512-Z1/qrZTQUVhNSJP1hd9YfDvq0o7d87rNwAjjRKbVpa7Qi51tG5BnKt43IV3NFMyBlVcRe0rnIb3tJu57E0SOwg==", + "dependencies": { + "@serialport/parser-delimiter": "9.2.4" + }, + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/@serialport/parser-ready": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@serialport/parser-ready/-/parser-ready-9.2.4.tgz", + "integrity": "sha512-Pyi94Itjl6qAURwIZr/gmZpMAyTmKXThm6vL5DoAWGQjcRHWB0gwv2TY2v7N+mQLJYUKU3cMnvnATXxHm7xjxw==", + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/@serialport/parser-regex": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@serialport/parser-regex/-/parser-regex-9.2.4.tgz", + "integrity": "sha512-sI/cVvPOYz+Dbv4ZdnW16qAwvXiFf/1pGASQdbveRTlgJDdz7sRNlCBifzfTN2xljwvCTZYqiudKvDdC1TepRQ==", + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/@serialport/stream": { + "version": "9.2.4", + "resolved": "https://registry.npmjs.org/@serialport/stream/-/stream-9.2.4.tgz", + "integrity": "sha512-bLye8Ub4vUFQGmkh8qEqehr7SE7EJs2yDs0h9jzuL5oKi+F34CFmWkEErO8GAOQ8YNn7p6b3GxUgs+0BrHHDZQ==", + "dependencies": { + "debug": "^4.3.2" + }, + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/@serialport/stream/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/@serialport/stream/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/@sindresorhus/is": { + "version": "0.14.0", + "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-0.14.0.tgz", + "integrity": "sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/@szmarczak/http-timer": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-1.1.2.tgz", + "integrity": "sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA==", + "dependencies": { + "defer-to-connect": "^1.0.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@tediousjs/connection-string": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/@tediousjs/connection-string/-/connection-string-0.3.0.tgz", + "integrity": "sha512-d/keJiNKfpHo+GmSB8QcsAwBx8h+V1UbdozA5TD+eSLXprNY53JAYub47J9evsSKWDdNG5uVj0FiMozLKuzowQ==" + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/node": { + "version": "17.0.23", + "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.23.tgz", + "integrity": "sha512-UxDxWn7dl97rKVeVS61vErvw086aCYhDLyvRQZ5Rk65rZKepaFdm53GeqXaKBuOhED4e9uWq34IC3TdSdJJ2Gw==" + }, + "node_modules/@types/node-fetch": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.1.tgz", + "integrity": "sha512-oMqjURCaxoSIsHSr1E47QHzbmzNR5rK8McHuNb11BOM9cHcIK3Avy0s/b2JlXHoQGTYS3NsvWzV1M0iK7l0wbA==", + "dependencies": { + "@types/node": "*", + "form-data": "^3.0.0" + } + }, + "node_modules/@types/node-fetch/node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/stoppable": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/@types/stoppable/-/stoppable-1.1.1.tgz", + "integrity": "sha512-b8N+fCADRIYYrGZOcmOR8ZNBOqhktWTB/bMUl5LvGtT201QKJZOOH5UsFyI3qtteM6ZAJbJqZoBcLqqxKIwjhw==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/tunnel": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/@types/tunnel/-/tunnel-0.0.3.tgz", + "integrity": "sha512-sOUTGn6h1SfQ+gbgqC364jLFBw2lnFqkgF3q0WovEHRLMrVD1sd5aufqi/aJObLekJO+Aq5z646U4Oxy6shXMA==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@xmldom/xmldom": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.5.tgz", + "integrity": "sha512-V3BIhmY36fXZ1OtVcI9W+FxQqxVLsPKcNjWigIaa81dLC9IolJl5Mt4Cvhmr0flUnjSpTdrbMTSbXqYqV5dT6A==", + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==" + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/adal-node": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/adal-node/-/adal-node-0.2.3.tgz", + "integrity": "sha512-gMKr8RuYEYvsj7jyfCv/4BfKToQThz20SP71N3AtFn3ia3yAR8Qt2T3aVQhuJzunWs2b38ZsQV0qsZPdwZr7VQ==", + "dependencies": { + "@xmldom/xmldom": "^0.7.0", + "async": "^2.6.3", + "axios": "^0.21.1", + "date-utils": "*", + "jws": "3.x.x", + "underscore": ">= 1.3.1", + "uuid": "^3.1.0", + "xpath.js": "~1.1.0" + }, + "engines": { + "node": ">= 0.6.15" + } + }, + "node_modules/adal-node/node_modules/jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "dependencies": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/adal-node/node_modules/jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "dependencies": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/adal-node/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agent-base/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/agent-base/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/ansi-align": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-align/-/ansi-align-3.0.1.tgz", + "integrity": "sha512-IOfwwBF5iczOjp/WeY4YxyjqAFMQoZufdQWDd19SEExbVLNXqvpzSJ/M7Za4/sCPmQ0+GRquoA7bGcINcxew6w==", + "dependencies": { + "string-width": "^4.1.0" + } + }, + "node_modules/ansi-align/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-align/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-align/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-align/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/anymatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.2.tgz", + "integrity": "sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg==", + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==" + }, + "node_modules/are-we-there-yet": { + "version": "1.1.7", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz", + "integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==", + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^2.0.6" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/base64-js": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", + "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/bignumber.js": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.0.0.tgz", + "integrity": "sha512-t/OYhhJ2SD+YGBQcjY8GzzDHEk9f3nerxjtfa6tlMXfe7frs/WozhvCNoGvpM0P3bNf3Gq5ZRMlGr5f3r4/N8A==", + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/bl": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", + "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", + "dependencies": { + "buffer": "^5.5.0", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/bl/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/body-parser": { + "version": "1.19.2", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.2.tgz", + "integrity": "sha512-SAAwOxgoCKMGs9uUAUFHygfLAyaniaoun6I8mFY9pRAJL9+Kec34aU+oIjDhTycub1jozEfEwx1W1IuOYxVSFw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "~1.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "on-finished": "~2.3.0", + "qs": "6.9.7", + "raw-body": "2.4.3", + "type-is": "~1.6.18" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/boxen": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/boxen/-/boxen-5.1.2.tgz", + "integrity": "sha512-9gYgQKXx+1nP8mP7CzFyaUARhg7D3n1dF/FnErWmu9l6JvGpNUN278h0aSb+QjoiKSWG+iZ3uHrcqk0qrY9RQQ==", + "dependencies": { + "ansi-align": "^3.0.0", + "camelcase": "^6.2.0", + "chalk": "^4.1.0", + "cli-boxes": "^2.2.1", + "string-width": "^4.2.2", + "type-fest": "^0.20.2", + "widest-line": "^3.1.0", + "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/boxen/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/boxen/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + }, + "node_modules/buffer-equal-constant-time": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz", + "integrity": "sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk=" + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacheable-request": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-6.1.0.tgz", + "integrity": "sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg==", + "dependencies": { + "clone-response": "^1.0.2", + "get-stream": "^5.1.0", + "http-cache-semantics": "^4.0.0", + "keyv": "^3.0.0", + "lowercase-keys": "^2.0.0", + "normalize-url": "^4.1.0", + "responselike": "^1.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/cacheable-request/node_modules/get-stream": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz", + "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cacheable-request/node_modules/lowercase-keys": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz", + "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/chalk/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/chokidar": { + "version": "3.5.3", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz", + "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==", + "funding": [ + { + "type": "individual", + "url": "https://paulmillr.com/funding/" + } + ], + "dependencies": { + "anymatch": "~3.1.2", + "braces": "~3.0.2", + "glob-parent": "~5.1.2", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.6.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.2" + } + }, + "node_modules/chownr": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", + "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" + }, + "node_modules/ci-info": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-2.0.0.tgz", + "integrity": "sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==" + }, + "node_modules/cli-boxes": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/cli-boxes/-/cli-boxes-2.2.1.tgz", + "integrity": "sha512-y4coMcylgSCdVinjiDBuR8PCC2bLjyGTwEmPb9NHR/QaNU6EUOXcTY/s6VjGMD6ENSEaeQYHCY0GNGS5jfMwPw==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/clone-response": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz", + "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=", + "dependencies": { + "mimic-response": "^1.0.0" + } + }, + "node_modules/clone-response/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/code-point-at": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz", + "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=" + }, + "node_modules/configstore": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/configstore/-/configstore-5.0.1.tgz", + "integrity": "sha512-aMKprgk5YhBNyH25hj8wGt2+D52Sw1DRRIzqBwLp2Ya9mFmY8KPvvtvmna8SxVR9JMZ4kzMD68N22vlaRpkeFA==", + "dependencies": { + "dot-prop": "^5.2.0", + "graceful-fs": "^4.1.2", + "make-dir": "^3.0.0", + "unique-string": "^2.0.0", + "write-file-atomic": "^3.0.0", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/console-control-strings": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", + "integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", + "integrity": "sha512-aSWTXFzaKWkvHO1Ny/s+ePFpvKsPnjc551iI41v3ny/ow6tBG5Vd+FuqGNhh1LxOmVzOlGUriIlOaokOvhaStA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "node_modules/core-util-is": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz", + "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/crypto-random-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz", + "integrity": "sha512-v1plID3y9r/lPhviJ1wrXpLeyUIGAZ2SHNYTEapm7/8A9nLPoyvVp3RK/EPFqn5kEznyWgYZNsRtYYIWbuG8KA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/date-utils": { + "version": "1.2.21", + "resolved": "https://registry.npmjs.org/date-utils/-/date-utils-1.2.21.tgz", + "integrity": "sha1-YfsWzcEnSzyayq/+n8ad+HIKK2Q=", + "engines": { + "node": ">0.4.0" + } + }, + "node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/decompress-response": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", + "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", + "dependencies": { + "mimic-response": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/deep-extend": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", + "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/defer-to-connect": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-1.1.3.tgz", + "integrity": "sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ==" + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/delegates": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", + "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=" + }, + "node_modules/denque": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/denque/-/denque-2.0.1.tgz", + "integrity": "sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/depd": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", + "integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/destroy": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", + "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" + }, + "node_modules/detect-libc": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.1.tgz", + "integrity": "sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/dot-prop": { + "version": "5.3.0", + "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", + "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", + "dependencies": { + "is-obj": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/duplexer3": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz", + "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=" + }, + "node_modules/ecdsa-sig-formatter": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz", + "integrity": "sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==", + "dependencies": { + "safe-buffer": "^5.0.1" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" + }, + "node_modules/emoji-regex": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", + "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/end-of-stream": { + "version": "1.4.4", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", + "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", + "dependencies": { + "once": "^1.4.0" + } + }, + "node_modules/escape-goat": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/escape-goat/-/escape-goat-2.1.1.tgz", + "integrity": "sha512-8/uIhbG12Csjy2JEW7D9pHbreaVaS/OpN3ycnyvElTdwM5n6GY6W6e2IPemfvGZeUMqZ9A/3GqIZMgKnBhAw/Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "engines": { + "node": ">=6" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/expand-template": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", + "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/express": { + "version": "4.17.3", + "resolved": "https://registry.npmjs.org/express/-/express-4.17.3.tgz", + "integrity": "sha512-yuSQpz5I+Ch7gFrPCk4/c+dIBKlQUxtgwqzph132bsT6qhuzss6I8cLJQz7B3rFblzd6wtcI0ZbGltH/C4LjUg==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.19.2", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.4.2", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "~1.1.2", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "~1.1.2", + "fresh": "0.5.2", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.9.7", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.17.2", + "serve-static": "1.14.2", + "setprototypeof": "1.2.0", + "statuses": "~1.5.0", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/file-uri-to-path": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", + "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" + }, + "node_modules/fill-range": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", + "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/finalhandler": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", + "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "~2.3.0", + "parseurl": "~1.3.3", + "statuses": "~1.5.0", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/follow-redirects": { + "version": "1.14.9", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.14.9.tgz", + "integrity": "sha512-MQDfihBQYMcyy5dhRDJUHcw7lb2Pv/TuE6xP1vyraLukNDHKbDxDNaOE3NbCAdKQApno+GPRyo1YAp89yCjK4w==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-constants": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", + "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" + }, + "node_modules/fsevents": { + "version": "2.3.2", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", + "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/gauge": { + "version": "2.7.4", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", + "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "dependencies": { + "aproba": "^1.0.3", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.0", + "object-assign": "^4.1.0", + "signal-exit": "^3.0.0", + "string-width": "^1.0.1", + "strip-ansi": "^3.0.1", + "wide-align": "^1.1.0" + } + }, + "node_modules/generate-function": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", + "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==", + "dependencies": { + "is-property": "^1.0.2" + } + }, + "node_modules/get-stream": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-4.1.0.tgz", + "integrity": "sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w==", + "dependencies": { + "pump": "^3.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/github-from-package": { + "version": "0.0.0", + "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", + "integrity": "sha1-l/tdlr/eiXMxPyDoKI75oWf6ZM4=" + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/global-dirs": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-3.0.0.tgz", + "integrity": "sha512-v8ho2DS5RiCjftj1nD9NmnfaOzTdud7RRnVd9kFNOjqZbISlx5DQ+OrTkywgd0dIt7oFCvKetZSHoHcP3sDdiA==", + "dependencies": { + "ini": "2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/global-dirs/node_modules/ini": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ini/-/ini-2.0.0.tgz", + "integrity": "sha512-7PnF4oN3CvZF23ADhA5wRaYEQpJ8qygSkbtTXWBeXWXmEVRXK+1ITciHWwHhsjv1TmW0MgacIv6hEi5pX5NQdA==", + "engines": { + "node": ">=10" + } + }, + "node_modules/got": { + "version": "9.6.0", + "resolved": "https://registry.npmjs.org/got/-/got-9.6.0.tgz", + "integrity": "sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q==", + "dependencies": { + "@sindresorhus/is": "^0.14.0", + "@szmarczak/http-timer": "^1.1.2", + "cacheable-request": "^6.0.0", + "decompress-response": "^3.3.0", + "duplexer3": "^0.1.4", + "get-stream": "^4.1.0", + "lowercase-keys": "^1.0.1", + "mimic-response": "^1.0.1", + "p-cancelable": "^1.0.0", + "to-readable-stream": "^1.0.0", + "url-parse-lax": "^3.0.0" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/got/node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M=", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/got/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-unicode": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", + "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=" + }, + "node_modules/has-yarn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/has-yarn/-/has-yarn-2.1.0.tgz", + "integrity": "sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==" + }, + "node_modules/http-errors": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.8.1.tgz", + "integrity": "sha512-Kpk9Sm7NmI+RHhnj6OIWDI1d6fIoFAtFt9RLaTMRlg/8w49juAStsrBgp0Dp4OdxdVbRIeKhtCUvoi/RuAhO4g==", + "dependencies": { + "depd": "~1.1.2", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": ">= 1.5.0 < 2", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-agent/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/http-proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ieee754": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", + "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/ignore-by-default": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz", + "integrity": "sha1-SMptcvbGo68Aqa1K5odr44ieKwk=" + }, + "node_modules/import-lazy": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-2.1.0.tgz", + "integrity": "sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM=", + "engines": { + "node": ">=4" + } + }, + "node_modules/imurmurhash": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", + "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/ini": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", + "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" + }, + "node_modules/ip-regex": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-2.1.0.tgz", + "integrity": "sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk=", + "engines": { + "node": ">=4" + } + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-binary-path": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", + "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-ci": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-ci/-/is-ci-2.0.0.tgz", + "integrity": "sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w==", + "dependencies": { + "ci-info": "^2.0.0" + }, + "bin": { + "is-ci": "bin.js" + } + }, + "node_modules/is-docker": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", + "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", + "bin": { + "is-docker": "cli.js" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz", + "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=", + "dependencies": { + "number-is-nan": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-installed-globally": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/is-installed-globally/-/is-installed-globally-0.4.0.tgz", + "integrity": "sha512-iwGqO3J21aaSkC7jWnHP/difazwS7SFeIqxv6wEtLU8Y5KlzFTjyqcSIT0d8s4+dDhKytsk9PJZ2BkS5eZwQRQ==", + "dependencies": { + "global-dirs": "^3.0.0", + "is-path-inside": "^3.0.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-npm": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/is-npm/-/is-npm-5.0.0.tgz", + "integrity": "sha512-WW/rQLOazUq+ST/bCAVBp/2oMERWLsR7OrKyt052dNDk4DHcDE0/7QSXITlmi+VBcV13DfIbysG3tZJm5RfdBA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/is-obj": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", + "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-path-inside": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-3.0.3.tgz", + "integrity": "sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-property": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", + "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=" + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/is-yarn-global": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/is-yarn-global/-/is-yarn-global-0.3.0.tgz", + "integrity": "sha512-VjSeb/lHmkoyd8ryPVIKvOCn4D1koMqY+vqyjjUfc3xyKtP4dYOxM44sZrnqQSzSds3xyOrUTLTC9LVCVgLngw==" + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=" + }, + "node_modules/jsbi": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/jsbi/-/jsbi-3.2.5.tgz", + "integrity": "sha512-aBE4n43IPvjaddScbvWRA2YlTzKEynHzu7MqOyTipdHucf/VxS63ViCjxYRg86M8Rxwbt/GfzHl1kKERkt45fQ==" + }, + "node_modules/json-buffer": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.0.tgz", + "integrity": "sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg=" + }, + "node_modules/jsonwebtoken": { + "version": "8.5.1", + "resolved": "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz", + "integrity": "sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w==", + "dependencies": { + "jws": "^3.2.2", + "lodash.includes": "^4.3.0", + "lodash.isboolean": "^3.0.3", + "lodash.isinteger": "^4.0.4", + "lodash.isnumber": "^3.0.3", + "lodash.isplainobject": "^4.0.6", + "lodash.isstring": "^4.0.1", + "lodash.once": "^4.0.0", + "ms": "^2.1.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=4", + "npm": ">=1.4.28" + } + }, + "node_modules/jsonwebtoken/node_modules/jwa": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz", + "integrity": "sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==", + "dependencies": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jsonwebtoken/node_modules/jws": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz", + "integrity": "sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==", + "dependencies": { + "jwa": "^1.4.1", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jsonwebtoken/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/jwa": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/jwa/-/jwa-2.0.0.tgz", + "integrity": "sha512-jrZ2Qx916EA+fq9cEAeCROWPTfCwi1IVHqT2tapuqLEVVDKFDENFw1oL+MwrTvH6msKxsd1YTDVw6uKEcsrLEA==", + "dependencies": { + "buffer-equal-constant-time": "1.0.1", + "ecdsa-sig-formatter": "1.0.11", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/jws": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jws/-/jws-4.0.0.tgz", + "integrity": "sha512-KDncfTmOZoOMTFG4mBlG0qUIOlc03fmzH+ru6RgYVZhPkyiy/92Owlt/8UEN+a4TXR1FQetfIpJE8ApdvdVxTg==", + "dependencies": { + "jwa": "^2.0.0", + "safe-buffer": "^5.0.1" + } + }, + "node_modules/keytar": { + "version": "7.9.0", + "resolved": "https://registry.npmjs.org/keytar/-/keytar-7.9.0.tgz", + "integrity": "sha512-VPD8mtVtm5JNtA2AErl6Chp06JBfy7diFQ7TQQhdpWOl6MrCRB+eRbvAZUsbGQS9kiMq0coJsy0W0vHpDCkWsQ==", + "hasInstallScript": true, + "optional": true, + "dependencies": { + "node-addon-api": "^4.3.0", + "prebuild-install": "^7.0.1" + } + }, + "node_modules/keyv": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/keyv/-/keyv-3.1.0.tgz", + "integrity": "sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA==", + "dependencies": { + "json-buffer": "3.0.0" + } + }, + "node_modules/latest-version": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/latest-version/-/latest-version-5.1.0.tgz", + "integrity": "sha512-weT+r0kTkRQdCdYCNtkMwWXQTMEswKrFBkm4ckQOMVhhqhIMI1UT2hMj+1iigIhgSZm5gTmrRXBNoGUgaTY1xA==", + "dependencies": { + "package-json": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.includes": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz", + "integrity": "sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8=" + }, + "node_modules/lodash.isboolean": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz", + "integrity": "sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY=" + }, + "node_modules/lodash.isinteger": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz", + "integrity": "sha1-YZwK89A/iwTDH1iChAt3sRzWg0M=" + }, + "node_modules/lodash.isnumber": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz", + "integrity": "sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w=" + }, + "node_modules/lodash.isplainobject": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", + "integrity": "sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs=" + }, + "node_modules/lodash.isstring": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz", + "integrity": "sha1-1SfftUVuynzJu5XV2ur4i6VKVFE=" + }, + "node_modules/lodash.once": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz", + "integrity": "sha1-DdOXEhPHxW34gJd9UEyI+0cal6w=" + }, + "node_modules/long": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", + "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" + }, + "node_modules/lowercase-keys": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-1.0.1.tgz", + "integrity": "sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-response": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", + "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/msal": { + "version": "1.4.16", + "resolved": "https://registry.npmjs.org/msal/-/msal-1.4.16.tgz", + "integrity": "sha512-Q6jIV5RG6mD9O0bzZrR/f8v5QikrVWU0sccwOyqWE1xlBkKYVKRa/L8Gxt1X58M+J/N9V0JskhvO4KIfRHlE8g==", + "dependencies": { + "tslib": "^1.9.3" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/msal/node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" + }, + "node_modules/mssql": { + "version": "7.3.1", + "resolved": "https://registry.npmjs.org/mssql/-/mssql-7.3.1.tgz", + "integrity": "sha512-mu/+4wp0xS/zg+F0xeTsXN4geB/7k+TmtPcIQ0S0IWtoPd/6Th8bGEeLoCWAsLSUop//hXiI+suh/0l4iWmjmA==", + "dependencies": { + "@tediousjs/connection-string": "^0.3.0", + "debug": "^4.3.3", + "rfdc": "^1.3.0", + "tarn": "^3.0.1", + "tedious": "^11.4.0" + }, + "bin": { + "mssql": "bin/mssql" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/mssql/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/mssql/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/mysql": { + "version": "2.18.1", + "resolved": "https://registry.npmjs.org/mysql/-/mysql-2.18.1.tgz", + "integrity": "sha512-Bca+gk2YWmqp2Uf6k5NFEurwY/0td0cpebAucFpY/3jhrwrVGuxU2uQFCHjU19SJfje0yQvi+rVWdq78hR5lig==", + "dependencies": { + "bignumber.js": "9.0.0", + "readable-stream": "2.3.7", + "safe-buffer": "5.1.2", + "sqlstring": "2.3.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mysql/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/mysql/node_modules/sqlstring": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.1.tgz", + "integrity": "sha1-R1OT/56RR5rqYtyvDKPRSYOn+0A=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mysql2": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/mysql2/-/mysql2-2.3.3.tgz", + "integrity": "sha512-wxJUev6LgMSgACDkb/InIFxDprRa6T95+VEoR+xPvtngtccNH2dGjEB/fVZ8yg1gWv1510c9CvXuJHi5zUm0ZA==", + "dependencies": { + "denque": "^2.0.1", + "generate-function": "^2.3.1", + "iconv-lite": "^0.6.3", + "long": "^4.0.0", + "lru-cache": "^6.0.0", + "named-placeholders": "^1.1.2", + "seq-queue": "^0.0.5", + "sqlstring": "^2.3.2" + }, + "engines": { + "node": ">= 8.0" + } + }, + "node_modules/mysql2/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/named-placeholders": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.2.tgz", + "integrity": "sha512-wiFWqxoLL3PGVReSZpjLVxyJ1bRqe+KKJVbr4hGs1KWfTZTQyezHFBbuKj9hsizHyGV2ne7EMjHdxEGAybD5SA==", + "dependencies": { + "lru-cache": "^4.1.3" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/named-placeholders/node_modules/lru-cache": { + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "node_modules/named-placeholders/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" + }, + "node_modules/nan": { + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.15.0.tgz", + "integrity": "sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==" + }, + "node_modules/napi-build-utils": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", + "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" + }, + "node_modules/native-duplexpair": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/native-duplexpair/-/native-duplexpair-1.0.0.tgz", + "integrity": "sha1-eJkHjmS/PIo9cyYBs9QP8F21j6A=" + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/node-abi": { + "version": "3.8.0", + "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.8.0.tgz", + "integrity": "sha512-tzua9qWWi7iW4I42vUPKM+SfaF0vQSLAm4yO5J83mSwB7GeoWrDKC/K+8YCnYNwqP5duwazbw2X9l4m8SC2cUw==", + "dependencies": { + "semver": "^7.3.5" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/node-abi/node_modules/lru-cache": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.8.0.tgz", + "integrity": "sha512-AmXqneQZL3KZMIgBpaPTeI6pfwh+xQ2vutMsyqOu1TBdEXFZgpG/80wuJ531w2ZN7TI0/oc8CPxzh/DKQudZqg==", + "deprecated": "Please update to latest patch version to fix memory leak https://github.com/isaacs/node-lru-cache/issues/227", + "engines": { + "node": ">=12" + } + }, + "node_modules/node-abi/node_modules/semver": { + "version": "7.3.6", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.6.tgz", + "integrity": "sha512-HZWqcgwLsjaX1HBD31msI/rXktuIhS+lWvdE4kN9z+8IVT4Itc7vqU2WvYsyD6/sjYCt4dEKH/m1M3dwI9CC5w==", + "dependencies": { + "lru-cache": "^7.4.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/node-abort-controller": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-2.0.0.tgz", + "integrity": "sha512-L8RfEgjBTHAISTuagw51PprVAqNZoG6KSB6LQ6H1bskMVkFs5E71IyjauLBv3XbuomJlguWF/VnRHdJ1gqiAqA==" + }, + "node_modules/node-addon-api": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz", + "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==", + "optional": true + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/nodemon": { + "version": "2.0.15", + "resolved": "https://registry.npmjs.org/nodemon/-/nodemon-2.0.15.tgz", + "integrity": "sha512-gdHMNx47Gw7b3kWxJV64NI+Q5nfl0y5DgDbiVtShiwa7Z0IZ07Ll4RLFo6AjrhzMtoEZn5PDE3/c2AbVsiCkpA==", + "hasInstallScript": true, + "dependencies": { + "chokidar": "^3.5.2", + "debug": "^3.2.7", + "ignore-by-default": "^1.0.1", + "minimatch": "^3.0.4", + "pstree.remy": "^1.1.8", + "semver": "^5.7.1", + "supports-color": "^5.5.0", + "touch": "^3.1.0", + "undefsafe": "^2.0.5", + "update-notifier": "^5.1.0" + }, + "bin": { + "nodemon": "bin/nodemon.js" + }, + "engines": { + "node": ">=8.10.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/nodemon" + } + }, + "node_modules/nodemon/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", + "dependencies": { + "ms": "^2.1.1" + } + }, + "node_modules/nodemon/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/nopt": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-1.0.10.tgz", + "integrity": "sha1-bd0hvSoxQXuScn3Vhfim83YI6+4=", + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": "*" + } + }, + "node_modules/normalize-path": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", + "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/normalize-url": { + "version": "4.5.1", + "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-4.5.1.tgz", + "integrity": "sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA==", + "engines": { + "node": ">=8" + } + }, + "node_modules/npmlog": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", + "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "dependencies": { + "are-we-there-yet": "~1.1.2", + "console-control-strings": "~1.1.0", + "gauge": "~2.7.3", + "set-blocking": "~2.0.0" + } + }, + "node_modules/number-is-nan": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", + "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/on-finished": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", + "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/open": { + "version": "7.4.2", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.2.tgz", + "integrity": "sha512-MVHddDVweXZF3awtlAS+6pgKLlm/JgxZ90+/NBurBoQctVOOB/zDdVjcyPzQ+0laDGbsWgrRkflI65sQeOgT9Q==", + "dependencies": { + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/p-cancelable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-1.1.0.tgz", + "integrity": "sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw==", + "engines": { + "node": ">=6" + } + }, + "node_modules/package-json": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/package-json/-/package-json-6.5.0.tgz", + "integrity": "sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ==", + "dependencies": { + "got": "^9.6.0", + "registry-auth-token": "^4.0.0", + "registry-url": "^5.0.0", + "semver": "^6.2.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/package-json/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path": { + "version": "0.12.7", + "resolved": "https://registry.npmjs.org/path/-/path-0.12.7.tgz", + "integrity": "sha1-1NwqUGxM4hl+tIHr/NWzbAFAsQ8=", + "dependencies": { + "process": "^0.11.1", + "util": "^0.10.3" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/prebuild-install": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.0.1.tgz", + "integrity": "sha512-QBSab31WqkyxpnMWQxubYAHR5S9B2+r81ucocew34Fkl98FhvKIF50jIJnNOBmAZfyNV7vE5T6gd3hTVWgY6tg==", + "dependencies": { + "detect-libc": "^2.0.0", + "expand-template": "^2.0.3", + "github-from-package": "0.0.0", + "minimist": "^1.2.3", + "mkdirp-classic": "^0.5.3", + "napi-build-utils": "^1.0.1", + "node-abi": "^3.3.0", + "npmlog": "^4.0.1", + "pump": "^3.0.0", + "rc": "^1.2.7", + "simple-get": "^4.0.0", + "tar-fs": "^2.0.0", + "tunnel-agent": "^0.6.0" + }, + "bin": { + "prebuild-install": "bin.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/prepend-http": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-2.0.0.tgz", + "integrity": "sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc=", + "engines": { + "node": ">=4" + } + }, + "node_modules/process": { + "version": "0.11.10", + "resolved": "https://registry.npmjs.org/process/-/process-0.11.10.tgz", + "integrity": "sha1-czIwDoQBYb2j5podHZGn1LwW8YI=", + "engines": { + "node": ">= 0.6.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" + }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, + "node_modules/pstree.remy": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz", + "integrity": "sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==" + }, + "node_modules/pump": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", + "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", + "dependencies": { + "end-of-stream": "^1.1.0", + "once": "^1.3.1" + } + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/pupa": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/pupa/-/pupa-2.1.1.tgz", + "integrity": "sha512-l1jNAspIBSFqbT+y+5FosojNpVpF94nlI+wDUpqP9enwOTfHx9f0gh5nB96vl+6yTpsJsypeNrwfzPrKuHB41A==", + "dependencies": { + "escape-goat": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/qs": { + "version": "6.9.7", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.9.7.tgz", + "integrity": "sha512-IhMFgUmuNpyRfxA90umL7ByLlgRXu6tIfKPpF5TmcfRLlLCckfP/g3IQmju6jjpu+Hh8rA+2p6A27ZSPOOHdKw==", + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.3.tgz", + "integrity": "sha512-UlTNLIcu0uzb4D2f4WltY6cVjLi+/jEN4lgEUj3E04tpMDpUlkBo/eSn6zou9hum2VMNpCCUone0O0WeJim07g==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "1.8.1", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/rc": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", + "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", + "dependencies": { + "deep-extend": "^0.6.0", + "ini": "~1.3.0", + "minimist": "^1.2.0", + "strip-json-comments": "~2.0.1" + }, + "bin": { + "rc": "cli.js" + } + }, + "node_modules/readable-stream": { + "version": "2.3.7", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", + "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/readdirp": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", + "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" + } + }, + "node_modules/registry-auth-token": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/registry-auth-token/-/registry-auth-token-4.2.1.tgz", + "integrity": "sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw==", + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/registry-url": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/registry-url/-/registry-url-5.1.0.tgz", + "integrity": "sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw==", + "dependencies": { + "rc": "^1.2.8" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/responselike": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/responselike/-/responselike-1.0.2.tgz", + "integrity": "sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec=", + "dependencies": { + "lowercase-keys": "^1.0.0" + } + }, + "node_modules/rfdc": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.3.0.tgz", + "integrity": "sha512-V2hovdzFbOi77/WajaSMXk2OLm+xNIeQdMMuB7icj7bk6zi2F8GGAxigcnDFpJHbNyNcgyJDiP+8nOrY5cZGrA==" + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/sax": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", + "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==" + }, + "node_modules/semver": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", + "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/semver-diff": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/semver-diff/-/semver-diff-3.1.1.tgz", + "integrity": "sha512-GX0Ix/CJcHyB8c4ykpHGIAvLyOwOobtM/8d+TQkAd81/bEjgPHrfba41Vpesr7jX/t8Uh+R3EX9eAS5be+jQYg==", + "dependencies": { + "semver": "^6.3.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/semver-diff/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/send": { + "version": "0.17.2", + "resolved": "https://registry.npmjs.org/send/-/send-0.17.2.tgz", + "integrity": "sha512-UJYB6wFSJE3G00nEivR5rgWp8c2xXvJ3OPWPhmuteU0IKj8nKbG3DrjiOmLwpnHGYWAVwA69zmTm++YG0Hmwww==", + "dependencies": { + "debug": "2.6.9", + "depd": "~1.1.2", + "destroy": "~1.0.4", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "1.8.1", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "~2.3.0", + "range-parser": "~1.2.1", + "statuses": "~1.5.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/seq-queue": { + "version": "0.0.5", + "resolved": "https://registry.npmjs.org/seq-queue/-/seq-queue-0.0.5.tgz", + "integrity": "sha1-1WgS4cAXpuTnw+Ojeh2m143TyT4=" + }, + "node_modules/serialport": { + "version": "9.2.8", + "resolved": "https://registry.npmjs.org/serialport/-/serialport-9.2.8.tgz", + "integrity": "sha512-FsWpMQgSJxi93JgWl5xM1f9/Z8IjRJuaUEoHqLf8FPBLw7gMhInuHOBhI2onQufWIYPGTz3H3oGcu1nCaK1EfA==", + "dependencies": { + "@serialport/binding-mock": "9.2.4", + "@serialport/bindings": "9.2.8", + "@serialport/parser-byte-length": "9.2.4", + "@serialport/parser-cctalk": "9.2.4", + "@serialport/parser-delimiter": "9.2.4", + "@serialport/parser-inter-byte-timeout": "9.2.4", + "@serialport/parser-readline": "9.2.4", + "@serialport/parser-ready": "9.2.4", + "@serialport/parser-regex": "9.2.4", + "@serialport/stream": "9.2.4", + "debug": "^4.3.2" + }, + "engines": { + "node": ">=10.0.0" + }, + "funding": { + "url": "https://opencollective.com/serialport/donate" + } + }, + "node_modules/serialport/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/serialport/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/serve-static": { + "version": "1.14.2", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.2.tgz", + "integrity": "sha512-+TMNA9AFxUEGuC0z2mevogSnn9MXKb4fa7ngeRMJaaGv8vTwnIEkKi+QGvPt33HSnf8pRS+WGM0EbMtCJLKMBQ==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.17.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/set-blocking": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", + "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=" + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/simple-get": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", + "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "decompress-response": "^6.0.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.1.2.tgz", + "integrity": "sha512-VE0SOVEHCk7Qc8ulkWw3ntAzXuqf7S2lvwQaDLRnUeIEaKNQJzV6BwmLKhOqT61aGhfUMrXeaBk+oDGCzvhcug==" + }, + "node_modules/sqlstring": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.3.tgz", + "integrity": "sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/stoppable": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz", + "integrity": "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==", + "engines": { + "node": ">=4", + "npm": ">=6" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "dependencies": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-json-comments": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", + "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/tar-fs": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", + "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", + "dependencies": { + "chownr": "^1.1.1", + "mkdirp-classic": "^0.5.2", + "pump": "^3.0.0", + "tar-stream": "^2.1.4" + } + }, + "node_modules/tar-stream": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", + "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", + "dependencies": { + "bl": "^4.0.3", + "end-of-stream": "^1.4.1", + "fs-constants": "^1.0.0", + "inherits": "^2.0.3", + "readable-stream": "^3.1.1" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tar-stream/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/tarn": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/tarn/-/tarn-3.0.2.tgz", + "integrity": "sha512-51LAVKUSZSVfI05vjPESNc5vwqqZpbXCsU+/+wxlOrUjk2SnFTt97v9ZgQrD4YmxYW1Px6w2KjaDitCfkvgxMQ==", + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/tedious": { + "version": "11.8.0", + "resolved": "https://registry.npmjs.org/tedious/-/tedious-11.8.0.tgz", + "integrity": "sha512-GtFrO694x/7CRiUBt0AI4jrMtrkXV+ywifiOrDy4K0ufJLeKB4rgmPjy5Ws366fCaBaKlqQ9RnJ+sCJ1Jbd1lw==", + "dependencies": { + "@azure/identity": "^1.3.0", + "@azure/keyvault-keys": "^4.1.0", + "@azure/ms-rest-nodeauth": "^3.0.6", + "@js-joda/core": "^3.2.0", + "adal-node": "^0.2.1", + "bl": "^5.0.0", + "depd": "^2.0.0", + "iconv-lite": "^0.6.3", + "jsbi": "^3.1.5", + "native-duplexpair": "^1.0.0", + "node-abort-controller": "^2.0.0", + "punycode": "^2.1.0", + "sprintf-js": "^1.1.2" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/tedious/node_modules/bl": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/bl/-/bl-5.0.0.tgz", + "integrity": "sha512-8vxFNZ0pflFfi0WXA3WQXlj6CaMEwsmh63I1CNp0q+wWv8sD0ARx1KovSQd0l2GkwrMIOyedq0EF1FxI+RCZLQ==", + "dependencies": { + "buffer": "^6.0.3", + "inherits": "^2.0.4", + "readable-stream": "^3.4.0" + } + }, + "node_modules/tedious/node_modules/buffer": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz", + "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "base64-js": "^1.3.1", + "ieee754": "^1.2.1" + } + }, + "node_modules/tedious/node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/tedious/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tedious/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/to-readable-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-1.0.0.tgz", + "integrity": "sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/touch": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/touch/-/touch-3.1.0.tgz", + "integrity": "sha512-WBx8Uy5TLtOSRtIq+M03/sKDrXCLHxwDcquSP2c43Le03/9serjQBIztjRz6FkJez9D/hleyAXTBGLwwZUw9lA==", + "dependencies": { + "nopt": "~1.0.10" + }, + "bin": { + "nodetouch": "bin/nodetouch.js" + } + }, + "node_modules/tough-cookie": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-4.0.0.tgz", + "integrity": "sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg==", + "dependencies": { + "psl": "^1.1.33", + "punycode": "^2.1.1", + "universalify": "^0.1.2" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" + }, + "node_modules/tslib": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz", + "integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==" + }, + "node_modules/tunnel": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", + "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", + "engines": { + "node": ">=0.6.11 <=0.7.0 || >=0.7.3" + } + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/type-fest": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", + "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typedarray-to-buffer": { + "version": "3.1.5", + "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", + "integrity": "sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q==", + "dependencies": { + "is-typedarray": "^1.0.0" + } + }, + "node_modules/undefsafe": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz", + "integrity": "sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==" + }, + "node_modules/underscore": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.2.tgz", + "integrity": "sha512-ekY1NhRzq0B08g4bGuX4wd2jZx5GnKz6mKSqFL4nqBlfyMGiG10gDFhDTMEfYmDL6Jy0FUIZp7wiRB+0BP7J2g==" + }, + "node_modules/unique-string": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/unique-string/-/unique-string-2.0.0.tgz", + "integrity": "sha512-uNaeirEPvpZWSgzwsPGtU2zVSTrn/8L5q/IexZmH0eH6SA73CmAA5U4GwORTxQAZs95TAXLNqeLoPPNO5gZfWg==", + "dependencies": { + "crypto-random-string": "^2.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/update-notifier": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/update-notifier/-/update-notifier-5.1.0.tgz", + "integrity": "sha512-ItnICHbeMh9GqUy31hFPrD1kcuZ3rpxDZbf4KUDavXwS0bW5m7SLbDQpGX3UYr072cbrF5hFUs3r5tUsPwjfHw==", + "dependencies": { + "boxen": "^5.0.0", + "chalk": "^4.1.0", + "configstore": "^5.0.1", + "has-yarn": "^2.1.0", + "import-lazy": "^2.1.0", + "is-ci": "^2.0.0", + "is-installed-globally": "^0.4.0", + "is-npm": "^5.0.0", + "is-yarn-global": "^0.3.0", + "latest-version": "^5.1.0", + "pupa": "^2.1.1", + "semver": "^7.3.4", + "semver-diff": "^3.1.1", + "xdg-basedir": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/yeoman/update-notifier?sponsor=1" + } + }, + "node_modules/update-notifier/node_modules/lru-cache": { + "version": "7.8.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.8.0.tgz", + "integrity": "sha512-AmXqneQZL3KZMIgBpaPTeI6pfwh+xQ2vutMsyqOu1TBdEXFZgpG/80wuJ531w2ZN7TI0/oc8CPxzh/DKQudZqg==", + "deprecated": "Please update to latest patch version to fix memory leak https://github.com/isaacs/node-lru-cache/issues/227", + "engines": { + "node": ">=12" + } + }, + "node_modules/update-notifier/node_modules/semver": { + "version": "7.3.6", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.6.tgz", + "integrity": "sha512-HZWqcgwLsjaX1HBD31msI/rXktuIhS+lWvdE4kN9z+8IVT4Itc7vqU2WvYsyD6/sjYCt4dEKH/m1M3dwI9CC5w==", + "dependencies": { + "lru-cache": "^7.4.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": "^10.0.0 || ^12.0.0 || ^14.0.0 || >=16.0.0" + } + }, + "node_modules/url-parse-lax": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/url-parse-lax/-/url-parse-lax-3.0.0.tgz", + "integrity": "sha1-FrXK/Afb42dsGxmZF3gj1lA6yww=", + "dependencies": { + "prepend-http": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/util": { + "version": "0.10.4", + "resolved": "https://registry.npmjs.org/util/-/util-0.10.4.tgz", + "integrity": "sha512-0Pm9hTQ3se5ll1XihRic3FDIku70C+iHUdT/W926rSgHV5QgXsYbKZN8MSC3tJtSkhuROzvsQjAaFENRXr+19A==", + "dependencies": { + "inherits": "2.0.3" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/util/node_modules/inherits": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", + "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/wide-align": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", + "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", + "dependencies": { + "string-width": "^1.0.2 || 2 || 3 || 4" + } + }, + "node_modules/widest-line": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/widest-line/-/widest-line-3.1.0.tgz", + "integrity": "sha512-NsmoXalsWVDMGupxZ5R08ka9flZjjiLvHVAWYOKtiKM8ujtZWr9cRffak+uSE48+Ob8ObalXpwyeUiyDD6QFgg==", + "dependencies": { + "string-width": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/widest-line/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/widest-line/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/widest-line/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/widest-line/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", + "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", + "dependencies": { + "ansi-styles": "^4.0.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/wrap-ansi?sponsor=1" + } + }, + "node_modules/wrap-ansi/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", + "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrap-ansi/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" + }, + "node_modules/write-file-atomic": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-3.0.3.tgz", + "integrity": "sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q==", + "dependencies": { + "imurmurhash": "^0.1.4", + "is-typedarray": "^1.0.0", + "signal-exit": "^3.0.2", + "typedarray-to-buffer": "^3.1.5" + } + }, + "node_modules/xdg-basedir": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/xdg-basedir/-/xdg-basedir-4.0.0.tgz", + "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", + "engines": { + "node": ">=8" + } + }, + "node_modules/xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", + "engines": { + "node": ">=4.0" + } + }, + "node_modules/xpath.js": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/xpath.js/-/xpath.js-1.1.0.tgz", + "integrity": "sha512-jg+qkfS4K8E7965sqaUl8mRngXiKb3WZGfONgE18pr03FUQiuSV6G+Ej4tS55B+rIQSFEIw3phdVAQ4pPqNWfQ==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + }, "dependencies": { "@azure/abort-controller": { "version": "1.0.4", @@ -2487,16 +6422,6 @@ "resolved": "https://registry.npmjs.org/stoppable/-/stoppable-1.1.0.tgz", "integrity": "sha512-KXDYZ9dszj6bzvnEMRYvxgeTHU74QBFL54XKtP3nyMuJ81CFYtABZ3bAzL2EdFUaEwJOBOgENyFj3R7oTzDyyw==" }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.0.0" - } - }, "string_decoder": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", @@ -2512,6 +6437,16 @@ } } }, + "string-width": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", + "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", + "requires": { + "code-point-at": "^1.0.0", + "is-fullwidth-code-point": "^1.0.0", + "strip-ansi": "^3.0.0" + } + }, "strip-ansi": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", diff --git a/Site/public/assets/icons/feito-removebg-preview.png b/Site/public/assets/icons/logoSemTexto.png similarity index 100% rename from Site/public/assets/icons/feito-removebg-preview.png rename to Site/public/assets/icons/logoSemTexto.png diff --git a/Site/public/css/tela-cadastro.css b/Site/public/css/tela-cadastro.css index ae64f23..3811e7d 100644 --- a/Site/public/css/tela-cadastro.css +++ b/Site/public/css/tela-cadastro.css @@ -8,7 +8,7 @@ body { margin: 0; - overflow: hidden; + overflow-x: hidden; background-image: linear-gradient(0deg, #041338, #041338); background-size: cover; width: 100%; @@ -167,7 +167,7 @@ body { .div_botao { width: 90%; height: 25%; - margin-top: 16px; + } #form_cadastro{ @@ -176,13 +176,13 @@ body { .formulario { - height: 75%; - width: 80%; + height: 95%; background-color: rgba(255, 255, 255, 0.13); border-radius: 10px; backdrop-filter: blur(10px); border: 2px solid rgba(255, 255, 255, 0.1); padding: 50px 35px; + } .formulario * { @@ -217,10 +217,9 @@ input { } .div_botao { - width: 64%; + width: 50%; height: 25%; margin-top: 16px; - margin-left: 3%; } .efeito { @@ -281,4 +280,68 @@ input { .loading-div img { height: 50px; width: 50px; +} + +.roles{ + flex-wrap: wrap; + display: flex; + width: 100%; + height: 80%; + justify-content: center; +} + +form .div_botao{ + display: flex; + justify-content: center; + align-items: center; + } + +@media screen and (max-width: 900px) { + + body{ + overflow-x: hidden; + overflow-y: scroll; + } + + .roles{ + flex-wrap: wrap; + display: block; + width: 100%; + height: 80%; + } + + .ladoDireito{ + width: 140%; + } + + .ladoEsquerdo{ + width: 140%; + } + + .ocean{ + height: 158vh; + } + + .div_botao{ + width: 100%; + } + + +} + +@media screen and (max-width: 1300px){ + + .formulario{ + height: 95%; + + } + +} + +@media screen and (max-height: 700px){ + + .formulario{ + height: 95%; + } + } \ No newline at end of file diff --git a/Site/public/dash-estatica/app.js b/Site/public/dash-estatica/app.js new file mode 100644 index 0000000..36f069b --- /dev/null +++ b/Site/public/dash-estatica/app.js @@ -0,0 +1,60 @@ +const shrink_btn = document.querySelector(".shrink-btn"); +const search = document.querySelector(".search"); +const sidebar_links = document.querySelectorAll(".sidebar-links a"); +const active_tab = document.querySelector(".active-tab"); +const shortcuts = document.querySelector(".sidebar-links h4"); +const tooltip_elements = document.querySelectorAll(".tooltip-element"); + +let activeIndex; + +shrink_btn.addEventListener("click", () => { + document.body.classList.toggle("shrink"); + setTimeout(moveActiveTab, 400); + + shrink_btn.classList.add("hovered"); + + setTimeout(() => { + shrink_btn.classList.remove("hovered"); + }, 500); +}); + +search.addEventListener("click", () => { + document.body.classList.remove("shrink"); + search.lastElementChild.focus(); +}); + +function moveActiveTab() { + let topPosition = activeIndex * 58 + 2.5; + + if (activeIndex > 3) { + topPosition += shortcuts.clientHeight; + } + + active_tab.style.top = `${topPosition}px`; +} + +function changeLink() { + sidebar_links.forEach((sideLink) => sideLink.classList.remove("active")); + this.classList.add("active"); + + activeIndex = this.dataset.active; + + moveActiveTab(); +} + +sidebar_links.forEach((link) => link.addEventListener("click", changeLink)); + +function showTooltip() { + let tooltip = this.parentNode.lastElementChild; + let spans = tooltip.children; + let tooltipIndex = this.dataset.tooltip; + + Array.from(spans).forEach((sp) => sp.classList.remove("show")); + spans[tooltipIndex].classList.add("show"); + + tooltip.style.top = `${(100 / (spans.length * 2)) * (tooltipIndex * 2 + 1)}%`; +} + +tooltip_elements.forEach((elem) => { + elem.addEventListener("mouseover", showTooltip); +}); diff --git a/Site/public/dash-estatica/cad-maquina.css b/Site/public/dash-estatica/cad-maquina.css new file mode 100644 index 0000000..fc6995a --- /dev/null +++ b/Site/public/dash-estatica/cad-maquina.css @@ -0,0 +1,944 @@ +.main { + display: flex; + margin: 0 auto; + display: block; + height: 275vh; + margin-top: 60px; + background:#17203E ; + width: 78%; + padding: 2rem + } + + + .baixo{ + /* background-color: rebeccapurple; */ + } + + + @import url("https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700&display=swap"); + +*, +*::before, +*::after { + padding: 0; + margin: 0; + box-sizing: border-box; +} + +:root { + --main-color: #3d5af1; + --main-color-dark: #3651d4; + --main-color-light: #5872f5; + --text-color: #cfcde7; +} + +body { + font-family: "Poppins", sans-serif; + overflow-x: hidden; + background-color: #e4e2f5; + min-height: 100vh; + display: flex; + position: relative; +} + +a { + text-decoration: none; +} + +ul { + list-style: none; +} + +nav { + position: sticky; + top: 0; + left: 0; + height: 100vh; + background-color:#253370; + width: 16rem; + padding: 1.8rem 0.85rem; + color: #fff; + display: flex; + flex-direction: column; + transition: width 0.5s ease-in-out; +} + +nav::before { + content: ""; + position: absolute; + width: 2rem; + height: 100%; + top: 0; + left: 100%; +} + +main { + flex: 1; + padding: 2rem; + color: #1f2027; + display: flex; + flex-direction: column; + background-color: #17203E; +} + +main h1 { + margin-bottom: 1rem; +} + +main .copyright { + margin-top: auto; + font-size: 0.9rem; +} + +main .copyright span { + color: var(--main-color); + font-weight: 500; + cursor: pointer; +} + +.sidebar-top { + position: relative; + display: flex; + align-items: center; +} + +.sidebar-top .logo { + width: 2.1rem; + margin: 0 0.8rem; +} + +.sidebar-top h3 { + padding-left: 0.5rem; + font-weight: 600; + font-size: 1.15rem; +} + +.shrink-btn { + position: absolute; + top: 50%; + height: 27px; + padding: 0 0.3rem; + background-color: var(--main-color); + border-radius: 6px; + cursor: pointer; + box-shadow: 0 3px 10px -3px rgba(70, 46, 118, 0.3); + right: -2.65rem; + transform: translateY(-50%) translateX(-8px); + opacity: 0; + pointer-events: none; + transition: 0.3s; +} + +.shrink-btn i { + line-height: 27px; + transition: 0.3s; +} + +.shrink-btn:hover { + background-color: var(--main-color-dark); +} + +nav:hover .shrink-btn, +.shrink-btn.hovered { + transform: translateY(-50%) translateX(0px); + opacity: 1; + pointer-events: all; +} + +.search { + min-height: 2.7rem; + background-color: #253370; + margin: 2rem 0.5rem 1.7rem; + display: grid; + grid-template-columns: 2.7rem 1fr; + align-items: center; + text-align: center; + border-radius: 50px; + cursor: pointer; +} + +.search input { + height: 100%; + border: none; + background: none; + outline: none; + color: #fff; + caret-color: #fff; + font-family: inherit; +} + +.search input::placeholder { + color: var(--text-color); +} + +.sidebar-links ul { + position: relative; +} + +.sidebar-links li { + position: relative; + padding: 2.5px 0; +} + +.sidebar-links a { + color: var(--text-color); + font-weight: 400; + font-size: 0.9rem; + display: flex; + align-items: center; + height: 53px; +} + +.icon { + font-size: 1.3rem; + text-align: center; + min-width: 3.7rem; + display: grid; + grid-template-columns: 1fr; + grid-template-rows: 1fr; +} + +.icon i { + grid-column: 1 / 2; + grid-row: 1 / 2; + transition: 0.3s; +} + +.icon i:last-child { + opacity: 0; + color: #fff; +} + +.sidebar-links a.active, +.sidebar-links a:hover { + color: #fff; +} + +.sidebar-links a .link { + transition: opacity 0.3s 0.2s, color 0.3s; +} + +.sidebar-links a.active i:first-child { + opacity: 0; +} + +.sidebar-links a.active i:last-child { + opacity: 1; +} + +.active-tab { + width: 100%; + height: 53px; + background-color: var(--main-color-dark); + border-radius: 10px; + position: absolute; + top: 60px; + left: 0; + transition: top 0.3s; +} + +.sidebar-links h4 { + position: relative; + font-size: 0.8rem; + text-transform: uppercase; + font-weight: 600; + padding: 0 0.8rem; + color: var(--text-color); + letter-spacing: 0.5px; + height: 45px; + line-height: 45px; + transition: opacity 0.3s 0.2s, height 0.5s 0s; +} + +.sidebar-footer { + position: relative; + margin-top: auto; +} + +.account { + display: flex; + align-items: center; + justify-content: center; + font-size: 1.3rem; + color: var(--text-color); + height: 53px; + width: 3.7rem; + opacity: 0; + pointer-events: none; + transition: opacity 0.3s 0s, color 0.3s 0s; +} + +.account:hover { + color: #fff; +} + +.admin-user { + display: flex; + align-items: center; +} + +.admin-profile { + white-space: nowrap; + max-width: 100%; + transition: opacity 0.3s 0.2s, max-width 0.7s 0s ease-in-out; + display: flex; + align-items: center; + flex: 1; + overflow: hidden; +} + +.admin-user img { + width: 2.9rem; + border-radius: 50%; + margin: 0 0.4rem; +} + +.admin-info { + padding-left: 0.3rem; +} + +.admin-info h3 { + font-weight: 500; + font-size: 1rem; + line-height: 1; +} + +.admin-info h5 { + font-weight: 400; + font-size: 0.75rem; + color: var(--text-color); + margin-top: 0.3rem; + line-height: 1; +} + +.log-out { + display: flex; + height: 40px; + min-width: 2.4rem; + background-color: var(--main-color-dark); + color: var(--text-color); + align-items: center; + justify-content: center; + font-size: 1.15rem; + border-radius: 10px; + margin: 0 0.65rem; + transition: color 0.3s; +} + +.log-out:hover { + color: #fff; +} + +.tooltip { + background-color: var(--main-color); + position: absolute; + right: -1.2rem; + top: 0; + transform: translateX(100%) translateY(-50%); + padding: 0 0.8rem; + font-size: 0.85rem; + display: none; + grid-template-rows: 1fr; + grid-template-columns: 1fr; + height: 30px; + align-items: center; + border-radius: 7px; + box-shadow: 0 3px 10px -3px rgba(70, 46, 118, 0.3); + opacity: 0; + pointer-events: none; + transition: all 0.3s; + text-align: center; + white-space: nowrap; +} + +.tooltip span { + grid-column: 1 / 2; + grid-row: 1 / 2; + opacity: 0; + transition: 0.3s; +} + +.tooltip span.show { + opacity: 1; +} + +.tooltip-element:hover ~ .tooltip { + opacity: 1; + pointer-events: all; +} + +/* When the menu shrinks */ + +.hide { + transition: opacity 0.3s 0.2s; +} + +body.shrink nav { + width: 5.4rem; +} + +body.shrink .hide { + opacity: 0; + pointer-events: none; + transition-delay: 0s; +} + +body.shrink .shrink-btn i { + transform: rotate(-180deg); +} + +body.shrink .sidebar-links h4 { + height: 10px; +} + +body.shrink .account { + opacity: 1; + pointer-events: all; + transition: opacity 0.3s 0.3s, color 0.3s 0s; +} + +body.shrink .admin-profile { + max-width: 0; + transition: opacity 0.3s 0s, max-width 0.7s 0s ease-in-out; +} + +body.shrink .tooltip { + display: grid; +} + + + form{ + height: 55%; + width: 60%; + background-color: #ebf5fc; + position: relative; + transform: translate(-50%,-0%); + /* top: 54%; */ + left: 50%; + border-radius: 10px; + backdrop-filter: blur(10px); + border: 2px solid rgba(255,255,255,0.1); + /* box-shadow: 0 0 40px rgba(8,7,16,0.6); */ + padding: 50px 35px; + justify-content: center; + align-items: center; + + + } + form *{ + font-family: 'Poppins',sans-serif; + color: #000; + letter-spacing: 0.5px; + outline: none; + border: none; + } + .roles{ + flex-wrap: wrap; + display: flex; + width: 100%; + height: 80%; + } + + .campos{ + flex-wrap: wrap; + /* display: flex; */ + height: 5%; + width: 100%; + } + + form h3{ + font-size: 32px; + font-weight: 500; + line-height: 42px; + text-align: center; + } + + label{ + + flex-wrap: wrap; + display: block; + margin-top: 30px; + font-size: 16px; + font-weight: 500; + + } + input{ + display: block; + height: 50px; + width: 90%; + background-color: rgba(0,0,0,.25); + border-radius: 3px; + padding: 0 10px; + margin-top: 8px; + font-size: 14px; + font-weight: 300; + + } + ::placeholder{ + color: #ffffff; + } + + /* .btn_navegar{ + margin-top: 50px; + width: 50%; + height: 10%; + background-color: #ffffff; + color: #080710; + padding: 15px 0; + font-size: 18px; + font-weight: 600; + border-radius: 5px; + cursor: pointer; + justify-content: center; + align-items: center; + } + + .btn_navegar:hover{ + + background-color: #34aedf; + + } */ + + + .div_botao { + width: 100%; + height: 25%; + margin-top: 16px; + + } + + .efeito { + border: none; + color: #ffffff; + padding: 10px; + margin: 10px; + font-size: 24px; + line-height: 24px; + border-radius: 10px; + position: relative; + box-sizing: border-box; + cursor: pointer; + transition: all 400ms ease; + background-color: #3651d4;; + width: 50%; + } + + .efeito:before { + content: ''; + position: absolute; + top: 0px; + left: 0px; + width: 0px; + height: 44px; + background: rgba(255, 255, 255, 0.3); + border-radius: 10px; + transition: all 2s ease; + } + + .efeito:hover:before { + width: 100%; + + } + + .social{ + margin-top: 30px; + display: flex; + } + .social div{ + background: red; + width: 50%; + border-radius: 3px; + padding: 5px 10px 10px 5px; + background-color: rgba(255,255,255,0.27); + color: #eaf0fb; + text-align: center; + } + .social div:hover{ + background-color: rgba(255,255,255,0.47); + } + .social .fb{ + margin-left: 25px; + } + .social i{ + margin-right: 4px; + } + + + .ladoEsquerdo { + width: 49%; + height: 122%; + } + + .ladodireito { + width: 49%; + margin-left: 2%; + } + + .cardErro + { + font: 2vh; + color: #ffffff; + } + + .mural_funcionarios + { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + + margin-top: 10%; + margin-left: 10%; + + width: 85%; + height: 70vh; + background-color: #ffffff; + } + .botoes_crud + { + + display: flex; + justify-content: space-around; + + } + .inputDeleteUpdate + { + text-align: center; + color: white; + + width: 30%; + height: 10%; + background-color: #17203E; + } + .ipt_update + { + height: 50px; + width: 25%; + background-color: rgba(0,0,0,.25); + border-radius: 3px; + padding: 0 10px; + margin-top: 8px; + font-size: 14px; + font-weight: 300; + color: #000; + + } + +/* mural maquina */ + +.mural-maquina{ + display: flex; + justify-content: center; + align-items: center; + min-height: 100vh; + background: #ebf5fc; + flex-direction: column; + margin-top: 20%; + + +} + +.conteiner{ + display: flex; + justify-content: center; + align-items: center; + max-width: 1200px; + flex-wrap: wrap; + +} + +.conteiner .card{ + position: relative; + width: 77vw; + height: 40vh; + border-radius: 17px; +} + +.conteiner .card .box{ + position: absolute; + top: 20px; + left: 20px; + right: 20px; + bottom: 20px; + background: #ebf5fc; + box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3); + border-radius: 17px; + display: flex; + justify-content: center; + align-items: center; + transition: 0.5s; + border: 2px solid #17203E; +} + +/* .conteiner .card:hover .box{ + + transform: translateY(-50px); + box-shadow: 0 10 40px rgba(0, 0, 0, 0.2); + background: linear-gradient(45deg, #1F1D36,#4f29cd); +} */ + + + +.conteiner .card .box .conteudo{ + padding: 20px; + text-align: initial; +} + +.conteiner .card .box .conteudo h2{ + position: absolute; + top: -70%; + right: 30px; + font-size: 8em; + color: rgba(0, 0, 0, 0.05); + transition: 0.5s; + pointer-events: none; +} + + +.conteiner .card:hover .box .conteudo h2{ + + color: rgba(0, 0, 0, 0.05); +} + +.conteiner .card .box .conteudo h3{ + font-size: 1.8em; + color: #000; + z-index: 1; + transition: 0.5s; + width: 70vw; +} + + + +.conteiner .card .box .conteudo p{ + + font-size: 1em; + font-weight: 300; + color: #000; + z-index: 1; + transform: 0.5s; +} + + +.conteiner .list{ + display: inline-block; + padding: 8px 20px; + background-color: #17203E; + border-radius: 20px; + color: #fff; + margin: 10px; + text-decoration: none; + font-weight: 400; + box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); + border: none; +} + +.conteiner .card .box .conteudo .att{ + display: inline-block; + padding: 8px 20px; + background-color: #06FF00; + border-radius: 20px; + color: #fff; + margin: 10px; + text-decoration: none; + font-weight: 400; + box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); + border: none; +} +.conteiner .card .box .conteudo .rmv{ + display: inline-block; + padding: 8px 20px; + background-color: #F32424; + border-radius: 20px; + color: #fff; + margin: 10px; + text-decoration: none; + font-weight: 400; + box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); + border: none; +} + + +.alinhar{ + justify-content: end; + display: flex; + +} + +form .div_botao{ + display: flex; + justify-content: center; + align-items: center; +} + +@media screen and (max-width: 700px) { + + .roles{ + flex-wrap: wrap; + display: block; + width: 100%; + height: 80%; + } + .ladoEsquerdo { + width: 100%; + height: 122%; + } + + .ladodireito { + width: 100%; + margin-left: 2%; + } + + .efeito { + width: 70%; + } +} + +.loading-div { + width: 50px; + /* border: 3px solid pink; */ + margin: auto; + display: none; +} + +.loading-div img { + height: 50px; + width: 50px; +} + + +.mural_funcionarios +{ + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + + border-radius: 10%; + + margin-top: 10%; + margin-left: 10%; + + width: 85%; + background-color: #ebf5fc; + + border-radius: 10px; + border: 2px solid rgba(255,255,255,0.1); +} +.feed-container{ + background-color: #253370; + border-radius: 1rem; +} + +.publicacao{ + height: 13vh; + width: 32vw; + display: grid; + justify-content: space-around; + align-items: center; + inset: 20px solid; + inset: 0px 0 0 45%; + background: #ebf5fc; + margin: 0.75rem; + padding: 1rem; + +} +.publicacao p { + color: #000; +} + +#atualizar{ + display: block; +width: 10vw; +height: 30px; +background: #3651d4; +border: none; +border-radius: 5px; +margin: 0.75rem; +color: #fff; +} + +#btn_atualizar{ + display: block; + width: 10vw; + height: 30px; + background: #019267; + border: none; + border-radius: 5px; + margin: 0.75rem; + color: #fff; +} + +#btn_deletar{ + display: block; + width: 10vw; + height: 30px; + background: #B20600; + border: none; + border-radius: 5px; + margin: 0.75rem; + color: #fff; +} + +#updateDelete{ + height: 50px; +width: 25%; +background-color: rgba(0,0,0,.25); +border-radius: 3px; +padding: 0 10px; +margin-top: 8px; +font-size: 14px; +font-weight: 300; +color: #000; +} + +.btn_mural_funcionarios +{ + border: none; + color: #ffffff; + padding: 20px; + margin: 10px; + font-size: 15px; + line-height: 24px; + border-radius: 10px; + box-sizing: border-box; + cursor: pointer; + transition: all 400ms ease; + background-color: #3651d4; + width: 30%; +} +.botoes_crud +{ + + display: flex; + justify-content: space-around; + +} + + +.publicacao span +{ + display: flex; + flex-direction: row; + justify-content: space-around; + border: #ffffff 2px; + width: 100%; + + color: #ffffff; +} +.atualizarMural +{ + border: none; + color: #ffffff; + padding: 10px; + margin: 10px; + font-size: 15px; + line-height: 24px; + border-radius: 10px; + box-sizing: border-box; + cursor: pointer; + background-color: #34aedf; + width: 20%; +} + + diff --git a/Site/public/dash-estatica/cadastroMaquina.html b/Site/public/dash-estatica/cadastroMaquina.html new file mode 100644 index 0000000..2931564 --- /dev/null +++ b/Site/public/dash-estatica/cadastroMaquina.html @@ -0,0 +1,431 @@ + + + + + + + + Keep Swimming | Cadastro Máquina + + + + + + + + + + + + + + + + + + +
+ + +
+ + +
+
+

Cadastre sua Máquina

+ +
+ +
+ + + + + + + + + + + +
+ + +
+ + + + + + + + + + +
+ +
+ +
+ + +
+ +
+
+
+ + +
+
+ + +
+ + + +
+ + + +
+ + +
+ + + + + + + +
+ +
+ + + +
+ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/Site/public/dash-estatica/dash-cadastro.css b/Site/public/dash-estatica/dash-cadastro.css index 070a296..7b0c278 100644 --- a/Site/public/dash-estatica/dash-cadastro.css +++ b/Site/public/dash-estatica/dash-cadastro.css @@ -2,7 +2,7 @@ display: flex; margin: 0 auto; display: block; - height: 200vh; + height: 275vh; margin-top: 60px; background:#17203E ; width: 78%; @@ -15,10 +15,402 @@ } +@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700&display=swap"); + +*, +*::before, +*::after { +padding: 0; +margin: 0; +box-sizing: border-box; +} + +:root { +--main-color: #3d5af1; +--main-color-dark: #3651d4; +--main-color-light: #5872f5; +--text-color: #cfcde7; +} + +body { +font-family: "Poppins", sans-serif; +overflow-x: hidden; +background-color: #17203E; +min-height: 100vh; +display: flex; +position: relative; +} + +a { +text-decoration: none; +} + +ul { +list-style: none; +} + +nav { +position: sticky; +top: 0; +left: 0; +height: 100vh; +background-color:#253370; +width: 16rem; +padding: 1.8rem 0.85rem; +color: #fff; +display: flex; +flex-direction: column; +transition: width 0.5s ease-in-out; +} + +nav::before { +content: ""; +position: absolute; +width: 2rem; +height: 100%; +top: 0; +left: 100%; +} + +main { +flex: 1; +padding: 2rem; +color: #1f2027; +display: flex; +flex-direction: column; +background-color: #17203E; +} + +main h1 { +margin-bottom: 1rem; +} + +main .copyright { +margin-top: auto; +font-size: 0.9rem; +} + +main .copyright span { +color: var(--main-color); +font-weight: 500; +cursor: pointer; +} + +.sidebar-top { +position: relative; +display: flex; +align-items: center; +} + +.sidebar-top .logo { +width: 2.1rem; +margin: 0 0.8rem; +} + +.sidebar-top h3 { +padding-left: 0.5rem; +font-weight: 600; +font-size: 1.15rem; +} + +.shrink-btn { +position: absolute; +top: 50%; +height: 27px; +padding: 0 0.3rem; +background-color: var(--main-color); +border-radius: 6px; +cursor: pointer; +box-shadow: 0 3px 10px -3px rgba(70, 46, 118, 0.3); +right: -2.65rem; +transform: translateY(-50%) translateX(-8px); +opacity: 0; +pointer-events: none; +transition: 0.3s; +} + +.shrink-btn i { +line-height: 27px; +transition: 0.3s; +} + +.shrink-btn:hover { +background-color: var(--main-color-dark); +} + +nav:hover .shrink-btn, +.shrink-btn.hovered { +transform: translateY(-50%) translateX(0px); +opacity: 1; +pointer-events: all; +} + +.search { +min-height: 2.7rem; +background-color: #253370; +margin: 2rem 0.5rem 1.7rem; +display: grid; +grid-template-columns: 2.7rem 1fr; +align-items: center; +text-align: center; +border-radius: 50px; +cursor: pointer; +} + +.search input { +height: 100%; +border: none; +background: none; +outline: none; +color: #fff; +caret-color: #fff; +font-family: inherit; +} + +.search input::placeholder { +color: var(--text-color); +} + +.sidebar-links ul { +position: relative; +} + +.sidebar-links li { +position: relative; +padding: 2.5px 0; +} + +.sidebar-links a { +color: var(--text-color); +font-weight: 400; +font-size: 0.9rem; +display: flex; +align-items: center; +height: 53px; +} + +.icon { +font-size: 1.3rem; +text-align: center; +min-width: 3.7rem; +display: grid; +grid-template-columns: 1fr; +grid-template-rows: 1fr; +} + +.icon i { +grid-column: 1 / 2; +grid-row: 1 / 2; +transition: 0.3s; +} + +.icon i:last-child { +opacity: 0; +color: #fff; +} + +.sidebar-links a.active, +.sidebar-links a:hover { +color: #fff; +} + +.sidebar-links a .link { +transition: opacity 0.3s 0.2s, color 0.3s; +} + +.sidebar-links a.active i:first-child { +opacity: 0; +} + +.sidebar-links a.active i:last-child { +opacity: 1; +} + +.active-tab { +width: 100%; +height: 53px; +background-color: var(--main-color-dark); +border-radius: 10px; +position: absolute; +top: 118px; +left: 0; +transition: top 0.3s; +} + +.sidebar-links h4 { +position: relative; +font-size: 0.8rem; +text-transform: uppercase; +font-weight: 600; +padding: 0 0.8rem; +color: var(--text-color); +letter-spacing: 0.5px; +height: 45px; +line-height: 45px; +transition: opacity 0.3s 0.2s, height 0.5s 0s; +} + +.sidebar-footer { +position: relative; +margin-top: auto; +} + +.account { +display: flex; +align-items: center; +justify-content: center; +font-size: 1.3rem; +color: var(--text-color); +height: 53px; +width: 3.7rem; +opacity: 0; +pointer-events: none; +transition: opacity 0.3s 0s, color 0.3s 0s; +} + +.account:hover { +color: #fff; +} + +.admin-user { +display: flex; +align-items: center; +} + +.admin-profile { +white-space: nowrap; +max-width: 100%; +transition: opacity 0.3s 0.2s, max-width 0.7s 0s ease-in-out; +display: flex; +align-items: center; +flex: 1; +overflow: hidden; +} + +.admin-user img { +width: 2.9rem; +border-radius: 50%; +margin: 0 0.4rem; +} + +.admin-info { +padding-left: 0.3rem; +} + +.admin-info h3 { +font-weight: 500; +font-size: 1rem; +line-height: 1; +} + +.admin-info h5 { +font-weight: 400; +font-size: 0.75rem; +color: var(--text-color); +margin-top: 0.3rem; +line-height: 1; +} + +.log-out { +display: flex; +height: 40px; +min-width: 2.4rem; +background-color: var(--main-color-dark); +color: var(--text-color); +align-items: center; +justify-content: center; +font-size: 1.15rem; +border-radius: 10px; +margin: 0 0.65rem; +transition: color 0.3s; +} + +.log-out:hover { +color: #fff; +} + +.tooltip { +background-color: var(--main-color); +position: absolute; +right: -1.2rem; +top: 0; +transform: translateX(100%) translateY(-50%); +padding: 0 0.8rem; +font-size: 0.85rem; +display: none; +grid-template-rows: 1fr; +grid-template-columns: 1fr; +height: 30px; +align-items: center; +border-radius: 7px; +box-shadow: 0 3px 10px -3px rgba(70, 46, 118, 0.3); +opacity: 0; +pointer-events: none; +transition: all 0.3s; +text-align: center; +white-space: nowrap; +} + +.tooltip span { +grid-column: 1 / 2; +grid-row: 1 / 2; +opacity: 0; +transition: 0.3s; +} + +.tooltip span.show { +opacity: 1; +} + +.tooltip-element:hover ~ .tooltip { +opacity: 1; +pointer-events: all; +} + +/* When the menu shrinks */ + +.hide { +transition: opacity 0.3s 0.2s; +} + +body.shrink nav { +width: 5.4rem; +} + +body.shrink .hide { +opacity: 0; +pointer-events: none; +transition-delay: 0s; +} + +body.shrink .shrink-btn i { +transform: rotate(-180deg); +} + +body.shrink .sidebar-links h4 { +height: 10px; +} + +body.shrink .account { +opacity: 1; +pointer-events: all; +transition: opacity 0.3s 0.3s, color 0.3s 0s; +} + +body.shrink .admin-profile { +max-width: 0; +transition: opacity 0.3s 0s, max-width 0.7s 0s ease-in-out; +} + +body.shrink .tooltip { +display: grid; +} + + form{ height: 55%; width: 60%; - background-color: rgba(255,255,255,0.13); + background-color: #ebf5fc; position: relative; transform: translate(-50%,-0%); /* top: 54%; */ @@ -35,7 +427,7 @@ form{ } form *{ font-family: 'Poppins',sans-serif; - color: #34aedf; + color: #000; letter-spacing: 0.5px; outline: none; border: none; @@ -62,22 +454,25 @@ form h3{ } label{ + flex-wrap: wrap; display: block; margin-top: 30px; font-size: 16px; font-weight: 500; + } input{ display: block; height: 50px; width: 90%; - background-color: rgba(255,255,255,0.07); + background-color: rgba(0,0,0,.25); border-radius: 3px; padding: 0 10px; margin-top: 8px; font-size: 14px; font-weight: 300; + } ::placeholder{ color: #ffffff; @@ -106,16 +501,16 @@ input{ .div_botao { - width: 90%; + width: 100%; height: 25%; margin-top: 16px; - margin-left: 50%; + } .efeito { border: none; color: #ffffff; - padding: 20px; + padding: 10px; margin: 10px; font-size: 24px; line-height: 24px; @@ -124,8 +519,8 @@ input{ box-sizing: border-box; cursor: pointer; transition: all 400ms ease; - background-color: #34aedf; - width: 98%; + background-color: #3651d4;; + width: 50%; } .efeito:before { @@ -134,7 +529,7 @@ input{ top: 0px; left: 0px; width: 0px; - height: 64px; + height: 44px; background: rgba(255, 255, 255, 0.3); border-radius: 10px; transition: all 2s ease; @@ -217,12 +612,335 @@ input{ } .ipt_update { - text-align: center; - color: white; + height: 50px; + width: 25%; + background-color: rgba(0,0,0,.25); + border-radius: 3px; + padding: 0 10px; + margin-top: 8px; + font-size: 14px; + font-weight: 300; + color: #000; + +} + +/* mural maquina */ + +.mural-maquina{ + display: flex; + justify-content: center; + align-items: center; + min-height: 100vh; + background: #ebf5fc; + flex-direction: column; + margin-top: 20%; - width: 30%; - height: 10%; + +} + +.conteiner{ + display: flex; + justify-content: center; + align-items: center; + max-width: 1200px; + flex-wrap: wrap; + +} + +.conteiner .card{ + position: relative; + width: 77vw; + height: 40vh; + border-radius: 17px; +} + +.conteiner .card .box{ + position: absolute; + top: 20px; + left: 20px; + right: 20px; + bottom: 20px; + background: #ebf5fc; + box-shadow: 0 10px 20px rgba(0, 0, 0, 0.3); + border-radius: 17px; + display: flex; + justify-content: center; + align-items: center; + transition: 0.5s; + border: 2px solid #17203E; +} + +/* .conteiner .card:hover .box{ + + transform: translateY(-50px); + box-shadow: 0 10 40px rgba(0, 0, 0, 0.2); + background: linear-gradient(45deg, #1F1D36,#4f29cd); +} */ + + + +.conteiner .card .box .conteudo{ + padding: 20px; + text-align: initial; +} + +.conteiner .card .box .conteudo h2{ + position: absolute; + top: -70%; + right: 30px; + font-size: 8em; + color: rgba(0, 0, 0, 0.05); + transition: 0.5s; + pointer-events: none; +} + + +.conteiner .card:hover .box .conteudo h2{ + + color: rgba(0, 0, 0, 0.05); +} + +.conteiner .card .box .conteudo h3{ + font-size: 1.8em; + color: #000; + z-index: 1; + transition: 0.5s; + width: 70vw; +} + + + +.conteiner .card .box .conteudo p{ + + font-size: 1em; + font-weight: 300; + color: #000; + z-index: 1; + transform: 0.5s; +} + + +.conteiner .list{ + display: inline-block; + padding: 8px 20px; background-color: #17203E; + border-radius: 20px; + color: #fff; + margin: 10px; + text-decoration: none; + font-weight: 400; + box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); + border: none; +} + +.conteiner .card .box .conteudo .att{ + display: inline-block; + padding: 8px 20px; + background-color: #06FF00; + border-radius: 20px; + color: #fff; + margin: 10px; + text-decoration: none; + font-weight: 400; + box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); + border: none; +} +.conteiner .card .box .conteudo .rmv{ + display: inline-block; + padding: 8px 20px; + background-color: #F32424; + border-radius: 20px; + color: #fff; + margin: 10px; + text-decoration: none; + font-weight: 400; + box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); + border: none; +} + + +.alinhar{ + justify-content: end; + display: flex; } +form .div_botao{ +display: flex; +justify-content: center; +align-items: center; +} + +@media screen and (max-width: 700px) { + +.roles{ + flex-wrap: wrap; + display: block; + width: 100%; + height: 80%; +} +.ladoEsquerdo { + width: 100%; + height: 122%; +} + +.ladodireito { + width: 100%; + margin-left: 2%; +} + +.efeito { + width: 70%; +} +} + +.loading-div { +width: 50px; +/* border: 3px solid pink; */ +margin: auto; +display: none; +} + +.loading-div img { +height: 50px; +width: 50px; +} + + +.mural_funcionarios +{ +display: flex; +flex-direction: column; +align-items: center; +justify-content: center; + +border-radius: 10%; + +margin-top: 10%; +margin-left: 10%; + +width: 85%; +background-color: #ebf5fc; + +border-radius: 10px; +border: 2px solid rgba(255,255,255,0.1); +} +.feed-container{ +background-color: #253370; +border-radius: 1rem; +} + +.publicacao{ +height: 13vh; +width: 32vw; +display: grid; +justify-content: space-around; +align-items: center; +inset: 20px solid; +inset: 0px 0 0 45%; +background: #ebf5fc; +margin: 0.75rem; +padding: 1rem; + +} +.publicacao p { +color: #000; +} + +#atualizar{ + + justify-content: center; + align-items: center; +width: 10vw; +height: 30px; +background: #3651d4; +border: none; +border-radius: 5px; +margin: 0.75rem; +color: #fff; +} + +#btn_atualizar{ + display: block; + width: 10vw; + height: 30px; + background: #019267; + border: none; + border-radius: 5px; + margin: 0.75rem; + color: #fff; +} + +#btn_deletar{ + display: block; + width: 10vw; + height: 30px; + background: #B20600; + border: none; + border-radius: 5px; + margin: 0.75rem; + color: #fff; +} + +#updateDelete{ + height: 50px; +width: 25%; +background-color: rgba(0,0,0,.25); +border-radius: 3px; +padding: 0 10px; +margin-top: 8px; +font-size: 14px; +font-weight: 300; +color: #000; +} + +.btn_mural_funcionarios +{ +border: none; +color: #ffffff; +padding: 20px; +margin: 10px; +font-size: 15px; +line-height: 24px; +border-radius: 10px; +box-sizing: border-box; +cursor: pointer; +transition: all 400ms ease; +background-color: #3651d4; +width: 30%; +} +.botoes_crud +{ + +display: flex; +justify-content: space-around; + +} + + +.publicacao span +{ +display: flex; +flex-direction: row; +justify-content: space-around; +border: #ffffff 2px; +width: 100%; + +color: #ffffff; +} +.atualizarMural +{ + border: none; + color: #ffffff; + padding: 10px; + margin: 10px; + font-size: 15px; + line-height: 24px; + border-radius: 10px; + box-sizing: border-box; + cursor: pointer; + background-color: #34aedf; + width: 20%; +} + + diff --git a/Site/public/dash-estatica/dash-cadastros.html b/Site/public/dash-estatica/dash-cadastros.html index 77735b5..5e630b8 100644 --- a/Site/public/dash-estatica/dash-cadastros.html +++ b/Site/public/dash-estatica/dash-cadastros.html @@ -5,45 +5,136 @@ - Keep Swimming | dash-Cadastro + Keep Swimming | Cadastro Funcionário + - + + -
- -
- -
- -
- -
- + -
+ +
- +

Cadastre seus funcionarios

@@ -62,46 +153,50 @@

Cadastre seus funcionarios

- -
- -
- - - + + +
- + - - + +
- + + +
+ +
+
+
- -
- - + +
+ + +
- - + +
- + + - @@ -114,10 +209,12 @@

Cadastre seus funcionarios

+
+ +
+ - - @@ -129,6 +226,7 @@

Cadastre seus funcionarios

+ - + @@ -20,10 +20,10 @@ - + - +
@@ -40,7 +40,8 @@

Olá, !

  • Monitoramento
  • Cadastrar Desenvolvedor
  • -
  • +
  • Cadastro de maquina
  • +
  • Suporte
  • diff --git a/Site/public/dash-estatica/graficos.html b/Site/public/dash-estatica/graficos.html index 0c32ddf..3ca0616 100644 --- a/Site/public/dash-estatica/graficos.html +++ b/Site/public/dash-estatica/graficos.html @@ -35,6 +35,7 @@
  • Dashboard
  • Monitoramento
  • Cadastrar Desenvolvedor
  • +
  • Cadastrar Máquina
  • Suporte
  • diff --git a/Site/public/dash-estatica/laptopIcon.png b/Site/public/dash-estatica/laptopIcon.png new file mode 100644 index 0000000..bb39767 Binary files /dev/null and b/Site/public/dash-estatica/laptopIcon.png differ diff --git a/Site/public/dash-estatica/monitoramentoIcon.png b/Site/public/dash-estatica/monitoramentoIcon.png new file mode 100644 index 0000000..454d74e Binary files /dev/null and b/Site/public/dash-estatica/monitoramentoIcon.png differ diff --git a/Site/public/dash-estatica/nav.css b/Site/public/dash-estatica/nav.css index ba51352..44dffee 100644 --- a/Site/public/dash-estatica/nav.css +++ b/Site/public/dash-estatica/nav.css @@ -51,7 +51,7 @@ body { margin-top: 3.7rem; left: 0!important; width:22%!important; - +"" transition: transform 250ms ease-in-out!important; background: #253370; } @@ -62,13 +62,14 @@ body { display: flex; flex-direction: column; } -.sidebarMenuInner li{ +.sidebarMenuInner li img{ list-style: none; color: #fff!; font-weight: bold!; padding: 2rem; cursor: pointer!; border-bottom: 1px solid rgba(255, 255, 255, 0.10)!; + } .sidebarMenuInner li span{ display: block!important; @@ -80,6 +81,9 @@ body { font-weight: bold!important; cursor: pointer!important; text-decoration: none!important; + display: inline-flex; + justify-content: center; + align-items: center; } input[type="checkbox"]:checked ~ #sidebarMenu { transform: translateX(0)!important; @@ -418,11 +422,11 @@ main.cards1 section.card1.about { } -.corpoDebaixo{ +/* .corpoDebaixo{ display: flex; height: 100vh; -} +} */ .sair{ margin-top: 19rem; } diff --git a/Site/public/dash-estatica/perfilIcon.png b/Site/public/dash-estatica/perfilIcon.png new file mode 100644 index 0000000..36ec35b Binary files /dev/null and b/Site/public/dash-estatica/perfilIcon.png differ diff --git a/Site/public/dash-estatica/suporteIcon.png b/Site/public/dash-estatica/suporteIcon.png new file mode 100644 index 0000000..1fc7e34 Binary files /dev/null and b/Site/public/dash-estatica/suporteIcon.png differ diff --git a/Site/public/javaScript/cadastroMaquina.js b/Site/public/javaScript/cadastroMaquina.js new file mode 100644 index 0000000..a67d2b4 --- /dev/null +++ b/Site/public/javaScript/cadastroMaquina.js @@ -0,0 +1,83 @@ + + function limparFormulario() { + document.getElementById("form_cadastro_maquina").reset(); + // console.log("passei aqqyuSSSs1"); + } + + function bt_cadastro_maquina() { + aguardar(); + // console.log("passei aqqyuSSSs2"); + // Nessa parte ele da um get (Pegar) la no formulario de cadastro pelo id = form_cadastro + // e entende que tudo que estiver dentro dessa form e de cadastro + + var formulario = new URLSearchParams(new FormData(document.getElementById("form_cadastro_maquina"))); + + // Aqui setamos os campos que o usuario vai digitar atraves do campo "name" contido nas inputs + + var hostname = formulario.get("hostname"); + var funcionarioId = formulario.get("funcionarioId"); + var sistemaoperacional = formulario.get("sistemaOperacional"); + var arquitetura = formulario.get("arquitetura"); + var permissao = formulario.get("permissao"); + var fabricante = formulario.get("fabricante"); + + // console.log("passei aqqyuSSSs3"); + + // TODO: VERIFICAR AS VALIDAÇÕES + if (hostname == "" || funcionarioId == "" || sistemaoperacional == "" || arquitetura == "" || permissao == "" || fabricante == "" ) { + + window.alert("Preencha todos os campos para prosseguir!"); + + // console.log("passei aqqyuSSSs"); + if (hostname == "") { + console.log('CNPJ está em branco') + } + if (funcionarioId == "") { + console.log('email está em branco') + } + if (sistemaoperacional == "") { + console.log('senha está em branco') + } + if (arquitetura == "") { + console.log('confirmacaoSenha está em branco') + } + if (permissao == "") { + console.log('confirmacaoEmail está em branco') + } + if (fabricante == "") { + console.log('confirmacaoEmail está em branco') + } + + + finalizarAguardar(); + + return false; + + } + + + // Se tudo estiver ok ele faz uma busca la na ROUTERS por USUARIOS e o metdodo /CADASTRAR + + fetch("/usuarios/cadastrarMaquina", { + method: "POST", + body: formulario + }).then(function (resposta) { + + console.log("resposta: ", resposta); + + if (resposta.ok) { + window.alert("Cadastro realizado com sucesso!"); + // window.location = "cadastroMaquina.html"; + limparFormulario(); + finalizarAguardar(); + + } else { + throw ("Houve um erro ao tentar realizar o cadastro!"); + } + }).catch(function (resposta) { + console.log(`#ERRO: ${resposta}`); + finalizarAguardar(); + }); + + return false; + } \ No newline at end of file diff --git a/Site/public/javaScript/login.js b/Site/public/javaScript/login.js index b83493a..a63b98e 100644 --- a/Site/public/javaScript/login.js +++ b/Site/public/javaScript/login.js @@ -41,7 +41,7 @@ function logar() { sessionStorage.EMAIL_USUARIO = json.email; sessionStorage.NOME_USUARIO = json.nome; - sessionStorage.ID_USUARIO = json.id; + sessionStorage.ID_USUARIO = json.idEmpresa; setTimeout(function () { window.location = "./dash-estatica/dashboard.html"; diff --git a/Site/src/controllers/usuarioController.js b/Site/src/controllers/usuarioController.js index 13dca62..c971d4b 100644 --- a/Site/src/controllers/usuarioController.js +++ b/Site/src/controllers/usuarioController.js @@ -246,12 +246,154 @@ function updateFuncionario(req, res) { } } + + +function listarMaquina(req, res) { + usuarioModel.listarMaquina() + .then(function (resultado) { + if (resultado.length > 0) { + res.status(200).json(resultado); + } else { + res.status(204).send("Nenhum resultado encontrado!") + } + }).catch( + function (erro) { + console.log(erro); + console.log("Houve um erro ao realizar a consulta! Erro: ", erro.sqlMessage); + res.status(500).json(erro.sqlMessage); + } + ); +} + +function cadastrarMaquina(req, res) { + + + var idfuncionario = req.body.funcionarioId; + var sistemaoperacional = req.body.sistemaOperacional; + var fabricante = req.body.fabricante; + var arquitetura = req.body.arquitetura; + var permissao = req.body.permissao; + var hostname = req.body.hostname; + + + console.log("req.body cadastro maquina"); + console.log(req.body); + + if (idfuncionario == undefined) { + res.status(400).send("A o id do funcionário está undefined!"); + } else if (sistemaoperacional == undefined) { + res.status(400).send("Campo sistema operacional está undefined!"); + } else if (arquitetura == undefined) { + res.status(400).send("Campo de arquitetura está undefined!"); + }else if (permissao == undefined) { + res.status(400).send("Campo de permissão inválido") + }else if (fabricante == undefined) { + resres.status(400).send("Campo de fabricante inválido") + } else if (hostname == undefined) { + res.status(400).send("O hostName do funcionário está undefined!"); + + } else { + + // usuarioModel.buscarIdFuncionario(hostName).then( + // function (resultadoFuncionario) { + // console.log(resultadoFuncionario); + // resultadoFuncionario.JSON; + // JSON.stringify(resultadoFuncionario); + // var idFuncionario = resultadoFuncionario[0]; + usuarioModel.cadastrarMaquina(sistemaoperacional,fabricante, arquitetura, permissao,hostname) + .then( + function (resultado) { + res.json(resultado); + } + ).catch( + function (erro) { + console.log(erro); + console.log( + "\nHouve um erro ao realizar o cadastro! Erro: ", + erro.sqlMessage + ); + res.status(500).json(erro.sqlMessage); + } + ); + } +} + +function deletarMaquina(req, res) { + var idMaquina = req.body.idDelete; + + + console.log("req.body delete máquina"); + console.log(req.body); + + if (idMaquina == undefined) { + res.status(400).send("O id da maquina está undefined!"); + } else { + usuarioModel.deletarMaquina(idMaquina) + .then( + function (resultado) { + res.json(resultado); + } + ).catch( + function (erro) { + console.log(erro); + console.log( + "\nHouve um erro ao realizar o delete! Erro: ", + erro.sqlMessage + ); + res.status(500).json(erro.sqlMessage); + } + ); + } +} + +function updateMaquina(req, res) { + var idMaquina = req.body.idUpdate; + var alteraçãoMaquina = req.body.alteracao; + var update = req.body.updateEscolhido; + + + + console.log("req.body Update maquina"); + console.log(req.body); + + if (idMaquina == undefined) { + res.status(400).send("O id do funcionário está undefined!"); + } else if(alteraçãoMaquina == undefined){ + res.status(400).send("A input para alteração do funcionário está undefined!"); + } else if(update == undefined){ + res.status(400).send("A select para alteração do funcionário está undefined!"); + + }else { + usuarioModel.updateMaquina(idMaquina,alteraçãoMaquina,update) + .then( + function (resultado) { + res.json(resultado); + } + ).catch( + function (erro) { + console.log(erro); + console.log( + "\nHouve um erro ao realizar o update! Erro: ", + erro.sqlMessage + ); + res.status(500).json(erro.sqlMessage); + } + ); + } +} + + + module.exports = { entrar, cadastrar, cadastrarFuncionario, deletarFuncionario, updateFuncionario, + cadastrarMaquina, + deletarMaquina, + updateMaquina, + listarMaquina, listar, testar } \ No newline at end of file diff --git a/Site/src/database/sql.sql b/Site/src/database/sql.sql index eb24db3..3c13efd 100644 --- a/Site/src/database/sql.sql +++ b/Site/src/database/sql.sql @@ -1,21 +1,19 @@ -create database keepSwimming; - use keepSwimming; -create table empresa( - idEmpresa int primary key auto_increment, +create table [dbo].[Empresa]( + idEmpresa int primary key IDENTITY(100,1), cnpj char(18), nome varchar(50), email varchar (45), cep char(9), senha varchar(100) - )auto_increment 100; + ); INSERT INTO empresa VALUES (null,"03.778.130/0001-48", "Keep Swimming", 'Keep@hotmail.com', 06126020,'123'); -CREATE TABLE FUNCIONARIO ( - idFuncionario INT PRIMARY KEY AUTO_INCREMENT, +CREATE TABLE [dbo].[FUNCIONARIO] ( + idFuncionario INT PRIMARY KEY IDENTITY, fkGestor Int, fkEmpresa Int, Nome varchar(50), @@ -24,53 +22,61 @@ CREATE TABLE FUNCIONARIO ( Cargo VARCHAR(50), foreign key (fkGestor) references FUNCIONARIO(idFuncionario), foreign key (fkEmpresa) references empresa(idEmpresa) + on delete cascade ); -INSERT INTO FUNCIONARIO VALUES (null, null, 100, 'Gerson', 'Gerson@hotmail.com', '123', 'Gestor'); -INSERT INTO FUNCIONARIO VALUES (null, 1, 100, "Bruno", "bruno@hotmail.com", '123', 'Desenvolvedor'); +INSERT INTO [dbo].[FUNCIONARIO] VALUES (null, 100, 'Gerson', 'Gerson@hotmail.com', '123', 'Gestor'); +INSERT INTO [dbo].[FUNCIONARIO] VALUES ( 1, 100, 'Bruno', 'bruno@hotmail.com', '123', 'Desenvolvedor'); -CREATE TABLE Maquina ( - idMaquina INT PRIMARY KEY AUTO_INCREMENT, +CREATE TABLE [dbo].[Maquina] ( + idMaquina INT PRIMARY KEY IDENTITY, fkUsuario INT, sistemaOperacional varchar(50), fabricante varchar(50), arquitetura int, + hostName varchar(50), permissoes varchar(50), foreign key (fkUsuario) references FUNCIONARIO(idFuncionario) + on delete cascade ); -CREATE TABLE Processos ( - idProcesso INT PRIMARY KEY AUTO_INCREMENT, +CREATE TABLE [dbo].[Processos] ( + idProcesso INT PRIMARY KEY IDENTITY, fkMaquina INT, PID INT , Nome varchar(45), - usoCPU DOUBLE, - usoMemoria DOUBLE, + usoCPU FLOAT, + usoMemoria FLOAT, bytesUtilizados INT, - memVirtualUtilizada DOUBLE, + memVirtualUtilizada FLOAT, totalProcessos int, threads int, foreign key (fkMaquina) references Maquina(idMaquina) + on delete cascade ); -CREATE TABLE ComponentesHardware ( - ID INT PRIMARY KEY AUTO_INCREMENT, +CREATE TABLE [dbo].[ComponentesHardware] ( + ID INT PRIMARY KEY IDENTITY, fkMaquina INT, + nomeDisco varchar(45), + tamanhoDisco FLOAT, + modeloDisco varchar(100), qtdDiscos int, - memoriaTotal Double, + memoriaTotal FLOAT, processadorNome varchar(50), foreign key (fkMaquina) references Maquina(idMaquina) ); -CREATE TABLE Historico ( - ID INT PRIMARY KEY AUTO_INCREMENT, +CREATE TABLE [dbo].[Historico] ( + ID INT PRIMARY KEY IDENTITY, fkMaquina INT, - data Date, + data datetime, tempoInicializado varchar(45), tempoDeAtividade varchar(45), temperaturaAtual varchar(45), - memoriaEmUso Double, - memoriaDisponivel Double, - processadorUso Double, + memoriaEmUso FLOAT, + memoriaDisponivel FLOAT, + processadorUso FLOAT, foreign key (fkMaquina) references Maquina(idMaquina) - ); \ No newline at end of file + on delete cascade + ); diff --git a/Site/src/models/usuarioModel.js b/Site/src/models/usuarioModel.js index e0ae43f..b9db219 100644 --- a/Site/src/models/usuarioModel.js +++ b/Site/src/models/usuarioModel.js @@ -21,7 +21,7 @@ function listar() { // azure var instrucao = ` - SELECT * FROM [dbo].[empresa]; + SELECT * FROM [dbo].[FUNCIONARIO]; `; console.log("Executando a instrução SQL: \n"+instrucao); @@ -91,7 +91,7 @@ function cadastrarFuncionario(nome, email, senha, cargo,idEmpresa, idGestor) { console.log("ACESSEI O USUARIO MODEL \n \n\t\t >> Se aqui der erro de 'Error: connect ECONNREFUSED',\n \t\t >> verifique suas credenciais de acesso ao banco\n \t\t >> e se o servidor de seu BD está rodando corretamente. \n\n function cadastrarFuncionario():",nome, email,cargo, senha,idEmpresa,idGestor); var instrucao = ` - INSERT INTO FUNCIONARIO VALUES (null,${idGestor},${idEmpresa}, '${nome}', '${email}', '${senha}', '${cargo}'); + INSERT INTO FUNCIONARIO VALUES (${idGestor},${idEmpresa}, '${nome}', '${email}', '${senha}', '${cargo}'); `; console.log("Executando a instrução SQL: \n"+instrucao); return database.executar(instrucao); @@ -100,10 +100,17 @@ function cadastrarFuncionario(nome, email, senha, cargo,idEmpresa, idGestor) { function deletarFuncionario(idFuncionario) { console.log("ACESSEI O USUARIO MODEL \n \n\t\t >> Se aqui der erro de 'Error: connect ECONNREFUSED',\n \t\t >> verifique suas credenciais de acesso ao banco\n \t\t >> e se o servidor de seu BD está rodando corretamente. \n\n function deletarFuncionario():"); - + /*MySQL local var instrucao = ` DELETE FROM FUNCIONARIO WHERE idFuncionario = ${idFuncionario}; - `; + `;*/ + + //Azure + var instrucao = ` + + Delete [dbo].[FUNCIONARIO] where idFuncionario = ${idFuncionario}; +`; + console.log("Executando a instrução SQL: \n"+instrucao); return database.executar(instrucao); } @@ -134,6 +141,99 @@ function updateFuncionario(idFuncionario,alteracao,coluna) { return database.executar(instrucao); } + +function listarMaquina() { + console.log("ACESSEI O USUARIO MODEL \n \n\t\t >> Se aqui der erro de 'Error: connect ECONNREFUSED',\n \t\t >> verifique suas credenciais de acesso ao banco\n \t\t >> e se o servidor de seu BD está rodando corretamente. \n\n function listarMaquina()"); + + // local + + // var instrucao = ` + // SELECT * FROM empresa; + // `; + + + // azure + + var instrucao = ` + SELECT * FROM [dbo].[MAQUINA]; + `; + + console.log("Executando a instrução SQL: \n"+instrucao); + return database.executar(instrucao); + +} + + +function cadastrarMaquina(sistemaoperacional, fabricante, arquitetura, permissao,hostname){ + + console.log("ACESSEI O USUARIO MODEL \n \n\t\t >> Se aqui der erro de 'Error: connect ECONNREFUSED',\n \t\t >> verifique suas credenciais de acesso ao banco\n \t\t >> e se o servidor de seu BD está rodando corretamente. \n\n function cadastrarMaquina():", sistemaoperacional, fabricante, arquitetura,permissao,hostname); + + var instrucao = ` + INSERT INTO [dbo].[Maquina] + ( + sistemaoperacional, + fabricante, + arquitetura, + permissoes, + hostName) VALUES + ( + '${sistemaoperacional}', + '${fabricante}', + '${arquitetura}', + '${permissao}', + '${hostname}'); + `; + console.log("Executando a instrução SQL: \n"+instrucao); + return database.executar(instrucao); +} + +function deletarMaquina(idMaquina) { + console.log("ACESSEI O USUARIO MODEL \n \n\t\t >> Se aqui der erro de 'Error: connect ECONNREFUSED',\n \t\t >> verifique suas credenciais de acesso ao banco\n \t\t >> e se o servidor de seu BD está rodando corretamente. \n\n function deletarFuncionario():"); + + var instrucao = ` + DELETE FROM MAQUINA WHERE idMaquina = ${idMaquina}; + `; + console.log("Executando a instrução SQL: \n"+instrucao); + return database.executar(instrucao); +} + + +function updateMaquina(idMaquina,alteracao,coluna) { + console.log("ACESSEI O USUARIO MODEL \n \n\t\t >> Se aqui der erro de 'Error: connect ECONNREFUSED',\n \t\t >> verifique suas credenciais de acesso ao banco\n \t\t >> e se o servidor de seu BD está rodando corretamente. \n\n function updateFuncionario():"); + + var instrucao; + + // if(coluna == "id") + // { + // instrucao = `update Maquina SET idMaquina = ${alteracao} Where idMaquina = ${idMaquina};`; + // } + // else + if(coluna == "sistema") + { + instrucao = `update Maquina SET sistemaOperacional = '${alteracao}' Where idMaquina = ${idMaquina};`; + } + else if(coluna == "permissao") + { + instrucao = `update Maquina SET permissoes = '${alteracao}' Where idMaquina = ${idMaquina};`; + } + else if(coluna == "hostname") + { + instrucao = `update Maquina SET hostName = '${alteracao}' Where idMaquina = ${idMaquina};`; + } + + console.log("Executando a instrução SQL: \n"+instrucao); + return database.executar(instrucao); +} + +function buscarIdFuncionario(nome){ + + console.log("Buscando id do funcionario pelo nome"); + + var instrucao = `SELECT idFuncionario FROM MAQUINA WHERE HostName = '${nome}';`; + return database.executar(instrucao); + +} + module.exports = { entrar, cadastrar, @@ -142,4 +242,10 @@ module.exports = { updateFuncionario, listar, buscarIdGestor, + cadastrarMaquina, + buscarIdFuncionario, + deletarMaquina, + updateMaquina, + listarMaquina, + }; \ No newline at end of file diff --git a/Site/src/routes/usuarios.js b/Site/src/routes/usuarios.js index e0bf52d..9c97c48 100644 --- a/Site/src/routes/usuarios.js +++ b/Site/src/routes/usuarios.js @@ -27,8 +27,25 @@ router.post("/updateFuncionario", function(req, res){ usuarioController.updateFuncionario(req,res); }) +router.get("/listarMaquina", function(req, res) { + usuarioController.listarMaquina(req, res); +}); + +router.post("/cadastrarMaquina", function(req, res){ + usuarioController.cadastrarMaquina(req, res); +}) + +router.post("/deletarMaquina", function(req, res){ + usuarioController.deletarMaquina(req, res); +}) + +router.post("/updateMaquina", function(req, res){ + usuarioController.updateMaquina(req, res); +}) + router.post("/autenticar", function(req, res) { usuarioController.entrar(req, res); }); + module.exports = router; \ No newline at end of file diff --git "a/documenta\303\247ao/DER-KEEPSWIMMING.mwb" "b/documenta\303\247ao/DER-KEEPSWIMMING.mwb" index 0160b6a..61e6569 100644 Binary files "a/documenta\303\247ao/DER-KEEPSWIMMING.mwb" and "b/documenta\303\247ao/DER-KEEPSWIMMING.mwb" differ diff --git "a/documenta\303\247ao/DER-KEEPSWIMMING.mwb.bak" "b/documenta\303\247ao/DER-KEEPSWIMMING.mwb.bak" new file mode 100644 index 0000000..0160b6a Binary files /dev/null and "b/documenta\303\247ao/DER-KEEPSWIMMING.mwb.bak" differ diff --git a/package-lock.json b/package-lock.json index 5b4ca31..e1520bb 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,109 +1,6 @@ { + "name": "Keep-Swimming", + "lockfileVersion": 2, "requires": true, - "lockfileVersion": 1, - "dependencies": { - "denque": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/denque/-/denque-2.0.1.tgz", - "integrity": "sha512-tfiWc6BQLXNLpNiR5iGd0Ocu3P3VpxfzFiqubLgMfhfOw9WyvgJBd46CClNn9k3qfbjvT//0cf7AlYRX/OslMQ==" - }, - "generate-function": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz", - "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==", - "requires": { - "is-property": "^1.0.2" - } - }, - "iconv-lite": { - "version": "0.6.3", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", - "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", - "requires": { - "safer-buffer": ">= 2.1.2 < 3.0.0" - } - }, - "is-property": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz", - "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=" - }, - "long": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz", - "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==" - }, - "lru-cache": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", - "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", - "requires": { - "yallist": "^4.0.0" - } - }, - "mysql2": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/mysql2/-/mysql2-2.3.3.tgz", - "integrity": "sha512-wxJUev6LgMSgACDkb/InIFxDprRa6T95+VEoR+xPvtngtccNH2dGjEB/fVZ8yg1gWv1510c9CvXuJHi5zUm0ZA==", - "requires": { - "denque": "^2.0.1", - "generate-function": "^2.3.1", - "iconv-lite": "^0.6.3", - "long": "^4.0.0", - "lru-cache": "^6.0.0", - "named-placeholders": "^1.1.2", - "seq-queue": "^0.0.5", - "sqlstring": "^2.3.2" - } - }, - "named-placeholders": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.2.tgz", - "integrity": "sha512-wiFWqxoLL3PGVReSZpjLVxyJ1bRqe+KKJVbr4hGs1KWfTZTQyezHFBbuKj9hsizHyGV2ne7EMjHdxEGAybD5SA==", - "requires": { - "lru-cache": "^4.1.3" - }, - "dependencies": { - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=" - } - } - }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha1-8FKijacOYYkX7wqKw0wa5aaChrM=" - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" - }, - "seq-queue": { - "version": "0.0.5", - "resolved": "https://registry.npmjs.org/seq-queue/-/seq-queue-0.0.5.tgz", - "integrity": "sha1-1WgS4cAXpuTnw+Ojeh2m143TyT4=" - }, - "sqlstring": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/sqlstring/-/sqlstring-2.3.3.tgz", - "integrity": "sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg==" - }, - "yallist": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" - } - } + "packages": {} }