slthcore 0.5.2__tar.gz → 0.5.3__tar.gz

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.

Potentially problematic release.


This version of slthcore might be problematic. Click here for more details.

Files changed (127) hide show
  1. {slthcore-0.5.2 → slthcore-0.5.3}/PKG-INFO +1 -1
  2. {slthcore-0.5.2 → slthcore-0.5.3}/setup.py +1 -1
  3. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/__init__.py +2 -2
  4. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/auth.py +6 -3
  5. {slthcore-0.5.2 → slthcore-0.5.3}/slth/models.py +2 -2
  6. {slthcore-0.5.2 → slthcore-0.5.3}/slth/oauth.py +4 -5
  7. {slthcore-0.5.2 → slthcore-0.5.3}/slth/serializer.py +2 -2
  8. {slthcore-0.5.2 → slthcore-0.5.3}/slthcore.egg-info/PKG-INFO +1 -1
  9. {slthcore-0.5.2 → slthcore-0.5.3}/MANIFEST.in +0 -0
  10. {slthcore-0.5.2 → slthcore-0.5.3}/setup.cfg +0 -0
  11. {slthcore-0.5.2 → slthcore-0.5.3}/slth/__init__.py +0 -0
  12. {slthcore-0.5.2 → slthcore-0.5.3}/slth/application.py +0 -0
  13. {slthcore-0.5.2 → slthcore-0.5.3}/slth/apps.py +0 -0
  14. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/configure/__main__.py +0 -0
  15. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/__main__.py +0 -0
  16. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/__pycache__/__main__.cpython-312.pyc +0 -0
  17. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/.DS_Store +0 -0
  18. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/.gitignore +0 -0
  19. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/backend/api/__init__.py +0 -0
  20. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/backend/api/asgi.py +0 -0
  21. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/backend/api/endpoints/__init__.py +0 -0
  22. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/backend/api/models.py +0 -0
  23. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/backend/api/settings.py +0 -0
  24. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/backend/api/tests.py +0 -0
  25. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/backend/api/urls.py +0 -0
  26. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/backend/api/wsgi.py +0 -0
  27. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/backend/entrypoint.sh +0 -0
  28. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/backend/manage.py +0 -0
  29. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/backend/requirements.txt +0 -0
  30. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/base.env +0 -0
  31. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/docker-compose.yml +0 -0
  32. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/frontend/package.json +0 -0
  33. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/frontend/src/main.jsx +0 -0
  34. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/frontend/vite.config.js +0 -0
  35. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/local.env +0 -0
  36. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/run.sh +0 -0
  37. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/selenium/run.sh +0 -0
  38. {slthcore-0.5.2 → slthcore-0.5.3}/slth/cmd/init/boilerplate/test.sh +0 -0
  39. {slthcore-0.5.2 → slthcore-0.5.3}/slth/components.py +0 -0
  40. {slthcore-0.5.2 → slthcore-0.5.3}/slth/db/__init__.py +0 -0
  41. {slthcore-0.5.2 → slthcore-0.5.3}/slth/db/generic.py +0 -0
  42. {slthcore-0.5.2 → slthcore-0.5.3}/slth/db/models.py +0 -0
  43. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/deletion.py +0 -0
  44. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/dev.py +0 -0
  45. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/email.py +0 -0
  46. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/job.py +0 -0
  47. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/log.py +0 -0
  48. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/profile.py +0 -0
  49. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/pushsubscription.py +0 -0
  50. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/report.py +0 -0
  51. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/role.py +0 -0
  52. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/settings.py +0 -0
  53. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/task.py +0 -0
  54. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/timezone.py +0 -0
  55. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/user.py +0 -0
  56. {slthcore-0.5.2 → slthcore-0.5.3}/slth/endpoints/whatsappnotification.py +0 -0
  57. {slthcore-0.5.2 → slthcore-0.5.3}/slth/exceptions.py +0 -0
  58. {slthcore-0.5.2 → slthcore-0.5.3}/slth/factory.py +0 -0
  59. {slthcore-0.5.2 → slthcore-0.5.3}/slth/forms.py +0 -0
  60. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/__init__.py +0 -0
  61. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/deepseek/__init__.py +0 -0
  62. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/google/__init__.py +0 -0
  63. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/google/gemini.py +0 -0
  64. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/google/places.py +0 -0
  65. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/google/vision.py +0 -0
  66. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/justvoip/__init__.py +0 -0
  67. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/mercadopago/__init__.py +0 -0
  68. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/openai/__init__.py +0 -0
  69. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/openai/chatgpt.py +0 -0
  70. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/viacep/__init__.py +0 -0
  71. {slthcore-0.5.2 → slthcore-0.5.3}/slth/integrations/whatsapp/__init__.py +0 -0
  72. {slthcore-0.5.2 → slthcore-0.5.3}/slth/management/__init__.py +0 -0
  73. {slthcore-0.5.2 → slthcore-0.5.3}/slth/management/commands/__init__.py +0 -0
  74. {slthcore-0.5.2 → slthcore-0.5.3}/slth/management/commands/api.py +0 -0
  75. {slthcore-0.5.2 → slthcore-0.5.3}/slth/management/commands/integration_test.py +0 -0
  76. {slthcore-0.5.2 → slthcore-0.5.3}/slth/management/commands/sync.py +0 -0
  77. {slthcore-0.5.2 → slthcore-0.5.3}/slth/management/commands/worker.py +0 -0
  78. {slthcore-0.5.2 → slthcore-0.5.3}/slth/middleware/__init__.py +0 -0
  79. {slthcore-0.5.2 → slthcore-0.5.3}/slth/middleware/timezone.py +0 -0
  80. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0001_initial.py +0 -0
  81. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0002_email_role_pushsubscription_error.py +0 -0
  82. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0003_rename_photo_profile_alter_profile_options.py +0 -0
  83. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0004_alter_profile_photo.py +0 -0
  84. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0005_alter_profile_photo.py +0 -0
  85. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0006_user.py +0 -0
  86. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0007_deletion_log.py +0 -0
  87. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0008_alter_deletion_datetime_alter_log_datetime.py +0 -0
  88. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0009_remove_email_from_email_email_action_email_attempt_and_more.py +0 -0
  89. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0010_email_key_alter_email_action_alter_email_attempt_and_more.py +0 -0
  90. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0011_usertimezone.py +0 -0
  91. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0012_timezone_remove_usertimezone_key_and_more.py +0 -0
  92. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0013_whatsappnotification.py +0 -0
  93. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0014_settings.py +0 -0
  94. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/0015_auto_20250412_1126.py +0 -0
  95. {slthcore-0.5.2 → slthcore-0.5.3}/slth/migrations/__init__.py +0 -0
  96. {slthcore-0.5.2 → slthcore-0.5.3}/slth/notifications.py +0 -0
  97. {slthcore-0.5.2 → slthcore-0.5.3}/slth/pdf/__init__.py +0 -0
  98. {slthcore-0.5.2 → slthcore-0.5.3}/slth/pdf/tests.py +0 -0
  99. {slthcore-0.5.2 → slthcore-0.5.3}/slth/permissions.py +0 -0
  100. {slthcore-0.5.2 → slthcore-0.5.3}/slth/printer.py +0 -0
  101. {slthcore-0.5.2 → slthcore-0.5.3}/slth/queryset.py +0 -0
  102. {slthcore-0.5.2 → slthcore-0.5.3}/slth/roles.py +0 -0
  103. {slthcore-0.5.2 → slthcore-0.5.3}/slth/selenium/__init__.py +0 -0
  104. {slthcore-0.5.2 → slthcore-0.5.3}/slth/selenium/browser.py +0 -0
  105. {slthcore-0.5.2 → slthcore-0.5.3}/slth/static/.DS_Store +0 -0
  106. {slthcore-0.5.2 → slthcore-0.5.3}/slth/static/css/.DS_Store +0 -0
  107. {slthcore-0.5.2 → slthcore-0.5.3}/slth/static/css/slth.css +0 -0
  108. {slthcore-0.5.2 → slthcore-0.5.3}/slth/static/images/placeholder.png +0 -0
  109. {slthcore-0.5.2 → slthcore-0.5.3}/slth/static/js/index.min.js +0 -0
  110. {slthcore-0.5.2 → slthcore-0.5.3}/slth/static/js/react.min.js +0 -0
  111. {slthcore-0.5.2 → slthcore-0.5.3}/slth/static/js/slth.min.js +0 -0
  112. {slthcore-0.5.2 → slthcore-0.5.3}/slth/statistics.py +0 -0
  113. {slthcore-0.5.2 → slthcore-0.5.3}/slth/tasks.py +0 -0
  114. {slthcore-0.5.2 → slthcore-0.5.3}/slth/templates/email.html +0 -0
  115. {slthcore-0.5.2 → slthcore-0.5.3}/slth/templates/index.html +0 -0
  116. {slthcore-0.5.2 → slthcore-0.5.3}/slth/templates/report.html +0 -0
  117. {slthcore-0.5.2 → slthcore-0.5.3}/slth/templates/service-worker.js +0 -0
  118. {slthcore-0.5.2 → slthcore-0.5.3}/slth/templates/signature.html +0 -0
  119. {slthcore-0.5.2 → slthcore-0.5.3}/slth/tests.py +0 -0
  120. {slthcore-0.5.2 → slthcore-0.5.3}/slth/threadlocal.py +0 -0
  121. {slthcore-0.5.2 → slthcore-0.5.3}/slth/timezone.py +0 -0
  122. {slthcore-0.5.2 → slthcore-0.5.3}/slth/urls.py +0 -0
  123. {slthcore-0.5.2 → slthcore-0.5.3}/slth/utils.py +0 -0
  124. {slthcore-0.5.2 → slthcore-0.5.3}/slth/views.py +0 -0
  125. {slthcore-0.5.2 → slthcore-0.5.3}/slthcore.egg-info/SOURCES.txt +0 -0
  126. {slthcore-0.5.2 → slthcore-0.5.3}/slthcore.egg-info/dependency_links.txt +0 -0
  127. {slthcore-0.5.2 → slthcore-0.5.3}/slthcore.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: slthcore
3
- Version: 0.5.2
3
+ Version: 0.5.3
4
4
  Summary: API generator based on yml file
5
5
  Home-page: https://github.com/brenokcc
6
6
  Author: Breno Silva
@@ -4,7 +4,7 @@ install_requires = []
4
4
 
5
5
  setup(
6
6
  name='slthcore',
7
- version='0.5.2',
7
+ version='0.5.3',
8
8
  packages=find_packages(),
9
9
  install_requires=install_requires,
10
10
  include_package_data=True,
@@ -92,7 +92,7 @@ class Endpoint(metaclass=EnpointMetaclass):
92
92
  return self.formfactory().fields(*fields) if fields else {}
93
93
 
94
94
  def post(self):
95
- redirect = '.' if 'only' in self.request.GET else self.form._redirect
95
+ redirect = '.' if 'only' in self.request.GET else (self.form and self.form._redirect or None)
96
96
  return Response(message="Ação realizada com sucesso", redirect=redirect)
97
97
 
98
98
  def check_permission(self):
@@ -163,7 +163,7 @@ class Endpoint(metaclass=EnpointMetaclass):
163
163
  else:
164
164
  self.cleaned_data = self.form.submit()
165
165
  if self.form._message or self.form._redirect or self.form._dispose:
166
- redirect = '.' if 'only' in self.request.GET else self.form._redirect
166
+ redirect = '.' if 'only' in self.request.GET else (self.form and self.form._redirect or None)
167
167
  return Response(self.form._message, redirect, dispose=self.form._dispose)
168
168
  else:
169
169
  return self.post()
@@ -41,9 +41,12 @@ class Login(PublicEndpoint):
41
41
  def get(self):
42
42
  code = self.request.GET.get("code")
43
43
  if code:
44
- user = oauth.authenticate(code)
45
- if user:
46
- return login_response(user)
44
+ try:
45
+ user = oauth.authenticate(code)
46
+ if user:
47
+ return login_response(user)
48
+ except ValidationError:
49
+ self.redirect('/api/auth/login/')
47
50
  return self.formfactory().fields("username", "password")
48
51
 
49
52
  def post(self):
@@ -388,10 +388,10 @@ class WhatsappNotification(models.Model):
388
388
  verbose_name = 'Whatsapp Notification'
389
389
  verbose_name_plural = 'Whatsapp Notifications'
390
390
 
391
- objects = PushNotificationQuerySet()
391
+ objects = WhatsappNotificationQuerySet()
392
392
 
393
393
  def __str__(self):
394
- return f'Push Notification {self.title} to {self.to}'
394
+ return f'Whatsapp Notification {self.title} to {self.to}'
395
395
 
396
396
  def send(self, preview=False):
397
397
  self.attempt = self.attempt + 1
@@ -18,7 +18,7 @@ def authenticate(code):
18
18
  client_id=provider['client_id'], client_secret=client_secret
19
19
  )
20
20
  response = requests.post(provider['access_token_url'], data=access_token_request_data, verify=False)
21
- print(response.text)
21
+ # print(response.text)
22
22
  if response.status_code == 200:
23
23
  data = json.loads(response.text)
24
24
  headers = {
@@ -26,11 +26,10 @@ def authenticate(code):
26
26
  'x-api-key': client_secret
27
27
  }
28
28
  if provider.get('user_data_method', 'GET').upper() == 'POST':
29
- response = requests.post(provider['user_data_url'], data={'scope': data.get('scope')}, headers=headers)
29
+ response = requests.post(provider['user_data_url'], data={'scope': data.get('scope')}, headers=headers, verify=False)
30
30
  else:
31
- response = requests.get(provider['user_data_url'], data={'scope': data.get('scope')}, headers=headers)
32
- print(response.text)
33
- breakpoint()
31
+ response = requests.get(provider['user_data_url'], data={'scope': data.get('scope')}, headers=headers, verify=False)
32
+ # print(response.text)
34
33
  if response.status_code == 200:
35
34
  data = json.loads(response.text)
36
35
  username = data[provider['user_username']]
@@ -250,7 +250,7 @@ class Serializer:
250
250
  return self.request.user.is_superuser or not names or Role.objects.filter(username=self.request.user.username, name__in=names).exists()
251
251
 
252
252
  def to_dict(self, debug=False):
253
- base_url = absolute_url(self.request)
253
+ base_url = absolute_url(self.request).replace('?only=actions', '')
254
254
  if self.request is None and self.serializer:
255
255
  self.request = self.serializer.request
256
256
  if self.ignore_only:
@@ -378,7 +378,7 @@ class Serializer:
378
378
  data = serialize(returned)
379
379
  if lazy:
380
380
  data['title'] = endpoint.get_verbose_name()
381
- if isinstance(data, dict):
381
+ if isinstance(data, dict) and data.get('type') is None:
382
382
  data['url'] = absolute_url(self.request, 'only={}'.format('__'.join(path)))
383
383
  if leaf: raise JsonResponseException(data)
384
384
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: slthcore
3
- Version: 0.5.2
3
+ Version: 0.5.3
4
4
  Summary: API generator based on yml file
5
5
  Home-page: https://github.com/brenokcc
6
6
  Author: Breno Silva
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes