@likec4/diagram 1.0.2 → 1.1.1

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 (50) hide show
  1. package/dist/KeepAspectRatioContainer.d.ts +9 -0
  2. package/dist/LikeC4Diagram.css.d.ts +1 -0
  3. package/dist/LikeC4Diagram.d.ts +1 -1
  4. package/dist/LikeC4Diagram.props.d.ts +16 -11
  5. package/dist/index.mjs +639 -762
  6. package/dist/state/DiagramContext.d.ts +54 -18
  7. package/dist/state/diagramStore.d.ts +61 -21
  8. package/dist/state/useDiagramStore.d.ts +54 -18
  9. package/dist/style.css +690 -79
  10. package/dist/ui/DiagramTitlePanel.css.d.ts +4 -0
  11. package/dist/ui/DiagramTitlePanel.d.ts +2 -0
  12. package/dist/ui/OptionsPanel.d.ts +1 -2
  13. package/dist/ui/index.d.ts +0 -1
  14. package/dist/xyflow/SelectEdgesOnNodeFocus.d.ts +1 -0
  15. package/dist/xyflow/{XYFlowWrapper.d.ts → XYFlow.d.ts} +2 -2
  16. package/dist/xyflow/XYFlowEvents.d.ts +133 -13
  17. package/dist/xyflow/edges/RelationshipEdge.d.ts +2 -2
  18. package/dist/xyflow/edges/edges.css.d.ts +1 -0
  19. package/dist/xyflow/hooks/useXYFlow.d.ts +20 -20
  20. package/dist/xyflow/nodes/compound/CompoundNode.css.d.ts +7 -5
  21. package/dist/xyflow/types.d.ts +2 -2
  22. package/package.json +5 -3
  23. package/src/{ui/KeepAspectRatio.tsx → KeepAspectRatioContainer.tsx} +7 -6
  24. package/src/LikeC4Diagram.css.ts +8 -1
  25. package/src/LikeC4Diagram.props.ts +17 -12
  26. package/src/LikeC4Diagram.tsx +9 -6
  27. package/src/StaticLikeC4Diagram.tsx +1 -0
  28. package/src/globals.css.ts +48 -38
  29. package/src/state/diagramStore.ts +125 -68
  30. package/src/ui/DiagramTitlePanel.css.ts +32 -0
  31. package/src/ui/DiagramTitlePanel.tsx +139 -0
  32. package/src/ui/OptionsPanel.tsx +4 -23
  33. package/src/ui/index.ts +0 -1
  34. package/src/ui/options/NodeOptions.tsx +107 -30
  35. package/src/xyflow/FitviewOnDiagramChange.tsx +26 -20
  36. package/src/xyflow/SelectEdgesOnNodeFocus.tsx +57 -0
  37. package/src/xyflow/SyncWithDiagram.tsx +35 -26
  38. package/src/xyflow/{XYFlowWrapper.tsx → XYFlow.tsx} +24 -27
  39. package/src/xyflow/XYFlowEvents.tsx +175 -81
  40. package/src/xyflow/diagram-to-xyflow.ts +4 -4
  41. package/src/xyflow/edges/RelationshipEdge.tsx +43 -47
  42. package/src/xyflow/edges/edges.css.ts +77 -36
  43. package/src/xyflow/nodes/compound/CompoundNode.css.ts +94 -44
  44. package/src/xyflow/nodes/compound/CompoundNode.tsx +29 -31
  45. package/src/xyflow/nodes/element/ElementNode.tsx +2 -2
  46. package/src/xyflow/nodes/element/element.css.ts +1 -0
  47. package/src/xyflow/nodes/shared/NavigateToBtn.tsx +2 -1
  48. package/dist/ui/KeepAspectRatio.css.d.ts +0 -1
  49. package/dist/ui/KeepAspectRatio.d.ts +0 -9
  50. package/src/ui/KeepAspectRatio.css.ts +0 -7
package/dist/style.css CHANGED
@@ -597,6 +597,10 @@ svg.react-flow__connectionline {
597
597
  .react-flow__edge-text {
598
598
  fill: var(--xy-edge-label-color, var(--xy-edge-label-color-default));
599
599
  }
600
+ .likec4-diagram-root {
601
+ -webkit-font-smoothing: var(--mantine-webkit-font-smoothing);
602
+ -moz-osx-font-smoothing: var(--mantine-moz-font-smoothing);
603
+ }
600
604
  .likec4-diagram-root {
601
605
  --likec4-font-family: var(--likec4-default-font-family,'ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"');
602
606
  --likec4-background-color: var(--mantine-color-body);
@@ -625,6 +629,54 @@ svg.react-flow__connectionline {
625
629
  --likec4-relation-labelBg: #172554;
626
630
  --likec4-relation-labelColor: #60a5fa;
627
631
  }
632
+ :where([data-likec4-color='primary'][data-compound-depth='1']) {
633
+ --likec4-element-fill: #1a5bc5;
634
+ --likec4-element-stroke: #1e49a9;
635
+ }
636
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='primary'][data-compound-depth='1']) {
637
+ --likec4-element-fill: #145ed7;
638
+ --likec4-element-stroke: #194bb8;
639
+ }
640
+ :where([data-likec4-color='primary'][data-compound-depth='2']) {
641
+ --likec4-element-fill: #1e56b1;
642
+ --likec4-element-stroke: #204698;
643
+ }
644
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='primary'][data-compound-depth='2']) {
645
+ --likec4-element-fill: #195cc8;
646
+ --likec4-element-stroke: #1d4aac;
647
+ }
648
+ :where([data-likec4-color='primary'][data-compound-depth='3']) {
649
+ --likec4-element-fill: #21519f;
650
+ --likec4-element-stroke: #224289;
651
+ }
652
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='primary'][data-compound-depth='3']) {
653
+ --likec4-element-fill: #1e59ba;
654
+ --likec4-element-stroke: #2149a0;
655
+ }
656
+ :where([data-likec4-color='primary'][data-compound-depth='4']) {
657
+ --likec4-element-fill: #234c8e;
658
+ --likec4-element-stroke: #243f7a;
659
+ }
660
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='primary'][data-compound-depth='4']) {
661
+ --likec4-element-fill: #2357ad;
662
+ --likec4-element-stroke: #244795;
663
+ }
664
+ :where([data-likec4-color='primary'][data-compound-depth='5']) {
665
+ --likec4-element-fill: #25467d;
666
+ --likec4-element-stroke: #243b6c;
667
+ }
668
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='primary'][data-compound-depth='5']) {
669
+ --likec4-element-fill: #2755a0;
670
+ --likec4-element-stroke: #27468a;
671
+ }
672
+ :where([data-likec4-color='primary'][data-compound-depth='6']) {
673
+ --likec4-element-fill: #25416d;
674
+ --likec4-element-stroke: #24365f;
675
+ }
676
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='primary'][data-compound-depth='6']) {
677
+ --likec4-element-fill: #2a5293;
678
+ --likec4-element-stroke: #2a447f;
679
+ }
628
680
  :where([data-likec4-color='blue']) {
629
681
  --likec4-element-fill: #3b82f6;
630
682
  --likec4-element-stroke: #2563eb;
@@ -635,6 +687,54 @@ svg.react-flow__connectionline {
635
687
  --likec4-relation-labelBg: #172554;
636
688
  --likec4-relation-labelColor: #60a5fa;
637
689
  }
690
+ :where([data-likec4-color='blue'][data-compound-depth='1']) {
691
+ --likec4-element-fill: #1a5bc5;
692
+ --likec4-element-stroke: #1e49a9;
693
+ }
694
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='blue'][data-compound-depth='1']) {
695
+ --likec4-element-fill: #145ed7;
696
+ --likec4-element-stroke: #194bb8;
697
+ }
698
+ :where([data-likec4-color='blue'][data-compound-depth='2']) {
699
+ --likec4-element-fill: #1e56b1;
700
+ --likec4-element-stroke: #204698;
701
+ }
702
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='blue'][data-compound-depth='2']) {
703
+ --likec4-element-fill: #195cc8;
704
+ --likec4-element-stroke: #1d4aac;
705
+ }
706
+ :where([data-likec4-color='blue'][data-compound-depth='3']) {
707
+ --likec4-element-fill: #21519f;
708
+ --likec4-element-stroke: #224289;
709
+ }
710
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='blue'][data-compound-depth='3']) {
711
+ --likec4-element-fill: #1e59ba;
712
+ --likec4-element-stroke: #2149a0;
713
+ }
714
+ :where([data-likec4-color='blue'][data-compound-depth='4']) {
715
+ --likec4-element-fill: #234c8e;
716
+ --likec4-element-stroke: #243f7a;
717
+ }
718
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='blue'][data-compound-depth='4']) {
719
+ --likec4-element-fill: #2357ad;
720
+ --likec4-element-stroke: #244795;
721
+ }
722
+ :where([data-likec4-color='blue'][data-compound-depth='5']) {
723
+ --likec4-element-fill: #25467d;
724
+ --likec4-element-stroke: #243b6c;
725
+ }
726
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='blue'][data-compound-depth='5']) {
727
+ --likec4-element-fill: #2755a0;
728
+ --likec4-element-stroke: #27468a;
729
+ }
730
+ :where([data-likec4-color='blue'][data-compound-depth='6']) {
731
+ --likec4-element-fill: #25416d;
732
+ --likec4-element-stroke: #24365f;
733
+ }
734
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='blue'][data-compound-depth='6']) {
735
+ --likec4-element-fill: #2a5293;
736
+ --likec4-element-stroke: #2a447f;
737
+ }
638
738
  :where([data-likec4-color='secondary']) {
639
739
  --likec4-element-fill: #0284c7;
640
740
  --likec4-element-stroke: #0369a1;
@@ -645,6 +745,54 @@ svg.react-flow__connectionline {
645
745
  --likec4-relation-labelBg: #082f49;
646
746
  --likec4-relation-labelColor: #38bdf8;
647
747
  }
748
+ :where([data-likec4-color='secondary'][data-compound-depth='1']) {
749
+ --likec4-element-fill: #0d5d86;
750
+ --likec4-element-stroke: #0b4a6c;
751
+ }
752
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='secondary'][data-compound-depth='1']) {
753
+ --likec4-element-fill: #086392;
754
+ --likec4-element-stroke: #084f76;
755
+ }
756
+ :where([data-likec4-color='secondary'][data-compound-depth='2']) {
757
+ --likec4-element-fill: #105579;
758
+ --likec4-element-stroke: #0e4462;
759
+ }
760
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='secondary'][data-compound-depth='2']) {
761
+ --likec4-element-fill: #0c5e88;
762
+ --likec4-element-stroke: #0b4b6e;
763
+ }
764
+ :where([data-likec4-color='secondary'][data-compound-depth='3']) {
765
+ --likec4-element-fill: #134e6c;
766
+ --likec4-element-stroke: #103e57;
767
+ }
768
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='secondary'][data-compound-depth='3']) {
769
+ --likec4-element-fill: #10597f;
770
+ --likec4-element-stroke: #0e4767;
771
+ }
772
+ :where([data-likec4-color='secondary'][data-compound-depth='4']) {
773
+ --likec4-element-fill: #154660;
774
+ --likec4-element-stroke: #11384e;
775
+ }
776
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='secondary'][data-compound-depth='4']) {
777
+ --likec4-element-fill: #135475;
778
+ --likec4-element-stroke: #11435f;
779
+ }
780
+ :where([data-likec4-color='secondary'][data-compound-depth='5']) {
781
+ --likec4-element-fill: #163f55;
782
+ --likec4-element-stroke: #123345;
783
+ }
784
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='secondary'][data-compound-depth='5']) {
785
+ --likec4-element-fill: #164f6c;
786
+ --likec4-element-stroke: #133f58;
787
+ }
788
+ :where([data-likec4-color='secondary'][data-compound-depth='6']) {
789
+ --likec4-element-fill: #17384a;
790
+ --likec4-element-stroke: #132d3c;
791
+ }
792
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='secondary'][data-compound-depth='6']) {
793
+ --likec4-element-fill: #194a64;
794
+ --likec4-element-stroke: #153c51;
795
+ }
648
796
  :where([data-likec4-color='sky']) {
649
797
  --likec4-element-fill: #0284c7;
650
798
  --likec4-element-stroke: #0369a1;
@@ -655,6 +803,54 @@ svg.react-flow__connectionline {
655
803
  --likec4-relation-labelBg: #082f49;
656
804
  --likec4-relation-labelColor: #38bdf8;
657
805
  }
806
+ :where([data-likec4-color='sky'][data-compound-depth='1']) {
807
+ --likec4-element-fill: #0d5d86;
808
+ --likec4-element-stroke: #0b4a6c;
809
+ }
810
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='sky'][data-compound-depth='1']) {
811
+ --likec4-element-fill: #086392;
812
+ --likec4-element-stroke: #084f76;
813
+ }
814
+ :where([data-likec4-color='sky'][data-compound-depth='2']) {
815
+ --likec4-element-fill: #105579;
816
+ --likec4-element-stroke: #0e4462;
817
+ }
818
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='sky'][data-compound-depth='2']) {
819
+ --likec4-element-fill: #0c5e88;
820
+ --likec4-element-stroke: #0b4b6e;
821
+ }
822
+ :where([data-likec4-color='sky'][data-compound-depth='3']) {
823
+ --likec4-element-fill: #134e6c;
824
+ --likec4-element-stroke: #103e57;
825
+ }
826
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='sky'][data-compound-depth='3']) {
827
+ --likec4-element-fill: #10597f;
828
+ --likec4-element-stroke: #0e4767;
829
+ }
830
+ :where([data-likec4-color='sky'][data-compound-depth='4']) {
831
+ --likec4-element-fill: #154660;
832
+ --likec4-element-stroke: #11384e;
833
+ }
834
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='sky'][data-compound-depth='4']) {
835
+ --likec4-element-fill: #135475;
836
+ --likec4-element-stroke: #11435f;
837
+ }
838
+ :where([data-likec4-color='sky'][data-compound-depth='5']) {
839
+ --likec4-element-fill: #163f55;
840
+ --likec4-element-stroke: #123345;
841
+ }
842
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='sky'][data-compound-depth='5']) {
843
+ --likec4-element-fill: #164f6c;
844
+ --likec4-element-stroke: #133f58;
845
+ }
846
+ :where([data-likec4-color='sky'][data-compound-depth='6']) {
847
+ --likec4-element-fill: #17384a;
848
+ --likec4-element-stroke: #132d3c;
849
+ }
850
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='sky'][data-compound-depth='6']) {
851
+ --likec4-element-fill: #194a64;
852
+ --likec4-element-stroke: #153c51;
853
+ }
658
854
  :where([data-likec4-color='muted']) {
659
855
  --likec4-element-fill: #64748b;
660
856
  --likec4-element-stroke: #475569;
@@ -665,6 +861,54 @@ svg.react-flow__connectionline {
665
861
  --likec4-relation-labelBg: #0f172a;
666
862
  --likec4-relation-labelColor: #cbd5e1;
667
863
  }
864
+ :where([data-likec4-color='muted'][data-compound-depth='1']) {
865
+ --likec4-element-fill: #4b5563;
866
+ --likec4-element-stroke: #363e4b;
867
+ }
868
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='muted'][data-compound-depth='1']) {
869
+ --likec4-element-fill: #4e5a6a;
870
+ --likec4-element-stroke: #384250;
871
+ }
872
+ :where([data-likec4-color='muted'][data-compound-depth='2']) {
873
+ --likec4-element-fill: #474f5c;
874
+ --likec4-element-stroke: #333a45;
875
+ }
876
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='muted'][data-compound-depth='2']) {
877
+ --likec4-element-fill: #4c5665;
878
+ --likec4-element-stroke: #363f4c;
879
+ }
880
+ :where([data-likec4-color='muted'][data-compound-depth='3']) {
881
+ --likec4-element-fill: #424a54;
882
+ --likec4-element-stroke: #30363f;
883
+ }
884
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='muted'][data-compound-depth='3']) {
885
+ --likec4-element-fill: #4a5360;
886
+ --likec4-element-stroke: #353d48;
887
+ }
888
+ :where([data-likec4-color='muted'][data-compound-depth='4']) {
889
+ --likec4-element-fill: #3e444d;
890
+ --likec4-element-stroke: #2d323a;
891
+ }
892
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='muted'][data-compound-depth='4']) {
893
+ --likec4-element-fill: #48505b;
894
+ --likec4-element-stroke: #333a44;
895
+ }
896
+ :where([data-likec4-color='muted'][data-compound-depth='5']) {
897
+ --likec4-element-fill: #393e46;
898
+ --likec4-element-stroke: #292e34;
899
+ }
900
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='muted'][data-compound-depth='5']) {
901
+ --likec4-element-fill: #454c56;
902
+ --likec4-element-stroke: #323841;
903
+ }
904
+ :where([data-likec4-color='muted'][data-compound-depth='6']) {
905
+ --likec4-element-fill: #34383e;
906
+ --likec4-element-stroke: #26292f;
907
+ }
908
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='muted'][data-compound-depth='6']) {
909
+ --likec4-element-fill: #434951;
910
+ --likec4-element-stroke: #30353d;
911
+ }
668
912
  :where([data-likec4-color='slate']) {
669
913
  --likec4-element-fill: #64748b;
670
914
  --likec4-element-stroke: #475569;
@@ -675,6 +919,54 @@ svg.react-flow__connectionline {
675
919
  --likec4-relation-labelBg: #0f172a;
676
920
  --likec4-relation-labelColor: #cbd5e1;
677
921
  }
922
+ :where([data-likec4-color='slate'][data-compound-depth='1']) {
923
+ --likec4-element-fill: #4b5563;
924
+ --likec4-element-stroke: #363e4b;
925
+ }
926
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='slate'][data-compound-depth='1']) {
927
+ --likec4-element-fill: #4e5a6a;
928
+ --likec4-element-stroke: #384250;
929
+ }
930
+ :where([data-likec4-color='slate'][data-compound-depth='2']) {
931
+ --likec4-element-fill: #474f5c;
932
+ --likec4-element-stroke: #333a45;
933
+ }
934
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='slate'][data-compound-depth='2']) {
935
+ --likec4-element-fill: #4c5665;
936
+ --likec4-element-stroke: #363f4c;
937
+ }
938
+ :where([data-likec4-color='slate'][data-compound-depth='3']) {
939
+ --likec4-element-fill: #424a54;
940
+ --likec4-element-stroke: #30363f;
941
+ }
942
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='slate'][data-compound-depth='3']) {
943
+ --likec4-element-fill: #4a5360;
944
+ --likec4-element-stroke: #353d48;
945
+ }
946
+ :where([data-likec4-color='slate'][data-compound-depth='4']) {
947
+ --likec4-element-fill: #3e444d;
948
+ --likec4-element-stroke: #2d323a;
949
+ }
950
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='slate'][data-compound-depth='4']) {
951
+ --likec4-element-fill: #48505b;
952
+ --likec4-element-stroke: #333a44;
953
+ }
954
+ :where([data-likec4-color='slate'][data-compound-depth='5']) {
955
+ --likec4-element-fill: #393e46;
956
+ --likec4-element-stroke: #292e34;
957
+ }
958
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='slate'][data-compound-depth='5']) {
959
+ --likec4-element-fill: #454c56;
960
+ --likec4-element-stroke: #323841;
961
+ }
962
+ :where([data-likec4-color='slate'][data-compound-depth='6']) {
963
+ --likec4-element-fill: #34383e;
964
+ --likec4-element-stroke: #26292f;
965
+ }
966
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='slate'][data-compound-depth='6']) {
967
+ --likec4-element-fill: #434951;
968
+ --likec4-element-stroke: #30353d;
969
+ }
678
970
  :where([data-likec4-color='gray']) {
679
971
  --likec4-element-fill: #737373;
680
972
  --likec4-element-stroke: #525252;
@@ -685,6 +977,54 @@ svg.react-flow__connectionline {
685
977
  --likec4-relation-labelBg: #18191b;
686
978
  --likec4-relation-labelColor: #C6C6C6;
687
979
  }
980
+ :where([data-likec4-color='gray'][data-compound-depth='1']) {
981
+ --likec4-element-fill: #545454;
982
+ --likec4-element-stroke: #3c3c3c;
983
+ }
984
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='gray'][data-compound-depth='1']) {
985
+ --likec4-element-fill: #595959;
986
+ --likec4-element-stroke: #3f3f3f;
987
+ }
988
+ :where([data-likec4-color='gray'][data-compound-depth='2']) {
989
+ --likec4-element-fill: #4e4e4e;
990
+ --likec4-element-stroke: #383838;
991
+ }
992
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='gray'][data-compound-depth='2']) {
993
+ --likec4-element-fill: #555555;
994
+ --likec4-element-stroke: #3d3d3d;
995
+ }
996
+ :where([data-likec4-color='gray'][data-compound-depth='3']) {
997
+ --likec4-element-fill: #484848;
998
+ --likec4-element-stroke: #343434;
999
+ }
1000
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='gray'][data-compound-depth='3']) {
1001
+ --likec4-element-fill: #525252;
1002
+ --likec4-element-stroke: #3a3a3a;
1003
+ }
1004
+ :where([data-likec4-color='gray'][data-compound-depth='4']) {
1005
+ --likec4-element-fill: #434343;
1006
+ --likec4-element-stroke: #303030;
1007
+ }
1008
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='gray'][data-compound-depth='4']) {
1009
+ --likec4-element-fill: #4e4e4e;
1010
+ --likec4-element-stroke: #383838;
1011
+ }
1012
+ :where([data-likec4-color='gray'][data-compound-depth='5']) {
1013
+ --likec4-element-fill: #3d3d3d;
1014
+ --likec4-element-stroke: #2b2b2b;
1015
+ }
1016
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='gray'][data-compound-depth='5']) {
1017
+ --likec4-element-fill: #4b4b4b;
1018
+ --likec4-element-stroke: #353535;
1019
+ }
1020
+ :where([data-likec4-color='gray'][data-compound-depth='6']) {
1021
+ --likec4-element-fill: #373737;
1022
+ --likec4-element-stroke: #272727;
1023
+ }
1024
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='gray'][data-compound-depth='6']) {
1025
+ --likec4-element-fill: #474747;
1026
+ --likec4-element-stroke: #333333;
1027
+ }
688
1028
  :where([data-likec4-color='red']) {
689
1029
  --likec4-element-fill: #AC4D39;
690
1030
  --likec4-element-stroke: #853A2D;
@@ -695,6 +1035,54 @@ svg.react-flow__connectionline {
695
1035
  --likec4-relation-labelBg: #b91c1c;
696
1036
  --likec4-relation-labelColor: #FF977D;
697
1037
  }
1038
+ :where([data-likec4-color='red'][data-compound-depth='1']) {
1039
+ --likec4-element-fill: #773d30;
1040
+ --likec4-element-stroke: #5c2e26;
1041
+ }
1042
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='red'][data-compound-depth='1']) {
1043
+ --likec4-element-fill: #803e30;
1044
+ --likec4-element-stroke: #632f26;
1045
+ }
1046
+ :where([data-likec4-color='red'][data-compound-depth='2']) {
1047
+ --likec4-element-fill: #6c3a2f;
1048
+ --likec4-element-stroke: #542c25;
1049
+ }
1050
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='red'][data-compound-depth='2']) {
1051
+ --likec4-element-fill: #793d31;
1052
+ --likec4-element-stroke: #5e2e26;
1053
+ }
1054
+ :where([data-likec4-color='red'][data-compound-depth='3']) {
1055
+ --likec4-element-fill: #62372e;
1056
+ --likec4-element-stroke: #4c2a24;
1057
+ }
1058
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='red'][data-compound-depth='3']) {
1059
+ --likec4-element-fill: #723c31;
1060
+ --likec4-element-stroke: #582e27;
1061
+ }
1062
+ :where([data-likec4-color='red'][data-compound-depth='4']) {
1063
+ --likec4-element-fill: #58342c;
1064
+ --likec4-element-stroke: #442823;
1065
+ }
1066
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='red'][data-compound-depth='4']) {
1067
+ --likec4-element-fill: #6a3b31;
1068
+ --likec4-element-stroke: #522d27;
1069
+ }
1070
+ :where([data-likec4-color='red'][data-compound-depth='5']) {
1071
+ --likec4-element-fill: #4f312a;
1072
+ --likec4-element-stroke: #3d2521;
1073
+ }
1074
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='red'][data-compound-depth='5']) {
1075
+ --likec4-element-fill: #633a31;
1076
+ --likec4-element-stroke: #4d2c27;
1077
+ }
1078
+ :where([data-likec4-color='red'][data-compound-depth='6']) {
1079
+ --likec4-element-fill: #462d28;
1080
+ --likec4-element-stroke: #36231f;
1081
+ }
1082
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='red'][data-compound-depth='6']) {
1083
+ --likec4-element-fill: #5d3931;
1084
+ --likec4-element-stroke: #482b27;
1085
+ }
698
1086
  :where([data-likec4-color='green']) {
699
1087
  --likec4-element-fill: #428a4f;
700
1088
  --likec4-element-stroke: #2d5d39;
@@ -705,6 +1093,54 @@ svg.react-flow__connectionline {
705
1093
  --likec4-relation-labelBg: #052e16;
706
1094
  --likec4-relation-labelColor: #22c55e;
707
1095
  }
1096
+ :where([data-likec4-color='green'][data-compound-depth='1']) {
1097
+ --likec4-element-fill: #34613c;
1098
+ --likec4-element-stroke: #24412b;
1099
+ }
1100
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='green'][data-compound-depth='1']) {
1101
+ --likec4-element-fill: #35683e;
1102
+ --likec4-element-stroke: #24462d;
1103
+ }
1104
+ :where([data-likec4-color='green'][data-compound-depth='2']) {
1105
+ --likec4-element-fill: #325839;
1106
+ --likec4-element-stroke: #223c29;
1107
+ }
1108
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='green'][data-compound-depth='2']) {
1109
+ --likec4-element-fill: #35623d;
1110
+ --likec4-element-stroke: #24422c;
1111
+ }
1112
+ :where([data-likec4-color='green'][data-compound-depth='3']) {
1113
+ --likec4-element-fill: #305136;
1114
+ --likec4-element-stroke: #213626;
1115
+ }
1116
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='green'][data-compound-depth='3']) {
1117
+ --likec4-element-fill: #345d3c;
1118
+ --likec4-element-stroke: #243e2a;
1119
+ }
1120
+ :where([data-likec4-color='green'][data-compound-depth='4']) {
1121
+ --likec4-element-fill: #2d4932;
1122
+ --likec4-element-stroke: #1f3123;
1123
+ }
1124
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='green'][data-compound-depth='4']) {
1125
+ --likec4-element-fill: #33573a;
1126
+ --likec4-element-stroke: #233b29;
1127
+ }
1128
+ :where([data-likec4-color='green'][data-compound-depth='5']) {
1129
+ --likec4-element-fill: #2b422f;
1130
+ --likec4-element-stroke: #1d2c21;
1131
+ }
1132
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='green'][data-compound-depth='5']) {
1133
+ --likec4-element-fill: #335238;
1134
+ --likec4-element-stroke: #223728;
1135
+ }
1136
+ :where([data-likec4-color='green'][data-compound-depth='6']) {
1137
+ --likec4-element-fill: #283a2b;
1138
+ --likec4-element-stroke: #1b271e;
1139
+ }
1140
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='green'][data-compound-depth='6']) {
1141
+ --likec4-element-fill: #324d37;
1142
+ --likec4-element-stroke: #223426;
1143
+ }
708
1144
  :where([data-likec4-color='amber']) {
709
1145
  --likec4-element-fill: #A35829;
710
1146
  --likec4-element-stroke: #7E451D;
@@ -715,6 +1151,54 @@ svg.react-flow__connectionline {
715
1151
  --likec4-relation-labelBg: #78350f;
716
1152
  --likec4-relation-labelColor: #FFE0C2;
717
1153
  }
1154
+ :where([data-likec4-color='amber'][data-compound-depth='1']) {
1155
+ --likec4-element-fill: #704225;
1156
+ --likec4-element-stroke: #56331b;
1157
+ }
1158
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='amber'][data-compound-depth='1']) {
1159
+ --likec4-element-fill: #794524;
1160
+ --likec4-element-stroke: #5e361a;
1161
+ }
1162
+ :where([data-likec4-color='amber'][data-compound-depth='2']) {
1163
+ --likec4-element-fill: #663e25;
1164
+ --likec4-element-stroke: #4e301b;
1165
+ }
1166
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='amber'][data-compound-depth='2']) {
1167
+ --likec4-element-fill: #724325;
1168
+ --likec4-element-stroke: #58341b;
1169
+ }
1170
+ :where([data-likec4-color='amber'][data-compound-depth='3']) {
1171
+ --likec4-element-fill: #5c3a25;
1172
+ --likec4-element-stroke: #472d1b;
1173
+ }
1174
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='amber'][data-compound-depth='3']) {
1175
+ --likec4-element-fill: #6b4126;
1176
+ --likec4-element-stroke: #52321c;
1177
+ }
1178
+ :where([data-likec4-color='amber'][data-compound-depth='4']) {
1179
+ --likec4-element-fill: #533624;
1180
+ --likec4-element-stroke: #402a1a;
1181
+ }
1182
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='amber'][data-compound-depth='4']) {
1183
+ --likec4-element-fill: #643e27;
1184
+ --likec4-element-stroke: #4d301d;
1185
+ }
1186
+ :where([data-likec4-color='amber'][data-compound-depth='5']) {
1187
+ --likec4-element-fill: #493223;
1188
+ --likec4-element-stroke: #38261a;
1189
+ }
1190
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='amber'][data-compound-depth='5']) {
1191
+ --likec4-element-fill: #5d3c28;
1192
+ --likec4-element-stroke: #472f1d;
1193
+ }
1194
+ :where([data-likec4-color='amber'][data-compound-depth='6']) {
1195
+ --likec4-element-fill: #412d21;
1196
+ --likec4-element-stroke: #322319;
1197
+ }
1198
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='amber'][data-compound-depth='6']) {
1199
+ --likec4-element-fill: #563a28;
1200
+ --likec4-element-stroke: #422d1e;
1201
+ }
718
1202
  :where([data-likec4-color='indigo']) {
719
1203
  --likec4-element-fill: #6366f1;
720
1204
  --likec4-element-stroke: #4f46e5;
@@ -724,46 +1208,133 @@ svg.react-flow__connectionline {
724
1208
  --likec4-relation-lineColor: #6366f1;
725
1209
  --likec4-relation-labelBg: #1e1b4b;
726
1210
  --likec4-relation-labelColor: #818cf8;
727
- }.react-flow._2h8g8h0 {
1211
+ }
1212
+ :where([data-likec4-color='indigo'][data-compound-depth='1']) {
1213
+ --likec4-element-fill: #2529d3;
1214
+ --likec4-element-stroke: #3028b2;
1215
+ }
1216
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='indigo'][data-compound-depth='1']) {
1217
+ --likec4-element-fill: #2529e1;
1218
+ --likec4-element-stroke: #2d24c2;
1219
+ }
1220
+ :where([data-likec4-color='indigo'][data-compound-depth='2']) {
1221
+ --likec4-element-fill: #282bbf;
1222
+ --likec4-element-stroke: #312aa1;
1223
+ }
1224
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='indigo'][data-compound-depth='2']) {
1225
+ --likec4-element-fill: #2428d7;
1226
+ --likec4-element-stroke: #3028b5;
1227
+ }
1228
+ :where([data-likec4-color='indigo'][data-compound-depth='3']) {
1229
+ --likec4-element-fill: #2b2dac;
1230
+ --likec4-element-stroke: #312b91;
1231
+ }
1232
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='indigo'][data-compound-depth='3']) {
1233
+ --likec4-element-fill: #292cc8;
1234
+ --likec4-element-stroke: #322ba9;
1235
+ }
1236
+ :where([data-likec4-color='indigo'][data-compound-depth='4']) {
1237
+ --likec4-element-fill: #2c2f99;
1238
+ --likec4-element-stroke: #302c82;
1239
+ }
1240
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='indigo'][data-compound-depth='4']) {
1241
+ --likec4-element-fill: #2d30ba;
1242
+ --likec4-element-stroke: #342e9e;
1243
+ }
1244
+ :where([data-likec4-color='indigo'][data-compound-depth='5']) {
1245
+ --likec4-element-fill: #2d2f87;
1246
+ --likec4-element-stroke: #2f2b73;
1247
+ }
1248
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='indigo'][data-compound-depth='5']) {
1249
+ --likec4-element-fill: #3133ac;
1250
+ --likec4-element-stroke: #363092;
1251
+ }
1252
+ :where([data-likec4-color='indigo'][data-compound-depth='6']) {
1253
+ --likec4-element-fill: #2d2e76;
1254
+ --likec4-element-stroke: #2e2b65;
1255
+ }
1256
+ :where([data-mantine-color-scheme='light']) :where([data-likec4-color='indigo'][data-compound-depth='6']) {
1257
+ --likec4-element-fill: #34369f;
1258
+ --likec4-element-stroke: #373287;
1259
+ }._2h8g8h0 {
1260
+ width: 100%;
1261
+ height: 100%;
1262
+ padding: 0;
1263
+ }
1264
+ .react-flow._2h8g8h1 {
728
1265
  --xy-background-color: var(--likec4-background-color);
729
1266
  --xy-background-pattern-color: var(--likec4-background-pattern-color);
730
1267
  }
731
- .react-flow._2h8g8h0 .react-flow__viewport {
732
- will-change: transform;
1268
+ .react-flow._2h8g8h1 .react-flow__viewport {
1269
+ backface-visibility: hidden;
733
1270
  }
734
- .react-flow._2h8g8h0._2h8g8h2 {
1271
+ .react-flow._2h8g8h1._2h8g8h3 {
735
1272
  --likec4-background-color: transparent !important;
736
1273
  --xy-background-color: transparent !important;
737
1274
  background-color: transparent !important;
738
1275
  }
739
- :where(._2h8g8h3, ._2h8g8h2) .react-flow__attribution {
1276
+ :where(._2h8g8h4, ._2h8g8h3) .react-flow__attribution {
740
1277
  display: none;
741
- }._14qhjro0 {
742
- width: 100%;
743
- height: 100%;
744
- padding: 0;
1278
+ }.hbkbtj0 {
1279
+ bottom: 0;
1280
+ left: 0;
1281
+ padding: 8px;
1282
+ margin: 0;
1283
+ }
1284
+ .hbkbtj1 {
1285
+ cursor: default;
1286
+ min-width: 200px;
1287
+ max-width: calc(100vw - 16px);
1288
+ background-color: color-mix(in srgb, var(--mantine-color-body), transparent 20%);
1289
+ backdrop-filter: blur(8px);
1290
+ }
1291
+ .hbkbtj3 {
1292
+ white-space-collapse: preserve-breaks;
1293
+ color: var(--mantine-color-gray-7);
1294
+ }
1295
+ :where([data-mantine-color-scheme="dark"]) .hbkbtj3 {
1296
+ color: var(--mantine-color-gray-5);
1297
+ }
1298
+ @media (min-width: 62em) {
1299
+ .hbkbtj1 {
1300
+ max-width: 45vw;
1301
+ }
745
1302
  }._1lmzt1h0 {
746
1303
  top: var(--likec4-options-panel-top, 1rem);
747
1304
  right: var(--likec4-options-panel-right, 1rem);
748
1305
  margin: 0;
749
1306
  box-shadow: var(--mantine-shadow-xl);
750
- }.bexn7q0 {
1307
+ }@keyframes bexn7q5 {
1308
+ from {
1309
+ stroke-dashoffset: 36;
1310
+ }
1311
+ to {
1312
+ stroke-dashoffset: 1;
1313
+ }
1314
+ }
1315
+ .bexn7q1 {
1316
+ --bexn7q0: black;
751
1317
  --xy-edge-stroke: var(--likec4-relation-lineColor);
752
- --xy-edge-stroke-selected: color-mix(in srgb, var(--likec4-relation-lineColor), white 30%);
1318
+ --xy-edge-stroke-selected: color-mix(in srgb, var(--likec4-relation-lineColor), var(--bexn7q0) 35%);
753
1319
  --xy-edge-label-color: color-mix(in srgb, var(--likec4-relation-labelColor), rgba(255 255 255 / 0.85) 20%);
754
1320
  --xy-edge-label-background-color: color-mix(in srgb, var(--likec4-relation-labelBg), transparent 35%);
755
- --xy-edge-stroke-width: 2.5px;
1321
+ --xy-edge-stroke-width: 2.2px;
756
1322
  }
757
- [data-mantine-color-scheme="dark"] .bexn7q0 {
1323
+ :where([data-mantine-color-scheme="dark"]) .bexn7q1 {
1324
+ --bexn7q0: white;
758
1325
  --xy-edge-label-color: var(--likec4-relation-labelColor);
759
1326
  --xy-edge-label-background-color: color-mix(in srgb, var(--likec4-relation-labelBg), transparent 55%);
760
1327
  }
761
- .bexn7q0[data-edge-hovered='true'] {
762
- --xy-edge-stroke: color-mix(in srgb, var(--likec4-relation-lineColor), white 30%);
1328
+ :where(.react-flow__edge.selected) .bexn7q1 {
1329
+ --xy-edge-stroke: var(--xy-edge-stroke-selected);
1330
+ --xy-edge-stroke-width: 3px;
1331
+ }
1332
+ .bexn7q1[data-edge-hovered='true'] {
1333
+ --xy-edge-stroke: var(--xy-edge-stroke-selected);
763
1334
  --xy-edge-stroke-width: 3px;
764
1335
  }
765
- .react-flow__edge.selected .bexn7q0 {
766
- --xy-edge-stroke-width: 2.5;
1336
+ :where(.react-flow__edge.selected) .bexn7q1[data-edge-hovered='true'] {
1337
+ --xy-edge-stroke-width: 3.6px;
767
1338
  }
768
1339
  .react-flow__edges > svg {
769
1340
  mix-blend-mode: screen;
@@ -771,24 +1342,47 @@ svg.react-flow__connectionline {
771
1342
  :where([data-mantine-color-scheme="dark"]) .react-flow__edges > svg {
772
1343
  mix-blend-mode: lighten;
773
1344
  }
774
- .bexn7q1 {
775
- stroke-width: calc(var(--xy-edge-stroke-width) + 8);
776
- stroke-opacity: 0.1;
777
- }
778
1345
  .bexn7q2 {
1346
+ stroke-width: var(--xy-edge-stroke-width);
1347
+ stroke-opacity: 0.05;
1348
+ transition-property: stroke-width, stroke-opacity;
1349
+ transition-duration: 155ms;
1350
+ transition-timing-function: ease-out;
1351
+ }
1352
+ :where(.react-flow__edge.selected, [data-edge-hovered='true']) .bexn7q2 {
1353
+ stroke-width: calc(var(--xy-edge-stroke-width) + 8px);
1354
+ stroke-opacity: 0.11;
1355
+ }
1356
+ .bexn7q3 {
1357
+ fill: var(--xy-edge-stroke);
1358
+ stroke: var(--xy-edge-stroke);
1359
+ }
1360
+ .bexn7q4 {
779
1361
  fill: var(--xy-edge-stroke);
780
1362
  stroke: var(--xy-edge-stroke);
781
1363
  }
782
- .react-flow__edge.selected .bexn7q2 {
1364
+ :where(.react-flow__edge.selected) .bexn7q3 {
783
1365
  --xy-edge-stroke: var(--xy-edge-stroke-selected);
784
1366
  }
785
- .bexn7q0[data-edge-hovered='true'] .bexn7q3 {
1367
+ .bexn7q6 {
1368
+ animation-duration: 800ms;
1369
+ animation-iteration-count: infinite;
1370
+ animation-timing-function: linear;
1371
+ }
1372
+ :where([data-edge-hovered='true']) .bexn7q6 {
1373
+ animation-name: bexn7q5;
1374
+ animation-delay: 500ms;
786
1375
  transition: all 130ms ease-out;
787
1376
  }
788
- .bexn7q7 {
789
- --bexn7q6: translate(var(--bexn7q4), var(--bexn7q5));
790
- --bexn7q4: 50%;
791
- --bexn7q5: 50%;
1377
+ :where(.react-flow__edge.selected) .bexn7q6 {
1378
+ animation-name: bexn7q5;
1379
+ animation-delay: 0ms;
1380
+ transition: all 130ms ease-out;
1381
+ }
1382
+ .bexn7qa {
1383
+ --bexn7q9: translate(var(--bexn7q7), var(--bexn7q8));
1384
+ --bexn7q7: 50%;
1385
+ --bexn7q8: 50%;
792
1386
  top: 0;
793
1387
  left: 0;
794
1388
  font-family: var(--likec4-font-family);
@@ -802,19 +1396,19 @@ svg.react-flow__connectionline {
802
1396
  width: max-content;
803
1397
  background-color: var(--xy-edge-label-background-color);
804
1398
  border-radius: 3px;
805
- transform: var(--bexn7q6);
806
- will-change: transform;
1399
+ transform: var(--bexn7q9);
1400
+ backface-visibility: hidden;
807
1401
  }
808
- .bexn7q7[data-edge-hovered="true"] {
1402
+ .bexn7qa[data-edge-hovered="true"] {
809
1403
  transition: all 140ms ease-out;
810
- transform: var(--bexn7q6) scale(1.1);
1404
+ transform: var(--bexn7q9) scale(1.1);
811
1405
  }
812
- .bexn7q8 {
1406
+ .bexn7qb {
813
1407
  color: var(--xy-edge-label-color);
814
1408
  font-size: calc(0.78125rem * var(--mantine-scale));
815
1409
  line-height: 1.12;
816
1410
  transition: color 120ms ease-out;
817
- }@keyframes lbtzdo5 {
1411
+ }@keyframes lbtzdo7 {
818
1412
  from {
819
1413
  opacity: 0.6;
820
1414
  }
@@ -833,11 +1427,11 @@ svg.react-flow__connectionline {
833
1427
  width: 100%;
834
1428
  height: 100%;
835
1429
  position: relative;
836
- border-radius: calc(0.375rem * var(--mantine-scale));
1430
+ border-radius: 6px;
837
1431
  box-shadow: 0 4px 10px 0.5px rgba(0,0,0,0.1) , 0 2px 2px -1px rgba(0,0,0,0.4);
838
- padding: calc(0.5rem * var(--mantine-scale));
1432
+ padding: 8px;
839
1433
  background: var(--likec4-element-fill);
840
- transition: all 300ms ease-out;
1434
+ transition: all 200ms ease-out;
841
1435
  }
842
1436
  :where(.react-flow__node.selected) .lbtzdo2 {
843
1437
  box-shadow: none;
@@ -847,50 +1441,52 @@ svg.react-flow__connectionline {
847
1441
  outline: 3px solid var(--mantine-primary-color-outline, var(--mantine-primary-color-filled, var(--likec4-element-stroke)));
848
1442
  outline-offset: calc(0.09375rem * var(--mantine-scale));
849
1443
  }
850
- .lbtzdo3 {
851
- --lbtzdo1: 90%;
852
- width: 100%;
853
- height: 100%;
854
- position: relative;
855
- border-radius: calc(0.5rem * var(--mantine-scale));
1444
+ .lbtzdo5 {
1445
+ --lbtzdo3: calc(var(--lbtzdo1, 80%) - var(--lbtzdo4));
1446
+ --lbtzdo4: 0%;
1447
+ --ai-bg: color-mix(in srgb , var(--likec4-element-fill), transparent 99%);
856
1448
  border-style: dashed;
857
- border-width: calc(0.21875rem * var(--mantine-scale));
858
- border-color: var(--likec4-element-fill);
859
- box-shadow: 0 4px 10px 0.5px rgba(0,0,0,0.05) , 0 2px 2px -1px rgba(0,0,0,0.04);
860
- padding: calc(0.5rem * var(--mantine-scale));
861
- background: color-mix(in srgb , var(--likec4-element-fill), transparent var(--lbtzdo1));
862
- transition: all 200ms ease-out;
863
- }
864
- :where(.lbtzdo0[data-hovered]) .lbtzdo3 {
865
- --lbtzdo1: 65%;
866
- transition-delay: 300ms;
867
- }
868
- :where(.react-flow__node.selected) .lbtzdo3 {
869
- --lbtzdo1: 15%;
1449
+ border-width: 3px;
1450
+ padding: 6px;
1451
+ border-color: color-mix(in srgb , var(--likec4-element-stroke), transparent min(var(--lbtzdo3), 30%));
1452
+ background: color-mix(in srgb , var(--likec4-element-fill), transparent var(--lbtzdo3));
1453
+ background-clip: padding-box;
1454
+ }
1455
+ :where(.react-flow__node.selected) .lbtzdo5 {
1456
+ --lbtzdo4: 5%;
870
1457
  transition-delay: 50ms;
871
- box-shadow: none;
872
- border-color: transparent;
873
1458
  }
874
- .lbtzdo4 {
1459
+ :where([data-hovered]) .lbtzdo5 {
1460
+ --lbtzdo4: 15%;
1461
+ transition-delay: 175ms;
1462
+ }
1463
+ .lbtzdo6 {
875
1464
  font-family: var(--likec4-compound-font-family);
876
1465
  font-optical-sizing: auto;
877
1466
  font-style: normal;
878
1467
  text-align: left;
879
1468
  display: inline-block;
880
1469
  font-weight: 600;
881
- font-size: 13px;
1470
+ font-size: 14px;
882
1471
  text-transform: uppercase;
883
1472
  letter-spacing: 0.2px;
884
1473
  line-height: 1;
885
1474
  opacity: 0.75;
886
- color: var(--likec4-compound-title-color);
887
- padding-left: calc(0.75rem * var(--mantine-scale));
888
- mix-blend-mode: lighten;
1475
+ color: var(--_compound-title-color,var(--likec4-compound-title-color));
1476
+ padding-left: 12px;
889
1477
  }
890
- :where([data-likec4-navigable='true']) .lbtzdo4 {
891
- padding-left: calc(1.625rem * var(--mantine-scale));
1478
+ :where([data-likec4-navigable='true']) .lbtzdo6 {
1479
+ padding-left: 26px;
892
1480
  }
893
- .lbtzdo6 {
1481
+ :where([data-mantine-color-scheme='light'] .likec4-compound-transparent) {
1482
+ --_compound-title-color: var(--likec4-element-stroke);
1483
+ }
1484
+ :where([data-mantine-color-scheme='light'] .likec4-compound-transparent) .lbtzdo6 {
1485
+ opacity: 1;
1486
+ }
1487
+ .lbtzdoa {
1488
+ --lbtzdo8: var(--likec4-element-loContrast);
1489
+ --lbtzdo9: 6;
894
1490
  position: absolute;
895
1491
  top: 0;
896
1492
  left: 0;
@@ -900,24 +1496,33 @@ svg.react-flow__connectionline {
900
1496
  overflow: visible;
901
1497
  visibility: hidden;
902
1498
  }
903
- :where(.react-flow__node.selected:not(:focus-visible)) .lbtzdo6 {
1499
+ :where(.react-flow__node.selected:not(:focus-visible)) .lbtzdoa {
904
1500
  visibility: visible;
905
1501
  }
906
- .lbtzdo6 rect {
907
- stroke: var(--likec4-element-loContrast);
1502
+ :where(.react-flow__node:focus-within:not(.selected)) .lbtzdoa {
1503
+ --lbtzdo8: color-mix(in srgb, var(--likec4-element-stroke) 30%, var(--likec4-element-loContrast));
1504
+ --lbtzdo9: 8;
1505
+ }
1506
+ :where([data-mantine-color-scheme='light']) .lbtzdoa {
1507
+ --lbtzdo8: color-mix(in srgb, var(--likec4-element-stroke) 80%, #000);
1508
+ }
1509
+ .lbtzdoa rect {
1510
+ stroke: var(--lbtzdo8);
908
1511
  transform-origin: center center;
909
- stroke-width: 6;
1512
+ stroke-width: var(--lbtzdo9);
910
1513
  animation-duration: 800ms;
911
- animation-name: lbtzdo5;
1514
+ animation-name: lbtzdo7;
912
1515
  animation-iteration-count: infinite;
913
1516
  animation-direction: alternate;
914
1517
  fill: none;
915
1518
  }
916
- :where(.react-flow__node:focus-within:not(.selected)) .lbtzdo6 rect {
917
- stroke: color-mix(in srgb, var(--likec4-element-stroke) 30%, var(--likec4-element-loContrast));
918
- stroke-width: 8;
1519
+ .lbtzdo0 {
1520
+ --lbtzdob: var(--likec4-element-loContrast);
1521
+ }
1522
+ :where([data-mantine-color-scheme='light'] .likec4-compound-transparent) {
1523
+ --lbtzdob: var(--likec4-element-stroke);
919
1524
  }
920
- .lbtzdo7 {
1525
+ .lbtzdoc {
921
1526
  --ai-bg: color-mix(in srgb , var(--likec4-element-fill), transparent 99%);
922
1527
  --ai-bg-hover: color-mix(in srgb , var(--likec4-element-fill) 65%, var(--likec4-element-stroke));
923
1528
  --ai-hover: color-mix(in srgb , var(--likec4-element-fill) 50%, var(--likec4-element-stroke));
@@ -926,32 +1531,37 @@ svg.react-flow__connectionline {
926
1531
  left: 3px;
927
1532
  top: 7px;
928
1533
  cursor: pointer;
929
- color: var(--likec4-element-loContrast);
1534
+ color: var(--_compound-title-color,var(--lbtzdob));
930
1535
  transform-origin: 90% 70%;
931
1536
  opacity: 0.75;
932
1537
  transition: all 150ms ease-out;
933
1538
  transition-delay: 0ms;
934
1539
  background-color: var(--ai-bg);
935
1540
  }
936
- .lbtzdo7:hover {
1541
+ .lbtzdoc:hover {
937
1542
  box-shadow: var(--mantine-shadow-lg);
938
1543
  transform: scale(1.466);
939
1544
  opacity: 1;
940
1545
  transition-delay: 0;
941
1546
  }
942
- .lbtzdo7:active {
1547
+ .lbtzdoc:active {
943
1548
  transform: scale(1.1);
944
1549
  opacity: 1;
945
1550
  transition-delay: 0;
946
1551
  }
947
- :where(.react-flow__node:not(.dragging) .lbtzdo0:hover) .lbtzdo7:not(:hover) {
1552
+ :where([data-mantine-color-scheme='light'] .likec4-compound-transparent) .lbtzdoc {
1553
+ --ai-bg-hover: color-mix(in srgb , var(--likec4-element-fill), transparent 50%);
1554
+ --ai-hover: color-mix(in srgb , var(--likec4-element-fill), transparent 20%);
1555
+ opacity: 0.85;
1556
+ }
1557
+ :where(.react-flow__node:not(.dragging) .lbtzdo0:hover) .lbtzdoc:not(:hover) {
948
1558
  --ai-bg: var(--ai-bg-hover);
949
1559
  box-shadow: var(--mantine-shadow-lg);
950
1560
  transform: scale(1.223);
951
1561
  opacity: 1;
952
1562
  transition-delay: 250ms;
953
1563
  }
954
- .lbtzdo7 svg.icon {
1564
+ .lbtzdoc svg.icon {
955
1565
  width: 70%;
956
1566
  height: 70%;
957
1567
  stroke-width: 1.5;
@@ -970,6 +1580,7 @@ svg.react-flow__connectionline {
970
1580
  height: 100%;
971
1581
  padding: 0;
972
1582
  margin: 0;
1583
+ backface-visibility: hidden;
973
1584
  }
974
1585
  ._1b6tkn4 {
975
1586
  stroke: var(--likec4-element-loContrast);