@unovis/angular 1.0.0-beta.0

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 (108) hide show
  1. package/LICENSE +193 -0
  2. package/dist/lib/LICENSE +193 -0
  3. package/dist/lib/bundles/unovis-angular.umd.js +2833 -0
  4. package/dist/lib/bundles/unovis-angular.umd.js.map +1 -0
  5. package/dist/lib/components/area/area.component.d.ts +94 -0
  6. package/dist/lib/components/area/area.module.d.ts +7 -0
  7. package/dist/lib/components/axis/axis.component.d.ts +125 -0
  8. package/dist/lib/components/axis/axis.module.d.ts +7 -0
  9. package/dist/lib/components/brush/brush.component.d.ts +104 -0
  10. package/dist/lib/components/brush/brush.module.d.ts +7 -0
  11. package/dist/lib/components/crosshair/crosshair.component.d.ts +104 -0
  12. package/dist/lib/components/crosshair/crosshair.module.d.ts +7 -0
  13. package/dist/lib/components/donut/donut.component.d.ts +86 -0
  14. package/dist/lib/components/donut/donut.module.d.ts +7 -0
  15. package/dist/lib/components/free-brush/free-brush.component.d.ts +106 -0
  16. package/dist/lib/components/free-brush/free-brush.module.d.ts +7 -0
  17. package/dist/lib/components/graph/graph.component.d.ts +190 -0
  18. package/dist/lib/components/graph/graph.module.d.ts +7 -0
  19. package/dist/lib/components/grouped-bar/grouped-bar.component.d.ts +101 -0
  20. package/dist/lib/components/grouped-bar/grouped-bar.module.d.ts +7 -0
  21. package/dist/lib/components/line/line.component.d.ts +97 -0
  22. package/dist/lib/components/line/line.module.d.ts +7 -0
  23. package/dist/lib/components/sankey/sankey.component.d.ts +164 -0
  24. package/dist/lib/components/sankey/sankey.module.d.ts +7 -0
  25. package/dist/lib/components/scatter/scatter.component.d.ts +104 -0
  26. package/dist/lib/components/scatter/scatter.module.d.ts +7 -0
  27. package/dist/lib/components/stacked-bar/stacked-bar.component.d.ts +103 -0
  28. package/dist/lib/components/stacked-bar/stacked-bar.module.d.ts +7 -0
  29. package/dist/lib/components/timeline/timeline.component.d.ts +105 -0
  30. package/dist/lib/components/timeline/timeline.module.d.ts +7 -0
  31. package/dist/lib/components/tooltip/tooltip.component.d.ts +41 -0
  32. package/dist/lib/components/tooltip/tooltip.module.d.ts +7 -0
  33. package/dist/lib/components/topojson-map/topojson-map.component.d.ts +125 -0
  34. package/dist/lib/components/topojson-map/topojson-map.module.d.ts +7 -0
  35. package/dist/lib/components/xy-labels/xy-labels.component.d.ts +107 -0
  36. package/dist/lib/components/xy-labels/xy-labels.module.d.ts +7 -0
  37. package/dist/lib/components.d.ts +39 -0
  38. package/dist/lib/containers/single-container/single-container.component.d.ts +26 -0
  39. package/dist/lib/containers/single-container/single-container.module.d.ts +7 -0
  40. package/dist/lib/containers/xy-container/xy-container.component.d.ts +80 -0
  41. package/dist/lib/containers/xy-container/xy-container.module.d.ts +7 -0
  42. package/dist/lib/containers.d.ts +4 -0
  43. package/dist/lib/core/core-component.d.ts +6 -0
  44. package/dist/lib/core/generic-component.d.ts +3 -0
  45. package/dist/lib/core/index.d.ts +3 -0
  46. package/dist/lib/core/xy-component.d.ts +6 -0
  47. package/dist/lib/esm2015/components/area/area.component.js +75 -0
  48. package/dist/lib/esm2015/components/area/area.module.js +18 -0
  49. package/dist/lib/esm2015/components/axis/axis.component.js +109 -0
  50. package/dist/lib/esm2015/components/axis/axis.module.js +18 -0
  51. package/dist/lib/esm2015/components/brush/brush.component.js +83 -0
  52. package/dist/lib/esm2015/components/brush/brush.module.js +18 -0
  53. package/dist/lib/esm2015/components/crosshair/crosshair.component.js +81 -0
  54. package/dist/lib/esm2015/components/crosshair/crosshair.module.js +18 -0
  55. package/dist/lib/esm2015/components/donut/donut.component.js +77 -0
  56. package/dist/lib/esm2015/components/donut/donut.module.js +18 -0
  57. package/dist/lib/esm2015/components/free-brush/free-brush.component.js +83 -0
  58. package/dist/lib/esm2015/components/free-brush/free-brush.module.js +18 -0
  59. package/dist/lib/esm2015/components/graph/graph.component.js +157 -0
  60. package/dist/lib/esm2015/components/graph/graph.module.js +18 -0
  61. package/dist/lib/esm2015/components/grouped-bar/grouped-bar.component.js +83 -0
  62. package/dist/lib/esm2015/components/grouped-bar/grouped-bar.module.js +18 -0
  63. package/dist/lib/esm2015/components/line/line.component.js +77 -0
  64. package/dist/lib/esm2015/components/line/line.module.js +18 -0
  65. package/dist/lib/esm2015/components/sankey/sankey.component.js +139 -0
  66. package/dist/lib/esm2015/components/sankey/sankey.module.js +18 -0
  67. package/dist/lib/esm2015/components/scatter/scatter.component.js +83 -0
  68. package/dist/lib/esm2015/components/scatter/scatter.module.js +18 -0
  69. package/dist/lib/esm2015/components/stacked-bar/stacked-bar.component.js +83 -0
  70. package/dist/lib/esm2015/components/stacked-bar/stacked-bar.module.js +18 -0
  71. package/dist/lib/esm2015/components/timeline/timeline.component.js +87 -0
  72. package/dist/lib/esm2015/components/timeline/timeline.module.js +18 -0
  73. package/dist/lib/esm2015/components/tooltip/tooltip.component.js +49 -0
  74. package/dist/lib/esm2015/components/tooltip/tooltip.module.js +18 -0
  75. package/dist/lib/esm2015/components/topojson-map/topojson-map.component.js +111 -0
  76. package/dist/lib/esm2015/components/topojson-map/topojson-map.module.js +18 -0
  77. package/dist/lib/esm2015/components/xy-labels/xy-labels.component.js +91 -0
  78. package/dist/lib/esm2015/components/xy-labels/xy-labels.module.js +18 -0
  79. package/dist/lib/esm2015/components.js +43 -0
  80. package/dist/lib/esm2015/containers/single-container/single-container.component.js +71 -0
  81. package/dist/lib/esm2015/containers/single-container/single-container.module.js +17 -0
  82. package/dist/lib/esm2015/containers/xy-container/xy-container.component.js +159 -0
  83. package/dist/lib/esm2015/containers/xy-container/xy-container.module.js +17 -0
  84. package/dist/lib/esm2015/containers.js +5 -0
  85. package/dist/lib/esm2015/core/core-component.js +4 -0
  86. package/dist/lib/esm2015/core/generic-component.js +3 -0
  87. package/dist/lib/esm2015/core/index.js +4 -0
  88. package/dist/lib/esm2015/core/xy-component.js +4 -0
  89. package/dist/lib/esm2015/html-components/bullet-legend/bullet-legend.component.js +48 -0
  90. package/dist/lib/esm2015/html-components/bullet-legend/bullet-legend.module.js +18 -0
  91. package/dist/lib/esm2015/html-components/leaflet-flow-map/leaflet-flow-map.component.js +157 -0
  92. package/dist/lib/esm2015/html-components/leaflet-flow-map/leaflet-flow-map.module.js +17 -0
  93. package/dist/lib/esm2015/html-components/leaflet-map/leaflet-map.component.js +131 -0
  94. package/dist/lib/esm2015/html-components/leaflet-map/leaflet-map.module.js +17 -0
  95. package/dist/lib/esm2015/public-api.js +3 -0
  96. package/dist/lib/esm2015/unovis-angular.js +5 -0
  97. package/dist/lib/fesm2015/unovis-angular.js +2278 -0
  98. package/dist/lib/fesm2015/unovis-angular.js.map +1 -0
  99. package/dist/lib/html-components/bullet-legend/bullet-legend.component.d.ts +24 -0
  100. package/dist/lib/html-components/bullet-legend/bullet-legend.module.d.ts +7 -0
  101. package/dist/lib/html-components/leaflet-flow-map/leaflet-flow-map.component.d.ts +197 -0
  102. package/dist/lib/html-components/leaflet-flow-map/leaflet-flow-map.module.d.ts +7 -0
  103. package/dist/lib/html-components/leaflet-map/leaflet-map.component.d.ts +168 -0
  104. package/dist/lib/html-components/leaflet-map/leaflet-map.module.d.ts +7 -0
  105. package/dist/lib/package.json +24 -0
  106. package/dist/lib/public-api.d.ts +2 -0
  107. package/dist/lib/unovis-angular.d.ts +5 -0
  108. package/package.json +44 -0
@@ -0,0 +1,24 @@
1
+ import { AfterViewInit, SimpleChanges, ElementRef } from '@angular/core';
2
+ import { BulletLegend, BulletLegendConfigInterface, BulletLegendItemInterface } from '@unovis/ts';
3
+ import * as i0 from "@angular/core";
4
+ export declare class VisBulletLegendComponent implements BulletLegendConfigInterface, AfterViewInit {
5
+ containerRef: ElementRef;
6
+ /** Legend items array BulletLegendItemInterface[]. Default: `[]` */
7
+ items: BulletLegendItemInterface[];
8
+ /** Apply a specific class to the labels. Default: `''` */
9
+ labelClassName?: string;
10
+ /** Callback function for the legend item click. Default: `undefined` */
11
+ onLegendItemClick?: ((d: BulletLegendItemInterface, i: number) => void);
12
+ /** Label text (<span> element) font-size CSS. Default: `null` */
13
+ labelFontSize?: string | null;
14
+ /** Label text (<span> element) max-width CSS property. Default: `null` */
15
+ labelMaxWidth?: string | null;
16
+ /** Bullet circle size, mapped to the width and height CSS properties. Default: `null` */
17
+ bulletSize?: string | null;
18
+ component: BulletLegend | undefined;
19
+ ngAfterViewInit(): void;
20
+ ngOnChanges(changes: SimpleChanges): void;
21
+ private getConfig;
22
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisBulletLegendComponent, never>;
23
+ static ɵcmp: i0.ɵɵComponentDeclaration<VisBulletLegendComponent, "vis-bullet-legend", never, { "items": "items"; "labelClassName": "labelClassName"; "onLegendItemClick": "onLegendItemClick"; "labelFontSize": "labelFontSize"; "labelMaxWidth": "labelMaxWidth"; "bulletSize": "bulletSize"; }, {}, never, never>;
24
+ }
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./bullet-legend.component";
3
+ export declare class VisBulletLegendModule {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisBulletLegendModule, never>;
5
+ static ɵmod: i0.ɵɵNgModuleDeclaration<VisBulletLegendModule, [typeof i1.VisBulletLegendComponent], never, [typeof i1.VisBulletLegendComponent]>;
6
+ static ɵinj: i0.ɵɵInjectorDeclaration<VisBulletLegendModule>;
7
+ }
@@ -0,0 +1,197 @@
1
+ import { AfterViewInit, SimpleChanges, ElementRef } from '@angular/core';
2
+ import { LeafletFlowMap, LeafletFlowMapConfigInterface, VisEventType, VisEventCallback, Bounds, MapZoomState, NumericAccessor, StringAccessor, ColorAccessor, LeafletMapPointDatum, LeafletMapPointStyles, Tooltip, LeafletMapClusterDatum } from '@unovis/ts';
3
+ import { StyleSpecification } from 'maplibre-gl';
4
+ import * as i0 from "@angular/core";
5
+ export declare class VisLeafletFlowMapComponent<PointDatum, FlowDatum> implements LeafletFlowMapConfigInterface<PointDatum, FlowDatum>, AfterViewInit {
6
+ containerRef: ElementRef;
7
+ /** Width in pixels or in CSS units. By default, the map will automatically fit to the size of the parent element. Default: `undefined`. */
8
+ width?: number | string;
9
+ /** Height in pixels or in CSS units. By default, the map will automatically fit to the size of the parent element. Default: `undefined`. */
10
+ height?: number | string;
11
+ /** Animation duration of the data update transitions in milliseconds. Default: `600` */
12
+ duration?: number;
13
+ /** Events configuration. An object containing properties in the following format:
14
+ *
15
+ * ```
16
+ * {
17
+ * \[selectorString]: {
18
+ * \[eventType]: callbackFunction
19
+ * }
20
+ * }
21
+ * ```
22
+ * e.g.:
23
+ * ```
24
+ * {
25
+ * \[Area.selectors.area]: {
26
+ * click: (d) => console.log("Clicked Area", d)
27
+ * }
28
+ * }
29
+ * ``` */
30
+ events?: {
31
+ [selector: string]: {
32
+ [eventType in VisEventType]?: VisEventCallback;
33
+ };
34
+ };
35
+ /** You can set every SVG and HTML visualization object to have a custom DOM attributes, which is useful
36
+ * when you want to do unit or end-to-end testing. Attributes configuration object has the following structure:
37
+ *
38
+ * ```
39
+ * {
40
+ * \[selectorString]: {
41
+ * \[attributeName]: attribute constant value or accessor function
42
+ * }
43
+ * }
44
+ * ```
45
+ * e.g.:
46
+ * ```
47
+ * {
48
+ * \[Area.selectors.area]: {
49
+ * "test-value": d => d.value
50
+ * }
51
+ * }
52
+ * ``` */
53
+ attributes?: {
54
+ [selector: string]: {
55
+ [attr: string]: string | number | boolean | ((datum: any) => string | number | boolean);
56
+ };
57
+ };
58
+ /** Animation duration when the map is automatically panning or zooming to a point or area. Default: `1500` ms */
59
+ flyToDuration?: number;
60
+ /** Padding to be used when the `fitView` function has been called. The value is in pixels. Default: `[150, 150]` */
61
+ fitViewPadding?: [number, number];
62
+ /** Animation duration for the `setZoom` function. Default: `800` ms */
63
+ zoomDuration?: number;
64
+ /** Default bounds that will be applied on the first map render if the bounds property is not set. Default: `undefined` */
65
+ initialBounds?: Bounds;
66
+ /** Force set map bounds on config and data updates. Default: `undefined` */
67
+ fitBoundsOnUpdate?: Bounds;
68
+ /** Fit the view to contain the data points on map initialization. Default: `true` */
69
+ fitViewOnInit?: boolean;
70
+ /** Fit the view to contain the data points on map config and data updates. Default: `false` */
71
+ fitViewOnUpdate?: boolean;
72
+ /** MapLibre StyleSpecification settings. Default: `MapLibreArcticLight` */
73
+ style: StyleSpecification | string;
74
+ /** MapLibre StyleSpecification settings for dark theme. Default: `undefined` */
75
+ styleDarkTheme: StyleSpecification | string;
76
+ /** Tile server access token or API key. Default: `''` */
77
+ accessToken?: string;
78
+ /** Array of attribution labels. Default: `['<a href="https://www.openstreetmap.org/copyright" target="_blank">OpenStreetMap contributors</a>']` */
79
+ attribution?: string[];
80
+ /** Function to be called after the map's async initialization is done. Default: `undefined` */
81
+ onMapInitialized?: (() => void);
82
+ /** Map Move / Zoom unified callback function. Default: `undefined` */
83
+ onMapMoveZoom?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
84
+ /** Map Move Start callback function. Default: `undefined` */
85
+ onMapMoveStart?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
86
+ /** Map Move End callback function. Default: `undefined` */
87
+ onMapMoveEnd?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
88
+ /** Map Zoom Start callback function. Default: `undefined` */
89
+ onMapZoomStart?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
90
+ /** Map Zoom End callback function. Default: `undefined` */
91
+ onMapZoomEnd?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
92
+ /** Map Zoom End callback function. Default: `undefined` */
93
+ onMapClick?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
94
+ /** Point longitude accessor function. Default: `d => d.longitude` */
95
+ pointLongitude?: NumericAccessor<PointDatum>;
96
+ /** Point latitude accessor function. Default: `d => d.latitude` */
97
+ pointLatitude?: NumericAccessor<PointDatum>;
98
+ /** Point id accessor function or constant value. Default: `d => d.id` */
99
+ pointId?: StringAccessor<PointDatum>;
100
+ /** Point shape accessor function or constant value. Default: `d => d.shape` */
101
+ pointShape?: StringAccessor<PointDatum>;
102
+ /** Point color accessor function or constant value. Default: `d => d.color` */
103
+ pointColor?: ColorAccessor<PointDatum>;
104
+ /** Point radius accessor function or constant value. Default: `undefined` */
105
+ pointRadius?: NumericAccessor<LeafletMapPointDatum<PointDatum>>;
106
+ /** Point inner label accessor function. Default: `d => d.point_count ?? ''` */
107
+ pointLabel?: StringAccessor<LeafletMapPointDatum<PointDatum>>;
108
+ /** Point bottom label accessor function. Default: `''` */
109
+ pointBottomLabel?: StringAccessor<LeafletMapPointDatum<PointDatum>>;
110
+ /** Point cursor value or accessor function. Default: `null` */
111
+ pointCursor?: StringAccessor<LeafletMapPointDatum<PointDatum>>;
112
+ /** Set selected point by its unique id. Default: `undefined` */
113
+ selectedPointId?: string;
114
+ /** Cluster color accessor function or constant value. Default: `undefined` */
115
+ clusterColor?: ColorAccessor<PointDatum>;
116
+ /** Cluster radius accessor function or constant value. Default: `undefined` */
117
+ clusterRadius?: NumericAccessor<LeafletMapClusterDatum<PointDatum>>;
118
+ /** Cluster inner label accessor function. Default: `d => d.point_count` */
119
+ clusterLabel?: StringAccessor<LeafletMapClusterDatum<PointDatum>>;
120
+ /** Cluster bottom label accessor function. Default: `''` */
121
+ clusterBottomLabel?: StringAccessor<LeafletMapClusterDatum<PointDatum>>;
122
+ /** The width of the cluster point outline. Default: `1.25` */
123
+ clusterRingWidth?: number;
124
+ /** When cluster is expanded, show a background circle to better separate points from the base map. Default: `true` */
125
+ clusterBackground?: boolean;
126
+ /** Defines whether the cluster should expand on click or not. Default: `true` */
127
+ clusterExpandOnClick?: boolean;
128
+ /** Clustering distance in pixels. This value will be passed to Supercluster as the `radius` property https://github.com/mapbox/supercluster. Default: `55` */
129
+ clusteringDistance?: number;
130
+ /** A single map point can have multiple properties displayed as a small pie chart (or a donut chart for a cluster of points).
131
+ * By setting the valuesMap configuration you can specify data properties that should be mapped to various pie / donut segments.
132
+ *
133
+ * ```
134
+ * {
135
+ * \[key in keyof Datum]?: { color: string, className?: string }
136
+ * }
137
+ * ```
138
+ * e.g.:
139
+ * ```
140
+ * {
141
+ * \healthy: { color: 'green' },
142
+ * \warning: { color: 'orange' },
143
+ * \danger: { color: 'red' }
144
+ * }
145
+ * ```
146
+ * where every data point has the `healthy`, `warning` and `danger` numerical or boolean property. */
147
+ valuesMap?: LeafletMapPointStyles<PointDatum>;
148
+ /** A TopoJSON Geometry layer to be displayed on top of the map. Supports fill and stroke */
149
+ topoJSONLayer?: {
150
+ sources: any;
151
+ featureName?: string;
152
+ fillProperty?: string;
153
+ strokeProperty?: string;
154
+ fillOpacity?: number;
155
+ strokeOpacity?: number;
156
+ strokeWidth?: number;
157
+ };
158
+ /** Tooltip component. Default: `undefined` */
159
+ tooltip?: Tooltip;
160
+ /** Flow source point longitude accessor function or value. Default:.`f => f.sourceLongitude` */
161
+ sourceLongitude?: NumericAccessor<FlowDatum>;
162
+ /** Flow source point latitude accessor function or value. Default: `f => f.sourceLatitude` */
163
+ sourceLatitude?: NumericAccessor<FlowDatum>;
164
+ /** Flow target point longitude accessor function or value. Default: `f => f.targetLongitude` */
165
+ targetLongitude?: NumericAccessor<FlowDatum>;
166
+ /** Flow target point latitude accessor function or value. Default: `f => f.targetLatitude` */
167
+ targetLatitude?: NumericAccessor<FlowDatum>;
168
+ /** Flow source point radius accessor function or value. Default: `3` */
169
+ sourcePointRadius?: NumericAccessor<FlowDatum>;
170
+ /** Source point color accessor function or value. Default: `'#88919f'` */
171
+ sourcePointColor?: ColorAccessor<FlowDatum>;
172
+ /** Flow particle color accessor function or value. Default: `'#949dad'` */
173
+ flowParticleColor?: ColorAccessor<FlowDatum>;
174
+ /** Flow particle radius accessor function or value. Default: `1.1` */
175
+ flowParticleRadius?: NumericAccessor<FlowDatum>;
176
+ /** Flow particle speed accessor function or value in angular degrees. Default: `0.07` */
177
+ flowParticleSpeed?: NumericAccessor<FlowDatum>;
178
+ /** Flow particle density accessor function or value on the range of [0, 1]. Default: `0.6` */
179
+ flowParticleDensity?: NumericAccessor<FlowDatum>;
180
+ /** Flow source point click callback function. Default: `undefined` */
181
+ onSourcePointClick?: ((f: FlowDatum, x: number, y: number, event: MouseEvent) => unknown);
182
+ /** Flow source point mouse over callback function. Default: `undefined` */
183
+ onSourcePointMouseEnter?: ((f: FlowDatum, x: number, y: number, event: MouseEvent) => unknown);
184
+ /** Flow source point mouse leave callback function. Default: `undefined` */
185
+ onSourcePointMouseLeave?: ((f: FlowDatum, event: MouseEvent) => unknown);
186
+ /** Data */
187
+ data?: {
188
+ points: PointDatum[];
189
+ flows: FlowDatum[];
190
+ };
191
+ component: LeafletFlowMap<PointDatum, FlowDatum> | undefined;
192
+ ngAfterViewInit(): void;
193
+ ngOnChanges(changes: SimpleChanges): void;
194
+ private getConfig;
195
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisLeafletFlowMapComponent<any, any>, never>;
196
+ static ɵcmp: i0.ɵɵComponentDeclaration<VisLeafletFlowMapComponent<any, any>, "vis-leaflet-flow-map", never, { "width": "width"; "height": "height"; "duration": "duration"; "events": "events"; "attributes": "attributes"; "flyToDuration": "flyToDuration"; "fitViewPadding": "fitViewPadding"; "zoomDuration": "zoomDuration"; "initialBounds": "initialBounds"; "fitBoundsOnUpdate": "fitBoundsOnUpdate"; "fitViewOnInit": "fitViewOnInit"; "fitViewOnUpdate": "fitViewOnUpdate"; "style": "style"; "styleDarkTheme": "styleDarkTheme"; "accessToken": "accessToken"; "attribution": "attribution"; "onMapInitialized": "onMapInitialized"; "onMapMoveZoom": "onMapMoveZoom"; "onMapMoveStart": "onMapMoveStart"; "onMapMoveEnd": "onMapMoveEnd"; "onMapZoomStart": "onMapZoomStart"; "onMapZoomEnd": "onMapZoomEnd"; "onMapClick": "onMapClick"; "pointLongitude": "pointLongitude"; "pointLatitude": "pointLatitude"; "pointId": "pointId"; "pointShape": "pointShape"; "pointColor": "pointColor"; "pointRadius": "pointRadius"; "pointLabel": "pointLabel"; "pointBottomLabel": "pointBottomLabel"; "pointCursor": "pointCursor"; "selectedPointId": "selectedPointId"; "clusterColor": "clusterColor"; "clusterRadius": "clusterRadius"; "clusterLabel": "clusterLabel"; "clusterBottomLabel": "clusterBottomLabel"; "clusterRingWidth": "clusterRingWidth"; "clusterBackground": "clusterBackground"; "clusterExpandOnClick": "clusterExpandOnClick"; "clusteringDistance": "clusteringDistance"; "valuesMap": "valuesMap"; "topoJSONLayer": "topoJSONLayer"; "tooltip": "tooltip"; "sourceLongitude": "sourceLongitude"; "sourceLatitude": "sourceLatitude"; "targetLongitude": "targetLongitude"; "targetLatitude": "targetLatitude"; "sourcePointRadius": "sourcePointRadius"; "sourcePointColor": "sourcePointColor"; "flowParticleColor": "flowParticleColor"; "flowParticleRadius": "flowParticleRadius"; "flowParticleSpeed": "flowParticleSpeed"; "flowParticleDensity": "flowParticleDensity"; "onSourcePointClick": "onSourcePointClick"; "onSourcePointMouseEnter": "onSourcePointMouseEnter"; "onSourcePointMouseLeave": "onSourcePointMouseLeave"; "data": "data"; }, {}, never, never>;
197
+ }
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./leaflet-flow-map.component";
3
+ export declare class VisLeafletFlowMapModule {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisLeafletFlowMapModule, never>;
5
+ static ɵmod: i0.ɵɵNgModuleDeclaration<VisLeafletFlowMapModule, [typeof i1.VisLeafletFlowMapComponent], never, [typeof i1.VisLeafletFlowMapComponent]>;
6
+ static ɵinj: i0.ɵɵInjectorDeclaration<VisLeafletFlowMapModule>;
7
+ }
@@ -0,0 +1,168 @@
1
+ import { AfterViewInit, SimpleChanges, ElementRef } from '@angular/core';
2
+ import { LeafletMap, LeafletMapConfigInterface, VisEventType, VisEventCallback, Bounds, MapZoomState, NumericAccessor, StringAccessor, ColorAccessor, LeafletMapPointDatum, LeafletMapPointStyles, Tooltip, LeafletMapClusterDatum } from '@unovis/ts';
3
+ import { StyleSpecification } from 'maplibre-gl';
4
+ import * as i0 from "@angular/core";
5
+ export declare class VisLeafletMapComponent<Datum> implements LeafletMapConfigInterface<Datum>, AfterViewInit {
6
+ containerRef: ElementRef;
7
+ /** Width in pixels or in CSS units. By default, the map will automatically fit to the size of the parent element. Default: `undefined`. */
8
+ width?: number | string;
9
+ /** Height in pixels or in CSS units. By default, the map will automatically fit to the size of the parent element. Default: `undefined`. */
10
+ height?: number | string;
11
+ /** Animation duration of the data update transitions in milliseconds. Default: `600` */
12
+ duration?: number;
13
+ /** Events configuration. An object containing properties in the following format:
14
+ *
15
+ * ```
16
+ * {
17
+ * \[selectorString]: {
18
+ * \[eventType]: callbackFunction
19
+ * }
20
+ * }
21
+ * ```
22
+ * e.g.:
23
+ * ```
24
+ * {
25
+ * \[Area.selectors.area]: {
26
+ * click: (d) => console.log("Clicked Area", d)
27
+ * }
28
+ * }
29
+ * ``` */
30
+ events?: {
31
+ [selector: string]: {
32
+ [eventType in VisEventType]?: VisEventCallback;
33
+ };
34
+ };
35
+ /** You can set every SVG and HTML visualization object to have a custom DOM attributes, which is useful
36
+ * when you want to do unit or end-to-end testing. Attributes configuration object has the following structure:
37
+ *
38
+ * ```
39
+ * {
40
+ * \[selectorString]: {
41
+ * \[attributeName]: attribute constant value or accessor function
42
+ * }
43
+ * }
44
+ * ```
45
+ * e.g.:
46
+ * ```
47
+ * {
48
+ * \[Area.selectors.area]: {
49
+ * "test-value": d => d.value
50
+ * }
51
+ * }
52
+ * ``` */
53
+ attributes?: {
54
+ [selector: string]: {
55
+ [attr: string]: string | number | boolean | ((datum: any) => string | number | boolean);
56
+ };
57
+ };
58
+ /** Animation duration when the map is automatically panning or zooming to a point or area. Default: `1500` ms */
59
+ flyToDuration?: number;
60
+ /** Padding to be used when the `fitView` function has been called. The value is in pixels. Default: `[150, 150]` */
61
+ fitViewPadding?: [number, number];
62
+ /** Animation duration for the `setZoom` function. Default: `800` ms */
63
+ zoomDuration?: number;
64
+ /** Default bounds that will be applied on the first map render if the bounds property is not set. Default: `undefined` */
65
+ initialBounds?: Bounds;
66
+ /** Force set map bounds on config and data updates. Default: `undefined` */
67
+ fitBoundsOnUpdate?: Bounds;
68
+ /** Fit the view to contain the data points on map initialization. Default: `true` */
69
+ fitViewOnInit?: boolean;
70
+ /** Fit the view to contain the data points on map config and data updates. Default: `false` */
71
+ fitViewOnUpdate?: boolean;
72
+ /** MapLibre StyleSpecification settings. Default: `MapLibreArcticLight` */
73
+ style: StyleSpecification | string;
74
+ /** MapLibre StyleSpecification settings for dark theme. Default: `undefined` */
75
+ styleDarkTheme?: StyleSpecification | string;
76
+ /** Tile server access token or API key. Default: `''` */
77
+ accessToken?: string;
78
+ /** Array of attribution labels. Default: `['<a href="https://www.openstreetmap.org/copyright" target="_blank">OpenStreetMap contributors</a>']` */
79
+ attribution?: string[];
80
+ /** Function to be called after the map's async initialization is done. Default: `undefined` */
81
+ onMapInitialized?: (() => void);
82
+ /** Map Move / Zoom unified callback function. Default: `undefined` */
83
+ onMapMoveZoom?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
84
+ /** Map Move Start callback function. Default: `undefined` */
85
+ onMapMoveStart?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
86
+ /** Map Move End callback function. Default: `undefined` */
87
+ onMapMoveEnd?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
88
+ /** Map Zoom Start callback function. Default: `undefined` */
89
+ onMapZoomStart?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
90
+ /** Map Zoom End callback function. Default: `undefined` */
91
+ onMapZoomEnd?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
92
+ /** Map Zoom End callback function. Default: `undefined` */
93
+ onMapClick?: (({ mapCenter, zoomLevel, bounds }: MapZoomState) => void);
94
+ /** Point longitude accessor function. Default: `d => d.longitude` */
95
+ pointLongitude?: NumericAccessor<Datum>;
96
+ /** Point latitude accessor function. Default: `d => d.latitude` */
97
+ pointLatitude?: NumericAccessor<Datum>;
98
+ /** Point id accessor function or constant value. Default: `d => d.id` */
99
+ pointId?: StringAccessor<Datum>;
100
+ /** Point shape accessor function or constant value. Default: `d => d.shape` */
101
+ pointShape?: StringAccessor<Datum>;
102
+ /** Point color accessor function or constant value. Default: `d => d.color` */
103
+ pointColor?: ColorAccessor<Datum>;
104
+ /** Point radius accessor function or constant value. Default: `undefined` */
105
+ pointRadius?: NumericAccessor<LeafletMapPointDatum<Datum>>;
106
+ /** Point inner label accessor function. Default: `d => d.point_count ?? ''` */
107
+ pointLabel?: StringAccessor<LeafletMapPointDatum<Datum>>;
108
+ /** Point bottom label accessor function. Default: `''` */
109
+ pointBottomLabel?: StringAccessor<LeafletMapPointDatum<Datum>>;
110
+ /** Point cursor value or accessor function. Default: `null` */
111
+ pointCursor?: StringAccessor<LeafletMapPointDatum<Datum>>;
112
+ /** Set selected point by its unique id. Default: `undefined` */
113
+ selectedPointId?: string;
114
+ /** Cluster color accessor function or constant value. Default: `undefined` */
115
+ clusterColor?: ColorAccessor<Datum>;
116
+ /** Cluster radius accessor function or constant value. Default: `undefined` */
117
+ clusterRadius?: NumericAccessor<LeafletMapClusterDatum<Datum>>;
118
+ /** Cluster inner label accessor function. Default: `d => d.point_count` */
119
+ clusterLabel?: StringAccessor<LeafletMapClusterDatum<Datum>>;
120
+ /** Cluster bottom label accessor function. Default: `''` */
121
+ clusterBottomLabel?: StringAccessor<LeafletMapClusterDatum<Datum>>;
122
+ /** The width of the cluster point outline. Default: `1.25` */
123
+ clusterRingWidth?: number;
124
+ /** When cluster is expanded, show a background circle to better separate points from the base map. Default: `true` */
125
+ clusterBackground?: boolean;
126
+ /** Defines whether the cluster should expand on click or not. Default: `true` */
127
+ clusterExpandOnClick?: boolean;
128
+ /** Clustering distance in pixels. This value will be passed to Supercluster as the `radius` property https://github.com/mapbox/supercluster. Default: `55` */
129
+ clusteringDistance?: number;
130
+ /** A single map point can have multiple properties displayed as a small pie chart (or a donut chart for a cluster of points).
131
+ * By setting the colorMap configuration you can specify data properties that should be mapped to various pie / donut segments.
132
+ *
133
+ * ```
134
+ * {
135
+ * \[key in keyof Datum]?: { color: string, className?: string }
136
+ * }
137
+ * ```
138
+ * e.g.:
139
+ * ```
140
+ * {
141
+ * \healthy: { color: 'green' },
142
+ * \warning: { color: 'orange' },
143
+ * \danger: { color: 'red' }
144
+ * }
145
+ * ```
146
+ * where every data point has the `healthy`, `warning` and `danger` numerical or boolean property. */
147
+ colorMap?: LeafletMapPointStyles<Datum>;
148
+ /** A TopoJSON Geometry layer to be displayed on top of the map. Supports fill and stroke */
149
+ topoJSONLayer?: {
150
+ sources: any;
151
+ featureName?: string;
152
+ fillProperty?: string;
153
+ strokeProperty?: string;
154
+ fillOpacity?: number;
155
+ strokeOpacity?: number;
156
+ strokeWidth?: number;
157
+ };
158
+ /** Tooltip component. Default: `undefined` */
159
+ tooltip?: Tooltip;
160
+ /** Data */
161
+ data?: Datum[];
162
+ component: LeafletMap<Datum> | undefined;
163
+ ngAfterViewInit(): void;
164
+ ngOnChanges(changes: SimpleChanges): void;
165
+ private getConfig;
166
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisLeafletMapComponent<any>, never>;
167
+ static ɵcmp: i0.ɵɵComponentDeclaration<VisLeafletMapComponent<any>, "vis-leaflet-map", never, { "width": "width"; "height": "height"; "duration": "duration"; "events": "events"; "attributes": "attributes"; "flyToDuration": "flyToDuration"; "fitViewPadding": "fitViewPadding"; "zoomDuration": "zoomDuration"; "initialBounds": "initialBounds"; "fitBoundsOnUpdate": "fitBoundsOnUpdate"; "fitViewOnInit": "fitViewOnInit"; "fitViewOnUpdate": "fitViewOnUpdate"; "style": "style"; "styleDarkTheme": "styleDarkTheme"; "accessToken": "accessToken"; "attribution": "attribution"; "onMapInitialized": "onMapInitialized"; "onMapMoveZoom": "onMapMoveZoom"; "onMapMoveStart": "onMapMoveStart"; "onMapMoveEnd": "onMapMoveEnd"; "onMapZoomStart": "onMapZoomStart"; "onMapZoomEnd": "onMapZoomEnd"; "onMapClick": "onMapClick"; "pointLongitude": "pointLongitude"; "pointLatitude": "pointLatitude"; "pointId": "pointId"; "pointShape": "pointShape"; "pointColor": "pointColor"; "pointRadius": "pointRadius"; "pointLabel": "pointLabel"; "pointBottomLabel": "pointBottomLabel"; "pointCursor": "pointCursor"; "selectedPointId": "selectedPointId"; "clusterColor": "clusterColor"; "clusterRadius": "clusterRadius"; "clusterLabel": "clusterLabel"; "clusterBottomLabel": "clusterBottomLabel"; "clusterRingWidth": "clusterRingWidth"; "clusterBackground": "clusterBackground"; "clusterExpandOnClick": "clusterExpandOnClick"; "clusteringDistance": "clusteringDistance"; "colorMap": "colorMap"; "topoJSONLayer": "topoJSONLayer"; "tooltip": "tooltip"; "data": "data"; }, {}, never, never>;
168
+ }
@@ -0,0 +1,7 @@
1
+ import * as i0 from "@angular/core";
2
+ import * as i1 from "./leaflet-map.component";
3
+ export declare class VisLeafletMapModule {
4
+ static ɵfac: i0.ɵɵFactoryDeclaration<VisLeafletMapModule, never>;
5
+ static ɵmod: i0.ɵɵNgModuleDeclaration<VisLeafletMapModule, [typeof i1.VisLeafletMapComponent], never, [typeof i1.VisLeafletMapComponent]>;
6
+ static ɵinj: i0.ɵɵInjectorDeclaration<VisLeafletMapModule>;
7
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "name": "@unovis/angular",
3
+ "version": "1.0.0-beta.0",
4
+ "license": "Apache-2.0",
5
+ "main": "bundles/unovis-angular.umd.js",
6
+ "module": "fesm2015/unovis-angular.js",
7
+ "typings": "unovis-angular.d.ts",
8
+ "files": [
9
+ "dist"
10
+ ],
11
+ "dependencies": {
12
+ "tslib": "^2.3.1"
13
+ },
14
+ "peerDependencies": {
15
+ "@angular/common": "^12.0.3",
16
+ "@angular/compiler": "^12.0.3",
17
+ "@angular/core": "^12.0.3",
18
+ "@unovis/ts": "1.0.0-beta.0"
19
+ },
20
+ "es2015": "fesm2015/unovis-angular.js",
21
+ "esm2015": "esm2015/unovis-angular.js",
22
+ "fesm2015": "fesm2015/unovis-angular.js",
23
+ "sideEffects": false
24
+ }
@@ -0,0 +1,2 @@
1
+ export * from './containers';
2
+ export * from './components';
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ /// <amd-module name="@unovis/angular" />
5
+ export * from './public-api';
package/package.json ADDED
@@ -0,0 +1,44 @@
1
+ {
2
+ "name": "@unovis/angular",
3
+ "version": "1.0.0-beta.0",
4
+ "license": "Apache-2.0",
5
+ "scripts": {
6
+ "ng": "npx ng",
7
+ "build": "npx ng build",
8
+ "watch": "npx ng build --watch --configuration development",
9
+ "test": "npx ng test",
10
+ "generate": "rollup -c; node .autogen.js; rm .autogen.js"
11
+ },
12
+ "main": "dist/lib/bundles/unovis-angular.umd.js",
13
+ "module": "dist/lib/esm2015/public-api.js",
14
+ "typings": "dist/lib/public-api.d.ts",
15
+ "files": [
16
+ "dist"
17
+ ],
18
+ "dependencies": {
19
+ "tslib": "^2.3.1"
20
+ },
21
+ "peerDependencies": {
22
+ "@angular/common": "^12.0.3",
23
+ "@angular/compiler": "^12.0.3",
24
+ "@angular/core": "^12.0.3",
25
+ "@unovis/ts": "1.0.0-beta.0"
26
+ },
27
+ "devDependencies": {
28
+ "@angular-devkit/build-angular": "^12.0.3",
29
+ "@angular/cli": "^12.0.3",
30
+ "@angular/compiler-cli": "^12.0.3",
31
+ "@types/jasmine": "~3.6.0",
32
+ "@types/node": "^12.11.1",
33
+ "jasmine-core": "~3.7.0",
34
+ "karma": "~6.3.0",
35
+ "karma-chrome-launcher": "~3.1.0",
36
+ "karma-coverage": "~2.0.3",
37
+ "karma-jasmine": "~4.0.0",
38
+ "karma-jasmine-html-reporter": "^1.5.0",
39
+ "ng-packagr": "^12.0.0",
40
+ "rollup": "^2.61.1",
41
+ "rollup-plugin-typescript2": "^0.31.1",
42
+ "ttypescript": "^1.5.13"
43
+ }
44
+ }