@useblu/ocean-core 1.113.2 → 1.114.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
@@ -3,6 +3,12 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [1.114.0](https://github.com/ocean-ds/ocean-web/compare/v1.113.2...v1.114.0) (2025-12-04)
7
+
8
+ ### Features
9
+
10
+ - create internal list actions ([#1194](https://github.com/ocean-ds/ocean-web/issues/1194)) ([dafce53](https://github.com/ocean-ds/ocean-web/commit/dafce530677eacd471f91af2d2a936042b14f2f5))
11
+
6
12
  ## [1.113.2](https://github.com/ocean-ds/ocean-web/compare/v1.113.1...v1.113.2) (2025-12-03)
7
13
 
8
14
  ### Bug Fixes
package/ocean.css CHANGED
@@ -2578,6 +2578,348 @@
2578
2578
  color: #ced1e1;
2579
2579
  }
2580
2580
 
2581
+ .ods-internal-list-actions {
2582
+ align-items: center;
2583
+ display: inline-flex;
2584
+ justify-content: center;
2585
+ position: relative;
2586
+ }
2587
+ .ods-internal-list-actions__trigger {
2588
+ align-items: center;
2589
+ background: transparent;
2590
+ border: 0;
2591
+ border-radius: 50%;
2592
+ color: #aaadc0;
2593
+ cursor: pointer;
2594
+ display: flex;
2595
+ flex-shrink: 0;
2596
+ height: 32px;
2597
+ justify-content: center;
2598
+ width: 32px;
2599
+ }
2600
+ .ods-internal-list-actions__trigger:hover:not(:disabled, .ods-internal-list-actions__trigger--swipe-gesture), .ods-internal-list-actions__trigger:active:not(:disabled, .ods-internal-list-actions__trigger--swipe-gesture), .ods-internal-list-actions__trigger--active:not(:disabled, .ods-internal-list-actions__trigger--swipe-gesture) {
2601
+ background: #f3f5fe;
2602
+ color: #0025e0;
2603
+ }
2604
+ .ods-internal-list-actions__trigger:disabled {
2605
+ cursor: not-allowed;
2606
+ opacity: 0.5;
2607
+ }
2608
+ .ods-internal-list-actions__trigger svg {
2609
+ flex-shrink: 0;
2610
+ }
2611
+ .ods-internal-list-actions__menu {
2612
+ background: white;
2613
+ border-radius: 8px;
2614
+ box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
2615
+ list-style: none;
2616
+ margin: 0;
2617
+ min-width: -webkit-max-content;
2618
+ min-width: -moz-max-content;
2619
+ min-width: max-content;
2620
+ padding: 4px 0;
2621
+ position: absolute;
2622
+ width: -webkit-max-content;
2623
+ width: -moz-max-content;
2624
+ width: max-content;
2625
+ z-index: 1000;
2626
+ }
2627
+ .ods-internal-list-actions__menu--bottom-left {
2628
+ right: 0;
2629
+ top: calc(100% + 4px);
2630
+ }
2631
+ .ods-internal-list-actions__menu--bottom-right {
2632
+ left: 0;
2633
+ top: calc(100% + 4px);
2634
+ }
2635
+ .ods-internal-list-actions__menu--top-left {
2636
+ bottom: calc(100% + 4px);
2637
+ right: 0;
2638
+ }
2639
+ .ods-internal-list-actions__menu--top-right {
2640
+ bottom: calc(100% + 4px);
2641
+ left: 0;
2642
+ }
2643
+ .ods-internal-list-actions__menu--portal {
2644
+ inset: auto;
2645
+ }
2646
+ .ods-internal-list-actions__menu-item {
2647
+ align-items: center;
2648
+ background: transparent;
2649
+ border: 0;
2650
+ color: #393b47;
2651
+ cursor: pointer;
2652
+ display: flex;
2653
+ font-family: "Nunito Sans";
2654
+ font-size: 16px;
2655
+ gap: 16px;
2656
+ line-height: 1.5;
2657
+ padding: 8px 12px;
2658
+ text-align: left;
2659
+ transition: background-color 200ms;
2660
+ width: 100%;
2661
+ }
2662
+ .ods-internal-list-actions__menu-item:hover:not(.ods-internal-list-actions__menu-item--disabled) {
2663
+ background: #f3f5fe;
2664
+ }
2665
+ .ods-internal-list-actions__menu-item--disabled {
2666
+ cursor: not-allowed;
2667
+ opacity: 0.5;
2668
+ }
2669
+ .ods-internal-list-actions__menu-item--positive {
2670
+ color: #2da94f;
2671
+ /* stylelint-disable-next-line max-nesting-depth */
2672
+ }
2673
+ .ods-internal-list-actions__menu-item--positive:hover:not(.ods-internal-list-actions__menu-item--disabled) {
2674
+ background: #f2fdf5;
2675
+ }
2676
+ .ods-internal-list-actions__menu-item--positive .ods-internal-list-actions__menu-item-icon {
2677
+ color: #2da94f;
2678
+ }
2679
+ .ods-internal-list-actions__menu-item--warning {
2680
+ color: #ff8a14;
2681
+ /* stylelint-disable-next-line max-nesting-depth */
2682
+ }
2683
+ .ods-internal-list-actions__menu-item--warning:hover:not(.ods-internal-list-actions__menu-item--disabled) {
2684
+ background: #fff7f0;
2685
+ }
2686
+ .ods-internal-list-actions__menu-item--warning .ods-internal-list-actions__menu-item-icon {
2687
+ color: #ff8a14;
2688
+ }
2689
+ .ods-internal-list-actions__menu-item--negative {
2690
+ color: #f5456e;
2691
+ /* stylelint-disable-next-line max-nesting-depth */
2692
+ }
2693
+ .ods-internal-list-actions__menu-item--negative:hover:not(.ods-internal-list-actions__menu-item--disabled) {
2694
+ background: #fff1f4;
2695
+ }
2696
+ .ods-internal-list-actions__menu-item--negative .ods-internal-list-actions__menu-item-icon {
2697
+ color: #f5456e;
2698
+ }
2699
+ .ods-internal-list-actions__menu-item--neutral {
2700
+ color: #aaadc0;
2701
+ /* stylelint-disable-next-line max-nesting-depth */
2702
+ }
2703
+ .ods-internal-list-actions__menu-item--neutral:hover:not(.ods-internal-list-actions__menu-item--disabled) {
2704
+ background: #f3f5fe;
2705
+ }
2706
+ .ods-internal-list-actions__menu-item--neutral .ods-internal-list-actions__menu-item-icon {
2707
+ color: #aaadc0;
2708
+ }
2709
+ .ods-internal-list-actions__menu-item-icon {
2710
+ align-items: center;
2711
+ display: flex;
2712
+ flex-shrink: 0;
2713
+ height: 16px;
2714
+ justify-content: center;
2715
+ width: 16px;
2716
+ }
2717
+ .ods-internal-list-actions__menu-item-label {
2718
+ flex: 1;
2719
+ white-space: nowrap;
2720
+ }
2721
+ .ods-internal-list-actions--force-swipe {
2722
+ inset: 0;
2723
+ position: absolute;
2724
+ z-index: 100;
2725
+ /* stylelint-disable max-nesting-depth */
2726
+ /* stylelint-enable max-nesting-depth */
2727
+ }
2728
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__trigger {
2729
+ height: 100%;
2730
+ padding: 0 8px;
2731
+ position: absolute;
2732
+ right: 0;
2733
+ top: 50%;
2734
+ transform: translateY(-50%);
2735
+ width: auto;
2736
+ }
2737
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__backdrop {
2738
+ background: transparent;
2739
+ inset: 0;
2740
+ position: absolute;
2741
+ }
2742
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__drag-handle {
2743
+ align-items: center;
2744
+ background: white;
2745
+ cursor: pointer;
2746
+ display: flex;
2747
+ flex-shrink: 0;
2748
+ height: 100%;
2749
+ justify-content: center;
2750
+ left: 0;
2751
+ margin: 0;
2752
+ padding: 0 16px;
2753
+ position: -webkit-sticky;
2754
+ position: sticky;
2755
+ z-index: 1;
2756
+ }
2757
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__drag-handle-button {
2758
+ align-items: center;
2759
+ background: none;
2760
+ border: 0;
2761
+ cursor: pointer;
2762
+ display: flex;
2763
+ height: 100%;
2764
+ justify-content: center;
2765
+ margin: 0;
2766
+ padding: 0 8px;
2767
+ width: 100%;
2768
+ }
2769
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__drag-handle-icon {
2770
+ display: block;
2771
+ height: 24px;
2772
+ width: 5px;
2773
+ }
2774
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu {
2775
+ align-items: stretch;
2776
+ -webkit-animation: slideInFromRight 300ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
2777
+ animation: slideInFromRight 300ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
2778
+ bottom: 0;
2779
+ box-shadow: none;
2780
+ display: flex;
2781
+ flex-direction: row;
2782
+ left: 0;
2783
+ margin: 0;
2784
+ max-height: none;
2785
+ min-width: auto;
2786
+ overflow-x: auto;
2787
+ overflow-y: hidden;
2788
+ padding: 0;
2789
+ position: absolute;
2790
+ right: 0;
2791
+ top: 0;
2792
+ width: 100%;
2793
+ z-index: 102;
2794
+ /* stylelint-disable-next-line order/properties-alphabetical-order */
2795
+ -webkit-overflow-scrolling: touch;
2796
+ }
2797
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu--closing {
2798
+ -webkit-animation: slideOutToRight 300ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
2799
+ animation: slideOutToRight 300ms cubic-bezier(0.4, 0, 0.2, 1) forwards;
2800
+ }
2801
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu--bottom-left, .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu--bottom-right, .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu--top-left, .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu--top-right {
2802
+ bottom: 0;
2803
+ left: 0;
2804
+ right: 0;
2805
+ top: 0;
2806
+ }
2807
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu li {
2808
+ display: flex;
2809
+ flex-shrink: 0;
2810
+ height: 100%;
2811
+ margin: 0;
2812
+ padding: 0;
2813
+ }
2814
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu li:first-of-type {
2815
+ margin-left: auto;
2816
+ }
2817
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item {
2818
+ align-items: center;
2819
+ border-radius: 0;
2820
+ flex-direction: column;
2821
+ gap: 4px;
2822
+ height: 100%;
2823
+ justify-content: center;
2824
+ padding: 16px 16px;
2825
+ white-space: nowrap;
2826
+ width: auto;
2827
+ }
2828
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item-icon {
2829
+ flex: 1;
2830
+ height: 20px;
2831
+ width: 20px;
2832
+ }
2833
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item-label {
2834
+ align-items: center;
2835
+ display: flex;
2836
+ flex: 1;
2837
+ }
2838
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--positive {
2839
+ background: #2da94f;
2840
+ color: white;
2841
+ }
2842
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--positive .ods-internal-list-actions__menu-item-icon {
2843
+ color: white;
2844
+ }
2845
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--warning {
2846
+ background: #ff8a14;
2847
+ color: white;
2848
+ }
2849
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--warning .ods-internal-list-actions__menu-item-icon {
2850
+ color: white;
2851
+ }
2852
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--negative {
2853
+ background: #f5456e;
2854
+ color: white;
2855
+ }
2856
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--negative .ods-internal-list-actions__menu-item-icon {
2857
+ color: white;
2858
+ }
2859
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--neutral {
2860
+ background: #aaadc0;
2861
+ color: white;
2862
+ }
2863
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--neutral .ods-internal-list-actions__menu-item-icon {
2864
+ color: white;
2865
+ }
2866
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--default, .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item:not(.ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--positive):not(.ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--warning):not(.ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--negative):not(.ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--neutral) {
2867
+ background: #f3f5fe;
2868
+ color: #393b47;
2869
+ }
2870
+ .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--default .ods-internal-list-actions__menu-item-icon, .ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item:not(.ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--positive):not(.ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--warning):not(.ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--negative):not(.ods-internal-list-actions--force-swipe .ods-internal-list-actions__menu-item--neutral).ods-internal-list-actions__menu-item-icon {
2871
+ color: #393b47;
2872
+ }
2873
+
2874
+ @-webkit-keyframes slideInFromRight {
2875
+ from {
2876
+ opacity: 0;
2877
+ transform: scaleX(0);
2878
+ transform-origin: right center;
2879
+ }
2880
+ to {
2881
+ opacity: 1;
2882
+ transform: scaleX(1);
2883
+ transform-origin: right center;
2884
+ }
2885
+ }
2886
+
2887
+ @keyframes slideInFromRight {
2888
+ from {
2889
+ opacity: 0;
2890
+ transform: scaleX(0);
2891
+ transform-origin: right center;
2892
+ }
2893
+ to {
2894
+ opacity: 1;
2895
+ transform: scaleX(1);
2896
+ transform-origin: right center;
2897
+ }
2898
+ }
2899
+ @-webkit-keyframes slideOutToRight {
2900
+ from {
2901
+ opacity: 1;
2902
+ transform: scaleX(1);
2903
+ transform-origin: right center;
2904
+ }
2905
+ to {
2906
+ opacity: 0;
2907
+ transform: scaleX(0);
2908
+ transform-origin: right center;
2909
+ }
2910
+ }
2911
+ @keyframes slideOutToRight {
2912
+ from {
2913
+ opacity: 1;
2914
+ transform: scaleX(1);
2915
+ transform-origin: right center;
2916
+ }
2917
+ to {
2918
+ opacity: 0;
2919
+ transform: scaleX(0);
2920
+ transform-origin: right center;
2921
+ }
2922
+ }
2581
2923
  .ods-link {
2582
2924
  cursor: pointer;
2583
2925
  font-family: "Nunito Sans";