@almadar/core 10.45.0 → 10.47.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.
@@ -1970,6 +1970,22 @@ type OrbitalEntity = {
1970
1970
  update_policy?: SExpr;
1971
1971
  /** `@delete` — same binding shape as `@update`. */
1972
1972
  delete_policy?: SExpr;
1973
+ /**
1974
+ * `@<op> none "<reason>"` — a directive's omission, DECLARED.
1975
+ *
1976
+ * Runtime behaviour is identical to leaving the directive out (an absent
1977
+ * policy is allow-all). It records that the author concluded no per-row
1978
+ * predicate can express the rule — usually because visibility depends on a
1979
+ * DIFFERENT entity, which a per-row predicate cannot join across. Without
1980
+ * it a lint must flag considered and forgotten omissions alike, and a lint
1981
+ * that flags correct code is one people learn to ignore.
1982
+ */
1983
+ access_waivers?: {
1984
+ read?: string;
1985
+ create?: string;
1986
+ update?: string;
1987
+ delete?: string;
1988
+ };
1973
1989
  /** Collection name (auto-derived if not provided for persistent entities) */
1974
1990
  collection?: string;
1975
1991
  /** Entity fields */
@@ -1996,6 +2012,22 @@ declare const OrbitalEntitySchema: z.ZodObject<{
1996
2012
  create_policy: z.ZodOptional<z.ZodType<SExpr, z.ZodTypeDef, SExpr>>;
1997
2013
  update_policy: z.ZodOptional<z.ZodType<SExpr, z.ZodTypeDef, SExpr>>;
1998
2014
  delete_policy: z.ZodOptional<z.ZodType<SExpr, z.ZodTypeDef, SExpr>>;
2015
+ access_waivers: z.ZodOptional<z.ZodObject<{
2016
+ read: z.ZodOptional<z.ZodString>;
2017
+ create: z.ZodOptional<z.ZodString>;
2018
+ update: z.ZodOptional<z.ZodString>;
2019
+ delete: z.ZodOptional<z.ZodString>;
2020
+ }, "strip", z.ZodTypeAny, {
2021
+ read?: string | undefined;
2022
+ create?: string | undefined;
2023
+ update?: string | undefined;
2024
+ delete?: string | undefined;
2025
+ }, {
2026
+ read?: string | undefined;
2027
+ create?: string | undefined;
2028
+ update?: string | undefined;
2029
+ delete?: string | undefined;
2030
+ }>>;
1999
2031
  collection: z.ZodOptional<z.ZodString>;
2000
2032
  fields: z.ZodArray<z.ZodType<EntityField, z.ZodTypeDef, unknown>, "many">;
2001
2033
  instances: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>, "many">>;
@@ -2039,6 +2071,12 @@ declare const OrbitalEntitySchema: z.ZodObject<{
2039
2071
  create_policy?: SExpr | undefined;
2040
2072
  update_policy?: SExpr | undefined;
2041
2073
  delete_policy?: SExpr | undefined;
2074
+ access_waivers?: {
2075
+ read?: string | undefined;
2076
+ create?: string | undefined;
2077
+ update?: string | undefined;
2078
+ delete?: string | undefined;
2079
+ } | undefined;
2042
2080
  collection?: string | undefined;
2043
2081
  instances?: Record<string, JsonValue>[] | undefined;
2044
2082
  timestamps?: boolean | undefined;
@@ -2064,6 +2102,12 @@ declare const OrbitalEntitySchema: z.ZodObject<{
2064
2102
  create_policy?: SExpr | undefined;
2065
2103
  update_policy?: SExpr | undefined;
2066
2104
  delete_policy?: SExpr | undefined;
2105
+ access_waivers?: {
2106
+ read?: string | undefined;
2107
+ create?: string | undefined;
2108
+ update?: string | undefined;
2109
+ delete?: string | undefined;
2110
+ } | undefined;
2067
2111
  collection?: string | undefined;
2068
2112
  instances?: Record<string, JsonValue>[] | undefined;
2069
2113
  timestamps?: boolean | undefined;
@@ -2092,6 +2136,22 @@ declare const EntitySchema: z.ZodObject<{
2092
2136
  create_policy: z.ZodOptional<z.ZodType<SExpr, z.ZodTypeDef, SExpr>>;
2093
2137
  update_policy: z.ZodOptional<z.ZodType<SExpr, z.ZodTypeDef, SExpr>>;
2094
2138
  delete_policy: z.ZodOptional<z.ZodType<SExpr, z.ZodTypeDef, SExpr>>;
2139
+ access_waivers: z.ZodOptional<z.ZodObject<{
2140
+ read: z.ZodOptional<z.ZodString>;
2141
+ create: z.ZodOptional<z.ZodString>;
2142
+ update: z.ZodOptional<z.ZodString>;
2143
+ delete: z.ZodOptional<z.ZodString>;
2144
+ }, "strip", z.ZodTypeAny, {
2145
+ read?: string | undefined;
2146
+ create?: string | undefined;
2147
+ update?: string | undefined;
2148
+ delete?: string | undefined;
2149
+ }, {
2150
+ read?: string | undefined;
2151
+ create?: string | undefined;
2152
+ update?: string | undefined;
2153
+ delete?: string | undefined;
2154
+ }>>;
2095
2155
  collection: z.ZodOptional<z.ZodString>;
2096
2156
  fields: z.ZodArray<z.ZodType<EntityField, z.ZodTypeDef, unknown>, "many">;
2097
2157
  instances: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodType<JsonValue, z.ZodTypeDef, JsonValue>>, "many">>;
@@ -2135,6 +2195,12 @@ declare const EntitySchema: z.ZodObject<{
2135
2195
  create_policy?: SExpr | undefined;
2136
2196
  update_policy?: SExpr | undefined;
2137
2197
  delete_policy?: SExpr | undefined;
2198
+ access_waivers?: {
2199
+ read?: string | undefined;
2200
+ create?: string | undefined;
2201
+ update?: string | undefined;
2202
+ delete?: string | undefined;
2203
+ } | undefined;
2138
2204
  collection?: string | undefined;
2139
2205
  instances?: Record<string, JsonValue>[] | undefined;
2140
2206
  timestamps?: boolean | undefined;
@@ -2160,6 +2226,12 @@ declare const EntitySchema: z.ZodObject<{
2160
2226
  create_policy?: SExpr | undefined;
2161
2227
  update_policy?: SExpr | undefined;
2162
2228
  delete_policy?: SExpr | undefined;
2229
+ access_waivers?: {
2230
+ read?: string | undefined;
2231
+ create?: string | undefined;
2232
+ update?: string | undefined;
2233
+ delete?: string | undefined;
2234
+ } | undefined;
2163
2235
  collection?: string | undefined;
2164
2236
  instances?: Record<string, JsonValue>[] | undefined;
2165
2237
  timestamps?: boolean | undefined;
@@ -2290,7 +2362,7 @@ type EntityData = Record<string, EntityRow[]>;
2290
2362
  *
2291
2363
  * DO NOT EDIT MANUALLY — regenerated by almadar-pattern-sync `patterns` command.
2292
2364
  *
2293
- * Generated: 2026-07-30T11:18:58.990Z
2365
+ * Generated: 2026-07-31T07:15:08.340Z
2294
2366
  * Pattern count: 268
2295
2367
  */
2296
2368
 
@@ -2685,6 +2757,7 @@ interface PatternPropsMap {
2685
2757
  featureClickEvent?: string | SExpr;
2686
2758
  keyMap?: PatternPropValue | string | SExpr;
2687
2759
  keyUpMap?: PatternPropValue | string | SExpr;
2760
+ children?: unknown | string | SExpr;
2688
2761
  };
2689
2762
  'canvas-2d': {
2690
2763
  type: 'canvas-2d';
@@ -2708,6 +2781,7 @@ interface PatternPropsMap {
2708
2781
  followTarget?: PatternPropValue | string | SExpr;
2709
2782
  cameraPos?: PatternPropValue | string | SExpr;
2710
2783
  bgColor?: string | SExpr;
2784
+ children?: unknown | string | SExpr;
2711
2785
  };
2712
2786
  'card': {
2713
2787
  type: 'card';
@@ -3277,6 +3351,7 @@ interface PatternPropsMap {
3277
3351
  scale?: number | string | SExpr;
3278
3352
  rotate?: number | string | SExpr;
3279
3353
  opacity?: number | string | SExpr;
3354
+ clip?: string | SExpr;
3280
3355
  items: unknown[] | string | SExpr;
3281
3356
  };
3282
3357
  'draw-shape': {
@@ -3294,8 +3369,19 @@ interface PatternPropsMap {
3294
3369
  points?: unknown[] | string | SExpr;
3295
3370
  d?: string | SExpr;
3296
3371
  fill?: string | SExpr;
3372
+ gradient?: PatternPropValue | string | SExpr;
3373
+ fillPattern?: PatternPropValue | string | SExpr;
3297
3374
  stroke?: string | SExpr;
3298
3375
  strokeWidth?: number | string | SExpr;
3376
+ strokeGradient?: PatternPropValue | string | SExpr;
3377
+ strokeDash?: unknown[] | string | SExpr;
3378
+ strokeDashOffset?: number | string | SExpr;
3379
+ blendMode?: string | SExpr;
3380
+ blur?: number | string | SExpr;
3381
+ rotate?: number | string | SExpr;
3382
+ pivot?: PatternPropValue | string | SExpr;
3383
+ shadow?: PatternPropValue | string | SExpr;
3384
+ animation?: PatternPropValue | string | SExpr;
3299
3385
  opacity?: number | string | SExpr;
3300
3386
  };
3301
3387
  'draw-shape-layer': {
@@ -0,0 +1,33 @@
1
+ import { O as OrbitalSchema } from './schema-CGoLC-m6.js';
2
+ import { S as SExpr } from './expression-Yf7qvvOs.js';
3
+
4
+ /**
5
+ * Entity access policies — the declared `@read`/`@create`/`@update`/`@delete`
6
+ * directives, keyed by entity name.
7
+ *
8
+ * The JS mirror of `orbital-core/src/runtime/entity_access.rs`'s
9
+ * `EntityAccessPolicies`/`EntityAccessTable`. Both paths must agree: a
10
+ * directive is a per-row predicate (`@entity` = the candidate row, or for
11
+ * `@create` the incoming data; `@user` = the viewer), enforced once for
12
+ * every trait that touches the entity — the un-bypassable twin of a
13
+ * call-site `filter:`, which sibling traits can skip simply by not
14
+ * declaring one.
15
+ *
16
+ * @packageDocumentation
17
+ */
18
+
19
+ /** An entity's four declared directives. Any may be absent — an absent
20
+ * directive means "no restriction" for that operation, exactly like an
21
+ * absent fetch `filter:`. */
22
+ interface EntityAccessPolicies {
23
+ read?: SExpr;
24
+ create?: SExpr;
25
+ update?: SExpr;
26
+ delete?: SExpr;
27
+ }
28
+ /** Every entity's access policies, keyed by entity name. */
29
+ declare function entityAccessTable(schema: OrbitalSchema): Map<string, EntityAccessPolicies>;
30
+ /** One entity's access policies, or `undefined` when it declares none. */
31
+ declare function entityAccessPolicies(schema: OrbitalSchema, entityName: string): EntityAccessPolicies | undefined;
32
+
33
+ export { type EntityAccessPolicies as E, entityAccessTable as a, entityAccessPolicies as e };
@@ -1,7 +1,7 @@
1
- import { h as FactoryParamValue, c as FactoryConfigTier, b as FactoryConfigParam, F as FactoryCallSite, j as FactorySignature, R as RuleOverlay, p as RuleOverlayEntry, o as PresentationOverlay, T as TraitOverlay } from '../types-GAiRTtkp.js';
2
- export { a as FactoryCallSiteParams, d as FactoryEntitySignature, e as FactoryEventSignature, f as FactoryExposure, g as FactoryPageSignature, i as FactoryProvenance, k as FactorySignatureCatalog, l as FactorySignatureEntityField, m as FactoryTraitSignature, J as JsonSchema, n as JsonSchemaType, O as OwnershipOverlayEntry, P as PresentationNavItem, S as SchemaFieldType, q as TraitOverlayEntry, r as TraitOverlayListener } from '../types-GAiRTtkp.js';
3
- import { a as EntityPersistence, E as EntityField } from '../effect-BZ1nzN3q.js';
4
- import { a as TraitReference } from '../trait-1V3odk0y.js';
1
+ import { h as FactoryParamValue, c as FactoryConfigTier, b as FactoryConfigParam, F as FactoryCallSite, j as FactorySignature, R as RuleOverlay, p as RuleOverlayEntry, o as PresentationOverlay, T as TraitOverlay } from '../types-By96RdSM.js';
2
+ export { a as FactoryCallSiteParams, d as FactoryEntitySignature, e as FactoryEventSignature, f as FactoryExposure, g as FactoryPageSignature, i as FactoryProvenance, k as FactorySignatureCatalog, l as FactorySignatureEntityField, m as FactoryTraitSignature, J as JsonSchema, n as JsonSchemaType, O as OwnershipOverlayEntry, P as PresentationNavItem, S as SchemaFieldType, q as TraitOverlayEntry, r as TraitOverlayListener } from '../types-By96RdSM.js';
3
+ import { a as EntityPersistence, E as EntityField } from '../effect-BZDXo4bV.js';
4
+ import { a as TraitReference } from '../trait-1OkxYkAr.js';
5
5
  export { J as JsonValue } from '../expression-Yf7qvvOs.js';
6
6
  import 'zod';
7
7
 
@@ -1,6 +1,6 @@
1
- import { O as OrbitalSchema, a as OrbitalDefinition } from '../schema-CZNILCHD.js';
2
- import { h as CallSiteConfig, i as CallSiteConfigEntry, g as Trait } from '../trait-1V3odk0y.js';
3
- import { E as EntityField, a as EntityPersistence } from '../effect-BZ1nzN3q.js';
1
+ import { O as OrbitalSchema, a as OrbitalDefinition } from '../schema-CGoLC-m6.js';
2
+ import { h as CallSiteConfig, i as CallSiteConfigEntry, g as Trait } from '../trait-1OkxYkAr.js';
3
+ import { E as EntityField, a as EntityPersistence } from '../effect-BZDXo4bV.js';
4
4
  import { MakeTraitRefOpts } from '../builders.js';
5
5
  import '../expression-Yf7qvvOs.js';
6
6
  import 'zod';
@@ -372,6 +372,13 @@ var OrbitalEntitySchema = z.object({
372
372
  create_policy: SExprSchema.optional(),
373
373
  update_policy: SExprSchema.optional(),
374
374
  delete_policy: SExprSchema.optional(),
375
+ // Snake_case for the same cross-language reason as the four policies above.
376
+ access_waivers: z.object({
377
+ read: z.string().optional(),
378
+ create: z.string().optional(),
379
+ update: z.string().optional(),
380
+ delete: z.string().optional()
381
+ }).optional(),
375
382
  collection: z.string().optional(),
376
383
  fields: z.array(EntityFieldSchema).min(1, "At least one field is required"),
377
384
  instances: z.array(z.record(JsonValueSchema)).optional(),