UNPKG

@choerodon/master

Version:
59 lines (53 loc) 2.97 kB
import "choerodon-ui/pro/lib/data-set/style"; import _DataSet from "choerodon-ui/pro/lib/data-set"; function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } import React, { createContext, useContext, useMemo } from 'react'; import { inject } from 'mobx-react'; import { withRouter } from 'react-router-dom'; import { injectIntl } from 'react-intl'; import useStore from "./useStore"; import ListDataSet from "./ListDataSet"; import CategoryDataSet from "./CategoryDataSet"; var Store = /*#__PURE__*/createContext(); export function useProjectsProStore() { return useContext(Store); } export var StoreProvider = withRouter(injectIntl(inject('AppState', 'MenuStore')(function (props) { var children = props.children, AppState = props.AppState, _props$AppState$curre = props.AppState.currentMenuType, type = _props$AppState$curre.type, id = _props$AppState$curre.id, organizationId = _props$AppState$curre.organizationId, history = props.history; var ProjectsProUseStore = useStore(AppState, history); var categoryDs = useMemo(function () { return new _DataSet(CategoryDataSet(AppState, history)); }, [type, id, organizationId]); var dataSet = useMemo(function () { return new _DataSet(ListDataSet(AppState, history, categoryDs)); }, [type, id, organizationId]); var categoryCodes = useMemo(function () { return { devops: 'N_DEVOPS', agile: 'N_AGILE', program: 'N_PROGRAM', test: 'N_TEST', require: 'N_REQUIREMENT', operations: 'N_OPERATIONS', programProject: 'N_PROGRAM_PROJECT', waterfall: 'N_WATERFALL' }; }, []); var value = _objectSpread(_objectSpread({}, props), {}, { intlPrefix: 'c7ncd.project', dataSet: dataSet, ProjectsProUseStore: ProjectsProUseStore, categoryCodes: categoryCodes }); return /*#__PURE__*/React.createElement(Store.Provider, { value: value }, children); })));