diff --git a/src/options-handlers/helpers/_helpers.common.d.ts b/src/options-handlers/helpers/_helpers.common.d.ts index 4017526..2cb850e 100644 --- a/src/options-handlers/helpers/_helpers.common.d.ts +++ b/src/options-handlers/helpers/_helpers.common.d.ts @@ -93,6 +93,7 @@ export declare const typesMap: { HIXAxis: (options: any) => java.util.ArrayList; HIYAxis: (options: any) => java.util.ArrayList; HIZAxis: (options: any) => java.util.ArrayList; + HIZones: (options: any) => java.util.ArrayList; HIFrame: (options: any) => any; HIBack: (options: any) => any; HIBottom: (options: any) => any; diff --git a/src/options-handlers/helpers/_helpers.common.ts b/src/options-handlers/helpers/_helpers.common.ts index 3633c57..4b5fb13 100644 --- a/src/options-handlers/helpers/_helpers.common.ts +++ b/src/options-handlers/helpers/_helpers.common.ts @@ -28,6 +28,7 @@ import { tooltipHandler } from "../tooltip/tooltip-handler"; import { xAxisHandler } from "../xAxis/xAxis-handler"; import { yAxisHandler } from "../yAxis/yAxis-handler"; import { zAxisHandler } from "../zAxis/zAxis-handler"; +import { zonesHandler } from "../zones/zones-handler"; import { backHandler } from '../frame/back/back-handler'; import { bottomHandler } from '../frame/bottom/bottom-handler'; import { frontHandler } from '../frame/front/front-handler'; @@ -211,6 +212,7 @@ export const typesMap = { 'HIXAxis': (options) => xAxisHandler(options), 'HIYAxis': (options) => yAxisHandler(options), 'HIZAxis': (options) => zAxisHandler(options), + 'HIZones': (options) => zonesHandler(options), // Frame handlers 'HIFrame': (options) => frameHandler(options), diff --git a/src/options-handlers/zones/zones-handler.d.ts b/src/options-handlers/zones/zones-handler.d.ts new file mode 100644 index 0000000..13707d9 --- /dev/null +++ b/src/options-handlers/zones/zones-handler.d.ts @@ -0,0 +1 @@ +export declare function zonesHandler(zonesOptions: any): java.util.ArrayList; diff --git a/src/options-handlers/zones/zones-handler.ts b/src/options-handlers/zones/zones-handler.ts new file mode 100644 index 0000000..5a7c52d --- /dev/null +++ b/src/options-handlers/zones/zones-handler.ts @@ -0,0 +1,26 @@ +import { isAndroid } from "@nativescript/core"; +import { convertJSArrayToNative, optionsBuilder } from "../helpers/helpers"; + +export function zonesHandler(zonesOptions) { + const zones = isAndroid ? new com.highsoft.highcharts.common.hichartsclasses.HIZones() : new HIZones(); + + const zonesSchema = { + className: 'string', + color: 'HIColor', + dashStyle: 'string', + fillColor: 'HIColor', + from: 'number', + marker: 'HIMarker', + to: 'number', + value: 'number' + }; + + let zonesArray = []; + if (zonesOptions instanceof Array) { + zonesArray = zonesOptions.map(zoneOpts => { + return optionsBuilder(zonesSchema, zoneOpts, zones); + }); + } + + return convertJSArrayToNative(zonesArray); +} \ No newline at end of file