Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 'use strict';
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.nameRelatedTo = exports.getReferencesByIds = exports.getReferences = exports.getIds = undefined;
- var _defineProperty2 = require('babel-runtime/helpers/defineProperty');
- var _defineProperty3 = _interopRequireDefault(_defineProperty2);
- var _extends3 = require('babel-runtime/helpers/extends');
- var _extends4 = _interopRequireDefault(_extends3);
- var _dataActions = require('../../../actions/dataActions');
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
- var initialState = {};
- exports.default = function () {
- var previousState = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : initialState;
- var _ref = arguments[1];
- var type = _ref.type,
- payload = _ref.payload,
- meta = _ref.meta;
- switch (type) {
- case _dataActions.CRUD_GET_MANY_REFERENCE_SUCCESS:
- return (0, _extends4.default)({}, previousState, (0, _defineProperty3.default)({}, meta.relatedTo, payload.data.map(function (record) {
- return record.id;
- })));
- default:
- return previousState;
- }
- };
- var getIds = exports.getIds = function getIds(state, relatedTo) {
- return state.admin.references.oneToMany[relatedTo];
- };
- var getReferences = exports.getReferences = function getReferences(state, reference, relatedTo) {
- var ids = getIds(state, relatedTo);
- if (typeof ids === 'undefined') return undefined;
- if (!state.admin.resources[reference]) {
- // eslint-disable-next-line no-console
- console.error('Invalid Resource "' + reference + '"n' + ('You are trying to display or edit a field of a resource called "' + reference + '", ') + 'but it has not been declared.n' + "Declare this resource in the Admin or check the 'reference' prop of ReferenceArrayField and ReferenceManyField.", { ids: ids });
- }
- return ids.map(function (id) {
- var resource = state.admin.resources[reference];
- if (!resource) {
- return;
- }
- return resource.data[id];
- }).filter(function (r) {
- return typeof r !== 'undefined';
- }).reduce(function (prev, record) {
- prev[record.id] = record; // eslint-disable-line no-param-reassign
- return prev;
- }, {});
- };
- var getReferencesByIds = exports.getReferencesByIds = function getReferencesByIds(state, reference, ids) {
- if (ids.length === 0) return {};
- if (!state.admin.resources[reference]) {
- // eslint-disable-next-line no-console
- console.error('Invalid Resource "' + reference + '"n' + ('You are trying to display or edit a field of a resource called "' + reference + '", ') + 'but it has not been declared.n' + "Declare this resource in the Admin or check the 'reference' prop of ReferenceArrayField.", { ids: ids });
- }
- var references = ids.map(function (id) {
- var resource = state.admin.resources[reference];
- if (!resource) {
- return;
- }
- return resource.data[id];
- }).filter(function (r) {
- return typeof r !== 'undefined';
- }).reduce(function (prev, record) {
- prev[record.id] = record; // eslint-disable-line no-param-reassign
- return prev;
- }, {});
- return Object.keys(references).length > 0 ? references : null;
- };
- var nameRelatedTo = exports.nameRelatedTo = function nameRelatedTo(reference, id, resource, target) {
- var filter = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : {};
- var keys = Object.keys(filter);
- if (!keys.length) {
- return resource + '_' + reference + '@' + target + '_' + id;
- }
- return resource + '_' + reference + '@' + target + '_' + id + '?' + keys.map(function (key) {
- return key + '=' + JSON.stringify(filter[key]);
- }).join('&');
- };
- /***/ }),
- /***/ "../../../../node_modules/ra-core/src/reducer/admin/references/oneToMany.js":
- /*!**********************************************************************************!*
- !*** /home/maxim/node_modules/ra-core/src/reducer/admin/references/oneToMany.js ***!
- **********************************************************************************/
- /*! exports provided: default, getIds, getReferences, getReferencesByIds, nameRelatedTo */
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
- "use strict";
- __webpack_require__.r(__webpack_exports__);
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getIds", function() { return getIds; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getReferences", function() { return getReferences; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getReferencesByIds", function() { return getReferencesByIds; });
- /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "nameRelatedTo", function() { return nameRelatedTo; });
- /* harmony import */ var _actions_dataActions__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../actions/dataActions */ "../../../../node_modules/ra-core/src/actions/dataActions.js");
- const initialState = {};
- /* harmony default export */ __webpack_exports__["default"] = ((previousState = initialState, { type, payload, meta }) => {
- switch (type) {
- case _actions_dataActions__WEBPACK_IMPORTED_MODULE_0__["CRUD_GET_MANY_REFERENCE_SUCCESS"]:
- return {
- ...previousState,
- [meta.relatedTo]: payload.data.map(record => record.id),
- };
- default:
- return previousState;
- }
- });
- const getIds = (state, relatedTo) =>
- state.admin.references.oneToMany[relatedTo];
- const getReferences = (state, reference, relatedTo) => {
- const ids = getIds(state, relatedTo);
- if (typeof ids === 'undefined') return undefined;
- if (!state.admin.resources[reference]) {
- // eslint-disable-next-line no-console
- console.error(
- `Invalid Resource "${reference}"n` +
- `You are trying to display or edit a field of a resource called "${reference}", ` +
- 'but it has not been declared.n' +
- "Declare this resource in the Admin or check the 'reference' prop of ReferenceArrayField and ReferenceManyField.",
- { ids }
- );
- }
- return ids
- .map(id => {
- const resource = state.admin.resources[reference];
- if (!resource) {
- return;
- }
- return resource.data[id];
- })
- .filter(r => typeof r !== 'undefined')
- .reduce((prev, record) => {
- prev[record.id] = record; // eslint-disable-line no-param-reassign
- return prev;
- }, {});
- };
- const getReferencesByIds = (state, reference, ids) => {
- if (ids.length === 0) return {};
- if (!state.admin.resources[reference]) {
- // eslint-disable-next-line no-console
- console.error(
- `Invalid Resource "${reference}"n` +
- `You are trying to display or edit a field of a resource called "${reference}", ` +
- 'but it has not been declared.n' +
- "Declare this resource in the Admin or check the 'reference' prop of ReferenceArrayField.",
- { ids }
- );
- }
- const references = ids
- .map(id => {
- const resource = state.admin.resources[reference];
- if (!resource) {
- return;
- }
- return resource.data[id];
- })
- .filter(r => typeof r !== 'undefined')
- .reduce((prev, record) => {
- prev[record.id] = record; // eslint-disable-line no-param-reassign
- return prev;
- }, {});
- return Object.keys(references).length > 0 ? references : null;
- };
- const nameRelatedTo = (reference, id, resource, target, filter = {}) => {
- const keys = Object.keys(filter);
- if (!keys.length) {
- return `${resource}_${reference}@${target}_${id}`;
- }
- return `${resource}_${reference}@${target}_${id}?${keys
- .map(key => `${key}=${JSON.stringify(filter[key])}`)
- .join('&')}`;
- };
- const path = require('path');
- const ENV_DEV = 'development';
- const ENV_PROD = 'production';
- const ENV = process.env.ENV || ENV_DEV;
- const webpack = require('webpack');
- const UglifyJsPlugin = require('uglifyjs-webpack-plugin');
- let totalExports = [];
- let commonConfig = {
- mode: ENV,
- devtool: ENV === ENV_DEV ? 'source-map' : false,
- context: path.resolve(__dirname, 'Application/js'),
- watch: ENV === ENV_DEV,
- watchOptions: {
- aggregateTimeout: 300
- },
- resolve: {
- modules: [
- 'node_modules',
- ],
- extensions: ['.js', '.jsx']
- },
- resolveLoader: {
- modules: [
- 'node_modules',
- ],
- extensions: ['.js']
- },
- module:{
- rules:[ //загрузчик для js/jsx
- {
- test: /.jsx?$/, // определяем тип файлов
- loader: 'babel-loader', // определяем загрузчик
- exclude: /(node_modules|bower_compontents)/, // исключаем из обработки папку node_modules, это обязательно! */
- options:{
- presets:['react'], // используемые плагины
- plugins: [
- 'transform-runtime',
- 'transform-object-rest-spread'
- ]
- }
- },
- {
- test: /.css$/,
- loader: 'style-loader!css-loader'
- }
- ]
- },
- optimization: {
- runtimeChunk: false,
- splitChunks : {
- cacheGroups: {
- vendor: {
- test: '/[\/]node_modules[\/]/',
- name: 'vendor',
- chunks: 'all'
- }
- }
- },
- minimizer: []
- },
- plugins: [
- new webpack.NoEmitOnErrorsPlugin(),
- new webpack.EnvironmentPlugin('ENV')
- ]
- };
- if (ENV === ENV_PROD) {
- commonConfig.optimization.minimizer.push(
- new UglifyJsPlugin({
- cache: true,
- parallel: true,
- uglifyOptions: {
- compress: true,
- ecma: 5,
- mangle: true
- },
- sourceMap: true
- })
- );
- }
- let moduleConfigs = {
- admin: {
- entry: {
- index: './admin/index',
- },
- output: {
- path: __dirname + '/public/js/admin/',
- filename: '[name].js',
- library: '[name]'
- },
- },
- frontend: {
- entry: {
- common: './frontend/common',
- formLogin: './frontend/form/formLogin',
- },
- output: {
- path: __dirname + '/public/js/frontend/',
- filename: '[name].js',
- library: '[name]'
- },
- }
- };
- for (let moduleName in moduleConfigs) {
- totalExports.push(Object.assign({}, commonConfig, moduleConfigs[moduleName]));
- }
- module.exports = totalExports;
Add Comment
Please, Sign In to add comment