@venizia/ignis-docs 0.2.0 → 0.2.1-0
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.
- package/README.md +14 -14
- package/content/best-practices/api-usage-examples.md +39 -19
- package/content/best-practices/architectural-patterns.md +22 -11
- package/content/best-practices/architecture-decisions.md +29 -16
- package/content/best-practices/code-style-standards/advanced-patterns.md +43 -31
- package/content/best-practices/code-style-standards/constants-configuration.md +19 -4
- package/content/best-practices/code-style-standards/control-flow.md +33 -1
- package/content/best-practices/code-style-standards/documentation.md +28 -8
- package/content/best-practices/code-style-standards/function-patterns.md +15 -4
- package/content/best-practices/code-style-standards/index.md +7 -2
- package/content/best-practices/code-style-standards/naming-conventions.md +26 -2
- package/content/best-practices/code-style-standards/route-definitions.md +9 -5
- package/content/best-practices/code-style-standards/tooling.md +14 -1
- package/content/best-practices/code-style-standards/type-safety.md +39 -6
- package/content/best-practices/common-pitfalls.md +59 -35
- package/content/best-practices/contribution-workflow.md +6 -2
- package/content/best-practices/data-modeling.md +78 -62
- package/content/best-practices/deployment-strategies.md +56 -19
- package/content/best-practices/error-handling.md +182 -93
- package/content/best-practices/index.md +6 -0
- package/content/best-practices/performance-optimization.md +26 -13
- package/content/best-practices/security-guidelines.md +35 -9
- package/content/best-practices/testing-strategies.md +7 -2
- package/content/best-practices/troubleshooting-tips.md +27 -17
- package/content/extensions/components/api-reference.md +107 -322
- package/content/extensions/components/authentication/api.md +454 -603
- package/content/extensions/components/authentication/errors.md +121 -498
- package/content/extensions/components/authentication/index.md +88 -801
- package/content/extensions/components/authentication/usage.md +207 -956
- package/content/extensions/components/authorization/api.md +736 -656
- package/content/extensions/components/authorization/errors.md +168 -206
- package/content/extensions/components/authorization/index.md +82 -797
- package/content/extensions/components/authorization/usage.md +194 -527
- package/content/extensions/components/health-check.md +71 -243
- package/content/extensions/components/mail/api.md +504 -287
- package/content/extensions/components/mail/errors.md +73 -61
- package/content/extensions/components/mail/index.md +96 -467
- package/content/extensions/components/mail/usage.md +130 -172
- package/content/extensions/components/request-tracker.md +66 -173
- package/content/extensions/components/socket-io/api.md +195 -13
- package/content/extensions/components/socket-io/errors.md +3 -3
- package/content/extensions/components/socket-io/index.md +50 -337
- package/content/extensions/components/socket-io/usage.md +143 -26
- package/content/extensions/components/static-asset/api.md +410 -142
- package/content/extensions/components/static-asset/errors.md +110 -53
- package/content/extensions/components/static-asset/index.md +79 -608
- package/content/extensions/components/static-asset/usage.md +180 -300
- package/content/extensions/components/websocket/api.md +275 -399
- package/content/extensions/components/websocket/errors.md +47 -56
- package/content/extensions/components/websocket/index.md +74 -407
- package/content/extensions/components/websocket/usage.md +110 -341
- package/content/extensions/helpers/cron/index.md +51 -160
- package/content/extensions/helpers/crypto/index.md +62 -483
- package/content/extensions/helpers/crypto/reference.md +456 -0
- package/content/extensions/helpers/env/index.md +60 -178
- package/content/extensions/helpers/error/index.md +221 -207
- package/content/extensions/helpers/inversion/index.md +65 -556
- package/content/extensions/helpers/inversion/reference.md +522 -0
- package/content/extensions/helpers/kafka/admin.md +20 -1
- package/content/extensions/helpers/kafka/compile-binary.md +41 -35
- package/content/extensions/helpers/kafka/consumer.md +54 -20
- package/content/extensions/helpers/kafka/examples.md +21 -16
- package/content/extensions/helpers/kafka/index.md +80 -610
- package/content/extensions/helpers/kafka/producer.md +134 -5
- package/content/extensions/helpers/kafka/schema-registry.md +45 -70
- package/content/extensions/helpers/logger/hf-logger.md +193 -0
- package/content/extensions/helpers/logger/index.md +64 -563
- package/content/extensions/helpers/logger/pino.md +85 -0
- package/content/extensions/helpers/logger/reference.md +746 -0
- package/content/extensions/helpers/network/api.md +241 -195
- package/content/extensions/helpers/network/index.md +72 -530
- package/content/extensions/helpers/queue/index.md +72 -900
- package/content/extensions/helpers/queue/reference.md +467 -0
- package/content/extensions/helpers/redis/index.md +73 -645
- package/content/extensions/helpers/redis/reference.md +727 -0
- package/content/extensions/helpers/secrets/index.md +66 -0
- package/content/extensions/helpers/socket-io/api.md +305 -203
- package/content/extensions/helpers/socket-io/index.md +66 -432
- package/content/extensions/helpers/storage/api.md +564 -462
- package/content/extensions/helpers/storage/index.md +77 -573
- package/content/extensions/helpers/types/index.md +66 -499
- package/content/extensions/helpers/types/reference.md +650 -0
- package/content/extensions/helpers/uid/index.md +58 -227
- package/content/extensions/helpers/websocket/api.md +329 -216
- package/content/extensions/helpers/websocket/index.md +65 -503
- package/content/extensions/helpers/worker-thread/index.md +58 -396
- package/content/extensions/helpers/worker-thread/reference.md +428 -0
- package/content/guides/core-concepts/persistent/models.md +1 -1
- package/content/guides/core-concepts/persistent/search-typesense.md +3 -3
- package/content/guides/core-concepts/persistent/transactions.md +1 -1
- package/content/guides/core-concepts/secrets-vault.md +177 -0
- package/content/guides/core-concepts/services.md +1 -1
- package/content/guides/migrations/redis-helpers-migration.md +1 -1
- package/content/guides/migrations/unified-connectors-migration.md +2 -2
- package/content/guides/tutorials/ecommerce-api.md +3 -8
- package/content/references/base/application.md +1 -1
- package/content/references/base/connectors.md +79 -136
- package/content/references/base/datasources-reference.md +599 -0
- package/content/references/base/datasources.md +84 -444
- package/content/references/base/dependency-injection.md +17 -39
- package/content/references/base/filter-system/application-usage.md +69 -121
- package/content/references/base/filter-system/array-operators.md +12 -0
- package/content/references/base/filter-system/comparison-operators.md +12 -0
- package/content/references/base/filter-system/default-filter.md +136 -348
- package/content/references/base/filter-system/fields-order-pagination.md +38 -16
- package/content/references/base/filter-system/index.md +106 -257
- package/content/references/base/filter-system/json-filtering.md +12 -2
- package/content/references/base/filter-system/list-operators.md +16 -2
- package/content/references/base/filter-system/logical-operators.md +13 -0
- package/content/references/base/filter-system/null-operators.md +13 -0
- package/content/references/base/filter-system/pattern-matching.md +12 -0
- package/content/references/base/filter-system/quick-reference.md +11 -2
- package/content/references/base/filter-system/range-operators.md +12 -0
- package/content/references/base/filter-system/tips.md +70 -133
- package/content/references/base/filter-system/use-cases.md +156 -233
- package/content/references/base/middlewares.md +35 -21
- package/content/references/base/models-reference.md +886 -0
- package/content/references/base/models.md +80 -1452
- package/content/references/base/repositories/advanced.md +156 -192
- package/content/references/base/repositories/index.md +77 -650
- package/content/references/base/repositories/mixins.md +22 -18
- package/content/references/base/repositories/relations.md +123 -171
- package/content/references/base/repositories/soft-deletable.md +58 -56
- package/content/references/base/secrets.md +263 -0
- package/content/references/base/services.md +2 -2
- package/content/references/configuration/environment-variables.md +48 -4
- package/content/references/configuration/index.md +49 -31
- package/content/references/quick-reference.md +3 -16
- package/content/references/utilities/crypto.md +35 -76
- package/content/references/utilities/date.md +33 -73
- package/content/references/utilities/index.md +1 -1
- package/content/references/utilities/jsx-reference.md +298 -0
- package/content/references/utilities/jsx.md +82 -525
- package/content/references/utilities/module.md +29 -62
- package/content/references/utilities/parse.md +34 -64
- package/content/references/utilities/performance.md +33 -58
- package/content/references/utilities/promise.md +28 -62
- package/content/references/utilities/request.md +57 -218
- package/content/references/utilities/schema.md +43 -137
- package/content/references/utilities/statuses-reference.md +361 -0
- package/content/references/utilities/statuses.md +63 -667
- package/package.json +8 -8
|
@@ -7,8 +7,15 @@ lastUpdated: 2026-07-06
|
|
|
7
7
|
|
|
8
8
|
# Repository Mixins <Badge type="danger" text="removed" />
|
|
9
9
|
|
|
10
|
+
`FieldsVisibilityMixin` and `DefaultFilterMixin` were removed from IGNIS - this page is a tombstone documenting where their behavior lives now. For the current repository hierarchy, start with the [Repositories overview](/references/base/repositories/).
|
|
11
|
+
|
|
12
|
+
**Files:**
|
|
13
|
+
|
|
14
|
+
- [`packages/core/src/base/repositories/core/abstract.ts`](https://github.com/VENIZIA-AI/ignis/blob/main/packages/core/src/base/repositories/core/abstract.ts) - `AbstractRepository` - `hiddenFields`/`defaultWhere`/`defaultLimit` getters
|
|
15
|
+
- [`packages/core/src/connectors/postgres/repositories/core/base.ts`](https://github.com/VENIZIA-AI/ignis/blob/main/packages/core/src/connectors/postgres/repositories/core/base.ts) - `RelationalBaseRepository` (alias `PostgresBaseRepository`) - `getHiddenProperties`, `getVisibleProperties`, `getDefaultFilter`, `applyDefaultFilter`
|
|
16
|
+
|
|
10
17
|
> [!WARNING] Removed
|
|
11
|
-
> `FieldsVisibilityMixin` and `DefaultFilterMixin`
|
|
18
|
+
> `FieldsVisibilityMixin` and `DefaultFilterMixin` are no longer exported and must not be imported or composed in new code.
|
|
12
19
|
|
|
13
20
|
## What They Were
|
|
14
21
|
|
|
@@ -25,8 +32,6 @@ The functionality was not dropped - it was folded directly into the repository h
|
|
|
25
32
|
|
|
26
33
|
### Engine-neutral: `AbstractRepository`
|
|
27
34
|
|
|
28
|
-
**File:** `packages/core/src/base/repositories/core/abstract.ts`
|
|
29
|
-
|
|
30
35
|
`AbstractRepository` resolves `@model` settings by class (Reflect target) via `MetadataRegistry` and exposes them as protected getters, memoized after first access:
|
|
31
36
|
|
|
32
37
|
```typescript
|
|
@@ -36,9 +41,7 @@ protected get defaultWhere(): TWhere | undefined; // settings.defaultF
|
|
|
36
41
|
protected get defaultLimit(): number | undefined; // settings.defaultLimit
|
|
37
42
|
```
|
|
38
43
|
|
|
39
|
-
### PostgreSQL: `
|
|
40
|
-
|
|
41
|
-
**File:** `packages/core/src/connectors/postgres/repositories/core/base.ts`
|
|
44
|
+
### PostgreSQL: `RelationalBaseRepository`
|
|
42
45
|
|
|
43
46
|
Builds on those getters to implement SQL-level column exclusion and full-filter merging for Drizzle:
|
|
44
47
|
|
|
@@ -47,13 +50,13 @@ getHiddenProperties(): Set<string>; // memoized Set of hid
|
|
|
47
50
|
hasHiddenProperties(): boolean;
|
|
48
51
|
getVisibleProperties(): Record<string, any> | undefined; // memoized Drizzle column-selection map
|
|
49
52
|
|
|
50
|
-
getDefaultFilter(): TFilter | undefined; //
|
|
53
|
+
getDefaultFilter(): TFilter | undefined; // settings.defaultFilter
|
|
51
54
|
getDefaultLimit(): number | undefined;
|
|
52
55
|
hasDefaultFilter(): boolean;
|
|
53
56
|
applyDefaultFilter(opts: {
|
|
54
57
|
userFilter?: TFilter;
|
|
55
58
|
shouldSkipDefaultFilter?: boolean;
|
|
56
|
-
}): TFilter; // merges via
|
|
59
|
+
}): TFilter; // merges via queryDialect.mergeFilter
|
|
57
60
|
```
|
|
58
61
|
|
|
59
62
|
Hidden columns are excluded from `select()` and `returning()` calls at query time - the same SQL-level guarantee the mixins provided. The typesense connector implements its own equivalent natively since it is not Drizzle-aware.
|
|
@@ -62,12 +65,12 @@ Hidden columns are excluded from `select()` and `returning()` calls at query tim
|
|
|
62
65
|
|
|
63
66
|
| Old (mixin) | New |
|
|
64
67
|
|-------------|-----|
|
|
65
|
-
| `FieldsVisibilityMixin` -> `getHiddenProperties()` | `
|
|
66
|
-
| `FieldsVisibilityMixin` -> `getVisibleProperties()` | `
|
|
67
|
-
| `FieldsVisibilityMixin` -> `hasHiddenProperties()` | `
|
|
68
|
-
| `DefaultFilterMixin` -> `getDefaultFilter()` | `
|
|
69
|
-
| `DefaultFilterMixin` -> `hasDefaultFilter()` | `
|
|
70
|
-
| `DefaultFilterMixin` -> `applyDefaultFilter()` | `
|
|
68
|
+
| `FieldsVisibilityMixin` -> `getHiddenProperties()` | `RelationalBaseRepository.getHiddenProperties()` |
|
|
69
|
+
| `FieldsVisibilityMixin` -> `getVisibleProperties()` | `RelationalBaseRepository.getVisibleProperties()` |
|
|
70
|
+
| `FieldsVisibilityMixin` -> `hasHiddenProperties()` | `RelationalBaseRepository.hasHiddenProperties()` |
|
|
71
|
+
| `DefaultFilterMixin` -> `getDefaultFilter()` | `RelationalBaseRepository.getDefaultFilter()` |
|
|
72
|
+
| `DefaultFilterMixin` -> `hasDefaultFilter()` | `RelationalBaseRepository.hasDefaultFilter()` |
|
|
73
|
+
| `DefaultFilterMixin` -> `applyDefaultFilter()` | `RelationalBaseRepository.applyDefaultFilter()` |
|
|
71
74
|
|
|
72
75
|
If you extended `DefaultCRUDRepository` (or any class in the PostgreSQL hierarchy), no change is needed - these methods have always been available on your repository instances; only the internal composition changed.
|
|
73
76
|
|
|
@@ -92,8 +95,9 @@ export class ProductRepository extends AuditLogMixin(
|
|
|
92
95
|
) {}
|
|
93
96
|
```
|
|
94
97
|
|
|
95
|
-
## See
|
|
98
|
+
## See also
|
|
96
99
|
|
|
97
|
-
- [
|
|
98
|
-
- [Advanced Features](./advanced
|
|
99
|
-
- [
|
|
100
|
+
- [Repositories overview](/references/base/repositories/) - CRUD basics, common tasks
|
|
101
|
+
- [Advanced Features](./advanced) - hidden properties and default-filter bypass in practice
|
|
102
|
+
- [SoftDeletableRepository](./soft-deletable) - concrete default-filter usage (soft delete)
|
|
103
|
+
- [Default Filter](/references/base/filter-system/default-filter) - configuring `@model` default filters
|