@mindlogic-ai/logician-ui 4.0.0-alpha.35 → 4.0.0-alpha.37

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 (145) hide show
  1. package/dist/components/BottomSheet/BottomSheet.d.ts +28 -0
  2. package/dist/components/BottomSheet/BottomSheet.d.ts.map +1 -0
  3. package/dist/components/BottomSheet/BottomSheet.js +38 -0
  4. package/dist/components/BottomSheet/BottomSheet.js.map +1 -0
  5. package/dist/components/BottomSheet/BottomSheet.mjs +36 -0
  6. package/dist/components/BottomSheet/BottomSheet.mjs.map +1 -0
  7. package/dist/components/BottomSheet/BottomSheet.styles.d.ts +32 -0
  8. package/dist/components/BottomSheet/BottomSheet.styles.d.ts.map +1 -0
  9. package/dist/components/BottomSheet/BottomSheet.styles.js +164 -0
  10. package/dist/components/BottomSheet/BottomSheet.styles.js.map +1 -0
  11. package/dist/components/BottomSheet/BottomSheet.styles.mjs +161 -0
  12. package/dist/components/BottomSheet/BottomSheet.styles.mjs.map +1 -0
  13. package/dist/components/BottomSheet/BottomSheet.types.d.ts +43 -0
  14. package/dist/components/BottomSheet/BottomSheet.types.d.ts.map +1 -0
  15. package/dist/components/BottomSheet/BottomSheetBody.d.ts +8 -0
  16. package/dist/components/BottomSheet/BottomSheetBody.d.ts.map +1 -0
  17. package/dist/components/BottomSheet/BottomSheetBody.js +17 -0
  18. package/dist/components/BottomSheet/BottomSheetBody.js.map +1 -0
  19. package/dist/components/BottomSheet/BottomSheetBody.mjs +15 -0
  20. package/dist/components/BottomSheet/BottomSheetBody.mjs.map +1 -0
  21. package/dist/components/BottomSheet/BottomSheetCloseButton.d.ts +11 -0
  22. package/dist/components/BottomSheet/BottomSheetCloseButton.d.ts.map +1 -0
  23. package/dist/components/BottomSheet/BottomSheetCloseButton.js +27 -0
  24. package/dist/components/BottomSheet/BottomSheetCloseButton.js.map +1 -0
  25. package/dist/components/BottomSheet/BottomSheetCloseButton.mjs +25 -0
  26. package/dist/components/BottomSheet/BottomSheetCloseButton.mjs.map +1 -0
  27. package/dist/components/BottomSheet/BottomSheetContent.d.ts +12 -0
  28. package/dist/components/BottomSheet/BottomSheetContent.d.ts.map +1 -0
  29. package/dist/components/BottomSheet/BottomSheetContent.js +25 -0
  30. package/dist/components/BottomSheet/BottomSheetContent.js.map +1 -0
  31. package/dist/components/BottomSheet/BottomSheetContent.mjs +23 -0
  32. package/dist/components/BottomSheet/BottomSheetContent.mjs.map +1 -0
  33. package/dist/components/BottomSheet/BottomSheetContext.d.ts +28 -0
  34. package/dist/components/BottomSheet/BottomSheetContext.d.ts.map +1 -0
  35. package/dist/components/BottomSheet/BottomSheetContext.js +53 -0
  36. package/dist/components/BottomSheet/BottomSheetContext.js.map +1 -0
  37. package/dist/components/BottomSheet/BottomSheetContext.mjs +40 -0
  38. package/dist/components/BottomSheet/BottomSheetContext.mjs.map +1 -0
  39. package/dist/components/BottomSheet/BottomSheetFooter.d.ts +4 -0
  40. package/dist/components/BottomSheet/BottomSheetFooter.d.ts.map +1 -0
  41. package/dist/components/BottomSheet/BottomSheetFooter.js +13 -0
  42. package/dist/components/BottomSheet/BottomSheetFooter.js.map +1 -0
  43. package/dist/components/BottomSheet/BottomSheetFooter.mjs +11 -0
  44. package/dist/components/BottomSheet/BottomSheetFooter.mjs.map +1 -0
  45. package/dist/components/BottomSheet/BottomSheetHeader.d.ts +8 -0
  46. package/dist/components/BottomSheet/BottomSheetHeader.d.ts.map +1 -0
  47. package/dist/components/BottomSheet/BottomSheetHeader.js +19 -0
  48. package/dist/components/BottomSheet/BottomSheetHeader.js.map +1 -0
  49. package/dist/components/BottomSheet/BottomSheetHeader.mjs +17 -0
  50. package/dist/components/BottomSheet/BottomSheetHeader.mjs.map +1 -0
  51. package/dist/components/BottomSheet/BottomSheetOverlay.d.ts +8 -0
  52. package/dist/components/BottomSheet/BottomSheetOverlay.d.ts.map +1 -0
  53. package/dist/components/BottomSheet/BottomSheetOverlay.js +17 -0
  54. package/dist/components/BottomSheet/BottomSheetOverlay.js.map +1 -0
  55. package/dist/components/BottomSheet/BottomSheetOverlay.mjs +15 -0
  56. package/dist/components/BottomSheet/BottomSheetOverlay.mjs.map +1 -0
  57. package/dist/components/BottomSheet/index.d.ts +11 -0
  58. package/dist/components/BottomSheet/index.d.ts.map +1 -0
  59. package/dist/components/Form/FormSection/CollapsibleFormSection.js +1 -0
  60. package/dist/components/Form/FormSection/CollapsibleFormSection.js.map +1 -1
  61. package/dist/components/Form/FormSection/CollapsibleFormSection.mjs +1 -0
  62. package/dist/components/Form/FormSection/CollapsibleFormSection.mjs.map +1 -1
  63. package/dist/components/Toast/useToast.d.ts +1 -1
  64. package/dist/components/Workflow/Workflow.d.ts +1 -1
  65. package/dist/components/Workflow/Workflow.d.ts.map +1 -1
  66. package/dist/components/Workflow/Workflow.js +2 -2
  67. package/dist/components/Workflow/Workflow.js.map +1 -1
  68. package/dist/components/Workflow/Workflow.mjs +2 -2
  69. package/dist/components/Workflow/Workflow.mjs.map +1 -1
  70. package/dist/components/Workflow/Workflow.types.d.ts +9 -0
  71. package/dist/components/Workflow/Workflow.types.d.ts.map +1 -1
  72. package/dist/components/Workflow/Workflow.types.js.map +1 -1
  73. package/dist/components/Workflow/Workflow.types.mjs.map +1 -1
  74. package/dist/components/Workflow/canvas/Canvas/Canvas.d.ts +6 -2
  75. package/dist/components/Workflow/canvas/Canvas/Canvas.d.ts.map +1 -1
  76. package/dist/components/Workflow/canvas/Canvas/Canvas.js +29 -23
  77. package/dist/components/Workflow/canvas/Canvas/Canvas.js.map +1 -1
  78. package/dist/components/Workflow/canvas/Canvas/Canvas.mjs +31 -25
  79. package/dist/components/Workflow/canvas/Canvas/Canvas.mjs.map +1 -1
  80. package/dist/components/Workflow/createNode.d.ts +25 -1
  81. package/dist/components/Workflow/createNode.d.ts.map +1 -1
  82. package/dist/components/Workflow/createNode.js +39 -1
  83. package/dist/components/Workflow/createNode.js.map +1 -1
  84. package/dist/components/Workflow/createNode.mjs +38 -2
  85. package/dist/components/Workflow/createNode.mjs.map +1 -1
  86. package/dist/components/Workflow/index.d.ts +2 -0
  87. package/dist/components/Workflow/index.d.ts.map +1 -1
  88. package/dist/components/Workflow/layout/autoLayout.d.ts +10 -0
  89. package/dist/components/Workflow/layout/autoLayout.d.ts.map +1 -1
  90. package/dist/components/Workflow/layout/autoLayout.js +4 -0
  91. package/dist/components/Workflow/layout/autoLayout.js.map +1 -1
  92. package/dist/components/Workflow/layout/autoLayout.mjs +1 -1
  93. package/dist/components/Workflow/layout/autoLayout.mjs.map +1 -1
  94. package/dist/components/Workflow/placement.d.ts +65 -0
  95. package/dist/components/Workflow/placement.d.ts.map +1 -0
  96. package/dist/components/Workflow/placement.js +100 -0
  97. package/dist/components/Workflow/placement.js.map +1 -0
  98. package/dist/components/Workflow/placement.mjs +96 -0
  99. package/dist/components/Workflow/placement.mjs.map +1 -0
  100. package/dist/components/Workflow/useWorkflowActions.d.ts +54 -0
  101. package/dist/components/Workflow/useWorkflowActions.d.ts.map +1 -0
  102. package/dist/components/Workflow/useWorkflowActions.js +105 -0
  103. package/dist/components/Workflow/useWorkflowActions.js.map +1 -0
  104. package/dist/components/Workflow/useWorkflowActions.mjs +103 -0
  105. package/dist/components/Workflow/useWorkflowActions.mjs.map +1 -0
  106. package/dist/index.d.ts +1 -0
  107. package/dist/index.d.ts.map +1 -1
  108. package/dist/index.js +21 -0
  109. package/dist/index.js.map +1 -1
  110. package/dist/index.mjs +10 -0
  111. package/dist/index.mjs.map +1 -1
  112. package/dist/translations/Defaults.translations.json.js +10 -1
  113. package/dist/translations/Defaults.translations.json.js.map +1 -1
  114. package/dist/translations/Defaults.translations.json.mjs +10 -2
  115. package/dist/translations/Defaults.translations.json.mjs.map +1 -1
  116. package/package.json +3 -1
  117. package/src/components/BottomSheet/BottomSheet.stories.tsx +205 -0
  118. package/src/components/BottomSheet/BottomSheet.styles.ts +162 -0
  119. package/src/components/BottomSheet/BottomSheet.test.tsx +129 -0
  120. package/src/components/BottomSheet/BottomSheet.tsx +47 -0
  121. package/src/components/BottomSheet/BottomSheet.types.ts +50 -0
  122. package/src/components/BottomSheet/BottomSheetBody.tsx +15 -0
  123. package/src/components/BottomSheet/BottomSheetCloseButton.tsx +40 -0
  124. package/src/components/BottomSheet/BottomSheetContent.tsx +43 -0
  125. package/src/components/BottomSheet/BottomSheetContext.ts +79 -0
  126. package/src/components/BottomSheet/BottomSheetFooter.tsx +12 -0
  127. package/src/components/BottomSheet/BottomSheetHeader.tsx +22 -0
  128. package/src/components/BottomSheet/BottomSheetOverlay.tsx +16 -0
  129. package/src/components/BottomSheet/index.tsx +22 -0
  130. package/src/components/SegmentedControl/SegmentedControl.timing.test.tsx +9 -2
  131. package/src/components/Workflow/README.md +64 -0
  132. package/src/components/Workflow/Workflow.tsx +2 -0
  133. package/src/components/Workflow/Workflow.types.ts +10 -0
  134. package/src/components/Workflow/canvas/Canvas/Canvas.tsx +57 -53
  135. package/src/components/Workflow/createNode.test.ts +40 -2
  136. package/src/components/Workflow/createNode.ts +70 -2
  137. package/src/components/Workflow/index.ts +8 -0
  138. package/src/components/Workflow/layout/autoLayout.ts +4 -4
  139. package/src/components/Workflow/placement.test.ts +156 -0
  140. package/src/components/Workflow/placement.ts +172 -0
  141. package/src/components/Workflow/stories/Workflow.stories.tsx +79 -0
  142. package/src/components/Workflow/useWorkflowActions.test.tsx +345 -0
  143. package/src/components/Workflow/useWorkflowActions.ts +196 -0
  144. package/src/index.ts +1 -0
  145. package/src/translations/Defaults.translations.json +8 -1
@@ -0,0 +1,103 @@
1
+ "use client";
2
+ import { useCallback, useMemo } from 'react';
3
+ import { useReactFlow, useStoreApi } from '@xyflow/react';
4
+ import { createNodeFromType, genId, toDefaultsTranslate } from './createNode.mjs';
5
+ import { findFreeExit, planNodePlacement, FALLBACK_NODE_SIZE } from './placement.mjs';
6
+ import { useWorkflow } from './WorkflowContext/WorkflowContext.mjs';
7
+
8
+ /** Pan duration when `addNode` brings the new node into view. */
9
+ const PAN_MS = 300;
10
+ /**
11
+ * Imperative editor actions for content rendered inside `<Workflow>` (its
12
+ * `children` and render slots sit inside the canvas's React Flow provider).
13
+ * Hosts use this instead of re-implementing node creation and placement — the
14
+ * tap-to-add palette on touch devices being the first caller.
15
+ *
16
+ * Must be called from a component rendered inside `<Workflow>`.
17
+ */
18
+ function useWorkflowActions() {
19
+ const { graph, dispatch, getNodeType, translate, hostBridge, readOnly, editor: { drawerTarget }, setSelectedNodeId, setSelectedEdgeId, setDrawerTarget, } = useWorkflow();
20
+ const { getNode, getViewport, setCenter } = useReactFlow();
21
+ const store = useStoreApi();
22
+ const getAddAfterSource = useCallback((nodeId) => {
23
+ const exit = findFreeExit(graph, getNodeType, nodeId);
24
+ if (!exit)
25
+ return null;
26
+ const def = getNodeType(exit.node.kind);
27
+ const label = def?.getInstanceTitle?.(exit.node.config) || def?.label || exit.node.id;
28
+ return { nodeId: exit.node.id, sourceHandle: exit.sourceHandle, label };
29
+ }, [graph, getNodeType]);
30
+ const canAddAfter = useCallback((nodeId) => getAddAfterSource(nodeId) !== null, [getAddAfterSource]);
31
+ const addNode = useCallback((kind, target, { inspector = 'follow' } = {}) => {
32
+ if (readOnly)
33
+ return null;
34
+ const def = getNodeType(kind);
35
+ if (!def)
36
+ return null;
37
+ const draft = createNodeFromType(def, {
38
+ position: { x: 0, y: 0 },
39
+ nodes: graph.nodes,
40
+ translate: toDefaultsTranslate(translate),
41
+ hostBridge,
42
+ });
43
+ // `nextNodeId` returns a fixed id for singletons (`start`); a second one
44
+ // would be dropped by the reducer's dedupe, so report it instead.
45
+ if (graph.nodes.some((n) => n.id === draft.id))
46
+ return null;
47
+ // Centre of the visible pane, in flow coordinates.
48
+ const { width, height } = store.getState();
49
+ const viewport = getViewport();
50
+ const viewportCenter = {
51
+ x: (width / 2 - viewport.x) / viewport.zoom,
52
+ y: (height / 2 - viewport.y) / viewport.zoom,
53
+ };
54
+ const { position, edge } = planNodePlacement({
55
+ graph,
56
+ getNodeType,
57
+ node: draft,
58
+ target,
59
+ viewportCenter,
60
+ edgeId: genId('e'),
61
+ getNodeSize: (id) => {
62
+ const { width: w, height: h } = getNode(id)?.measured ?? {};
63
+ return w && h ? { width: w, height: h } : undefined;
64
+ },
65
+ });
66
+ const node = { ...draft, position };
67
+ dispatch({
68
+ type: 'addNodeWithEdge',
69
+ node,
70
+ autoConnectFrom: edge ? { edge } : null,
71
+ });
72
+ // Select the new node so a follow-up `{ after: selected }` chains on.
73
+ setSelectedNodeId(node.id);
74
+ setSelectedEdgeId(null);
75
+ if (inspector === 'open' || (inspector === 'follow' && drawerTarget)) {
76
+ setDrawerTarget({ type: 'node', id: node.id });
77
+ }
78
+ else if (inspector === 'close') {
79
+ setDrawerTarget(null);
80
+ }
81
+ void setCenter(position.x + FALLBACK_NODE_SIZE.width / 2, position.y + FALLBACK_NODE_SIZE.height / 2, { zoom: viewport.zoom, duration: PAN_MS });
82
+ return { nodeId: node.id, edgeId: edge?.id ?? null };
83
+ }, [
84
+ readOnly,
85
+ getNodeType,
86
+ graph,
87
+ translate,
88
+ hostBridge,
89
+ store,
90
+ getViewport,
91
+ getNode,
92
+ dispatch,
93
+ setSelectedNodeId,
94
+ setSelectedEdgeId,
95
+ drawerTarget,
96
+ setDrawerTarget,
97
+ setCenter,
98
+ ]);
99
+ return useMemo(() => ({ addNode, getAddAfterSource, canAddAfter }), [addNode, getAddAfterSource, canAddAfter]);
100
+ }
101
+
102
+ export { useWorkflowActions };
103
+ //# sourceMappingURL=useWorkflowActions.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useWorkflowActions.mjs","sources":["../../../src/components/Workflow/useWorkflowActions.ts"],"sourcesContent":[null],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -3,6 +3,7 @@ export * from './components/Appear';
3
3
  export * from './components/Avatar';
4
4
  export * from './components/Badge';
5
5
  export * from './components/Banner';
6
+ export * from './components/BottomSheet';
6
7
  export * from './components/Breadcrumb';
7
8
  export * from './components/Button';
8
9
  export * from './components/Card';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -10,6 +10,15 @@ var Avatar = require('./components/Avatar/Avatar.js');
10
10
  var Badge = require('./components/Badge/Badge.js');
11
11
  var Badge_styles = require('./components/Badge/Badge.styles.js');
12
12
  var Banner = require('./components/Banner/Banner.js');
13
+ var BottomSheet = require('./components/BottomSheet/BottomSheet.js');
14
+ var BottomSheet_styles = require('./components/BottomSheet/BottomSheet.styles.js');
15
+ var BottomSheetBody = require('./components/BottomSheet/BottomSheetBody.js');
16
+ var BottomSheetCloseButton = require('./components/BottomSheet/BottomSheetCloseButton.js');
17
+ var BottomSheetContent = require('./components/BottomSheet/BottomSheetContent.js');
18
+ var BottomSheetContext = require('./components/BottomSheet/BottomSheetContext.js');
19
+ var BottomSheetFooter = require('./components/BottomSheet/BottomSheetFooter.js');
20
+ var BottomSheetHeader = require('./components/BottomSheet/BottomSheetHeader.js');
21
+ var BottomSheetOverlay = require('./components/BottomSheet/BottomSheetOverlay.js');
13
22
  var Breadcrumb = require('./components/Breadcrumb/Breadcrumb.js');
14
23
  var BreadcrumbItem = require('./components/Breadcrumb/BreadcrumbItem/BreadcrumbItem.js');
15
24
  var BreadcrumbLink = require('./components/Breadcrumb/BreadcrumbLink/BreadcrumbLink.js');
@@ -164,6 +173,7 @@ var NodeShell_styles = require('./components/Workflow/canvas/NodeShell/NodeShell
164
173
  var workflowLabelProps = require('./components/Workflow/canvas/workflowLabelProps.js');
165
174
  var graphObserver = require('./components/Workflow/graphObserver.js');
166
175
  var graphReducer = require('./components/Workflow/graphReducer.js');
176
+ var useWorkflowActions = require('./components/Workflow/useWorkflowActions.js');
167
177
  var Workflow = require('./components/Workflow/Workflow.js');
168
178
  var Workflow_types = require('./components/Workflow/Workflow.types.js');
169
179
  var WorkflowContext = require('./components/Workflow/WorkflowContext/WorkflowContext.js');
@@ -200,6 +210,16 @@ exports.Badge = Badge.Badge;
200
210
  exports.badgeStyles = Badge_styles.baseStyles;
201
211
  exports.badgeVariantStyles = Badge_styles.variantStyles;
202
212
  exports.Banner = Banner.Banner;
213
+ exports.BottomSheet = BottomSheet.BottomSheet;
214
+ exports.bottomSheetAnatomy = BottomSheet_styles.bottomSheetAnatomy;
215
+ exports.bottomSheetSlotRecipe = BottomSheet_styles.bottomSheetSlotRecipe;
216
+ exports.BottomSheetBody = BottomSheetBody.BottomSheetBody;
217
+ exports.BottomSheetCloseButton = BottomSheetCloseButton.BottomSheetCloseButton;
218
+ exports.BottomSheetContent = BottomSheetContent.BottomSheetContent;
219
+ exports.useBottomSheetContext = BottomSheetContext.useBottomSheetContext;
220
+ exports.BottomSheetFooter = BottomSheetFooter.BottomSheetFooter;
221
+ exports.BottomSheetHeader = BottomSheetHeader.BottomSheetHeader;
222
+ exports.BottomSheetOverlay = BottomSheetOverlay.BottomSheetOverlay;
203
223
  exports.Breadcrumb = Breadcrumb.Breadcrumb;
204
224
  exports.BreadcrumbItem = BreadcrumbItem.BreadcrumbItem;
205
225
  exports.BreadcrumbLink = BreadcrumbLink.BreadcrumbLink;
@@ -405,6 +425,7 @@ exports.WorkflowGraphObserverContext = graphObserver.WorkflowGraphObserverContex
405
425
  exports.useWorkflowGraphObserver = graphObserver.useWorkflowGraphObserver;
406
426
  exports.emptyGraph = graphReducer.emptyGraph;
407
427
  exports.graphReducer = graphReducer.graphReducer;
428
+ exports.useWorkflowActions = useWorkflowActions.useWorkflowActions;
408
429
  exports.Workflow = Workflow.Workflow;
409
430
  exports.defineNodeType = Workflow_types.defineNodeType;
410
431
  exports.resolveDefaultConfig = Workflow_types.resolveDefaultConfig;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/dist/index.mjs CHANGED
@@ -8,6 +8,15 @@ export { Avatar } from './components/Avatar/Avatar.mjs';
8
8
  export { Badge } from './components/Badge/Badge.mjs';
9
9
  export { baseStyles as badgeStyles, variantStyles as badgeVariantStyles } from './components/Badge/Badge.styles.mjs';
10
10
  export { Banner } from './components/Banner/Banner.mjs';
11
+ export { BottomSheet } from './components/BottomSheet/BottomSheet.mjs';
12
+ export { bottomSheetAnatomy, bottomSheetSlotRecipe } from './components/BottomSheet/BottomSheet.styles.mjs';
13
+ export { BottomSheetBody } from './components/BottomSheet/BottomSheetBody.mjs';
14
+ export { BottomSheetCloseButton } from './components/BottomSheet/BottomSheetCloseButton.mjs';
15
+ export { BottomSheetContent } from './components/BottomSheet/BottomSheetContent.mjs';
16
+ export { useBottomSheetContext } from './components/BottomSheet/BottomSheetContext.mjs';
17
+ export { BottomSheetFooter } from './components/BottomSheet/BottomSheetFooter.mjs';
18
+ export { BottomSheetHeader } from './components/BottomSheet/BottomSheetHeader.mjs';
19
+ export { BottomSheetOverlay } from './components/BottomSheet/BottomSheetOverlay.mjs';
11
20
  export { Breadcrumb } from './components/Breadcrumb/Breadcrumb.mjs';
12
21
  export { BreadcrumbItem } from './components/Breadcrumb/BreadcrumbItem/BreadcrumbItem.mjs';
13
22
  export { BreadcrumbLink } from './components/Breadcrumb/BreadcrumbLink/BreadcrumbLink.mjs';
@@ -162,6 +171,7 @@ export { CARD_WIDTH, MAX_META_CHIPS, PORT_STYLE, metaChipStyles } from './compon
162
171
  export { workflowLabelProps } from './components/Workflow/canvas/workflowLabelProps.mjs';
163
172
  export { WorkflowGraphObserverContext, useWorkflowGraphObserver } from './components/Workflow/graphObserver.mjs';
164
173
  export { emptyGraph, graphReducer } from './components/Workflow/graphReducer.mjs';
174
+ export { useWorkflowActions } from './components/Workflow/useWorkflowActions.mjs';
165
175
  export { Workflow } from './components/Workflow/Workflow.mjs';
166
176
  export { defineNodeType, resolveDefaultConfig } from './components/Workflow/Workflow.types.mjs';
167
177
  export { WorkflowProvider, useWorkflow, useWorkflowTranslate } from './components/Workflow/WorkflowContext/WorkflowContext.mjs';
@@ -1 +1 @@
1
- {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -227,6 +227,13 @@ var deleting = {
227
227
  ja: "削除中",
228
228
  es: "Eliminando"
229
229
  };
230
+ var close = {
231
+ ko: "닫기",
232
+ en: "Close",
233
+ zh: "关闭",
234
+ ja: "閉じる",
235
+ es: "Cerrar"
236
+ };
230
237
  var defaultTranslations = {
231
238
  get_started: get_started,
232
239
  next: next,
@@ -266,11 +273,13 @@ var defaultTranslations = {
266
273
  es: "Eliminar"
267
274
  },
268
275
  downloading: downloading,
269
- deleting: deleting
276
+ deleting: deleting,
277
+ close: close
270
278
  };
271
279
 
272
280
  exports.anonymous = anonymous;
273
281
  exports.clear = clear;
282
+ exports.close = close;
274
283
  exports.component = component;
275
284
  exports.copied = copied;
276
285
  exports.copy = copy;
@@ -1 +1 @@
1
- {"version":3,"file":"Defaults.translations.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Defaults.translations.json.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -223,6 +223,13 @@ var deleting = {
223
223
  ja: "削除中",
224
224
  es: "Eliminando"
225
225
  };
226
+ var close = {
227
+ ko: "닫기",
228
+ en: "Close",
229
+ zh: "关闭",
230
+ ja: "閉じる",
231
+ es: "Cerrar"
232
+ };
226
233
  var defaultTranslations = {
227
234
  get_started: get_started,
228
235
  next: next,
@@ -262,8 +269,9 @@ var defaultTranslations = {
262
269
  es: "Eliminar"
263
270
  },
264
271
  downloading: downloading,
265
- deleting: deleting
272
+ deleting: deleting,
273
+ close: close
266
274
  };
267
275
 
268
- export { anonymous, clear, component, copied, copy, copy_error_details, defaultTranslations as default, deleting, download, downloading, error_boundary_default_message, error_boundary_subtitle, error_boundary_title, error_details_copied, error_id, get_started, go_next_page_button, month_range_placeholder, next, page, pagination_items_per_page, pagination_range_text, previous, refresh_page, see_less, see_more, support_help_text, support_information, time, try_again, unknown, upload_your_file, user_id };
276
+ export { anonymous, clear, close, component, copied, copy, copy_error_details, defaultTranslations as default, deleting, download, downloading, error_boundary_default_message, error_boundary_subtitle, error_boundary_title, error_details_copied, error_id, get_started, go_next_page_button, month_range_placeholder, next, page, pagination_items_per_page, pagination_range_text, previous, refresh_page, see_less, see_more, support_help_text, support_information, time, try_again, unknown, upload_your_file, user_id };
269
277
  //# sourceMappingURL=Defaults.translations.json.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"Defaults.translations.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"Defaults.translations.json.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mindlogic-ai/logician-ui",
3
- "version": "4.0.0-alpha.35",
3
+ "version": "4.0.0-alpha.37",
4
4
  "description": "A comprehensive React design system built on Chakra UI",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -53,6 +53,7 @@
53
53
  "check-exports": "node check-component-exports.js"
54
54
  },
55
55
  "peerDependencies": {
56
+ "@ark-ui/react": "^5.39.0",
56
57
  "@chakra-ui/react": "^3.3.0",
57
58
  "@emotion/react": "^11.11.0",
58
59
  "next": "^13.0.0 || ^14.0.0 || ^15.0.0 || ^16.0.0",
@@ -87,6 +88,7 @@
87
88
  "shiki": "^1.22.0"
88
89
  },
89
90
  "devDependencies": {
91
+ "@ark-ui/react": "5.39.0",
90
92
  "@chakra-ui/react": "^3.3.0",
91
93
  "@changesets/cli": "^2.27.0",
92
94
  "@emotion/react": "^11.11.0",
@@ -0,0 +1,205 @@
1
+ /**
2
+ * BottomSheet stories.
3
+ *
4
+ * Built on Ark UI's `Drawer` (zag-js), so the sheet can be dragged by its
5
+ * handle or body, rests on `snapPoints`, and is swiped away past
6
+ * `closeThreshold`. Open the stories in a mobile viewport (or with touch
7
+ * emulation) to try the gestures; with a mouse the same drags work by
8
+ * pointer.
9
+ */
10
+ import { Box, HStack, Stack } from '@chakra-ui/react';
11
+ import type { Meta, StoryObj } from '@storybook/react';
12
+
13
+ import { useState } from 'react';
14
+
15
+ import { Button } from '../Button';
16
+ import {
17
+ BoltIcon,
18
+ ClockIcon,
19
+ CodeIcon,
20
+ FilterIcon,
21
+ MailIcon,
22
+ MessageDotsIcon,
23
+ SearchIcon,
24
+ WorldIcon,
25
+ } from '../Icon';
26
+ import { Subtext, Text } from '../Typography';
27
+ import {
28
+ BottomSheet,
29
+ BottomSheetBody,
30
+ BottomSheetCloseButton,
31
+ BottomSheetContent,
32
+ BottomSheetFooter,
33
+ BottomSheetHeader,
34
+ } from '.';
35
+
36
+ const meta = {
37
+ title: 'Components/BottomSheet',
38
+ component: BottomSheet,
39
+ parameters: {
40
+ layout: 'centered',
41
+ viewport: { defaultViewport: 'mobile2' },
42
+ },
43
+ } satisfies Meta<typeof BottomSheet>;
44
+
45
+ export default meta;
46
+
47
+ type Story = StoryObj<typeof meta>;
48
+
49
+ const PALETTE = [
50
+ { icon: MessageDotsIcon, label: 'LLM', hint: '모델에게 프롬프트를 보냅니다' },
51
+ { icon: SearchIcon, label: '지식 검색', hint: '연결된 문서에서 찾습니다' },
52
+ { icon: WorldIcon, label: '웹 검색', hint: '인터넷에서 찾습니다' },
53
+ { icon: FilterIcon, label: '조건 분기', hint: '조건에 따라 경로를 나눕니다' },
54
+ { icon: CodeIcon, label: '코드 실행', hint: 'Python 코드를 실행합니다' },
55
+ { icon: BoltIcon, label: 'HTTP 요청', hint: '외부 API 를 호출합니다' },
56
+ { icon: MailIcon, label: '메일 보내기', hint: '결과를 메일로 보냅니다' },
57
+ { icon: ClockIcon, label: '대기', hint: '정해진 시간만큼 멈춥니다' },
58
+ ];
59
+
60
+ const PaletteList = ({ onPick }: { onPick: (label: string) => void }) => (
61
+ <Stack as="ul" gap="1" listStyleType="none" m="0" p="0">
62
+ {PALETTE.map(({ icon: Icon, label, hint }) => (
63
+ <Box as="li" key={label}>
64
+ <HStack
65
+ as="button"
66
+ w="full"
67
+ gap="3"
68
+ px="3"
69
+ py="2.5"
70
+ borderRadius="l2"
71
+ textAlign="start"
72
+ _hover={{ bg: 'bg.muted' }}
73
+ onClick={() => onPick(label)}
74
+ >
75
+ <Icon boxSize="sm" aria-hidden />
76
+ <Stack gap="0">
77
+ <Text fontWeight="semibold">{label}</Text>
78
+ <Subtext color="fg.muted">{hint}</Subtext>
79
+ </Stack>
80
+ </HStack>
81
+ </Box>
82
+ ))}
83
+ </Stack>
84
+ );
85
+
86
+ /** A node palette — the case this component was added for. */
87
+ export const Palette: Story = {
88
+ args: {},
89
+ render: (args) => {
90
+ const [open, setOpen] = useState(false);
91
+ const [picked, setPicked] = useState<string | null>(null);
92
+
93
+ return (
94
+ <Stack align="center">
95
+ <Button onClick={() => setOpen(true)}>노드 추가</Button>
96
+ {picked && <Subtext>추가됨: {picked}</Subtext>}
97
+ <BottomSheet
98
+ {...args}
99
+ open={open}
100
+ onOpenChange={(e) => setOpen(e.open)}
101
+ >
102
+ <BottomSheetContent>
103
+ <BottomSheetHeader>노드 추가</BottomSheetHeader>
104
+ <BottomSheetCloseButton />
105
+ <BottomSheetBody>
106
+ <PaletteList
107
+ onPick={(label) => {
108
+ setPicked(label);
109
+ setOpen(false);
110
+ }}
111
+ />
112
+ </BottomSheetBody>
113
+ </BottomSheetContent>
114
+ </BottomSheet>
115
+ </Stack>
116
+ );
117
+ },
118
+ };
119
+
120
+ /**
121
+ * Non-modal, resting on two snap points: 40% of the viewport, then fully open.
122
+ * No overlay, no focus trap — the page behind stays usable, which is what a
123
+ * palette beside a canvas needs.
124
+ */
125
+ export const NonModalSnapPoints: Story = {
126
+ args: {},
127
+ render: (args) => {
128
+ const [open, setOpen] = useState(false);
129
+ const [clicks, setClicks] = useState(0);
130
+
131
+ return (
132
+ <Stack align="center">
133
+ <HStack>
134
+ <Button onClick={() => setOpen((o) => !o)}>
135
+ {open ? '시트 닫기' : '시트 열기'}
136
+ </Button>
137
+ <Button variant="outline" onClick={() => setClicks((c) => c + 1)}>
138
+ 뒤의 페이지 버튼 ({clicks})
139
+ </Button>
140
+ </HStack>
141
+ <BottomSheet
142
+ {...args}
143
+ modal={false}
144
+ closeOnInteractOutside={false}
145
+ snapPoints={[0.4, 1]}
146
+ defaultSnapPoint={0.4}
147
+ open={open}
148
+ onOpenChange={(e) => setOpen(e.open)}
149
+ >
150
+ <BottomSheetContent>
151
+ <BottomSheetHeader>노드 추가</BottomSheetHeader>
152
+ <BottomSheetCloseButton />
153
+ <BottomSheetBody>
154
+ <PaletteList onPick={() => {}} />
155
+ </BottomSheetBody>
156
+ </BottomSheetContent>
157
+ </BottomSheet>
158
+ </Stack>
159
+ );
160
+ },
161
+ };
162
+
163
+ /**
164
+ * Long content: the body scrolls inside the sheet's 85dvh cap while the header
165
+ * and footer stay put. Dragging starts only once the list is at its top.
166
+ */
167
+ export const LongScrollingList: Story = {
168
+ args: {},
169
+ render: (args) => {
170
+ const [open, setOpen] = useState(false);
171
+
172
+ return (
173
+ <>
174
+ <Button onClick={() => setOpen(true)}>긴 목록 열기</Button>
175
+ <BottomSheet
176
+ {...args}
177
+ open={open}
178
+ onOpenChange={(e) => setOpen(e.open)}
179
+ >
180
+ <BottomSheetContent>
181
+ <BottomSheetHeader>항목 120개</BottomSheetHeader>
182
+ <BottomSheetCloseButton />
183
+ <BottomSheetBody>
184
+ <Stack as="ol" gap="0" m="0" ps="5">
185
+ {Array.from({ length: 120 }, (_, i) => (
186
+ <Text as="li" key={i} py="2">
187
+ 항목 {i + 1}
188
+ </Text>
189
+ ))}
190
+ </Stack>
191
+ </BottomSheetBody>
192
+ <BottomSheetFooter>
193
+ <Button variant="ghost" onClick={() => setOpen(false)}>
194
+ 취소
195
+ </Button>
196
+ <Button variant="solid" onClick={() => setOpen(false)}>
197
+ 확인
198
+ </Button>
199
+ </BottomSheetFooter>
200
+ </BottomSheetContent>
201
+ </BottomSheet>
202
+ </>
203
+ );
204
+ },
205
+ };