brilliance-admin 0.44.13__tar.gz → 0.44.14__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.
Files changed (86) hide show
  1. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/PKG-INFO +2 -1
  2. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/table/category_table.py +6 -6
  3. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/table/fields/function_field.py +2 -2
  4. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/table/fields_schema.py +2 -2
  5. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin.egg-info/PKG-INFO +2 -1
  6. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin.egg-info/requires.txt +1 -0
  7. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/pyproject.toml +2 -1
  8. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/LICENSE +0 -0
  9. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/README.md +0 -0
  10. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/__init__.py +0 -0
  11. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/api/__init__.py +0 -0
  12. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/api/routers.py +0 -0
  13. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/api/utils.py +0 -0
  14. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/api/views/__init__.py +0 -0
  15. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/api/views/auth.py +0 -0
  16. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/api/views/autocomplete.py +0 -0
  17. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/api/views/dashboard.py +0 -0
  18. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/api/views/index.py +0 -0
  19. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/api/views/schema.py +0 -0
  20. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/api/views/settings.py +0 -0
  21. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/api/views/table.py +0 -0
  22. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/auth.py +0 -0
  23. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/docs.py +0 -0
  24. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/exceptions.py +0 -0
  25. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/__init__.py +0 -0
  26. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/__init__.py +0 -0
  27. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/auth.py +0 -0
  28. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/autocomplete.py +0 -0
  29. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/fields.py +0 -0
  30. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/fields_schema.py +0 -0
  31. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/table/__init__.py +0 -0
  32. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/table/base.py +0 -0
  33. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/table/create.py +0 -0
  34. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/table/delete.py +0 -0
  35. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/table/list.py +0 -0
  36. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/table/retrieve.py +0 -0
  37. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/integrations/sqlalchemy/table/update.py +0 -0
  38. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/locales/en.yml +0 -0
  39. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/locales/ru.yml +0 -0
  40. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/__init__.py +0 -0
  41. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/admin_schema.py +0 -0
  42. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/category.py +0 -0
  43. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/dashboard/__init__.py +0 -0
  44. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/dashboard/category_dashboard.py +0 -0
  45. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/table/__init__.py +0 -0
  46. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/table/admin_action.py +0 -0
  47. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/table/fields/__init__.py +0 -0
  48. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/table/fields/base.py +0 -0
  49. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/schema/table/table_models.py +0 -0
  50. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/index-B8JOx1Ps.css +0 -0
  51. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/index-COgQt_g1.js +0 -0
  52. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/materialdesignicons-webfont-CYDMK1kx.woff2 +0 -0
  53. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/materialdesignicons-webfont-CgCzGbLl.woff +0 -0
  54. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/materialdesignicons-webfont-D3kAzl71.ttf +0 -0
  55. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/materialdesignicons-webfont-DttUABo4.eot +0 -0
  56. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/dark-first/content.min.css +0 -0
  57. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/dark-first/skin.min.css +0 -0
  58. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/dark-slim/content.min.css +0 -0
  59. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/dark-slim/skin.min.css +0 -0
  60. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/img/example.png +0 -0
  61. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/img/tinymce.woff2 +0 -0
  62. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/lightgray/content.min.css +0 -0
  63. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/lightgray/fonts/tinymce.woff +0 -0
  64. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/lightgray/skin.min.css +0 -0
  65. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/plugins/accordion/css/accordion.css +0 -0
  66. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/plugins/accordion/plugin.js +0 -0
  67. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/plugins/codesample/css/prism.css +0 -0
  68. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/plugins/customLink/css/link.css +0 -0
  69. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/plugins/customLink/plugin.js +0 -0
  70. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/tinymce/tinymce.min.js +0 -0
  71. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/static/vanilla-picker-B6E6ObS_.js +0 -0
  72. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/templates/index.html +0 -0
  73. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/translations.py +0 -0
  74. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin/utils.py +0 -0
  75. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin.egg-info/SOURCES.txt +0 -0
  76. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin.egg-info/dependency_links.txt +0 -0
  77. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/brilliance_admin.egg-info/top_level.txt +0 -0
  78. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/setup.cfg +0 -0
  79. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/tests/test_action.py +0 -0
  80. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/tests/test_payments_fields_schema.py +0 -0
  81. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/tests/test_settings.py +0 -0
  82. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/tests/test_sqlalcmeny_auth.py +0 -0
  83. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/tests/test_sqlalcmeny_crud.py +0 -0
  84. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/tests/test_sqlalcmeny_filters.py +0 -0
  85. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/tests/test_sqlalcmeny_schema.py +0 -0
  86. {brilliance_admin-0.44.13 → brilliance_admin-0.44.14}/tests/test_translations.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: brilliance-admin
3
- Version: 0.44.13
3
+ Version: 0.44.14
4
4
  Summary: Simple and lightweight data managment framework powered by FastAPI and Vue3 Vuetify all-in-one. Some call it heavenly in its brilliance.
5
5
  License-Expression: MIT
6
6
  Requires-Python: >=3.10
@@ -28,6 +28,7 @@ Requires-Dist: sqlalchemy>=2.0.41; extra == "tests"
28
28
  Requires-Dist: aiosqlite>=0.22.1; extra == "tests"
29
29
  Requires-Dist: factory-boy>=3.3.3; extra == "tests"
30
30
  Requires-Dist: pyjwt>=2.10.1; extra == "tests"
31
+ Requires-Dist: testcontainers>=4.14.1; extra == "tests"
31
32
  Provides-Extra: scalar
32
33
  Requires-Dist: scalar-fastapi>=1.5.0; extra == "scalar"
33
34
  Dynamic: license-file
@@ -1,6 +1,6 @@
1
1
  import abc
2
- import asyncio
3
2
  import copy
3
+ import inspect
4
4
  from typing import Awaitable, List
5
5
 
6
6
  from fastapi import HTTPException, Request
@@ -50,17 +50,17 @@ class CategoryTable(BaseCategory):
50
50
  return False
51
51
 
52
52
  fn = getattr(self, 'retrieve', None)
53
- return asyncio.iscoroutinefunction(fn)
53
+ return inspect.iscoroutinefunction(fn)
54
54
 
55
55
  @property
56
56
  def has_create(self):
57
57
  fn = getattr(self, 'create', None)
58
- return asyncio.iscoroutinefunction(fn)
58
+ return inspect.iscoroutinefunction(fn)
59
59
 
60
60
  @property
61
61
  def has_update(self):
62
62
  fn = getattr(self, 'update', None)
63
- return asyncio.iscoroutinefunction(fn)
63
+ return inspect.iscoroutinefunction(fn)
64
64
 
65
65
  def generate_schema(self, user, language_context: LanguageContext) -> dict:
66
66
  schema = super().generate_schema(user, language_context)
@@ -93,7 +93,7 @@ class CategoryTable(BaseCategory):
93
93
  continue
94
94
 
95
95
  attribute = getattr(self, attribute_name)
96
- if asyncio.iscoroutinefunction(attribute) and getattr(attribute, '__action__', False):
96
+ if inspect.iscoroutinefunction(attribute) and getattr(attribute, '__action__', False):
97
97
  action = copy.copy(attribute.action_info)
98
98
 
99
99
  action['title'] = language_context.get_text(action.get('title'))
@@ -116,7 +116,7 @@ class CategoryTable(BaseCategory):
116
116
 
117
117
  def _get_action_fn(self, action: str) -> Awaitable | None:
118
118
  attribute = getattr(self, action)
119
- if not asyncio.iscoroutinefunction(attribute) or not getattr(attribute, '__action__', False):
119
+ if not inspect.iscoroutinefunction(attribute) or not getattr(attribute, '__action__', False):
120
120
  return None
121
121
 
122
122
  return attribute
@@ -1,5 +1,5 @@
1
- import asyncio
2
1
  import functools
2
+ import inspect
3
3
  from typing import Any
4
4
 
5
5
  from pydantic.dataclasses import dataclass
@@ -45,7 +45,7 @@ class FunctionField(TableField):
45
45
  fn: Any = None
46
46
 
47
47
  def __post_init__(self):
48
- if not asyncio.iscoroutinefunction(self.fn):
48
+ if not inspect.iscoroutinefunction(self.fn):
49
49
  msg = f'{type(self).__name__}.fn {self.fn} must be coroutine function'
50
50
  raise AttributeError(msg)
51
51
 
@@ -1,4 +1,4 @@
1
- import asyncio
1
+ import inspect
2
2
  from typing import Any, ClassVar, Dict, List
3
3
 
4
4
  from pydantic_core import core_schema
@@ -186,7 +186,7 @@ class FieldsSchema:
186
186
 
187
187
  validate_method = getattr(self, f'validate_{field_slug}', None)
188
188
  if callable(validate_method):
189
- if not asyncio.iscoroutinefunction(validate_method):
189
+ if not inspect.iscoroutinefunction(validate_method):
190
190
  msg = f'Validate method {type(self).__name__}.{field_slug} must be async'
191
191
  raise AttributeError(msg)
192
192
  deserialized_value = await validate_method(value)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: brilliance-admin
3
- Version: 0.44.13
3
+ Version: 0.44.14
4
4
  Summary: Simple and lightweight data managment framework powered by FastAPI and Vue3 Vuetify all-in-one. Some call it heavenly in its brilliance.
5
5
  License-Expression: MIT
6
6
  Requires-Python: >=3.10
@@ -28,6 +28,7 @@ Requires-Dist: sqlalchemy>=2.0.41; extra == "tests"
28
28
  Requires-Dist: aiosqlite>=0.22.1; extra == "tests"
29
29
  Requires-Dist: factory-boy>=3.3.3; extra == "tests"
30
30
  Requires-Dist: pyjwt>=2.10.1; extra == "tests"
31
+ Requires-Dist: testcontainers>=4.14.1; extra == "tests"
31
32
  Provides-Extra: scalar
32
33
  Requires-Dist: scalar-fastapi>=1.5.0; extra == "scalar"
33
34
  Dynamic: license-file
@@ -25,3 +25,4 @@ sqlalchemy>=2.0.41
25
25
  aiosqlite>=0.22.1
26
26
  factory-boy>=3.3.3
27
27
  pyjwt>=2.10.1
28
+ testcontainers>=4.14.1
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "brilliance-admin"
3
- version = "0.44.13"
3
+ version = "0.44.14"
4
4
  description = 'Simple and lightweight data managment framework powered by FastAPI and Vue3 Vuetify all-in-one. Some call it heavenly in its brilliance.'
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -46,6 +46,7 @@ tests = [
46
46
  "aiosqlite>=0.22.1",
47
47
  "factory-boy>=3.3.3",
48
48
  "pyjwt>=2.10.1",
49
+ "testcontainers>=4.14.1",
49
50
  ]
50
51
  scalar = [
51
52
  "scalar-fastapi>=1.5.0",