@syntrologie/runtime-sdk 2.4.0-canary.2 → 2.4.0-canary.21

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 (62) hide show
  1. package/CAPABILITIES.md +116 -1
  2. package/dist/SmartCanvasApp.d.ts +5 -3
  3. package/dist/actions/executors/index.d.ts +1 -2
  4. package/dist/actions/index.d.ts +2 -2
  5. package/dist/actions/schema.d.ts +58243 -201
  6. package/dist/actions/schema.js +5 -2
  7. package/dist/actions/types.d.ts +45 -48
  8. package/dist/anchor/AnchorResolver.d.ts +18 -0
  9. package/dist/anchor/index.d.ts +2 -0
  10. package/dist/api.d.ts +3 -8
  11. package/dist/apps/examples/gamification-app.example.d.ts +8 -8
  12. package/dist/chunk-2UYZ5DWI.js +126 -0
  13. package/dist/chunk-2UYZ5DWI.js.map +7 -0
  14. package/dist/{chunk-DOJR7R46.js → chunk-HF3D7YFQ.js} +49 -31
  15. package/dist/chunk-HF3D7YFQ.js.map +7 -0
  16. package/dist/{chunk-ZDZ3IYFN.js → chunk-IPU3WVPY.js} +3449 -2110
  17. package/dist/chunk-IPU3WVPY.js.map +7 -0
  18. package/dist/{chunk-BIYMC56J.js → chunk-P5G4KT2U.js} +54 -6
  19. package/dist/chunk-P5G4KT2U.js.map +7 -0
  20. package/dist/components/ShadowCanvasOverlay.d.ts +1 -20
  21. package/dist/config/schema.d.ts +1797 -267
  22. package/dist/config/schema.js +19 -62
  23. package/dist/config/schema.js.map +3 -3
  24. package/dist/context/schema.d.ts +8 -8
  25. package/dist/decisions/schema.d.ts +506 -1490
  26. package/dist/decisions/schema.js +5 -2
  27. package/dist/decisions/types.d.ts +22 -0
  28. package/dist/events/registerConfigPredicates.d.ts +7 -10
  29. package/dist/events/schema.d.ts +12 -12
  30. package/dist/experiments/adapters/growthbook.d.ts +2 -0
  31. package/dist/experiments/types.d.ts +7 -0
  32. package/dist/hooks/useShadowCanvasConfig.d.ts +4 -2
  33. package/dist/index.d.ts +1 -0
  34. package/dist/index.js +72 -98
  35. package/dist/index.js.map +3 -3
  36. package/dist/overlays/schema.d.ts +48 -48
  37. package/dist/react.js +4 -3
  38. package/dist/react.js.map +1 -1
  39. package/dist/runtime.d.ts +3 -0
  40. package/dist/smart-canvas.esm.js +62 -66
  41. package/dist/smart-canvas.esm.js.map +4 -4
  42. package/dist/smart-canvas.js +2591 -1167
  43. package/dist/smart-canvas.js.map +4 -4
  44. package/dist/smart-canvas.min.js +62 -66
  45. package/dist/smart-canvas.min.js.map +4 -4
  46. package/dist/surfaces/types.d.ts +2 -1
  47. package/dist/theme/ThemeProvider.d.ts +11 -16
  48. package/dist/theme/defaultTheme.d.ts +6 -1
  49. package/dist/theme/index.d.ts +3 -4
  50. package/dist/theme/types.d.ts +10 -0
  51. package/dist/version.d.ts +1 -1
  52. package/package.json +7 -7
  53. package/schema/canvas-config.schema.json +9418 -790
  54. package/scripts/validate-config.mjs +78 -0
  55. package/dist/actions/executors/tour.d.ts +0 -18
  56. package/dist/chunk-BIYMC56J.js.map +0 -7
  57. package/dist/chunk-DOJR7R46.js.map +0 -7
  58. package/dist/chunk-JMHRHAEL.js +0 -18
  59. package/dist/chunk-JMHRHAEL.js.map +0 -7
  60. package/dist/chunk-ZDZ3IYFN.js.map +0 -7
  61. package/dist/hooks/useHostPatches.d.ts +0 -9
  62. package/dist/theme/extractHostTheme.d.ts +0 -14
@@ -1,5 +1,23 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __typeError = (msg) => {
3
+ throw TypeError(msg);
4
+ };
5
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
6
+ var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
7
+ var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
8
+ var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj));
9
+ var __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value);
10
+ var __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value);
11
+
1
12
  // src/decisions/schema.ts
13
+ import { z as z2 } from "zod";
14
+
15
+ // ../sdk-contracts/dist/schemas.js
2
16
  import { z } from "zod";
17
+ var AnchorIdZ = z.object({
18
+ selector: z.string(),
19
+ route: z.union([z.string(), z.array(z.string())])
20
+ }).strict();
3
21
  var PageUrlConditionZ = z.object({
4
22
  type: z.literal("page_url"),
5
23
  url: z.string()
@@ -52,12 +70,21 @@ var FrequencyLimitConditionZ = z.object({
52
70
  limit: z.number(),
53
71
  inverted: z.boolean().optional()
54
72
  });
73
+ var MatchOpZ = z.object({
74
+ equals: z.union([z.string(), z.number(), z.boolean()]).optional(),
75
+ contains: z.string().optional()
76
+ });
77
+ var CounterDefZ = z.object({
78
+ events: z.array(z.string()).min(1),
79
+ match: z.record(z.string(), MatchOpZ).optional()
80
+ });
55
81
  var EventCountConditionZ = z.object({
56
82
  type: z.literal("event_count"),
57
83
  key: z.string(),
58
84
  operator: z.enum(["gte", "lte", "eq", "gt", "lt"]),
59
85
  count: z.number().int().min(0),
60
- withinMs: z.number().positive().optional()
86
+ withinMs: z.number().positive().optional(),
87
+ counter: CounterDefZ.optional()
61
88
  });
62
89
  var ConditionZ = z.discriminatedUnion("type", [
63
90
  PageUrlConditionZ,
@@ -108,11 +135,24 @@ var DecisionStrategyZ = z.discriminatedUnion("type", [
108
135
  ModelStrategyZ,
109
136
  ExternalStrategyZ
110
137
  ]);
111
- var RouteFilterZ = z.object({
112
- include: z.array(z.string()).optional(),
113
- exclude: z.array(z.string()).optional()
138
+ var TriggerWhenZ = DecisionStrategyZ.nullable().optional();
139
+ var EventScopeZ = z.object({
140
+ events: z.array(z.string()),
141
+ urlContains: z.string().optional(),
142
+ props: z.record(z.union([z.string(), z.number(), z.boolean()])).optional()
143
+ });
144
+ var NotifyZ = z.object({
145
+ title: z.string().optional(),
146
+ body: z.string().optional(),
147
+ icon: z.string().optional()
148
+ }).nullable().optional();
149
+
150
+ // src/decisions/schema.ts
151
+ var RouteFilterZ = z2.object({
152
+ include: z2.array(z2.string()).optional(),
153
+ exclude: z2.array(z2.string()).optional()
114
154
  });
115
- var ActivationConfigZ = z.object({
155
+ var ActivationConfigZ = z2.object({
116
156
  routes: RouteFilterZ,
117
157
  strategy: DecisionStrategyZ.optional()
118
158
  });
@@ -126,6 +166,8 @@ function validateActivationConfig(data) {
126
166
  return ActivationConfigZ.safeParse(data);
127
167
  }
128
168
  var decisionSchemas = [
169
+ { defName: "matchOp", schema: MatchOpZ },
170
+ { defName: "counterDef", schema: CounterDefZ },
129
171
  { defName: "activationConfig", schema: ActivationConfigZ },
130
172
  { defName: "routeFilter", schema: RouteFilterZ },
131
173
  { defName: "ruleStrategy", schema: RuleStrategyZ },
@@ -137,6 +179,10 @@ var decisionSchemas = [
137
179
  ];
138
180
 
139
181
  export {
182
+ __publicField,
183
+ __privateGet,
184
+ __privateAdd,
185
+ __privateSet,
140
186
  PageUrlConditionZ,
141
187
  RouteConditionZ,
142
188
  AnchorVisibleConditionZ,
@@ -147,6 +193,8 @@ export {
147
193
  DismissedConditionZ,
148
194
  CooldownActiveConditionZ,
149
195
  FrequencyLimitConditionZ,
196
+ MatchOpZ,
197
+ CounterDefZ,
150
198
  EventCountConditionZ,
151
199
  ConditionZ,
152
200
  RuleZ,
@@ -162,4 +210,4 @@ export {
162
210
  validateActivationConfig,
163
211
  decisionSchemas
164
212
  };
165
- //# sourceMappingURL=chunk-BIYMC56J.js.map
213
+ //# sourceMappingURL=chunk-P5G4KT2U.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../src/decisions/schema.ts", "../../sdk-contracts/dist/schemas.js"],
4
+ "sourcesContent": ["/**\n * Zod schemas for decision strategy validation.\n *\n * Condition and strategy schemas are canonical in @syntrologie/sdk-contracts.\n * This module re-exports them and adds runtime-specific schemas\n * (ActivationConfig, RouteFilter) plus the decisionSchemas array for\n * unified JSON Schema generation.\n */\nimport { z } from 'zod';\n\n// Re-export all condition + strategy schemas from the single source of truth\nexport {\n AnchorVisibleConditionZ,\n type ConditionSchema,\n ConditionZ,\n CooldownActiveConditionZ,\n CounterDefZ,\n type DecisionStrategySchema,\n DecisionStrategyZ,\n DismissedConditionZ,\n EventCountConditionZ,\n EventOccurredConditionZ,\n ExternalStrategyZ,\n FrequencyLimitConditionZ,\n MatchOpZ,\n ModelStrategyZ,\n PageUrlConditionZ,\n RouteConditionZ,\n type RuleSchema,\n RuleStrategyZ,\n RuleZ,\n ScoreStrategyZ,\n SessionMetricConditionZ,\n StateEqualsConditionZ,\n ViewportConditionZ,\n} from '@syntrologie/sdk-contracts';\n\nimport {\n ConditionZ,\n CounterDefZ,\n DecisionStrategyZ,\n ExternalStrategyZ,\n MatchOpZ,\n ModelStrategyZ,\n RuleStrategyZ,\n RuleZ,\n ScoreStrategyZ,\n} from '@syntrologie/sdk-contracts';\n\n// =============================================================================\n// ACTIVATION CONFIG SCHEMA (runtime-specific)\n// =============================================================================\n\nexport const RouteFilterZ = z.object({\n include: z.array(z.string()).optional(),\n exclude: z.array(z.string()).optional(),\n});\n\nexport const ActivationConfigZ = z.object({\n routes: RouteFilterZ,\n strategy: DecisionStrategyZ.optional(),\n});\n\n// =============================================================================\n// VALIDATION FUNCTIONS\n// =============================================================================\n\n/**\n * Validate a Condition object.\n */\nexport function validateCondition(data: unknown) {\n return ConditionZ.safeParse(data);\n}\n\n/**\n * Validate a DecisionStrategy object.\n */\nexport function validateStrategy(data: unknown) {\n return DecisionStrategyZ.safeParse(data);\n}\n\n/**\n * Validate an ActivationConfig object.\n */\nexport function validateActivationConfig(data: unknown) {\n return ActivationConfigZ.safeParse(data);\n}\n\n// =============================================================================\n// Export: Array for unified schema generation\n// =============================================================================\n\n/**\n * Decision schemas for unified JSON Schema generation.\n * The generator imports this array and converts each to a JSON Schema $def.\n *\n * Note: `decisionStrategy` is NOT included here \u2014 it's a oneOf wrapper that\n * the generator builds from $refs to the four strategy defs.\n */\nexport const decisionSchemas = [\n { defName: 'matchOp', schema: MatchOpZ },\n { defName: 'counterDef', schema: CounterDefZ },\n { defName: 'activationConfig', schema: ActivationConfigZ },\n { defName: 'routeFilter', schema: RouteFilterZ },\n { defName: 'ruleStrategy', schema: RuleStrategyZ },\n { defName: 'scoreStrategy', schema: ScoreStrategyZ },\n { defName: 'modelStrategy', schema: ModelStrategyZ },\n { defName: 'externalStrategy', schema: ExternalStrategyZ },\n { defName: 'rule', schema: RuleZ },\n { defName: 'condition', schema: ConditionZ },\n];\n\n// =============================================================================\n// TYPE INFERENCE\n// =============================================================================\n\nexport type ActivationConfigSchema = z.infer<typeof ActivationConfigZ>;\n", "/**\n * Shared Zod schemas for decision strategies, conditions, and event scoping.\n *\n * These are the canonical definitions \u2014 runtime-sdk and all adaptive packages\n * should import from here instead of duplicating.\n */\nimport { z } from 'zod';\n// =============================================================================\n// ANCHOR ID SCHEMA\n// =============================================================================\nexport const AnchorIdZ = z\n .object({\n selector: z.string(),\n route: z.union([z.string(), z.array(z.string())]),\n})\n .strict();\n// =============================================================================\n// CONDITION SCHEMAS\n// =============================================================================\nexport const PageUrlConditionZ = z.object({\n type: z.literal('page_url'),\n url: z.string(),\n});\nexport const RouteConditionZ = z.object({\n type: z.literal('route'),\n routeId: z.string(),\n});\nexport const AnchorVisibleConditionZ = z.object({\n type: z.literal('anchor_visible'),\n anchorId: z.string(),\n state: z.enum(['visible', 'present', 'absent']),\n});\nexport const EventOccurredConditionZ = z.object({\n type: z.literal('event_occurred'),\n eventName: z.string(),\n withinMs: z.number().optional(),\n});\nexport const StateEqualsConditionZ = z.object({\n type: z.literal('state_equals'),\n key: z.string(),\n value: z.unknown(),\n});\nexport const ViewportConditionZ = z.object({\n type: z.literal('viewport'),\n minWidth: z.number().optional(),\n maxWidth: z.number().optional(),\n minHeight: z.number().optional(),\n maxHeight: z.number().optional(),\n});\nexport const SessionMetricConditionZ = z.object({\n type: z.literal('session_metric'),\n key: z.string(),\n operator: z.enum(['gte', 'lte', 'eq', 'gt', 'lt']),\n threshold: z.number(),\n});\nexport const DismissedConditionZ = z.object({\n type: z.literal('dismissed'),\n key: z.string(),\n inverted: z.boolean().optional(),\n});\nexport const CooldownActiveConditionZ = z.object({\n type: z.literal('cooldown_active'),\n key: z.string(),\n inverted: z.boolean().optional(),\n});\nexport const FrequencyLimitConditionZ = z.object({\n type: z.literal('frequency_limit'),\n key: z.string(),\n limit: z.number(),\n inverted: z.boolean().optional(),\n});\nexport const MatchOpZ = z.object({\n equals: z.union([z.string(), z.number(), z.boolean()]).optional(),\n contains: z.string().optional(),\n});\nexport const CounterDefZ = z.object({\n events: z.array(z.string()).min(1),\n match: z.record(z.string(), MatchOpZ).optional(),\n});\nexport const EventCountConditionZ = z.object({\n type: z.literal('event_count'),\n key: z.string(),\n operator: z.enum(['gte', 'lte', 'eq', 'gt', 'lt']),\n count: z.number().int().min(0),\n withinMs: z.number().positive().optional(),\n counter: CounterDefZ.optional(),\n});\nexport const ConditionZ = z.discriminatedUnion('type', [\n PageUrlConditionZ,\n RouteConditionZ,\n AnchorVisibleConditionZ,\n EventOccurredConditionZ,\n StateEqualsConditionZ,\n ViewportConditionZ,\n SessionMetricConditionZ,\n DismissedConditionZ,\n CooldownActiveConditionZ,\n FrequencyLimitConditionZ,\n EventCountConditionZ,\n]);\n// =============================================================================\n// STRATEGY SCHEMAS\n// =============================================================================\nexport const RuleZ = z.object({\n conditions: z.array(ConditionZ),\n value: z.unknown(),\n});\nexport const RuleStrategyZ = z.object({\n type: z.literal('rules'),\n rules: z.array(RuleZ),\n default: z.unknown(),\n});\nexport const ScoreStrategyZ = z.object({\n type: z.literal('score'),\n field: z.string(),\n threshold: z.number(),\n above: z.unknown(),\n below: z.unknown(),\n});\nexport const ModelStrategyZ = z.object({\n type: z.literal('model'),\n modelId: z.string(),\n inputs: z.array(z.string()),\n outputMapping: z.record(z.string(), z.unknown()),\n default: z.unknown(),\n});\nexport const ExternalStrategyZ = z.object({\n type: z.literal('external'),\n endpoint: z.string(),\n method: z.enum(['GET', 'POST']).optional(),\n default: z.unknown(),\n timeoutMs: z.number().optional(),\n});\nexport const DecisionStrategyZ = z.discriminatedUnion('type', [\n RuleStrategyZ,\n ScoreStrategyZ,\n ModelStrategyZ,\n ExternalStrategyZ,\n]);\n/** Canonical Zod schema for the optional triggerWhen field on actions and adaptive items. */\nexport const TriggerWhenZ = DecisionStrategyZ.nullable().optional();\n// =============================================================================\n// EVENT SCOPE SCHEMA\n// =============================================================================\n/** Scopes a widget to specific events/URLs. */\nexport const EventScopeZ = z.object({\n events: z.array(z.string()),\n urlContains: z.string().optional(),\n props: z.record(z.union([z.string(), z.number(), z.boolean()])).optional(),\n});\n// =============================================================================\n// NOTIFY SCHEMA\n// =============================================================================\n/** Toast notification config for triggerWhen transitions. */\nexport const NotifyZ = z\n .object({\n title: z.string().optional(),\n body: z.string().optional(),\n icon: z.string().optional(),\n})\n .nullable()\n .optional();\n"],
5
+ "mappings": "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",
6
+ "names": ["z", "z"]
7
+ }
@@ -1,24 +1,6 @@
1
1
  import { type ReactNode } from 'react';
2
2
  import type { TelemetryClient } from '../telemetry/types';
3
3
  import type { TileConfig } from '../types';
4
- export interface CanvasTheme {
5
- position: 'left' | 'right';
6
- baseWidth: string;
7
- expandedWidth: string;
8
- zIndex: number;
9
- backdropBlur: string;
10
- /** Color theming from workspace settings */
11
- mode?: 'dark' | 'light';
12
- colorPrimary?: string;
13
- colorBackground?: string;
14
- colorText?: string;
15
- colorTextSecondary?: string;
16
- borderRadius?: string;
17
- /** Glass morphism */
18
- glassBackground?: string;
19
- glassBlur?: string;
20
- glassSaturate?: string;
21
- }
22
4
  export interface ShadowCanvasOverlayProps {
23
5
  isOpen: boolean;
24
6
  onToggle: () => void;
@@ -33,6 +15,5 @@ export interface ShadowCanvasOverlayProps {
33
15
  error?: string;
34
16
  canvasTitle?: string;
35
17
  displayMode?: 'standard' | 'focused';
36
- theme?: Partial<CanvasTheme>;
37
18
  }
38
- export declare function ShadowCanvasOverlay({ isOpen, onToggle, telemetry, launcherLabel: _launcherLabel, launcherAnimate, launcherAnimationStyle: _launcherAnimationStyle, notificationCount: _notificationCount, footerSlot, tiles, isLoading, error, canvasTitle, displayMode, theme: themeOverride, }: ShadowCanvasOverlayProps): import("react/jsx-runtime").JSX.Element | null;
19
+ export declare function ShadowCanvasOverlay({ isOpen, onToggle, telemetry, launcherLabel: _launcherLabel, launcherAnimate, launcherAnimationStyle: _launcherAnimationStyle, notificationCount: _notificationCount, footerSlot, tiles, isLoading, error, canvasTitle, displayMode, }: ShadowCanvasOverlayProps): import("react/jsx-runtime").JSX.Element | null;