UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

161 lines (143 loc) 4.62 kB
"use strict"; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard"); var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.StoreProvider = exports["default"] = void 0; var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2")); var _react = _interopRequireWildcard(require("react")); var _configure = require("../../../../../lib/configure"); var _dataSet = _interopRequireDefault(require("../../../data-set")); var _interface = require("../../../data-set/interface"); function processAxiosConfig() { var axiosConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; var args = arguments.length > 1 ? arguments[1] : undefined; if (typeof axiosConfig === 'function') { return axiosConfig((0, _objectSpread2["default"])({}, args)); } return axiosConfig; } function getTransportConfig(props) { var config = props.config, type = props.type, searchCode = props.searchCode, queryDataSet = props.queryDataSet, tableFilterAdapter = props.tableFilterAdapter; return processAxiosConfig(tableFilterAdapter, { type: type, config: config, searchCode: searchCode, queryDataSet: queryDataSet }); } var ConditionDataSet = function ConditionDataSet() { return { paging: false, fields: [{ name: 'fieldName', type: _interface.FieldType.string }, { name: 'comparator', type: _interface.FieldType.string, defaultValue: 'EQUAL' }, { name: 'value' }, { name: 'searchConditionId', type: _interface.FieldType.number }], dataToJSON: _interface.DataToJSON.all, events: { update: function update() {} } }; }; var QuickFilterDataSet = function QuickFilterDataSet(_ref) { var searchCode = _ref.searchCode, queryDataSet = _ref.queryDataSet, tableFilterAdapter = _ref.tableFilterAdapter; return { paging: false, autoQuery: false, primaryKey: 'searchId', transport: { adapter: function adapter(config, type) { return getTransportConfig({ config: config, type: type, searchCode: searchCode, queryDataSet: queryDataSet, tableFilterAdapter: tableFilterAdapter }); } }, fields: [{ name: 'searchName', type: 'string', maxLength: 10, required: true }, { name: 'searchId', type: 'string' }, { name: 'defaultFlag', type: 'boolean', falseValue: 0, trueValue: 1 }, { name: 'searchCode', type: 'string', defaultValue: searchCode }, { name: 'conditionList', type: 'object' }] }; }; var Store = (0, _react.createContext)({}); var _default = Store; exports["default"] = _default; var StoreProvider = function StoreProvider(props) { var children = props.children, dynamicFilterBar = props.dynamicFilterBar, queryDataSet = props.queryDataSet, searchCode = props.searchCode; var searchCodes = (dynamicFilterBar === null || dynamicFilterBar === void 0 ? void 0 : dynamicFilterBar.searchCode) || searchCode; var tableFilterAdapter = (dynamicFilterBar === null || dynamicFilterBar === void 0 ? void 0 : dynamicFilterBar.tableFilterAdapter) || (0, _configure.getConfig)('tableFilterAdapter'); var filterMenuDS = (0, _react.useMemo)(function () { return new _dataSet["default"]({ autoCreate: true, fields: [{ name: 'filterName', type: _interface.FieldType.string, textField: 'searchName', valueField: 'searchId', options: new _dataSet["default"]({ selection: _interface.DataSetSelection.single }), ignore: _interface.FieldIgnore.always }] }); }, []); var conditionDataSet = (0, _react.useMemo)(function () { return new _dataSet["default"](ConditionDataSet()); }, []); var menuDataSet = (0, _react.useMemo)(function () { return new _dataSet["default"](QuickFilterDataSet({ searchCode: searchCodes, queryDataSet: queryDataSet, tableFilterAdapter: tableFilterAdapter })); }, []); var value = (0, _objectSpread2["default"])({}, props, { menuDataSet: menuDataSet, filterMenuDS: filterMenuDS, conditionDataSet: conditionDataSet }); return _react["default"].createElement(Store.Provider, { value: value }, children); }; exports.StoreProvider = StoreProvider; //# sourceMappingURL=QuickFilterDataSet.js.map