@bigbinary/neeto-molecules 3.5.12 → 3.5.13

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/Insights.js CHANGED
@@ -1,3 +1,4 @@
1
+ import classnames from 'classnames';
1
2
  import Warning from '@bigbinary/neeto-icons/Warning';
2
3
  import Tooltip from '@bigbinary/neetoui/Tooltip';
3
4
  import Typography from '@bigbinary/neetoui/Typography';
@@ -18,7 +19,6 @@ import '@bigbinary/neetoui/Select';
18
19
  import '@bigbinary/neetoui/DatePicker';
19
20
  import '@babel/runtime/helpers/objectWithoutProperties';
20
21
  import './inject-css-c86de496.js';
21
- import 'classnames';
22
22
  import '@bigbinary/neeto-icons/Help';
23
23
  import '@bigbinary/neetoui/Button';
24
24
  import '@bigbinary/neetoui/Popover';
@@ -56,14 +56,14 @@ var DEFAULT_BROWSERS = [{
56
56
  var PercentageBar = function PercentageBar(_ref) {
57
57
  var value = _ref.value;
58
58
  return /*#__PURE__*/jsxs(Fragment, {
59
- children: [value && /*#__PURE__*/jsx("div", {
59
+ children: [value !== 0 && /*#__PURE__*/jsx("div", {
60
60
  className: "neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2",
61
61
  style: {
62
62
  width: "".concat(value, "%")
63
63
  }
64
- }), /*#__PURE__*/jsxs(Typography, {
64
+ }), /*#__PURE__*/jsx(Typography, {
65
65
  style: "body3",
66
- children: [value, "%"]
66
+ children: value ? "".concat(value, "%") : 0
67
67
  })]
68
68
  });
69
69
  };
@@ -148,8 +148,8 @@ var MetaInfo = function MetaInfo(_ref) {
148
148
  return /*#__PURE__*/jsxs("div", {
149
149
  className: "neeto-ui-bg-gray-100 neeto-ui-rounded p-4",
150
150
  children: [/*#__PURE__*/jsx(Typography, {
151
- className: "mb-4",
152
- style: "h6",
151
+ className: "mb-2",
152
+ style: "body2",
153
153
  textTransform: "uppercase",
154
154
  weight: "bold",
155
155
  children: type
@@ -221,11 +221,11 @@ var MetricItem = function MetricItem(_ref) {
221
221
  return /*#__PURE__*/jsxs("div", {
222
222
  className: "nf-insights__metric-item neeto-ui-border-gray-200 border-b pb-4",
223
223
  children: [/*#__PURE__*/jsxs("div", {
224
- className: "flex items-center justify-between gap-2",
224
+ className: "flex items-center gap-2",
225
225
  children: [/*#__PURE__*/jsx("div", {
226
- className: "flex items-end",
226
+ className: "flex items-end gap-x-1",
227
227
  children: isTime ? renderTime(value) : /*#__PURE__*/jsxs(Typography, {
228
- className: "mr-1",
228
+ className: "neeto-ui-text-gray-800",
229
229
  "data-cy": "insights-count",
230
230
  "data-testid": "insights-count",
231
231
  style: "h1",
@@ -240,7 +240,7 @@ var MetricItem = function MetricItem(_ref) {
240
240
  }), /*#__PURE__*/jsx(Typography, {
241
241
  className: "neeto-ui-text-gray-700",
242
242
  "data-cy": "insights-type",
243
- style: "body2",
243
+ style: "body3",
244
244
  children: metric
245
245
  })]
246
246
  });
@@ -255,7 +255,8 @@ var Insights = function Insights(_ref) {
255
255
  _ref$helpTexts = _ref.helpTexts,
256
256
  helpTexts = _ref$helpTexts === void 0 ? {} : _ref$helpTexts,
257
257
  _ref$showWarningMessa = _ref.showWarningMessage,
258
- showWarningMessage = _ref$showWarningMessa === void 0 ? false : _ref$showWarningMessa;
258
+ showWarningMessage = _ref$showWarningMessa === void 0 ? false : _ref$showWarningMessa,
259
+ className = _ref.className;
259
260
  var _useTranslation = useTranslation(),
260
261
  t = _useTranslation.t;
261
262
  var visitCount = insightsData.visitCount,
@@ -268,10 +269,10 @@ var Insights = function Insights(_ref) {
268
269
  browsers = insightsData.browsers;
269
270
  if (isLoading) return /*#__PURE__*/jsx(PageLoader, {});
270
271
  return /*#__PURE__*/jsxs("div", {
271
- className: "mx-auto pt-10",
272
+ className: classnames("mx-auto pt-10", className),
272
273
  "data-testid": "insights",
273
274
  children: [/*#__PURE__*/jsxs("div", {
274
- className: "mb-11 flex w-full items-center ",
275
+ className: "mb-10 flex w-full items-center",
275
276
  children: [/*#__PURE__*/jsx(Typography, {
276
277
  "data-cy": "submissions-insights-title",
277
278
  style: "h2",
@@ -296,7 +297,7 @@ var Insights = function Insights(_ref) {
296
297
  })
297
298
  })]
298
299
  }), /*#__PURE__*/jsxs("div", {
299
- className: "mb-8 flex flex-wrap justify-between",
300
+ className: "mb-6 grid grid-cols-1 gap-x-9 gap-y-6 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5 lg:gap-0",
300
301
  children: [/*#__PURE__*/jsx(MetricItem$1, {
301
302
  helpText: helpTexts["visitCount"],
302
303
  metric: t("neetoMolecules.insights.metrics.visits"),
@@ -322,7 +323,7 @@ var Insights = function Insights(_ref) {
322
323
  value: averageSubmissionTime
323
324
  })]
324
325
  }), /*#__PURE__*/jsxs("div", {
325
- className: "grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3",
326
+ className: "grid grid-cols-1 gap-6 sm:grid-cols-2 lg:grid-cols-3",
326
327
  children: [/*#__PURE__*/jsx(MetaInfo$1, {
327
328
  data: devices,
328
329
  defaultItems: DEFAULT_DEVICES,
@@ -1 +1 @@
1
- {"version":3,"file":"Insights.js","sources":["../src/components/Insights/constants.js","../src/components/Insights/MetaInfo/PercentageBar.jsx","../src/components/Insights/MetaInfo/MetaInfoItem.jsx","../src/components/Insights/MetaInfo/DataDistribution.jsx","../src/components/Insights/utils.js","../src/components/Insights/MetaInfo/index.jsx","../src/components/Insights/TimeItem.jsx","../src/components/Insights/MetricItem.jsx","../src/components/Insights/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const DEFAULT_DEVICES = [\n {\n label: t(\"neetoMolecules.insights.labels.devices.desktop\"),\n value: \"desktop\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.devices.mobile\"),\n value: \"smartphone\",\n },\n];\n\nexport const DEFAULT_OS = [\n { label: t(\"neetoMolecules.insights.labels.os.macos\"), value: \"mac\" },\n {\n label: t(\"neetoMolecules.insights.labels.os.windows\"),\n value: \"windows\",\n },\n];\n\nexport const DEFAULT_BROWSERS = [\n {\n label: t(\"neetoMolecules.insights.labels.browsers.chrome\"),\n value: \"chrome\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.browsers.safari\"),\n value: \"safari\",\n },\n];\n\nexport const INITIAL_TIME_PERIOD_VALUE = {\n label: t(\"neetoMolecules.insights.labels.allTime\"),\n value: { startDate: null, endDate: null, rangeType: \"all\" },\n};\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst PercentageBar = ({ value }) => (\n <>\n {value && (\n <div\n className=\"neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2\"\n style={{ width: `${value}%` }}\n />\n )}\n <Typography style=\"body3\">{value}%</Typography>\n </>\n);\n\nexport default memo(PercentageBar);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport PercentageBar from \"./PercentageBar\";\n\nconst MetaInfoItem = ({ name, value }) => (\n <>\n <Typography style=\"body2\" textTransform=\"capitalize\">\n {name}\n </Typography>\n <div className=\"col-span-3 flex items-center gap-2\">\n <PercentageBar {...{ value }} />\n </div>\n </>\n);\n\nexport default memo(MetaInfoItem);\n","import MetaInfoItem from \"./MetaInfoItem\";\n\nconst DataDistribution = ({ data }) => (\n <div className=\"grid grid-cols-4 gap-2\">\n {data.map(({ name, value }) => (\n <MetaInfoItem {...{ name, value }} key={name} />\n ))}\n </div>\n);\n\nexport default DataDistribution;\n","import { existsBy } from \"neetocist\";\n\nconst getSum = (data, searchKey) => {\n let sum = 0;\n for (const key in data) {\n if (key.includes(searchKey)) sum += data[key];\n }\n\n return sum;\n};\n\nexport const transformInsights = (data, defaultItems) => {\n const othersData = Object.keys(data)\n .filter(key => !existsBy({ value: key }, defaultItems))\n .map(key => ({ name: key, value: data[key] }));\n\n const defaultData = defaultItems.map(({ label, value }) => ({\n name: label,\n value: getSum(data, value) || 0,\n }));\n\n return { defaultData, othersData };\n};\n","import { memo } from \"react\";\n\nimport { Tooltip, Typography } from \"neetoui\";\nimport { pluck, sum, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DataDistribution from \"./DataDistribution\";\nimport MetaInfoItem from \"./MetaInfoItem\";\n\nimport { transformInsights } from \"../utils\";\n\nconst MetaInfo = ({ type, data, defaultItems }) => {\n const { t } = useTranslation();\n const { defaultData, othersData } = transformInsights(data, defaultItems);\n\n const othersSum = sum(values(pluck(\"value\", othersData)));\n\n return (\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-rounded p-4\">\n <Typography\n className=\"mb-4\"\n style=\"h6\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {type}\n </Typography>\n <DataDistribution data={defaultData} />\n <Tooltip\n content={<DataDistribution data={othersData} />}\n disabled={!othersSum}\n position=\"bottom\"\n >\n <div className=\"mt-2 grid grid-cols-4 gap-2\">\n <MetaInfoItem\n name={t(\"neetoMolecules.insights.others\")}\n value={othersSum}\n />\n </div>\n </Tooltip>\n </div>\n );\n};\n\nexport default memo(MetaInfo);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst TimeItem = ({ value, suffix }) => (\n <div className=\"flex items-end\" data-testid=\"time-item\">\n <Typography className=\"mr-1\" style=\"h1\" weight=\"semibold\">\n {value}\n </Typography>\n <Typography lineHeight=\"loose\" style=\"body2\">\n {suffix}\n </Typography>\n </div>\n);\n\nexport default memo(TimeItem);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport TimeItem from \"./TimeItem\";\n\nconst MetricItem = ({ metric, value, helpText, isTime, isPercentage }) => {\n const renderTime = value => {\n const { h: hours, m: minutes, s: seconds } = value;\n const showSeconds = !hours && !minutes;\n\n return (\n <div className=\"flex gap-2\">\n {!!hours && <TimeItem suffix=\"H\" value={hours} />}\n {!!minutes && <TimeItem suffix=\"M\" value={minutes} />}\n {(!!seconds || showSeconds) && <TimeItem suffix=\"S\" value={seconds} />}\n </div>\n );\n };\n\n return (\n <div className=\"nf-insights__metric-item neeto-ui-border-gray-200 border-b pb-4\">\n <div className=\"flex items-center justify-between gap-2\">\n <div className=\"flex items-end\">\n {isTime ? (\n renderTime(value)\n ) : (\n <Typography\n className=\"mr-1\"\n data-cy=\"insights-count\"\n data-testid=\"insights-count\"\n style=\"h1\"\n weight=\"semibold\"\n >\n {value || 0}\n {isPercentage ? \"%\" : \"\"}\n </Typography>\n )}\n </div>\n {helpText && (\n <div>\n <HelpPopover description={helpText} />\n </div>\n )}\n </div>\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-cy=\"insights-type\"\n style=\"body2\"\n >\n {metric}\n </Typography>\n </div>\n );\n};\n\nexport default memo(MetricItem);\n","import { Warning } from \"neetoicons\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DateRangeFilter from \"components/DateRangeFilter\";\nimport PageLoader from \"components/PageLoader\";\n\nimport { DEFAULT_DEVICES, DEFAULT_BROWSERS, DEFAULT_OS } from \"./constants\";\nimport MetaInfo from \"./MetaInfo\";\nimport MetricItem from \"./MetricItem\";\n\nconst Insights = ({\n insightsData,\n isLoading,\n timePeriod,\n setTimePeriod,\n helpTexts = {},\n showWarningMessage = false,\n}) => {\n const { t } = useTranslation();\n\n const {\n visitCount,\n startCount,\n submissionCount,\n completionRate,\n averageSubmissionTime,\n devices,\n operatingSystems,\n browsers,\n } = insightsData;\n\n if (isLoading) return <PageLoader />;\n\n return (\n <div className=\"mx-auto pt-10\" data-testid=\"insights\">\n <div className=\"mb-11 flex w-full items-center \">\n <Typography data-cy=\"submissions-insights-title\" style=\"h2\">\n {t(\"neetoMolecules.insights.title\")}\n </Typography>\n {showWarningMessage && (\n <Tooltip\n content={t(\"neetoMolecules.insights.dataInaccuracyWarning\")}\n position=\"bottom\"\n touch={[\"hold\", 500]}\n >\n <span className=\"ml-3\">\n <Warning\n className=\"neeto-ui-text-warning-500\"\n data-testid=\"insights-warning\"\n size={20}\n />\n </span>\n </Tooltip>\n )}\n <span className=\"ml-auto\">\n <DateRangeFilter {...{ setTimePeriod, timePeriod }} />\n </span>\n </div>\n <div className=\"mb-8 flex flex-wrap justify-between\">\n <MetricItem\n helpText={helpTexts[\"visitCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.visits\")}\n value={visitCount}\n />\n <MetricItem\n helpText={helpTexts[\"startCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.starts\")}\n value={startCount}\n />\n <MetricItem\n helpText={helpTexts[\"submissions\"]}\n metric={t(\"neetoMolecules.insights.metrics.submissions\")}\n value={submissionCount}\n />\n <MetricItem\n isPercentage\n helpText={helpTexts[\"completionRate\"]}\n metric={t(\"neetoMolecules.insights.metrics.completionRate\")}\n value={completionRate}\n />\n <MetricItem\n isTime\n helpText={helpTexts[\"averageSubmissionTime\"]}\n metric={t(\"neetoMolecules.insights.metrics.avgTimeToComplete\")}\n timeSuffix={t(\"neetoMolecules.insights.mins\")}\n value={averageSubmissionTime}\n />\n </div>\n <div className=\"grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3\">\n <MetaInfo\n data={devices}\n defaultItems={DEFAULT_DEVICES}\n type={t(\"neetoMolecules.insights.devices\")}\n />\n <MetaInfo\n data={operatingSystems}\n defaultItems={DEFAULT_OS}\n type={t(\"neetoMolecules.insights.os\")}\n />\n <MetaInfo\n data={browsers}\n defaultItems={DEFAULT_BROWSERS}\n type={t(\"neetoMolecules.insights.browsers\")}\n />\n </div>\n </div>\n );\n};\n\nInsights.propTypes = {\n /**\n * Object containing metrics and statistics for insights\n */\n insightsData: PropTypes.shape({\n visitCount: PropTypes.number,\n startCount: PropTypes.number,\n submissionCount: PropTypes.number,\n completionRate: PropTypes.number,\n averageSubmissionTime: PropTypes.shape({\n h: PropTypes.number,\n m: PropTypes.number,\n s: PropTypes.number,\n }),\n devices: PropTypes.shape({\n desktop: PropTypes.number,\n smartphone: PropTypes.number,\n }),\n operatingSystems: PropTypes.shape({\n mac: PropTypes.number,\n windows: PropTypes.number,\n }),\n browsers: PropTypes.shape({\n chrome: PropTypes.number,\n safari: PropTypes.number,\n }),\n }),\n /**\n * Indicates whether insights data is currently being fetched from an API\n */\n isLoading: PropTypes.bool,\n /**\n * The state corresponding to the currently selected date range.\n */\n timePeriod: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.object,\n }),\n /**\n * The setter method for `timePeriod` state.\n */\n setTimePeriod: PropTypes.func,\n /**\n * Object containing explanatory text for each metric, providing additional context that can help users understand the significance of the metrics displayed.\n */\n helpTexts: PropTypes.shape({\n visitCount: PropTypes.string,\n startCount: PropTypes.string,\n submissions: PropTypes.string,\n completionRate: PropTypes.string,\n averageSubmissionTime: PropTypes.string,\n }),\n /**\n * Displays a warning to indicate that the insights may not be accurate, as the insights integration occurred after the record's creation.\n */\n showWarningMessage: PropTypes.bool,\n};\n\nexport default Insights;\n"],"names":["DEFAULT_DEVICES","label","t","value","DEFAULT_OS","DEFAULT_BROWSERS","startDate","endDate","rangeType","PercentageBar","_ref","_jsxs","_Fragment","children","_jsx","className","style","width","concat","Typography","memo","MetaInfoItem","name","textTransform","DataDistribution","data","map","_ref2","_createElement","key","getSum","searchKey","sum","includes","transformInsights","defaultItems","othersData","Object","keys","filter","existsBy","defaultData","MetaInfo","type","_useTranslation","useTranslation","_transformInsights","othersSum","values","pluck","weight","Tooltip","content","disabled","position","TimeItem","suffix","lineHeight","MetricItem","metric","helpText","isTime","isPercentage","renderTime","hours","h","minutes","m","seconds","s","showSeconds","HelpPopover","description","Insights","insightsData","isLoading","timePeriod","setTimePeriod","_ref$helpTexts","helpTexts","_ref$showWarningMessa","showWarningMessage","visitCount","startCount","submissionCount","completionRate","averageSubmissionTime","devices","operatingSystems","browsers","PageLoader","touch","Warning","size","DateRangeFilter","timeSuffix"],"mappings":"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"}
1
+ {"version":3,"file":"Insights.js","sources":["../src/components/Insights/constants.js","../src/components/Insights/MetaInfo/PercentageBar.jsx","../src/components/Insights/MetaInfo/MetaInfoItem.jsx","../src/components/Insights/MetaInfo/DataDistribution.jsx","../src/components/Insights/utils.js","../src/components/Insights/MetaInfo/index.jsx","../src/components/Insights/TimeItem.jsx","../src/components/Insights/MetricItem.jsx","../src/components/Insights/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const DEFAULT_DEVICES = [\n {\n label: t(\"neetoMolecules.insights.labels.devices.desktop\"),\n value: \"desktop\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.devices.mobile\"),\n value: \"smartphone\",\n },\n];\n\nexport const DEFAULT_OS = [\n { label: t(\"neetoMolecules.insights.labels.os.macos\"), value: \"mac\" },\n {\n label: t(\"neetoMolecules.insights.labels.os.windows\"),\n value: \"windows\",\n },\n];\n\nexport const DEFAULT_BROWSERS = [\n {\n label: t(\"neetoMolecules.insights.labels.browsers.chrome\"),\n value: \"chrome\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.browsers.safari\"),\n value: \"safari\",\n },\n];\n\nexport const INITIAL_TIME_PERIOD_VALUE = {\n label: t(\"neetoMolecules.insights.labels.allTime\"),\n value: { startDate: null, endDate: null, rangeType: \"all\" },\n};\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst PercentageBar = ({ value }) => (\n <>\n {value !== 0 && (\n <div\n className=\"neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2\"\n style={{ width: `${value}%` }}\n />\n )}\n <Typography style=\"body3\">{value ? `${value}%` : 0}</Typography>\n </>\n);\n\nexport default memo(PercentageBar);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport PercentageBar from \"./PercentageBar\";\n\nconst MetaInfoItem = ({ name, value }) => (\n <>\n <Typography style=\"body2\" textTransform=\"capitalize\">\n {name}\n </Typography>\n <div className=\"col-span-3 flex items-center gap-2\">\n <PercentageBar {...{ value }} />\n </div>\n </>\n);\n\nexport default memo(MetaInfoItem);\n","import MetaInfoItem from \"./MetaInfoItem\";\n\nconst DataDistribution = ({ data }) => (\n <div className=\"grid grid-cols-4 gap-2\">\n {data.map(({ name, value }) => (\n <MetaInfoItem {...{ name, value }} key={name} />\n ))}\n </div>\n);\n\nexport default DataDistribution;\n","import { existsBy } from \"neetocist\";\n\nconst getSum = (data, searchKey) => {\n let sum = 0;\n for (const key in data) {\n if (key.includes(searchKey)) sum += data[key];\n }\n\n return sum;\n};\n\nexport const transformInsights = (data, defaultItems) => {\n const othersData = Object.keys(data)\n .filter(key => !existsBy({ value: key }, defaultItems))\n .map(key => ({ name: key, value: data[key] }));\n\n const defaultData = defaultItems.map(({ label, value }) => ({\n name: label,\n value: getSum(data, value) || 0,\n }));\n\n return { defaultData, othersData };\n};\n","import { memo } from \"react\";\n\nimport { Tooltip, Typography } from \"neetoui\";\nimport { pluck, sum, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DataDistribution from \"./DataDistribution\";\nimport MetaInfoItem from \"./MetaInfoItem\";\n\nimport { transformInsights } from \"../utils\";\n\nconst MetaInfo = ({ type, data, defaultItems }) => {\n const { t } = useTranslation();\n const { defaultData, othersData } = transformInsights(data, defaultItems);\n\n const othersSum = sum(values(pluck(\"value\", othersData)));\n\n return (\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-rounded p-4\">\n <Typography\n className=\"mb-2\"\n style=\"body2\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {type}\n </Typography>\n <DataDistribution data={defaultData} />\n <Tooltip\n content={<DataDistribution data={othersData} />}\n disabled={!othersSum}\n position=\"bottom\"\n >\n <div className=\"mt-2 grid grid-cols-4 gap-2\">\n <MetaInfoItem\n name={t(\"neetoMolecules.insights.others\")}\n value={othersSum}\n />\n </div>\n </Tooltip>\n </div>\n );\n};\n\nexport default memo(MetaInfo);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst TimeItem = ({ value, suffix }) => (\n <div className=\"flex items-end\" data-testid=\"time-item\">\n <Typography className=\"mr-1\" style=\"h1\" weight=\"semibold\">\n {value}\n </Typography>\n <Typography lineHeight=\"loose\" style=\"body2\">\n {suffix}\n </Typography>\n </div>\n);\n\nexport default memo(TimeItem);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport TimeItem from \"./TimeItem\";\n\nconst MetricItem = ({ metric, value, helpText, isTime, isPercentage }) => {\n const renderTime = value => {\n const { h: hours, m: minutes, s: seconds } = value;\n const showSeconds = !hours && !minutes;\n\n return (\n <div className=\"flex gap-2\">\n {!!hours && <TimeItem suffix=\"H\" value={hours} />}\n {!!minutes && <TimeItem suffix=\"M\" value={minutes} />}\n {(!!seconds || showSeconds) && <TimeItem suffix=\"S\" value={seconds} />}\n </div>\n );\n };\n\n return (\n <div className=\"nf-insights__metric-item neeto-ui-border-gray-200 border-b pb-4\">\n <div className=\"flex items-center gap-2\">\n <div className=\"flex items-end gap-x-1\">\n {isTime ? (\n renderTime(value)\n ) : (\n <Typography\n className=\"neeto-ui-text-gray-800\"\n data-cy=\"insights-count\"\n data-testid=\"insights-count\"\n style=\"h1\"\n weight=\"semibold\"\n >\n {value || 0}\n {isPercentage ? \"%\" : \"\"}\n </Typography>\n )}\n </div>\n {helpText && (\n <div>\n <HelpPopover description={helpText} />\n </div>\n )}\n </div>\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-cy=\"insights-type\"\n style=\"body3\"\n >\n {metric}\n </Typography>\n </div>\n );\n};\n\nexport default memo(MetricItem);\n","import classNames from \"classnames\";\nimport { Warning } from \"neetoicons\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DateRangeFilter from \"components/DateRangeFilter\";\nimport PageLoader from \"components/PageLoader\";\n\nimport { DEFAULT_DEVICES, DEFAULT_BROWSERS, DEFAULT_OS } from \"./constants\";\nimport MetaInfo from \"./MetaInfo\";\nimport MetricItem from \"./MetricItem\";\n\nconst Insights = ({\n insightsData,\n isLoading,\n timePeriod,\n setTimePeriod,\n helpTexts = {},\n showWarningMessage = false,\n className,\n}) => {\n const { t } = useTranslation();\n\n const {\n visitCount,\n startCount,\n submissionCount,\n completionRate,\n averageSubmissionTime,\n devices,\n operatingSystems,\n browsers,\n } = insightsData;\n\n if (isLoading) return <PageLoader />;\n\n return (\n <div\n className={classNames(\"mx-auto pt-10\", className)}\n data-testid=\"insights\"\n >\n <div className=\"mb-10 flex w-full items-center\">\n <Typography data-cy=\"submissions-insights-title\" style=\"h2\">\n {t(\"neetoMolecules.insights.title\")}\n </Typography>\n {showWarningMessage && (\n <Tooltip\n content={t(\"neetoMolecules.insights.dataInaccuracyWarning\")}\n position=\"bottom\"\n touch={[\"hold\", 500]}\n >\n <span className=\"ml-3\">\n <Warning\n className=\"neeto-ui-text-warning-500\"\n data-testid=\"insights-warning\"\n size={20}\n />\n </span>\n </Tooltip>\n )}\n <span className=\"ml-auto\">\n <DateRangeFilter {...{ setTimePeriod, timePeriod }} />\n </span>\n </div>\n <div className=\"mb-6 grid grid-cols-1 gap-x-9 gap-y-6 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5 lg:gap-0\">\n <MetricItem\n helpText={helpTexts[\"visitCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.visits\")}\n value={visitCount}\n />\n <MetricItem\n helpText={helpTexts[\"startCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.starts\")}\n value={startCount}\n />\n <MetricItem\n helpText={helpTexts[\"submissions\"]}\n metric={t(\"neetoMolecules.insights.metrics.submissions\")}\n value={submissionCount}\n />\n <MetricItem\n isPercentage\n helpText={helpTexts[\"completionRate\"]}\n metric={t(\"neetoMolecules.insights.metrics.completionRate\")}\n value={completionRate}\n />\n <MetricItem\n isTime\n helpText={helpTexts[\"averageSubmissionTime\"]}\n metric={t(\"neetoMolecules.insights.metrics.avgTimeToComplete\")}\n timeSuffix={t(\"neetoMolecules.insights.mins\")}\n value={averageSubmissionTime}\n />\n </div>\n <div className=\"grid grid-cols-1 gap-6 sm:grid-cols-2 lg:grid-cols-3\">\n <MetaInfo\n data={devices}\n defaultItems={DEFAULT_DEVICES}\n type={t(\"neetoMolecules.insights.devices\")}\n />\n <MetaInfo\n data={operatingSystems}\n defaultItems={DEFAULT_OS}\n type={t(\"neetoMolecules.insights.os\")}\n />\n <MetaInfo\n data={browsers}\n defaultItems={DEFAULT_BROWSERS}\n type={t(\"neetoMolecules.insights.browsers\")}\n />\n </div>\n </div>\n );\n};\n\nInsights.propTypes = {\n /**\n * Object containing metrics and statistics for insights\n */\n insightsData: PropTypes.shape({\n visitCount: PropTypes.number,\n startCount: PropTypes.number,\n submissionCount: PropTypes.number,\n completionRate: PropTypes.number,\n averageSubmissionTime: PropTypes.shape({\n h: PropTypes.number,\n m: PropTypes.number,\n s: PropTypes.number,\n }),\n devices: PropTypes.shape({\n desktop: PropTypes.number,\n smartphone: PropTypes.number,\n }),\n operatingSystems: PropTypes.shape({\n mac: PropTypes.number,\n windows: PropTypes.number,\n }),\n browsers: PropTypes.shape({\n chrome: PropTypes.number,\n safari: PropTypes.number,\n }),\n }),\n /**\n * Indicates whether insights data is currently being fetched from an API\n */\n isLoading: PropTypes.bool,\n /**\n * The state corresponding to the currently selected date range.\n */\n timePeriod: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.object,\n }),\n /**\n * The setter method for `timePeriod` state.\n */\n setTimePeriod: PropTypes.func,\n /**\n * Object containing explanatory text for each metric, providing additional context that can help users understand the significance of the metrics displayed.\n */\n helpTexts: PropTypes.shape({\n visitCount: PropTypes.string,\n startCount: PropTypes.string,\n submissions: PropTypes.string,\n completionRate: PropTypes.string,\n averageSubmissionTime: PropTypes.string,\n }),\n /**\n * Displays a warning to indicate that the insights may not be accurate, as the insights integration occurred after the record's creation.\n */\n showWarningMessage: PropTypes.bool,\n /**\n * To provide additional classes.\n */\n className: PropTypes.string,\n};\n\nexport default Insights;\n"],"names":["DEFAULT_DEVICES","label","t","value","DEFAULT_OS","DEFAULT_BROWSERS","startDate","endDate","rangeType","PercentageBar","_ref","_jsxs","_Fragment","children","_jsx","className","style","width","concat","Typography","memo","MetaInfoItem","name","textTransform","DataDistribution","data","map","_ref2","_createElement","key","getSum","searchKey","sum","includes","transformInsights","defaultItems","othersData","Object","keys","filter","existsBy","defaultData","MetaInfo","type","_useTranslation","useTranslation","_transformInsights","othersSum","values","pluck","weight","Tooltip","content","disabled","position","TimeItem","suffix","lineHeight","MetricItem","metric","helpText","isTime","isPercentage","renderTime","hours","h","minutes","m","seconds","s","showSeconds","HelpPopover","description","Insights","insightsData","isLoading","timePeriod","setTimePeriod","_ref$helpTexts","helpTexts","_ref$showWarningMessa","showWarningMessage","visitCount","startCount","submissionCount","completionRate","averageSubmissionTime","devices","operatingSystems","browsers","PageLoader","classNames","touch","Warning","size","DateRangeFilter","timeSuffix"],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  'use strict';
2
2
 
3
+ var classnames = require('classnames');
3
4
  var Warning = require('@bigbinary/neeto-icons/Warning');
4
5
  var Tooltip = require('@bigbinary/neetoui/Tooltip');
5
6
  var Typography = require('@bigbinary/neetoui/Typography');
@@ -20,13 +21,13 @@ require('@bigbinary/neetoui/Select');
20
21
  require('@bigbinary/neetoui/DatePicker');
21
22
  require('@babel/runtime/helpers/objectWithoutProperties');
22
23
  require('./inject-css-80a5faa3.js');
23
- require('classnames');
24
24
  require('@bigbinary/neeto-icons/Help');
25
25
  require('@bigbinary/neetoui/Button');
26
26
  require('@bigbinary/neetoui/Popover');
27
27
 
28
28
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
29
29
 
30
+ var classnames__default = /*#__PURE__*/_interopDefaultLegacy(classnames);
30
31
  var Warning__default = /*#__PURE__*/_interopDefaultLegacy(Warning);
31
32
  var Tooltip__default = /*#__PURE__*/_interopDefaultLegacy(Tooltip);
32
33
  var Typography__default = /*#__PURE__*/_interopDefaultLegacy(Typography);
@@ -64,14 +65,14 @@ var DEFAULT_BROWSERS = [{
64
65
  var PercentageBar = function PercentageBar(_ref) {
65
66
  var value = _ref.value;
66
67
  return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
67
- children: [value && /*#__PURE__*/jsxRuntime.jsx("div", {
68
+ children: [value !== 0 && /*#__PURE__*/jsxRuntime.jsx("div", {
68
69
  className: "neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2",
69
70
  style: {
70
71
  width: "".concat(value, "%")
71
72
  }
72
- }), /*#__PURE__*/jsxRuntime.jsxs(Typography__default["default"], {
73
+ }), /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
73
74
  style: "body3",
74
- children: [value, "%"]
75
+ children: value ? "".concat(value, "%") : 0
75
76
  })]
76
77
  });
77
78
  };
@@ -156,8 +157,8 @@ var MetaInfo = function MetaInfo(_ref) {
156
157
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
157
158
  className: "neeto-ui-bg-gray-100 neeto-ui-rounded p-4",
158
159
  children: [/*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
159
- className: "mb-4",
160
- style: "h6",
160
+ className: "mb-2",
161
+ style: "body2",
161
162
  textTransform: "uppercase",
162
163
  weight: "bold",
163
164
  children: type
@@ -229,11 +230,11 @@ var MetricItem = function MetricItem(_ref) {
229
230
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
230
231
  className: "nf-insights__metric-item neeto-ui-border-gray-200 border-b pb-4",
231
232
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
232
- className: "flex items-center justify-between gap-2",
233
+ className: "flex items-center gap-2",
233
234
  children: [/*#__PURE__*/jsxRuntime.jsx("div", {
234
- className: "flex items-end",
235
+ className: "flex items-end gap-x-1",
235
236
  children: isTime ? renderTime(value) : /*#__PURE__*/jsxRuntime.jsxs(Typography__default["default"], {
236
- className: "mr-1",
237
+ className: "neeto-ui-text-gray-800",
237
238
  "data-cy": "insights-count",
238
239
  "data-testid": "insights-count",
239
240
  style: "h1",
@@ -248,7 +249,7 @@ var MetricItem = function MetricItem(_ref) {
248
249
  }), /*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
249
250
  className: "neeto-ui-text-gray-700",
250
251
  "data-cy": "insights-type",
251
- style: "body2",
252
+ style: "body3",
252
253
  children: metric
253
254
  })]
254
255
  });
@@ -263,7 +264,8 @@ var Insights = function Insights(_ref) {
263
264
  _ref$helpTexts = _ref.helpTexts,
264
265
  helpTexts = _ref$helpTexts === void 0 ? {} : _ref$helpTexts,
265
266
  _ref$showWarningMessa = _ref.showWarningMessage,
266
- showWarningMessage = _ref$showWarningMessa === void 0 ? false : _ref$showWarningMessa;
267
+ showWarningMessage = _ref$showWarningMessa === void 0 ? false : _ref$showWarningMessa,
268
+ className = _ref.className;
267
269
  var _useTranslation = reactI18next.useTranslation(),
268
270
  t = _useTranslation.t;
269
271
  var visitCount = insightsData.visitCount,
@@ -276,10 +278,10 @@ var Insights = function Insights(_ref) {
276
278
  browsers = insightsData.browsers;
277
279
  if (isLoading) return /*#__PURE__*/jsxRuntime.jsx(PageLoader, {});
278
280
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
279
- className: "mx-auto pt-10",
281
+ className: classnames__default["default"]("mx-auto pt-10", className),
280
282
  "data-testid": "insights",
281
283
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
282
- className: "mb-11 flex w-full items-center ",
284
+ className: "mb-10 flex w-full items-center",
283
285
  children: [/*#__PURE__*/jsxRuntime.jsx(Typography__default["default"], {
284
286
  "data-cy": "submissions-insights-title",
285
287
  style: "h2",
@@ -304,7 +306,7 @@ var Insights = function Insights(_ref) {
304
306
  })
305
307
  })]
306
308
  }), /*#__PURE__*/jsxRuntime.jsxs("div", {
307
- className: "mb-8 flex flex-wrap justify-between",
309
+ className: "mb-6 grid grid-cols-1 gap-x-9 gap-y-6 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5 lg:gap-0",
308
310
  children: [/*#__PURE__*/jsxRuntime.jsx(MetricItem$1, {
309
311
  helpText: helpTexts["visitCount"],
310
312
  metric: t("neetoMolecules.insights.metrics.visits"),
@@ -330,7 +332,7 @@ var Insights = function Insights(_ref) {
330
332
  value: averageSubmissionTime
331
333
  })]
332
334
  }), /*#__PURE__*/jsxRuntime.jsxs("div", {
333
- className: "grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3",
335
+ className: "grid grid-cols-1 gap-6 sm:grid-cols-2 lg:grid-cols-3",
334
336
  children: [/*#__PURE__*/jsxRuntime.jsx(MetaInfo$1, {
335
337
  data: devices,
336
338
  defaultItems: DEFAULT_DEVICES,
@@ -1 +1 @@
1
- {"version":3,"file":"Insights.js","sources":["../../src/components/Insights/constants.js","../../src/components/Insights/MetaInfo/PercentageBar.jsx","../../src/components/Insights/MetaInfo/MetaInfoItem.jsx","../../src/components/Insights/MetaInfo/DataDistribution.jsx","../../src/components/Insights/utils.js","../../src/components/Insights/MetaInfo/index.jsx","../../src/components/Insights/TimeItem.jsx","../../src/components/Insights/MetricItem.jsx","../../src/components/Insights/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const DEFAULT_DEVICES = [\n {\n label: t(\"neetoMolecules.insights.labels.devices.desktop\"),\n value: \"desktop\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.devices.mobile\"),\n value: \"smartphone\",\n },\n];\n\nexport const DEFAULT_OS = [\n { label: t(\"neetoMolecules.insights.labels.os.macos\"), value: \"mac\" },\n {\n label: t(\"neetoMolecules.insights.labels.os.windows\"),\n value: \"windows\",\n },\n];\n\nexport const DEFAULT_BROWSERS = [\n {\n label: t(\"neetoMolecules.insights.labels.browsers.chrome\"),\n value: \"chrome\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.browsers.safari\"),\n value: \"safari\",\n },\n];\n\nexport const INITIAL_TIME_PERIOD_VALUE = {\n label: t(\"neetoMolecules.insights.labels.allTime\"),\n value: { startDate: null, endDate: null, rangeType: \"all\" },\n};\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst PercentageBar = ({ value }) => (\n <>\n {value && (\n <div\n className=\"neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2\"\n style={{ width: `${value}%` }}\n />\n )}\n <Typography style=\"body3\">{value}%</Typography>\n </>\n);\n\nexport default memo(PercentageBar);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport PercentageBar from \"./PercentageBar\";\n\nconst MetaInfoItem = ({ name, value }) => (\n <>\n <Typography style=\"body2\" textTransform=\"capitalize\">\n {name}\n </Typography>\n <div className=\"col-span-3 flex items-center gap-2\">\n <PercentageBar {...{ value }} />\n </div>\n </>\n);\n\nexport default memo(MetaInfoItem);\n","import MetaInfoItem from \"./MetaInfoItem\";\n\nconst DataDistribution = ({ data }) => (\n <div className=\"grid grid-cols-4 gap-2\">\n {data.map(({ name, value }) => (\n <MetaInfoItem {...{ name, value }} key={name} />\n ))}\n </div>\n);\n\nexport default DataDistribution;\n","import { existsBy } from \"neetocist\";\n\nconst getSum = (data, searchKey) => {\n let sum = 0;\n for (const key in data) {\n if (key.includes(searchKey)) sum += data[key];\n }\n\n return sum;\n};\n\nexport const transformInsights = (data, defaultItems) => {\n const othersData = Object.keys(data)\n .filter(key => !existsBy({ value: key }, defaultItems))\n .map(key => ({ name: key, value: data[key] }));\n\n const defaultData = defaultItems.map(({ label, value }) => ({\n name: label,\n value: getSum(data, value) || 0,\n }));\n\n return { defaultData, othersData };\n};\n","import { memo } from \"react\";\n\nimport { Tooltip, Typography } from \"neetoui\";\nimport { pluck, sum, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DataDistribution from \"./DataDistribution\";\nimport MetaInfoItem from \"./MetaInfoItem\";\n\nimport { transformInsights } from \"../utils\";\n\nconst MetaInfo = ({ type, data, defaultItems }) => {\n const { t } = useTranslation();\n const { defaultData, othersData } = transformInsights(data, defaultItems);\n\n const othersSum = sum(values(pluck(\"value\", othersData)));\n\n return (\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-rounded p-4\">\n <Typography\n className=\"mb-4\"\n style=\"h6\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {type}\n </Typography>\n <DataDistribution data={defaultData} />\n <Tooltip\n content={<DataDistribution data={othersData} />}\n disabled={!othersSum}\n position=\"bottom\"\n >\n <div className=\"mt-2 grid grid-cols-4 gap-2\">\n <MetaInfoItem\n name={t(\"neetoMolecules.insights.others\")}\n value={othersSum}\n />\n </div>\n </Tooltip>\n </div>\n );\n};\n\nexport default memo(MetaInfo);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst TimeItem = ({ value, suffix }) => (\n <div className=\"flex items-end\" data-testid=\"time-item\">\n <Typography className=\"mr-1\" style=\"h1\" weight=\"semibold\">\n {value}\n </Typography>\n <Typography lineHeight=\"loose\" style=\"body2\">\n {suffix}\n </Typography>\n </div>\n);\n\nexport default memo(TimeItem);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport TimeItem from \"./TimeItem\";\n\nconst MetricItem = ({ metric, value, helpText, isTime, isPercentage }) => {\n const renderTime = value => {\n const { h: hours, m: minutes, s: seconds } = value;\n const showSeconds = !hours && !minutes;\n\n return (\n <div className=\"flex gap-2\">\n {!!hours && <TimeItem suffix=\"H\" value={hours} />}\n {!!minutes && <TimeItem suffix=\"M\" value={minutes} />}\n {(!!seconds || showSeconds) && <TimeItem suffix=\"S\" value={seconds} />}\n </div>\n );\n };\n\n return (\n <div className=\"nf-insights__metric-item neeto-ui-border-gray-200 border-b pb-4\">\n <div className=\"flex items-center justify-between gap-2\">\n <div className=\"flex items-end\">\n {isTime ? (\n renderTime(value)\n ) : (\n <Typography\n className=\"mr-1\"\n data-cy=\"insights-count\"\n data-testid=\"insights-count\"\n style=\"h1\"\n weight=\"semibold\"\n >\n {value || 0}\n {isPercentage ? \"%\" : \"\"}\n </Typography>\n )}\n </div>\n {helpText && (\n <div>\n <HelpPopover description={helpText} />\n </div>\n )}\n </div>\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-cy=\"insights-type\"\n style=\"body2\"\n >\n {metric}\n </Typography>\n </div>\n );\n};\n\nexport default memo(MetricItem);\n","import { Warning } from \"neetoicons\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DateRangeFilter from \"components/DateRangeFilter\";\nimport PageLoader from \"components/PageLoader\";\n\nimport { DEFAULT_DEVICES, DEFAULT_BROWSERS, DEFAULT_OS } from \"./constants\";\nimport MetaInfo from \"./MetaInfo\";\nimport MetricItem from \"./MetricItem\";\n\nconst Insights = ({\n insightsData,\n isLoading,\n timePeriod,\n setTimePeriod,\n helpTexts = {},\n showWarningMessage = false,\n}) => {\n const { t } = useTranslation();\n\n const {\n visitCount,\n startCount,\n submissionCount,\n completionRate,\n averageSubmissionTime,\n devices,\n operatingSystems,\n browsers,\n } = insightsData;\n\n if (isLoading) return <PageLoader />;\n\n return (\n <div className=\"mx-auto pt-10\" data-testid=\"insights\">\n <div className=\"mb-11 flex w-full items-center \">\n <Typography data-cy=\"submissions-insights-title\" style=\"h2\">\n {t(\"neetoMolecules.insights.title\")}\n </Typography>\n {showWarningMessage && (\n <Tooltip\n content={t(\"neetoMolecules.insights.dataInaccuracyWarning\")}\n position=\"bottom\"\n touch={[\"hold\", 500]}\n >\n <span className=\"ml-3\">\n <Warning\n className=\"neeto-ui-text-warning-500\"\n data-testid=\"insights-warning\"\n size={20}\n />\n </span>\n </Tooltip>\n )}\n <span className=\"ml-auto\">\n <DateRangeFilter {...{ setTimePeriod, timePeriod }} />\n </span>\n </div>\n <div className=\"mb-8 flex flex-wrap justify-between\">\n <MetricItem\n helpText={helpTexts[\"visitCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.visits\")}\n value={visitCount}\n />\n <MetricItem\n helpText={helpTexts[\"startCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.starts\")}\n value={startCount}\n />\n <MetricItem\n helpText={helpTexts[\"submissions\"]}\n metric={t(\"neetoMolecules.insights.metrics.submissions\")}\n value={submissionCount}\n />\n <MetricItem\n isPercentage\n helpText={helpTexts[\"completionRate\"]}\n metric={t(\"neetoMolecules.insights.metrics.completionRate\")}\n value={completionRate}\n />\n <MetricItem\n isTime\n helpText={helpTexts[\"averageSubmissionTime\"]}\n metric={t(\"neetoMolecules.insights.metrics.avgTimeToComplete\")}\n timeSuffix={t(\"neetoMolecules.insights.mins\")}\n value={averageSubmissionTime}\n />\n </div>\n <div className=\"grid grid-cols-1 gap-6 sm:grid-cols-2 md:grid-cols-3\">\n <MetaInfo\n data={devices}\n defaultItems={DEFAULT_DEVICES}\n type={t(\"neetoMolecules.insights.devices\")}\n />\n <MetaInfo\n data={operatingSystems}\n defaultItems={DEFAULT_OS}\n type={t(\"neetoMolecules.insights.os\")}\n />\n <MetaInfo\n data={browsers}\n defaultItems={DEFAULT_BROWSERS}\n type={t(\"neetoMolecules.insights.browsers\")}\n />\n </div>\n </div>\n );\n};\n\nInsights.propTypes = {\n /**\n * Object containing metrics and statistics for insights\n */\n insightsData: PropTypes.shape({\n visitCount: PropTypes.number,\n startCount: PropTypes.number,\n submissionCount: PropTypes.number,\n completionRate: PropTypes.number,\n averageSubmissionTime: PropTypes.shape({\n h: PropTypes.number,\n m: PropTypes.number,\n s: PropTypes.number,\n }),\n devices: PropTypes.shape({\n desktop: PropTypes.number,\n smartphone: PropTypes.number,\n }),\n operatingSystems: PropTypes.shape({\n mac: PropTypes.number,\n windows: PropTypes.number,\n }),\n browsers: PropTypes.shape({\n chrome: PropTypes.number,\n safari: PropTypes.number,\n }),\n }),\n /**\n * Indicates whether insights data is currently being fetched from an API\n */\n isLoading: PropTypes.bool,\n /**\n * The state corresponding to the currently selected date range.\n */\n timePeriod: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.object,\n }),\n /**\n * The setter method for `timePeriod` state.\n */\n setTimePeriod: PropTypes.func,\n /**\n * Object containing explanatory text for each metric, providing additional context that can help users understand the significance of the metrics displayed.\n */\n helpTexts: PropTypes.shape({\n visitCount: PropTypes.string,\n startCount: PropTypes.string,\n submissions: PropTypes.string,\n completionRate: PropTypes.string,\n averageSubmissionTime: PropTypes.string,\n }),\n /**\n * Displays a warning to indicate that the insights may not be accurate, as the insights integration occurred after the record's creation.\n */\n showWarningMessage: PropTypes.bool,\n};\n\nexport default Insights;\n"],"names":["DEFAULT_DEVICES","label","t","value","DEFAULT_OS","DEFAULT_BROWSERS","startDate","endDate","rangeType","PercentageBar","_ref","_jsxs","_Fragment","children","_jsx","className","style","width","concat","Typography","memo","MetaInfoItem","name","textTransform","DataDistribution","data","map","_ref2","_createElement","key","getSum","searchKey","sum","includes","transformInsights","defaultItems","othersData","Object","keys","filter","existsBy","defaultData","MetaInfo","type","_useTranslation","useTranslation","_transformInsights","othersSum","values","pluck","weight","Tooltip","content","disabled","position","TimeItem","suffix","lineHeight","MetricItem","metric","helpText","isTime","isPercentage","renderTime","hours","h","minutes","m","seconds","s","showSeconds","HelpPopover","description","Insights","insightsData","isLoading","timePeriod","setTimePeriod","_ref$helpTexts","helpTexts","_ref$showWarningMessa","showWarningMessage","visitCount","startCount","submissionCount","completionRate","averageSubmissionTime","devices","operatingSystems","browsers","PageLoader","touch","Warning","size","DateRangeFilter","timeSuffix"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEO,IAAMA,eAAe,GAAG,CAC7B;AACEC,EAAAA,KAAK,EAAEC,SAAC,CAAC,gDAAgD,CAAC;AAC1DC,EAAAA,KAAK,EAAE,SAAA;AACT,CAAC,EACD;AACEF,EAAAA,KAAK,EAAEC,SAAC,CAAC,+CAA+C,CAAC;AACzDC,EAAAA,KAAK,EAAE,YAAA;AACT,CAAC,CACF,CAAA;AAEM,IAAMC,UAAU,GAAG,CACxB;AAAEH,EAAAA,KAAK,EAAEC,SAAC,CAAC,yCAAyC,CAAC;AAAEC,EAAAA,KAAK,EAAE,KAAA;AAAM,CAAC,EACrE;AACEF,EAAAA,KAAK,EAAEC,SAAC,CAAC,2CAA2C,CAAC;AACrDC,EAAAA,KAAK,EAAE,SAAA;AACT,CAAC,CACF,CAAA;AAEM,IAAME,gBAAgB,GAAG,CAC9B;AACEJ,EAAAA,KAAK,EAAEC,SAAC,CAAC,gDAAgD,CAAC;AAC1DC,EAAAA,KAAK,EAAE,QAAA;AACT,CAAC,EACD;AACEF,EAAAA,KAAK,EAAEC,SAAC,CAAC,gDAAgD,CAAC;AAC1DC,EAAAA,KAAK,EAAE,QAAA;AACT,CAAC,CACF,CAAA;CAEwC;AACvCF,EAAAA,KAAK,EAAEC,SAAC,CAAC,wCAAwC,CAAC;AAClDC,EAAAA,KAAK,EAAE;AAAEG,IAAAA,SAAS,EAAE,IAAI;AAAEC,IAAAA,OAAO,EAAE,IAAI;AAAEC,IAAAA,SAAS,EAAE,KAAA;AAAM,GAAA;AAC5D;;AC/BA,IAAMC,aAAa,GAAG,SAAhBA,aAAaA,CAAAC,IAAA,EAAA;AAAA,EAAA,IAAMP,KAAK,GAAAO,IAAA,CAALP,KAAK,CAAA;EAAA,oBAC5BQ,eAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,CACGV,KAAK,iBACJW,cAAA,CAAA,KAAA,EAAA;AACEC,MAAAA,SAAS,EAAC,gDAAgD;AAC1DC,MAAAA,KAAK,EAAE;QAAEC,KAAK,EAAA,EAAA,CAAAC,MAAA,CAAKf,KAAK,EAAA,GAAA,CAAA;AAAI,OAAA;AAAE,KAC/B,CACF,eACDQ,eAAA,CAACQ,8BAAU,EAAA;AAACH,MAAAA,KAAK,EAAC,OAAO;MAAAH,QAAA,EAAA,CAAEV,KAAK,EAAC,GAAC,CAAA;AAAA,KAAY,CAAC,CAAA;AAAA,GAC/C,CAAC,CAAA;AAAA,CACJ,CAAA;AAED,sBAAeiB,aAAAA,UAAI,CAACX,aAAa,CAAC;;ACVlC,IAAMY,YAAY,GAAG,SAAfA,YAAYA,CAAAX,IAAA,EAAA;AAAA,EAAA,IAAMY,IAAI,GAAAZ,IAAA,CAAJY,IAAI;IAAEnB,KAAK,GAAAO,IAAA,CAALP,KAAK,CAAA;EAAA,oBACjCQ,eAAA,CAAAC,mBAAA,EAAA;IAAAC,QAAA,EAAA,cACEC,cAAA,CAACK,8BAAU,EAAA;AAACH,MAAAA,KAAK,EAAC,OAAO;AAACO,MAAAA,aAAa,EAAC,YAAY;AAAAV,MAAAA,QAAA,EACjDS,IAAAA;KACS,CAAC,eACbR,cAAA,CAAA,KAAA,EAAA;AAAKC,MAAAA,SAAS,EAAC,oCAAoC;MAAAF,QAAA,eACjDC,cAAA,CAACL,eAAa,EAAA;AAAON,QAAAA,KAAK,EAALA,KAAAA;OAAU,CAAA;AAAC,KAC7B,CAAC,CAAA;AAAA,GACN,CAAC,CAAA;AAAA,CACJ,CAAA;AAED,qBAAeiB,aAAAA,UAAI,CAACC,YAAY,CAAC;;ACfjC,IAAMG,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAAd,IAAA,EAAA;AAAA,EAAA,IAAMe,IAAI,GAAAf,IAAA,CAAJe,IAAI,CAAA;AAAA,EAAA,oBAC9BX,cAAA,CAAA,KAAA,EAAA;AAAKC,IAAAA,SAAS,EAAC,wBAAwB;AAAAF,IAAAA,QAAA,EACpCY,IAAI,CAACC,GAAG,CAAC,UAAAC,KAAA,EAAA;AAAA,MAAA,IAAGL,IAAI,GAAAK,KAAA,CAAJL,IAAI;QAAEnB,KAAK,GAAAwB,KAAA,CAALxB,KAAK,CAAA;MAAA,oBACtByB,mBAAA,CAACP,cAAY,EAAA;AAAOC,QAAAA,IAAI,EAAJA,IAAI;AAAEnB,QAAAA,KAAK,EAALA,KAAK;AAAI0B,QAAAA,GAAG,EAAEP,IAAAA;AAAK,OAAE,CAAC,CAAA;KACjD,CAAA;AAAC,GACC,CAAC,CAAA;AAAA,CACP;;ACND,IAAMQ,MAAM,GAAG,SAATA,MAAMA,CAAIL,IAAI,EAAEM,SAAS,EAAK;EAClC,IAAIC,GAAG,GAAG,CAAC,CAAA;AACX,EAAA,KAAK,IAAMH,GAAG,IAAIJ,IAAI,EAAE;AACtB,IAAA,IAAII,GAAG,CAACI,QAAQ,CAACF,SAAS,CAAC,EAAEC,GAAG,IAAIP,IAAI,CAACI,GAAG,CAAC,CAAA;AAC/C,GAAA;AAEA,EAAA,OAAOG,GAAG,CAAA;AACZ,CAAC,CAAA;AAEM,IAAME,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAIT,IAAI,EAAEU,YAAY,EAAK;AACvD,EAAA,IAAMC,UAAU,GAAGC,MAAM,CAACC,IAAI,CAACb,IAAI,CAAC,CACjCc,MAAM,CAAC,UAAAV,GAAG,EAAA;IAAA,OAAI,CAACW,kBAAQ,CAAC;AAAErC,MAAAA,KAAK,EAAE0B,GAAAA;KAAK,EAAEM,YAAY,CAAC,CAAA;AAAA,GAAA,CAAC,CACtDT,GAAG,CAAC,UAAAG,GAAG,EAAA;IAAA,OAAK;AAAEP,MAAAA,IAAI,EAAEO,GAAG;MAAE1B,KAAK,EAAEsB,IAAI,CAACI,GAAG,CAAA;KAAG,CAAA;AAAA,GAAC,CAAC,CAAA;AAEhD,EAAA,IAAMY,WAAW,GAAGN,YAAY,CAACT,GAAG,CAAC,UAAAhB,IAAA,EAAA;AAAA,IAAA,IAAGT,KAAK,GAAAS,IAAA,CAALT,KAAK;MAAEE,KAAK,GAAAO,IAAA,CAALP,KAAK,CAAA;IAAA,OAAQ;AAC1DmB,MAAAA,IAAI,EAAErB,KAAK;AACXE,MAAAA,KAAK,EAAE2B,MAAM,CAACL,IAAI,EAAEtB,KAAK,CAAC,IAAI,CAAA;KAC/B,CAAA;AAAA,GAAC,CAAC,CAAA;EAEH,OAAO;AAAEsC,IAAAA,WAAW,EAAXA,WAAW;AAAEL,IAAAA,UAAU,EAAVA,UAAAA;GAAY,CAAA;AACpC,CAAC;;ACXD,IAAMM,QAAQ,GAAG,SAAXA,QAAQA,CAAAhC,IAAA,EAAqC;AAAA,EAAA,IAA/BiC,IAAI,GAAAjC,IAAA,CAAJiC,IAAI;IAAElB,IAAI,GAAAf,IAAA,CAAJe,IAAI;IAAEU,YAAY,GAAAzB,IAAA,CAAZyB,YAAY,CAAA;AAC1C,EAAA,IAAAS,eAAA,GAAcC,2BAAc,EAAE;IAAtB3C,CAAC,GAAA0C,eAAA,CAAD1C,CAAC,CAAA;AACT,EAAA,IAAA4C,kBAAA,GAAoCZ,iBAAiB,CAACT,IAAI,EAAEU,YAAY,CAAC;IAAjEM,WAAW,GAAAK,kBAAA,CAAXL,WAAW;IAAEL,UAAU,GAAAU,kBAAA,CAAVV,UAAU,CAAA;AAE/B,EAAA,IAAMW,SAAS,GAAGf,SAAG,CAACgB,YAAM,CAACC,WAAK,CAAC,OAAO,EAAEb,UAAU,CAAC,CAAC,CAAC,CAAA;AAEzD,EAAA,oBACEzB,eAAA,CAAA,KAAA,EAAA;AAAKI,IAAAA,SAAS,EAAC,2CAA2C;IAAAF,QAAA,EAAA,cACxDC,cAAA,CAACK,8BAAU,EAAA;AACTJ,MAAAA,SAAS,EAAC,MAAM;AAChBC,MAAAA,KAAK,EAAC,IAAI;AACVO,MAAAA,aAAa,EAAC,WAAW;AACzB2B,MAAAA,MAAM,EAAC,MAAM;AAAArC,MAAAA,QAAA,EAEZ8B,IAAAA;AAAI,KACK,CAAC,eACb7B,cAAA,CAACU,gBAAgB,EAAA;AAACC,MAAAA,IAAI,EAAEgB,WAAAA;AAAY,KAAE,CAAC,eACvC3B,cAAA,CAACqC,2BAAO,EAAA;MACNC,OAAO,eAAEtC,cAAA,CAACU,gBAAgB,EAAA;AAACC,QAAAA,IAAI,EAAEW,UAAAA;AAAW,OAAE,CAAE;MAChDiB,QAAQ,EAAE,CAACN,SAAU;AACrBO,MAAAA,QAAQ,EAAC,QAAQ;AAAAzC,MAAAA,QAAA,eAEjBC,cAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,6BAA6B;QAAAF,QAAA,eAC1CC,cAAA,CAACO,cAAY,EAAA;AACXC,UAAAA,IAAI,EAAEpB,CAAC,CAAC,gCAAgC,CAAE;AAC1CC,UAAAA,KAAK,EAAE4C,SAAAA;SACR,CAAA;OACE,CAAA;AAAC,KACC,CAAC,CAAA;AAAA,GACP,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,iBAAe3B,aAAAA,UAAI,CAACsB,QAAQ,CAAC;;ACxC7B,IAAMa,QAAQ,GAAG,SAAXA,QAAQA,CAAA7C,IAAA,EAAA;AAAA,EAAA,IAAMP,KAAK,GAAAO,IAAA,CAALP,KAAK;IAAEqD,MAAM,GAAA9C,IAAA,CAAN8C,MAAM,CAAA;AAAA,EAAA,oBAC/B7C,eAAA,CAAA,KAAA,EAAA;AAAKI,IAAAA,SAAS,EAAC,gBAAgB;AAAC,IAAA,aAAA,EAAY,WAAW;IAAAF,QAAA,EAAA,cACrDC,cAAA,CAACK,8BAAU,EAAA;AAACJ,MAAAA,SAAS,EAAC,MAAM;AAACC,MAAAA,KAAK,EAAC,IAAI;AAACkC,MAAAA,MAAM,EAAC,UAAU;AAAArC,MAAAA,QAAA,EACtDV,KAAAA;AAAK,KACI,CAAC,eACbW,cAAA,CAACK,8BAAU,EAAA;AAACsC,MAAAA,UAAU,EAAC,OAAO;AAACzC,MAAAA,KAAK,EAAC,OAAO;AAAAH,MAAAA,QAAA,EACzC2C,MAAAA;AAAM,KACG,CAAC,CAAA;AAAA,GACV,CAAC,CAAA;AAAA,CACP,CAAA;AAED,iBAAepC,aAAAA,UAAI,CAACmC,QAAQ,CAAC;;ACP7B,IAAMG,UAAU,GAAG,SAAbA,UAAUA,CAAAhD,IAAA,EAA0D;AAAA,EAAA,IAApDiD,MAAM,GAAAjD,IAAA,CAANiD,MAAM;IAAExD,KAAK,GAAAO,IAAA,CAALP,KAAK;IAAEyD,QAAQ,GAAAlD,IAAA,CAARkD,QAAQ;IAAEC,MAAM,GAAAnD,IAAA,CAANmD,MAAM;IAAEC,YAAY,GAAApD,IAAA,CAAZoD,YAAY,CAAA;AACjE,EAAA,IAAMC,UAAU,GAAG,SAAbA,UAAUA,CAAG5D,KAAK,EAAI;AAC1B,IAAA,IAAW6D,KAAK,GAA6B7D,KAAK,CAA1C8D,CAAC;MAAYC,OAAO,GAAiB/D,KAAK,CAAhCgE,CAAC;MAAcC,OAAO,GAAKjE,KAAK,CAApBkE,CAAC,CAAA;AAC/B,IAAA,IAAMC,WAAW,GAAG,CAACN,KAAK,IAAI,CAACE,OAAO,CAAA;AAEtC,IAAA,oBACEvD,eAAA,CAAA,KAAA,EAAA;AAAKI,MAAAA,SAAS,EAAC,YAAY;AAAAF,MAAAA,QAAA,GACxB,CAAC,CAACmD,KAAK,iBAAIlD,cAAA,CAACyC,UAAQ,EAAA;AAACC,QAAAA,MAAM,EAAC,GAAG;AAACrD,QAAAA,KAAK,EAAE6D,KAAAA;OAAQ,CAAC,EAChD,CAAC,CAACE,OAAO,iBAAIpD,cAAA,CAACyC,UAAQ,EAAA;AAACC,QAAAA,MAAM,EAAC,GAAG;AAACrD,QAAAA,KAAK,EAAE+D,OAAAA;OAAU,CAAC,EACpD,CAAC,CAAC,CAACE,OAAO,IAAIE,WAAW,kBAAKxD,cAAA,CAACyC,UAAQ,EAAA;AAACC,QAAAA,MAAM,EAAC,GAAG;AAACrD,QAAAA,KAAK,EAAEiE,OAAAA;AAAQ,OAAE,CAAC,CAAA;AAAA,KACnE,CAAC,CAAA;GAET,CAAA;AAED,EAAA,oBACEzD,eAAA,CAAA,KAAA,EAAA;AAAKI,IAAAA,SAAS,EAAC,iEAAiE;AAAAF,IAAAA,QAAA,gBAC9EF,eAAA,CAAA,KAAA,EAAA;AAAKI,MAAAA,SAAS,EAAC,yCAAyC;AAAAF,MAAAA,QAAA,gBACtDC,cAAA,CAAA,KAAA,EAAA;AAAKC,QAAAA,SAAS,EAAC,gBAAgB;QAAAF,QAAA,EAC5BgD,MAAM,GACLE,UAAU,CAAC5D,KAAK,CAAC,gBAEjBQ,eAAA,CAACQ,8BAAU,EAAA;AACTJ,UAAAA,SAAS,EAAC,MAAM;AAChB,UAAA,SAAA,EAAQ,gBAAgB;AACxB,UAAA,aAAA,EAAY,gBAAgB;AAC5BC,UAAAA,KAAK,EAAC,IAAI;AACVkC,UAAAA,MAAM,EAAC,UAAU;UAAArC,QAAA,EAAA,CAEhBV,KAAK,IAAI,CAAC,EACV2D,YAAY,GAAG,GAAG,GAAG,EAAE,CAAA;SACd,CAAA;AACb,OACE,CAAC,EACLF,QAAQ,iBACP9C,cAAA,CAAA,KAAA,EAAA;QAAAD,QAAA,eACEC,cAAA,CAACyD,WAAW,EAAA;AAACC,UAAAA,WAAW,EAAEZ,QAAAA;SAAW,CAAA;AAAC,OACnC,CACN,CAAA;AAAA,KACE,CAAC,eACN9C,cAAA,CAACK,8BAAU,EAAA;AACTJ,MAAAA,SAAS,EAAC,wBAAwB;AAClC,MAAA,SAAA,EAAQ,eAAe;AACvBC,MAAAA,KAAK,EAAC,OAAO;AAAAH,MAAAA,QAAA,EAEZ8C,MAAAA;AAAM,KACG,CAAC,CAAA;AAAA,GACV,CAAC,CAAA;AAEV,CAAC,CAAA;AAED,mBAAevC,aAAAA,UAAI,CAACsC,UAAU,CAAC;;AC9C/B,IAAMe,QAAQ,GAAG,SAAXA,QAAQA,CAAA/D,IAAA,EAOR;AAAA,EAAA,IANJgE,YAAY,GAAAhE,IAAA,CAAZgE,YAAY;IACZC,SAAS,GAAAjE,IAAA,CAATiE,SAAS;IACTC,UAAU,GAAAlE,IAAA,CAAVkE,UAAU;IACVC,aAAa,GAAAnE,IAAA,CAAbmE,aAAa;IAAAC,cAAA,GAAApE,IAAA,CACbqE,SAAS;AAATA,IAAAA,SAAS,GAAAD,cAAA,KAAA,KAAA,CAAA,GAAG,EAAE,GAAAA,cAAA;IAAAE,qBAAA,GAAAtE,IAAA,CACduE,kBAAkB;AAAlBA,IAAAA,kBAAkB,GAAAD,qBAAA,KAAG,KAAA,CAAA,GAAA,KAAK,GAAAA,qBAAA,CAAA;AAE1B,EAAA,IAAApC,eAAA,GAAcC,2BAAc,EAAE;IAAtB3C,CAAC,GAAA0C,eAAA,CAAD1C,CAAC,CAAA;AAET,EAAA,IACEgF,UAAU,GAQRR,YAAY,CARdQ,UAAU;IACVC,UAAU,GAORT,YAAY,CAPdS,UAAU;IACVC,eAAe,GAMbV,YAAY,CANdU,eAAe;IACfC,cAAc,GAKZX,YAAY,CALdW,cAAc;IACdC,qBAAqB,GAInBZ,YAAY,CAJdY,qBAAqB;IACrBC,OAAO,GAGLb,YAAY,CAHda,OAAO;IACPC,gBAAgB,GAEdd,YAAY,CAFdc,gBAAgB;IAChBC,QAAQ,GACNf,YAAY,CADde,QAAQ,CAAA;AAGV,EAAA,IAAId,SAAS,EAAE,oBAAO7D,cAAA,CAAC4E,UAAU,IAAE,CAAC,CAAA;AAEpC,EAAA,oBACE/E,eAAA,CAAA,KAAA,EAAA;AAAKI,IAAAA,SAAS,EAAC,eAAe;AAAC,IAAA,aAAA,EAAY,UAAU;AAAAF,IAAAA,QAAA,gBACnDF,eAAA,CAAA,KAAA,EAAA;AAAKI,MAAAA,SAAS,EAAC,iCAAiC;MAAAF,QAAA,EAAA,cAC9CC,cAAA,CAACK,8BAAU,EAAA;AAAC,QAAA,SAAA,EAAQ,4BAA4B;AAACH,QAAAA,KAAK,EAAC,IAAI;QAAAH,QAAA,EACxDX,CAAC,CAAC,+BAA+B,CAAA;AAAC,OACzB,CAAC,EACZ+E,kBAAkB,iBACjBnE,cAAA,CAACqC,2BAAO,EAAA;AACNC,QAAAA,OAAO,EAAElD,CAAC,CAAC,+CAA+C,CAAE;AAC5DoD,QAAAA,QAAQ,EAAC,QAAQ;AACjBqC,QAAAA,KAAK,EAAE,CAAC,MAAM,EAAE,GAAG,CAAE;AAAA9E,QAAAA,QAAA,eAErBC,cAAA,CAAA,MAAA,EAAA;AAAMC,UAAAA,SAAS,EAAC,MAAM;UAAAF,QAAA,eACpBC,cAAA,CAAC8E,2BAAO,EAAA;AACN7E,YAAAA,SAAS,EAAC,2BAA2B;AACrC,YAAA,aAAA,EAAY,kBAAkB;AAC9B8E,YAAAA,IAAI,EAAE,EAAA;WACP,CAAA;SACG,CAAA;OACC,CACV,eACD/E,cAAA,CAAA,MAAA,EAAA;AAAMC,QAAAA,SAAS,EAAC,SAAS;QAAAF,QAAA,eACvBC,cAAA,CAACgF,eAAe,EAAA;AAAOjB,UAAAA,aAAa,EAAbA,aAAa;AAAED,UAAAA,UAAU,EAAVA,UAAAA;SAAe,CAAA;AAAC,OAClD,CAAC,CAAA;KACJ,CAAC,eACNjE,eAAA,CAAA,KAAA,EAAA;AAAKI,MAAAA,SAAS,EAAC,qCAAqC;MAAAF,QAAA,EAAA,cAClDC,cAAA,CAAC4C,YAAU,EAAA;AACTE,QAAAA,QAAQ,EAAEmB,SAAS,CAAC,YAAY,CAAE;AAClCpB,QAAAA,MAAM,EAAEzD,CAAC,CAAC,wCAAwC,CAAE;AACpDC,QAAAA,KAAK,EAAE+E,UAAAA;AAAW,OACnB,CAAC,eACFpE,cAAA,CAAC4C,YAAU,EAAA;AACTE,QAAAA,QAAQ,EAAEmB,SAAS,CAAC,YAAY,CAAE;AAClCpB,QAAAA,MAAM,EAAEzD,CAAC,CAAC,wCAAwC,CAAE;AACpDC,QAAAA,KAAK,EAAEgF,UAAAA;AAAW,OACnB,CAAC,eACFrE,cAAA,CAAC4C,YAAU,EAAA;AACTE,QAAAA,QAAQ,EAAEmB,SAAS,CAAC,aAAa,CAAE;AACnCpB,QAAAA,MAAM,EAAEzD,CAAC,CAAC,6CAA6C,CAAE;AACzDC,QAAAA,KAAK,EAAEiF,eAAAA;AAAgB,OACxB,CAAC,eACFtE,cAAA,CAAC4C,YAAU,EAAA;QACTI,YAAY,EAAA,IAAA;AACZF,QAAAA,QAAQ,EAAEmB,SAAS,CAAC,gBAAgB,CAAE;AACtCpB,QAAAA,MAAM,EAAEzD,CAAC,CAAC,gDAAgD,CAAE;AAC5DC,QAAAA,KAAK,EAAEkF,cAAAA;AAAe,OACvB,CAAC,eACFvE,cAAA,CAAC4C,YAAU,EAAA;QACTG,MAAM,EAAA,IAAA;AACND,QAAAA,QAAQ,EAAEmB,SAAS,CAAC,uBAAuB,CAAE;AAC7CpB,QAAAA,MAAM,EAAEzD,CAAC,CAAC,mDAAmD,CAAE;AAC/D6F,QAAAA,UAAU,EAAE7F,CAAC,CAAC,8BAA8B,CAAE;AAC9CC,QAAAA,KAAK,EAAEmF,qBAAAA;AAAsB,OAC9B,CAAC,CAAA;KACC,CAAC,eACN3E,eAAA,CAAA,KAAA,EAAA;AAAKI,MAAAA,SAAS,EAAC,sDAAsD;MAAAF,QAAA,EAAA,cACnEC,cAAA,CAAC4B,UAAQ,EAAA;AACPjB,QAAAA,IAAI,EAAE8D,OAAQ;AACdpD,QAAAA,YAAY,EAAEnC,eAAgB;QAC9B2C,IAAI,EAAEzC,CAAC,CAAC,iCAAiC,CAAA;AAAE,OAC5C,CAAC,eACFY,cAAA,CAAC4B,UAAQ,EAAA;AACPjB,QAAAA,IAAI,EAAE+D,gBAAiB;AACvBrD,QAAAA,YAAY,EAAE/B,UAAW;QACzBuC,IAAI,EAAEzC,CAAC,CAAC,4BAA4B,CAAA;AAAE,OACvC,CAAC,eACFY,cAAA,CAAC4B,UAAQ,EAAA;AACPjB,QAAAA,IAAI,EAAEgE,QAAS;AACftD,QAAAA,YAAY,EAAE9B,gBAAiB;QAC/BsC,IAAI,EAAEzC,CAAC,CAAC,kCAAkC,CAAA;AAAE,OAC7C,CAAC,CAAA;AAAA,KACC,CAAC,CAAA;AAAA,GACH,CAAC,CAAA;AAEV;;;;"}
1
+ {"version":3,"file":"Insights.js","sources":["../../src/components/Insights/constants.js","../../src/components/Insights/MetaInfo/PercentageBar.jsx","../../src/components/Insights/MetaInfo/MetaInfoItem.jsx","../../src/components/Insights/MetaInfo/DataDistribution.jsx","../../src/components/Insights/utils.js","../../src/components/Insights/MetaInfo/index.jsx","../../src/components/Insights/TimeItem.jsx","../../src/components/Insights/MetricItem.jsx","../../src/components/Insights/index.jsx"],"sourcesContent":["import { t } from \"i18next\";\n\nexport const DEFAULT_DEVICES = [\n {\n label: t(\"neetoMolecules.insights.labels.devices.desktop\"),\n value: \"desktop\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.devices.mobile\"),\n value: \"smartphone\",\n },\n];\n\nexport const DEFAULT_OS = [\n { label: t(\"neetoMolecules.insights.labels.os.macos\"), value: \"mac\" },\n {\n label: t(\"neetoMolecules.insights.labels.os.windows\"),\n value: \"windows\",\n },\n];\n\nexport const DEFAULT_BROWSERS = [\n {\n label: t(\"neetoMolecules.insights.labels.browsers.chrome\"),\n value: \"chrome\",\n },\n {\n label: t(\"neetoMolecules.insights.labels.browsers.safari\"),\n value: \"safari\",\n },\n];\n\nexport const INITIAL_TIME_PERIOD_VALUE = {\n label: t(\"neetoMolecules.insights.labels.allTime\"),\n value: { startDate: null, endDate: null, rangeType: \"all\" },\n};\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst PercentageBar = ({ value }) => (\n <>\n {value !== 0 && (\n <div\n className=\"neeto-ui-bg-gray-300 neeto-ui-rounded-full h-2\"\n style={{ width: `${value}%` }}\n />\n )}\n <Typography style=\"body3\">{value ? `${value}%` : 0}</Typography>\n </>\n);\n\nexport default memo(PercentageBar);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport PercentageBar from \"./PercentageBar\";\n\nconst MetaInfoItem = ({ name, value }) => (\n <>\n <Typography style=\"body2\" textTransform=\"capitalize\">\n {name}\n </Typography>\n <div className=\"col-span-3 flex items-center gap-2\">\n <PercentageBar {...{ value }} />\n </div>\n </>\n);\n\nexport default memo(MetaInfoItem);\n","import MetaInfoItem from \"./MetaInfoItem\";\n\nconst DataDistribution = ({ data }) => (\n <div className=\"grid grid-cols-4 gap-2\">\n {data.map(({ name, value }) => (\n <MetaInfoItem {...{ name, value }} key={name} />\n ))}\n </div>\n);\n\nexport default DataDistribution;\n","import { existsBy } from \"neetocist\";\n\nconst getSum = (data, searchKey) => {\n let sum = 0;\n for (const key in data) {\n if (key.includes(searchKey)) sum += data[key];\n }\n\n return sum;\n};\n\nexport const transformInsights = (data, defaultItems) => {\n const othersData = Object.keys(data)\n .filter(key => !existsBy({ value: key }, defaultItems))\n .map(key => ({ name: key, value: data[key] }));\n\n const defaultData = defaultItems.map(({ label, value }) => ({\n name: label,\n value: getSum(data, value) || 0,\n }));\n\n return { defaultData, othersData };\n};\n","import { memo } from \"react\";\n\nimport { Tooltip, Typography } from \"neetoui\";\nimport { pluck, sum, values } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DataDistribution from \"./DataDistribution\";\nimport MetaInfoItem from \"./MetaInfoItem\";\n\nimport { transformInsights } from \"../utils\";\n\nconst MetaInfo = ({ type, data, defaultItems }) => {\n const { t } = useTranslation();\n const { defaultData, othersData } = transformInsights(data, defaultItems);\n\n const othersSum = sum(values(pluck(\"value\", othersData)));\n\n return (\n <div className=\"neeto-ui-bg-gray-100 neeto-ui-rounded p-4\">\n <Typography\n className=\"mb-2\"\n style=\"body2\"\n textTransform=\"uppercase\"\n weight=\"bold\"\n >\n {type}\n </Typography>\n <DataDistribution data={defaultData} />\n <Tooltip\n content={<DataDistribution data={othersData} />}\n disabled={!othersSum}\n position=\"bottom\"\n >\n <div className=\"mt-2 grid grid-cols-4 gap-2\">\n <MetaInfoItem\n name={t(\"neetoMolecules.insights.others\")}\n value={othersSum}\n />\n </div>\n </Tooltip>\n </div>\n );\n};\n\nexport default memo(MetaInfo);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nconst TimeItem = ({ value, suffix }) => (\n <div className=\"flex items-end\" data-testid=\"time-item\">\n <Typography className=\"mr-1\" style=\"h1\" weight=\"semibold\">\n {value}\n </Typography>\n <Typography lineHeight=\"loose\" style=\"body2\">\n {suffix}\n </Typography>\n </div>\n);\n\nexport default memo(TimeItem);\n","import { memo } from \"react\";\n\nimport { Typography } from \"neetoui\";\n\nimport HelpPopover from \"components/HelpPopover\";\n\nimport TimeItem from \"./TimeItem\";\n\nconst MetricItem = ({ metric, value, helpText, isTime, isPercentage }) => {\n const renderTime = value => {\n const { h: hours, m: minutes, s: seconds } = value;\n const showSeconds = !hours && !minutes;\n\n return (\n <div className=\"flex gap-2\">\n {!!hours && <TimeItem suffix=\"H\" value={hours} />}\n {!!minutes && <TimeItem suffix=\"M\" value={minutes} />}\n {(!!seconds || showSeconds) && <TimeItem suffix=\"S\" value={seconds} />}\n </div>\n );\n };\n\n return (\n <div className=\"nf-insights__metric-item neeto-ui-border-gray-200 border-b pb-4\">\n <div className=\"flex items-center gap-2\">\n <div className=\"flex items-end gap-x-1\">\n {isTime ? (\n renderTime(value)\n ) : (\n <Typography\n className=\"neeto-ui-text-gray-800\"\n data-cy=\"insights-count\"\n data-testid=\"insights-count\"\n style=\"h1\"\n weight=\"semibold\"\n >\n {value || 0}\n {isPercentage ? \"%\" : \"\"}\n </Typography>\n )}\n </div>\n {helpText && (\n <div>\n <HelpPopover description={helpText} />\n </div>\n )}\n </div>\n <Typography\n className=\"neeto-ui-text-gray-700\"\n data-cy=\"insights-type\"\n style=\"body3\"\n >\n {metric}\n </Typography>\n </div>\n );\n};\n\nexport default memo(MetricItem);\n","import classNames from \"classnames\";\nimport { Warning } from \"neetoicons\";\nimport { Tooltip, Typography } from \"neetoui\";\nimport PropTypes from \"prop-types\";\nimport { useTranslation } from \"react-i18next\";\n\nimport DateRangeFilter from \"components/DateRangeFilter\";\nimport PageLoader from \"components/PageLoader\";\n\nimport { DEFAULT_DEVICES, DEFAULT_BROWSERS, DEFAULT_OS } from \"./constants\";\nimport MetaInfo from \"./MetaInfo\";\nimport MetricItem from \"./MetricItem\";\n\nconst Insights = ({\n insightsData,\n isLoading,\n timePeriod,\n setTimePeriod,\n helpTexts = {},\n showWarningMessage = false,\n className,\n}) => {\n const { t } = useTranslation();\n\n const {\n visitCount,\n startCount,\n submissionCount,\n completionRate,\n averageSubmissionTime,\n devices,\n operatingSystems,\n browsers,\n } = insightsData;\n\n if (isLoading) return <PageLoader />;\n\n return (\n <div\n className={classNames(\"mx-auto pt-10\", className)}\n data-testid=\"insights\"\n >\n <div className=\"mb-10 flex w-full items-center\">\n <Typography data-cy=\"submissions-insights-title\" style=\"h2\">\n {t(\"neetoMolecules.insights.title\")}\n </Typography>\n {showWarningMessage && (\n <Tooltip\n content={t(\"neetoMolecules.insights.dataInaccuracyWarning\")}\n position=\"bottom\"\n touch={[\"hold\", 500]}\n >\n <span className=\"ml-3\">\n <Warning\n className=\"neeto-ui-text-warning-500\"\n data-testid=\"insights-warning\"\n size={20}\n />\n </span>\n </Tooltip>\n )}\n <span className=\"ml-auto\">\n <DateRangeFilter {...{ setTimePeriod, timePeriod }} />\n </span>\n </div>\n <div className=\"mb-6 grid grid-cols-1 gap-x-9 gap-y-6 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-5 lg:gap-0\">\n <MetricItem\n helpText={helpTexts[\"visitCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.visits\")}\n value={visitCount}\n />\n <MetricItem\n helpText={helpTexts[\"startCount\"]}\n metric={t(\"neetoMolecules.insights.metrics.starts\")}\n value={startCount}\n />\n <MetricItem\n helpText={helpTexts[\"submissions\"]}\n metric={t(\"neetoMolecules.insights.metrics.submissions\")}\n value={submissionCount}\n />\n <MetricItem\n isPercentage\n helpText={helpTexts[\"completionRate\"]}\n metric={t(\"neetoMolecules.insights.metrics.completionRate\")}\n value={completionRate}\n />\n <MetricItem\n isTime\n helpText={helpTexts[\"averageSubmissionTime\"]}\n metric={t(\"neetoMolecules.insights.metrics.avgTimeToComplete\")}\n timeSuffix={t(\"neetoMolecules.insights.mins\")}\n value={averageSubmissionTime}\n />\n </div>\n <div className=\"grid grid-cols-1 gap-6 sm:grid-cols-2 lg:grid-cols-3\">\n <MetaInfo\n data={devices}\n defaultItems={DEFAULT_DEVICES}\n type={t(\"neetoMolecules.insights.devices\")}\n />\n <MetaInfo\n data={operatingSystems}\n defaultItems={DEFAULT_OS}\n type={t(\"neetoMolecules.insights.os\")}\n />\n <MetaInfo\n data={browsers}\n defaultItems={DEFAULT_BROWSERS}\n type={t(\"neetoMolecules.insights.browsers\")}\n />\n </div>\n </div>\n );\n};\n\nInsights.propTypes = {\n /**\n * Object containing metrics and statistics for insights\n */\n insightsData: PropTypes.shape({\n visitCount: PropTypes.number,\n startCount: PropTypes.number,\n submissionCount: PropTypes.number,\n completionRate: PropTypes.number,\n averageSubmissionTime: PropTypes.shape({\n h: PropTypes.number,\n m: PropTypes.number,\n s: PropTypes.number,\n }),\n devices: PropTypes.shape({\n desktop: PropTypes.number,\n smartphone: PropTypes.number,\n }),\n operatingSystems: PropTypes.shape({\n mac: PropTypes.number,\n windows: PropTypes.number,\n }),\n browsers: PropTypes.shape({\n chrome: PropTypes.number,\n safari: PropTypes.number,\n }),\n }),\n /**\n * Indicates whether insights data is currently being fetched from an API\n */\n isLoading: PropTypes.bool,\n /**\n * The state corresponding to the currently selected date range.\n */\n timePeriod: PropTypes.shape({\n label: PropTypes.string,\n value: PropTypes.object,\n }),\n /**\n * The setter method for `timePeriod` state.\n */\n setTimePeriod: PropTypes.func,\n /**\n * Object containing explanatory text for each metric, providing additional context that can help users understand the significance of the metrics displayed.\n */\n helpTexts: PropTypes.shape({\n visitCount: PropTypes.string,\n startCount: PropTypes.string,\n submissions: PropTypes.string,\n completionRate: PropTypes.string,\n averageSubmissionTime: PropTypes.string,\n }),\n /**\n * Displays a warning to indicate that the insights may not be accurate, as the insights integration occurred after the record's creation.\n */\n showWarningMessage: PropTypes.bool,\n /**\n * To provide additional classes.\n */\n className: PropTypes.string,\n};\n\nexport default Insights;\n"],"names":["DEFAULT_DEVICES","label","t","value","DEFAULT_OS","DEFAULT_BROWSERS","startDate","endDate","rangeType","PercentageBar","_ref","_jsxs","_Fragment","children","_jsx","className","style","width","concat","Typography","memo","MetaInfoItem","name","textTransform","DataDistribution","data","map","_ref2","_createElement","key","getSum","searchKey","sum","includes","transformInsights","defaultItems","othersData","Object","keys","filter","existsBy","defaultData","MetaInfo","type","_useTranslation","useTranslation","_transformInsights","othersSum","values","pluck","weight","Tooltip","content","disabled","position","TimeItem","suffix","lineHeight","MetricItem","metric","helpText","isTime","isPercentage","renderTime","hours","h","minutes","m","seconds","s","showSeconds","HelpPopover","description","Insights","insightsData","isLoading","timePeriod","setTimePeriod","_ref$helpTexts","helpTexts","_ref$showWarningMessa","showWarningMessage","visitCount","startCount","submissionCount","completionRate","averageSubmissionTime","devices","operatingSystems","browsers","PageLoader","classNames","touch","Warning","size","DateRangeFilter","timeSuffix"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-molecules",
3
- "version": "3.5.12",
3
+ "version": "3.5.13",
4
4
  "description": "A package of reusable molecular components for neeto products.",
5
5
  "repository": "git@github.com:bigbinary/neeto-molecules.git",
6
6
  "author": "Amaljith K <amaljith.k@bigbinary.com>",
@@ -506,13 +506,13 @@
506
506
  "others": "Others",
507
507
  "metrics": {
508
508
  "completionRate": "Completion rate",
509
- "avgTimeToComplete": "Avg. time to complete",
509
+ "avgTimeToComplete": "Average time to complete",
510
510
  "submissions": "Submissions",
511
511
  "visits": "Visits",
512
512
  "starts": "Starts"
513
513
  },
514
514
  "helpTexts": {
515
- "avgTimeToComplete": "Avg. time updates only with time duration feature enabled."
515
+ "avgTimeToComplete": "Average time updates only with time duration feature enabled."
516
516
  },
517
517
  "browsers": "browsers",
518
518
  "os": "os",
@@ -82,7 +82,7 @@ interface HelpTexts {
82
82
  * }}
83
83
  * helpTexts={{
84
84
  * averageSubmissionTime:
85
- * "Avg. time updates only with time duration feature enabled.",
85
+ * "Average time updates only with time duration feature enabled.",
86
86
  * }}
87
87
  * />
88
88
  * );