@goplasmatic/datalogic-ui 5.2.0 → 5.3.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.
- package/README.md +163 -32
- package/dist/components/logic-editor/DataLogicEditor.d.ts +1 -1
- package/dist/components/logic-editor/DataLogicEditor.d.ts.map +1 -1
- package/dist/components/logic-editor/EditorToolbar.d.ts +8 -1
- package/dist/components/logic-editor/EditorToolbar.d.ts.map +1 -1
- package/dist/components/logic-editor/KeyboardHandler.d.ts.map +1 -1
- package/dist/components/logic-editor/config/arity.d.ts +3 -0
- package/dist/components/logic-editor/config/arity.d.ts.map +1 -0
- package/dist/components/logic-editor/config/categories.d.ts +7 -2
- package/dist/components/logic-editor/config/categories.d.ts.map +1 -1
- package/dist/components/logic-editor/config/docs.d.ts +11 -0
- package/dist/components/logic-editor/config/docs.d.ts.map +1 -0
- package/dist/components/logic-editor/config/literalPanel.d.ts +4 -0
- package/dist/components/logic-editor/config/literalPanel.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/arithmetic-basic.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/arithmetic-functions.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/array-iteration.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/array-manipulation.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/array.d.ts +1 -1
- package/dist/components/logic-editor/config/operators/control.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/datetime.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/error.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/flagd.d.ts +3 -0
- package/dist/components/logic-editor/config/operators/flagd.d.ts.map +1 -0
- package/dist/components/logic-editor/config/operators/index.d.ts +2 -1
- package/dist/components/logic-editor/config/operators/index.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/logical.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/string-core.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/string-transform.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/utility.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/validation.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators/variable.d.ts.map +1 -1
- package/dist/components/logic-editor/config/operators.types.d.ts +13 -11
- package/dist/components/logic-editor/config/operators.types.d.ts.map +1 -1
- package/dist/components/logic-editor/constants/colors.d.ts.map +1 -1
- package/dist/components/logic-editor/context/debugger/DebuggerProvider.d.ts +6 -1
- package/dist/components/logic-editor/context/debugger/DebuggerProvider.d.ts.map +1 -1
- package/dist/components/logic-editor/context/debugger/hooks.d.ts +3 -1
- package/dist/components/logic-editor/context/debugger/hooks.d.ts.map +1 -1
- package/dist/components/logic-editor/context/debugger/types.d.ts +18 -0
- package/dist/components/logic-editor/context/debugger/types.d.ts.map +1 -1
- package/dist/components/logic-editor/context/editor/EditorContext.d.ts.map +1 -1
- package/dist/components/logic-editor/context/editor/useNodeCreation.d.ts.map +1 -1
- package/dist/components/logic-editor/context/editor/useNodeEdgeInsert.d.ts +16 -0
- package/dist/components/logic-editor/context/editor/useNodeEdgeInsert.d.ts.map +1 -1
- package/dist/components/logic-editor/context/editor/useNodeOperations.d.ts.map +1 -1
- package/dist/components/logic-editor/context/index.d.ts +0 -1
- package/dist/components/logic-editor/context/index.d.ts.map +1 -1
- package/dist/components/logic-editor/context-menu/CanvasContextMenu.d.ts +1 -1
- package/dist/components/logic-editor/context-menu/CanvasContextMenu.d.ts.map +1 -1
- package/dist/components/logic-editor/context-menu/index.d.ts +0 -1
- package/dist/components/logic-editor/context-menu/index.d.ts.map +1 -1
- package/dist/components/logic-editor/context-menu/menu-helpers.d.ts +2 -1
- package/dist/components/logic-editor/context-menu/menu-helpers.d.ts.map +1 -1
- package/dist/components/logic-editor/context-menu/useContextMenuItems.d.ts.map +1 -1
- package/dist/components/logic-editor/debugger-controls/DebuggerControls.d.ts.map +1 -1
- package/dist/components/logic-editor/debugger-controls/StepTimeline.d.ts +14 -0
- package/dist/components/logic-editor/debugger-controls/StepTimeline.d.ts.map +1 -0
- package/dist/components/logic-editor/debugger-controls/index.d.ts +2 -0
- package/dist/components/logic-editor/debugger-controls/index.d.ts.map +1 -1
- package/dist/components/logic-editor/debugger-controls/keyboard-guard.d.ts +6 -0
- package/dist/components/logic-editor/debugger-controls/keyboard-guard.d.ts.map +1 -0
- package/dist/components/logic-editor/edges/EdgeOperatorPicker.d.ts.map +1 -1
- package/dist/components/logic-editor/hooks/index.d.ts +2 -3
- package/dist/components/logic-editor/hooks/index.d.ts.map +1 -1
- package/dist/components/logic-editor/hooks/useDebugClassName.d.ts +2 -0
- package/dist/components/logic-editor/hooks/useDebugClassName.d.ts.map +1 -1
- package/dist/components/logic-editor/hooks/useLogicEditor.d.ts +15 -8
- package/dist/components/logic-editor/hooks/useLogicEditor.d.ts.map +1 -1
- package/dist/components/logic-editor/hooks/useWasmEvaluator.d.ts +72 -4
- package/dist/components/logic-editor/hooks/useWasmEvaluator.d.ts.map +1 -1
- package/dist/components/logic-editor/index.d.ts +3 -4
- package/dist/components/logic-editor/index.d.ts.map +1 -1
- package/dist/components/logic-editor/nodes/DebugInfoBubble.d.ts +9 -2
- package/dist/components/logic-editor/nodes/DebugInfoBubble.d.ts.map +1 -1
- package/dist/components/logic-editor/nodes/shared/NodeDebugBubble.d.ts +2 -1
- package/dist/components/logic-editor/nodes/shared/NodeDebugBubble.d.ts.map +1 -1
- package/dist/components/logic-editor/panel-inputs/PanelRenderer.d.ts +12 -1
- package/dist/components/logic-editor/panel-inputs/PanelRenderer.d.ts.map +1 -1
- package/dist/components/logic-editor/panel-inputs/index.d.ts +1 -1
- package/dist/components/logic-editor/panel-inputs/index.d.ts.map +1 -1
- package/dist/components/logic-editor/properties-panel/ArgumentItem.d.ts.map +1 -1
- package/dist/components/logic-editor/properties-panel/ArgumentsSection.d.ts.map +1 -1
- package/dist/components/logic-editor/properties-panel/HelpSection.d.ts +8 -2
- package/dist/components/logic-editor/properties-panel/HelpSection.d.ts.map +1 -1
- package/dist/components/logic-editor/properties-panel/utils/argument-parser.d.ts +4 -0
- package/dist/components/logic-editor/properties-panel/utils/argument-parser.d.ts.map +1 -1
- package/dist/components/logic-editor/properties-panel/utils/expression-rebuilder.d.ts +6 -2
- package/dist/components/logic-editor/properties-panel/utils/expression-rebuilder.d.ts.map +1 -1
- package/dist/components/logic-editor/properties-panel/utils.d.ts.map +1 -1
- package/dist/components/logic-editor/services/argument-service.d.ts +4 -1
- package/dist/components/logic-editor/services/argument-service.d.ts.map +1 -1
- package/dist/components/logic-editor/services/index.d.ts +1 -1
- package/dist/components/logic-editor/services/index.d.ts.map +1 -1
- package/dist/components/logic-editor/services/inline-edit-service.d.ts +13 -0
- package/dist/components/logic-editor/services/inline-edit-service.d.ts.map +1 -0
- package/dist/components/logic-editor/services/node-mutation-service.d.ts +3 -2
- package/dist/components/logic-editor/services/node-mutation-service.d.ts.map +1 -1
- package/dist/components/logic-editor/services/node-transform-service.d.ts +14 -4
- package/dist/components/logic-editor/services/node-transform-service.d.ts.map +1 -1
- package/dist/components/logic-editor/types/editor.d.ts +51 -19
- package/dist/components/logic-editor/types/editor.d.ts.map +1 -1
- package/dist/components/logic-editor/types/index.d.ts +1 -1
- package/dist/components/logic-editor/types/index.d.ts.map +1 -1
- package/dist/components/logic-editor/types/jsonlogic.d.ts +1 -1
- package/dist/components/logic-editor/types/jsonlogic.d.ts.map +1 -1
- package/dist/components/logic-editor/types/trace.d.ts +16 -5
- package/dist/components/logic-editor/types/trace.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/Icon.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/converters/if-else-converter.d.ts +29 -3
- package/dist/components/logic-editor/utils/converters/if-else-converter.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/converters/index.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/converters/operator-converter.d.ts +1 -1
- package/dist/components/logic-editor/utils/converters/operator-converter.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/converters/structure-converter.d.ts +4 -0
- package/dist/components/logic-editor/utils/converters/structure-converter.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/converters/structure-paths.d.ts +52 -0
- package/dist/components/logic-editor/utils/converters/structure-paths.d.ts.map +1 -0
- package/dist/components/logic-editor/utils/converters/switch-cells.d.ts +40 -0
- package/dist/components/logic-editor/utils/converters/switch-cells.d.ts.map +1 -0
- package/dist/components/logic-editor/utils/converters/switch-converter.d.ts +1 -1
- package/dist/components/logic-editor/utils/converters/switch-converter.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/converters/variable-cells.d.ts +62 -0
- package/dist/components/logic-editor/utils/converters/variable-cells.d.ts.map +1 -0
- package/dist/components/logic-editor/utils/converters/variable-converter.d.ts +1 -3
- package/dist/components/logic-editor/utils/converters/variable-converter.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/index.d.ts +1 -1
- package/dist/components/logic-editor/utils/index.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/layout.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/menu-builder.d.ts +7 -1
- package/dist/components/logic-editor/utils/menu-builder.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/node-cloning.d.ts +9 -1
- package/dist/components/logic-editor/utils/node-cloning.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/node-deletion.d.ts +17 -0
- package/dist/components/logic-editor/utils/node-deletion.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/node-factory.d.ts +7 -3
- package/dist/components/logic-editor/utils/node-factory.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/node-updaters.d.ts +6 -0
- package/dist/components/logic-editor/utils/node-updaters.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/nodeShape.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/nodes-to-jsonlogic.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/signal.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/trace/child-matching.d.ts +47 -1
- package/dist/components/logic-editor/utils/trace/child-matching.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/trace/index.d.ts +3 -2
- package/dist/components/logic-editor/utils/trace/index.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/trace/node-creators/if-else.d.ts +1 -1
- package/dist/components/logic-editor/utils/trace/node-creators/if-else.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/trace/node-creators/index.d.ts +0 -1
- package/dist/components/logic-editor/utils/trace/node-creators/index.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/trace/node-creators/structure.d.ts +8 -1
- package/dist/components/logic-editor/utils/trace/node-creators/structure.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/trace/node-creators/switch.d.ts +9 -4
- package/dist/components/logic-editor/utils/trace/node-creators/switch.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/trace/node-creators/variable.d.ts +14 -2
- package/dist/components/logic-editor/utils/trace/node-creators/variable.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/trace/node-creators/vertical-cell.d.ts +3 -1
- package/dist/components/logic-editor/utils/trace/node-creators/vertical-cell.d.ts.map +1 -1
- package/dist/components/logic-editor/utils/trace/trace-failure.d.ts +29 -0
- package/dist/components/logic-editor/utils/trace/trace-failure.d.ts.map +1 -0
- package/dist/components/logic-editor/utils/trace/trace-ids.d.ts +6 -0
- package/dist/components/logic-editor/utils/trace/trace-ids.d.ts.map +1 -0
- package/dist/components/logic-editor/utils/trace/trace-to-nodes.d.ts +5 -1
- package/dist/components/logic-editor/utils/trace/trace-to-nodes.d.ts.map +1 -1
- package/dist/datalogic_wasm-BWLewicv.cjs +1107 -0
- package/dist/datalogic_wasm-B_6dx9ev.js +1106 -0
- package/dist/index.cjs +6979 -3844
- package/dist/index.js +6975 -3844
- package/dist/lib.d.ts +5 -1
- package/dist/lib.d.ts.map +1 -1
- package/dist/styles.css +440 -0
- package/package.json +26 -23
- package/dist/components/logic-editor/context/EvaluationContext.d.ts +0 -5
- package/dist/components/logic-editor/context/EvaluationContext.d.ts.map +0 -1
- package/dist/components/logic-editor/context-menu/AddArgumentMenu.d.ts +0 -24
- package/dist/components/logic-editor/context-menu/AddArgumentMenu.d.ts.map +0 -1
- package/dist/components/logic-editor/hooks/useDebugEvaluation.d.ts +0 -16
- package/dist/components/logic-editor/hooks/useDebugEvaluation.d.ts.map +0 -1
- package/dist/components/logic-editor/utils/expression-builder.d.ts +0 -16
- package/dist/components/logic-editor/utils/expression-builder.d.ts.map +0 -1
- package/dist/components/logic-editor/utils/trace/evaluation-results.d.ts +0 -15
- package/dist/components/logic-editor/utils/trace/evaluation-results.d.ts.map +0 -1
- package/dist/components/logic-editor/utils/trace/node-creators/operator.d.ts +0 -11
- package/dist/components/logic-editor/utils/trace/node-creators/operator.d.ts.map +0 -1
- package/dist/datalogic_wasm-CQhNPxpU.js +0 -1146
- package/dist/datalogic_wasm-Da8EOl2Z.cjs +0 -1149
package/dist/lib.d.ts
CHANGED
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
export { DataLogicEditor } from './components/logic-editor/DataLogicEditor';
|
|
2
|
-
export type { DataLogicEditorProps, JsonLogicValue, LogicNode, LogicEdge, LogicNodeData, OperatorNodeData, VariableNodeData, LiteralNodeData,
|
|
2
|
+
export type { DataLogicEditorProps, DataLogicEvaluationConfig, DataLogicCustomOperator, JsonLogicValue, LogicNode, LogicEdge, LogicNodeData, OperatorNodeData, VariableNodeData, LiteralNodeData, StructureNodeData, StructureElement, CellData, ConversionResult, StructuredError, TracedResult, OperatorCategory, } from './components/logic-editor/types';
|
|
3
|
+
export type { FlowDirection } from './components/logic-editor/context';
|
|
4
|
+
export type { IconName } from './components/logic-editor/utils/icons';
|
|
5
|
+
export type { JsonLogicToNodesOptions } from './components/logic-editor/utils';
|
|
3
6
|
export { CATEGORY_COLORS } from './components/logic-editor/constants';
|
|
4
7
|
export { operators as OPERATORS } from './components/logic-editor/config/operators';
|
|
5
8
|
export { jsonLogicToNodes, applyTreeLayout } from './components/logic-editor/utils';
|
|
9
|
+
export { useWasmEvaluator, DataLogicEvaluationError, summarizeEvaluationConfig, isDefaultEvaluationConfig, } from './components/logic-editor/hooks';
|
|
6
10
|
//# sourceMappingURL=lib.d.ts.map
|
package/dist/lib.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAEA,OAAO,4CAA4C,CAAC;AAGpD,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAG5E,YAAY,EAEV,oBAAoB,
|
|
1
|
+
{"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAEA,OAAO,4CAA4C,CAAC;AAGpD,OAAO,EAAE,eAAe,EAAE,MAAM,2CAA2C,CAAC;AAG5E,YAAY,EAEV,oBAAoB,EACpB,yBAAyB,EACzB,uBAAuB,EAEvB,cAAc,EAEd,SAAS,EACT,SAAS,EACT,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAChB,QAAQ,EACR,gBAAgB,EAChB,eAAe,EACf,YAAY,EAEZ,gBAAgB,GACjB,MAAM,iCAAiC,CAAC;AACzC,YAAY,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,YAAY,EAAE,QAAQ,EAAE,MAAM,uCAAuC,CAAC;AACtE,YAAY,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAG/E,OAAO,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAC;AACtE,OAAO,EAAE,SAAS,IAAI,SAAS,EAAE,MAAM,4CAA4C,CAAC;AAGpF,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AACpF,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,yBAAyB,EACzB,yBAAyB,GAC1B,MAAM,iCAAiC,CAAC"}
|
package/dist/styles.css
CHANGED
|
@@ -1018,6 +1018,19 @@ svg.react-flow__connectionline {
|
|
|
1018
1018
|
color: var(--color-primary, #60a5fa);
|
|
1019
1019
|
}
|
|
1020
1020
|
|
|
1021
|
+
.dl-edge-picker-note {
|
|
1022
|
+
padding: 6px 12px 8px;
|
|
1023
|
+
font-size: 11px;
|
|
1024
|
+
line-height: 1.4;
|
|
1025
|
+
color: var(--color-warning, #b45309);
|
|
1026
|
+
border-bottom: 1px solid var(--border-color, #e0e0e0);
|
|
1027
|
+
}
|
|
1028
|
+
|
|
1029
|
+
.logic-editor[data-theme="dark"] .dl-edge-picker-note {
|
|
1030
|
+
color: var(--color-warning, #fbbf24);
|
|
1031
|
+
border-color: var(--border-color, #3e3e3e);
|
|
1032
|
+
}
|
|
1033
|
+
|
|
1021
1034
|
/* Content */
|
|
1022
1035
|
.dl-edge-picker-content {
|
|
1023
1036
|
max-height: 220px;
|
|
@@ -1417,6 +1430,269 @@ svg.react-flow__connectionline {
|
|
|
1417
1430
|
width: 60px;
|
|
1418
1431
|
}
|
|
1419
1432
|
}
|
|
1433
|
+
|
|
1434
|
+
/* step list toggle: lit while the list is open, red dot when the trace has errors */
|
|
1435
|
+
.dl-debugger-timeline-toggle {
|
|
1436
|
+
position: relative;
|
|
1437
|
+
}
|
|
1438
|
+
.dl-debugger-timeline-toggle.is-active {
|
|
1439
|
+
background: var(--accent-soft);
|
|
1440
|
+
border-color: color-mix(in srgb, var(--accent) 55%, var(--hairline));
|
|
1441
|
+
color: var(--accent);
|
|
1442
|
+
}
|
|
1443
|
+
.dl-debugger-timeline-toggle.has-errors::after {
|
|
1444
|
+
content: "";
|
|
1445
|
+
position: absolute;
|
|
1446
|
+
top: 5px;
|
|
1447
|
+
right: 5px;
|
|
1448
|
+
width: 6px;
|
|
1449
|
+
height: 6px;
|
|
1450
|
+
border-radius: 50%;
|
|
1451
|
+
background: var(--debug-error-color, #ef4444);
|
|
1452
|
+
}
|
|
1453
|
+
|
|
1454
|
+
/* Step list: a drawer over the right edge of the board, one row per step.
|
|
1455
|
+
Mounted into .logic-editor-body (or .logic-editor) by StepTimeline. */
|
|
1456
|
+
.dl-debugger-timeline {
|
|
1457
|
+
position: absolute;
|
|
1458
|
+
top: 12px;
|
|
1459
|
+
right: 12px;
|
|
1460
|
+
bottom: 12px;
|
|
1461
|
+
width: 340px;
|
|
1462
|
+
max-width: calc(100% - 24px);
|
|
1463
|
+
z-index: 110;
|
|
1464
|
+
display: flex;
|
|
1465
|
+
flex-direction: column;
|
|
1466
|
+
border-radius: 13px;
|
|
1467
|
+
background: color-mix(in srgb, var(--surface) 94%, transparent);
|
|
1468
|
+
backdrop-filter: blur(14px);
|
|
1469
|
+
border: 1px solid var(--hairline);
|
|
1470
|
+
box-shadow: var(--shadow-lg);
|
|
1471
|
+
font-family: var(--font-ui);
|
|
1472
|
+
overflow: hidden;
|
|
1473
|
+
}
|
|
1474
|
+
|
|
1475
|
+
.dl-debugger-timeline-header {
|
|
1476
|
+
display: flex;
|
|
1477
|
+
align-items: center;
|
|
1478
|
+
gap: 8px;
|
|
1479
|
+
padding: 10px 10px 10px 14px;
|
|
1480
|
+
border-bottom: 1px solid var(--hairline-2);
|
|
1481
|
+
flex-shrink: 0;
|
|
1482
|
+
}
|
|
1483
|
+
.dl-debugger-timeline-title {
|
|
1484
|
+
font-family: var(--font-mono);
|
|
1485
|
+
font-size: 9.5px;
|
|
1486
|
+
font-weight: 700;
|
|
1487
|
+
letter-spacing: 0.1em;
|
|
1488
|
+
text-transform: uppercase;
|
|
1489
|
+
color: var(--muted);
|
|
1490
|
+
}
|
|
1491
|
+
.dl-debugger-timeline-count {
|
|
1492
|
+
font-family: var(--font-mono);
|
|
1493
|
+
font-size: 11px;
|
|
1494
|
+
font-weight: 700;
|
|
1495
|
+
color: var(--ink);
|
|
1496
|
+
padding: 1px 7px;
|
|
1497
|
+
border-radius: 999px;
|
|
1498
|
+
background: var(--surface-2);
|
|
1499
|
+
border: 1px solid var(--hairline);
|
|
1500
|
+
}
|
|
1501
|
+
.dl-debugger-timeline-spacer {
|
|
1502
|
+
flex: 1;
|
|
1503
|
+
}
|
|
1504
|
+
.dl-debugger-timeline-filter {
|
|
1505
|
+
display: inline-flex;
|
|
1506
|
+
align-items: center;
|
|
1507
|
+
gap: 5px;
|
|
1508
|
+
font-size: 11px;
|
|
1509
|
+
color: var(--ink-2);
|
|
1510
|
+
cursor: pointer;
|
|
1511
|
+
user-select: none;
|
|
1512
|
+
white-space: nowrap;
|
|
1513
|
+
}
|
|
1514
|
+
.dl-debugger-timeline-filter input {
|
|
1515
|
+
margin: 0;
|
|
1516
|
+
accent-color: var(--debug-error-color, #ef4444);
|
|
1517
|
+
}
|
|
1518
|
+
.dl-debugger-timeline-close {
|
|
1519
|
+
width: 26px;
|
|
1520
|
+
height: 26px;
|
|
1521
|
+
padding: 0;
|
|
1522
|
+
display: grid;
|
|
1523
|
+
place-items: center;
|
|
1524
|
+
border-radius: 7px;
|
|
1525
|
+
background: transparent;
|
|
1526
|
+
border: 1px solid transparent;
|
|
1527
|
+
color: var(--muted);
|
|
1528
|
+
cursor: pointer;
|
|
1529
|
+
flex-shrink: 0;
|
|
1530
|
+
}
|
|
1531
|
+
.dl-debugger-timeline-close:hover {
|
|
1532
|
+
background: var(--surface-2);
|
|
1533
|
+
border-color: var(--hairline);
|
|
1534
|
+
color: var(--ink);
|
|
1535
|
+
}
|
|
1536
|
+
|
|
1537
|
+
/* trace-level failure banner (compile or runtime error) */
|
|
1538
|
+
.dl-debugger-timeline-failure {
|
|
1539
|
+
display: flex;
|
|
1540
|
+
flex-direction: column;
|
|
1541
|
+
gap: 3px;
|
|
1542
|
+
padding: 8px 14px;
|
|
1543
|
+
border-bottom: 1px solid var(--hairline-2);
|
|
1544
|
+
background: color-mix(in srgb, var(--debug-error-color, #ef4444) 8%, transparent);
|
|
1545
|
+
flex-shrink: 0;
|
|
1546
|
+
}
|
|
1547
|
+
.dl-debugger-timeline-failure-kind {
|
|
1548
|
+
font-family: var(--font-mono);
|
|
1549
|
+
font-size: 9.5px;
|
|
1550
|
+
font-weight: 700;
|
|
1551
|
+
letter-spacing: 0.08em;
|
|
1552
|
+
text-transform: uppercase;
|
|
1553
|
+
color: var(--debug-error-color, #ef4444);
|
|
1554
|
+
}
|
|
1555
|
+
.dl-debugger-timeline-failure-message {
|
|
1556
|
+
font-family: var(--font-mono);
|
|
1557
|
+
font-size: 10.5px;
|
|
1558
|
+
line-height: 1.5;
|
|
1559
|
+
color: var(--ink-2);
|
|
1560
|
+
word-break: break-word;
|
|
1561
|
+
}
|
|
1562
|
+
|
|
1563
|
+
.dl-debugger-timeline-list {
|
|
1564
|
+
flex: 1;
|
|
1565
|
+
min-height: 0;
|
|
1566
|
+
overflow-y: auto;
|
|
1567
|
+
padding: 6px;
|
|
1568
|
+
display: flex;
|
|
1569
|
+
flex-direction: column;
|
|
1570
|
+
gap: 2px;
|
|
1571
|
+
}
|
|
1572
|
+
|
|
1573
|
+
/* one row per step: index, node label + expression, iteration, result */
|
|
1574
|
+
.dl-debugger-timeline-row {
|
|
1575
|
+
display: grid;
|
|
1576
|
+
grid-template-columns: 28px minmax(0, 1fr) auto auto;
|
|
1577
|
+
align-items: center;
|
|
1578
|
+
gap: 8px;
|
|
1579
|
+
width: 100%;
|
|
1580
|
+
padding: 6px 8px;
|
|
1581
|
+
border-radius: 8px;
|
|
1582
|
+
background: transparent;
|
|
1583
|
+
border: 1px solid transparent;
|
|
1584
|
+
color: var(--ink-2);
|
|
1585
|
+
text-align: left;
|
|
1586
|
+
cursor: pointer;
|
|
1587
|
+
font: inherit;
|
|
1588
|
+
transition: background 0.12s ease, border-color 0.12s ease;
|
|
1589
|
+
}
|
|
1590
|
+
.dl-debugger-timeline-row:hover {
|
|
1591
|
+
background: var(--surface-2);
|
|
1592
|
+
border-color: var(--hairline);
|
|
1593
|
+
}
|
|
1594
|
+
.dl-debugger-timeline-row.is-done {
|
|
1595
|
+
opacity: 0.7;
|
|
1596
|
+
}
|
|
1597
|
+
.dl-debugger-timeline-row.is-current {
|
|
1598
|
+
opacity: 1;
|
|
1599
|
+
background: color-mix(in srgb, var(--accent) 10%, var(--surface-2));
|
|
1600
|
+
border-color: color-mix(in srgb, var(--accent) 45%, var(--hairline));
|
|
1601
|
+
}
|
|
1602
|
+
.dl-debugger-timeline-row.is-error {
|
|
1603
|
+
color: var(--ink);
|
|
1604
|
+
}
|
|
1605
|
+
.dl-debugger-timeline-row.is-error.is-current {
|
|
1606
|
+
background: color-mix(in srgb, var(--debug-error-color, #ef4444) 10%, var(--surface-2));
|
|
1607
|
+
border-color: color-mix(in srgb, var(--debug-error-color, #ef4444) 45%, var(--hairline));
|
|
1608
|
+
}
|
|
1609
|
+
|
|
1610
|
+
.dl-debugger-timeline-index {
|
|
1611
|
+
font-family: var(--font-mono);
|
|
1612
|
+
font-size: 10.5px;
|
|
1613
|
+
font-weight: 700;
|
|
1614
|
+
color: var(--muted);
|
|
1615
|
+
text-align: right;
|
|
1616
|
+
}
|
|
1617
|
+
.dl-debugger-timeline-row.is-current .dl-debugger-timeline-index {
|
|
1618
|
+
color: var(--accent);
|
|
1619
|
+
}
|
|
1620
|
+
.dl-debugger-timeline-row.is-error .dl-debugger-timeline-index {
|
|
1621
|
+
color: var(--debug-error-color, #ef4444);
|
|
1622
|
+
}
|
|
1623
|
+
|
|
1624
|
+
.dl-debugger-timeline-node {
|
|
1625
|
+
display: flex;
|
|
1626
|
+
flex-direction: column;
|
|
1627
|
+
gap: 1px;
|
|
1628
|
+
min-width: 0;
|
|
1629
|
+
}
|
|
1630
|
+
.dl-debugger-timeline-label {
|
|
1631
|
+
font-size: 11.5px;
|
|
1632
|
+
font-weight: 600;
|
|
1633
|
+
color: var(--ink);
|
|
1634
|
+
white-space: nowrap;
|
|
1635
|
+
overflow: hidden;
|
|
1636
|
+
text-overflow: ellipsis;
|
|
1637
|
+
}
|
|
1638
|
+
.dl-debugger-timeline-detail {
|
|
1639
|
+
font-family: var(--font-mono);
|
|
1640
|
+
font-size: 10px;
|
|
1641
|
+
color: var(--muted);
|
|
1642
|
+
white-space: nowrap;
|
|
1643
|
+
overflow: hidden;
|
|
1644
|
+
text-overflow: ellipsis;
|
|
1645
|
+
}
|
|
1646
|
+
|
|
1647
|
+
.dl-debugger-timeline-iter {
|
|
1648
|
+
font-family: var(--font-mono);
|
|
1649
|
+
font-size: 9.5px;
|
|
1650
|
+
font-weight: 700;
|
|
1651
|
+
color: var(--sig-collection);
|
|
1652
|
+
padding: 1px 6px;
|
|
1653
|
+
border-radius: 999px;
|
|
1654
|
+
background: var(--sig-collection-bg);
|
|
1655
|
+
white-space: nowrap;
|
|
1656
|
+
}
|
|
1657
|
+
|
|
1658
|
+
.dl-debugger-timeline-result {
|
|
1659
|
+
font-family: var(--font-mono);
|
|
1660
|
+
font-size: 10.5px;
|
|
1661
|
+
font-weight: 600;
|
|
1662
|
+
max-width: 96px;
|
|
1663
|
+
white-space: nowrap;
|
|
1664
|
+
overflow: hidden;
|
|
1665
|
+
text-overflow: ellipsis;
|
|
1666
|
+
text-align: right;
|
|
1667
|
+
}
|
|
1668
|
+
.dl-debugger-timeline-result.is-error {
|
|
1669
|
+
color: var(--debug-error-color, #ef4444);
|
|
1670
|
+
padding: 1px 6px;
|
|
1671
|
+
border-radius: 999px;
|
|
1672
|
+
background: color-mix(in srgb, var(--debug-error-color, #ef4444) 12%, transparent);
|
|
1673
|
+
text-transform: uppercase;
|
|
1674
|
+
font-size: 9.5px;
|
|
1675
|
+
letter-spacing: 0.06em;
|
|
1676
|
+
}
|
|
1677
|
+
|
|
1678
|
+
.dl-debugger-timeline-empty {
|
|
1679
|
+
padding: 18px 12px;
|
|
1680
|
+
text-align: center;
|
|
1681
|
+
font-size: 11.5px;
|
|
1682
|
+
color: var(--muted);
|
|
1683
|
+
}
|
|
1684
|
+
|
|
1685
|
+
.dl-debugger-controls--inline .dl-debugger-timeline-toggle {
|
|
1686
|
+
width: 30px;
|
|
1687
|
+
height: 30px;
|
|
1688
|
+
}
|
|
1689
|
+
|
|
1690
|
+
@media (max-width: 640px) {
|
|
1691
|
+
.dl-debugger-timeline {
|
|
1692
|
+
width: auto;
|
|
1693
|
+
left: 12px;
|
|
1694
|
+
}
|
|
1695
|
+
}
|
|
1420
1696
|
/* ==========================================================================
|
|
1421
1697
|
Properties Panel Styles
|
|
1422
1698
|
========================================================================== */
|
|
@@ -1598,6 +1874,34 @@ svg.react-flow__connectionline {
|
|
|
1598
1874
|
gap: 12px;
|
|
1599
1875
|
}
|
|
1600
1876
|
|
|
1877
|
+
.help-header {
|
|
1878
|
+
display: flex;
|
|
1879
|
+
align-items: center;
|
|
1880
|
+
gap: 6px;
|
|
1881
|
+
font-size: 13px;
|
|
1882
|
+
font-weight: 500;
|
|
1883
|
+
color: var(--text-primary, #1a1a1a);
|
|
1884
|
+
}
|
|
1885
|
+
|
|
1886
|
+
.logic-editor[data-theme="dark"] .help-header {
|
|
1887
|
+
color: var(--text-primary, #f0f0f0);
|
|
1888
|
+
}
|
|
1889
|
+
|
|
1890
|
+
.help-operator-name {
|
|
1891
|
+
font-family: var(--font-mono);
|
|
1892
|
+
font-size: 11px;
|
|
1893
|
+
font-weight: 400;
|
|
1894
|
+
padding: 1px 5px;
|
|
1895
|
+
border-radius: 3px;
|
|
1896
|
+
background: var(--surface-muted, #f1f5f9);
|
|
1897
|
+
color: var(--text-secondary, #666);
|
|
1898
|
+
}
|
|
1899
|
+
|
|
1900
|
+
.logic-editor[data-theme="dark"] .help-operator-name {
|
|
1901
|
+
background: rgba(148, 163, 184, 0.15);
|
|
1902
|
+
color: var(--text-secondary, #aaa);
|
|
1903
|
+
}
|
|
1904
|
+
|
|
1601
1905
|
.help-summary {
|
|
1602
1906
|
margin: 0;
|
|
1603
1907
|
font-size: 13px;
|
|
@@ -1648,6 +1952,30 @@ svg.react-flow__connectionline {
|
|
|
1648
1952
|
color: #4ade80;
|
|
1649
1953
|
}
|
|
1650
1954
|
|
|
1955
|
+
/* Link out to the operator's page on the docs site. */
|
|
1956
|
+
.help-badge-docs {
|
|
1957
|
+
background: var(--surface-muted, #f1f5f9);
|
|
1958
|
+
color: var(--text-secondary, #666);
|
|
1959
|
+
text-decoration: none;
|
|
1960
|
+
border: 1px solid var(--border-subtle, #e2e8f0);
|
|
1961
|
+
}
|
|
1962
|
+
|
|
1963
|
+
.help-badge-docs:hover {
|
|
1964
|
+
color: var(--dl-info, #3b82f6);
|
|
1965
|
+
border-color: var(--dl-info, #3b82f6);
|
|
1966
|
+
}
|
|
1967
|
+
|
|
1968
|
+
.logic-editor[data-theme="dark"] .help-badge-docs {
|
|
1969
|
+
background: rgba(148, 163, 184, 0.12);
|
|
1970
|
+
color: var(--text-secondary, #aaa);
|
|
1971
|
+
border-color: rgba(148, 163, 184, 0.25);
|
|
1972
|
+
}
|
|
1973
|
+
|
|
1974
|
+
.logic-editor[data-theme="dark"] .help-badge-docs:hover {
|
|
1975
|
+
color: #60a5fa;
|
|
1976
|
+
border-color: #60a5fa;
|
|
1977
|
+
}
|
|
1978
|
+
|
|
1651
1979
|
.help-examples-toggle {
|
|
1652
1980
|
display: flex;
|
|
1653
1981
|
align-items: center;
|
|
@@ -5222,4 +5550,116 @@ svg.react-flow__connectionline {
|
|
|
5222
5550
|
.logic-editor[data-theme="dark"] .dl-context-menu-item--danger:hover:not(:disabled) {
|
|
5223
5551
|
background: rgba(239, 68, 68, 0.15);
|
|
5224
5552
|
}
|
|
5553
|
+
|
|
5554
|
+
/* ============================================================================
|
|
5555
|
+
Toolbar: Insert button + engine settings indicator
|
|
5556
|
+
============================================================================ */
|
|
5557
|
+
|
|
5558
|
+
.logic-editor-toolbar .dl-toolbar-insert {
|
|
5559
|
+
width: auto;
|
|
5560
|
+
gap: 5px;
|
|
5561
|
+
padding: 0 10px 0 8px;
|
|
5562
|
+
font: inherit;
|
|
5563
|
+
font-size: 12px;
|
|
5564
|
+
font-weight: 500;
|
|
5565
|
+
border: 1px solid var(--hairline, #ddd);
|
|
5566
|
+
color: var(--text-secondary, #666);
|
|
5567
|
+
}
|
|
5568
|
+
|
|
5569
|
+
.logic-editor-toolbar .dl-toolbar-insert:hover:not(:disabled) {
|
|
5570
|
+
border-color: var(--accent, #6366f1);
|
|
5571
|
+
color: var(--accent, #6366f1);
|
|
5572
|
+
background: var(--accent-soft, rgba(99, 102, 241, 0.08));
|
|
5573
|
+
}
|
|
5574
|
+
|
|
5575
|
+
.logic-editor-toolbar .dl-toolbar-config {
|
|
5576
|
+
flex-shrink: 1;
|
|
5577
|
+
min-width: 0;
|
|
5578
|
+
border: 1px solid var(--warning-border, #f5d48a);
|
|
5579
|
+
color: var(--warning-text, #92400e);
|
|
5580
|
+
background: var(--warning-bg, #fef3c7);
|
|
5581
|
+
font-family: var(--font-mono, monospace);
|
|
5582
|
+
font-size: 10.5px;
|
|
5583
|
+
padding: 2px 8px;
|
|
5584
|
+
border-radius: 999px;
|
|
5585
|
+
display: inline-flex;
|
|
5586
|
+
align-items: center;
|
|
5587
|
+
gap: 5px;
|
|
5588
|
+
max-width: 260px;
|
|
5589
|
+
white-space: nowrap;
|
|
5590
|
+
overflow: hidden;
|
|
5591
|
+
text-overflow: ellipsis;
|
|
5592
|
+
}
|
|
5593
|
+
|
|
5594
|
+
.logic-editor-toolbar button.dl-toolbar-config {
|
|
5595
|
+
cursor: pointer;
|
|
5596
|
+
}
|
|
5597
|
+
|
|
5598
|
+
.logic-editor-toolbar button.dl-toolbar-config:focus-visible {
|
|
5599
|
+
outline: none;
|
|
5600
|
+
box-shadow: var(--focus-ring);
|
|
5601
|
+
}
|
|
5602
|
+
|
|
5603
|
+
.logic-editor-toolbar .dl-toolbar-config .engine-config-badge-text {
|
|
5604
|
+
overflow: hidden;
|
|
5605
|
+
text-overflow: ellipsis;
|
|
5606
|
+
}
|
|
5607
|
+
|
|
5608
|
+
/* Empty / error states mention the active engine settings */
|
|
5609
|
+
.logic-editor-empty-config,
|
|
5610
|
+
.logic-editor-error-config {
|
|
5611
|
+
margin-top: 6px !important;
|
|
5612
|
+
font-family: var(--font-mono);
|
|
5613
|
+
font-size: 11px !important;
|
|
5614
|
+
font-weight: 400 !important;
|
|
5615
|
+
color: var(--warning-text) !important;
|
|
5616
|
+
}
|
|
5617
|
+
|
|
5618
|
+
@media (max-width: 1024px) {
|
|
5619
|
+
.logic-editor-toolbar .dl-toolbar-insert {
|
|
5620
|
+
width: auto;
|
|
5621
|
+
padding: 0 10px;
|
|
5622
|
+
}
|
|
5623
|
+
|
|
5624
|
+
.logic-editor-toolbar .dl-toolbar-insert span {
|
|
5625
|
+
display: none;
|
|
5626
|
+
}
|
|
5627
|
+
|
|
5628
|
+
.logic-editor-toolbar .dl-toolbar-config {
|
|
5629
|
+
max-width: 140px;
|
|
5630
|
+
}
|
|
5631
|
+
}
|
|
5632
|
+
|
|
5633
|
+
/* Trace-level failure banner: shown under the toolbar when the engine could
|
|
5634
|
+
not produce a trace at all (compile-stage error), so no node can carry the
|
|
5635
|
+
error bubble. Runtime failures that map onto a node are shown there. */
|
|
5636
|
+
.logic-editor-trace-error {
|
|
5637
|
+
display: flex;
|
|
5638
|
+
align-items: baseline;
|
|
5639
|
+
gap: 8px;
|
|
5640
|
+
flex: 0 0 auto;
|
|
5641
|
+
padding: 8px 12px;
|
|
5642
|
+
border-bottom: 1px solid var(--error-border);
|
|
5643
|
+
background: var(--error-bg-light);
|
|
5644
|
+
font-size: 12px;
|
|
5645
|
+
line-height: 1.4;
|
|
5646
|
+
color: var(--error-text);
|
|
5647
|
+
}
|
|
5648
|
+
|
|
5649
|
+
.logic-editor-trace-error-kind {
|
|
5650
|
+
flex: 0 0 auto;
|
|
5651
|
+
padding: 1px 6px;
|
|
5652
|
+
border: 1px solid var(--error-border);
|
|
5653
|
+
border-radius: 4px;
|
|
5654
|
+
font-family: var(--font-mono);
|
|
5655
|
+
font-size: 10px;
|
|
5656
|
+
font-weight: 600;
|
|
5657
|
+
letter-spacing: 0.02em;
|
|
5658
|
+
text-transform: none;
|
|
5659
|
+
}
|
|
5660
|
+
|
|
5661
|
+
.logic-editor-trace-error-message {
|
|
5662
|
+
min-width: 0;
|
|
5663
|
+
overflow-wrap: anywhere;
|
|
5664
|
+
}
|
|
5225
5665
|
/*$vite$:1*/
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@goplasmatic/datalogic-ui",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "5.
|
|
4
|
+
"version": "5.3.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "React rule builder, visual debugger, and editor for JSONLogic (json-logic) — flow-diagram view and live execution tracing, powered by the datalogic-rs WASM engine.",
|
|
7
7
|
"keywords": [
|
|
@@ -68,17 +68,14 @@
|
|
|
68
68
|
"prebuild": "npm run sync-wasm",
|
|
69
69
|
"prebuild:lib": "npm run sync-wasm",
|
|
70
70
|
"prebuild:embed": "npm run sync-wasm",
|
|
71
|
-
"sync-wasm": "rm -rf vendor/datalogic && mkdir -p vendor && cp -R ../bindings/wasm/pkg vendor/datalogic"
|
|
71
|
+
"sync-wasm": "rm -rf vendor/datalogic && mkdir -p vendor && cp -R ../bindings/wasm/pkg vendor/datalogic",
|
|
72
|
+
"test": "vitest run",
|
|
73
|
+
"test:watch": "vitest"
|
|
72
74
|
},
|
|
73
75
|
"dependencies": {
|
|
74
|
-
"@dagrejs/dagre": "^3.
|
|
75
|
-
"
|
|
76
|
-
"
|
|
77
|
-
"@goplasmatic/datalogic-wasm": "5.2.0",
|
|
78
|
-
"@msgpack/msgpack": "^3.1.3",
|
|
79
|
-
"fflate": "^0.8.3",
|
|
80
|
-
"lucide-react": "^1.23.0",
|
|
81
|
-
"uuid": "^14.0.1"
|
|
76
|
+
"@dagrejs/dagre": "^3.1.1",
|
|
77
|
+
"lucide-react": "^1.34.0",
|
|
78
|
+
"uuid": "^14.0.2"
|
|
82
79
|
},
|
|
83
80
|
"peerDependencies": {
|
|
84
81
|
"@xyflow/react": "^12.0.0",
|
|
@@ -87,21 +84,27 @@
|
|
|
87
84
|
},
|
|
88
85
|
"devDependencies": {
|
|
89
86
|
"@eslint/js": "^10.0.1",
|
|
90
|
-
"@
|
|
91
|
-
"@
|
|
92
|
-
"@
|
|
93
|
-
"@
|
|
94
|
-
"@
|
|
95
|
-
"
|
|
87
|
+
"@fontsource/jetbrains-mono": "^5.3.0",
|
|
88
|
+
"@fontsource/space-grotesk": "^5.3.0",
|
|
89
|
+
"@goplasmatic/datalogic-wasm": "5.3.0",
|
|
90
|
+
"@msgpack/msgpack": "^3.1.3",
|
|
91
|
+
"@types/node": "^26.3.0",
|
|
92
|
+
"@types/react": "^19.2.18",
|
|
93
|
+
"@types/react-dom": "^19.2.5",
|
|
94
|
+
"@vitejs/plugin-react": "^6.1.0",
|
|
95
|
+
"@xyflow/react": "^12.11.3",
|
|
96
|
+
"eslint": "^10.9.1",
|
|
96
97
|
"eslint-plugin-react-hooks": "^7.1.1",
|
|
97
|
-
"eslint-plugin-react-refresh": "^0.5.
|
|
98
|
-
"
|
|
99
|
-
"
|
|
100
|
-
"react
|
|
98
|
+
"eslint-plugin-react-refresh": "^0.5.4",
|
|
99
|
+
"fflate": "^0.8.3",
|
|
100
|
+
"globals": "^17.11.0",
|
|
101
|
+
"react": "^19.2.8",
|
|
102
|
+
"react-dom": "^19.2.8",
|
|
101
103
|
"typescript": "~6.0.3",
|
|
102
|
-
"typescript-eslint": "^8.
|
|
103
|
-
"vite": "^8.
|
|
104
|
+
"typescript-eslint": "^8.68.0",
|
|
105
|
+
"vite": "^8.2.2",
|
|
104
106
|
"vite-plugin-dts": "^5.0.3",
|
|
105
|
-
"vite-plugin-wasm": "^3.6.0"
|
|
107
|
+
"vite-plugin-wasm": "^3.6.0",
|
|
108
|
+
"vitest": "^4.1.11"
|
|
106
109
|
}
|
|
107
110
|
}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { EvaluationResultsMap } from '../hooks/useLogicEditor';
|
|
2
|
-
export declare const EvaluationContext: import('react').Context<EvaluationResultsMap>;
|
|
3
|
-
export declare function useEvaluationResult(nodeId: string): import('../hooks').EvaluationResult | undefined;
|
|
4
|
-
export declare function useEvaluationResults(): EvaluationResultsMap;
|
|
5
|
-
//# sourceMappingURL=EvaluationContext.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"EvaluationContext.d.ts","sourceRoot":"","sources":["../../../../src/components/logic-editor/context/EvaluationContext.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAEpE,eAAO,MAAM,iBAAiB,+CAAiD,CAAC;AAEhF,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,mDAGjD;AAED,wBAAgB,oBAAoB,yBAEnC"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* AddArgumentMenu Component
|
|
3
|
-
*
|
|
4
|
-
* Dropdown menu for adding a new argument to an operator node.
|
|
5
|
-
* Shows node type options: Literal, Variable, Operator (with submenu)
|
|
6
|
-
*
|
|
7
|
-
* Uses a Portal to render the menu outside of ReactFlow's transformed container,
|
|
8
|
-
* ensuring correct positioning regardless of zoom/pan state.
|
|
9
|
-
*/
|
|
10
|
-
export type AddArgumentNodeType = 'literal' | 'variable' | 'operator';
|
|
11
|
-
export interface AddArgumentMenuProps {
|
|
12
|
-
/** X position (screen coordinates) */
|
|
13
|
-
x: number;
|
|
14
|
-
/** Y position (screen coordinates) */
|
|
15
|
-
y: number;
|
|
16
|
-
/** Called when menu should close */
|
|
17
|
-
onClose: () => void;
|
|
18
|
-
/** Called when a node type is selected */
|
|
19
|
-
onSelect: (type: AddArgumentNodeType, operatorName?: string) => void;
|
|
20
|
-
/** Operator category hint for default values (unused, reserved for future) */
|
|
21
|
-
operatorCategory?: string;
|
|
22
|
-
}
|
|
23
|
-
export declare const AddArgumentMenu: import('react').MemoExoticComponent<({ x, y, onClose, onSelect, }: AddArgumentMenuProps) => import('react').ReactPortal>;
|
|
24
|
-
//# sourceMappingURL=AddArgumentMenu.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AddArgumentMenu.d.ts","sourceRoot":"","sources":["../../../../src/components/logic-editor/context-menu/AddArgumentMenu.tsx"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;AAEtE,MAAM,WAAW,oBAAoB;IACnC,sCAAsC;IACtC,CAAC,EAAE,MAAM,CAAC;IACV,sCAAsC;IACtC,CAAC,EAAE,MAAM,CAAC;IACV,oCAAoC;IACpC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,0CAA0C;IAC1C,QAAQ,EAAE,CAAC,IAAI,EAAE,mBAAmB,EAAE,YAAY,CAAC,EAAE,MAAM,KAAK,IAAI,CAAC;IACrE,8EAA8E;IAC9E,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,eAAO,MAAM,eAAe,qEAKzB,oBAAoB,iCA6CrB,CAAC"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { LogicNode } from '../types';
|
|
2
|
-
export interface EvaluationResult {
|
|
3
|
-
value: unknown;
|
|
4
|
-
error: string | null;
|
|
5
|
-
type: 'boolean' | 'number' | 'string' | 'null' | 'array' | 'object' | 'undefined';
|
|
6
|
-
}
|
|
7
|
-
export type EvaluationResults = Map<string, EvaluationResult>;
|
|
8
|
-
interface UseDebugEvaluationProps {
|
|
9
|
-
nodes: LogicNode[];
|
|
10
|
-
data: unknown;
|
|
11
|
-
evaluate: ((logic: unknown, data: unknown) => unknown) | null;
|
|
12
|
-
enabled: boolean;
|
|
13
|
-
}
|
|
14
|
-
export declare function useDebugEvaluation({ nodes, data, evaluate, enabled, }: UseDebugEvaluationProps): EvaluationResults;
|
|
15
|
-
export {};
|
|
16
|
-
//# sourceMappingURL=useDebugEvaluation.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useDebugEvaluation.d.ts","sourceRoot":"","sources":["../../../../src/components/logic-editor/hooks/useDebugEvaluation.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAE1C,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,GAAG,WAAW,CAAC;CACnF;AAED,MAAM,MAAM,iBAAiB,GAAG,GAAG,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;AAE9D,UAAU,uBAAuB;IAC/B,KAAK,EAAE,SAAS,EAAE,CAAC;IACnB,IAAI,EAAE,OAAO,CAAC;IACd,QAAQ,EAAE,CAAC,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC;IAC9D,OAAO,EAAE,OAAO,CAAC;CAClB;AAaD,wBAAgB,kBAAkB,CAAC,EACjC,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,OAAO,GACR,EAAE,uBAAuB,GAAG,iBAAiB,CAkC7C"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { LogicNode, JsonLogicValue } from '../types';
|
|
2
|
-
/**
|
|
3
|
-
* Get the expression value for a node.
|
|
4
|
-
* Returns the node's expression if available, otherwise constructs it from node data.
|
|
5
|
-
*/
|
|
6
|
-
export declare function getNodeExpressionValue(node: LogicNode): JsonLogicValue;
|
|
7
|
-
/**
|
|
8
|
-
* Rebuild an operator node's expression from its children.
|
|
9
|
-
* This is the single source of truth for expression generation.
|
|
10
|
-
*
|
|
11
|
-
* @param operator The operator name (e.g., '+', 'and', 'if')
|
|
12
|
-
* @param childNodes The child nodes that form the operands
|
|
13
|
-
* @returns The rebuilt expression object
|
|
14
|
-
*/
|
|
15
|
-
export declare function rebuildOperatorExpression(operator: string, childNodes: LogicNode[]): JsonLogicValue;
|
|
16
|
-
//# sourceMappingURL=expression-builder.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"expression-builder.d.ts","sourceRoot":"","sources":["../../../../src/components/logic-editor/utils/expression-builder.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,SAAS,EACT,cAAc,EAGf,MAAM,UAAU,CAAC;AAElB;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,SAAS,GAAG,cAAc,CAkBtE;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,SAAS,EAAE,GACtB,cAAc,CAYhB"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { TracedResult } from '../../types/trace';
|
|
2
|
-
import { ValueType } from './types';
|
|
3
|
-
/**
|
|
4
|
-
* Convert trace node ID to string node ID
|
|
5
|
-
*/
|
|
6
|
-
export declare function traceIdToNodeId(id: number): string;
|
|
7
|
-
/**
|
|
8
|
-
* Build evaluation results map from trace execution steps
|
|
9
|
-
*/
|
|
10
|
-
export declare function buildEvaluationResultsFromTrace(trace: TracedResult): Map<string, {
|
|
11
|
-
value: unknown;
|
|
12
|
-
error: string | null;
|
|
13
|
-
type: ValueType;
|
|
14
|
-
}>;
|
|
15
|
-
//# sourceMappingURL=evaluation-results.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"evaluation-results.d.ts","sourceRoot":"","sources":["../../../../../src/components/logic-editor/utils/trace/evaluation-results.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEzC;;GAEG;AACH,wBAAgB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAElD;AAED;;GAEG;AACH,wBAAgB,+BAA+B,CAC7C,KAAK,EAAE,YAAY,GAClB,GAAG,CAAC,MAAM,EAAE;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,SAAS,CAAA;CAAE,CAAC,CA6BxE"}
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { JsonLogicValue } from '../../../types';
|
|
2
|
-
import { ExpressionNode } from '../../../types/trace';
|
|
3
|
-
import { ParentInfo } from '../../converters/types';
|
|
4
|
-
import { TraceContext } from '../types';
|
|
5
|
-
type ProcessExpressionNodeFn = (exprNode: ExpressionNode, context: TraceContext, parentInfo: ParentInfo, originalExpression?: JsonLogicValue) => string;
|
|
6
|
-
/**
|
|
7
|
-
* Create an operator node (single-arg or unary) from trace data
|
|
8
|
-
*/
|
|
9
|
-
export declare function createOperatorNodeFromTrace(nodeId: string, expression: JsonLogicValue, children: ExpressionNode[], context: TraceContext, parentInfo: ParentInfo, processExpressionNode: ProcessExpressionNodeFn): void;
|
|
10
|
-
export {};
|
|
11
|
-
//# sourceMappingURL=operator.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"operator.d.ts","sourceRoot":"","sources":["../../../../../../src/components/logic-editor/utils/trace/node-creators/operator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,cAAc,EAEf,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC3D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAU7C,KAAK,uBAAuB,GAAG,CAC7B,QAAQ,EAAE,cAAc,EACxB,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,UAAU,EACtB,kBAAkB,CAAC,EAAE,cAAc,KAChC,MAAM,CAAC;AAEZ;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,cAAc,EAC1B,QAAQ,EAAE,cAAc,EAAE,EAC1B,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,UAAU,EACtB,qBAAqB,EAAE,uBAAuB,GAC7C,IAAI,CAiHN"}
|