trigger_system 1.2.1 → 1.2.5
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.
- package/dist/browser/index.browser.js +183 -40
- package/dist/browser/index.browser.js.map +116 -17
- package/dist/core/action-registry.d.ts +29 -3
- package/dist/core/action-registry.d.ts.map +1 -1
- package/dist/core/base-engine.d.ts +3 -3
- package/dist/core/constants.d.ts +95 -0
- package/dist/core/constants.d.ts.map +1 -0
- package/dist/core/dependency-graph/analyzer.d.ts +60 -0
- package/dist/core/dependency-graph/analyzer.d.ts.map +1 -0
- package/dist/core/dependency-graph/builder.d.ts +28 -0
- package/dist/core/dependency-graph/builder.d.ts.map +1 -0
- package/dist/core/dependency-graph/cycles.d.ts +28 -0
- package/dist/core/dependency-graph/cycles.d.ts.map +1 -0
- package/dist/core/dependency-graph/index.d.ts +11 -0
- package/dist/core/dependency-graph/index.d.ts.map +1 -0
- package/dist/core/dependency-graph/types.d.ts +72 -0
- package/dist/core/dependency-graph/types.d.ts.map +1 -0
- package/dist/core/dependency-graph/utils.d.ts +39 -0
- package/dist/core/dependency-graph/utils.d.ts.map +1 -0
- package/dist/core/dependency-graph/validator.d.ts +28 -0
- package/dist/core/dependency-graph/validator.d.ts.map +1 -0
- package/dist/core/dependency-graph.d.ts +64 -13
- package/dist/core/dependency-graph.d.ts.map +1 -1
- package/dist/core/engine-utils.d.ts +45 -0
- package/dist/core/engine-utils.d.ts.map +1 -0
- package/dist/core/engine.d.ts +0 -8
- package/dist/core/engine.d.ts.map +1 -1
- package/dist/core/expression-engine.d.ts +52 -10
- package/dist/core/expression-engine.d.ts.map +1 -1
- package/dist/core/index.d.ts +2 -4
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/operators.d.ts +48 -0
- package/dist/core/operators.d.ts.map +1 -0
- package/dist/core/persistence-browser.d.ts +25 -2
- package/dist/core/persistence-browser.d.ts.map +1 -1
- package/dist/core/persistence.node.d.ts +25 -2
- package/dist/core/persistence.node.d.ts.map +1 -1
- package/dist/core/rule-engine-new.d.ts +2 -1
- package/dist/core/rule-engine-new.d.ts.map +1 -1
- package/dist/core/rule-engine.d.ts +22 -35
- package/dist/core/rule-engine.d.ts.map +1 -1
- package/dist/core/trigger-engine.d.ts +18 -25
- package/dist/core/trigger-engine.d.ts.map +1 -1
- package/dist/domain/validator.d.ts +36043 -5067
- package/dist/domain/validator.d.ts.map +1 -1
- package/dist/index.browser.d.ts +1 -0
- package/dist/index.browser.d.ts.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/io/index.d.ts +6 -1
- package/dist/io/index.d.ts.map +1 -1
- package/dist/io/loader/index.d.ts +48 -0
- package/dist/io/loader/index.d.ts.map +1 -0
- package/dist/io/loader/persistence.d.ts +41 -0
- package/dist/io/loader/persistence.d.ts.map +1 -0
- package/dist/io/loader/query.d.ts +49 -0
- package/dist/io/loader/query.d.ts.map +1 -0
- package/dist/io/loader/registry.d.ts +91 -0
- package/dist/io/loader/registry.d.ts.map +1 -0
- package/dist/io/loader/types.d.ts +32 -0
- package/dist/io/loader/types.d.ts.map +1 -0
- package/dist/io/loader/watch.d.ts +36 -0
- package/dist/io/loader/watch.d.ts.map +1 -0
- package/dist/io/loader.node.d.ts +1 -13
- package/dist/io/loader.node.d.ts.map +1 -1
- package/dist/lsp/hover-constants.d.ts +42 -0
- package/dist/lsp/hover-constants.d.ts.map +1 -0
- package/dist/lsp/server.bundle.d.ts +2 -0
- package/dist/lsp/server.bundle.d.ts.map +1 -0
- package/dist/node/index.js +183 -170
- package/dist/node/index.js.map +116 -91
- package/dist/node/node.js +185 -173
- package/dist/node/node.js.map +122 -93
- package/dist/node.d.ts +1 -1
- package/dist/node.d.ts.map +1 -1
- package/dist/sdk/builder.d.ts +177 -21
- package/dist/sdk/builder.d.ts.map +1 -1
- package/dist/sdk/builders/action-builder.d.ts +24 -0
- package/dist/sdk/builders/action-builder.d.ts.map +1 -0
- package/dist/sdk/builders/condition-builder.d.ts +26 -0
- package/dist/sdk/builders/condition-builder.d.ts.map +1 -0
- package/dist/sdk/builders/index.d.ts +5 -0
- package/dist/sdk/builders/index.d.ts.map +1 -0
- package/dist/sdk/builders/params-builder.d.ts +59 -0
- package/dist/sdk/builders/params-builder.d.ts.map +1 -0
- package/dist/sdk/constants.d.ts +44 -0
- package/dist/sdk/constants.d.ts.map +1 -0
- package/dist/sdk/exporter.d.ts +16 -0
- package/dist/sdk/exporter.d.ts.map +1 -1
- package/dist/sdk/graph/action-resolver.d.ts +103 -0
- package/dist/sdk/graph/action-resolver.d.ts.map +1 -0
- package/dist/sdk/graph/condition-resolver.d.ts +87 -0
- package/dist/sdk/graph/condition-resolver.d.ts.map +1 -0
- package/dist/sdk/graph/converters.d.ts +152 -0
- package/dist/sdk/graph/converters.d.ts.map +1 -0
- package/dist/sdk/graph/index.d.ts +12 -0
- package/dist/sdk/graph/index.d.ts.map +1 -0
- package/dist/sdk/graph/node-filters.d.ts +96 -0
- package/dist/sdk/graph/node-filters.d.ts.map +1 -0
- package/dist/sdk/graph/traversal.d.ts +105 -0
- package/dist/sdk/graph/traversal.d.ts.map +1 -0
- package/dist/sdk/graph/types.d.ts +28 -0
- package/dist/sdk/graph/types.d.ts.map +1 -0
- package/dist/sdk/graph-parser.d.ts +40 -0
- package/dist/sdk/graph-parser.d.ts.map +1 -0
- package/dist/sdk/index.d.ts +3 -0
- package/dist/sdk/index.d.ts.map +1 -1
- package/dist/sdk/optimize.d.ts +27 -0
- package/dist/sdk/optimize.d.ts.map +1 -0
- package/dist/sdk/yaml/converter.d.ts +81 -0
- package/dist/sdk/yaml/converter.d.ts.map +1 -0
- package/dist/sdk/yaml/index.d.ts +39 -0
- package/dist/sdk/yaml/index.d.ts.map +1 -0
- package/dist/sdk/yaml/normalizer.d.ts +44 -0
- package/dist/sdk/yaml/normalizer.d.ts.map +1 -0
- package/dist/sdk/yaml/types.d.ts +198 -0
- package/dist/sdk/yaml/types.d.ts.map +1 -0
- package/dist/sdk/yaml/utils.d.ts +131 -0
- package/dist/sdk/yaml/utils.d.ts.map +1 -0
- package/dist/sdk/yaml-parser.d.ts +18 -0
- package/dist/sdk/yaml-parser.d.ts.map +1 -0
- package/dist/types.d.ts +40 -2
- package/dist/types.d.ts.map +1 -1
- package/package.json +6 -1
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Condition Resolver - Handles condition collection and resolution
|
|
3
|
+
* Provides utilities for converting graph condition nodes to RuleCondition objects
|
|
4
|
+
*/
|
|
5
|
+
import type { SDKGraphNode, SDKGraphEdge, RuleCondition, TriggerRule, Action, ActionGroup } from '../../types';
|
|
6
|
+
import type { GraphParserContext, GraphParserOptions } from './types';
|
|
7
|
+
/**
|
|
8
|
+
* Base context interface for graph resolution
|
|
9
|
+
*/
|
|
10
|
+
export interface GraphResolverContextBase {
|
|
11
|
+
nodes: SDKGraphNode[];
|
|
12
|
+
edges: SDKGraphEdge[];
|
|
13
|
+
options: {
|
|
14
|
+
isCondNode?: (node: SDKGraphNode) => boolean;
|
|
15
|
+
isActNode?: (node: SDKGraphNode) => boolean;
|
|
16
|
+
isEventNode?: (node: SDKGraphNode) => boolean;
|
|
17
|
+
extractEventData?: (node: SDKGraphNode) => Partial<TriggerRule>;
|
|
18
|
+
resolveCondition?: (id: string, ctx: GraphParserContext) => RuleCondition | null;
|
|
19
|
+
resolveAction?: (id: string, ctx: any) => Action | ActionGroup | null;
|
|
20
|
+
};
|
|
21
|
+
transformers?: {
|
|
22
|
+
condition?: (cond: RuleCondition, node: SDKGraphNode) => RuleCondition | null;
|
|
23
|
+
action?: (act: Action | ActionGroup, node: SDKGraphNode) => Action | ActionGroup | null;
|
|
24
|
+
};
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Context for condition resolution - compatible with GraphParserContext
|
|
28
|
+
*/
|
|
29
|
+
export interface ConditionResolverContext extends GraphResolverContextBase {
|
|
30
|
+
visitedConds?: Set<string>;
|
|
31
|
+
visitedActs?: Set<string>;
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Transformer for conditions during resolution
|
|
35
|
+
*/
|
|
36
|
+
export interface ConditionTransformer {
|
|
37
|
+
/** Transform a condition after resolution */
|
|
38
|
+
condition?: (cond: RuleCondition, node: SDKGraphNode) => RuleCondition | null;
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Result of collecting conditions for a group
|
|
42
|
+
*/
|
|
43
|
+
export interface CollectedConditions {
|
|
44
|
+
conditions: RuleCondition[];
|
|
45
|
+
operator: 'AND' | 'OR';
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Collect all conditions that belong to a condition group (directly or via chaining).
|
|
49
|
+
* Returns the conditions and the operator of the group.
|
|
50
|
+
*/
|
|
51
|
+
export declare function collectConditionsForGroup(groupId: string, ctx: ConditionResolverContext): CollectedConditions;
|
|
52
|
+
/**
|
|
53
|
+
* Resolve a condition from a condition node ID
|
|
54
|
+
*/
|
|
55
|
+
export declare function resolveCondition(id: string, ctx: ConditionResolverContext): RuleCondition | null;
|
|
56
|
+
/**
|
|
57
|
+
* Find terminal condition(s) in a condition chain (where actions connect).
|
|
58
|
+
* Returns then/else action IDs.
|
|
59
|
+
*/
|
|
60
|
+
export interface TerminalActions {
|
|
61
|
+
thenActionId?: string;
|
|
62
|
+
elseActionId?: string;
|
|
63
|
+
}
|
|
64
|
+
export declare function findTerminalConditions(startConditionId: string, ctx: ConditionResolverContext): TerminalActions;
|
|
65
|
+
/**
|
|
66
|
+
* ConditionResolver class - Fluent interface for condition resolution
|
|
67
|
+
*/
|
|
68
|
+
export declare class ConditionResolver {
|
|
69
|
+
private ctx;
|
|
70
|
+
private isCond;
|
|
71
|
+
constructor(nodes: SDKGraphNode[], edges: SDKGraphEdge[], visitedConds: Set<string>, options?: GraphParserOptions, transformers?: ConditionTransformer);
|
|
72
|
+
/** Get the resolution context */
|
|
73
|
+
getContext(): ConditionResolverContext;
|
|
74
|
+
/** Check if a node is a condition */
|
|
75
|
+
isCondition(node: SDKGraphNode): boolean;
|
|
76
|
+
/** Resolve a condition by ID */
|
|
77
|
+
resolve(id: string): RuleCondition | null;
|
|
78
|
+
/** Collect conditions for a group */
|
|
79
|
+
collectForGroup(groupId: string): CollectedConditions;
|
|
80
|
+
/** Find terminal actions from a condition */
|
|
81
|
+
findTerminals(conditionId: string): TerminalActions;
|
|
82
|
+
/** Create a new resolver with additional options */
|
|
83
|
+
withOptions(options: Partial<GraphParserOptions>): ConditionResolver;
|
|
84
|
+
/** Create a new resolver with transformers */
|
|
85
|
+
withTransformers(transformers: ConditionTransformer): ConditionResolver;
|
|
86
|
+
}
|
|
87
|
+
//# sourceMappingURL=condition-resolver.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"condition-resolver.d.ts","sourceRoot":"","sources":["../../../src/sdk/graph/condition-resolver.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graph Converters - Interfaces for data transformation
|
|
3
|
+
* Provides interfaces for converting between graph data and rule structures
|
|
4
|
+
*/
|
|
5
|
+
import type { SDKGraphNode, SDKGraphEdge, TriggerRule, RuleCondition, Action, ComparisonOperator } from '../../types';
|
|
6
|
+
/**
|
|
7
|
+
* Data transformation options
|
|
8
|
+
*/
|
|
9
|
+
export interface TransformOptions {
|
|
10
|
+
/** Enable debug logging */
|
|
11
|
+
debug?: boolean;
|
|
12
|
+
/** Strict mode - throw on errors */
|
|
13
|
+
strict?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Base converter interface for node data transformation
|
|
17
|
+
*/
|
|
18
|
+
export interface INodeConverter<TNodeData, TOutput> {
|
|
19
|
+
/** Convert node data to output format */
|
|
20
|
+
convert(nodeData: TNodeData, context: ConverterContext): TOutput;
|
|
21
|
+
/** Validate the input data */
|
|
22
|
+
validate?(nodeData: TNodeData): ValidationResult;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Validation result
|
|
26
|
+
*/
|
|
27
|
+
export interface ValidationResult {
|
|
28
|
+
valid: boolean;
|
|
29
|
+
errors?: string[];
|
|
30
|
+
warnings?: string[];
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* Context passed to converters
|
|
34
|
+
*/
|
|
35
|
+
export interface ConverterContext {
|
|
36
|
+
/** All nodes in the graph */
|
|
37
|
+
nodes: SDKGraphNode[];
|
|
38
|
+
/** All edges in the graph */
|
|
39
|
+
edges: SDKGraphEdge[];
|
|
40
|
+
/** Current node being processed */
|
|
41
|
+
currentNode?: SDKGraphNode;
|
|
42
|
+
/** Additional metadata */
|
|
43
|
+
metadata?: Record<string, unknown>;
|
|
44
|
+
/** Options for transformation */
|
|
45
|
+
options?: TransformOptions;
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Condition data from a graph node
|
|
49
|
+
*/
|
|
50
|
+
export interface ConditionNodeData {
|
|
51
|
+
field?: string;
|
|
52
|
+
operator?: ComparisonOperator;
|
|
53
|
+
value?: unknown;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Action data from a graph node
|
|
57
|
+
*/
|
|
58
|
+
export interface ActionNodeData {
|
|
59
|
+
type?: string;
|
|
60
|
+
params?: Record<string, unknown> | string;
|
|
61
|
+
delay?: number;
|
|
62
|
+
probability?: number;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* Event data from a graph node
|
|
66
|
+
*/
|
|
67
|
+
export interface EventNodeData {
|
|
68
|
+
id?: string;
|
|
69
|
+
name?: string;
|
|
70
|
+
description?: string;
|
|
71
|
+
event?: string;
|
|
72
|
+
priority?: number | string;
|
|
73
|
+
enabled?: boolean;
|
|
74
|
+
cooldown?: number | string;
|
|
75
|
+
tags?: string[];
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Condition group data
|
|
79
|
+
*/
|
|
80
|
+
export interface ConditionGroupData {
|
|
81
|
+
operator?: 'AND' | 'OR';
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Action group data
|
|
85
|
+
*/
|
|
86
|
+
export interface ActionGroupData {
|
|
87
|
+
mode?: 'ALL' | 'FIRST' | 'RANDOM';
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* DO node data
|
|
91
|
+
*/
|
|
92
|
+
export interface DoNodeData {
|
|
93
|
+
branchType?: 'do' | 'else';
|
|
94
|
+
}
|
|
95
|
+
/**
|
|
96
|
+
* Condition converter - converts condition nodes to RuleCondition
|
|
97
|
+
*/
|
|
98
|
+
export declare class ConditionConverter implements INodeConverter<ConditionNodeData, RuleCondition> {
|
|
99
|
+
convert(nodeData: ConditionNodeData, _context: ConverterContext): RuleCondition;
|
|
100
|
+
validate(nodeData: ConditionNodeData): ValidationResult;
|
|
101
|
+
}
|
|
102
|
+
/**
|
|
103
|
+
* Action converter - converts action nodes to Action
|
|
104
|
+
*/
|
|
105
|
+
export declare class ActionConverter implements INodeConverter<ActionNodeData, Action> {
|
|
106
|
+
convert(nodeData: ActionNodeData, _context: ConverterContext): Action;
|
|
107
|
+
validate(nodeData: ActionNodeData): ValidationResult;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Event converter - converts event nodes to TriggerRule metadata
|
|
111
|
+
*/
|
|
112
|
+
export declare class EventConverter implements INodeConverter<EventNodeData, Partial<TriggerRule>> {
|
|
113
|
+
convert(nodeData: EventNodeData, _context: ConverterContext): Partial<TriggerRule>;
|
|
114
|
+
validate(nodeData: EventNodeData): ValidationResult;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Factory for creating converters
|
|
118
|
+
*/
|
|
119
|
+
export declare class ConverterFactory {
|
|
120
|
+
private conditionConverter;
|
|
121
|
+
private actionConverter;
|
|
122
|
+
private eventConverter;
|
|
123
|
+
/** Get condition converter */
|
|
124
|
+
getConditionConverter(): ConditionConverter;
|
|
125
|
+
/** Get action converter */
|
|
126
|
+
getActionConverter(): ActionConverter;
|
|
127
|
+
/** Get event converter */
|
|
128
|
+
getEventConverter(): EventConverter;
|
|
129
|
+
/** Create converter context */
|
|
130
|
+
createContext(nodes: SDKGraphNode[], edges: SDKGraphEdge[], currentNode?: SDKGraphNode, options?: TransformOptions): ConverterContext;
|
|
131
|
+
}
|
|
132
|
+
/**
|
|
133
|
+
* Default converter factory instance
|
|
134
|
+
*/
|
|
135
|
+
export declare const converterFactory: ConverterFactory;
|
|
136
|
+
/**
|
|
137
|
+
* Convert action params from string to object
|
|
138
|
+
*/
|
|
139
|
+
export declare function parseActionParams(params: Record<string, unknown> | string | undefined): Record<string, unknown>;
|
|
140
|
+
/**
|
|
141
|
+
* Convert node data to condition
|
|
142
|
+
*/
|
|
143
|
+
export declare function nodeToCondition(node: SDKGraphNode): RuleCondition;
|
|
144
|
+
/**
|
|
145
|
+
* Convert node data to action
|
|
146
|
+
*/
|
|
147
|
+
export declare function nodeToAction(node: SDKGraphNode): Action;
|
|
148
|
+
/**
|
|
149
|
+
* Convert node data to event data
|
|
150
|
+
*/
|
|
151
|
+
export declare function nodeToEventData(node: SDKGraphNode): Partial<TriggerRule>;
|
|
152
|
+
//# sourceMappingURL=converters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"converters.d.ts","sourceRoot":"","sources":["../../../src/sdk/graph/converters.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graph Utilities Index
|
|
3
|
+
* Re-exports all graph-related utilities for easy importing
|
|
4
|
+
*/
|
|
5
|
+
export { NodeFilter, createNodeFilterConfig, defaultIsEventNode, defaultIsDoNode, isConditionGroup, isActionGroup, getDoBranchType, isElseBranch, isDoBranch, extractEventData, type NodePredicate, type NodeFilterConfig } from './node-filters';
|
|
6
|
+
export { defaultIsCondNode, defaultIsActNode } from './node-filters';
|
|
7
|
+
export * from './traversal';
|
|
8
|
+
export * from './converters';
|
|
9
|
+
export { ConditionResolver, collectConditionsForGroup, resolveCondition, findTerminalConditions, type ConditionResolverContext, type ConditionTransformer, type CollectedConditions, type TerminalActions } from './condition-resolver';
|
|
10
|
+
export { ActionResolver, collectActionsForGroup, resolveAction, categorizeDoNodesByBranch, type ActionResolverContext, type ActionResolverOptions, type ActionTransformer, type CollectedActions, type DoBranches } from './action-resolver';
|
|
11
|
+
export type { GraphResolverContextBase } from './condition-resolver';
|
|
12
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/sdk/graph/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,EACL,UAAU,EACV,sBAAsB,EACtB,kBAAkB,EAClB,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,eAAe,EACf,YAAY,EACZ,UAAU,EACV,gBAAgB,EAChB,KAAK,aAAa,EAClB,KAAK,gBAAgB,EACtB,MAAM,gBAAgB,CAAC;AAGxB,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAGrE,cAAc,aAAa,CAAC;AAG5B,cAAc,cAAc,CAAC;AAG7B,OAAO,EACL,iBAAiB,EACjB,yBAAyB,EACzB,gBAAgB,EAChB,sBAAsB,EACtB,KAAK,wBAAwB,EAC7B,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,eAAe,EACrB,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EACL,cAAc,EACd,sBAAsB,EACtB,aAAa,EACb,yBAAyB,EACzB,KAAK,qBAAqB,EAC1B,KAAK,qBAAqB,EAC1B,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,EACrB,KAAK,UAAU,EAChB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC"}
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Node Filters - Type checking utilities for graph nodes
|
|
3
|
+
* Provides centralized node type detection for the graph parser
|
|
4
|
+
*/
|
|
5
|
+
import { BranchType } from '../constants';
|
|
6
|
+
import type { SDKGraphNode, TriggerRule } from '../../types';
|
|
7
|
+
/**
|
|
8
|
+
* Type predicates for node classification
|
|
9
|
+
*/
|
|
10
|
+
export type NodePredicate = (node: SDKGraphNode) => boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Configuration for node type detection
|
|
13
|
+
*/
|
|
14
|
+
export interface NodeFilterConfig {
|
|
15
|
+
/** Custom predicate for event nodes */
|
|
16
|
+
isEventNode?: NodePredicate;
|
|
17
|
+
/** Custom predicate for condition nodes */
|
|
18
|
+
isCondNode?: NodePredicate;
|
|
19
|
+
/** Custom predicate for action nodes */
|
|
20
|
+
isActNode?: NodePredicate;
|
|
21
|
+
/** Custom function to extract event data */
|
|
22
|
+
extractEventData?: (node: SDKGraphNode) => Partial<TriggerRule>;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Default event node detector
|
|
26
|
+
*/
|
|
27
|
+
export declare const defaultIsEventNode: NodePredicate;
|
|
28
|
+
/**
|
|
29
|
+
* Default condition node detector (single condition or condition group)
|
|
30
|
+
*/
|
|
31
|
+
export declare const defaultIsCondNode: NodePredicate;
|
|
32
|
+
/**
|
|
33
|
+
* Default action node detector (single action, action group, or DO node)
|
|
34
|
+
*/
|
|
35
|
+
export declare const defaultIsActNode: NodePredicate;
|
|
36
|
+
/**
|
|
37
|
+
* Default DO node detector
|
|
38
|
+
*/
|
|
39
|
+
export declare const defaultIsDoNode: NodePredicate;
|
|
40
|
+
/**
|
|
41
|
+
* Check if a node is a condition group
|
|
42
|
+
*/
|
|
43
|
+
export declare const isConditionGroup: (node: SDKGraphNode) => boolean;
|
|
44
|
+
/**
|
|
45
|
+
* Check if a node is an action group
|
|
46
|
+
*/
|
|
47
|
+
export declare const isActionGroup: (node: SDKGraphNode) => boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Get the branch type for a DO node
|
|
50
|
+
*/
|
|
51
|
+
export declare const getDoBranchType: (node: SDKGraphNode) => BranchType;
|
|
52
|
+
/**
|
|
53
|
+
* Check if a DO node is an else branch
|
|
54
|
+
*/
|
|
55
|
+
export declare const isElseBranch: (node: SDKGraphNode) => boolean;
|
|
56
|
+
/**
|
|
57
|
+
* Check if a DO node is a do branch (then path)
|
|
58
|
+
*/
|
|
59
|
+
export declare const isDoBranch: (node: SDKGraphNode) => boolean;
|
|
60
|
+
/**
|
|
61
|
+
* Default event data extractor
|
|
62
|
+
*/
|
|
63
|
+
export declare function extractEventData(node: SDKGraphNode): Partial<TriggerRule>;
|
|
64
|
+
/**
|
|
65
|
+
* Create a filter configuration with defaults
|
|
66
|
+
*/
|
|
67
|
+
export declare function createNodeFilterConfig(overrides?: NodeFilterConfig): Required<NodeFilterConfig>;
|
|
68
|
+
/**
|
|
69
|
+
* NodeFilter class - Fluent interface for node type checking
|
|
70
|
+
*/
|
|
71
|
+
export declare class NodeFilter {
|
|
72
|
+
private _isEvent;
|
|
73
|
+
private _isCond;
|
|
74
|
+
private _isAct;
|
|
75
|
+
private _extractEvent;
|
|
76
|
+
constructor(config?: NodeFilterConfig);
|
|
77
|
+
/** Check if node is an event */
|
|
78
|
+
isEvent(node: SDKGraphNode): boolean;
|
|
79
|
+
/** Check if node is a condition (single or group) */
|
|
80
|
+
isCondition(node: SDKGraphNode): boolean;
|
|
81
|
+
/** Check if node is an action (single or group or DO) */
|
|
82
|
+
isAction(node: SDKGraphNode): boolean;
|
|
83
|
+
/** Check if node is a DO node */
|
|
84
|
+
isDo(node: SDKGraphNode): boolean;
|
|
85
|
+
/** Extract event data from node */
|
|
86
|
+
extractEvent(node: SDKGraphNode): Partial<TriggerRule>;
|
|
87
|
+
/** Set custom event node predicate */
|
|
88
|
+
withEventPredicate(predicate: NodePredicate): this;
|
|
89
|
+
/** Set custom condition node predicate */
|
|
90
|
+
withConditionPredicate(predicate: NodePredicate): this;
|
|
91
|
+
/** Set custom action node predicate */
|
|
92
|
+
withActionPredicate(predicate: NodePredicate): this;
|
|
93
|
+
/** Set custom event data extractor */
|
|
94
|
+
withEventExtractor(extractor: (node: SDKGraphNode) => Partial<TriggerRule>): this;
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=node-filters.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"node-filters.d.ts","sourceRoot":"","sources":["../../../src/sdk/graph/node-filters.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAY,UAAU,EAAY,MAAM,cAAc,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE7D;;GAEG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC;AAE5D;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,uCAAuC;IACvC,WAAW,CAAC,EAAE,aAAa,CAAC;IAC5B,2CAA2C;IAC3C,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,wCAAwC;IACxC,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,4CAA4C;IAC5C,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;CACjE;AAED;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,aACN,CAAC;AAE5B;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,aACsC,CAAC;AAEvE;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,aAC2D,CAAC;AAE3F;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,aACN,CAAC;AAEzB;;GAEG;AACH,eAAO,MAAM,gBAAgB,GAAI,MAAM,YAAY,KAAG,OACd,CAAC;AAEzC;;GAEG;AACH,eAAO,MAAM,aAAa,GAAI,MAAM,YAAY,KAAG,OACd,CAAC;AAEtC;;GAEG;AACH,eAAO,MAAM,eAAe,GAAI,MAAM,YAAY,KAAG,UAEpD,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,YAAY,GAAI,MAAM,YAAY,KAAG,OACP,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,UAAU,GAAI,MAAM,YAAY,KAAG,OACP,CAAC;AAE1C;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC,CAYzE;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,SAAS,CAAC,EAAE,gBAAgB,GAC3B,QAAQ,CAAC,gBAAgB,CAAC,CAO5B;AAED;;GAEG;AACH,qBAAa,UAAU;IACrB,OAAO,CAAC,QAAQ,CAAgB;IAChC,OAAO,CAAC,OAAO,CAAgB;IAC/B,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,aAAa,CAA+C;gBAExD,MAAM,CAAC,EAAE,gBAAgB;IAQrC,gCAAgC;IAChC,OAAO,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO;IAIpC,qDAAqD;IACrD,WAAW,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO;IAIxC,yDAAyD;IACzD,QAAQ,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO;IAIrC,iCAAiC;IACjC,IAAI,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO;IAIjC,mCAAmC;IACnC,YAAY,CAAC,IAAI,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IAItD,sCAAsC;IACtC,kBAAkB,CAAC,SAAS,EAAE,aAAa,GAAG,IAAI;IAKlD,0CAA0C;IAC1C,sBAAsB,CAAC,SAAS,EAAE,aAAa,GAAG,IAAI;IAKtD,uCAAuC;IACvC,mBAAmB,CAAC,SAAS,EAAE,aAAa,GAAG,IAAI;IAKnD,sCAAsC;IACtC,kBAAkB,CAAC,SAAS,EAAE,CAAC,IAAI,EAAE,YAAY,KAAK,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI;CAIlF"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graph Traversal Utilities
|
|
3
|
+
* Provides utilities for traversing and finding nodes in the graph
|
|
4
|
+
*/
|
|
5
|
+
import type { SDKGraphNode, SDKGraphEdge } from '../../types';
|
|
6
|
+
/**
|
|
7
|
+
* Context for graph traversal operations
|
|
8
|
+
*/
|
|
9
|
+
export interface GraphTraversalContext {
|
|
10
|
+
nodes: SDKGraphNode[];
|
|
11
|
+
edges: SDKGraphEdge[];
|
|
12
|
+
}
|
|
13
|
+
/** Type for handle arrays - accepts both mutable and readonly */
|
|
14
|
+
export type HandleArray = readonly string[] | string[];
|
|
15
|
+
/**
|
|
16
|
+
* Find a node by ID in the context
|
|
17
|
+
*/
|
|
18
|
+
export declare function findNodeById(ctx: GraphTraversalContext, nodeId: string): SDKGraphNode | undefined;
|
|
19
|
+
/**
|
|
20
|
+
* Find edges matching a specific source node and handle
|
|
21
|
+
*/
|
|
22
|
+
export declare function findEdgesBySource(ctx: GraphTraversalContext, sourceId: string, handles: HandleArray): SDKGraphEdge[];
|
|
23
|
+
/**
|
|
24
|
+
* Find edges matching a specific target node
|
|
25
|
+
*/
|
|
26
|
+
export declare function findEdgesByTarget(ctx: GraphTraversalContext, targetId: string): SDKGraphEdge[];
|
|
27
|
+
/**
|
|
28
|
+
* Find all nodes connected from a source node via specific handles
|
|
29
|
+
*/
|
|
30
|
+
export declare function findConnectedNodeIds(ctx: GraphTraversalContext, sourceId: string, handles: HandleArray): string[];
|
|
31
|
+
/**
|
|
32
|
+
* Find all nodes of a specific type connected from a source node
|
|
33
|
+
*/
|
|
34
|
+
export declare function findConnectedNodes<T extends SDKGraphNode>(ctx: GraphTraversalContext, sourceId: string, handles: HandleArray, typeFilter: (node: SDKGraphNode) => boolean): T[];
|
|
35
|
+
/**
|
|
36
|
+
* Find nodes directly connected to a source node (any handle)
|
|
37
|
+
*/
|
|
38
|
+
export declare function findDirectSuccessors(ctx: GraphTraversalContext, sourceId: string): SDKGraphNode[];
|
|
39
|
+
/**
|
|
40
|
+
* Find nodes that connect to a target node
|
|
41
|
+
*/
|
|
42
|
+
export declare function findDirectPredecessors(ctx: GraphTraversalContext, targetId: string): SDKGraphNode[];
|
|
43
|
+
/**
|
|
44
|
+
* Get all outgoing edges from a node
|
|
45
|
+
*/
|
|
46
|
+
export declare function getOutgoingEdges(ctx: GraphTraversalContext, nodeId: string): SDKGraphEdge[];
|
|
47
|
+
/**
|
|
48
|
+
* Get all incoming edges to a node
|
|
49
|
+
*/
|
|
50
|
+
export declare function getIncomingEdges(ctx: GraphTraversalContext, nodeId: string): SDKGraphEdge[];
|
|
51
|
+
/**
|
|
52
|
+
* Get connected edges with optional handle filtering
|
|
53
|
+
*/
|
|
54
|
+
export declare function getConnectedEdges(ctx: GraphTraversalContext, nodeId: string, options?: {
|
|
55
|
+
direction?: 'outgoing' | 'incoming' | 'both';
|
|
56
|
+
sourceHandles?: HandleArray;
|
|
57
|
+
targetHandles?: HandleArray;
|
|
58
|
+
}): SDKGraphEdge[];
|
|
59
|
+
/**
|
|
60
|
+
* Common handle arrays for graph traversal
|
|
61
|
+
*/
|
|
62
|
+
export declare const HandleFilters: {
|
|
63
|
+
/** All condition output handles (for chaining conditions) */
|
|
64
|
+
readonly CONDITION_OUTPUT: readonly ["output", "condition-output"];
|
|
65
|
+
/** All action output handles */
|
|
66
|
+
readonly ACTION_OUTPUT: readonly ["action-output", "action-group-output"];
|
|
67
|
+
/** All DO output handles */
|
|
68
|
+
readonly DO_OUTPUT: readonly ["do-output", ""];
|
|
69
|
+
/** Then/else outputs from conditions (for terminal actions) */
|
|
70
|
+
readonly THEN_ELSE: readonly ["then-output", "else-output"];
|
|
71
|
+
/** DO condition output for inline conditionals */
|
|
72
|
+
readonly DO_CONDITION: readonly ["do-condition-output"];
|
|
73
|
+
/** All condition/thence outputs - includes then-output for condition→action_group */
|
|
74
|
+
readonly CONDITION_CHAIN: readonly ["output", "condition-output", "then-output", "else-output"];
|
|
75
|
+
/** Any output handle */
|
|
76
|
+
readonly ANY: readonly ["output", "condition-output", ""];
|
|
77
|
+
};
|
|
78
|
+
/**
|
|
79
|
+
* GraphTraversal class - Fluent interface for graph traversal
|
|
80
|
+
*/
|
|
81
|
+
export declare class GraphTraversal {
|
|
82
|
+
private ctx;
|
|
83
|
+
constructor(nodes: SDKGraphNode[], edges: SDKGraphEdge[]);
|
|
84
|
+
/** Find a node by ID */
|
|
85
|
+
node(id: string): SDKGraphNode | undefined;
|
|
86
|
+
/** Get outgoing edges from a node */
|
|
87
|
+
outgoing(nodeId: string): SDKGraphEdge[];
|
|
88
|
+
/** Get incoming edges to a node */
|
|
89
|
+
incoming(nodeId: string): SDKGraphEdge[];
|
|
90
|
+
/** Get connected edges with filtering */
|
|
91
|
+
connected(nodeId: string, options?: {
|
|
92
|
+
direction?: 'outgoing' | 'incoming' | 'both';
|
|
93
|
+
sourceHandles?: string[];
|
|
94
|
+
targetHandles?: string[];
|
|
95
|
+
}): SDKGraphEdge[];
|
|
96
|
+
/** Find connected node IDs by handles */
|
|
97
|
+
successors(nodeId: string, handles: HandleArray): string[];
|
|
98
|
+
/** Find connected nodes by type filter */
|
|
99
|
+
find<T extends SDKGraphNode>(sourceId: string, handles: HandleArray, typeFilter: (node: SDKGraphNode) => boolean): T[];
|
|
100
|
+
/** Get direct successors (any handle) */
|
|
101
|
+
directSuccessors(nodeId: string): SDKGraphNode[];
|
|
102
|
+
/** Get direct predecessors */
|
|
103
|
+
directPredecessors(nodeId: string): SDKGraphNode[];
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=traversal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"traversal.d.ts","sourceRoot":"","sources":["../../../src/sdk/graph/traversal.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { TriggerRule, RuleCondition, Action, ActionGroup, SDKGraphNode, SDKGraphEdge } from '../../types';
|
|
2
|
+
import type { OptimizeOptions } from '../builder';
|
|
3
|
+
export interface GraphParserOptions {
|
|
4
|
+
isEventNode?: (n: SDKGraphNode) => boolean;
|
|
5
|
+
isCondNode?: (n: SDKGraphNode) => boolean;
|
|
6
|
+
isActNode?: (n: SDKGraphNode) => boolean;
|
|
7
|
+
extractEventData?: (n: SDKGraphNode) => Partial<TriggerRule>;
|
|
8
|
+
resolveCondition?: (id: string, ctx: GraphParserContext) => RuleCondition | null;
|
|
9
|
+
resolveAction?: (id: string, ctx: GraphParserContext) => Action | ActionGroup | null;
|
|
10
|
+
/**
|
|
11
|
+
* Options to control deduplication behavior.
|
|
12
|
+
* Use this to keep intentional duplicates (for templates) or use uniqueIdField
|
|
13
|
+
* to differentiate items that should not be merged.
|
|
14
|
+
*/
|
|
15
|
+
optimizeOptions?: OptimizeOptions;
|
|
16
|
+
}
|
|
17
|
+
export interface GraphParserContext {
|
|
18
|
+
nodes: SDKGraphNode[];
|
|
19
|
+
edges: SDKGraphEdge[];
|
|
20
|
+
visitedConds?: Set<string>;
|
|
21
|
+
visitedActs?: Set<string>;
|
|
22
|
+
options: GraphParserOptions;
|
|
23
|
+
transformers?: {
|
|
24
|
+
condition?: (cond: RuleCondition, node: SDKGraphNode) => RuleCondition | null;
|
|
25
|
+
action?: (act: Action | ActionGroup, node: SDKGraphNode) => Action | ActionGroup | null;
|
|
26
|
+
};
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/sdk/graph/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACb,MAAM,EACN,WAAW,EACX,YAAY,EACZ,YAAY,EACb,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAMlD,MAAM,WAAW,kBAAkB;IACjC,WAAW,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IAC3C,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IAC1C,SAAS,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC;IACzC,gBAAgB,CAAC,EAAE,CAAC,CAAC,EAAE,YAAY,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAC7D,gBAAgB,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,KAAK,aAAa,GAAG,IAAI,CAAC;IACjF,aAAa,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,KAAK,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC;IACrF;;;;OAIG;IACH,eAAe,CAAC,EAAE,eAAe,CAAC;CACnC;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,KAAK,EAAE,YAAY,EAAE,CAAC;IACtB,YAAY,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC3B,WAAW,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B,OAAO,EAAE,kBAAkB,CAAC;IAC5B,YAAY,CAAC,EAAE;QACb,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,YAAY,KAAK,aAAa,GAAG,IAAI,CAAC;QAC9E,MAAM,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,GAAG,WAAW,EAAE,IAAI,EAAE,YAAY,KAAK,MAAM,GAAG,WAAW,GAAG,IAAI,CAAC;KACzF,CAAA;CACF"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Graph Parser - Main entry point for parsing graph structures into rules
|
|
3
|
+
* This module coordinates the conversion of SDKGraphNode/SDKGraphEdge to TriggerRule
|
|
4
|
+
*/
|
|
5
|
+
import { RuleBuilder } from './builder';
|
|
6
|
+
import { BranchType } from './constants';
|
|
7
|
+
import type { TriggerRule, Action, ActionGroup, SDKGraphNode, SDKGraphEdge, InlineConditionalAction } from '../types';
|
|
8
|
+
import { extractEventData } from './graph';
|
|
9
|
+
import type { GraphParserOptions, GraphParserContext } from './graph/types';
|
|
10
|
+
export type { GraphParserOptions, GraphParserContext } from './graph/types';
|
|
11
|
+
export declare function createParserContext(nodes: SDKGraphNode[], edges: SDKGraphEdge[], options?: GraphParserOptions, transformers?: GraphParserContext['transformers']): GraphParserContext;
|
|
12
|
+
export declare const defaultGetDoBranchType: (node: SDKGraphNode) => BranchType;
|
|
13
|
+
export declare const defaultExtractEventData: typeof extractEventData;
|
|
14
|
+
/**
|
|
15
|
+
* Collect all actions from a DO node, including:
|
|
16
|
+
* - Direct actions via do-output
|
|
17
|
+
* - Inline conditionals via do-condition-output
|
|
18
|
+
* Returns an array of actions that should be executed in order (mode: ALL)
|
|
19
|
+
*/
|
|
20
|
+
export declare function collectDoActions(doNodeId: string, ctx: GraphParserContext, sourceConditionId?: string): (Action | ActionGroup | InlineConditionalAction)[];
|
|
21
|
+
/**
|
|
22
|
+
* Find the terminal condition(s) in a condition chain (where actions connect).
|
|
23
|
+
* Returns then/else action IDs.
|
|
24
|
+
*/
|
|
25
|
+
export declare function findTerminalActions(startConditionId: string, ctx: GraphParserContext): {
|
|
26
|
+
thenActionId?: string;
|
|
27
|
+
elseActionId?: string;
|
|
28
|
+
};
|
|
29
|
+
export declare function parseGraph(nodes: SDKGraphNode[], edges: SDKGraphEdge[], options?: GraphParserOptions, transformers?: GraphParserContext['transformers']): RuleBuilder;
|
|
30
|
+
/**
|
|
31
|
+
* Parse a graph with multiple event nodes and return multiple rules.
|
|
32
|
+
* This allows editing multiple rules in a single editor view.
|
|
33
|
+
*
|
|
34
|
+
* Each Event node in the graph becomes a separate TriggerRule.
|
|
35
|
+
*/
|
|
36
|
+
export declare function parseGraphToRules(nodes: SDKGraphNode[], edges: SDKGraphEdge[], options?: GraphParserOptions, transformers?: GraphParserContext['transformers']): {
|
|
37
|
+
rules: TriggerRule[];
|
|
38
|
+
errors: string[];
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=graph-parser.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph-parser.d.ts","sourceRoot":"","sources":["../../src/sdk/graph-parser.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAY,UAAU,EAAY,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EACV,WAAW,EAEX,MAAM,EACN,WAAW,EAEX,YAAY,EACZ,YAAY,EACZ,uBAAuB,EACxB,MAAM,UAAU,CAAC;AAGlB,OAAO,EAML,gBAAgB,EAQjB,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,kBAAkB,EAAC,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAE3E,YAAY,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAM5E,wBAAgB,mBAAmB,CACjC,KAAK,EAAE,YAAY,EAAE,EACrB,KAAK,EAAE,YAAY,EAAE,EACrB,OAAO,GAAE,kBAAuB,EAChC,YAAY,CAAC,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAChD,kBAAkB,CAgBpB;AAOD,eAAO,MAAM,sBAAsB,oCAAkB,CAAC;AACtD,eAAO,MAAM,uBAAuB,yBAAmB,CAAC;AAiFxD;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAC9B,QAAQ,EAAE,MAAM,EAChB,GAAG,EAAE,kBAAkB,EACvB,iBAAiB,CAAC,EAAE,MAAM,GACzB,CAAC,MAAM,GAAG,WAAW,GAAG,uBAAuB,CAAC,EAAE,CAyBpD;AAKD;;;GAGG;AACH,wBAAgB,mBAAmB,CACjC,gBAAgB,EAAE,MAAM,EACxB,GAAG,EAAE,kBAAkB,GACtB;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,YAAY,CAAC,EAAE,MAAM,CAAA;CAAE,CA2FlD;AAMD,wBAAgB,UAAU,CACxB,KAAK,EAAE,YAAY,EAAE,EACrB,KAAK,EAAE,YAAY,EAAE,EACrB,OAAO,GAAE,kBAAuB,EAChC,YAAY,CAAC,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAChD,WAAW,CAkRb;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,YAAY,EAAE,EACrB,KAAK,EAAE,YAAY,EAAE,EACrB,OAAO,GAAE,kBAAuB,EAChC,YAAY,CAAC,EAAE,kBAAkB,CAAC,cAAc,CAAC,GAChD;IAAE,KAAK,EAAE,WAAW,EAAE,CAAC;IAAC,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAwD5C"}
|
package/dist/sdk/index.d.ts
CHANGED
package/dist/sdk/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sdk/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/sdk/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,YAAY,CAAC;AAC3B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,aAAa,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import type { RuleCondition, Action, ActionGroup } from "../types";
|
|
2
|
+
/**
|
|
3
|
+
* Options for controlling deduplication behavior.
|
|
4
|
+
*/
|
|
5
|
+
export interface OptimizeOptions {
|
|
6
|
+
/**
|
|
7
|
+
* Whether to deduplicate conditions/actions.
|
|
8
|
+
* Default: true (for conditions), false (for actions) - backward compatible
|
|
9
|
+
* Set to false to keep all duplicates (useful for templates where repetition is intentional)
|
|
10
|
+
*/
|
|
11
|
+
deduplicate?: boolean;
|
|
12
|
+
/**
|
|
13
|
+
* Unique identifier field to use for comparing items.
|
|
14
|
+
* If provided, items with different IDs are considered different even if other fields match.
|
|
15
|
+
* This allows intentional duplicates (same content, different IDs) to be preserved.
|
|
16
|
+
*/
|
|
17
|
+
uniqueIdField?: string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Optimize conditions by deduplicating and flattening nested groups.
|
|
21
|
+
*/
|
|
22
|
+
export declare function optimizeCondition(cond: RuleCondition | RuleCondition[], options?: OptimizeOptions): RuleCondition | RuleCondition[] | undefined;
|
|
23
|
+
/**
|
|
24
|
+
* Optimize actions by deduplicating and flattening nested groups.
|
|
25
|
+
*/
|
|
26
|
+
export declare function optimizeAction(act: Action | ActionGroup | (Action | ActionGroup)[], options?: OptimizeOptions): Action | ActionGroup | (Action | ActionGroup)[] | undefined;
|
|
27
|
+
//# sourceMappingURL=optimize.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"optimize.d.ts","sourceRoot":"","sources":["../../src/sdk/optimize.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAEnE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B;;;;OAIG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AA6BD;;GAEG;AACH,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,aAAa,GAAG,aAAa,EAAE,EACrC,OAAO,GAAE,eAAoB,GAC5B,aAAa,GAAG,aAAa,EAAE,GAAG,SAAS,CAqD7C;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,GAAG,EAAE,MAAM,GAAG,WAAW,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,EAAE,EACpD,OAAO,GAAE,eAAoB,GAC5B,MAAM,GAAG,WAAW,GAAG,CAAC,MAAM,GAAG,WAAW,CAAC,EAAE,GAAG,SAAS,CAwF7D"}
|