@embeddable.com/remarkable-pro 0.0.25 → 0.0.27

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 (182) hide show
  1. package/dist/BarChartDefaultHorizontalPro.js +35 -24
  2. package/dist/BarChartDefaultHorizontalPro.js.map +1 -1
  3. package/dist/BarChartDefaultPro.js +38 -22
  4. package/dist/BarChartDefaultPro.js.map +1 -1
  5. package/dist/BarChartGroupedHorizontalPro.js +36 -28
  6. package/dist/BarChartGroupedHorizontalPro.js.map +1 -1
  7. package/dist/BarChartGroupedPro.js +36 -28
  8. package/dist/BarChartGroupedPro.js.map +1 -1
  9. package/dist/BarChartStackedHorizontalPro.js +31 -23
  10. package/dist/BarChartStackedHorizontalPro.js.map +1 -1
  11. package/dist/BarChartStackedPro.js +31 -23
  12. package/dist/BarChartStackedPro.js.map +1 -1
  13. package/dist/{ChartCard-BHPN4_tz.js → ChartCard-CfVMn37p.js} +21 -21
  14. package/dist/{ChartCard-BHPN4_tz.js.map → ChartCard-CfVMn37p.js.map} +1 -1
  15. package/dist/ChartGranularitySelectField-C_6Mugcw.js +40 -0
  16. package/dist/ChartGranularitySelectField-C_6Mugcw.js.map +1 -0
  17. package/dist/{Color.type.emb-DWdIUAm5.js → Color.type.emb-De2K8PVb.js} +2067 -2042
  18. package/dist/{Color.type.emb-DWdIUAm5.js.map → Color.type.emb-De2K8PVb.js.map} +1 -1
  19. package/dist/ColorEditor.js +1 -1
  20. package/dist/ComparisonPeriodSelectFieldPro.js +3 -3
  21. package/dist/DateRangePickerCustomPro.js +4 -4
  22. package/dist/DateRangeSelectFieldPro.js +3 -3
  23. package/dist/DimensionAndMeasureSingleSelectField-CJ1yAcRd.js +45 -0
  24. package/dist/DimensionAndMeasureSingleSelectField-CJ1yAcRd.js.map +1 -0
  25. package/dist/DimensionSingleSelectFieldPro.js +86 -0
  26. package/dist/DimensionSingleSelectFieldPro.js.map +1 -0
  27. package/dist/DonutChartPro.js +4 -4
  28. package/dist/DonutLabelChartPro.js +4 -4
  29. package/dist/{EditorCard-ZXwl5-DV.js → EditorCard-B9UFM_uA.js} +3 -3
  30. package/dist/{EditorCard-ZXwl5-DV.js.map → EditorCard-B9UFM_uA.js.map} +1 -1
  31. package/dist/GranularitySelectField-DuRk6qY8.js +104 -0
  32. package/dist/GranularitySelectField-DuRk6qY8.js.map +1 -0
  33. package/dist/GranularitySelectFieldPro.js +43 -137
  34. package/dist/GranularitySelectFieldPro.js.map +1 -1
  35. package/dist/HeatMapPro.js +4 -4
  36. package/dist/{IconCalendarFilled-Bl7kPqxG.js → IconCalendarFilled-CYiLMPm9.js} +2 -2
  37. package/dist/{IconCalendarFilled-Bl7kPqxG.js.map → IconCalendarFilled-CYiLMPm9.js.map} +1 -1
  38. package/dist/KpiChartNumberComparisonPro.js +4 -4
  39. package/dist/KpiChartNumberPro.js +4 -4
  40. package/dist/LineChartComparisonDefaultPro.js +45 -40
  41. package/dist/LineChartComparisonDefaultPro.js.map +1 -1
  42. package/dist/LineChartDefaultPro.js +37 -29
  43. package/dist/LineChartDefaultPro.js.map +1 -1
  44. package/dist/LineChartGroupedPro.js +31 -23
  45. package/dist/LineChartGroupedPro.js.map +1 -1
  46. package/dist/MeasureSingleSelectFieldPro.js +86 -0
  47. package/dist/MeasureSingleSelectFieldPro.js.map +1 -0
  48. package/dist/MultiSelectFieldPro.js +4 -4
  49. package/dist/PieChartPro.js +4 -4
  50. package/dist/PivotTablePro.js +4 -4
  51. package/dist/SingleSelectFieldPro.js +5 -5
  52. package/dist/SingleSelectFieldPro.js.map +1 -1
  53. package/dist/TableChartPaginated.js +4 -4
  54. package/dist/TableScrollable.js +17 -17
  55. package/dist/{bars.utils-DLqiVSYV.js → bars.utils-B088DNG-.js} +4 -4
  56. package/dist/{bars.utils-DLqiVSYV.js.map → bars.utils-B088DNG-.js.map} +1 -1
  57. package/dist/{charts.utils-lvlkFPJk.js → charts.utils-D8oW5W5r.js} +4 -4
  58. package/dist/{charts.utils-lvlkFPJk.js.map → charts.utils-D8oW5W5r.js.map} +1 -1
  59. package/dist/{component.inputs.constants-DO_jX-yc.js → component.inputs.constants-DzpzJ9Na.js} +476 -381
  60. package/dist/component.inputs.constants-DzpzJ9Na.js.map +1 -0
  61. package/dist/components/charts/bars/BarChartDefaultHorizontalPro/index.d.ts +2 -1
  62. package/dist/components/charts/bars/BarChartDefaultHorizontalPro/index.d.ts.map +1 -1
  63. package/dist/components/charts/bars/BarChartDefaultPro/index.d.ts +2 -1
  64. package/dist/components/charts/bars/BarChartDefaultPro/index.d.ts.map +1 -1
  65. package/dist/components/charts/bars/BarChartGroupedHorizontalPro/index.d.ts +2 -1
  66. package/dist/components/charts/bars/BarChartGroupedHorizontalPro/index.d.ts.map +1 -1
  67. package/dist/components/charts/bars/BarChartGroupedPro/index.d.ts +2 -1
  68. package/dist/components/charts/bars/BarChartGroupedPro/index.d.ts.map +1 -1
  69. package/dist/components/charts/bars/BarChartStackedHorizontalPro/index.d.ts +2 -1
  70. package/dist/components/charts/bars/BarChartStackedHorizontalPro/index.d.ts.map +1 -1
  71. package/dist/components/charts/bars/BarChartStackedPro/index.d.ts +2 -1
  72. package/dist/components/charts/bars/BarChartStackedPro/index.d.ts.map +1 -1
  73. package/dist/components/charts/lines/LineChartComparisonDefaultPro/index.d.ts +2 -1
  74. package/dist/components/charts/lines/LineChartComparisonDefaultPro/index.d.ts.map +1 -1
  75. package/dist/components/charts/lines/LineChartDefaultPro/index.d.ts +2 -1
  76. package/dist/components/charts/lines/LineChartDefaultPro/index.d.ts.map +1 -1
  77. package/dist/components/charts/lines/LineChartGroupedPro/index.d.ts +2 -1
  78. package/dist/components/charts/lines/LineChartGroupedPro/index.d.ts.map +1 -1
  79. package/dist/components/charts/shared/ChartGranularitySelectField/ChartGranularitySelectField.d.ts +9 -0
  80. package/dist/components/charts/shared/ChartGranularitySelectField/ChartGranularitySelectField.d.ts.map +1 -0
  81. package/dist/components/charts/utils/granularity.utils.d.ts +13 -0
  82. package/dist/components/charts/utils/granularity.utils.d.ts.map +1 -0
  83. package/dist/components/component.inputs.constants.d.ts +45 -0
  84. package/dist/components/component.inputs.constants.d.ts.map +1 -1
  85. package/dist/components/component.subinputs.constants.d.ts +18 -0
  86. package/dist/components/component.subinputs.constants.d.ts.map +1 -1
  87. package/dist/components/editors/DimensionSingleSelectFieldPro/index.d.ts +12 -0
  88. package/dist/components/editors/DimensionSingleSelectFieldPro/index.d.ts.map +1 -0
  89. package/dist/components/editors/GranularitySelectFieldPro/index.d.ts.map +1 -1
  90. package/dist/components/editors/MeasureSingleSelectFieldPro/index.d.ts +12 -0
  91. package/dist/components/editors/MeasureSingleSelectFieldPro/index.d.ts.map +1 -0
  92. package/dist/components/editors/shared/DimensionAndMeasureSingleSelectField/DimensionAndMeasureSingleSelectField.d.ts +11 -0
  93. package/dist/components/editors/shared/DimensionAndMeasureSingleSelectField/DimensionAndMeasureSingleSelectField.d.ts.map +1 -0
  94. package/dist/components/editors/shared/GranularitySelectField/GranularitySelectField.d.ts +12 -0
  95. package/dist/components/editors/shared/GranularitySelectField/GranularitySelectField.d.ts.map +1 -0
  96. package/dist/components/editors/{GranularitySelectFieldPro/GranularitySelectFieldPro.utils.d.ts → shared/GranularitySelectField/GranularitySelectField.utils.d.ts} +3 -3
  97. package/dist/components/editors/shared/GranularitySelectField/GranularitySelectField.utils.d.ts.map +1 -0
  98. package/dist/components/editors/utils/dimensionsAndMeasures.utils.d.ts +9 -0
  99. package/dist/components/editors/utils/dimensionsAndMeasures.utils.d.ts.map +1 -0
  100. package/dist/components/preview.data.constants.d.ts +1 -0
  101. package/dist/components/preview.data.constants.d.ts.map +1 -1
  102. package/dist/embeddable-components.json +26 -22
  103. package/dist/{formatter.utils-CBCUxVH8.js → formatter.utils-CiN6axbW.js} +8 -8
  104. package/dist/{formatter.utils-CBCUxVH8.js.map → formatter.utils-CiN6axbW.js.map} +1 -1
  105. package/dist/granularity.utils-CA504xa0.js +15 -0
  106. package/dist/granularity.utils-CA504xa0.js.map +1 -0
  107. package/dist/{index-DLT2A69c.js → index-7JWw7tI5.js} +5 -5
  108. package/dist/{index-DLT2A69c.js.map → index-7JWw7tI5.js.map} +1 -1
  109. package/dist/index-9WoT-_pt.js +83 -0
  110. package/dist/index-9WoT-_pt.js.map +1 -0
  111. package/dist/{index-BRX2mrGM.js → index-BCVHDZZk.js} +18 -18
  112. package/dist/{index-BRX2mrGM.js.map → index-BCVHDZZk.js.map} +1 -1
  113. package/dist/index-BEckqi71.js +346 -0
  114. package/dist/index-BEckqi71.js.map +1 -0
  115. package/dist/{index-EOl5XOZN.js → index-BaTX0t-a.js} +6 -6
  116. package/dist/{index-EOl5XOZN.js.map → index-BaTX0t-a.js.map} +1 -1
  117. package/dist/{index-s4oA7Iyp.js → index-BnOZcps-.js} +8 -8
  118. package/dist/{index-s4oA7Iyp.js.map → index-BnOZcps-.js.map} +1 -1
  119. package/dist/{index-Cn_Rs8nk.js → index-Bv9-6Ht7.js} +5 -5
  120. package/dist/{index-Cn_Rs8nk.js.map → index-Bv9-6Ht7.js.map} +1 -1
  121. package/dist/{index-0eDJ_Ho5.js → index-CEDNCQK8.js} +5 -5
  122. package/dist/{index-0eDJ_Ho5.js.map → index-CEDNCQK8.js.map} +1 -1
  123. package/dist/{index-CpUKjpYd.js → index-ClEmYHgx.js} +4 -4
  124. package/dist/{index-CpUKjpYd.js.map → index-ClEmYHgx.js.map} +1 -1
  125. package/dist/{index-BRuc7lF2.js → index-Co-4RSTf.js} +5 -5
  126. package/dist/{index-BRuc7lF2.js.map → index-Co-4RSTf.js.map} +1 -1
  127. package/dist/{index-CzM9TqMe.js → index-Crpz4FA4.js} +6 -6
  128. package/dist/{index-CzM9TqMe.js.map → index-Crpz4FA4.js.map} +1 -1
  129. package/dist/index-D37a5H7U.js +182 -0
  130. package/dist/index-D37a5H7U.js.map +1 -0
  131. package/dist/index-DADSJYlJ.js +177 -0
  132. package/dist/index-DADSJYlJ.js.map +1 -0
  133. package/dist/index-DELS_iFy.js +92 -0
  134. package/dist/index-DELS_iFy.js.map +1 -0
  135. package/dist/index-DKYeygzz.js +91 -0
  136. package/dist/index-DKYeygzz.js.map +1 -0
  137. package/dist/{index-BSK_5Rq3.js → index-DeWASjPW.js} +5 -5
  138. package/dist/{index-BSK_5Rq3.js.map → index-DeWASjPW.js.map} +1 -1
  139. package/dist/index-DyN2Ja6Z.js +93 -0
  140. package/dist/index-DyN2Ja6Z.js.map +1 -0
  141. package/dist/index-Rm0SvvJH.js +82 -0
  142. package/dist/index-Rm0SvvJH.js.map +1 -0
  143. package/dist/index-eDr6IKsf.js +90 -0
  144. package/dist/index-eDr6IKsf.js.map +1 -0
  145. package/dist/{index-Rxsr4tZ-.js → index-mtJHlsB1.js} +5 -5
  146. package/dist/{index-Rxsr4tZ-.js.map → index-mtJHlsB1.js.map} +1 -1
  147. package/dist/{index-DZYPPNrI.js → index-n6RmR7mX.js} +5 -5
  148. package/dist/{index-DZYPPNrI.js.map → index-n6RmR7mX.js.map} +1 -1
  149. package/dist/index.js +70 -69
  150. package/dist/{pies.utils-BxCBtjpf.js → pies.utils-DLk70PA8.js} +5 -5
  151. package/dist/{pies.utils-BxCBtjpf.js.map → pies.utils-DLk70PA8.js.map} +1 -1
  152. package/dist/{preview.data.constants-CXMriS2F.js → preview.data.constants-BBIMPXYy.js} +22 -21
  153. package/dist/preview.data.constants-BBIMPXYy.js.map +1 -0
  154. package/dist/remarkable-pro.css +1 -1
  155. package/dist/{tables.utils-DMLGNJ4g.js → tables.utils-C7MWIQsp.js} +4 -4
  156. package/dist/{tables.utils-DMLGNJ4g.js.map → tables.utils-C7MWIQsp.js.map} +1 -1
  157. package/dist/theme/defaults/defaults.GranularityOptions.constants.d.ts +1 -0
  158. package/dist/theme/defaults/defaults.GranularityOptions.constants.d.ts.map +1 -1
  159. package/dist/{timeRange.utils-C_oRVExZ.js → timeRange.utils-LHM3sXwE.js} +5 -5
  160. package/dist/{timeRange.utils-C_oRVExZ.js.map → timeRange.utils-LHM3sXwE.js.map} +1 -1
  161. package/package.json +2 -2
  162. package/dist/component.inputs.constants-DO_jX-yc.js.map +0 -1
  163. package/dist/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.utils.d.ts.map +0 -1
  164. package/dist/index-ByFoIwAq.js +0 -83
  165. package/dist/index-ByFoIwAq.js.map +0 -1
  166. package/dist/index-CRWWARnB.js +0 -75
  167. package/dist/index-CRWWARnB.js.map +0 -1
  168. package/dist/index-CVIirzal.js +0 -73
  169. package/dist/index-CVIirzal.js.map +0 -1
  170. package/dist/index-Cj1Zuh74.js +0 -165
  171. package/dist/index-Cj1Zuh74.js.map +0 -1
  172. package/dist/index-D9LxkwlG.js +0 -82
  173. package/dist/index-D9LxkwlG.js.map +0 -1
  174. package/dist/index-DDeRZxp1.js +0 -334
  175. package/dist/index-DDeRZxp1.js.map +0 -1
  176. package/dist/index-DMtpdR9I.js +0 -170
  177. package/dist/index-DMtpdR9I.js.map +0 -1
  178. package/dist/index-L5_Ts7FG.js +0 -83
  179. package/dist/index-L5_Ts7FG.js.map +0 -1
  180. package/dist/index-Uhz2U4Dp.js +0 -84
  181. package/dist/index-Uhz2U4Dp.js.map +0 -1
  182. package/dist/preview.data.constants-CXMriS2F.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"GranularitySelectFieldPro.js","sources":["../src/theme/defaults/defaults.GranularityOptions.constants.ts","../src/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.utils.ts","../src/components/editors/GranularitySelectFieldPro/index.tsx","../src/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.emb.ts"],"sourcesContent":["import { SelectListOptionProps } from '@embeddable.com/remarkable-ui';\n\nexport const Granularity = {\n second: 'second',\n minute: 'minute',\n hour: 'hour',\n day: 'day',\n week: 'week',\n month: 'month',\n quarter: 'quarter',\n year: 'year',\n} as const;\n\nexport type TGranularity = keyof typeof Granularity;\nexport type TGranularityValue = (typeof Granularity)[TGranularity];\n\nexport const defaultGranularitySelectFieldOptions: SelectListOptionProps[] = [\n { value: Granularity.second, label: 'defaults.granularityOptions.second|Second' },\n { value: Granularity.minute, label: 'defaults.granularityOptions.minute|Minute' },\n { value: Granularity.hour, label: 'defaults.granularityOptions.hour|Hour' },\n { value: Granularity.day, label: 'defaults.granularityOptions.day|Day' },\n { value: Granularity.week, label: 'defaults.granularityOptions.week|Week' },\n { value: Granularity.month, label: 'defaults.granularityOptions.month|Month' },\n { value: Granularity.quarter, label: 'defaults.granularityOptions.quarter|Quarter' },\n { value: Granularity.year, label: 'defaults.granularityOptions.year|Year' },\n];\n","import { SelectListOptionProps } from '@embeddable.com/remarkable-ui';\nimport { TimeRange } from '@embeddable.com/core';\nimport {\n defaultGranularitySelectFieldOptions,\n Granularity,\n TGranularity,\n TGranularityValue,\n} from '../../../theme/defaults/defaults.GranularityOptions.constants';\nimport { resolveI18nString } from '../../component.utils';\n\nconst DEFAULT_MIN_BUCKETS = 1;\nconst DEFAULT_MAX_BUCKETS = 100;\n\nexport const getGranularitySelectFieldOptions = (): SelectListOptionProps[] => {\n return defaultGranularitySelectFieldOptions.map((opt) => ({\n ...opt,\n label: resolveI18nString(opt.label),\n }));\n};\n\n// Convert possibly-string timestamps to Date safely.\nconst toDate = (d: unknown): Date | null => {\n if (d instanceof Date) return isNaN(d.getTime()) ? null : d;\n if (typeof d === 'string' || typeof d === 'number') {\n const parsed = new Date(d);\n return isNaN(parsed.getTime()) ? null : parsed;\n }\n return null;\n};\n\n// Inclusive end -> Exclusive end helper (only used for sub-day diffs)\nconst toExclusiveEnd = (endInclusive: Date): Date => new Date(endInclusive.getTime() + 1);\n\nconst bucketCountByUnit = (start: Date, endExclusive: Date, unitMs: number): number => {\n return (endExclusive.getTime() - start.getTime()) / unitMs;\n};\n\n// Bucket counting (treat end as INCLUSIVE)\nfunction bucketCount(start: Date, endInclusive: Date, granularity: TGranularity): number {\n if (start > endInclusive) return 0;\n\n switch (granularity) {\n case Granularity.second:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 1000);\n\n case Granularity.minute:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 60 * 1000);\n\n case Granularity.hour:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 60 * 60 * 1000);\n\n case Granularity.day:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 24 * 60 * 60 * 1000);\n\n case Granularity.week:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 7 * 24 * 60 * 60 * 1000);\n\n case Granularity.month:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 28 * 24 * 60 * 60 * 1000); // shortest month\n\n case Granularity.quarter:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 90 * 24 * 60 * 60 * 1000); // shortest quarter\n\n case Granularity.year:\n return bucketCountByUnit(start, toExclusiveEnd(endInclusive), 365 * 24 * 60 * 60 * 1000); // shortest year\n }\n}\n\nconst isGranularityValid = (\n start: Date,\n endInclusive: Date,\n granularity: TGranularityValue,\n): boolean => {\n const buckets = bucketCount(start, endInclusive, granularity);\n return buckets >= DEFAULT_MIN_BUCKETS && buckets <= DEFAULT_MAX_BUCKETS;\n};\n\nexport const getAvailableGranularityOptionsFromTimeRange = (\n timeRange: TimeRange,\n allOptions: SelectListOptionProps[],\n): SelectListOptionProps[] => {\n if (!timeRange) return allOptions;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const from = toDate((timeRange as any)?.from);\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const to = toDate((timeRange as any)?.to);\n\n // If we can’t parse range, don’t hide anything (fail open)\n if (!from || !to) return allOptions;\n\n const validSet = new Set<TGranularityValue>();\n\n for (const opt of allOptions) {\n const g = opt.value as TGranularityValue;\n if (isGranularityValid(from, to, g)) {\n validSet.add(g);\n }\n }\n\n // preserve original UI ordering\n return allOptions.filter((opt) => validSet.has(opt.value as TGranularityValue));\n};\n\nexport const getSafeSelection = (\n availableOptions: SelectListOptionProps[],\n granularity?: string,\n): string | undefined => {\n if (!granularity) {\n return undefined;\n }\n\n if (availableOptions.some((opt) => opt.value === granularity)) {\n return granularity;\n }\n\n const optionToSelect = availableOptions.length > 2 ? 1 : 0;\n\n return availableOptions[optionToSelect]?.value as string;\n};\n","import { useEffect, useMemo } from 'react';\nimport { useTheme } from '@embeddable.com/react';\nimport { SingleSelectField } from '@embeddable.com/remarkable-ui';\nimport { TimeRange } from '@embeddable.com/core';\nimport { Theme } from '../../../theme/theme.types';\nimport { i18nSetup } from '../../../theme/i18n/i18n';\nimport { resolveI18nProps } from '../../component.utils';\nimport { EditorCard } from '../shared/EditorCard/EditorCard';\nimport {\n getAvailableGranularityOptionsFromTimeRange,\n getGranularitySelectFieldOptions,\n getSafeSelection,\n} from './GranularitySelectFieldPro.utils';\nimport { TGranularityValue } from '../../../theme/defaults/defaults.GranularityOptions.constants';\nimport { ChartCardHeaderProps } from '../../charts/shared/ChartCard/ChartCard';\n\ntype GranularitySelectFieldProProps = {\n onChange: (newGranularity: string) => void;\n placeholder?: string;\n primaryTimeRange?: TimeRange;\n granularity?: TGranularityValue;\n granularities?: TGranularityValue[];\n clearable?: boolean;\n} & ChartCardHeaderProps;\n\nconst GranularitySelectFieldPro = (props: GranularitySelectFieldProProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { granularity, granularities, clearable, onChange } = props;\n const { description, placeholder, title, primaryTimeRange } = resolveI18nProps(props);\n\n const granularitySelectFieldOptions = getGranularitySelectFieldOptions();\n\n const availableOptions = useMemo(() => {\n return getAvailableGranularityOptionsFromTimeRange(\n primaryTimeRange,\n granularitySelectFieldOptions.filter((opt) =>\n granularities?.includes(opt.value as TGranularityValue),\n ),\n );\n }, [primaryTimeRange, granularities]);\n\n useEffect(() => {\n if (granularity) {\n // Selected granularity is not available\n // Select 1st available option when number of options is =< 2\n // Select 2nd option to avoid when number of options > 2\n if (!availableOptions.some((opt) => opt.value === granularity)) {\n const newGranularity = getSafeSelection(availableOptions, granularity);\n if (newGranularity) {\n onChange(newGranularity);\n }\n }\n }\n }, [availableOptions, granularity, onChange]);\n\n const safeValue = getSafeSelection(availableOptions, granularity);\n\n return (\n <EditorCard title={title} subtitle={description}>\n <SingleSelectField\n clearable={clearable}\n placeholder={placeholder}\n value={safeValue}\n options={availableOptions}\n onChange={onChange}\n avoidCollisions={false}\n />\n </EditorCard>\n );\n};\n\nexport default GranularitySelectFieldPro;\n","import {\n defineComponent,\n definePreview,\n EmbeddedComponentMeta,\n Inputs,\n} from '@embeddable.com/react';\nimport { Value } from '@embeddable.com/core';\nimport { inputs } from '../../component.inputs.constants';\nimport { Granularity } from '../../../theme/defaults/defaults.GranularityOptions.constants';\nimport GranularitySelectFieldPro from './index';\n\nexport const meta = {\n name: 'GranularitySelectFieldPro',\n label: 'Granularity Select Field',\n category: 'Dropdowns',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n inputs.title,\n inputs.description,\n { ...inputs.placeholder, defaultValue: 'Select a granularity' },\n {\n ...inputs.granularities,\n label: 'Available granularities',\n category: 'Pre-configured variables',\n // Ignore seconds and minutes\n defaultValue: [\n Granularity.hour,\n Granularity.day,\n Granularity.week,\n Granularity.month,\n Granularity.quarter,\n Granularity.year,\n ],\n },\n {\n ...inputs.granularity,\n label: 'Selected granularity',\n category: 'Pre-configured variables',\n },\n {\n ...inputs.timeRange,\n name: 'primaryTimeRange',\n label: 'Primary date-range',\n description:\n 'Connect your primary date-range variable to enable automatic selection of the most appropriate granularity',\n category: 'Pre-configured variables',\n },\n { ...inputs.clearable, defaultValue: false },\n ],\n events: [\n {\n name: 'onChange',\n label: 'Selected granularity updated',\n properties: [\n {\n name: 'value',\n label: 'Selected granularity',\n type: 'granularity',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'granularity value',\n type: 'granularity',\n defaultValue: 'day',\n inputs: ['granularity'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport const preview = definePreview(GranularitySelectFieldPro, {\n granularities: [\n Granularity.second,\n Granularity.minute,\n Granularity.hour,\n Granularity.day,\n Granularity.week,\n Granularity.month,\n Granularity.quarter,\n Granularity.year,\n ],\n onChange: () => null,\n});\n\nexport default defineComponent(GranularitySelectFieldPro, meta, {\n props: (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n };\n },\n events: {\n onChange: (granularity) => ({\n value: granularity ?? Value.noFilter(),\n }),\n },\n});\n"],"names":["Granularity","defaultGranularitySelectFieldOptions","DEFAULT_MIN_BUCKETS","DEFAULT_MAX_BUCKETS","getGranularitySelectFieldOptions","opt","resolveI18nString","toDate","d","parsed","toExclusiveEnd","endInclusive","bucketCountByUnit","start","endExclusive","unitMs","bucketCount","granularity","isGranularityValid","buckets","getAvailableGranularityOptionsFromTimeRange","timeRange","allOptions","from","to","validSet","g","getSafeSelection","availableOptions","optionToSelect","_a","GranularitySelectFieldPro","props","theme","useTheme","i18nSetup","granularities","clearable","onChange","description","placeholder","title","primaryTimeRange","resolveI18nProps","granularitySelectFieldOptions","useMemo","useEffect","newGranularity","safeValue","jsx","EditorCard","SingleSelectField","meta","inputs","preview","definePreview","GranularitySelectFieldPro_emb","defineComponent","Value"],"mappings":"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"}
1
+ {"version":3,"file":"GranularitySelectFieldPro.js","sources":["../src/components/editors/GranularitySelectFieldPro/index.tsx","../src/components/editors/GranularitySelectFieldPro/GranularitySelectFieldPro.emb.ts"],"sourcesContent":["import { useTheme } from '@embeddable.com/react';\nimport { TimeRange } from '@embeddable.com/core';\nimport { Theme } from '../../../theme/theme.types';\nimport { i18nSetup } from '../../../theme/i18n/i18n';\nimport { resolveI18nProps } from '../../component.utils';\nimport { EditorCard } from '../shared/EditorCard/EditorCard';\nimport { TGranularityValue } from '../../../theme/defaults/defaults.GranularityOptions.constants';\nimport { ChartCardHeaderProps } from '../../charts/shared/ChartCard/ChartCard';\nimport { GranularitySelectField } from '../shared/GranularitySelectField/GranularitySelectField';\n\ntype GranularitySelectFieldProProps = {\n onChange: (newGranularity: string) => void;\n placeholder?: string;\n primaryTimeRange?: TimeRange;\n granularity?: TGranularityValue;\n granularities?: TGranularityValue[];\n clearable?: boolean;\n} & ChartCardHeaderProps;\n\nconst GranularitySelectFieldPro = (props: GranularitySelectFieldProProps) => {\n const theme: Theme = useTheme() as Theme;\n i18nSetup(theme);\n\n const { granularity, granularities, clearable, primaryTimeRange, onChange } = props;\n const { description, placeholder, title } = resolveI18nProps(props);\n\n return (\n <EditorCard title={title} subtitle={description}>\n <GranularitySelectField\n clearable={clearable}\n placeholder={placeholder}\n granularity={granularity}\n granularities={granularities}\n primaryTimeRange={primaryTimeRange}\n onChange={onChange}\n />\n </EditorCard>\n );\n};\n\nexport default GranularitySelectFieldPro;\n","import {\n defineComponent,\n definePreview,\n EmbeddedComponentMeta,\n Inputs,\n} from '@embeddable.com/react';\nimport { Value } from '@embeddable.com/core';\nimport { inputs } from '../../component.inputs.constants';\nimport { Granularity } from '../../../theme/defaults/defaults.GranularityOptions.constants';\nimport GranularitySelectFieldPro from './index';\n\nexport const meta = {\n name: 'GranularitySelectFieldPro',\n label: 'Granularity Select Field',\n category: 'Dropdowns',\n defaultWidth: 300,\n defaultHeight: 120,\n inputs: [\n inputs.title,\n inputs.description,\n { ...inputs.placeholder, defaultValue: 'Select a granularity' },\n {\n ...inputs.granularities,\n label: 'Available granularities',\n category: 'Pre-configured variables',\n },\n {\n ...inputs.granularity,\n label: 'Selected granularity',\n category: 'Pre-configured variables',\n },\n {\n ...inputs.timeRange,\n name: 'primaryTimeRange',\n label: 'Primary date-range',\n description:\n 'Connect your primary date-range variable to enable automatic selection of the most appropriate granularity',\n category: 'Pre-configured variables',\n },\n { ...inputs.clearable, defaultValue: false },\n ],\n events: [\n {\n name: 'onChange',\n label: 'Selected granularity updated',\n properties: [\n {\n name: 'value',\n label: 'Selected granularity',\n type: 'granularity',\n },\n ],\n },\n ],\n variables: [\n {\n name: 'granularity value',\n type: 'granularity',\n defaultValue: 'day',\n inputs: ['granularity'],\n events: [{ name: 'onChange', property: 'value' }],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport const preview = definePreview(GranularitySelectFieldPro, {\n granularities: [\n Granularity.second,\n Granularity.minute,\n Granularity.hour,\n Granularity.day,\n Granularity.week,\n Granularity.month,\n Granularity.quarter,\n Granularity.year,\n ],\n onChange: () => null,\n});\n\nexport default defineComponent(GranularitySelectFieldPro, meta, {\n props: (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n };\n },\n events: {\n onChange: (granularity) => ({\n value: granularity ?? Value.noFilter(),\n }),\n },\n});\n"],"names":["GranularitySelectFieldPro","props","theme","useTheme","i18nSetup","granularity","granularities","clearable","primaryTimeRange","onChange","description","placeholder","title","resolveI18nProps","jsx","EditorCard","GranularitySelectField","meta","inputs","preview","definePreview","Granularity","GranularitySelectFieldPro_emb","defineComponent","Value"],"mappings":";;;;;AAmBA,MAAMA,IAA4B,CAACC,MAA0C;AAC3E,QAAMC,IAAeC,EAAA;AACrB,EAAAC,EAAUF,CAAK;AAEf,QAAM,EAAE,aAAAG,GAAa,eAAAC,GAAe,WAAAC,GAAW,kBAAAC,GAAkB,UAAAC,MAAaR,GACxE,EAAE,aAAAS,GAAa,aAAAC,GAAa,OAAAC,EAAA,IAAUC,EAAiBZ,CAAK;AAElE,SACEa,gBAAAA,EAAAA,IAACC,GAAA,EAAW,OAAAH,GAAc,UAAUF,GAClC,UAAAI,gBAAAA,EAAAA;AAAAA,IAACE;AAAA,IAAA;AAAA,MACC,WAAAT;AAAA,MACA,aAAAI;AAAA,MACA,aAAAN;AAAA,MACA,eAAAC;AAAA,MACA,kBAAAE;AAAA,MACA,UAAAC;AAAA,IAAA;AAAA,EAAA,GAEJ;AAEJ,GC3BaQ,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,cAAc;AAAA,EACd,eAAe;AAAA,EACf,QAAQ;AAAA,IACNC,EAAO;AAAA,IACPA,EAAO;AAAA,IACP,EAAE,GAAGA,EAAO,aAAa,cAAc,uBAAA;AAAA,IACvC;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,OAAO;AAAA,MACP,UAAU;AAAA,IAAA;AAAA,IAEZ;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,OAAO;AAAA,MACP,UAAU;AAAA,IAAA;AAAA,IAEZ;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,MAAM;AAAA,MACN,OAAO;AAAA,MACP,aACE;AAAA,MACF,UAAU;AAAA,IAAA;AAAA,IAEZ,EAAE,GAAGA,EAAO,WAAW,cAAc,GAAA;AAAA,EAAM;AAAA,EAE7C,QAAQ;AAAA,IACN;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACV;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAAA,EAEF,WAAW;AAAA,IACT;AAAA,MACE,MAAM;AAAA,MACN,MAAM;AAAA,MACN,cAAc;AAAA,MACd,QAAQ,CAAC,aAAa;AAAA,MACtB,QAAQ,CAAC,EAAE,MAAM,YAAY,UAAU,SAAS;AAAA,IAAA;AAAA,EAClD;AAEJ,GAEaC,IAAUC,EAAcpB,GAA2B;AAAA,EAC9D,eAAe;AAAA,IACbqB,EAAY;AAAA,IACZA,EAAY;AAAA,IACZA,EAAY;AAAA,IACZA,EAAY;AAAA,IACZA,EAAY;AAAA,IACZA,EAAY;AAAA,IACZA,EAAY;AAAA,IACZA,EAAY;AAAA,EAAA;AAAA,EAEd,UAAU,MAAM;AAClB,CAAC,GAEDC,IAAeC,EAAgBvB,GAA2BiB,GAAM;AAAA,EAC9D,OAAO,CAACC,OACC;AAAA,IACL,GAAGA;AAAAA,EAAA;AAAA,EAGP,QAAQ;AAAA,IACN,UAAU,CAACb,OAAiB;AAAA,MAC1B,OAAOA,KAAemB,EAAM,SAAA;AAAA,IAAS;AAAA,EACvC;AAEJ,CAAC;"}
@@ -1,8 +1,8 @@
1
- import { g as a, l as i } from "./Color.type.emb-DWdIUAm5.js";
1
+ import { g as a, l as i } from "./Color.type.emb-De2K8PVb.js";
2
2
  import { definePreview as r, defineComponent as l } from "@embeddable.com/react";
3
- import { H as n } from "./index-BSK_5Rq3.js";
4
- import { b as e } from "./component.inputs.constants-DO_jX-yc.js";
5
- import { p as t } from "./preview.data.constants-CXMriS2F.js";
3
+ import { H as n } from "./index-DeWASjPW.js";
4
+ import { b as e } from "./component.inputs.constants-DzpzJ9Na.js";
5
+ import { p as t } from "./preview.data.constants-BBIMPXYy.js";
6
6
  const m = {
7
7
  name: "HeatMapPro",
8
8
  label: "Heat Map",
@@ -1,4 +1,4 @@
1
- import { i as a } from "./Color.type.emb-DWdIUAm5.js";
1
+ import { i as a } from "./Color.type.emb-De2K8PVb.js";
2
2
  /**
3
3
  * @license @tabler/icons-react v3.36.1 - MIT
4
4
  *
@@ -9,4 +9,4 @@ const l = [["path", { d: "M16 2a1 1 0 0 1 .993 .883l.007 .117v1h1a3 3 0 0 1 2.99
9
9
  export {
10
10
  v as I
11
11
  };
12
- //# sourceMappingURL=IconCalendarFilled-Bl7kPqxG.js.map
12
+ //# sourceMappingURL=IconCalendarFilled-CYiLMPm9.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"IconCalendarFilled-Bl7kPqxG.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconCalendarFilled.mjs"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.36.1 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M16 2a1 1 0 0 1 .993 .883l.007 .117v1h1a3 3 0 0 1 2.995 2.824l.005 .176v12a3 3 0 0 1 -2.824 2.995l-.176 .005h-12a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-12a3 3 0 0 1 2.824 -2.995l.176 -.005h1v-1a1 1 0 0 1 1.993 -.117l.007 .117v1h6v-1a1 1 0 0 1 1 -1zm3 7h-14v9.625c0 .705 .386 1.286 .883 1.366l.117 .009h12c.513 0 .936 -.53 .993 -1.215l.007 -.16v-9.625z\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M12 12a1 1 0 0 1 .993 .883l.007 .117v3a1 1 0 0 1 -1.993 .117l-.007 -.117v-2a1 1 0 0 1 -.117 -1.993l.117 -.007h1z\", \"key\": \"svg-1\" }]];\nconst IconCalendarFilled = createReactComponent(\"filled\", \"calendar-filled\", \"CalendarFilled\", __iconNode);\n\nexport { __iconNode, IconCalendarFilled as default };\n//# sourceMappingURL=IconCalendarFilled.mjs.map\n"],"names":["__iconNode","IconCalendarFilled","createReactComponent"],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa,CAAC,CAAC,QAAQ,EAAE,GAAK,iWAAiW,KAAO,QAAO,CAAE,GAAG,CAAC,QAAQ,EAAE,GAAK,oHAAoH,KAAO,QAAO,CAAE,CAAC,GACviBC,IAAqBC,EAAqB,UAAU,mBAAmB,kBAAkBF,CAAU;","x_google_ignoreList":[0]}
1
+ {"version":3,"file":"IconCalendarFilled-CYiLMPm9.js","sources":["../node_modules/@tabler/icons-react/dist/esm/icons/IconCalendarFilled.mjs"],"sourcesContent":["/**\n * @license @tabler/icons-react v3.36.1 - MIT\n *\n * This source code is licensed under the MIT license.\n * See the LICENSE file in the root directory of this source tree.\n */\n\nimport createReactComponent from '../createReactComponent.mjs';\n\nconst __iconNode = [[\"path\", { \"d\": \"M16 2a1 1 0 0 1 .993 .883l.007 .117v1h1a3 3 0 0 1 2.995 2.824l.005 .176v12a3 3 0 0 1 -2.824 2.995l-.176 .005h-12a3 3 0 0 1 -2.995 -2.824l-.005 -.176v-12a3 3 0 0 1 2.824 -2.995l.176 -.005h1v-1a1 1 0 0 1 1.993 -.117l.007 .117v1h6v-1a1 1 0 0 1 1 -1zm3 7h-14v9.625c0 .705 .386 1.286 .883 1.366l.117 .009h12c.513 0 .936 -.53 .993 -1.215l.007 -.16v-9.625z\", \"key\": \"svg-0\" }], [\"path\", { \"d\": \"M12 12a1 1 0 0 1 .993 .883l.007 .117v3a1 1 0 0 1 -1.993 .117l-.007 -.117v-2a1 1 0 0 1 -.117 -1.993l.117 -.007h1z\", \"key\": \"svg-1\" }]];\nconst IconCalendarFilled = createReactComponent(\"filled\", \"calendar-filled\", \"CalendarFilled\", __iconNode);\n\nexport { __iconNode, IconCalendarFilled as default };\n//# sourceMappingURL=IconCalendarFilled.mjs.map\n"],"names":["__iconNode","IconCalendarFilled","createReactComponent"],"mappings":";AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AASA,MAAMA,IAAa,CAAC,CAAC,QAAQ,EAAE,GAAK,iWAAiW,KAAO,QAAO,CAAE,GAAG,CAAC,QAAQ,EAAE,GAAK,oHAAoH,KAAO,QAAO,CAAE,CAAC,GACviBC,IAAqBC,EAAqB,UAAU,mBAAmB,kBAAkBF,CAAU;","x_google_ignoreList":[0]}
@@ -1,8 +1,8 @@
1
1
  import { definePreview as s, defineComponent as l } from "@embeddable.com/react";
2
- import { K as t } from "./index-CzM9TqMe.js";
3
- import { l as i } from "./Color.type.emb-DWdIUAm5.js";
4
- import { b as a } from "./component.inputs.constants-DO_jX-yc.js";
5
- import { p as o } from "./preview.data.constants-CXMriS2F.js";
2
+ import { K as t } from "./index-Crpz4FA4.js";
3
+ import { l as i } from "./Color.type.emb-De2K8PVb.js";
4
+ import { b as a } from "./component.inputs.constants-DzpzJ9Na.js";
5
+ import { p as o } from "./preview.data.constants-BBIMPXYy.js";
6
6
  const p = {
7
7
  name: "KpiChartNumberComparisonPro",
8
8
  label: "Kpi Chart - Number Comparison",
@@ -1,8 +1,8 @@
1
1
  import { definePreview as o, defineComponent as s } from "@embeddable.com/react";
2
- import { K as a } from "./index-0eDJ_Ho5.js";
3
- import { l as m } from "./Color.type.emb-DWdIUAm5.js";
4
- import { b as e } from "./component.inputs.constants-DO_jX-yc.js";
5
- import { p as t } from "./preview.data.constants-CXMriS2F.js";
2
+ import { K as a } from "./index-CEDNCQK8.js";
3
+ import { l as m } from "./Color.type.emb-De2K8PVb.js";
4
+ import { b as e } from "./component.inputs.constants-DzpzJ9Na.js";
5
+ import { p as t } from "./preview.data.constants-BBIMPXYy.js";
6
6
  const i = {
7
7
  name: "KpiChartNumberPro",
8
8
  label: "Kpi Chart - Number",
@@ -1,9 +1,10 @@
1
- import { definePreview as d, defineComponent as u } from "@embeddable.com/react";
2
- import { L as l } from "./index-DDeRZxp1.js";
3
- import { V as c, l as t } from "./Color.type.emb-DWdIUAm5.js";
4
- import { b as e, s as i } from "./component.inputs.constants-DO_jX-yc.js";
5
- import { p as n } from "./preview.data.constants-CXMriS2F.js";
6
- const g = {
1
+ import { definePreview as d, defineComponent as c } from "@embeddable.com/react";
2
+ import { L as u } from "./index-BEckqi71.js";
3
+ import { V as g, l as p } from "./Color.type.emb-De2K8PVb.js";
4
+ import { b as e, s as r } from "./component.inputs.constants-DzpzJ9Na.js";
5
+ import { p as s } from "./preview.data.constants-BBIMPXYy.js";
6
+ import { g as y } from "./granularity.utils-CA504xa0.js";
7
+ const D = {
7
8
  name: "LineChartComparisonDefaultPro",
8
9
  label: "Line Chart Comparison - Default",
9
10
  category: "Line Charts",
@@ -13,40 +14,40 @@ const g = {
13
14
  ...e.measures,
14
15
  inputs: [
15
16
  ...e.measures.inputs,
16
- { ...i.boolean, name: "fillUnderLine", label: "Fill under line" },
17
+ { ...r.boolean, name: "fillUnderLine", label: "Fill under line" },
17
18
  {
18
- ...i.color,
19
+ ...r.color,
19
20
  category: "Component Settings",
20
21
  name: "lineColor",
21
22
  label: "Line color"
22
23
  },
23
24
  {
24
- ...i.color,
25
+ ...r.color,
25
26
  category: "Component Settings",
26
27
  name: "previousLineColor",
27
28
  label: "Previous line color"
28
29
  },
29
30
  {
30
- ...i.boolean,
31
+ ...r.boolean,
31
32
  name: "lineDashed",
32
33
  label: "Primary line dashed",
33
34
  defaultValue: !1
34
35
  },
35
36
  {
36
- ...i.boolean,
37
+ ...r.boolean,
37
38
  name: "previousLineDashed",
38
39
  label: "Compared line dashed",
39
40
  defaultValue: !0
40
41
  },
41
42
  {
42
- ...i.boolean,
43
+ ...r.boolean,
43
44
  name: "connectGaps",
44
45
  label: "Connect gaps",
45
46
  defaultValue: !0
46
47
  }
47
48
  ]
48
49
  },
49
- { ...e.dimension, label: "X-axis", name: "xAxis" },
50
+ { ...e.dimensionWithGranularitySelectField, label: "X-axis", name: "xAxis" },
50
51
  {
51
52
  ...e.timeRange,
52
53
  name: "primaryDateRange",
@@ -99,57 +100,61 @@ const g = {
99
100
  ]
100
101
  }
101
102
  ]
102
- }, C = d(l, {
103
- xAxis: n.dimension,
103
+ }, R = d(u, {
104
+ xAxis: s.dimension,
104
105
  measures: [
105
106
  {
106
- ...n.measure,
107
+ ...s.measure,
107
108
  inputs: {
108
109
  previousLineDashed: !0
109
110
  }
110
111
  }
111
112
  ],
112
- results: n.results1Measure2Dimensions,
113
- resultsComparison: n.results1Measure2DimensionsVariant,
113
+ results: s.results1Measure2Dimensions,
114
+ resultsComparison: s.results1Measure2DimensionsVariant,
114
115
  comparisonPeriod: "Previous period",
115
116
  comparisonDateRange: { relativeTimeString: "Previous period", from: void 0, to: void 0 },
116
117
  primaryDateRange: { relativeTimeString: "This week", from: void 0, to: void 0 },
117
- hideMenu: !0
118
- }), v = u(l, g, {
119
- props: (a, [o, m]) => {
120
- const s = [
118
+ hideMenu: !0,
119
+ setGranularity: () => {
120
+ }
121
+ }), L = c(u, D, {
122
+ props: (a, [i, t]) => {
123
+ const o = y(a.xAxis, i == null ? void 0 : i.granularity), m = [
121
124
  {
122
- property: a.xAxis,
125
+ property: o,
123
126
  direction: "asc"
124
127
  }
125
- ], r = a.xAxis.nativeType === "time" ? a.xAxis : a.timePropertyForNonTimeDimensions;
128
+ ], n = o.nativeType === "time" ? o : a.timePropertyForNonTimeDimensions;
126
129
  return {
127
130
  ...a,
128
- comparisonDateRange: o == null ? void 0 : o.comparisonDateRange,
129
- setComparisonDateRange: (p) => m({ comparisonDateRange: p }),
130
- results: t({
131
+ xAxis: o,
132
+ setGranularity: (l) => t({ ...i, granularity: l }),
133
+ comparisonDateRange: i == null ? void 0 : i.comparisonDateRange,
134
+ setComparisonDateRange: (l) => t({ ...i, comparisonDateRange: l }),
135
+ results: p({
131
136
  limit: a.maxResults,
132
137
  from: a.dataset,
133
- select: [...a.measures, a.xAxis],
134
- orderBy: s,
135
- filters: a.primaryDateRange && r ? [
138
+ select: [...a.measures, o],
139
+ orderBy: m,
140
+ filters: a.primaryDateRange && n ? [
136
141
  {
137
- property: r,
142
+ property: n,
138
143
  operator: "inDateRange",
139
144
  value: a.primaryDateRange
140
145
  }
141
146
  ] : void 0
142
147
  }),
143
- resultsComparison: a.primaryDateRange && r && (o != null && o.comparisonDateRange) ? t({
148
+ resultsComparison: a.primaryDateRange && n && (i != null && i.comparisonDateRange) ? p({
144
149
  limit: a.maxResults,
145
150
  from: a.dataset,
146
- select: [...a.measures, a.xAxis],
147
- orderBy: s,
151
+ select: [...a.measures, o],
152
+ orderBy: m,
148
153
  filters: [
149
154
  {
150
- property: r,
155
+ property: n,
151
156
  operator: "inDateRange",
152
- value: o.comparisonDateRange
157
+ value: i.comparisonDateRange
153
158
  }
154
159
  ]
155
160
  }) : void 0
@@ -157,13 +162,13 @@ const g = {
157
162
  },
158
163
  events: {
159
164
  onLineClicked: (a) => ({
160
- axisDimensionValue: a.dimensionValue || c.noFilter()
165
+ axisDimensionValue: a.dimensionValue ?? g.noFilter()
161
166
  })
162
167
  }
163
168
  });
164
169
  export {
165
- v as default,
166
- g as meta,
167
- C as preview
170
+ L as default,
171
+ D as meta,
172
+ R as preview
168
173
  };
169
174
  //# sourceMappingURL=LineChartComparisonDefaultPro.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LineChartComparisonDefaultPro.js","sources":["../src/components/charts/lines/LineChartComparisonDefaultPro/LineChartComparisonDefaultPro.emb.ts"],"sourcesContent":["import {\n defineComponent,\n definePreview,\n EmbeddedComponentMeta,\n Inputs,\n} from '@embeddable.com/react';\nimport LineChartComparisonDefaultPro from './index';\nimport { loadData, OrderBy, TimeRange, Value } from '@embeddable.com/core';\nimport { LineChartProOptionsClickArg } from '../lines.utils';\nimport { inputs } from '../../../component.inputs.constants';\nimport { subInputs } from '../../../component.subinputs.constants';\nimport { previewData } from '../../../preview.data.constants';\n\nexport const meta = {\n name: 'LineChartComparisonDefaultPro',\n label: 'Line Chart Comparison - Default',\n category: 'Line Charts',\n inputs: [\n inputs.dataset,\n {\n ...inputs.measures,\n inputs: [\n ...inputs.measures.inputs,\n { ...subInputs.boolean, name: 'fillUnderLine', label: 'Fill under line' },\n {\n ...subInputs.color,\n category: 'Component Settings',\n name: 'lineColor',\n label: 'Line color',\n },\n {\n ...subInputs.color,\n category: 'Component Settings',\n name: 'previousLineColor',\n label: 'Previous line color',\n },\n {\n ...subInputs.boolean,\n name: 'lineDashed',\n label: 'Primary line dashed',\n defaultValue: false,\n },\n {\n ...subInputs.boolean,\n name: 'previousLineDashed',\n label: 'Compared line dashed',\n defaultValue: true,\n },\n {\n ...subInputs.boolean,\n name: 'connectGaps',\n label: 'Connect gaps',\n defaultValue: true,\n },\n ],\n },\n { ...inputs.dimension, label: 'X-axis', name: 'xAxis' },\n {\n ...inputs.timeRange,\n name: 'primaryDateRange',\n label: 'Primary date-range',\n description: 'You can also connect this to a date range selector using its variable',\n category: 'Component Data',\n },\n {\n ...inputs.comparisonPeriod,\n description: 'You can also connect this to a comparison period selector using its variable',\n category: 'Component Data',\n },\n {\n ...inputs.dimensionTime,\n name: 'timePropertyForNonTimeDimensions',\n label: 'Time property for non time dimensions',\n description:\n 'Choose the time property used for filtering comparison ranges. This will be ignored if your x-axis is already time-based.',\n required: false,\n },\n\n inputs.title,\n inputs.description,\n inputs.showLegend,\n inputs.showTooltips,\n inputs.showValueLabels,\n inputs.showLogarithmicScale,\n inputs.xAxisLabel,\n inputs.yAxisLabel,\n inputs.reverseXAxis,\n inputs.yAxisRangeMin,\n inputs.yAxisRangeMax,\n {\n ...inputs.boolean,\n name: 'showComparisonAxis',\n label: 'Display a comparison X-axis',\n defaultValue: true,\n category: 'Component Settings',\n },\n inputs.maxResults,\n ],\n events: [\n {\n name: 'onLineClicked',\n label: 'A line is clicked',\n properties: [\n {\n name: 'axisDimensionValue',\n label: 'Clicked axis dimension value',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport const preview = definePreview(LineChartComparisonDefaultPro, {\n xAxis: previewData.dimension,\n measures: [\n {\n ...previewData.measure,\n inputs: {\n previousLineDashed: true,\n },\n },\n ],\n results: previewData.results1Measure2Dimensions,\n resultsComparison: previewData.results1Measure2DimensionsVariant,\n comparisonPeriod: 'Previous period',\n comparisonDateRange: { relativeTimeString: 'Previous period', from: undefined, to: undefined },\n primaryDateRange: { relativeTimeString: 'This week', from: undefined, to: undefined },\n hideMenu: true,\n});\n\ntype LineChartComparisonDefaultProState = {\n comparisonDateRange: TimeRange;\n};\n\nexport default defineComponent(LineChartComparisonDefaultPro, meta, {\n props: (\n inputs: Inputs<typeof meta>,\n [state, setState]: [\n LineChartComparisonDefaultProState,\n (state: LineChartComparisonDefaultProState) => void,\n ],\n ) => {\n const orderBy: OrderBy[] = [\n {\n property: inputs.xAxis,\n direction: 'asc',\n },\n ];\n\n const timeProperty =\n inputs.xAxis.nativeType === 'time' ? inputs.xAxis : inputs.timePropertyForNonTimeDimensions;\n\n return {\n ...inputs,\n comparisonDateRange: state?.comparisonDateRange,\n setComparisonDateRange: (comparisonDateRange: TimeRange) => setState({ comparisonDateRange }),\n results: loadData({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [...inputs.measures, inputs.xAxis],\n orderBy,\n filters:\n inputs.primaryDateRange && timeProperty\n ? [\n {\n property: timeProperty,\n operator: 'inDateRange',\n value: inputs.primaryDateRange,\n },\n ]\n : undefined,\n }),\n resultsComparison:\n inputs.primaryDateRange && timeProperty && state?.comparisonDateRange\n ? loadData({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [...inputs.measures, inputs.xAxis],\n orderBy,\n filters: [\n {\n property: timeProperty,\n operator: 'inDateRange',\n value: state.comparisonDateRange,\n },\n ],\n })\n : undefined,\n };\n },\n events: {\n onLineClicked: (value: LineChartProOptionsClickArg) => {\n return {\n axisDimensionValue: value.dimensionValue || Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","inputs","subInputs","preview","definePreview","LineChartComparisonDefaultPro","previewData","LineChartComparisonDefaultPro_emb","defineComponent","state","setState","orderBy","timeProperty","comparisonDateRange","loadData","value","Value"],"mappings":"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"}
1
+ {"version":3,"file":"LineChartComparisonDefaultPro.js","sources":["../src/components/charts/lines/LineChartComparisonDefaultPro/LineChartComparisonDefaultPro.emb.ts"],"sourcesContent":["import {\n defineComponent,\n definePreview,\n EmbeddedComponentMeta,\n Inputs,\n} from '@embeddable.com/react';\nimport LineChartComparisonDefaultPro from './index';\nimport { Granularity, loadData, OrderBy, TimeRange, Value } from '@embeddable.com/core';\nimport { LineChartProOptionsClickArg } from '../lines.utils';\nimport { inputs } from '../../../component.inputs.constants';\nimport { subInputs } from '../../../component.subinputs.constants';\nimport { previewData } from '../../../preview.data.constants';\nimport { getDimensionWithGranularity } from '../../utils/granularity.utils';\n\nexport const meta = {\n name: 'LineChartComparisonDefaultPro',\n label: 'Line Chart Comparison - Default',\n category: 'Line Charts',\n inputs: [\n inputs.dataset,\n {\n ...inputs.measures,\n inputs: [\n ...inputs.measures.inputs,\n { ...subInputs.boolean, name: 'fillUnderLine', label: 'Fill under line' },\n {\n ...subInputs.color,\n category: 'Component Settings',\n name: 'lineColor',\n label: 'Line color',\n },\n {\n ...subInputs.color,\n category: 'Component Settings',\n name: 'previousLineColor',\n label: 'Previous line color',\n },\n {\n ...subInputs.boolean,\n name: 'lineDashed',\n label: 'Primary line dashed',\n defaultValue: false,\n },\n {\n ...subInputs.boolean,\n name: 'previousLineDashed',\n label: 'Compared line dashed',\n defaultValue: true,\n },\n {\n ...subInputs.boolean,\n name: 'connectGaps',\n label: 'Connect gaps',\n defaultValue: true,\n },\n ],\n },\n { ...inputs.dimensionWithGranularitySelectField, label: 'X-axis', name: 'xAxis' },\n {\n ...inputs.timeRange,\n name: 'primaryDateRange',\n label: 'Primary date-range',\n description: 'You can also connect this to a date range selector using its variable',\n category: 'Component Data',\n },\n {\n ...inputs.comparisonPeriod,\n description: 'You can also connect this to a comparison period selector using its variable',\n category: 'Component Data',\n },\n {\n ...inputs.dimensionTime,\n name: 'timePropertyForNonTimeDimensions',\n label: 'Time property for non time dimensions',\n description:\n 'Choose the time property used for filtering comparison ranges. This will be ignored if your x-axis is already time-based.',\n required: false,\n },\n\n inputs.title,\n inputs.description,\n inputs.showLegend,\n inputs.showTooltips,\n inputs.showValueLabels,\n inputs.showLogarithmicScale,\n inputs.xAxisLabel,\n inputs.yAxisLabel,\n inputs.reverseXAxis,\n inputs.yAxisRangeMin,\n inputs.yAxisRangeMax,\n {\n ...inputs.boolean,\n name: 'showComparisonAxis',\n label: 'Display a comparison X-axis',\n defaultValue: true,\n category: 'Component Settings',\n },\n inputs.maxResults,\n ],\n events: [\n {\n name: 'onLineClicked',\n label: 'A line is clicked',\n properties: [\n {\n name: 'axisDimensionValue',\n label: 'Clicked axis dimension value',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport const preview = definePreview(LineChartComparisonDefaultPro, {\n xAxis: previewData.dimension,\n measures: [\n {\n ...previewData.measure,\n inputs: {\n previousLineDashed: true,\n },\n },\n ],\n results: previewData.results1Measure2Dimensions,\n resultsComparison: previewData.results1Measure2DimensionsVariant,\n comparisonPeriod: 'Previous period',\n comparisonDateRange: { relativeTimeString: 'Previous period', from: undefined, to: undefined },\n primaryDateRange: { relativeTimeString: 'This week', from: undefined, to: undefined },\n hideMenu: true,\n setGranularity: () => {},\n});\n\ntype LineChartComparisonDefaultProState = {\n comparisonDateRange: TimeRange;\n granularity?: Granularity;\n};\n\nexport default defineComponent(LineChartComparisonDefaultPro, meta, {\n props: (\n inputs: Inputs<typeof meta>,\n [state, setState]: [\n LineChartComparisonDefaultProState,\n (state: LineChartComparisonDefaultProState) => void,\n ],\n ) => {\n const xAxisWithGranularity = getDimensionWithGranularity(inputs.xAxis, state?.granularity);\n\n const orderBy: OrderBy[] = [\n {\n property: xAxisWithGranularity,\n direction: 'asc',\n },\n ];\n\n const timeProperty =\n xAxisWithGranularity.nativeType === 'time'\n ? xAxisWithGranularity\n : inputs.timePropertyForNonTimeDimensions;\n\n return {\n ...inputs,\n xAxis: xAxisWithGranularity,\n setGranularity: (granularity) => setState({ ...state, granularity }),\n comparisonDateRange: state?.comparisonDateRange,\n setComparisonDateRange: (comparisonDateRange: TimeRange) =>\n setState({ ...state, comparisonDateRange }),\n results: loadData({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [...inputs.measures, xAxisWithGranularity],\n orderBy,\n filters:\n inputs.primaryDateRange && timeProperty\n ? [\n {\n property: timeProperty,\n operator: 'inDateRange',\n value: inputs.primaryDateRange,\n },\n ]\n : undefined,\n }),\n resultsComparison:\n inputs.primaryDateRange && timeProperty && state?.comparisonDateRange\n ? loadData({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [...inputs.measures, xAxisWithGranularity],\n orderBy,\n filters: [\n {\n property: timeProperty,\n operator: 'inDateRange',\n value: state.comparisonDateRange,\n },\n ],\n })\n : undefined,\n };\n },\n events: {\n onLineClicked: (value: LineChartProOptionsClickArg) => {\n return {\n axisDimensionValue: value.dimensionValue ?? Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","inputs","subInputs","preview","definePreview","LineChartComparisonDefaultPro","previewData","LineChartComparisonDefaultPro_emb","defineComponent","state","setState","xAxisWithGranularity","getDimensionWithGranularity","orderBy","timeProperty","granularity","comparisonDateRange","loadData","value","Value"],"mappings":"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"}
@@ -1,9 +1,10 @@
1
- import { definePreview as l, defineComponent as o } from "@embeddable.com/react";
2
- import { L as n } from "./index-DMtpdR9I.js";
3
- import { V as t, l as r } from "./Color.type.emb-DWdIUAm5.js";
4
- import { b as e, s } from "./component.inputs.constants-DO_jX-yc.js";
5
- import { p as i } from "./preview.data.constants-CXMriS2F.js";
6
- const m = {
1
+ import { definePreview as m, defineComponent as u } from "@embeddable.com/react";
2
+ import { L as r } from "./index-D37a5H7U.js";
3
+ import { V as d, l as x } from "./Color.type.emb-De2K8PVb.js";
4
+ import { b as e, s as i } from "./component.inputs.constants-DzpzJ9Na.js";
5
+ import { p as n } from "./preview.data.constants-BBIMPXYy.js";
6
+ import { g as p } from "./granularity.utils-CA504xa0.js";
7
+ const c = {
7
8
  name: "LineChartDefaultPro",
8
9
  label: "Line Chart - Default",
9
10
  category: "Line Charts",
@@ -13,27 +14,27 @@ const m = {
13
14
  ...e.measures,
14
15
  inputs: [
15
16
  ...e.measures.inputs,
16
- { ...s.boolean, name: "fillUnderLine", label: "Fill under line" },
17
+ { ...i.boolean, name: "fillUnderLine", label: "Fill under line" },
17
18
  {
18
- ...s.color,
19
+ ...i.color,
19
20
  name: "lineColor",
20
21
  label: "Line color"
21
22
  },
22
23
  {
23
- ...s.boolean,
24
+ ...i.boolean,
24
25
  name: "connectGaps",
25
26
  label: "Connect gaps",
26
27
  defaultValue: !0
27
28
  },
28
29
  {
29
- ...s.boolean,
30
+ ...i.boolean,
30
31
  name: "dashedLine",
31
32
  label: "Dashed line",
32
33
  defaultValue: !1
33
34
  }
34
35
  ]
35
36
  },
36
- { ...e.dimensionWithDateBounds, label: "X-axis", name: "xAxis" },
37
+ { ...e.dimensionWithGranularitySelectField, label: "X-axis", name: "xAxis" },
37
38
  e.title,
38
39
  e.description,
39
40
  e.showLegend,
@@ -60,29 +61,36 @@ const m = {
60
61
  ]
61
62
  }
62
63
  ]
63
- }, b = l(n, {
64
- xAxis: i.dimension,
65
- measures: [i.measure],
66
- results: i.results1Measure1Dimension,
67
- hideMenu: !0
68
- }), f = o(n, m, {
69
- props: (a) => ({
70
- ...a,
71
- results: r({
72
- limit: a.maxResults,
73
- from: a.dataset,
74
- select: [...a.measures, a.xAxis]
75
- })
76
- }),
64
+ }, C = m(r, {
65
+ xAxis: n.dimension,
66
+ measures: [n.measure],
67
+ results: n.results1Measure1Dimension,
68
+ hideMenu: !0,
69
+ setGranularity: () => {
70
+ }
71
+ }), g = u(r, c, {
72
+ props: (a, [s, t]) => {
73
+ const l = p(a.xAxis, s == null ? void 0 : s.granularity);
74
+ return {
75
+ ...a,
76
+ xAxis: l,
77
+ setGranularity: (o) => t({ granularity: o }),
78
+ results: x({
79
+ limit: a.maxResults,
80
+ from: a.dataset,
81
+ select: [...a.measures, l]
82
+ })
83
+ };
84
+ },
77
85
  events: {
78
86
  onLineClicked: (a) => ({
79
- axisDimensionValue: a.dimensionValue || t.noFilter()
87
+ axisDimensionValue: a.dimensionValue ?? d.noFilter()
80
88
  })
81
89
  }
82
90
  });
83
91
  export {
84
- f as default,
85
- m as meta,
86
- b as preview
92
+ g as default,
93
+ c as meta,
94
+ C as preview
87
95
  };
88
96
  //# sourceMappingURL=LineChartDefaultPro.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LineChartDefaultPro.js","sources":["../src/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.emb.ts"],"sourcesContent":["import {\n defineComponent,\n definePreview,\n EmbeddedComponentMeta,\n Inputs,\n} from '@embeddable.com/react';\nimport LineChartDefaultPro from './index';\nimport { loadData, Value } from '@embeddable.com/core';\nimport { LineChartProOptionsClickArg } from '../lines.utils';\nimport { inputs } from '../../../component.inputs.constants';\nimport { subInputs } from '../../../component.subinputs.constants';\nimport { previewData } from '../../../preview.data.constants';\n\nexport const meta = {\n name: 'LineChartDefaultPro',\n label: 'Line Chart - Default',\n category: 'Line Charts',\n inputs: [\n inputs.dataset,\n {\n ...inputs.measures,\n inputs: [\n ...inputs.measures.inputs,\n { ...subInputs.boolean, name: 'fillUnderLine', label: 'Fill under line' },\n {\n ...subInputs.color,\n name: 'lineColor',\n label: 'Line color',\n },\n {\n ...subInputs.boolean,\n name: 'connectGaps',\n label: 'Connect gaps',\n defaultValue: true,\n },\n {\n ...subInputs.boolean,\n name: 'dashedLine',\n label: 'Dashed line',\n defaultValue: false,\n },\n ],\n },\n { ...inputs.dimensionWithDateBounds, label: 'X-axis', name: 'xAxis' },\n inputs.title,\n inputs.description,\n inputs.showLegend,\n inputs.showTooltips,\n inputs.showValueLabels,\n inputs.showLogarithmicScale,\n inputs.xAxisLabel,\n inputs.yAxisLabel,\n inputs.reverseXAxis,\n inputs.yAxisRangeMin,\n inputs.yAxisRangeMax,\n inputs.maxResults,\n ],\n events: [\n {\n name: 'onLineClicked',\n label: 'A line is clicked',\n properties: [\n {\n name: 'axisDimensionValue',\n label: 'Clicked axis dimension value',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport const preview = definePreview(LineChartDefaultPro, {\n xAxis: previewData.dimension,\n measures: [previewData.measure],\n results: previewData.results1Measure1Dimension,\n hideMenu: true,\n});\n\nexport default defineComponent(LineChartDefaultPro, meta, {\n props: (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n results: loadData({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [...inputs.measures, inputs.xAxis],\n }),\n };\n },\n events: {\n onLineClicked: (value: LineChartProOptionsClickArg) => {\n return {\n axisDimensionValue: value.dimensionValue || Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","inputs","subInputs","preview","definePreview","LineChartDefaultPro","previewData","LineChartDefaultPro_emb","defineComponent","loadData","value","Value"],"mappings":";;;;;AAaO,MAAMA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,QAAQ;AAAA,IACNC,EAAO;AAAA,IACP;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,QAAQ;AAAA,QACN,GAAGA,EAAO,SAAS;AAAA,QACnB,EAAE,GAAGC,EAAU,SAAS,MAAM,iBAAiB,OAAO,kBAAA;AAAA,QACtD;AAAA,UACE,GAAGA,EAAU;AAAA,UACb,MAAM;AAAA,UACN,OAAO;AAAA,QAAA;AAAA,QAET;AAAA,UACE,GAAGA,EAAU;AAAA,UACb,MAAM;AAAA,UACN,OAAO;AAAA,UACP,cAAc;AAAA,QAAA;AAAA,QAEhB;AAAA,UACE,GAAGA,EAAU;AAAA,UACb,MAAM;AAAA,UACN,OAAO;AAAA,UACP,cAAc;AAAA,QAAA;AAAA,MAChB;AAAA,IACF;AAAA,IAEF,EAAE,GAAGD,EAAO,yBAAyB,OAAO,UAAU,MAAM,QAAA;AAAA,IAC5DA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,EAAA;AAAA,EAET,QAAQ;AAAA,IACN;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACV;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAEJ,GAEaE,IAAUC,EAAcC,GAAqB;AAAA,EACxD,OAAOC,EAAY;AAAA,EACnB,UAAU,CAACA,EAAY,OAAO;AAAA,EAC9B,SAASA,EAAY;AAAA,EACrB,UAAU;AACZ,CAAC,GAEDC,IAAeC,EAAgBH,GAAqBL,GAAM;AAAA,EACxD,OAAO,CAACC,OACC;AAAA,IACL,GAAGA;AAAAA,IACH,SAASQ,EAAS;AAAA,MAChB,OAAOR,EAAO;AAAA,MACd,MAAMA,EAAO;AAAA,MACb,QAAQ,CAAC,GAAGA,EAAO,UAAUA,EAAO,KAAK;AAAA,IAAA,CAC1C;AAAA,EAAA;AAAA,EAGL,QAAQ;AAAA,IACN,eAAe,CAACS,OACP;AAAA,MACL,oBAAoBA,EAAM,kBAAkBC,EAAM,SAAA;AAAA,IAAS;AAAA,EAE/D;AAEJ,CAAC;"}
1
+ {"version":3,"file":"LineChartDefaultPro.js","sources":["../src/components/charts/lines/LineChartDefaultPro/LineChartDefaultPro.emb.ts"],"sourcesContent":["import {\n defineComponent,\n definePreview,\n EmbeddedComponentMeta,\n Inputs,\n} from '@embeddable.com/react';\nimport LineChartDefaultPro from './index';\nimport { Granularity, loadData, Value } from '@embeddable.com/core';\nimport { LineChartProOptionsClickArg } from '../lines.utils';\nimport { inputs } from '../../../component.inputs.constants';\nimport { subInputs } from '../../../component.subinputs.constants';\nimport { previewData } from '../../../preview.data.constants';\nimport { getDimensionWithGranularity } from '../../utils/granularity.utils';\n\nexport const meta = {\n name: 'LineChartDefaultPro',\n label: 'Line Chart - Default',\n category: 'Line Charts',\n inputs: [\n inputs.dataset,\n {\n ...inputs.measures,\n inputs: [\n ...inputs.measures.inputs,\n { ...subInputs.boolean, name: 'fillUnderLine', label: 'Fill under line' },\n {\n ...subInputs.color,\n name: 'lineColor',\n label: 'Line color',\n },\n {\n ...subInputs.boolean,\n name: 'connectGaps',\n label: 'Connect gaps',\n defaultValue: true,\n },\n {\n ...subInputs.boolean,\n name: 'dashedLine',\n label: 'Dashed line',\n defaultValue: false,\n },\n ],\n },\n { ...inputs.dimensionWithGranularitySelectField, label: 'X-axis', name: 'xAxis' },\n inputs.title,\n inputs.description,\n inputs.showLegend,\n inputs.showTooltips,\n inputs.showValueLabels,\n inputs.showLogarithmicScale,\n inputs.xAxisLabel,\n inputs.yAxisLabel,\n inputs.reverseXAxis,\n inputs.yAxisRangeMin,\n inputs.yAxisRangeMax,\n inputs.maxResults,\n ],\n events: [\n {\n name: 'onLineClicked',\n label: 'A line is clicked',\n properties: [\n {\n name: 'axisDimensionValue',\n label: 'Clicked axis dimension value',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport const preview = definePreview(LineChartDefaultPro, {\n xAxis: previewData.dimension,\n measures: [previewData.measure],\n results: previewData.results1Measure1Dimension,\n hideMenu: true,\n setGranularity: () => {},\n});\n\ntype LineChartDefaultProState = {\n granularity?: Granularity;\n};\n\nexport default defineComponent(LineChartDefaultPro, meta, {\n props: (\n inputs: Inputs<typeof meta>,\n [state, setState]: [LineChartDefaultProState, (state: LineChartDefaultProState) => void],\n ) => {\n const xAxisWithGranularity = getDimensionWithGranularity(inputs.xAxis, state?.granularity);\n\n return {\n ...inputs,\n xAxis: xAxisWithGranularity,\n setGranularity: (granularity) => setState({ granularity }),\n results: loadData({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [...inputs.measures, xAxisWithGranularity],\n }),\n };\n },\n events: {\n onLineClicked: (value: LineChartProOptionsClickArg) => {\n return {\n axisDimensionValue: value.dimensionValue ?? Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","inputs","subInputs","preview","definePreview","LineChartDefaultPro","previewData","LineChartDefaultPro_emb","defineComponent","state","setState","xAxisWithGranularity","getDimensionWithGranularity","granularity","loadData","value","Value"],"mappings":";;;;;;AAcO,MAAMA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,QAAQ;AAAA,IACNC,EAAO;AAAA,IACP;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,QAAQ;AAAA,QACN,GAAGA,EAAO,SAAS;AAAA,QACnB,EAAE,GAAGC,EAAU,SAAS,MAAM,iBAAiB,OAAO,kBAAA;AAAA,QACtD;AAAA,UACE,GAAGA,EAAU;AAAA,UACb,MAAM;AAAA,UACN,OAAO;AAAA,QAAA;AAAA,QAET;AAAA,UACE,GAAGA,EAAU;AAAA,UACb,MAAM;AAAA,UACN,OAAO;AAAA,UACP,cAAc;AAAA,QAAA;AAAA,QAEhB;AAAA,UACE,GAAGA,EAAU;AAAA,UACb,MAAM;AAAA,UACN,OAAO;AAAA,UACP,cAAc;AAAA,QAAA;AAAA,MAChB;AAAA,IACF;AAAA,IAEF,EAAE,GAAGD,EAAO,qCAAqC,OAAO,UAAU,MAAM,QAAA;AAAA,IACxEA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,EAAA;AAAA,EAET,QAAQ;AAAA,IACN;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACV;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAEJ,GAEaE,IAAUC,EAAcC,GAAqB;AAAA,EACxD,OAAOC,EAAY;AAAA,EACnB,UAAU,CAACA,EAAY,OAAO;AAAA,EAC9B,SAASA,EAAY;AAAA,EACrB,UAAU;AAAA,EACV,gBAAgB,MAAM;AAAA,EAAC;AACzB,CAAC,GAMDC,IAAeC,EAAgBH,GAAqBL,GAAM;AAAA,EACxD,OAAO,CACLC,GACA,CAACQ,GAAOC,CAAQ,MACb;AACH,UAAMC,IAAuBC,EAA4BX,EAAO,OAAOQ,KAAA,gBAAAA,EAAO,WAAW;AAEzF,WAAO;AAAA,MACL,GAAGR;AAAAA,MACH,OAAOU;AAAA,MACP,gBAAgB,CAACE,MAAgBH,EAAS,EAAE,aAAAG,GAAa;AAAA,MACzD,SAASC,EAAS;AAAA,QAChB,OAAOb,EAAO;AAAA,QACd,MAAMA,EAAO;AAAA,QACb,QAAQ,CAAC,GAAGA,EAAO,UAAUU,CAAoB;AAAA,MAAA,CAClD;AAAA,IAAA;AAAA,EAEL;AAAA,EACA,QAAQ;AAAA,IACN,eAAe,CAACI,OACP;AAAA,MACL,oBAAoBA,EAAM,kBAAkBC,EAAM,SAAA;AAAA,IAAS;AAAA,EAE/D;AAEJ,CAAC;"}
@@ -1,9 +1,10 @@
1
- import { definePreview as s, defineComponent as r } from "@embeddable.com/react";
2
- import { L as o } from "./index-Cj1Zuh74.js";
3
- import { V as a, l as t } from "./Color.type.emb-DWdIUAm5.js";
4
- import { b as e } from "./component.inputs.constants-DO_jX-yc.js";
5
- import { p as n } from "./preview.data.constants-CXMriS2F.js";
6
- const l = {
1
+ import { definePreview as m, defineComponent as u } from "@embeddable.com/react";
2
+ import { L as s } from "./index-DADSJYlJ.js";
3
+ import { V as o, l as p } from "./Color.type.emb-De2K8PVb.js";
4
+ import { b as e } from "./component.inputs.constants-DzpzJ9Na.js";
5
+ import { p as n } from "./preview.data.constants-BBIMPXYy.js";
6
+ import { g as d } from "./granularity.utils-CA504xa0.js";
7
+ const g = {
7
8
  name: "LineChartGroupedPro",
8
9
  label: "Line Chart - Grouped",
9
10
  category: "Line Charts",
@@ -28,7 +29,7 @@ const l = {
28
29
  }
29
30
  ]
30
31
  },
31
- { ...e.dimensionWithDateBounds, name: "xAxis", label: "X-axis" },
32
+ { ...e.dimensionWithGranularitySelectField, name: "xAxis", label: "X-axis" },
32
33
  e.groupBy,
33
34
  e.title,
34
35
  e.description,
@@ -61,31 +62,38 @@ const l = {
61
62
  ]
62
63
  }
63
64
  ]
64
- }, x = s(o, {
65
+ }, C = m(s, {
65
66
  xAxis: n.dimension,
66
67
  groupBy: n.dimensionGroup,
67
68
  measure: n.measure,
68
69
  results: n.results1Measure2Dimensions,
69
- hideMenu: !0
70
- }), c = r(o, l, {
71
- props: (i) => ({
72
- ...i,
73
- results: t({
74
- limit: i.maxResults,
75
- from: i.dataset,
76
- select: [i.xAxis, i.groupBy, i.measure]
77
- })
78
- }),
70
+ hideMenu: !0,
71
+ setGranularity: () => {
72
+ }
73
+ }), f = u(s, g, {
74
+ props: (i, [a, t]) => {
75
+ const r = d(i.xAxis, a == null ? void 0 : a.granularity);
76
+ return {
77
+ ...i,
78
+ xAxis: r,
79
+ setGranularity: (l) => t({ granularity: l }),
80
+ results: p({
81
+ limit: i.maxResults,
82
+ from: i.dataset,
83
+ select: [r, i.groupBy, i.measure]
84
+ })
85
+ };
86
+ },
79
87
  events: {
80
88
  onLineClicked: (i) => ({
81
- axisDimensionValue: i.dimensionValue || a.noFilter(),
82
- groupingDimensionValue: i.groupingDimensionValue || a.noFilter()
89
+ axisDimensionValue: i.dimensionValue || o.noFilter(),
90
+ groupingDimensionValue: i.groupingDimensionValue || o.noFilter()
83
91
  })
84
92
  }
85
93
  });
86
94
  export {
87
- c as default,
88
- l as meta,
89
- x as preview
95
+ f as default,
96
+ g as meta,
97
+ C as preview
90
98
  };
91
99
  //# sourceMappingURL=LineChartGroupedPro.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"LineChartGroupedPro.js","sources":["../src/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.emb.ts"],"sourcesContent":["import {\n defineComponent,\n definePreview,\n EmbeddedComponentMeta,\n Inputs,\n} from '@embeddable.com/react';\nimport LineChartGroupedPro from './index';\nimport { loadData, Value } from '@embeddable.com/core';\nimport { LineChartProOptionsClickArg } from '../lines.utils';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\n\nexport const meta = {\n name: 'LineChartGroupedPro',\n label: 'Line Chart - Grouped',\n category: 'Line Charts',\n inputs: [\n inputs.dataset,\n {\n ...inputs.measure,\n inputs: [\n ...inputs.measure.inputs,\n {\n ...inputs.boolean,\n name: 'fillUnderLine',\n label: 'Fill under line',\n category: 'Component Settings',\n },\n {\n ...inputs.boolean,\n name: 'connectGaps',\n label: 'Connect gaps',\n defaultValue: true,\n category: 'Component Settings',\n },\n ],\n },\n { ...inputs.dimensionWithDateBounds, name: 'xAxis', label: 'X-axis' },\n inputs.groupBy,\n inputs.title,\n inputs.description,\n inputs.maxResults,\n inputs.showLegend,\n inputs.showTooltips,\n inputs.showValueLabels,\n inputs.showLogarithmicScale,\n inputs.xAxisLabel,\n inputs.yAxisLabel,\n inputs.reverseXAxis,\n inputs.yAxisRangeMin,\n inputs.yAxisRangeMax,\n ],\n events: [\n {\n name: 'onLineClicked',\n label: 'A line is clicked',\n properties: [\n {\n name: 'axisDimensionValue',\n label: 'Clicked axis dimension value',\n type: 'string',\n },\n {\n name: 'groupingDimensionValue',\n label: 'Clicked grouping dimension value',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport const preview = definePreview(LineChartGroupedPro, {\n xAxis: previewData.dimension,\n groupBy: previewData.dimensionGroup,\n measure: previewData.measure,\n results: previewData.results1Measure2Dimensions,\n hideMenu: true,\n});\n\nexport default defineComponent(LineChartGroupedPro, meta, {\n props: (inputs: Inputs<typeof meta>) => {\n return {\n ...inputs,\n results: loadData({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [inputs.xAxis, inputs.groupBy, inputs.measure],\n }),\n };\n },\n events: {\n onLineClicked: (value: LineChartProOptionsClickArg) => {\n return {\n axisDimensionValue: value.dimensionValue || Value.noFilter(),\n groupingDimensionValue: value.groupingDimensionValue || Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","inputs","preview","definePreview","LineChartGroupedPro","previewData","LineChartGroupedPro_emb","defineComponent","loadData","value","Value"],"mappings":";;;;;AAYO,MAAMA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,QAAQ;AAAA,IACNC,EAAO;AAAA,IACP;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,QAAQ;AAAA,QACN,GAAGA,EAAO,QAAQ;AAAA,QAClB;AAAA,UACE,GAAGA,EAAO;AAAA,UACV,MAAM;AAAA,UACN,OAAO;AAAA,UACP,UAAU;AAAA,QAAA;AAAA,QAEZ;AAAA,UACE,GAAGA,EAAO;AAAA,UACV,MAAM;AAAA,UACN,OAAO;AAAA,UACP,cAAc;AAAA,UACd,UAAU;AAAA,QAAA;AAAA,MACZ;AAAA,IACF;AAAA,IAEF,EAAE,GAAGA,EAAO,yBAAyB,MAAM,SAAS,OAAO,SAAA;AAAA,IAC3DA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,EAAA;AAAA,EAET,QAAQ;AAAA,IACN;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACV;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,QAER;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAEJ,GAEaC,IAAUC,EAAcC,GAAqB;AAAA,EACxD,OAAOC,EAAY;AAAA,EACnB,SAASA,EAAY;AAAA,EACrB,SAASA,EAAY;AAAA,EACrB,SAASA,EAAY;AAAA,EACrB,UAAU;AACZ,CAAC,GAEDC,IAAeC,EAAgBH,GAAqBJ,GAAM;AAAA,EACxD,OAAO,CAACC,OACC;AAAA,IACL,GAAGA;AAAAA,IACH,SAASO,EAAS;AAAA,MAChB,OAAOP,EAAO;AAAA,MACd,MAAMA,EAAO;AAAA,MACb,QAAQ,CAACA,EAAO,OAAOA,EAAO,SAASA,EAAO,OAAO;AAAA,IAAA,CACtD;AAAA,EAAA;AAAA,EAGL,QAAQ;AAAA,IACN,eAAe,CAACQ,OACP;AAAA,MACL,oBAAoBA,EAAM,kBAAkBC,EAAM,SAAA;AAAA,MAClD,wBAAwBD,EAAM,0BAA0BC,EAAM,SAAA;AAAA,IAAS;AAAA,EAE3E;AAEJ,CAAC;"}
1
+ {"version":3,"file":"LineChartGroupedPro.js","sources":["../src/components/charts/lines/LineChartGroupedPro/LineChartGroupedPro.emb.ts"],"sourcesContent":["import {\n defineComponent,\n definePreview,\n EmbeddedComponentMeta,\n Inputs,\n} from '@embeddable.com/react';\nimport LineChartGroupedPro from './index';\nimport { Granularity, loadData, Value } from '@embeddable.com/core';\nimport { LineChartProOptionsClickArg } from '../lines.utils';\nimport { inputs } from '../../../component.inputs.constants';\nimport { previewData } from '../../../preview.data.constants';\nimport { getDimensionWithGranularity } from '../../utils/granularity.utils';\n\nexport const meta = {\n name: 'LineChartGroupedPro',\n label: 'Line Chart - Grouped',\n category: 'Line Charts',\n inputs: [\n inputs.dataset,\n {\n ...inputs.measure,\n inputs: [\n ...inputs.measure.inputs,\n {\n ...inputs.boolean,\n name: 'fillUnderLine',\n label: 'Fill under line',\n category: 'Component Settings',\n },\n {\n ...inputs.boolean,\n name: 'connectGaps',\n label: 'Connect gaps',\n defaultValue: true,\n category: 'Component Settings',\n },\n ],\n },\n { ...inputs.dimensionWithGranularitySelectField, name: 'xAxis', label: 'X-axis' },\n inputs.groupBy,\n inputs.title,\n inputs.description,\n inputs.maxResults,\n inputs.showLegend,\n inputs.showTooltips,\n inputs.showValueLabels,\n inputs.showLogarithmicScale,\n inputs.xAxisLabel,\n inputs.yAxisLabel,\n inputs.reverseXAxis,\n inputs.yAxisRangeMin,\n inputs.yAxisRangeMax,\n ],\n events: [\n {\n name: 'onLineClicked',\n label: 'A line is clicked',\n properties: [\n {\n name: 'axisDimensionValue',\n label: 'Clicked axis dimension value',\n type: 'string',\n },\n {\n name: 'groupingDimensionValue',\n label: 'Clicked grouping dimension value',\n type: 'string',\n },\n ],\n },\n ],\n} as const satisfies EmbeddedComponentMeta;\n\nexport const preview = definePreview(LineChartGroupedPro, {\n xAxis: previewData.dimension,\n groupBy: previewData.dimensionGroup,\n measure: previewData.measure,\n results: previewData.results1Measure2Dimensions,\n hideMenu: true,\n setGranularity: () => {},\n});\n\ntype LineChartGroupedProState = {\n granularity?: Granularity;\n};\n\nexport default defineComponent(LineChartGroupedPro, meta, {\n props: (\n inputs: Inputs<typeof meta>,\n [state, setState]: [LineChartGroupedProState, (state: LineChartGroupedProState) => void],\n ) => {\n const xAxisWithGranularity = getDimensionWithGranularity(inputs.xAxis, state?.granularity);\n\n return {\n ...inputs,\n xAxis: xAxisWithGranularity,\n setGranularity: (granularity) => setState({ granularity }),\n results: loadData({\n limit: inputs.maxResults,\n from: inputs.dataset,\n select: [xAxisWithGranularity, inputs.groupBy, inputs.measure],\n }),\n };\n },\n events: {\n onLineClicked: (value: LineChartProOptionsClickArg) => {\n return {\n axisDimensionValue: value.dimensionValue || Value.noFilter(),\n groupingDimensionValue: value.groupingDimensionValue || Value.noFilter(),\n };\n },\n },\n});\n"],"names":["meta","inputs","preview","definePreview","LineChartGroupedPro","previewData","LineChartGroupedPro_emb","defineComponent","state","setState","xAxisWithGranularity","getDimensionWithGranularity","granularity","loadData","value","Value"],"mappings":";;;;;;AAaO,MAAMA,IAAO;AAAA,EAClB,MAAM;AAAA,EACN,OAAO;AAAA,EACP,UAAU;AAAA,EACV,QAAQ;AAAA,IACNC,EAAO;AAAA,IACP;AAAA,MACE,GAAGA,EAAO;AAAA,MACV,QAAQ;AAAA,QACN,GAAGA,EAAO,QAAQ;AAAA,QAClB;AAAA,UACE,GAAGA,EAAO;AAAA,UACV,MAAM;AAAA,UACN,OAAO;AAAA,UACP,UAAU;AAAA,QAAA;AAAA,QAEZ;AAAA,UACE,GAAGA,EAAO;AAAA,UACV,MAAM;AAAA,UACN,OAAO;AAAA,UACP,cAAc;AAAA,UACd,UAAU;AAAA,QAAA;AAAA,MACZ;AAAA,IACF;AAAA,IAEF,EAAE,GAAGA,EAAO,qCAAqC,MAAM,SAAS,OAAO,SAAA;AAAA,IACvEA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,IACPA,EAAO;AAAA,EAAA;AAAA,EAET,QAAQ;AAAA,IACN;AAAA,MACE,MAAM;AAAA,MACN,OAAO;AAAA,MACP,YAAY;AAAA,QACV;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,QAER;AAAA,UACE,MAAM;AAAA,UACN,OAAO;AAAA,UACP,MAAM;AAAA,QAAA;AAAA,MACR;AAAA,IACF;AAAA,EACF;AAEJ,GAEaC,IAAUC,EAAcC,GAAqB;AAAA,EACxD,OAAOC,EAAY;AAAA,EACnB,SAASA,EAAY;AAAA,EACrB,SAASA,EAAY;AAAA,EACrB,SAASA,EAAY;AAAA,EACrB,UAAU;AAAA,EACV,gBAAgB,MAAM;AAAA,EAAC;AACzB,CAAC,GAMDC,IAAeC,EAAgBH,GAAqBJ,GAAM;AAAA,EACxD,OAAO,CACLC,GACA,CAACO,GAAOC,CAAQ,MACb;AACH,UAAMC,IAAuBC,EAA4BV,EAAO,OAAOO,KAAA,gBAAAA,EAAO,WAAW;AAEzF,WAAO;AAAA,MACL,GAAGP;AAAAA,MACH,OAAOS;AAAA,MACP,gBAAgB,CAACE,MAAgBH,EAAS,EAAE,aAAAG,GAAa;AAAA,MACzD,SAASC,EAAS;AAAA,QAChB,OAAOZ,EAAO;AAAA,QACd,MAAMA,EAAO;AAAA,QACb,QAAQ,CAACS,GAAsBT,EAAO,SAASA,EAAO,OAAO;AAAA,MAAA,CAC9D;AAAA,IAAA;AAAA,EAEL;AAAA,EACA,QAAQ;AAAA,IACN,eAAe,CAACa,OACP;AAAA,MACL,oBAAoBA,EAAM,kBAAkBC,EAAM,SAAA;AAAA,MAClD,wBAAwBD,EAAM,0BAA0BC,EAAM,SAAA;AAAA,IAAS;AAAA,EAE3E;AAEJ,CAAC;"}