@pareto-engineering/design-system 4.12.0 → 5.0.1
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/cjs/a/{AreaChart → Charts/AreaChart}/AreaChart.js +89 -63
- package/dist/cjs/a/Charts/AreaChart/styles.scss +48 -0
- package/dist/cjs/a/Charts/BarChart/BarChart.js +135 -0
- package/dist/cjs/a/Charts/BarChart/index.js +13 -0
- package/dist/cjs/a/Charts/BarChart/styles.scss +48 -0
- package/dist/cjs/a/Charts/Common/CustomLegend/CustomLegend.js +69 -0
- package/dist/cjs/a/Charts/Common/CustomLegend/index.js +13 -0
- package/dist/cjs/a/Charts/Common/CustomLegend/styles.scss +40 -0
- package/dist/cjs/a/Charts/Common/CustomTooltipContent/CustomTooltipContent.js +86 -0
- package/dist/cjs/a/Charts/Common/CustomTooltipContent/index.js +13 -0
- package/dist/cjs/a/Charts/Common/CustomTooltipContent/styles.scss +22 -0
- package/dist/cjs/a/Charts/Common/YLabelsDropDown/YlabelsDropDown.js +98 -0
- package/dist/cjs/a/Charts/Common/YLabelsDropDown/index.js +13 -0
- package/dist/cjs/a/Charts/Common/YLabelsDropDown/styles.scss +88 -0
- package/dist/cjs/a/Charts/Common/index.js +26 -0
- package/dist/cjs/a/Charts/index.js +19 -0
- package/dist/cjs/a/Tooltip/styles.scss +1 -1
- package/dist/cjs/a/index.js +8 -2
- package/dist/cjs/f/FormInput/FormInput.js +6 -0
- package/dist/cjs/f/fields/FileUpload/FileUpload.js +18 -4
- package/dist/cjs/f/fields/LatexPreviewInput/LatexPreviewInput.js +78 -0
- package/dist/cjs/f/fields/LatexPreviewInput/convertLatexToHtml.js +46 -0
- package/dist/cjs/f/fields/LatexPreviewInput/index.js +20 -0
- package/dist/cjs/f/fields/LatexPreviewInput/styles.scss +24 -0
- package/dist/cjs/f/fields/index.js +13 -0
- package/dist/cjs/g/FormBuilder/FormBuilder.js +3 -6
- package/dist/cjs/g/FormBuilder/common/Builder/Builder.js +1 -3
- package/dist/cjs/g/FormBuilder/common/Builder/common/InputBuilder/InputBuilder.js +5 -7
- package/dist/cjs/g/FormBuilder/common/Builder/common/Section/Section.js +2 -4
- package/dist/cjs/g/FormBuilder/common/Renderer/Renderer.js +2 -4
- package/dist/cjs/g/FormBuilder/common/Renderer/common/Section/Section.js +2 -10
- package/dist/cjs/utils/formatting.js +111 -0
- package/dist/cjs/utils/index.js +20 -1
- package/dist/es/a/{AreaChart → Charts/AreaChart}/AreaChart.js +88 -59
- package/dist/es/a/Charts/AreaChart/styles.scss +48 -0
- package/dist/es/a/Charts/BarChart/BarChart.js +126 -0
- package/dist/es/a/Charts/BarChart/index.js +1 -0
- package/dist/es/a/Charts/BarChart/styles.scss +48 -0
- package/dist/es/a/Charts/Common/CustomLegend/CustomLegend.js +59 -0
- package/dist/es/a/Charts/Common/CustomLegend/index.js +1 -0
- package/dist/es/a/Charts/Common/CustomLegend/styles.scss +40 -0
- package/dist/es/a/Charts/Common/CustomTooltipContent/CustomTooltipContent.js +76 -0
- package/dist/es/a/Charts/Common/CustomTooltipContent/index.js +1 -0
- package/dist/es/a/Charts/Common/CustomTooltipContent/styles.scss +22 -0
- package/dist/es/a/Charts/Common/YLabelsDropDown/YlabelsDropDown.js +88 -0
- package/dist/es/a/Charts/Common/YLabelsDropDown/index.js +1 -0
- package/dist/es/a/Charts/Common/YLabelsDropDown/styles.scss +88 -0
- package/dist/es/a/Charts/Common/index.js +3 -0
- package/dist/es/a/Charts/index.js +2 -0
- package/dist/es/a/Tooltip/styles.scss +1 -1
- package/dist/es/a/index.js +1 -1
- package/dist/es/f/FormInput/FormInput.js +7 -1
- package/dist/es/f/fields/FileUpload/FileUpload.js +18 -4
- package/dist/es/f/fields/LatexPreviewInput/LatexPreviewInput.js +70 -0
- package/dist/es/f/fields/LatexPreviewInput/convertLatexToHtml.js +31 -0
- package/dist/es/f/fields/LatexPreviewInput/index.js +3 -0
- package/dist/es/f/fields/LatexPreviewInput/styles.scss +24 -0
- package/dist/es/f/fields/index.js +1 -0
- package/dist/es/g/FormBuilder/FormBuilder.js +3 -6
- package/dist/es/g/FormBuilder/common/Builder/Builder.js +1 -3
- package/dist/es/g/FormBuilder/common/Builder/common/InputBuilder/InputBuilder.js +5 -7
- package/dist/es/g/FormBuilder/common/Builder/common/Section/Section.js +2 -4
- package/dist/es/g/FormBuilder/common/Renderer/Renderer.js +2 -4
- package/dist/es/g/FormBuilder/common/Renderer/common/Section/Section.js +32 -42
- package/dist/es/utils/formatting.js +102 -0
- package/dist/es/utils/index.js +2 -1
- package/jest.config.js +3 -0
- package/package.json +13 -9
- package/src/stories/a/BarChart.stories.jsx +89 -0
- package/src/ui/a/{AreaChart → Charts/AreaChart}/AreaChart.jsx +109 -54
- package/src/ui/a/Charts/AreaChart/styles.scss +48 -0
- package/src/ui/a/Charts/BarChart/BarChart.jsx +165 -0
- package/src/ui/a/Charts/BarChart/index.js +1 -0
- package/src/ui/a/Charts/BarChart/styles.scss +48 -0
- package/src/ui/a/Charts/Common/CustomLegend/CustomLegend.jsx +84 -0
- package/src/ui/a/Charts/Common/CustomLegend/index.js +1 -0
- package/src/ui/a/Charts/Common/CustomLegend/styles.scss +40 -0
- package/src/ui/a/Charts/Common/CustomTooltipContent/CustomTooltipContent.jsx +105 -0
- package/src/ui/a/Charts/Common/CustomTooltipContent/index.js +1 -0
- package/src/ui/a/Charts/Common/CustomTooltipContent/styles.scss +22 -0
- package/src/ui/a/Charts/Common/YLabelsDropDown/YlabelsDropDown.jsx +121 -0
- package/src/ui/a/Charts/Common/YLabelsDropDown/index.js +1 -0
- package/src/ui/a/Charts/Common/YLabelsDropDown/styles.scss +88 -0
- package/src/ui/a/Charts/Common/index.js +3 -0
- package/src/ui/a/Charts/index.js +2 -0
- package/src/ui/a/Tooltip/styles.scss +1 -1
- package/src/ui/a/index.js +1 -1
- package/src/ui/f/FormInput/FormInput.jsx +11 -0
- package/src/ui/f/fields/FileUpload/FileUpload.jsx +24 -4
- package/src/ui/f/fields/LatexPreviewInput/LatexPreviewInput.jsx +91 -0
- package/src/ui/f/fields/LatexPreviewInput/convertLatexToHtml.jsx +38 -0
- package/src/ui/f/fields/LatexPreviewInput/index.js +3 -0
- package/src/ui/f/fields/LatexPreviewInput/styles.scss +24 -0
- package/src/ui/f/fields/index.js +4 -0
- package/src/ui/g/FormBuilder/FormBuilder.jsx +0 -3
- package/src/ui/g/FormBuilder/common/Builder/Builder.jsx +0 -2
- package/src/ui/g/FormBuilder/common/Builder/common/InputBuilder/InputBuilder.jsx +4 -7
- package/src/ui/g/FormBuilder/common/Builder/common/Section/Section.jsx +0 -2
- package/src/ui/g/FormBuilder/common/Renderer/Renderer.jsx +0 -2
- package/src/ui/g/FormBuilder/common/Renderer/common/Section/Section.jsx +49 -64
- package/src/ui/utils/formatting.js +125 -0
- package/src/ui/utils/index.js +1 -0
- package/tests/__snapshots__/Storyshots.test.js.snap +1257 -62
- package/tests/emptyMock.js +3 -0
- package/tests/mockTextEncoder.js +7 -0
- package/tests/test-setup.js +7 -0
- package/dist/cjs/a/AreaChart/styles.scss +0 -89
- package/dist/es/a/AreaChart/styles.scss +0 -89
- package/src/ui/a/AreaChart/styles.scss +0 -89
- /package/dist/cjs/a/{AreaChart → Charts/AreaChart}/index.js +0 -0
- /package/dist/es/a/{AreaChart → Charts/AreaChart}/index.js +0 -0
- /package/src/ui/a/{AreaChart → Charts/AreaChart}/index.js +0 -0
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var React = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
var _exports = _interopRequireDefault(require("@pareto-engineering/bem/exports"));
|
|
10
|
+
var _utils = require("../../../../utils");
|
|
11
|
+
require("./styles.scss");
|
|
12
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
13
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
14
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
15
|
+
const baseClassName = _exports.default.base;
|
|
16
|
+
const componentClassName = 'custom-tooltip-content';
|
|
17
|
+
const CustomTooltipContent = _ref => {
|
|
18
|
+
let {
|
|
19
|
+
id,
|
|
20
|
+
className: userClassName,
|
|
21
|
+
xLabel,
|
|
22
|
+
dateFormat,
|
|
23
|
+
isTimeFormat,
|
|
24
|
+
active,
|
|
25
|
+
payload,
|
|
26
|
+
label
|
|
27
|
+
} = _ref;
|
|
28
|
+
if (active && payload && payload.length) {
|
|
29
|
+
const newPayload = payload.filter(item => item.name !== 'bounds');
|
|
30
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
31
|
+
id: id,
|
|
32
|
+
className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' ')
|
|
33
|
+
}, /*#__PURE__*/React.createElement("p", {
|
|
34
|
+
className: "label"
|
|
35
|
+
}, `${xLabel}: ${(0, _utils.formatDate)(label, dateFormat)}`), newPayload.map(entry => /*#__PURE__*/React.createElement("p", {
|
|
36
|
+
className: "label",
|
|
37
|
+
key: `${entry.name}`,
|
|
38
|
+
style: {
|
|
39
|
+
color: entry.color,
|
|
40
|
+
textTransform: 'capitalize'
|
|
41
|
+
}
|
|
42
|
+
}, `${entry.name}: ${isTimeFormat ? (0, _utils.formatTime)(entry.value) : entry.value}`)));
|
|
43
|
+
}
|
|
44
|
+
return null;
|
|
45
|
+
};
|
|
46
|
+
CustomTooltipContent.propTypes = {
|
|
47
|
+
/**
|
|
48
|
+
* The id of the dropdown component.
|
|
49
|
+
*/
|
|
50
|
+
id: _propTypes.default.string,
|
|
51
|
+
/**
|
|
52
|
+
* Additional class names for the dropdown component.
|
|
53
|
+
*/
|
|
54
|
+
className: _propTypes.default.string,
|
|
55
|
+
/**
|
|
56
|
+
* The label for the x-axis.
|
|
57
|
+
*/
|
|
58
|
+
xLabel: _propTypes.default.string,
|
|
59
|
+
/**
|
|
60
|
+
* Flag on whether it is a timeformat or not
|
|
61
|
+
*/
|
|
62
|
+
isTimeFormat: _propTypes.default.bool,
|
|
63
|
+
/**
|
|
64
|
+
* The type of format for the datetime value
|
|
65
|
+
*/
|
|
66
|
+
dateFormat: _propTypes.default.oneOf(Object.values(_utils.DATE_FORMATS)),
|
|
67
|
+
/**
|
|
68
|
+
* If set true, the tooltip is displayed.
|
|
69
|
+
* If set false, the tooltip is hidden, usually calculated internally.
|
|
70
|
+
*/
|
|
71
|
+
active: _propTypes.default.bool.isRequired,
|
|
72
|
+
/**
|
|
73
|
+
* The source data of the content to be displayed in the tooltip,
|
|
74
|
+
* always calculated internally and cannot be user set.
|
|
75
|
+
*/
|
|
76
|
+
payload: _propTypes.default.arrayOf(_propTypes.default.string).isRequired,
|
|
77
|
+
/**
|
|
78
|
+
*The label value which is active now, usually calculated internally.
|
|
79
|
+
*/
|
|
80
|
+
label: _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.number]).isRequired
|
|
81
|
+
};
|
|
82
|
+
CustomTooltipContent.defaultProps = {
|
|
83
|
+
isTimeFormat: false,
|
|
84
|
+
dateFormat: _utils.DATE_FORMATS.HUMAN_READABLE
|
|
85
|
+
};
|
|
86
|
+
var _default = exports.default = CustomTooltipContent;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "CustomTooltipContent", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _CustomTooltipContent.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _CustomTooltipContent = _interopRequireDefault(require("./CustomTooltipContent"));
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
@use "@pareto-engineering/bem";
|
|
2
|
+
|
|
3
|
+
$default-margin: 1rem;
|
|
4
|
+
$default-padding: 1rem;
|
|
5
|
+
$default-text-font-size: calc(var(--s-1) * 1rem);
|
|
6
|
+
$default-border-radius: .25rem;
|
|
7
|
+
$default-border-line-width: .0625rem;
|
|
8
|
+
|
|
9
|
+
.#{bem.$base} {
|
|
10
|
+
&.custom-tooltip-content {
|
|
11
|
+
background-color: var(--background-far);
|
|
12
|
+
border: $default-border-line-width solid var(--ui-lines);
|
|
13
|
+
border-radius: $default-border-radius;
|
|
14
|
+
padding: calc($default-padding * .25);
|
|
15
|
+
|
|
16
|
+
.label {
|
|
17
|
+
color: var(--hard-paragraph);
|
|
18
|
+
font-size: $default-text-font-size;
|
|
19
|
+
margin: calc($default-margin * .25);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var React = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
9
|
+
var _exports = _interopRequireDefault(require("@pareto-engineering/bem/exports"));
|
|
10
|
+
require("./styles.scss");
|
|
11
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
14
|
+
// DropdownStatus.js
|
|
15
|
+
|
|
16
|
+
// Local Definitions
|
|
17
|
+
|
|
18
|
+
const baseClassName = _exports.default.base;
|
|
19
|
+
const componentClassName = 'y-labels-dropdown';
|
|
20
|
+
const YLabelsDropDown = _ref => {
|
|
21
|
+
let {
|
|
22
|
+
id,
|
|
23
|
+
className: userClassName,
|
|
24
|
+
placeholder,
|
|
25
|
+
selectedYLabels,
|
|
26
|
+
setSelectedYLabels,
|
|
27
|
+
allYLabels
|
|
28
|
+
} = _ref;
|
|
29
|
+
const [isOpen, setIsOpen] = React.useState(false);
|
|
30
|
+
const toggleYLabel = yLabel => {
|
|
31
|
+
setSelectedYLabels(prev => prev.some(label => label.label === yLabel.label) ? prev.filter(label => label.label !== yLabel.label) : [...prev, yLabel]);
|
|
32
|
+
};
|
|
33
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
34
|
+
id: id,
|
|
35
|
+
className: [baseClassName, componentClassName, userClassName].filter(e => e).join(' ')
|
|
36
|
+
}, /*#__PURE__*/React.createElement("button", {
|
|
37
|
+
className: "dropdown-button",
|
|
38
|
+
onClick: () => setIsOpen(!isOpen),
|
|
39
|
+
type: "button"
|
|
40
|
+
}, placeholder, /*#__PURE__*/React.createElement("span", {
|
|
41
|
+
className: `icon ${isOpen ? _exports.default.modifierOpen : ''}`
|
|
42
|
+
}, "W")), /*#__PURE__*/React.createElement("div", {
|
|
43
|
+
className: `dropdown-content ${isOpen ? _exports.default.modifierOpen : ''}`
|
|
44
|
+
}, allYLabels.map(item =>
|
|
45
|
+
/*#__PURE__*/
|
|
46
|
+
// eslint-disable-next-line max-len
|
|
47
|
+
// eslint-disable-next-line jsx-a11y/no-static-element-interactions, jsx-a11y/click-events-have-key-events
|
|
48
|
+
React.createElement("div", {
|
|
49
|
+
key: item.label,
|
|
50
|
+
className: `dropdown-item ${selectedYLabels.some(label => label.label === item.label) ? _exports.default.modifierActive : ''}`
|
|
51
|
+
// eslint-disable-next-line jsx-a11y/click-events-have-key-events
|
|
52
|
+
,
|
|
53
|
+
onClick: () => toggleYLabel(item)
|
|
54
|
+
}, /*#__PURE__*/React.createElement("span", {
|
|
55
|
+
className: "status-dot",
|
|
56
|
+
style: {
|
|
57
|
+
backgroundColor: item.color
|
|
58
|
+
}
|
|
59
|
+
}), item.label, selectedYLabels.some(label => label.label === item.label) && /*#__PURE__*/React.createElement("span", {
|
|
60
|
+
className: "icon checkmark"
|
|
61
|
+
}, "I")))));
|
|
62
|
+
};
|
|
63
|
+
YLabelsDropDown.propTypes = {
|
|
64
|
+
/**
|
|
65
|
+
* The id of the dropdown component.
|
|
66
|
+
*/
|
|
67
|
+
id: _propTypes.default.string,
|
|
68
|
+
/**
|
|
69
|
+
* Additional class names for the dropdown component.
|
|
70
|
+
*/
|
|
71
|
+
className: _propTypes.default.string,
|
|
72
|
+
/**
|
|
73
|
+
* Placeholder text for the dropdown button.
|
|
74
|
+
*/
|
|
75
|
+
placeholder: _propTypes.default.string,
|
|
76
|
+
/**
|
|
77
|
+
* Array of selected Y labels with their corresponding colors.
|
|
78
|
+
*/
|
|
79
|
+
selectedYLabels: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
80
|
+
label: _propTypes.default.string,
|
|
81
|
+
color: _propTypes.default.string
|
|
82
|
+
})),
|
|
83
|
+
/**
|
|
84
|
+
* Function to set the selected Y labels.
|
|
85
|
+
*/
|
|
86
|
+
setSelectedYLabels: _propTypes.default.func,
|
|
87
|
+
/**
|
|
88
|
+
* Array of all Y labels with their corresponding colors.
|
|
89
|
+
*/
|
|
90
|
+
allYLabels: _propTypes.default.arrayOf(_propTypes.default.shape({
|
|
91
|
+
label: _propTypes.default.string,
|
|
92
|
+
color: _propTypes.default.string
|
|
93
|
+
}))
|
|
94
|
+
};
|
|
95
|
+
YLabelsDropDown.defaultProps = {
|
|
96
|
+
placeholder: 'Submission status'
|
|
97
|
+
};
|
|
98
|
+
var _default = exports.default = YLabelsDropDown;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "YLabelsDropDown", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _YlabelsDropDown.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
var _YlabelsDropDown = _interopRequireDefault(require("./YlabelsDropDown"));
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
@use "@pareto-engineering/bem";
|
|
2
|
+
|
|
3
|
+
$default-margin: 1rem;
|
|
4
|
+
$default-border-radius: .25rem;
|
|
5
|
+
$default-padding: 1rem;
|
|
6
|
+
$default-width: 15rem;
|
|
7
|
+
$default-box-shadow: 0 .25rem .75rem var(--ui-lines);
|
|
8
|
+
$default-dot-width: .5rem;
|
|
9
|
+
$default-dot-height: .5rem;
|
|
10
|
+
$default-checkmark-font-size: calc(var(--s-1) * .75rem);
|
|
11
|
+
|
|
12
|
+
.#{bem.$base} {
|
|
13
|
+
&.y-labels-dropdown {
|
|
14
|
+
display: inline-block;
|
|
15
|
+
position: relative;
|
|
16
|
+
|
|
17
|
+
.dropdown-button {
|
|
18
|
+
align-items: center;
|
|
19
|
+
background-color: var(--soft-background-inputs);
|
|
20
|
+
border: none;
|
|
21
|
+
border-radius: $default-border-radius;
|
|
22
|
+
color: var(--hard-paragraph);
|
|
23
|
+
cursor: pointer;
|
|
24
|
+
display: flex;
|
|
25
|
+
justify-content: space-between;
|
|
26
|
+
padding: calc($default-padding * .5);
|
|
27
|
+
text-align: left;
|
|
28
|
+
width: $default-width;
|
|
29
|
+
|
|
30
|
+
.icon {
|
|
31
|
+
color: var(--hard-ui-icons);
|
|
32
|
+
font-size: calc($default-checkmark-font-size * 1.25);
|
|
33
|
+
|
|
34
|
+
&.#{bem.$modifier-open} {
|
|
35
|
+
transform: rotate(180deg);
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
.dropdown-content {
|
|
41
|
+
background-color: var(--background-far);
|
|
42
|
+
border-radius: $default-border-radius;
|
|
43
|
+
box-shadow: $default-box-shadow;
|
|
44
|
+
display: none;
|
|
45
|
+
margin-top: calc($default-margin * .125);
|
|
46
|
+
position: absolute;
|
|
47
|
+
width: $default-width;
|
|
48
|
+
z-index: 1;
|
|
49
|
+
|
|
50
|
+
&.#{bem.$modifier-open} {
|
|
51
|
+
display: block;
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
.dropdown-item {
|
|
55
|
+
align-items: center;
|
|
56
|
+
border-radius: $default-border-radius;
|
|
57
|
+
color: var(--hard-paragraph);
|
|
58
|
+
cursor: pointer;
|
|
59
|
+
display: flex;
|
|
60
|
+
margin: calc($default-margin * .125);
|
|
61
|
+
padding: calc($default-padding * .5);
|
|
62
|
+
text-decoration: none;
|
|
63
|
+
|
|
64
|
+
&.#{bem.$modifier-active} {
|
|
65
|
+
background-color: var(--background-near);
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
&:hover {
|
|
69
|
+
background-color: var(--background-near);
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
.status-dot {
|
|
73
|
+
border-radius: 50%;
|
|
74
|
+
display: inline-block;
|
|
75
|
+
height: $default-dot-height;
|
|
76
|
+
margin-right: calc($default-margin * .5);
|
|
77
|
+
width: $default-dot-width;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
.checkmark {
|
|
81
|
+
color: var(--hard-main);
|
|
82
|
+
font-size: $default-checkmark-font-size;
|
|
83
|
+
margin-left: auto;
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "CustomLegend", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _CustomLegend.CustomLegend;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "CustomTooltipContent", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _CustomTooltipContent.CustomTooltipContent;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
Object.defineProperty(exports, "YLabelsDropDown", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function () {
|
|
21
|
+
return _YLabelsDropDown.YLabelsDropDown;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
24
|
+
var _CustomLegend = require("./CustomLegend");
|
|
25
|
+
var _CustomTooltipContent = require("./CustomTooltipContent");
|
|
26
|
+
var _YLabelsDropDown = require("./YLabelsDropDown");
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "AreaChart", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _AreaChart.AreaChart;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "BarChart", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _BarChart.BarChart;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
var _AreaChart = require("./AreaChart");
|
|
19
|
+
var _BarChart = require("./BarChart");
|
|
@@ -14,6 +14,7 @@ $default-width: var(--tooltip-width, 20rem);
|
|
|
14
14
|
background: var(--x);
|
|
15
15
|
border: var(--theme-default-border-style) var(--ui-lines);
|
|
16
16
|
border-radius: calc(var(--theme-default-border-radius) / 2);
|
|
17
|
+
min-width: $default-width;
|
|
17
18
|
opacity: 0;
|
|
18
19
|
overflow: hidden;
|
|
19
20
|
padding: $default-block-padding $default-inline-padding;
|
|
@@ -21,7 +22,6 @@ $default-width: var(--tooltip-width, 20rem);
|
|
|
21
22
|
transform: translateX(var(--horizontal, 0)) translateY(var(--vertical, 0));
|
|
22
23
|
transition: opacity .2s ease, transform .2s ease;
|
|
23
24
|
visibility: hidden;
|
|
24
|
-
width: $default-width;
|
|
25
25
|
z-index: 10;
|
|
26
26
|
|
|
27
27
|
&.top {
|
package/dist/cjs/a/index.js
CHANGED
|
@@ -30,7 +30,13 @@ Object.defineProperty(exports, "AppContextProvider", {
|
|
|
30
30
|
Object.defineProperty(exports, "AreaChart", {
|
|
31
31
|
enumerable: true,
|
|
32
32
|
get: function () {
|
|
33
|
-
return
|
|
33
|
+
return _Charts.AreaChart;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
Object.defineProperty(exports, "BarChart", {
|
|
37
|
+
enumerable: true,
|
|
38
|
+
get: function () {
|
|
39
|
+
return _Charts.BarChart;
|
|
34
40
|
}
|
|
35
41
|
});
|
|
36
42
|
Object.defineProperty(exports, "BlurOverlay", {
|
|
@@ -237,4 +243,4 @@ var _ToggleSwitch = require("./ToggleSwitch");
|
|
|
237
243
|
var _XMLEditor = require("./XMLEditor");
|
|
238
244
|
var _DatePicker = require("./DatePicker");
|
|
239
245
|
var _Tooltip = require("./Tooltip");
|
|
240
|
-
var
|
|
246
|
+
var _Charts = require("./Charts");
|
|
@@ -103,6 +103,12 @@ const FormInput = _ref => {
|
|
|
103
103
|
disabled: disabled
|
|
104
104
|
}, otherProps));
|
|
105
105
|
}
|
|
106
|
+
if (type === 'latex-preview-input') {
|
|
107
|
+
return /*#__PURE__*/React.createElement(_fields.LatexPreviewInput, _extends({
|
|
108
|
+
className: newClassName,
|
|
109
|
+
disabled: disabled
|
|
110
|
+
}, otherProps));
|
|
111
|
+
}
|
|
106
112
|
if (extraTypes?.[type]) {
|
|
107
113
|
const Component = extraTypes[type];
|
|
108
114
|
return /*#__PURE__*/React.createElement(Component, _extends({
|
|
@@ -20,6 +20,13 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
|
|
|
20
20
|
|
|
21
21
|
const baseClassName = _exports.default.base;
|
|
22
22
|
const componentClassName = 'file-upload';
|
|
23
|
+
const generateUniqueFileName = (originalName, existingFileNames) => {
|
|
24
|
+
const lastDotIndex = originalName.lastIndexOf('.');
|
|
25
|
+
const name = originalName.substring(0, lastDotIndex);
|
|
26
|
+
const ext = originalName.split('.').pop();
|
|
27
|
+
const numDuplicates = existingFileNames.filter(existingFileName => existingFileName?.startsWith(name)).length;
|
|
28
|
+
return numDuplicates > 0 ? `${name} (${numDuplicates}).${ext}` : originalName;
|
|
29
|
+
};
|
|
23
30
|
|
|
24
31
|
/**
|
|
25
32
|
* This is the component description.
|
|
@@ -62,17 +69,24 @@ const FileUpload = _ref => {
|
|
|
62
69
|
} = helpers;
|
|
63
70
|
const handleChange = event => {
|
|
64
71
|
setTouched(true, false);
|
|
65
|
-
|
|
72
|
+
let newFiles = Array.from(event.currentTarget.files);
|
|
66
73
|
const currentFiles = value || [];
|
|
67
74
|
const currentCount = currentFiles.length + newFiles.length;
|
|
68
75
|
if (maxCount && currentCount > maxCount) {
|
|
69
76
|
setError(maxCountError || `Maximum of ${maxCount} files allowed`);
|
|
70
77
|
return;
|
|
71
78
|
}
|
|
72
|
-
const
|
|
79
|
+
const uploadedFiles = Object.keys(uploadStatus) || [];
|
|
80
|
+
const duplicateFiles = newFiles.filter(newFile => uploadedFiles.some(uploadedFile => uploadedFile === newFile.name));
|
|
73
81
|
if (duplicateFiles.length > 0) {
|
|
74
|
-
|
|
75
|
-
|
|
82
|
+
newFiles = newFiles.map(file => {
|
|
83
|
+
if (duplicateFiles.some(duplicateFile => duplicateFile.name === file.name)) {
|
|
84
|
+
return new File([file], generateUniqueFileName(file.name, uploadedFiles), {
|
|
85
|
+
type: file.type
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
return file;
|
|
89
|
+
});
|
|
76
90
|
}
|
|
77
91
|
if (maxSize) {
|
|
78
92
|
const oversizedFiles = newFiles.filter(file => file.size > maxSize);
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var React = _react;
|
|
9
|
+
var _propTypes = _interopRequireDefault(require("prop-types"));
|
|
10
|
+
var _exports = _interopRequireDefault(require("@pareto-engineering/bem/exports"));
|
|
11
|
+
var _formik = require("formik");
|
|
12
|
+
var _convertLatexToHtml = _interopRequireDefault(require("./convertLatexToHtml"));
|
|
13
|
+
var _TextareaInput = require("../TextareaInput");
|
|
14
|
+
require("./styles.scss");
|
|
15
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
16
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
|
+
function _extends() { return _extends = Object.assign ? Object.assign.bind() : function (n) { for (var e = 1; e < arguments.length; e++) { var t = arguments[e]; for (var r in t) ({}).hasOwnProperty.call(t, r) && (n[r] = t[r]); } return n; }, _extends.apply(null, arguments); } /* @pareto-engineering/generator-front 1.0.12 */
|
|
19
|
+
// Local Definitions
|
|
20
|
+
|
|
21
|
+
const baseClassName = _exports.default.base;
|
|
22
|
+
const componentClassName = 'latex-preview-input';
|
|
23
|
+
|
|
24
|
+
/**
|
|
25
|
+
* This is the component description.
|
|
26
|
+
*/
|
|
27
|
+
const LatexPreviewInput = _ref => {
|
|
28
|
+
let {
|
|
29
|
+
id,
|
|
30
|
+
className,
|
|
31
|
+
userClassName,
|
|
32
|
+
disabled,
|
|
33
|
+
style,
|
|
34
|
+
...otherProps
|
|
35
|
+
} = _ref;
|
|
36
|
+
const {
|
|
37
|
+
name
|
|
38
|
+
} = otherProps;
|
|
39
|
+
const {
|
|
40
|
+
values
|
|
41
|
+
} = (0, _formik.useFormikContext)();
|
|
42
|
+
const LatexPreview = (0, _react.useMemo)(() => (0, _convertLatexToHtml.default)(values[name]), [values[name]]);
|
|
43
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
44
|
+
id: id,
|
|
45
|
+
className: [baseClassName, componentClassName, userClassName, 'form-input'].filter(e => e).join(' '),
|
|
46
|
+
style: style
|
|
47
|
+
}, /*#__PURE__*/React.createElement(_TextareaInput.TextareaInput, _extends({
|
|
48
|
+
className: "preview-child",
|
|
49
|
+
disabled: disabled
|
|
50
|
+
}, otherProps)), /*#__PURE__*/React.createElement("div", {
|
|
51
|
+
className: "latex-container preview-child",
|
|
52
|
+
dangerouslySetInnerHTML: {
|
|
53
|
+
__html: LatexPreview
|
|
54
|
+
}
|
|
55
|
+
}));
|
|
56
|
+
};
|
|
57
|
+
LatexPreviewInput.propTypes = {
|
|
58
|
+
/**
|
|
59
|
+
* The HTML id for this element
|
|
60
|
+
*/
|
|
61
|
+
id: _propTypes.default.string,
|
|
62
|
+
/**
|
|
63
|
+
* The HTML class names for this element
|
|
64
|
+
*/
|
|
65
|
+
className: _propTypes.default.string,
|
|
66
|
+
/**
|
|
67
|
+
* The React-written, css properties for this element.
|
|
68
|
+
*/
|
|
69
|
+
style: _propTypes.default.objectOf(_propTypes.default.string),
|
|
70
|
+
/**
|
|
71
|
+
* Whether the Form input input should be disabled
|
|
72
|
+
*/
|
|
73
|
+
disabled: _propTypes.default.bool
|
|
74
|
+
};
|
|
75
|
+
LatexPreviewInput.defaultProps = {
|
|
76
|
+
disabled: false
|
|
77
|
+
};
|
|
78
|
+
var _default = exports.default = /*#__PURE__*/(0, _react.memo)(LatexPreviewInput);
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.default = void 0;
|
|
7
|
+
var React = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _reactMarkdown = _interopRequireDefault(require("react-markdown"));
|
|
9
|
+
var _remarkMath = _interopRequireDefault(require("remark-math"));
|
|
10
|
+
var _betterReactMathjax = require("better-react-mathjax");
|
|
11
|
+
var _svg = _interopRequireDefault(require("rehype-mathjax/svg"));
|
|
12
|
+
var _server = _interopRequireDefault(require("react-dom/server"));
|
|
13
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
14
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
15
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
16
|
+
const convertLatexToHtml = content => {
|
|
17
|
+
if (content.includes('https://forte-assets.pareto.ai/')) {
|
|
18
|
+
return content;
|
|
19
|
+
}
|
|
20
|
+
const processedContent = content.replaceAll(/\\\\/g, '\n\n');
|
|
21
|
+
const renderedContent = _server.default.renderToString(/*#__PURE__*/React.createElement(_betterReactMathjax.MathJaxContext, null, /*#__PURE__*/React.createElement(_reactMarkdown.default, {
|
|
22
|
+
remarkPlugins: [_remarkMath.default],
|
|
23
|
+
rehypePlugins: [_svg.default],
|
|
24
|
+
components: {
|
|
25
|
+
math: _ref => {
|
|
26
|
+
let {
|
|
27
|
+
value
|
|
28
|
+
} = _ref;
|
|
29
|
+
return /*#__PURE__*/React.createElement(_betterReactMathjax.MathJax.Node, {
|
|
30
|
+
formula: value
|
|
31
|
+
});
|
|
32
|
+
},
|
|
33
|
+
inlineMath: _ref2 => {
|
|
34
|
+
let {
|
|
35
|
+
value
|
|
36
|
+
} = _ref2;
|
|
37
|
+
return /*#__PURE__*/React.createElement(_betterReactMathjax.MathJax.Node, {
|
|
38
|
+
inline: true,
|
|
39
|
+
formula: value
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}, processedContent)));
|
|
44
|
+
return renderedContent;
|
|
45
|
+
};
|
|
46
|
+
var _default = exports.default = convertLatexToHtml;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
Object.defineProperty(exports, "LatexPreviewInput", {
|
|
7
|
+
enumerable: true,
|
|
8
|
+
get: function () {
|
|
9
|
+
return _LatexPreviewInput.default;
|
|
10
|
+
}
|
|
11
|
+
});
|
|
12
|
+
Object.defineProperty(exports, "convertLatexToHtml", {
|
|
13
|
+
enumerable: true,
|
|
14
|
+
get: function () {
|
|
15
|
+
return _convertLatexToHtml.default;
|
|
16
|
+
}
|
|
17
|
+
});
|
|
18
|
+
var _LatexPreviewInput = _interopRequireDefault(require("./LatexPreviewInput"));
|
|
19
|
+
var _convertLatexToHtml = _interopRequireDefault(require("./convertLatexToHtml"));
|
|
20
|
+
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/* @pareto-engineering/generator-front 1.0.12 */
|
|
2
|
+
|
|
3
|
+
@use "@pareto-engineering/bem";
|
|
4
|
+
|
|
5
|
+
$default-margin: 1em;
|
|
6
|
+
|
|
7
|
+
.#{bem.$base}.latex-preview-input {
|
|
8
|
+
display: flex;
|
|
9
|
+
flex-direction: row;
|
|
10
|
+
gap: $default-margin;
|
|
11
|
+
|
|
12
|
+
> .preview-child {
|
|
13
|
+
flex: 1;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
> .latex-container {
|
|
17
|
+
border: 1px solid var(--ui-lines);
|
|
18
|
+
border-radius: var(--theme-default-border-radius);
|
|
19
|
+
margin-top: calc($default-margin * 2.5);
|
|
20
|
+
max-width: 50%;
|
|
21
|
+
overflow: auto;
|
|
22
|
+
padding: 0 $default-margin;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
@@ -27,6 +27,12 @@ Object.defineProperty(exports, "FileUpload", {
|
|
|
27
27
|
return _FileUpload.FileUpload;
|
|
28
28
|
}
|
|
29
29
|
});
|
|
30
|
+
Object.defineProperty(exports, "LatexPreviewInput", {
|
|
31
|
+
enumerable: true,
|
|
32
|
+
get: function () {
|
|
33
|
+
return _LatexPreviewInput.LatexPreviewInput;
|
|
34
|
+
}
|
|
35
|
+
});
|
|
30
36
|
Object.defineProperty(exports, "LinkInput", {
|
|
31
37
|
enumerable: true,
|
|
32
38
|
get: function () {
|
|
@@ -75,6 +81,12 @@ Object.defineProperty(exports, "TextareaInput", {
|
|
|
75
81
|
return _TextareaInput.TextareaInput;
|
|
76
82
|
}
|
|
77
83
|
});
|
|
84
|
+
Object.defineProperty(exports, "convertLatexToHtml", {
|
|
85
|
+
enumerable: true,
|
|
86
|
+
get: function () {
|
|
87
|
+
return _LatexPreviewInput.convertLatexToHtml;
|
|
88
|
+
}
|
|
89
|
+
});
|
|
78
90
|
Object.defineProperty(exports, "fileUploadOptions", {
|
|
79
91
|
enumerable: true,
|
|
80
92
|
get: function () {
|
|
@@ -104,4 +116,5 @@ var _Checkbox = require("./Checkbox");
|
|
|
104
116
|
var _QueryChoices = require("./QueryChoices");
|
|
105
117
|
var _LinkInput = require("./LinkInput");
|
|
106
118
|
var _EditorInput = require("./EditorInput");
|
|
119
|
+
var _LatexPreviewInput = require("./LatexPreviewInput");
|
|
107
120
|
var _FileUpload = require("./FileUpload");
|