@blaze-cms/react-page-builder 0.134.0-project-admin-customisations.0 → 0.134.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +4 -12
- package/lib/HOC/withTitle.js +12 -2
- package/lib/HOC/withTitle.js.map +1 -1
- package/lib/components/Banner/AdSlotRender.js +3 -12
- package/lib/components/Banner/AdSlotRender.js.map +1 -1
- package/lib/components/Banner/Banner.js +7 -4
- package/lib/components/Banner/Banner.js.map +1 -1
- package/lib/components/Banner/BannerRender.js +1 -5
- package/lib/components/Banner/BannerRender.js.map +1 -1
- package/lib/components/ContentGroupSection/ContentGroupSection.js +4 -1
- package/lib/components/ContentGroupSection/ContentGroupSection.js.map +1 -1
- package/lib/components/DataSummary/helpers/build-loop-props-content.js +2 -3
- package/lib/components/DataSummary/helpers/build-loop-props-content.js.map +1 -1
- package/lib/components/DataSummary/helpers/get-link-to-published-content.js +0 -2
- package/lib/components/DataSummary/helpers/get-link-to-published-content.js.map +1 -1
- package/lib/components/SearchFilter/components/Checkbox.js +3 -1
- package/lib/components/SearchFilter/components/Checkbox.js.map +1 -1
- package/lib-es/HOC/withTitle.js +11 -2
- package/lib-es/HOC/withTitle.js.map +1 -1
- package/lib-es/components/Banner/AdSlotRender.js +3 -12
- package/lib-es/components/Banner/AdSlotRender.js.map +1 -1
- package/lib-es/components/Banner/Banner.js +7 -4
- package/lib-es/components/Banner/Banner.js.map +1 -1
- package/lib-es/components/Banner/BannerRender.js +2 -6
- package/lib-es/components/Banner/BannerRender.js.map +1 -1
- package/lib-es/components/ContentGroupSection/ContentGroupSection.js +8 -4
- package/lib-es/components/ContentGroupSection/ContentGroupSection.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/build-loop-props-content.js +2 -3
- package/lib-es/components/DataSummary/helpers/build-loop-props-content.js.map +1 -1
- package/lib-es/components/DataSummary/helpers/get-link-to-published-content.js +1 -2
- package/lib-es/components/DataSummary/helpers/get-link-to-published-content.js.map +1 -1
- package/lib-es/components/SearchFilter/components/Checkbox.js +3 -1
- package/lib-es/components/SearchFilter/components/Checkbox.js.map +1 -1
- package/package.json +11 -11
- package/src/HOC/withTitle.js +12 -2
- package/src/components/Banner/AdSlotRender.js +5 -9
- package/src/components/Banner/Banner.js +11 -9
- package/src/components/Banner/BannerRender.js +0 -4
- package/src/components/ContentGroupSection/ContentGroupSection.js +1 -1
- package/src/components/DataSummary/helpers/build-loop-props-content.js +2 -3
- package/src/components/DataSummary/helpers/get-link-to-published-content.js +1 -4
- package/src/components/SearchFilter/components/Checkbox.js +2 -0
- package/tests/unit/src/HOC/withTitle.test.js +4 -4
- package/tests/unit/src/components/Banner/AdSlotRender.test.js +11 -6
- package/tests/unit/src/components/Banner/BannerRender.test.js +4 -0
- package/tests/unit/src/components/Banner/__snapshots__/AdSlotRender.test.js.snap +25 -45
- package/tests/unit/src/components/Banner/__snapshots__/BannerRender.test.js.snap +3 -8
- package/tests/unit/src/components/Button.test.js +4 -0
- package/tests/unit/src/components/Card/CardContainer.test.js +4 -0
- package/tests/unit/src/components/Carousel/CarouselRender/CarouselRender.test.js +4 -0
- package/tests/unit/src/components/Code/Code.test.js +4 -0
- package/tests/unit/src/components/Code.test.js +4 -0
- package/tests/unit/src/components/DataSummary/DataSummaryTypes/ItemDetailsSummary.test.js +4 -0
- package/tests/unit/src/components/DataSummary/DataSummaryTypes/LargeSummary.test.js +4 -0
- package/tests/unit/src/components/DataSummary/DataSummaryTypes/ListSummary.test.js +4 -0
- package/tests/unit/src/components/DataSummary/DataSummaryTypes/TextSummary.test.js +4 -0
- package/tests/unit/src/components/DataSummary/helpers/build-loop-props-content.test.js +0 -41
- package/tests/unit/src/components/DataSummary/helpers/get-link-to-published-content.test.js +0 -21
- package/tests/unit/src/components/List/components/Cards/CardsRender.test.js +4 -0
- package/tests/unit/src/components/List/components/Cards/CardsRenderWrapper.test.js +4 -0
- package/tests/unit/src/components/SearchFilter/components/Checkbox.test.js +4 -0
- package/tests/unit/src/components/SearchFilter/components/Select.test.js +4 -0
- package/tests/unit/src/components/SearchFilter/components/TextSearch.test.js +4 -0
- package/tests/unit/src/components/SearchFilterSort/SearchFilterSort.test.js +4 -0
- package/tests/unit/src/components/SocialFollow/SocialFollow.test.js +4 -0
- package/tests/unit/src/components/TextBlock/TextBlock.test.js +4 -0
- package/tests/unit/src/components/PlaceholderIcon/__snapshots__/index.test.js.snap +0 -72
- package/tests/unit/src/components/PlaceholderIcon/index.test.js +0 -20
|
@@ -45,12 +45,11 @@ const buildLoopPropsContent = (loopProps = [], propsToDisplay = [], limit = 0, d
|
|
|
45
45
|
|
|
46
46
|
return propertiesToDisplay.map(key => {
|
|
47
47
|
const loopValue = loopValues[key];
|
|
48
|
-
const
|
|
49
|
-
const propValue = loopValueItem ? getLoopValue(loopValueItem) : regularValues[key];
|
|
48
|
+
const propValue = loopValue ? getLoopValue(loopValue[i]) : regularValues[key];
|
|
50
49
|
if (!propValue) return null;
|
|
51
50
|
|
|
52
51
|
const processedValue = processDataSummaryValue(propValue, options);
|
|
53
|
-
const linkToPublishedContent = getLinkToPublishedContent(key, data
|
|
52
|
+
const linkToPublishedContent = getLinkToPublishedContent(key, data);
|
|
54
53
|
return [upperFirst(label), processedValue, linkToPublishedContent, modifier];
|
|
55
54
|
});
|
|
56
55
|
})
|
|
@@ -1,9 +1,6 @@
|
|
|
1
|
-
const getLinkToPublishedContent = (key = '', props = {}
|
|
1
|
+
const getLinkToPublishedContent = (key = '', props = {}) => {
|
|
2
2
|
const [baseKey] = key.split('.');
|
|
3
3
|
if (!props[baseKey]) return '';
|
|
4
|
-
|
|
5
|
-
if (currentValue && typeof currentValue.url !== 'undefined') return currentValue.url;
|
|
6
|
-
|
|
7
4
|
const content = Array.isArray(props[baseKey]) ? props[baseKey][0] : props[baseKey];
|
|
8
5
|
return content && content.url ? content.url : '';
|
|
9
6
|
};
|
|
@@ -66,8 +66,10 @@ const Checkbox = ({
|
|
|
66
66
|
);
|
|
67
67
|
|
|
68
68
|
const shouldDisplayMore = !checkboxLimit || checkboxLimit[prop] === LIMIT_MIN;
|
|
69
|
+
|
|
69
70
|
return (
|
|
70
71
|
<>
|
|
72
|
+
{elementTitle && <div className="heading heading--section">{elementTitle}</div>}
|
|
71
73
|
{label ? <p>{label}</p> : ''}
|
|
72
74
|
<Checkboxes
|
|
73
75
|
className="form-checkbox"
|
|
@@ -6,13 +6,13 @@ import '@testing-library/jest-dom/extend-expect';
|
|
|
6
6
|
import { shallow } from 'enzyme';
|
|
7
7
|
import { withTitle } from '../../../../src/HOC';
|
|
8
8
|
|
|
9
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
10
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
11
|
+
}));
|
|
12
|
+
|
|
9
13
|
const MockComponent = () => <div>MockedComponent</div>;
|
|
10
14
|
|
|
11
15
|
describe('withTitle HOC', () => {
|
|
12
|
-
it('should be a function', () => {
|
|
13
|
-
expect(typeof withTitle).toEqual('function');
|
|
14
|
-
});
|
|
15
|
-
|
|
16
16
|
it('should return h2 based on elementTitle prop', () => {
|
|
17
17
|
const WrappedComponent = withTitle(MockComponent);
|
|
18
18
|
const shallowWrapper = shallow(<WrappedComponent />);
|
|
@@ -50,17 +50,17 @@ describe('Banner render component', () => {
|
|
|
50
50
|
<AdSlotRender {...defaultProps} shouldShowBanner={false} />
|
|
51
51
|
);
|
|
52
52
|
|
|
53
|
-
expect(container.childNodes[0].nodeName).toEqual('
|
|
54
|
-
expect(
|
|
53
|
+
expect(container.childNodes[0].nodeName).toEqual('STYLE');
|
|
54
|
+
expect(container.childNodes[1]).toHaveClass('ad-slot ad-slot-loading banner-sizeId');
|
|
55
55
|
expect(() => getByTestId(slotTestId)).toThrow();
|
|
56
56
|
expect(asFragment()).toMatchSnapshot();
|
|
57
57
|
});
|
|
58
58
|
|
|
59
59
|
describe('AdSlot loading', () => {
|
|
60
60
|
it('should render AdSlot', () => {
|
|
61
|
-
const { asFragment, getByTestId } = render(<AdSlotRender {...defaultProps} />);
|
|
61
|
+
const { asFragment, container, getByTestId } = render(<AdSlotRender {...defaultProps} />);
|
|
62
62
|
expect(getByTestId('adslot-test')).toBeDefined();
|
|
63
|
-
expect(
|
|
63
|
+
expect(container.childNodes[1]).toHaveClass('ad-slot ad-slot-loading banner-sizeId');
|
|
64
64
|
expect(asFragment()).toMatchSnapshot();
|
|
65
65
|
});
|
|
66
66
|
|
|
@@ -69,11 +69,16 @@ describe('Banner render component', () => {
|
|
|
69
69
|
const adSlot = getByTestId(slotTestId);
|
|
70
70
|
|
|
71
71
|
fireEvent.mouseOver(adSlot);
|
|
72
|
-
await waitFor(() =>
|
|
72
|
+
await waitFor(() =>
|
|
73
|
+
expect(container.childNodes[0]).toHaveClass('ad-slot ad-slot-loaded banner-sizeId')
|
|
74
|
+
);
|
|
75
|
+
expect(container.childNodes[0]).toHaveStyle('min-height: 250px');
|
|
73
76
|
expect(asFragment()).toMatchSnapshot();
|
|
74
77
|
|
|
75
78
|
fireEvent.mouseLeave(adSlot);
|
|
76
|
-
await waitFor(() =>
|
|
79
|
+
await waitFor(() =>
|
|
80
|
+
expect(container.childNodes[0]).toHaveClass('ad-slot ad-slot-empty banner-sizeId')
|
|
81
|
+
);
|
|
77
82
|
expect(asFragment()).toMatchSnapshot();
|
|
78
83
|
});
|
|
79
84
|
});
|
|
@@ -14,6 +14,10 @@ import {
|
|
|
14
14
|
PUBLISHED
|
|
15
15
|
} from '../../../../../src/constants';
|
|
16
16
|
|
|
17
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
18
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
19
|
+
}));
|
|
20
|
+
|
|
17
21
|
const actionKey = 'getPublishedPage';
|
|
18
22
|
const id = 'record id';
|
|
19
23
|
const action = getAction(actionKey, 'id, name');
|
|
@@ -3,18 +3,13 @@
|
|
|
3
3
|
exports[`Banner render component AdSlot loading should change class and remove responsive styles after loaded events 1`] = `
|
|
4
4
|
<DocumentFragment>
|
|
5
5
|
<div
|
|
6
|
-
class="banner
|
|
6
|
+
class="ad-slot ad-slot-loaded banner-sizeId"
|
|
7
|
+
style="min-height: 250px;"
|
|
7
8
|
>
|
|
8
9
|
<div
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
>
|
|
13
|
-
<div
|
|
14
|
-
data-testid="adslot-test"
|
|
15
|
-
role="button"
|
|
16
|
-
/>
|
|
17
|
-
</div>
|
|
10
|
+
data-testid="adslot-test"
|
|
11
|
+
role="button"
|
|
12
|
+
/>
|
|
18
13
|
</div>
|
|
19
14
|
</DocumentFragment>
|
|
20
15
|
`;
|
|
@@ -22,59 +17,44 @@ exports[`Banner render component AdSlot loading should change class and remove r
|
|
|
22
17
|
exports[`Banner render component AdSlot loading should change class and remove responsive styles after loaded events 2`] = `
|
|
23
18
|
<DocumentFragment>
|
|
24
19
|
<div
|
|
25
|
-
class="banner
|
|
20
|
+
class="ad-slot ad-slot-empty banner-sizeId"
|
|
21
|
+
style=""
|
|
26
22
|
>
|
|
27
23
|
<div
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
>
|
|
32
|
-
<div
|
|
33
|
-
data-testid="adslot-test"
|
|
34
|
-
role="button"
|
|
35
|
-
/>
|
|
36
|
-
</div>
|
|
24
|
+
data-testid="adslot-test"
|
|
25
|
+
role="button"
|
|
26
|
+
/>
|
|
37
27
|
</div>
|
|
38
28
|
</DocumentFragment>
|
|
39
29
|
`;
|
|
40
30
|
|
|
41
31
|
exports[`Banner render component AdSlot loading should render AdSlot 1`] = `
|
|
42
32
|
<DocumentFragment>
|
|
43
|
-
<
|
|
44
|
-
|
|
45
|
-
>
|
|
46
|
-
<style>
|
|
47
|
-
@media(min-width:320px){.banner-sizeId{min-height:100px;}
|
|
33
|
+
<style>
|
|
34
|
+
@media(min-width:320px){.banner-sizeId{min-height:100px;}
|
|
48
35
|
@media(min-width:728px){.banner-sizeId{min-height:100px;}
|
|
49
36
|
@media(min-width:970px){.banner-sizeId{min-height:250px;}
|
|
50
|
-
|
|
37
|
+
</style>
|
|
38
|
+
<div
|
|
39
|
+
class="ad-slot ad-slot-loading banner-sizeId"
|
|
40
|
+
>
|
|
51
41
|
<div
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
<div
|
|
56
|
-
data-testid="adslot-test"
|
|
57
|
-
role="button"
|
|
58
|
-
/>
|
|
59
|
-
</div>
|
|
42
|
+
data-testid="adslot-test"
|
|
43
|
+
role="button"
|
|
44
|
+
/>
|
|
60
45
|
</div>
|
|
61
46
|
</DocumentFragment>
|
|
62
47
|
`;
|
|
63
48
|
|
|
64
49
|
exports[`Banner render component should not render AdSlot if shouldShowBanner=false but should render styles and wrapper 1`] = `
|
|
65
50
|
<DocumentFragment>
|
|
66
|
-
<
|
|
67
|
-
|
|
68
|
-
>
|
|
69
|
-
<style>
|
|
70
|
-
@media(min-width:320px){.banner-sizeId{min-height:100px;}
|
|
51
|
+
<style>
|
|
52
|
+
@media(min-width:320px){.banner-sizeId{min-height:100px;}
|
|
71
53
|
@media(min-width:728px){.banner-sizeId{min-height:100px;}
|
|
72
54
|
@media(min-width:970px){.banner-sizeId{min-height:250px;}
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
/>
|
|
78
|
-
</div>
|
|
55
|
+
</style>
|
|
56
|
+
<div
|
|
57
|
+
class="ad-slot ad-slot-loading banner-sizeId"
|
|
58
|
+
/>
|
|
79
59
|
</DocumentFragment>
|
|
80
60
|
`;
|
|
@@ -2,14 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
exports[`Banner render component should render 1`] = `
|
|
4
4
|
<DocumentFragment>
|
|
5
|
+
<style />
|
|
5
6
|
<div
|
|
6
|
-
class="banner
|
|
7
|
-
|
|
8
|
-
<style />
|
|
9
|
-
<div
|
|
10
|
-
class="ad-slot ad-slot-loading banner-sizeId"
|
|
11
|
-
data-testid="ad-slot"
|
|
12
|
-
/>
|
|
13
|
-
</div>
|
|
7
|
+
class="ad-slot ad-slot-loading banner-sizeId"
|
|
8
|
+
/>
|
|
14
9
|
</DocumentFragment>
|
|
15
10
|
`;
|
|
@@ -6,6 +6,10 @@ import { act, render, fireEvent, waitFor } from '@testing-library/react';
|
|
|
6
6
|
import '@testing-library/jest-dom/extend-expect';
|
|
7
7
|
import Button from '../../../../src/components/Button';
|
|
8
8
|
|
|
9
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
10
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
11
|
+
}));
|
|
12
|
+
|
|
9
13
|
jest.mock('@apollo/client', () => ({
|
|
10
14
|
...jest.requireActual('@apollo/client'),
|
|
11
15
|
useApolloClient: jest.fn(() => ({ resetStore: () => null }))
|
|
@@ -8,6 +8,10 @@ import '@testing-library/jest-dom/extend-expect';
|
|
|
8
8
|
import CardsContainer from '../../../../../src/components/Card/CardsContainer';
|
|
9
9
|
import { cardDataMockedOptions } from './mockData';
|
|
10
10
|
|
|
11
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
12
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
13
|
+
}));
|
|
14
|
+
|
|
11
15
|
// eslint-disable-next-line react/prop-types
|
|
12
16
|
jest.mock('../../../../../src/components/LazyImage', () => () => null);
|
|
13
17
|
|
|
@@ -7,6 +7,10 @@ import { shallow } from 'enzyme';
|
|
|
7
7
|
import CarouselImage from '../../../../../../src/components/Carousel/CarouselImage';
|
|
8
8
|
import CarouselRender from '../../../../../../src/components/Carousel/CarouselRender';
|
|
9
9
|
|
|
10
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
11
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
12
|
+
}));
|
|
13
|
+
|
|
10
14
|
const getMockedProps = overrides => ({
|
|
11
15
|
imageIds: ['test-id', 'test-altText', 'test-caption'],
|
|
12
16
|
displayCount: true,
|
|
@@ -5,6 +5,10 @@ import React from 'react';
|
|
|
5
5
|
import { render } from '@blaze-cms/tools/test-helpers/test-functions';
|
|
6
6
|
import Code from '../../../../../src/components/Code/Code';
|
|
7
7
|
|
|
8
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
9
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
10
|
+
}));
|
|
11
|
+
|
|
8
12
|
jest.mock('../../../../../src/components/Code/ScriptTag', () => () => (
|
|
9
13
|
<span data-testid="scriptTag" />
|
|
10
14
|
));
|
|
@@ -4,6 +4,10 @@
|
|
|
4
4
|
import { render } from '@blaze-cms/tools/test-helpers/test-functions';
|
|
5
5
|
import Code from '../../../../src/components/Code';
|
|
6
6
|
|
|
7
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
8
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
9
|
+
}));
|
|
10
|
+
|
|
7
11
|
const props = {
|
|
8
12
|
code: '<p>Lorem ipsum</p>',
|
|
9
13
|
parent: {
|
|
@@ -6,6 +6,10 @@ import '@testing-library/jest-dom/extend-expect';
|
|
|
6
6
|
import ItemDetailsSummary from '../../../../../../src/components/DataSummary/DataSummaryTypes/ItemDetailsSummary';
|
|
7
7
|
import { propsDataSummary } from '../mockData';
|
|
8
8
|
|
|
9
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
10
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
11
|
+
}));
|
|
12
|
+
|
|
9
13
|
describe('ItemDetailsSummary component', () => {
|
|
10
14
|
it('should render without throwing an error and match snapshot', () => {
|
|
11
15
|
const { asFragment } = render(ItemDetailsSummary, propsDataSummary);
|
|
@@ -6,6 +6,10 @@ import '@testing-library/jest-dom/extend-expect';
|
|
|
6
6
|
import LargeSummary from '../../../../../../src/components/DataSummary/DataSummaryTypes/LargeSummary/LargeSummary';
|
|
7
7
|
import { propsDataSummary } from '../mockData';
|
|
8
8
|
|
|
9
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
10
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
11
|
+
}));
|
|
12
|
+
|
|
9
13
|
describe('LargeSummary component', () => {
|
|
10
14
|
it('should render without throwing an error and match snapshot', () => {
|
|
11
15
|
const { asFragment } = render(LargeSummary, propsDataSummary);
|
|
@@ -6,6 +6,10 @@ import ListSummary from '../../../../../../src/components/DataSummary/DataSummar
|
|
|
6
6
|
import { propsDataSummary } from '../mockData';
|
|
7
7
|
import '@testing-library/jest-dom/extend-expect';
|
|
8
8
|
|
|
9
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
10
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
11
|
+
}));
|
|
12
|
+
|
|
9
13
|
describe('ListSummary component', () => {
|
|
10
14
|
it('should render without throwing an error and match snapshot', () => {
|
|
11
15
|
const { asFragment } = render(ListSummary, propsDataSummary);
|
|
@@ -6,6 +6,10 @@ import TextSummary from '../../../../../../src/components/DataSummary/DataSummar
|
|
|
6
6
|
import { propsDataSummary } from '../mockData';
|
|
7
7
|
import '@testing-library/jest-dom/extend-expect';
|
|
8
8
|
|
|
9
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
10
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
11
|
+
}));
|
|
12
|
+
|
|
9
13
|
describe('TextSummary component', () => {
|
|
10
14
|
it('should render without throwing an error and match snapshot', () => {
|
|
11
15
|
const { asFragment } = render(TextSummary, propsDataSummary);
|
|
@@ -90,45 +90,4 @@ describe('buildLoopPropsContent helper function', () => {
|
|
|
90
90
|
});
|
|
91
91
|
expect.hasAssertions();
|
|
92
92
|
});
|
|
93
|
-
|
|
94
|
-
it('should nested items with urls', () => {
|
|
95
|
-
const data = {
|
|
96
|
-
nestedLoopProp: [
|
|
97
|
-
{
|
|
98
|
-
nestedValue: 'abc',
|
|
99
|
-
url: 'http://blazecms.app/abc'
|
|
100
|
-
},
|
|
101
|
-
{
|
|
102
|
-
nestedValue: '123',
|
|
103
|
-
url: 'http://blazecms.app/123'
|
|
104
|
-
},
|
|
105
|
-
{
|
|
106
|
-
nestedValue: 'no url',
|
|
107
|
-
url: null
|
|
108
|
-
}
|
|
109
|
-
]
|
|
110
|
-
};
|
|
111
|
-
const withUrl = buildLoopPropsContent(
|
|
112
|
-
mockedLoopProps,
|
|
113
|
-
[
|
|
114
|
-
{
|
|
115
|
-
bold: false,
|
|
116
|
-
enableLink: true,
|
|
117
|
-
label: '',
|
|
118
|
-
modifier: '',
|
|
119
|
-
prefix: '',
|
|
120
|
-
propertiesToDisplay: ['nestedLoopProp.nestedValue'],
|
|
121
|
-
shouldStrip: true
|
|
122
|
-
}
|
|
123
|
-
],
|
|
124
|
-
0,
|
|
125
|
-
data
|
|
126
|
-
);
|
|
127
|
-
|
|
128
|
-
withUrl.forEach(([, value, url], index) => {
|
|
129
|
-
expect(value).toEqual(data.nestedLoopProp[index].nestedValue);
|
|
130
|
-
expect(url).toEqual(data.nestedLoopProp[index].url || '');
|
|
131
|
-
});
|
|
132
|
-
expect.hasAssertions();
|
|
133
|
-
});
|
|
134
93
|
});
|
|
@@ -38,25 +38,4 @@ describe('get link to published content', () => {
|
|
|
38
38
|
const result = getLinkToPublishedContent(publishedKey, props);
|
|
39
39
|
expect(result).toEqual('');
|
|
40
40
|
});
|
|
41
|
-
|
|
42
|
-
it('should return url from the currentValue', () => {
|
|
43
|
-
const currentValue = { url: 'currentValueUrl' };
|
|
44
|
-
const props = { content: [content] };
|
|
45
|
-
const result = getLinkToPublishedContent(publishedKey, props, currentValue);
|
|
46
|
-
expect(result).toEqual(currentValue.url);
|
|
47
|
-
});
|
|
48
|
-
|
|
49
|
-
it('should return url from the currentValue even if falsey', () => {
|
|
50
|
-
const currentValue = { url: null };
|
|
51
|
-
const props = { content: [content] };
|
|
52
|
-
const result = getLinkToPublishedContent(publishedKey, props, currentValue);
|
|
53
|
-
expect(result).toEqual(currentValue.url);
|
|
54
|
-
});
|
|
55
|
-
|
|
56
|
-
it('should not return url from the currentValue if not set', () => {
|
|
57
|
-
const currentValue = {};
|
|
58
|
-
const props = { content: [content] };
|
|
59
|
-
const result = getLinkToPublishedContent(publishedKey, props, currentValue);
|
|
60
|
-
expect(result).toEqual(content.url);
|
|
61
|
-
});
|
|
62
41
|
});
|
|
@@ -6,6 +6,10 @@ import { render } from '@blaze-cms/tools/test-helpers/test-functions';
|
|
|
6
6
|
import CardsRender from '../../../../../../../src/components/List/components/Cards';
|
|
7
7
|
import { MOCKED_LIST_OPTIONS } from '../mocks';
|
|
8
8
|
|
|
9
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
10
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
11
|
+
}));
|
|
12
|
+
|
|
9
13
|
jest.mock('../../../../../../../src/hooks', () => ({
|
|
10
14
|
useGetImages: jest.fn(() => ({ data: {}, loading: false }))
|
|
11
15
|
}));
|
|
@@ -7,6 +7,10 @@ import { render } from '@blaze-cms/tools/test-helpers/test-functions';
|
|
|
7
7
|
import CardsRenderWrapper from '../../../../../../../src/components/List/components/Cards/CardsRenderWrapper';
|
|
8
8
|
import { MOCKED_LIST_OPTIONS } from '../mocks';
|
|
9
9
|
|
|
10
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
11
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
12
|
+
}));
|
|
13
|
+
|
|
10
14
|
jest.mock('../../../../../../../src/components/List/components/Cards/CardsRenderItem', () =>
|
|
11
15
|
jest.fn().mockImplementation(({ id }) => <div>{id}</div>)
|
|
12
16
|
);
|
|
@@ -5,6 +5,10 @@ import { render } from '@blaze-cms/tools/test-helpers/test-functions';
|
|
|
5
5
|
import '@testing-library/jest-dom/extend-expect';
|
|
6
6
|
import { Checkbox } from '../../../../../../src/components/SearchFilter/components';
|
|
7
7
|
|
|
8
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
9
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
10
|
+
}));
|
|
11
|
+
|
|
8
12
|
jest.mock('next/router', () => ({
|
|
9
13
|
useRouter: jest.fn(() => ({ asPath: 'test-url' }))
|
|
10
14
|
}));
|
|
@@ -7,6 +7,10 @@ import '@testing-library/jest-dom/extend-expect';
|
|
|
7
7
|
import { SelectFilter } from '../../../../../../src/components/SearchFilter/components';
|
|
8
8
|
import { DEFAULT_OPTION } from '../../../../../../src/components/SearchFilter/constants';
|
|
9
9
|
|
|
10
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
11
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
12
|
+
}));
|
|
13
|
+
|
|
10
14
|
jest.mock('next/router', () => ({
|
|
11
15
|
useRouter: jest.fn(() => ({ asPath: 'test-url' }))
|
|
12
16
|
}));
|
|
@@ -6,6 +6,10 @@ import { screen } from '@testing-library/react';
|
|
|
6
6
|
import '@testing-library/jest-dom/extend-expect';
|
|
7
7
|
import { TextSearch } from '../../../../../../src/components/SearchFilter/components';
|
|
8
8
|
|
|
9
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
10
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
11
|
+
}));
|
|
12
|
+
|
|
9
13
|
jest.mock('next/router', () => ({
|
|
10
14
|
useRouter: jest.fn(() => ({ asPath: 'test-url' }))
|
|
11
15
|
}));
|
|
@@ -5,6 +5,10 @@ import { render } from '@blaze-cms/tools/test-helpers/test-functions';
|
|
|
5
5
|
import '@testing-library/jest-dom/extend-expect';
|
|
6
6
|
import SearchFilterSort from '../../../../../src/components/SearchFilterSort/SearchFilterSort';
|
|
7
7
|
|
|
8
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
9
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
10
|
+
}));
|
|
11
|
+
|
|
8
12
|
jest.mock('next/router', () => ({
|
|
9
13
|
useRouter: jest.fn(() => ({ asPath: 'test-url' }))
|
|
10
14
|
}));
|
|
@@ -5,6 +5,10 @@ import { render } from '@blaze-cms/tools/test-helpers/test-functions';
|
|
|
5
5
|
import '@testing-library/jest-dom/extend-expect';
|
|
6
6
|
import SocialFollow from '../../../../../src/components/SocialFollow';
|
|
7
7
|
|
|
8
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
9
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
10
|
+
}));
|
|
11
|
+
|
|
8
12
|
const MOCKED_SOCIAL_NETWORKS = {
|
|
9
13
|
facebook: 'facebook value',
|
|
10
14
|
twitter: 'twitter value'
|
|
@@ -5,6 +5,10 @@ import '@testing-library/jest-dom/extend-expect';
|
|
|
5
5
|
import { render } from '@blaze-cms/tools/test-helpers/test-functions';
|
|
6
6
|
import TextBlock from '../../../../../src/components/TextBlock';
|
|
7
7
|
|
|
8
|
+
jest.mock('@blaze-cms/utils-handlebars', () => ({
|
|
9
|
+
useStringTemplate: jest.fn((parent, [title]) => ({ loadig: false, data: [title] }))
|
|
10
|
+
}));
|
|
11
|
+
|
|
8
12
|
const { setEnvs, deleteEnvs } = require('@blaze-cms/tools/test-helpers/test-files/test-env');
|
|
9
13
|
|
|
10
14
|
const getMockedProps = overrides => ({
|
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
// Jest Snapshot v1, https://goo.gl/fbAQLP
|
|
2
|
-
|
|
3
|
-
exports[`Placeholder component should render PlaceholderIcon 1`] = `
|
|
4
|
-
<DocumentFragment>
|
|
5
|
-
<div
|
|
6
|
-
class="editor-view__placeholder"
|
|
7
|
-
data-testid="placeholder-icon"
|
|
8
|
-
>
|
|
9
|
-
<svg
|
|
10
|
-
height="25px"
|
|
11
|
-
version="1.1"
|
|
12
|
-
viewBox="0 0 16 16"
|
|
13
|
-
width="25px"
|
|
14
|
-
xmlns="http://www.w3.org/2000/svg"
|
|
15
|
-
>
|
|
16
|
-
<title>
|
|
17
|
-
card
|
|
18
|
-
</title>
|
|
19
|
-
<g
|
|
20
|
-
fill="none"
|
|
21
|
-
fill-rule="evenodd"
|
|
22
|
-
id="Icons"
|
|
23
|
-
stroke="none"
|
|
24
|
-
stroke-width="1"
|
|
25
|
-
>
|
|
26
|
-
<g
|
|
27
|
-
id="card"
|
|
28
|
-
transform="translate(-261.000000, -216.000000)"
|
|
29
|
-
>
|
|
30
|
-
<g
|
|
31
|
-
transform="translate(261.000000, 216.000000)"
|
|
32
|
-
>
|
|
33
|
-
<path
|
|
34
|
-
d="M15,1 L15,9.53124644 L14.998,9.531 L14.9986024,7.67959976 L11.4210663,4.62547112 L7.4590683,8.08893259 C7.08560181,8.77082265 6.07591438,8.77082265 5.51715851,8.27688661 L3.50145721,6.5 L1,8.77 L1,7.323 L2.58011188,5.9054667 C3.10161735,5.44445974 3.91799869,5.41372594 4.47882094,5.81326531 L4.59488493,5.9054667 L6.4402744,7.56106172 L10.4252459,3.98593625 C10.9840017,3.49200022 11.8812631,3.49200022 12.4400189,3.98593625 L14.9986024,6.28137475 L14.998,1 Z M6.14778213,2.60821539 C6.69719001,2.60821539 7.14257312,3.0379169 7.14257312,3.56798059 C7.14257312,4.09804429 6.69719002,4.52774581 6.14778213,4.52774581 C5.88422964,4.52580316 5.6316942,4.42547921 5.44313851,4.24781429 C5.25594548,4.06784498 5.15142164,3.82293899 5.15297371,3.56798059 C5.15297371,3.0379169 5.59837425,2.60821539 6.14778213,2.60821539 Z"
|
|
35
|
-
fill="#63779C"
|
|
36
|
-
fill-rule="nonzero"
|
|
37
|
-
id="Combined-Shape"
|
|
38
|
-
/>
|
|
39
|
-
<path
|
|
40
|
-
d="M3,13 C3,12.7238576 3.22385763,12.5 3.5,12.5 L12.5,12.5 C12.7761424,12.5 13,12.7238576 13,13 C13,13.2761424 12.7761424,13.5 12.5,13.5 L3.5,13.5 C3.22385763,13.5 3,13.2761424 3,13 Z"
|
|
41
|
-
fill="#899BBC"
|
|
42
|
-
fill-rule="nonzero"
|
|
43
|
-
id="Shape"
|
|
44
|
-
/>
|
|
45
|
-
<rect
|
|
46
|
-
height="15"
|
|
47
|
-
id="Rectangle"
|
|
48
|
-
rx="2"
|
|
49
|
-
stroke="#899BBC"
|
|
50
|
-
width="15"
|
|
51
|
-
x="0.5"
|
|
52
|
-
y="0.5"
|
|
53
|
-
/>
|
|
54
|
-
<line
|
|
55
|
-
id="Line-2"
|
|
56
|
-
stroke="#63779C"
|
|
57
|
-
stroke-linecap="square"
|
|
58
|
-
x1="0.5"
|
|
59
|
-
x2="15.5"
|
|
60
|
-
y1="10.5"
|
|
61
|
-
y2="10.5"
|
|
62
|
-
/>
|
|
63
|
-
</g>
|
|
64
|
-
</g>
|
|
65
|
-
</g>
|
|
66
|
-
</svg>
|
|
67
|
-
<span>
|
|
68
|
-
card
|
|
69
|
-
</span>
|
|
70
|
-
</div>
|
|
71
|
-
</DocumentFragment>
|
|
72
|
-
`;
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* @jest-environment jsdom
|
|
3
|
-
*/
|
|
4
|
-
import { render } from '@blaze-cms/tools/test-helpers/test-functions';
|
|
5
|
-
|
|
6
|
-
import PlaceholderIcon from '../../../../../../blaze-plugin-page-builder-ui/src/components/EditorView/PlaceholderIcon';
|
|
7
|
-
import { CardIcon } from '../../../../../../blaze-plugin-page-builder-ui/src/components/EditorView/Icons';
|
|
8
|
-
|
|
9
|
-
const mockedProps = {
|
|
10
|
-
type: 'card',
|
|
11
|
-
icon: CardIcon
|
|
12
|
-
};
|
|
13
|
-
|
|
14
|
-
describe('Placeholder component', () => {
|
|
15
|
-
it('should render PlaceholderIcon', () => {
|
|
16
|
-
const { asFragment, getByTestId } = render(PlaceholderIcon, mockedProps);
|
|
17
|
-
expect(getByTestId('placeholder-icon')).toBeDefined();
|
|
18
|
-
expect(asFragment()).toMatchSnapshot();
|
|
19
|
-
});
|
|
20
|
-
});
|