Commit graph

374 commits

Author SHA1 Message Date
Tulir Asokan
0c8a79fab0 Minor style fix 2019-09-01 21:54:29 +03:00
Tulir Asokan
bb92a26aaf Use remote_avatar/displayname in client selector too 2019-09-01 21:52:58 +03:00
Tulir Asokan
1abd0d4820 Fix device ID generation 2019-09-01 15:16:49 +03:00
Tulir Asokan
1cb2ec5a9b Only show config editor if plugin type has config 2019-09-01 15:15:54 +03:00
Tulir Asokan
6e8bf60050 Merge remote-tracking branch 'Half-Shot/hs/bot-user-type' 2019-09-01 15:08:42 +03:00
Tulir Asokan
bbbb92782f Fix updating instance with sqlalchemy core 2019-09-01 15:07:09 +03:00
Tulir Asokan
b59eab2953 Stop using SQLAlchemy ORM and add colorful logs 2019-09-01 14:46:08 +03:00
Tulir Asokan
33a83e0701 Fix starting syncing when there's no avatar set 2019-08-31 14:55:16 +03:00
Tulir Asokan
811b5877b0 Fix previous commit 2019-08-31 12:44:32 +03:00
Tulir Asokan
c9c8ac08a1 Show avatar and name from server if profile overwriting is disabled 2019-08-31 12:32:25 +03:00
Tulir Asokan
71d0bf0238 New pypi dev build 2019-08-31 12:00:32 +03:00
Tulir Asokan
d5541caf8d Support disabling setting displayname/avatar url 2019-08-31 11:53:30 +03:00
Tulir Asokan
cbe312176d Fix original plugin base config object being mutated when updating config 2019-08-30 01:27:58 +03:00
Tulir Asokan
eb353c4964 Add edit function to MaubotMessageEvent 2019-08-30 01:27:40 +03:00
Will Hunt
9fe7816b49
Ignore user_type for login 2019-08-28 10:03:28 +01:00
Will Hunt
d8c58504c5
Pull user_type from the request 2019-08-28 08:30:06 +01:00
Will Hunt
564cc0bf2c
Register clients with user_type "bot"
Depends on https://github.com/matrix-org/synapse/pull/5902

This means that synapse servers that require consent will not demand it from bot users.
2019-08-28 08:11:33 +01:00
Tulir Asokan
c442ca4d86 Don't show homeserver as selected when one isn't actually selected. Fixes #57 2019-08-11 15:36:24 +03:00
Tulir Asokan
d557a5b02a Add sync state indicator and support for clearing cache 2019-07-21 20:37:32 +03:00
Tulir Asokan
13065451f5 Fix error in client create view 2019-07-21 18:56:05 +03:00
Tulir Asokan
bc700df938 Push recent changes to PyPI 2019-07-21 18:20:18 +03:00
Tulir Asokan
d451a8d669 Use more specific mautrix.client import path 2019-07-21 18:18:22 +03:00
Tulir Asokan
0488058a02 Fix defaultPut suffix parameter 2019-07-16 03:16:37 +03:00
Tulir Asokan
e5e614fc4b Add fancier server selector 2019-07-16 03:12:13 +03:00
Tulir Asokan
924f627c58 Fix web app homepage 2019-07-16 03:11:53 +03:00
Tulir Asokan
8b0bd510f9 Stop requiring super call to activate event handlers in plugin start/stop methods 2019-07-13 15:48:13 +03:00
Tulir Asokan
7e6c51d18f Update frontend dependencies 2019-07-11 01:00:11 +03:00
Tulir Asokan
cd43fcde4b Fix error preventing any bot from syncing 2019-07-09 23:08:28 +03:00
Tulir Asokan
d32a88f3b4 Update mautrix-python version 2019-07-09 19:31:56 +03:00
Tulir Asokan
29631b370f Update frontend packages 2019-06-21 14:47:04 +03:00
Tulir Asokan
12cc0c6672 Update dev version number 2019-06-21 14:45:54 +03:00
Tulir Asokan
72b7e81f97 Change event.react() to use client.react() 2019-06-21 14:40:12 +03:00
Tulir Asokan
d56ec94d34 Add react method to MaubotMessageEvent 2019-06-21 14:19:24 +03:00
Tulir Asokan
7b4d3e8313 Fix bug with default __mb_is_command_match__ impl when using lambda command names 2019-06-20 16:55:55 +03:00
Tulir Asokan
ac3b862f23 Trim reply fallback when fetching single events 2019-06-16 01:33:51 +03:00
Tulir Asokan
8b5eb1849b Pass correct self to command aliases func 2019-06-12 20:58:22 +03:00
Tulir Asokan
c5337f96a3 Add an option in events to make reply() act as respond()
Should be a command handler argument or have some other way of making
it configurable in the future.
2019-06-09 18:22:30 +03:00
Tulir Asokan
4210f3195f Update copyright year 2019-06-08 17:42:07 +03:00
Tulir Asokan
86adf093f1 Use random device IDs when logging in 2019-06-08 17:02:52 +03:00
Tulir Asokan
d5e78db5cf Add Matrix client login/register commands 2019-06-08 17:02:44 +03:00
Tulir Asokan
e565b99826 Pass extra info to argument parsers and add dateparser to temporary dockerfile dependencies 2019-06-08 12:31:38 +03:00
Tulir Asokan
b137d0686f Update version to 0.1.0.dev18 2019-06-01 23:40:46 +03:00
Tulir Asokan
9bd06a3d64 Add web handler decorators 2019-05-14 18:32:48 +03:00
Tulir Asokan
304c1b5536 Make maubot.cli an executable module 2019-05-05 11:14:41 +03:00
Tulir Asokan
a234af1f41 Update dev version 2019-04-20 19:13:41 +03:00
Tulir Asokan
ec6578294f Clear plugin webapp routes in default stop() 2019-04-16 16:33:19 +03:00
Tulir Asokan
05acf08e5b Fix fonts 2019-04-16 16:32:41 +03:00
Perflyst
e28c3a6018 Remove third party CDN's (#50)
* Use local files instead cdn

* Drop legacy fonts

* Drop legacy FiraCode fonts
2019-04-16 00:53:55 +03:00
Tulir Asokan
a0ebb2d215 Change access_token field to text. Fixes #44 2019-04-14 02:14:28 +03:00
Tulir Asokan
8b04231038 Update version 2019-03-27 21:00:00 +02:00
Tulir Asokan
74979aee1a Fix plugin webapp URL cloning 2019-03-08 01:54:28 +02:00
Tulir Asokan
d2b145d0bc Change things 2019-03-07 21:35:35 +02:00
Tulir Asokan
b3e1f1d4bc Try another approach for plugin web apps 2019-03-07 19:57:10 +02:00
Tulir Asokan
3c2d0a9fde Switch to a hacky custom router for plugin web apps 2019-03-06 23:16:22 +02:00
Tulir Asokan
a4cfb97b67 Use less freezing way of adding plugin subapps 2019-03-06 22:57:16 +02:00
Tulir Asokan
19a20721e8 Pass public URL of webapp to plugins 2019-03-06 22:35:51 +02:00
Tulir Asokan
c6287e6626 Fix typo 2019-03-06 22:27:23 +02:00
Tulir Asokan
f303bd66ab Let plugins add their endpoints to the main webserver 2019-03-06 22:22:34 +02:00
Tulir Asokan
79c61d6889 Fix uploading plugins with different versions 2019-03-06 15:35:03 +02:00
Tulir Asokan
2bf1c41b53 Fix __mb_is_command_match__ 2019-02-17 15:57:55 +02:00
Tulir Asokan
c01cf127be Fix blank module handling in mbc build and bump alpine base in dockerfile 2019-02-13 19:40:21 +02:00
Tulir Asokan
56a11fdceb Fix mbc init python template 2019-02-13 18:55:34 +02:00
Tulir Asokan
3068245b1f Fix license in mbc iit 2019-02-13 18:27:46 +02:00
Tulir Asokan
f548e17c80 Fix regex flag args 2019-02-05 12:27:19 +02:00
Tulir Asokan
a57df919f5 Fix passive command matching and add regex flag args 2019-02-05 12:08:21 +02:00
Tulir Asokan
360743f1c9 Add spec for Matrix auth endpoints 2019-02-04 11:38:23 +02:00
Tulir Asokan
8b5c637f76 Fix CommandHandler descriptor 2019-01-18 22:58:43 +02:00
Tulir Asokan
4ea980cb93 Fix typo 2019-01-18 21:31:39 +02:00
Tulir Asokan
b926f1e59d Fix active command handlers for multi-instance plugins 2019-01-18 21:26:04 +02:00
Tulir Asokan
9d38c43576 Fix mistake in __mb_subcommands_list__ 2019-01-15 15:47:30 +02:00
Tulir Asokan
80a35f3081 Update version 2019-01-10 12:14:27 +02:00
Tulir Asokan
c4c7bdc76b Add event type filter to command handling system 2019-01-08 21:17:41 +02:00
Tulir Asokan
1965489f51 Fix message when building plugin 2019-01-07 09:50:59 +02:00
Tulir Asokan
16045d9c63 Fix handling of auth token errors at page load 2019-01-07 09:26:43 +02:00
Tulir Asokan
448cbfc92d Fix frontend log viewer not being enabled correctly 2019-01-07 09:06:46 +02:00
Tulir Asokan
401643afba Add html_in_markdown option to reply() and respond() 2019-01-07 09:06:11 +02:00
Tulir Asokan
400c9aaebc Allow access to /features endpoint without login 2019-01-07 08:13:27 +02:00
Tulir Asokan
a46f756be7 Fix preference table input field shifting when focusing 2018-12-31 22:52:43 +02:00
Tulir Asokan
75b5ac8ebd Add config option to disable parts of management API 2018-12-30 19:50:50 +02:00
Tulir Asokan
147081c0db Add contextmenu in database explorer and implement deleting rows 2018-12-29 15:22:12 +02:00
Tulir Asokan
46186452dc Add option to write SQL queries in database explorer 2018-12-28 22:33:27 +02:00
Tulir Asokan
88107daa6f Fix exploring datetime columns 2018-12-28 19:31:43 +02:00
Tulir Asokan
4cc605df76 Finish basic database viewing 2018-12-28 19:19:58 +02:00
Tulir Asokan
dc22f35d08 Add beginning of database explorer 2018-12-27 21:31:32 +02:00
Tulir Asokan
88c2f9d463 Add support for command aliases and dynamic command names 2018-12-26 18:38:56 +02:00
Tulir Asokan
2b54aee413 Merge branch 'master' into rewrite-command-handling 2018-12-25 00:47:49 +02:00
Tulir Asokan
0cf06f9f6b Make new command handling system fully work 2018-12-25 00:37:02 +02:00
Tulir Asokan
5ff5eae3c6 Make new command handling actually somewhat work 2018-12-24 00:31:01 +02:00
Tulir Asokan
682eab348d Some sort of command handling system 2018-12-18 00:53:39 +02:00
Tulir Asokan
bddb881945 Allow choosing server to upload built plugin to 2018-12-17 21:09:08 +02:00
Tulir Asokan
7cd5b04dbc Fix building plugins to file 2018-12-17 20:55:29 +02:00
Tulir Asokan
f104595217 Changes related to rewriting the command handling system 2018-12-16 00:52:54 +02:00
Tulir Asokan
69de2c9d85 Bump dev version number 2018-12-14 00:50:05 +02:00
Tulir Asokan
160dd6c534 Print exception stack traces in cli log viewer 2018-12-14 00:40:35 +02:00
Tulir Asokan
6f06eec3cc Add log viewer to mbc 2018-12-14 00:33:33 +02:00
Tulir Asokan
ecc1843119 Remove unused imports 2018-12-13 23:36:04 +02:00
Tulir Asokan
ee04cc59a2 Create license file when initializing project 2018-12-13 23:21:56 +02:00
Tulir Asokan
adc762b9dd Show any errors when logging in 2018-12-13 22:36:47 +02:00
Tulir Asokan
66aef1978c Fix accidentally changed variable name 2018-12-13 22:14:06 +02:00
Tulir Asokan
cb3993d79f Implement uploading plugins 2018-12-13 20:48:52 +02:00
Tulir Asokan
c334afd38b Implement building plugins 2018-12-13 19:47:41 +02:00
Tulir Asokan
54e117c9e7 Rename clickquiry to cliq and remove util package 2018-12-13 19:14:33 +02:00
Tulir Asokan
1bc51d2de5 Fix inquiring flags 2018-12-13 19:09:02 +02:00
Tulir Asokan
7816212190 Add more stuff 2018-12-13 18:15:24 +02:00
Tulir Asokan
8e2f2908a6 Add stuff 2018-12-13 01:28:23 +02:00
Tulir Asokan
4b3d47176d Merge branch 'master' into cli 2018-12-12 16:07:45 +02:00
Tulir Asokan
03cd8663b8 Fix logo path 2018-12-12 15:22:07 +02:00
Tulir Asokan
1552964d3f Try reloading failed instance dependencies when starting instance 2018-12-12 15:21:17 +02:00
Tulir Asokan
07fe46e7f9 Switch to yaml for plugin metadata. Fixes #33 2018-12-09 15:49:57 +02:00
Tulir Asokan
5704b3e53b Don't reset editor state if props didn't change. Fixes #34 2018-12-09 14:59:00 +02:00
Tulir Asokan
f5b996d2a2 Move view logs button to sidebar 2018-12-08 20:43:44 +02:00
Tulir Asokan
8824c21788 Add spec for Matrix API proxy 2018-12-08 20:41:11 +02:00
Tulir Asokan
5775560933 Actually fix login 2018-12-08 14:12:33 +02:00
Tulir Asokan
67a4e85406 Fix logging in 2018-12-08 13:57:04 +02:00
Tulir Asokan
d09dd8ddc6 Highlight edited fields 2018-12-08 13:29:53 +02:00
Tulir Asokan
4f7eef6029 Fix uploading and downloading avatars 2018-12-08 13:07:12 +02:00
Tulir Asokan
4f723b24da Update version 2018-12-08 01:37:32 +02:00
Tulir Asokan
332ad5ea52 Add Matrix register/login API and full Matrix API proxy
(ref #19, #15)
2018-12-08 01:14:10 +02:00
Tulir Asokan
5337d4d98e Link to debug file open in log line timestamp 2018-12-05 17:37:31 +02:00
Tulir Asokan
2d66ec2534 Add missing __init__.py's 2018-12-05 16:43:12 +02:00
Tulir Asokan
c2065a4af7 Fix mautrix dep version 2018-12-05 16:38:13 +02:00
Tulir Asokan
3362e8e118 Remove unnecessary padding in log view 2018-11-29 13:12:24 +02:00
Tulir Asokan
9f593ed04e Show date when hovering over time in log 2018-11-29 12:32:36 +02:00
Tulir Asokan
30a6dd62ef Don't try to remove websocket from log listeners if it had not been added 2018-11-29 12:28:23 +02:00
Tulir Asokan
2b8a5353be Fix log live updating and add autoscrolling 2018-11-29 12:27:31 +02:00
Tulir Asokan
b858b5a056 Add spec for /logs and /debug/open endpoints 2018-11-29 11:43:57 +02:00
Tulir Asokan
8fc5350644 Remove unused import 2018-11-29 11:43:41 +02:00
Tulir Asokan
c3dbf9685d Fix clearing log focus 2018-11-29 01:06:58 +02:00
Tulir Asokan
32b60fa0ff Overhaul log viewer
* Move viewer to separate modal to allow using more horizontal space
* Load log history (up to 2048 lines)
* Add colors and use table styling for log viewer
* Add links to log entries that open mentioned instance/client or line in code
2018-11-29 00:58:20 +02:00
Tulir Asokan
aac99b7ee4 Update version 2018-11-28 15:34:21 +02:00
Tulir Asokan
c39cacbab4 Switch to Python-Markdown
Commonmark doesn't have any built-in HTML sanitization
2018-11-28 15:28:35 +02:00
Tulir Asokan
6a6e8a818e Simplify Event.reply and add MaubotMatrixClient.send_markdown 2018-11-28 02:33:59 +02:00
Tulir Asokan
8cfe2e8884 "Fix" file upload accept list 2018-11-28 02:33:37 +02:00
Tulir Asokan
73e86ebb17 Hide config in new instances and add exceptions to log 2018-11-27 02:35:51 +02:00
Tulir Asokan
034eead840 Reload plugin metadata when reloading plugin 2018-11-17 01:11:12 +02:00
Tulir Asokan
52811681f4 Fix new plugin/instance/client pages 2018-11-14 00:06:17 +02:00
Tulir Asokan
a3dea42b1a Show log level in filtered logs 2018-11-12 00:17:31 +02:00
Tulir Asokan
08eacce0a9 Fix log map entry for instances and plugins 2018-11-12 00:14:45 +02:00
Tulir Asokan
d5cb73898f Update version 2018-11-12 00:04:11 +02:00
Tulir Asokan
c2a5451401 Finish basic log viewer 2018-11-12 00:00:37 +02:00
Tulir Asokan
6f2162d5f3 Add some backup checks when stopping maubot 2018-11-11 21:20:50 +02:00
Tulir Asokan
20a9ca6aa6 Make both instance dropdowns behave the same way 2018-11-11 20:24:59 +02:00
Tulir Asokan
5c5b3568cd Add animations to sidebar toggling 2018-11-11 20:21:51 +02:00
Tulir Asokan
91cdfc9378 Fix websockets in dev server proxy 2018-11-11 20:10:48 +02:00
Tulir Asokan
303a9827a1 Add log websocket 2018-11-11 19:27:09 +02:00
Tulir Asokan
b52766ab1e Fix minor things in management API 2018-11-11 16:06:06 +02:00
Tulir Asokan
640caa2f2e Fix double slash in API paths 2018-11-11 00:59:13 +02:00
Tulir Asokan
e0306d29b5 Make maubot http server serve frontend for production 2018-11-11 00:43:58 +02:00
Tulir Asokan
0264f7b794 Hide unnecessary scrollbars 2018-11-10 23:46:37 +02:00
Tulir Asokan
3a36b862df Add mobile compatibility to management UI 2018-11-10 23:29:31 +02:00
Tulir Asokan
9603f59b96 Fix bugs and improve minor UI things 2018-11-10 22:16:34 +02:00
Tulir Asokan
bc97df7de8 Remove code duplication and add better 404 handler 2018-11-10 20:50:09 +02:00
Tulir Asokan
f97b39f4e3 Add plugin view 2018-11-10 19:58:28 +02:00
Tulir Asokan
5220d2e5c9 Improve design of management UI 2018-11-10 19:22:04 +02:00
Tulir Asokan
15db7b95c3 Add config editor to instance view 2018-11-10 16:47:18 +02:00
Tulir Asokan
b0d782906b Implement instance view 2018-11-10 16:33:12 +02:00
Tulir Asokan
0a406ac071 Change more things 2018-11-10 13:49:54 +02:00
Tulir Asokan
53d2264351 Proxy avatar requests through server and improve css 2018-11-10 12:57:06 +02:00
Tulir Asokan
2aac4fbee1 Change things 2018-11-10 01:43:37 +02:00
Tulir Asokan
641ae49376 Add client delete button and fix minor things 2018-11-10 00:03:36 +02:00
Tulir Asokan
29adf50ae0 Finish initial client main view 2018-11-09 20:03:26 +02:00
Tulir Asokan
ef3f4a20f2 Add endpoint to upload avatars 2018-11-09 20:03:08 +02:00
Tulir Asokan
ed16ee8860 Add initial parts of client view 2018-11-09 00:54:42 +02:00
Tulir Asokan
3e661aa887 New <thing> buttons in sidebar 2018-11-08 17:25:22 +02:00
Tulir Asokan
9a21c6ade8 Add endpoint to replace specific plugin 2018-11-08 17:25:00 +02:00
Tulir Asokan
2ba1f46149 Reorganize things, add sidebar and topbar 2018-11-08 01:02:46 +02:00
Tulir Asokan
f3a0b7bc4f Implement login 2018-11-06 23:27:17 +02:00
Tulir Asokan
8cd8f52566 Base frontend stuff and login view 2018-11-04 22:55:58 +02:00
Tulir Asokan
2736a1f47f Fix reusing management API responses and some other things 2018-11-02 18:45:07 +02:00
Tulir Asokan
ec22e5eba7 Add /auth/ping and prepare for frontend dev 2018-11-02 15:16:30 +02:00
Tulir Asokan
a584cba794 Return config with instances in management API 2018-11-02 12:27:49 +02:00
Tulir Asokan
982623b677 Fix patching instances 2018-11-02 00:53:43 +02:00
Tulir Asokan
f5886ed34b Fix creating clients 2018-11-02 00:45:01 +02:00
Tulir Asokan
1e37a56096 Update version 2018-11-02 00:09:42 +02:00
Tulir Asokan
8b97134efd Update spec and fix minor problems in implementation 2018-11-01 23:57:24 +02:00
Tulir Asokan
383c9ce5ec Implement client API 2018-11-01 23:31:30 +02:00
Tulir Asokan
bc87b2a02b Refactor things and implement instance API 2018-11-01 18:11:54 +02:00
Tulir Asokan
cbeff0c0cb Add created at timestamp to tokens for future-proofing 2018-11-01 12:59:22 +02:00
Tulir Asokan
e48cd26cb0 Fix docker-run and login endpoint 2018-11-01 12:56:24 +02:00
Tulir Asokan
28d7731e70 Fix bugs in init and plugin upload filenames 2018-11-01 12:28:56 +02:00
Tulir Asokan
767885cec7 Pass asyncio event loop and http session to plugin instances 2018-11-01 11:58:58 +02:00
Tulir Asokan
9e066478a9 Refactor how plugins are started and update spec 2018-11-01 01:51:54 +02:00
Tulir Asokan
b96d6e6a94 Remove command_spec table 2018-10-31 22:55:43 +02:00
Tulir Asokan
4b7c38ca2a Add clients and instances API stubs 2018-10-31 22:41:00 +02:00
Tulir Asokan
057ccc1914 Refactor management API impl 2018-10-31 22:28:13 +02:00
Tulir Asokan
c7d16a5d46 Update management spec 2018-10-31 22:27:59 +02:00
Tulir Asokan
14fd0d6ac9 Finish plugin API and add basic login system 2018-10-31 02:03:38 +02:00
Tulir Asokan
d7f072aeff Even more plugin API stuff 2018-10-31 00:27:50 +02:00
Tulir Asokan
0148f74d90 Merge branch 'master' into management 2018-10-30 21:44:53 +02:00
Tulir Asokan
26c4fae464 Update version 2018-10-30 21:42:21 +02:00
Tulir Asokan
a2ba9b245e Update mautrix.util imports 2018-10-30 21:40:41 +02:00
Tulir Asokan
91f804d4cf Allow commands for all non-notice message types 2018-10-30 21:29:58 +02:00
Tulir Asokan
d5353430a8 More plugin API stuff 2018-10-30 00:50:45 +02:00
Tulir Asokan
44aba396b7 Random changes slightly related to a maubot plugin packager cli program 2018-10-29 17:47:49 +02:00
Tulir Asokan
f2449e2eba Start working on management API implementation 2018-10-28 01:31:03 +03:00
Tulir Asokan
aefdcd9447 Fix minor things in management API spec 2018-10-27 19:58:35 +03:00
Tulir Asokan
6001b66044 Add initial management API spec 2018-10-27 14:21:07 +03:00
Tulir Asokan
283863c390 Add frontend stub 2018-10-26 00:21:00 +03:00
Tulir Asokan
038fbc43f1 Add automatic sqlalchemy commit 2018-10-22 02:01:06 +03:00
Tulir Asokan
894c5df07b Fix config updating and make plugin dbs somewhat configurable 2018-10-22 01:57:37 +03:00