gift-options.js 979 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. /**
  2. * Copyright © Magento, Inc. All rights reserved.
  3. * See COPYING.txt for license details.
  4. */
  5. /**
  6. * @api
  7. */
  8. define([
  9. 'underscore',
  10. 'ko'
  11. ], function (_, ko) {
  12. 'use strict';
  13. return {
  14. options: ko.observableArray([]),
  15. /**
  16. * @param {Object} option
  17. */
  18. addOption: function (option) {
  19. if (!this.options().hasOwnProperty(option.itemId)) {
  20. this.options.push({
  21. id: option.itemId, value: option
  22. }
  23. );
  24. }
  25. },
  26. /**
  27. * @param {*} itemId
  28. * @return {*}
  29. */
  30. getOptionByItemId: function (itemId) {
  31. var option = null;
  32. _.each(this.options(), function (data) {
  33. if (data.id === itemId) {
  34. option = data.value;
  35. return false;
  36. }
  37. });
  38. return option;
  39. }
  40. };
  41. });