@uniai-fe/ui-legacy 0.1.6 → 0.1.7

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 (103) hide show
  1. package/README.md +3 -1
  2. package/package.json +31 -36
  3. package/src/button/index.tsx +12 -12
  4. package/src/components.tsx +2 -2
  5. package/src/icon/icon.scss +1 -1
  6. package/src/icon/index.tsx +4 -4
  7. package/src/icon/styled.tsx +2 -2
  8. package/src/index.scss +2 -2
  9. package/src/index.tsx +0 -2
  10. package/src/types/index.d.ts +2 -2
  11. package/src/chart/chart.scss +0 -11
  12. package/src/chart/components/Contents.tsx +0 -17
  13. package/src/chart/components/control/Button.tsx +0 -39
  14. package/src/chart/components/control/Container.tsx +0 -27
  15. package/src/chart/components/control/Provider.tsx +0 -117
  16. package/src/chart/components/control/index.tsx +0 -12
  17. package/src/chart/components/custom/ActivePieSector.tsx +0 -29
  18. package/src/chart/components/graphs/ArcGauge.tsx +0 -58
  19. package/src/chart/components/graphs/ArcMeter.tsx +0 -112
  20. package/src/chart/components/graphs/Area.tsx +0 -132
  21. package/src/chart/components/graphs/Bar.tsx +0 -179
  22. package/src/chart/components/graphs/Doughnut.tsx +0 -90
  23. package/src/chart/components/graphs/Line.tsx +0 -123
  24. package/src/chart/components/graphs/index.tsx +0 -17
  25. package/src/chart/components/ticks/XAxis.tsx +0 -39
  26. package/src/chart/components/ticks/index.tsx +0 -7
  27. package/src/chart/index.tsx +0 -17
  28. package/src/chart/styled.tsx +0 -3
  29. package/src/chart/styles/scss/arc-gauge.scss +0 -11
  30. package/src/chart/styles/scss/arc-meter.scss +0 -6
  31. package/src/chart/styles/scss/control.scss +0 -34
  32. package/src/chart/styles/scss/filter.scss +0 -0
  33. package/src/chart/styles/scss/graph.scss +0 -3
  34. package/src/chart/styles/scss/legend.scss +0 -35
  35. package/src/chart/styles/scss/level.color.scss +0 -7
  36. package/src/chart/styles/scss/tick.scss +0 -48
  37. package/src/chart/styles/scss/tooltip.scss +0 -70
  38. package/src/chart/styles/styled/arc-gauge.ts +0 -65
  39. package/src/chart/styles/styled/arc-meter.ts +0 -42
  40. package/src/chart/styles/styled/common.ts +0 -14
  41. package/src/chart/styles/styled/control.ts +0 -31
  42. package/src/chart/styles/styled/legend.ts +0 -11
  43. package/src/chart/svg/gauge-track.min.svg +0 -1
  44. package/src/chart/utils/getLevel.ts +0 -23
  45. package/src/icon/components/chart/Control.tsx +0 -40
  46. package/src/icon/components/chart/index.tsx +0 -7
  47. package/src/icon/components/health-score/HealthScore.tsx +0 -46
  48. package/src/icon/components/health-score/index.tsx +0 -3
  49. package/src/icon/styles/scss/chart.scss +0 -3
  50. package/src/icon/styles/styled/chart.ts +0 -17
  51. package/src/icon/svg/chart/control/pan-left.svg +0 -4
  52. package/src/icon/svg/chart/control/pan-right.svg +0 -4
  53. package/src/icon/svg/chart/control/zoom-in.svg +0 -4
  54. package/src/icon/svg/chart/control/zoom-out.svg +0 -4
  55. package/src/styled.template.tsx +0 -5
  56. package/src/template/compare/compare.scss +0 -1
  57. package/src/template/compare/components/box/Container.tsx +0 -33
  58. package/src/template/compare/components/box/TextStrong.tsx +0 -15
  59. package/src/template/compare/components/box/TextSub.tsx +0 -15
  60. package/src/template/compare/components/box/index.tsx +0 -11
  61. package/src/template/compare/components/button/Remove.tsx +0 -28
  62. package/src/template/compare/components/button/index.tsx +0 -5
  63. package/src/template/compare/components/chart/Container.tsx +0 -33
  64. package/src/template/compare/components/chart/graph/Container.tsx +0 -15
  65. package/src/template/compare/components/chart/graph/Item.tsx +0 -13
  66. package/src/template/compare/components/chart/index.tsx +0 -16
  67. package/src/template/compare/components/chart/legend/Container.tsx +0 -23
  68. package/src/template/compare/components/chart/legend/Section.tsx +0 -31
  69. package/src/template/compare/components/select-list/Container.tsx +0 -15
  70. package/src/template/compare/components/select-list/Header.tsx +0 -15
  71. package/src/template/compare/components/select-list/Item.tsx +0 -15
  72. package/src/template/compare/components/select-list/List.tsx +0 -18
  73. package/src/template/compare/components/select-list/index.tsx +0 -13
  74. package/src/template/compare/index.tsx +0 -13
  75. package/src/template/compare/styled.tsx +0 -17
  76. package/src/template/compare/styles/scss/variables.scss +0 -17
  77. package/src/template/compare/styles/styled-components/chart/graph.ts +0 -26
  78. package/src/template/compare/styles/styled-components/chart/layout.ts +0 -38
  79. package/src/template/compare/styles/styled-components/chart/legend.ts +0 -64
  80. package/src/template/compare/styles/styled-components/common.ts +0 -57
  81. package/src/template/compare/styles/styled-components/select-list.ts +0 -36
  82. package/src/template/filter/components/Container.tsx +0 -39
  83. package/src/template/filter/components/Group.tsx +0 -100
  84. package/src/template/filter/components/ToggleButton.tsx +0 -27
  85. package/src/template/filter/index.tsx +0 -5
  86. package/src/template/filter/styled.tsx +0 -3
  87. package/src/template/filter/styles/styled-components/filter.ts +0 -66
  88. package/src/template/health-score/components/Chart.tsx +0 -38
  89. package/src/template/health-score/index.tsx +0 -3
  90. package/src/template/health-score/styled.tsx +0 -3
  91. package/src/template/health-score/styles/styled/chart.ts +0 -26
  92. package/src/template.tsx +0 -5
  93. package/src/types/chart/axis.d.ts +0 -15
  94. package/src/types/chart/control.d.ts +0 -109
  95. package/src/types/chart/data.d.ts +0 -41
  96. package/src/types/chart/dot.d.ts +0 -3
  97. package/src/types/chart/index.d.ts +0 -7
  98. package/src/types/chart/legend.d.ts +0 -124
  99. package/src/types/chart/props.d.ts +0 -271
  100. package/src/types/chart/tick.d.ts +0 -30
  101. package/src/types/template/compare/chart.d.ts +0 -8
  102. package/src/types/template/filter.d.ts +0 -39
  103. package/src/types/template/index.d.ts +0 -2
@@ -1,17 +0,0 @@
1
- import ChartContents from "./components/Contents";
2
- import ChartControl from "./components/control";
3
- import ChartActivePieSector from "./components/custom/ActivePieSector";
4
- import ChartGraph from "./components/graphs";
5
- import ChartTick from "./components/ticks";
6
-
7
- const Chart = {
8
- ContentsContainer: ChartContents,
9
- Graph: ChartGraph,
10
- Tick: ChartTick,
11
- Control: ChartControl,
12
- Custom: {
13
- ActivePieSector: ChartActivePieSector,
14
- },
15
- };
16
-
17
- export default Chart;
@@ -1,3 +0,0 @@
1
- const StyledChart = {};
2
-
3
- export default StyledChart;
@@ -1,11 +0,0 @@
1
- :root {
2
- --chart-arc-gauge-text-color: var(--color_90);
3
- --chart-arc-gauge-text-weight: 600;
4
-
5
- --chart-arc-gauge-value-size: 46px;
6
- --chart-arc-gauge-unit-size: 30px;
7
-
8
- --chart-arc-gauge-point-size: 22px;
9
- --chart-arc-gauge-point-color: var(--color_90);
10
- --chart-arc-gauge-point-border-width: 5px;
11
- }
@@ -1,6 +0,0 @@
1
- :root {
2
- --chart-arc-meter-text-weight: 600;
3
-
4
- --chart-arc-meter-text-value-size: 46px;
5
- --chart-arc-meter-text-unit-size: 30px;
6
- }
@@ -1,34 +0,0 @@
1
- :root {
2
- --chart-control-button-margin: 0.4rem;
3
- }
4
- // .charts-zoom-pan-control-container {
5
- // display: flex;
6
- // align-items: center;
7
- // .chart-zoom-pan-button {
8
- // margin-left: 6px;
9
- // svg {
10
- // rect {
11
- // stroke: var(--color_40);
12
- // transition: stroke 0.12s;
13
- // }
14
- // path {
15
- // fill: var(--color_40);
16
- // transition: fill 0.12s;
17
- // }
18
- // }
19
- // &:not([disabled]):hover {
20
- // svg {
21
- // rect {
22
- // stroke: var(--color_60);
23
- // }
24
- // path {
25
- // fill: var(--color_60);
26
- // }
27
- // }
28
- // }
29
- // &[disabled] {
30
- // opacity: 0.5;
31
- // cursor: default;
32
- // }
33
- // }
34
- // }
File without changes
@@ -1,3 +0,0 @@
1
- :root {
2
- --chart-data-line-width: 1.4px;
3
- }
@@ -1,35 +0,0 @@
1
- :root {
2
- --chart-legend-gap: 10px;
3
-
4
- --chart-legend-text-size: 12px;
5
- --chart-legend-text-color: var(--color_90);
6
- --chart-legend-text-weight: 400;
7
-
8
- --chart-legend-point-margin: 3px;
9
- --chart-legend-point-size: 10px;
10
- }
11
-
12
- .recharts-legend-wrapper {
13
- width: 100% !important;
14
- display: flex;
15
- align-items: center;
16
- justify-content: flex-end;
17
- .recharts-default-legend {
18
- display: flex;
19
- align-items: center;
20
- .recharts-legend-item {
21
- margin-right: 0 !important;
22
- margin-left: var(--chart-legend-gap);
23
- display: flex !important;
24
- align-items: center;
25
- user-select: none;
26
- }
27
- .recharts-legend-item-text {
28
- font-size: var(--chart-legend-text-size);
29
- font-weight: 400;
30
- color: var(--color_90) !important;
31
- user-select: none;
32
- cursor: pointer;
33
- }
34
- }
35
- }
@@ -1,7 +0,0 @@
1
- :root {
2
- --chart-level-color-0: var(--color_20);
3
- --chart-level-color-1: var(--red);
4
- --chart-level-color-2: var(--orange);
5
- --chart-level-color-3: var(--green);
6
- --chart-level-color-4: var(--color-light-blue-600);
7
- }
@@ -1,48 +0,0 @@
1
- :root {
2
- --chart-tick-text-size: 1.1rem;
3
- --chart-tick-text-weight: 500;
4
- --chart-tick-text-color: var(--color_50);
5
-
6
- --chart-tick-line-color: var(--color_20);
7
-
8
- --chart-axis-label-color: var(--color_40);
9
- }
10
-
11
- .recharts-cartesian-axis-line {
12
- stroke: var(--chart-tick-line-color);
13
- }
14
- .recharts-cartesian-axis-tick-line {
15
- stroke: var(--chart-tick-line-color);
16
- }
17
-
18
- .recharts-cartesian-grid-horizontal,
19
- .recharts-cartesian-grid-vertical {
20
- line {
21
- stroke: var(--chart-tick-line-color);
22
- }
23
- }
24
-
25
- .recharts-text {
26
- tspan {
27
- fill: var(--chart-tick-text-color);
28
- font-size: var(--chart-tick-text-size);
29
- font-weight: var(--chart-tick-text-weight);
30
- }
31
- }
32
-
33
- .recharts-label {
34
- --chart-tick-text-weight: 400;
35
- tspan {
36
- fill: var(--chart-axis-label-color);
37
- }
38
- }
39
-
40
- .recharts-yAxis {
41
- --chart-tick-text-weight: 400;
42
- }
43
-
44
- .recharts-layer {
45
- text {
46
- user-select: none;
47
- }
48
- }
@@ -1,70 +0,0 @@
1
- :root {
2
- --chart-tooltip-cursor-line-color: #838588;
3
-
4
- --chart-tooltip-point-size: 0.6rem;
5
- --chart-tooltip-point-border-color: #fff;
6
-
7
- --chart-tooltip-box-radius: 0.6rem;
8
- --chart-tooltip-box-color: var(--color-blue-gray-700);
9
- --chart-tooltip-box-point-margin: 0.5rem;
10
- --chart-tooltip-box-legend-margin: 0.5rem;
11
- --chart-tooltip-box-legend-text-size: 1.4rem;
12
- --chart-tooltip-box-legend-text-color: var(--color_70);
13
- --chart-tooltip-box-legend-text-weight: 500;
14
- --chart-tooltip-box-legend-line-height: 1em;
15
-
16
- --chart-tooltip-text-color: var(--color_70);
17
-
18
- &.dark-mode {
19
- --chart-tooltip-cursor-line-color: #dbdbdb;
20
-
21
- --chart-tooltip-box-color: var(--color_theme_dark_30);
22
- }
23
- }
24
-
25
- .recharts-tooltip-wrapper {
26
- z-index: 100;
27
- user-select: none;
28
- pointer-events: none;
29
- & > * {
30
- user-select: none;
31
- pointer-events: none;
32
- }
33
- }
34
-
35
- .recharts-tooltip-cursor {
36
- stroke: var(--chart-tooltip-cursor-line-color);
37
- }
38
- .recharts-dot {
39
- stroke: var(--chart-tooltip-point-border-color);
40
- }
41
- .recharts-tooltip-label {
42
- display: none;
43
- }
44
- .recharts-tooltip-dot {
45
- width: var(--chart-tooltip-point-size);
46
- height: var(--chart-tooltip-point-size);
47
- margin-right: var(--chart-tooltip-box-point-margin);
48
- border-radius: 50%;
49
- background: var(--color_60);
50
- }
51
- .recharts-tooltip-item {
52
- margin: var(--chart-tooltip-box-legend-margin) 0;
53
- display: flex;
54
- align-items: center;
55
- span {
56
- font-size: var(--chart-tooltip-box-legend-text-size);
57
- color: var(--chart-tooltip-box-legend-text-color);
58
- line-height: var(--chart-tooltip-box-legend-line-height);
59
- font-weight: var(--chart-tooltip-box-legend-text-weight);
60
- }
61
- }
62
-
63
- .charts-custom-tooltip-title {
64
- font-weight: var(--chart-tooltip-box-legend-text-weight);
65
- }
66
-
67
- .recharts-default-tooltip {
68
- padding: 0 10px !important;
69
- border-radius: var(--chart-tooltip-box-radius);
70
- }
@@ -1,65 +0,0 @@
1
- "use client";
2
-
3
- import { styled } from "styled-components";
4
-
5
- const container = styled.div`
6
- width: 100%;
7
- height: fit-content;
8
- position: relative;
9
- z-index: 0;
10
- `;
11
- const track = styled.div`
12
- width: fit-content;
13
- height: fit-content;
14
- font-size: 0;
15
- margin: 0 auto;
16
- position: relative;
17
- `;
18
- const point = styled.div<{ $level: number; $degree: number }>`
19
- width: calc(
20
- 100% + var(--chart-arc-gauge-point-size) -
21
- (var(--chart-arc-gauge-point-border-width) * 2)
22
- );
23
- height: var(--chart-arc-gauge-point-size);
24
- position: absolute;
25
- bottom: 0;
26
- left: 50%;
27
- transform: translate(-50%, calc(var(--chart-arc-gauge-point-size) / 2))
28
- rotate(${({ $degree }) => $degree}deg);
29
-
30
- &:before {
31
- content: "게이지 포인트";
32
- display: block;
33
- font-size: 0;
34
- width: var(--chart-arc-gauge-point-size);
35
- height: var(--chart-arc-gauge-point-size);
36
- border-radius: 50%;
37
- border: var(--chart-arc-gauge-point-border-width) solid
38
- var(--chart-level-color-${({ $level }) => $level});
39
- background-color: #fff;
40
- }
41
- `;
42
- const value = styled.div`
43
- position: absolute;
44
- bottom: 0;
45
- left: 50%;
46
- transform: translateX(-50%);
47
- color: var(--chart-arc-gauge-text-color);
48
- strong {
49
- font-size: var(--chart-arc-gauge-value-size);
50
- font-weight: var(--chart-arc-gauge-text-weight);
51
- }
52
- span {
53
- font-size: var(--chart-arc-gauge-unit-size);
54
- font-weight: var(--chart-arc-gauge-text-weight);
55
- }
56
- `;
57
-
58
- const StyledArcGauge = {
59
- container,
60
- track,
61
- point,
62
- value,
63
- };
64
-
65
- export default StyledArcGauge;
@@ -1,42 +0,0 @@
1
- "use client";
2
-
3
- import { styled } from "styled-components";
4
-
5
- const container = styled.div<{ $height?: number }>`
6
- width: 100%;
7
- height: ${({ $height }) => ($height ? `${$height}px` : "100%")};
8
- position: relative;
9
- display: flex;
10
- justify-content: center;
11
-
12
- svg {
13
- overflow: visible;
14
- }
15
- `;
16
-
17
- const text = styled.div<{ $color: string }>`
18
- color: ${({ $color }) => $color};
19
-
20
- display: flex;
21
- align-items: baseline;
22
-
23
- position: absolute;
24
- bottom: 0;
25
- left: 50%;
26
- transform: translateX(-50%);
27
-
28
- strong {
29
- font-size: var(--chart-arc-meter-text-value-size);
30
- font-weight: var(--chart-arc-meter-text-weight);
31
- }
32
- span {
33
- font-size: var(--chart-arc-meter-text-unit-size);
34
- font-weight: var(--chart-arc-meter-text-weight);
35
- }
36
- `;
37
- const StyledArcMeter = {
38
- container,
39
- text,
40
- };
41
-
42
- export default StyledArcMeter;
@@ -1,14 +0,0 @@
1
- "use client";
2
-
3
- import { styled } from "styled-components";
4
-
5
- const container = styled.figure`
6
- width: 100%;
7
- height: 100%;
8
- `;
9
-
10
- const StyledChartCommon = {
11
- container,
12
- };
13
-
14
- export default StyledChartCommon;
@@ -1,31 +0,0 @@
1
- "use client";
2
-
3
- import styled from "styled-components";
4
-
5
- const button = styled.button`
6
- width: fit-content;
7
- height: fit-content;
8
- display: flex;
9
- align-items: center;
10
- justify-content: center;
11
- &[disabled] {
12
- opacity: 0.4;
13
- }
14
- `;
15
-
16
- const container = styled.div`
17
- width: fit-content;
18
- height: fit-content;
19
- display: flex;
20
- align-items: center;
21
- ${button} {
22
- margin: 0 var(--chart-control-button-margin);
23
- }
24
- `;
25
-
26
- const StyledChartControl = {
27
- container,
28
- button,
29
- };
30
-
31
- export default StyledChartControl;
@@ -1,11 +0,0 @@
1
- "use client";
2
-
3
- import { styled } from "styled-components";
4
-
5
- const container = styled.div``;
6
-
7
- const StyledChartLegend = {
8
- container,
9
- };
10
-
11
- export default StyledChartLegend;
@@ -1 +0,0 @@
1
- <svg width="190" height="95" fill="none" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="xMinYMin meet"><path fill-rule="evenodd" clip-rule="evenodd" d="M30.054 32.816a4.98 4.98 0 01.491 7.026 85.32 85.32 0 00-20.604 48.54 4.98 4.98 0 01-9.922-.869 95.282 95.282 0 0123.009-54.206 4.98 4.98 0 017.026-.49z" fill="#E22A21"/><path fill-rule="evenodd" clip-rule="evenodd" d="M30.054 32.816a4.98 4.98 0 01.491 7.026 85.32 85.32 0 00-20.604 48.54 4.98 4.98 0 01-9.922-.869 95.282 95.282 0 0123.009-54.206 4.98 4.98 0 017.026-.49z" fill="#fff" fill-opacity=".2"/><path fill-rule="evenodd" clip-rule="evenodd" d="M93.607 5.39a4.98 4.98 0 01-4.62 5.314 85.321 85.321 0 00-48.893 19.754 4.98 4.98 0 01-6.402-7.63 95.281 95.281 0 0154.6-22.06 4.98 4.98 0 015.315 4.621z" fill="#F86800"/><path fill-rule="evenodd" clip-rule="evenodd" d="M93.607 5.39a4.98 4.98 0 01-4.62 5.314 85.321 85.321 0 00-48.893 19.754 4.98 4.98 0 01-6.402-7.63 95.281 95.281 0 0154.6-22.06 4.98 4.98 0 015.315 4.621z" fill="#fff" fill-opacity=".2"/><path fill-rule="evenodd" clip-rule="evenodd" d="M97.847 5.426A4.98 4.98 0 01103.242.9a95.288 95.288 0 0154.207 23.01 4.981 4.981 0 01-6.535 7.517 85.323 85.323 0 00-48.54-20.604 4.98 4.98 0 01-4.527-5.396z" fill="#00AA02"/><path fill-rule="evenodd" clip-rule="evenodd" d="M97.847 5.426A4.98 4.98 0 01103.242.9a95.288 95.288 0 0154.207 23.01 4.981 4.981 0 01-6.535 7.517 85.323 85.323 0 00-48.54-20.604 4.98 4.98 0 01-4.527-5.396z" fill="#fff" fill-opacity=".2"/><path fill-rule="evenodd" clip-rule="evenodd" d="M160.911 33.959a4.981 4.981 0 017.017.613 95.283 95.283 0 0122.059 54.6 4.98 4.98 0 11-9.936.695 85.32 85.32 0 00-19.753-48.892 4.98 4.98 0 01.613-7.017z" fill="#007CDB"/><path fill-rule="evenodd" clip-rule="evenodd" d="M160.911 33.959a4.981 4.981 0 017.017.613 95.283 95.283 0 0122.059 54.6 4.98 4.98 0 11-9.936.695 85.32 85.32 0 00-19.753-48.892 4.98 4.98 0 01.613-7.016z" fill="#fff" fill-opacity=".2"/><path fill-rule="evenodd" clip-rule="evenodd" d="M94.077 18.275c-.329 0-.658.002-.987.006l-.013-.996a75.718 75.718 0 012 0l-.013.996a75.477 75.477 0 00-.987-.006zm4.93.16a75.404 75.404 0 00-1.97-.102l.038-.996a76.48 76.48 0 011.996.105l-.065.994zm-7.889-.102c-.657.026-1.314.06-1.97.103l-.065-.994c.664-.044 1.33-.078 1.996-.105l.04.996zm11.817.464a75.799 75.799 0 00-1.962-.206l.091-.992c.664.06 1.327.13 1.988.209l-.117.989zm-15.753-.206c-.656.06-1.31.128-1.962.206l-.117-.99a76.405 76.405 0 011.988-.208l.09.992zm19.657.772a74.953 74.953 0 00-1.949-.309l.143-.985c.66.095 1.318.2 1.974.312l-.168.982zm-23.575-.309c-.651.095-1.3.198-1.948.309l-.169-.982a76.301 76.301 0 011.974-.313l.143.986zm-3.888.668c-.645.129-1.288.265-1.93.41l-.22-.971a76.43 76.43 0 011.956-.416l.194.977zm31.332.41a74.694 74.694 0 00-1.93-.41l.195-.977c.654.13 1.305.269 1.955.416l-.22.971zm-35.18.461c-.637.162-1.273.332-1.905.51l-.27-.958c.64-.18 1.284-.353 1.93-.517l.245.965zm39.004.51a75.32 75.32 0 00-1.906-.51l.245-.965c.646.164 1.29.336 1.931.517l-.27.959zm-42.8.561c-.629.195-1.254.398-1.877.61l-.32-.944a76.58 76.58 0 011.9-.617l.296.951zm46.567.61a74.73 74.73 0 00-1.876-.61l.296-.951c.636.197 1.27.403 1.9.618l-.32.943zm-50.303.658c-.617.228-1.231.464-1.842.707l-.37-.925c.62-.247 1.242-.486 1.867-.716l.345.934zM122 23.64c-.61-.243-1.224-.48-1.841-.707l.345-.934c.625.23 1.247.47 1.866.716l-.37.925zm-57.669.755c-.604.26-1.205.527-1.802.803l-.417-.905a76.26 76.26 0 011.826-.813l.393.915zm61.294.803a75.054 75.054 0 00-1.802-.803l.393-.915a76.26 76.26 0 011.826.813l-.417.904zm-64.876.849c-.59.29-1.176.59-1.758.895l-.464-.881a76.57 76.57 0 011.781-.908l.44.894zm68.414.895a76.313 76.313 0 00-1.757-.895l.44-.893c.598.294 1.191.597 1.781.907l-.464.881zm-71.906.942c-.573.32-1.143.65-1.708.986l-.51-.856c.573-.34 1.15-.674 1.731-1l.487.87zm75.349.986a75.622 75.622 0 00-1.709-.986l.487-.87c.581.326 1.158.66 1.731 1l-.509.856zm-78.74 1.03c-.555.351-1.107.71-1.654 1.075l-.553-.828a76.05 76.05 0 011.676-1.089l.532.843zm82.076 1.075a76.943 76.943 0 00-1.654-1.074l.531-.843c.563.356 1.122.719 1.676 1.089l-.553.828zm-85.356 1.117c-.536.38-1.068.766-1.596 1.16l-.596-.798a76.46 76.46 0 011.617-1.175l.575.813zm88.578 1.16c-.528-.394-1.06-.78-1.596-1.16l.575-.813c.543.384 1.082.776 1.617 1.175l-.596.798zm-91.738 1.2c-.516.407-1.028.821-1.534 1.242l-.636-.765c.512-.427 1.03-.846 1.553-1.258l.617.782zm94.836 1.242a74.858 74.858 0 00-1.533-1.241l.616-.782a76.21 76.21 0 011.554 1.258l-.637.765zm-97.87 1.281c-.493.434-.982.874-1.465 1.32l-.677-.73c.49-.454.985-.9 1.486-1.338l.657.748zm100.836 1.32a79.7 79.7 0 00-1.466-1.32l.656-.748c.501.438.996.884 1.486 1.337l-.676.731zM41.496 39.652a75.229 75.229 0 00-1.396 1.396l-.714-.695a78.52 78.52 0 011.415-1.414l.695.713zm105.865.694a71.778 71.778 0 00-.703-.694l.696-.713a88.73 88.73 0 011.414 1.414l-.714.695c-.229-.235-.46-.47-.693-.702zM38.742 42.479c-.447.483-.887.972-1.32 1.466l-.749-.657c.439-.5.885-.995 1.338-1.485l.731.676zm111.99 1.466a74.708 74.708 0 00-1.32-1.466l.732-.676c.452.49.898.985 1.337 1.485l-.749.657zm2.523 3.033a75.839 75.839 0 00-1.242-1.533l.766-.637c.427.513.846 1.03 1.258 1.553l-.782.617zM36.141 45.445c-.421.506-.835 1.017-1.242 1.533l-.782-.617c.412-.522.832-1.04 1.258-1.553l.766.637zm119.474 4.694a73.673 73.673 0 00-1.159-1.596l.798-.596c.399.534.79 1.073 1.175 1.617l-.814.575zM33.698 48.543c-.393.527-.78 1.06-1.16 1.596l-.812-.575c.384-.544.775-1.083 1.174-1.617l.798.596zm124.109 4.876a78.443 78.443 0 00-1.074-1.654l.828-.554c.37.555.733 1.113 1.088 1.677l-.842.531zM31.422 51.765a75.036 75.036 0 00-1.075 1.654l-.842-.531a76.05 76.05 0 011.088-1.677l.829.554zm128.402 5.045a75.89 75.89 0 00-.986-1.709l.856-.51c.341.574.674 1.15.999 1.732l-.869.487zM29.316 55.1a75.15 75.15 0 00-.986 1.709l-.869-.487c.326-.581.659-1.158 1-1.731l.856.51zm132.345 5.2a73.285 73.285 0 00-.896-1.758l.882-.463c.31.59.613 1.183.907 1.78l-.893.441zM27.389 58.543a75.354 75.354 0 00-.896 1.758l-.893-.44c.295-.598.597-1.192.907-1.781l.882.463zm135.924 5.34a74.478 74.478 0 00-.803-1.801l.905-.417c.279.605.55 1.214.813 1.826l-.915.393zM25.644 62.083a75.642 75.642 0 00-.802 1.802l-.915-.393c.263-.612.534-1.221.813-1.826l.904.417zm139.131 5.466a79.953 79.953 0 00-.707-1.842l.925-.369c.247.619.485 1.241.716 1.866l-.934.345zM24.087 65.706c-.244.611-.48 1.225-.707 1.842l-.935-.345c.231-.625.47-1.247.717-1.866l.925.37zm141.956 5.578a72.49 72.49 0 00-.61-1.877l.943-.32c.215.631.42 1.265.618 1.901l-.951.296zM22.721 69.408a75.565 75.565 0 00-.61 1.876l-.95-.296c.197-.636.403-1.27.617-1.9l.943.32zm144.393 5.673a73.238 73.238 0 00-.511-1.906l.959-.27c.181.64.353 1.284.517 1.93l-.965.246zM21.551 73.175a74.87 74.87 0 00-.51 1.906l-.966-.245c.164-.647.337-1.29.518-1.931l.958.27zm146.434 5.754a78.31 78.31 0 00-.41-1.93l.971-.22c.147.65.286 1.301.416 1.955l-.977.195zM20.58 76.999a75.295 75.295 0 00-.41 1.93l-.977-.195c.13-.654.269-1.305.416-1.955l.971.22zm148.073 5.818c-.095-.652-.197-1.301-.309-1.949l.982-.168c.113.656.217 1.314.313 1.974l-.986.143zM19.81 80.868a75.11 75.11 0 00-.308 1.949l-.986-.143c.096-.66.2-1.318.313-1.975l.981.17zm149.307 5.866a75.29 75.29 0 00-.207-1.962l.989-.117c.079.661.148 1.324.209 1.988l-.991.091zM19.244 84.772a75.323 75.323 0 00-.206 1.962l-.992-.09c.061-.665.131-1.328.21-1.989l.988.117zm150.13 5.899a71.647 71.647 0 00-.103-1.97l.994-.065c.044.664.079 1.33.105 1.996l-.996.039zM18.884 88.7a75.389 75.389 0 00-.104 1.97l-.995-.04c.026-.666.061-1.331.105-1.995l.994.065zm150.548 4.929c0-.33-.002-.658-.006-.987l.996-.013c.004.333.007.666.007 1h-.997zm-150.703-.987a75.45 75.45 0 00-.007.987h-.996c0-.334.002-.667.007-1l.996.013z" fill="var(--color_90)" fill-opacity=".2"/></svg>
@@ -1,23 +0,0 @@
1
- /**
2
- * 스코어 레벨 추출 (4단계)
3
- * @param {number | ""} value
4
- * @param {number} [max] 최대값 (기본값 100)
5
- */
6
- export default function getChartLevel(
7
- value: number | "",
8
- max: number = 100,
9
- ): number {
10
- if (value === "") return 0;
11
-
12
- const stepAmount = max / 4;
13
- const danger = stepAmount;
14
- const warning = stepAmount * 2;
15
- const caution = stepAmount * 3;
16
-
17
- if (value < danger) return 1;
18
- else if (danger <= value && value < caution) return 2;
19
- else if (caution <= value && value < warning) return 3;
20
- else if (value >= warning) return 4;
21
-
22
- return 0;
23
- }
@@ -1,40 +0,0 @@
1
- "use client";
2
-
3
- import { clsx } from "clsx";
4
- import StyledIconChart from "../../styles/styled/chart";
5
-
6
- import ZoomInIcon from "../../svg/chart/control/zoom-in.svg";
7
- import ZoomOutIcon from "../../svg/chart/control/zoom-out.svg";
8
- import PanLeftIcon from "../../svg/chart/control/pan-left.svg";
9
- import PanRightIcon from "../../svg/chart/control/pan-right.svg";
10
-
11
- /**
12
- * 차트 인터렉션 컨트롤 버튼 아이콘
13
- * @component
14
- * @param
15
- */
16
- export default function IconChartControl({
17
- className,
18
- role,
19
- width = 20,
20
- height = 20,
21
- }: {
22
- role: "zoom-in" | "zoom-out" | "pan-left" | "pan-right";
23
- } & Partial<{
24
- className: string;
25
- width: number;
26
- height: number;
27
- }>) {
28
- return (
29
- <StyledIconChart.container
30
- className={clsx("icon-chart-control", className)}
31
- $width={width}
32
- $height={height}
33
- >
34
- {role === "zoom-in" && <ZoomInIcon viewBox="0 0 20 20" />}
35
- {role === "zoom-out" && <ZoomOutIcon viewBox="0 0 20 20" />}
36
- {role === "pan-left" && <PanLeftIcon viewBox="0 0 20 20" />}
37
- {role === "pan-right" && <PanRightIcon viewBox="0 0 20 20" />}
38
- </StyledIconChart.container>
39
- );
40
- }
@@ -1,7 +0,0 @@
1
- import IconChartControl from "./Control";
2
-
3
- const IconChart = {
4
- Control: IconChartControl,
5
- };
6
-
7
- export default IconChart;
@@ -1,46 +0,0 @@
1
- "use client";
2
-
3
- import Image from "next/image";
4
- import { useMemo } from "react";
5
- import assetsUrl from "../../../asset-url";
6
-
7
- /**
8
- * 건강도 아이콘 컴포넌트
9
- * @component
10
- * @param {object} props
11
- * @param {boolean} props.isFlockExist 활성화 계군 존재여부
12
- * @param {number|""} props.healthScore 건강도 값
13
- */
14
- export default function IconHealthScore({
15
- size = 45,
16
- isFlockExist,
17
- healthScore,
18
- }: {
19
- size?: number;
20
- isFlockExist: boolean;
21
- healthScore: number | "";
22
- }) {
23
- const iconName = useMemo(() => {
24
- if (typeof healthScore === "undefined" || !isFlockExist) return "empty";
25
-
26
- if (isNaN(Number(healthScore)) || healthScore === "") return "gray";
27
-
28
- if (healthScore < 25) return "red";
29
- else if (25 <= healthScore && healthScore < 50) return "yellow";
30
- else if (50 <= healthScore && healthScore < 75) return "green";
31
- else if (75 <= healthScore) return "blue";
32
-
33
- return "gray";
34
- }, [healthScore, isFlockExist]);
35
-
36
- return (
37
- <figure>
38
- <Image
39
- src={`${assetsUrl}/img/health-score/${iconName}.svg`}
40
- alt="건강"
41
- width={size}
42
- height={size}
43
- />
44
- </figure>
45
- );
46
- }
@@ -1,3 +0,0 @@
1
- import IconHealthScore from "./HealthScore";
2
-
3
- export default IconHealthScore;
@@ -1,3 +0,0 @@
1
- :root {
2
- --icon-chart-control-color-default: var(--color_40);
3
- }
@@ -1,17 +0,0 @@
1
- "use client";
2
-
3
- import { styled } from "styled-components";
4
- import StyledIconCommon from "./common";
5
-
6
- // 인터랙션에 따른 스타일 변화는, 상위 요소인 button에서 처리
7
- const container = styled(StyledIconCommon.figure)`
8
- svg path {
9
- fill: var(--icon-chart-control-color-default);
10
- }
11
- `;
12
-
13
- const StyledIconChart = {
14
- container,
15
- };
16
-
17
- export default StyledIconChart;
@@ -1,4 +0,0 @@
1
- <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <rect x="1" y="1" width="18" height="18" rx="3" stroke="#A8B3BD" stroke-width="2"/>
3
- <path fill-rule="evenodd" clip-rule="evenodd" d="M9.41071 5.24418C9.73612 4.91877 10.2637 4.91877 10.5891 5.24418C10.9146 5.5696 10.9146 6.0972 10.5891 6.42262L7.84494 9.16682H14.1667C14.6269 9.16682 15 9.53989 15 10.0001C15 10.4603 14.6269 10.8334 14.1667 10.8334H7.84514L10.5891 13.5774C10.9146 13.9028 10.9146 14.4304 10.5891 14.7558C10.2637 15.0812 9.73612 15.0812 9.41071 14.7558L5.25367 10.5988C5.09724 10.4473 5 10.235 5 10.0001C5 9.88349 5.02395 9.77249 5.0672 9.67172C5.10778 9.57694 5.16675 9.48814 5.24411 9.41078L9.41071 5.24418Z" fill="#A8B3BD"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <rect x="1" y="1" width="18" height="18" rx="3" stroke="#A8B3BD" stroke-width="2"/>
3
- <path fill-rule="evenodd" clip-rule="evenodd" d="M10.5893 14.7558C10.2639 15.0812 9.73625 15.0812 9.41081 14.7558C9.08537 14.4304 9.08537 13.9027 9.41081 13.5773L12.1548 10.8332H5.83335C5.3731 10.8332 5 10.4601 5 9.9999C5 9.53966 5.3731 9.16656 5.83335 9.16656H12.1546L9.41081 6.42274C9.08537 6.0973 9.08537 5.56966 9.41081 5.24421C9.73625 4.91877 10.2639 4.91877 10.5893 5.24421L14.7463 9.4012C14.9028 9.55269 15 9.76494 15 9.9999C15 10.116 14.9762 10.2266 14.9333 10.3271C14.8927 10.4223 14.8336 10.5116 14.7559 10.5893L10.5893 14.7558Z" fill="#A8B3BD"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <rect x="1" y="1" width="18" height="18" rx="3" stroke="#A8B3BD" stroke-width="2"/>
3
- <path d="M10 5C10.5523 5 11 5.44772 11 6L11 9H14C14.5523 9 15 9.44771 15 10C15 10.5523 14.5523 11 14 11H11L11 14C11 14.5523 10.5523 15 10 15C9.44771 15 9 14.5523 9 14L9 11H6C5.44771 11 5 10.5523 5 10C5 9.44771 5.44771 9 6 9H9L9 6C9 5.44772 9.44771 5 10 5Z" fill="#A8B3BD"/>
4
- </svg>
@@ -1,4 +0,0 @@
1
- <svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <rect x="1" y="1" width="18" height="18" rx="3" stroke="#A8B3BD" stroke-width="2"/>
3
- <path d="M14 11C14.5523 11 15 10.5523 15 10C15 9.44771 14.5523 9 14 9H6C5.44771 9 5 9.44771 5 10C5 10.5523 5.44771 11 6 11H14Z" fill="#A8B3BD"/>
4
- </svg>
@@ -1,5 +0,0 @@
1
- import StyledCompare from "./template/compare/styled";
2
- import StyledFilter from "./template/filter/styled";
3
- import StyledHealthScore from "./template/health-score/styled";
4
-
5
- export { StyledCompare, StyledHealthScore, StyledFilter };
@@ -1 +0,0 @@
1
- @use "./styles/scss/variables.scss";
@@ -1,33 +0,0 @@
1
- "use client";
2
-
3
- import CompareRemoveButton from "../button/Remove";
4
- import StyledCompareCommon from "../../styles/styled-components/common";
5
- import type { ComponentBaseProps } from "../../../../types";
6
-
7
- /**
8
- * 비교 템플릿; 박스
9
- * @component
10
- * @param {object} props
11
- * @param {boolean} [props.isDashed] 테두리 점선 여부
12
- * @param {boolean} [props.isSelected] 선택 여부
13
- * @param {Function} props.onRemove 선택해제 이벤트
14
- */
15
- export default function CompareBoxContainer({
16
- className,
17
- isDashed,
18
- isSelected,
19
- onRemove,
20
- children,
21
- }: ComponentBaseProps &
22
- Partial<{
23
- isDashed: boolean;
24
- isSelected: boolean;
25
- onRemove: () => void;
26
- }>) {
27
- return (
28
- <StyledCompareCommon.box $isDashed={isDashed} className={className}>
29
- {children}
30
- {isSelected && onRemove && <CompareRemoveButton onRemove={onRemove} />}
31
- </StyledCompareCommon.box>
32
- );
33
- }