@levi-gemcommerce/analytics 1.0.0-dev.12 → 1.0.0-dev.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.
Files changed (85) hide show
  1. package/dist/esm/components/GTimePicker/GTimePicker.d.ts +17 -0
  2. package/dist/esm/components/GTimePicker/components/BaseTimePicker.d.ts +10 -0
  3. package/dist/esm/components/GTimePicker/components/CompareTimePicker.d.ts +5 -0
  4. package/dist/esm/components/GTimePicker/components/DateTimeFilterAddition.d.ts +2 -0
  5. package/dist/esm/components/GTimePicker/components/DateTimeFilterInputs.d.ts +9 -0
  6. package/dist/esm/components/GTimePicker/components/DateTimeFilters.d.ts +15 -0
  7. package/dist/esm/components/GTimePicker/components/MainTimePicker.d.ts +3 -0
  8. package/dist/esm/components/GTimePicker/components/index.d.ts +2 -0
  9. package/dist/esm/components/GTimePicker/constants/compareDateTimePicker.d.ts +12 -0
  10. package/dist/esm/components/GTimePicker/constants/datePicker.d.ts +14 -0
  11. package/dist/esm/components/GTimePicker/constants/index.d.ts +2 -0
  12. package/dist/esm/components/GTimePicker/constants/mainDataTimePicker.d.ts +14 -0
  13. package/dist/esm/components/GTimePicker/contexts/DateTimePickerProvider.d.ts +15 -0
  14. package/dist/esm/components/GTimePicker/contexts/index.d.ts +1 -0
  15. package/dist/esm/components/GTimePicker/helpers/date-range-info.d.ts +16 -0
  16. package/dist/esm/components/GTimePicker/helpers/index.d.ts +4 -0
  17. package/dist/esm/components/GTimePicker/helpers/parse-date.d.ts +24 -0
  18. package/dist/esm/components/GTimePicker/helpers/time-picker.d.ts +76 -0
  19. package/dist/esm/components/GTimePicker/helpers/version.d.ts +2 -0
  20. package/dist/esm/components/GTimePicker/hooks/index.d.ts +3 -0
  21. package/dist/esm/components/GTimePicker/hooks/useCompareDateTimePicker.d.ts +25 -0
  22. package/dist/esm/components/GTimePicker/hooks/useDateTimeFilter.d.ts +18 -0
  23. package/dist/esm/components/GTimePicker/hooks/useDateTimePicker.d.ts +30 -0
  24. package/dist/esm/components/GTimePicker/hooks/useVersionDateTimeFilters.d.ts +9 -0
  25. package/dist/esm/components/GTimePicker/index.d.ts +7 -0
  26. package/dist/esm/components/GTimePicker/types/index.d.ts +38 -0
  27. package/dist/esm/components/index.d.ts +1 -0
  28. package/dist/esm/core/gemxql/helpers/getTimeDimension.d.ts +1 -1
  29. package/dist/esm/core/gemxql/index.d.ts +0 -2
  30. package/dist/esm/core/gemxql/types/date-filter.d.ts +1 -1
  31. package/dist/esm/gemxql.js +38 -53
  32. package/dist/esm/gemxql.mjs +38 -53
  33. package/dist/esm/index.d.ts +1 -4
  34. package/dist/esm/index.js +1377 -1414
  35. package/dist/esm/index.mjs +1377 -1414
  36. package/dist/esm/shared/charts/components/GPolarisViz/utilities/getFontSize.d.ts +1 -1
  37. package/dist/esm/shared/components/GTimePicker/GTimePicker.d.ts +1 -1
  38. package/dist/esm/shared/components/GTimePicker/helpers/parse-date.d.ts +2 -2
  39. package/dist/esm/shared/components/GTimePicker/hooks/useCompareDateTimePicker.d.ts +1 -2
  40. package/dist/esm/shared/components/GTimePicker/types/index.d.ts +1 -1
  41. package/dist/esm/shared/components/index.d.ts +0 -1
  42. package/dist/esm/utils/dayjs.d.ts +10 -0
  43. package/dist/esm/utils/index.d.ts +1 -0
  44. package/dist/umd/esm/components/GTimePicker/GTimePicker.d.ts +17 -0
  45. package/dist/umd/esm/components/GTimePicker/components/BaseTimePicker.d.ts +10 -0
  46. package/dist/umd/esm/components/GTimePicker/components/CompareTimePicker.d.ts +5 -0
  47. package/dist/umd/esm/components/GTimePicker/components/DateTimeFilterAddition.d.ts +2 -0
  48. package/dist/umd/esm/components/GTimePicker/components/DateTimeFilterInputs.d.ts +9 -0
  49. package/dist/umd/esm/components/GTimePicker/components/DateTimeFilters.d.ts +15 -0
  50. package/dist/umd/esm/components/GTimePicker/components/MainTimePicker.d.ts +3 -0
  51. package/dist/umd/esm/components/GTimePicker/components/index.d.ts +2 -0
  52. package/dist/umd/esm/components/GTimePicker/constants/compareDateTimePicker.d.ts +12 -0
  53. package/dist/umd/esm/components/GTimePicker/constants/datePicker.d.ts +14 -0
  54. package/dist/umd/esm/components/GTimePicker/constants/index.d.ts +2 -0
  55. package/dist/umd/esm/components/GTimePicker/constants/mainDataTimePicker.d.ts +14 -0
  56. package/dist/umd/esm/components/GTimePicker/contexts/DateTimePickerProvider.d.ts +15 -0
  57. package/dist/umd/esm/components/GTimePicker/contexts/index.d.ts +1 -0
  58. package/dist/umd/esm/components/GTimePicker/helpers/date-range-info.d.ts +16 -0
  59. package/dist/umd/esm/components/GTimePicker/helpers/index.d.ts +4 -0
  60. package/dist/umd/esm/components/GTimePicker/helpers/parse-date.d.ts +24 -0
  61. package/dist/umd/esm/components/GTimePicker/helpers/time-picker.d.ts +76 -0
  62. package/dist/umd/esm/components/GTimePicker/helpers/version.d.ts +2 -0
  63. package/dist/umd/esm/components/GTimePicker/hooks/index.d.ts +3 -0
  64. package/dist/umd/esm/components/GTimePicker/hooks/useCompareDateTimePicker.d.ts +25 -0
  65. package/dist/umd/esm/components/GTimePicker/hooks/useDateTimeFilter.d.ts +18 -0
  66. package/dist/umd/esm/components/GTimePicker/hooks/useDateTimePicker.d.ts +30 -0
  67. package/dist/umd/esm/components/GTimePicker/hooks/useVersionDateTimeFilters.d.ts +9 -0
  68. package/dist/umd/esm/components/GTimePicker/index.d.ts +7 -0
  69. package/dist/umd/esm/components/GTimePicker/types/index.d.ts +38 -0
  70. package/dist/umd/esm/components/index.d.ts +1 -0
  71. package/dist/umd/esm/core/gemxql/helpers/getTimeDimension.d.ts +1 -1
  72. package/dist/umd/esm/core/gemxql/index.d.ts +0 -2
  73. package/dist/umd/esm/core/gemxql/types/date-filter.d.ts +1 -1
  74. package/dist/umd/esm/index.d.ts +1 -4
  75. package/dist/umd/esm/shared/charts/components/GPolarisViz/utilities/getFontSize.d.ts +1 -1
  76. package/dist/umd/esm/shared/components/GTimePicker/GTimePicker.d.ts +1 -1
  77. package/dist/umd/esm/shared/components/GTimePicker/helpers/parse-date.d.ts +2 -2
  78. package/dist/umd/esm/shared/components/GTimePicker/hooks/useCompareDateTimePicker.d.ts +1 -2
  79. package/dist/umd/esm/shared/components/GTimePicker/types/index.d.ts +1 -1
  80. package/dist/umd/esm/shared/components/index.d.ts +0 -1
  81. package/dist/umd/esm/utils/dayjs.d.ts +10 -0
  82. package/dist/umd/esm/utils/index.d.ts +1 -0
  83. package/dist/umd/gemxql.js +1 -1
  84. package/dist/umd/index.js +1 -1
  85. package/package.json +1 -1
@@ -561,33 +561,55 @@ const parse$4 = (query) => {
561
561
  .filter(Boolean);
562
562
  };
563
563
 
564
+ const TRIM_DECIMAL_ZEROS_REGEX = /\.0+$/;
565
+ const DEFAULT_DECIMALS = 2;
566
+ const trimDecimalZeros = (number) => {
567
+ return `${number}`.replace(TRIM_DECIMAL_ZEROS_REGEX, '');
568
+ };
569
+ const cleanDecimal = (number, decimals = DEFAULT_DECIMALS) => {
570
+ return trimDecimalZeros(number.toFixed(decimals));
571
+ };
572
+
573
+ /**
574
+ * Utility function to calculate percentage and format it.
575
+ * @param part - The part value.
576
+ * @param total - The total value.
577
+ * @param decimals - The number of decimal places to format the percentage to.
578
+ * @returns The formatted percentage as a string.
579
+ */
580
+ const PERCENTAGE_THRESHOLD = 0.005;
581
+ const PERCENTAGE_THRESHOLD_STRING = '~0%';
582
+ const calcPercentage = (part, total, decimals = DEFAULT_DECIMALS) => {
583
+ if (typeof part !== 'number' || !total)
584
+ return undefined;
585
+ if (part === 0)
586
+ return 0;
587
+ const percentage = (part / total) * 100;
588
+ return parseFloat(cleanDecimal(percentage, decimals));
589
+ };
590
+ const isLessThanThreshold = (percentage) => percentage > 0 && percentage < PERCENTAGE_THRESHOLD;
591
+ const calcPercentageString = (part, total, decimals = 2) => {
592
+ const percentage = calcPercentage(part, total, decimals);
593
+ if (typeof percentage !== 'number')
594
+ return undefined;
595
+ if (isLessThanThreshold(percentage)) {
596
+ return PERCENTAGE_THRESHOLD_STRING;
597
+ }
598
+ return `${percentage}%`;
599
+ };
600
+
564
601
  dayjs.extend(utc);
565
602
  dayjs.extend(timezone);
566
603
  dayjs.extend(quarterOfYear);
567
604
  let tz = 'UTC';
568
- const DEFAULT_DATE_FORMAT = 'YYYY-MM-DD HH:mm:ss';
569
605
  function getInitialTimezone() {
570
606
  return tz;
571
607
  }
572
- function setTz(value) {
573
- tz = value;
574
- dayjs.tz.setDefault(value);
575
- }
576
608
  const dayjsTz = (date) => {
577
609
  if (!date)
578
610
  return dayjs().tz(tz);
579
611
  return dayjs(date).tz(tz);
580
612
  };
581
- const convertDateToTz = (date) => {
582
- if (!date)
583
- return dayjs.tz(dayjs().format(DEFAULT_DATE_FORMAT), tz);
584
- return dayjs.tz(dayjs(date).format(DEFAULT_DATE_FORMAT), tz);
585
- };
586
- const dayjsTzToLocalTZ = (date) => {
587
- if (!date)
588
- return dayjs(dayjsTz().format(DEFAULT_DATE_FORMAT));
589
- return dayjs(dayjsTz(date).format(DEFAULT_DATE_FORMAT));
590
- };
591
613
 
592
614
  const toDate = (value) => (typeof value === 'string' ? dayjsTz(value) : value);
593
615
  const isMidnight = (date) => date.hour() === 0 && date.minute() === 0;
@@ -746,43 +768,6 @@ const extractColumnTypes = (response) => {
746
768
  return columnTypes;
747
769
  };
748
770
 
749
- const TRIM_DECIMAL_ZEROS_REGEX = /\.0+$/;
750
- const DEFAULT_DECIMALS = 2;
751
- const trimDecimalZeros = (number) => {
752
- return `${number}`.replace(TRIM_DECIMAL_ZEROS_REGEX, '');
753
- };
754
- const cleanDecimal = (number, decimals = DEFAULT_DECIMALS) => {
755
- return trimDecimalZeros(number.toFixed(decimals));
756
- };
757
-
758
- /**
759
- * Utility function to calculate percentage and format it.
760
- * @param part - The part value.
761
- * @param total - The total value.
762
- * @param decimals - The number of decimal places to format the percentage to.
763
- * @returns The formatted percentage as a string.
764
- */
765
- const PERCENTAGE_THRESHOLD = 0.005;
766
- const PERCENTAGE_THRESHOLD_STRING = '~0%';
767
- const calcPercentage = (part, total, decimals = DEFAULT_DECIMALS) => {
768
- if (typeof part !== 'number' || !total)
769
- return undefined;
770
- if (part === 0)
771
- return 0;
772
- const percentage = (part / total) * 100;
773
- return parseFloat(cleanDecimal(percentage, decimals));
774
- };
775
- const isLessThanThreshold = (percentage) => percentage > 0 && percentage < PERCENTAGE_THRESHOLD;
776
- const calcPercentageString = (part, total, decimals = 2) => {
777
- const percentage = calcPercentage(part, total, decimals);
778
- if (typeof percentage !== 'number')
779
- return undefined;
780
- if (isLessThanThreshold(percentage)) {
781
- return PERCENTAGE_THRESHOLD_STRING;
782
- }
783
- return `${percentage}%`;
784
- };
785
-
786
771
  var AnalyticInterval;
787
772
  (function (AnalyticInterval) {
788
773
  AnalyticInterval["DAY"] = "DAY";
@@ -1048,4 +1033,4 @@ const useGemXQlPagination = ({ resetKey, itemsPerPage, }) => {
1048
1033
  return { currentPage: effectivePage, offset, buildPagination };
1049
1034
  };
1050
1035
 
1051
- export { AnalyticInterval, CLAUSE_KEYWORDS, CLAUSE_KEYWORD_BOUNDARY, COMPARE_PREFIX, COMPARE_SUFFIX, COMPARE_TOTALS_SUFFIX, ColumnSelectFragmentDoc, DATE_QUERY_FORMAT, DEFAULT_QUERY_LIMIT, EAnalyticColumnKey, EAnalyticDataType, EAnalyticMode, EAnalyticSource, EComparisonOperator, EDeviceType, EFilterField, EGroupOperator, EGroupWithClause, EOperatorField, EOrderDirectionType, EPageDimension, EPageField, EPageMetric, ERowReaderMode, ETimeDimension, ETrafficSourceType, EVisitorType, GPaginationDirection, GemXqlResultSelectFragmentDoc, GemxQlDocument, NONE_VALUE, OPERATOR_IS, OPERATOR_IS_ONE_OF, PLACEHOLDER_VALUE, ROW_READER_MODE_CONFIG, TOTALS_SUFFIX, TableDataSelectFragmentDoc, build$a as buildConditionQuery, buildExtraCondition, buildExtraConditions, build$9 as buildFromQuery, buildGemXQlQuery, build$8 as buildGroupQuery, build$7 as buildLimitQuery, build$6 as buildModeQuery, build$5 as buildOffsetQuery, build$4 as buildOrderByQuery, build$3 as buildShowQuery, build$2 as buildTimeQuery, build$1 as buildTimeSeriesQuery, build as buildTimezoneQuery, buildVersionIdCondition, convertDateToTz, createNumericRowReader, dayjsTz, dayjsTzToLocalTZ, extractColumnTypes, extractQueryColumns, extractQueryRows, filterConfigs, formatAnalyticData, formatAnalyticDate, generateFilterConditions, getComparisonKey, getComparisonTotalsKey, getFirstMetricInOrderBy, getFormattedByInterval, getInitialTimezone, getTimeDimensionByDate, getTimeDurationLabel, getTotalsKey, hasMetricData, isValidQueryInput, numberWithCommas, parseBreakdownItems, parse$b as parseConditionQuery, parse$a as parseFromQuery, parse as parseGemXQlQuery, parse$9 as parseGroupQuery, parseJsonArray, parseJsonObject, parse$8 as parseLimitQuery, parse$7 as parseModeQuery, parse$6 as parseOffsetQuery, parse$5 as parseOrderByQuery, parsePageItems, parse$4 as parseShowQuery, parse$3 as parseTimeQuery, parse$2 as parseTimeSeriesQuery, parse$1 as parseTimezoneQuery, readNumeric, setTz, useAnalyticData, useCustomGemXQlQuery, useGemXQlPagination, useGemxQlNamedQuery };
1036
+ export { AnalyticInterval, CLAUSE_KEYWORDS, CLAUSE_KEYWORD_BOUNDARY, COMPARE_PREFIX, COMPARE_SUFFIX, COMPARE_TOTALS_SUFFIX, ColumnSelectFragmentDoc, DATE_QUERY_FORMAT, DEFAULT_QUERY_LIMIT, EAnalyticColumnKey, EAnalyticDataType, EAnalyticMode, EAnalyticSource, EComparisonOperator, EDeviceType, EFilterField, EGroupOperator, EGroupWithClause, EOperatorField, EOrderDirectionType, EPageDimension, EPageField, EPageMetric, ERowReaderMode, ETimeDimension, ETrafficSourceType, EVisitorType, GPaginationDirection, GemXqlResultSelectFragmentDoc, GemxQlDocument, NONE_VALUE, OPERATOR_IS, OPERATOR_IS_ONE_OF, PLACEHOLDER_VALUE, ROW_READER_MODE_CONFIG, TOTALS_SUFFIX, TableDataSelectFragmentDoc, build$a as buildConditionQuery, buildExtraCondition, buildExtraConditions, build$9 as buildFromQuery, buildGemXQlQuery, build$8 as buildGroupQuery, build$7 as buildLimitQuery, build$6 as buildModeQuery, build$5 as buildOffsetQuery, build$4 as buildOrderByQuery, build$3 as buildShowQuery, build$2 as buildTimeQuery, build$1 as buildTimeSeriesQuery, build as buildTimezoneQuery, buildVersionIdCondition, createNumericRowReader, extractColumnTypes, extractQueryColumns, extractQueryRows, filterConfigs, formatAnalyticData, formatAnalyticDate, generateFilterConditions, getComparisonKey, getComparisonTotalsKey, getFirstMetricInOrderBy, getFormattedByInterval, getTimeDimensionByDate, getTimeDurationLabel, getTotalsKey, hasMetricData, isValidQueryInput, numberWithCommas, parseBreakdownItems, parse$b as parseConditionQuery, parse$a as parseFromQuery, parse as parseGemXQlQuery, parse$9 as parseGroupQuery, parseJsonArray, parseJsonObject, parse$8 as parseLimitQuery, parse$7 as parseModeQuery, parse$6 as parseOffsetQuery, parse$5 as parseOrderByQuery, parsePageItems, parse$4 as parseShowQuery, parse$3 as parseTimeQuery, parse$2 as parseTimeSeriesQuery, parse$1 as parseTimezoneQuery, readNumeric, useAnalyticData, useCustomGemXQlQuery, useGemXQlPagination, useGemxQlNamedQuery };
@@ -1,5 +1,2 @@
1
1
  export * from './components';
2
- export * from './constants';
3
- export * from './types';
4
- export * from './shared';
5
- export { EAnalyticColumnKey, EDeviceType, ETrafficSourceType, EVisitorType } from './core/gemxql';
2
+ export * from './utils/dayjs';