Commit Graph

106 Commits (38e75aaae00b01c60da6a16e220625c70496a445)

Author SHA1 Message Date
Travis Ralston 20a615396b Implementation of new potential skinning mechanism
With a switch to Only One Webpack™ we need a way to help developers generate the component index without a concurrent watch task. The best way to do this is to have developers import their components, but how do they do that when we support skins? The answer in this commit is to change skinning.

Skinning now expects to receive your list of overrides instead of the react-sdk+branded components. For Riot this means we send over *only* the Vector components and not Vector+react-sdk. 

Components can then be annotated with the `replaceComponent` decorator to have them be skinnable. The decorator must take a string with the dot path of the component because we can't reliably calculate it ourselves, sadly. 

The decorator does a call to `getComponent` which is where the important part of the branded components not including the react-sdk is important: if the branded app includes the react-sdk then the decorator gets executed before the skin has finished loading, leading to all kinds of fun errors. This is also why the skinner lazily loads the react-sdk components to avoid importing them too early, breaking the app.

The decorator will end up receiving null for a component because of the getComponent loop mentioned: the require() call is still in progress when the decorator is called, therefore we can't error out. All usages of getComponent() within the app are safe to not need such an error (the return won't be null, and developers shouldn't use getComponent() after this commit anyways).

The AuthPage, being a prominent component, has been converted to demonstrate this working. Changes to riot-web are required to have this work.

The reskindex script has also been altered to reflect these skinning changes - it no longer should set the react-sdk as a parent. The eventual end goal is to get rid of `getComponent()` entirely as it'll be easily replaced by imports.
2019-12-12 19:48:45 -07:00
Travis Ralston ff584d1644 yarn.lock changes for upgrade 2019-12-12 14:38:12 -07:00
J. Ryan Stinnett 108293dcba Flip back to develop 2019-12-11 10:39:04 +00:00
Michael Telatynski 4be8b87869 Add what-input to allow different scoping to focus-visible for MessageActionBar keyboard a11y
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-12-07 13:07:52 +00:00
David Baker 5b64c1c6e7 yarn upgrade 2019-12-04 14:22:00 +00:00
J. Ryan Stinnett 54d6b6aa73 Flip JS SDK back to develop 2019-11-27 13:31:44 +00:00
RiotRobot 6223ca8243 Merge branch 'master' into develop 2019-11-27 10:39:33 +00:00
RiotRobot d9e322bbca Upgrade to JS SDK 2.4.5 2019-11-27 10:32:21 +00:00
RiotRobot a6fdd5e5dd Merge branch 'master' into develop 2019-11-25 13:35:30 +00:00
RiotRobot 942db34e92 released js-sdk 2019-11-25 13:27:15 +00:00
Michael Telatynski d3f872bf7a Merge branches 'develop' and 't3chguy/remove_bluebird' of github.com:matrix-org/matrix-react-sdk into t3chguy/remove_bluebird 2019-11-21 11:15:32 +00:00
Michael Telatynski fccf9f138e Add eslint-plugin-jest because we inherit js-sdk's eslintrc and it wants
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-11-20 22:32:11 +00:00
RiotRobot 966f84115d js-sdk rc.1 2019-11-20 18:26:29 +00:00
Michael Telatynski d4d51dc61f Rip out the remainder of Bluebird 2019-11-18 10:03:05 +00:00
Travis Ralston 6d0b388fa2
Merge branch 'develop' into travis/mjolnir 2019-11-12 10:00:01 -07:00
Travis Ralston bdcf3890a5 Fix HTML fallback in replies
Correctly encode the `body` to avoid problems down the line. We also convert newlines to `<br/>` to better represent the message as a fallback.

Fixes https://github.com/vector-im/riot-web/issues/9413
2019-11-08 16:07:11 -07:00
RiotRobot aba557f023 Released react-sdk 2019-11-04 15:09:19 +00:00
Travis Ralston e6e12df82d Add structural base for handling Mjolnir lists 2019-10-31 13:20:18 -06:00
RiotRobot 8dfa464202 js-sdk rc.1 2019-10-30 16:44:18 +00:00
Michael Telatynski c5d5cd72bc
Merge pull request #3465 from matrix-org/t3chguy/nvl/userinfo
UserInfo consolidation of GroupMemberInfo and MemberInfo panels
2019-10-21 15:50:08 +01:00
Michael Telatynski 0e6359ab24 replace @use-it/event-listener as it doesn't like Node EE's 2019-10-19 16:39:06 +01:00
J. Ryan Stinnett 5333201823 Change back to develop branch for deps 2019-10-18 16:12:20 +01:00
RiotRobot d05ef40694 Merge branch 'master' into develop 2019-10-18 14:49:40 +01:00
RiotRobot 21bb1dc837 Upgrade to JS SDK v2.4.2 2019-10-18 14:43:08 +01:00
RiotRobot bd7e909699 js-sdk rc.1 2019-10-09 16:54:05 +01:00
Michael Telatynski aae5bb9f39 Use new React Shallow renderer with hooks support
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 13:08:16 +02:00
Michael Telatynski efeb6e87c4 Use new React Shallow renderer with hooks support
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-09 12:51:08 +02:00
Michael Telatynski df02eb8e92 Add UserInfo panel (consolidation of MemberInfo & GroupMemberInfo) Labs
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-10-07 16:52:50 +01:00
David Baker 40969c60a9
Revert "Run yarn upgrade" 2019-10-04 16:28:13 +01:00
David Baker eda8434444 run yarn upgrade 2019-10-04 11:09:46 +01:00
David Baker dc9018dc11 js-sdk develop 2019-10-04 11:07:22 +01:00
David Baker 3c5880e5ee use released js-sdk 2019-10-02 10:19:51 +01:00
Michael Telatynski c5fd92bfeb
Merge pull request #3501 from TheTimeWalker/patch-1
Update stripped emoji and bump emojidata to 4.0.2
2019-10-01 17:28:37 +01:00
Tony Stipanic cfff39b58b Update stripped emoji and bump emojidata to 4.0.2 2019-10-01 18:05:25 +02:00
J. Ryan Stinnett 617a5290f9 Change back to develop branch for deps 2019-10-01 13:30:13 +01:00
RiotRobot fa12b60c4a Upgrade to JS SDK 2.4.1 2019-10-01 11:35:33 +01:00
J. Ryan Stinnett de3e0c45f9 Upgrade deps 2019-09-27 15:18:11 +01:00
J. Ryan Stinnett 9221dcd154 Change back to develop branch for deps 2019-09-27 14:39:59 +01:00
RiotRobot 709504ff80 Upgrade to JS SDK 2.4.0 2019-09-27 11:48:33 +01:00
J. Ryan Stinnett 5a8943353f Merge branch 't3chguy/accesibility' into release-v1.6.0 2019-09-27 10:17:30 +01:00
Michael Telatynski 8d1d3090f3 Improve keyboard accessibility using :focus-visible CSS polyfill
Signed-off-by: Michael Telatynski <7t3chguy@gmail.com>
2019-09-27 09:00:54 +01:00
RiotRobot eea0999b90 Upgrade to JS SDK 2.4.0-rc.1 2019-09-25 17:22:43 +01:00
Travis Ralston 10b2501785 Upgrade lolex to pull in a clock fix
See https://github.com/sinonjs/lolex/issues/136

We don't use fake timers, but we do use lolex's clock, which probably causes the same thing. Jumping from 2.x to 4.x looks largely compatible - tests pass.
2019-09-17 14:37:59 -06:00
Travis Ralston 99b8193ce7 Use the new ShallowRenderer over ReactTestUtils
Mostly because the ReactTestUtils renderer doesn't exist anymore.
2019-09-17 14:33:32 -06:00
Travis Ralston 9c474da831 Bump to master commit of react-gemini-scrollbar 2019-09-17 10:55:49 -06:00
Travis Ralston 11c7d02a2d Point to develop dependencies and fixed react-gemini-scrollbar
Fixes https://github.com/vector-im/riot-web/issues/10894

See https://github.com/matrix-org/react-gemini-scrollbar/pull/3
2019-09-17 10:44:29 -06:00
RiotRobot dd0ffa8e72 Merge branch 'master' into develop 2019-09-16 17:49:46 +01:00
RiotRobot 44cf99d5d4 released js-sdk 2019-09-16 17:44:16 +01:00
J. Ryan Stinnett 16a412e7d0 Tweak lock file to pull in only one React version
Yarn deps can be a bit fiddly when targeting specific versions. This tweaks the
lock file to only pull in a single React version.

For others who may need to do something like this again, I recommend deleting
specific package entries from `yarn.lock` and re-running `yarn install`. That
should make it pick the right thing while also leaving other packages as they
were.
2019-09-16 14:07:05 +01:00
RiotRobot 93d76cef36 js-sdk rc.1 to get report API 2019-09-13 16:17:40 +01:00