@camp2gether/c2g-ui 0.0.7 → 0.0.9

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.
@@ -106,8 +106,8 @@ class BarChartComponent {
106
106
  })),
107
107
  };
108
108
  }, ...(ngDevMode ? [{ debugName: "chartOptions" }] : []));
109
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: BarChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
110
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.19", type: BarChartComponent, isStandalone: true, selector: "c2g-bar-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, stacked: { classPropertyName: "stacked", publicName: "stacked", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
109
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: BarChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
110
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.1", type: BarChartComponent, isStandalone: true, selector: "c2g-bar-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, stacked: { classPropertyName: "stacked", publicName: "stacked", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
111
111
  <div
112
112
  echarts
113
113
  class="c2g-bar-chart"
@@ -117,7 +117,7 @@ class BarChartComponent {
117
117
  </div>
118
118
  `, isInline: true, styles: [".c2g-bar-chart{width:100%}\n"], dependencies: [{ kind: "directive", type: NgxEchartsDirective, selector: "echarts, [echarts]", inputs: ["options", "theme", "initOpts", "merge", "autoResize", "loading", "loadingType", "loadingOpts"], outputs: ["chartInit", "optionsError", "chartClick", "chartDblClick", "chartMouseDown", "chartMouseMove", "chartMouseUp", "chartMouseOver", "chartMouseOut", "chartGlobalOut", "chartContextMenu", "chartHighlight", "chartDownplay", "chartSelectChanged", "chartLegendSelectChanged", "chartLegendSelected", "chartLegendUnselected", "chartLegendLegendSelectAll", "chartLegendLegendInverseSelect", "chartLegendScroll", "chartDataZoom", "chartDataRangeSelected", "chartGraphRoam", "chartGeoRoam", "chartTreeRoam", "chartTimelineChanged", "chartTimelinePlayChanged", "chartRestore", "chartDataViewChanged", "chartMagicTypeChanged", "chartGeoSelectChanged", "chartGeoSelected", "chartGeoUnselected", "chartAxisAreaSelected", "chartBrush", "chartBrushEnd", "chartBrushSelected", "chartGlobalCursorTaken", "chartRendered", "chartFinished"], exportAs: ["echarts"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
119
119
  }
120
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: BarChartComponent, decorators: [{
120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: BarChartComponent, decorators: [{
121
121
  type: Component,
122
122
  args: [{ selector: 'c2g-bar-chart', standalone: true, imports: [NgxEchartsDirective], template: `
123
123
  <div
@@ -128,7 +128,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
128
128
  [style.height]="height()">
129
129
  </div>
130
130
  `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".c2g-bar-chart{width:100%}\n"] }]
131
- }], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: true }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], height: [{ type: i0.Input, args: [{ isSignal: true, alias: "height", required: false }] }], stacked: [{ type: i0.Input, args: [{ isSignal: true, alias: "stacked", required: false }] }] } });
131
+ }] });
132
132
 
133
133
  class LineChartComponent {
134
134
  theme = C2G_ECHARTS_THEME_NAME;
@@ -214,8 +214,8 @@ class LineChartComponent {
214
214
  })),
215
215
  };
216
216
  }, ...(ngDevMode ? [{ debugName: "chartOptions" }] : []));
217
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: LineChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
218
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.19", type: LineChartComponent, isStandalone: true, selector: "c2g-line-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
217
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: LineChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
218
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.1", type: LineChartComponent, isStandalone: true, selector: "c2g-line-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: false, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
219
219
  <div
220
220
  echarts
221
221
  class="c2g-line-chart"
@@ -225,7 +225,7 @@ class LineChartComponent {
225
225
  </div>
226
226
  `, isInline: true, styles: [".c2g-line-chart{width:100%}\n"], dependencies: [{ kind: "directive", type: NgxEchartsDirective, selector: "echarts, [echarts]", inputs: ["options", "theme", "initOpts", "merge", "autoResize", "loading", "loadingType", "loadingOpts"], outputs: ["chartInit", "optionsError", "chartClick", "chartDblClick", "chartMouseDown", "chartMouseMove", "chartMouseUp", "chartMouseOver", "chartMouseOut", "chartGlobalOut", "chartContextMenu", "chartHighlight", "chartDownplay", "chartSelectChanged", "chartLegendSelectChanged", "chartLegendSelected", "chartLegendUnselected", "chartLegendLegendSelectAll", "chartLegendLegendInverseSelect", "chartLegendScroll", "chartDataZoom", "chartDataRangeSelected", "chartGraphRoam", "chartGeoRoam", "chartTreeRoam", "chartTimelineChanged", "chartTimelinePlayChanged", "chartRestore", "chartDataViewChanged", "chartMagicTypeChanged", "chartGeoSelectChanged", "chartGeoSelected", "chartGeoUnselected", "chartAxisAreaSelected", "chartBrush", "chartBrushEnd", "chartBrushSelected", "chartGlobalCursorTaken", "chartRendered", "chartFinished"], exportAs: ["echarts"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
227
227
  }
228
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: LineChartComponent, decorators: [{
228
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: LineChartComponent, decorators: [{
229
229
  type: Component,
230
230
  args: [{ selector: 'c2g-line-chart', standalone: true, imports: [NgxEchartsDirective], template: `
231
231
  <div
@@ -236,7 +236,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
236
236
  [style.height]="height()">
237
237
  </div>
238
238
  `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [".c2g-line-chart{width:100%}\n"] }]
239
- }], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: true }] }], title: [{ type: i0.Input, args: [{ isSignal: true, alias: "title", required: false }] }], height: [{ type: i0.Input, args: [{ isSignal: true, alias: "height", required: false }] }] } });
239
+ }] });
240
240
 
241
241
  const DEFAULT_SEGMENTS = [
242
242
  { min: 0, max: 40, color: '#4ecdc4' },
@@ -310,8 +310,8 @@ class GaugeChartComponent {
310
310
  }]
311
311
  };
312
312
  }, ...(ngDevMode ? [{ debugName: "chartOptions" }] : []));
313
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: GaugeChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
314
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.19", type: GaugeChartComponent, isStandalone: true, selector: "c2g-gauge-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
313
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: GaugeChartComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
314
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.1", type: GaugeChartComponent, isStandalone: true, selector: "c2g-gauge-chart", inputs: { data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null }, height: { classPropertyName: "height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
315
315
  <div
316
316
  echarts
317
317
  [options]="chartOptions()"
@@ -321,7 +321,7 @@ class GaugeChartComponent {
321
321
  ></div>
322
322
  `, isInline: true, styles: [":host{display:block}\n"], dependencies: [{ kind: "directive", type: NgxEchartsDirective, selector: "echarts, [echarts]", inputs: ["options", "theme", "initOpts", "merge", "autoResize", "loading", "loadingType", "loadingOpts"], outputs: ["chartInit", "optionsError", "chartClick", "chartDblClick", "chartMouseDown", "chartMouseMove", "chartMouseUp", "chartMouseOver", "chartMouseOut", "chartGlobalOut", "chartContextMenu", "chartHighlight", "chartDownplay", "chartSelectChanged", "chartLegendSelectChanged", "chartLegendSelected", "chartLegendUnselected", "chartLegendLegendSelectAll", "chartLegendLegendInverseSelect", "chartLegendScroll", "chartDataZoom", "chartDataRangeSelected", "chartGraphRoam", "chartGeoRoam", "chartTreeRoam", "chartTimelineChanged", "chartTimelinePlayChanged", "chartRestore", "chartDataViewChanged", "chartMagicTypeChanged", "chartGeoSelectChanged", "chartGeoSelected", "chartGeoUnselected", "chartAxisAreaSelected", "chartBrush", "chartBrushEnd", "chartBrushSelected", "chartGlobalCursorTaken", "chartRendered", "chartFinished"], exportAs: ["echarts"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
323
323
  }
324
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImport: i0, type: GaugeChartComponent, decorators: [{
324
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.1", ngImport: i0, type: GaugeChartComponent, decorators: [{
325
325
  type: Component,
326
326
  args: [{ selector: 'c2g-gauge-chart', standalone: true, imports: [NgxEchartsDirective], template: `
327
327
  <div
@@ -332,7 +332,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.19", ngImpo
332
332
  [style.height]="'260px'"
333
333
  ></div>
334
334
  `, changeDetection: ChangeDetectionStrategy.OnPush, styles: [":host{display:block}\n"] }]
335
- }], propDecorators: { data: [{ type: i0.Input, args: [{ isSignal: true, alias: "data", required: true }] }], height: [{ type: i0.Input, args: [{ isSignal: true, alias: "height", required: false }] }] } });
335
+ }] });
336
336
 
337
337
  function createWeatherTooltip(config) {
338
338
  return (ctx) => {
@@ -1 +1 @@
1
- {"version":3,"file":"camp2gether-c2g-ui-charts.mjs","sources":["../../../projects/c2g-ui/charts/charts.version.ts","../../../projects/c2g-ui/charts/c2g-echarts-theme.ts","../../../projects/c2g-ui/charts/c2g-charts.providers.ts","../../../projects/c2g-ui/charts/bar-chart/bar-chart.component.ts","../../../projects/c2g-ui/charts/line-chart/line-chart.component.ts","../../../projects/c2g-ui/charts/gauge-chart/gauge-chart.component.ts","../../../projects/c2g-ui/charts/tooltip-widgets/weather-tooltip.ts","../../../projects/c2g-ui/charts/camp2gether-c2g-ui-charts.ts"],"sourcesContent":["export const C2G_CHARTS_VERSION = '0.1.0';\n","import type { EChartsOption } from 'echarts';\n\nexport const C2G_ECHARTS_THEME_NAME = 'c2g';\n\nexport const C2G_ECHARTS_THEME = {\n color: [\n '#ff6b35', // primary (c2g-color-primary)\n '#4ecdc4', // secondary (c2g-color-secondary)\n '#ffb347', // tertiary (c2g-color-tertiary)\n '#95e1d3', // success\n '#74c0fc', // info\n '#ff6b6b', // error\n '#ffe570', // accent-light\n '#3ba99f', // secondary-dark\n '#e55623', // primary-dark\n '#7ed8d2', // secondary-light\n ],\n backgroundColor: 'transparent',\n textStyle: {\n fontFamily: '\"Quicksand\", \"Segoe UI\", sans-serif',\n color: '#4a423b', // c2g-color-text-secondary\n },\n title: {\n textStyle: {\n color: '#1a1714', // c2g-color-text-primary\n fontFamily: '\"Quicksand\", \"Segoe UI\", sans-serif',\n fontWeight: '600',\n },\n subtextStyle: {\n color: '#6b5e52', // c2g-color-text-muted\n },\n },\n line: {\n itemStyle: { borderWidth: 2 },\n lineStyle: { width: 2 },\n symbolSize: 6,\n symbol: 'circle',\n smooth: true,\n },\n bar: {\n itemStyle: {\n barBorderRadius: [4, 4, 0, 0],\n },\n },\n categoryAxis: {\n axisLine: { lineStyle: { color: '#d1c4b5' } }, // c2g-color-outline\n axisTick: { lineStyle: { color: '#d1c4b5' } },\n axisLabel: { color: '#6b5e52' }, // c2g-color-text-muted\n splitLine: { lineStyle: { color: '#e1d9ce' } }, // c2g-color-bg-tertiary\n },\n valueAxis: {\n axisLine: { lineStyle: { color: '#d1c4b5' } },\n axisTick: { lineStyle: { color: '#d1c4b5' } },\n axisLabel: { color: '#6b5e52' },\n splitLine: { lineStyle: { color: '#e1d9ce', type: 'dashed' } },\n },\n tooltip: {\n backgroundColor: 'rgba(255,255,255,0.96)',\n borderColor: '#e1d9ce',\n borderWidth: 1,\n textStyle: { color: '#1a1714' },\n extraCssText: 'border-radius: 0.5rem; box-shadow: 0 4px 16px rgba(0,0,0,0.12);',\n },\n legend: {\n textStyle: { color: '#4a423b' },\n },\n grid: {\n borderColor: '#e1d9ce',\n },\n};\n","import { Provider } from '@angular/core';\nimport { provideEchartsCore } from 'ngx-echarts';\nimport * as echarts from 'echarts';\nimport { C2G_ECHARTS_THEME, C2G_ECHARTS_THEME_NAME } from './c2g-echarts-theme';\n\necharts.registerTheme(C2G_ECHARTS_THEME_NAME, C2G_ECHARTS_THEME);\n\nexport function provideC2gCharts(): Provider[] {\n return provideEchartsCore({ echarts: () => import('echarts') }) as unknown as Provider[];\n}\n","import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\nimport { NgxEchartsDirective } from 'ngx-echarts';\nimport type { EChartsOption } from 'echarts';\nimport { C2gBarChartData } from '../chart.models';\nimport { C2G_ECHARTS_THEME_NAME } from '../c2g-echarts-theme';\n\n@Component({\n selector: 'c2g-bar-chart',\n standalone: true,\n imports: [NgxEchartsDirective],\n template: `\n <div\n echarts\n class=\"c2g-bar-chart\"\n [options]=\"chartOptions()\"\n [theme]=\"theme\"\n [style.height]=\"height()\">\n </div>\n `,\n styles: `\n .c2g-bar-chart {\n width: 100%;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class BarChartComponent {\n readonly theme = C2G_ECHARTS_THEME_NAME;\n\n readonly data = input.required<C2gBarChartData>();\n readonly title = input('');\n readonly height = input('320px');\n readonly stacked = input(false);\n\n readonly chartOptions = computed((): EChartsOption => {\n const { categories, series, unit } = this.data();\n return {\n title: this.title() ? { text: this.title() } : undefined,\n tooltip: {\n trigger: 'axis',\n axisPointer: { type: 'shadow' },\n valueFormatter: unit ? (v) => `${v} ${unit}` : undefined,\n },\n legend: series.length > 1 ? { bottom: 0 } : undefined,\n grid: { left: '3%', right: '4%', bottom: series.length > 1 ? '12%' : '3%', containLabel: true },\n xAxis: { type: 'category', data: categories },\n yAxis: { type: 'value', axisLabel: { formatter: unit ? `{value} ${unit}` : '{value}' } },\n series: series.map(s => ({\n name: s.name,\n type: 'bar',\n stack: this.stacked() ? 'total' : undefined,\n data: s.data,\n itemStyle: s.color ? { color: s.color } : undefined,\n })),\n };\n });\n}\n","import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\nimport { NgxEchartsDirective } from 'ngx-echarts';\nimport type { EChartsOption } from 'echarts';\nimport { C2gLineChartData } from '../chart.models';\nimport { C2G_ECHARTS_THEME_NAME } from '../c2g-echarts-theme';\n\n@Component({\n selector: 'c2g-line-chart',\n standalone: true,\n imports: [NgxEchartsDirective],\n template: `\n <div\n echarts\n class=\"c2g-line-chart\"\n [options]=\"chartOptions()\"\n [theme]=\"theme\"\n [style.height]=\"height()\">\n </div>\n `,\n styles: `\n .c2g-line-chart { width: 100%; }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LineChartComponent {\n readonly theme = C2G_ECHARTS_THEME_NAME;\n\n readonly data = input.required<C2gLineChartData>();\n readonly title = input('');\n readonly height = input('320px');\n\n readonly chartOptions = computed((): EChartsOption => {\n const { categories, series, yAxis, zoom } = this.data();\n const globalSmooth = this.data().smooth ?? true;\n const globalArea = this.data().area ?? false;\n\n const bottomPadding = series.length > 1 ? (zoom ? '18%' : '12%') : (zoom ? '12%' : '3%');\n\n return {\n title: this.title() ? {\n text: this.title(),\n textStyle: { fontSize: 14 }\n } : undefined,\n\n tooltip: {\n trigger: 'axis',\n backgroundColor: 'transparent',\n borderWidth: 0,\n padding: 0,\n ...(this.data().tooltipWidget\n ? {\n formatter: (params: any) => {\n const p = Array.isArray(params) ? params : [params];\n const idx: number = p[0]?.dataIndex ?? 0;\n return this.data().tooltipWidget!({\n categoryIndex: idx,\n category: p[0]?.axisValue ?? categories[idx] ?? '',\n seriesValues: p.map((s: any) => ({\n name: s.seriesName,\n value: s.value,\n color: s.color,\n })),\n });\n },\n }\n : { valueFormatter: yAxis?.unit ? (v: any) => `${v} ${yAxis.unit}` : undefined }),\n },\n\n legend: series.length > 1 ? {\n bottom: zoom ? 40 : 0,\n icon: 'roundRect',\n itemWidth: 16,\n itemHeight: 4,\n } : undefined,\n\n grid: {\n left: '3%',\n right: '4%',\n bottom: bottomPadding,\n top: this.title() ? '15%' : '8%',\n containLabel: true,\n },\n\n xAxis: {\n type: 'category',\n boundaryGap: false,\n data: categories,\n },\n\n yAxis: {\n type: 'value',\n name: yAxis?.label ?? '',\n nameTextStyle: { padding: [0, 0, 0, 0] },\n min: yAxis?.min,\n max: yAxis?.max,\n axisLabel: {\n formatter: yAxis?.unit ? `{value} ${yAxis.unit}` : '{value}',\n },\n },\n\n dataZoom: zoom ? [\n { type: 'inside', start: 0, end: 100 },\n { type: 'slider', start: 0, end: 100, height: 20, bottom: 0 },\n ] : undefined,\n\n series: series.map(s => ({\n name: s.name,\n type: 'line' as const,\n smooth: s.smooth ?? globalSmooth,\n data: s.data,\n itemStyle: s.color ? { color: s.color } : undefined,\n lineStyle: {\n ...(s.color ? { color: s.color } : {}),\n ...(s.dashed ? { type: 'dashed' as const, opacity: 0.7 } : {}),\n },\n areaStyle: (s.area ?? globalArea) ? { opacity: 0.12 } : undefined,\n })),\n };\n });\n}\n","import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\nimport { NgxEchartsDirective } from 'ngx-echarts';\nimport { EChartsOption } from 'echarts';\nimport { C2gGaugeChartData, C2gGaugeSegment } from './gauge-chart.models';\nimport { C2G_ECHARTS_THEME_NAME } from '../c2g-echarts-theme';\n\nconst DEFAULT_SEGMENTS: C2gGaugeSegment[] = [\n { min: 0, max: 40, color: '#4ecdc4' },\n { min: 40, max: 75, color: '#ffb347' },\n { min: 75, max: 100, color: '#e55623' }\n];\n\n@Component({\n selector: 'c2g-gauge-chart',\n standalone: true,\n imports: [NgxEchartsDirective],\n template: `\n <div\n echarts\n [options]=\"chartOptions()\"\n [theme]=\"theme\"\n class=\"c2g-gauge-chart\"\n [style.height]=\"'260px'\"\n ></div>\n `,\n styles: [`:host { display: block; }`],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class GaugeChartComponent {\n readonly data = input.required<C2gGaugeChartData>();\n readonly height = input('260px');\n\n readonly theme = C2G_ECHARTS_THEME_NAME;\n\n readonly chartOptions = computed((): EChartsOption => {\n const d = this.data();\n const min = d.min ?? 0;\n const max = d.max ?? 100;\n const segments = d.segments ?? DEFAULT_SEGMENTS;\n\n const axisLineColors: [number, string][] = segments.map(s => [\n (s.max - min) / (max - min),\n s.color\n ]);\n\n return {\n series: [{\n type: 'gauge',\n min,\n max,\n startAngle: 200,\n endAngle: -20,\n radius: '90%',\n center: ['50%', '55%'],\n axisLine: {\n lineStyle: {\n width: 18,\n color: axisLineColors\n }\n },\n axisTick: { show: false },\n splitLine: { show: false },\n axisLabel: {\n color: '#6b5e54',\n fontFamily: '\"Quicksand\",\"Segoe UI\",sans-serif',\n fontSize: 11,\n distance: 24\n },\n pointer: {\n itemStyle: { color: '#ff6b35' },\n length: '65%',\n width: 5\n },\n anchor: {\n show: true,\n size: 14,\n itemStyle: { color: '#ff6b35', borderWidth: 2, borderColor: '#fff' }\n },\n detail: {\n show: d.showDetail !== false,\n valueAnimation: true,\n formatter: (val: number) => `${val}${d.unit ?? ''}`,\n color: '#2c2520',\n fontFamily: '\"Quicksand\",\"Segoe UI\",sans-serif',\n fontSize: 28,\n fontWeight: 700,\n offsetCenter: [0, '30%']\n },\n title: {\n show: !!d.label,\n color: '#6b5e54',\n fontFamily: '\"Quicksand\",\"Segoe UI\",sans-serif',\n fontSize: 13,\n offsetCenter: [0, '60%']\n },\n data: [{ value: d.value, name: d.label ?? '' }]\n }]\n };\n });\n}\n","import { C2gTooltipContext } from '../chart.models';\n\nexport interface WeatherTooltipEntry {\n icon: string;\n description: string;\n rain?: number;\n wind?: number;\n}\n\nexport interface WeatherTooltipConfig {\n entries: WeatherTooltipEntry[];\n unit?: string;\n}\n\nexport function createWeatherTooltip(config: WeatherTooltipConfig) {\n return (ctx: C2gTooltipContext): string => {\n const entry = config.entries[ctx.categoryIndex];\n const unit = config.unit ?? '°C';\n\n const seriesRows = ctx.seriesValues\n .map(\n (s) => `\n <div style=\"display:flex;align-items:center;gap:6px;margin-top:4px;\">\n <span style=\"\n display:inline-block;width:10px;height:3px;\n border-radius:2px;background:${s.color};flex-shrink:0;\">\n </span>\n <span style=\"font-size:11px;color:var(--c2g-color-text-secondary,#4a423b);flex:1;\">\n ${s.name}\n </span>\n <span style=\"font-size:13px;font-weight:700;color:var(--c2g-color-text-primary,#1a1714);\">\n ${s.value} ${unit}\n </span>\n </div>`\n )\n .join('');\n\n const extraRows = entry\n ? [\n entry.rain != null\n ? `<div style=\"display:flex;justify-content:space-between;margin-top:2px;font-size:11px;color:var(--c2g-color-text-muted,#6b5e52);\">\n <span>🌧 Regen</span><span>${entry.rain} mm</span>\n </div>`\n : '',\n entry.wind != null\n ? `<div style=\"display:flex;justify-content:space-between;font-size:11px;color:var(--c2g-color-text-muted,#6b5e52);\">\n <span>💨 Wind</span><span>${entry.wind} km/h</span>\n </div>`\n : '',\n ]\n .filter(Boolean)\n .join('')\n : '';\n\n return `\n <div style=\"\n background:var(--c2g-color-surface,#fff);\n border:1px solid var(--c2g-color-outline-variant,#e1d9ce);\n border-radius:12px;\n padding:10px 12px;\n min-width:160px;\n box-shadow:0 4px 16px rgba(0,0,0,0.12);\n font-family:var(--c2g-font-family-base,'Quicksand','Segoe UI',sans-serif);\n \">\n <div style=\"display:flex;align-items:center;gap:8px;margin-bottom:6px;\">\n ${entry ? `<span style=\"font-size:1.6rem;line-height:1;\">${entry.icon}</span>` : ''}\n <div>\n <div style=\"font-size:12px;font-weight:600;color:var(--c2g-color-text-primary,#1a1714);\">\n ${ctx.category}\n </div>\n ${entry ? `<div style=\"font-size:11px;color:var(--c2g-color-text-secondary,#4a423b);\">${entry.description}</div>` : ''}\n </div>\n </div>\n <div style=\"border-top:1px solid var(--c2g-color-outline-variant,#e1d9ce);padding-top:6px;\">\n ${seriesRows}\n </div>\n ${extraRows ? `<div style=\"border-top:1px solid var(--c2g-color-outline-variant,#e1d9ce);margin-top:6px;padding-top:4px;\">${extraRows}</div>` : ''}\n </div>`;\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"camp2gether-c2g-ui-charts.mjs","sources":["../../../projects/c2g-ui/charts/charts.version.ts","../../../projects/c2g-ui/charts/c2g-echarts-theme.ts","../../../projects/c2g-ui/charts/c2g-charts.providers.ts","../../../projects/c2g-ui/charts/bar-chart/bar-chart.component.ts","../../../projects/c2g-ui/charts/line-chart/line-chart.component.ts","../../../projects/c2g-ui/charts/gauge-chart/gauge-chart.component.ts","../../../projects/c2g-ui/charts/tooltip-widgets/weather-tooltip.ts","../../../projects/c2g-ui/charts/camp2gether-c2g-ui-charts.ts"],"sourcesContent":["export const C2G_CHARTS_VERSION = '0.1.0';\n","import type { EChartsOption } from 'echarts';\n\nexport const C2G_ECHARTS_THEME_NAME = 'c2g';\n\nexport const C2G_ECHARTS_THEME = {\n color: [\n '#ff6b35', // primary (c2g-color-primary)\n '#4ecdc4', // secondary (c2g-color-secondary)\n '#ffb347', // tertiary (c2g-color-tertiary)\n '#95e1d3', // success\n '#74c0fc', // info\n '#ff6b6b', // error\n '#ffe570', // accent-light\n '#3ba99f', // secondary-dark\n '#e55623', // primary-dark\n '#7ed8d2', // secondary-light\n ],\n backgroundColor: 'transparent',\n textStyle: {\n fontFamily: '\"Quicksand\", \"Segoe UI\", sans-serif',\n color: '#4a423b', // c2g-color-text-secondary\n },\n title: {\n textStyle: {\n color: '#1a1714', // c2g-color-text-primary\n fontFamily: '\"Quicksand\", \"Segoe UI\", sans-serif',\n fontWeight: '600',\n },\n subtextStyle: {\n color: '#6b5e52', // c2g-color-text-muted\n },\n },\n line: {\n itemStyle: { borderWidth: 2 },\n lineStyle: { width: 2 },\n symbolSize: 6,\n symbol: 'circle',\n smooth: true,\n },\n bar: {\n itemStyle: {\n barBorderRadius: [4, 4, 0, 0],\n },\n },\n categoryAxis: {\n axisLine: { lineStyle: { color: '#d1c4b5' } }, // c2g-color-outline\n axisTick: { lineStyle: { color: '#d1c4b5' } },\n axisLabel: { color: '#6b5e52' }, // c2g-color-text-muted\n splitLine: { lineStyle: { color: '#e1d9ce' } }, // c2g-color-bg-tertiary\n },\n valueAxis: {\n axisLine: { lineStyle: { color: '#d1c4b5' } },\n axisTick: { lineStyle: { color: '#d1c4b5' } },\n axisLabel: { color: '#6b5e52' },\n splitLine: { lineStyle: { color: '#e1d9ce', type: 'dashed' } },\n },\n tooltip: {\n backgroundColor: 'rgba(255,255,255,0.96)',\n borderColor: '#e1d9ce',\n borderWidth: 1,\n textStyle: { color: '#1a1714' },\n extraCssText: 'border-radius: 0.5rem; box-shadow: 0 4px 16px rgba(0,0,0,0.12);',\n },\n legend: {\n textStyle: { color: '#4a423b' },\n },\n grid: {\n borderColor: '#e1d9ce',\n },\n};\n","import { Provider } from '@angular/core';\nimport { provideEchartsCore } from 'ngx-echarts';\nimport * as echarts from 'echarts';\nimport { C2G_ECHARTS_THEME, C2G_ECHARTS_THEME_NAME } from './c2g-echarts-theme';\n\necharts.registerTheme(C2G_ECHARTS_THEME_NAME, C2G_ECHARTS_THEME);\n\nexport function provideC2gCharts(): Provider[] {\n return provideEchartsCore({ echarts: () => import('echarts') }) as unknown as Provider[];\n}\n","import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\nimport { NgxEchartsDirective } from 'ngx-echarts';\nimport type { EChartsOption } from 'echarts';\nimport { C2gBarChartData } from '../chart.models';\nimport { C2G_ECHARTS_THEME_NAME } from '../c2g-echarts-theme';\n\n@Component({\n selector: 'c2g-bar-chart',\n standalone: true,\n imports: [NgxEchartsDirective],\n template: `\n <div\n echarts\n class=\"c2g-bar-chart\"\n [options]=\"chartOptions()\"\n [theme]=\"theme\"\n [style.height]=\"height()\">\n </div>\n `,\n styles: `\n .c2g-bar-chart {\n width: 100%;\n }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class BarChartComponent {\n readonly theme = C2G_ECHARTS_THEME_NAME;\n\n readonly data = input.required<C2gBarChartData>();\n readonly title = input('');\n readonly height = input('320px');\n readonly stacked = input(false);\n\n readonly chartOptions = computed((): EChartsOption => {\n const { categories, series, unit } = this.data();\n return {\n title: this.title() ? { text: this.title() } : undefined,\n tooltip: {\n trigger: 'axis',\n axisPointer: { type: 'shadow' },\n valueFormatter: unit ? (v) => `${v} ${unit}` : undefined,\n },\n legend: series.length > 1 ? { bottom: 0 } : undefined,\n grid: { left: '3%', right: '4%', bottom: series.length > 1 ? '12%' : '3%', containLabel: true },\n xAxis: { type: 'category', data: categories },\n yAxis: { type: 'value', axisLabel: { formatter: unit ? `{value} ${unit}` : '{value}' } },\n series: series.map(s => ({\n name: s.name,\n type: 'bar',\n stack: this.stacked() ? 'total' : undefined,\n data: s.data,\n itemStyle: s.color ? { color: s.color } : undefined,\n })),\n };\n });\n}\n","import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\nimport { NgxEchartsDirective } from 'ngx-echarts';\nimport type { EChartsOption } from 'echarts';\nimport { C2gLineChartData } from '../chart.models';\nimport { C2G_ECHARTS_THEME_NAME } from '../c2g-echarts-theme';\n\n@Component({\n selector: 'c2g-line-chart',\n standalone: true,\n imports: [NgxEchartsDirective],\n template: `\n <div\n echarts\n class=\"c2g-line-chart\"\n [options]=\"chartOptions()\"\n [theme]=\"theme\"\n [style.height]=\"height()\">\n </div>\n `,\n styles: `\n .c2g-line-chart { width: 100%; }\n `,\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class LineChartComponent {\n readonly theme = C2G_ECHARTS_THEME_NAME;\n\n readonly data = input.required<C2gLineChartData>();\n readonly title = input('');\n readonly height = input('320px');\n\n readonly chartOptions = computed((): EChartsOption => {\n const { categories, series, yAxis, zoom } = this.data();\n const globalSmooth = this.data().smooth ?? true;\n const globalArea = this.data().area ?? false;\n\n const bottomPadding = series.length > 1 ? (zoom ? '18%' : '12%') : (zoom ? '12%' : '3%');\n\n return {\n title: this.title() ? {\n text: this.title(),\n textStyle: { fontSize: 14 }\n } : undefined,\n\n tooltip: {\n trigger: 'axis',\n backgroundColor: 'transparent',\n borderWidth: 0,\n padding: 0,\n ...(this.data().tooltipWidget\n ? {\n formatter: (params: any) => {\n const p = Array.isArray(params) ? params : [params];\n const idx: number = p[0]?.dataIndex ?? 0;\n return this.data().tooltipWidget!({\n categoryIndex: idx,\n category: p[0]?.axisValue ?? categories[idx] ?? '',\n seriesValues: p.map((s: any) => ({\n name: s.seriesName,\n value: s.value,\n color: s.color,\n })),\n });\n },\n }\n : { valueFormatter: yAxis?.unit ? (v: any) => `${v} ${yAxis.unit}` : undefined }),\n },\n\n legend: series.length > 1 ? {\n bottom: zoom ? 40 : 0,\n icon: 'roundRect',\n itemWidth: 16,\n itemHeight: 4,\n } : undefined,\n\n grid: {\n left: '3%',\n right: '4%',\n bottom: bottomPadding,\n top: this.title() ? '15%' : '8%',\n containLabel: true,\n },\n\n xAxis: {\n type: 'category',\n boundaryGap: false,\n data: categories,\n },\n\n yAxis: {\n type: 'value',\n name: yAxis?.label ?? '',\n nameTextStyle: { padding: [0, 0, 0, 0] },\n min: yAxis?.min,\n max: yAxis?.max,\n axisLabel: {\n formatter: yAxis?.unit ? `{value} ${yAxis.unit}` : '{value}',\n },\n },\n\n dataZoom: zoom ? [\n { type: 'inside', start: 0, end: 100 },\n { type: 'slider', start: 0, end: 100, height: 20, bottom: 0 },\n ] : undefined,\n\n series: series.map(s => ({\n name: s.name,\n type: 'line' as const,\n smooth: s.smooth ?? globalSmooth,\n data: s.data,\n itemStyle: s.color ? { color: s.color } : undefined,\n lineStyle: {\n ...(s.color ? { color: s.color } : {}),\n ...(s.dashed ? { type: 'dashed' as const, opacity: 0.7 } : {}),\n },\n areaStyle: (s.area ?? globalArea) ? { opacity: 0.12 } : undefined,\n })),\n };\n });\n}\n","import { ChangeDetectionStrategy, Component, computed, input } from '@angular/core';\nimport { NgxEchartsDirective } from 'ngx-echarts';\nimport { EChartsOption } from 'echarts';\nimport { C2gGaugeChartData, C2gGaugeSegment } from './gauge-chart.models';\nimport { C2G_ECHARTS_THEME_NAME } from '../c2g-echarts-theme';\n\nconst DEFAULT_SEGMENTS: C2gGaugeSegment[] = [\n { min: 0, max: 40, color: '#4ecdc4' },\n { min: 40, max: 75, color: '#ffb347' },\n { min: 75, max: 100, color: '#e55623' }\n];\n\n@Component({\n selector: 'c2g-gauge-chart',\n standalone: true,\n imports: [NgxEchartsDirective],\n template: `\n <div\n echarts\n [options]=\"chartOptions()\"\n [theme]=\"theme\"\n class=\"c2g-gauge-chart\"\n [style.height]=\"'260px'\"\n ></div>\n `,\n styles: [`:host { display: block; }`],\n changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class GaugeChartComponent {\n readonly data = input.required<C2gGaugeChartData>();\n readonly height = input('260px');\n\n readonly theme = C2G_ECHARTS_THEME_NAME;\n\n readonly chartOptions = computed((): EChartsOption => {\n const d = this.data();\n const min = d.min ?? 0;\n const max = d.max ?? 100;\n const segments = d.segments ?? DEFAULT_SEGMENTS;\n\n const axisLineColors: [number, string][] = segments.map(s => [\n (s.max - min) / (max - min),\n s.color\n ]);\n\n return {\n series: [{\n type: 'gauge',\n min,\n max,\n startAngle: 200,\n endAngle: -20,\n radius: '90%',\n center: ['50%', '55%'],\n axisLine: {\n lineStyle: {\n width: 18,\n color: axisLineColors\n }\n },\n axisTick: { show: false },\n splitLine: { show: false },\n axisLabel: {\n color: '#6b5e54',\n fontFamily: '\"Quicksand\",\"Segoe UI\",sans-serif',\n fontSize: 11,\n distance: 24\n },\n pointer: {\n itemStyle: { color: '#ff6b35' },\n length: '65%',\n width: 5\n },\n anchor: {\n show: true,\n size: 14,\n itemStyle: { color: '#ff6b35', borderWidth: 2, borderColor: '#fff' }\n },\n detail: {\n show: d.showDetail !== false,\n valueAnimation: true,\n formatter: (val: number) => `${val}${d.unit ?? ''}`,\n color: '#2c2520',\n fontFamily: '\"Quicksand\",\"Segoe UI\",sans-serif',\n fontSize: 28,\n fontWeight: 700,\n offsetCenter: [0, '30%']\n },\n title: {\n show: !!d.label,\n color: '#6b5e54',\n fontFamily: '\"Quicksand\",\"Segoe UI\",sans-serif',\n fontSize: 13,\n offsetCenter: [0, '60%']\n },\n data: [{ value: d.value, name: d.label ?? '' }]\n }]\n };\n });\n}\n","import { C2gTooltipContext } from '../chart.models';\n\nexport interface WeatherTooltipEntry {\n icon: string;\n description: string;\n rain?: number;\n wind?: number;\n}\n\nexport interface WeatherTooltipConfig {\n entries: WeatherTooltipEntry[];\n unit?: string;\n}\n\nexport function createWeatherTooltip(config: WeatherTooltipConfig) {\n return (ctx: C2gTooltipContext): string => {\n const entry = config.entries[ctx.categoryIndex];\n const unit = config.unit ?? '°C';\n\n const seriesRows = ctx.seriesValues\n .map(\n (s) => `\n <div style=\"display:flex;align-items:center;gap:6px;margin-top:4px;\">\n <span style=\"\n display:inline-block;width:10px;height:3px;\n border-radius:2px;background:${s.color};flex-shrink:0;\">\n </span>\n <span style=\"font-size:11px;color:var(--c2g-color-text-secondary,#4a423b);flex:1;\">\n ${s.name}\n </span>\n <span style=\"font-size:13px;font-weight:700;color:var(--c2g-color-text-primary,#1a1714);\">\n ${s.value} ${unit}\n </span>\n </div>`\n )\n .join('');\n\n const extraRows = entry\n ? [\n entry.rain != null\n ? `<div style=\"display:flex;justify-content:space-between;margin-top:2px;font-size:11px;color:var(--c2g-color-text-muted,#6b5e52);\">\n <span>🌧 Regen</span><span>${entry.rain} mm</span>\n </div>`\n : '',\n entry.wind != null\n ? `<div style=\"display:flex;justify-content:space-between;font-size:11px;color:var(--c2g-color-text-muted,#6b5e52);\">\n <span>💨 Wind</span><span>${entry.wind} km/h</span>\n </div>`\n : '',\n ]\n .filter(Boolean)\n .join('')\n : '';\n\n return `\n <div style=\"\n background:var(--c2g-color-surface,#fff);\n border:1px solid var(--c2g-color-outline-variant,#e1d9ce);\n border-radius:12px;\n padding:10px 12px;\n min-width:160px;\n box-shadow:0 4px 16px rgba(0,0,0,0.12);\n font-family:var(--c2g-font-family-base,'Quicksand','Segoe UI',sans-serif);\n \">\n <div style=\"display:flex;align-items:center;gap:8px;margin-bottom:6px;\">\n ${entry ? `<span style=\"font-size:1.6rem;line-height:1;\">${entry.icon}</span>` : ''}\n <div>\n <div style=\"font-size:12px;font-weight:600;color:var(--c2g-color-text-primary,#1a1714);\">\n ${ctx.category}\n </div>\n ${entry ? `<div style=\"font-size:11px;color:var(--c2g-color-text-secondary,#4a423b);\">${entry.description}</div>` : ''}\n </div>\n </div>\n <div style=\"border-top:1px solid var(--c2g-color-outline-variant,#e1d9ce);padding-top:6px;\">\n ${seriesRows}\n </div>\n ${extraRows ? `<div style=\"border-top:1px solid var(--c2g-color-outline-variant,#e1d9ce);margin-top:6px;padding-top:4px;\">${extraRows}</div>` : ''}\n </div>`;\n };\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}