button.js 1.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. const { template, $, update, close } = require('./base');
  2. exports.template = template;
  3. exports.$ = $;
  4. exports.update = update;
  5. exports.close = close;
  6. const { setHidden, isMultipleInvalid } = require('../utils/prop');
  7. // export is to allow cc.toggle to reuse this piece of code
  8. exports.elements = {
  9. normalColor: {
  10. update(element, dump) {
  11. setHidden(isMultipleInvalid(dump.transition) || dump.transition.value !== 1, element);
  12. },
  13. },
  14. pressedColor: {
  15. update(element, dump) {
  16. this.elements.normalColor.update.call(this, element, dump);
  17. },
  18. },
  19. hoverColor: {
  20. update(element, dump) {
  21. this.elements.normalColor.update.call(this, element, dump);
  22. },
  23. },
  24. disabledColor: {
  25. update(element, dump) {
  26. this.elements.normalColor.update.call(this, element, dump);
  27. },
  28. },
  29. normalSprite: {
  30. update(element, dump) {
  31. setHidden(isMultipleInvalid(dump.transition) || dump.transition.value !== 2, element);
  32. },
  33. },
  34. pressedSprite: {
  35. update(element, dump) {
  36. this.elements.normalSprite.update.call(this, element, dump);
  37. },
  38. },
  39. hoverSprite: {
  40. update(element, dump) {
  41. this.elements.normalSprite.update.call(this, element, dump);
  42. },
  43. },
  44. disabledSprite: {
  45. update(element, dump) {
  46. this.elements.normalSprite.update.call(this, element, dump);
  47. },
  48. },
  49. zoomScale: {
  50. update(element, dump) {
  51. setHidden(isMultipleInvalid(dump.transition) || dump.transition.value !== 3, element);
  52. },
  53. },
  54. duration: {
  55. update(element, dump) {
  56. this.elements.zoomScale.update.call(this, element, dump);
  57. },
  58. },
  59. };
  60. exports.ready = function() {
  61. this.elements = exports.elements;
  62. };