useMissingValues.js 862 B

1234567891011121314151617181920212223242526
  1. "use strict";
  2. var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
  3. Object.defineProperty(exports, "__esModule", {
  4. value: true
  5. });
  6. exports.default = useMissingValues;
  7. var React = _interopRequireWildcard(require("react"));
  8. var _treeUtil = require("../utils/treeUtil");
  9. function useMissingValues(options, fieldNames) {
  10. return React.useCallback(function (rawValues) {
  11. var missingValues = [];
  12. var existsValues = [];
  13. rawValues.forEach(function (valueCell) {
  14. var pathOptions = (0, _treeUtil.toPathOptions)(valueCell, options, fieldNames);
  15. if (pathOptions.every(function (opt) {
  16. return opt.option;
  17. })) {
  18. existsValues.push(valueCell);
  19. } else {
  20. missingValues.push(valueCell);
  21. }
  22. });
  23. return [existsValues, missingValues];
  24. }, [options, fieldNames]);
  25. }