@arc-ui/community-components 12.0.0-beta.6 → 12.0.0-beta7
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/dist/Accordion/Accordion.cjs.js +48 -0
- package/dist/Accordion/Accordion.esm.js +40 -0
- package/dist/Accordion/package.json +7 -0
- package/dist/Accordion/styles.css +1 -0
- package/dist/Author/Author.cjs.js +16 -0
- package/dist/Author/Author.esm.js +8 -0
- package/dist/Author/package.json +7 -0
- package/dist/Author/styles.css +1 -0
- package/dist/CopyLead/CopyLead.cjs.js +56 -55
- package/dist/CopyLead/CopyLead.esm.js +53 -52
- package/dist/CopyLead/styles.css +1 -1
- package/dist/FeaturePost/FeaturePost.cjs.js +2245 -51
- package/dist/FeaturePost/FeaturePost.esm.js +2243 -49
- package/dist/FeaturePost/styles.css +1 -1
- package/dist/Highlights/Highlights.cjs.js +25 -26
- package/dist/Highlights/Highlights.esm.js +25 -26
- package/dist/PromoListing/PromoListing.cjs.js +44 -14937
- package/dist/PromoListing/PromoListing.esm.js +44 -14918
- package/dist/PromoListing/styles.css +1 -1
- package/dist/Quote/Quote.cjs.js +33 -0
- package/dist/Quote/Quote.esm.js +25 -0
- package/dist/Quote/package.json +7 -0
- package/dist/Quote/styles.css +1 -0
- package/dist/_shared/cjs/Author-cd166353.js +30 -0
- package/dist/_shared/cjs/index.es-875b2756.js +13 -0
- package/dist/_shared/{esm/index.es-8a0a3fd0.js → cjs/index.es-a9e01247.js} +2 -8
- package/dist/_shared/esm/Author-9c7cb4f2.js +24 -0
- package/dist/_shared/{cjs/index.es-5af2c2a1.js → esm/index.es-33860780.js} +1 -14
- package/dist/_shared/esm/index.es-a1591fd3.js +9 -0
- package/dist/index.es.js +2385 -15007
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +2380 -15000
- package/dist/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/types/components/Accordion/Accordion.d.ts +10 -0
- package/dist/types/components/Accordion/components/AccordionDisclosureList/AccordionDisclosureList.d.ts +9 -0
- package/dist/types/components/Accordion/components/AccordionHeader/AccordionHeader.d.ts +20 -0
- package/dist/types/components/Accordion/index.d.ts +1 -0
- package/dist/types/components/Author/Author.d.ts +17 -0
- package/dist/types/components/Author/index.d.ts +1 -0
- package/dist/types/components/CopyLead/CopyLead.d.ts +8 -3
- package/dist/types/components/CopyLead/components/MediaContent/MediaContent.d.ts +2 -0
- package/dist/types/components/CopyLead/templates/Content/Content.d.ts +3 -1
- package/dist/types/components/CopyLead/templates/Media/Media.d.ts +4 -2
- package/dist/types/components/FeaturePost/FeaturePost.d.ts +27 -1
- package/dist/types/components/FeaturePost/types/feature-post-cta-footer.d.ts +2 -6
- package/dist/types/components/Highlights/Highlights.d.ts +7 -2
- package/dist/types/components/Highlights/components/HighlightHeader/HighlightHeader.d.ts +6 -1
- package/dist/types/components/Highlights/components/HighlightList/HighlightList.d.ts +1 -1
- package/dist/types/components/PromoListing/PromoListing.d.ts +12 -5
- package/dist/types/components/PromoListing/components/PromoListingHeader/PromoListingHeader.d.ts +7 -2
- package/dist/types/components/Quote/Quote.d.ts +11 -0
- package/dist/types/components/Quote/index.d.ts +1 -0
- package/dist/types/components/index.d.ts +3 -0
- package/package.json +20 -22
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var tslib_es6 = require('../_shared/cjs/tslib.es6-ec509cfc.js');
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var index_es = require('../_shared/cjs/index.es-a9e01247.js');
|
|
8
|
+
var Heading = require('@arc-ui/components/dist/Heading');
|
|
9
|
+
var VerticalSpace = require('@arc-ui/components/dist/VerticalSpace');
|
|
10
|
+
var Disclosure = require('@arc-ui/components/dist/Disclosure');
|
|
11
|
+
|
|
12
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
13
|
+
|
|
14
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
15
|
+
|
|
16
|
+
var styles = {"header":"Accordion-module_header__WaTdJ","headerContent":"Accordion-module_headerContent__pjddt"};
|
|
17
|
+
|
|
18
|
+
/**
|
|
19
|
+
* Use `Accordion` to give supporting information about a page or proposition. It can be used to call out key benefits in bullet points, or link to a supporting explanatory video. An optional CTA can be used to link to further information or trigger a sales or enquiry journey.
|
|
20
|
+
*/
|
|
21
|
+
var AccordionHeader = function (_a) {
|
|
22
|
+
var heading = _a.heading, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, content = _a.content;
|
|
23
|
+
return (React__default["default"].createElement("div", { "data-testid": "Accordion-header", className: styles.header },
|
|
24
|
+
React__default["default"].createElement(Heading.Heading, { level: headingLevel, size: "xl" }, heading),
|
|
25
|
+
content && (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
26
|
+
React__default["default"].createElement(VerticalSpace.VerticalSpace, { size: "24" }),
|
|
27
|
+
React__default["default"].createElement("p", { className: styles.headerContent }, content)))));
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
var AccordionDisclosureList = function (_a) {
|
|
31
|
+
var disclosureList = _a.disclosureList;
|
|
32
|
+
return (React__default["default"].createElement(React__default["default"].Fragment, null, disclosureList.map(function (_a, index) {
|
|
33
|
+
var children = _a.children, summary = _a.summary, _b = _a.isOpen, isOpen = _b === void 0 ? false : _b, _c = _a.indentDetails, indentDetails = _c === void 0 ? false : _c, headingLevel = _a.headingLevel;
|
|
34
|
+
return (React__default["default"].createElement(Disclosure.Disclosure, { key: index, summary: summary, isOpen: isOpen, indentDetails: indentDetails, headingLevel: headingLevel }, children));
|
|
35
|
+
})));
|
|
36
|
+
};
|
|
37
|
+
|
|
38
|
+
/**
|
|
39
|
+
* Use the `Accordion` component to package together a title, content and a number of disclosure components into one section (maximum 10).
|
|
40
|
+
*/
|
|
41
|
+
var Accordion = function (_a) {
|
|
42
|
+
var heading = _a.heading, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, content = _a.content, disclosureList = _a.disclosureList, props = tslib_es6.__rest(_a, ["heading", "headingLevel", "content", "disclosureList"]);
|
|
43
|
+
return (React__default["default"].createElement("div", tslib_es6.__assign({}, index_es.filterDataAttrs(props)),
|
|
44
|
+
React__default["default"].createElement(AccordionHeader, { heading: heading, headingLevel: headingLevel, content: content }),
|
|
45
|
+
React__default["default"].createElement(AccordionDisclosureList, { disclosureList: disclosureList })));
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
exports.Accordion = Accordion;
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { _ as __rest, a as __assign } from '../_shared/esm/tslib.es6-2bdcff75.js';
|
|
2
|
+
import React from 'react';
|
|
3
|
+
import { f as filterDataAttrs } from '../_shared/esm/index.es-33860780.js';
|
|
4
|
+
import { Heading } from '@arc-ui/components/dist/Heading';
|
|
5
|
+
import { VerticalSpace } from '@arc-ui/components/dist/VerticalSpace';
|
|
6
|
+
import { Disclosure } from '@arc-ui/components/dist/Disclosure';
|
|
7
|
+
|
|
8
|
+
var styles = {"header":"Accordion-module_header__WaTdJ","headerContent":"Accordion-module_headerContent__pjddt"};
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Use `Accordion` to give supporting information about a page or proposition. It can be used to call out key benefits in bullet points, or link to a supporting explanatory video. An optional CTA can be used to link to further information or trigger a sales or enquiry journey.
|
|
12
|
+
*/
|
|
13
|
+
var AccordionHeader = function (_a) {
|
|
14
|
+
var heading = _a.heading, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, content = _a.content;
|
|
15
|
+
return (React.createElement("div", { "data-testid": "Accordion-header", className: styles.header },
|
|
16
|
+
React.createElement(Heading, { level: headingLevel, size: "xl" }, heading),
|
|
17
|
+
content && (React.createElement(React.Fragment, null,
|
|
18
|
+
React.createElement(VerticalSpace, { size: "24" }),
|
|
19
|
+
React.createElement("p", { className: styles.headerContent }, content)))));
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
var AccordionDisclosureList = function (_a) {
|
|
23
|
+
var disclosureList = _a.disclosureList;
|
|
24
|
+
return (React.createElement(React.Fragment, null, disclosureList.map(function (_a, index) {
|
|
25
|
+
var children = _a.children, summary = _a.summary, _b = _a.isOpen, isOpen = _b === void 0 ? false : _b, _c = _a.indentDetails, indentDetails = _c === void 0 ? false : _c, headingLevel = _a.headingLevel;
|
|
26
|
+
return (React.createElement(Disclosure, { key: index, summary: summary, isOpen: isOpen, indentDetails: indentDetails, headingLevel: headingLevel }, children));
|
|
27
|
+
})));
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
/**
|
|
31
|
+
* Use the `Accordion` component to package together a title, content and a number of disclosure components into one section (maximum 10).
|
|
32
|
+
*/
|
|
33
|
+
var Accordion = function (_a) {
|
|
34
|
+
var heading = _a.heading, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, content = _a.content, disclosureList = _a.disclosureList, props = __rest(_a, ["heading", "headingLevel", "content", "disclosureList"]);
|
|
35
|
+
return (React.createElement("div", __assign({}, filterDataAttrs(props)),
|
|
36
|
+
React.createElement(AccordionHeader, { heading: heading, headingLevel: headingLevel, content: content }),
|
|
37
|
+
React.createElement(AccordionDisclosureList, { disclosureList: disclosureList })));
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
export { Accordion };
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.Accordion-module_header__WaTdJ{display:flex;flex-direction:column;padding-bottom:40px;width:auto}.Accordion-module_headerContent__pjddt{color:#2a2a2a;font-size:20px;line-height:28px;margin:0}@media (min-width:636px){.Accordion-module_header__WaTdJ{min-width:588px;width:auto}}@media (min-width:768px){.Accordion-module_header__WaTdJ{min-width:720px;padding:0 186px 40px 0}}@media (min-width:1024px){.Accordion-module_header__WaTdJ{min-width:960px;padding:0 246px 40px 0}}@media (min-width:1280px){.Accordion-module_header__WaTdJ{min-width:1216px;padding:0 312px 40px 0}}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var Author = require('../_shared/cjs/Author-cd166353.js');
|
|
6
|
+
require('../_shared/cjs/tslib.es6-ec509cfc.js');
|
|
7
|
+
require('react');
|
|
8
|
+
require('../_shared/cjs/index.es-a9e01247.js');
|
|
9
|
+
require('@arc-ui/components/dist/Grid');
|
|
10
|
+
require('@arc-ui/components/dist/Avatar');
|
|
11
|
+
require('@arc-ui/components/dist/Heading');
|
|
12
|
+
require('@arc-ui/components/dist/Text');
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
exports.Author = Author.Author;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { A as Author } from '../_shared/esm/Author-9c7cb4f2.js';
|
|
2
|
+
import '../_shared/esm/tslib.es6-2bdcff75.js';
|
|
3
|
+
import 'react';
|
|
4
|
+
import '../_shared/esm/index.es-33860780.js';
|
|
5
|
+
import '@arc-ui/components/dist/Grid';
|
|
6
|
+
import '@arc-ui/components/dist/Avatar';
|
|
7
|
+
import '@arc-ui/components/dist/Heading';
|
|
8
|
+
import '@arc-ui/components/dist/Text';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
.Author-module_authorContent__TBY7b{padding-left:var(--sem-space-padding-70)}
|
|
@@ -3,8 +3,9 @@
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
5
|
var tslib_es6 = require('../_shared/cjs/tslib.es6-ec509cfc.js');
|
|
6
|
-
var
|
|
7
|
-
var index_es = require('../_shared/cjs/index.es-
|
|
6
|
+
var React = require('react');
|
|
7
|
+
var index_es$1 = require('../_shared/cjs/index.es-a9e01247.js');
|
|
8
|
+
var index_es = require('../_shared/cjs/index.es-875b2756.js');
|
|
8
9
|
var Columns = require('@arc-ui/components/dist/Columns');
|
|
9
10
|
var useMediaQuery = require('@arc-ui/components/dist/use-media-query');
|
|
10
11
|
var Heading = require('@arc-ui/components/dist/Heading');
|
|
@@ -35,61 +36,61 @@ function _interopNamespace(e) {
|
|
|
35
36
|
return Object.freeze(n);
|
|
36
37
|
}
|
|
37
38
|
|
|
38
|
-
var
|
|
39
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
39
40
|
|
|
40
41
|
var styles = {"buttonContainer":"CopyLead-module_buttonContainer__3OaRG","col":"CopyLead-module_col__0Da5H","container":"CopyLead-module_container__I91ym","container--content":"CopyLead-module_container--content__e8LxG","container--media":"CopyLead-module_container--media__QcMWi","container--align-center":"CopyLead-module_container--align-center__Fh1Sd","container--align-top":"CopyLead-module_container--align-top__UIXOZ","list":"CopyLead-module_list__arnJd","listItem":"CopyLead-module_listItem__NscHE","listItemCentered":"CopyLead-module_listItemCentered__Kwdab","listItemIconContainer":"CopyLead-module_listItemIconContainer__dgnhJ","listItemTextContainer":"CopyLead-module_listItemTextContainer__Dl9lw","imgWrapper":"CopyLead-module_imgWrapper__HYP3w","mediaContainer":"CopyLead-module_mediaContainer__PxTnm","content":"CopyLead-module_content__Bja1D","container--reverse":"CopyLead-module_container--reverse__Gq9u8"};
|
|
41
42
|
|
|
42
43
|
var MediaContent = function (_a) {
|
|
43
|
-
var heading = _a.heading, children = _a.children;
|
|
44
|
-
return (
|
|
45
|
-
|
|
46
|
-
children && (
|
|
47
|
-
|
|
48
|
-
|
|
44
|
+
var heading = _a.heading, headingLevel = _a.headingLevel, children = _a.children;
|
|
45
|
+
return (React__default["default"].createElement("div", { className: styles.mediaContainer },
|
|
46
|
+
React__default["default"].createElement(Heading.Heading, { level: headingLevel, size: "xl" }, heading),
|
|
47
|
+
children && (React__default["default"].createElement("div", { className: styles.content },
|
|
48
|
+
React__default["default"].createElement(VerticalSpace.VerticalSpace, { size: "24" }),
|
|
49
|
+
React__default["default"].createElement(Text.Text, { size: "l" }, children)))));
|
|
49
50
|
};
|
|
50
51
|
|
|
51
52
|
var Image = function (_a) {
|
|
52
53
|
var sources = _a.sources, props = tslib_es6.__rest(_a, ["sources"]);
|
|
53
|
-
return (
|
|
54
|
-
|
|
55
|
-
sources.map(function (source) { return (
|
|
54
|
+
return (React__default["default"].createElement("div", { className: styles.imgWrapper },
|
|
55
|
+
React__default["default"].createElement(Image$1.Image, tslib_es6.__assign({ fadeOnLoad: true }, props), sources &&
|
|
56
|
+
sources.map(function (source) { return (React__default["default"].createElement(Image$1.Image.Source, tslib_es6.__assign({ key: source.srcSet }, source))); }))));
|
|
56
57
|
};
|
|
57
58
|
|
|
58
59
|
var IconList = function (_a) {
|
|
59
60
|
var listItems = _a.listItems, isLgScreen = _a.isLgScreen;
|
|
60
|
-
return (
|
|
61
|
+
return (React__default["default"].createElement("ul", { className: styles.list }, listItems.map(function (_a) {
|
|
61
62
|
var _b;
|
|
62
63
|
var icon = _a.icon, heading = _a.heading, text = _a.text;
|
|
63
|
-
return (
|
|
64
|
+
return (React__default["default"].createElement("li", { key: heading, className: index.classNames(styles.listItem, (_b = {},
|
|
64
65
|
_b[styles.listItemCentered] = !text,
|
|
65
66
|
_b)) },
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
text && (
|
|
71
|
-
|
|
72
|
-
|
|
67
|
+
React__default["default"].createElement("div", { className: styles.listItemIconContainer },
|
|
68
|
+
React__default["default"].createElement(Icon.Icon, { color: "brand", icon: icon, size: isLgScreen ? 64 : 48 })),
|
|
69
|
+
React__default["default"].createElement("div", { className: styles.listItemTextContainer },
|
|
70
|
+
React__default["default"].createElement(Heading.Heading, { level: "3", size: "s" }, heading),
|
|
71
|
+
text && (React__default["default"].createElement(React__default["default"].Fragment, null,
|
|
72
|
+
React__default["default"].createElement(VerticalSpace.VerticalSpace, { size: "8", sizeL: "16" }),
|
|
73
|
+
React__default["default"].createElement(Text.Text, null, text))))));
|
|
73
74
|
})));
|
|
74
75
|
};
|
|
75
76
|
|
|
76
|
-
var Button = function (props) { return (
|
|
77
|
-
|
|
77
|
+
var Button = function (props) { return (React__default["default"].createElement("div", { className: styles.buttonContainer },
|
|
78
|
+
React__default["default"].createElement(ButtonV2.ButtonV2, tslib_es6.__assign({ isFullWidth: true, buttonStyle: "secondary" }, props)))); };
|
|
78
79
|
|
|
79
80
|
var Container = function (_a) {
|
|
80
81
|
var _b;
|
|
81
82
|
var children = _a.children, isReverseOrder = _a.isReverseOrder, type = _a.type, alignment = _a.alignment;
|
|
82
|
-
return (
|
|
83
|
+
return (React__default["default"].createElement("div", { "data-testid": "copy-lead-container", className: index.classNames(styles.container, styles["container--".concat(type)], styles["container--align-".concat(alignment)], (_b = {},
|
|
83
84
|
_b[styles["container--reverse"]] = isReverseOrder,
|
|
84
85
|
_b)) }, children));
|
|
85
86
|
};
|
|
86
87
|
|
|
87
88
|
var Column = function (_a) {
|
|
88
89
|
var children = _a.children;
|
|
89
|
-
return (
|
|
90
|
+
return (React__default["default"].createElement("div", { className: styles.col }, children));
|
|
90
91
|
};
|
|
91
92
|
|
|
92
|
-
var VideoPlayer =
|
|
93
|
+
var VideoPlayer = React__default["default"].lazy(function () {
|
|
93
94
|
return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require('@arc-ui/components/dist/VideoPlayer')); }).then(function (_a) {
|
|
94
95
|
var VideoPlayer = _a.VideoPlayer;
|
|
95
96
|
return ({
|
|
@@ -98,53 +99,53 @@ var VideoPlayer = React__default__default["default"].lazy(function () {
|
|
|
98
99
|
});
|
|
99
100
|
});
|
|
100
101
|
var MediaTemplate = function (_a) {
|
|
101
|
-
var button = _a.button,
|
|
102
|
-
var _c =
|
|
102
|
+
var button = _a.button, heading = _a.heading, headingLevel = _a.headingLevel, listItems = _a.listItems, video = _a.video, image = _a.image, content = _a.content, _b = _a.isReverseOrder, isReverseOrder = _b === void 0 ? false : _b;
|
|
103
|
+
var _c = React.useState(false), isClient = _c[0], setIsClient = _c[1];
|
|
103
104
|
var isMinWidthArcBreakpointL = useMediaQuery.useMediaQuery("(min-width: ".concat(index_es.SemSizeBreakpointsL, ")"));
|
|
104
105
|
var isMinWidthArcBreakpointXl = useMediaQuery.useMediaQuery("(min-width: ".concat(index_es.SemSizeBreakpointsXl, ")"));
|
|
105
|
-
|
|
106
|
+
React.useEffect(function () {
|
|
106
107
|
setIsClient(true);
|
|
107
108
|
}, []);
|
|
108
|
-
return (
|
|
109
|
-
!isMinWidthArcBreakpointXl && (
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
isMinWidthArcBreakpointXl && (
|
|
115
|
-
|
|
116
|
-
button &&
|
|
117
|
-
|
|
118
|
-
video && isClient && (
|
|
119
|
-
|
|
120
|
-
image && !video &&
|
|
109
|
+
return (React__default["default"].createElement("div", null,
|
|
110
|
+
!isMinWidthArcBreakpointXl && (React__default["default"].createElement(Columns.Columns, null,
|
|
111
|
+
React__default["default"].createElement(Columns.Columns.Col, { span: 12, spanM: 9 },
|
|
112
|
+
React__default["default"].createElement(MediaContent, { heading: heading, headingLevel: headingLevel }, content)))),
|
|
113
|
+
React__default["default"].createElement(Container, { type: "media", isReverseOrder: isReverseOrder, alignment: !isMinWidthArcBreakpointXl ? "top" : "center" },
|
|
114
|
+
React__default["default"].createElement(Column, null,
|
|
115
|
+
isMinWidthArcBreakpointXl && (React__default["default"].createElement(MediaContent, { heading: heading }, content)),
|
|
116
|
+
React__default["default"].createElement(IconList, { listItems: listItems, isLgScreen: isMinWidthArcBreakpointL }),
|
|
117
|
+
button && React__default["default"].createElement(Button, tslib_es6.__assign({}, button))),
|
|
118
|
+
React__default["default"].createElement(Column, null,
|
|
119
|
+
video && isClient && (React__default["default"].createElement(React.Suspense, { fallback: null },
|
|
120
|
+
React__default["default"].createElement(VideoPlayer, tslib_es6.__assign({}, video)))),
|
|
121
|
+
image && !video && React__default["default"].createElement(Image, tslib_es6.__assign({}, image))))));
|
|
121
122
|
};
|
|
122
123
|
|
|
123
124
|
var ContentTemplate = function (_a) {
|
|
124
|
-
var button = _a.button,
|
|
125
|
+
var button = _a.button, heading = _a.heading, headingLevel = _a.headingLevel, listItems = _a.listItems, content = _a.content;
|
|
125
126
|
var isMinWidthArcBreakpointM = useMediaQuery.useMediaQuery("(min-width: ".concat(index_es.SemSizeBreakpointsM, ")"));
|
|
126
127
|
var isMinWidthArcBreakpointL = useMediaQuery.useMediaQuery("(min-width: ".concat(index_es.SemSizeBreakpointsL, ")"));
|
|
127
|
-
return (
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
button && isMinWidthArcBreakpointM &&
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
button && !isMinWidthArcBreakpointM &&
|
|
128
|
+
return (React__default["default"].createElement(Container, { type: "content", alignment: "top" },
|
|
129
|
+
React__default["default"].createElement(Column, null,
|
|
130
|
+
React__default["default"].createElement(Heading.Heading, { level: headingLevel, size: "xl" }, heading),
|
|
131
|
+
React__default["default"].createElement(VerticalSpace.VerticalSpace, { size: "24" }),
|
|
132
|
+
React__default["default"].createElement(Text.Text, { size: "l" }, content),
|
|
133
|
+
button && isMinWidthArcBreakpointM && React__default["default"].createElement(Button, tslib_es6.__assign({}, button))),
|
|
134
|
+
React__default["default"].createElement(Column, null,
|
|
135
|
+
React__default["default"].createElement(IconList, { listItems: listItems, isLgScreen: isMinWidthArcBreakpointL }),
|
|
136
|
+
button && !isMinWidthArcBreakpointM && React__default["default"].createElement(Button, tslib_es6.__assign({}, button)))));
|
|
136
137
|
};
|
|
137
138
|
|
|
138
139
|
/**
|
|
139
140
|
* Use `CopyLead` to give supporting information about a page or proposition. It can be used to call out key benefits in bullet points, or link to a supporting explanatory video. An optional CTA can be used to link to further information or trigger a sales or enquiry journey.
|
|
140
141
|
*/
|
|
141
142
|
var CopyLead = function (_a) {
|
|
142
|
-
var button = _a.button,
|
|
143
|
+
var button = _a.button, heading = _a.heading, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, listItems = _a.listItems, video = _a.video, image = _a.image, content = _a.content, _c = _a.isReverseOrder, isReverseOrder = _c === void 0 ? false : _c, props = tslib_es6.__rest(_a, ["button", "heading", "headingLevel", "listItems", "video", "image", "content", "isReverseOrder"]);
|
|
143
144
|
if (video || image) {
|
|
144
|
-
return (
|
|
145
|
+
return (React__default["default"].createElement(MediaTemplate, tslib_es6.__assign({ content: content, video: video, image: image, listItems: listItems, heading: heading, headingLevel: headingLevel, button: button, isReverseOrder: isReverseOrder }, index_es$1.filterDataAttrs(props))));
|
|
145
146
|
}
|
|
146
147
|
if (content) {
|
|
147
|
-
return (
|
|
148
|
+
return (React__default["default"].createElement(ContentTemplate, { listItems: listItems, heading: heading, headingLevel: headingLevel, button: button, content: content }));
|
|
148
149
|
}
|
|
149
150
|
return null;
|
|
150
151
|
};
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { _ as __rest, a as __assign } from '../_shared/esm/tslib.es6-2bdcff75.js';
|
|
2
|
-
import
|
|
3
|
-
import {
|
|
2
|
+
import React, { useState, useEffect, Suspense } from 'react';
|
|
3
|
+
import { f as filterDataAttrs } from '../_shared/esm/index.es-33860780.js';
|
|
4
|
+
import { S as SemSizeBreakpointsL, a as SemSizeBreakpointsXl, b as SemSizeBreakpointsM } from '../_shared/esm/index.es-a1591fd3.js';
|
|
4
5
|
import { Columns } from '@arc-ui/components/dist/Columns';
|
|
5
6
|
import { useMediaQuery } from '@arc-ui/components/dist/use-media-query';
|
|
6
7
|
import { Heading } from '@arc-ui/components/dist/Heading';
|
|
@@ -14,56 +15,56 @@ import { ButtonV2 } from '@arc-ui/components/dist/ButtonV2';
|
|
|
14
15
|
var styles = {"buttonContainer":"CopyLead-module_buttonContainer__3OaRG","col":"CopyLead-module_col__0Da5H","container":"CopyLead-module_container__I91ym","container--content":"CopyLead-module_container--content__e8LxG","container--media":"CopyLead-module_container--media__QcMWi","container--align-center":"CopyLead-module_container--align-center__Fh1Sd","container--align-top":"CopyLead-module_container--align-top__UIXOZ","list":"CopyLead-module_list__arnJd","listItem":"CopyLead-module_listItem__NscHE","listItemCentered":"CopyLead-module_listItemCentered__Kwdab","listItemIconContainer":"CopyLead-module_listItemIconContainer__dgnhJ","listItemTextContainer":"CopyLead-module_listItemTextContainer__Dl9lw","imgWrapper":"CopyLead-module_imgWrapper__HYP3w","mediaContainer":"CopyLead-module_mediaContainer__PxTnm","content":"CopyLead-module_content__Bja1D","container--reverse":"CopyLead-module_container--reverse__Gq9u8"};
|
|
15
16
|
|
|
16
17
|
var MediaContent = function (_a) {
|
|
17
|
-
var heading = _a.heading, children = _a.children;
|
|
18
|
-
return (
|
|
19
|
-
|
|
20
|
-
children && (
|
|
21
|
-
|
|
22
|
-
|
|
18
|
+
var heading = _a.heading, headingLevel = _a.headingLevel, children = _a.children;
|
|
19
|
+
return (React.createElement("div", { className: styles.mediaContainer },
|
|
20
|
+
React.createElement(Heading, { level: headingLevel, size: "xl" }, heading),
|
|
21
|
+
children && (React.createElement("div", { className: styles.content },
|
|
22
|
+
React.createElement(VerticalSpace, { size: "24" }),
|
|
23
|
+
React.createElement(Text, { size: "l" }, children)))));
|
|
23
24
|
};
|
|
24
25
|
|
|
25
26
|
var Image = function (_a) {
|
|
26
27
|
var sources = _a.sources, props = __rest(_a, ["sources"]);
|
|
27
|
-
return (
|
|
28
|
-
|
|
29
|
-
sources.map(function (source) { return (
|
|
28
|
+
return (React.createElement("div", { className: styles.imgWrapper },
|
|
29
|
+
React.createElement(Image$1, __assign({ fadeOnLoad: true }, props), sources &&
|
|
30
|
+
sources.map(function (source) { return (React.createElement(Image$1.Source, __assign({ key: source.srcSet }, source))); }))));
|
|
30
31
|
};
|
|
31
32
|
|
|
32
33
|
var IconList = function (_a) {
|
|
33
34
|
var listItems = _a.listItems, isLgScreen = _a.isLgScreen;
|
|
34
|
-
return (
|
|
35
|
+
return (React.createElement("ul", { className: styles.list }, listItems.map(function (_a) {
|
|
35
36
|
var _b;
|
|
36
37
|
var icon = _a.icon, heading = _a.heading, text = _a.text;
|
|
37
|
-
return (
|
|
38
|
+
return (React.createElement("li", { key: heading, className: classNames(styles.listItem, (_b = {},
|
|
38
39
|
_b[styles.listItemCentered] = !text,
|
|
39
40
|
_b)) },
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
text && (
|
|
45
|
-
|
|
46
|
-
|
|
41
|
+
React.createElement("div", { className: styles.listItemIconContainer },
|
|
42
|
+
React.createElement(Icon, { color: "brand", icon: icon, size: isLgScreen ? 64 : 48 })),
|
|
43
|
+
React.createElement("div", { className: styles.listItemTextContainer },
|
|
44
|
+
React.createElement(Heading, { level: "3", size: "s" }, heading),
|
|
45
|
+
text && (React.createElement(React.Fragment, null,
|
|
46
|
+
React.createElement(VerticalSpace, { size: "8", sizeL: "16" }),
|
|
47
|
+
React.createElement(Text, null, text))))));
|
|
47
48
|
})));
|
|
48
49
|
};
|
|
49
50
|
|
|
50
|
-
var Button = function (props) { return (
|
|
51
|
-
|
|
51
|
+
var Button = function (props) { return (React.createElement("div", { className: styles.buttonContainer },
|
|
52
|
+
React.createElement(ButtonV2, __assign({ isFullWidth: true, buttonStyle: "secondary" }, props)))); };
|
|
52
53
|
|
|
53
54
|
var Container = function (_a) {
|
|
54
55
|
var _b;
|
|
55
56
|
var children = _a.children, isReverseOrder = _a.isReverseOrder, type = _a.type, alignment = _a.alignment;
|
|
56
|
-
return (
|
|
57
|
+
return (React.createElement("div", { "data-testid": "copy-lead-container", className: classNames(styles.container, styles["container--".concat(type)], styles["container--align-".concat(alignment)], (_b = {},
|
|
57
58
|
_b[styles["container--reverse"]] = isReverseOrder,
|
|
58
59
|
_b)) }, children));
|
|
59
60
|
};
|
|
60
61
|
|
|
61
62
|
var Column = function (_a) {
|
|
62
63
|
var children = _a.children;
|
|
63
|
-
return (
|
|
64
|
+
return (React.createElement("div", { className: styles.col }, children));
|
|
64
65
|
};
|
|
65
66
|
|
|
66
|
-
var VideoPlayer =
|
|
67
|
+
var VideoPlayer = React.lazy(function () {
|
|
67
68
|
return import('@arc-ui/components/dist/VideoPlayer').then(function (_a) {
|
|
68
69
|
var VideoPlayer = _a.VideoPlayer;
|
|
69
70
|
return ({
|
|
@@ -72,53 +73,53 @@ var VideoPlayer = React__default__default.lazy(function () {
|
|
|
72
73
|
});
|
|
73
74
|
});
|
|
74
75
|
var MediaTemplate = function (_a) {
|
|
75
|
-
var button = _a.button,
|
|
76
|
+
var button = _a.button, heading = _a.heading, headingLevel = _a.headingLevel, listItems = _a.listItems, video = _a.video, image = _a.image, content = _a.content, _b = _a.isReverseOrder, isReverseOrder = _b === void 0 ? false : _b;
|
|
76
77
|
var _c = useState(false), isClient = _c[0], setIsClient = _c[1];
|
|
77
78
|
var isMinWidthArcBreakpointL = useMediaQuery("(min-width: ".concat(SemSizeBreakpointsL, ")"));
|
|
78
79
|
var isMinWidthArcBreakpointXl = useMediaQuery("(min-width: ".concat(SemSizeBreakpointsXl, ")"));
|
|
79
80
|
useEffect(function () {
|
|
80
81
|
setIsClient(true);
|
|
81
82
|
}, []);
|
|
82
|
-
return (
|
|
83
|
-
!isMinWidthArcBreakpointXl && (
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
isMinWidthArcBreakpointXl && (
|
|
89
|
-
|
|
90
|
-
button &&
|
|
91
|
-
|
|
92
|
-
video && isClient && (
|
|
93
|
-
|
|
94
|
-
image && !video &&
|
|
83
|
+
return (React.createElement("div", null,
|
|
84
|
+
!isMinWidthArcBreakpointXl && (React.createElement(Columns, null,
|
|
85
|
+
React.createElement(Columns.Col, { span: 12, spanM: 9 },
|
|
86
|
+
React.createElement(MediaContent, { heading: heading, headingLevel: headingLevel }, content)))),
|
|
87
|
+
React.createElement(Container, { type: "media", isReverseOrder: isReverseOrder, alignment: !isMinWidthArcBreakpointXl ? "top" : "center" },
|
|
88
|
+
React.createElement(Column, null,
|
|
89
|
+
isMinWidthArcBreakpointXl && (React.createElement(MediaContent, { heading: heading }, content)),
|
|
90
|
+
React.createElement(IconList, { listItems: listItems, isLgScreen: isMinWidthArcBreakpointL }),
|
|
91
|
+
button && React.createElement(Button, __assign({}, button))),
|
|
92
|
+
React.createElement(Column, null,
|
|
93
|
+
video && isClient && (React.createElement(Suspense, { fallback: null },
|
|
94
|
+
React.createElement(VideoPlayer, __assign({}, video)))),
|
|
95
|
+
image && !video && React.createElement(Image, __assign({}, image))))));
|
|
95
96
|
};
|
|
96
97
|
|
|
97
98
|
var ContentTemplate = function (_a) {
|
|
98
|
-
var button = _a.button,
|
|
99
|
+
var button = _a.button, heading = _a.heading, headingLevel = _a.headingLevel, listItems = _a.listItems, content = _a.content;
|
|
99
100
|
var isMinWidthArcBreakpointM = useMediaQuery("(min-width: ".concat(SemSizeBreakpointsM, ")"));
|
|
100
101
|
var isMinWidthArcBreakpointL = useMediaQuery("(min-width: ".concat(SemSizeBreakpointsL, ")"));
|
|
101
|
-
return (
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
button && isMinWidthArcBreakpointM &&
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
button && !isMinWidthArcBreakpointM &&
|
|
102
|
+
return (React.createElement(Container, { type: "content", alignment: "top" },
|
|
103
|
+
React.createElement(Column, null,
|
|
104
|
+
React.createElement(Heading, { level: headingLevel, size: "xl" }, heading),
|
|
105
|
+
React.createElement(VerticalSpace, { size: "24" }),
|
|
106
|
+
React.createElement(Text, { size: "l" }, content),
|
|
107
|
+
button && isMinWidthArcBreakpointM && React.createElement(Button, __assign({}, button))),
|
|
108
|
+
React.createElement(Column, null,
|
|
109
|
+
React.createElement(IconList, { listItems: listItems, isLgScreen: isMinWidthArcBreakpointL }),
|
|
110
|
+
button && !isMinWidthArcBreakpointM && React.createElement(Button, __assign({}, button)))));
|
|
110
111
|
};
|
|
111
112
|
|
|
112
113
|
/**
|
|
113
114
|
* Use `CopyLead` to give supporting information about a page or proposition. It can be used to call out key benefits in bullet points, or link to a supporting explanatory video. An optional CTA can be used to link to further information or trigger a sales or enquiry journey.
|
|
114
115
|
*/
|
|
115
116
|
var CopyLead = function (_a) {
|
|
116
|
-
var button = _a.button,
|
|
117
|
+
var button = _a.button, heading = _a.heading, _b = _a.headingLevel, headingLevel = _b === void 0 ? "2" : _b, listItems = _a.listItems, video = _a.video, image = _a.image, content = _a.content, _c = _a.isReverseOrder, isReverseOrder = _c === void 0 ? false : _c, props = __rest(_a, ["button", "heading", "headingLevel", "listItems", "video", "image", "content", "isReverseOrder"]);
|
|
117
118
|
if (video || image) {
|
|
118
|
-
return (
|
|
119
|
+
return (React.createElement(MediaTemplate, __assign({ content: content, video: video, image: image, listItems: listItems, heading: heading, headingLevel: headingLevel, button: button, isReverseOrder: isReverseOrder }, filterDataAttrs(props))));
|
|
119
120
|
}
|
|
120
121
|
if (content) {
|
|
121
|
-
return (
|
|
122
|
+
return (React.createElement(ContentTemplate, { listItems: listItems, heading: heading, headingLevel: headingLevel, button: button, content: content }));
|
|
122
123
|
}
|
|
123
124
|
return null;
|
|
124
125
|
};
|
package/dist/CopyLead/styles.css
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
.CopyLead-module_buttonContainer__3OaRG{margin:var(--sem-space-padding-150) auto 0;width:100%}.CopyLead-module_col__0Da5H{flex:1 1 auto;width:100%}.CopyLead-module_container__I91ym{align-items:flex-start;display:flex;gap:var(--sem-space-padding-150)}.CopyLead-module_container--content__e8LxG{flex-direction:column}.CopyLead-module_container--media__QcMWi{flex-direction:column-reverse}.CopyLead-module_container--align-center__Fh1Sd{align-items:center}.CopyLead-module_container--align-top__UIXOZ{align-items:flex-start}.CopyLead-module_list__arnJd{list-style:none;margin:0;max-width:480px;padding:0}.CopyLead-module_listItem__NscHE{display:flex}.CopyLead-module_listItem__NscHE:nth-of-type(n+2){margin-top:var(--sem-space-padding-150)}.CopyLead-module_listItemCentered__Kwdab{align-items:center}.CopyLead-module_listItemIconContainer__dgnhJ{flex:0 0 auto}.CopyLead-module_listItemTextContainer__Dl9lw{flex:1 1 auto;padding:0 0 0 var(--sem-space-padding-80)}.CopyLead-module_imgWrapper__HYP3w{border-radius:var(--sem-border-radius-
|
|
1
|
+
.CopyLead-module_buttonContainer__3OaRG{margin:var(--sem-space-padding-150) auto 0;width:100%}.CopyLead-module_col__0Da5H{flex:1 1 auto;width:100%}.CopyLead-module_container__I91ym{align-items:flex-start;display:flex;gap:var(--sem-space-padding-150)}.CopyLead-module_container--content__e8LxG{flex-direction:column}.CopyLead-module_container--media__QcMWi{flex-direction:column-reverse}.CopyLead-module_container--align-center__Fh1Sd{align-items:center}.CopyLead-module_container--align-top__UIXOZ{align-items:flex-start}.CopyLead-module_list__arnJd{list-style:none;margin:0;max-width:480px;padding:0}.CopyLead-module_listItem__NscHE{display:flex}.CopyLead-module_listItem__NscHE:nth-of-type(n+2){margin-top:var(--sem-space-padding-150)}.CopyLead-module_listItemCentered__Kwdab{align-items:center}.CopyLead-module_listItemIconContainer__dgnhJ{flex:0 0 auto}.CopyLead-module_listItemTextContainer__Dl9lw{flex:1 1 auto;padding:0 0 0 var(--sem-space-padding-80)}.CopyLead-module_imgWrapper__HYP3w{border-radius:var(--sem-border-radius-s);overflow:hidden}.CopyLead-module_mediaContainer__PxTnm{margin-bottom:var(--sem-space-padding-150)}.CopyLead-module_content__Bja1D{max-width:715px}@media (min-width:636px){.CopyLead-module_buttonContainer__3OaRG{width:-moz-max-content;width:max-content}}@media (min-width:768px){.CopyLead-module_container__I91ym{gap:var(--sem-space-padding-110)}.CopyLead-module_container--media__QcMWi,.CopyLead-module_container--content__e8LxG{flex-direction:row}.CopyLead-module_container--reverse__Gq9u8{flex-direction:row-reverse}.CopyLead-module_buttonContainer__3OaRG{margin:var(--sem-space-padding-150) 0 0}.CopyLead-module_col__0Da5H{width:50%}.CopyLead-module_list__arnJd{max-width:100%}.CopyLead-module_listItemTextContainer__Dl9lw{padding:0 var(--sem-space-padding-80)}}@media (min-width:1024px){.CopyLead-module_listItemTextContainer__Dl9lw{padding:0 var(--sem-space-padding-110)}}@media (min-width:1280px){.CopyLead-module_container__I91ym{gap:var(--sem-space-padding-130)}.CopyLead-module_listItemTextContainer__Dl9lw{padding:0 var(--sem-space-padding-130)}}
|