@diniz/webcomponents 1.1.3 → 1.1.4

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/style.css CHANGED
@@ -3,8 +3,8 @@
3
3
  --color-primary-contrast: #ffffff;
4
4
  --color-ink: #0f172a;
5
5
  --color-muted: #f1f5f9;
6
- --color-header: #f8fafc;
7
- --color-border: #e2e8f0;
6
+ --color-header: #34a8eb;
7
+ --color-border: #f3f5f7;
8
8
  --color-border-strong: #cbd5f5;
9
9
  --color-nav-bg: #222222;
10
10
  --color-nav-text: #ffffff;
@@ -699,6 +699,156 @@ input[type="checkbox"] {
699
699
  }
700
700
  }
701
701
 
702
+ /* ============================================
703
+ UPLOAD COMPONENT STYLES
704
+ ============================================ */
705
+
706
+ :host([data-ui="upload"]) {
707
+ display: block;
708
+ width: 100%;
709
+ }
710
+
711
+ .upload {
712
+ display: flex;
713
+ flex-direction: column;
714
+ gap: 0.75rem;
715
+ }
716
+
717
+ .upload-label {
718
+ font-size: 0.9rem;
719
+ font-weight: 700;
720
+ color: var(--color-ink);
721
+ }
722
+
723
+ .upload-drop {
724
+ border: 1.5px dashed rgba(36, 236, 113, 0.55);
725
+ border-radius: 16px;
726
+ background: linear-gradient(135deg, rgba(36, 236, 113, 0.08), rgba(52, 168, 235, 0.08));
727
+ padding: 1.25rem 1.5rem;
728
+ position: relative;
729
+ transition: border-color 0.2s ease, box-shadow 0.2s ease, transform 0.2s ease;
730
+ }
731
+
732
+ .upload-drop.dragging {
733
+ border-color: var(--color-primary);
734
+ box-shadow: 0 16px 30px rgba(36, 236, 113, 0.18);
735
+ transform: translateY(-2px);
736
+ }
737
+
738
+ .upload-drop.disabled {
739
+ opacity: 0.6;
740
+ cursor: not-allowed;
741
+ }
742
+
743
+ .upload-input {
744
+ position: absolute;
745
+ inset: 0;
746
+ opacity: 0;
747
+ cursor: pointer;
748
+ }
749
+
750
+ .upload-content {
751
+ display: grid;
752
+ grid-template-columns: auto 1fr auto;
753
+ gap: 1rem;
754
+ align-items: center;
755
+ }
756
+
757
+ .upload-icon {
758
+ width: 46px;
759
+ height: 46px;
760
+ border-radius: 14px;
761
+ display: grid;
762
+ place-items: center;
763
+ background: #0f172a;
764
+ color: #ffffff;
765
+ box-shadow: 0 12px 20px rgba(15, 23, 42, 0.18);
766
+ }
767
+
768
+ .upload-icon svg {
769
+ width: 20px;
770
+ height: 20px;
771
+ }
772
+
773
+ .upload-title {
774
+ font-weight: 700;
775
+ color: var(--color-ink);
776
+ }
777
+
778
+ .upload-sub {
779
+ font-size: 0.85rem;
780
+ color: var(--color-text-muted, #64748b);
781
+ margin-top: 0.2rem;
782
+ }
783
+
784
+ .upload-btn {
785
+ border: none;
786
+ border-radius: 999px;
787
+ padding: 0.45rem 1rem;
788
+ font-size: 0.85rem;
789
+ font-weight: 700;
790
+ background: #0f172a;
791
+ color: #ffffff;
792
+ cursor: pointer;
793
+ transition: transform 0.2s ease, box-shadow 0.2s ease;
794
+ }
795
+
796
+ .upload-btn:hover:not(:disabled) {
797
+ transform: translateY(-1px);
798
+ box-shadow: 0 10px 16px rgba(15, 23, 42, 0.18);
799
+ }
800
+
801
+ .upload-btn:disabled {
802
+ cursor: not-allowed;
803
+ opacity: 0.5;
804
+ }
805
+
806
+ .upload-helper {
807
+ font-size: 0.85rem;
808
+ color: var(--color-text-muted, #64748b);
809
+ }
810
+
811
+ .upload-list {
812
+ list-style: none;
813
+ padding: 0;
814
+ margin: 0;
815
+ display: grid;
816
+ gap: 0.5rem;
817
+ }
818
+
819
+ .upload-list li {
820
+ display: grid;
821
+ grid-template-columns: 1fr auto auto;
822
+ gap: 0.75rem;
823
+ align-items: center;
824
+ padding: 0.6rem 0.75rem;
825
+ border-radius: 12px;
826
+ background: #ffffff;
827
+ border: 1px solid rgba(148, 163, 184, 0.35);
828
+ font-size: 0.9rem;
829
+ color: var(--color-ink);
830
+ }
831
+
832
+ .upload-meta {
833
+ font-size: 0.78rem;
834
+ color: var(--color-text-muted, #64748b);
835
+ }
836
+
837
+ .upload-remove {
838
+ border: none;
839
+ background: rgba(239, 68, 68, 0.1);
840
+ color: #b91c1c;
841
+ padding: 0.25rem 0.65rem;
842
+ border-radius: 999px;
843
+ font-size: 0.75rem;
844
+ font-weight: 600;
845
+ cursor: pointer;
846
+ }
847
+
848
+ .upload-remove:hover {
849
+ background: rgba(239, 68, 68, 0.2);
850
+ }
851
+
702
852
  /* ============================================
703
853
  PAGINATION COMPONENT STYLES
704
854
  ============================================ */
@@ -777,14 +927,218 @@ input[type="checkbox"] {
777
927
  height: 16px;
778
928
  }
779
929
 
930
+ /* ============================================
931
+ STEPPER COMPONENT STYLES
932
+ ============================================ */
933
+
934
+ :host([data-ui="stepper"]) {
935
+ display: block;
936
+ }
937
+
938
+ .stepper-wrap {
939
+ width: 100%;
940
+ }
941
+
942
+ .stepper-empty {
943
+ padding: 1rem;
944
+ border: 1px dashed var(--color-border);
945
+ border-radius: var(--radius-md);
946
+ color: var(--color-text-muted, #64748b);
947
+ text-align: center;
948
+ font-size: 0.9rem;
949
+ }
950
+
951
+ .stepper {
952
+ list-style: none;
953
+ padding: 0;
954
+ margin: 0;
955
+ display: flex;
956
+ flex-wrap: wrap;
957
+ gap: 1.25rem;
958
+ }
959
+
960
+ .stepper.vertical {
961
+ flex-direction: column;
962
+ gap: 1rem;
963
+ }
964
+
965
+ .step {
966
+ display: flex;
967
+ align-items: center;
968
+ position: relative;
969
+ }
970
+
971
+ .stepper.vertical .step {
972
+ flex-direction: column;
973
+ align-items: flex-start;
974
+ }
975
+
976
+ .step-trigger {
977
+ display: flex;
978
+ align-items: center;
979
+ gap: 0.75rem;
980
+ background: transparent;
981
+ border: none;
982
+ padding: 0;
983
+ cursor: pointer;
984
+ text-align: left;
985
+ font-family: inherit;
986
+ color: var(--color-ink);
987
+ }
988
+
989
+ .step-trigger:disabled {
990
+ cursor: not-allowed;
991
+ opacity: 0.5;
992
+ }
993
+
994
+ .step-node {
995
+ width: 2.1rem;
996
+ height: 2.1rem;
997
+ border-radius: 12px;
998
+ background: var(--color-muted);
999
+ border: 1px solid var(--color-border-strong);
1000
+ display: inline-flex;
1001
+ align-items: center;
1002
+ justify-content: center;
1003
+ font-weight: 700;
1004
+ font-size: 0.9rem;
1005
+ color: var(--color-ink);
1006
+ box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.6);
1007
+ }
1008
+
1009
+ .step-text {
1010
+ display: flex;
1011
+ flex-direction: column;
1012
+ gap: 0.2rem;
1013
+ }
1014
+
1015
+ .step-title {
1016
+ font-weight: 700;
1017
+ letter-spacing: 0.2px;
1018
+ font-size: 0.98rem;
1019
+ }
1020
+
1021
+ .step-desc {
1022
+ font-size: 0.85rem;
1023
+ color: var(--color-text-muted, #64748b);
1024
+ }
1025
+
1026
+ .step-connector {
1027
+ width: 48px;
1028
+ height: 2px;
1029
+ margin: 0 0.65rem;
1030
+ background: linear-gradient(90deg, var(--color-border), rgba(255, 255, 255, 0));
1031
+ flex-shrink: 0;
1032
+ }
1033
+
1034
+ .stepper.vertical .step-connector {
1035
+ width: 2px;
1036
+ height: 28px;
1037
+ margin: 0.65rem 0 0.25rem 1.05rem;
1038
+ background: linear-gradient(180deg, var(--color-border), rgba(255, 255, 255, 0));
1039
+ }
1040
+
1041
+ .step.complete .step-node {
1042
+ background: linear-gradient(135deg, #24ec71 0%, #34a8eb 100%);
1043
+ color: #0f172a;
1044
+ border-color: transparent;
1045
+ box-shadow: 0 8px 18px rgba(36, 236, 113, 0.25);
1046
+ }
1047
+
1048
+ .step.complete .step-connector {
1049
+ background: linear-gradient(90deg, #24ec71, #34a8eb);
1050
+ }
1051
+
1052
+ .stepper.vertical .step.complete .step-connector {
1053
+ background: linear-gradient(180deg, #24ec71, #34a8eb);
1054
+ }
1055
+
1056
+ .step.active .step-node {
1057
+ background: #ffffff;
1058
+ color: var(--color-ink);
1059
+ border-color: var(--color-primary);
1060
+ box-shadow: 0 0 0 4px rgba(36, 236, 113, 0.18), 0 12px 20px rgba(36, 236, 113, 0.22);
1061
+ animation: stepGlow 1.6s ease-in-out infinite;
1062
+ }
1063
+
1064
+ .step.active .step-title {
1065
+ color: var(--color-ink);
1066
+ }
1067
+
1068
+ .step.upcoming .step-title {
1069
+ color: var(--color-ink);
1070
+ opacity: 0.7;
1071
+ }
1072
+
1073
+ .step.error .step-node {
1074
+ background: #fee2e2;
1075
+ border-color: #f87171;
1076
+ color: #991b1b;
1077
+ box-shadow: 0 8px 16px rgba(239, 68, 68, 0.2);
1078
+ }
1079
+
1080
+ .step.warning .step-node {
1081
+ background: #fef3c7;
1082
+ border-color: #f59e0b;
1083
+ color: #92400e;
1084
+ box-shadow: 0 8px 16px rgba(245, 158, 11, 0.2);
1085
+ }
1086
+
1087
+ .stepper.sm .step-node {
1088
+ width: 1.65rem;
1089
+ height: 1.65rem;
1090
+ font-size: 0.75rem;
1091
+ border-radius: 10px;
1092
+ }
1093
+
1094
+ .stepper.sm .step-title {
1095
+ font-size: 0.9rem;
1096
+ }
1097
+
1098
+ .stepper.sm .step-desc {
1099
+ font-size: 0.78rem;
1100
+ }
1101
+
1102
+ .stepper.lg .step-node {
1103
+ width: 2.6rem;
1104
+ height: 2.6rem;
1105
+ font-size: 1.05rem;
1106
+ border-radius: 14px;
1107
+ }
1108
+
1109
+ .stepper.lg .step-title {
1110
+ font-size: 1.1rem;
1111
+ }
1112
+
1113
+ .stepper.lg .step-desc {
1114
+ font-size: 0.92rem;
1115
+ }
1116
+
1117
+ @keyframes stepGlow {
1118
+ 0%,
1119
+ 100% {
1120
+ transform: translateY(0);
1121
+ }
1122
+ 50% {
1123
+ transform: translateY(-2px);
1124
+ }
1125
+ }
1126
+
780
1127
  /* ============================================
781
1128
  DATE PICKER COMPONENT STYLES
782
1129
  ============================================ */
783
1130
 
784
1131
  :host([data-ui="date-picker"]) {
785
- display: inline-block;
1132
+ display: block;
786
1133
  width: 100%;
787
- max-width: 300px;
1134
+ }
1135
+
1136
+ .date-picker-label {
1137
+ display: block;
1138
+ font-size: 0.9rem;
1139
+ font-weight: 500;
1140
+ color: var(--color-ink);
1141
+ margin-bottom: 0.5rem;
788
1142
  }
789
1143
 
790
1144
  .date-picker-container {
@@ -849,9 +1203,12 @@ input[type="checkbox"] {
849
1203
  .hidden-date-input {
850
1204
  position: absolute;
851
1205
  opacity: 0;
1206
+ width: 100%;
1207
+ height: 100%;
1208
+ top: 0;
1209
+ left: 0;
852
1210
  pointer-events: none;
853
- width: 0;
854
- height: 0;
1211
+ cursor: pointer;
855
1212
  }
856
1213
 
857
1214
  .calendar-btn {
@@ -890,4 +1247,10 @@ input[type="checkbox"] {
890
1247
  opacity: 0.6;
891
1248
  padding: 0 0.25rem;
892
1249
  font-weight: 500;
1250
+ }
1251
+
1252
+ #ui-datepicker-div,
1253
+ .datepicker,
1254
+ .react-datepicker-popper {
1255
+ z-index: 99999 !important;
893
1256
  }