@liguoshuai/pi-web-chat 1.10.2 → 2.0.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/README.md +64 -19
- package/docs/CHANGELOG.md +33 -0
- package/package.json +12 -8
- package/public/app.js +235 -41
- package/public/index.html +3 -3
- package/public/style.css +61 -3
- package/scripts/install-service.sh +0 -0
- package/scripts/uninstall-service.sh +0 -0
- package/server.js +16 -1130
package/public/style.css
CHANGED
|
@@ -895,6 +895,20 @@ body {
|
|
|
895
895
|
.suggestions .chip:hover { border-color: var(--text-dim); color: var(--text); }
|
|
896
896
|
|
|
897
897
|
/* ---------- Composer & Image Upload ---------- */
|
|
898
|
+
.sr-only-file-input {
|
|
899
|
+
position: absolute !important;
|
|
900
|
+
width: 1px !important;
|
|
901
|
+
height: 1px !important;
|
|
902
|
+
padding: 0 !important;
|
|
903
|
+
margin: -1px !important;
|
|
904
|
+
overflow: hidden !important;
|
|
905
|
+
clip: rect(0, 0, 0, 0) !important;
|
|
906
|
+
white-space: nowrap !important;
|
|
907
|
+
border: 0 !important;
|
|
908
|
+
opacity: 0 !important;
|
|
909
|
+
pointer-events: none !important;
|
|
910
|
+
}
|
|
911
|
+
|
|
898
912
|
.composer {
|
|
899
913
|
padding: 12px 24px 20px;
|
|
900
914
|
background: var(--bg);
|
|
@@ -917,6 +931,12 @@ body {
|
|
|
917
931
|
background: #111;
|
|
918
932
|
flex-shrink: 0;
|
|
919
933
|
box-shadow: 0 2px 6px rgba(0,0,0,0.3);
|
|
934
|
+
cursor: pointer;
|
|
935
|
+
transition: transform 0.15s ease, border-color 0.15s ease;
|
|
936
|
+
}
|
|
937
|
+
.image-preview-item:hover {
|
|
938
|
+
transform: translateY(-2px);
|
|
939
|
+
border-color: var(--accent);
|
|
920
940
|
}
|
|
921
941
|
.image-preview-item img {
|
|
922
942
|
width: 100%;
|
|
@@ -941,10 +961,12 @@ body {
|
|
|
941
961
|
font-size: 12px;
|
|
942
962
|
line-height: 1;
|
|
943
963
|
padding: 0;
|
|
944
|
-
transition: background 0.15s;
|
|
964
|
+
transition: background 0.15s, transform 0.1s;
|
|
965
|
+
z-index: 2;
|
|
945
966
|
}
|
|
946
967
|
.image-preview-remove:hover {
|
|
947
968
|
background: var(--danger, #ef4444);
|
|
969
|
+
transform: scale(1.1);
|
|
948
970
|
}
|
|
949
971
|
|
|
950
972
|
.composer-inner {
|
|
@@ -972,12 +994,15 @@ body {
|
|
|
972
994
|
border: none;
|
|
973
995
|
color: var(--text-muted);
|
|
974
996
|
cursor: pointer;
|
|
975
|
-
display: flex;
|
|
997
|
+
display: inline-flex;
|
|
976
998
|
align-items: center;
|
|
977
999
|
justify-content: center;
|
|
978
1000
|
border-radius: 50%;
|
|
979
1001
|
transition: color 0.15s ease, background 0.15s ease, transform 0.1s ease;
|
|
980
1002
|
flex-shrink: 0;
|
|
1003
|
+
-webkit-tap-highlight-color: transparent;
|
|
1004
|
+
touch-action: manipulation;
|
|
1005
|
+
user-select: none;
|
|
981
1006
|
}
|
|
982
1007
|
.composer .attach-btn:hover {
|
|
983
1008
|
color: var(--text);
|
|
@@ -1001,6 +1026,14 @@ body {
|
|
|
1001
1026
|
.composer .send-btn.stop { background: var(--danger); }
|
|
1002
1027
|
.composer .send-btn.stop:hover:not(:disabled) { background: #f87171; }
|
|
1003
1028
|
.composer .send-btn.stop:active:not(:disabled) { transform: scale(0.95); }
|
|
1029
|
+
.composer .send-btn.stop:empty::after {
|
|
1030
|
+
content: "";
|
|
1031
|
+
width: 12px;
|
|
1032
|
+
height: 12px;
|
|
1033
|
+
background: #fff;
|
|
1034
|
+
border-radius: 2px;
|
|
1035
|
+
display: block;
|
|
1036
|
+
}
|
|
1004
1037
|
.composer .steer-btn {
|
|
1005
1038
|
display: inline-flex;
|
|
1006
1039
|
align-items: center;
|
|
@@ -1795,12 +1828,37 @@ body {
|
|
|
1795
1828
|
padding-bottom: max(12px, calc(8px + env(safe-area-inset-bottom, 0px)));
|
|
1796
1829
|
}
|
|
1797
1830
|
|
|
1831
|
+
.image-preview-bar {
|
|
1832
|
+
gap: 8px;
|
|
1833
|
+
margin-bottom: 6px;
|
|
1834
|
+
padding: 2px 4px;
|
|
1835
|
+
}
|
|
1836
|
+
|
|
1837
|
+
.image-preview-item {
|
|
1838
|
+
width: 60px;
|
|
1839
|
+
height: 60px;
|
|
1840
|
+
}
|
|
1841
|
+
|
|
1842
|
+
.image-preview-remove {
|
|
1843
|
+
width: 22px;
|
|
1844
|
+
height: 22px;
|
|
1845
|
+
font-size: 14px;
|
|
1846
|
+
top: 2px;
|
|
1847
|
+
right: 2px;
|
|
1848
|
+
background: rgba(0, 0, 0, 0.85);
|
|
1849
|
+
}
|
|
1850
|
+
|
|
1798
1851
|
.composer-inner {
|
|
1799
|
-
padding: 5px 8px 5px
|
|
1852
|
+
padding: 5px 8px 5px 8px;
|
|
1800
1853
|
border-radius: 22px;
|
|
1801
1854
|
gap: 6px;
|
|
1802
1855
|
}
|
|
1803
1856
|
|
|
1857
|
+
.composer .attach-btn {
|
|
1858
|
+
width: 32px;
|
|
1859
|
+
height: 32px;
|
|
1860
|
+
}
|
|
1861
|
+
|
|
1804
1862
|
.composer textarea {
|
|
1805
1863
|
padding: 6px 0;
|
|
1806
1864
|
font-size: 15px;
|
|
File without changes
|
|
File without changes
|