@almadar/core 10.110.0 → 10.112.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.
Files changed (102) hide show
  1. package/dist/builders.d.ts +5 -5
  2. package/dist/builders.js +78 -9
  3. package/dist/builders.js.map +1 -1
  4. package/dist/{bus-CuAsuaHW.d.ts → bus-BZ9ekDiD.d.ts} +4 -2
  5. package/dist/{domain-Bf6sf9NR.d.ts → domain-DV8lmH3r.d.ts} +1857 -39
  6. package/dist/{effect-2JoKc8Zj.d.ts → effect-B9nMpTKN.d.ts} +27 -3
  7. package/dist/{entityAccess-CuKaSX0N.d.ts → entityAccess-Ak_ZvGXZ.d.ts} +3 -3
  8. package/dist/{expression-DhTTuu2W.d.ts → expression-Dz84kipC.d.ts} +4 -2
  9. package/dist/factory/index.d.ts +81 -7
  10. package/dist/factory/index.js +560 -16
  11. package/dist/factory/index.js.map +1 -1
  12. package/dist/factory-runtime/index.d.ts +5 -5
  13. package/dist/factory-runtime/index.js +78 -9
  14. package/dist/factory-runtime/index.js.map +1 -1
  15. package/dist/fixtures.d.ts +3 -3
  16. package/dist/fixtures.js +1 -1
  17. package/dist/fixtures.js.map +1 -1
  18. package/dist/i18n/index.js +36 -4
  19. package/dist/i18n/index.js.map +1 -1
  20. package/dist/{index-bC0n_h8G.d.ts → index-DmkUMeXz.d.ts} +79 -10
  21. package/dist/index.d.ts +71 -20
  22. package/dist/index.js +17101 -5233
  23. package/dist/index.js.map +1 -1
  24. package/dist/mock/index.d.ts +20 -7
  25. package/dist/mock/index.js +38 -11
  26. package/dist/mock/index.js.map +1 -1
  27. package/dist/patterns/component-mapping.json +1 -1
  28. package/dist/patterns/event-contracts.json +1 -1
  29. package/dist/patterns/index.d.ts +1042 -228
  30. package/dist/patterns/index.js +392 -13
  31. package/dist/patterns/index.js.map +1 -1
  32. package/dist/patterns/patterns-registry.json +382 -10
  33. package/dist/patterns/registry.json +382 -10
  34. package/dist/{schema-DqBoP7Ab.d.ts → schema-C-HLTS_Q.d.ts} +2969 -44
  35. package/dist/state-machine/index.d.ts +1 -1
  36. package/dist/state-machine/index.js +32 -7
  37. package/dist/state-machine/index.js.map +1 -1
  38. package/dist/themes/index.d.ts +1 -1
  39. package/dist/themes/index.js +16303 -5151
  40. package/dist/themes/index.js.map +1 -1
  41. package/dist/{trait-S5uhI089.d.ts → trait-CRgDZSy_.d.ts} +10 -2
  42. package/dist/types/index.d.ts +8 -8
  43. package/dist/types/index.js +115 -10
  44. package/dist/types/index.js.map +1 -1
  45. package/dist/{types-2uS2WfIo.d.ts → types-C3nlpTDW.d.ts} +2 -2
  46. package/package.json +1 -1
  47. package/themes/almadar-website.json +7 -0
  48. package/themes/almadar.json +16 -4
  49. package/themes/aqua.json +420 -0
  50. package/themes/arabesque.json +512 -0
  51. package/themes/art-deco.json +340 -0
  52. package/themes/art-nouveau.json +340 -0
  53. package/themes/atelier.json +43 -187
  54. package/themes/bauhaus.json +330 -0
  55. package/themes/bloomberg-dense.json +69 -213
  56. package/themes/blueprint.json +330 -0
  57. package/themes/clay.json +53 -188
  58. package/themes/comic.json +107 -146
  59. package/themes/constructivist.json +340 -0
  60. package/themes/corporate.json +62 -197
  61. package/themes/cyberpunk.json +418 -0
  62. package/themes/frutiger-aero.json +422 -0
  63. package/themes/game-adventure.json +46 -21
  64. package/themes/game-rpg.json +48 -22
  65. package/themes/game-sci-fi.json +47 -21
  66. package/themes/game-ui-pack.json +39 -17
  67. package/themes/gazette.json +50 -194
  68. package/themes/glass.json +78 -201
  69. package/themes/gothic.json +329 -0
  70. package/themes/ink-wash.json +512 -0
  71. package/themes/kawaii.json +512 -0
  72. package/themes/kiosk.json +70 -200
  73. package/themes/linear-clean.json +67 -202
  74. package/themes/luxury.json +322 -0
  75. package/themes/mac-classic.json +330 -0
  76. package/themes/material.json +328 -0
  77. package/themes/memphis.json +337 -0
  78. package/themes/mid-century.json +338 -0
  79. package/themes/minimalist.json +60 -204
  80. package/themes/mudcloth.json +512 -0
  81. package/themes/neon.json +51 -212
  82. package/themes/neumorphic.json +322 -0
  83. package/themes/newsprint.json +330 -0
  84. package/themes/notion-editorial.json +51 -186
  85. package/themes/pixel.json +321 -0
  86. package/themes/prism.json +66 -69
  87. package/themes/retro.json +126 -165
  88. package/themes/risograph.json +325 -0
  89. package/themes/scandi.json +512 -0
  90. package/themes/sketch.json +330 -0
  91. package/themes/solarpunk.json +512 -0
  92. package/themes/steampunk.json +327 -0
  93. package/themes/swiss.json +338 -0
  94. package/themes/terminal.json +86 -156
  95. package/themes/trait-wars.json +143 -184
  96. package/themes/ukiyo-e.json +512 -0
  97. package/themes/vaporwave.json +420 -0
  98. package/themes/victorian.json +337 -0
  99. package/themes/wabi-sabi.json +512 -0
  100. package/themes/win95.json +324 -0
  101. package/themes/wireframe.json +44 -179
  102. package/themes/zine.json +330 -0
@@ -1,10 +1,10 @@
1
- import { I as IdentityLedger, A as AnyPatternConfig, U as UISlot, c as Effect, l as RenderBinding, m as RenderUIEffect, e as EntityId, f as Entity, E as EntityField, a as EntityPersistence, g as EntityRow } from './effect-2JoKc8Zj.js';
2
- import { a as OrbitalDefinition, O as OrbitalSchema, U as UseDeclaration, E as EntityRef, b as ExpectDeclaration, P as PageRef, c as Page, d as PageRefObject } from './schema-DqBoP7Ab.js';
3
- import { b as TraitConfig, h as Trait, T as TraitEventListener, i as CallSiteConfig, k as TraitEventContract, d as TraitRef, a as TraitReference } from './trait-S5uhI089.js';
4
- import { S as SExpr } from './expression-DhTTuu2W.js';
1
+ import { I as IdentityLedger, A as AnyPatternConfig, U as UISlot, c as Effect, l as RenderBinding, m as RenderUIEffect, e as EntityId, f as Entity, E as EntityField, a as EntityPersistence, g as EntityRow } from './effect-B9nMpTKN.js';
2
+ import { a as OrbitalDefinition, O as OrbitalSchema, U as UseDeclaration, E as EntityRef, b as ExpectDeclaration, P as PageRef, c as Page, d as PageRefObject } from './schema-C-HLTS_Q.js';
3
+ import { b as TraitConfig, h as Trait, T as TraitEventListener, i as CallSiteConfig, k as TraitEventContract, d as TraitRef, a as TraitReference } from './trait-CRgDZSy_.js';
4
+ import { S as SExpr } from './expression-Dz84kipC.js';
5
5
  import 'zod';
6
6
  import './json-D8gmyK3l.js';
7
- import './domain-Bf6sf9NR.js';
7
+ import './domain-DV8lmH3r.js';
8
8
 
9
9
  /**
10
10
  * Event Wiring
package/dist/builders.js CHANGED
@@ -408,7 +408,7 @@ var SExprAtomSchema = z.union([
408
408
  var SExprSchema = z.lazy(
409
409
  () => z.union([
410
410
  SExprAtomSchema,
411
- z.array(z.lazy(() => SExprSchema)).min(1).refine(
411
+ z.array(SExprDataSchema).min(1).refine(
412
412
  (arr) => typeof arr[0] === "string",
413
413
  { message: "S-expression array must have a string operator as first element" }
414
414
  )
@@ -611,6 +611,7 @@ var ConfigFieldDeclarationSchema = z.object({
611
611
  items: ConfigFieldItemsDeclarationSchema.optional(),
612
612
  properties: z.lazy(() => z.record(TraitEntityFieldSchema)).optional(),
613
613
  forwardedFrom: z.string().optional(),
614
+ nestedForwardedFrom: z.array(z.string()).optional(),
614
615
  payloadFor: z.string().optional()
615
616
  });
616
617
  var DeclaredTraitConfigSchema = z.record(
@@ -1143,10 +1144,53 @@ var TypeIntentMapSchema = z.object({
1143
1144
  caption: TypeIntentSchema.optional(),
1144
1145
  numeric: TypeIntentSchema.optional()
1145
1146
  });
1147
+ function isWellFormedFontStack(stack) {
1148
+ const items = [];
1149
+ let current = "";
1150
+ let quote = null;
1151
+ let depth = 0;
1152
+ for (const ch of stack) {
1153
+ if (quote) {
1154
+ current += ch;
1155
+ if (ch === quote) quote = null;
1156
+ continue;
1157
+ }
1158
+ if (ch === '"' || ch === "'") quote = ch;
1159
+ else if (ch === "(") depth++;
1160
+ else if (ch === ")") depth--;
1161
+ if (ch === "," && depth === 0) {
1162
+ items.push(current.trim());
1163
+ current = "";
1164
+ continue;
1165
+ }
1166
+ current += ch;
1167
+ }
1168
+ if (quote || depth !== 0) return false;
1169
+ items.push(current.trim());
1170
+ return items.every(
1171
+ (item) => /^"[^"]+"$/.test(item) || /^'[^']+'$/.test(item) || /^-?[A-Za-z][\w-]*( [A-Za-z0-9][\w-]*)*$/.test(item) || /^var\(--[\w-]+(,.*)?\)$/.test(item)
1172
+ );
1173
+ }
1174
+ var FontStackSchema = z.string().refine(isWellFormedFontStack, {
1175
+ message: "Malformed CSS font-family stack (each family must be comma-separated and fully quoted or bare)"
1176
+ });
1177
+ var LegacyTypographySchema = z.record(z.string(), z.string()).superRefine((map, ctx) => {
1178
+ for (const [key, value] of Object.entries(map)) {
1179
+ if (key.startsWith("font-family") && !isWellFormedFontStack(value)) {
1180
+ ctx.addIssue({ code: z.ZodIssueCode.custom, path: [key], message: `Malformed CSS font-family stack: ${value}` });
1181
+ }
1182
+ }
1183
+ });
1146
1184
  var TypeScaleTokensSchema = z.object({
1147
- displayFamily: z.string().optional(),
1148
- bodyFamily: z.string().optional(),
1149
- monoFamily: z.string().optional(),
1185
+ displayFamily: FontStackSchema.optional(),
1186
+ bodyFamily: FontStackSchema.optional(),
1187
+ monoFamily: FontStackSchema.optional(),
1188
+ fontImport: z.string().optional(),
1189
+ headingWeight: z.string().optional(),
1190
+ headingTransform: z.string().optional(),
1191
+ headingTracking: z.string().optional(),
1192
+ headingStyle: z.string().optional(),
1193
+ headingShadow: z.string().optional(),
1150
1194
  scale: TypeScaleSchema.optional(),
1151
1195
  intents: TypeIntentMapSchema.optional()
1152
1196
  });
@@ -1188,10 +1232,20 @@ var MotionIntentMapSchema = z.object({
1188
1232
  expand: MotionIntentSchema.optional(),
1189
1233
  transition: MotionIntentSchema.optional()
1190
1234
  });
1235
+ var MotionShapeTokensSchema = z.object({
1236
+ modalEnter: z.string().optional(),
1237
+ modalExit: z.string().optional(),
1238
+ popoverEnter: z.string().optional(),
1239
+ popoverExit: z.string().optional(),
1240
+ toastEnter: z.string().optional(),
1241
+ toastExit: z.string().optional(),
1242
+ pageEnter: z.string().optional()
1243
+ });
1191
1244
  var MotionTokensSchema = z.object({
1192
1245
  durations: MotionDurationPaletteSchema.optional(),
1193
1246
  easings: MotionEasingPaletteSchema.optional(),
1194
- intents: MotionIntentMapSchema.optional()
1247
+ intents: MotionIntentMapSchema.optional(),
1248
+ shapes: MotionShapeTokensSchema.optional()
1195
1249
  });
1196
1250
  var IconFamilySchema = z.enum([
1197
1251
  "lucide",
@@ -1210,7 +1264,9 @@ var ElevationTokensSchema = z.object({
1210
1264
  cardElevation: z.string().optional(),
1211
1265
  popoverElevation: z.string().optional(),
1212
1266
  dialogElevation: z.string().optional(),
1213
- toastElevation: z.string().optional()
1267
+ toastElevation: z.string().optional(),
1268
+ interactiveElevation: z.string().optional(),
1269
+ pressedElevation: z.string().optional()
1214
1270
  });
1215
1271
  var GeometryTokensSchema = z.object({
1216
1272
  radiusContainer: z.string().optional(),
@@ -1218,7 +1274,17 @@ var GeometryTokensSchema = z.object({
1218
1274
  radiusPill: z.string().optional(),
1219
1275
  borderHairline: z.string().optional(),
1220
1276
  borderStandard: z.string().optional(),
1221
- borderHeavy: z.string().optional()
1277
+ borderHeavy: z.string().optional(),
1278
+ cornerShape: z.string().optional(),
1279
+ cornerShapePill: z.string().optional(),
1280
+ borderStyle: z.string().optional(),
1281
+ borderStyleInteractive: z.string().optional()
1282
+ });
1283
+ var SurfaceTokensSchema = z.object({
1284
+ backdrop: z.string().optional(),
1285
+ cardImage: z.string().optional(),
1286
+ pageImage: z.string().optional(),
1287
+ pageImageSize: z.string().optional()
1222
1288
  });
1223
1289
  var COLOR_TOKEN_KEY_LIST = [
1224
1290
  "primary",
@@ -1281,11 +1347,12 @@ var ThemeTokensSchema = z.object({
1281
1347
  elevation: ElevationTokensSchema.optional(),
1282
1348
  geometry: GeometryTokensSchema.optional(),
1283
1349
  illustration: IllustrationTokensSchema.optional(),
1350
+ surface: SurfaceTokensSchema.optional(),
1284
1351
  // Legacy
1285
1352
  colors: z.record(z.string(), z.string()).optional(),
1286
1353
  radii: z.record(z.string(), z.string()).optional(),
1287
1354
  spacing: z.record(z.string(), z.string()).optional(),
1288
- typography: z.record(z.string(), z.string()).optional(),
1355
+ typography: LegacyTypographySchema.optional(),
1289
1356
  shadows: z.record(z.string(), z.string()).optional()
1290
1357
  });
1291
1358
  var ThemeVariantSchema = z.object({
@@ -1297,14 +1364,16 @@ var ThemeVariantSchema = z.object({
1297
1364
  elevation: ElevationTokensSchema.optional(),
1298
1365
  geometry: GeometryTokensSchema.optional(),
1299
1366
  illustration: IllustrationTokensSchema.optional(),
1367
+ surface: SurfaceTokensSchema.optional(),
1300
1368
  colors: z.record(z.string(), z.string()).optional(),
1301
1369
  radii: z.record(z.string(), z.string()).optional(),
1302
1370
  spacing: z.record(z.string(), z.string()).optional(),
1303
- typography: z.record(z.string(), z.string()).optional(),
1371
+ typography: LegacyTypographySchema.optional(),
1304
1372
  shadows: z.record(z.string(), z.string()).optional()
1305
1373
  });
1306
1374
  var ThemeDefinitionSchema = z.object({
1307
1375
  name: z.string().min(1, "Theme name is required"),
1376
+ displayName: z.string().optional(),
1308
1377
  tokens: ThemeTokensSchema,
1309
1378
  variants: z.record(z.string(), ThemeVariantSchema).optional()
1310
1379
  });