Skip to content
This repository has been archived by the owner on Apr 25, 2024. It is now read-only.

Commit

Permalink
WIP: adapt to volto-datablocks v3
Browse files Browse the repository at this point in the history
  • Loading branch information
nileshgulia1 committed Jan 20, 2022
1 parent 15235d3 commit e5d143e
Show file tree
Hide file tree
Showing 3 changed files with 3 additions and 76 deletions.
4 changes: 2 additions & 2 deletions src/components/manage/Blocks/NavigationBlock/Edit.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import React, { useState, useEffect } from 'react';
import { connect } from 'react-redux';
import { compose } from 'redux';
import _uniqueId from 'lodash/uniqueId';
import RenderFields from '@eeacms/volto-datablocks/Utils/RenderFields';
//import RenderFields from '@eeacms/volto-datablocks/Utils/RenderFields';
import View from './View';
import config from '@plone/volto/registry';

Expand Down Expand Up @@ -75,7 +75,7 @@ const Edit = (props) => {
position: 'relative',
}}
>
<RenderFields schema={state.schema} {...props} title="Navigation block" />
{/* <RenderFields schema={state.schema} {...props} title="Navigation block" /> */}
<View {...props} id={state.id} mode="edit" />
<div
style={{
Expand Down
69 changes: 0 additions & 69 deletions src/helpers/index.js
Original file line number Diff line number Diff line change
@@ -1,41 +1,9 @@
import { getBaseUrl, flattenToAppURL } from '@plone/volto/helpers';
import { setConnectedDataParameters } from '@eeacms/volto-datablocks/actions';

export function getBasePath(url) {
return flattenToAppURL(getBaseUrl(url));
}

export const objectHasData = (obj) => {
return typeof obj === 'object' && obj !== null && Object.keys(obj).length > 0;
};

export const getSchemaWithDataQuery = (props) => {
if (!props.schema) return {};
let schemaWithDataQuery = {};
Object.keys(props.schema).forEach((element) => {
if (props.schema[element].type === 'data-provider') {
if (
!objectHasData(
props?.connected_data_parameters?.byProviderPath?.[props.path],
) &&
!objectHasData(
props?.connected_data_parameters?.byContextPath?.[props.path],
)
) {
const dataQuery = {};
dataQuery[element + '_data_query'] = {
defaultformat: 'compactnumber',
type: 'data-query',
};
schemaWithDataQuery[element] = props.schema[element];
schemaWithDataQuery = { ...schemaWithDataQuery, ...dataQuery };
}
}
schemaWithDataQuery[element] = props.schema[element];
});
return schemaWithDataQuery;
};

export function getLocation(href) {
var match = href.match(
/^(https?:)\/\/(([^:/?#]*)(?::([0-9]+))?)([/]{0,1}[^?#]*)(\?[^#]*|)(#.*|)$/,
Expand Down Expand Up @@ -65,40 +33,3 @@ export function samePath(url, path) {
const cleanPath = path.replace(/\/$/, '');
return clean === cleanPath;
}

export const updateConnectedDataParameters = (props) => {
props.schema &&
Object.keys(props.schema).forEach((element) => {
if (props.schema[element].type === 'data-query') {
if (
props?.newData?.columns?.[element] &&
(props?.newData?.columns?.[element]?.value?.i !==
props?.data?.columns?.[element]?.value?.i ||
props?.newData?.columns?.[element]?.value?.v !==
props?.data?.columns?.[element]?.value?.v)
) {
const path = getBasePath(props.pathname);
const byPath = props?.connected_data_parameters?.byPath;
const connected_data_parameters =
(byPath?.[path]?.override?.length > 0 &&
byPath?.[path]?.override?.[`${props.id}_${element}`]) ||
null;
if (
connected_data_parameters === null ||
connected_data_parameters?.i !==
props?.newData?.columns?.[element]?.value?.i ||
connected_data_parameters?.v?.join(',') !==
props?.newData?.columns?.[element]?.value?.v
) {
props.dispatch(
setConnectedDataParameters(
path.replace('/edit', ''),
props?.newData?.columns?.[element]?.value,
`${props.id}_${element}`,
),
);
}
}
}
});
};
6 changes: 1 addition & 5 deletions src/index.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import Forbidden from '@plone/volto/components/theme/Forbidden/Forbidden';
import Unauthorized from '@plone/volto/components/theme/Unauthorized/Unauthorized';

import { installBlocks } from '@eeacms/volto-plotlycharts';
import { applyConfig as installFiseFrontend } from './localconfig';

import ObjectListInlineWidget from './components/manage/Widgets/ObjectListInlineWidget';
Expand All @@ -11,10 +10,7 @@ import './slate-styles.css';

export default function applyConfig(config) {
// Add here your project's configuration here by modifying `config` accordingly
config = [installBlocks, installFiseFrontend].reduce(
(acc, apply) => apply(acc),
config,
);
config = [installFiseFrontend].reduce((acc, apply) => apply(acc), config);

config.settings = {
...config.settings,
Expand Down

0 comments on commit e5d143e

Please sign in to comment.