statezero 0.1.0b1__tar.gz → 0.1.0b3__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 statezero might be problematic. Click here for more details.
- {statezero-0.1.0b1 → statezero-0.1.0b3}/PKG-INFO +11 -9
- {statezero-0.1.0b1 → statezero-0.1.0b3}/README.md +9 -7
- {statezero-0.1.0b1 → statezero-0.1.0b3}/pyproject.toml +3 -3
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/orm.py +6 -6
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero.egg-info/PKG-INFO +11 -9
- {statezero-0.1.0b1 → statezero-0.1.0b3}/license.md +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/requirements.txt +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/setup.cfg +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/__init__.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/__init__.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/__init__.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/apps.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/config.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/context_manager.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/event_emitters.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/exception_handler.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/extensions/__init__.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/extensions/custom_field_serializers/__init__.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/extensions/custom_field_serializers/file_fields.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/extensions/custom_field_serializers/money_field.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/f_handler.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/helpers.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/middleware.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/migrations/0001_initial.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/migrations/0002_delete_modelviewsubscription.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/migrations/__init__.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/permissions.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/query_optimizer.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/schemas.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/search_providers/__init__.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/search_providers/basic_search.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/search_providers/postgres_search.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/serializers.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/urls.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/views.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/__init__.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/ast_parser.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/ast_validator.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/classes.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/config.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/context_storage.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/event_bus.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/event_emitters.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/exceptions.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/interfaces.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/process_request.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/core/types.py +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero.egg-info/SOURCES.txt +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero.egg-info/dependency_links.txt +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero.egg-info/requires.txt +0 -0
- {statezero-0.1.0b1 → statezero-0.1.0b3}/statezero.egg-info/top_level.txt +0 -0
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: statezero
|
|
3
|
-
Version: 0.1.
|
|
4
|
-
Summary:
|
|
5
|
-
Author-email: Robert
|
|
3
|
+
Version: 0.1.0b3
|
|
4
|
+
Summary: Connect your Python backend to a modern JavaScript SPA frontend with 90% less complexity.
|
|
5
|
+
Author-email: Robert <robert.herring@statezero.dev>
|
|
6
6
|
Project-URL: homepage, https://www.statezero.dev
|
|
7
7
|
Project-URL: repository, https://github.com/state-zero/statezero
|
|
8
8
|
Requires-Python: >=3.10
|
|
@@ -209,14 +209,14 @@ const workTodos = Todo.objects.filter({
|
|
|
209
209
|
### Backend
|
|
210
210
|
|
|
211
211
|
```bash
|
|
212
|
-
pip install
|
|
212
|
+
pip install statezero
|
|
213
213
|
pip install django-cors-headers pusher
|
|
214
214
|
```
|
|
215
215
|
|
|
216
216
|
### Frontend
|
|
217
217
|
|
|
218
218
|
```bash
|
|
219
|
-
npm
|
|
219
|
+
npm i @statezero/core
|
|
220
220
|
```
|
|
221
221
|
|
|
222
222
|
### Generate TypeScript Models
|
|
@@ -235,6 +235,12 @@ npx statezero sync-models
|
|
|
235
235
|
|
|
236
236
|
**🆚 Traditional REST APIs:** Write 90% less boilerplate. Focus on features, not data plumbing.
|
|
237
237
|
|
|
238
|
+
## Get Started
|
|
239
|
+
|
|
240
|
+
Check out the docs at [Statezero Docs](https://statezero.dev)
|
|
241
|
+
|
|
242
|
+
Run `pip install statezero` and `npm i @statezero/core` to begin.
|
|
243
|
+
|
|
238
244
|
## Pricing
|
|
239
245
|
|
|
240
246
|
StateZero uses a no-rugpull license model:
|
|
@@ -246,7 +252,3 @@ StateZero uses a no-rugpull license model:
|
|
|
246
252
|
- **$1,000/month** for companies with revenue above $100M
|
|
247
253
|
|
|
248
254
|
Lock in your rate forever by signing up early. We can't change your fee or cancel your license.
|
|
249
|
-
|
|
250
|
-
## Get Started
|
|
251
|
-
|
|
252
|
-
Run `pip install git+https://github.com/state-zero/statezero` and `npm install https://github.com/state-zero/statezero-client` to begin.
|
|
@@ -179,14 +179,14 @@ const workTodos = Todo.objects.filter({
|
|
|
179
179
|
### Backend
|
|
180
180
|
|
|
181
181
|
```bash
|
|
182
|
-
pip install
|
|
182
|
+
pip install statezero
|
|
183
183
|
pip install django-cors-headers pusher
|
|
184
184
|
```
|
|
185
185
|
|
|
186
186
|
### Frontend
|
|
187
187
|
|
|
188
188
|
```bash
|
|
189
|
-
npm
|
|
189
|
+
npm i @statezero/core
|
|
190
190
|
```
|
|
191
191
|
|
|
192
192
|
### Generate TypeScript Models
|
|
@@ -205,6 +205,12 @@ npx statezero sync-models
|
|
|
205
205
|
|
|
206
206
|
**🆚 Traditional REST APIs:** Write 90% less boilerplate. Focus on features, not data plumbing.
|
|
207
207
|
|
|
208
|
+
## Get Started
|
|
209
|
+
|
|
210
|
+
Check out the docs at [Statezero Docs](https://statezero.dev)
|
|
211
|
+
|
|
212
|
+
Run `pip install statezero` and `npm i @statezero/core` to begin.
|
|
213
|
+
|
|
208
214
|
## Pricing
|
|
209
215
|
|
|
210
216
|
StateZero uses a no-rugpull license model:
|
|
@@ -215,8 +221,4 @@ StateZero uses a no-rugpull license model:
|
|
|
215
221
|
- **$500/month** for companies with revenue up to $100M
|
|
216
222
|
- **$1,000/month** for companies with revenue above $100M
|
|
217
223
|
|
|
218
|
-
Lock in your rate forever by signing up early. We can't change your fee or cancel your license.
|
|
219
|
-
|
|
220
|
-
## Get Started
|
|
221
|
-
|
|
222
|
-
Run `pip install git+https://github.com/state-zero/statezero` and `npm install https://github.com/state-zero/statezero-client` to begin.
|
|
224
|
+
Lock in your rate forever by signing up early. We can't change your fee or cancel your license.
|
|
@@ -4,12 +4,12 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "statezero"
|
|
7
|
-
version = "0.1.
|
|
8
|
-
description = "
|
|
7
|
+
version = "0.1.0b3"
|
|
8
|
+
description = "Connect your Python backend to a modern JavaScript SPA frontend with 90% less complexity."
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
license = { file = "LICENSE" }
|
|
11
11
|
authors = [
|
|
12
|
-
{ name = "Robert
|
|
12
|
+
{ name = "Robert", email = "robert.herring@statezero.dev" }
|
|
13
13
|
]
|
|
14
14
|
requires-python = ">=3.10"
|
|
15
15
|
dynamic = ["dependencies"]
|
|
@@ -681,17 +681,17 @@ class DjangoORMAdapter(AbstractORMProvider):
|
|
|
681
681
|
"""
|
|
682
682
|
offset = offset or 0
|
|
683
683
|
|
|
684
|
-
#
|
|
684
|
+
# FIXED: Perform bulk permission checks BEFORE slicing
|
|
685
|
+
if req is not None and permissions:
|
|
686
|
+
# Use the existing bulk permission check function on the unsliced queryset
|
|
687
|
+
check_bulk_permissions(req, self.queryset, ActionType.READ, permissions, self.model)
|
|
688
|
+
|
|
689
|
+
# THEN apply pagination/slicing
|
|
685
690
|
if limit is None:
|
|
686
691
|
qs = self.queryset[offset:]
|
|
687
692
|
else:
|
|
688
693
|
qs = self.queryset[offset : offset + limit]
|
|
689
694
|
|
|
690
|
-
# If permissions are provided, perform bulk permission checks
|
|
691
|
-
if req is not None and permissions:
|
|
692
|
-
# Use the existing bulk permission check function
|
|
693
|
-
check_bulk_permissions(req, qs, ActionType.READ, permissions, self.model)
|
|
694
|
-
|
|
695
695
|
return qs
|
|
696
696
|
|
|
697
697
|
def _build_conditions(self, conditions: dict) -> Q:
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: statezero
|
|
3
|
-
Version: 0.1.
|
|
4
|
-
Summary:
|
|
5
|
-
Author-email: Robert
|
|
3
|
+
Version: 0.1.0b3
|
|
4
|
+
Summary: Connect your Python backend to a modern JavaScript SPA frontend with 90% less complexity.
|
|
5
|
+
Author-email: Robert <robert.herring@statezero.dev>
|
|
6
6
|
Project-URL: homepage, https://www.statezero.dev
|
|
7
7
|
Project-URL: repository, https://github.com/state-zero/statezero
|
|
8
8
|
Requires-Python: >=3.10
|
|
@@ -209,14 +209,14 @@ const workTodos = Todo.objects.filter({
|
|
|
209
209
|
### Backend
|
|
210
210
|
|
|
211
211
|
```bash
|
|
212
|
-
pip install
|
|
212
|
+
pip install statezero
|
|
213
213
|
pip install django-cors-headers pusher
|
|
214
214
|
```
|
|
215
215
|
|
|
216
216
|
### Frontend
|
|
217
217
|
|
|
218
218
|
```bash
|
|
219
|
-
npm
|
|
219
|
+
npm i @statezero/core
|
|
220
220
|
```
|
|
221
221
|
|
|
222
222
|
### Generate TypeScript Models
|
|
@@ -235,6 +235,12 @@ npx statezero sync-models
|
|
|
235
235
|
|
|
236
236
|
**🆚 Traditional REST APIs:** Write 90% less boilerplate. Focus on features, not data plumbing.
|
|
237
237
|
|
|
238
|
+
## Get Started
|
|
239
|
+
|
|
240
|
+
Check out the docs at [Statezero Docs](https://statezero.dev)
|
|
241
|
+
|
|
242
|
+
Run `pip install statezero` and `npm i @statezero/core` to begin.
|
|
243
|
+
|
|
238
244
|
## Pricing
|
|
239
245
|
|
|
240
246
|
StateZero uses a no-rugpull license model:
|
|
@@ -246,7 +252,3 @@ StateZero uses a no-rugpull license model:
|
|
|
246
252
|
- **$1,000/month** for companies with revenue above $100M
|
|
247
253
|
|
|
248
254
|
Lock in your rate forever by signing up early. We can't change your fee or cancel your license.
|
|
249
|
-
|
|
250
|
-
## Get Started
|
|
251
|
-
|
|
252
|
-
Run `pip install git+https://github.com/state-zero/statezero` and `npm install https://github.com/state-zero/statezero-client` to begin.
|
|
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
|
{statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/migrations/0001_initial.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/search_providers/__init__.py
RENAMED
|
File without changes
|
{statezero-0.1.0b1 → statezero-0.1.0b3}/statezero/adaptors/django/search_providers/basic_search.py
RENAMED
|
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
|