@janiscommerce/ui-web 2.0.0 → 2.1.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/CHANGELOG.md CHANGED
@@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [2.1.0] - 2026-07-03
11
+
12
+ ### Added
13
+
14
+ - `DiagramCanvas` imperative ref method `deleteElements({ nodes, edges })` so consumers can delete elements from their own controls through React Flow — deletion goes through `onBeforeDelete` and emits removes via `onNodesChange`/`onEdgesChange`, same as keyboard delete
15
+
10
16
  ## [2.0.0] - 2026-07-02
11
17
 
12
18
  ### Changed
package/dist/index.esm.js CHANGED
@@ -15630,6 +15630,7 @@ var _excluded$d = ["handleConfig"],
15630
15630
  * @property {(ids?: string[]) => void} selectNodes - reemplaza la selección actual con esos nodos
15631
15631
  * @property {(ids?: string[]) => void} selectEdges - reemplaza la selección actual con esos edges
15632
15632
  * @property {() => void} clearSelection - limpia toda la selección
15633
+ * @property {(ids?: { nodes?: string[], edges?: string[] }) => Promise<void>} deleteElements - borra los elementos vía React Flow (pasa por onBeforeDelete y onNodesChange/onEdgesChange)
15633
15634
  */
15634
15635
 
15635
15636
  var defaultViewportOpts = {
@@ -15756,14 +15757,34 @@ var Canvas = /*#__PURE__*/forwardRef(function (_ref, ref) {
15756
15757
  },
15757
15758
  clearSelection: function clearSelection() {
15758
15759
  return store.getState().unselectNodesAndEdges();
15760
+ },
15761
+ deleteElements: function deleteElements() {
15762
+ var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
15763
+ _ref2$nodes = _ref2.nodes,
15764
+ nodeIds = _ref2$nodes === void 0 ? [] : _ref2$nodes,
15765
+ _ref2$edges = _ref2.edges,
15766
+ edgeIds = _ref2$edges === void 0 ? [] : _ref2$edges;
15767
+
15768
+ return rf.deleteElements({
15769
+ nodes: nodeIds.map(function (id) {
15770
+ return {
15771
+ id: id
15772
+ };
15773
+ }),
15774
+ edges: edgeIds.map(function (id) {
15775
+ return {
15776
+ id: id
15777
+ };
15778
+ })
15779
+ });
15759
15780
  }
15760
15781
  };
15761
15782
  }, [rf, store]);
15762
15783
  var nodeTypes = useMemo$1(function () {
15763
- return Object.fromEntries(Object.entries(nodeComponents).map(function (_ref2) {
15764
- var _ref3 = _slicedToArray(_ref2, 2),
15765
- type = _ref3[0],
15766
- Component = _ref3[1];
15784
+ return Object.fromEntries(Object.entries(nodeComponents).map(function (_ref3) {
15785
+ var _ref4 = _slicedToArray(_ref3, 2),
15786
+ type = _ref4[0],
15787
+ Component = _ref4[1];
15767
15788
 
15768
15789
  return [type, withHandles(Component, {
15769
15790
  resizable: resizableNodes
@@ -15812,13 +15833,13 @@ var Canvas = /*#__PURE__*/forwardRef(function (_ref, ref) {
15812
15833
  });
15813
15834
  }, [onReconnect]);
15814
15835
  var handleBeforeDelete = useCallback( /*#__PURE__*/function () {
15815
- var _ref5 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(_ref4) {
15836
+ var _ref6 = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(_ref5) {
15816
15837
  var nodesToDelete, edgesToDelete, result, idsToDelete, nodeIds, edgeIds;
15817
15838
  return regeneratorRuntime.wrap(function _callee$(_context) {
15818
15839
  while (1) {
15819
15840
  switch (_context.prev = _context.next) {
15820
15841
  case 0:
15821
- nodesToDelete = _ref4.nodes, edgesToDelete = _ref4.edges;
15842
+ nodesToDelete = _ref5.nodes, edgesToDelete = _ref5.edges;
15822
15843
 
15823
15844
  if (onBeforeDelete) {
15824
15845
  _context.next = 3;
@@ -15832,9 +15853,9 @@ var Canvas = /*#__PURE__*/forwardRef(function (_ref, ref) {
15832
15853
  return onBeforeDelete({
15833
15854
  nodes: nodesToDelete.map(function (node) {
15834
15855
  // eslint-disable-next-line no-unused-vars
15835
- var _ref6 = node.data || {};
15836
- _ref6.handleConfig;
15837
- var data = _objectWithoutProperties(_ref6, _excluded$d);
15856
+ var _ref7 = node.data || {};
15857
+ _ref7.handleConfig;
15858
+ var data = _objectWithoutProperties(_ref7, _excluded$d);
15838
15859
 
15839
15860
  return {
15840
15861
  id: node.id,
@@ -15844,9 +15865,9 @@ var Canvas = /*#__PURE__*/forwardRef(function (_ref, ref) {
15844
15865
  }),
15845
15866
  edges: edgesToDelete.map(function (edge) {
15846
15867
  // eslint-disable-next-line no-unused-vars
15847
- var _ref7 = edge.data || {};
15848
- _ref7.selectedStyle;
15849
- var data = _objectWithoutProperties(_ref7, _excluded2$1);
15868
+ var _ref8 = edge.data || {};
15869
+ _ref8.selectedStyle;
15870
+ var data = _objectWithoutProperties(_ref8, _excluded2$1);
15850
15871
 
15851
15872
  return {
15852
15873
  id: edge.id,
@@ -15869,8 +15890,8 @@ var Canvas = /*#__PURE__*/forwardRef(function (_ref, ref) {
15869
15890
  // { nodes, edges } → borrado selectivo: filtrar los objetos RF originales
15870
15891
  // por los ids que el consumidor devolvió (RF hace el match por id).
15871
15892
  idsToDelete = function idsToDelete(elements) {
15872
- return new Set((elements || []).map(function (_ref8) {
15873
- var id = _ref8.id;
15893
+ return new Set((elements || []).map(function (_ref9) {
15894
+ var id = _ref9.id;
15874
15895
  return id;
15875
15896
  }));
15876
15897
  };
@@ -15895,21 +15916,21 @@ var Canvas = /*#__PURE__*/forwardRef(function (_ref, ref) {
15895
15916
  }));
15896
15917
 
15897
15918
  return function (_x) {
15898
- return _ref5.apply(this, arguments);
15919
+ return _ref6.apply(this, arguments);
15899
15920
  };
15900
15921
  }(), [onBeforeDelete]);
15901
- var handleSelectionChange = useCallback(function (_ref9) {
15902
- var selectedNodes = _ref9.nodes,
15903
- selectedEdges = _ref9.edges;
15922
+ var handleSelectionChange = useCallback(function (_ref10) {
15923
+ var selectedNodes = _ref10.nodes,
15924
+ selectedEdges = _ref10.edges;
15904
15925
  return onSelectionChange === null || onSelectionChange === void 0 ? void 0 : onSelectionChange({
15905
- nodes: selectedNodes.map(function (_ref10) {
15906
- var id = _ref10.id;
15926
+ nodes: selectedNodes.map(function (_ref11) {
15927
+ var id = _ref11.id;
15907
15928
  return {
15908
15929
  id: id
15909
15930
  };
15910
15931
  }),
15911
- edges: selectedEdges.map(function (_ref11) {
15912
- var id = _ref11.id;
15932
+ edges: selectedEdges.map(function (_ref12) {
15933
+ var id = _ref12.id;
15913
15934
  return {
15914
15935
  id: id
15915
15936
  };
@@ -15918,9 +15939,9 @@ var Canvas = /*#__PURE__*/forwardRef(function (_ref, ref) {
15918
15939
  }, [onSelectionChange]);
15919
15940
  var handleNodeClick = useCallback(function (_event, node) {
15920
15941
  // eslint-disable-next-line no-unused-vars
15921
- var _ref12 = node.data || {};
15922
- _ref12.handleConfig;
15923
- var data = _objectWithoutProperties(_ref12, _excluded3);
15942
+ var _ref13 = node.data || {};
15943
+ _ref13.handleConfig;
15944
+ var data = _objectWithoutProperties(_ref13, _excluded3);
15924
15945
 
15925
15946
  onNodeClick === null || onNodeClick === void 0 || onNodeClick({
15926
15947
  id: node.id,
@@ -15930,9 +15951,9 @@ var Canvas = /*#__PURE__*/forwardRef(function (_ref, ref) {
15930
15951
  }, [onNodeClick]);
15931
15952
  var handleEdgeClick = useCallback(function (_event, edge) {
15932
15953
  // eslint-disable-next-line no-unused-vars
15933
- var _ref13 = edge.data || {};
15934
- _ref13.selectedStyle;
15935
- var data = _objectWithoutProperties(_ref13, _excluded4);
15954
+ var _ref14 = edge.data || {};
15955
+ _ref14.selectedStyle;
15956
+ var data = _objectWithoutProperties(_ref14, _excluded4);
15936
15957
 
15937
15958
  onEdgeClick === null || onEdgeClick === void 0 || onEdgeClick({
15938
15959
  id: edge.id,