@visactor/vseed 0.4.11 → 0.4.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 (176) hide show
  1. package/dist/cjs/index.cjs +2 -2
  2. package/dist/cjs/index.cjs.map +1 -1
  3. package/dist/esm/dataReshape/dataReshapeByEncoding.d.ts +2 -1
  4. package/dist/esm/dataReshape/dataReshapeByEncoding.js +7 -2
  5. package/dist/esm/dataReshape/dataReshapeByEncoding.js.map +1 -1
  6. package/dist/esm/dataReshape/unfoldDimensions.d.ts +1 -0
  7. package/dist/esm/dataReshape/unfoldDimensions.js +5 -4
  8. package/dist/esm/dataReshape/unfoldDimensions.js.map +1 -1
  9. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.js +11 -3
  10. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithBoxplotEncoding.js.map +1 -1
  11. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js +4 -2
  12. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithDualEncoding.js.map +1 -1
  13. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js +2 -1
  14. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithEncoding.js.map +1 -1
  15. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.js +8 -3
  16. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithHistogramEncoding.js.map +1 -1
  17. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js +4 -2
  18. package/dist/esm/pipeline/advanced/chart/pipes/reshape/pivotReshapeWithScatterEncoding.js.map +1 -1
  19. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithBoxplotEncoding.js +11 -2
  20. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithBoxplotEncoding.js.map +1 -1
  21. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js +4 -2
  22. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithDualEncoding.js.map +1 -1
  23. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js +2 -1
  24. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithEncoding.js.map +1 -1
  25. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.js +8 -2
  26. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithHistogramEncoding.js.map +1 -1
  27. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js +4 -2
  28. package/dist/esm/pipeline/advanced/chart/pipes/reshape/reshapeWithScatterEncoding.js.map +1 -1
  29. package/dist/esm/pipeline/spec/chart/pipeline/area.js +6 -2
  30. package/dist/esm/pipeline/spec/chart/pipeline/area.js.map +1 -1
  31. package/dist/esm/pipeline/spec/chart/pipeline/areaPercent.js +6 -2
  32. package/dist/esm/pipeline/spec/chart/pipeline/areaPercent.js.map +1 -1
  33. package/dist/esm/pipeline/spec/chart/pipeline/bar.js +6 -2
  34. package/dist/esm/pipeline/spec/chart/pipeline/bar.js.map +1 -1
  35. package/dist/esm/pipeline/spec/chart/pipeline/barParallel.js +6 -2
  36. package/dist/esm/pipeline/spec/chart/pipeline/barParallel.js.map +1 -1
  37. package/dist/esm/pipeline/spec/chart/pipeline/barPercent.js +6 -2
  38. package/dist/esm/pipeline/spec/chart/pipeline/barPercent.js.map +1 -1
  39. package/dist/esm/pipeline/spec/chart/pipeline/column.js +6 -2
  40. package/dist/esm/pipeline/spec/chart/pipeline/column.js.map +1 -1
  41. package/dist/esm/pipeline/spec/chart/pipeline/columnParallel.js +6 -2
  42. package/dist/esm/pipeline/spec/chart/pipeline/columnParallel.js.map +1 -1
  43. package/dist/esm/pipeline/spec/chart/pipeline/columnPercent.js +6 -2
  44. package/dist/esm/pipeline/spec/chart/pipeline/columnPercent.js.map +1 -1
  45. package/dist/esm/pipeline/spec/chart/pipeline/donut.js +6 -2
  46. package/dist/esm/pipeline/spec/chart/pipeline/donut.js.map +1 -1
  47. package/dist/esm/pipeline/spec/chart/pipeline/funnel.js +6 -2
  48. package/dist/esm/pipeline/spec/chart/pipeline/funnel.js.map +1 -1
  49. package/dist/esm/pipeline/spec/chart/pipeline/line.js +6 -2
  50. package/dist/esm/pipeline/spec/chart/pipeline/line.js.map +1 -1
  51. package/dist/esm/pipeline/spec/chart/pipeline/pie.js +6 -2
  52. package/dist/esm/pipeline/spec/chart/pipeline/pie.js.map +1 -1
  53. package/dist/esm/pipeline/spec/chart/pipeline/raceBar.js +3 -1
  54. package/dist/esm/pipeline/spec/chart/pipeline/raceBar.js.map +1 -1
  55. package/dist/esm/pipeline/spec/chart/pipeline/raceColumn.js +3 -1
  56. package/dist/esm/pipeline/spec/chart/pipeline/raceColumn.js.map +1 -1
  57. package/dist/esm/pipeline/spec/chart/pipeline/raceDonut.js +3 -1
  58. package/dist/esm/pipeline/spec/chart/pipeline/raceDonut.js.map +1 -1
  59. package/dist/esm/pipeline/spec/chart/pipeline/raceLine.js +3 -1
  60. package/dist/esm/pipeline/spec/chart/pipeline/raceLine.js.map +1 -1
  61. package/dist/esm/pipeline/spec/chart/pipeline/racePie.js +3 -1
  62. package/dist/esm/pipeline/spec/chart/pipeline/racePie.js.map +1 -1
  63. package/dist/esm/pipeline/spec/chart/pipeline/radar.js +6 -2
  64. package/dist/esm/pipeline/spec/chart/pipeline/radar.js.map +1 -1
  65. package/dist/esm/pipeline/spec/chart/pipeline/rose.js +6 -2
  66. package/dist/esm/pipeline/spec/chart/pipeline/rose.js.map +1 -1
  67. package/dist/esm/pipeline/spec/chart/pipeline/roseParallel.js +6 -2
  68. package/dist/esm/pipeline/spec/chart/pipeline/roseParallel.js.map +1 -1
  69. package/dist/esm/pipeline/spec/chart/pipes/axes/heatmapBandAxis.js +14 -0
  70. package/dist/esm/pipeline/spec/chart/pipes/axes/heatmapBandAxis.js.map +1 -1
  71. package/dist/esm/pipeline/spec/chart/pipes/axes/radarAngle.js +27 -1
  72. package/dist/esm/pipeline/spec/chart/pipes/axes/radarAngle.js.map +1 -1
  73. package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js +15 -2
  74. package/dist/esm/pipeline/spec/chart/pipes/axes/xBand.js.map +1 -1
  75. package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js +15 -2
  76. package/dist/esm/pipeline/spec/chart/pipes/axes/yBand.js.map +1 -1
  77. package/dist/esm/pipeline/spec/chart/pipes/label/label.d.ts +3 -3
  78. package/dist/esm/pipeline/spec/chart/pipes/label/label.js +4 -3
  79. package/dist/esm/pipeline/spec/chart/pipes/label/label.js.map +1 -1
  80. package/dist/esm/pipeline/spec/chart/pipes/label/labelBoxPlot.js +1 -1
  81. package/dist/esm/pipeline/spec/chart/pipes/label/labelBoxPlot.js.map +1 -1
  82. package/dist/esm/pipeline/spec/chart/pipes/label/labelCirclePacking.js +18 -1
  83. package/dist/esm/pipeline/spec/chart/pipes/label/labelCirclePacking.js.map +1 -1
  84. package/dist/esm/pipeline/spec/chart/pipes/label/labelDualAxis.js +1 -1
  85. package/dist/esm/pipeline/spec/chart/pipes/label/labelDualAxis.js.map +1 -1
  86. package/dist/esm/pipeline/spec/chart/pipes/label/labelPie.js +1 -1
  87. package/dist/esm/pipeline/spec/chart/pipes/label/labelPie.js.map +1 -1
  88. package/dist/esm/pipeline/spec/chart/pipes/label/labelScatter.js +1 -1
  89. package/dist/esm/pipeline/spec/chart/pipes/label/labelScatter.js.map +1 -1
  90. package/dist/esm/pipeline/spec/chart/pipes/label/labelSunburst.js +18 -1
  91. package/dist/esm/pipeline/spec/chart/pipes/label/labelSunburst.js.map +1 -1
  92. package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapGroup.js +12 -4
  93. package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapGroup.js.map +1 -1
  94. package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapLeaf.js +4 -2
  95. package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapLeaf.js.map +1 -1
  96. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotColumnDimensions.js +5 -0
  97. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotColumnDimensions.js.map +1 -1
  98. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotRowDimensions.js +5 -0
  99. package/dist/esm/pipeline/spec/chart/pipes/pivotChart/pivotRowDimensions.js.map +1 -1
  100. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.d.ts +5 -3
  101. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js +51 -32
  102. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltip.js.map +1 -1
  103. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js +8 -7
  104. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipBoxplot.js.map +1 -1
  105. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js +15 -2
  106. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipDualAxis.js.map +1 -1
  107. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.js +3 -2
  108. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHeatmap.js.map +1 -1
  109. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHierarchy.js +6 -5
  110. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHierarchy.js.map +1 -1
  111. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipScatter.js +3 -2
  112. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipScatter.js.map +1 -1
  113. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipTreeMap.js +14 -6
  114. package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipTreeMap.js.map +1 -1
  115. package/dist/esm/pipeline/spec/table/pipes/columns/dimensionsToColumns.js +6 -2
  116. package/dist/esm/pipeline/spec/table/pipes/columns/dimensionsToColumns.js.map +1 -1
  117. package/dist/esm/pipeline/spec/table/pipes/columns/pivotColumns.js +8 -3
  118. package/dist/esm/pipeline/spec/table/pipes/columns/pivotColumns.js.map +1 -1
  119. package/dist/esm/pipeline/spec/table/pipes/rows/pivotRows.js +8 -3
  120. package/dist/esm/pipeline/spec/table/pipes/rows/pivotRows.js.map +1 -1
  121. package/dist/esm/pipeline/utils/constant.d.ts +1 -0
  122. package/dist/esm/pipeline/utils/constant.js +1 -0
  123. package/dist/esm/pipeline/utils/constant.js.map +1 -1
  124. package/dist/esm/pipeline/utils/format/createFormatterByDimension.d.ts +2 -0
  125. package/dist/esm/pipeline/utils/format/createFormatterByDimension.js +10 -0
  126. package/dist/esm/pipeline/utils/format/createFormatterByDimension.js.map +1 -0
  127. package/dist/esm/pipeline/utils/format/createTimeFormatter.d.ts +2 -0
  128. package/dist/esm/pipeline/utils/format/createTimeFormatter.js +154 -0
  129. package/dist/esm/pipeline/utils/format/createTimeFormatter.js.map +1 -0
  130. package/dist/esm/pipeline/utils/format/index.d.ts +2 -0
  131. package/dist/esm/pipeline/utils/format/index.js +2 -0
  132. package/dist/esm/types/chartType/area/zArea.d.ts +12 -0
  133. package/dist/esm/types/chartType/areaPercent/zAreaPercent.d.ts +12 -0
  134. package/dist/esm/types/chartType/bar/zBar.d.ts +12 -0
  135. package/dist/esm/types/chartType/barParallel/zBarParallel.d.ts +12 -0
  136. package/dist/esm/types/chartType/barPercent/zBarPercent.d.ts +12 -0
  137. package/dist/esm/types/chartType/boxPlot/zBoxPlot.d.ts +12 -0
  138. package/dist/esm/types/chartType/circlePacking/zCirclePacking.d.ts +12 -0
  139. package/dist/esm/types/chartType/column/zColumn.d.ts +12 -0
  140. package/dist/esm/types/chartType/columnParallel/zColumnParallel.d.ts +12 -0
  141. package/dist/esm/types/chartType/columnPercent/zColumnPercent.d.ts +12 -0
  142. package/dist/esm/types/chartType/donut/zDonut.d.ts +12 -0
  143. package/dist/esm/types/chartType/dualAxis/zDualAxis.d.ts +12 -0
  144. package/dist/esm/types/chartType/funnel/zFunnel.d.ts +12 -0
  145. package/dist/esm/types/chartType/heatmap/zHeatmap.d.ts +12 -0
  146. package/dist/esm/types/chartType/histogram/zHistogram.d.ts +12 -0
  147. package/dist/esm/types/chartType/line/zLine.d.ts +12 -0
  148. package/dist/esm/types/chartType/pie/zPie.d.ts +12 -0
  149. package/dist/esm/types/chartType/pivotTable/zPivotTable.d.ts +12 -0
  150. package/dist/esm/types/chartType/raceBar/zRaceBar.d.ts +12 -0
  151. package/dist/esm/types/chartType/raceColumn/zRaceColumn.d.ts +12 -0
  152. package/dist/esm/types/chartType/raceDonut/zRaceDonut.d.ts +12 -0
  153. package/dist/esm/types/chartType/raceLine/zRaceLine.d.ts +12 -0
  154. package/dist/esm/types/chartType/racePie/zRacePie.d.ts +12 -0
  155. package/dist/esm/types/chartType/raceScatter/zRaceScatter.d.ts +12 -0
  156. package/dist/esm/types/chartType/radar/zRadar.d.ts +12 -0
  157. package/dist/esm/types/chartType/rose/zRose.d.ts +12 -0
  158. package/dist/esm/types/chartType/roseParallel/zRoseParallel.d.ts +12 -0
  159. package/dist/esm/types/chartType/scatter/zScatter.d.ts +12 -0
  160. package/dist/esm/types/chartType/sunburst/zSunburst.d.ts +12 -0
  161. package/dist/esm/types/chartType/table/zTable.d.ts +12 -0
  162. package/dist/esm/types/chartType/treeMap/zTreeMap.d.ts +12 -0
  163. package/dist/esm/types/properties/cellStyle/bodyCellStyle.d.ts +1 -1
  164. package/dist/esm/types/properties/cellStyle/bodyCellStyle.js.map +1 -1
  165. package/dist/esm/types/properties/dimensions/baseDimension.d.ts +5 -0
  166. package/dist/esm/types/properties/dimensions/zDimensions.d.ts +36 -0
  167. package/dist/esm/types/properties/dimensions/zDimensions.js +3 -1
  168. package/dist/esm/types/properties/dimensions/zDimensions.js.map +1 -1
  169. package/dist/esm/types/properties/format/index.d.ts +1 -0
  170. package/dist/esm/types/properties/format/index.js +1 -0
  171. package/dist/esm/types/properties/format/timeFormat.d.ts +20 -0
  172. package/dist/esm/types/properties/format/timeFormat.js +16 -0
  173. package/dist/esm/types/properties/format/timeFormat.js.map +1 -0
  174. package/dist/umd/index.js +592 -147
  175. package/dist/umd/index.js.map +1 -1
  176. package/package.json +13 -13
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/table/pipes/columns/pivotColumns.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/columns/pivotColumns.ts"],"sourcesContent":["import type { PivotTableConstructorOptions } from '@visactor/vtable'\nimport type { Dimensions, PivotTableSpecPipe } from 'src/types'\n\nexport const pivotColumns: PivotTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const { encoding } = advancedVSeed\n const dimensions = advancedVSeed.dimensionTree as Dimensions\n const columns = dimensions.filter((item) => encoding.column?.includes(item.id))\n\n return {\n ...spec,\n columns: columns.map((item) => {\n return {\n dimensionKey: item.id,\n title: item.alias || item.id,\n width: 'auto',\n }\n }),\n } as PivotTableConstructorOptions\n}\n"],"names":["pivotColumns","spec","context","advancedVSeed","encoding","dimensions","columns","item"],"mappings":"AAGO,MAAMA,eAAmC,CAACC,MAAMC;IACrD,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAM,EAAEE,QAAQ,EAAE,GAAGD;IACrB,MAAME,aAAaF,cAAc,aAAa;IAC9C,MAAMG,UAAUD,WAAW,MAAM,CAAC,CAACE,OAASH,SAAS,MAAM,EAAE,SAASG,KAAK,EAAE;IAE7E,OAAO;QACL,GAAGN,IAAI;QACP,SAASK,QAAQ,GAAG,CAAC,CAACC,OACb;gBACL,cAAcA,KAAK,EAAE;gBACrB,OAAOA,KAAK,KAAK,IAAIA,KAAK,EAAE;gBAC5B,OAAO;YACT;IAEJ;AACF"}
1
+ {"version":3,"file":"pipeline/spec/table/pipes/columns/pivotColumns.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/columns/pivotColumns.ts"],"sourcesContent":["import type { PivotTableConstructorOptions } from '@visactor/vtable'\nimport type { Dimensions, PivotTableSpecPipe } from 'src/types'\nimport { createFormatterByDimension } from 'src/pipeline/utils'\n\nexport const pivotColumns: PivotTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const { encoding } = advancedVSeed\n const dimensions = advancedVSeed.dimensionTree as Dimensions\n const columns = dimensions.filter((item) => encoding.column?.includes(item.id))\n\n return {\n ...spec,\n columns: columns.map((item) => {\n const formatter = createFormatterByDimension(item, advancedVSeed.locale)\n return {\n dimensionKey: item.id,\n title: item.alias || item.id,\n width: 'auto',\n headerFormat: (value: string | number) => formatter(value),\n }\n }),\n } as PivotTableConstructorOptions\n}\n"],"names":["pivotColumns","spec","context","advancedVSeed","encoding","dimensions","columns","item","formatter","createFormatterByDimension","value"],"mappings":";AAIO,MAAMA,eAAmC,CAACC,MAAMC;IACrD,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAM,EAAEE,QAAQ,EAAE,GAAGD;IACrB,MAAME,aAAaF,cAAc,aAAa;IAC9C,MAAMG,UAAUD,WAAW,MAAM,CAAC,CAACE,OAASH,SAAS,MAAM,EAAE,SAASG,KAAK,EAAE;IAE7E,OAAO;QACL,GAAGN,IAAI;QACP,SAASK,QAAQ,GAAG,CAAC,CAACC;YACpB,MAAMC,YAAYC,2BAA2BF,MAAMJ,cAAc,MAAM;YACvE,OAAO;gBACL,cAAcI,KAAK,EAAE;gBACrB,OAAOA,KAAK,KAAK,IAAIA,KAAK,EAAE;gBAC5B,OAAO;gBACP,cAAc,CAACG,QAA2BF,UAAUE;YACtD;QACF;IACF;AACF"}
@@ -1,3 +1,4 @@
1
+ import { createFormatterByDimension } from "../../../../utils/index.js";
1
2
  const pivotRows = (spec, context)=>{
2
3
  const { advancedVSeed } = context;
3
4
  const dimensions = advancedVSeed.dimensionTree;
@@ -5,11 +6,15 @@ const pivotRows = (spec, context)=>{
5
6
  const rows = dimensions.filter((item)=>encoding.row?.includes(item.id));
6
7
  return {
7
8
  ...spec,
8
- rows: rows.map((item)=>({
9
+ rows: rows.map((item)=>{
10
+ const formatter = createFormatterByDimension(item, advancedVSeed.locale);
11
+ return {
9
12
  dimensionKey: item.id,
10
13
  title: item.alias || item.id,
11
- width: 'auto'
12
- }))
14
+ width: 'auto',
15
+ headerFormat: (value)=>formatter(value)
16
+ };
17
+ })
13
18
  };
14
19
  };
15
20
  export { pivotRows };
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/spec/table/pipes/rows/pivotRows.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/rows/pivotRows.ts"],"sourcesContent":["import type { Dimensions, PivotTableSpecPipe } from 'src/types'\n\nexport const pivotRows: PivotTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const dimensions = advancedVSeed.dimensionTree as Dimensions\n const { encoding } = advancedVSeed\n const rows = dimensions.filter((item) => encoding.row?.includes(item.id))\n\n return {\n ...spec,\n rows: rows.map((item) => {\n return {\n dimensionKey: item.id,\n title: item.alias || item.id,\n width: 'auto',\n }\n }),\n }\n}\n"],"names":["pivotRows","spec","context","advancedVSeed","dimensions","encoding","rows","item"],"mappings":"AAEO,MAAMA,YAAgC,CAACC,MAAMC;IAClD,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAME,aAAaD,cAAc,aAAa;IAC9C,MAAM,EAAEE,QAAQ,EAAE,GAAGF;IACrB,MAAMG,OAAOF,WAAW,MAAM,CAAC,CAACG,OAASF,SAAS,GAAG,EAAE,SAASE,KAAK,EAAE;IAEvE,OAAO;QACL,GAAGN,IAAI;QACP,MAAMK,KAAK,GAAG,CAAC,CAACC,OACP;gBACL,cAAcA,KAAK,EAAE;gBACrB,OAAOA,KAAK,KAAK,IAAIA,KAAK,EAAE;gBAC5B,OAAO;YACT;IAEJ;AACF"}
1
+ {"version":3,"file":"pipeline/spec/table/pipes/rows/pivotRows.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/table/pipes/rows/pivotRows.ts"],"sourcesContent":["import type { Dimensions, PivotTableSpecPipe } from 'src/types'\nimport { createFormatterByDimension } from 'src/pipeline/utils'\n\nexport const pivotRows: PivotTableSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const dimensions = advancedVSeed.dimensionTree as Dimensions\n const { encoding } = advancedVSeed\n const rows = dimensions.filter((item) => encoding.row?.includes(item.id))\n\n return {\n ...spec,\n rows: rows.map((item) => {\n const formatter = createFormatterByDimension(item, advancedVSeed.locale)\n return {\n dimensionKey: item.id,\n title: item.alias || item.id,\n width: 'auto',\n headerFormat: (value: string | number) => formatter(value),\n }\n }),\n }\n}\n"],"names":["pivotRows","spec","context","advancedVSeed","dimensions","encoding","rows","item","formatter","createFormatterByDimension","value"],"mappings":";AAGO,MAAMA,YAAgC,CAACC,MAAMC;IAClD,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAME,aAAaD,cAAc,aAAa;IAC9C,MAAM,EAAEE,QAAQ,EAAE,GAAGF;IACrB,MAAMG,OAAOF,WAAW,MAAM,CAAC,CAACG,OAASF,SAAS,GAAG,EAAE,SAASE,KAAK,EAAE;IAEvE,OAAO;QACL,GAAGN,IAAI;QACP,MAAMK,KAAK,GAAG,CAAC,CAACC;YACd,MAAMC,YAAYC,2BAA2BF,MAAMJ,cAAc,MAAM;YACvE,OAAO;gBACL,cAAcI,KAAK,EAAE;gBACrB,OAAOA,KAAK,KAAK,IAAIA,KAAK,EAAE;gBAC5B,OAAO;gBACP,cAAc,CAACG,QAA2BF,UAAUE;YACtD;QACF;IACF;AACF"}
@@ -17,6 +17,7 @@ export declare const ChartTypeEnum: {
17
17
  readonly RaceBar: "raceBar";
18
18
  readonly RaceColumn: "raceColumn";
19
19
  readonly RaceScatter: "raceScatter";
20
+ readonly RaceLine: "raceLine";
20
21
  readonly BarPercent: "barPercent";
21
22
  readonly BarParallel: "barParallel";
22
23
  readonly Area: "area";
@@ -17,6 +17,7 @@ const ChartTypeEnum = {
17
17
  RaceBar: 'raceBar',
18
18
  RaceColumn: 'raceColumn',
19
19
  RaceScatter: 'raceScatter',
20
+ RaceLine: 'raceLine',
20
21
  BarPercent: 'barPercent',
21
22
  BarParallel: 'barParallel',
22
23
  Area: 'area',
@@ -1 +1 @@
1
- {"version":3,"file":"pipeline/utils/constant.js","sources":["webpack://@visactor/vseed/./src/pipeline/utils/constant.ts"],"sourcesContent":["// 标注层 z-index\nexport const ANNOTATION_Z_INDEX = 1000\n// 线性轴 顶部空隙 预留5px\nexport const LINEAR_AXIS_INNER_OFFSET_TOP = 12\n// 双轴图 柱图 ZIndex\nexport const DUAL_AXIS_CHART_COLUMN_Z_INDEX = 1000\n// 双轴图 非柱图 ZIndex\nexport const DUAL_AXIS_CHART_NON_COLUMN_Z_INDEX = 1001\n// 双轴图 标注层 ZIndex\nexport const DUAL_AXIS_LABEL_Z_INDEX = 1002\n// 默认父级id\nexport const DEFAULT_PARENT_ID = '__DefaultParentId__'\n// 轴标签间距\nexport const AXIS_LABEL_SPACE = 8\n// 透视轴 band 类型内边距\nexport const BAND_AXIS_INNER_OFFSET_IN_PIVOT = 2\n\n// 图表类型枚举\nexport const ChartTypeEnum = {\n Table: 'table',\n PivotTable: 'pivotTable',\n // cartesian\n Line: 'line',\n Column: 'column',\n ColumnPercent: 'columnPercent',\n ColumnParallel: 'columnParallel',\n Bar: 'bar',\n RaceBar: 'raceBar',\n RaceColumn: 'raceColumn',\n RaceScatter: 'raceScatter',\n BarPercent: 'barPercent',\n BarParallel: 'barParallel',\n Area: 'area',\n AreaPercent: 'areaPercent',\n DualAxis: 'dualAxis',\n Scatter: 'scatter',\n // polar\n Rose: 'rose',\n RoseParallel: 'roseParallel',\n Pie: 'pie',\n Donut: 'donut',\n Radar: 'radar',\n // hierarchical\n CirclePacking: 'circlePacking',\n Sunburst: 'sunburst',\n TreeMap: 'treeMap',\n // other\n Funnel: 'funnel',\n Heatmap: 'heatmap',\n Boxplot: 'boxPlot',\n Histogram: 'histogram',\n} as const\n\n// Heatmap hide cell\nexport const DATUM_HIDE_KEY = '__VSEED_HideItem__'\n"],"names":["ANNOTATION_Z_INDEX","LINEAR_AXIS_INNER_OFFSET_TOP","DUAL_AXIS_CHART_COLUMN_Z_INDEX","DUAL_AXIS_CHART_NON_COLUMN_Z_INDEX","DUAL_AXIS_LABEL_Z_INDEX","DEFAULT_PARENT_ID","AXIS_LABEL_SPACE","BAND_AXIS_INNER_OFFSET_IN_PIVOT","ChartTypeEnum","DATUM_HIDE_KEY"],"mappings":"AACO,MAAMA,qBAAqB;AAE3B,MAAMC,+BAA+B;AAErC,MAAMC,iCAAiC;AAEvC,MAAMC,qCAAqC;AAE3C,MAAMC,0BAA0B;AAEhC,MAAMC,oBAAoB;AAE1B,MAAMC,mBAAmB;AAEzB,MAAMC,kCAAkC;AAGxC,MAAMC,gBAAgB;IAC3B,OAAO;IACP,YAAY;IAEZ,MAAM;IACN,QAAQ;IACR,eAAe;IACf,gBAAgB;IAChB,KAAK;IACL,SAAS;IACT,YAAY;IACZ,aAAa;IACb,YAAY;IACZ,aAAa;IACb,MAAM;IACN,aAAa;IACb,UAAU;IACV,SAAS;IAET,MAAM;IACN,cAAc;IACd,KAAK;IACL,OAAO;IACP,OAAO;IAEP,eAAe;IACf,UAAU;IACV,SAAS;IAET,QAAQ;IACR,SAAS;IACT,SAAS;IACT,WAAW;AACb;AAGO,MAAMC,iBAAiB"}
1
+ {"version":3,"file":"pipeline/utils/constant.js","sources":["webpack://@visactor/vseed/./src/pipeline/utils/constant.ts"],"sourcesContent":["// 标注层 z-index\nexport const ANNOTATION_Z_INDEX = 1000\n// 线性轴 顶部空隙 预留5px\nexport const LINEAR_AXIS_INNER_OFFSET_TOP = 12\n// 双轴图 柱图 ZIndex\nexport const DUAL_AXIS_CHART_COLUMN_Z_INDEX = 1000\n// 双轴图 非柱图 ZIndex\nexport const DUAL_AXIS_CHART_NON_COLUMN_Z_INDEX = 1001\n// 双轴图 标注层 ZIndex\nexport const DUAL_AXIS_LABEL_Z_INDEX = 1002\n// 默认父级id\nexport const DEFAULT_PARENT_ID = '__DefaultParentId__'\n// 轴标签间距\nexport const AXIS_LABEL_SPACE = 8\n// 透视轴 band 类型内边距\nexport const BAND_AXIS_INNER_OFFSET_IN_PIVOT = 2\n\n// 图表类型枚举\nexport const ChartTypeEnum = {\n Table: 'table',\n PivotTable: 'pivotTable',\n // cartesian\n Line: 'line',\n Column: 'column',\n ColumnPercent: 'columnPercent',\n ColumnParallel: 'columnParallel',\n Bar: 'bar',\n RaceBar: 'raceBar',\n RaceColumn: 'raceColumn',\n RaceScatter: 'raceScatter',\n RaceLine: 'raceLine',\n BarPercent: 'barPercent',\n BarParallel: 'barParallel',\n Area: 'area',\n AreaPercent: 'areaPercent',\n DualAxis: 'dualAxis',\n Scatter: 'scatter',\n // polar\n Rose: 'rose',\n RoseParallel: 'roseParallel',\n Pie: 'pie',\n Donut: 'donut',\n Radar: 'radar',\n // hierarchical\n CirclePacking: 'circlePacking',\n Sunburst: 'sunburst',\n TreeMap: 'treeMap',\n // other\n Funnel: 'funnel',\n Heatmap: 'heatmap',\n Boxplot: 'boxPlot',\n Histogram: 'histogram',\n} as const\n\n// Heatmap hide cell\nexport const DATUM_HIDE_KEY = '__VSEED_HideItem__'\n"],"names":["ANNOTATION_Z_INDEX","LINEAR_AXIS_INNER_OFFSET_TOP","DUAL_AXIS_CHART_COLUMN_Z_INDEX","DUAL_AXIS_CHART_NON_COLUMN_Z_INDEX","DUAL_AXIS_LABEL_Z_INDEX","DEFAULT_PARENT_ID","AXIS_LABEL_SPACE","BAND_AXIS_INNER_OFFSET_IN_PIVOT","ChartTypeEnum","DATUM_HIDE_KEY"],"mappings":"AACO,MAAMA,qBAAqB;AAE3B,MAAMC,+BAA+B;AAErC,MAAMC,iCAAiC;AAEvC,MAAMC,qCAAqC;AAE3C,MAAMC,0BAA0B;AAEhC,MAAMC,oBAAoB;AAE1B,MAAMC,mBAAmB;AAEzB,MAAMC,kCAAkC;AAGxC,MAAMC,gBAAgB;IAC3B,OAAO;IACP,YAAY;IAEZ,MAAM;IACN,QAAQ;IACR,eAAe;IACf,gBAAgB;IAChB,KAAK;IACL,SAAS;IACT,YAAY;IACZ,aAAa;IACb,UAAU;IACV,YAAY;IACZ,aAAa;IACb,MAAM;IACN,aAAa;IACb,UAAU;IACV,SAAS;IAET,MAAM;IACN,cAAc;IACd,KAAK;IACL,OAAO;IACP,OAAO;IAEP,eAAe;IACf,UAAU;IACV,SAAS;IAET,QAAQ;IACR,SAAS;IACT,SAAS;IACT,WAAW;AACb;AAGO,MAAMC,iBAAiB"}
@@ -0,0 +1,2 @@
1
+ import type { Dimension, Formatter, Locale } from '../../../types';
2
+ export declare const createFormatterByDimension: (dimension?: Dimension, locale?: Locale) => Formatter;
@@ -0,0 +1,10 @@
1
+ import { createTimeFormatter } from "./createTimeFormatter.js";
2
+ import { intl } from "../../../i18n/index.js";
3
+ const createFormatterByDimension = (dimension, locale = intl.getLocale())=>{
4
+ if (!dimension) return (v)=>String(v);
5
+ if (dimension.timeFormat) return createTimeFormatter(dimension.timeFormat, locale);
6
+ return (v)=>String(v);
7
+ };
8
+ export { createFormatterByDimension };
9
+
10
+ //# sourceMappingURL=createFormatterByDimension.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline/utils/format/createFormatterByDimension.js","sources":["webpack://@visactor/vseed/./src/pipeline/utils/format/createFormatterByDimension.ts"],"sourcesContent":["import type { Dimension, Formatter, Locale } from 'src/types'\nimport { createTimeFormatter } from './createTimeFormatter'\nimport { intl } from 'src/i18n'\n\nexport const createFormatterByDimension = (dimension?: Dimension, locale: Locale = intl.getLocale()): Formatter => {\n if (!dimension) {\n return (v) => String(v)\n }\n if (dimension.timeFormat) {\n return createTimeFormatter(dimension.timeFormat, locale)\n }\n return (v) => String(v)\n}\n"],"names":["createFormatterByDimension","dimension","locale","intl","v","String","createTimeFormatter"],"mappings":";;AAIO,MAAMA,6BAA6B,CAACC,WAAuBC,SAAiBC,KAAK,SAAS,EAAE;IACjG,IAAI,CAACF,WACH,OAAO,CAACG,IAAMC,OAAOD;IAEvB,IAAIH,UAAU,UAAU,EACtB,OAAOK,oBAAoBL,UAAU,UAAU,EAAEC;IAEnD,OAAO,CAACE,IAAMC,OAAOD;AACvB"}
@@ -0,0 +1,2 @@
1
+ import type { Formatter, Locale, TimeFormat } from '../../../types';
2
+ export declare const createTimeFormatter: (format?: TimeFormat, fallbackLocale?: Locale) => Formatter;
@@ -0,0 +1,154 @@
1
+ import { intl } from "../../../i18n/index.js";
2
+ const DEFAULT_SEPARATOR = '-';
3
+ const parseTimeValue = (value)=>{
4
+ if (null == value) return;
5
+ if ('number' == typeof value && Number.isFinite(value)) {
6
+ const date = new Date(value);
7
+ return Number.isNaN(date.getTime()) ? void 0 : date;
8
+ }
9
+ const text = String(value).trim();
10
+ if (!text) return;
11
+ const timestamp = Number(text);
12
+ if (!Number.isNaN(timestamp)) {
13
+ const date = new Date(timestamp);
14
+ return Number.isNaN(date.getTime()) ? void 0 : date;
15
+ }
16
+ const date = new Date(text);
17
+ return Number.isNaN(date.getTime()) ? void 0 : date;
18
+ };
19
+ const parseTextParts = (value)=>{
20
+ if (null == value) return;
21
+ const text = String(value).trim();
22
+ if (!text) return;
23
+ const match = text.match(/^\\s*(\\d{4})-(\\d{2})-(\\d{2})(?:[T\\s](\\d{2}):(\\d{2}):(\\d{2}))?\\s*$/);
24
+ if (!match) return;
25
+ const [, year, month, day, hour, minute, second] = match;
26
+ return {
27
+ year: Number(year),
28
+ month: Number(month),
29
+ day: Number(day),
30
+ hour: hour ? Number(hour) : 0,
31
+ minute: minute ? Number(minute) : 0,
32
+ second: second ? Number(second) : 0
33
+ };
34
+ };
35
+ const pad2 = (value)=>String(value).padStart(2, '0');
36
+ const getWeekNumber = (date)=>{
37
+ const utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()));
38
+ const day = utcDate.getUTCDay() || 7;
39
+ utcDate.setUTCDate(utcDate.getUTCDate() + 4 - day);
40
+ const yearStart = new Date(Date.UTC(utcDate.getUTCFullYear(), 0, 1));
41
+ const week = Math.ceil(((utcDate.getTime() - yearStart.getTime()) / 86400000 + 1) / 7);
42
+ return {
43
+ year: utcDate.getUTCFullYear(),
44
+ week
45
+ };
46
+ };
47
+ const getIntlFormatter = (granularity, locale)=>{
48
+ const options = {};
49
+ switch(granularity){
50
+ case 'year':
51
+ options.year = 'numeric';
52
+ break;
53
+ case 'quarter':
54
+ options.year = 'numeric';
55
+ options.month = '2-digit';
56
+ break;
57
+ case 'month':
58
+ options.year = 'numeric';
59
+ options.month = '2-digit';
60
+ break;
61
+ case 'week':
62
+ options.year = 'numeric';
63
+ options.month = '2-digit';
64
+ options.day = '2-digit';
65
+ break;
66
+ case 'day':
67
+ options.year = 'numeric';
68
+ options.month = '2-digit';
69
+ options.day = '2-digit';
70
+ break;
71
+ case 'hour':
72
+ options.year = 'numeric';
73
+ options.month = '2-digit';
74
+ options.day = '2-digit';
75
+ options.hour = '2-digit';
76
+ break;
77
+ case 'minute':
78
+ options.year = 'numeric';
79
+ options.month = '2-digit';
80
+ options.day = '2-digit';
81
+ options.hour = '2-digit';
82
+ options.minute = '2-digit';
83
+ break;
84
+ case 'second':
85
+ options.year = 'numeric';
86
+ options.month = '2-digit';
87
+ options.day = '2-digit';
88
+ options.hour = '2-digit';
89
+ options.minute = '2-digit';
90
+ options.second = '2-digit';
91
+ break;
92
+ }
93
+ return new Intl.DateTimeFormat(locale, options);
94
+ };
95
+ const formatQuarter = (date, locale, rawText)=>{
96
+ const parts = rawText ? parseTextParts(rawText) : void 0;
97
+ const year = parts?.year ?? date.getFullYear();
98
+ const month = parts?.month ?? date.getMonth() + 1;
99
+ const quarter = Math.floor((month - 1) / 3) + 1;
100
+ return 'zh-CN' === locale ? `${year}年Q${quarter}` : `${year} Q${quarter}`;
101
+ };
102
+ const formatWeek = (date, locale, rawText)=>{
103
+ const parts = rawText ? parseTextParts(rawText) : void 0;
104
+ const weekInfo = parts ? getWeekNumber(new Date(Date.UTC(parts.year, parts.month - 1, parts.day))) : getWeekNumber(date);
105
+ return 'zh-CN' === locale ? `${weekInfo.year}年第${weekInfo.week}周` : `${weekInfo.year} W${weekInfo.week}`;
106
+ };
107
+ const formatDefault = (date, granularity, formatter, locale, rawText)=>{
108
+ if ('quarter' === granularity) return formatQuarter(date, locale, rawText);
109
+ if ('week' === granularity) return formatWeek(date, locale, rawText);
110
+ const parts = formatter.formatToParts(date);
111
+ const map = parts.reduce((prev, part)=>{
112
+ prev[part.type] = part.value;
113
+ return prev;
114
+ }, {});
115
+ const rawParts = rawText ? parseTextParts(rawText) : void 0;
116
+ const year = map.year ?? String(rawParts?.year ?? date.getFullYear());
117
+ const month = map.month ?? pad2(rawParts?.month ?? date.getMonth() + 1);
118
+ const day = map.day ?? pad2(rawParts?.day ?? date.getDate());
119
+ const hour = map.hour ?? pad2(rawParts?.hour ?? date.getHours());
120
+ const minute = map.minute ?? pad2(rawParts?.minute ?? date.getMinutes());
121
+ const second = map.second ?? pad2(rawParts?.second ?? date.getSeconds());
122
+ switch(granularity){
123
+ case 'year':
124
+ return year;
125
+ case 'month':
126
+ return `${year}-${month}`;
127
+ case 'day':
128
+ return `${year}-${month}-${day}`;
129
+ case 'hour':
130
+ return `${year}-${month}-${day} ${hour}`;
131
+ case 'minute':
132
+ return `${year}-${month}-${day} ${hour}:${minute}`;
133
+ case 'second':
134
+ return `${year}-${month}-${day} ${hour}:${minute}:${second}`;
135
+ default:
136
+ return formatter.format(date);
137
+ }
138
+ };
139
+ const createTimeFormatter = (format, fallbackLocale = intl.getLocale())=>{
140
+ if (!format) return (value)=>String(value);
141
+ const { type } = format;
142
+ const finalLocale = fallbackLocale;
143
+ const intlFormatter = getIntlFormatter(type, finalLocale);
144
+ return (value)=>{
145
+ const date = parseTimeValue(value);
146
+ if (!date) return String(value);
147
+ const rawText = null == value ? void 0 : String(value);
148
+ const formatted = formatDefault(date, type, intlFormatter, finalLocale, rawText);
149
+ return formatted.replaceAll('/', DEFAULT_SEPARATOR).replaceAll('.', DEFAULT_SEPARATOR);
150
+ };
151
+ };
152
+ export { createTimeFormatter };
153
+
154
+ //# sourceMappingURL=createTimeFormatter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline/utils/format/createTimeFormatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/utils/format/createTimeFormatter.ts"],"sourcesContent":["import { intl } from 'src/i18n'\nimport type { Formatter, Locale, TimeFormat, TimeGranularity } from 'src/types'\n\nconst DEFAULT_SEPARATOR = '-'\n\nconst parseTimeValue = (value?: number | string): Date | undefined => {\n if (value === undefined || value === null) return undefined\n if (typeof value === 'number' && Number.isFinite(value)) {\n const date = new Date(value)\n return Number.isNaN(date.getTime()) ? undefined : date\n }\n\n const text = String(value).trim()\n if (!text) return undefined\n\n const timestamp = Number(text)\n if (!Number.isNaN(timestamp)) {\n const date = new Date(timestamp)\n return Number.isNaN(date.getTime()) ? undefined : date\n }\n\n const date = new Date(text)\n return Number.isNaN(date.getTime()) ? undefined : date\n}\n\nconst parseTextParts = (value?: number | string) => {\n if (value === undefined || value === null) return undefined\n const text = String(value).trim()\n if (!text) return undefined\n const match = text.match(/^\\\\s*(\\\\d{4})-(\\\\d{2})-(\\\\d{2})(?:[T\\\\s](\\\\d{2}):(\\\\d{2}):(\\\\d{2}))?\\\\s*$/)\n if (!match) return undefined\n const [, year, month, day, hour, minute, second] = match\n return {\n year: Number(year),\n month: Number(month),\n day: Number(day),\n hour: hour ? Number(hour) : 0,\n minute: minute ? Number(minute) : 0,\n second: second ? Number(second) : 0,\n }\n}\n\nconst pad2 = (value: number) => String(value).padStart(2, '0')\n\nconst getWeekNumber = (date: Date) => {\n const utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate()))\n const day = utcDate.getUTCDay() || 7\n utcDate.setUTCDate(utcDate.getUTCDate() + 4 - day)\n const yearStart = new Date(Date.UTC(utcDate.getUTCFullYear(), 0, 1))\n const week = Math.ceil(((utcDate.getTime() - yearStart.getTime()) / 86400000 + 1) / 7)\n return { year: utcDate.getUTCFullYear(), week }\n}\n\nconst getIntlFormatter = (granularity: TimeGranularity, locale: Locale) => {\n const options: Intl.DateTimeFormatOptions = {}\n switch (granularity) {\n case 'year':\n options.year = 'numeric'\n break\n case 'quarter':\n options.year = 'numeric'\n options.month = '2-digit'\n break\n case 'month':\n options.year = 'numeric'\n options.month = '2-digit'\n break\n case 'week':\n options.year = 'numeric'\n options.month = '2-digit'\n options.day = '2-digit'\n break\n case 'day':\n options.year = 'numeric'\n options.month = '2-digit'\n options.day = '2-digit'\n break\n case 'hour':\n options.year = 'numeric'\n options.month = '2-digit'\n options.day = '2-digit'\n options.hour = '2-digit'\n break\n case 'minute':\n options.year = 'numeric'\n options.month = '2-digit'\n options.day = '2-digit'\n options.hour = '2-digit'\n options.minute = '2-digit'\n break\n case 'second':\n options.year = 'numeric'\n options.month = '2-digit'\n options.day = '2-digit'\n options.hour = '2-digit'\n options.minute = '2-digit'\n options.second = '2-digit'\n break\n }\n return new Intl.DateTimeFormat(locale, options)\n}\n\nconst formatQuarter = (date: Date, locale: Locale, rawText?: string) => {\n const parts = rawText ? parseTextParts(rawText) : undefined\n const year = parts?.year ?? date.getFullYear()\n const month = parts?.month ?? date.getMonth() + 1\n const quarter = Math.floor((month - 1) / 3) + 1\n return locale === 'zh-CN' ? `${year}年Q${quarter}` : `${year} Q${quarter}`\n}\n\nconst formatWeek = (date: Date, locale: Locale, rawText?: string) => {\n const parts = rawText ? parseTextParts(rawText) : undefined\n const weekInfo = parts\n ? getWeekNumber(new Date(Date.UTC(parts.year, parts.month - 1, parts.day)))\n : getWeekNumber(date)\n return locale === 'zh-CN' ? `${weekInfo.year}年第${weekInfo.week}周` : `${weekInfo.year} W${weekInfo.week}`\n}\n\nconst formatDefault = (\n date: Date,\n granularity: TimeGranularity,\n formatter: Intl.DateTimeFormat,\n locale: Locale,\n rawText?: string,\n) => {\n if (granularity === 'quarter') {\n return formatQuarter(date, locale, rawText)\n }\n if (granularity === 'week') {\n return formatWeek(date, locale, rawText)\n }\n const parts = formatter.formatToParts(date)\n const map = parts.reduce<Record<string, string>>((prev, part) => {\n prev[part.type] = part.value\n return prev\n }, {})\n const rawParts = rawText ? parseTextParts(rawText) : undefined\n const year = map.year ?? String(rawParts?.year ?? date.getFullYear())\n const month = map.month ?? pad2(rawParts?.month ?? date.getMonth() + 1)\n const day = map.day ?? pad2(rawParts?.day ?? date.getDate())\n const hour = map.hour ?? pad2(rawParts?.hour ?? date.getHours())\n const minute = map.minute ?? pad2(rawParts?.minute ?? date.getMinutes())\n const second = map.second ?? pad2(rawParts?.second ?? date.getSeconds())\n\n switch (granularity) {\n case 'year':\n return year\n case 'month':\n return `${year}-${month}`\n case 'day':\n return `${year}-${month}-${day}`\n case 'hour':\n return `${year}-${month}-${day} ${hour}`\n case 'minute':\n return `${year}-${month}-${day} ${hour}:${minute}`\n case 'second':\n return `${year}-${month}-${day} ${hour}:${minute}:${second}`\n default:\n return formatter.format(date)\n }\n}\n\nexport const createTimeFormatter = (format?: TimeFormat, fallbackLocale: Locale = intl.getLocale()): Formatter => {\n if (!format) {\n return (value?: number | string) => String(value)\n }\n const { type } = format\n const finalLocale = fallbackLocale\n const intlFormatter = getIntlFormatter(type, finalLocale)\n\n return (value?: number | string) => {\n const date = parseTimeValue(value)\n if (!date) {\n return String(value)\n }\n const rawText = value === undefined || value === null ? undefined : String(value)\n const formatted = formatDefault(date, type, intlFormatter, finalLocale, rawText)\n return formatted.replaceAll('/', DEFAULT_SEPARATOR).replaceAll('.', DEFAULT_SEPARATOR)\n }\n}\n"],"names":["DEFAULT_SEPARATOR","parseTimeValue","value","Number","date","Date","undefined","text","String","timestamp","parseTextParts","match","year","month","day","hour","minute","second","pad2","getWeekNumber","utcDate","yearStart","week","Math","getIntlFormatter","granularity","locale","options","Intl","formatQuarter","rawText","parts","quarter","formatWeek","weekInfo","formatDefault","formatter","map","prev","part","rawParts","createTimeFormatter","format","fallbackLocale","intl","type","finalLocale","intlFormatter","formatted"],"mappings":"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"}
@@ -1,3 +1,5 @@
1
1
  export * from './createNumFormatter';
2
2
  export * from './createFormatter';
3
3
  export * from './createFormatterByMeasure';
4
+ export * from './createTimeFormatter';
5
+ export * from './createFormatterByDimension';
@@ -1,3 +1,5 @@
1
1
  export * from "./createNumFormatter.js";
2
2
  export * from "./createFormatter.js";
3
3
  export * from "./createFormatterByMeasure.js";
4
+ export * from "./createTimeFormatter.js";
5
+ export * from "./createFormatterByDimension.js";
@@ -42,6 +42,18 @@ export declare const zArea: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zAreaPercent: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zBar: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zBarParallel: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zBarPercent: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zBoxPlot: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -18,6 +18,18 @@ export declare const zCirclePacking: z.ZodObject<{
18
18
  player: "player";
19
19
  hierarchy: "hierarchy";
20
20
  }>>;
21
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
22
+ type: z.ZodEnum<{
23
+ year: "year";
24
+ quarter: "quarter";
25
+ month: "month";
26
+ week: "week";
27
+ day: "day";
28
+ hour: "hour";
29
+ minute: "minute";
30
+ second: "second";
31
+ }>;
32
+ }, z.core.$strip>>>;
21
33
  }, z.core.$strip>>>>;
22
34
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
23
35
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zColumn: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zColumnParallel: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zColumnPercent: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zDonut: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -18,6 +18,18 @@ export declare const zDualAxis: z.ZodObject<{
18
18
  player: "player";
19
19
  hierarchy: "hierarchy";
20
20
  }>>;
21
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
22
+ type: z.ZodEnum<{
23
+ year: "year";
24
+ quarter: "quarter";
25
+ month: "month";
26
+ week: "week";
27
+ day: "day";
28
+ hour: "hour";
29
+ minute: "minute";
30
+ second: "second";
31
+ }>;
32
+ }, z.core.$strip>>>;
21
33
  }, z.core.$strip>>>>;
22
34
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
23
35
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zFunnel: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -18,6 +18,18 @@ export declare const zHeatmap: z.ZodObject<{
18
18
  player: "player";
19
19
  hierarchy: "hierarchy";
20
20
  }>>;
21
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
22
+ type: z.ZodEnum<{
23
+ year: "year";
24
+ quarter: "quarter";
25
+ month: "month";
26
+ week: "week";
27
+ day: "day";
28
+ hour: "hour";
29
+ minute: "minute";
30
+ second: "second";
31
+ }>;
32
+ }, z.core.$strip>>>;
21
33
  }, z.core.$strip>>>>;
22
34
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
23
35
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zHistogram: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zLine: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;
@@ -42,6 +42,18 @@ export declare const zPie: z.ZodObject<{
42
42
  player: "player";
43
43
  hierarchy: "hierarchy";
44
44
  }>>;
45
+ timeFormat: z.ZodOptional<z.ZodOptional<z.ZodObject<{
46
+ type: z.ZodEnum<{
47
+ year: "year";
48
+ quarter: "quarter";
49
+ month: "month";
50
+ week: "week";
51
+ day: "day";
52
+ hour: "hour";
53
+ minute: "minute";
54
+ second: "second";
55
+ }>;
56
+ }, z.core.$strip>>>;
45
57
  }, z.core.$strip>>>>;
46
58
  measures: z.ZodOptional<z.ZodNullable<z.ZodArray<z.ZodObject<{
47
59
  id: z.ZodString;