rpa-suite 1.0.1__py3-none-any.whl → 1.0.3__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
rpa_suite/__init__.py CHANGED
@@ -0,0 +1 @@
1
+ # __init__.py
@@ -0,0 +1 @@
1
+ # /__init__.py
@@ -1,3 +1,5 @@
1
+ # /exec_at.py
2
+
1
3
  import time
2
4
  from typing import Callable, Any
3
5
  from datetime import datetime as dt
@@ -1,3 +1,5 @@
1
+ # /scheduler.py
2
+
1
3
  import schedule
2
4
  import time
3
5
  import subprocess
rpa_suite/clock/waiter.py CHANGED
@@ -1,3 +1,5 @@
1
+ # /waiter.py
2
+
1
3
  import time
2
4
  from typing import Callable, Any
3
5
  from rpa_suite.log.printer import error_print, success_print
@@ -0,0 +1 @@
1
+ # /__init__.py
rpa_suite/date/date.py CHANGED
@@ -1,3 +1,5 @@
1
+ # /date.py
2
+
1
3
  import datetime as dt
2
4
  from typing import Optional as Op
3
5
  from typing import Tuple
@@ -0,0 +1 @@
1
+ # /__init__.py
@@ -1,3 +1,5 @@
1
+ # /sender_smtp.py
2
+
1
3
  import smtplib, os
2
4
  from email.mime.image import MIMEImage
3
5
  from email.mime.multipart import MIMEMultipart
@@ -0,0 +1 @@
1
+ # /__init__.py
rpa_suite/file/counter.py CHANGED
@@ -1,3 +1,5 @@
1
+ # /counter.py
2
+
1
3
  import os
2
4
  from typing import Dict, List, Union
3
5
  from rpa_suite.log.printer import error_print, success_print
@@ -0,0 +1,82 @@
1
+ # /screen_shot.py
2
+
3
+ import os, time
4
+ from datetime import datetime
5
+ from rpa_suite import suite as rpa
6
+
7
+
8
+ try:
9
+ import pyautogui
10
+ import pyscreeze
11
+
12
+ except ImportError:
13
+ raise ImportError(" The ‘pyautogui’, ‘Pillow’, and ‘PyScreeze’ libraries are necessary to use this module. Please install them with ‘pip install pyautogui pillow pyscreeze’.")
14
+
15
+
16
+ def screen_shot(file_path: str, file_name: str = 'screenshot', save_with_date: bool = True, delay: int = 1) -> str | None:
17
+
18
+ """
19
+ Function responsible for create a dir for screenshot, and file screenshot and save this in dir to create, if dir exists save it on original dir. By default uses date on file name. \n
20
+
21
+ Parameters:
22
+ ----------
23
+ ``file_path: str`` - should be a string, not have a default path.
24
+ ``file_name: str`` - should be a string, by default name is `screenshot`.
25
+ ``save_with_date: bool`` - should be a boolean, by default `True` save namefile with date `foo_dd_mm_yyyy-hh_mm_ss.png`.
26
+ ``delay: int`` - should be a int, by default 1 (represents seconds).
27
+
28
+ Return:
29
+ ----------
30
+ >>> type:str
31
+ * 'screenshot_path': str - represents the absulute path created for this file
32
+
33
+ Description: pt-br
34
+ ----------
35
+ Função responsável por criar um diretório para captura de tela, e arquivo de captura de tela e salvar isso no diretório a ser criado, se o diretório existir, salve-o no diretório original. Por padrão, usa a data no nome do arquivo.
36
+
37
+ Parâmetros:
38
+ ----------
39
+ ``file_path: str`` - deve ser uma string, não tem um caminho padrão.
40
+ ``file_name: str`` - deve ser uma string, por padrão o nome é `screenshot`.
41
+ ``save_with_date: bool`` - deve ser um booleano, por padrão `True` salva o nome do arquivo com a data `foo_dd_mm_yyyy-hh_mm_ss.png`.
42
+ ``delay: int`` - deve ser um int, por padrão 1 representado em segundo(s).
43
+
44
+ Retorno:
45
+ ----------
46
+ >>> tipo: str
47
+ * 'screenshot_path': str - representa o caminho absoluto do arquivo criado
48
+ """
49
+
50
+ # proccess
51
+ try:
52
+
53
+ time.sleep(delay)
54
+ if not os.path.exists(file_path):
55
+
56
+ # if dir not exists create it
57
+ try:
58
+ os.makedirs(file_path)
59
+ rpa.success_print(f"Diretório criado com sucesso em: '{file_path}'!")
60
+
61
+ except OSError as e:
62
+ rpa.error_print(f"Falha ao criar o diretório em: '{file_path}'! Error: {str(e)}")
63
+
64
+
65
+ if save_with_date: # use date on file name
66
+ image = pyautogui.screenshot()
67
+ path_file_screenshoted = fr'{file_path}/{file_name}_{datetime.today().strftime("%d_%m_%Y-%H_%M_%S")}.png'
68
+
69
+ image.save(path_file_screenshoted)
70
+ return os.path.abspath(path_file_screenshoted)
71
+
72
+ else: # not use date on file name
73
+ image = pyautogui.screenshot()
74
+ path_file_screenshoted = fr'{file_path}/{file_name}.png'
75
+
76
+ image.save(path_file_screenshoted)
77
+ return os.path.abspath(path_file_screenshoted)
78
+
79
+ except Exception as e:
80
+
81
+ rpa.error_print(f'Erro durante a função {screen_shot.__name__}! Error: {str(e)}')
82
+ return None
@@ -1,3 +1,5 @@
1
+ # /temp_dir.py
2
+
1
3
  import os, shutil
2
4
  from typing import Union
3
5
  from rpa_suite.log.printer import error_print, alert_print, success_print
@@ -1,3 +1,5 @@
1
+ # /_create_log_dir.py
2
+
1
3
  import os
2
4
  from typing import Union
3
5
  from rpa_suite.log.printer import error_print, alert_print, success_print
rpa_suite/log/__init__.py CHANGED
@@ -0,0 +1 @@
1
+ # /__init__.py
@@ -1,5 +1,7 @@
1
+ # /_functions_logger.py
2
+
1
3
  import logging
2
- from .logger import file_handler
4
+ from ._logger import file_handler
3
5
  from rpa_suite.log.printer import error_print, success_print
4
6
 
5
7
 
@@ -1,3 +1,5 @@
1
+ # /_logger.py
2
+
1
3
  import logging
2
4
  from logging import DEBUG
3
5
  from logging import FileHandler, StreamHandler, Filter
@@ -1,3 +1,5 @@
1
+ # /_variables.py
2
+
1
3
  from logging import FileHandler, StreamHandler
2
4
  from typing import Optional
3
5
 
@@ -1,3 +1,5 @@
1
+ # /_variables_uru.py
2
+
1
3
  from loguru import logger
2
4
  from typing import Optional
3
5
  from typing import Any
@@ -1,3 +1,5 @@
1
+ # /functions_logger_uru.py
2
+
1
3
  from loguru import logger
2
4
  from rpa_suite.log.printer import error_print, alert_print
3
5
  import inspect, os
@@ -1,3 +1,5 @@
1
+ # /log_decorator.py
2
+
1
3
  from typing import Callable
2
4
  from loguru import logger
3
5
 
rpa_suite/log/printer.py CHANGED
@@ -1,3 +1,5 @@
1
+ # /printer.py
2
+
1
3
  from colorama import Fore
2
4
 
3
5
  # Windows bash colors
@@ -0,0 +1 @@
1
+ # /__init__.py
@@ -1,3 +1,5 @@
1
+ # /list_from_text.py
2
+
1
3
  import re
2
4
  from typing import Any
3
5
  from rpa_suite.log.printer import error_print, success_print
rpa_suite/suite.py CHANGED
@@ -1,3 +1,31 @@
1
+ # suite.py
2
+
3
+ """
4
+ This file is the heart of the library, acting as a central access point to all available submodules. It imports and instantiates all functions from the submodules into a single object, `Rpa_suite`, allowing users to access all functionalities of the library by importing just this object.
5
+
6
+ The structure of the library has been designed to be modular and organized, with each submodule dedicated to a specific type of functionality. Each submodule is contained in its own folder, making the code easier to navigate and maintain.
7
+
8
+ Upon installing the library, users only need to import the `Rpa_suite` object to have access to all available functions. This is done through the `invoke` function, which returns an instance of the `Rpa_suite` object.
9
+
10
+ Here is an overview of the available submodules:
11
+
12
+ - **CLOCK**: Functions related to time, such as waiting for an execution or executing at a specific hour.
13
+ - **DATE**: Functions for working with dates.
14
+ - **EMAIL**: Functions for sending emails.
15
+ - **FILE**: Functions for working with files, such as counting files or creating temporary directories.
16
+ - **LOG**: Functions for logging events and printing messages.
17
+ - **REGEX**: Functions for working with regular expressions.
18
+ - **VALIDATE**: Functions for validating inputs, such as emails or strings.
19
+
20
+ Remember, to use the library, just do the following:
21
+
22
+ # On your project
23
+ from rpa_suite import suite as rpa
24
+
25
+ # call functions
26
+ rpa.success_print(f'This work!')
27
+
28
+ """
1
29
 
2
30
  """MODULE CLOCK"""
3
31
  from .clock.waiter import wait_for_exec, exec_and_wait
@@ -21,8 +49,8 @@ from .file.temp_dir import create_temp_dir, delete_temp_dir
21
49
  # from .log.loggin import logging_decorator
22
50
  from .log.printer import alert_print, success_print, error_print, info_print, print_call_fn, print_retur_fn, magenta_print, blue_print
23
51
 
24
- from .log.logger import config_logger
25
- from .log.functions_logger import log_start_run_debug, log_debug, log_info, log_warning, log_error, log_critical
52
+ from .log.logger_uru import config_logger
53
+ from .log.functions_logger_uru import log_start_run_debug, log_debug, log_info, log_warning, log_error, log_critical
26
54
 
27
55
 
28
56
  """MODULE REGEX"""
@@ -0,0 +1 @@
1
+ # /__init__.py
@@ -1,3 +1,5 @@
1
+ # /mail_validator.py
2
+
1
3
  import email_validator
2
4
  from rpa_suite.log.printer import error_print, success_print
3
5
 
@@ -1,3 +1,5 @@
1
+ # /string_validator.py
2
+
1
3
  from rpa_suite.log.printer import success_print, error_print
2
4
 
3
5
  def search_in(
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: rpa-suite
3
- Version: 1.0.1
3
+ Version: 1.0.3
4
4
  Summary: Conjunto de ferramentas essenciais para Automação RPA com Python, que facilitam o dia a dia de desenvolvimento.
5
5
  Author: Camilo Costa de Carvalho
6
6
  Author-email: camilo.carvalho@triasoftware.com.br
@@ -127,31 +127,36 @@ No setup do nosso projeto já estão inclusas as dependências, só será necess
127
127
  - loguru
128
128
  - email-validator
129
129
  - colorlog
130
+
131
+ [!IMPORTANT]
132
+ No caso da função de screenshot é necessario ter as libs 'pyautogui' 'pillow' e 'pyscreeze' instalados, geralmente a instalação de pyautogui já instala as demais dependencias deste caso.
130
133
 
131
134
  ## Estrutura do módulo
132
135
  O módulo principal do rpa-suite é dividido em categorias. Cada categoria contém módulos com funções destinadas a cada tipo de tarefa
133
136
  - **rpa_suite**
134
137
  - **clock**
135
- - **waiter** - Funções para aguardar em relação a execução de uma função, podendo ser antes ou depois
136
- - **exec_at** - Funções para executar em momentos pré determinados
138
+ - **waiter** - Função capaz de aguardar para executar a função do argumento, ou executar a função do argumento para aguardar posteriormente
139
+ - **exec_at** - Função capaz de executar a função do argumento no horario especificado "xx:yy" parecido com scheduler, porem com a vantagem de ter o horario como variavel dentro do escopo de código podendo gerar variações pela propria natureza da aplicação
137
140
  - **date**
138
- - **date** - Funções para capturar data, mês, ano, hora, minutos de forma individual em apenas uma linha
141
+ - **date** - Funções capazes de extrair dia/mes/ano e hora/min/seg, facilitando a necessidade de formatar o resultado de datetime, a função ja devolve os valores em trio formatados em string
139
142
  - **email**
140
- - **sender_smtp** - Funções para envio de email SMPT
143
+ - **sender_smtp** - Funções para envio de email SMPT com configuração simples já default porem personalizavel
141
144
  - **file**
142
145
  - **counter** - Funções para contagem de arquivos
143
146
  - **temp_dir** - Funções para diretórios temporários
147
+ -**screen_shot** - Função para criar diretório e arquivo de print com nome do diretório, arquivo e delay personalizáveis.
144
148
  - **log**
145
- - **logger** - Objeto de log, cria diretório/arquivo de log integrado aos prints
146
- - **printer** - Funções print personalizados (alerta, erro, sucesso, informativo)
149
+ - **logger_uru** - Instanciador de stream e handlefile que cria na pasta raiz do arquivo chamador pasta de log e seta o stream para as funções de log
150
+ - **functions_logger_uru** - Funções de log parecida com os prints personalizados, setadas e personalizadas para todos log levels usado pelo ´logger_uru´, já escreve no arquivo setado além de gerar o print no terminal
151
+ - **printer** - Funções de print personalizados (alerta, erro, sucesso, informativo)
147
152
  - **regex**
148
- - **list_from_text** - Funções para gerar listas, dividindo texto usando padrão regex
153
+ - **list_from_text** - Funções para gerar listas, dividindo texto usando padrão regex (necessita de melhorias)
149
154
  - **validate**
150
- - **mail_validator** - Funções para validação de emails
151
- - **string_validator** - Funções para validação/varredura (strings, substrings, palavras)
155
+ - **mail_validator** - Função para validar lista de emails, devolvendo a lista com emails validos a partir da lista original
156
+ - **string_validator** - Função que valida presença de letras, palavras, e texto em strings
152
157
 
153
158
  ## Release
154
- Versão: **Beta 1.0.1**
159
+ Versão: **Beta 1.0.3**
155
160
 
156
161
  Lançamento: *20/02/2024*
157
162
 
@@ -0,0 +1,34 @@
1
+ rpa_suite/__init__.py,sha256=2k_ZeqU7FvqZMFqGm-EYRiV98uxUxmiy5wXygvIobPU,13
2
+ rpa_suite/suite.py,sha256=D5VUJbG3fPCXtQjGA0z6Ll9znr4-YPzZWHbpGNpZ-nU,5246
3
+ rpa_suite/clock/__init__.py,sha256=haPk94yjX88kR5YpzNNFCpzHw0T7fKAEoiaHA3-vAds,14
4
+ rpa_suite/clock/exec_at.py,sha256=APgjuY5ORzITqtyGscdrhuYxYgJ0iAx4zqQxsdNBZoQ,5826
5
+ rpa_suite/clock/scheduler.py,sha256=_EeERPcdVakgp4WoAWbQvLUeLUtZeWiONuU--EszKvI,1197
6
+ rpa_suite/clock/waiter.py,sha256=puvi1tNIG5v50tVaGckxjWjbTcnDQkpuxIZykRCi6s4,5916
7
+ rpa_suite/date/__init__.py,sha256=haPk94yjX88kR5YpzNNFCpzHw0T7fKAEoiaHA3-vAds,14
8
+ rpa_suite/date/date.py,sha256=fYCEdOcv9mU41xI0AUzMVzABPzhEjMQ4ZBCE_mBPQws,4316
9
+ rpa_suite/email/__init__.py,sha256=haPk94yjX88kR5YpzNNFCpzHw0T7fKAEoiaHA3-vAds,14
10
+ rpa_suite/email/sender_smtp.py,sha256=e6DgITLLB1Acx1yQbHBargHT3UGxLDpTdHkQ0w8EgaM,7598
11
+ rpa_suite/file/__init__.py,sha256=haPk94yjX88kR5YpzNNFCpzHw0T7fKAEoiaHA3-vAds,14
12
+ rpa_suite/file/counter.py,sha256=vFaqENBC6HLv7dHmEmibsHhLVfumTM6Dh7p-u2g6s5Y,2483
13
+ rpa_suite/file/screen_shot.py,sha256=3SFKSS1Kb9UlKY3Lt6cE9Bym7i44iu7XeMqzZ2d4dhc,3282
14
+ rpa_suite/file/temp_dir.py,sha256=NnoLbpgCm9ZoC2D2mzywo756d8BBt_1fhQeNUUnxsPs,7134
15
+ rpa_suite/log/__create_log_dir.py,sha256=Lm3qbIhJ0z4zBkRIdR5AFw8voBRaAGuEwr8G-6cSPGg,3318
16
+ rpa_suite/log/__init__.py,sha256=haPk94yjX88kR5YpzNNFCpzHw0T7fKAEoiaHA3-vAds,14
17
+ rpa_suite/log/_functions_logger.py,sha256=kIpJEyk-Rpg2oMo0Jjchjbh06N9PMx33GkYt6IlTTvA,2696
18
+ rpa_suite/log/_logger.py,sha256=nuHCvu8uUbr_xIJDn5BVJowXBaG-UNnYlbuPO3P9FSw,3636
19
+ rpa_suite/log/_variables.py,sha256=vCcktifFUriBQTyUaayZW8BlE8Gr7VP-tFbfomKOS5U,312
20
+ rpa_suite/log/_variables_uru.py,sha256=xRqYp49l1fFNrHczOmJ6Pqw1PKIWs0f9kxlgvuYGYys,303
21
+ rpa_suite/log/functions_logger_uru.py,sha256=Drnmpz08or3ij2HLQsrYgvWa-zxk66HFI00GxhmDGQY,6154
22
+ rpa_suite/log/log_decorator.py,sha256=cSN-WINpdbtvH_bDNurpkbMLjQlDPJKdwou6T8JHo3g,1338
23
+ rpa_suite/log/logger_uru.py,sha256=HwMHqJs9wKDfGqSny0smwOQK3wq1xLTd3x-nCGQ0IZo,3665
24
+ rpa_suite/log/printer.py,sha256=Ue-OW5w6QB9zjUDd4Y62jmfgcN6ibPM_smuY2kutr6U,3965
25
+ rpa_suite/regex/__init__.py,sha256=haPk94yjX88kR5YpzNNFCpzHw0T7fKAEoiaHA3-vAds,14
26
+ rpa_suite/regex/list_from_text.py,sha256=HJaV_nhjCjn8UkJgEsnnKO2hYuE-zVDCAH9MD6XocGw,2226
27
+ rpa_suite/validate/__init__.py,sha256=haPk94yjX88kR5YpzNNFCpzHw0T7fKAEoiaHA3-vAds,14
28
+ rpa_suite/validate/mail_validator.py,sha256=dtFdthDd3gHyJ0uEUT9yPFFP1yyq4TXLxKLV1gqcNMo,2930
29
+ rpa_suite/validate/string_validator.py,sha256=8dGAHhvZu19yIVOoX-te1pVqVi7cwDrFJKf107cLgvA,5370
30
+ rpa_suite-1.0.3.dist-info/LICENSE,sha256=5D8PIbs31iGd9i1_MDNg4SzaQnp9sEIULALh2y3WyMI,1102
31
+ rpa_suite-1.0.3.dist-info/METADATA,sha256=CpzZ1QqgR998I_tGfzPZSGwMUjJkMK1GLNRG0cuRC7k,7729
32
+ rpa_suite-1.0.3.dist-info/WHEEL,sha256=Xo9-1PvkuimrydujYJAjF7pCkriuXBpUPEjma1nZyJ0,92
33
+ rpa_suite-1.0.3.dist-info/top_level.txt,sha256=HYkDtg-kJNAr3F2XAIPyJ-QBbNhk7q6jrqsFt10lz4Y,10
34
+ rpa_suite-1.0.3.dist-info/RECORD,,
@@ -1,33 +0,0 @@
1
- rpa_suite/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
2
- rpa_suite/suite.py,sha256=d0AyTyVBtORSFn08tot4WY2x9GUnuYPaaYVOqjNcMBE,3709
3
- rpa_suite/clock/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
- rpa_suite/clock/exec_at.py,sha256=AIwgot-zhAgLVSuBOEIIirH4hGoF2yGPOHsMXKZLeDQ,5809
5
- rpa_suite/clock/scheduler.py,sha256=N3JMu_nDB2xyWxTL4EGsA-_u0r1nUmwC9SnJTz0Frns,1178
6
- rpa_suite/clock/waiter.py,sha256=hczvBR9f63ofR8FZbWO-p96yJgu-df8fm_bpfmliMZc,5900
7
- rpa_suite/date/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
- rpa_suite/date/date.py,sha256=FXdth3CLvg57T8dZApLEftJhfi2KrOev0dOvI-xVkmc,4302
9
- rpa_suite/email/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
- rpa_suite/email/sender_smtp.py,sha256=8v-IH2Z_tS0fwo-JW_ichoyX54-ekBkCRuCEyjWdFTs,7577
11
- rpa_suite/file/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
12
- rpa_suite/file/counter.py,sha256=DDxeMaXI1pp31-divf30BEJ3QcLnA9ucKE-D0ZpsmFU,2466
13
- rpa_suite/file/temp_dir.py,sha256=F2ZDFLpqHO1BTtJURkiuexQNaO-pngJkk6cvTmp0JSk,7116
14
- rpa_suite/log/__create_log_dir.py,sha256=5pxX7j3vWYQ0Dn2_04UWnfUJvvbzd78DgOpH2IaBFYM,3293
15
- rpa_suite/log/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
16
- rpa_suite/log/_variables.py,sha256=rt8W9-yDgoonAu93yuPZgPy-rtnJcq4NwzB7EL0TRX4,292
17
- rpa_suite/log/_variables_uru.py,sha256=fe2IKhyZzroHO5WIIm_VCKwcdr8lfobOr-VctgpdQhc,279
18
- rpa_suite/log/functions_logger.py,sha256=A6z_f6pKClz_PYl3YEM-9px1KShNox5etU3umPqqvyg,2668
19
- rpa_suite/log/functions_logger_uru.py,sha256=GvXeAnsevLLVJCO2rhXr81ngmYl6xHfMsnEEin4Viu8,6124
20
- rpa_suite/log/log_decorator.py,sha256=K5RhUITcPIHQmnuCZjEYYUbYyK1-WaB7EwZe2V3ugCE,1315
21
- rpa_suite/log/logger.py,sha256=JD4mBdfWA_XE5Qq5JMLBf_LLWWonVKNZo-F-GqrRm04,3619
22
- rpa_suite/log/logger_uru.py,sha256=HwMHqJs9wKDfGqSny0smwOQK3wq1xLTd3x-nCGQ0IZo,3665
23
- rpa_suite/log/printer.py,sha256=sykxCpOyiMe539iXuRq-yN6HpKi1xxWiP7mZ1s8mF6k,3948
24
- rpa_suite/regex/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
- rpa_suite/regex/list_from_text.py,sha256=gGTNJdnmD1kwJ6oQOMwcEFFKb_U5i4rV-bSCHC-LlKQ,2202
26
- rpa_suite/validate/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
27
- rpa_suite/validate/mail_validator.py,sha256=PEa_-bON7BYnpaz-p5aEZkpza7qsoBBFKv6GwsjdjCU,2906
28
- rpa_suite/validate/string_validator.py,sha256=7eJVTCmzVwgM513NqAAjqvo9iqHmsWQ-6LQ8-oOh_0s,5344
29
- rpa_suite-1.0.1.dist-info/LICENSE,sha256=5D8PIbs31iGd9i1_MDNg4SzaQnp9sEIULALh2y3WyMI,1102
30
- rpa_suite-1.0.1.dist-info/METADATA,sha256=pvVGsAISURiGv805OPLQKushyBWds5s3w9zl0fUCo5E,6604
31
- rpa_suite-1.0.1.dist-info/WHEEL,sha256=Xo9-1PvkuimrydujYJAjF7pCkriuXBpUPEjma1nZyJ0,92
32
- rpa_suite-1.0.1.dist-info/top_level.txt,sha256=HYkDtg-kJNAr3F2XAIPyJ-QBbNhk7q6jrqsFt10lz4Y,10
33
- rpa_suite-1.0.1.dist-info/RECORD,,