@vxil/cli 0.20.1 → 0.20.2
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 +1 -1
- package/dist/_vxil-feature-configs-readmodels.d.ts +6 -2
- package/dist/vxil.js +155 -155
- package/package.json +3 -3
package/README.md
CHANGED
|
@@ -23,7 +23,7 @@ export default defineConfig({
|
|
|
23
23
|
features: {
|
|
24
24
|
auth: { enabled: true },
|
|
25
25
|
cms: { enabled: true, draftPublish: true },
|
|
26
|
-
notifications: { enabled: true, provider: 'resend', fromEmail: 'noreply@example.
|
|
26
|
+
notifications: { enabled: true, provider: 'resend', fromEmail: 'noreply@example.com' },
|
|
27
27
|
},
|
|
28
28
|
// (b) CMS schema-as-code — collections + fields, reconciled by `vxil push`
|
|
29
29
|
cms: {
|
|
@@ -37,10 +37,12 @@ interface CdcRuleLike {
|
|
|
37
37
|
export declare function validateCdcConfig(cdc: Record<string, CdcRuleLike> | undefined): string[];
|
|
38
38
|
/** What a payload:'full' change-data rule must know about its target
|
|
39
39
|
* collection's read gates. `readRoleFields`: fields with a non-empty
|
|
40
|
-
* `readRoles`; `endUserAccess`: the collection's end-user access mode
|
|
40
|
+
* `readRoles`; `endUserAccess`: the collection's end-user access mode;
|
|
41
|
+
* `ownerField`: the end-user owner-scope field (null/absent = none). */
|
|
41
42
|
export interface CdcCollectionGates {
|
|
42
43
|
readRoleFields?: readonly string[];
|
|
43
44
|
endUserAccess?: 'readwrite' | 'read' | 'none';
|
|
45
|
+
ownerField?: string | null;
|
|
44
46
|
}
|
|
45
47
|
/**
|
|
46
48
|
* A `payload: 'full'` change-data rule inlines the stored row into a realtime
|
|
@@ -48,7 +50,9 @@ export interface CdcCollectionGates {
|
|
|
48
50
|
* the read projection. So it must never target a collection whose reads are
|
|
49
51
|
* gated: a field with `readRoles` (the frame would carry the gated value), or
|
|
50
52
|
* an `endUserAccess` of 'read' / 'none' (the frame would bypass the
|
|
51
|
-
* collection's end-user gate)
|
|
53
|
+
* collection's end-user gate), or an `ownerField` (end users read only their
|
|
54
|
+
* own rows, but the frame would carry every user's row to every subscriber —
|
|
55
|
+
* CDC-FULL-OWNER-SCOPED). Pure; one problem line per offending ENABLED
|
|
52
56
|
* rule (an unknown collection is skipped). The safe shape is `payload: 'ids'`
|
|
53
57
|
* and a re-read through the cms, where every gate applies.
|
|
54
58
|
*/
|