valueUtil.js 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. "use strict";
  2. Object.defineProperty(exports, "__esModule", {
  3. value: true
  4. });
  5. exports.fillFieldNames = fillFieldNames;
  6. exports.getAllKeys = getAllKeys;
  7. exports.isCheckDisabled = isCheckDisabled;
  8. exports.isNil = isNil;
  9. exports.toArray = toArray;
  10. function toArray(value) {
  11. if (Array.isArray(value)) {
  12. return value;
  13. }
  14. return value !== undefined ? [value] : [];
  15. }
  16. function fillFieldNames(fieldNames) {
  17. const {
  18. label,
  19. value,
  20. children
  21. } = fieldNames || {};
  22. const mergedValue = value || 'value';
  23. return {
  24. _title: label ? [label] : ['title', 'label'],
  25. value: mergedValue,
  26. key: mergedValue,
  27. children: children || 'children'
  28. };
  29. }
  30. function isCheckDisabled(node) {
  31. return node.disabled || node.disableCheckbox || node.checkable === false;
  32. }
  33. /** Loop fetch all the keys exist in the tree */
  34. function getAllKeys(treeData, fieldNames) {
  35. const keys = [];
  36. function dig(list) {
  37. list.forEach(item => {
  38. keys.push(item[fieldNames.value]);
  39. const children = item[fieldNames.children];
  40. if (children) {
  41. dig(children);
  42. }
  43. });
  44. }
  45. dig(treeData);
  46. return keys;
  47. }
  48. function isNil(val) {
  49. return val === null || val === undefined;
  50. }