Uma extensão para melhorar a usabilidade do app de RDO.

Latest Version

Version
0.4 beta
Update
December 9, 2024
Size
212KiB
Developer
Category
Users
18
Rating
5 ★
Manifest Version
3
Web Store Status
Languages Support
Português (Brasil)
See more
Permissions
ActiveTab
Storage
See more

Complemento RDO [BETA] Extension

𝗩𝗲𝗿𝘀𝗮𝗼 [𝗕𝗲𝘁𝗮 𝟬.𝟰] - 𝗡𝗼𝘃𝗮𝘀 𝗙𝘂𝗻𝗰𝗶𝗼𝗻𝗮𝗹𝗶𝗱𝗮𝗱𝗲𝘀 𝗲 𝗠𝗲𝗹𝗵𝗼𝗿𝗶𝗮𝘀:

𝐏𝐞𝐫𝐬𝐨𝐧𝐚𝐥𝐢𝐳𝐚𝐜̧𝐚𝐨 𝐚 𝐠𝐨𝐬𝐭𝐨 📄:
• Escolha da cor do tema pelo usuário, permitindo personalizar a aparência da extensão e do site conforme preferências.

𝐈𝐧𝐭𝐞𝐫𝐟𝐚𝐜𝐞 𝐞 𝐔𝐬𝐚𝐛𝐢𝐥𝐢𝐝𝐚𝐝𝐞 🎨:
• Tema escuro em reformulação para maior consistência visual.
• Novos itens nos checkboxes do popup, oferecendo mais flexibilidade de configurações.

𝐌𝐞𝐥𝐡𝐨𝐫𝐢𝐚𝐬 𝐧𝐨 𝐏𝐨𝐩𝐮𝐩 🔍:
• Lista de funções futuras e concluídas atualizada, com visão clara do progresso.

𝐌𝐞𝐥𝐡𝐨𝐫𝐢𝐚𝐬 𝐓𝐞𝐜𝐧𝐢𝐜𝐚𝐬 🔧:
• Filtro de tipo de relatório no Unificador de Relatórios corrigido para melhor precisão.
• Melhorias no desempenho e otimização de recursos.

𝐂𝐨𝐫𝐫𝐞𝐜𝐨𝐞𝐬 𝐝𝐞 𝐁𝐮𝐠𝐬 🐛:
• Correção no comportamento do filtro de tipo de relatório.
• Ajustes no popup para maior estabilidade e consistência.

𝐏𝐫𝐨𝐛𝐥𝐞𝐦𝐚𝐬 𝐂𝐨𝐧𝐡𝐞𝐜𝐢𝐝𝐨𝐬 ⚠️:
• Ausência de verificação pós adição ainda não resolvida (um controle de tempo será adicionado para reduzir erros).
• Cores do tema escuro despadronizadas, sendo necessário retroceder em alguns pontos antes de avançar.

𝐂𝐨𝐦𝐩𝐚𝐭𝐢𝐛𝐢𝐥𝐢𝐝𝐚𝐝𝐞:
• Chrome 88+
• Versão 5.8.0 do app de RDO

𝗢𝗯𝘀𝗲𝗿𝘃𝗮𝗰𝗮𝗼: A versão 0.4 traz melhorias importantes na interface e funcionalidades, incluindo a personalização de cor do tema e correção no filtro de relatórios, com foco em maior flexibilidade e precisão.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

𝗩𝗲𝗿𝘀𝗮𝗼 [𝗕𝗲𝘁𝗮 𝟬.𝟯] - 𝗡𝗼𝘃𝗮𝘀 𝗙𝘂𝗻𝗰𝗶𝗼𝗻𝗮𝗹𝗶𝗱𝗮𝗱𝗲𝘀 𝗲 𝗠𝗲𝗹𝗵𝗼𝗿𝗶𝗮𝘀:

𝐔𝐧𝐢𝐟𝐢𝐜𝐚𝐝𝐨𝐫 𝐝𝐞 𝐑𝐞𝐥𝐚𝐭𝐨𝐫𝐢𝐨𝐬 📄:
• Novo card flutuante para unificação de PDFs
• Sistema de filtro por data (início e fim)
• Filtro por tipo de relatório (RDO, RSP e Orçamentos)
• Ordenação personalizada (Do fim ao início / Do início ao fim)
• Interface intuitiva e recolhível
• Autenticação automática via token de integração
• Implementação de filtro por tipo de relatório, para melhor organização dos PDFs extraídos
• Nomenclatura automática dos arquivos de acordo com nome da obra e seguindo necessidade de anexação ao SAP

𝐈𝐧𝐭𝐞𝐫𝐟𝐚𝐜𝐞 𝐞 𝐔𝐬𝐚𝐛𝐢𝐥𝐢𝐝𝐚𝐝𝐞 🎨:
• Aprimoramento do tema escuro
• Expansão otimizada dos campos de comentário dos RSPs
• Interface mais limpa e moderna
• Cards recolhíveis com estado persistente

𝐌𝐞𝐥𝐡𝐨𝐫𝐢𝐚𝐬 𝐧𝐨 𝐏𝐨𝐩𝐮𝐩 🔍:
• Reorganização das funções futuras com separação clara entre:
- Funcionalidades já implementadas
- Recursos em desenvolvimento
- Próximas implementações planejadas
• Interface mais intuitiva e organizada
• Melhor visualização do progresso do desenvolvimento
• Reorganização modular das funções no popup

𝐌𝐞𝐥𝐡𝐨𝐫𝐢𝐚𝐬 𝐓𝐞𝐜𝐧𝐢𝐜𝐚𝐬 🔧:
• Implementação de observers específicos
• Sistema de flags para controle de estados
• Melhor gerenciamento de memória
• Autenticação dinâmica via token
• Código mais modular e manutenível
• Filtros otimizados na API

𝐂𝐨𝐫𝐫𝐞𝐜𝐨𝐞𝐬 𝐝𝐞 𝐁𝐮𝐠𝐬 🐛:
• Ajustes no comportamento dos cards flutuantes • Melhor gestão de estados dos componentes • Tratamento de erros de autenticação • Otimização dos observers • Correção na filtragem de relatórios
• Já não há mais inconsistências na adição automática de horas
• A adição incorreta de siglas de função foi extinguida
• Omissão ocasional de funções também
• Adição indevida do campo \"em andamento\" foi retirada
• Travamento do campo \"atividades\" após adição sanado

𝐏𝐫𝐨𝐛𝐥𝐞𝐦𝐚𝐬 𝐂𝐨𝐧𝐡𝐞𝐜𝐢𝐝𝐨𝐬 ⚠️:
• Ausência de verificação pós adição


𝐂𝐨𝐦𝐩𝐚𝐭𝐢𝐛𝐢𝐥𝐢𝐝𝐚𝐝𝐞:
• Chrome 88+
• Versão 5.8.0 do app de RDO

𝗢𝗯𝘀𝗲𝗿𝘃𝗮𝗰𝗮𝗼: Está versão apresenta funcionalidades consistentes e úteis para mais pessoas, sendo assim, será disponibilizada publicamente.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

𝗩𝗲𝗿𝘀𝗮𝗼 [𝗕𝗲𝘁𝗮 𝟬.𝟮] - 𝗡𝗼𝘃𝗮𝘀 𝗙𝘂𝗻𝗰𝗶𝗼𝗻𝗮𝗹𝗶𝗱𝗮𝗱𝗲𝘀 𝗲 𝗠𝗲𝗹𝗵𝗼𝗿𝗶𝗮𝘀:

𝐈𝐧𝐭𝐞𝐫𝐟𝐚𝐜𝐞 𝐌𝐨𝐝𝐮𝐥𝐚𝐫 🎯:
• Nova interface organizada em módulos distintos
• Separação clara entre funções RDO e RSP
• Design mais intuitivo e responsivo

𝐒𝐢𝐬𝐭𝐞𝐦𝐚 𝐝𝐞 𝐇𝐨𝐫𝐚𝐬 𝐄𝐱𝐭𝐫𝐚𝐬 ⏱️:
• Implementação de lógicas K1 (após horário normal e outras frentes)
• K2 (após 2h do K1 e fins de semana) • K3 (máximo 7h, após 22h)
• Adição automática de horas no campo atividade via botão \"adicionar\" no card
• K4 (periculosidade) e K2 (feriados) previstos para próxima atualização

𝐀𝐭𝐚𝐥𝐡𝐨𝐬 𝐝𝐞 𝐓𝐞𝐜𝐥𝐚𝐝𝐨 ⌨️:
• Implementação inicial de atalhos
• Navegação mais rápida entre funcionalidades

𝐏𝐞𝐫𝐬𝐨𝐧𝐚𝐥𝐢𝐳𝐚𝐜𝐚𝐨 🎨:
• Correções no tema escuro
• Preparação para sistema de temas personalizáveis
• Sistema de variáveis globais para cores

𝗠𝗲𝗹𝗵𝗼𝗿𝗶𝗮𝘀 𝗧𝗲𝗰𝗻𝗶𝗰𝗮𝘀 :
• Código refatorado para maior eficiência
• Melhor tratamento de erros
• Sistema modular para fácil manutenção
• Preparação para implementações futuras

𝗙𝘂𝗻𝗰𝗼𝗲𝘀 𝗙𝘂𝘁𝘂𝗿𝗮𝘀 𝗔𝘁𝘂𝗮𝗹𝗶𝘇𝗮𝗱𝗮𝘀:
• Sistema inteligente de formatação automática
• Validação em tempo real de campos
• Integração com calendário nacional
• Sistema de compilação de PDFs
• Dashboard de equipamentos
• Análise avançada de métricas

𝗖𝗼𝗺𝗽𝗮𝘁𝗶𝗯𝗶𝗹𝗶𝗱𝗮𝗱𝗲:
• Chrome 88+
• Versão 5.8.0 do app de RDO

𝗢𝗯𝘀𝗲𝗿𝘃𝗮𝗰𝗮𝗼: Está extensão deve ser utilizada com cautela. As informações oferecidas por elas, apesar de toda verificação e empenho pra torná-las confiáveis e úteis, podem ser inconsistentes dada as incontáveis possibilidades/cenários que há em um período de medição. Sobre está versão, ela representa um avanço significativo na usabilidade e organização da extensão, preparando o terreno para funcionalidades mais avançadas no futuro.

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

𝗩𝗲𝗿𝘀𝗮𝗼 [𝗕𝗲𝘁𝗮 𝟬.𝟭] - 𝗙𝘂𝗻𝗰𝗶𝗼𝗻𝗮𝗹𝗶𝗱𝗮𝗱𝗲𝘀 𝗣𝗿𝗶𝗻𝗰𝗶𝗽𝗮𝗶𝘀:

1. 𝐀𝐧𝐚𝐥𝐢𝐬𝐞 𝐝𝐞 𝐇𝐨𝐫𝐚𝐬 𝐀𝐮𝐭𝐨𝐦𝐚𝐭𝐢𝐜𝐨 ⏱️:
• Realiza a soma automática de horas por função em RDOs de HH e identifica horas extras em fins de semana (K2).
• No futuro, serão implementadas lógicas adicionais para a conversão de horas, utilizando parâmetros obtidos dos relatórios, de maneira semelhante ao que já ocorre com a classificação K2. A classificação K1 será aplicada às horas trabalhadas que excedem 8,8 horas normais (HN), limitadas a um máximo de 2 horas extras. Por exemplo, se o trabalho for iniciado às 06:30 e o funcionário continuar até além das 16:18, as horas entre 16:18 e 18:18 serão contabilizadas como K1, enquanto o restante será considerado K2. Além disso, a classificação K3 será aplicada às horas trabalhadas entre 22:00 e 05:00, considerando todas as horas nesse intervalo como K3, que representam horas extras noturnas. Neste contexto, as horas normais serão limitadas a 8,8 horas (HN) e as regras descritas anteriormente serão aplicadas, alterando-se apenas em casos de fins de semana e feriados (informação que tentarei obter através de uma biblioteca externa), onde todo o período de trabalho será classificado como K2, além de K3 para horas noturnas adicionais.
• Exemplo de implementação: A função que converte uma string de tempo no formato \"hh:mm\" em um valor decimal pode ser representada assim:

𝘧𝘶𝘯𝘤𝘵𝘪𝘰𝘯 𝘤𝘰𝘯𝘷𝘦𝘳𝘵𝘦𝘳𝘛𝘦𝘮𝘱𝘰(𝘵𝘦𝘮𝘱𝘰𝘚𝘵𝘳) {
𝘤𝘰𝘯𝘴𝘵 [𝘩𝘰𝘳𝘢𝘴, 𝘮𝘪𝘯𝘶𝘵𝘰𝘴] = 𝘵𝘦𝘮𝘱𝘰𝘚𝘵𝘳.𝘴𝘱𝘭𝘪𝘵(':');
𝘳𝘦𝘵𝘶𝘳𝘯 𝘱𝘢𝘳𝘴𝘦𝘍𝘭𝘰𝘢𝘵(𝘩𝘰𝘳𝘢𝘴) + 𝘱𝘢𝘳𝘴𝘦𝘍𝘭𝘰𝘢𝘵(𝘮𝘪𝘯𝘶𝘵𝘰𝘴) / 𝟼𝟶;
}


Por exemplo, se a entrada for \"08:48\", a função retornará 8.8, facilitando a contabilização de horas.

2. 𝐈𝐧𝐭𝐞𝐫𝐟𝐚𝐜𝐞 𝐅𝐥𝐮𝐭𝐮𝐚𝐧𝐭𝐞 🖥️:
• Apresenta um card recolhível que mantém o estado mesmo após recarregamentos. (está com um bug)
• Inclui um botão de cópia rápida para relatórios.
• Exemplo: Um container pode ser criado com uma classe específica e posicionado fixamente no canto inferior da tela, permitindo que os usuários copiem rapidamente dados do relatório:

𝘤𝘰𝘯𝘴𝘵 𝘤𝘰𝘯𝘵𝘢𝘪𝘯𝘦𝘳𝘋𝘢𝘥𝘰𝘴 = 𝘥𝘰𝘤𝘶𝘮𝘦𝘯𝘵.𝘤𝘳𝘦𝘢𝘵𝘦𝘌𝘭𝘦𝘮𝘦𝘯𝘵('𝘥𝘪𝘷');
𝘤𝘰𝘯𝘵𝘢𝘪𝘯𝘦𝘳𝘋𝘢𝘥𝘰𝘴.𝘤𝘭𝘢𝘴𝘴𝘕𝘢𝘮𝘦 = '𝘤𝘢𝘳𝘵𝘢𝘰-𝘧𝘶𝘯𝘤𝘢𝘰';
𝘤𝘰𝘯𝘵𝘢𝘪𝘯𝘦𝘳𝘋𝘢𝘥𝘰𝘴.𝘴𝘵𝘺𝘭𝘦.𝘤𝘴𝘴𝘛𝘦𝘹𝘵 = `
𝘱𝘰𝘴𝘪𝘵𝘪𝘰𝘯: 𝘧𝘪𝘹𝘦𝘥;
𝘣𝘰𝘵𝘵𝘰𝘮: 𝟸𝟶𝘱𝘹;
𝘭𝘦𝘧𝘵: 𝟸𝟶𝘱𝘹;
𝘻-𝘪𝘯𝘥𝘦𝘹: 𝟿𝟿𝟿𝟿𝟿;
`;

Isso garante que o acesso às funcionalidades seja sempre conveniente.

3. 𝐓𝐞𝐦𝐚 𝐄𝐬𝐜𝐮𝐫𝐨 🌙:
• Permite a alteração dinâmica das cores da plataforma, proporcionando uma experiência visual mais agradável durante o uso noturno.
• A personalização de elementos DOM específicos é feita através de uma função que altera as cores de cabeçalhos e outros elementos:

𝘧𝘶𝘯𝘤𝘵𝘪𝘰𝘯 𝘢𝘱𝘭𝘪𝘤𝘢𝘳𝘊𝘰𝘳𝘦𝘴(𝘤𝘢𝘣𝘦𝘤𝘢𝘭𝘩𝘰𝘴𝘈𝘵𝘪𝘷𝘢𝘥𝘰𝘴) {
𝘤𝘰𝘯𝘴𝘵 𝘩𝘦𝘢𝘥𝘪𝘯𝘨𝘴 = 𝘥𝘰𝘤𝘶𝘮𝘦𝘯𝘵.𝘲𝘶𝘦𝘳𝘺𝘚𝘦𝘭𝘦𝘤𝘵𝘰𝘳𝘈𝘭𝘭('𝘩𝟷, 𝘩𝟸, 𝘩𝟹');
𝘩𝘦𝘢𝘥𝘪𝘯𝘨𝘴.𝘧𝘰𝘳𝘌𝘢𝘤𝘩(𝘩𝘦𝘢𝘥𝘪𝘯𝘨 => {
𝘩𝘦𝘢𝘥𝘪𝘯𝘨.𝘴𝘵𝘺𝘭𝘦.𝘤𝘰𝘭𝘰𝘳 = 𝘤𝘢𝘣𝘦𝘤𝘢𝘭𝘩𝘰𝘴𝘈𝘵𝘪𝘷𝘢𝘥𝘰𝘴 ? \"#𝘥𝟾𝘥𝟾𝘥𝟾\" : '';
});
}

Por exemplo, ao ativar o tema escuro, os cabeçalhos se tornam cinza claro, reduzindo a fadiga ocular.

Funções Futuras da Extensão

1. 𝐂𝐨𝐫 𝐏𝐫𝐢𝐧𝐜𝐢𝐩𝐚𝐥 🎨:
Implementação de uma funcionalidade que permitirá trocar a cor principal dos cabeçalhos. A funcionalidade já existe, mas ainda não está conectada às funções do popup.

2. 𝐀𝐮𝐭𝐨 𝐟𝐨𝐫𝐦𝐚𝐭𝐚ç𝐚𝐨 𝐝𝐞 𝐓𝐞𝐱𝐭𝐨 ✍️:
Desenvolver uma função que possibilite a auto formatação das descrições. Essa funcionalidade tende a ser desafiadora e pode não ser totalmente viável ou funcional.

3. 𝐕𝐚𝐥𝐢𝐝𝐚𝐝𝐨𝐫 𝐝𝐞 𝐂𝐚𝐦𝐩𝐨𝐬 ⚠️:
Implementação de um sistema que avise se algum campo essencial estiver vazio. Essa função indicará de forma clara quando um campo que deve ser preenchido obrigatoriamente não estiver completo.

4. 𝐓𝐞𝐜𝐥𝐚𝐬 𝐝𝐞 𝐀𝐭𝐚𝐥𝐡𝐨 ⌨️:

Introdução de atalhos de teclado, como Alt + H para acessar a página inicial, por exemplo. Isso permitirá que os usuários naveguem pelo site e adicionem relatórios ou itens nos relatórios de forma mais eficiente.

𝐑𝐞𝐜𝐮𝐫𝐬𝐨𝐬 𝐓𝐞𝐜𝐧𝐢𝐜𝐨𝐬:
• Utiliza observadores DOM para atualizações em tempo real, permitindo que as alterações na interface sejam refletidas instantaneamente.
• Implementa um sistema de cache para armazenar as preferências do usuário e manipula dinamicamente os estilos CSS.
• Exemplo: Um observador pode ser configurado para monitorar mudanças no DOM e, ao detectar novos relatórios, chama uma função para atualizar automaticamente os dados:

𝘤𝘰𝘯𝘴𝘵 𝘰𝘣𝘴𝘦𝘳𝘷𝘦𝘳 = 𝘯𝘦𝘸 𝘔𝘶𝘵𝘢𝘵𝘪𝘰𝘯𝘖𝘣𝘴𝘦𝘳𝘷𝘦𝘳(() => {
𝘪𝘧 (𝘷𝘦𝘳𝘪𝘧𝘪𝘤𝘢𝘳𝘙𝘦𝘭𝘢𝘵𝘰𝘳𝘪𝘰()) {
𝘢𝘵𝘶𝘢𝘭𝘪𝘻𝘢𝘳𝘋𝘢𝘥𝘰𝘴();
}
});

𝐓𝐞𝐜𝐧𝐨𝐥𝐨𝐠𝐢𝐚𝐬 𝐔𝐭𝐢𝐥𝐢𝐳𝐚𝐝𝐚𝐬:
• JavaScript Vanilla
• Chrome Extension API
• MutationObserver
• LocalStorage
• HTML e CSS

𝐂𝐨𝐦𝐩𝐚𝐭𝐢𝐛𝐢𝐥𝐢𝐝𝐚𝐝𝐞:
• Chrome 88+
• Versão 5.7.3 do app de RDO.

𝗕𝗼𝗮 𝗺𝗲𝗱𝗶𝗰𝗮𝗼!
Read more

Source Manifest.json

{"update_url": "https://clients2.google.com/service/update2/crx", "manifest_version": 3, "name": "Complemento RDO [BETA]", "short_name": "Complemento RDO", "version": "0.4", "version_name": "0.4 beta", "description": "Uma extens\u00e3o para melhorar a usabilidade do app de RDO.", "action": { "default_popup": "popup/popup.html" }, "icons": { "48": "imagens/icon48.png" }, "permissions": [ "activeTab", "storage" ], "host_permissions": [ "*://web.diariodeobra.app/*" ], "content_scripts": [ { "matches": [ "*://web.diariodeobra.app/*" ], "js": [ "tema-dark/tema/tema.js", "RDO/card_rdo_hh.js", "tema-dark/tema_dark.js", "RSP/scripts/rsp_script.js", "atalhos/atalhos.js", "atalhos/card_atalhos.js", "extrair-pdfs/extrairPDFs.js" ], "run_at": "document_idle" } ]}
Read more