* Create single coordinate system and inject it into seriesModel.
(ecModel: GlobalModel, api: ExtensionAPI)
| 36 | * Create single coordinate system and inject it into seriesModel. |
| 37 | */ |
| 38 | function create(ecModel: GlobalModel, api: ExtensionAPI) { |
| 39 | const singles: Single[] = []; |
| 40 | |
| 41 | ecModel.eachComponent(COMPONENT_TYPE_SINGLE_AXIS, function (axisModel: SingleAxisModel, idx: number) { |
| 42 | |
| 43 | const single = new Single(axisModel, ecModel, api); |
| 44 | single.name = 'single_' + idx; |
| 45 | single.resize(axisModel, api); |
| 46 | axisModel.coordinateSystem = single; |
| 47 | singles.push(single); |
| 48 | |
| 49 | }); |
| 50 | |
| 51 | ecModel.eachSeries(function (seriesModel: SeriesModel<SeriesOption & { |
| 52 | singleAxisIndex?: number |
| 53 | singleAxisId?: string |
| 54 | }>) { |
| 55 | if (seriesModel.get('coordinateSystem') === COORD_SYS_TYPE_SINGLE_AXIS_COMPATIBLE) { |
| 56 | const singleAxisModel = seriesModel.getReferringComponents( |
| 57 | COMPONENT_TYPE_SINGLE_AXIS, SINGLE_REFERRING |
| 58 | ).models[0] as SingleAxisModel; |
| 59 | const single = seriesModel.coordinateSystem = singleAxisModel && singleAxisModel.coordinateSystem; |
| 60 | if (single) { |
| 61 | associateSeriesWithAxis(single.getAxis(), seriesModel, COORD_SYS_TYPE_SINGLE); |
| 62 | } |
| 63 | } |
| 64 | }); |
| 65 | |
| 66 | return singles; |
| 67 | } |
| 68 | |
| 69 | const singleCreator = { |
| 70 | create: create, |
nothing calls this directly
no test coverage detected