playbook_ui 13.10.0.pre.alpha.PLAY1046multilevelsingleselectphase21365 → 13.10.0.pre.alpha.PLAY1051removinghighchartsdependency1465

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 (52) hide show
  1. checksums.yaml +4 -4
  2. data/app/pb_kits/playbook/pb_bar_graph/_bar_graph.tsx +36 -32
  3. data/app/pb_kits/playbook/pb_button/docs/_button_circle_swift.md +28 -0
  4. data/app/pb_kits/playbook/pb_button/docs/_button_default_swift.md +23 -0
  5. data/app/pb_kits/playbook/pb_button/docs/_button_full_width_swift.md +9 -0
  6. data/app/pb_kits/playbook/pb_button/docs/_button_icon_options_swift.md +18 -0
  7. data/app/pb_kits/playbook/pb_button/docs/_button_props_swift.md +11 -0
  8. data/app/pb_kits/playbook/pb_button/docs/_button_size_swift.md +20 -0
  9. data/app/pb_kits/playbook/pb_button/docs/example.yml +8 -0
  10. data/app/pb_kits/playbook/pb_card/docs/_card_background_swift.md +29 -0
  11. data/app/pb_kits/playbook/pb_card/docs/_card_border_none_swift.md +7 -0
  12. data/app/pb_kits/playbook/pb_card/docs/_card_border_radius_swift.md +33 -0
  13. data/app/pb_kits/playbook/pb_card/docs/_card_header_swift.md +33 -0
  14. data/app/pb_kits/playbook/pb_card/docs/_card_highlight_swift.md +17 -0
  15. data/app/pb_kits/playbook/pb_card/docs/_card_light_swift.md +7 -0
  16. data/app/pb_kits/playbook/pb_card/docs/_card_padding_swift.md +33 -0
  17. data/app/pb_kits/playbook/pb_card/docs/_card_props_swift.md +10 -0
  18. data/app/pb_kits/playbook/pb_card/docs/_card_selected_swift.md +0 -0
  19. data/app/pb_kits/playbook/pb_card/docs/_card_separator_swift.md +11 -0
  20. data/app/pb_kits/playbook/pb_card/docs/_card_shadow_swift.md +21 -0
  21. data/app/pb_kits/playbook/pb_card/docs/_card_styles_swift.md +17 -0
  22. data/app/pb_kits/playbook/pb_card/docs/_card_tag_swift.md +0 -0
  23. data/app/pb_kits/playbook/pb_card/docs/example.yml +12 -0
  24. data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_default_swift.md +10 -0
  25. data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_error_swift.md +12 -0
  26. data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_indeterminate_swift.md +12 -0
  27. data/app/pb_kits/playbook/pb_checkbox/docs/_checkbox_props_swift.md +7 -0
  28. data/app/pb_kits/playbook/pb_checkbox/docs/example.yml +7 -0
  29. data/app/pb_kits/playbook/pb_circle_chart/_circle_chart.tsx +67 -63
  30. data/app/pb_kits/playbook/pb_gauge/_gauge.tsx +57 -46
  31. data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_color_props.md +6 -0
  32. data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_color_swift.md +16 -0
  33. data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_defaul_swift.md +7 -0
  34. data/app/pb_kits/playbook/pb_icon_circle/docs/_icon_circle_sizes_swift.md +11 -0
  35. data/app/pb_kits/playbook/pb_icon_circle/docs/example.yml +7 -0
  36. data/app/pb_kits/playbook/pb_line_graph/_line_graph.tsx +39 -34
  37. data/app/pb_kits/playbook/pb_multi_level_select/_multi_level_select.tsx +19 -24
  38. data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_selected_ids.html.erb +1 -0
  39. data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_single.html.erb +45 -104
  40. data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_single.jsx +43 -100
  41. data/app/pb_kits/playbook/pb_multi_level_select/docs/example.yml +0 -2
  42. data/app/pb_kits/playbook/pb_multi_level_select/docs/index.js +0 -1
  43. data/app/pb_kits/playbook/pb_multi_level_select/multi_level_select.rb +0 -3
  44. data/app/pb_kits/playbook/pb_table/docs/_table_header.html.erb +47 -31
  45. data/app/pb_kits/playbook/pb_table/docs/_table_header.md +5 -0
  46. data/app/pb_kits/playbook/pb_table/table_header.html.erb +1 -1
  47. data/app/pb_kits/playbook/pb_treemap_chart/_treemap_chart.tsx +33 -28
  48. data/dist/playbook-rails.js +7 -7
  49. data/lib/playbook/version.rb +1 -1
  50. metadata +29 -4
  51. data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_single_children_only.html.erb +0 -139
  52. data/app/pb_kits/playbook/pb_multi_level_select/docs/_multi_level_select_single_children_only.jsx +0 -151
@@ -3,8 +3,6 @@ import classnames from "classnames";
3
3
  import HighchartsReact from "highcharts-react-official";
4
4
  import highchartsMore from "highcharts/highcharts-more";
5
5
 
6
- import Highcharts from "highcharts";
7
-
8
6
  import { highchartsTheme } from "../pb_dashboard/pbChartsLightTheme";
9
7
  import { highchartsDarkTheme } from "../pb_dashboard/pbChartsDarkTheme";
10
8
  import mapColors from "../pb_dashboard/pbChartsColorsHelper";
@@ -12,35 +10,35 @@ import { globalProps } from "../utilities/globalProps";
12
10
  import { buildAriaProps, buildDataProps } from "../utilities/props";
13
11
 
14
12
  type CircleChartProps = {
15
- align?: "left" | "right" | "center";
16
- aria: { [key: string]: string };
17
- chartData?: [];
18
- children?: Node;
19
- className?: string;
20
- colors?: string[];
21
- dark?: Boolean;
22
- data?: Object;
23
- dataLabelHtml?: string;
24
- dataLabels?: boolean;
25
- height?: string;
26
- id?: string;
27
- innerSize?: "sm" | "md" | "lg" | "none";
28
- legend?: boolean;
29
- maxPointSize?: number;
30
- minPointSize?: number;
31
- rounded?: boolean;
32
- startAngle?: number;
33
- style?: string;
34
- title?: string;
35
- tooltipHtml: string;
36
- useHtml?: boolean;
37
- zMin?: number;
38
- layout?: "horizontal" | "vertical" | "proximate";
39
- verticalAlign?: "top" | "middle" | "bottom";
40
- x?: number;
41
- y?: number;
42
- borderColor?: string;
43
- borderWidth?: number;
13
+ align?: "left" | "right" | "center",
14
+ aria: { [key: string]: string },
15
+ chartData?: [],
16
+ children?: Node,
17
+ className?: string,
18
+ colors?: string[],
19
+ dark?: Boolean,
20
+ data?: Object,
21
+ dataLabelHtml?: string,
22
+ dataLabels?: boolean,
23
+ height?: string,
24
+ id?: string,
25
+ innerSize?: "sm" | "md" | "lg" | "none",
26
+ legend?: boolean,
27
+ maxPointSize?: number,
28
+ minPointSize?: number,
29
+ rounded?: boolean,
30
+ startAngle?: number,
31
+ style?: string,
32
+ title?: string,
33
+ tooltipHtml: string,
34
+ useHtml?: boolean,
35
+ zMin?: number,
36
+ layout?: "horizontal" | "vertical" | "proximate",
37
+ verticalAlign?: "top" | "middle" | "bottom",
38
+ x?: number,
39
+ y?: number,
40
+ borderColor?: string,
41
+ borderWidth?: number,
44
42
  };
45
43
 
46
44
  // Adjust Circle Chart Block Kit Dimensions to Match the Chart for Centering
@@ -90,29 +88,11 @@ const CircleChart = ({
90
88
  }: CircleChartProps) => {
91
89
  const ariaProps = buildAriaProps(aria);
92
90
  const dataProps = buildDataProps(data);
93
- highchartsMore(Highcharts);
94
-
95
- const setupTheme = () => {
96
- dark
97
- ? Highcharts.setOptions(highchartsDarkTheme)
98
- : Highcharts.setOptions(highchartsTheme);
99
- };
100
- setupTheme();
101
-
102
- Highcharts.setOptions({
103
- tooltip: {
104
- headerFormat: null,
105
- pointFormat: tooltipHtml ? tooltipHtml : '<span style="font-weight: bold; color:{point.color};">●</span>{point.name}: ' + "<b>{point.y}</b>",
106
- useHTML: useHtml,
107
- },
108
- });
109
-
110
91
  const innerSizes = { sm: "35%", md: "50%", lg: "85%", none: "0%" };
111
- const innerSizeFormat = (size: "sm" | "md" | "lg" | "none") =>
112
- innerSizes[size];
113
-
92
+ const innerSizeFormat = (size: "sm" | "md" | "lg" | "none") => innerSizes[size];
114
93
 
115
94
  const [options, setOptions] = useState({});
95
+ const [isHighchartsLoaded, setIsHighchartsLoaded] = useState(false);
116
96
 
117
97
  useEffect(() => {
118
98
  const formattedChartData = chartData.map((obj: any) => {
@@ -169,26 +149,50 @@ const CircleChart = ({
169
149
  credits: false,
170
150
  };
171
151
  setOptions({ ...staticOptions });
172
- }, [chartData]);
173
152
 
153
+ const interval = setInterval(() => {
154
+ if (window.Highcharts) {
155
+ clearInterval(interval)
156
+ dark
157
+ ? window.Highcharts.setOptions(highchartsDarkTheme)
158
+ : window.Highcharts.setOptions(highchartsTheme)
159
+
160
+ highchartsMore(window.Highcharts);
161
+
162
+ window.Highcharts.setOptions({
163
+ tooltip: {
164
+ headerFormat: null,
165
+ pointFormat: tooltipHtml ? tooltipHtml : '<span style="font-weight: bold; color:{point.color};">●</span>{point.name}: ' + "<b>{point.y}</b>",
166
+ useHTML: useHtml,
167
+ },
168
+ });
169
+
170
+ setIsHighchartsLoaded(true)
171
+ }
172
+ }, 0)
173
+ }, [chartData]);
174
174
 
175
175
  return (
176
176
  <>
177
177
  {children ? (
178
178
  <div id={`wrapper-circle-chart-${id}`}>
179
- <HighchartsReact
180
- containerProps={{
181
- className: classnames("pb_circle_chart", globalProps(props)),
182
- id: id,
183
- ...ariaProps,
184
- ...dataProps,
185
- }}
186
- highcharts={Highcharts}
187
- options={options}
188
- />
179
+ {
180
+ isHighchartsLoaded &&
181
+ <HighchartsReact
182
+ containerProps={{
183
+ className: classnames("pb_circle_chart", globalProps(props)),
184
+ id: id,
185
+ ...ariaProps,
186
+ ...dataProps,
187
+ }}
188
+ highcharts={window.Highcharts}
189
+ options={options}
190
+ />
191
+ }
189
192
  <div className="pb-circle-chart-block">{children}</div>
190
193
  </div>
191
194
  ) : (
195
+ isHighchartsLoaded &&
192
196
  <HighchartsReact
193
197
  containerProps={{
194
198
  className: classnames("pb_circle_chart", globalProps(props)),
@@ -196,7 +200,7 @@ const CircleChart = ({
196
200
  ...ariaProps,
197
201
  ...dataProps,
198
202
  }}
199
- highcharts={Highcharts}
203
+ highcharts={window.Highcharts}
200
204
  options={options}
201
205
  />
202
206
  )}
@@ -1,7 +1,6 @@
1
1
  import React, { useState, useEffect } from "react";
2
2
  import classnames from "classnames";
3
3
  import HighchartsReact from "highcharts-react-official";
4
- import Highcharts from "highcharts";
5
4
  import { highchartsTheme } from "../pb_dashboard/pbChartsLightTheme";
6
5
  import { highchartsDarkTheme } from "../pb_dashboard/pbChartsDarkTheme";
7
6
  import mapColors from "../pb_dashboard/pbChartsColorsHelper";
@@ -14,26 +13,26 @@ import { buildAriaProps, buildCss, buildDataProps } from "../utilities/props";
14
13
  import { globalProps } from "../utilities/globalProps";
15
14
 
16
15
  type GaugeProps = {
17
- aria: { [key: string]: string };
18
- className?: string;
19
- chartData?: { name: string; value: number[] | number }[];
20
- dark?: Boolean;
21
- data?: { [key: string]: string };
22
- disableAnimation?: boolean;
23
- fullCircle?: boolean;
24
- height?: string;
25
- id?: string;
26
- max?: number;
27
- min?: number;
28
- prefix?: string;
29
- showLabels?: boolean;
30
- style?: string;
31
- suffix?: string;
32
- title?: string;
33
- tooltipHtml?: string;
34
- colors: string[];
35
- minorTickInterval: any;
36
- circumference: number[];
16
+ aria: { [key: string]: string },
17
+ className?: string,
18
+ chartData?: { name: string, value: number[] | number }[],
19
+ dark?: Boolean,
20
+ data?: { [key: string]: string },
21
+ disableAnimation?: boolean,
22
+ fullCircle?: boolean,
23
+ height?: string,
24
+ id?: string,
25
+ max?: number,
26
+ min?: number,
27
+ prefix?: string,
28
+ showLabels?: boolean,
29
+ style?: string,
30
+ suffix?: string,
31
+ title?: string,
32
+ tooltipHtml?: string,
33
+ colors: string[],
34
+ minorTickInterval: any,
35
+ circumference: number[],
37
36
  };
38
37
 
39
38
  const Gauge = ({
@@ -62,28 +61,13 @@ const Gauge = ({
62
61
  }: GaugeProps) => {
63
62
  const ariaProps = buildAriaProps(aria);
64
63
  const dataProps = buildDataProps(data);
65
- highchartsMore(Highcharts);
66
- solidGauge(Highcharts);
67
- const setupTheme = () => {
68
- dark
69
- ? Highcharts.setOptions(highchartsDarkTheme)
70
- : Highcharts.setOptions(highchartsTheme);
71
- };
72
- setupTheme();
73
-
74
- //set tooltip directly to prevent being overriden by Highcharts defaults
75
- Highcharts.setOptions({
76
- tooltip: {
77
- pointFormat: tooltipHtml,
78
- followPointer: true,
79
- },
80
- });
81
64
 
82
65
  const css = buildCss({
83
66
  pb_gauge_kit: true,
84
67
  });
85
68
 
86
69
  const [options, setOptions] = useState({});
70
+ const [isHighchartsLoaded, setIsHighchartsLoaded] = useState(false);
87
71
 
88
72
  useEffect(() => {
89
73
  const formattedChartData = chartData.map((obj: any) => {
@@ -174,18 +158,45 @@ const Gauge = ({
174
158
 
175
159
  setOptions({ ...staticOptions });
176
160
 
177
- if (document.querySelector(".prefix")) {
178
- document.querySelectorAll(".prefix").forEach((prefix) => {
179
- prefix.setAttribute("y", "28");
180
- });
181
- document
182
- .querySelectorAll(".fix")
183
- .forEach((fix) => fix.setAttribute("y", "38"));
184
- }
161
+ const interval = setInterval(() => {
162
+ if (window.Highcharts) {
163
+ clearInterval(interval)
164
+
165
+ const gaugeInterval = setInterval(() => {
166
+ if (document.querySelector(".prefix")) {
167
+ clearInterval(gaugeInterval)
168
+ document.querySelectorAll(".prefix").forEach((prefix) => {
169
+ prefix.setAttribute("y", "28");
170
+ });
171
+ document
172
+ .querySelectorAll(".fix")
173
+ .forEach((fix) => fix.setAttribute("y", "38"));
174
+ }
175
+ }, 0)
176
+
177
+ dark
178
+ ? window.Highcharts.setOptions(highchartsDarkTheme)
179
+ : window.Highcharts.setOptions(highchartsTheme)
180
+
181
+ highchartsMore(window.Highcharts);
182
+ solidGauge(window.Highcharts);
183
+
184
+ //set tooltip directly to prevent being overriden by window.Highcharts defaults
185
+ window.Highcharts.setOptions({
186
+ tooltip: {
187
+ pointFormat: tooltipHtml,
188
+ followPointer: true,
189
+ },
190
+ });
191
+
192
+ setIsHighchartsLoaded(true)
193
+ }
194
+ }, 0)
185
195
 
186
196
  }, [chartData]);
187
197
 
188
198
  return (
199
+ isHighchartsLoaded &&
189
200
  <HighchartsReact
190
201
  containerProps={{
191
202
  className: classnames(css, globalProps(props)),
@@ -193,7 +204,7 @@ const Gauge = ({
193
204
  ...ariaProps,
194
205
  ...dataProps,
195
206
  }}
196
- highcharts={Highcharts}
207
+ highcharts={window.Highcharts}
197
208
  options={options}
198
209
  />
199
210
  );
@@ -0,0 +1,6 @@
1
+ ### Props
2
+ | Name | Type | Description | Default | Values |
3
+ | --- | ----------- | --------- | --------- | --------- |
4
+ | **Icon** | `PlaybookGenericIcon` | Sets the kit's Icon | | |
5
+ | **Size** | `PBIcon.IconSize` | Changes the size of the Circle Icon | `.x1` | `xSmall` `small` `large` `x1` `x2` `x3` `x4` `x5` `x6` `x7` `x8` `x9` `x10` |
6
+ | **Color** | `Color` | Changes color of the Icon and background | `.status(.neutral)` | `Color` |
@@ -0,0 +1,16 @@
1
+ ![icon-circle-colors](https://github.com/powerhome/playbook/assets/92755007/d6507900-98e9-49fb-acfb-a238bef08d1b)
2
+
3
+ ```swift
4
+
5
+ VStack(spacing: Spacing.small) {
6
+ PBIconCircle(FontAwesome.rocket, size: .small, color: Color.data(.data1))
7
+ PBIconCircle(FontAwesome.rocket, size: .small, color: Color.data(.data2))
8
+ PBIconCircle(FontAwesome.rocket, size: .small, color: Color.data(.data3))
9
+ PBIconCircle(FontAwesome.rocket, size: .small, color: Color.data(.data4))
10
+ PBIconCircle(FontAwesome.rocket, size: .small, color: Color.data(.data5))
11
+ PBIconCircle(FontAwesome.rocket, size: .small, color: Color.data(.data6))
12
+ PBIconCircle(FontAwesome.rocket, size: .small, color: Color.data(.data7))
13
+ PBIconCircle(FontAwesome.rocket, size: .small, color: Color.data(.data8))
14
+ }
15
+
16
+ ```
@@ -0,0 +1,7 @@
1
+ ![icon-circle-default](https://github.com/powerhome/playbook/assets/92755007/d5de652d-ff9e-4b54-b55e-a3bf58d7cb23)
2
+
3
+ ```swift
4
+
5
+ PBIconCircle(FontAwesome.rocket)
6
+
7
+ ```
@@ -0,0 +1,11 @@
1
+ ![circle-icon-sizes](https://github.com/powerhome/playbook/assets/92755007/2a474df1-5712-4c2a-9d6b-fb740ae949f2)
2
+
3
+ ```swift
4
+
5
+ VStack(alignment: .leading, spacing: Spacing.small) {
6
+ PBIconCircle(FontAwesome.rocket, size: .small)
7
+ PBIconCircle(FontAwesome.rocket, size: .x1)
8
+ PBIconCircle(FontAwesome.rocket, size: .large)
9
+ }
10
+
11
+ ```
@@ -12,3 +12,10 @@ examples:
12
12
  - icon_circle_sizes: Size
13
13
  - icon_circle_color: Color
14
14
  - icon_circle_emoji: With Emoji
15
+
16
+ swift:
17
+ - icon_circle_defaul_swift: Default
18
+ - icon_circle_sizes_swift: Size
19
+ - icon_circle_color_swift: Color
20
+ - icon_circle_color_props: ""
21
+
@@ -4,39 +4,38 @@ import { globalProps } from "../utilities/globalProps";
4
4
  import { buildAriaProps, buildDataProps } from "../utilities/props";
5
5
 
6
6
  import HighchartsReact from "highcharts-react-official";
7
- import Highcharts from "highcharts";
8
7
  import { highchartsTheme } from "../pb_dashboard/pbChartsLightTheme";
9
8
  import { highchartsDarkTheme } from "../pb_dashboard/pbChartsDarkTheme";
10
9
  import mapColors from "../pb_dashboard/pbChartsColorsHelper";
11
10
 
12
11
  type LineGraphProps = {
13
- align?: "left" | "right" | "center";
14
- axisTitle?: string;
15
- dark?: Boolean;
16
- xAxisCategories: [];
17
- yAxisMin: number;
18
- yAxisMax: number;
19
- className?: string;
12
+ align?: "left" | "right" | "center",
13
+ axisTitle?: string,
14
+ dark?: Boolean,
15
+ xAxisCategories: [],
16
+ yAxisMin: number,
17
+ yAxisMax: number,
18
+ className?: string,
20
19
  chartData: {
21
- name: string;
22
- data: number[];
23
- }[];
24
- gradient?: boolean;
25
- id: string;
26
- pointStart: number;
27
- subTitle?: string;
28
- title: string;
29
- type?: string;
30
- legend?: boolean;
31
- toggleLegendClick?: boolean;
32
- height?: string;
33
- colors: string[];
34
- layout?: "horizontal" | "vertical" | "proximate";
35
- verticalAlign?: "top" | "middle" | "bottom";
36
- x?: number;
37
- y?: number;
38
- aria?: { [key: string]: string };
39
- data?: { [key: string]: string };
20
+ name: string,
21
+ data: number[],
22
+ }[],
23
+ gradient?: boolean,
24
+ id: string,
25
+ pointStart: number,
26
+ subTitle?: string,
27
+ title: string,
28
+ type?: string,
29
+ legend?: boolean,
30
+ toggleLegendClick?: boolean,
31
+ height?: string,
32
+ colors: string[],
33
+ layout?: "horizontal" | "vertical" | "proximate",
34
+ verticalAlign?: "top" | "middle" | "bottom",
35
+ x?: number,
36
+ y?: number,
37
+ aria?: { [key: string]: string },
38
+ data?: { [key: string]: string },
40
39
  };
41
40
 
42
41
  const LineGraph = ({
@@ -68,12 +67,6 @@ const LineGraph = ({
68
67
  }: LineGraphProps) => {
69
68
  const ariaProps = buildAriaProps(aria);
70
69
  const dataProps = buildDataProps(data);
71
- const setupTheme = () => {
72
- dark
73
- ? Highcharts.setOptions(highchartsDarkTheme)
74
- : Highcharts.setOptions(highchartsTheme);
75
- };
76
- setupTheme();
77
70
 
78
71
  const staticOptions = {
79
72
  title: {
@@ -126,12 +119,24 @@ const LineGraph = ({
126
119
  }
127
120
 
128
121
  const [options, setOptions] = useState({});
122
+ const [isHighchartsLoaded, setIsHighchartsLoaded] = useState(false);
129
123
 
130
124
  useEffect(() => {
131
125
  setOptions({ ...staticOptions });
126
+
127
+ const interval = setInterval(() => {
128
+ if (window.Highcharts) {
129
+ clearInterval(interval)
130
+ dark
131
+ ? window.Highcharts.setOptions(highchartsDarkTheme)
132
+ : window.Highcharts.setOptions(highchartsTheme)
133
+ setIsHighchartsLoaded(true)
134
+ }
135
+ }, 0)
132
136
  }, [chartData]);
133
137
 
134
138
  return (
139
+ isHighchartsLoaded &&
135
140
  <HighchartsReact
136
141
  containerProps={{
137
142
  className: classnames(globalProps(props), className),
@@ -139,7 +144,7 @@ const LineGraph = ({
139
144
  ...ariaProps,
140
145
  ...dataProps,
141
146
  }}
142
- highcharts={Highcharts}
147
+ highcharts={window.Highcharts}
143
148
  options={options}
144
149
  />
145
150
  );
@@ -4,7 +4,6 @@ import { globalProps, GlobalProps } from "../utilities/globalProps"
4
4
  import { buildAriaProps, buildCss, buildDataProps } from "../utilities/props"
5
5
  import Checkbox from "../pb_checkbox/_checkbox"
6
6
  import Radio from "../pb_radio/_radio"
7
- import Body from "../pb_body/_body"
8
7
  import Icon from "../pb_icon/_icon"
9
8
  import FormPill from "../pb_form_pill/_form_pill"
10
9
  import CircleIconButton from "../pb_circle_icon_button/_circle_icon_button"
@@ -32,7 +31,6 @@ type MultiLevelSelectProps = {
32
31
  treeData?: { [key: string]: string }[]
33
32
  onSelect?: (prop: { [key: string]: any }) => void
34
33
  selectedIds?: string[]
35
- // ultimateChildrenOnly?: boolean
36
34
  variant?: "multi" | "single"
37
35
  } & GlobalProps
38
36
 
@@ -49,7 +47,6 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
49
47
  treeData,
50
48
  onSelect = () => null,
51
49
  selectedIds,
52
- // ultimateChildrenOnly = false,
53
50
  variant = "multi"
54
51
  } = props
55
52
 
@@ -349,26 +346,25 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
349
346
  data-name={item.id}
350
347
  >
351
348
  <div className="dropdown_item_checkbox_row">
352
- {item.children && item.children.length > 0
353
- ?
354
- <div
355
- key={isTreeRowExpanded(item) ? "chevron-down" : "chevron-right"}
356
- >
357
- <CircleIconButton
358
- icon={
359
- isTreeRowExpanded(item) ? "chevron-down" : "chevron-right"
360
- }
361
- onClick={(event: any) =>
362
- handleToggleClick(item.id, event)
363
- }
364
- variant="link"
365
- />
366
- </div>
367
- : null}
349
+ <div
350
+ key={isTreeRowExpanded(item) ? "chevron-down" : "chevron-right"}
351
+ >
352
+ <CircleIconButton
353
+ className={
354
+ item.children && item.children.length > 0
355
+ ? ""
356
+ : "toggle_icon"
357
+ }
358
+ icon={
359
+ isTreeRowExpanded(item) ? "chevron-down" : "chevron-right"
360
+ }
361
+ onClick={(event: any) =>
362
+ handleToggleClick(item.id, event)
363
+ }
364
+ variant="link"
365
+ />
366
+ </div>
368
367
  { variant === "single" ? (
369
- item.hideRadio ? (
370
- <Body>{item.label}</Body>
371
- ) :
372
368
  <Radio
373
369
  checked={item.checked}
374
370
  id={`${item.id}-${item.label}`}
@@ -377,7 +373,6 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
377
373
  onChange={(e: React.ChangeEvent<HTMLInputElement>) => (
378
374
  handleRadioButtonClick(e)
379
375
  )}
380
- padding='xs'
381
376
  type="radio"
382
377
  value={item.label}
383
378
  />
@@ -534,4 +529,4 @@ const MultiLevelSelect = (props: MultiLevelSelectProps) => {
534
529
  )
535
530
  }
536
531
 
537
- export default MultiLevelSelect
532
+ export default MultiLevelSelect
@@ -73,3 +73,4 @@
73
73
  selected_ids:["110","102"],
74
74
  tree_data: treeData,
75
75
  }) %>
76
+