File tree Expand file tree Collapse file tree 4 files changed +11
-10
lines changed Expand file tree Collapse file tree 4 files changed +11
-10
lines changed Original file line number Diff line number Diff line change 1
- __version__ = "0.11.0 "
1
+ __version__ = "0.11.1 "
2
2
3
3
import re
4
4
HEX_COLOR_REGEX = re .compile (r"^[A-Fa-f0-9]{6}$" )
Original file line number Diff line number Diff line change @@ -28,7 +28,7 @@ class IllegalURL(Exception):
28
28
@app .get ("/api/fwd/{public_url:str}" , response_model = None )
29
29
async def forward_image (public_url : str ) -> Response | JSONResponse :
30
30
try :
31
- new_url = f"https://{ base64 .b64decode (public_url , validate = True ).decode ('ascii' ).rstrip ('/' )} "
31
+ new_url = f"https://{ base64 .b64decode (public_url . replace ( '_' , '/' ) , validate = True ).decode ('ascii' ).rstrip ('/' )} "
32
32
if FORWARD_DOMAIN and FORWARD_DOMAIN in new_url :
33
33
raise IllegalURL
34
34
Original file line number Diff line number Diff line change @@ -114,7 +114,7 @@ const FILE_HANDLER = new FileHandler();
114
114
const image = dom . querySelector ( "img" ) ;
115
115
if ( image ) {
116
116
classlist += " padded" ;
117
- image . src = `http${ connection . protocol } ://${ address } /api/fwd/${ btoa ( image . src . slice ( 8 ) ) } ` ;
117
+ image . src = `http${ connection . protocol } ://${ address } /api/fwd/${ btoa ( image . src . slice ( 8 ) ) . replace ( / \/ / , "_" ) } ` ;
118
118
attachment = dom . body . innerHTML ;
119
119
} ;
120
120
} ;
@@ -164,9 +164,12 @@ const FILE_HANDLER = new FileHandler();
164
164
handle_member : ( event_type , member ) => {
165
165
const member_list = document . querySelector ( ".member-list" ) ;
166
166
const existing_member = document . querySelector ( `[data-member = "${ member . name } "]` ) ;
167
+
168
+ const update = ( ) => member_list . querySelector ( "p" ) . innerText = `Members ─ ${ member_list . querySelectorAll ( "& > span" ) . length } ` ;
169
+
167
170
if ( event_type === "leave" ) {
168
171
if ( existing_member ) existing_member . remove ( ) ;
169
- return ;
172
+ return update ( ) ;
170
173
}
171
174
if ( existing_member ) return ;
172
175
@@ -175,9 +178,7 @@ const FILE_HANDLER = new FileHandler();
175
178
element . innerHTML = `→ <span style = "color: #${ member . hex } ">${ member . name } </span>` ;
176
179
element . setAttribute ( "data-member" , member . name ) ;
177
180
member_list . appendChild ( element ) ;
178
-
179
- // Update member count
180
- member_list . querySelector ( "p" ) . innerText = `Members ─ ${ member_list . querySelectorAll ( "& > span" ) . length } ` ;
181
+ update ( ) ;
181
182
}
182
183
}
183
184
) ;
Original file line number Diff line number Diff line change @@ -25,20 +25,20 @@ classifiers = [
25
25
]
26
26
dependencies = [
27
27
" emoji>=2.14.0" ,
28
- " fastapi>=0.115.5" ,
29
28
" nanoid>=2.0.0" ,
30
29
" orjson>=3.10.11" ,
31
- " python-multipart>=0.0.17" ,
32
30
" readchar>=4.2.1" ,
33
31
" requests>=2.32.3" ,
34
32
" urwid>=2.6.16" ,
35
- " uvicorn[standard]>=0.32.1" ,
36
33
" websockets>=14.1" ,
37
34
]
38
35
39
36
[project .optional-dependencies ]
40
37
serve = [
38
+ " fastapi>=0.115.5" ,
41
39
" pydantic>=2.9.2" ,
40
+ " python-multipart>=0.0.17" ,
41
+ " uvicorn[standard]>=0.32.1" ,
42
42
]
43
43
44
44
[project .urls ]
You can’t perform that action at this time.
0 commit comments