Nevar pievienot vairāk kā 25 tēmas Tēmai ir jāsākas ar burtu vai ciparu, tā var saturēt domu zīmes ('-') un var būt līdz 35 simboliem gara.

middleware.native.ts 1.4KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. import { SET_CONFIG } from '../base/config/actionTypes';
  2. import MiddlewareRegistry from '../base/redux/MiddlewareRegistry';
  3. import { SET_DYNAMIC_BRANDING_DATA } from './actionTypes';
  4. import { fetchCustomBrandingData } from './actions.native';
  5. import './middleware.any';
  6. MiddlewareRegistry.register(store => next => action => {
  7. switch (action.type) {
  8. case SET_CONFIG: {
  9. const result = next(action);
  10. store.dispatch(fetchCustomBrandingData());
  11. return result;
  12. }
  13. case SET_DYNAMIC_BRANDING_DATA: {
  14. const {
  15. avatarBackgrounds = [],
  16. backgroundColor,
  17. backgroundImageUrl,
  18. brandedIcons,
  19. didPageUrl,
  20. inviteDomain,
  21. labels,
  22. sharedVideoAllowedURLDomains
  23. } = action.value;
  24. action.value = {
  25. avatarBackgrounds,
  26. backgroundColor,
  27. backgroundImageUrl,
  28. brandedIcons,
  29. didPageUrl,
  30. inviteDomain,
  31. labels,
  32. sharedVideoAllowedURLDomains
  33. };
  34. // The backend may send an empty string, make sure we skip that.
  35. if (Array.isArray(avatarBackgrounds)) {
  36. // TODO: implement support for gradients.
  37. action.value.avatarBackgrounds = avatarBackgrounds.filter(
  38. (color: string) => !color.includes('linear-gradient')
  39. );
  40. }
  41. break;
  42. }
  43. }
  44. return next(action);
  45. });