@opsnow-mcp/opsnow-mcp-common-ui-server 1.0.5 → 1.0.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.
|
@@ -130,6 +130,38 @@ export const PopupExamples = [
|
|
|
130
130
|
</OpsnowCommonPopup>`,
|
|
131
131
|
description: 'standard 타입, 작은 사이즈(sm)에서 커스텀 헤더와 푸터를 사용하는 예제입니다.'
|
|
132
132
|
},
|
|
133
|
+
{
|
|
134
|
+
title: 'useCustomFooter + 버튼 추가',
|
|
135
|
+
code: `<OpsnowCommonPopup
|
|
136
|
+
open={showPopup}
|
|
137
|
+
title={\`결과 상세: \${popupTitle}\`}
|
|
138
|
+
size="lg"
|
|
139
|
+
onClose={() => setShowPopup(false)}
|
|
140
|
+
useCustomFooter
|
|
141
|
+
footerContent={
|
|
142
|
+
<div
|
|
143
|
+
style={{
|
|
144
|
+
display: 'flex',
|
|
145
|
+
justifyContent: 'flex-end',
|
|
146
|
+
gap: '8px',
|
|
147
|
+
marginRight: '43px',
|
|
148
|
+
marginBottom: '16px',
|
|
149
|
+
marginTop: '16px',
|
|
150
|
+
}}
|
|
151
|
+
>
|
|
152
|
+
<OpsnowCommonButton
|
|
153
|
+
label="닫기"
|
|
154
|
+
variant="contained"
|
|
155
|
+
color="primary"
|
|
156
|
+
onClick={() => setShowPopup(false)}
|
|
157
|
+
/>
|
|
158
|
+
</div>
|
|
159
|
+
}
|
|
160
|
+
>
|
|
161
|
+
<p>Popup content here</p>
|
|
162
|
+
</OpsnowCommonPopup>`,
|
|
163
|
+
description: 'useCustomFooter를 사용하여 커스텀 버튼을 추가한 예제입니다.'
|
|
164
|
+
},
|
|
133
165
|
{
|
|
134
166
|
title: 'Standard 타입, hideFooter',
|
|
135
167
|
code: `<OpsnowCommonPopup
|
|
@@ -17,7 +17,7 @@ const XyMultiChartSchema = z.object({
|
|
|
17
17
|
],
|
|
18
18
|
"baseInterval": { // xAxis type이 'date'일 때 사용
|
|
19
19
|
"timeUnit": "day", // 시간 단위: 'day' | 'week' | 'month' | 'year'
|
|
20
|
-
"count": 1 // 간격 수
|
|
20
|
+
"count": 1 // 간격 수(1로 고정이며 변경 불가)
|
|
21
21
|
},
|
|
22
22
|
"gridHidden": true, // 격자선 표시 여부 (기본값: true)
|
|
23
23
|
"startLocation": 1, // X축 시작 위치 (0~1 사이 값)
|
|
@@ -40,7 +40,6 @@ const XyMultiChartSchema = z.object({
|
|
|
40
40
|
"fontSize": 12, // Y축 라벨 폰트 크기
|
|
41
41
|
"color": "#666666" // Y축 라벨 색상
|
|
42
42
|
},
|
|
43
|
-
"tooltip": {}, // Y축 툴팁 설정
|
|
44
43
|
"numberFormatter": { // 숫자 포맷터 설정
|
|
45
44
|
"numberFormat": "#.#a", // 숫자 포맷 (예: #.#a)
|
|
46
45
|
"bigNumberPrefixes": [ // 큰 숫자에 대한 접미사 설정
|
|
@@ -72,7 +71,7 @@ const XyMultiChartSchema = z.object({
|
|
|
72
71
|
"seriesTypes": [ // XY 멀티 차트용 시리즈 타입 설정
|
|
73
72
|
{
|
|
74
73
|
"type": "stack-line", // 시리즈 타입: 'line' | 'stack' | 'stack-line'
|
|
75
|
-
"categoryGroupName": "ondemand_cost", // 카테고리
|
|
74
|
+
"categoryGroupName": "ondemand_cost", // 카테고리 그룹명, 카테고리 그룹명과 카테고리명은 서로 중복될 수 없음
|
|
76
75
|
"order": "front", // 시리즈 순서: 'front' | 'back'
|
|
77
76
|
"connect": true, // 라인 연결 여부
|
|
78
77
|
"lineType": "smoothedX", // 라인 스무딩 타입
|
|
@@ -108,7 +107,7 @@ const XyMultiChartSchema = z.object({
|
|
|
108
107
|
},
|
|
109
108
|
{
|
|
110
109
|
"type": "stack", // 스택 타입
|
|
111
|
-
"categoryGroupName": "savings_cost", // 카테고리
|
|
110
|
+
"categoryGroupName": "savings_cost", // 카테고리 그룹명, 카테고리 그룹명과 카테고리명은 서로 중복될 수 없음
|
|
112
111
|
"columns": {
|
|
113
112
|
"width": "p50",
|
|
114
113
|
"hover": {
|
|
@@ -118,7 +117,7 @@ const XyMultiChartSchema = z.object({
|
|
|
118
117
|
}
|
|
119
118
|
}
|
|
120
119
|
],
|
|
121
|
-
"tooltip": { // 툴팁 설정
|
|
120
|
+
"tooltip": { // 툴팁 설정(툴팁 설정시 body 설정 필수)
|
|
122
121
|
"type": "CG", // CI: 각 카테고리를 보여줄때 | CG: 모든 카테고리를 보여줄때
|
|
123
122
|
"withinArea": true, // 차트 영역 내에서만 툴팁 표시 여부
|
|
124
123
|
"stopActionEnabled": false, // 툴팁 액션 중지 여부
|
|
@@ -133,11 +132,11 @@ const XyMultiChartSchema = z.object({
|
|
|
133
132
|
// 또는 카테고리별로 다른 헤더를 표시하려면:
|
|
134
133
|
// "name": [
|
|
135
134
|
// {
|
|
136
|
-
// "categoryGroupName": "ondemand_cost", // 카테고리
|
|
135
|
+
// "categoryGroupName": "ondemand_cost", // 카테고리 그룹명, 카테고리 그룹명과 카테고리명은 서로 중복될 수 없음
|
|
137
136
|
// "value": "{l.cost}" // 헤더 값
|
|
138
137
|
// },
|
|
139
138
|
// {
|
|
140
|
-
// "categoryGroupName": "savings_cost",
|
|
139
|
+
// "categoryGroupName": "savings_cost", // 카테고리 그룹명, 카테고리 그룹명과 카테고리명은 서로 중복될 수 없음
|
|
141
140
|
// "value": "{l.usage}" // 헤더 값
|
|
142
141
|
// }
|
|
143
142
|
// ]
|
|
@@ -147,11 +146,11 @@ const XyMultiChartSchema = z.object({
|
|
|
147
146
|
"name": "{name}", // 툴팁 바디 이름
|
|
148
147
|
"value": [ // 툴팁 바디 값 (배열 형태로 카테고리별 설정 가능)
|
|
149
148
|
{
|
|
150
|
-
"categoryGroupName": "ondemand_cost", // 카테고리
|
|
149
|
+
"categoryGroupName": "ondemand_cost", // 카테고리 그룹명, 카테고리 그룹명과 카테고리명은 서로 중복될 수 없음
|
|
151
150
|
"value": "{valueY.formatNumber('0,0')}({valueYPercent.formatNumber('0.0')}%)" // 바디 값
|
|
152
151
|
},
|
|
153
152
|
{
|
|
154
|
-
"categoryGroupName": "savings_cost",
|
|
153
|
+
"categoryGroupName": "savings_cost", // 카테고리 그룹명, 카테고리 그룹명과 카테고리명은 서로 중복될 수 없음
|
|
155
154
|
"value": "{valueY.formatNumber('0,0')}"
|
|
156
155
|
}
|
|
157
156
|
],
|
|
@@ -163,17 +162,17 @@ const XyMultiChartSchema = z.object({
|
|
|
163
162
|
// 또는 카테고리별로 다른 푸터를 표시하려면:
|
|
164
163
|
// "name": [
|
|
165
164
|
// {
|
|
166
|
-
// "categoryGroupName": "ondemand_cost", // 카테고리
|
|
165
|
+
// "categoryGroupName": "ondemand_cost", // 카테고리 그룹명, 카테고리 그룹명과 카테고리명은 서로 중복될 수 없음
|
|
167
166
|
// "value": "{l.total}" // 푸터 이름
|
|
168
167
|
// }
|
|
169
168
|
// ],
|
|
170
169
|
// "value": [
|
|
171
170
|
// {
|
|
172
|
-
// "categoryGroupName": "ondemand_cost", // 카테고리
|
|
171
|
+
// "categoryGroupName": "ondemand_cost", // 카테고리 그룹명, 카테고리 그룹명과 카테고리명은 서로 중복될 수 없음
|
|
173
172
|
// "value": "{valueYSum.formatNumber('0,0')}(100.0%)" // 푸터 값
|
|
174
173
|
// },
|
|
175
174
|
// {
|
|
176
|
-
// "categoryGroupName": "savings_cost",
|
|
175
|
+
// "categoryGroupName": "savings_cost", // 카테고리 그룹명, 카테고리 그룹명과 카테고리명은 서로 중복될 수 없음
|
|
177
176
|
// "value": "{valueYSum.formatNumber('0,0')}"
|
|
178
177
|
// }
|
|
179
178
|
// ]
|
|
@@ -226,14 +225,14 @@ const XyMultiChartSchema = z.object({
|
|
|
226
225
|
예시)
|
|
227
226
|
[
|
|
228
227
|
{
|
|
229
|
-
name: 'ondemand_cost',
|
|
228
|
+
name: 'ondemand_cost',
|
|
230
229
|
categories: [
|
|
231
|
-
'rds_ondemand_cost',
|
|
232
|
-
'elasti_cache_ondemand_cost'
|
|
230
|
+
'rds_ondemand_cost',
|
|
231
|
+
'elasti_cache_ondemand_cost'
|
|
233
232
|
]
|
|
234
233
|
},
|
|
235
234
|
{
|
|
236
|
-
name: 'savings_cost',
|
|
235
|
+
name: 'savings_cost',
|
|
237
236
|
categories: [
|
|
238
237
|
'rds_savings_cost'
|
|
239
238
|
]
|
|
@@ -326,7 +325,7 @@ export const StackChartSchema = z.object({
|
|
|
326
325
|
// X축 설정
|
|
327
326
|
"xAxis": {
|
|
328
327
|
"type": "date", // 축 타입: 'date' | 'value' | 'category' (바형 차트일 경우는 value 사용)
|
|
329
|
-
"valueField": "date", // X축 값 필드 (컬럼형 차트일 경우
|
|
328
|
+
"valueField": "date", // X축 값 필드 (컬럼형 차트일 경우 필수, 바형 차트일 경우 절대 생성하면 안됨)
|
|
330
329
|
"dateFormats": [ // xAxis type이 'date'일 때 사용
|
|
331
330
|
{
|
|
332
331
|
"type": "day", // 날짜 단위: 'day' | 'week' | 'month' | 'year'
|
|
@@ -335,7 +334,7 @@ export const StackChartSchema = z.object({
|
|
|
335
334
|
],
|
|
336
335
|
"baseInterval": { // xAxis type이 'date'일 때 사용
|
|
337
336
|
"timeUnit": "day", // 시간 단위: 'day' | 'week' | 'month' | 'year'
|
|
338
|
-
"count": 1 // 간격 수
|
|
337
|
+
"count": 1 // 간격 수(1로 고정이며 변경 불가)
|
|
339
338
|
},
|
|
340
339
|
"gridHidden": true, // 격자선 표시 여부 (기본값: true)
|
|
341
340
|
"renderer": { // 렌더러 설정
|
|
@@ -346,8 +345,9 @@ export const StackChartSchema = z.object({
|
|
|
346
345
|
// Y축 설정
|
|
347
346
|
"yAxis": {
|
|
348
347
|
"type": "value", // Y축 타입: 'value' | 'date' | 'category' (컬럼형 차트일 경우는 value 사용)
|
|
349
|
-
"valueField": "cost", // Y축 값 필드 (바형 차트일 경우
|
|
348
|
+
"valueField": "cost", // Y축 값 필드 (바형 차트일 경우 필수, 컬럼형 차트일 경우 절대 생성하면 안됨)
|
|
350
349
|
"useMin": false, // Y축 최소값 사용 여부 (기본값: false)
|
|
350
|
+
"tooltip": {}, // Y축 툴팁 설정 (바형 차트일 경우 Y축 라벨 말줄임 사용시 필요)
|
|
351
351
|
"numberFormatter": { // 숫자 포맷터 설정
|
|
352
352
|
"numberFormat": "#.#a", // 숫자 포맷 (예: #.#a)
|
|
353
353
|
"bigNumberPrefixes": [ // 큰 숫자에 대한 접미사 설정
|
|
@@ -371,8 +371,8 @@ export const StackChartSchema = z.object({
|
|
|
371
371
|
|
|
372
372
|
// 시리즈 설정
|
|
373
373
|
"series": {
|
|
374
|
-
"valueXField": "date", // X축 값 필드 (컬럼형 차트일 경우
|
|
375
|
-
"valueYField": "cost", // Y축 값 필드 (바형 차트일 경우
|
|
374
|
+
"valueXField": "date", // X축 값 필드 (컬럼형 차트일 경우 필수, 바형 차트일 경우 절대 생성하면 안됨)
|
|
375
|
+
"valueYField": "cost", // Y축 값 필드 (바형 차트일 경우 필수, 컬럼형 차트일 경우 절대 생성하면 안됨)
|
|
376
376
|
"dataProcessor": { // xAxis type이 'date'일 때 반드시 사용
|
|
377
377
|
"dateFields": ["date"], // X축 값 필드
|
|
378
378
|
"dateFormat": "yyyy-MM-dd" // dateFields에 지정된 필드의 날짜 형식
|
|
@@ -385,7 +385,7 @@ export const StackChartSchema = z.object({
|
|
|
385
385
|
"grouped": true // 그룹 표시 여부
|
|
386
386
|
}
|
|
387
387
|
},
|
|
388
|
-
"tooltip": { // 툴팁 설정
|
|
388
|
+
"tooltip": { // 툴팁 설정(툴팁 설정시 body 설정 필수)
|
|
389
389
|
"type": "CG", // CI: 각 카테고리를 보여줄때 | CG: 모든 카테고리를 보여줄때
|
|
390
390
|
"header": { // 툴팁 헤더 설정
|
|
391
391
|
"name": "{valueX.formatDate('MM/dd')}" // 툴팁 헤더 이름, 사용 예) {valueX.formatDate("MM/dd")}
|
|
@@ -568,7 +568,7 @@ export const BarChartSchema = z.object({
|
|
|
568
568
|
// X축 설정
|
|
569
569
|
"xAxis": {
|
|
570
570
|
"type": "date", // 축 타입: 'date' | 'value' | 'category' (바형 차트일 경우는 value 사용)
|
|
571
|
-
"valueField": "date", // X축 값 필드 (컬럼형 차트일 경우
|
|
571
|
+
"valueField": "date", // X축 값 필드 (컬럼형 차트일 경우 필수, 바형 차트일 경우 절대 생성하면 안됨)
|
|
572
572
|
"dateFormats": [ // xAxis type이 'date'일 때 사용
|
|
573
573
|
{
|
|
574
574
|
"type": "day", // 날짜 단위: 'day' | 'week' | 'month' | 'year'
|
|
@@ -577,7 +577,7 @@ export const BarChartSchema = z.object({
|
|
|
577
577
|
],
|
|
578
578
|
"baseInterval": { // xAxis type이 'date'일 때 사용
|
|
579
579
|
"timeUnit": "day", // 시간 단위: 'day' | 'week' | 'month' | 'year'
|
|
580
|
-
"count": 1 // 간격 수
|
|
580
|
+
"count": 1 // 간격 수(1로 고정이며 변경 불가)
|
|
581
581
|
},
|
|
582
582
|
"gridHidden": true, // 격자선 표시 여부 (기본값: true)
|
|
583
583
|
"renderer": { // 렌더러 설정
|
|
@@ -588,8 +588,9 @@ export const BarChartSchema = z.object({
|
|
|
588
588
|
// Y축 설정
|
|
589
589
|
"yAxis": {
|
|
590
590
|
"type": "value", // Y축 타입: 'value' | 'date' | 'category' (컬럼형 차트일 경우는 value 사용)
|
|
591
|
-
"valueField": "cost", // Y축 값 필드 (바형 차트일 경우
|
|
591
|
+
"valueField": "cost", // Y축 값 필드 (바형 차트일 경우 필수, 컬럼형 차트일 경우 절대 생성하면 안됨)
|
|
592
592
|
"useMin": false, // Y축 최소값 사용 여부 (기본값: false)
|
|
593
|
+
"tooltip": {}, // Y축 툴팁 설정 (바형 차트일 경우 Y축 라벨 말줄임 사용시 필요)
|
|
593
594
|
"numberFormatter": { // 숫자 포맷터 설정
|
|
594
595
|
"numberFormat": "#.#a", // 숫자 포맷 (예: #.#a)
|
|
595
596
|
"bigNumberPrefixes": [ // 큰 숫자에 대한 접미사 설정
|
|
@@ -613,8 +614,8 @@ export const BarChartSchema = z.object({
|
|
|
613
614
|
|
|
614
615
|
// 시리즈 설정
|
|
615
616
|
"series": {
|
|
616
|
-
"valueXField": "date", // X축 값 필드 (컬럼형 차트일 경우
|
|
617
|
-
"valueYField": "cost", // Y축 값 필드 (바형 차트일 경우
|
|
617
|
+
"valueXField": "date", // X축 값 필드 (컬럼형 차트일 경우 필수, 바형 차트일 경우 절대 생성하면 안됨)
|
|
618
|
+
"valueYField": "cost", // Y축 값 필드 (바형 차트일 경우 필수, 컬럼형 차트일 경우 절대 생성하면 안됨)
|
|
618
619
|
"dataProcessor": { // xAxis type이 'date'일 때 반드시 사용
|
|
619
620
|
"dateFields": ["date"], // X축 값 필드
|
|
620
621
|
"dateFormat": "yyyy-MM-dd" // dateFields에 지정된 필드의 날짜 형식
|
|
@@ -627,7 +628,7 @@ export const BarChartSchema = z.object({
|
|
|
627
628
|
"grouped": true // 그룹 표시 여부
|
|
628
629
|
}
|
|
629
630
|
},
|
|
630
|
-
"tooltip": { // 툴팁 설정
|
|
631
|
+
"tooltip": { // 툴팁 설정(툴팁 설정시 body 설정 필수)
|
|
631
632
|
"type": "CI", // CI: 각 카테고리를 보여줄때 | CG: 모든 카테고리를 보여줄때
|
|
632
633
|
"header": { // 툴팁 헤더 설정
|
|
633
634
|
"name": "{valueX.formatDate('MM/dd')}" // 툴팁 헤더 이름, 사용 예) {valueX.formatDate("MM/dd")}
|
|
@@ -817,7 +818,7 @@ export const LineChartSchema = z.object({
|
|
|
817
818
|
],
|
|
818
819
|
"baseInterval": { // xAxis type이 'date'일 때 사용
|
|
819
820
|
"timeUnit": "day", // 시간 단위: 'day' | 'week' | 'month' | 'year'
|
|
820
|
-
"count": 1 // 간격 수
|
|
821
|
+
"count": 1 // 간격 수(1로 고정이며 변경 불가)
|
|
821
822
|
},
|
|
822
823
|
"gridHidden": true, // 격자선 표시 여부 (기본값: true)
|
|
823
824
|
"renderer": { // 렌더러 설정
|
|
@@ -873,7 +874,7 @@ export const LineChartSchema = z.object({
|
|
|
873
874
|
"cursorOverStyle": "pointer", // 커서 오버 스타일, 클릭 대상이 true일 때 사용: "pointer" | "hand" (기본값: "pointer")
|
|
874
875
|
"lineOnly": false // 라인만 표시 여부 (기본값: false)
|
|
875
876
|
},
|
|
876
|
-
"tooltip": { // 툴팁 설정
|
|
877
|
+
"tooltip": { // 툴팁 설정(툴팁 설정시 body 설정 필수)
|
|
877
878
|
"type": "CG", // CI: 각 카테고리를 보여줄때 | CG: 모든 카테고리를 보여줄때
|
|
878
879
|
"header": { // 툴팁 헤더 설정
|
|
879
880
|
"name": "{valueX.formatDate('MM/dd')}" // 툴팁 헤더 이름, 사용 예) {valueX.formatDate("MM/dd")}
|
|
@@ -1055,7 +1056,7 @@ export const PieChartSchema = z.object({
|
|
|
1055
1056
|
"series": {
|
|
1056
1057
|
"valueField": "cost", // 값 필드명
|
|
1057
1058
|
"categoryField": "ratioName", // 카테고리 필드명
|
|
1058
|
-
"tooltip": { // 툴팁 설정
|
|
1059
|
+
"tooltip": { // 툴팁 설정(툴팁 설정시 body 설정 필수)
|
|
1059
1060
|
"type": "CI", // CI: 각 카테고리를 보여줄때 | CG: 모든 카테고리를 보여줄때
|
|
1060
1061
|
"position": { // 툴팁 위치 설정
|
|
1061
1062
|
"criteria": "left" // 위치 기준: 'left' | 'right'
|
|
@@ -10,7 +10,7 @@ const gridOptionsSchema = z.object({
|
|
|
10
10
|
}).optional().describe('행 선택 옵션'),
|
|
11
11
|
tooltipShowDelay: z.number().optional().describe('툴팁 표시 지연 시간'),
|
|
12
12
|
domLayout: z.enum(['normal', 'autoHeight', 'print']).optional().describe('그리드 레이아웃 방식'),
|
|
13
|
-
suppressCellFocus: z.boolean().optional().describe('셀 포커스 비활성화'),
|
|
13
|
+
suppressCellFocus: z.boolean().optional().describe('셀 포커스 비활성화 (셀 클릭 이벤트 사용 시 필수: true)'),
|
|
14
14
|
suppressPaginationPanel: z.boolean().optional().describe('페이지네이션 패널 숨김'),
|
|
15
15
|
masterDetail: z.boolean().optional().describe('마스터/디테일 모드 사용'),
|
|
16
16
|
detailCellRenderer: z.any().optional().describe('디테일 셀 렌더러'),
|
|
@@ -128,7 +128,7 @@ export const DataGridSchema = z.object({
|
|
|
128
128
|
gridHeight: z.number().optional().describe('그리드 높이'),
|
|
129
129
|
setClass: z.string().optional().describe('그리드 클래스명'),
|
|
130
130
|
localRowClass: z.string().optional().describe('로컬 행 클래스명'),
|
|
131
|
-
pagination: z.boolean().optional().describe('페이지네이션 사용 여부'),
|
|
131
|
+
pagination: z.boolean().optional().describe('페이지네이션 사용 여부 (true로 설정 시 내부적으로 opsnow-common-pagination 컴포넌트 사용)'),
|
|
132
132
|
paginationPageSize: z.number().optional().describe('페이지당 행 수'),
|
|
133
133
|
textNoData: z.string().optional().describe('데이터 없음 텍스트'),
|
|
134
134
|
noDataDescription: z.string().optional().describe('데이터 없음 설명'),
|
|
@@ -141,7 +141,7 @@ export const DataGridSchema = z.object({
|
|
|
141
141
|
pagingFromServer: z.boolean().optional().describe('서버 페이징 사용 여부'),
|
|
142
142
|
pageSizeList: z.array(z.number()).optional().describe('페이지 사이즈 리스트'),
|
|
143
143
|
placeholderText: z.string().optional().describe('플레이스홀더 텍스트'),
|
|
144
|
-
usedRowClass: z.boolean().optional().describe('행 클래스 사용 여부'),
|
|
144
|
+
usedRowClass: z.boolean().optional().describe('행 클래스 사용 여부 (셀 클릭 이벤트 사용 시 필수: true)'),
|
|
145
145
|
usedSearch: z.boolean().optional().describe('검색창 사용 여부'),
|
|
146
146
|
usedSearchAndDropdown: z.boolean().optional().describe('검색+드롭다운 동시 사용'),
|
|
147
147
|
useOpsnowUs: z.boolean().optional().describe('Opsnow US 스타일 사용'),
|