@bimatrix-aud-platform/aud_mcp_server 1.1.23 → 1.1.25

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.
@@ -551,21 +551,21 @@ export interface IDataGridElement extends IBaseElement {
551
551
  DataSource?: string;
552
552
  /** 셀 내부 여백 (예: "2,2,2,2") */
553
553
  CellMargin: string;
554
- /** 보고서 로딩 시 데이터 조회 여부 */
554
+ /** 보고서 로딩 시 데이터 조회 여부, 기본값: false */
555
555
  AutoRefresh: boolean;
556
- /** 수동 새로고침 버튼 표시 여부 */
556
+ /** 수동 새로고침 버튼 표시 여부, 기본값: true */
557
557
  DoRefresh: boolean;
558
- /** 파일 내보내기(다운로드) 가능 여부 */
559
- DoExport?: boolean;
560
- /** 헤더 표시 방식 (0: 표시, 1: 숨김 ) */
561
- ShowHeader?: number;
562
- /** 선택 규칙 (0: Single, 1: Multiple ) */
563
- SelectRule?: number;
558
+ /** 파일 내보내기(다운로드) 가능 여부, 기본값: true */
559
+ DoExport: boolean;
560
+ /** 헤더 표시 방식 (0: None-숨김, 1: Row헤더만 표시, 2:Column헤더만 표시, 3:Row&Column 헤더 표시), 기본값 : 3 */
561
+ ShowHeader: number;
562
+ /** 마우스로 영역 선택 규칙 (0: SingleRow, 1: MultiRow, 2:SingleRange, 3:SingleCell), 기본값 : 2 */
563
+ SelectRule: number;
564
564
  /** NaN 셀에 표시할 텍스트 */
565
565
  NaNCellText?: string;
566
- /** 헤더 행 높이 (픽셀) */
566
+ /** 헤더 행 높이 (픽셀) , 기본값 : 28*/
567
567
  ColumnHeaderHeight: number;
568
- /** 데이터 행 높이 (픽셀) */
568
+ /** 데이터 행 높이 (픽셀) , 기본값 : 24*/
569
569
  RowHeight: number;
570
570
  /** 행 헤더 너비 (행 번호 표시 영역) */
571
571
  RowHeaderWidth?: number;
@@ -866,9 +866,9 @@ export interface IComboBoxElement extends IBaseElement {
866
866
  SelectedValue?: string;
867
867
  /** 고정 항목 목록 (JSON 형식, 데이터소스 대신 사용) */
868
868
  DefinedItems?: string;
869
- /** 보고서 로딩 시 데이터 조회 여부 */
869
+ /** 보고서 로딩 시 데이터 조회 여부 , 기본값: true */
870
870
  AutoRefresh: boolean;
871
- /** 수동 새로고침 버튼 표시 여부 */
871
+ /** 수동 새로고침 버튼 표시 여부,, 기본값: false */
872
872
  DoRefresh: boolean;
873
873
  }
874
874
 
@@ -889,17 +889,17 @@ export interface IMultiComboBoxElement extends IBaseElement {
889
889
  EditValue?: string;
890
890
  /** 캡션 텍스트 (선택된 항목 요약 표시) */
891
891
  CaptionText?: string;
892
- /** 초기화 타입 (0: 없음, 1: 초기값 사용) */
893
- InitType?: number;
892
+ /** 데이터 조회 후 초기값 설정 방식(0: CurrentValue, 1: InitValue로 초기화, 2:없음), 기본값 : 0 */
893
+ InitType: number;
894
894
  /** 초기값 */
895
895
  InitValue?: string;
896
- /** 새로고침 타입 */
897
- RefreshType?: number;
896
+ /** 새로고침 타입 ( 0:None-클릭 시 조회 하지 않음, 1:FirstTime-클릭 시 최초 한번만 조회, 2:EveryTime-클릭할 때마다 조회, 기본값:1 */
897
+ RefreshType: number;
898
898
  /** 읽기 전용 여부 */
899
899
  IsReadOnly?: boolean;
900
900
  /** 정렬 타입 */
901
901
  SortType?: number;
902
- /** 보고서 로딩 시 데이터 조회 여부 */
902
+ /** 보고서 로딩 시 데이터 조회 여부, 기본값: false */
903
903
  AutoRefresh: boolean;
904
904
  /** 새로고침 후 호출할 함수명 */
905
905
  AfterRefesh?: string;
@@ -1053,11 +1053,11 @@ export interface IOlapGridElement extends IBaseElement {
1053
1053
  DataSource: string;
1054
1054
  /** 서버 스크립트 이름 */
1055
1055
  ServerScript?: string;
1056
- /** 데이터 보고서 로딩 시 데이터 조회 여부 */
1056
+ /** 데이터 보고서 로딩 시 데이터 조회 여부, 기본값: false */
1057
1057
  AutoRefresh: boolean;
1058
- /** 수동 새로고침 버튼 표시 여부 */
1058
+ /** 수동 새로고침 버튼 표시 여부, 기본값: true */
1059
1059
  DoRefresh: boolean;
1060
- /** 파일 내보내기(다운로드) 가능 여부 */
1060
+ /** 파일 내보내기(다운로드) 가능 여부, 기본값: true */
1061
1061
  DoExport: boolean;
1062
1062
  /** iOLAP 뷰 모델 직렬화 데이터 */
1063
1063
  iOLAPView: IOlapViewModel;
@@ -2521,6 +2521,400 @@ export interface ICalendarElement extends IBaseElement {
2521
2521
  MxBinding?: string;
2522
2522
  }
2523
2523
 
2524
+ // ============================================
2525
+ // Chart Series
2526
+ // ============================================
2527
+
2528
+ /**
2529
+ * 차트 시리즈 인터페이스
2530
+ * @see src/control/chart/Series.ts - Serialize()
2531
+ */
2532
+ export interface IChartSeriesItem {
2533
+ /** 시리즈 이름 */
2534
+ Name: string;
2535
+ /** 시리즈 라벨 (범례 표시명) */
2536
+ Label: string;
2537
+ /** 차트 타입 (enChartType, 0:Default=메인 차트 유형 따름) */
2538
+ Type: number;
2539
+ /** 시리즈 배경색 */
2540
+ BackgroundColor: string;
2541
+ /** 사용 축 (0:Y1Axis, 1:Y2Axis) */
2542
+ Axis: number;
2543
+ /** 값 필드명 */
2544
+ ValueField: string;
2545
+ /** 데이터 타입 (0:Dimension, 1:Measure) */
2546
+ DataType: number;
2547
+ /** 필드 리스트에서 사용 여부 */
2548
+ UsedNumberSeries: boolean;
2549
+ /** 생성 타입 (0:Data, 1:Custom) */
2550
+ CreateType: number;
2551
+ /** 표시 포맷 */
2552
+ Format: string;
2553
+ /** 테두리 두께 (bar/column) */
2554
+ BorderWidth: string;
2555
+ /** 테두리 색상 (bar/column) */
2556
+ BorderColor: string;
2557
+ /** 단위 */
2558
+ Unit: number;
2559
+ /** X 오프셋 */
2560
+ X: number;
2561
+ /** Y 오프셋 */
2562
+ Y: number;
2563
+ /** Cursor Pointer 사용 여부, 기본값: false */
2564
+ UsePointer: boolean;
2565
+ /** 범례 표시 여부, 기본값: true */
2566
+ ShowInLegend: boolean;
2567
+ /** 한 계열에 대한 단일 색상 지정, 기본값: false */
2568
+ ColorByPoint: boolean;
2569
+ /** 표시 여부 (false일 때만 저장) */
2570
+ Visible?: boolean;
2571
+ /** 심볼 유형 (Line계열, 기본값: "circle") */
2572
+ SymbolType?: string;
2573
+ /** 심볼 크기 (Line계열) */
2574
+ SymbolRadius?: number;
2575
+ /** 심볼 색 (Line계열) */
2576
+ SymbolColor?: string;
2577
+ /** 대시 스타일 (Line/Spline) */
2578
+ DashStyle?: number;
2579
+ /** 라인 두께 (Line/Spline) */
2580
+ LineWidth?: number;
2581
+ /** 정렬 */
2582
+ Align?: number;
2583
+ /** 다국어 코드 */
2584
+ LanguageCode?: string;
2585
+ /** 데이터 라벨 필드 */
2586
+ DataLabelField?: string;
2587
+ /** X2축 사용 (bar 차트) */
2588
+ X2Axis?: boolean;
2589
+ /** 표시 순서 */
2590
+ Sequence?: number;
2591
+ /** 데이터 라벨 표시 여부 */
2592
+ DataLabelsVisible?: boolean;
2593
+ /** 데이터 라벨 테두리 색상을 계열 색상으로 */
2594
+ DataLabelsColorBySeries?: boolean;
2595
+ /** 데이터 라벨 수식 */
2596
+ DataLabelsFormula?: string;
2597
+ /** 막대 너비 (column/bar) */
2598
+ PointWidth?: number;
2599
+ /** 심볼 테두리 두께 (Line) */
2600
+ SymbolLineWidth?: number;
2601
+ /** 심볼 테두리 색 (Line) */
2602
+ SymbolLineColor?: string;
2603
+ /** 데이터 라벨 스타일 */
2604
+ DataLabels?: {
2605
+ Style?: string;
2606
+ };
2607
+ }
2608
+
2609
+ // ============================================
2610
+ // Chart Axis
2611
+ // ============================================
2612
+
2613
+ /**
2614
+ * 축 라벨 설정
2615
+ */
2616
+ export interface IChartAxisLabel {
2617
+ FontSize?: number;
2618
+ FontFamily?: string;
2619
+ FontBold?: boolean;
2620
+ FontItalic?: boolean;
2621
+ FontColor?: string;
2622
+ LabelAngle?: string;
2623
+ LabelsX?: number;
2624
+ LabelsY?: number;
2625
+ AnnoFormat?: string;
2626
+ }
2627
+
2628
+ /**
2629
+ * 차트 축 공통 속성
2630
+ * @see src/control/chart/XAxis.ts - Serialize()
2631
+ * @see src/control/chart/YAxis.ts - Serialize()
2632
+ */
2633
+ export interface IChartAxisBase {
2634
+ /** 축 제목 텍스트 */
2635
+ Text: string;
2636
+ /** 축 표시 여부 */
2637
+ Visible: boolean;
2638
+ /** 축 이름 */
2639
+ Name?: string;
2640
+ /** 주 눈금 자동 간격 여부 */
2641
+ AutoTickInterval?: boolean;
2642
+ /** 주 눈금 간격 값 */
2643
+ TickInterval?: string;
2644
+ /** 보조 눈금 사용 여부 */
2645
+ UseMinorTickInterval?: boolean;
2646
+ /** 보조 눈금 자동 간격 여부 */
2647
+ AutoMinorTickInterval?: boolean;
2648
+ /** 보조 눈금 간격 값 */
2649
+ MinorTickInterval?: string;
2650
+ /** 최대값 자동 여부 */
2651
+ AutoMax?: boolean;
2652
+ /** 최소값 자동 여부 */
2653
+ AutoMin?: boolean;
2654
+ /** 최대값 */
2655
+ MaxValue?: number;
2656
+ /** 최소값 */
2657
+ MinValue?: number;
2658
+ /** 주 눈금선 색 */
2659
+ GridLineColor?: string;
2660
+ /** 주 눈금선 두께 */
2661
+ GridLineWidth?: number;
2662
+ /** 주 눈금선 스타일 */
2663
+ GridLineStyle?: number;
2664
+ /** 보조 눈금선 색 */
2665
+ MinorGridLineColor?: string;
2666
+ /** 보조 눈금선 두께 */
2667
+ MinorGridLineWidth?: number;
2668
+ /** 보조 눈금선 스타일 */
2669
+ MinorGridLineStyle?: number;
2670
+ /** 사용자 지정 카테고리 */
2671
+ Categories?: string[];
2672
+ /** 사용자 지정 항목 (JSON 문자열) */
2673
+ DefinedItems?: string;
2674
+ /** 다국어 코드 */
2675
+ LanguageCode?: string;
2676
+ /** 레이블 포맷 */
2677
+ AnnoFormat?: string;
2678
+ /** 라벨 설정 */
2679
+ Label?: IChartAxisLabel;
2680
+ /** PlotLines 선 두께 */
2681
+ PlotLinesWidth?: number;
2682
+ /** PlotLines 선 색 */
2683
+ PlotLinesColor?: string;
2684
+ /** PlotLines 기준 값 */
2685
+ PlotLinesValue?: number;
2686
+ /** PlotLines 선 스타일 */
2687
+ PlotLinesDashStyle?: string;
2688
+ /** PlotLines 값 표시 여부 */
2689
+ PlotLinesValueVisibled?: boolean;
2690
+ /** 축 캡션 */
2691
+ Caption?: string;
2692
+ /** 축 제목 라벨 각도 */
2693
+ TitleLabelAngle?: number;
2694
+ /** PlotBands 배열 (@see IAxis.ts IPlotBand) */
2695
+ PlotBands?: { color: string; from: number; to: number }[];
2696
+ /** 눈금 색상 */
2697
+ TickColor?: string;
2698
+ /** 눈금 두께 */
2699
+ TickWidth?: number;
2700
+ }
2701
+
2702
+ /**
2703
+ * X축 (@see XAxis.ts Serialize)
2704
+ */
2705
+ export interface IChartXAxis extends IChartAxisBase {
2706
+ /** 그룹 필드명 */
2707
+ GroupField?: string;
2708
+ /** 그룹 폰트 색상 */
2709
+ GroupFontColor?: string;
2710
+ /** 그룹 폰트 크기 */
2711
+ GroupFontSize?: number;
2712
+ /** 그룹 폰트 패밀리 */
2713
+ GroupFontFamily?: string;
2714
+ /** 그룹 폰트 기울임 */
2715
+ GroupFontItalic?: boolean;
2716
+ /** 그룹 폰트 굵게 */
2717
+ GroupFontBold?: boolean;
2718
+ }
2719
+
2720
+ /**
2721
+ * Y축 (@see YAxis.ts Serialize)
2722
+ */
2723
+ export interface IChartYAxis extends IChartAxisBase {
2724
+ /** 축 반대편 배치 여부 (Y2: true) */
2725
+ Opposite?: boolean;
2726
+ /** 그리드 라인 보간 (polygon용) */
2727
+ GridLineInterpolation?: string;
2728
+ }
2729
+
2730
+ /**
2731
+ * 차트 Axis 구조 (Chart.ts Serialize에서 Axis 항목)
2732
+ */
2733
+ export interface IChartAxis {
2734
+ XAxis: IChartXAxis;
2735
+ Y1Axis: IChartYAxis;
2736
+ Y2Axis: IChartYAxis;
2737
+ }
2738
+
2739
+ // ============================================
2740
+ // Chart Legend
2741
+ // ============================================
2742
+
2743
+ /**
2744
+ * 차트 Legend 인터페이스
2745
+ * 모든 속성은 기본값과 다를 때만 Serialize에 포함됨
2746
+ * @see src/control/chart/Legend.ts - Serialize()
2747
+ */
2748
+ export interface IChartLegend {
2749
+ /** 수평 정렬 ("left"|"center"|"right"), 기본값: "center" */
2750
+ Align?: 'left' | 'center' | 'right';
2751
+ /** 수직 정렬 ("top"|"middle"|"bottom"), 기본값: "bottom" */
2752
+ VerticalAlign?: 'top' | 'middle' | 'bottom';
2753
+ /** 범례 레이아웃 ("horizontal"|"vertical"), 기본값: "horizontal" */
2754
+ Layout?: 'horizontal' | 'vertical';
2755
+ /** 범례 표시 여부, 기본값: true */
2756
+ Enabled?: boolean;
2757
+ /** 테두리 두께 (문자열) */
2758
+ BorderWidth?: string;
2759
+ /** 테두리 색상 */
2760
+ BorderColor?: string;
2761
+ /** 폰트 스타일 사용 여부, 기본값: false */
2762
+ UseFontStyle?: boolean;
2763
+ /** 폰트 패밀리, 기본값: "default" */
2764
+ FontFamily?: string;
2765
+ /** 폰트 크기, 기본값: 11 */
2766
+ FontSize?: number;
2767
+ /** 폰트 굵게, 기본값: false */
2768
+ FontBold?: boolean;
2769
+ /** 폰트 기울임, 기본값: false */
2770
+ FontItalic?: boolean;
2771
+ /** 폰트 색상, 기본값: "rgb(0,0,0)" */
2772
+ FontColor?: string;
2773
+ /** 배경 색상 */
2774
+ BackgroundColor?: string;
2775
+ /** 부유(Floating) 여부, 기본값: false */
2776
+ Floating?: boolean;
2777
+ /** X 오프셋, 기본값: 0 */
2778
+ X?: number;
2779
+ /** Y 오프셋, 기본값: 0 */
2780
+ Y?: number;
2781
+ /** 범례 순서 역방향, 기본값: false */
2782
+ Reversed?: boolean;
2783
+ /** 범례 항목 상단 여백, 기본값: 2 */
2784
+ MarginTop?: number;
2785
+ /** 범례 항목 간격, 기본값: 20 */
2786
+ Distance?: number;
2787
+ }
2788
+
2789
+ // ============================================
2790
+ // Chart Title
2791
+ // ============================================
2792
+
2793
+ /**
2794
+ * 차트 Title 인터페이스
2795
+ * @see src/control/chart/Title.ts - Serialize()
2796
+ */
2797
+ export interface IChartTitle {
2798
+ /** 제목 텍스트, 기본값: "" */
2799
+ Text: string;
2800
+ /** 다국어 코드, 기본값: "" */
2801
+ LanguageCode: string;
2802
+ /** 폰트 스타일 (값이 있는 항목만 저장됨) */
2803
+ Style?: {
2804
+ FontFamily?: string;
2805
+ FontSize?: number;
2806
+ FontStyle?: string;
2807
+ FontWeight?: string;
2808
+ FontColor?: string;
2809
+ };
2810
+ }
2811
+
2812
+ // ============================================
2813
+ // Chart PlotOptions
2814
+ // ============================================
2815
+
2816
+ /**
2817
+ * 차트 PlotOptions 인터페이스
2818
+ * @see src/control/chart/PlotOptions.ts - Serialize()
2819
+ */
2820
+ export interface IChartPlotOptions {
2821
+ /** 애니메이션 시간 (ms), 기본값: 1000 */
2822
+ Animation: number;
2823
+ /** 마우스 추적 활성화 여부, 기본값: true */
2824
+ EnableMouseTracking: boolean;
2825
+ /** 데이터 라벨 설정 */
2826
+ DataLabels: {
2827
+ /** 스태킹 방식 ("normal" | "percent"), Serialize에서 Stacking이 여기 포함됨 */
2828
+ Stacking?: string;
2829
+ /** 데이터 라벨 타입 (0:None, 1:Value, 2:ValueLabel) */
2830
+ Type?: number;
2831
+ };
2832
+ /** Null 값 연결 여부, 기본값: false */
2833
+ ConnectNulls: boolean;
2834
+ /** 데이터 라벨 겹침 허용 여부, 기본값: false */
2835
+ AllowOverlap: boolean;
2836
+ }
2837
+
2838
+ // ============================================
2839
+ // Chart Options (ChartOptions.ts Serialize 기준)
2840
+ // ============================================
2841
+
2842
+ /** 3D 옵션 (chartType=100일 때 Serialize에서 Options3d 객체로 저장) */
2843
+ export interface IChartOptions3d {
2844
+ Enabled: boolean;
2845
+ Alpha: number;
2846
+ Beta: number;
2847
+ Depth: number;
2848
+ }
2849
+
2850
+ /**
2851
+ * 차트 옵션 인터페이스 (@see ChartOptions.ts Serialize)
2852
+ * ChartType, 폰트, 테두리, 팔레트, 툴팁, 3D 등 차트 전체 설정
2853
+ */
2854
+ export interface IChartOptions {
2855
+ // --- 항상 저장되는 속성 (required) ---
2856
+ /** 차트 타입 enChartType (0:Bar, 1:StackedBar, 2:StackedPercentBar, 3:Column, 4:StackedColumn, 5:StackedPercentColumn, 6:Line, 7:Spline, 8:StackedLine, 9:StackedPercentLine, 10:Area, 11:StackedArea, 12:StackedPercentArea, 13:AreaSpline, 14:Pie, 15:BorderWidthPie, 16:DonutPie, 17:BorderWidthDonutPie, 18:Polar, 20:AreaPolar, 21:AreaRange, 22:AreaSplineRange, 23:BoxPlot, 24:Bubble, 25:ColumnRange, 26:ErrorBar, 27:Funnel, 28:Gauge, 29:HeatMap, 30:Polygon, 31:Pyramid, 32:Scatter, 33:SolidGauge, 34:TreeMap, 35:Waterfall, 36:Pie3D, 37:BorderWidthPie3D, 38:DonutPie3D, 39:BorderWidthDonutPie3D, 100:Default) */
2857
+ ChartType: number;
2858
+ /** 폰트 패밀리, 기본값: "default" */
2859
+ FontFamily: string;
2860
+ /** 폰트 색상, 기본값: "rgb(0,0,0)" */
2861
+ FontColor: string;
2862
+ /** 배경 색상, 기본값: "rgb(255,255,255)" */
2863
+ BackgroundColor: string;
2864
+ /** 테두리 색상, 기본값: "" */
2865
+ BorderColor: string;
2866
+ /** 테두리 두께 (Serialize에서 toString()으로 저장), 기본값: "3" */
2867
+ BorderWidth: string;
2868
+ /** 테두리 둥글기, 기본값: 10 */
2869
+ BorderRadius: number;
2870
+ /** 팔레트 타입 enPaletteType (-1:Custom, 0:Default, 1:Standard, 2:Office, 3:GrayScale, 4:Apex, 5:Aspect, 6:Civic, 7:Concourse, 8:Equity, 9:Flow, 10:Foundry, 11:Median, 12:Metro, 13:Module, 14:Opulent, 15:Oriel, 16:Origin, 17:Paper, 18:Solstice, 19:Technic, 20:Trek, 21:Urban, 22:Verve, 99999:None), 기본값: 0 */
2871
+ Palette: number;
2872
+ /** 툴팁 배경색, 기본값: "rgba(255, 255, 255, 0.7)" */
2873
+ TooltipBGColor: string;
2874
+ /** 계열과 범례 전환 속성, 기본값: false */
2875
+ SwitchSeriesLegend: boolean;
2876
+
2877
+ // --- 조건부 저장 속성 (optional) ---
2878
+ /** 줌 활성화 (polygon18 제외), 기본값: false */
2879
+ Zoom?: boolean;
2880
+ /** 폰트 크기 (11이 아닐 때만 저장), 기본값: 11 */
2881
+ FontSize?: number;
2882
+ /** 폰트 기울임 (true일 때만 저장), 기본값: false */
2883
+ FontItalic?: boolean;
2884
+ /** 폰트 굵게 (true일 때만 저장), 기본값: false */
2885
+ FontBold?: boolean;
2886
+ /** 툴팁 사용 여부, 기본값: true */
2887
+ Tooltip?: boolean;
2888
+ /** 축 반전 (line 계열만), 기본값: false */
2889
+ Inverted?: boolean;
2890
+ /** 툴팁 포매터 (빈 문자열이 아닐 때만 저장) */
2891
+ TooltipFormatter?: string;
2892
+ /** 툴팁 공유 여부 (chartType 100/18일 때), 기본값: false */
2893
+ TooltipShared?: boolean;
2894
+ /** 툴팁 공유 유형 (0:default, 1:crosshairs, 2:split, 3:split-crosshairs) */
2895
+ TooltipSharedType?: number;
2896
+ /** 차트 유형 변경 메뉴 사용 여부 (chartType 100/18일 때), 기본값: true */
2897
+ UseChartTypeMenu?: boolean;
2898
+ /** 차트 마진 (CSV 형식 "top,right,bottom,left") */
2899
+ Margin?: string;
2900
+ /** 3D 옵션 (chartType 100일 때만) */
2901
+ Options3d?: IChartOptions3d;
2902
+ /** 차트 팔레트 메뉴 사용 여부, 기본값: true */
2903
+ UseChartPaletteMenu?: boolean;
2904
+ /** 디자인 메뉴 사용 여부, 기본값: false */
2905
+ UseDesignMenu?: boolean;
2906
+ /** 엑셀 내보내기 사용 여부, 기본값: true */
2907
+ UseExcelExport?: boolean;
2908
+ /** HML 내보내기 사용 여부, 기본값: true */
2909
+ UseHMLExport?: boolean;
2910
+ /** PPT 내보내기 사용 여부, 기본값: true */
2911
+ UsePPTExport?: boolean;
2912
+ /** DOC 내보내기 사용 여부, 기본값: true */
2913
+ UseDOCExport?: boolean;
2914
+ /** 사용자 정의 팔레트 (CSV 문자열로 저장) */
2915
+ CustomPalatte?: string;
2916
+ }
2917
+
2524
2918
  // ============================================
2525
2919
  // Chart Element (Chart, PieChart, ScatterChart, PolygonChart 공통)
2526
2920
  // ============================================
@@ -2535,28 +2929,28 @@ export interface IChartElement extends IBaseElement {
2535
2929
  Type: 'Chart' | 'PieChart' | 'ScatterChart' | 'PolygonChart';
2536
2930
  /** 바인딩할 데이터소스 이름 */
2537
2931
  DataSource?: string;
2538
- /** 보고서 로딩 시 데이터 조회 여부 */
2539
- AutoRefresh?: boolean;
2540
- /** 수동 새로고침 버튼 표시 여부 */
2541
- DoRefresh?: boolean;
2542
- /** 파일 내보내기(다운로드) 가능 여부 */
2543
- DoExport?: boolean;
2932
+ /** 보고서 로딩 시 데이터 조회 여부, 기본값: false */
2933
+ AutoRefresh: boolean;
2934
+ /** 수동 새로고침 버튼 표시 여부, 기본값: true */
2935
+ DoRefresh: boolean;
2936
+ /** 파일 내보내기(다운로드) 가능 여부, 기본값: true */
2937
+ DoExport: boolean;
2544
2938
  /** 연결된 피벗 그리드 컨트롤 이름 */
2545
2939
  PivotGrid?: string;
2546
2940
  /** 연결된 데이터 그리드 컨트롤 이름 */
2547
2941
  DataGrid?: string;
2548
- /** 차트 옵션 (ChartType, SubChartType 등) */
2549
- Chart?: object;
2550
- /** 축 설정 (XAxis, Y1Axis, Y2Axis) */
2551
- Axis?: object;
2552
- /** 플롯 옵션 */
2553
- PlotOptions?: object;
2554
- /** 차트 제목 설정 */
2555
- Title?: object;
2556
- /** 범례 설정 */
2557
- Legend?: object;
2558
- /** 시리즈 배열 */
2559
- SeriesSet?: any[];
2942
+ /** 차트 옵션 (@see ChartOptions.ts Serialize: ChartType, 폰트, 테두리, 팔레트, 툴팁 등) */
2943
+ Chart?: IChartOptions;
2944
+ /** 축 설정 (@see Chart.ts Serialize: { XAxis, Y1Axis, Y2Axis }) */
2945
+ Axis?: IChartAxis;
2946
+ /** 플롯 옵션 (Serialize: Animation, EnableMouseTracking, DataLabels, ConnectNulls, AllowOverlap) */
2947
+ PlotOptions: IChartPlotOptions;
2948
+ /** 차트 제목 설정 (@see Title.ts Serialize: Text, LanguageCode, Style?) */
2949
+ Title?: IChartTitle;
2950
+ /** 범례 설정 (@see Legend.ts Serialize: 기본값과 다른 속성만 저장) */
2951
+ Legend?: IChartLegend;
2952
+ /** 시리즈 배열 (@see Series.ts Serialize) */
2953
+ SeriesSet?: IChartSeriesItem[];
2560
2954
  }
2561
2955
 
2562
2956
  // ============================================
@@ -2576,18 +2970,16 @@ export interface ITreeGridElement extends IBaseElement {
2576
2970
  Columns?: IGridColumn[];
2577
2971
  /** 바인딩할 데이터소스 이름 */
2578
2972
  DataSource?: string;
2579
- /** 보고서 로딩 시 데이터 조회 여부 */
2580
- AutoRefresh?: boolean;
2581
- /** 수동 새로고침 버튼 표시 여부 */
2582
- DoRefresh?: boolean;
2583
- /** 파일 내보내기(다운로드) 가능 여부 */
2584
- DoExport?: boolean;
2973
+ /** 보고서 로딩 시 데이터 조회 여부, 기본값: false */
2974
+ AutoRefresh: boolean;
2975
+ /** 수동 새로고침 버튼 표시 여부, 기본값: true */
2976
+ DoRefresh: boolean;
2977
+ /** 파일 내보내기(다운로드) 가능 여부, 기본값: true */
2978
+ DoExport: boolean;
2585
2979
  /** 트리 들여쓰기 여백 (px) */
2586
2980
  TreeMargin?: number;
2587
- /** 토글 버튼 크기 (px) */
2588
- ToggleBtnSize?: number;
2589
- /** 트리 설정 (계층 구조 정의) */
2590
- TreeInfo?: object;
2981
+ /** 확장/축소 버튼 크기 (px), 기본값 : 10 */
2982
+ ToggleBtnSize: number;
2591
2983
  /** 자동 확장 레벨 */
2592
2984
  AutoExpandLevel?: number;
2593
2985
  /** 들여쓰기 폭 (px) */
@@ -2629,8 +3021,8 @@ export interface IiGridElement extends IBaseElement {
2629
3021
  /** 고정 열 수 */
2630
3022
  FreezeColumn?: number;
2631
3023
  /** 자식 컨트롤 배열 */
2632
- Controls?: any[];
2633
- }
3024
+ Controls?: IElement[];
3025
+ }
2634
3026
 
2635
3027
  // ============================================
2636
3028
  // TableLayout Element
@@ -2692,9 +3084,9 @@ export interface ITabItemBaseProperties {
2692
3084
  /** 너비 값 (px) */
2693
3085
  WidthValue: number;
2694
3086
  };
2695
- /** 표시 여부 */
3087
+ /** 표시 여부 : 기본값 true */
2696
3088
  Visible: boolean;
2697
- /** 커서 타입 */
3089
+ /** 커서 타입 */
2698
3090
  Cursor: string;
2699
3091
  }
2700
3092
 
@@ -2747,31 +3139,54 @@ export interface ITabItem {
2747
3139
  }
2748
3140
 
2749
3141
  // ============================================
2750
- // Tab Element
3142
+ // Tab Property
2751
3143
  // ============================================
2752
3144
 
2753
3145
  /**
2754
- * 탭 컨테이너 컨트롤 인터페이스
2755
- * 여러 페이지로 컨트롤을 구분하여 표시하는 컨테이너입니다.
3146
+ * 탭 컨트롤 속성 인터페이스
3147
+ * @see 2.Sources/src/control/group/Tab/Tab.ts - ITabProperty, Serialize()
2756
3148
  */
2757
- export interface ITabElement extends IBaseElement {
2758
- Type: 'Tab';
2759
- /** 탭 버튼 위치 (enTabPositionType) */
2760
- TabButtonPosition?: number;
3149
+ export interface ITabProperty {
3150
+ /** 탭 버튼 위치 enTabPositionType (0:Top, 1:Bottom) */
3151
+ TabButtonPosition: number;
2761
3152
  /** 탭 버튼 높이 (px) */
2762
3153
  TabButtonHeight?: number;
2763
3154
  /** 활성 탭 스타일 */
2764
- ActiveStyle?: object;
3155
+ ActiveStyle?: ITabItemStyle;
2765
3156
  /** 비활성 탭 스타일 */
2766
- InactiveStyle?: object;
3157
+ InactiveStyle?: ITabItemStyle;
2767
3158
  /** 마우스 오버 시 스타일 */
2768
- MouseOverStyle?: object;
3159
+ MouseOverStyle?: ITabItemStyle;
2769
3160
  /** 마우스 다운 시 스타일 */
2770
- MouseDownStyle?: object;
2771
- /** 파일 내보내기(다운로드) 가능 여부 */
2772
- DoExport?: boolean;
3161
+ MouseDownStyle?: ITabItemStyle;
3162
+ /** 엑셀 내보내기 사용 여부 (기본값: true) */
3163
+ UseExcelExport?: boolean;
3164
+ /** HML 내보내기 사용 여부 (기본값: true) */
3165
+ UseHMLExport?: boolean;
3166
+ /** PPT 내보내기 사용 여부 (기본값: true) */
3167
+ UsePPTExport?: boolean;
3168
+ /** DOC 내보내기 사용 여부 (기본값: true) */
3169
+ UseDOCExport?: boolean;
3170
+ /** 디자인 메뉴 사용 여부 (기본값: true) */
3171
+ UseDesignMenu?: boolean;
3172
+ }
3173
+
3174
+ // ============================================
3175
+ // Tab Element
3176
+ // ============================================
3177
+
3178
+ /**
3179
+ * 탭 컨테이너 컨트롤 인터페이스
3180
+ * 여러 탭 페이지로 컨트롤을 구분하여 표시하는 컨테이너입니다.
3181
+ */
3182
+ export interface ITabElement extends IBaseElement {
3183
+ Type: 'Tab';
3184
+ /** 탭 속성 (버튼 위치, 스타일, 내보내기 설정 등) */
3185
+ Property: ITabProperty;
3186
+ /** 파일 내보내기(다운로드) 가능 여부, 기본값: true */
3187
+ DoExport: boolean;
2773
3188
  /** 탭 아이템 배열 (각 탭 페이지와 자식 컨트롤) */
2774
- TabItems?: ITabItem[];
3189
+ TabItems: ITabItem[];
2775
3190
  }
2776
3191
 
2777
3192
  // ============================================
@@ -2838,10 +3253,10 @@ export interface IColorSelectorElement extends IBaseElement {
2838
3253
  */
2839
3254
  export interface IFileUploadButtonElement extends IBaseElement {
2840
3255
  Type: 'FileUploadButton';
2841
- /** 버튼 텍스트 */
2842
- Value?: string;
2843
- /** 마우스 커서 스타일 */
2844
- Cursor?: string;
3256
+ /** 버튼 텍스트, 기본값 : upload */
3257
+ Value: string;
3258
+ /** 마우스 커서 스타일 기본값 : "pointer" */
3259
+ Cursor: string;
2845
3260
  /** 허용 파일 확장자 (예: ".xlsx,.csv") */
2846
3261
  AllowExt?: string;
2847
3262
  /** 업로드 크기 제한 (bytes) */
@@ -2883,10 +3298,10 @@ export interface IWebContainerElement extends IBaseElement {
2883
3298
  Type: 'WebContainer';
2884
3299
  /** 대상 URL */
2885
3300
  TargetURL?: string;
2886
- /** 보고서 로딩 시 자동 로딩 여부 */
2887
- AutoRefresh?: boolean;
2888
- /** 수동 새로고침 버튼 표시 여부 */
2889
- DoRefresh?: boolean;
3301
+ /** 보고서 로딩 시 자동 로딩 여부, 기본값: false */
3302
+ AutoRefresh: boolean;
3303
+ /** 수동 새로고침 버튼 표시 여부, 기본값: true */
3304
+ DoRefresh: boolean;
2890
3305
  }
2891
3306
 
2892
3307
  // ============================================