aizek-chatbot 1.0.27 → 1.0.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.css CHANGED
@@ -458,6 +458,115 @@
458
458
  font-size: 12px;
459
459
  opacity: 0.8;
460
460
  }
461
+ .session-bar {
462
+ margin-left: auto;
463
+ display: flex;
464
+ align-items: center;
465
+ gap: 4px;
466
+ padding: 4px;
467
+ background: rgba(255, 255, 255, 0.1);
468
+ border-radius: 8px;
469
+ backdrop-filter: blur(8px);
470
+ }
471
+ .session-tab {
472
+ position: relative;
473
+ padding: 8px 12px;
474
+ border-radius: 8px;
475
+ font-size: 11px;
476
+ font-weight: 500;
477
+ color: #ffffff;
478
+ background: rgba(255, 255, 255, 0.1);
479
+ border: 1px solid rgba(255, 255, 255, 0.15);
480
+ cursor: pointer;
481
+ transition: all 0.2s ease;
482
+ white-space: nowrap;
483
+ overflow: hidden;
484
+ text-overflow: ellipsis;
485
+ min-width: 60px;
486
+ max-width: 100px;
487
+ text-align: center;
488
+ }
489
+ .session-tab:hover {
490
+ background: rgba(255, 255, 255, 0.2);
491
+ border-color: rgba(255, 255, 255, 0.3);
492
+ transform: translateY(-1px);
493
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
494
+ }
495
+ .session-tab:active {
496
+ transform: translateY(0);
497
+ }
498
+ .session-tab.active {
499
+ background: rgba(255, 255, 255, 0.25);
500
+ border-color: rgba(255, 255, 255, 0.4);
501
+ box-shadow: 0 2px 12px rgba(255, 255, 255, 0.2);
502
+ font-weight: 600;
503
+ }
504
+ .session-tab.active::before {
505
+ content: "";
506
+ position: absolute;
507
+ bottom: 0;
508
+ left: 50%;
509
+ transform: translateX(-50%);
510
+ width: 60%;
511
+ height: 2px;
512
+ background: #ffffff;
513
+ border-radius: 4px 4px 0 0;
514
+ }
515
+ .session-tab:not(.active) {
516
+ opacity: 0.7;
517
+ }
518
+ .session-new-button {
519
+ padding: 8px 12px;
520
+ border-radius: 8px;
521
+ font-size: 11px;
522
+ font-weight: 600;
523
+ color: #ffffff;
524
+ background: rgba(255, 255, 255, 0.15);
525
+ border: 1px solid rgba(255, 255, 255, 0.2);
526
+ cursor: pointer;
527
+ transition: all 0.2s ease;
528
+ display: flex;
529
+ align-items: center;
530
+ justify-content: center;
531
+ min-width: 50px;
532
+ position: relative;
533
+ overflow: hidden;
534
+ }
535
+ .session-new-button::before {
536
+ content: "";
537
+ position: absolute;
538
+ top: 50%;
539
+ left: 50%;
540
+ width: 0;
541
+ height: 0;
542
+ border-radius: 50%;
543
+ background: rgba(255, 255, 255, 0.3);
544
+ transform: translate(-50%, -50%);
545
+ transition: width 0.4s ease, height 0.4s ease;
546
+ }
547
+ .session-new-button:hover:not(:disabled) {
548
+ background: rgba(255, 255, 255, 0.25);
549
+ border-color: rgba(255, 255, 255, 0.35);
550
+ transform: translateY(-1px);
551
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
552
+ }
553
+ .session-new-button:hover:not(:disabled)::before {
554
+ width: 100px;
555
+ height: 100px;
556
+ }
557
+ .session-new-button:active:not(:disabled) {
558
+ transform: translateY(0);
559
+ }
560
+ .session-new-button:disabled {
561
+ opacity: 0.4;
562
+ cursor: not-allowed;
563
+ background: rgba(255, 255, 255, 0.05);
564
+ border-color: rgba(255, 255, 255, 0.1);
565
+ }
566
+ .session-new-button span {
567
+ position: relative;
568
+ z-index: 1;
569
+ }
461
570
  .button-sizes.small {
462
571
  width: 50px;
463
572
  height: 50px;
@@ -554,11 +663,12 @@
554
663
  .messages-container {
555
664
  flex: 1;
556
665
  overflow-y: auto;
557
- padding: 16px;
666
+ padding: 12px;
558
667
  display: flex;
559
668
  flex-direction: column;
560
669
  gap: 4px;
561
670
  background: #f8fafc;
671
+ min-height: 0;
562
672
  }
563
673
  .empty-state {
564
674
  display: flex;
@@ -576,13 +686,376 @@
576
686
  }
577
687
  .empty-state .empty-state-title {
578
688
  margin: 0 0 8px 0;
579
- font-size: 18px;
689
+ font-size: 14px;
580
690
  }
581
691
  .empty-state .empty-state-description {
582
692
  margin: 0;
583
693
  font-size: 14px;
584
694
  opacity: 0.8;
585
695
  }
696
+ .chat-content {
697
+ flex: 1;
698
+ display: flex;
699
+ flex-direction: column;
700
+ background: #f8fafc;
701
+ min-height: 0;
702
+ }
703
+ .home-panel {
704
+ padding: 16px;
705
+ display: flex;
706
+ flex-direction: column;
707
+ gap: 8px;
708
+ width: 100%;
709
+ max-width: 100%;
710
+ height: 100%;
711
+ justify-content: center;
712
+ align-items: center;
713
+ text-align: center;
714
+ }
715
+ .info-panel {
716
+ padding: 16px;
717
+ display: flex;
718
+ flex-direction: column;
719
+ gap: 8px;
720
+ }
721
+ .panel-title {
722
+ margin: 0;
723
+ font-size: 16px;
724
+ font-weight: 650;
725
+ color: #0f172a;
726
+ }
727
+ .panel-subtitle {
728
+ margin: 0;
729
+ color: #475569;
730
+ line-height: 1.4;
731
+ font-size: 14px;
732
+ }
733
+ .eyebrow {
734
+ margin: 0;
735
+ font-size: 11px;
736
+ letter-spacing: 0.3px;
737
+ text-transform: uppercase;
738
+ color: #64748b;
739
+ }
740
+ .home-actions {
741
+ display: flex;
742
+ gap: 8px;
743
+ flex-wrap: wrap;
744
+ }
745
+ .primary-button {
746
+ padding: 8px 12px;
747
+ border-radius: 10px;
748
+ border: none;
749
+ background:
750
+ linear-gradient(
751
+ 135deg,
752
+ #667eea 0%,
753
+ #764ba2 100%);
754
+ color: #ffffff;
755
+ font-weight: 600;
756
+ cursor: pointer;
757
+ transition: all 0.2s ease;
758
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
759
+ font-size: 12px;
760
+ }
761
+ .primary-button:hover {
762
+ transform: translateY(-1px);
763
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
764
+ }
765
+ .primary-button:disabled {
766
+ opacity: 0.6;
767
+ cursor: not-allowed;
768
+ }
769
+ .ghost-button {
770
+ padding: 8px 12px;
771
+ border-radius: 10px;
772
+ border: 1px solid #e2e8f0;
773
+ background: #ffffff;
774
+ color: #334155;
775
+ font-weight: 600;
776
+ cursor: pointer;
777
+ transition: all 0.2s ease;
778
+ font-size: 12px;
779
+ }
780
+ .ghost-button:hover {
781
+ background: #f1f5f9;
782
+ }
783
+ .conversation-list {
784
+ flex: 1;
785
+ display: flex;
786
+ flex-direction: column;
787
+ gap: 8px;
788
+ padding: 16px;
789
+ min-height: 0;
790
+ }
791
+ .list-header {
792
+ display: flex;
793
+ align-items: center;
794
+ justify-content: space-between;
795
+ }
796
+ .list-header .panel-title {
797
+ font-size: 14px;
798
+ font-weight: 700;
799
+ }
800
+ .conversation-items {
801
+ display: flex;
802
+ flex-direction: column;
803
+ gap: 6px;
804
+ }
805
+ .conversation-item {
806
+ width: 100%;
807
+ border: 1px solid #e2e8f0;
808
+ border-radius: 12px;
809
+ background: #ffffff;
810
+ padding: 10px 12px;
811
+ display: flex;
812
+ align-items: center;
813
+ justify-content: space-between;
814
+ text-align: left;
815
+ cursor: pointer;
816
+ transition: all 0.2s ease;
817
+ box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
818
+ }
819
+ .conversation-item:hover {
820
+ border-color: #cbd5e1;
821
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
822
+ transform: translateY(-0.5px);
823
+ }
824
+ .conversation-item.active {
825
+ border-color: #2563eb;
826
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
827
+ }
828
+ .conversation-meta {
829
+ display: flex;
830
+ flex-direction: column;
831
+ gap: 2px;
832
+ }
833
+ .conversation-title {
834
+ margin: 0;
835
+ font-weight: 600;
836
+ color: #0f172a;
837
+ font-size: 12px;
838
+ }
839
+ .conversation-sub {
840
+ margin: 0;
841
+ font-size: 11px;
842
+ color: #64748b;
843
+ }
844
+ .conversation-pill {
845
+ padding: 6px 10px;
846
+ background: #f1f5f9;
847
+ color: #334155;
848
+ border-radius: 999px;
849
+ font-size: 11px;
850
+ font-weight: 700;
851
+ }
852
+ .empty-list {
853
+ display: flex;
854
+ flex-direction: column;
855
+ align-items: center;
856
+ justify-content: center;
857
+ flex: 1;
858
+ background: #ffffff;
859
+ border: 1px dashed #cbd5e1;
860
+ border-radius: 8px;
861
+ padding: 32px 16px;
862
+ text-align: center;
863
+ color: #64748b;
864
+ }
865
+ .empty-list .empty-state-icon {
866
+ font-size: 32px;
867
+ margin-bottom: 10px;
868
+ }
869
+ .empty-list .empty-state-title {
870
+ font-size: 12px;
871
+ font-weight: 600;
872
+ margin-bottom: 4px;
873
+ color: #1e293b;
874
+ }
875
+ .empty-list .empty-state-description {
876
+ font-size: 12px;
877
+ max-width: 260px;
878
+ margin: 0;
879
+ color: #64748b;
880
+ }
881
+ .conversation-detail {
882
+ flex: 1;
883
+ display: flex;
884
+ flex-direction: column;
885
+ background: #f8fafc;
886
+ min-height: 0;
887
+ }
888
+ .detail-header {
889
+ display: grid;
890
+ grid-template-columns: 44px 1fr auto;
891
+ align-items: center;
892
+ padding: 10px 10px;
893
+ background: rgba(255, 255, 255, 0.88);
894
+ border-bottom: 1px solid rgba(226, 232, 240, 0.9);
895
+ backdrop-filter: blur(10px);
896
+ gap: 8px;
897
+ }
898
+ .detail-title {
899
+ display: flex;
900
+ flex-direction: column;
901
+ gap: 2px;
902
+ }
903
+ .detail-header-left {
904
+ display: flex;
905
+ align-items: center;
906
+ justify-content: flex-start;
907
+ }
908
+ .detail-header-center {
909
+ min-width: 0;
910
+ display: flex;
911
+ align-items: center;
912
+ gap: 10px;
913
+ }
914
+ .detail-header-right {
915
+ display: flex;
916
+ align-items: center;
917
+ gap: 8px;
918
+ }
919
+ .detail-avatar {
920
+ width: 32px;
921
+ height: 32px;
922
+ border-radius: 10px;
923
+ display: inline-flex;
924
+ align-items: center;
925
+ justify-content: center;
926
+ color: #334155;
927
+ background:
928
+ linear-gradient(
929
+ 180deg,
930
+ rgba(241, 245, 249, 0.9),
931
+ rgba(226, 232, 240, 0.7));
932
+ border: 1px solid rgba(203, 213, 225, 0.9);
933
+ box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03);
934
+ flex: 0 0 auto;
935
+ }
936
+ .detail-title-row {
937
+ display: flex;
938
+ align-items: center;
939
+ gap: 8px;
940
+ min-width: 0;
941
+ }
942
+ .detail-title-text {
943
+ font-size: 12px;
944
+ font-weight: 750;
945
+ color: #0f172a;
946
+ white-space: nowrap;
947
+ overflow: hidden;
948
+ text-overflow: ellipsis;
949
+ max-width: 210px;
950
+ }
951
+ .detail-subtitle {
952
+ margin: 0;
953
+ font-size: 11px;
954
+ color: #64748b;
955
+ line-height: 1.2;
956
+ }
957
+ .status-dot {
958
+ width: 8px;
959
+ height: 8px;
960
+ border-radius: 999px;
961
+ box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.12);
962
+ flex: 0 0 auto;
963
+ }
964
+ .status-dot.online {
965
+ background: #10b981;
966
+ }
967
+ .status-dot.typing {
968
+ background: #f59e0b;
969
+ box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.14);
970
+ }
971
+ .icon-button {
972
+ width: 36px;
973
+ height: 36px;
974
+ display: inline-flex;
975
+ align-items: center;
976
+ justify-content: center;
977
+ border-radius: 12px;
978
+ border: 1px solid rgba(226, 232, 240, 0.95);
979
+ background: rgba(255, 255, 255, 0.9);
980
+ color: #334155;
981
+ cursor: pointer;
982
+ transition:
983
+ transform 0.15s ease,
984
+ box-shadow 0.15s ease,
985
+ background 0.15s ease,
986
+ border-color 0.15s ease;
987
+ box-shadow: 0 1px 0 rgba(0, 0, 0, 0.03);
988
+ }
989
+ .icon-button:hover:not(:disabled) {
990
+ background: #ffffff;
991
+ border-color: rgba(203, 213, 225, 0.95);
992
+ box-shadow: 0 6px 16px rgba(15, 23, 42, 0.08);
993
+ transform: translateY(-0.5px);
994
+ }
995
+ .icon-button:active:not(:disabled) {
996
+ transform: translateY(0);
997
+ box-shadow: 0 2px 10px rgba(15, 23, 42, 0.06);
998
+ }
999
+ .icon-button:disabled {
1000
+ opacity: 0.45;
1001
+ cursor: not-allowed;
1002
+ }
1003
+ .icon-button.danger {
1004
+ color: #dc2626;
1005
+ }
1006
+ .info-list {
1007
+ list-style: none;
1008
+ padding: 0;
1009
+ margin: 0;
1010
+ display: flex;
1011
+ flex-direction: column;
1012
+ gap: 8px;
1013
+ }
1014
+ .info-list li {
1015
+ display: flex;
1016
+ justify-content: space-between;
1017
+ align-items: center;
1018
+ padding: 10px 12px;
1019
+ background: #ffffff;
1020
+ border: 1px solid #e2e8f0;
1021
+ border-radius: 8px;
1022
+ font-size: 12px;
1023
+ }
1024
+ .info-list li span {
1025
+ color: #64748b;
1026
+ }
1027
+ .bottom-nav {
1028
+ display: grid;
1029
+ grid-template-columns: repeat(3, 1fr);
1030
+ background: #ffffff;
1031
+ border-top: 1px solid #e2e8f0;
1032
+ padding: 6px;
1033
+ gap: 6px;
1034
+ }
1035
+ .nav-button {
1036
+ padding: 8px 10px;
1037
+ border: 1px solid transparent;
1038
+ border-radius: 12px;
1039
+ background: #f1f5f9;
1040
+ color: #334155;
1041
+ font-weight: 600;
1042
+ cursor: pointer;
1043
+ transition: all 0.2s ease;
1044
+ font-size: 12px;
1045
+ }
1046
+ .nav-button.active {
1047
+ background:
1048
+ linear-gradient(
1049
+ 135deg,
1050
+ #667eea 0%,
1051
+ #764ba2 100%);
1052
+ color: #ffffff;
1053
+ border-color: transparent;
1054
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
1055
+ }
1056
+ .nav-button:hover {
1057
+ transform: translateY(-0.5px);
1058
+ }
586
1059
  @keyframes spin {
587
1060
  from {
588
1061
  transform: rotate(0deg);