@almadar/core 10.36.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,5 +1,5 @@
1
1
  import './effect-Cd6ibbZc.js';
2
- export { i as ComposeBehaviorsInput, j as ComposeBehaviorsResult, c7 as ComposeConnection, c8 as ComposePage, a6 as EventWiringEntry, aq as LayoutStrategy, c9 as MakeAtomOrbitalOpts, ca as MakeAtomOrbitalTraitOverrides, cb as MakeEntityOpts, cc as MakeLayoutTraitOpts, cd as MakeOrbitalWithUsesOpts, ce as MakePageOpts, cf as MakePageRefOpts, cg as MakePageRefOptsTyped, M as MakeTraitRefOpts, ch as MakeTraitRefOptsTyped, bS as applyEventWiring, ci as applyTraitConfigOverrides, cj as compose, bT as composeBehaviors, ck as connect, bU as detectLayoutStrategy, cl as ensureIdField, cm as extractTrait, cn as makeAtomOrbital, co as makeEntity, cp as makeLayoutTrait, cq as makeOrbital, cr as makeOrbitalWithUses, cs as makePage, ct as makePageRef, cu as makeRenderUI, cv as makeSchema, cw as makeSlot, cx as makeTraitRef, cy as mergeLedgers, cz as mergeOrbitals, cA as pipe, cB as plural, cC as wire } from './builders-CBL9rED-.js';
3
- import './trait-X5mQAMtW.js';
2
+ export { i as ComposeBehaviorsInput, j as ComposeBehaviorsResult, c7 as ComposeConnection, c8 as ComposePage, a6 as EventWiringEntry, aq as LayoutStrategy, c9 as MakeAtomOrbitalOpts, ca as MakeAtomOrbitalTraitOverrides, cb as MakeEntityOpts, cc as MakeLayoutTraitOpts, cd as MakeOrbitalWithUsesOpts, ce as MakePageOpts, cf as MakePageRefOpts, cg as MakePageRefOptsTyped, M as MakeTraitRefOpts, ch as MakeTraitRefOptsTyped, bS as applyEventWiring, ci as applyTraitConfigOverrides, cj as compose, bT as composeBehaviors, ck as connect, bU as detectLayoutStrategy, cl as ensureIdField, cm as extractTrait, cn as makeAtomOrbital, co as makeEntity, cp as makeLayoutTrait, cq as makeOrbital, cr as makeOrbitalWithUses, cs as makePage, ct as makePageRef, cu as makeRenderUI, cv as makeSchema, cw as makeSlot, cx as makeTraitRef, cy as mergeLedgers, cz as mergeOrbitals, cA as pipe, cB as plural, cC as wire } from './builders-CBdyt_gd.js';
3
+ import './trait-CEO7o8Ne.js';
4
4
  import './expression-DpAj1RzP.js';
5
5
  import 'zod';
package/dist/builders.js CHANGED
@@ -521,11 +521,20 @@ var TraitDataEntitySchema = z.object({
521
521
  singleton: z.boolean().optional(),
522
522
  pages: z.array(z.string()).optional()
523
523
  });
524
+ var DURATION_INTERVAL = /^\d+(ms|s|m|h|d)$/;
525
+ var CRON_INTERVAL = /^\S+(\s+\S+){4}$/;
526
+ var TickIntervalSchema = z.union([
527
+ z.literal("frame"),
528
+ z.number().positive(),
529
+ z.string().refine((v) => DURATION_INTERVAL.test(v) || CRON_INTERVAL.test(v), {
530
+ 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 * * *")'
531
+ })
532
+ ]);
524
533
  var TraitTickSchema = z.object({
525
534
  name: z.string().min(1),
526
535
  description: z.string().optional(),
527
536
  priority: z.number().optional(),
528
- interval: z.union([z.literal("frame"), z.number().positive()]),
537
+ interval: TickIntervalSchema,
529
538
  appliesTo: z.array(z.string()).optional(),
530
539
  pages: z.array(z.string()).optional(),
531
540
  pageIds: z.array(PageIdSchema).optional(),