ChatMessageController.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. /* eslint-disable
  2. max-len,
  3. no-return-assign,
  4. no-undef,
  5. */
  6. // TODO: This file was created by bulk-decaffeinate.
  7. // Fix any style issues and re-enable lint.
  8. /*
  9. * decaffeinate suggestions:
  10. * DS102: Remove unnecessary code created because of implicit returns
  11. * DS207: Consider shorter variations of null checks
  12. * Full docs: https://github.com/decaffeinate/decaffeinate/blob/master/docs/suggestions.md
  13. */
  14. define(['base', 'ide/colors/ColorManager'], (App, ColorManager) =>
  15. App.controller('ChatMessageController', function($scope, ide) {
  16. const hslColorConfigs = {
  17. borderSaturation:
  18. (window.uiConfig != null
  19. ? window.uiConfig.chatMessageBorderSaturation
  20. : undefined) || '70%',
  21. borderLightness:
  22. (window.uiConfig != null
  23. ? window.uiConfig.chatMessageBorderLightness
  24. : undefined) || '70%',
  25. bgSaturation:
  26. (window.uiConfig != null
  27. ? window.uiConfig.chatMessageBgSaturation
  28. : undefined) || '60%',
  29. bgLightness:
  30. (window.uiConfig != null
  31. ? window.uiConfig.chatMessageBgLightness
  32. : undefined) || '97%'
  33. }
  34. const hue = function(user) {
  35. if (user == null) {
  36. return 0
  37. } else {
  38. return ColorManager.getHueForUserId(user.id)
  39. }
  40. }
  41. $scope.getMessageStyle = user => ({
  42. 'border-color': `hsl(${hue(user)}, ${hslColorConfigs.borderSaturation}, ${
  43. hslColorConfigs.borderLightness
  44. })`,
  45. 'background-color': `hsl(${hue(user)}, ${hslColorConfigs.bgSaturation}, ${
  46. hslColorConfigs.bgLightness
  47. })`
  48. })
  49. return ($scope.getArrowStyle = user => ({
  50. 'border-color': `hsl(${hue(user)}, ${hslColorConfigs.borderSaturation}, ${
  51. hslColorConfigs.borderLightness
  52. })`
  53. }))
  54. }))