sense-react-timeline-editor 1.1.20 → 1.1.22

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/index.esm.js CHANGED
@@ -2522,6 +2522,35 @@ var EditActionO = function EditActionO(_ref7) {
2522
2522
  }),
2523
2523
  start = _parserTransformToTim.start,
2524
2524
  end = _parserTransformToTim.end;
2525
+ var isSelectionMultiDrag = ((selectedActionIds === null || selectedActionIds === void 0 ? void 0 : selectedActionIds.length) || 0) > 1 && (selectedActionIds === null || selectedActionIds === void 0 ? void 0 : selectedActionIds.includes(action.id));
2526
+ if (isSelectionMultiDrag || isMultiDrag) {
2527
+ var originalTransform = parserTimeToTransform({
2528
+ start: action.start,
2529
+ end: action.end
2530
+ }, {
2531
+ startLeft: startLeft,
2532
+ scale: scale,
2533
+ scaleWidth: scaleWidth
2534
+ });
2535
+ setTransform(_objectSpread2(_objectSpread2({}, originalTransform), {}, {
2536
+ top: 0
2537
+ }));
2538
+ if (onActionMoveEnd) {
2539
+ onActionMoveEnd({
2540
+ action: action,
2541
+ row: row,
2542
+ start: start,
2543
+ end: end,
2544
+ left: left,
2545
+ width: width,
2546
+ top: top,
2547
+ height: height,
2548
+ up: 0,
2549
+ isMultiDrag: true
2550
+ });
2551
+ }
2552
+ return;
2553
+ }
2525
2554
  // Step 1: 根据鼠标垂直位置确定初始目标行
2526
2555
  var placement = resolveTargetRowPlacement({
2527
2556
  editorData: editorData,
@@ -2793,6 +2822,7 @@ var EditActionO = function EditActionO(_ref7) {
2793
2822
  }, /*#__PURE__*/React.createElement("div", {
2794
2823
  "data-action-id": action.id,
2795
2824
  "data-action-drag": dragging,
2825
+ "data-action-name": action.file_name,
2796
2826
  "data-action-disabled": action.is_disabled ? 1 : 0,
2797
2827
  onMouseDown: function onMouseDown() {
2798
2828
  isDragWhenClick.current = false;
@@ -3413,6 +3443,13 @@ var useRowDrag = function useRowDrag(options) {
3413
3443
  timeOffset: timeOffset,
3414
3444
  rowDelta: rowDelta
3415
3445
  });
3446
+ var hasConflict = placements.some(function (placement) {
3447
+ return placement.conflicted;
3448
+ });
3449
+ if (hasConflict) {
3450
+ multiDragState.current = resetMultiDragState();
3451
+ return;
3452
+ }
3416
3453
  var rows = cloneRows(editorData);
3417
3454
  var updatedActions = [];
3418
3455
  var removedActions = new Map();
@@ -4287,6 +4324,7 @@ var TimeArea = function TimeArea(_ref) {
4287
4324
  scaleWidth: scaleWidth
4288
4325
  });
4289
4326
  var result = onClickTimeArea && onClickTimeArea(time, e);
4327
+ console.log('TimeArea click = ', time);
4290
4328
  if (result === false) return; // 返回 false 时阻止设置时间
4291
4329
  setCursor({
4292
4330
  time: time
@@ -4409,7 +4447,6 @@ var DragLineController = /*#__PURE__*/memo(/*#__PURE__*/forwardRef(function (pro
4409
4447
  _useState2 = _slicedToArray(_useState, 2),
4410
4448
  dragLineData = _useState2[0],
4411
4449
  setDragLineData = _useState2[1];
4412
- console.log('dragLineData = ', dragLineData);
4413
4450
  var initDragLine = useCallback(function (data) {
4414
4451
  if (dragLine) {
4415
4452
  var assistActionIds = getAssistDragLineActionIds && getAssistDragLineActionIds({
@@ -4657,6 +4694,8 @@ var Timeline = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (p
4657
4694
  useEffect(function () {
4658
4695
  var handleClickOutside = function handleClickOutside(e) {
4659
4696
  var target = e.target;
4697
+ var actionEl = target.closest('.timeline-editor-time-area');
4698
+ if (actionEl) return;
4660
4699
  engineRef.current.trigger('mousedown', {
4661
4700
  target: target,
4662
4701
  evt: e
@@ -4838,7 +4877,8 @@ var Timeline = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(function (p
4838
4877
  id: "time-editor-container",
4839
4878
  ref: containerRef,
4840
4879
  style: {
4841
- height: '100%'
4880
+ height: '100%',
4881
+ background: '#fff'
4842
4882
  },
4843
4883
  onClick: onClickTimeline
4844
4884
  }, Object.keys(groupedData).map(function (key, index) {
package/dist/index.js CHANGED
@@ -2532,6 +2532,35 @@ var EditActionO = function EditActionO(_ref7) {
2532
2532
  }),
2533
2533
  start = _parserTransformToTim.start,
2534
2534
  end = _parserTransformToTim.end;
2535
+ var isSelectionMultiDrag = ((selectedActionIds === null || selectedActionIds === void 0 ? void 0 : selectedActionIds.length) || 0) > 1 && (selectedActionIds === null || selectedActionIds === void 0 ? void 0 : selectedActionIds.includes(action.id));
2536
+ if (isSelectionMultiDrag || isMultiDrag) {
2537
+ var originalTransform = parserTimeToTransform({
2538
+ start: action.start,
2539
+ end: action.end
2540
+ }, {
2541
+ startLeft: startLeft,
2542
+ scale: scale,
2543
+ scaleWidth: scaleWidth
2544
+ });
2545
+ setTransform(_objectSpread2(_objectSpread2({}, originalTransform), {}, {
2546
+ top: 0
2547
+ }));
2548
+ if (onActionMoveEnd) {
2549
+ onActionMoveEnd({
2550
+ action: action,
2551
+ row: row,
2552
+ start: start,
2553
+ end: end,
2554
+ left: left,
2555
+ width: width,
2556
+ top: top,
2557
+ height: height,
2558
+ up: 0,
2559
+ isMultiDrag: true
2560
+ });
2561
+ }
2562
+ return;
2563
+ }
2535
2564
  // Step 1: 根据鼠标垂直位置确定初始目标行
2536
2565
  var placement = resolveTargetRowPlacement({
2537
2566
  editorData: editorData,
@@ -2803,6 +2832,7 @@ var EditActionO = function EditActionO(_ref7) {
2803
2832
  }, /*#__PURE__*/React__default['default'].createElement("div", {
2804
2833
  "data-action-id": action.id,
2805
2834
  "data-action-drag": dragging,
2835
+ "data-action-name": action.file_name,
2806
2836
  "data-action-disabled": action.is_disabled ? 1 : 0,
2807
2837
  onMouseDown: function onMouseDown() {
2808
2838
  isDragWhenClick.current = false;
@@ -3423,6 +3453,13 @@ var useRowDrag = function useRowDrag(options) {
3423
3453
  timeOffset: timeOffset,
3424
3454
  rowDelta: rowDelta
3425
3455
  });
3456
+ var hasConflict = placements.some(function (placement) {
3457
+ return placement.conflicted;
3458
+ });
3459
+ if (hasConflict) {
3460
+ multiDragState.current = resetMultiDragState();
3461
+ return;
3462
+ }
3426
3463
  var rows = cloneRows(editorData);
3427
3464
  var updatedActions = [];
3428
3465
  var removedActions = new Map();
@@ -4297,6 +4334,7 @@ var TimeArea = function TimeArea(_ref) {
4297
4334
  scaleWidth: scaleWidth
4298
4335
  });
4299
4336
  var result = onClickTimeArea && onClickTimeArea(time, e);
4337
+ console.log('TimeArea click = ', time);
4300
4338
  if (result === false) return; // 返回 false 时阻止设置时间
4301
4339
  setCursor({
4302
4340
  time: time
@@ -4419,7 +4457,6 @@ var DragLineController = /*#__PURE__*/React.memo(/*#__PURE__*/React.forwardRef(f
4419
4457
  _useState2 = _slicedToArray(_useState, 2),
4420
4458
  dragLineData = _useState2[0],
4421
4459
  setDragLineData = _useState2[1];
4422
- console.log('dragLineData = ', dragLineData);
4423
4460
  var initDragLine = React.useCallback(function (data) {
4424
4461
  if (dragLine) {
4425
4462
  var assistActionIds = getAssistDragLineActionIds && getAssistDragLineActionIds({
@@ -4667,6 +4704,8 @@ var Timeline = /*#__PURE__*/React__default['default'].memo(/*#__PURE__*/React__d
4667
4704
  React.useEffect(function () {
4668
4705
  var handleClickOutside = function handleClickOutside(e) {
4669
4706
  var target = e.target;
4707
+ var actionEl = target.closest('.timeline-editor-time-area');
4708
+ if (actionEl) return;
4670
4709
  engineRef.current.trigger('mousedown', {
4671
4710
  target: target,
4672
4711
  evt: e
@@ -4848,7 +4887,8 @@ var Timeline = /*#__PURE__*/React__default['default'].memo(/*#__PURE__*/React__d
4848
4887
  id: "time-editor-container",
4849
4888
  ref: containerRef,
4850
4889
  style: {
4851
- height: '100%'
4890
+ height: '100%',
4891
+ background: '#fff'
4852
4892
  },
4853
4893
  onClick: onClickTimeline
4854
4894
  }, Object.keys(groupedData).map(function (key, index) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "sense-react-timeline-editor",
3
- "version": "1.1.20",
3
+ "version": "1.1.22",
4
4
  "author": "xzdarcy",
5
5
  "license": "MIT",
6
6
  "keywords": [