Commit graph

305 commits

Author SHA1 Message Date
Travis Ralston c9bb3aba37 Add a dark theme
Fixes https://github.com/turt2live/matrix-dimension/issues/153
2018-10-22 00:41:35 -06:00
Travis Ralston 52708afa7c Add Spotify widget
Fixes https://github.com/turt2live/matrix-dimension/issues/133
2018-10-21 17:00:10 -06:00
Travis Ralston ea834d826a Add TradingView widget
Fixes https://github.com/turt2live/matrix-dimension/issues/132
2018-10-21 16:26:57 -06:00
Travis Ralston 9bdba2d474 Add Grafana widget
Fixes https://github.com/turt2live/matrix-dimension/issues/86
2018-10-21 15:17:21 -06:00
Travis Ralston 1f5ca1f01b Add Gitter to the promo page 2018-10-21 14:32:00 -06:00
Travis Ralston edbbd3b8c0 Add the frontend for Gitter bridging
Fixes https://github.com/turt2live/matrix-dimension/issues/4
Fixes https://github.com/turt2live/matrix-dimension/issues/7
2018-10-21 14:20:37 -06:00
Travis Ralston 2e844a707f Add admin section for Gitter bridge configuration 2018-10-21 13:22:55 -06:00
Travis Ralston 5d8857381a Add backend support for self-hosted and matrix.org gitter bridges 2018-10-21 13:00:58 -06:00
Travis Ralston ef22391743 Move 'Made for Matrix' to the footer; Promote stickers; 2018-10-20 23:55:24 -06:00
Travis Ralston 0b460b9423 New UI for the splash page 2018-10-20 23:04:25 -06:00
Travis Ralston b8a01cc848 Support the webhooks bridge in private rooms 2018-10-20 18:57:54 -06:00
Travis Ralston 3823788cc2 Add the frontend for self-service of webhooks 2018-10-20 18:33:01 -06:00
Travis Ralston 7b5285cd57 Add the admin section for the webhooks bridge 2018-10-20 14:07:30 -06:00
Travis Ralston a0467c46e2 Merge branch 'master' into travis/telegram 2018-10-17 22:13:36 -06:00
Travis Ralston 235d8051fe Package updates 2018-10-17 22:11:40 -06:00
Travis Ralston c5e887bfd0 Linting 2018-10-17 21:51:18 -06:00
Travis Ralston 83c06c8591 Warn the user when they try to bridge chats that are already bridged 2018-10-17 21:37:29 -06:00
Travis Ralston c0936745c0 Frontend interface for basic bridging and unbridging of chats
Requires https://github.com/tulir/mautrix-telegram/pull/235

Puppeting is scheduled to be handled in https://github.com/turt2live/matrix-dimension/issues/214

The TODO comments about asking for unbridge/permission denied will be handled in a later commit.
2018-10-17 21:09:19 -06:00
Travis Ralston b7ba9d2c8d Add a log statement when a toWidget request comes in 2018-10-17 19:53:46 -06:00
Andrew Morgan c811b273dd Jitsi widget supports audio toggling programmatically 2018-10-18 01:46:29 +02:00
ImgBotApp 532bf6747a
[ImgBot] optimizes images
*Total -- 162.56kb -> 132.63kb (18.41%)

/web/public/img/infrastructure.png -- 13.02kb -> 4.94kb (62.07%)
/web/public/img/avatars/github.png -- 4.73kb -> 2.62kb (44.71%)
/web/public/img/avatars/circleci.png -- 4.38kb -> 2.43kb (44.48%)
/web/public/img/avatars/twitch.png -- 3.76kb -> 2.12kb (43.61%)
/web/public/img/avatars/irc.png -- 3.56kb -> 2.11kb (40.88%)
/web/public/img/logo/banner-sm.png -- 3.55kb -> 2.37kb (33.34%)
/web/public/img/avatars/rssbot.png -- 5.63kb -> 4.33kb (23.1%)
/web/public/img/avatars/youtube.png -- 3.61kb -> 2.82kb (21.98%)
/web/public/img/avatars/echo.png -- 4.40kb -> 3.45kb (21.57%)
/web/public/img/avatars/etherpad.png -- 6.90kb -> 5.46kb (20.93%)
/web/public/img/avatars/jira.png -- 4.10kb -> 3.25kb (20.82%)
/web/public/img/avatars/imgur.png -- 3.44kb -> 2.76kb (19.85%)
/web/public/img/avatars/customwidget.png -- 10.98kb -> 9.85kb (10.26%)
/web/public/img/logo/favicon/android-chrome-512x512.png -- 7.42kb -> 6.69kb (9.8%)
/web/public/img/avatars/google.png -- 5.70kb -> 5.19kb (9.04%)
/web/public/img/avatars/travisci.png -- 19.72kb -> 18.21kb (7.68%)
/web/public/img/avatars/wikipedia.png -- 19.33kb -> 17.86kb (7.6%)
/web/public/img/avatars/jitsi.png -- 9.18kb -> 8.54kb (7.04%)
/web/public/img/avatars/guggy.png -- 8.89kb -> 8.30kb (6.57%)
/web/public/img/avatars/giphy.png -- 3.18kb -> 2.98kb (6.39%)
/web/public/img/avatars/googlecalendar.png -- 5.44kb -> 5.16kb (5.08%)
/web/public/img/avatars/googledocs.png -- 5.07kb -> 4.82kb (4.97%)
/web/public/img/logo/favicon/mstile-150x150.png -- 2.06kb -> 1.98kb (3.85%)
/web/public/img/logo/favicon/android-chrome-192x192.png -- 2.33kb -> 2.26kb (3.02%)
/web/public/img/logo/favicon/apple-touch-icon.png -- 2.17kb -> 2.16kb (0.81%)
2018-10-09 05:20:10 +00:00
Travis Ralston 242ad3bf3a Admin interface for managing Telegram bridges
Currently only one bridge is supported at a time, however in the future we may wish to load balance between bridges or something.
2018-09-16 02:26:10 -06:00
Travis Ralston 6b21ac4443 Support always on screen Jitsi widgets
Fixes #202
2018-07-30 21:55:57 -06:00
Travis Ralston a706f29f44 Document Riot 0.16's new config.json parameter 2018-07-30 21:55:27 -06:00
Travis Ralston 339f6a7c60 Fix background color on jitsi widget 2018-07-30 21:53:56 -06:00
Travis Ralston 7f446c7b9c Move the author information to below the pack name 2018-06-17 12:10:58 -06:00
Travis Ralston 31c565abc9 Make sure the auth error message is shown 2018-05-20 18:25:37 -06:00
Travis Ralston a249d6dd68 Revert "Change the authorization flow for the sticker picker"
This reverts commit f28f817ca2.
2018-05-20 18:24:24 -06:00
Travis Ralston 11772f54e7 Make the app blend in less with the Riot light theme
Fixes #188.
2018-05-20 18:16:13 -06:00
Travis Ralston f468226148 Add target=_blank to licenses in the sticker picker
Fixes #187
2018-05-20 17:44:20 -06:00
Travis Ralston d750530a2e Add a temporary notice that there's no sticker packs
This obviously needs improving, and CSS. This will work for now though. Part of #186
2018-05-20 17:43:09 -06:00
Travis Ralston f28f817ca2 Change the authorization flow for the sticker picker
This probably still needs to be reviewed though.
2018-05-20 17:41:06 -06:00
Travis Ralston 6c4e8f75d4 Add a sticker picker
The useful bit for sending stickers. Implements the rest of #156
2018-05-13 22:32:13 -06:00
Travis Ralston d2c672cf00 Add a hint as to how to get to your sticker packs from the landing page
Part of #156
2018-05-12 23:51:58 -06:00
Travis Ralston 7a0af05ac4 Sticker pack selection (without widget)
This is the UI where the user can pick which stickers they want. This does not add the widget yet though.

Helps towards #156
2018-05-12 23:51:31 -06:00
Travis Ralston e8274c9d87 Sticker pack administration
The first step towards #156
2018-05-12 21:55:02 -06:00
Travis Ralston e2ed9a8839 Move capabilities to their own class 2018-05-12 16:46:08 -06:00
Travis Ralston afd9d6f6c1 Send the raw payload over postMessage
Blobs don't covert to JSON very nicely.
2018-05-12 15:58:23 -06:00
Travis Ralston 17656e8cf7 Implement basic postMessage widget API components
This implements a 'screenshot' button on the generic widget wrapper, although there's several bugs with the current Riot implementation that prevent it from working and that is why it is commented out.

Fixes #155. Even if it doesn't work.
2018-05-11 21:58:10 -06:00
Travis Ralston 25716ac54f Improve wording on the home page 2018-04-01 10:22:22 -06:00
Travis Ralston b47693561f Fix the colspan for go-neb and the IRC bridge tables 2018-03-31 22:10:28 -06:00
Travis Ralston e490007cec Update the profile for self-hosted go-neb instances
Fixes #166
2018-03-31 22:01:23 -06:00
Travis Ralston ca8c6b1d95 Prevent unauthorized people from editing integrations 2018-03-31 16:47:30 -06:00
Travis Ralston a6dae219a5 Add the missing "embed-ability" api for widgets 2018-03-31 16:38:55 -06:00
Travis Ralston 9a8041ea38 Self-service removal of channel links 2018-03-31 15:48:20 -06:00
Travis Ralston f33f7e5716 Self-service requests to bridge IRC channels 2018-03-31 14:37:36 -06:00
Travis Ralston 1e437a2f8b Add ability to add self-hosted IRC bridges 2018-03-31 11:45:19 -06:00
Travis Ralston aa8ec0ed58 API and UI for toggling IRC networks 2018-03-31 11:26:00 -06:00
Travis Ralston 61ca805b19 Initial admin APIs for managing IRC bridges
Missing functionality:
* Toggle networks
* Add self-hosted
2018-03-30 23:12:31 -06:00
Travis Ralston 76931819af Add the shell for configuring IRC bridges 2018-03-30 19:22:15 -06:00
Travis Ralston 4365cb0753 Support Travis CI completely
Webhooks are generated eagerly but have lazily set targets so that we can give the user a webhook URL to set in their config. go-neb (upstream & standalone) doesn't give a webhook URL until after the repositories are configured.

Fixes #16
2018-03-30 14:59:25 -06:00
Travis Ralston 606b6d9f56 Front end for travis-ci self-service management
TODO:
* Backend (needs research)
* Webhook URL (probably proxy this)
2018-03-28 22:18:33 -06:00
Travis Ralston 18597db540 Add self-service configuration for the RSS bot
Fixes #14
2018-03-26 21:48:44 -06:00
Travis Ralston 2c1366d9d7 Very early support for configuring complex bots
Using the RSS Bot as an example. Notably missing features:
* Configuration (feeds) not retrieved
* No actual configuration page
2018-03-25 21:02:32 -06:00
Travis Ralston b5aec06c04 Add a dialog for configuring simple bots 2018-03-25 19:17:09 -06:00
Travis Ralston 87121150cc Support removing simple bots from rooms 2018-03-25 16:20:15 -06:00
Travis Ralston 017f5e00cd Appease the linter 2018-03-25 13:21:53 -06:00
Travis Ralston 009b510779 Special case each integration, forcing simple bots to go through an NebProxy
This is so the different needs of each can be accounted for. For example, widgets are fairly unrestricted, so nothing really needs to prevent them. Bots on the other hand require an upstream token otherwise we can't get the bot IDs from Modular.
2018-03-25 13:13:50 -06:00
Travis Ralston 04bfccc95f Consider the lack of membership event as not being in the room 2018-03-25 13:12:00 -06:00
Travis Ralston d4166477f0 Add a log statement to identify Dimension in Riot's logs 2018-03-25 13:11:41 -06:00
Travis Ralston 947ecd43cd Early support for managing bots in the room
Known drawbacks:
* Cannot remove bots
* Cannot use upstream neb instances
2018-03-25 00:45:57 -06:00
Travis Ralston a5173fff85 Remove wikipedia from the list of bots with a configuration screen
Wikipedia doesn't have any additional configuration in go-neb
2018-03-24 21:57:14 -06:00
Travis Ralston 6b4f33de24 Add the configuration screen for Imgur 2018-03-24 21:55:35 -06:00
Travis Ralston 0ccd0cbb81 Add the configuration screen for Google 2018-03-24 21:50:30 -06:00
Travis Ralston d00058cbff Add the configuration screen for Guggy 2018-03-24 21:44:05 -06:00
Travis Ralston 21aba80f54 Add the configuration screen for Giphy 2018-03-24 21:17:44 -06:00
Travis Ralston 18a2d63b6f Update the infrastructure diagram 2018-03-24 20:03:20 -06:00
Travis Ralston 03f71a6b0f Update the homepage and branding 2018-03-24 19:58:01 -06:00
Travis Ralston 0d520a763f Update webapp to match naming angular naming conventions 2018-03-24 17:16:52 -06:00
Travis Ralston 8cdae3359d Support explicit setting of the federation/client URLs
The client/server URL is needed for go-neb to work correctly, and to remove our complete dependence on federation.

The federation URL is also configurable so servers that don't wish to federate can specify a local address.
2018-03-24 17:09:34 -06:00
Travis Ralston 58f8ca8335 Support provisioning bots in go-neb
This is so far only possible for the bots that don't require additional configuration in go-neb.
2018-03-24 14:54:12 -06:00
Travis Ralston 51810cce8f Fix not being able to edit go-neb instances
The linter required us to use === later on, but this breaks the navigation. We now cast the parameter.
2018-03-24 12:19:29 -06:00
Travis Ralston 62d81ed842 Show the appservice configuration after saving; Make the show config button work
Includes the ability to 'test' the appservice. This doesn't bother checking if the URL is set up correctly because we don't actually care about the transactions.
2018-03-24 12:18:38 -06:00
Travis Ralston 656d208059 Minor styling improvements for widget configuration pages 2018-03-23 22:13:15 -06:00
Travis Ralston fa7fb651c0 Bring the ibox chevron in a little bit, and always display it as a down arrow 2018-03-23 22:12:59 -06:00
Travis Ralston 2e5530179b Add some animation to the iboxes 2018-03-23 22:12:34 -06:00
Travis Ralston 73acbb586f Update linting to include the web project as well 2018-03-23 21:29:48 -06:00
Travis Ralston 51740308a2 Fix a bug where all bots are considered handled 2018-03-23 20:15:59 -06:00
Travis Ralston 42315de8df List the enabled bots on the go-neb page 2018-03-23 20:15:51 -06:00
Travis Ralston 51ea270fba Adjust the widget configuration button alignment to be better aligned
Using `top` was really just a hack
2018-03-23 20:15:29 -06:00
Travis Ralston b8591b51e4 Fix the edit button alignment on the self-hosted bot configuration 2018-03-23 20:15:03 -06:00
Travis Ralston 9a62b34fb7 Fix type parameters coming from parsed URLs 2018-03-22 12:55:50 -06:00
Travis Ralston 74054c3962 Add ability to create self-hosted go-neb instances
They can't be provisioned or configured correctly yet, but they exist.
2018-01-31 16:30:08 -07:00
Travis Ralston 8b3f6e37ce Support configuring the upstream go-neb bots 2017-12-28 18:22:50 -07:00
Travis Ralston 0a6c8b7037 Start of support for go-neb via appservices 2017-12-24 02:03:02 -07:00
Travis Ralston 3f694c2b28 Admin section for enabling, disabling, and configuring widgets 2017-12-23 21:44:04 -07:00
Travis Ralston 441bef5606 Add a landing page of sorts to the admin section 2017-12-23 19:46:07 -07:00
Travis Ralston 3f0f816007 Start of an admin section 2017-12-23 18:47:41 -07:00
Travis Ralston ffdb09d028 Update homepage and branding 2017-12-23 16:20:59 -07:00
Travis Ralston 941524f43c Add video widgets 2017-12-23 15:30:57 -07:00
Travis Ralston 2bf7841290 Add twitch livestreams 2017-12-23 15:03:24 -07:00
Travis Ralston a72177b530 Add jitsi widgets 2017-12-23 14:16:22 -07:00
Travis Ralston 41c887f390 Add google docs configuration 2017-12-23 13:44:19 -07:00
Travis Ralston 2fbd655c46 Add google calendar configuration 2017-12-23 13:32:07 -07:00
Travis Ralston 00b7ddcc1a Fix auto-expanding the edit screen for widgets 2017-12-23 13:17:29 -07:00
Travis Ralston fce6f2174a Add etherpad widget configuration 2017-12-23 13:16:05 -07:00
Travis Ralston 7fd674a8ff Remove legacy configurations for now 2017-12-23 13:15:54 -07:00
Travis Ralston 111423cc7d Move widget configuration template out to its own component 2017-12-22 23:30:42 -07:00
Travis Ralston 1407718999 Upgrade to font awesome 5 (free) 2017-12-22 23:19:30 -07:00
Travis Ralston faeea3b3a5 Appease the linter some more 2017-12-22 22:17:09 -07:00
Travis Ralston 290e244a4e Actually remove widgets when requested 2017-12-22 22:02:52 -07:00
Travis Ralston c95ab2bbb2 Use templating for the edit/add views 2017-12-22 21:52:32 -07:00
Travis Ralston 0b63c8eb85 Make the whole box title clickable 2017-12-22 21:44:21 -07:00
Travis Ralston 63a3b6b4c2 Fix edit widget button 2017-12-22 21:42:43 -07:00
Travis Ralston dd02c6df2c Custom widget edit screen 2017-12-22 21:33:37 -07:00
Travis Ralston 6740571183 Prepare UI for editing of integrations 2017-12-22 21:11:27 -07:00
Travis Ralston fac404e16f Custom widgets are custom now 2017-12-20 21:47:35 -07:00
Travis Ralston 26530b1bec Use FA close icon 2017-12-20 21:39:06 -07:00
Travis Ralston 4965b61f2d Re-wire the UI to support the new backend
This still doesn't allow editing, but it supports showing the widgets at least.
2017-12-20 21:28:43 -07:00
Travis Ralston 826364e803 Re-implement the Scalar API in typescript
This is part of a rewrite for Dimension to better support integrations. Only the bare minimum scalar APIs are implemented at this point - dimension is non-functional.
2017-12-17 19:22:13 -07:00
Travis Ralston 7a8b27fa22 Update icons
The new custom widget icon is safe to use in a commercial setting. Licensed under the repo's license.
2017-12-15 22:35:57 -07:00
Travis Ralston 3a517be0c1 Styling for integration hover 2017-12-15 22:27:20 -07:00
Travis Ralston e3a32679c9 Fix circle ci for new project layout 2017-12-15 21:23:57 -07:00
Travis Ralston da01e93ac6 Merge branch 'master' into travis/ui-refresh 2017-12-15 21:23:02 -07:00
Travis Ralston a09a4d6b51 Styling for widgets (mostly) 2017-12-15 21:22:34 -07:00
MTRNord 17d6ab8367 Add CircleCI Integration
Signed-off-by: MTRNord <mtrnord1@gmail.com>
2017-12-15 14:13:45 +01:00
Travis Ralston ebe0048710 Use the correct title when we're also handling redirects and scalar tokens 2017-12-15 00:38:27 -07:00
Travis Ralston b7002ea4d6 Dynamic page titles 2017-12-15 00:33:32 -07:00
Travis Ralston d02830e170 Generify some widget wrappers 2017-12-14 23:52:36 -07:00
Travis Ralston e8f1167ec2 Organize the shared folder a bit 2017-12-14 23:46:17 -07:00
Travis Ralston 86a4d8dac2 Set up the correct routing and preparations for the "Riot" version of Dimension 2017-12-14 23:41:56 -07:00
Travis Ralston b5a8231a7a Update style and layout of header 2017-12-14 23:32:23 -07:00
Travis Ralston 6657d5dbf5 Start of a new UI for Dimension
Integrations need styling and the breadcrumbs don't work. Further, you can't actually add/edit anything.
2017-12-14 21:25:15 -07:00
Travis Ralston 618d6f44ee Use the scalar-defined widget types instead of our custom ones 2017-12-13 22:57:58 -07:00
Travis Ralston 983a2784c5 Use the new confId parameter 2017-12-13 22:57:39 -07:00
Travis Ralston 64a841f450 Don't assume we have a title 2017-12-13 22:56:59 -07:00
Travis Ralston 9ff1443878 Refactor how widgets are created/edited in the frontend
Creating and editing widgets is now done against the `dimension` object on a widget. This special object is used to translate the widget between the dirty and persisted states.
2017-12-13 22:44:20 -07:00
Travis Ralston fd5e367146 Add google calendar widget
Adds #135
Icon source: https://gsuite.google.com/setup/resources/logos/
2017-12-11 17:29:57 -07:00
Travis Ralston db2dcb459f Add google docs widget
Adds #90
2017-12-11 16:43:50 -07:00
Travis Ralston ff1653b392 Add google docs icon
Usage is in line with Google's current branding
2017-12-11 16:43:33 -07:00
Travis Ralston 3cf06845a3 Update youtube icon
Source: https://www.youtube.com/yt/about/brand-resources/
2017-12-11 16:19:41 -07:00
Travis Ralston dcba48d8b7 Update wikipedia icon
Usage is in line with Wikipedia's current branding
2017-12-11 16:16:44 -07:00
Travis Ralston a9ee14d534 Update twitch icon
Source: https://www.twitch.tv/p/brand/
2017-12-11 16:14:13 -07:00
Travis Ralston 407454b983 Update travis ci icon
Source: https://travis-ci.com/logo
2017-12-11 16:13:16 -07:00
Travis Ralston e136055120 Update rss icon
Source: http://www.iconarchive.com/show/simple-icons-by-danleech/rss-icon.html
2017-12-11 16:10:38 -07:00
Travis Ralston 24f01bd41a Update pollbot icon
It's the same icon that @pollbot:t2bot.io uses as an avatar
2017-12-11 16:06:39 -07:00
Travis Ralston f548199ca0 Update jitsi icon
Usage is in line with Jitsi's current branding
2017-12-11 16:02:04 -07:00
Travis Ralston ff6c87fdc5 Update IRC icon
Made specifically for Dimension, under the same license as the project.
2017-12-11 16:00:45 -07:00
Travis Ralston ce5b44b484 Update imgur icon
Usage is in line with Imgur's current branding.
2017-12-11 15:53:07 -07:00
Travis Ralston dc3379c53b Update guggy icon
Guggy's updated brand is now a fish.
2017-12-11 15:51:56 -07:00
Travis Ralston c118bbada2 Update google icon
Usage is in line with Google's current branding.
2017-12-11 15:47:47 -07:00
Travis Ralston df727cca4c Update giphy icon
Usage is in line with giphy's current branding.
2017-12-11 15:46:12 -07:00
Travis Ralston 71ec746ac5 Update etherpad icon
Source: etherpad.org
2017-12-11 15:42:50 -07:00
Travis Ralston 3e6a2752e5 Update github logo
Source: https://github.com/logos
2017-12-11 15:42:47 -07:00
Travis Ralston 84bcc64e30 Use avatars from the integration configurations 2017-12-11 15:42:42 -07:00
Travis Ralston 41e6dd078d Check for positive response for can_send_event earlier 2017-12-10 03:21:05 -07:00
Travis Ralston 914315ca1d Check if rooms are encrypted to warn users about adding widgets 2017-12-10 03:17:33 -07:00
Travis Ralston 51344656b2 Prevent people from adding widgets in rooms where they have no permission 2017-12-10 02:35:24 -07:00
Travis Ralston eb59940907 Also support editing Jitsi widgets 2017-12-10 01:08:32 -07:00
Travis Ralston 993dcdac21 Add Jitsi screensharing support
Self-hosted Jitsi Meet servers are possible for those running Dimension. The default server is Riot.IM's server.

Adds #87
2017-12-10 01:00:31 -07:00