oolib 2.64.8 → 2.64.9
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/components/MetaBlock/index.d.ts +9 -0
- package/dist/components/{cards/comps/CardMetaBlock → MetaBlock}/index.js +27 -10
- package/dist/components/MetaBlock/utils/parseMetaBlockConfig.d.ts +5 -0
- package/dist/components/MetaBlock/utils/parseMetaBlockConfig.js +45 -0
- package/dist/components/cards/CardContent/index.js +4 -6
- package/dist/components/cards/CardEmbed/index.js +13 -10
- package/dist/components/cards/CardEmbed/styled.js +12 -9
- package/dist/components/cards/ListContent/index.js +4 -6
- package/dist/components/cards/utils/parseCardConfig.d.ts +3 -3
- package/dist/components/cards/utils/parseCardConfig.js +7 -46
- package/dist/index.d.ts +1 -0
- package/dist/index.js +4 -1
- package/dist/utils/_EXPORTS/index.d.ts +1 -0
- package/dist/utils/_EXPORTS/index.js +3 -1
- package/dist/utils/stitchLink.d.ts +4 -0
- package/dist/utils/stitchLink.js +49 -0
- package/package.json +1 -1
- package/dist/components/cards/comps/CardMetaBlock/index.d.ts +0 -8
|
@@ -29,10 +29,13 @@ var __importStar = (this && this.__importStar) || function (mod) {
|
|
|
29
29
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
30
30
|
var react_1 = __importStar(require("react"));
|
|
31
31
|
var styled_components_1 = __importStar(require("styled-components"));
|
|
32
|
-
var themes_1 = require("
|
|
33
|
-
var Typo_1 = require("
|
|
34
|
-
var mixins_1 = require("
|
|
35
|
-
var DisplayIcon_1 = require("
|
|
32
|
+
var themes_1 = require("../../themes");
|
|
33
|
+
var Typo_1 = require("../Typo");
|
|
34
|
+
var mixins_1 = require("../../themes/mixins");
|
|
35
|
+
var DisplayIcon_1 = require("../../utils/comps/DisplayIcon");
|
|
36
|
+
var OKELink_1 = require("../OKELink");
|
|
37
|
+
var parseMetaBlockConfig_1 = require("./utils/parseMetaBlockConfig");
|
|
38
|
+
var utilsOolib_1 = require("../../utilsOolib");
|
|
36
39
|
var greyColor100 = themes_1.colors.greyColor100;
|
|
37
40
|
var StyledContainer = styled_components_1.default.div(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n display: flex;\n align-items: center;\n gap: 1rem;\n flex-wrap: wrap;\n ", "\n"], ["\n display: flex;\n align-items: center;\n gap: 1rem;\n flex-wrap: wrap;\n ", "\n"])), function (_a) {
|
|
38
41
|
var align = _a.align;
|
|
@@ -47,15 +50,29 @@ var StyledSeparator = styled_components_1.default.div(templateObject_5 || (templ
|
|
|
47
50
|
var disabled = _a.disabled;
|
|
48
51
|
return disabled ? themes_1.colors.greyColor40 : themes_1.colors.greyColor100;
|
|
49
52
|
});
|
|
50
|
-
var
|
|
51
|
-
var
|
|
53
|
+
var MetaBlock = function (_a) {
|
|
54
|
+
var data = _a.data, config = _a.config, disabled = _a.disabled, _b = _a.align, align = _b === void 0 ? "left" : _b, invert = _a.invert;
|
|
55
|
+
var localize = (0, utilsOolib_1.useLocale)();
|
|
56
|
+
var value = (0, parseMetaBlockConfig_1.parseMetaBlockConfig)({ config: config, data: data, localize: localize });
|
|
52
57
|
if (value.length === 0)
|
|
53
58
|
return null;
|
|
59
|
+
var genText = function (_a) {
|
|
60
|
+
var icon = _a.icon, display = _a.display;
|
|
61
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
62
|
+
icon && react_1.default.createElement(DisplayIcon_1.DisplayIcon, { icon: icon, size: 15, color: invert ? themes_1.colors.white : themes_1.colors.greyColor100 }),
|
|
63
|
+
react_1.default.createElement(STYLED_SANS_2, { disabled: disabled, capitalize: true }, display)));
|
|
64
|
+
};
|
|
65
|
+
var genLink = function (_a) {
|
|
66
|
+
var icon = _a.icon, display = _a.display, to = _a.to;
|
|
67
|
+
return (react_1.default.createElement(Typo_1.SANS_2, { style: icon ? { marginBottom: '-3.3px' } : {} },
|
|
68
|
+
" ",
|
|
69
|
+
react_1.default.createElement(OKELink_1.OKELink, { to: to, text: display, invert: invert, icon: icon })));
|
|
70
|
+
};
|
|
54
71
|
return (react_1.default.createElement(StyledContainer, { align: align }, value.map(function (v, i) { return (react_1.default.createElement(react_1.Fragment, { key: i },
|
|
55
|
-
react_1.default.createElement(StyledMetaWrapper, { style: { maxWidth:
|
|
56
|
-
|
|
57
|
-
|
|
72
|
+
react_1.default.createElement(StyledMetaWrapper, { style: { maxWidth: 100 / value.length + "%" } }, v.to
|
|
73
|
+
? genLink({ display: v.display, to: v.to, icon: v.icon })
|
|
74
|
+
: genText({ icon: v.icon, display: v.display })),
|
|
58
75
|
i + 1 === value.length ? null : (react_1.default.createElement(StyledSeparator, { disabled: disabled })))); })));
|
|
59
76
|
};
|
|
60
|
-
exports.default =
|
|
77
|
+
exports.default = MetaBlock;
|
|
61
78
|
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5;
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.parseMetaBlockConfig = void 0;
|
|
4
|
+
var stitchLink_1 = require("../../../utils/stitchLink");
|
|
5
|
+
var createFormattedDate_1 = require("../../../utils/momentjs/createFormattedDate");
|
|
6
|
+
var getVal_1 = require("../../../utils/getterSetterDeleter/getVal");
|
|
7
|
+
var parseMetaBlockConfig = function (_a) {
|
|
8
|
+
var config = _a.config, localize = _a.localize, data = _a.data;
|
|
9
|
+
if (!config)
|
|
10
|
+
return [];
|
|
11
|
+
//else
|
|
12
|
+
return config.map(function (d) {
|
|
13
|
+
var key = d.key, valuePath = d.valuePath, prefix = d.prefix, icon = d.icon, linkConfig = d.linkConfig;
|
|
14
|
+
var returnValue;
|
|
15
|
+
switch (key) {
|
|
16
|
+
case "name":
|
|
17
|
+
returnValue = (0, getVal_1.getVal)(data, valuePath);
|
|
18
|
+
if (returnValue) {
|
|
19
|
+
//reduce surname down to initials
|
|
20
|
+
var split = returnValue.split(" ");
|
|
21
|
+
var name_1 = split[0];
|
|
22
|
+
var surname = split[1];
|
|
23
|
+
returnValue = "".concat(name_1).concat(surname ? " ".concat(surname[0], ".") : "");
|
|
24
|
+
}
|
|
25
|
+
break;
|
|
26
|
+
case "date":
|
|
27
|
+
returnValue = (0, createFormattedDate_1.createFormattedDate)((0, getVal_1.getVal)(data, valuePath));
|
|
28
|
+
break;
|
|
29
|
+
case "text":
|
|
30
|
+
default:
|
|
31
|
+
returnValue = (0, getVal_1.getVal)(data, valuePath);
|
|
32
|
+
}
|
|
33
|
+
if (prefix) {
|
|
34
|
+
return "".concat(localize(prefix), " : ").concat(returnValue);
|
|
35
|
+
}
|
|
36
|
+
var toReturn = ({ display: returnValue });
|
|
37
|
+
//now to incorporate things like icons, imgs, links
|
|
38
|
+
if (icon)
|
|
39
|
+
toReturn.icon = icon;
|
|
40
|
+
if (linkConfig)
|
|
41
|
+
toReturn.to = (0, stitchLink_1.stitchLink)({ data: data, config: linkConfig });
|
|
42
|
+
return toReturn;
|
|
43
|
+
}).filter(function (d) { return d.display !== undefined; });
|
|
44
|
+
};
|
|
45
|
+
exports.parseMetaBlockConfig = parseMetaBlockConfig;
|
|
@@ -11,7 +11,7 @@ var utilsOolib_1 = require("../../../utilsOolib");
|
|
|
11
11
|
var ActionMenu_1 = require("../../ActionMenu");
|
|
12
12
|
var Typo_1 = require("../../Typo");
|
|
13
13
|
var VideoInput_1 = __importDefault(require("../../VideoInput"));
|
|
14
|
-
var
|
|
14
|
+
var MetaBlock_1 = __importDefault(require("../../MetaBlock"));
|
|
15
15
|
var LineClampWrapper_1 = require("../comps/LineClampWrapper");
|
|
16
16
|
var styled_1 = require("../styled");
|
|
17
17
|
var decideLinkCompAndTarget_1 = require("../utils/decideLinkCompAndTarget");
|
|
@@ -24,15 +24,13 @@ var ImageInput_1 = require("../../ImageInput");
|
|
|
24
24
|
var CardContent = function (_a) {
|
|
25
25
|
var id = _a.id, data = _a.data, config = _a.config, to = _a.to, onClick = _a.onClick, openInNewTab = _a.openInNewTab, actions = _a.actions;
|
|
26
26
|
var theme = (0, styled_components_1.useTheme)();
|
|
27
|
-
var localize = (0, utilsOolib_1.useLocale)();
|
|
28
27
|
var parseSpecialSyntax = (theme || {}).parseSpecialSyntax;
|
|
29
28
|
var showEmbedSection = !!((config === null || config === void 0 ? void 0 : config.image) || (config === null || config === void 0 ? void 0 : config.video));
|
|
30
29
|
var _b = (0, parseCardConfig_1.parseCardConfig)({
|
|
31
30
|
config: config,
|
|
32
31
|
data: data,
|
|
33
|
-
parseSpecialSyntax: parseSpecialSyntax
|
|
34
|
-
|
|
35
|
-
}), cardLabel = _b.cardLabel, title = _b.title, video = _b.video, image = _b.image, metaBlockData = _b.metaBlockData;
|
|
32
|
+
parseSpecialSyntax: parseSpecialSyntax
|
|
33
|
+
}), cardLabel = _b.cardLabel, title = _b.title, video = _b.video, image = _b.image, metaBlock = _b.metaBlock;
|
|
36
34
|
var dontRenderRes = (0, dontRenderIfBothOnClickAndTo_1.dontRenderIfBothOnClickAndTo)({ onClick: onClick, to: to });
|
|
37
35
|
if (dontRenderRes)
|
|
38
36
|
return dontRenderRes;
|
|
@@ -57,7 +55,7 @@ var CardContent = function (_a) {
|
|
|
57
55
|
react_1.default.createElement(LineClampWrapper_1.LineClampWrapper, { noOfLines_M: 6, title: title },
|
|
58
56
|
react_1.default.createElement(styled_1.StyledTitle, { capitalize: true, className: "StyledTitle" },
|
|
59
57
|
react_1.default.createElement(styled_1.StyledTitleSpan, { className: "StyledTitleSpan" }, title))))) : null),
|
|
60
|
-
(
|
|
58
|
+
(metaBlock === null || metaBlock === void 0 ? void 0 : metaBlock.length) > 0 ? (react_1.default.createElement(MetaBlock_1.default, { data: data, config: metaBlock }) //show only two meta for cardContent
|
|
61
59
|
) : null),
|
|
62
60
|
showEmbedSection && (react_1.default.createElement(styled_2.StyledEmbedSection, null,
|
|
63
61
|
!(0, mediaDataExists_1.imageDataExists)(image) && !(0, mediaDataExists_1.videoDataExists)(video) &&
|
|
@@ -8,7 +8,7 @@ var react_1 = __importDefault(require("react"));
|
|
|
8
8
|
var injectHttps_1 = require("../../../utils/injectHttps");
|
|
9
9
|
var ImageInput_1 = require("../../ImageInput");
|
|
10
10
|
var styled_components_1 = require("styled-components");
|
|
11
|
-
var
|
|
11
|
+
var MetaBlock_1 = __importDefault(require("../../MetaBlock"));
|
|
12
12
|
var styled_1 = require("../styled");
|
|
13
13
|
var styled_2 = require("./styled");
|
|
14
14
|
var utilsOolib_1 = require("../../../utilsOolib");
|
|
@@ -40,34 +40,37 @@ var CardEmbed = function (_a) {
|
|
|
40
40
|
urlInsteadOfMetaBlock = _a.urlInsteadOfMetaBlock //this is a anomaly. only used for CardLinkInput wherein we need to show an 'external link' instead of the metablock
|
|
41
41
|
;
|
|
42
42
|
var theme = (0, styled_components_1.useTheme)();
|
|
43
|
-
var localize = (0, utilsOolib_1.useLocale)();
|
|
44
43
|
var parseSpecialSyntax = (theme || {}).parseSpecialSyntax;
|
|
44
|
+
/**
|
|
45
|
+
* why do we have imageAspectRatio?
|
|
46
|
+
* because, ideally the og imageInput comp's aspect ratio should be supplied to this component
|
|
47
|
+
* so that the image is appropriately positioned within the image container mask of this comp
|
|
48
|
+
*/
|
|
45
49
|
var _b = (0, parseCardConfig_1.parseCardConfig)({
|
|
46
50
|
config: config,
|
|
47
51
|
data: data,
|
|
48
52
|
parseSpecialSyntax: parseSpecialSyntax,
|
|
49
|
-
|
|
50
|
-
}), cardLabel = _b.cardLabel, title = _b.title, video = _b.video, image = _b.image, metaBlockData = _b.metaBlockData;
|
|
53
|
+
}), cardLabel = _b.cardLabel, title = _b.title, video = _b.video, image = _b.image, _c = _b.imageAspectRatio, imageAspectRatio = _c === void 0 ? '5/3' : _c, metaBlock = _b.metaBlock;
|
|
51
54
|
var dontRenderRes = (0, dontRenderIfBothOnClickAndTo_1.dontRenderIfBothOnClickAndTo)({ onClick: onClick, to: to });
|
|
52
55
|
if (dontRenderRes)
|
|
53
56
|
return dontRenderRes;
|
|
54
|
-
var
|
|
57
|
+
var _d = (0, decideLinkCompAndTarget_1.decideLinkCompAndTarget)({
|
|
55
58
|
to: to,
|
|
56
59
|
openInNewTab: openInNewTab,
|
|
57
|
-
}), LinkComp =
|
|
60
|
+
}), LinkComp = _d.LinkComp, target = _d.target, externalUrl = _d.externalUrl;
|
|
58
61
|
var mediaConfigExists = config.video || config.image;
|
|
59
62
|
// if (status === "error") return <ErrorEmbedComp to={to} />;
|
|
60
63
|
return (react_1.default.createElement(LinkComp, { target: target, href: (0, injectHttps_1.injectHttps)(to), to: to },
|
|
61
64
|
react_1.default.createElement(styled_2.StyledEmbedCardWrapper, { id: id, disabled: disabled, onClick: onClick },
|
|
62
|
-
react_1.default.createElement(styled_2.StyledContentModule1,
|
|
65
|
+
react_1.default.createElement(styled_2.StyledContentModule1, { mediaConfigExists: mediaConfigExists },
|
|
63
66
|
cardLabel && (react_1.default.createElement("div", { style: { paddingBottom: "0.7rem" }, title: cardLabel },
|
|
64
67
|
react_1.default.createElement(styled_1.StyledLabel, { disabled: disabled, color: (0, utilsOolib_1.getPrimaryColorText)(theme === null || theme === void 0 ? void 0 : theme.colors) }, cardLabel))),
|
|
65
68
|
title && (react_1.default.createElement(LineClampWrapper_1.LineClampWrapper, { noOfLines_M: 1, noOfLines_D: 2, title: title },
|
|
66
69
|
react_1.default.createElement(styled_1.StyledTitle, { disabled: disabled, as: Typo_1.SERIF_3_4, capitalize: true, className: "StyledTitle" },
|
|
67
70
|
react_1.default.createElement(styled_1.StyledTitleSpan, { className: "StyledTitleSpan" }, title)))),
|
|
68
|
-
urlInsteadOfMetaBlock
|
|
71
|
+
(urlInsteadOfMetaBlock || (metaBlock === null || metaBlock === void 0 ? void 0 : metaBlock.length) > 0) && react_1.default.createElement("div", { style: { paddingTop: "1.7rem" } }, urlInsteadOfMetaBlock
|
|
69
72
|
? react_1.default.createElement(styled_2.StyledCardEmbedLink, null, urlInsteadOfMetaBlock)
|
|
70
|
-
: (
|
|
73
|
+
: (metaBlock === null || metaBlock === void 0 ? void 0 : metaBlock.length) > 0 && react_1.default.createElement(MetaBlock_1.default, { disabled: disabled, config: metaBlock, data: data }))),
|
|
71
74
|
mediaConfigExists && (react_1.default.createElement(styled_2.StyledContentModule2, { disabled: disabled },
|
|
72
75
|
!(0, mediaDataExists_1.imageDataExists)(image) && !(0, mediaDataExists_1.videoDataExists)(video) && (react_1.default.createElement(styled_2.StyledCardEmbedPlaceholderWrapper, null,
|
|
73
76
|
react_1.default.createElement(CardPlaceholder_1.CardPlaceholder, { style: {
|
|
@@ -92,6 +95,6 @@ var CardEmbed = function (_a) {
|
|
|
92
95
|
height: "100%",
|
|
93
96
|
} })))),
|
|
94
97
|
(0, mediaDataExists_1.imageDataExists)(image) > 0 && !(0, mediaDataExists_1.videoDataExists)(video) && (react_1.default.createElement(styled_2.StyledMediaContainer, null,
|
|
95
|
-
react_1.default.createElement(ImageInput_1.ImageInput, { stretchToFullHeight: true, value: image, aspectRatio:
|
|
98
|
+
react_1.default.createElement(ImageInput_1.ImageInput, { stretchToFullHeight: true, value: image, aspectRatio: imageAspectRatio, readOnly: true, enableCaptions: false, disableImageBorder: true, defaultImageSpread: "cover" }))))))));
|
|
96
99
|
};
|
|
97
100
|
exports.CardEmbed = CardEmbed;
|
|
@@ -45,15 +45,18 @@ exports.StyledEmbedCardWrapper = styled_components_1.default.div(templateObject_
|
|
|
45
45
|
var disabled = _a.disabled;
|
|
46
46
|
return !disabled && (0, styled_components_1.css)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n ", ";\n #CardPlaceholder {\n opacity: 1;\n }\n "], ["\n ", ";\n #CardPlaceholder {\n opacity: 1;\n }\n "])), styled_1.CSSTitleAnimationOnHover);
|
|
47
47
|
});
|
|
48
|
-
exports.StyledContentModule1 = styled_components_1.default.div(
|
|
49
|
-
|
|
48
|
+
exports.StyledContentModule1 = styled_components_1.default.div(templateObject_5 || (templateObject_5 = __makeTemplateObject(["\n display: flex;\n /* align-items: center; */\n flex-direction: column;\n padding: 2rem;\n ", "\n \n"], ["\n display: flex;\n /* align-items: center; */\n flex-direction: column;\n padding: 2rem;\n ", "\n \n"])), function (_a) {
|
|
49
|
+
var mediaConfigExists = _a.mediaConfigExists;
|
|
50
|
+
return mediaConfigExists && (0, styled_components_1.css)(templateObject_4 || (templateObject_4 = __makeTemplateObject(["\n padding-right: 8rem;\n ", "{\n padding-right: 10rem;\n }\n "], ["\n padding-right: 8rem;\n ", "{\n padding-right: 10rem;\n }\n "])), (0, mixins_1.mediaQuery)('sm'));
|
|
51
|
+
});
|
|
52
|
+
exports.StyledContentModule2 = styled_components_1.default.div(templateObject_6 || (templateObject_6 = __makeTemplateObject(["\n position: absolute;\n right: 0;\n top: 0;\n height: 100%;\n opacity: ", ";\n width: 8rem;\n ", "{\n width: 10rem\n }\n"], ["\n position: absolute;\n right: 0;\n top: 0;\n height: 100%;\n opacity: ", ";\n width: 8rem;\n ", "{\n width: 10rem\n }\n"])), function (_a) {
|
|
50
53
|
var disabled = _a.disabled;
|
|
51
54
|
return (disabled ? 0.4 : 1);
|
|
52
55
|
}, (0, mixins_1.mediaQuery)('sm'));
|
|
53
|
-
exports.StyledCardEmbedAction = styled_components_1.default.div(
|
|
54
|
-
exports.StyledCardEmbedLabel = styled_components_1.default.div(
|
|
55
|
-
exports.StyledMetaBlock = styled_components_1.default.div(
|
|
56
|
-
exports.StyledCardEmbedLink = (0, styled_components_1.default)(Typo_1.SANS_2)(
|
|
57
|
-
exports.StyledCardEmbedPlaceholderWrapper = styled_components_1.default.div(
|
|
58
|
-
exports.StyledMediaContainer = styled_components_1.default.div(
|
|
59
|
-
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11;
|
|
56
|
+
exports.StyledCardEmbedAction = styled_components_1.default.div(templateObject_7 || (templateObject_7 = __makeTemplateObject(["\n position: absolute;\n top: 0;\n right: 0;\n"], ["\n position: absolute;\n top: 0;\n right: 0;\n"])));
|
|
57
|
+
exports.StyledCardEmbedLabel = styled_components_1.default.div(templateObject_8 || (templateObject_8 = __makeTemplateObject(["\n padding-bottom: 0.5rem;\n"], ["\n padding-bottom: 0.5rem;\n"])));
|
|
58
|
+
exports.StyledMetaBlock = styled_components_1.default.div(templateObject_9 || (templateObject_9 = __makeTemplateObject(["\n padding: 0;\n"], ["\n padding: 0;\n"])));
|
|
59
|
+
exports.StyledCardEmbedLink = (0, styled_components_1.default)(Typo_1.SANS_2)(templateObject_10 || (templateObject_10 = __makeTemplateObject(["\n width: 100%;\n align-self: flex-start;\n ", "\n color: ", ";\n"], ["\n width: 100%;\n align-self: flex-start;\n ", "\n color: ", ";\n"])), (0, mixins_1.clampText)(1), themes_1.colors.greyColor80);
|
|
60
|
+
exports.StyledCardEmbedPlaceholderWrapper = styled_components_1.default.div(templateObject_11 || (templateObject_11 = __makeTemplateObject(["\n overflow: hidden;\n height: 100%;\n width: 100%;\n position: relative;\n"], ["\n overflow: hidden;\n height: 100%;\n width: 100%;\n position: relative;\n"])));
|
|
61
|
+
exports.StyledMediaContainer = styled_components_1.default.div(templateObject_12 || (templateObject_12 = __makeTemplateObject(["\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n text-align: center;\n background-color: ", ";\n"], ["\n height: 100%;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n overflow: hidden;\n text-align: center;\n background-color: ", ";\n"])), greyColor5);
|
|
62
|
+
var templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12;
|
|
@@ -12,7 +12,7 @@ var ActionMenu_1 = require("../../ActionMenu");
|
|
|
12
12
|
var ImageInput_1 = require("../../ImageInput");
|
|
13
13
|
var Tags_1 = require("../../Tags");
|
|
14
14
|
var VideoInput_1 = __importDefault(require("../../VideoInput"));
|
|
15
|
-
var
|
|
15
|
+
var MetaBlock_1 = __importDefault(require("../../MetaBlock"));
|
|
16
16
|
var CardPlaceholder_1 = require("../comps/CardPlaceholder");
|
|
17
17
|
var LineClampWrapper_1 = require("../comps/LineClampWrapper");
|
|
18
18
|
var styled_1 = require("../styled");
|
|
@@ -24,14 +24,12 @@ var styled_js_1 = require("./styled.js");
|
|
|
24
24
|
var ListContent = function (_a) {
|
|
25
25
|
var id = _a.id, data = _a.data, config = _a.config, to = _a.to, onClick = _a.onClick, openInNewTab = _a.openInNewTab, actions = _a.actions, statusTag = _a.statusTag;
|
|
26
26
|
var theme = (0, styled_components_1.useTheme)();
|
|
27
|
-
var localize = (0, utilsOolib_1.useLocale)();
|
|
28
27
|
var parseSpecialSyntax = (theme || {}).parseSpecialSyntax;
|
|
29
28
|
var _b = (0, parseCardConfig_1.parseCardConfig)({
|
|
30
29
|
config: config,
|
|
31
30
|
data: data,
|
|
32
31
|
parseSpecialSyntax: parseSpecialSyntax,
|
|
33
|
-
|
|
34
|
-
}), cardLabel = _b.cardLabel, title = _b.title, video = _b.video, image = _b.image, metaBlockData = _b.metaBlockData;
|
|
32
|
+
}), cardLabel = _b.cardLabel, title = _b.title, video = _b.video, image = _b.image, metaBlock = _b.metaBlock;
|
|
35
33
|
var dontRenderRes = (0, dontRenderIfBothOnClickAndTo_1.dontRenderIfBothOnClickAndTo)({ onClick: onClick, to: to });
|
|
36
34
|
if (dontRenderRes)
|
|
37
35
|
return dontRenderRes;
|
|
@@ -55,8 +53,8 @@ var ListContent = function (_a) {
|
|
|
55
53
|
react_1.default.createElement(LineClampWrapper_1.LineClampWrapper, { noOfLines_M: 6, noOfLines_D: 3, title: title },
|
|
56
54
|
react_1.default.createElement(styled_1.StyledTitle, { capitalize: true, className: "StyledTitle" },
|
|
57
55
|
react_1.default.createElement(styled_1.StyledTitleSpan, { className: "StyledTitleSpan" }, title))))) : null,
|
|
58
|
-
(
|
|
59
|
-
react_1.default.createElement(
|
|
56
|
+
(metaBlock === null || metaBlock === void 0 ? void 0 : metaBlock.length) > 0 && (react_1.default.createElement("div", { style: { width: "100%", paddingTop: "1rem", } },
|
|
57
|
+
react_1.default.createElement(MetaBlock_1.default, { data: data, config: metaBlock })))),
|
|
60
58
|
mediaConfigExists && (react_1.default.createElement(styled_js_1.StyledContentModule2, null,
|
|
61
59
|
!(0, mediaDataExists_1.imageDataExists)(image) && !(0, mediaDataExists_1.videoDataExists)(video) && (react_1.default.createElement(styled_js_1.StyledMediaMask, null,
|
|
62
60
|
react_1.default.createElement(CardPlaceholder_1.CardPlaceholder, { style: { height: "100%", width: "auto" } }))),
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
export function parseCardConfig({ config, data,
|
|
1
|
+
export function parseCardConfig({ config, data, parseSpecialSyntax, }: {
|
|
2
2
|
config: any;
|
|
3
3
|
data: any;
|
|
4
|
-
localize: any;
|
|
5
4
|
parseSpecialSyntax?: () => any;
|
|
6
5
|
}): {
|
|
7
6
|
title: string;
|
|
@@ -10,6 +9,7 @@ export function parseCardConfig({ config, data, localize, parseSpecialSyntax, }:
|
|
|
10
9
|
cardLabel: any;
|
|
11
10
|
video: any;
|
|
12
11
|
image: any;
|
|
13
|
-
|
|
12
|
+
imageAspectRatio: any;
|
|
13
|
+
metaBlock: any;
|
|
14
14
|
tagDisplay: any;
|
|
15
15
|
};
|
|
@@ -3,10 +3,11 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.parseCardConfig = void 0;
|
|
4
4
|
var getText_1 = require("../../../utils/getText");
|
|
5
5
|
var getVal_1 = require("../../../utils/getterSetterDeleter/getVal");
|
|
6
|
+
var stitchLink_1 = require("../../../utils/stitchLink");
|
|
6
7
|
var createFormattedDate_1 = require("../../../utils/momentjs/createFormattedDate");
|
|
7
8
|
var parseCardConfig = function (_a) {
|
|
8
|
-
var _b;
|
|
9
|
-
var config = _a.config, data = _a.data,
|
|
9
|
+
var _b, _c, _d;
|
|
10
|
+
var config = _a.config, data = _a.data, _e = _a.parseSpecialSyntax, parseSpecialSyntax = _e === void 0 ? function () { return undefined; } : _e;
|
|
10
11
|
var title = config.title && (0, getText_1.getText)((0, getVal_1.getVal)(data, config.title)); //getText converts richtext into plain. and leaves plain text unchanged
|
|
11
12
|
var titleOptional = config.titleOptional && (0, getText_1.getText)((0, getVal_1.getVal)(data, config.titleOptional));
|
|
12
13
|
var desc = config.desc && (0, getText_1.getText)((0, getVal_1.getVal)(data, config.desc));
|
|
@@ -15,9 +16,8 @@ var parseCardConfig = function (_a) {
|
|
|
15
16
|
(0, getVal_1.getVal)(data, config.cardLabel));
|
|
16
17
|
var video = config.video && (0, getVal_1.getVal)(data, config.video);
|
|
17
18
|
var tagDisplay = config.tagDisplay && (0, getVal_1.getVal)(data, config.tagDisplay);
|
|
18
|
-
var image = config.image && (0, getVal_1.getVal)(data, config.image);
|
|
19
|
-
|
|
20
|
-
var metaBlockData = parseMetaBlockConfig({ config: (_b = config.metaBlock) === null || _b === void 0 ? void 0 : _b.slice(0, 2), localize: localize, data: data });
|
|
19
|
+
var image = config.image && (0, getVal_1.getVal)(data, ((_b = config.image) === null || _b === void 0 ? void 0 : _b.valuePath) || config.image); // cuz image config could be either `image: <valuePath>` or `image: { valuePath: <valuePath>, aspectRatio: <aspectRatio> }`
|
|
20
|
+
var imageAspectRatio = (_c = config.image) === null || _c === void 0 ? void 0 : _c.aspectRatio;
|
|
21
21
|
return {
|
|
22
22
|
title: title,
|
|
23
23
|
titleOptional: titleOptional,
|
|
@@ -25,48 +25,9 @@ var parseCardConfig = function (_a) {
|
|
|
25
25
|
cardLabel: cardLabel,
|
|
26
26
|
video: video,
|
|
27
27
|
image: image,
|
|
28
|
-
|
|
28
|
+
imageAspectRatio: imageAspectRatio,
|
|
29
|
+
metaBlock: (_d = config.metaBlock) === null || _d === void 0 ? void 0 : _d.slice(0, 2),
|
|
29
30
|
tagDisplay: tagDisplay,
|
|
30
31
|
};
|
|
31
32
|
};
|
|
32
33
|
exports.parseCardConfig = parseCardConfig;
|
|
33
|
-
var parseMetaBlockConfig = function (_a) {
|
|
34
|
-
var config = _a.config, localize = _a.localize, data = _a.data;
|
|
35
|
-
if (!config)
|
|
36
|
-
return [];
|
|
37
|
-
//else
|
|
38
|
-
return config.map(function (d) {
|
|
39
|
-
var key = d.key;
|
|
40
|
-
var valuePath = d.valuePath;
|
|
41
|
-
var prefix = d.prefix;
|
|
42
|
-
var icon = d.icon;
|
|
43
|
-
var returnValue;
|
|
44
|
-
switch (key) {
|
|
45
|
-
case "name":
|
|
46
|
-
returnValue = (0, getVal_1.getVal)(data, valuePath);
|
|
47
|
-
if (returnValue) {
|
|
48
|
-
//reduce surname down to initials
|
|
49
|
-
var split = returnValue.split(" ");
|
|
50
|
-
var name_1 = split[0];
|
|
51
|
-
var surname = split[1];
|
|
52
|
-
returnValue = "".concat(name_1).concat(surname ? " ".concat(surname[0], ".") : "");
|
|
53
|
-
}
|
|
54
|
-
break;
|
|
55
|
-
case "date":
|
|
56
|
-
returnValue = (0, createFormattedDate_1.createFormattedDate)((0, getVal_1.getVal)(data, valuePath));
|
|
57
|
-
break;
|
|
58
|
-
case "text":
|
|
59
|
-
default:
|
|
60
|
-
returnValue = (0, getVal_1.getVal)(data, valuePath);
|
|
61
|
-
}
|
|
62
|
-
if (prefix) {
|
|
63
|
-
return "".concat(localize(prefix), " : ").concat(returnValue);
|
|
64
|
-
}
|
|
65
|
-
var toReturn = ({ display: returnValue });
|
|
66
|
-
//now to incorporate things like icons, imgs, links
|
|
67
|
-
if (icon) {
|
|
68
|
-
toReturn.icon = icon;
|
|
69
|
-
}
|
|
70
|
-
return toReturn;
|
|
71
|
-
}).filter(function (d) { return d.display !== undefined; });
|
|
72
|
-
};
|
package/dist/index.d.ts
CHANGED
|
@@ -46,6 +46,7 @@ export { OptionsSingle } from "./components/Dropdowns/comps/OptionsSingle";
|
|
|
46
46
|
export { generateOptions } from "./components/Dropdowns/utils/generateOptions";
|
|
47
47
|
export { genTagComp } from "./components/Dropdowns/utils/genTagComp";
|
|
48
48
|
export { HintsProvider } from "./components/Hints/contextApi";
|
|
49
|
+
export { default as MetaBlock } from "./components/MetaBlock";
|
|
49
50
|
export { ImageInput } from "./components/ImageInput";
|
|
50
51
|
export { ProfileImageInput } from "./components/ImageInput/derivedComps/ProfileImageInput";
|
|
51
52
|
export { default as VideoInput } from "./components/VideoInput";
|
package/dist/index.js
CHANGED
|
@@ -17,7 +17,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
17
17
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
18
18
|
};
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.VideoInput = exports.ProfileImageInput = exports.ImageInput = exports.HintsProvider = exports.genTagComp = exports.generateOptions = exports.OptionsSingle = exports.DropdownMulti = exports.DropdownSingle = exports.CardEmbed = exports.ListContent = exports.CardContent = exports.TextLoader = exports.BarChart = exports.DateRangePicker = exports.DatePicker = exports.PageScrollIndicator = exports.HomeCover = exports.EmptyStates = exports.ModalSmall = exports.ModalLarge = exports.ModalConfirm = exports.SkeletonLoader = exports.Divider = exports.PercentCompletedPie = exports.Accordion = exports.ActionMenu = exports.Tooltip = exports.OKELink = exports.UserRoleBadge = exports.Section = exports.LoaderOverlay = exports.Loader = exports.ProgressBar = exports.LoaderCircle = exports.icons = exports.colors = exports.GlobalStyles = void 0;
|
|
20
|
+
exports.VideoInput = exports.ProfileImageInput = exports.ImageInput = exports.MetaBlock = exports.HintsProvider = exports.genTagComp = exports.generateOptions = exports.OptionsSingle = exports.DropdownMulti = exports.DropdownSingle = exports.CardEmbed = exports.ListContent = exports.CardContent = exports.TextLoader = exports.BarChart = exports.DateRangePicker = exports.DatePicker = exports.PageScrollIndicator = exports.HomeCover = exports.EmptyStates = exports.ModalSmall = exports.ModalLarge = exports.ModalConfirm = exports.SkeletonLoader = exports.Divider = exports.PercentCompletedPie = exports.Accordion = exports.ActionMenu = exports.Tooltip = exports.OKELink = exports.UserRoleBadge = exports.Section = exports.LoaderOverlay = exports.Loader = exports.ProgressBar = exports.LoaderCircle = exports.icons = exports.colors = exports.GlobalStyles = void 0;
|
|
21
21
|
//css and styling related ( styled-components )
|
|
22
22
|
var globalStyles_1 = require("./globalStyles");
|
|
23
23
|
Object.defineProperty(exports, "GlobalStyles", { enumerable: true, get: function () { return globalStyles_1.GlobalStyles; } });
|
|
@@ -111,6 +111,9 @@ Object.defineProperty(exports, "genTagComp", { enumerable: true, get: function (
|
|
|
111
111
|
var contextApi_1 = require("./components/Hints/contextApi");
|
|
112
112
|
Object.defineProperty(exports, "HintsProvider", { enumerable: true, get: function () { return contextApi_1.HintsProvider; } });
|
|
113
113
|
// export this
|
|
114
|
+
//meta components
|
|
115
|
+
var MetaBlock_1 = require("./components/MetaBlock");
|
|
116
|
+
Object.defineProperty(exports, "MetaBlock", { enumerable: true, get: function () { return __importDefault(MetaBlock_1).default; } });
|
|
114
117
|
//utility functions
|
|
115
118
|
__exportStar(require("./utils/_EXPORTS"), exports);
|
|
116
119
|
//template blocks
|
|
@@ -17,3 +17,4 @@ export { useHandleClickOutside } from "../customHooks/useHandleClickOutside";
|
|
|
17
17
|
export { testJSON } from "../testJSON";
|
|
18
18
|
export { useScreenWidth } from "../customHooks/useScreenWidth";
|
|
19
19
|
export { getDaysDiff } from "../momentjs/getDaysDiff";
|
|
20
|
+
export { stitchLink } from "../stitchLink";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getDaysDiff = exports.useScreenWidth = exports.testJSON = exports.useHandleClickOutside = exports.usePopOutOfOverflowHiddenParent = exports.useScroll = exports.isStringMatch = exports.sortData = exports.makeArrayFromLength = exports.toArray = exports.formatCamelCaseToSentenceCase = exports.formatTextToCamelCase = exports.injectHttps = exports.getBlockLabelProps = exports.getKeyCode = exports.getText = exports.deleteVal = exports.setVal = exports.getVal = void 0;
|
|
3
|
+
exports.stitchLink = exports.getDaysDiff = exports.useScreenWidth = exports.testJSON = exports.useHandleClickOutside = exports.usePopOutOfOverflowHiddenParent = exports.useScroll = exports.isStringMatch = exports.sortData = exports.makeArrayFromLength = exports.toArray = exports.formatCamelCaseToSentenceCase = exports.formatTextToCamelCase = exports.injectHttps = exports.getBlockLabelProps = exports.getKeyCode = exports.getText = exports.deleteVal = exports.setVal = exports.getVal = void 0;
|
|
4
4
|
//the holy setter, getter & deleter
|
|
5
5
|
var getVal_1 = require("../getterSetterDeleter/getVal");
|
|
6
6
|
Object.defineProperty(exports, "getVal", { enumerable: true, get: function () { return getVal_1.getVal; } });
|
|
@@ -44,3 +44,5 @@ Object.defineProperty(exports, "useScreenWidth", { enumerable: true, get: functi
|
|
|
44
44
|
//moment js
|
|
45
45
|
var getDaysDiff_1 = require("../momentjs/getDaysDiff");
|
|
46
46
|
Object.defineProperty(exports, "getDaysDiff", { enumerable: true, get: function () { return getDaysDiff_1.getDaysDiff; } });
|
|
47
|
+
var stitchLink_1 = require("../stitchLink");
|
|
48
|
+
Object.defineProperty(exports, "stitchLink", { enumerable: true, get: function () { return stitchLink_1.stitchLink; } });
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.stitchLink = void 0;
|
|
4
|
+
var getVal_1 = require("./getterSetterDeleter/getVal");
|
|
5
|
+
var stitchLink = function (_a) {
|
|
6
|
+
/**
|
|
7
|
+
* idPath: ['a','b']
|
|
8
|
+
* desc -> here array means that both the items will be stitched one after the other as per config
|
|
9
|
+
* now imagine a config like this -> idPath: ['a,c', b]
|
|
10
|
+
* desc -> in this case, the a,c will be parsed such that the first truthy value found for
|
|
11
|
+
* either of the paths, will be considered for ary index 0
|
|
12
|
+
*
|
|
13
|
+
* config.target = '_blank' : this will prepare the full url including hostname & port so that on the outside we can open in new tab
|
|
14
|
+
*/
|
|
15
|
+
var data = _a.data, config = _a.config;
|
|
16
|
+
var idPath = config.idPath, _b = config.idAs, idAs = _b === void 0 ? 'query' : _b, idName = config.idName, urlString = config.urlString, suffix = config.suffix, target = config.target;
|
|
17
|
+
var isArray = Array.isArray(idPath);
|
|
18
|
+
var idString = "";
|
|
19
|
+
var splitTrim = function (str) { return str.split(",").map(function (d) { return d.trim(); }); };
|
|
20
|
+
if (isArray) {
|
|
21
|
+
var ids_1 = idPath.map(function (p) { return (0, getVal_1.getVal)(data, splitTrim(p)); });
|
|
22
|
+
//if any of the paths gives falsy value then return undefined
|
|
23
|
+
if (ids_1.some(function (id) { return !!id === false; }))
|
|
24
|
+
return undefined;
|
|
25
|
+
idAs.map(function (as, i) {
|
|
26
|
+
if (as === "param") {
|
|
27
|
+
ids_1[i] = "/" + ids_1[i];
|
|
28
|
+
}
|
|
29
|
+
else if (as === "query") {
|
|
30
|
+
ids_1[i] = "?".concat(idName ? idName[i] : "id", "=").concat(ids_1[i]);
|
|
31
|
+
}
|
|
32
|
+
});
|
|
33
|
+
idString = ids_1.join("");
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
var id = (0, getVal_1.getVal)(data, splitTrim(idPath));
|
|
37
|
+
if (!id)
|
|
38
|
+
return undefined;
|
|
39
|
+
idString =
|
|
40
|
+
idAs === "query"
|
|
41
|
+
? "?".concat(idName || "id", "=").concat(id)
|
|
42
|
+
: idAs === "param"
|
|
43
|
+
? "/".concat(id)
|
|
44
|
+
: id;
|
|
45
|
+
}
|
|
46
|
+
var hostAndPort = target === "_blank" ? window.location.origin : "";
|
|
47
|
+
return "".concat(hostAndPort).concat(urlString).concat(idString).concat(suffix || "");
|
|
48
|
+
};
|
|
49
|
+
exports.stitchLink = stitchLink;
|
package/package.json
CHANGED