HighchartsBar   F
last analyzed

Complexity

Total Complexity 147

Size/Duplication

Total Lines 2014
Duplicated Lines 0 %

Coupling/Cohesion

Components 1
Dependencies 5

Importance

Changes 0
Metric Value
wmc 147
lcom 1
cbo 5
dl 0
loc 2014
rs 0.8
c 0
b 0
f 0

120 Methods

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 5 2
B clear() 0 178 5
A getAllowPointSelect() 0 3 1
A getAnimation() 0 3 1
A getAnimationLimit() 0 3 1
A getBorderColor() 0 3 1
A getBorderRadius() 0 3 1
A getBorderWidth() 0 3 1
A getClassName() 0 3 1
A getColor() 0 3 1
A getColorByPoint() 0 3 1
A getColorIndex() 0 3 1
A getColors() 0 3 1
A getCrisp() 0 3 1
A getCropThreshold() 0 3 1
A getCursor() 0 3 1
A getDataLabels() 0 3 1
A getDepth() 0 3 1
A getDescription() 0 3 1
A getEdgeColor() 0 3 1
A getEdgeWidth() 0 3 1
A getEnableMouseTracking() 0 3 1
A getEvents() 0 3 1
A getExposeElementToA11y() 0 3 1
A getFindNearestPointBy() 0 3 1
A getGetExtremesFromAll() 0 3 1
A getGroupPadding() 0 3 1
A getGroupZPadding() 0 3 1
A getGrouping() 0 3 1
A getKeys() 0 3 1
A getLinkedTo() 0 3 1
A getMaxPointWidth() 0 3 1
A getMinPointLength() 0 3 1
A getNegativeColor() 0 3 1
A getPoint() 0 3 1
A getPointDescriptionFormatter() 0 3 1
A getPointInterval() 0 3 1
A getPointIntervalUnit() 0 3 1
A getPointPadding() 0 3 1
A getPointPlacement() 0 3 1
A getPointRange() 0 3 1
A getPointStart() 0 3 1
A getPointWidth() 0 3 1
A getSelected() 0 3 1
A getShadow() 0 3 1
A getShowCheckbox() 0 3 1
A getShowInLegend() 0 3 1
A getSkipKeyboardNavigation() 0 3 1
A getSoftThreshold() 0 3 1
A getStacking() 0 3 1
A getStates() 0 3 1
A getStickyTracking() 0 3 1
A getThreshold() 0 3 1
A getTooltip() 0 3 1
A getTurboThreshold() 0 3 1
A getVisible() 0 3 1
A getZoneAxis() 0 3 1
A getZones() 0 3 1
A jsonSerialize() 0 3 1
A newDataLabels() 0 4 1
A newEvents() 0 4 1
A newPoint() 0 4 1
A newStates() 0 4 1
A setAllowPointSelect() 0 4 1
A setAnimation() 0 4 1
A setAnimationLimit() 0 4 1
A setBorderColor() 0 4 1
A setBorderRadius() 0 4 1
A setBorderWidth() 0 4 1
A setClassName() 0 4 1
A setColor() 0 4 1
A setColorByPoint() 0 4 1
A setColorIndex() 0 4 1
A setColors() 0 4 1
A setCrisp() 0 4 1
A setCropThreshold() 0 4 1
B setCursor() 0 13 7
A setDataLabels() 0 4 1
A setDepth() 0 4 1
A setDescription() 0 4 1
A setEdgeColor() 0 4 1
A setEdgeWidth() 0 4 1
A setEnableMouseTracking() 0 4 1
A setEvents() 0 4 1
A setExposeElementToA11y() 0 4 1
A setFindNearestPointBy() 0 9 3
A setGetExtremesFromAll() 0 4 1
A setGroupPadding() 0 4 1
A setGroupZPadding() 0 4 1
A setGrouping() 0 4 1
A setKeys() 0 4 1
A setLinkedTo() 0 4 1
A setMaxPointWidth() 0 4 1
A setMinPointLength() 0 4 1
A setNegativeColor() 0 4 1
A setPoint() 0 4 1
A setPointDescriptionFormatter() 0 4 1
A setPointInterval() 0 4 1
A setPointIntervalUnit() 0 11 5
A setPointPadding() 0 4 1
A setPointPlacement() 0 10 4
A setPointRange() 0 4 1
A setPointStart() 0 4 1
A setPointWidth() 0 4 1
A setSelected() 0 4 1
A setShadow() 0 4 1
A setShowCheckbox() 0 4 1
A setShowInLegend() 0 4 1
A setSkipKeyboardNavigation() 0 4 1
A setSoftThreshold() 0 4 1
A setStacking() 0 10 4
A setStates() 0 4 1
A setStickyTracking() 0 4 1
A setThreshold() 0 4 1
A setTooltip() 0 4 1
A setTurboThreshold() 0 4 1
A setVisible() 0 4 1
A setZoneAxis() 0 4 1
A setZones() 0 4 1
B toArray() 0 184 5

How to fix   Complexity   

Complex Class

Complex classes like HighchartsBar often do a lot of different things. To break such a class down, we need to identify a cohesive component within that class. A common approach to find such a component is to look for fields/methods that share the same prefixes, or suffixes. You can also have a look at the cohesion graph to spot any un-connected, or weakly-connected components.

Once you have determined the fields that belong together, you can apply the Extract Class refactoring. If the component makes sense as a sub-class, Extract Subclass is also a candidate, and is often faster.

While breaking up the class, it is a good idea to analyze how other classes use HighchartsBar, and based on these observations, apply Extract Interface, too.

1
<?php
2
3
/**
4
 * This file is part of the highcharts-bundle package.
5
 *
6
 * (c) 2017 WEBEWEB
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
namespace WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions;
13
14
use JsonSerializable;
15
use WBW\Library\Core\Utility\Argument\ArrayUtility;
16
17
/**
18
 * Highcharts bar.
19
 *
20
 * @author webeweb <https://github.com/webeweb/>
21
 * @package WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions
22
 * @version 5.0.14
23
 * @final
24
 */
25
final class HighchartsBar implements JsonSerializable {
26
27
    /**
28
     * Allow point select.
29
     *
30
     * @var boolean
31
     * @since 1.2.0
32
     */
33
    private $allowPointSelect = false;
34
35
    /**
36
     * Animation.
37
     *
38
     * @var boolean
39
     */
40
    private $animation = true;
41
42
    /**
43
     * Animation limit.
44
     *
45
     * @var integer
46
     */
47
    private $animationLimit;
48
49
    /**
50
     * Border color.
51
     *
52
     * @var string
53
     */
54
    private $borderColor = "#ffffff";
55
56
    /**
57
     * Border radius.
58
     *
59
     * @var integer
60
     */
61
    private $borderRadius = 0;
62
63
    /**
64
     * Border width.
65
     *
66
     * @var integer
67
     */
68
    private $borderWidth = 1;
69
70
    /**
71
     * Class name.
72
     *
73
     * @var string
74
     * @since 5.0.0
75
     */
76
    private $className;
77
78
    /**
79
     * Color.
80
     *
81
     * @var string
82
     */
83
    private $color;
84
85
    /**
86
     * Color by point.
87
     *
88
     * @var boolean
89
     * @since 2.0
90
     */
91
    private $colorByPoint = false;
92
93
    /**
94
     * Color index.
95
     *
96
     * @var integer
97
     * @since 5.0.0
98
     */
99
    private $colorIndex;
100
101
    /**
102
     * Colors.
103
     *
104
     * @var array
105
     * @since 3.0
106
     */
107
    private $colors;
108
109
    /**
110
     * Crisp.
111
     *
112
     * @var boolean
113
     * @since 5.0.10
114
     */
115
    private $crisp = true;
116
117
    /**
118
     * Crop threshold.
119
     *
120
     * @var integer
121
     */
122
    private $cropThreshold = 50;
123
124
    /**
125
     * Cursor.
126
     *
127
     * @var string
128
     */
129
    private $cursor;
130
131
    /**
132
     * Data labels.
133
     *
134
     * @var \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsDataLabels
135
     */
136
    private $dataLabels;
137
138
    /**
139
     * Depth.
140
     *
141
     * @var integer
142
     * @since 4.0
143
     */
144
    private $depth = 25;
145
146
    /**
147
     * Description.
148
     *
149
     * @var string
150
     * @since 5.0.0
151
     */
152
    private $description;
153
154
    /**
155
     * Edge color.
156
     *
157
     * @var string
158
     */
159
    private $edgeColor;
160
161
    /**
162
     * Edge width.
163
     *
164
     * @var integer
165
     */
166
    private $edgeWidth = 1;
167
168
    /**
169
     * Enable mouse tracking.
170
     *
171
     * @var boolean
172
     */
173
    private $enableMouseTracking = true;
174
175
    /**
176
     * Events.
177
     *
178
     * @var \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsEvents
179
     */
180
    private $events;
181
182
    /**
183
     * Expose element to a11y.
184
     *
185
     * @var boolean
186
     * @since 5.0.12
187
     */
188
    private $exposeElementToA11y;
189
190
    /**
191
     * Find nearest point by.
192
     *
193
     * @var string
194
     * @since 5.0.10
195
     */
196
    private $findNearestPointBy;
197
198
    /**
199
     * Get extremes from all.
200
     *
201
     * @var boolean
202
     * @since 4.1.6
203
     */
204
    private $getExtremesFromAll = false;
205
206
    /**
207
     * Group padding.
208
     *
209
     * @var integer
210
     */
211
    private $groupPadding = 0.2;
212
213
    /**
214
     * Group z padding.
215
     *
216
     * @var integer
217
     * @since 4.0
218
     */
219
    private $groupZPadding = 1;
220
221
    /**
222
     * Grouping.
223
     *
224
     * @var boolean
225
     * @since 2.3.0
226
     */
227
    private $grouping = true;
228
229
    /**
230
     * Keys.
231
     *
232
     * @var array
233
     * @since 4.1.6
234
     */
235
    private $keys;
236
237
    /**
238
     * Linked to.
239
     *
240
     * @var string
241
     * @since 3.0
242
     */
243
    private $linkedTo;
244
245
    /**
246
     * Max point width.
247
     *
248
     * @var integer
249
     * @since 4.1.8
250
     */
251
    private $maxPointWidth;
252
253
    /**
254
     * Min point length.
255
     *
256
     * @var integer
257
     */
258
    private $minPointLength = 0;
259
260
    /**
261
     * Negative color.
262
     *
263
     * @var string
264
     * @since 3.0
265
     */
266
    private $negativeColor;
267
268
    /**
269
     * Point.
270
     *
271
     * @var \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsPoint
272
     */
273
    private $point;
274
275
    /**
276
     * Point description formatter.
277
     *
278
     * @var string
279
     * @since 5.0.12
280
     */
281
    private $pointDescriptionFormatter;
282
283
    /**
284
     * Point interval.
285
     *
286
     * @var integer
287
     */
288
    private $pointInterval = 1;
289
290
    /**
291
     * Point interval unit.
292
     *
293
     * @var string
294
     * @since 4.1.0
295
     */
296
    private $pointIntervalUnit;
297
298
    /**
299
     * Point padding.
300
     *
301
     * @var integer
302
     */
303
    private $pointPadding = 0.1;
304
305
    /**
306
     * Point placement.
307
     *
308
     * @var string|integer
309
     * @since 2.3.0
310
     */
311
    private $pointPlacement;
312
313
    /**
314
     * Point range.
315
     *
316
     * @var integer
317
     * @since 2.3
318
     */
319
    private $pointRange;
320
321
    /**
322
     * Point start.
323
     *
324
     * @var integer
325
     */
326
    private $pointStart = 0;
327
328
    /**
329
     * Point width.
330
     *
331
     * @var integer
332
     * @since 1.2.5
333
     */
334
    private $pointWidth;
335
336
    /**
337
     * Selected.
338
     *
339
     * @var boolean
340
     * @since 1.2.0
341
     */
342
    private $selected = false;
343
344
    /**
345
     * Shadow.
346
     *
347
     * @var boolean|array
348
     */
349
    private $shadow = false;
350
351
    /**
352
     * Show checkbox.
353
     *
354
     * @var boolean
355
     * @since 1.2.0
356
     */
357
    private $showCheckbox = false;
358
359
    /**
360
     * Show in legend.
361
     *
362
     * @var boolean
363
     */
364
    private $showInLegend = true;
365
366
    /**
367
     * Skip keyboard navigation.
368
     *
369
     * @var boolean
370
     * @since 5.0.12
371
     */
372
    private $skipKeyboardNavigation;
373
374
    /**
375
     * Soft threshold.
376
     *
377
     * @var boolean
378
     * @since 4.1.9
379
     */
380
    private $softThreshold = true;
381
382
    /**
383
     * Stacking.
384
     *
385
     * @var string
386
     */
387
    private $stacking;
388
389
    /**
390
     * States.
391
     *
392
     * @var \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsStates
393
     */
394
    private $states;
395
396
    /**
397
     * Sticky tracking.
398
     *
399
     * @var boolean
400
     * @since 2.0
401
     */
402
    private $stickyTracking = true;
403
404
    /**
405
     * Threshold.
406
     *
407
     * @var integer
408
     * @since 2.0
409
     */
410
    private $threshold = 0;
411
412
    /**
413
     * Tooltip.
414
     *
415
     * @var array
416
     * @since 2.3
417
     */
418
    private $tooltip;
419
420
    /**
421
     * Turbo threshold.
422
     *
423
     * @var integer
424
     * @since 2.2
425
     */
426
    private $turboThreshold = 1000;
427
428
    /**
429
     * Visible.
430
     *
431
     * @var boolean
432
     */
433
    private $visible = true;
434
435
    /**
436
     * Zone axis.
437
     *
438
     * @var string
439
     * @since 4.1.0
440
     */
441
    private $zoneAxis = "y";
442
443
    /**
444
     * Zones.
445
     *
446
     * @var array
447
     * @since 4.1.0
448
     */
449
    private $zones;
450
451
    /**
452
     * Constructor.
453
     *
454
     * @param boolean $ignoreDefaultValues Ignore the default values.
455
     */
456
    public function __construct($ignoreDefaultValues = true) {
457
        if (true === $ignoreDefaultValues) {
458
            $this->clear();
459
        }
460
    }
461
462
    /**
463
     * Clear.
464
     *
465
     * @return void
466
     */
467
    public function clear() {
468
469
        // Clear the allow point select.
470
        $this->allowPointSelect = null;
471
472
        // Clear the animation.
473
        $this->animation = null;
474
475
        // Clear the animation limit.
476
        $this->animationLimit = null;
477
478
        // Clear the border color.
479
        $this->borderColor = null;
480
481
        // Clear the border radius.
482
        $this->borderRadius = null;
483
484
        // Clear the border width.
485
        $this->borderWidth = null;
486
487
        // Clear the class name.
488
        $this->className = null;
489
490
        // Clear the color.
491
        $this->color = null;
492
493
        // Clear the color by point.
494
        $this->colorByPoint = null;
495
496
        // Clear the color index.
497
        $this->colorIndex = null;
498
499
        // Clear the colors.
500
        $this->colors = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $colors.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
501
502
        // Clear the crisp.
503
        $this->crisp = null;
504
505
        // Clear the crop threshold.
506
        $this->cropThreshold = null;
507
508
        // Clear the cursor.
509
        $this->cursor = null;
510
511
        // Clear the data labels.
512
        if (null !== $this->dataLabels) {
513
            $this->dataLabels->clear();
514
        }
515
516
        // Clear the depth.
517
        $this->depth = null;
518
519
        // Clear the description.
520
        $this->description = null;
521
522
        // Clear the edge color.
523
        $this->edgeColor = null;
524
525
        // Clear the edge width.
526
        $this->edgeWidth = null;
527
528
        // Clear the enable mouse tracking.
529
        $this->enableMouseTracking = null;
530
531
        // Clear the events.
532
        if (null !== $this->events) {
533
            $this->events->clear();
534
        }
535
536
        // Clear the expose element to a11y.
537
        $this->exposeElementToA11y = null;
538
539
        // Clear the find nearest point by.
540
        $this->findNearestPointBy = null;
541
542
        // Clear the get extremes from all.
543
        $this->getExtremesFromAll = null;
544
545
        // Clear the group padding.
546
        $this->groupPadding = null;
547
548
        // Clear the group z padding.
549
        $this->groupZPadding = null;
550
551
        // Clear the grouping.
552
        $this->grouping = null;
553
554
        // Clear the keys.
555
        $this->keys = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $keys.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
556
557
        // Clear the linked to.
558
        $this->linkedTo = null;
559
560
        // Clear the max point width.
561
        $this->maxPointWidth = null;
562
563
        // Clear the min point length.
564
        $this->minPointLength = null;
565
566
        // Clear the negative color.
567
        $this->negativeColor = null;
568
569
        // Clear the point.
570
        if (null !== $this->point) {
571
            $this->point->clear();
572
        }
573
574
        // Clear the point description formatter.
575
        $this->pointDescriptionFormatter = null;
576
577
        // Clear the point interval.
578
        $this->pointInterval = null;
579
580
        // Clear the point interval unit.
581
        $this->pointIntervalUnit = null;
582
583
        // Clear the point padding.
584
        $this->pointPadding = null;
585
586
        // Clear the point placement.
587
        $this->pointPlacement = null;
588
589
        // Clear the point range.
590
        $this->pointRange = null;
591
592
        // Clear the point start.
593
        $this->pointStart = null;
594
595
        // Clear the point width.
596
        $this->pointWidth = null;
597
598
        // Clear the selected.
599
        $this->selected = null;
600
601
        // Clear the shadow.
602
        $this->shadow = null;
603
604
        // Clear the show checkbox.
605
        $this->showCheckbox = null;
606
607
        // Clear the show in legend.
608
        $this->showInLegend = null;
609
610
        // Clear the skip keyboard navigation.
611
        $this->skipKeyboardNavigation = null;
612
613
        // Clear the soft threshold.
614
        $this->softThreshold = null;
615
616
        // Clear the stacking.
617
        $this->stacking = null;
618
619
        // Clear the states.
620
        if (null !== $this->states) {
621
            $this->states->clear();
622
        }
623
624
        // Clear the sticky tracking.
625
        $this->stickyTracking = null;
626
627
        // Clear the threshold.
628
        $this->threshold = null;
629
630
        // Clear the tooltip.
631
        $this->tooltip = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $tooltip.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
632
633
        // Clear the turbo threshold.
634
        $this->turboThreshold = null;
635
636
        // Clear the visible.
637
        $this->visible = null;
638
639
        // Clear the zone axis.
640
        $this->zoneAxis = null;
641
642
        // Clear the zones.
643
        $this->zones = null;
0 ignored issues
show
Documentation Bug introduced by
It seems like null of type null is incompatible with the declared type array of property $zones.

Our type inference engine has found an assignment to a property that is incompatible with the declared type of that property.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property..

Loading history...
644
    }
645
646
    /**
647
     * Get the allow point select.
648
     *
649
     * @return boolean Returns the allow point select.
650
     */
651
    public function getAllowPointSelect() {
652
        return $this->allowPointSelect;
653
    }
654
655
    /**
656
     * Get the animation.
657
     *
658
     * @return boolean Returns the animation.
659
     */
660
    public function getAnimation() {
661
        return $this->animation;
662
    }
663
664
    /**
665
     * Get the animation limit.
666
     *
667
     * @return integer Returns the animation limit.
668
     */
669
    public function getAnimationLimit() {
670
        return $this->animationLimit;
671
    }
672
673
    /**
674
     * Get the border color.
675
     *
676
     * @return string Returns the border color.
677
     */
678
    public function getBorderColor() {
679
        return $this->borderColor;
680
    }
681
682
    /**
683
     * Get the border radius.
684
     *
685
     * @return integer Returns the border radius.
686
     */
687
    public function getBorderRadius() {
688
        return $this->borderRadius;
689
    }
690
691
    /**
692
     * Get the border width.
693
     *
694
     * @return integer Returns the border width.
695
     */
696
    public function getBorderWidth() {
697
        return $this->borderWidth;
698
    }
699
700
    /**
701
     * Get the class name.
702
     *
703
     * @return string Returns the class name.
704
     */
705
    public function getClassName() {
706
        return $this->className;
707
    }
708
709
    /**
710
     * Get the color.
711
     *
712
     * @return string Returns the color.
713
     */
714
    public function getColor() {
715
        return $this->color;
716
    }
717
718
    /**
719
     * Get the color by point.
720
     *
721
     * @return boolean Returns the color by point.
722
     */
723
    public function getColorByPoint() {
724
        return $this->colorByPoint;
725
    }
726
727
    /**
728
     * Get the color index.
729
     *
730
     * @return integer Returns the color index.
731
     */
732
    public function getColorIndex() {
733
        return $this->colorIndex;
734
    }
735
736
    /**
737
     * Get the colors.
738
     *
739
     * @return array Returns the colors.
740
     */
741
    public function getColors() {
742
        return $this->colors;
743
    }
744
745
    /**
746
     * Get the crisp.
747
     *
748
     * @return boolean Returns the crisp.
749
     */
750
    public function getCrisp() {
751
        return $this->crisp;
752
    }
753
754
    /**
755
     * Get the crop threshold.
756
     *
757
     * @return integer Returns the crop threshold.
758
     */
759
    public function getCropThreshold() {
760
        return $this->cropThreshold;
761
    }
762
763
    /**
764
     * Get the cursor.
765
     *
766
     * @return string Returns the cursor.
767
     */
768
    public function getCursor() {
769
        return $this->cursor;
770
    }
771
772
    /**
773
     * Get the data labels.
774
     *
775
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsDataLabels Returns the data labels.
776
     */
777
    public function getDataLabels() {
778
        return $this->dataLabels;
779
    }
780
781
    /**
782
     * Get the depth.
783
     *
784
     * @return integer Returns the depth.
785
     */
786
    public function getDepth() {
787
        return $this->depth;
788
    }
789
790
    /**
791
     * Get the description.
792
     *
793
     * @return string Returns the description.
794
     */
795
    public function getDescription() {
796
        return $this->description;
797
    }
798
799
    /**
800
     * Get the edge color.
801
     *
802
     * @return string Returns the edge color.
803
     */
804
    public function getEdgeColor() {
805
        return $this->edgeColor;
806
    }
807
808
    /**
809
     * Get the edge width.
810
     *
811
     * @return integer Returns the edge width.
812
     */
813
    public function getEdgeWidth() {
814
        return $this->edgeWidth;
815
    }
816
817
    /**
818
     * Get the enable mouse tracking.
819
     *
820
     * @return boolean Returns the enable mouse tracking.
821
     */
822
    public function getEnableMouseTracking() {
823
        return $this->enableMouseTracking;
824
    }
825
826
    /**
827
     * Get the events.
828
     *
829
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsEvents Returns the events.
830
     */
831
    public function getEvents() {
832
        return $this->events;
833
    }
834
835
    /**
836
     * Get the expose element to a11y.
837
     *
838
     * @return boolean Returns the expose element to a11y.
839
     */
840
    public function getExposeElementToA11y() {
841
        return $this->exposeElementToA11y;
842
    }
843
844
    /**
845
     * Get the find nearest point by.
846
     *
847
     * @return string Returns the find nearest point by.
848
     */
849
    public function getFindNearestPointBy() {
850
        return $this->findNearestPointBy;
851
    }
852
853
    /**
854
     * Get the get extremes from all.
855
     *
856
     * @return boolean Returns the get extremes from all.
857
     */
858
    public function getGetExtremesFromAll() {
859
        return $this->getExtremesFromAll;
860
    }
861
862
    /**
863
     * Get the group padding.
864
     *
865
     * @return integer Returns the group padding.
866
     */
867
    public function getGroupPadding() {
868
        return $this->groupPadding;
869
    }
870
871
    /**
872
     * Get the group z padding.
873
     *
874
     * @return integer Returns the group z padding.
875
     */
876
    public function getGroupZPadding() {
877
        return $this->groupZPadding;
878
    }
879
880
    /**
881
     * Get the grouping.
882
     *
883
     * @return boolean Returns the grouping.
884
     */
885
    public function getGrouping() {
886
        return $this->grouping;
887
    }
888
889
    /**
890
     * Get the keys.
891
     *
892
     * @return array Returns the keys.
893
     */
894
    public function getKeys() {
895
        return $this->keys;
896
    }
897
898
    /**
899
     * Get the linked to.
900
     *
901
     * @return string Returns the linked to.
902
     */
903
    public function getLinkedTo() {
904
        return $this->linkedTo;
905
    }
906
907
    /**
908
     * Get the max point width.
909
     *
910
     * @return integer Returns the max point width.
911
     */
912
    public function getMaxPointWidth() {
913
        return $this->maxPointWidth;
914
    }
915
916
    /**
917
     * Get the min point length.
918
     *
919
     * @return integer Returns the min point length.
920
     */
921
    public function getMinPointLength() {
922
        return $this->minPointLength;
923
    }
924
925
    /**
926
     * Get the negative color.
927
     *
928
     * @return string Returns the negative color.
929
     */
930
    public function getNegativeColor() {
931
        return $this->negativeColor;
932
    }
933
934
    /**
935
     * Get the point.
936
     *
937
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsPoint Returns the point.
938
     */
939
    public function getPoint() {
940
        return $this->point;
941
    }
942
943
    /**
944
     * Get the point description formatter.
945
     *
946
     * @return string Returns the point description formatter.
947
     */
948
    public function getPointDescriptionFormatter() {
949
        return $this->pointDescriptionFormatter;
950
    }
951
952
    /**
953
     * Get the point interval.
954
     *
955
     * @return integer Returns the point interval.
956
     */
957
    public function getPointInterval() {
958
        return $this->pointInterval;
959
    }
960
961
    /**
962
     * Get the point interval unit.
963
     *
964
     * @return string Returns the point interval unit.
965
     */
966
    public function getPointIntervalUnit() {
967
        return $this->pointIntervalUnit;
968
    }
969
970
    /**
971
     * Get the point padding.
972
     *
973
     * @return integer Returns the point padding.
974
     */
975
    public function getPointPadding() {
976
        return $this->pointPadding;
977
    }
978
979
    /**
980
     * Get the point placement.
981
     *
982
     * @return string|integer Returns the point placement.
983
     */
984
    public function getPointPlacement() {
985
        return $this->pointPlacement;
986
    }
987
988
    /**
989
     * Get the point range.
990
     *
991
     * @return integer Returns the point range.
992
     */
993
    public function getPointRange() {
994
        return $this->pointRange;
995
    }
996
997
    /**
998
     * Get the point start.
999
     *
1000
     * @return integer Returns the point start.
1001
     */
1002
    public function getPointStart() {
1003
        return $this->pointStart;
1004
    }
1005
1006
    /**
1007
     * Get the point width.
1008
     *
1009
     * @return integer Returns the point width.
1010
     */
1011
    public function getPointWidth() {
1012
        return $this->pointWidth;
1013
    }
1014
1015
    /**
1016
     * Get the selected.
1017
     *
1018
     * @return boolean Returns the selected.
1019
     */
1020
    public function getSelected() {
1021
        return $this->selected;
1022
    }
1023
1024
    /**
1025
     * Get the shadow.
1026
     *
1027
     * @return boolean|array Returns the shadow.
1028
     */
1029
    public function getShadow() {
1030
        return $this->shadow;
1031
    }
1032
1033
    /**
1034
     * Get the show checkbox.
1035
     *
1036
     * @return boolean Returns the show checkbox.
1037
     */
1038
    public function getShowCheckbox() {
1039
        return $this->showCheckbox;
1040
    }
1041
1042
    /**
1043
     * Get the show in legend.
1044
     *
1045
     * @return boolean Returns the show in legend.
1046
     */
1047
    public function getShowInLegend() {
1048
        return $this->showInLegend;
1049
    }
1050
1051
    /**
1052
     * Get the skip keyboard navigation.
1053
     *
1054
     * @return boolean Returns the skip keyboard navigation.
1055
     */
1056
    public function getSkipKeyboardNavigation() {
1057
        return $this->skipKeyboardNavigation;
1058
    }
1059
1060
    /**
1061
     * Get the soft threshold.
1062
     *
1063
     * @return boolean Returns the soft threshold.
1064
     */
1065
    public function getSoftThreshold() {
1066
        return $this->softThreshold;
1067
    }
1068
1069
    /**
1070
     * Get the stacking.
1071
     *
1072
     * @return string Returns the stacking.
1073
     */
1074
    public function getStacking() {
1075
        return $this->stacking;
1076
    }
1077
1078
    /**
1079
     * Get the states.
1080
     *
1081
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsStates Returns the states.
1082
     */
1083
    public function getStates() {
1084
        return $this->states;
1085
    }
1086
1087
    /**
1088
     * Get the sticky tracking.
1089
     *
1090
     * @return boolean Returns the sticky tracking.
1091
     */
1092
    public function getStickyTracking() {
1093
        return $this->stickyTracking;
1094
    }
1095
1096
    /**
1097
     * Get the threshold.
1098
     *
1099
     * @return integer Returns the threshold.
1100
     */
1101
    public function getThreshold() {
1102
        return $this->threshold;
1103
    }
1104
1105
    /**
1106
     * Get the tooltip.
1107
     *
1108
     * @return array Returns the tooltip.
1109
     */
1110
    public function getTooltip() {
1111
        return $this->tooltip;
1112
    }
1113
1114
    /**
1115
     * Get the turbo threshold.
1116
     *
1117
     * @return integer Returns the turbo threshold.
1118
     */
1119
    public function getTurboThreshold() {
1120
        return $this->turboThreshold;
1121
    }
1122
1123
    /**
1124
     * Get the visible.
1125
     *
1126
     * @return boolean Returns the visible.
1127
     */
1128
    public function getVisible() {
1129
        return $this->visible;
1130
    }
1131
1132
    /**
1133
     * Get the zone axis.
1134
     *
1135
     * @return string Returns the zone axis.
1136
     */
1137
    public function getZoneAxis() {
1138
        return $this->zoneAxis;
1139
    }
1140
1141
    /**
1142
     * Get the zones.
1143
     *
1144
     * @return array Returns the zones.
1145
     */
1146
    public function getZones() {
1147
        return $this->zones;
1148
    }
1149
1150
    /**
1151
     * Serialize this instance.
1152
     *
1153
     * @return array Returns an array representing this instance.
1154
     */
1155
    public function jsonSerialize() {
1156
        return $this->toArray();
1157
    }
1158
1159
    /**
1160
     * Create a new data labels.
1161
     *
1162
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsDataLabels Returns the data labels.
1163
     */
1164
    public function newDataLabels() {
1165
        $this->dataLabels = new \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsDataLabels();
1166
        return $this->dataLabels;
1167
    }
1168
1169
    /**
1170
     * Create a new events.
1171
     *
1172
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsEvents Returns the events.
1173
     */
1174
    public function newEvents() {
1175
        $this->events = new \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsEvents();
1176
        return $this->events;
1177
    }
1178
1179
    /**
1180
     * Create a new point.
1181
     *
1182
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsPoint Returns the point.
1183
     */
1184
    public function newPoint() {
1185
        $this->point = new \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsPoint();
1186
        return $this->point;
1187
    }
1188
1189
    /**
1190
     * Create a new states.
1191
     *
1192
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsStates Returns the states.
1193
     */
1194
    public function newStates() {
1195
        $this->states = new \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsStates();
1196
        return $this->states;
1197
    }
1198
1199
    /**
1200
     * Set the allow point select.
1201
     *
1202
     * @param boolean $allowPointSelect The allow point select.
1203
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1204
     */
1205
    public function setAllowPointSelect($allowPointSelect) {
1206
        $this->allowPointSelect = $allowPointSelect;
1207
        return $this;
1208
    }
1209
1210
    /**
1211
     * Set the animation.
1212
     *
1213
     * @param boolean $animation The animation.
1214
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1215
     */
1216
    public function setAnimation($animation) {
1217
        $this->animation = $animation;
1218
        return $this;
1219
    }
1220
1221
    /**
1222
     * Set the animation limit.
1223
     *
1224
     * @param integer $animationLimit The animation limit.
1225
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1226
     */
1227
    public function setAnimationLimit($animationLimit) {
1228
        $this->animationLimit = $animationLimit;
1229
        return $this;
1230
    }
1231
1232
    /**
1233
     * Set the border color.
1234
     *
1235
     * @param string $borderColor The border color.
1236
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1237
     */
1238
    public function setBorderColor($borderColor) {
1239
        $this->borderColor = $borderColor;
1240
        return $this;
1241
    }
1242
1243
    /**
1244
     * Set the border radius.
1245
     *
1246
     * @param integer $borderRadius The border radius.
1247
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1248
     */
1249
    public function setBorderRadius($borderRadius) {
1250
        $this->borderRadius = $borderRadius;
1251
        return $this;
1252
    }
1253
1254
    /**
1255
     * Set the border width.
1256
     *
1257
     * @param integer $borderWidth The border width.
1258
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1259
     */
1260
    public function setBorderWidth($borderWidth) {
1261
        $this->borderWidth = $borderWidth;
1262
        return $this;
1263
    }
1264
1265
    /**
1266
     * Set the class name.
1267
     *
1268
     * @param string $className The class name.
1269
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1270
     */
1271
    public function setClassName($className) {
1272
        $this->className = $className;
1273
        return $this;
1274
    }
1275
1276
    /**
1277
     * Set the color.
1278
     *
1279
     * @param string $color The color.
1280
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1281
     */
1282
    public function setColor($color) {
1283
        $this->color = $color;
1284
        return $this;
1285
    }
1286
1287
    /**
1288
     * Set the color by point.
1289
     *
1290
     * @param boolean $colorByPoint The color by point.
1291
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1292
     */
1293
    public function setColorByPoint($colorByPoint) {
1294
        $this->colorByPoint = $colorByPoint;
1295
        return $this;
1296
    }
1297
1298
    /**
1299
     * Set the color index.
1300
     *
1301
     * @param integer $colorIndex The color index.
1302
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1303
     */
1304
    public function setColorIndex($colorIndex) {
1305
        $this->colorIndex = $colorIndex;
1306
        return $this;
1307
    }
1308
1309
    /**
1310
     * Set the colors.
1311
     *
1312
     * @param array $colors The colors.
1313
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1314
     */
1315
    public function setColors(array $colors = null) {
1316
        $this->colors = $colors;
0 ignored issues
show
Documentation Bug introduced by
It seems like $colors can be null. However, the property $colors is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
1317
        return $this;
1318
    }
1319
1320
    /**
1321
     * Set the crisp.
1322
     *
1323
     * @param boolean $crisp The crisp.
1324
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1325
     */
1326
    public function setCrisp($crisp) {
1327
        $this->crisp = $crisp;
1328
        return $this;
1329
    }
1330
1331
    /**
1332
     * Set the crop threshold.
1333
     *
1334
     * @param integer $cropThreshold The crop threshold.
1335
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1336
     */
1337
    public function setCropThreshold($cropThreshold) {
1338
        $this->cropThreshold = $cropThreshold;
1339
        return $this;
1340
    }
1341
1342
    /**
1343
     * Set the cursor.
1344
     *
1345
     * @param string $cursor The cursor.
1346
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1347
     */
1348
    public function setCursor($cursor) {
1349
        switch ($cursor) {
1350
            case null:
1351
            case "crosshair":
1352
            case "default":
1353
            case "help":
1354
            case "none":
1355
            case "pointer":
1356
            $this->cursor = $cursor;
1357
            break;
1358
        }
1359
        return $this;
1360
    }
1361
1362
    /**
1363
     * Set the data labels.
1364
     *
1365
     * @param \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsDataLabels $dataLabels The data labels.
1366
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1367
     */
1368
    public function setDataLabels(\WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsDataLabels $dataLabels = null) {
1369
        $this->dataLabels = $dataLabels;
1370
        return $this;
1371
    }
1372
1373
    /**
1374
     * Set the depth.
1375
     *
1376
     * @param integer $depth The depth.
1377
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1378
     */
1379
    public function setDepth($depth) {
1380
        $this->depth = $depth;
1381
        return $this;
1382
    }
1383
1384
    /**
1385
     * Set the description.
1386
     *
1387
     * @param string $description The description.
1388
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1389
     */
1390
    public function setDescription($description) {
1391
        $this->description = $description;
1392
        return $this;
1393
    }
1394
1395
    /**
1396
     * Set the edge color.
1397
     *
1398
     * @param string $edgeColor The edge color.
1399
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1400
     */
1401
    public function setEdgeColor($edgeColor) {
1402
        $this->edgeColor = $edgeColor;
1403
        return $this;
1404
    }
1405
1406
    /**
1407
     * Set the edge width.
1408
     *
1409
     * @param integer $edgeWidth The edge width.
1410
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1411
     */
1412
    public function setEdgeWidth($edgeWidth) {
1413
        $this->edgeWidth = $edgeWidth;
1414
        return $this;
1415
    }
1416
1417
    /**
1418
     * Set the enable mouse tracking.
1419
     *
1420
     * @param boolean $enableMouseTracking The enable mouse tracking.
1421
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1422
     */
1423
    public function setEnableMouseTracking($enableMouseTracking) {
1424
        $this->enableMouseTracking = $enableMouseTracking;
1425
        return $this;
1426
    }
1427
1428
    /**
1429
     * Set the events.
1430
     *
1431
     * @param \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsEvents $events The events.
1432
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1433
     */
1434
    public function setEvents(\WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsEvents $events = null) {
1435
        $this->events = $events;
1436
        return $this;
1437
    }
1438
1439
    /**
1440
     * Set the expose element to a11y.
1441
     *
1442
     * @param boolean $exposeElementToA11y The expose element to a11y.
1443
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1444
     */
1445
    public function setExposeElementToA11y($exposeElementToA11y) {
1446
        $this->exposeElementToA11y = $exposeElementToA11y;
1447
        return $this;
1448
    }
1449
1450
    /**
1451
     * Set the find nearest point by.
1452
     *
1453
     * @param string $findNearestPointBy The find nearest point by.
1454
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1455
     */
1456
    public function setFindNearestPointBy($findNearestPointBy) {
1457
        switch ($findNearestPointBy) {
1458
            case "x":
1459
            case "xy":
1460
            $this->findNearestPointBy = $findNearestPointBy;
1461
            break;
1462
        }
1463
        return $this;
1464
    }
1465
1466
    /**
1467
     * Set the get extremes from all.
1468
     *
1469
     * @param boolean $getExtremesFromAll The get extremes from all.
1470
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1471
     */
1472
    public function setGetExtremesFromAll($getExtremesFromAll) {
1473
        $this->getExtremesFromAll = $getExtremesFromAll;
1474
        return $this;
1475
    }
1476
1477
    /**
1478
     * Set the group padding.
1479
     *
1480
     * @param integer $groupPadding The group padding.
1481
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1482
     */
1483
    public function setGroupPadding($groupPadding) {
1484
        $this->groupPadding = $groupPadding;
1485
        return $this;
1486
    }
1487
1488
    /**
1489
     * Set the group z padding.
1490
     *
1491
     * @param integer $groupZPadding The group z padding.
1492
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1493
     */
1494
    public function setGroupZPadding($groupZPadding) {
1495
        $this->groupZPadding = $groupZPadding;
1496
        return $this;
1497
    }
1498
1499
    /**
1500
     * Set the grouping.
1501
     *
1502
     * @param boolean $grouping The grouping.
1503
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1504
     */
1505
    public function setGrouping($grouping) {
1506
        $this->grouping = $grouping;
1507
        return $this;
1508
    }
1509
1510
    /**
1511
     * Set the keys.
1512
     *
1513
     * @param array $keys The keys.
1514
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1515
     */
1516
    public function setKeys(array $keys = null) {
1517
        $this->keys = $keys;
0 ignored issues
show
Documentation Bug introduced by
It seems like $keys can be null. However, the property $keys is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
1518
        return $this;
1519
    }
1520
1521
    /**
1522
     * Set the linked to.
1523
     *
1524
     * @param string $linkedTo The linked to.
1525
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1526
     */
1527
    public function setLinkedTo($linkedTo) {
1528
        $this->linkedTo = $linkedTo;
1529
        return $this;
1530
    }
1531
1532
    /**
1533
     * Set the max point width.
1534
     *
1535
     * @param integer $maxPointWidth The max point width.
1536
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1537
     */
1538
    public function setMaxPointWidth($maxPointWidth) {
1539
        $this->maxPointWidth = $maxPointWidth;
1540
        return $this;
1541
    }
1542
1543
    /**
1544
     * Set the min point length.
1545
     *
1546
     * @param integer $minPointLength The min point length.
1547
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1548
     */
1549
    public function setMinPointLength($minPointLength) {
1550
        $this->minPointLength = $minPointLength;
1551
        return $this;
1552
    }
1553
1554
    /**
1555
     * Set the negative color.
1556
     *
1557
     * @param string $negativeColor The negative color.
1558
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1559
     */
1560
    public function setNegativeColor($negativeColor) {
1561
        $this->negativeColor = $negativeColor;
1562
        return $this;
1563
    }
1564
1565
    /**
1566
     * Set the point.
1567
     *
1568
     * @param \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsPoint $point The point.
1569
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1570
     */
1571
    public function setPoint(\WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsPoint $point = null) {
1572
        $this->point = $point;
1573
        return $this;
1574
    }
1575
1576
    /**
1577
     * Set the point description formatter.
1578
     *
1579
     * @param string $pointDescriptionFormatter The point description formatter.
1580
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1581
     */
1582
    public function setPointDescriptionFormatter($pointDescriptionFormatter) {
1583
        $this->pointDescriptionFormatter = $pointDescriptionFormatter;
1584
        return $this;
1585
    }
1586
1587
    /**
1588
     * Set the point interval.
1589
     *
1590
     * @param integer $pointInterval The point interval.
1591
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1592
     */
1593
    public function setPointInterval($pointInterval) {
1594
        $this->pointInterval = $pointInterval;
1595
        return $this;
1596
    }
1597
1598
    /**
1599
     * Set the point interval unit.
1600
     *
1601
     * @param string $pointIntervalUnit The point interval unit.
1602
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1603
     */
1604
    public function setPointIntervalUnit($pointIntervalUnit) {
1605
        switch ($pointIntervalUnit) {
1606
            case null:
1607
            case "day":
1608
            case "month":
1609
            case "year":
1610
            $this->pointIntervalUnit = $pointIntervalUnit;
1611
            break;
1612
        }
1613
        return $this;
1614
    }
1615
1616
    /**
1617
     * Set the point padding.
1618
     *
1619
     * @param integer $pointPadding The point padding.
1620
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1621
     */
1622
    public function setPointPadding($pointPadding) {
1623
        $this->pointPadding = $pointPadding;
1624
        return $this;
1625
    }
1626
1627
    /**
1628
     * Set the point placement.
1629
     *
1630
     * @param string|integer $pointPlacement The point placement.
1631
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1632
     */
1633
    public function setPointPlacement($pointPlacement) {
1634
        switch ($pointPlacement) {
1635
            case null:
1636
            case "between":
1637
            case "on":
1638
            $this->pointPlacement = $pointPlacement;
1639
            break;
1640
        }
1641
        return $this;
1642
    }
1643
1644
    /**
1645
     * Set the point range.
1646
     *
1647
     * @param integer $pointRange The point range.
1648
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1649
     */
1650
    public function setPointRange($pointRange) {
1651
        $this->pointRange = $pointRange;
1652
        return $this;
1653
    }
1654
1655
    /**
1656
     * Set the point start.
1657
     *
1658
     * @param integer $pointStart The point start.
1659
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1660
     */
1661
    public function setPointStart($pointStart) {
1662
        $this->pointStart = $pointStart;
1663
        return $this;
1664
    }
1665
1666
    /**
1667
     * Set the point width.
1668
     *
1669
     * @param integer $pointWidth The point width.
1670
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1671
     */
1672
    public function setPointWidth($pointWidth) {
1673
        $this->pointWidth = $pointWidth;
1674
        return $this;
1675
    }
1676
1677
    /**
1678
     * Set the selected.
1679
     *
1680
     * @param boolean $selected The selected.
1681
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1682
     */
1683
    public function setSelected($selected) {
1684
        $this->selected = $selected;
1685
        return $this;
1686
    }
1687
1688
    /**
1689
     * Set the shadow.
1690
     *
1691
     * @param boolean|array $shadow The shadow.
1692
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1693
     */
1694
    public function setShadow($shadow) {
1695
        $this->shadow = $shadow;
1696
        return $this;
1697
    }
1698
1699
    /**
1700
     * Set the show checkbox.
1701
     *
1702
     * @param boolean $showCheckbox The show checkbox.
1703
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1704
     */
1705
    public function setShowCheckbox($showCheckbox) {
1706
        $this->showCheckbox = $showCheckbox;
1707
        return $this;
1708
    }
1709
1710
    /**
1711
     * Set the show in legend.
1712
     *
1713
     * @param boolean $showInLegend The show in legend.
1714
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1715
     */
1716
    public function setShowInLegend($showInLegend) {
1717
        $this->showInLegend = $showInLegend;
1718
        return $this;
1719
    }
1720
1721
    /**
1722
     * Set the skip keyboard navigation.
1723
     *
1724
     * @param boolean $skipKeyboardNavigation The skip keyboard navigation.
1725
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1726
     */
1727
    public function setSkipKeyboardNavigation($skipKeyboardNavigation) {
1728
        $this->skipKeyboardNavigation = $skipKeyboardNavigation;
1729
        return $this;
1730
    }
1731
1732
    /**
1733
     * Set the soft threshold.
1734
     *
1735
     * @param boolean $softThreshold The soft threshold.
1736
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1737
     */
1738
    public function setSoftThreshold($softThreshold) {
1739
        $this->softThreshold = $softThreshold;
1740
        return $this;
1741
    }
1742
1743
    /**
1744
     * Set the stacking.
1745
     *
1746
     * @param string $stacking The stacking.
1747
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1748
     */
1749
    public function setStacking($stacking) {
1750
        switch ($stacking) {
1751
            case null:
1752
            case "normal":
1753
            case "percent":
1754
            $this->stacking = $stacking;
1755
            break;
1756
        }
1757
        return $this;
1758
    }
1759
1760
    /**
1761
     * Set the states.
1762
     *
1763
     * @param \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsStates $states The states.
1764
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1765
     */
1766
    public function setStates(\WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\Bar\HighchartsStates $states = null) {
1767
        $this->states = $states;
1768
        return $this;
1769
    }
1770
1771
    /**
1772
     * Set the sticky tracking.
1773
     *
1774
     * @param boolean $stickyTracking The sticky tracking.
1775
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1776
     */
1777
    public function setStickyTracking($stickyTracking) {
1778
        $this->stickyTracking = $stickyTracking;
1779
        return $this;
1780
    }
1781
1782
    /**
1783
     * Set the threshold.
1784
     *
1785
     * @param integer $threshold The threshold.
1786
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1787
     */
1788
    public function setThreshold($threshold) {
1789
        $this->threshold = $threshold;
1790
        return $this;
1791
    }
1792
1793
    /**
1794
     * Set the tooltip.
1795
     *
1796
     * @param array $tooltip The tooltip.
1797
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1798
     */
1799
    public function setTooltip(array $tooltip = null) {
1800
        $this->tooltip = $tooltip;
0 ignored issues
show
Documentation Bug introduced by
It seems like $tooltip can be null. However, the property $tooltip is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
1801
        return $this;
1802
    }
1803
1804
    /**
1805
     * Set the turbo threshold.
1806
     *
1807
     * @param integer $turboThreshold The turbo threshold.
1808
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1809
     */
1810
    public function setTurboThreshold($turboThreshold) {
1811
        $this->turboThreshold = $turboThreshold;
1812
        return $this;
1813
    }
1814
1815
    /**
1816
     * Set the visible.
1817
     *
1818
     * @param boolean $visible The visible.
1819
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1820
     */
1821
    public function setVisible($visible) {
1822
        $this->visible = $visible;
1823
        return $this;
1824
    }
1825
1826
    /**
1827
     * Set the zone axis.
1828
     *
1829
     * @param string $zoneAxis The zone axis.
1830
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1831
     */
1832
    public function setZoneAxis($zoneAxis) {
1833
        $this->zoneAxis = $zoneAxis;
1834
        return $this;
1835
    }
1836
1837
    /**
1838
     * Set the zones.
1839
     *
1840
     * @param array $zones The zones.
1841
     * @return \WBW\Bundle\HighchartsBundle\API\Chart\PlotOptions\HighchartsBar Returns the highcharts bar.
1842
     */
1843
    public function setZones(array $zones = null) {
1844
        $this->zones = $zones;
0 ignored issues
show
Documentation Bug introduced by
It seems like $zones can be null. However, the property $zones is declared as array. Maybe change the type of the property to array|null or add a type check?

Our type inference engine has found an assignment of a scalar value (like a string, an integer or null) to a property which is an array.

Either this assignment is in error or the assigned type should be added to the documentation/type hint for that property.

To type hint that a parameter can be either an array or null, you can set a type hint of array and a default value of null. The PHP interpreter will then accept both an array or null for that parameter.

function aContainsB(array $needle = null, array  $haystack) {
    if (!$needle) {
        return false;
    }

    return array_intersect($haystack, $needle) == $haystack;
}

The function can be called with either null or an array for the parameter $needle but will only accept an array as $haystack.

Loading history...
1845
        return $this;
1846
    }
1847
1848
    /**
1849
     * Convert into an array representing this instance.
1850
     *
1851
     * @return array Returns an array representing this instance.
1852
     */
1853
    public function toArray() {
1854
1855
        // Initialize the output.
1856
        $output = [];
1857
1858
        // Set the allow point select.
1859
        ArrayUtility::set($output, "allowPointSelect", $this->allowPointSelect, [null]);
1860
1861
        // Set the animation.
1862
        ArrayUtility::set($output, "animation", $this->animation, [null]);
1863
1864
        // Set the animation limit.
1865
        ArrayUtility::set($output, "animationLimit", $this->animationLimit, [null]);
1866
1867
        // Set the border color.
1868
        ArrayUtility::set($output, "borderColor", $this->borderColor, [null]);
1869
1870
        // Set the border radius.
1871
        ArrayUtility::set($output, "borderRadius", $this->borderRadius, [null]);
1872
1873
        // Set the border width.
1874
        ArrayUtility::set($output, "borderWidth", $this->borderWidth, [null]);
1875
1876
        // Set the class name.
1877
        ArrayUtility::set($output, "className", $this->className, [null]);
1878
1879
        // Set the color.
1880
        ArrayUtility::set($output, "color", $this->color, [null]);
1881
1882
        // Set the color by point.
1883
        ArrayUtility::set($output, "colorByPoint", $this->colorByPoint, [null]);
1884
1885
        // Set the color index.
1886
        ArrayUtility::set($output, "colorIndex", $this->colorIndex, [null]);
1887
1888
        // Set the colors.
1889
        ArrayUtility::set($output, "colors", $this->colors, [null]);
1890
1891
        // Set the crisp.
1892
        ArrayUtility::set($output, "crisp", $this->crisp, [null]);
1893
1894
        // Set the crop threshold.
1895
        ArrayUtility::set($output, "cropThreshold", $this->cropThreshold, [null]);
1896
1897
        // Set the cursor.
1898
        ArrayUtility::set($output, "cursor", $this->cursor, [null]);
1899
1900
        // Set the data labels.
1901
        if (null !== $this->dataLabels) {
1902
            ArrayUtility::set($output, "dataLabels", $this->dataLabels->toArray(), []);
1903
        }
1904
1905
        // Set the depth.
1906
        ArrayUtility::set($output, "depth", $this->depth, [null]);
1907
1908
        // Set the description.
1909
        ArrayUtility::set($output, "description", $this->description, [null]);
1910
1911
        // Set the edge color.
1912
        ArrayUtility::set($output, "edgeColor", $this->edgeColor, [null]);
1913
1914
        // Set the edge width.
1915
        ArrayUtility::set($output, "edgeWidth", $this->edgeWidth, [null]);
1916
1917
        // Set the enable mouse tracking.
1918
        ArrayUtility::set($output, "enableMouseTracking", $this->enableMouseTracking, [null]);
1919
1920
        // Set the events.
1921
        if (null !== $this->events) {
1922
            ArrayUtility::set($output, "events", $this->events->toArray(), []);
1923
        }
1924
1925
        // Set the expose element to a11y.
1926
        ArrayUtility::set($output, "exposeElementToA11y", $this->exposeElementToA11y, [null]);
1927
1928
        // Set the find nearest point by.
1929
        ArrayUtility::set($output, "findNearestPointBy", $this->findNearestPointBy, [null]);
1930
1931
        // Set the get extremes from all.
1932
        ArrayUtility::set($output, "getExtremesFromAll", $this->getExtremesFromAll, [null]);
1933
1934
        // Set the group padding.
1935
        ArrayUtility::set($output, "groupPadding", $this->groupPadding, [null]);
1936
1937
        // Set the group z padding.
1938
        ArrayUtility::set($output, "groupZPadding", $this->groupZPadding, [null]);
1939
1940
        // Set the grouping.
1941
        ArrayUtility::set($output, "grouping", $this->grouping, [null]);
1942
1943
        // Set the keys.
1944
        ArrayUtility::set($output, "keys", $this->keys, [null]);
1945
1946
        // Set the linked to.
1947
        ArrayUtility::set($output, "linkedTo", $this->linkedTo, [null]);
1948
1949
        // Set the max point width.
1950
        ArrayUtility::set($output, "maxPointWidth", $this->maxPointWidth, [null]);
1951
1952
        // Set the min point length.
1953
        ArrayUtility::set($output, "minPointLength", $this->minPointLength, [null]);
1954
1955
        // Set the negative color.
1956
        ArrayUtility::set($output, "negativeColor", $this->negativeColor, [null]);
1957
1958
        // Set the point.
1959
        if (null !== $this->point) {
1960
            ArrayUtility::set($output, "point", $this->point->toArray(), []);
1961
        }
1962
1963
        // Set the point description formatter.
1964
        ArrayUtility::set($output, "pointDescriptionFormatter", $this->pointDescriptionFormatter, [null]);
1965
1966
        // Set the point interval.
1967
        ArrayUtility::set($output, "pointInterval", $this->pointInterval, [null]);
1968
1969
        // Set the point interval unit.
1970
        ArrayUtility::set($output, "pointIntervalUnit", $this->pointIntervalUnit, [null]);
1971
1972
        // Set the point padding.
1973
        ArrayUtility::set($output, "pointPadding", $this->pointPadding, [null]);
1974
1975
        // Set the point placement.
1976
        ArrayUtility::set($output, "pointPlacement", $this->pointPlacement, [null]);
1977
1978
        // Set the point range.
1979
        ArrayUtility::set($output, "pointRange", $this->pointRange, [null]);
1980
1981
        // Set the point start.
1982
        ArrayUtility::set($output, "pointStart", $this->pointStart, [null]);
1983
1984
        // Set the point width.
1985
        ArrayUtility::set($output, "pointWidth", $this->pointWidth, [null]);
1986
1987
        // Set the selected.
1988
        ArrayUtility::set($output, "selected", $this->selected, [null]);
1989
1990
        // Set the shadow.
1991
        ArrayUtility::set($output, "shadow", $this->shadow, [null]);
1992
1993
        // Set the show checkbox.
1994
        ArrayUtility::set($output, "showCheckbox", $this->showCheckbox, [null]);
1995
1996
        // Set the show in legend.
1997
        ArrayUtility::set($output, "showInLegend", $this->showInLegend, [null]);
1998
1999
        // Set the skip keyboard navigation.
2000
        ArrayUtility::set($output, "skipKeyboardNavigation", $this->skipKeyboardNavigation, [null]);
2001
2002
        // Set the soft threshold.
2003
        ArrayUtility::set($output, "softThreshold", $this->softThreshold, [null]);
2004
2005
        // Set the stacking.
2006
        ArrayUtility::set($output, "stacking", $this->stacking, [null]);
2007
2008
        // Set the states.
2009
        if (null !== $this->states) {
2010
            ArrayUtility::set($output, "states", $this->states->toArray(), []);
2011
        }
2012
2013
        // Set the sticky tracking.
2014
        ArrayUtility::set($output, "stickyTracking", $this->stickyTracking, [null]);
2015
2016
        // Set the threshold.
2017
        ArrayUtility::set($output, "threshold", $this->threshold, [null]);
2018
2019
        // Set the tooltip.
2020
        ArrayUtility::set($output, "tooltip", $this->tooltip, [null]);
2021
2022
        // Set the turbo threshold.
2023
        ArrayUtility::set($output, "turboThreshold", $this->turboThreshold, [null]);
2024
2025
        // Set the visible.
2026
        ArrayUtility::set($output, "visible", $this->visible, [null]);
2027
2028
        // Set the zone axis.
2029
        ArrayUtility::set($output, "zoneAxis", $this->zoneAxis, [null]);
2030
2031
        // Set the zones.
2032
        ArrayUtility::set($output, "zones", $this->zones, [null]);
2033
2034
        // Return the output.
2035
        return $output;
2036
    }
2037
2038
}
2039