@sapui5/sap.suite.ui.commons 1.136.11 → 1.136.13

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 (74) hide show
  1. package/package.json +1 -1
  2. package/src/sap/suite/ui/commons/.library +1 -1
  3. package/src/sap/suite/ui/commons/AriaProperties.js +1 -1
  4. package/src/sap/suite/ui/commons/CalculationBuilder.js +1 -1
  5. package/src/sap/suite/ui/commons/CalculationBuilderExpression.js +1 -1
  6. package/src/sap/suite/ui/commons/CalculationBuilderFunction.js +1 -1
  7. package/src/sap/suite/ui/commons/CalculationBuilderGroup.js +1 -1
  8. package/src/sap/suite/ui/commons/CalculationBuilderItem.js +1 -1
  9. package/src/sap/suite/ui/commons/CalculationBuilderValidationResult.js +1 -1
  10. package/src/sap/suite/ui/commons/CalculationBuilderVariable.js +1 -1
  11. package/src/sap/suite/ui/commons/CloudFilePicker.js +1 -1
  12. package/src/sap/suite/ui/commons/MicroProcessFlow.js +1 -1
  13. package/src/sap/suite/ui/commons/MicroProcessFlowItem.js +1 -1
  14. package/src/sap/suite/ui/commons/TimelineRenderManager.js +8 -4
  15. package/src/sap/suite/ui/commons/flexibility/changeHandler/PropertyChangeMapper.js +1 -1
  16. package/src/sap/suite/ui/commons/imageeditor/CropCustomShapeHistoryItem.js +1 -1
  17. package/src/sap/suite/ui/commons/imageeditor/CropEllipseHistoryItem.js +1 -1
  18. package/src/sap/suite/ui/commons/imageeditor/CropRectangleHistoryItem.js +1 -1
  19. package/src/sap/suite/ui/commons/imageeditor/CustomSizeItem.js +1 -1
  20. package/src/sap/suite/ui/commons/imageeditor/FilterHistoryItem.js +1 -1
  21. package/src/sap/suite/ui/commons/imageeditor/FlipHistoryItem.js +1 -1
  22. package/src/sap/suite/ui/commons/imageeditor/HistoryItem.js +1 -1
  23. package/src/sap/suite/ui/commons/imageeditor/ImageEditor.js +1 -1
  24. package/src/sap/suite/ui/commons/imageeditor/ImageEditorContainer.js +1 -1
  25. package/src/sap/suite/ui/commons/imageeditor/ImageEditorResponsiveContainer.js +1 -1
  26. package/src/sap/suite/ui/commons/imageeditor/ResizeHistoryItem.js +1 -1
  27. package/src/sap/suite/ui/commons/imageeditor/RotateHistoryItem.js +1 -1
  28. package/src/sap/suite/ui/commons/library.js +100 -3
  29. package/src/sap/suite/ui/commons/messagebundle.properties +73 -12
  30. package/src/sap/suite/ui/commons/messagebundle_ar.properties +1 -1
  31. package/src/sap/suite/ui/commons/messagebundle_en_US_saprigi.properties +39 -5
  32. package/src/sap/suite/ui/commons/messagebundle_fr_CA.properties +1 -1
  33. package/src/sap/suite/ui/commons/messagebundle_hu.properties +1 -1
  34. package/src/sap/suite/ui/commons/messagebundle_id.properties +2 -2
  35. package/src/sap/suite/ui/commons/messagebundle_it.properties +1 -1
  36. package/src/sap/suite/ui/commons/messagebundle_pt.properties +1 -1
  37. package/src/sap/suite/ui/commons/messagebundle_ru.properties +1 -1
  38. package/src/sap/suite/ui/commons/networkgraph/ElementBase.js +19 -1
  39. package/src/sap/suite/ui/commons/networkgraph/Graph.js +590 -48
  40. package/src/sap/suite/ui/commons/networkgraph/GraphMap.js +25 -3
  41. package/src/sap/suite/ui/commons/networkgraph/GraphRenderer.js +19 -8
  42. package/src/sap/suite/ui/commons/networkgraph/KeyboardNavigator.js +367 -12
  43. package/src/sap/suite/ui/commons/networkgraph/Line.js +814 -22
  44. package/src/sap/suite/ui/commons/networkgraph/Node.js +573 -79
  45. package/src/sap/suite/ui/commons/networkgraph/Tooltip.js +4 -0
  46. package/src/sap/suite/ui/commons/networkgraph/Utils.js +249 -10
  47. package/src/sap/suite/ui/commons/networkgraph/layout/NoopLayout.js +77 -7
  48. package/src/sap/suite/ui/commons/networkgraph/util/ConnectionPathUtils.js +1174 -0
  49. package/src/sap/suite/ui/commons/networkgraph/util/CreateConnectionPopover.js +374 -0
  50. package/src/sap/suite/ui/commons/networkgraph/util/DependencyLayoutHelper.js +1017 -0
  51. package/src/sap/suite/ui/commons/networkgraph/util/DragDropManager.js +721 -0
  52. package/src/sap/suite/ui/commons/networkgraph/util/PortManager.js +582 -0
  53. package/src/sap/suite/ui/commons/statusindicator/Circle.js +1 -1
  54. package/src/sap/suite/ui/commons/statusindicator/CustomShape.js +1 -1
  55. package/src/sap/suite/ui/commons/statusindicator/DiscreteThreshold.js +1 -1
  56. package/src/sap/suite/ui/commons/statusindicator/FillingOption.js +1 -1
  57. package/src/sap/suite/ui/commons/statusindicator/LibraryShape.js +1 -1
  58. package/src/sap/suite/ui/commons/statusindicator/Path.js +1 -1
  59. package/src/sap/suite/ui/commons/statusindicator/PropertyThreshold.js +1 -1
  60. package/src/sap/suite/ui/commons/statusindicator/Rectangle.js +1 -1
  61. package/src/sap/suite/ui/commons/statusindicator/Shape.js +1 -1
  62. package/src/sap/suite/ui/commons/statusindicator/ShapeGroup.js +1 -1
  63. package/src/sap/suite/ui/commons/statusindicator/SimpleShape.js +1 -1
  64. package/src/sap/suite/ui/commons/statusindicator/StatusIndicator.js +1 -1
  65. package/src/sap/suite/ui/commons/taccount/TAccount.js +1 -1
  66. package/src/sap/suite/ui/commons/taccount/TAccountGroup.js +1 -1
  67. package/src/sap/suite/ui/commons/taccount/TAccountItem.js +1 -1
  68. package/src/sap/suite/ui/commons/taccount/TAccountItemProperty.js +1 -1
  69. package/src/sap/suite/ui/commons/taccount/TAccountPanel.js +1 -1
  70. package/src/sap/suite/ui/commons/themes/base/NetworkGraph.less +26 -13
  71. package/src/sap/suite/ui/commons/themes/base/NetworkGroup.less +4 -0
  72. package/src/sap/suite/ui/commons/themes/base/NetworkLine.less +58 -13
  73. package/src/sap/suite/ui/commons/themes/base/NetworkNode.less +251 -47
  74. package/src/sap/suite/ui/commons/themes/base/SemanticColorMixins.less +55 -0
@@ -264,6 +264,25 @@
264
264
  display: block;
265
265
  }
266
266
 
267
+ .sapSuiteUiCommonsNetworkNodeActionButtonsVisible.sapSuiteUiCommonsNetworkGraphDivActionButtonsTop {
268
+ display: flex;
269
+ flex-direction: row;
270
+ gap: 4px;
271
+ width: auto;
272
+ }
273
+
274
+ .sapSuiteUiCommonsNetworkGraphDivActionButtonsTop {
275
+ top: -2.25rem;
276
+ right: 0;
277
+ width: auto;
278
+ display: none;
279
+ }
280
+
281
+ /* Remove vertical spacing for buttons in the top container */
282
+ .sapSuiteUiCommonsNetworkGraphDivActionButtonsTop .sapSuiteUiCommonsNetworkGraphDivActionButtonBackground {
283
+ margin-bottom: 0;
284
+ }
285
+
267
286
  .sapSuiteUiCommonsNetworkNodeActionButton {
268
287
  font-size: @sapMFontLargeSize;
269
288
  cursor: pointer;
@@ -332,7 +351,7 @@
332
351
  }
333
352
 
334
353
  .sapSuiteUiCommonsNetworkGraphDivInner {
335
- border: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapUiNeutralElement;
354
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapUiNeutralElement;
336
355
  background-color: @sapUiListBackground;
337
356
  font-size: @sapMFontSmallSize;
338
357
  position: relative;
@@ -344,32 +363,32 @@
344
363
  }
345
364
 
346
365
  .sapSuiteUiCommonsNetworkElementSuccess .sapSuiteUiCommonsNetworkGraphDivInner {
347
- border: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapSuccessBorderColor;
366
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapSuccessBorderColor;
348
367
  background-color: @sapSuccessBackground;
349
368
  color: @sapContent_IconColor;
350
369
  }
351
370
 
352
371
  .sapSuiteUiCommonsNetworkElementWarning .sapSuiteUiCommonsNetworkGraphDivInner {
353
- border: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapWarningBorderColor;
354
- background-color: @sapWarningBackground;
372
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapWarningBorderColor;
373
+ background-color: @sapWarningBackground;
355
374
  color: @sapContent_IconColor;
356
375
  }
357
376
 
358
377
  .sapSuiteUiCommonsNetworkElementInformation .sapSuiteUiCommonsNetworkGraphDivInner {
359
- border: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapInformationBorderColor;
360
- background-color: @sapInformationBackground;
378
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapInformationBorderColor;
379
+ background-color: @sapInformationBackground;
361
380
  color: @sapContent_IconColor;
362
381
  }
363
382
 
364
383
  .sapSuiteUiCommonsNetworkElementError .sapSuiteUiCommonsNetworkGraphDivInner {
365
- border: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapErrorBorderColor;
366
- background-color: @sapErrorBackground;
384
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapErrorBorderColor;
385
+ background-color: @sapErrorBackground;
367
386
  color: @sapContent_IconColor;
368
387
  }
369
388
 
370
389
  .sapSuiteUiCommonsNetworkElementNeutral .sapSuiteUiCommonsNetworkGraphDivInner {
371
- border: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapNeutralBorderColor;
372
- background-color: @sapNeutralBackground;
390
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapNeutralBorderColor;
391
+ background-color: @sapNeutralBackground;
373
392
  color: @sapContent_IconColor;
374
393
  }
375
394
 
@@ -390,10 +409,8 @@
390
409
  margin: auto;
391
410
  display: flex;
392
411
  pointer-events: all;
393
-
394
412
  height: 100%;
395
413
  width: 100%;
396
-
397
414
  box-sizing: border-box;
398
415
  }
399
416
 
@@ -528,7 +545,7 @@
528
545
 
529
546
  .sapSuiteUiCommonsNetworkGraphDivNode.sapSuiteUiCommonsNetworkBox.sapSuiteUiCommonsNetworkElementFocus {
530
547
  outline: @sapUiContentFocusWidth @sapUiContentFocusStyle @sapUiContentFocusColor;
531
- padding: 1px;
548
+ outline-offset: calc(@sapUiContentFocusWidth + .05rem);
532
549
  border-radius: 8px;
533
550
  }
534
551
 
@@ -544,7 +561,7 @@
544
561
 
545
562
  .sapSuiteUiCommonsNetworkGraphDivNode.sapSuiteUiCommonsNetworkNodeCircle.sapSuiteUiCommonsNetworkElementFocus .sapSuiteUiCommonsNetworkGraphDivInnerWrapper {
546
563
  outline: @sapUiContentFocusWidth @sapUiContentFocusStyle @sapContent_FocusColor;
547
- padding: 1px;
564
+ outline-offset: calc(@sapUiContentFocusWidth + .05rem);
548
565
  border-radius: 50%;
549
566
  }
550
567
 
@@ -575,14 +592,14 @@
575
592
 
576
593
  .sapSuiteUiCommonsNetworkGraphDivNode.sapSuiteUiCommonsNetworkElementSelected .sapSuiteUiCommonsNetworkGraphDivInner {
577
594
  color: @sapContent_IconColor;
578
- border-width: @sapUiButtonSelectedTokenBorderWidth;
595
+ outline-width: @sapUiButtonSelectedTokenBorderWidth;
579
596
  background-color: @sapUiListSelectionBackgroundColor;
580
597
  border-radius: 8px;
581
598
  }
582
599
 
583
600
  .sapSuiteUiCommonsNetworkNodeCircle.sapSuiteUiCommonsNetworkGraphDivNode.sapSuiteUiCommonsNetworkElementSelected .sapSuiteUiCommonsNetworkGraphDivInner {
584
601
  color: @sapContent_IconColor;
585
- border-width: @sapUiButtonSelectedTokenBorderWidth;
602
+ outline-width: @sapUiButtonSelectedTokenBorderWidth;
586
603
  background-color: @sapUiListSelectionBackgroundColor;
587
604
  border-radius: 50%;
588
605
  }
@@ -590,27 +607,27 @@
590
607
  .sapSuiteUiCommonsNetworkGraphDivNode.sapSuiteUiCommonsNetworkElementHighlight.sapSuiteUiCommonsNetworkElementSelected .sapSuiteUiCommonsNetworkGraphDivInner {
591
608
  color: @sapTextColor;
592
609
  background-color: @sapUiListHoverSelectionBackground;
593
- border-width: @sapUiButtonSelectedTokenBorderWidth;
610
+ outline-width: @sapUiButtonSelectedTokenBorderWidth;
594
611
  border-radius: 8px;
595
612
  }
596
613
 
597
614
  .sapSuiteUiCommonsNetworkNodeCircle.sapSuiteUiCommonsNetworkGraphDivNode.sapSuiteUiCommonsNetworkElementHighlight.sapSuiteUiCommonsNetworkElementSelected .sapSuiteUiCommonsNetworkGraphDivInner {
598
615
  color: @sapTextColor;
599
616
  background-color: @sapUiListHoverSelectionBackground;
600
- border-width: @sapUiButtonSelectedTokenBorderWidth;
617
+ outline-width: @sapUiButtonSelectedTokenBorderWidth;
601
618
  border-radius: 50%;
602
619
  }
603
620
 
604
621
  .sapSuiteUiCommonsNetworkGraphDivActionButtonBackground.sapSuiteUiCommonsNetworkElementFocus {
605
622
  border-radius: 50%;
606
- padding: 1px;
607
- position: initial;
608
- display: inline-flex;
609
- border: @sapUiContentFocusWidth @sapUiContentFocusStyle @sapUiContentFocusColor;
623
+ position: initial;
624
+ display: inline-flex;
625
+ outline-offset: .1rem;
626
+ outline: @sapUiContentFocusWidth @sapUiContentFocusStyle @sapUiContentFocusColor;
610
627
  }
611
628
 
612
629
  .sapSuiteUiCommonsNetworkGraphDivNode.sapSuiteUiCommonsNetworkElementHighlight .sapSuiteUiCommonsNetworkGraphDivInner {
613
- border-width: @sapUiButtonSelectedTokenBorderWidth;
630
+ outline-width: @sapUiButtonSelectedTokenBorderWidth;
614
631
  background-color: @sapUiListHoverBackground;
615
632
  }
616
633
 
@@ -625,13 +642,10 @@
625
642
  position: absolute;
626
643
  left: -10px;
627
644
  top: -10px;
628
-
629
645
  background-color: @sapUiListBackground;
630
646
  border-radius: 50%;
631
647
  color: @sapUiBaseText;
632
-
633
- border: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapUiContentForegroundBorderColor;
634
-
648
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapUiContentForegroundBorderColor;
635
649
  pointer-events: all;
636
650
  }
637
651
 
@@ -648,46 +662,47 @@
648
662
  }
649
663
 
650
664
  .sapSuiteUiCommonsNetworkElementHighlight .sapSuiteUiCommonsNetworkGraphDivHeader.sapSuiteUiCommonsNetworkGraphDivHeaderColor {
651
- border-width: @sapUiButtonSelectedTokenBorderWidth;
665
+ outline-width: @sapUiButtonSelectedTokenBorderWidth;
652
666
  }
653
667
 
654
668
  .sapSuiteUiCommonsNetworkGraphDivHeader .sapSuiteUiCommonsNetworkGraphDivHeaderColor {
655
- background-color: @sapNeutralBackground;
656
- border-bottom: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapNeutralBorderColor;
669
+ background-color: @sapNeutralBackground;
670
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapNeutralBorderColor;
657
671
  }
672
+
658
673
  .sapSuiteUiCommonsNetworkElementWarning .sapSuiteUiCommonsNetworkGraphDivHeaderColor {
659
- background-color: @sapWarningBackground;
660
- border-bottom: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapWarningBorderColor;
674
+ background-color: @sapWarningBackground;
675
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapWarningBorderColor;
661
676
  }
662
677
 
663
678
  .sapSuiteUiCommonsNetworkElementError .sapSuiteUiCommonsNetworkGraphDivHeaderColor {
664
- border-bottom: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapErrorBorderColor;
665
- background-color: @sapErrorBackground;
679
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapErrorBorderColor;
680
+ background-color: @sapErrorBackground;
666
681
  }
667
682
 
668
683
  .sapSuiteUiCommonsNetworkElementSuccess .sapSuiteUiCommonsNetworkGraphDivHeaderColor {
669
- border-bottom: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapSuccessBorderColor;
670
- background-color: @sapSuccessBackground;
684
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapSuccessBorderColor;
685
+ background-color: @sapSuccessBackground;
671
686
  }
672
687
 
673
688
  .sapSuiteUiCommonsNetworkElementInformation .sapSuiteUiCommonsNetworkGraphDivHeaderColor {
674
- border-bottom: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapInformationBorderColor;
675
- background-color: @sapInformationBackground;
689
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapInformationBorderColor;
690
+ background-color: @sapInformationBackground;
676
691
  }
677
692
 
678
693
  .sapSuiteUiCommonsNetworkElementNeutral .sapSuiteUiCommonsNetworkGraphDivHeaderColor {
679
- border-bottom: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapNeutralBorderColor;
680
- background-color: @sapNeutralBackground;
694
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapNeutralBorderColor;
695
+ background-color: @sapNeutralBackground;
681
696
  }
682
697
 
683
698
  .sapSuiteUiCommonsNetworkNodeCustomStatus .sapSuiteUiCommonsNetworkGraphDivHeaderColor {
684
- border-bottom: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapNeutralBorderColor;
685
- background-color: @sapNeutralBackground;
699
+ outline: @sapUiElementBorderWidth @sapUiContentFocusStyle @sapNeutralBorderColor;
700
+ background-color: @sapNeutralBackground;
686
701
  }
687
702
 
688
703
  .sapSuiteUiCommonsNetworkElementSelected .sapSuiteUiCommonsNetworkGraphDivHeaderColor {
689
- border-bottom-width: @sapUiButtonSelectedTokenBorderWidth;
690
- background-color: @sapList_SelectionBackgroundColor;
704
+ outline-width: @sapUiButtonSelectedTokenBorderWidth;
705
+ background-color: @sapList_SelectionBackgroundColor;
691
706
  }
692
707
 
693
708
  .sapSuiteUiCommonsNetworkDivCircleWrapper {
@@ -778,12 +793,12 @@
778
793
 
779
794
  .sapSuiteUiCommonsNetworkGraphDivActionButtonsRight {
780
795
  top: 0;
781
- right: -32px;
796
+ right: -34px;
782
797
  }
783
798
 
784
799
  .sapSuiteUiCommonsNetworkGraphDivActionButtonsLeft {
785
800
  top: 0;
786
- left: -32px;
801
+ left: -34px;
787
802
  }
788
803
 
789
804
  .sapSuiteUiCommonsNetworkGraphDivActionButton {
@@ -880,8 +895,197 @@
880
895
  // auto-create border-color class with all different semantic colors
881
896
  .sapSuiteBorderSemanticColor(borderSemanticColor);
882
897
 
898
+ // auto-create outline-color class with all different semantic colors
899
+ .sapSuiteOutlineSemanticColor(outlineSemanticColor);
900
+
883
901
  // auto-create border-color class with all different semantic colors
884
902
  .sapSuiteStrokeSemanticColor(strokeSemanticColor);
885
903
 
886
904
  // auto-create border-color class with all different semantic colors
887
- .sapSuiteFillSemanticColor(fillSemanticColor);
905
+ .sapSuiteFillSemanticColor(fillSemanticColor);
906
+
907
+ /* ============================================= */
908
+ /* Port Styles */
909
+ /* ============================================= */
910
+ .sapSuiteUiCommonsNetworkNodePort {
911
+ position: absolute;
912
+ width: 1.5rem; /* 24px including border */
913
+ height: 1.5rem; /* 24px including border */
914
+ background-color: transparent;
915
+ border: 0.125rem dashed @sapContent_DragAndDropActiveColor; /* 2px dashed */
916
+ border-radius: 50%;
917
+ cursor: default;
918
+ pointer-events: auto;
919
+ z-index: 10;
920
+ opacity: 1;
921
+ transition: all 0.2s ease;
922
+ box-sizing: border-box; /* Include border in width/height */
923
+ }
924
+
925
+ /* Position-specific styles for trigger ports */
926
+ .sapSuiteUiLeftTriggerPort {
927
+ top: 50%;
928
+ left: -2rem;
929
+ transform: translateY(-50%);
930
+ }
931
+
932
+ .sapSuiteUiRightTriggerPort {
933
+ top: 50%;
934
+ right: -2rem;
935
+ transform: translateY(-50%);
936
+ }
937
+
938
+ .sapSuiteUiTopTriggerPort {
939
+ left: 50%;
940
+ top: -1rem;
941
+ transform: translateX(-50%);
942
+ }
943
+
944
+ .sapSuiteUiBottomTriggerPort {
945
+ left: 50%;
946
+ bottom: -1rem;
947
+ transform: translateX(-50%);
948
+ }
949
+
950
+ /* Position-specific styles for inlet ports */
951
+ .sapSuiteUiLeftInletPort {
952
+ top: 50%;
953
+ left: -2rem;
954
+ transform: translateY(-50%);
955
+ }
956
+
957
+ .sapSuiteUiRightInletPort {
958
+ top: 50%;
959
+ right: -2rem;
960
+ transform: translateY(-50%);
961
+ }
962
+
963
+ .sapSuiteUiTopInletPort {
964
+ left: 50%;
965
+ top: -1rem;
966
+ transform: translateX(-50%);
967
+ }
968
+
969
+ .sapSuiteUiBottomInletPort {
970
+ left: 50%;
971
+ bottom: -1rem;
972
+ transform: translateX(-50%);
973
+ }
974
+
975
+ /* Position-specific styles for circle nodes (closer positioning) */
976
+ .sapSuiteUiCommonsNetworkNodeCircle .sapSuiteUiLeftTriggerPort,
977
+ .sapSuiteUiCommonsNetworkNodeCircle .sapSuiteUiLeftInletPort {
978
+ left: 1.25rem;
979
+ }
980
+
981
+ .sapSuiteUiCommonsNetworkNodeCircle .sapSuiteUiRightTriggerPort,
982
+ .sapSuiteUiCommonsNetworkNodeCircle .sapSuiteUiRightInletPort {
983
+ right: 1.25rem;
984
+ }
985
+
986
+ .sapSuiteUiCommonsNetworkNodeCircle .sapSuiteUiTopTriggerPort,
987
+ .sapSuiteUiCommonsNetworkNodeCircle .sapSuiteUiTopInletPort {
988
+ top: 1.25rem;
989
+ }
990
+
991
+ .sapSuiteUiCommonsNetworkNodeCircle .sapSuiteUiBottomTriggerPort,
992
+ .sapSuiteUiCommonsNetworkNodeCircle .sapSuiteUiBottomInletPort {
993
+ bottom: 1.25rem;
994
+ }
995
+
996
+ .sapSuiteUiCommonsNetworkNodeTriggerPort {
997
+ background: @sapButton_Background;
998
+ border: 0.125rem dashed @sapContent_DragAndDropActiveColor; /* 2px dashed */
999
+ cursor: pointer;
1000
+ }
1001
+ /* Active/dragging state for trigger ports */
1002
+ .sapSuiteUiCommonsNetworkNodeTriggerPort.sapSuiteUiCommonsNetworkNodePortActive,
1003
+ .sapSuiteUiCommonsNetworkNodeTriggerPort:active,
1004
+ .sapSuiteUiCommonsNetworkNodeTriggerPort.sapSuiteUiCommonsNetworkNodePortDragging {
1005
+ background-color: @sapButton_Emphasized_Background;
1006
+ border: 0.125rem solid @sapContent_DragAndDropActiveColor; /* 2px solid when active */
1007
+ }
1008
+ .sapSuiteUiCommonsNetworkNodeTriggerPort:hover,
1009
+ .sapSuiteUiLeftTriggerPort:hover,
1010
+ .sapSuiteUiRightTriggerPort:hover,
1011
+ .sapSuiteUiTopTriggerPort:hover,
1012
+ .sapSuiteUiBottomTriggerPort:hover {
1013
+ background-color: @sapContent_DragAndDropActiveColor;
1014
+ border-color: @sapContent_DragAndDropActiveColor;
1015
+ }
1016
+
1017
+ .sapSuiteUiCommonsNetworkNodePortFocused {
1018
+ outline: 2px solid @sapUiContentFocusColor;
1019
+ outline-offset: 2px;
1020
+ box-shadow: 0 0 0 1px @sapUiContentFocusColor;
1021
+ }
1022
+
1023
+ .sapSuiteUiCommonsNetworkNodeTriggerPort.sapSuiteUiCommonsNetworkNodePortFocused {
1024
+ background-color: @sapButton_Emphasized_Background;
1025
+ border: 0.125rem solid @sapContent_DragAndDropActiveColor;
1026
+ }
1027
+
1028
+ .sapSuiteUiCommonsNetworkNodeInletPort {
1029
+ background: @sapButton_Background;
1030
+ border: 0.125rem dashed @sapContent_DragAndDropActiveColor;
1031
+ }
1032
+
1033
+ .sapSuiteUiCommonsNetworkNodeInletPort:hover,
1034
+ .sapSuiteUiLeftInletPort:hover,
1035
+ .sapSuiteUiRightInletPort:hover,
1036
+ .sapSuiteUiTopInletPort:hover,
1037
+ .sapSuiteUiBottomInletPort:hover {
1038
+ opacity: 1;
1039
+ background-color: @sapContent_DragAndDropActiveColor;
1040
+ border: 0.125rem solid @sapContent_DragAndDropActiveColor; /* 2px solid on hover */
1041
+ }
1042
+
1043
+ /* Active drop zone styling for inlet ports */
1044
+ .sapSuiteUiCommonsNetworkNodeInletPort.sapSuiteUiCommonsNetworkNodePortDropZone,
1045
+ .sapSuiteUiCommonsNetworkNodeInletPort.sapSuiteUiCommonsNetworkNodePortActive {
1046
+ opacity: 1;
1047
+ background-color: @sapButton_Emphasized_Background;
1048
+ border: 0.125rem solid @sapContent_DragAndDropActiveColor; /* 2px solid when active drop zone */
1049
+ }
1050
+
1051
+ .sapSuiteUiCommonsNetworkNodeGhostPort {
1052
+ width: 1rem; /* 24px to match other ports */
1053
+ height: 1rem; /* 24px to match other ports */
1054
+ background-color: @sapContent_DragAndDropActiveColor;
1055
+ border: 0.125rem dashed @sapContent_DragAndDropActiveColor; /* 2px dashed to match */
1056
+ border-radius: 50%;
1057
+ pointer-events: none;
1058
+ z-index: 999;
1059
+ opacity: 0.7;
1060
+ box-sizing: border-box; /* Include border in width/height */
1061
+ }
1062
+
1063
+ .sapSuiteUiCommonsNetworkNodeGhostLine {
1064
+ position: absolute;
1065
+ border-top: 0.0625rem dashed @sapUiContentForegroundBorderColor;
1066
+ pointer-events: none;
1067
+ z-index: 998;
1068
+ }
1069
+
1070
+ .sapSuiteUiCommonsNetworkNodeGhostArrow {
1071
+ width: 13px;
1072
+ height: 19px;
1073
+ pointer-events: none;
1074
+ z-index: 999;
1075
+ opacity: 0.8;
1076
+ box-sizing: border-box;
1077
+
1078
+ /* Create arrow shape using borders */
1079
+ &:after {
1080
+ content: '';
1081
+ position: absolute;
1082
+ top: 50%;
1083
+ left: 50%;
1084
+ transform: translate(-50%, -50%);
1085
+ width: 0;
1086
+ height: 0;
1087
+ border-left: 7px solid @sapContent_DragAndDropActiveColor;
1088
+ border-top: 6px solid transparent;
1089
+ border-bottom: 6px solid transparent;
1090
+ }
1091
+ }
@@ -308,6 +308,61 @@
308
308
  }
309
309
  }
310
310
 
311
+ // Mixin to apply outline-color based on semantic color
312
+ .sapSuiteOutlineSemanticColor(@classPrefix) {
313
+ &.@{classPrefix}None {
314
+ outline-color: @sapSuiteSemanticColorNoneBorder !important;
315
+ }
316
+ &.@{classPrefix}Neutral {
317
+ outline-color: @sapSuiteSemanticColorNeutralBorder !important;
318
+ }
319
+ &.@{classPrefix}Good {
320
+ outline-color: @sapSuiteSemanticColorGoodBorder !important;
321
+ }
322
+ &.@{classPrefix}Critical {
323
+ outline-color: @sapSuiteSemanticColorCriticalBorder !important;
324
+ }
325
+ &.@{classPrefix}Error {
326
+ outline-color: @sapSuiteSemanticColorErrorBorder !important;
327
+ }
328
+ &.@{classPrefix}Sequence1 {
329
+ outline-color: @sapSuiteSemanticColorSequence1Border !important;
330
+ }
331
+ &.@{classPrefix}Sequence2 {
332
+ outline-color: @sapSuiteSemanticColorSequence2Border !important;
333
+ }
334
+ &.@{classPrefix}Sequence3 {
335
+ outline-color: @sapSuiteSemanticColorSequence3Border !important;
336
+ }
337
+ &.@{classPrefix}Sequence4 {
338
+ outline-color: @sapSuiteSemanticColorSequence4Border !important;
339
+ }
340
+ &.@{classPrefix}Sequence5 {
341
+ outline-color: @sapSuiteSemanticColorSequence5Border !important;
342
+ }
343
+ &.@{classPrefix}Sequence6 {
344
+ outline-color: @sapSuiteSemanticColorSequence6Border !important;
345
+ }
346
+ &.@{classPrefix}Sequence7 {
347
+ outline-color: @sapSuiteSemanticColorSequence7Border !important;
348
+ }
349
+ &.@{classPrefix}Sequence8 {
350
+ outline-color: @sapSuiteSemanticColorSequence8Border !important;
351
+ }
352
+ &.@{classPrefix}Sequence9 {
353
+ outline-color: @sapSuiteSemanticColorSequence9Border !important;
354
+ }
355
+ &.@{classPrefix}Sequence10 {
356
+ outline-color: @sapSuiteSemanticColorSequence10Border !important;
357
+ }
358
+ &.@{classPrefix}Sequence11 {
359
+ outline-color: @sapSuiteSemanticColorSequence11Border !important;
360
+ }
361
+ &.@{classPrefix}Sequence12 {
362
+ outline-color: @sapSuiteSemanticColorSequence12Border !important;
363
+ }
364
+ }
365
+
311
366
  // Mixin to apply stroke colors based on semantic color
312
367
  .sapSuiteStrokeSemanticColor(@classPrefix) {
313
368
  &.@{classPrefix}None {