trigger_system 1.2.0 → 1.2.4

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 (123) hide show
  1. package/dist/browser/index.browser.js +185 -42
  2. package/dist/browser/index.browser.js.map +116 -17
  3. package/dist/core/action-registry.d.ts +29 -3
  4. package/dist/core/action-registry.d.ts.map +1 -1
  5. package/dist/core/base-engine.d.ts +3 -3
  6. package/dist/core/constants.d.ts +95 -0
  7. package/dist/core/constants.d.ts.map +1 -0
  8. package/dist/core/dependency-graph/analyzer.d.ts +60 -0
  9. package/dist/core/dependency-graph/analyzer.d.ts.map +1 -0
  10. package/dist/core/dependency-graph/builder.d.ts +28 -0
  11. package/dist/core/dependency-graph/builder.d.ts.map +1 -0
  12. package/dist/core/dependency-graph/cycles.d.ts +28 -0
  13. package/dist/core/dependency-graph/cycles.d.ts.map +1 -0
  14. package/dist/core/dependency-graph/index.d.ts +11 -0
  15. package/dist/core/dependency-graph/index.d.ts.map +1 -0
  16. package/dist/core/dependency-graph/types.d.ts +72 -0
  17. package/dist/core/dependency-graph/types.d.ts.map +1 -0
  18. package/dist/core/dependency-graph/utils.d.ts +39 -0
  19. package/dist/core/dependency-graph/utils.d.ts.map +1 -0
  20. package/dist/core/dependency-graph/validator.d.ts +28 -0
  21. package/dist/core/dependency-graph/validator.d.ts.map +1 -0
  22. package/dist/core/dependency-graph.d.ts +64 -13
  23. package/dist/core/dependency-graph.d.ts.map +1 -1
  24. package/dist/core/engine-utils.d.ts +45 -0
  25. package/dist/core/engine-utils.d.ts.map +1 -0
  26. package/dist/core/engine.d.ts +0 -8
  27. package/dist/core/engine.d.ts.map +1 -1
  28. package/dist/core/expression-engine.d.ts +52 -10
  29. package/dist/core/expression-engine.d.ts.map +1 -1
  30. package/dist/core/index.d.ts +2 -4
  31. package/dist/core/index.d.ts.map +1 -1
  32. package/dist/core/operators.d.ts +48 -0
  33. package/dist/core/operators.d.ts.map +1 -0
  34. package/dist/core/persistence-browser.d.ts +25 -2
  35. package/dist/core/persistence-browser.d.ts.map +1 -1
  36. package/dist/core/persistence.node.d.ts +25 -2
  37. package/dist/core/persistence.node.d.ts.map +1 -1
  38. package/dist/core/rule-engine-new.d.ts +2 -1
  39. package/dist/core/rule-engine-new.d.ts.map +1 -1
  40. package/dist/core/rule-engine.d.ts +22 -35
  41. package/dist/core/rule-engine.d.ts.map +1 -1
  42. package/dist/core/trigger-engine.d.ts +18 -25
  43. package/dist/core/trigger-engine.d.ts.map +1 -1
  44. package/dist/domain/validator.d.ts +36043 -5067
  45. package/dist/domain/validator.d.ts.map +1 -1
  46. package/dist/index.browser.d.ts +1 -0
  47. package/dist/index.browser.d.ts.map +1 -1
  48. package/dist/index.d.ts +1 -0
  49. package/dist/index.d.ts.map +1 -1
  50. package/dist/io/index.d.ts +6 -1
  51. package/dist/io/index.d.ts.map +1 -1
  52. package/dist/io/loader/index.d.ts +48 -0
  53. package/dist/io/loader/index.d.ts.map +1 -0
  54. package/dist/io/loader/persistence.d.ts +41 -0
  55. package/dist/io/loader/persistence.d.ts.map +1 -0
  56. package/dist/io/loader/query.d.ts +49 -0
  57. package/dist/io/loader/query.d.ts.map +1 -0
  58. package/dist/io/loader/registry.d.ts +91 -0
  59. package/dist/io/loader/registry.d.ts.map +1 -0
  60. package/dist/io/loader/types.d.ts +32 -0
  61. package/dist/io/loader/types.d.ts.map +1 -0
  62. package/dist/io/loader/watch.d.ts +36 -0
  63. package/dist/io/loader/watch.d.ts.map +1 -0
  64. package/dist/io/loader.node.d.ts +1 -13
  65. package/dist/io/loader.node.d.ts.map +1 -1
  66. package/dist/lsp/hover-constants.d.ts +42 -0
  67. package/dist/lsp/hover-constants.d.ts.map +1 -0
  68. package/dist/lsp/server.bundle.d.ts +2 -0
  69. package/dist/lsp/server.bundle.d.ts.map +1 -0
  70. package/dist/node/index.js +183 -170
  71. package/dist/node/index.js.map +116 -91
  72. package/dist/node/node.js +183 -171
  73. package/dist/node/node.js.map +118 -93
  74. package/dist/sdk/builder.d.ts +177 -21
  75. package/dist/sdk/builder.d.ts.map +1 -1
  76. package/dist/sdk/builders/action-builder.d.ts +24 -0
  77. package/dist/sdk/builders/action-builder.d.ts.map +1 -0
  78. package/dist/sdk/builders/condition-builder.d.ts +26 -0
  79. package/dist/sdk/builders/condition-builder.d.ts.map +1 -0
  80. package/dist/sdk/builders/index.d.ts +5 -0
  81. package/dist/sdk/builders/index.d.ts.map +1 -0
  82. package/dist/sdk/builders/params-builder.d.ts +59 -0
  83. package/dist/sdk/builders/params-builder.d.ts.map +1 -0
  84. package/dist/sdk/constants.d.ts +44 -0
  85. package/dist/sdk/constants.d.ts.map +1 -0
  86. package/dist/sdk/exporter.d.ts +16 -0
  87. package/dist/sdk/exporter.d.ts.map +1 -1
  88. package/dist/sdk/graph/action-resolver.d.ts +103 -0
  89. package/dist/sdk/graph/action-resolver.d.ts.map +1 -0
  90. package/dist/sdk/graph/condition-resolver.d.ts +87 -0
  91. package/dist/sdk/graph/condition-resolver.d.ts.map +1 -0
  92. package/dist/sdk/graph/converters.d.ts +152 -0
  93. package/dist/sdk/graph/converters.d.ts.map +1 -0
  94. package/dist/sdk/graph/index.d.ts +12 -0
  95. package/dist/sdk/graph/index.d.ts.map +1 -0
  96. package/dist/sdk/graph/node-filters.d.ts +96 -0
  97. package/dist/sdk/graph/node-filters.d.ts.map +1 -0
  98. package/dist/sdk/graph/traversal.d.ts +105 -0
  99. package/dist/sdk/graph/traversal.d.ts.map +1 -0
  100. package/dist/sdk/graph/types.d.ts +28 -0
  101. package/dist/sdk/graph/types.d.ts.map +1 -0
  102. package/dist/sdk/graph-parser.d.ts +40 -0
  103. package/dist/sdk/graph-parser.d.ts.map +1 -0
  104. package/dist/sdk/index.d.ts +3 -0
  105. package/dist/sdk/index.d.ts.map +1 -1
  106. package/dist/sdk/optimize.d.ts +27 -0
  107. package/dist/sdk/optimize.d.ts.map +1 -0
  108. package/dist/sdk/yaml/converter.d.ts +81 -0
  109. package/dist/sdk/yaml/converter.d.ts.map +1 -0
  110. package/dist/sdk/yaml/index.d.ts +39 -0
  111. package/dist/sdk/yaml/index.d.ts.map +1 -0
  112. package/dist/sdk/yaml/normalizer.d.ts +44 -0
  113. package/dist/sdk/yaml/normalizer.d.ts.map +1 -0
  114. package/dist/sdk/yaml/types.d.ts +198 -0
  115. package/dist/sdk/yaml/types.d.ts.map +1 -0
  116. package/dist/sdk/yaml/utils.d.ts +131 -0
  117. package/dist/sdk/yaml/utils.d.ts.map +1 -0
  118. package/dist/sdk/yaml-parser.d.ts +18 -0
  119. package/dist/sdk/yaml-parser.d.ts.map +1 -0
  120. package/dist/types.d.ts +40 -2
  121. package/dist/types.d.ts.map +1 -1
  122. package/dist/utils/utils.d.ts.map +1 -1
  123. package/package.json +6 -1
@@ -0,0 +1,44 @@
1
+ /**
2
+ * YAML Rule Normalizer
3
+ *
4
+ * This module normalizes raw YAML objects to proper TriggerRule structures.
5
+ * It handles aliases, defaults, and type conversions.
6
+ */
7
+ import type { TriggerRule, RuleCondition, Action, ActionGroup, InlineConditionalAction } from '../../types';
8
+ /**
9
+ * Normalize a raw YAML object to a proper TriggerRule structure
10
+ * This handles aliases, defaults, and type conversions
11
+ */
12
+ export declare function normalizeRule(raw: unknown, index: number, filename?: string, autoId?: boolean | string): Record<string, unknown>;
13
+ /**
14
+ * Normalize conditions from raw YAML to RuleCondition
15
+ */
16
+ export declare function normalizeConditions(raw: unknown): RuleCondition | RuleCondition[];
17
+ /**
18
+ * Normalize the 'do' field of a rule
19
+ */
20
+ export declare function normalizeDoField(raw: unknown): Action | Action[] | ActionGroup | (Action | ActionGroup)[] | InlineConditionalAction;
21
+ /**
22
+ * Normalize the 'else' field of a rule
23
+ */
24
+ export declare function normalizeElseField(raw: unknown): Action | Action[] | ActionGroup | (Action | ActionGroup)[];
25
+ /**
26
+ * Normalize a single action (including conditional actions)
27
+ */
28
+ export declare function normalizeAction(raw: Record<string, unknown>): Action | InlineConditionalAction;
29
+ /**
30
+ * Normalize a complete rule with all advanced features:
31
+ * - Nested conditions
32
+ * - Inline conditionals in actions
33
+ * - Sub-do/sub-else blocks
34
+ * - DO nodes
35
+ */
36
+ export declare function normalizeRuleAdvanced(raw: unknown, index: number, filename?: string, autoId?: boolean | string): TriggerRule;
37
+ /**
38
+ * Validate a normalized rule has required fields
39
+ */
40
+ export declare function validateRule(rule: Record<string, unknown>): {
41
+ valid: boolean;
42
+ errors: string[];
43
+ };
44
+ //# sourceMappingURL=normalizer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizer.d.ts","sourceRoot":"","sources":["../../../src/sdk/yaml/normalizer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACb,MAAM,EACN,WAAW,EAGX,uBAAuB,EAGxB,MAAM,aAAa,CAAC;AAerB;;;GAGG;AACH,wBAAgB,aAAa,CAC3B,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,GACxB,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAgDzB;AAMD;;GAEG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,OAAO,GACX,aAAa,GAAG,aAAa,EAAE,CAmBjC;AAqCD;;GAEG;AACH,wBAAgB,gBAAgB,CAC9B,GAAG,EAAE,OAAO,GACX,MAAM,GAAG,MAAM,EAAE,GAAG,WAAW,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,EAAE,GAAG,uBAAuB,CA4BtF;AAMD;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,GAAG,EAAE,OAAO,GACX,MAAM,GAAG,MAAM,EAAE,GAAG,WAAW,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,EAAE,CA4B5D;AAMD;;GAEG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,GAAG,uBAAuB,CA+C9F;AAoFD;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACnC,GAAG,EAAE,OAAO,EACZ,KAAK,EAAE,MAAM,EACb,QAAQ,CAAC,EAAE,MAAM,EACjB,MAAM,CAAC,EAAE,OAAO,GAAG,MAAM,GACxB,WAAW,CAYb;AAMD;;GAEG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAoBhG"}
@@ -0,0 +1,198 @@
1
+ /**
2
+ * YAML Parser Types
3
+ *
4
+ * Type definitions for the YAML parser module.
5
+ * These types are shared between the parser, normalizer, and converter.
6
+ */
7
+ import type { TriggerRule, RuleCondition, Action, ExecutionMode } from '../../types';
8
+ export type { TriggerRule, RuleCondition, Action, ActionGroup, ComparisonOperator, ExecutionMode, InlineConditionalAction } from '../../types';
9
+ export { NodeType, HandleId, BranchType } from '../constants';
10
+ export interface YamlParserOptions {
11
+ /**
12
+ * Assign an ID to rules that don't have one.
13
+ * If false, rules without IDs will fail validation.
14
+ * If string, that string will be used as a prefix.
15
+ * If true, a default ID will be generated from the filename (requires filename option).
16
+ */
17
+ autoId?: boolean | string;
18
+ /**
19
+ * Filename to use for generating rule IDs and error messages.
20
+ * Useful when parsing from a file.
21
+ */
22
+ filename?: string;
23
+ /**
24
+ * Whether to throw on validation errors or return them.
25
+ * @default false (return errors)
26
+ */
27
+ throwOnError?: boolean;
28
+ /**
29
+ * Whether to support multi-document YAML.
30
+ * @default true
31
+ */
32
+ multiDocument?: boolean;
33
+ }
34
+ export interface YamlParserResult {
35
+ /**
36
+ * The parsed and validated rules
37
+ */
38
+ rules: TriggerRule[];
39
+ /**
40
+ * Validation errors (empty if all rules are valid)
41
+ */
42
+ errors: YamlParserError[];
43
+ /**
44
+ * Whether all rules are valid
45
+ */
46
+ valid: boolean;
47
+ }
48
+ export interface YamlParserError {
49
+ /**
50
+ * Index of the rule in the document (0-based)
51
+ */
52
+ index: number;
53
+ /**
54
+ * Human-readable error message
55
+ */
56
+ message: string;
57
+ /**
58
+ * Path to the problematic field
59
+ */
60
+ path?: string;
61
+ /**
62
+ * Validation issues from TriggerValidator
63
+ */
64
+ issues?: Array<{
65
+ path: string;
66
+ message: string;
67
+ suggestion?: string;
68
+ }>;
69
+ }
70
+ /**
71
+ * Node types for the React Flow editor
72
+ */
73
+ export type EditorNodeType = 'event' | 'condition' | 'condition_group' | 'action' | 'action_group' | 'do';
74
+ /**
75
+ * Basic node structure for the editor
76
+ */
77
+ export interface EditorNode {
78
+ id: string;
79
+ type: EditorNodeType;
80
+ position: {
81
+ x: number;
82
+ y: number;
83
+ };
84
+ data: Record<string, unknown>;
85
+ }
86
+ /**
87
+ * Basic edge structure for the editor
88
+ */
89
+ export interface EditorEdge {
90
+ id: string;
91
+ source: string;
92
+ target: string;
93
+ sourceHandle?: string | null;
94
+ targetHandle?: string | null;
95
+ }
96
+ /**
97
+ * Result of converting a TriggerRule to nodes and edges
98
+ */
99
+ export interface TriggerRuleToNodesResult {
100
+ nodes: EditorNode[];
101
+ edges: EditorEdge[];
102
+ valid: boolean;
103
+ errors: string[];
104
+ }
105
+ /**
106
+ * Raw condition object from YAML (before normalization)
107
+ */
108
+ export interface RawCondition {
109
+ field?: string;
110
+ operator?: string;
111
+ value?: unknown;
112
+ conditions?: RawCondition[];
113
+ }
114
+ /**
115
+ * Raw action object from YAML (before normalization)
116
+ */
117
+ export interface RawAction {
118
+ type?: string;
119
+ params?: Record<string, unknown>;
120
+ run?: string;
121
+ delay?: number;
122
+ probability?: number;
123
+ if?: RawCondition | RawCondition[];
124
+ then?: RawAction | RawAction[];
125
+ do?: RawAction | RawAction[];
126
+ else?: RawAction | RawAction[];
127
+ mode?: ExecutionMode;
128
+ actions?: RawAction[];
129
+ break?: boolean;
130
+ continue?: boolean;
131
+ [key: string]: unknown;
132
+ }
133
+ /**
134
+ * Raw rule object from YAML (before normalization)
135
+ */
136
+ export interface RawRule {
137
+ id?: string;
138
+ name?: string;
139
+ description?: string;
140
+ on: string;
141
+ if?: RawCondition | RawCondition[];
142
+ do?: RawAction | RawAction[] | {
143
+ mode: ExecutionMode;
144
+ actions: RawAction[];
145
+ };
146
+ else?: RawAction | RawAction[] | {
147
+ mode: ExecutionMode;
148
+ actions: RawAction[];
149
+ };
150
+ actions?: RawAction | RawAction[];
151
+ priority?: number;
152
+ enabled?: boolean;
153
+ cooldown?: number;
154
+ tags?: string[];
155
+ [key: string]: unknown;
156
+ }
157
+ export interface GraphParserOptions {
158
+ /**
159
+ * Custom function to check if a node is an event node
160
+ */
161
+ isEventNode?: (node: unknown) => boolean;
162
+ /**
163
+ * Custom function to check if a node is a condition node
164
+ */
165
+ isCondNode?: (node: unknown) => boolean;
166
+ /**
167
+ * Custom function to check if a node is an action node
168
+ */
169
+ isActNode?: (node: unknown) => boolean;
170
+ /**
171
+ * Custom function to check if a node is a DO node
172
+ */
173
+ isDoNode?: (node: unknown) => boolean;
174
+ /**
175
+ * Custom function to extract event data from an event node
176
+ */
177
+ extractEventData?: (node: unknown) => Record<string, unknown>;
178
+ /**
179
+ * Optimization options
180
+ */
181
+ optimizeOptions?: {
182
+ enabled?: boolean;
183
+ maxDepth?: number;
184
+ };
185
+ }
186
+ export interface GraphParserContext {
187
+ nodes: unknown[];
188
+ edges: unknown[];
189
+ visitedConds: Set<string>;
190
+ visitedActs: Set<string>;
191
+ options: GraphParserOptions;
192
+ transformers?: {
193
+ condition?: (cond: RuleCondition) => RuleCondition;
194
+ action?: (action: Action) => Action;
195
+ };
196
+ }
197
+ export type { GraphParserOptions as GraphParserOptionsInternal, GraphParserContext as GraphParserContextInternal } from '../graph/types';
198
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/sdk/yaml/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,131 @@
1
+ /**
2
+ * YAML Parser Utilities
3
+ *
4
+ * Utility functions for the YAML parser including type guards,
5
+ * helpers, and normalization functions.
6
+ */
7
+ import type { RuleCondition, Action, ActionGroup, ComparisonOperator, ExecutionMode, InlineConditionalAction, ConditionValue } from '../../types';
8
+ export type { ComparisonOperator, ExecutionMode } from '../../types';
9
+ /**
10
+ * Check if a value is a plain object
11
+ */
12
+ export declare function isObject(value: unknown): value is Record<string, unknown>;
13
+ /**
14
+ * Check if a value is a non-empty string
15
+ */
16
+ export declare function isNonEmptyString(value: unknown): value is string;
17
+ /**
18
+ * Check if a value is a valid number
19
+ */
20
+ export declare function isValidNumber(value: unknown): value is number;
21
+ /**
22
+ * Check if a value is a boolean
23
+ */
24
+ export declare function isBoolean(value: unknown): value is boolean;
25
+ /**
26
+ * Check if a condition is a condition group (has operator and nested conditions)
27
+ */
28
+ export declare function isConditionGroup(cond: RuleCondition): cond is {
29
+ operator: 'AND' | 'OR';
30
+ conditions: RuleCondition[];
31
+ };
32
+ /**
33
+ * Check if a condition is a simple condition (has field and operator)
34
+ */
35
+ export declare function isSimpleCondition(cond: RuleCondition): cond is {
36
+ field: string;
37
+ operator: ComparisonOperator;
38
+ value?: ConditionValue;
39
+ };
40
+ /**
41
+ * Check if an action is an action group (has mode and nested actions)
42
+ */
43
+ export declare function isActionGroup(action: unknown): action is ActionGroup;
44
+ /**
45
+ * Check if an action object has conditional execution (if/then/else)
46
+ */
47
+ export declare function hasConditionalExecution(action: unknown): action is InlineConditionalAction;
48
+ /**
49
+ * Check if an action is a simple action (has type)
50
+ */
51
+ export declare function isSimpleAction(action: unknown): action is Action;
52
+ /**
53
+ * Check if value is a valid execution mode
54
+ */
55
+ export declare function isValidExecutionMode(value: unknown): value is ExecutionMode;
56
+ /**
57
+ * Check if value is a valid condition group operator
58
+ */
59
+ export declare function isValidConditionOperator(value: unknown): value is 'AND' | 'OR';
60
+ /**
61
+ * Check if value is a valid comparison operator
62
+ */
63
+ export declare function isValidComparisonOperator(value: unknown): value is ComparisonOperator;
64
+ /**
65
+ * Safely extract action type
66
+ */
67
+ export declare function getActionType(action: Action): string;
68
+ /**
69
+ * Safely extract and stringify action params
70
+ */
71
+ export declare function getActionParams(action: Action): string;
72
+ /**
73
+ * Safely extract condition field
74
+ */
75
+ export declare function getConditionField(cond: RuleCondition): string;
76
+ /**
77
+ * Safely extract condition operator
78
+ */
79
+ export declare function getConditionOperator(cond: RuleCondition): string;
80
+ /**
81
+ * Safely extract condition value
82
+ */
83
+ export declare function getConditionValue(cond: RuleCondition): unknown;
84
+ /**
85
+ * Creates a sequential node ID generator
86
+ */
87
+ export declare function createNodeIdGenerator(start?: number): () => string;
88
+ /**
89
+ * Creates an edge ID generator
90
+ */
91
+ export declare function createEdgeIdGenerator(): () => string;
92
+ /**
93
+ * Creates a position calculator for node layout
94
+ */
95
+ export declare function createPositionCalculator(baseX?: number, baseY?: number, levelSpacing?: number, nodeSpacing?: number): (level: number, index: number, total: number) => {
96
+ x: number;
97
+ y: number;
98
+ };
99
+ /**
100
+ * Ensure a value is an array
101
+ */
102
+ export declare function ensureArray<T>(value: T | T[] | undefined): T[];
103
+ /**
104
+ * Normalize action to array format
105
+ */
106
+ export declare function normalizeActions(action: Action | Action[] | undefined): Action[];
107
+ /**
108
+ * Normalize condition to array format
109
+ */
110
+ export declare function normalizeConditions(condition: RuleCondition | RuleCondition[] | undefined): RuleCondition[];
111
+ /**
112
+ * Generate a rule ID from filename
113
+ */
114
+ export declare function generateRuleIdFromFilename(filename: string): string;
115
+ /**
116
+ * Normalize operator to canonical form
117
+ */
118
+ export declare function normalizeOperator(operator: string): ComparisonOperator;
119
+ /**
120
+ * Validate that a required field is present
121
+ */
122
+ export declare function requireField(obj: Record<string, unknown>, field: string): void;
123
+ /**
124
+ * Validate field type
125
+ */
126
+ export declare function validateFieldType(value: unknown, expectedType: string, fieldName: string): void;
127
+ /**
128
+ * Validate field is one of allowed values
129
+ */
130
+ export declare function validateFieldValue<T extends string>(value: unknown, allowedValues: readonly T[], fieldName: string): asserts value is T;
131
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/sdk/yaml/utils.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,aAAa,EACb,MAAM,EACN,WAAW,EACX,kBAAkB,EAClB,aAAa,EACb,uBAAuB,EACvB,cAAc,EACf,MAAM,aAAa,CAAC;AAarB,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAMrE;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAEhE;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,MAAM,CAE7D;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,OAAO,CAE1D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,IAAI;IAAE,QAAQ,EAAE,KAAK,GAAG,IAAI,CAAC;IAAC,UAAU,EAAE,aAAa,EAAE,CAAA;CAAE,CAGrH;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,IAAI;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,kBAAkB,CAAC;IAAC,KAAK,CAAC,EAAE,cAAc,CAAA;CAAE,CAEtI;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,WAAW,CAIpE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,uBAAuB,CAE1F;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,MAAM,CAEhE;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,aAAa,CAE3E;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,KAAK,GAAG,IAAI,CAE9E;AAED;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,IAAI,kBAAkB,CAErF;AAMD;;GAEG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEpD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAGtD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAK7D;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,aAAa,GAAG,MAAM,CAQhE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,aAAa,GAAG,OAAO,CAK9D;AAMD;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,GAAE,MAAU,GAAG,MAAM,MAAM,CAGrE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,MAAM,CAGpD;AAMD;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,GAAE,MAAY,EACnB,KAAK,GAAE,MAAY,EACnB,YAAY,GAAE,MAAY,EAC1B,WAAW,GAAE,MAAY,IAEjB,OAAO,MAAM,EAAE,OAAO,MAAM,EAAE,OAAO,MAAM,KAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAI/E;AAMD;;GAEG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,SAAS,GAAG,CAAC,EAAE,CAI9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,CAIhF;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,SAAS,EAAE,aAAa,GAAG,aAAa,EAAE,GAAG,SAAS,GAAG,aAAa,EAAE,CAI3G;AAMD;;GAEG;AACH,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEnE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,kBAAkB,CAUtE;AAMD;;GAEG;AACH,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAI9E;AASD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAK/F;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,MAAM,EACjD,KAAK,EAAE,OAAO,EACd,aAAa,EAAE,SAAS,CAAC,EAAE,EAC3B,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC,KAAK,IAAI,CAAC,CAIpB"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * YAML Parser for Trigger Rules
3
+ *
4
+ * This module provides a reusable YAML parser that converts YAML content
5
+ * into TriggerRule objects with proper validation.
6
+ *
7
+ * DEPRECATED: This file is kept for backward compatibility.
8
+ * Please use the modularized version at src/sdk/yaml/ instead.
9
+ *
10
+ * The parser:
11
+ * 1. Parses YAML using the yaml library
12
+ * 2. Normalizes the structure (handles aliases like 'actions' -> 'do')
13
+ * 3. Validates using TriggerValidator
14
+ * 4. Returns a valid TriggerRule or throws/returns errors
15
+ */
16
+ export * from './yaml';
17
+ export type { YamlParserOptions, YamlParserResult, YamlParserError, EditorNodeType, EditorNode, EditorEdge, TriggerRuleToNodesResult } from './yaml';
18
+ //# sourceMappingURL=yaml-parser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yaml-parser.d.ts","sourceRoot":"","sources":["../../src/sdk/yaml-parser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,cAAc,QAAQ,CAAC;AAGvB,YAAY,EACV,iBAAiB,EACjB,gBAAgB,EAChB,eAAe,EACf,cAAc,EACd,UAAU,EACV,UAAU,EACV,wBAAwB,EACzB,MAAM,QAAQ,CAAC"}
package/dist/types.d.ts CHANGED
@@ -11,6 +11,22 @@ export interface RuleMetadata {
11
11
  cooldown?: number;
12
12
  tags?: string[];
13
13
  }
14
+ /** List of all equality operators */
15
+ export declare const EQUALITY_OPERATORS: readonly ["EQ", "==", "NEQ", "!="];
16
+ /** List of all comparison operators */
17
+ export declare const COMPARISON_OPERATORS: readonly ["GT", ">", "GTE", ">=", "LT", "<", "LTE", "<="];
18
+ /** List of list/collection operators */
19
+ export declare const LIST_OPERATORS: readonly ["IN", "NOT_IN", "RANGE"];
20
+ /** List of string matching operators */
21
+ export declare const STRING_OPERATORS: readonly ["CONTAINS", "NOT_CONTAINS", "STARTS_WITH", "ENDS_WITH"];
22
+ /** List of null-checking operators */
23
+ export declare const NULL_OPERATORS: readonly ["IS_NULL", "IS_NONE"];
24
+ /** List of all valid operators */
25
+ export declare const ALL_OPERATORS: readonly ["EQ", "==", "NEQ", "!=", "GT", ">", "GTE", ">=", "LT", "<", "LTE", "<=", "IN", "NOT_IN", "RANGE", "CONTAINS", "NOT_CONTAINS", "STARTS_WITH", "ENDS_WITH", "IS_EMPTY", "HAS_KEY", "MATCHES", "SINCE", "AFTER", "BEFORE", "UNTIL", "RANGE"];
26
+ /** Condition group operators */
27
+ export declare const CONDITION_GROUP_OPERATORS: readonly ["AND", "OR"];
28
+ /** Action group execution modes */
29
+ export declare const EXECUTION_MODES: readonly ["ALL", "EITHER", "SEQUENCE"];
14
30
  export type ComparisonOperator = 'EQ' | '==' | 'NEQ' | '!=' | 'GT' | '>' | 'GTE' | '>=' | 'LT' | '<' | 'LTE' | '<=' | 'IN' | 'NOT_IN' | 'CONTAINS' | 'NOT_CONTAINS' | 'STARTS_WITH' | 'ENDS_WITH' | 'IS_EMPTY' | 'IS_NULL' | 'IS_NONE' | 'HAS_KEY' | 'MATCHES' | 'SINCE' | 'AFTER' | 'BEFORE' | 'UNTIL' | 'RANGE';
15
31
  export type ConditionValue = string | number | boolean | Date | string[] | number[] | null;
16
32
  export interface Condition {
@@ -36,6 +52,7 @@ export interface Action {
36
52
  probability?: number;
37
53
  if?: RuleCondition | RuleCondition[];
38
54
  then?: Action | Action[] | ActionGroup;
55
+ do?: Action | Action[] | ActionGroup;
39
56
  else?: Action | Action[] | ActionGroup;
40
57
  break?: boolean;
41
58
  continue?: boolean;
@@ -44,12 +61,22 @@ export interface Action {
44
61
  export type ExecutionMode = 'ALL' | 'EITHER' | 'SEQUENCE';
45
62
  export interface ActionGroup {
46
63
  mode: ExecutionMode;
47
- actions: Action[];
64
+ actions: (Action | ActionGroup)[];
65
+ }
66
+ export interface InlineConditionalAction {
67
+ if: RuleCondition | RuleCondition[];
68
+ then?: Action | Action[] | ActionGroup;
69
+ do?: Action | Action[] | ActionGroup;
70
+ else?: Action | Action[] | ActionGroup;
71
+ break?: boolean;
72
+ continue?: boolean;
73
+ [key: string]: unknown;
48
74
  }
49
75
  export interface TriggerRule extends RuleMetadata {
50
76
  on: string;
51
77
  if?: RuleCondition | RuleCondition[];
52
- do: Action | Action[] | ActionGroup;
78
+ do: Action | Action[] | ActionGroup | (Action | ActionGroup)[] | InlineConditionalAction;
79
+ else?: Action | Action[] | ActionGroup | (Action | ActionGroup)[];
53
80
  }
54
81
  export interface TriggerContext {
55
82
  event: string;
@@ -120,4 +147,15 @@ export type EngineActionHandler = (params: ActionParams, context: TriggerContext
120
147
  export type TriggerCondition = Condition;
121
148
  export type TriggerAction = Action;
122
149
  export type TriggerConditionGroup = ConditionGroup;
150
+ export interface SDKGraphNode {
151
+ id: string;
152
+ type: string;
153
+ data: any;
154
+ }
155
+ export interface SDKGraphEdge {
156
+ source: string;
157
+ target: string;
158
+ sourceHandle?: string | null;
159
+ targetHandle?: string | null;
160
+ }
123
161
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEnF,qBAAa,YAAY;IACvB;;;OAGG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO;IAkBrE;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,MAAM;IAgBrE;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO;CA6E7G"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAEnF,qBAAa,YAAY;IACvB;;;OAGG;IACH,MAAM,CAAC,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,OAAO;IAkBrE;;;OAGG;IACH,MAAM,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,MAAM;IAgBrE;;OAEG;IACH,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,kBAAkB,EAAE,QAAQ,EAAE,cAAc,GAAG,SAAS,GAAG,OAAO;CAuI7G"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "trigger_system",
3
- "version": "1.2.0",
3
+ "version": "1.2.4",
4
4
  "description": "A powerful rule engine and trigger system for JavaScript/TypeScript applications",
5
5
  "main": "dist/node/index.js",
6
6
  "browser": "dist/browser/index.browser.js",
@@ -39,6 +39,11 @@
39
39
  },
40
40
  "default": "./dist/node/index.js"
41
41
  },
42
+ "./lsp": {
43
+ "types": "./dist/lsp/hover-constants.d.ts",
44
+ "import": "./dist/lsp/hover-constants.js",
45
+ "default": "./dist/lsp/hover-constants.js"
46
+ },
42
47
  "./node": {
43
48
  "import": "./dist/node/node.js",
44
49
  "require": "./dist/node/node.js",