@almadar/core 10.35.0 → 10.37.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.
@@ -1,8 +1,8 @@
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-DujRcijG.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-DujRcijG.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-1YGQKdbm.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-1YGQKdbm.js';
3
3
  import { a as EntityPersistence, E as EntityField } from '../effect-Cd6ibbZc.js';
4
4
  export { J as JsonValue } from '../effect-Cd6ibbZc.js';
5
- import { a as TraitReference } from '../trait-X5mQAMtW.js';
5
+ import { a as TraitReference } from '../trait-CEO7o8Ne.js';
6
6
  import 'zod';
7
7
  import '../expression-DpAj1RzP.js';
8
8
 
@@ -1,5 +1,5 @@
1
- import { O as OrbitalSchema, M as MakeTraitRefOpts, a as OrbitalDefinition } from '../builders-CBL9rED-.js';
2
- import { C as CallSiteConfig, b as CallSiteConfigEntry, c as Trait } from '../trait-X5mQAMtW.js';
1
+ import { O as OrbitalSchema, M as MakeTraitRefOpts, a as OrbitalDefinition } from '../builders-CBdyt_gd.js';
2
+ import { C as CallSiteConfig, b as CallSiteConfigEntry, c as Trait } from '../trait-CEO7o8Ne.js';
3
3
  import { E as EntityField, a as EntityPersistence } from '../effect-Cd6ibbZc.js';
4
4
  import 'zod';
5
5
  import '../expression-DpAj1RzP.js';
@@ -534,11 +534,20 @@ var TraitDataEntitySchema = z.object({
534
534
  singleton: z.boolean().optional(),
535
535
  pages: z.array(z.string()).optional()
536
536
  });
537
+ var DURATION_INTERVAL = /^\d+(ms|s|m|h|d)$/;
538
+ var CRON_INTERVAL = /^\S+(\s+\S+){4}$/;
539
+ var TickIntervalSchema = z.union([
540
+ z.literal("frame"),
541
+ z.number().positive(),
542
+ z.string().refine((v) => DURATION_INTERVAL.test(v) || CRON_INTERVAL.test(v), {
543
+ message: 'interval must be "frame", a positive number of milliseconds, a duration ("500ms"/"5s"/"1m"/"1h"/"1d"), or a 5-field cron expression ("0 9 * * *")'
544
+ })
545
+ ]);
537
546
  var TraitTickSchema = z.object({
538
547
  name: z.string().min(1),
539
548
  description: z.string().optional(),
540
549
  priority: z.number().optional(),
541
- interval: z.union([z.literal("frame"), z.number().positive()]),
550
+ interval: TickIntervalSchema,
542
551
  appliesTo: z.array(z.string()).optional(),
543
552
  pages: z.array(z.string()).optional(),
544
553
  pageIds: z.array(PageIdSchema).optional(),